Páginas

jueves, 1 de mayo de 2008

Emulador de NeoGeo para Nintendo DS

KoF96Increible pero cierto. Ya se puede jugar Metal Slug, The King of Fighters (probado hasta 2002), Waku Waku 7, Aero Fighter, Garou y muchos juegos más de NeoGeo en nuestra portatil... con lo bien que le viene debido a la escases de juegos de pelea que son tan abundantes y buenos en NeoGeo. El Emulador fue publicado hace 2 días. Al principio crei que era Fake... ¡Pero es autentico!


Voy a poner como hacer funcionar el emulador de NeoGeo en un Nintendo DS usando una Flashcart, el emulador y un onvertidor de ROMs de MAME a NeoDS usando una PC, ya sea con Windows o GNU/Linux basandome en mi experiencia probando el emulador y lo que lei en foros sobre como hacerlo funcionar.


El proceso puede ser un poco largo, así que un tutorial no viene mal.


Es increible que el DS pueda emular estos juegos sin siquiera usar una expansión de RAM en slot-2. Miren este video del emulador corriendo KoF 2002 en una DS.


== Ingredientes ==
* dlditool para Windows o Dldigui-linux-s0l1dsnak3123 para GNU\Linux. Parchadores DLDI a aplicaciones homebrew.
* Archivo .dldi para tu flashcart.
* microsoft.vc80.crt contiene .dlls necesarias para el convertidor.
* Emulador NeoDs.nds y NeoDsConvert.exe. Son el emulador y un convertidor de ROMs.
* BIOS de NeoGeo. Te puedes encontrar más en el Google.
* ROMS. Es importante que sean ROMs para MAME. Las ROMs para NeoRage y similares NO funcionan con este emulador.

Esos son los ingredientes basicos para la receta, puedes encontrar más en Google si quieres. Los que yo use los subi a nuestro servidor para facilidad de los lectores.

== Modo de Preparación ==

PASO 1: Parchar el emulador con DLDI.


Ahora hay que parchar el emulador con DLDI de tu flashcart para que funcione correctamente en la DS. DLDI son unas librerias para lectura del sistema de archivos en las diferentes Flashcarts existentes. El asunto funciona así, el programador hace su aplicación, el usuario parcha la aplicación para agregarle el DLDI de su flashcart al programa en cuestión y listo ¡Funciona!
Antes de desarrollar este sistema cada programador hacia sus aplicaciones para las flashcart que podia y queria, y no funcionaban para las demas.


Ahora que ya lo sabes, para parchar yo uso la aplicación dlditool32.exe y el .dldi de moonshell para SuperCard. Yo conozco dos .dldi para supercard y ese es el que a mi me ha funcionado. Cada quien debe buscar el que su flashcart necesita ¿Quieres un tutorial y enlaces para entender esto a fondo?

Mira en este tutorial los metodos de parcheo
Mira aquí la lista de archivos .dldi para las diferentes flashcart

Por cierto, algunas Flashcart como la M3 Simply (conocida por aquí) autoparchean solas los programas que caen en sus garras para comodidad del usuario.


¿Cómo hacerlo? Para abarcar a la mayor cantidad de gente posible indicare como hacerlo con dlditool-win32-gui, una aplicación para parcheo en windows que yo correre con WINE en mi sistema operativo GNU\Linux. Wine es una especie de emulador de windows aunque sus creadores digan que no. Me sirve para correr ejecutables de Windows en Linux.


wine


También hay metodos de parcheo nativos para Linux, no crean que no. Empiezo con el de windows porque posiblemente le sirva a la mayoria.


Descomprimo la aplicación en el C:\ de mi directorio del Wine y pongo en la carpeta dldi el archivo scsd_moon.dldi que es la .dldi que funciona con mi flashcart. Por ultimo pongo también en el C:\ el archivo emulador llamado NeoDS.nds que es lo que queremos parchar.


unidad c: wine


Ahora ejecuto el dlditool32.exe con Wine, si tu usas Windows, pues solo corre el dlditool32.exe y ya. El patcher es una aplicación muy simple. Solo indicas la ruta del archivo .dldi que debe usar, la ruta del archivo que debe ser parchado y presionas el botón Patch... esperas un momento y el campo Output dara la respuesta al proceso.


DLDI en Windows


Ya vimos como hacerlo con el patcher para Windows. Si les queda la curiosidad de como hacerlo nativamente en Linux sin usar Wine. Para esto usaremos un patcher para linux. Yo uso el Dldigui-linux-s0l1dsnak3123, que como podran ver es muy similar al dlditool-win32-gui que vimos anteriormente.


DLDI en Linux


Pueden documentarse sobre los patchers para Linux aquí o aquí también.


Una vez parchado el archivo NeoDS.nds, lo ponemos en nuestra flashcart. La mia usa tarjetas Mini SD para ello.


PASO 2: Convertir las ROMS


Como todos sabemos, las ROMS de NeoGeo son un monton de archivos empaquetados en un .zip, pues bien. Yo los puse en el c:\NeoDS\NeoDsConvert de mi Wine. Dentro de esta carpeta debe estar el NeoDsConvert, las BIOS (neogeo.zip) y también las ROMs.


Hay que parchar las ROMs con NeoDsConvert por linea de comandos, si, por linea de comando. Hasta los que tienen Windows lo estan haciendo así o generando archivos .bat para automatizar la tarea pero en el fondo es lo mismo. El convertidor no es grafico. Ejecutando el conversor con el parametro -bios1 funcionan la mayoria de las ROMs. Por cierto, las ROMs deben tener el nombre correcto.


Como yo no tengo MS-DOS y la aplicación que quiero correr requiere parametros por linea de comando entonces uso wineconsole. Entro a la consola de mi sistema operativo y tecleo wineconsole para entrar a una modo consola con wine.


Consola MS-DOS CMD en Linux con Wine


A partir de aquí puedo usar comandos de MS-DOS o iniciar directamente una consola de MS-DOS que es lo que voy a hacer, para ello tecleo wineconsole cmd


CMD en GNU/Linux


Si tu usas windows debes arrancar la consola desde Menú Inicio -> Ejecutar -> cmd y con eso empieza.


Ya una vez dentro de la consola me dirijo a la carpeta donde esta el convertidor y el ROM. Entras a una carpeta usando el comando cd o te sales con cd.. o cd\ hasta que llegues a la carpeta c:\NeoDS\NeoDsConvert o donde lo hallas puesto. Ya aqui ejecuto el comando neodsconvert.exe -bios1 para que empiece a convertir las ROMs presentes en la carpeta.


Aquí tuve un problema. neodsconvert.exe pide la dependencia microsoft.vc80.crt que viene con visual studio. Pero no se preocupen. Para hacer que funcionara en GNU\Linux sin instalar Visual Studio se recurre a lo siguiente a bajar el paquete microsoft.vc80.crt.zip para conseguir las .dll que hacen falta.


Descomprimo el paquete en la misma carpeta donde esta la aplicación. La carpeta resultante contiene unas .dll necesarias para la aplicación. Listo, lo vuelvo a intentar y esta vez todo va repido y bien.


Si durante el parcheo el convertidor manda mensajes diciendo que le faltan archivos a la rom (Missings File) el resultado es que el juego NO va a funcionar. Esto pasa porque la ROM que usaste tiene algún problema, lo más recomendable es que uses otra... y asegurate de que sea para MAME y no para NeoRage u otro emulador.


El convertidor debe haber generado un archivo llamado neogeo.neo y otro más por cada ROM convertida llamado .geo, por ejemplo kof97.neo o como se llame el juego.


PASO 3: Pasar el emulador y las ROM a la flashcart


Copia los archivos neogeo.neo, las roms convertidas a .neo y el emulador NeoDs.nds ya parchado con las DLDI al directorio raiz de tu flashcart.


Listo, ejecutas el NeoDs.nds, seleccionas un juego de la lista y a jugar. Si aparecen problemas prueba usando otras ROMs o parchando con otra BIOS. Por ultimo, algunos juegos tienen bugs extraños como Metal Slug 1 que se traba si lanzas granadas quien sabe por que.

No hay comentarios:

Publicar un comentario

Por favor trata de escribir bien, no te pido que no te falte ni un acento pero por favor evita escribir como metroflogger o facebookero. Este blog es un sitio decente. Gracias.