Kaiser de Emperana
Called in hand
Bueno esto no es directamente un tutorial de rom hacking, pero en cierto modo está relacionado. Este va a ser un tutorial de lo que más se les complica a los novatos, instalar "bien" los programas y dejarlos funcionando.
Esto va a estar orientado a usuarios de Windows, asumo que los demás pueden arreglarselas solos.
Voy a explicar, conjuntamente, la instalacion de las siguientes herramientas (si no les interesa alguna simplemente no la instalen).
devkitARM: yendo a lo que nos importa, sirve para compilar codigo en C y rutinas asm.
Descarga: https://sourceforge.net/projects/devkitpro/files/devkitARM/devkitARM_r45/devkitARM_r45-win32.exe/download (dejo el link a la version 45, que es la que recomienda la mayoría)
armips: es otro ensamblador mas. Algunos lo usan, por comodidad, en conjunto al devkitARM.
Descarga: https://buildbot.orphis.net/armips/ (elijan la version más reciente)
cygwin (con el paquete make): por lo general somos los usuarios de otros sistemas operativos los que se las tiene que arreglar para hacer que las cosas hechas por usuarios de windows anden. Ahora es al revez. Esto es algo así como un emulador de la línea de comando de linux, para windows. No es indispensable para nada, pero yo les recomiendo instalarlo.
Descarga: https://cygwin.com/install.html (setup-x86, si su sistema operativo es de 32 bits, setup-x86_64 si es de 64bits)
Empecemos con el más complicado...
Si quieren probar todo, pueden intentar compilar la pantalla de EV/IV de @jiangzhengwenjz
Eso sería todo.
Diría que todos los usuarios avanzados sabrían hacer esto sin el tutorial. Así que espero los comentarios de los más novatos.
Intenté hacer una guía paso a paso, si alguna parte no se entendió del todo, por favor avísenme Hay muchas cosas que no expliqué para no hacer el tutorial pesado, si les parece las puedo agregar como aclaraciones al final.
Pero bueno, eso es todo.
Saludos
Esto va a estar orientado a usuarios de Windows, asumo que los demás pueden arreglarselas solos.
Voy a explicar, conjuntamente, la instalacion de las siguientes herramientas (si no les interesa alguna simplemente no la instalen).
devkitARM: yendo a lo que nos importa, sirve para compilar codigo en C y rutinas asm.
Descarga: https://sourceforge.net/projects/devkitpro/files/devkitARM/devkitARM_r45/devkitARM_r45-win32.exe/download (dejo el link a la version 45, que es la que recomienda la mayoría)
armips: es otro ensamblador mas. Algunos lo usan, por comodidad, en conjunto al devkitARM.
Descarga: https://buildbot.orphis.net/armips/ (elijan la version más reciente)
cygwin (con el paquete make): por lo general somos los usuarios de otros sistemas operativos los que se las tiene que arreglar para hacer que las cosas hechas por usuarios de windows anden. Ahora es al revez. Esto es algo así como un emulador de la línea de comando de linux, para windows. No es indispensable para nada, pero yo les recomiendo instalarlo.
Descarga: https://cygwin.com/install.html (setup-x86, si su sistema operativo es de 32 bits, setup-x86_64 si es de 64bits)
Empecemos con el más complicado...
Hagan doble click en el setup descargado. Va a aparecer esta ventana:
Ahora, aprieten next y continuen
Dejen la pantalla como está y... next.
Elijan la carpeta donde instalarlo y next...
Acá les pide que ingresen una carpeta donde guardar unos archivos. Se creará una carpeta con un nombre raro donde indiquen. Una vez terminen la instalacion, la pueden borrar.
Y next...
Si no entienden lo que es esto. Déjenlo como está y next.
Elijan la primer opción de la lista y next...
Esperen a que termine y les dejo adivinar lo que sigue...next
Ahora, sí. La parte por la que hice este tutorial. Como dije antes cygwin es algo así como un emulador de la línea de comando de linux. Si bien trae algunas funciones por defecto, no trae todas, ya que eso implicaría instalar una cantidad monstruosa de cosas que no son necesitadas.
Ahora lo que vamos a hacer es decirle al instalador que instale el paquete "make", que es una utilidad que sirve para compilar facilemente código (algo así... (? ). Hay bastantes recursos públicos de rom hacking que están pensado para que los compiles usando esto. Así que lo vamos a instalar.
(Make se puede instalar en Windows sin la necesidad de instalar cygwin, pero de esa forma van a tener algún que otro problema dependiendo de las ganas que haya tenido el desarrollador del recurso para hacerlo funcionar en windows. Así que yo les recomiendo instalarlo junto con cygwin.)
Para encontrar el paquete facilmente pongan la "configuración" que dejé. (View: Category y Search: make)
Después expandan la categoría Devel.
Busquen en la lista hasta que encuentren esa entrada (make: The GNU versión...). Y hagan click sobre el símbolo junto a Skip, hasta que aparezca un número (la version del paquete), como se ve en la captura.
Ahora sí. ¡Next!
Ne... Eh, digo finish.
Con eso la instalación deberías estar lista.
Ahora a probar. Abran cygwin, escriban make y aprieten Enter.
Si ven esto, felicidades, acaban de instalar cygwin junto con make.
Ahora, aprieten next y continuen
Dejen la pantalla como está y... next.
Elijan la carpeta donde instalarlo y next...
Acá les pide que ingresen una carpeta donde guardar unos archivos. Se creará una carpeta con un nombre raro donde indiquen. Una vez terminen la instalacion, la pueden borrar.
Y next...
Si no entienden lo que es esto. Déjenlo como está y next.
Elijan la primer opción de la lista y next...
Esperen a que termine y les dejo adivinar lo que sigue...
Ahora, sí. La parte por la que hice este tutorial. Como dije antes cygwin es algo así como un emulador de la línea de comando de linux. Si bien trae algunas funciones por defecto, no trae todas, ya que eso implicaría instalar una cantidad monstruosa de cosas que no son necesitadas.
Ahora lo que vamos a hacer es decirle al instalador que instale el paquete "make", que es una utilidad que sirve para compilar facilemente código (algo así... (? ). Hay bastantes recursos públicos de rom hacking que están pensado para que los compiles usando esto. Así que lo vamos a instalar.
(Make se puede instalar en Windows sin la necesidad de instalar cygwin, pero de esa forma van a tener algún que otro problema dependiendo de las ganas que haya tenido el desarrollador del recurso para hacerlo funcionar en windows. Así que yo les recomiendo instalarlo junto con cygwin.)
Para encontrar el paquete facilmente pongan la "configuración" que dejé. (View: Category y Search: make)
Después expandan la categoría Devel.
Busquen en la lista hasta que encuentren esa entrada (make: The GNU versión...). Y hagan click sobre el símbolo junto a Skip, hasta que aparezca un número (la version del paquete), como se ve en la captura.
Ahora sí. ¡Next!
Kaiser de Emperana (hace un par de pasos) dijo:Esperen a que termine y les dejo adivinar lo que sigue...next
Ne... Eh, digo finish.
Con eso la instalación deberías estar lista.
Ahora a probar. Abran cygwin, escriban make y aprieten Enter.
Si ven esto, felicidades, acaban de instalar cygwin junto con make.
Como la instalación de etos es muy fácil y similarla voy a explicar en conjunto.
Lo primero que tiene que hacer es elegir dónde instalar lo programas. Yo lo voy a hacer en el disco C:, ustedes hagan lo que quieran.
En la carpeta ue hayan elegido creen una carpeta llamada "ARMIPS" y otra llamada "devkitPro".
Que quede algo así:
Ahora muevan el instalador de devkitARM dentro de la carpeta devkitPro.
Y ejecútenlo.
Corroboren que la carpeta indicada en la ventanna es la carpeta devkitPro. Y aprieten Extract.
Esperen... Y cuando termine, debería de haber una carpeta llamada devkitARM dentro de devkitPro.
Ahora armips. Simplemente extraigan el zip que descargaron en la carpeta ARMIPS. Debería quedar así:
(Pueden borrar el zip de armips y el "instalador" de devkitARM)
Técnicamente los programas están instalados. Pero hay que hacer algo más para que funcionen correctamente.
Abran el menú de inicio y escriban "variable" en la barra de busqueda.
Ahora hagan click en la entrada pintada de la imagen (en español debe ser algo como "Editar variables de entorno...")
En la ventana que aparece, hagan click en el botón New (el de arriba). Y en la ventana que aparezca después de eso pongan "DEVKITPRO" en el nombre de la variable. Y en el valor de la variable, la ruta de la carpeta devkitPro (en mi caso "C:\devkitPro").
Aprieten Ok.
Y vuelven a apretar New. Ahora en nombre ponen "DEVKITARM" y en valor pongan exactamente esto "%DEVKITPRO%\devkitARM".
Ok.
Ahora, en el panel de arriba, debería haber una variable llamada PATH (si no la hay, creenla con New). Seleccionenla y aprieten Edit.
Al final del valor de la variable agregen los siguiente ";C:\ARMIPS;%DEVKITARM%\bin"
(siendo C:\ARMIPS la ruta a su carpeta).
Yyyyy... Ok.
Con esto debería debería de funcionar.
Lo primero que tiene que hacer es elegir dónde instalar lo programas. Yo lo voy a hacer en el disco C:, ustedes hagan lo que quieran.
En la carpeta ue hayan elegido creen una carpeta llamada "ARMIPS" y otra llamada "devkitPro".
Que quede algo así:
Ahora muevan el instalador de devkitARM dentro de la carpeta devkitPro.
Y ejecútenlo.
Corroboren que la carpeta indicada en la ventanna es la carpeta devkitPro. Y aprieten Extract.
Esperen... Y cuando termine, debería de haber una carpeta llamada devkitARM dentro de devkitPro.
Ahora armips. Simplemente extraigan el zip que descargaron en la carpeta ARMIPS. Debería quedar así:
(Pueden borrar el zip de armips y el "instalador" de devkitARM)
Técnicamente los programas están instalados. Pero hay que hacer algo más para que funcionen correctamente.
Abran el menú de inicio y escriban "variable" en la barra de busqueda.
Ahora hagan click en la entrada pintada de la imagen (en español debe ser algo como "Editar variables de entorno...")
En la ventana que aparece, hagan click en el botón New (el de arriba). Y en la ventana que aparezca después de eso pongan "DEVKITPRO" en el nombre de la variable. Y en el valor de la variable, la ruta de la carpeta devkitPro (en mi caso "C:\devkitPro").
Aprieten Ok.
Y vuelven a apretar New. Ahora en nombre ponen "DEVKITARM" y en valor pongan exactamente esto "%DEVKITPRO%\devkitARM".
Ok.
Ahora, en el panel de arriba, debería haber una variable llamada PATH (si no la hay, creenla con New). Seleccionenla y aprieten Edit.
Al final del valor de la variable agregen los siguiente ";C:\ARMIPS;%DEVKITARM%\bin"
(siendo C:\ARMIPS la ruta a su carpeta).
Yyyyy... Ok.
Con esto debería debería de funcionar.
Si quieren probar todo, pueden intentar compilar la pantalla de EV/IV de @jiangzhengwenjz
jiangzhengwenjz dijo:EV-IV-Screen
Como usar
Asegúrate de tener Devkitarm y make instalados. armips v0.8/0.9 es requerido.
Descarga este repositorio.
Asigna la dirección de espacio libre que desees en insert.asm.
Un rom limpio de FIRERED (EMERALD) llamado "bpre0.gba" (bpee0.gba) debe estar en el directorio.
Abre la línea de comandos (o cygwin), escribe make y aprieta Enter.
Aparecerá un nuevo archivo "test.gba", es el rom de salida.
Escribe un script de prueba (Deberías hacer un callasm al offset en que insertaste la rutina + 1).
Ejemplo: lock
faceplayer
callasm 0x8F90001 //Yo inserté el código en 0x8F90000
msgbox 0x8FD0013 0x2 //string: "It's nice, huh?"
releaseall
end
Eso sería todo.
Diría que todos los usuarios avanzados sabrían hacer esto sin el tutorial. Así que espero los comentarios de los más novatos.
Intenté hacer una guía paso a paso, si alguna parte no se entendió del todo, por favor avísenme Hay muchas cosas que no expliqué para no hacer el tutorial pesado, si les parece las puedo agregar como aclaraciones al final.
Pero bueno, eso es todo.
Saludos