qna_rh
Thread Id: 20219
Thread Name: Duda ASM: ¿Cómo cargar una variable en un registro?
#0
Tito Dafting301_4315♪ Kuchiki 24341
Bueno, esa es mi duda. Estoy empezando a adentrarme en el mundo del ASM y hasta ahora no me ha resultado demasiado complejo (complementándolo con otro lenguaje, claro está) y mi duda es: Si yo tengo una variable (Por ejemplo 0x999) ¿Cómo la muevo a un registro para poder sumarla, restarla, dividirla, multiplicarla, etc.? Sé como cambiar los valores de un registro y tal, pero esto me ha superado. Aunque tengo una leve idea de cómo se puede hacer:



En fin, si alguien sabe algo, por favor postee.

POR FAVOR: Pido a toda la gente que no tenga idea que evite postear en este tema. Si encuentran tutoriales de ASM para GBA (THUMB o ARM) pásenmelo via comentario o MP, no por acá.

Saludos, y gracias.
#1
Cheve_X 15014
Pues como tu dices es como se hace, pero las direcciones no se como buscarlas...
Sonicarvalo posté hace tiempo los offsets de las Variables 0x8000 a 0x800F, pero no pude encontrar su post :/
#2
Elpollo 25323
No se para que quieres una variable del juego, si la encuentras pues bien, la usas, si no, pues lo mejor es hacerte tu propio mapa de direcciones así tienes tus propias variables localizadas y no tienes que preocuparte por ese problema.
PD: si necesitas tutoriales conozco algunos buenos. De todas formas una vez ya conoces la sintaxis y todo eso, la mejor forma de seguir aprendiendo es debugeando las rutinas ASM que vienen ya hechas.
PD2: Si necesitas ayuda en algo dimelo, que te ayudaré en todo lo que pueda (tambien así tendría un compañero de trabajo que me motivaría a seguir mejorando xD)
Suerte!!!
#3
cosarara97 12296
Viva la wayback machine :)
http://web.archive.org/web/20120902071208/http://wahackforo.com/t-aporte-los-offsets-en-la-ram-de-las-variables-80xx-en-ruby-firered-emerald
Voy a ponerlo en la wiki.

EDIT: http://wahackforo.com/w-Offsets_de_las_variables_en_la_RAM
#4
Tito Dafting301_4315♪ Kuchiki 24341
Cojonudo :O ahora que tengo las direcciones, solo necesito el comando...
#5
cosarara97 12296
Iniciado por Dafting
Cojonudo :O ahora que tengo las direcciones, solo necesito el comando...


Eso es aprender el set de instrucciones de ARM y THUMB...
Bueno, pues creo que vas a necesitar alguna variación de LDR (ldrb, ldrh, etc.).
Pásate por aquí: ARM Information Center
#6
Tito Dafting301_4315♪ Kuchiki 24341
Bueno, no entendí ni pío. No es porque esté en inglés si no porque es difícil de entenderlo sin un tutorial o una explicación más fácil de entender.

Un tutorial de ASM sería genial.
#7
Pierz 26700
Finding the offset of a variable is very easy! You can set the variable that you want know the offset(with a script (setvar 0x.. 0x..)), with a strange value, like 0x1234. Then, with Search For cheats of VBA, if you search this value, you will find its offset, because the game doesn't usually use value like 0x1234, and so you can find the offset easily. sorry for my english ^^"

Note from a mod: Try to post in spanish, please. This is a forum in spanish.
Note from admin King Boo: English is an universal language. You can continue posting messages in English if you want.
#8
Tito Dafting301_4315♪ Kuchiki 24341
Gracias, no me había dado cuenta de hacer eso :O
#9
Pierz 26700
Eh eh ^^"
#10
Loony Boo♪ 12263
Veo que la duda ha sido resuelta, si no es así, re-abriré el tema rápidamente (o puedes re-abrirlo tú, ya que tienes la capacidad de hacerlo). Antes de cerrarlo, debo recordarte, Dafting; que en este foro, si bien se usa el español como lengua predeterminada, también se pueden emplear otras lenguas para responder las dudas. Y en este caso, se ha utilizado una lengua prácticamente universal, el inglés. No es necesario que se publique en español siempre que se use un idioma al alcance de todos.

Y ahora sí, tema cerrado.
#11
Tito Dafting301_4315♪ Kuchiki 24341
Re-abro la duda: Hasta ahora no se me ha dicho qué comando puntual debo usar, se me ha pasado un tutorial que es francamente un lío.

Así que, reabierto.