inv_gba
Thread Id: 24358
Thread Name: Investigando Fire Red [Modificación de la rutina para cargar OW ]
#0
Elpollo 25323
Hola a todos, quería crear este tema para mostrar investigaciones que estoy haciendo en las rutinas de FR.

La primera que voy a mostrar es la modificación hecha por JPAN en su firered Hacked Engine para acceder a los datos de los OverWorlds. Aún no he terminado la investigación, no está completamente desarrollada, pero el fin de exponerla es para ver si entre todos podemos desarrollarla por completo.

Si alguien se ofrece a ir empezando a investigar la rutina que tiene el FireRed o toquetear esta rutina para ver como funciona con distintas entradas se lo agradecería mucho. Si encontrais algún fallo en la investigación, por favor, reportadlo para que sea corregido.

Aquí dejo el primer archivo de la investigación:
https://www.dropbox.com/s/cevux5hrhzu6xiz/CargaDatosOW.asm

Creo que la tengo lo suficientemente explicada (las cosas que conozco) como para que cualquiera pueda entenderla.
El fin de esta investigación es crear una base compartida con todos en la que se pueda añadir cualquier número de OW sin necesidad de usar el parche de JPAN.


Edito en vistas de que no lo he explicado del todo bien xD :

Lo que estoy buscando con esta investigación es desarrollar completamente la rutina que carga los OW para poder hacer modificaciones a la hora de acceder a sus datos, las cuales permitan tener mas de 255 OverWorlds pudiendo así tener todos los pokemon como OverWorlds, más todos los personajes que quieras meter en el juego, etc.
El problema es que esta rutina accede a zonas de la ram, las cuales yo, y la gente de la que he aprendido como va la ram, no están muy claro lo que hacen, por eso está este tema, para motivar a la gente a que ayude en la investigación y seamos capaces de desarrollar completamente la rutina para añadirle las modificaciones pertinentes sin que nos carguemos el rom.



Agradecimientos:
karatekid por dirigir mi aprendizaje
Andrea por mostrarme el camino
GBAGuy por su excepcional tutorial sobre ASM
Cosarara por ayudarme siempre que se lo pedía
Shiny Quagsire por su tutorial de ASM
#1
Cheve_X 15014
Mmm no termino de entender muy bien que quieres hacer, pero insertar minis nuevos sin usar la Rom Base de JPAN en teoría es posible... En realidad yo había logrado hacerlo, solo necesitas encontrar la dirección en donde se encuentra la tabla de Ows y repuntear esa dirección a un offset vacio y vas agregando como si fuera la de JPAN... nada más.
#2
Elpollo 25323
Te equivocas cheve, puesto que la información que contiene el numero de OW (el desplazamiento que tiene que hacer en la tabla para sacar los datos) es de solo un byte, solo le es posible llamar a 255 OW diferentes. Ahí está que se necesite (no solo repuntear) sino que hay que coger otro byte (en este caso JPAN creo que coge el primer filler que no hace nada) y con ese número(que puede ser un máximo de 255 también) hacer un desplazamiento en una tabla adicional que apunta a otras tablas, en las que cada una de ellas, pueden apuntar a otros 255 OW diferentes.
#3
Go-BoY 28083
Verás las ASM sirven para dos cosas 1) Agumentar RAM al rom 2) Añadir dynamics nuevas y offsets 3)Implantar nuevos pokémon en la pokedex si era del numero 1 al 255 pues del 1 al 400 y creas 200 bloques vacios para rellenarlos con ULZGBA,increible no? Pero es bien posible,4) Yo no te sabria decir algunas cosas pero de ASM ira muy bien en un futuro eso si hacerlo con mucho cuidado podriais cagar el rom.
#4
Elpollo 25323
[MENTION=28083]Go-BoY[/MENTION] se lo que hace el ASM xD
Lo que estoy buscando con esta investigación es desarrollar completamente la rutina que carga los OW para poder hacer modificaciones a la hora de acceder a sus datos, las cuales permitan tener mas de 255 OverWorlds pudiendo así tener como OW todos los pokemon, más todos los personajes que quieras meter en el juego etc.
El problema es que esta rutina accede a zonas de la ram, las cuales yo, y de la gente que he aprendido como va la ram, no está muy claro lo que hacen, por eso está este tema, para motivar a la gente a que ayude en la investigación y seamos capaces de desarrollar completamente la rutina para añadirle las modificaciones pertinentes sin, como has dicho tú, nos carguemos el rom.
Espero haberme explicado mejor :D
#5
Go-BoY 28083
Tengo un conocido de mi padre que trabajo en el proyecto pokémon ruby y zafiro traduciendo el juego para venderlo en la vida real osea el es programador quizas el me pueda decir cosas del ASM le preguntaré cuando le vea. Estubo entre los 30 programadores traduciendo el juego antes de que saliera en Español. Y actualmente trabaja en la GAME, en una tienda vendiendo juegos dejo la empresa Nintendo porque decia que le pagaban poco para lo que hacia.