Bueno voy a explicar de forma rápida como poder extraer archivos de una rom, para poder reducir su tamaño, traducir textos, etc
1º Lo primero es desacargar el programa ndstool. Con el podemos extraer el contenido de la rom y volver a crearla. La última versión de este programa vendrá normalmente en el devkitPro (
http://sourceforge.net/projects/devkitpro )
Lo pondremos en una carpeta junto con el juego que queramos extraer.
2º Desde la consola de ms-dos (Inicio->Ejecutar->cmd) extraeremos el contenido con el siguiente comando de ndstool
ndstool -x nombreRom.nds -9 arm9.bin -7 arm7.bin -y9 y9.bin -y7 y7.bin -d data -y overlay -t banner.bin -h header.bin
Se crearán diversos archivos y carpetas, pero lo que nos importa es la carpeta data. En esta carpeta encontraremos todos los archivos del juego. Los mas interesantes para empezar son los *.sdat que contienen toda la música y sonido, que podremos sustituir por otro mas pequeño (poner uno de tamaño 0 da problemas).
3º Una vez cambiado, borrado, etc lo que queramos, pasamos a crear la nueva rom con ndstool también
ndstool -c nuevoNombreRom.nds -9 arm9.bin -7 arm7.bin -y9 y9.bin -y7 y7.bin -d data -y overlay -t banner.bin -h header.bin
Y con esto ya tenemos el nuevo archivo, en este caso nuevoNombreRom.nds, que podemos parchear con ndspatch.
**Anexo archivos .sdat
Vamos a ver 2 formas para reducir un archivo de sonido. Tras realizar varias pruebas hay varios juegos que necesitan mantener su .sdat original asi que no son métodos no definitivos.
Método A
Realmente no es ningún método. Sólo es coger un archivo .sdat de otro juego que sea lo más pequeño posible. Con eso es posible que suenen cosas raras (ya que es música de otro juego). Simple pero efectivo.
Método B
Vamos a tirar de editor hexadecimal. Yo he usado el frhed. Lo primero que hacemos es abrir el .sdat
Después nos fijamos en lo que nos sale. Supondremos (pues no es seguro) que lo que se necesita guardar es la cabecera con la información de que contiene el archivo. La idea es cortar por debajo de esa cabecera. ¿Y que consideramos la cabecera? Pues yo al menos hasta donde haya nombres legibles.
Una vez escogida la supesta cabecera, borramos todo lo que quede por debajo (que supuestamente es la música en si) dejando un margen de unas lineas por si acaso quedando del siguiente modo.
Guardamos el archivo y listo. No se si funciona siempre o si da problemas en mitad de un juego, pero al menos es la forma de conseguir los archivos más pequeños
Continuará?