El pasado 5 de Marzo en la edición de MadriSX / MadriDC hizó delante de todo el mundo la presentacion oficial y os cuento:
Se trata de un port para la consola portatil GP32 del emulador MAME 0.34 de
Nicola Salmoria. Emula todas las recreativas soportadas por el MAME original,
a excepción de:
- SNK Neo·Geo
- Sega System 16
- CPS-1
- Juegos vectoriales
- Otros juegos que no caben en la memoria de la GP32
- Otros juegos diversos que no funcionan todavía por distintas razones
Esta primera versión emula 687 romsets distintos.
Presentado por primera vez en el MadriSX / MadriDC 2005, celebrado el 5 de marzo de
2005 en Madrid. Liberado en Internet el 6 de marzo de 2005 a través de la página web:
http://www.talfi.net/gp32_franxis/
2. CONTROLES
------------
Los controles del emulador son:
- Joystick: Movimiento.
- Botones A,B,Select,R,L,Start: Botones A,B,C,D,E,F.
- Botón L: Insertar créditos.
- Botón R: Cambio de orientación de pantalla.
- Botón R prolongadamente durante un segundo: Pausa.
- Botón START: Jugar.
- Botones L+R simultaneamente: Salir del juego para elegir otro de los disponibles.
3. OPCIONES DEL EMULADOR
------------------------
Después de seleccionar un juego de la lista desde el frontend, aparecen las siguientes opciones:
- Pulsa L para cambiar la frecuencia de la GP32: 133 a 166 MHz funcionan bien en la mayoría de las
GP32 modelo BLU. En las de modelo FLU se pueden conseguir frecuencias más altas (168 a 256 MHz).
AVISO: Es peligroso usar frecuencias mayores de 166 MHz, usa bajo tu responsabilidad.
- Pulsa R para cambiar el frame-skip: Se puede seleccionar de 0 a 5 de frame-skip. A menor frame-skip
más frames de video por segundo y el juego se vé mejor, pero el emulador se relentiza.
Un valor entre 1 y 2 dependiendo del juego es el adecuado en principio.
- Pulsa START ó SELECT para cambiar las opciones de sonido, que son las siguientes:
Sound+YM3812: El sonido del MAME esta activado, además del emulador experimental de YM3812. Es la
opción con la que suenan más juegos, pero el emulador de YM3812 no suena bien de vez en cuando.
Sound ON: El sonido del MAME activado, sin el emulador de YM3812.
Sound OFF: El sonido esta internamente emulado por el MAME, pero no se reproduce en la GP32. El emulador
funciona más rápido que con sonido.
Not Emulated: El sonido no esta emulado internamente y esta desactivado. El emulador así es lo más rápido
posible por ahora, pero algunos juegos no funcionan en este modo (por ejemplo los juegos de Capcom).
- Pulsa A para jugar al juego seleccionado ó B para volver al frontend para seleccionar otro distinto.
4. INSTALACIÓN
--------------
Hay disponibles 12 ejecutables distintos, a copiar en \GPMM de la SMC:
- mclassic.fxe: Más de 500 clásicos: Pacman, Frogger, Donkey Kong, etc...
- matari.fxe: Juegos de Atari: Tetris, Klax, Gauntlet, etc...
- mcapcom.fxe: Capcom: Ghosts'n Goblins, Commando, etc...
- mdataeas.fxe: Data East: Shootout, Oscar, Karnov, etc...
- mirem.fxe: Irem: Vigilante, Kung Fu Master, etc...
- mkonami.fxe: Konami: Contra, Yie Ar Kungfu, Track & Field, etc...
- mnamco.fxe: Namco: Motos, Xevious, etc...
- msega.fxe: Sega: Zaxxon, Wonder Boy, Pitfall 2, etc...
- mtaito.fxe: Taito: Bubble Bobble, Arkanoid, Tokio, etc...
- mtechnos.fxe: Technos Japan: Double Dragon, Renegade, etc...
- mtecmo.fxe: Tehkan/Tecmo: Bombjack, Rygar, etc...
- mothers.fxe: Otros juegos diversos: Snow Bros, Terra Cresta, Ninja Kid 2, etc...
Las ROMs de las recreativas hay que copiarlas en el directorio \GPMM\MAME034,
bien en ficheros ZIP ó bien en subcarpetas con las ROMs descomprimidas.
Para más información ver más adelante...
5. JUEGOS SOPORTADOS
--------------------
En total son 687 juegos soportados. Para más detalles ver el fichero "gamelist.txt".
Los juegos deben de ir dentro de la carpeta \GPMM\MAME034 de la SMC.
6. NOMBRES DE LAS ROMS
----------------------
Los nombres de las carpetas ó de los ficheros ZIP pueden comprobarse en el fichero
"gamelist.txt". Los romsets deben de ser los del MAME 0.34 versión final (diciembre 1998).
Para convertir los romsets desde otras versiones distintas del MAME, utiliza el fichero
"clrmame.dat" junto con el gestor de ROMS ClrMAME Pro, que se puede descargar desde la web:
http://www.clrmame.com/
7. CREDITOS ORIGINALES
----------------------
- MAME 0.34 original para DOS por Nicola Salmoria y el MAME Team (
http://www.mame.net).
- Z80Em Portable Zilog Z80 Emulator Copyright (C) Marcel de Kogel 1996,1997
Note: the version used in MAME is slightly modified. You can find the
original version at
http://www.komkon.org/~dekogel/misc.html.
- M6502 emulator by Juergen Buchmueller.
- I86 emulator by David Hedley, modified by Fabrice Frances (frances@ensica.fr)
- M6809 emulator by John Butler, based on L.C. Benschop's 6809 Simulator V09.
- M6808 based on L.C. Benschop's 6809 Simulator V09.
- 80x86 asm M6808 emulator Copyright 1998, Neil Bradley, All rights reserved
- M68000 emulator taken from the System 16 Arcade Emulator by Thierry Lescot.
- 8039 emulator by Mirko Buffoni, based on 8048 emulator by Dan Boris.
- T-11 emulator Copyright (C) Aaron Giles 1998
- TMS34010 emulator by Alex Pasadyn and Zsolt Vasvari.
- TMS9900 emulator by Andy Jones, based on original code by Ton Brouwer.
- TMS5220 emulator by Frank Palazzolo.
- AY-3-8910 emulation based on various code snippets by Ville Hallik,
Michael Cuddy, Tatsuyuki Satoh, Fabrice Frances, Nicola Salmoria.
- YM-2203 and YM-2151 emulation by Tatsuyuki Satoh.
- OPL based YM-2203 emulation by Ishmair (ishmair@vnet.es).
- POKEY emulator by Ron Fries (rfries@aol.com).
Many thanks to Eric Smith, Hedley Rainnie and Sean Trowbridge for information
on the Pokey random number generator.
- NES sound hardware info by Jeremy Chadwick and Hedley Rainne.
- YM3812 and YM3526 emulation by Carl-Henrik Skårstedt.
- YM2610 emulation by Hiromitsu Shioya.
8. CREDITOS DEL PORT A GP32
---------------------------
- Port a GP32 por Franxis (fjmar@hotmail.com) realizado a partir del código
fuente del MAME 0.34 versión final (con fecha diciembre de 1998).
9. DESARROLLO
-------------
El desarrollo de mi port del MAME empezó a principios de diciembre de 2004.
Diciembre de 2004:
- Investigando los problemas que podría tener en la portabilidad.
- Elección de la versión del MAME: 0.34, ya que fue la primera versión con
emulación de música FM mediante tabla de ondas, y además creo recordar que
funcionaba bastante bien en un Pentium 100.
- Quitando drivers que no iban a funcionar en la GP32.
- Eliminando funcionalidades que no quería portar: grabar y salvar partidas,
highscores, debugger, color de 16 bit, profiler, librería de gráficos vectoriales,
etc.
- Simplificando todo lo posible el código fuente.
- Portar el makefile del emulador.
Enero de 2005:
- Portar librerías específicas de MS-DOS a GP32 (video, sonido, controles,
acceso a la memoria SMC, etc).
- Primeras pruebas de compilación.
- Primeros resultados: Pacman y Ghosts & Goblins (¡yuhuuu!).
Febrero de 2005:
- Optimizaciones.
- Cambio de entorno de desarrollo: De DevKitAdvance a DevKitArm.
- Solución a un problema importante: Scanlines verticales y fallos de sonido,
finalmente resuelto en el 99% de los drivers, mediante el cambio del core Z80
al del MAME 0.35b1: Portable Z80 Emulator (1998, por Juergen Buchmueller).
- Organización de los distintos drivers en diferentes ejecutables.
Marzo de 2005:
- 5 de marzo de 2005: Presentado en la party MadriSX / MadriDC en Madrid.
http://www.madrisx.cjb.net/
- 6 de marzo de 2005: Liberado en Internet a través de la página web oficial:
http://www.talfi.net/gp32_franxis/
Desarrollado finalmente con:
- DevKitArm (
http://www.devkit.tk/).
- Official GPSDK by GamePark.
- GpSoundBuf (
http://chn.roarvgm.com/).
- b2fxec (
http://www.deadcoderssociety.tk).
- GP32 Converter (
http://www.ifrance.com/edorul/gp32/).
- Geepee32 GP32 Emulator (
http://users.skynet.be/firefly/gp32/).
- MakeSMC (
http://users.skynet.be/firefly/gp32/).
10. FALLOS CONOCIDOS
--------------------
- Sonido no perfecto ó incompleto en algunos juegos.
- Lentitud en los juegos más modernos.
- Consumo de memoria si se cargan varios juegos consecutivos, sobre todo si
hay algún error durante la carga ó la emulación de los juegos. En ese, caso...
reset plis
.
11. A MEJORAR
-------------
- Mejorar el sonido.
- Mejorar la velocidad (¿Reesy Z80 y/ó Zyclone 68000?... Veremos...).
- Actualizar los ROMSets a los actuales del MAME, ó actualizar a otra versión del
MAME más reciente.
- Incluir soporte para más juegos.