Iniciado por eing
Usa el vbasdlh, y "pausa el rom" justo cuando alguien vaya a atacar.
Mira que registros carga, y cual es la subrutina suya, a la que llama al hacer el ataque..
Luego hazlo tambien con un rom limpio y ya esta..
Fijo que habeis sobreescrito sin querer algun offset que usa la rutina de las batallas pokemon...
Pd. No se arreglarlo, pero es una idea ¿No?
Pues más o menos el proceso es este. Más concretamente lo que hago yo es:
1 - Cargar el ROM en vba-sdl-h
2 - Entrar en el debugger justo antes de que se pare el juego
3 - Poner en marcha la traza (que viene a ser hacer que el programa escriba en un archivo de texto todo lo que hace la CPU)
4 - Volver al juego, y esperar a que se congele
5 - Volver al debugger
6 - Parar la traza
7 - Salir del emulador
8 - Analizar las trazas para ver donde está la parte del ROM corrupta.
Una vez sabes donde está la parte mala solo es cuestión de coger esa parte de un ROM limpio y hacer copy-paste en el editor original.
He arreglado un par de bugs como este antes, si quieres pásame el ROM con un sav y lo intento cuando pueda (o puedes intentarlo tu con las instrucciones de arriba y el manual de vba-sdl-h).
EDIT: El terra firma? Pensaba que con una vez rata aprendería a hacer backups, lol