scummVM en la Nintendo DS (EZFlash V)

Para terminar de hablar sobre scummVM, voy a explicar como he hecho para instalarlo en mi Nintendo DS.
Lo primero que necesitamos, aparte de la consola claro, es un flashcard para la NDS. Estos elementos son una especie de cartuchos con una memoria flash en la que nos permiten escribir nuestros propios datos. Al principio (en tiempos de la Gameboy Advance), la memoria iba dentro del cartucho, pero actualmente la mayoría utiliza tarjetas externas (mini o microSD).
La idea es aprovechar algún bug o agujero de seguridad en la consola para ejecutar el código que hayamos metido en la memoria del cartucho. Este código, lo mismo pueden ser aplicaciones caseras (llamadas homebrew), como copias de seguridad de los juegos.
Yo en concreto, tengo un EZ Flash V. Por lo tanto, explicaré el método para echar a andar el scummVM para este cartucho en concreto. Pero supongo que para los demás cartuchos se hará de una forma bastante similar.
Lo primero que necesitamos es ir a la pagina del proyecto y descargar el emulador. En el caso de la DS seleccionamos el paquete adecuado (“Nintendo DS package“).
Una vez descargado, nos llama la atención la cantidad de archivos que contiene el paquete. Pero que no cunda el pánico, todo es más fácil de lo que parece…
Dado que la NDS tiene sus limitaciones, hay 6 versiones diferentes del emulador que deberemos configurar en la consola dependiendo del juego en concreto que vayamos a utilizar. El listado de juegos soportados con su correspondiente versión del emulador es el siguiente:
| Maniac Mansion | |
| Zak McKracken and the Alien Mindbenders | |
| Indiana Jones y la última cruzada | |
| Loom | |
| Passport to Adventure | |
| The secret of Monkey Island | |
| Monkey Island 2: La venjanza de LeChuck | |
| Indiana Jones and the fate of Atlantis | |
| El día del tentáculo | |
| Sam & Max hit the road | |
| Bear Stormin’ (DOS) | |
| Fatty Bear’s Birthday Surprise (DOS) | |
| Putt-Putt’s Fun Pack (DOS) | |
| Putt-Putt Goes to the Moon (DOS) | |
| Putt-Putt Joins the Parade (DOS) | |
| Beneath a Steel Sky | |
| Flight of the Amazon Queen | |
| Simon the sorcerer | |
| Simon the sorcerer 2 | |
| Elvira | |
| Elvira 2 | |
| Waxworks (Amiga) | |
| Gobliiins | |
| Gobliins 2 | |
| Goblins 3 | |
| Ween: The Propehcy | |
| Bargon Attack | |
| Future Wars | |
| Juegos de Sierra con motor AGI | |
| Inherit the Earth | |
| The legend of Kyrandia |
Nota: Esta lista es válida para scummVM v0.11.1 en próximas versiones puede cambiar. Consulta el archivo readme_ds.txt para confirmar la lista de la versión que hayas descargado.
Una vez elegida la versión que vamos a usar, empezamos el trabajo duro. Pero primero, un poco de teoría para saber que tenemos que hacer:
La forma en que cada flashcard utiliza la memoria interna es diferente. Para intentar unificar esto surge el proyecto DLDI (Dynamically Linked Disc Interface). Que se encarga de poner a disposición de los desarrolladores unas librerias que se encargan de realizar la lectura y escritura en la memoria del flashcard. Asi que, necesitamos preparar nuestro emulador para que sepa que clase de flashcard está utilizando. A este proceso se le denomina parchear.
Para realizar el parcheo, primero seleccionamos la versión del emulador que vamos a usar (A, B, C, D, E o F). El archivo a parchear será del denominado scummvm-x.nds, sustituyendo la x por la letra correspondiente.
Seguidamente, tenemos que bajarnos de la página del proyecto DLDI: Dlditool -en mi caso, selecciono la versión para x86 Linux- y el archivo DLDI que corresponda a nuestro flashcard -para el EZFlash V, dentro de Slot1 Devices, selecciono EZFlash 5 SD Card y descargaríamos el DLDI file correspondiente-. Los flashcard que se inserten en la ranura para los juegos GBA, están dentro del grupo Slot2 Devices.
Por último, copiamos todos los archivos (Dlditool, DLDI y el archivo .NDS) en una carpeta, abrimos el terminal, vamos a la carpeta donde los tenemos copiados y tecleamos el comando de parcheo:
dlditool <nombre de archivo DLDI> <nombre de archivo NDS>
que en mi caso como estoy en linux he de añadir ./ delante quedando de la siguiente forma:
./dlditool ez5s.dldi scummvm-a.nds
Si todo ha ido bien, el programa parcheará el emulador y nos devolverá un mensaje del tipo:
Dynamically Linked Disk Interface patch tool v1.10 by Michael Chisholm (Chishm)
Old driver: Default (No interface)
New driver: EZ Flash 5 (SD Card)
Position in file: 0×00018CC0
Position in memory: 0×02000000
Patch base address: 0xBF800000
Relocation offset: 0×42818AC0
Patched successfully
Finalmente, solo tenemos que copiar los juegos y el emulador en la tarjeta de memoria (puede ser en carpetas diferentes), y configurar el emulador de una forma similar a como lo haciamos en el ordenador.
Para más información sobre los Flashcards puedes visitar el foro de “elotrolado” dedicado a estos temas.
Archivado en: Software



