timofonic
10/12/2005, 14:10
Buenas,
no se si conoceis NEO4ALL/AES de Chui, pero pienso que sería muy interesante de portarlo a GP2X y encima tendría muchos menos problemas de RAM, además de que la conversión de roms se podría hacer de forma más automática desde la propia consola (!) y poder jugar casi todos los juegos de NEOGEO en la GP2X.
Aquí van unos quotes de varios sitios:
Versión alpha del fork (http://es.wikipedia.org/wiki/Fork) de NEO4ALL para jugar roms de NEOGEO en Dreamcast.
Primero necesitas convertir tus roms de NEOGEO con la herramienta incluida.
Primero, tuesta todos los archivos del directorio dreamcast y pon tus roms convertidas donde quieras.
En este momento, 10 juegos de tamaño grande tienen "prefetch" preliminar para jugarlos bien:
- Art Of Fighting.
- Blazing Star.
- Captain Tomaday.
- Magical Drop III.
- Metal Slug X.
- Shock Troopers.
- Aero Fighters 3 / Sonic Wings 3.
- SNK vs Capcom - SVC Chaos.
- Tecmo World Soccer '96.
- Zed Blade / Operation Ragnarok.
Juegos por debajo de los 16MBytes pueden ser jugados sin problemas, yo he probado 44 juegos. Otros juegos de la lista de compatibilidad pueden ser cargados, pero necesitarán mucha lectura del cdrom.
Mira README.txt.
Olvida neocd.bin y otros, necesitas los archivos típicos de neogeo.zip (MAME y otros emuladores: 'ng-lo.rom'. 'ng-sfix.rom' y 'sfix.sfx' y un nuevo archivo 'aes-bios.bin, imagen del archivo de la NEOGEO versión casera.
Mi libreria de mmu_file/mmu_handle (que alguien traduzca esto) será LGPL, podrás usarla si quieres.
El hardware MMU es unidad de gestión de memoria, permite y gestiona la memoria virtual, por lo que NEO4ALL/AES carga la rom bajo demanda.
Es dificil de usar, pero mi proyecto final de carrera de la universidad fué un micro-kernel y usa MMU.
Con Metal Slug X (rom de 64MBytes) puedes ver que la parte usada para la primera fase es de 7040 KBytes, por lo que solo necesitas 7-8 MBytes para jugar a la primera fase.
La clave son los algoritmos "prefetch" (que alguien lo traduzca) y page-fail (traducir) para cargas mínimas y rápidas.
No realmente. No funcionaría con todos los juegos de neo geo. Se basa en que en cualquier periodo de tiempo prologado, el hardware solo intenta acceder, puede que 8mb de un juego. Si tienes que empezar a cargar los archivos (desde que los juegos de neogeo estan divididos entre un archivo por chip rom) que se estan leyendo a ese momento, entonces eliminando de la memoria los que no fueron usados durante un periodo de tiempo prologado y cargando los nuevos que son requerido, podría resultar en muchas ralentizaciones (mientras se está leyendo el disco) cada vez que tengas que cargar una nueva rom del juego. Basicamente eso solo servirá para juegos donde los datos estan almacenado en grupos basado en que nivel estas.
No estoy seguro como Chui está haciendolo, pero si es una base por archivo, podría no funcionar tan bien como si el tuviera digamos, trozos de archivos de 256kb...
No es cierto, todas las roms son fuera de orden, por lo que la clave es el "prefetch" apropiado. Despues de todo, "game working-set" (traducir) no es muy grande (depende del juego), creo que algunos juegos no serán jugables porque tendrán un "large working-set" y tendrás que jugar sin sonido o cortarlo.
Además, para usar las roms en NEO4ALL/AES, primero necesitarás convertir primero las roms de NEOGEO al formato apropiado.
He hecho un programa conversor de rom para Windows y GNU/Linux, este programa tendrá una pequeña base de datos de "prefetch" para cada juego.
...
No va a ayudar al emulador de tg16, genesis, snes or cualquiera de los otros sistemas que has dicho. Además, esto es algo muy antiguo, no algo que Chui ha creado y ha sido una característica de KOS durante mucho tiempo.
...
¿Has probado MMU con KOS? Solo puede mapear memoria de forma simple y no es suficiente.
Tengo que parchear KOS para trabajar con "store queues" y "direct render", también he capturado excepciones SH4 para acelerar.
....
Podría ser capaz de ser usado para jugar juegos grandes para GBA o N64, pero podría no funcionar correctamente para todos los juegos (I por lo que creo, podrían tener ralentizaciones masivas). La velocidad y la habilidad con la que funcionase de pendería en el juego individual y cuanta ram libre tienes que usar como buffer.
...
Dreamcast nunca va a poder emular N64 correctamente, no es posible.
Sobre GBA, un emulador para Dreamcast podría ser posible si pudiesemos correr el código ARM bajo el ARM de la Dreamcast (el DSP de audio) capturando excepciones y mapeando la SRAM... y no se si es posible.
Para mapear he compilado un NEO4ALL/AES especial con el flag "#define AES_PREFETCHING", después de jugar con esta versión especial y cuando la caché esta llena, sale dumpeando el mapeo hacia el BBA (64KBytes).
Si incluyes este "dump prefetch (traducir) a mi programa conversor de roms, genera un archivo con la rom del juegos, la rom de la bios y "prefetch" para jugarla con el emulador real.
...
Me gustaría contruir una pequeña base de datos con los 298 juegos soportados, logicamente necesitaré la ayuda de beta-testers para probar y dumpear mapas.
Fuentes de los quotes:
http://www.dcemu.co.uk/vbulletin/showthread.php?t=14447&page=1&pp=10
http://www.dcemu.co.uk/vbulletin/showthread.php?t=14926&page=1&pp=10
http://www.dcemu.co.uk/vbulletin/showthread.php?s=&threadid=14927
Binario Dreamcast (http://chui.dcemu.co.uk/releases/neo4all_aes-alpha.rar)
Código fuente del conversor de roms (http://chui.dcemu.co.uk/releases/convertneo-src-05-12-2005.tar.bz2)
Código fuente de NEO4ALL/AES (http://chui.dcemu.co.uk/releases/neo4all-src-05-12-2005.tar.bz2)
no se si conoceis NEO4ALL/AES de Chui, pero pienso que sería muy interesante de portarlo a GP2X y encima tendría muchos menos problemas de RAM, además de que la conversión de roms se podría hacer de forma más automática desde la propia consola (!) y poder jugar casi todos los juegos de NEOGEO en la GP2X.
Aquí van unos quotes de varios sitios:
Versión alpha del fork (http://es.wikipedia.org/wiki/Fork) de NEO4ALL para jugar roms de NEOGEO en Dreamcast.
Primero necesitas convertir tus roms de NEOGEO con la herramienta incluida.
Primero, tuesta todos los archivos del directorio dreamcast y pon tus roms convertidas donde quieras.
En este momento, 10 juegos de tamaño grande tienen "prefetch" preliminar para jugarlos bien:
- Art Of Fighting.
- Blazing Star.
- Captain Tomaday.
- Magical Drop III.
- Metal Slug X.
- Shock Troopers.
- Aero Fighters 3 / Sonic Wings 3.
- SNK vs Capcom - SVC Chaos.
- Tecmo World Soccer '96.
- Zed Blade / Operation Ragnarok.
Juegos por debajo de los 16MBytes pueden ser jugados sin problemas, yo he probado 44 juegos. Otros juegos de la lista de compatibilidad pueden ser cargados, pero necesitarán mucha lectura del cdrom.
Mira README.txt.
Olvida neocd.bin y otros, necesitas los archivos típicos de neogeo.zip (MAME y otros emuladores: 'ng-lo.rom'. 'ng-sfix.rom' y 'sfix.sfx' y un nuevo archivo 'aes-bios.bin, imagen del archivo de la NEOGEO versión casera.
Mi libreria de mmu_file/mmu_handle (que alguien traduzca esto) será LGPL, podrás usarla si quieres.
El hardware MMU es unidad de gestión de memoria, permite y gestiona la memoria virtual, por lo que NEO4ALL/AES carga la rom bajo demanda.
Es dificil de usar, pero mi proyecto final de carrera de la universidad fué un micro-kernel y usa MMU.
Con Metal Slug X (rom de 64MBytes) puedes ver que la parte usada para la primera fase es de 7040 KBytes, por lo que solo necesitas 7-8 MBytes para jugar a la primera fase.
La clave son los algoritmos "prefetch" (que alguien lo traduzca) y page-fail (traducir) para cargas mínimas y rápidas.
No realmente. No funcionaría con todos los juegos de neo geo. Se basa en que en cualquier periodo de tiempo prologado, el hardware solo intenta acceder, puede que 8mb de un juego. Si tienes que empezar a cargar los archivos (desde que los juegos de neogeo estan divididos entre un archivo por chip rom) que se estan leyendo a ese momento, entonces eliminando de la memoria los que no fueron usados durante un periodo de tiempo prologado y cargando los nuevos que son requerido, podría resultar en muchas ralentizaciones (mientras se está leyendo el disco) cada vez que tengas que cargar una nueva rom del juego. Basicamente eso solo servirá para juegos donde los datos estan almacenado en grupos basado en que nivel estas.
No estoy seguro como Chui está haciendolo, pero si es una base por archivo, podría no funcionar tan bien como si el tuviera digamos, trozos de archivos de 256kb...
No es cierto, todas las roms son fuera de orden, por lo que la clave es el "prefetch" apropiado. Despues de todo, "game working-set" (traducir) no es muy grande (depende del juego), creo que algunos juegos no serán jugables porque tendrán un "large working-set" y tendrás que jugar sin sonido o cortarlo.
Además, para usar las roms en NEO4ALL/AES, primero necesitarás convertir primero las roms de NEOGEO al formato apropiado.
He hecho un programa conversor de rom para Windows y GNU/Linux, este programa tendrá una pequeña base de datos de "prefetch" para cada juego.
...
No va a ayudar al emulador de tg16, genesis, snes or cualquiera de los otros sistemas que has dicho. Además, esto es algo muy antiguo, no algo que Chui ha creado y ha sido una característica de KOS durante mucho tiempo.
...
¿Has probado MMU con KOS? Solo puede mapear memoria de forma simple y no es suficiente.
Tengo que parchear KOS para trabajar con "store queues" y "direct render", también he capturado excepciones SH4 para acelerar.
....
Podría ser capaz de ser usado para jugar juegos grandes para GBA o N64, pero podría no funcionar correctamente para todos los juegos (I por lo que creo, podrían tener ralentizaciones masivas). La velocidad y la habilidad con la que funcionase de pendería en el juego individual y cuanta ram libre tienes que usar como buffer.
...
Dreamcast nunca va a poder emular N64 correctamente, no es posible.
Sobre GBA, un emulador para Dreamcast podría ser posible si pudiesemos correr el código ARM bajo el ARM de la Dreamcast (el DSP de audio) capturando excepciones y mapeando la SRAM... y no se si es posible.
Para mapear he compilado un NEO4ALL/AES especial con el flag "#define AES_PREFETCHING", después de jugar con esta versión especial y cuando la caché esta llena, sale dumpeando el mapeo hacia el BBA (64KBytes).
Si incluyes este "dump prefetch (traducir) a mi programa conversor de roms, genera un archivo con la rom del juegos, la rom de la bios y "prefetch" para jugarla con el emulador real.
...
Me gustaría contruir una pequeña base de datos con los 298 juegos soportados, logicamente necesitaré la ayuda de beta-testers para probar y dumpear mapas.
Fuentes de los quotes:
http://www.dcemu.co.uk/vbulletin/showthread.php?t=14447&page=1&pp=10
http://www.dcemu.co.uk/vbulletin/showthread.php?t=14926&page=1&pp=10
http://www.dcemu.co.uk/vbulletin/showthread.php?s=&threadid=14927
Binario Dreamcast (http://chui.dcemu.co.uk/releases/neo4all_aes-alpha.rar)
Código fuente del conversor de roms (http://chui.dcemu.co.uk/releases/convertneo-src-05-12-2005.tar.bz2)
Código fuente de NEO4ALL/AES (http://chui.dcemu.co.uk/releases/neo4all-src-05-12-2005.tar.bz2)