Tiny MAME
Tiny MAME
Hace mucho tiempo, en concreto, por aquí se había preguntado por la posibilidad de tener MAME en ESP32:
https://retrowiki.es/viewtopic.php?p=20 ... p200153768
Hace tiempo, publiqué el Tiny PACMAN basado en MAME:
https://github.com/rpsubc8/ESP32TinyPAC
A partir del mismo se pueden portar múltiples clásicos, pero a la hora de portar los más grandes, es un castillo de naipes. Así que opté por ensuciarme las manos, realizar una serie de herramientas, portar y podar diferentes versiones de MAME msdos para hacer funcionar un par de arcades que marcaron mi infancia en ESP32 VGA y RP2040 con DVI. A parte de sistemas embebidos, me sirve para más experimentos en msdos, ya que rompo la dependencia del DJGPP con el cwsdpmi.
He portado la versión 0.29 y se puede ver la diferencia entre VGA, TTGO VGA32(64 colores) y cvbs. Para el caso de RP2040 en DVI HDMI, como se usa R5G6B5 (16 bits), no se obtiene una pérdida de color.
Legendary Wings VGA x86
Legendary Wings TTGO VGA32 (64 colores)
Legendary Wings TTGO VGA32 (cvbs)
Legendary Wings RP2040 DVI HDMI (RGB565)
Commando VGA x86
Commando TTGO VGA32 64 colores
Commando TTGO VGA32 (cvbs)
Commando RP2040 DVI HDMI (RGB565)
Aún queda, pero voy por buen camino.
https://retrowiki.es/viewtopic.php?p=20 ... p200153768
Hace tiempo, publiqué el Tiny PACMAN basado en MAME:
https://github.com/rpsubc8/ESP32TinyPAC
A partir del mismo se pueden portar múltiples clásicos, pero a la hora de portar los más grandes, es un castillo de naipes. Así que opté por ensuciarme las manos, realizar una serie de herramientas, portar y podar diferentes versiones de MAME msdos para hacer funcionar un par de arcades que marcaron mi infancia en ESP32 VGA y RP2040 con DVI. A parte de sistemas embebidos, me sirve para más experimentos en msdos, ya que rompo la dependencia del DJGPP con el cwsdpmi.
He portado la versión 0.29 y se puede ver la diferencia entre VGA, TTGO VGA32(64 colores) y cvbs. Para el caso de RP2040 en DVI HDMI, como se usa R5G6B5 (16 bits), no se obtiene una pérdida de color.
Legendary Wings VGA x86
Legendary Wings TTGO VGA32 (64 colores)
Legendary Wings TTGO VGA32 (cvbs)
Legendary Wings RP2040 DVI HDMI (RGB565)
Commando VGA x86
Commando TTGO VGA32 64 colores
Commando TTGO VGA32 (cvbs)
Commando RP2040 DVI HDMI (RGB565)
Aún queda, pero voy por buen camino.
Re: Tiny MAME
¡Un MAME en ESP32 es todo un logro!
Recuerdo que la versión 0.37b5 se hizo muy popular en los dispositivos "pequeños" de la época y que tenía arcades clásicos para aburrir.
Recuerdo que la versión 0.37b5 se hizo muy popular en los dispositivos "pequeños" de la época y que tenía arcades clásicos para aburrir.
Re: Tiny MAME
Fantástico, esto promete. Muchas gracias.
Re: Tiny MAME
Muchas gracias ackerman, si se dieran sacado todos los arcades clasicos para MAME en ESP32 seria la Repera. Estaremos atentos a este hilo.
Donde quedaron las 25 pesetas por cada partida de recreativa
Muchas gracias por tu tiempo, un saludo.
Donde quedaron las 25 pesetas por cada partida de recreativa
Muchas gracias por tu tiempo, un saludo.
Re: Tiny MAME
Bravo y enhorabuena!!
A la marcha que vas cualquier dia tengo que desempolvar mis discos de Dreamcast ;-P
A la marcha que vas cualquier dia tengo que desempolvar mis discos de Dreamcast ;-P
- TorpedoJavi
- Mensajes: 371
- Registrado: 02 May 2021 22:50
Re: Tiny MAME
Noto publicidad subliminal en este hilo, la TTGo VGA32 se ve mucho mejor que el resto de versiones.
Seguro que funciona muy muy bien....deseando probarla.
Seguro que funciona muy muy bien....deseando probarla.
Re: Tiny MAME
En realidad, los 64 colores de la TTGO de la foto pierde bastante, no sólo por los 2 bits de precisión por componente, sino por los 64 colores fijos, que se nota sobre todo en los verdes y marrones del commando. La versión x86 VGA tiene 256 colores, que se repiten, en concreto son 81 colores diferentes, que al reducir a 64 con algoritmo simple de reducción, se pierden datos. Para el caso de legendary wings, son 256 colores, sin repetición, que al reducir a 64, se pierde información. Pero tranquis, es lo de siempre, se puede aplicar una paleta casera, que de el pego y que salga mucho mejor que la captura.
Si usaramos los 256 colores R3G3B2 como la consola uzebox, nos acercaríamos bastante a los colores pasteles de los juegos, tal que así:
Si se usara los 14Bit R5G5B4 de Bitluni también se conseguiría.
Molaría Parece coña, pero una psone, se podría, eso sí, con psram. El 100% de catálogo de la psone, se hizo con psyq, que dejaba los símbolos de debug, y en algunos juegos, hasta más cositas. Ya hay varios juegos con ingeniería inversa con Ghidra, y actualmente están con el Legacy of Kain Soul Reaver, de los pocos que tengo originales y con el Harry Potter y el costo filosofal. Es un camino no apto para los que se han acostumbrado a los emuladores a mesa servida (copiar y ejecutar roms), pero que dará muchas alegrías, y quebraderos de cabeza.Eremus escribió: A la marcha que vas cualquier dia tengo que desempolvar mis discos de Dreamcast ;-P
He tenido mucha suerte, y se cuenta con mucho trabajo realizado sobre todo por Nicola Salmoria, que actualmente ya no sigue en el proyecto MAME. De 1997 al 2000 fué un época única e irrepetible de gran altruismo y libertad digital.jltursan escribió: ¡Un MAME en ESP32 es todo un logro!
En realidad no es un MAME de copiar y pegar roms en una SD y ponerse a jugar. El MAME en x86 está todo en RAM, da igual si es ROM, char, sprites, tiles, backgrounds, escalados, recursos de sonido, etc... Además, las descripción de RAM también es RAM, es decir, 64 KB de RAM, ocupa 64KB de RAM y además otros 64 KB de descripción de ser RAM. Todo esto, en plataformas limitadas, es un problema.
Sólo voy a portar los arcades que significaron algo para mí:
Las vacaciones las pasabamos en Luarca, puerto pesquero de la familia de mi madre. Curiosa época que se iba sin cinturón de seguridad, te tirabas 2 horas y pico de viaje por la Espina contando curvas, y todo el tráfico tanto pesado como normal entraba por los pueblos, lo que originaba caravanas, que te permitían pillar suspiros en Grado, sin tener que estacionar el coche.
En el bar Caracas, primero trajeron pinballs y más tarde arcades en blanco y negro, hasta que un día apareció el Legendary Wings, que dejaba dobles. Ese año, como no había pegado el estiron, jugaba justísimo en la máquina con mi hermana, pero al año siguiente, ya jugabamos a gusto. Flipabamos, y al recordar ese juego, se recuerda ese olor a pinchaco de tortilla grasiento con niveles de cebolla, que a día hoy no he visto. Años después, en los 90, cuando Tele5, el Caracas pasó a ser Caracas 2 y ya pusieron el típico arcade con multijuegos por minutos, que perdió la magía, y años depués lo derribaron.
En el bar restaurante, Mesón de la Mar, que en los orígenes de los tiempos fue una escuela infantil, tenían el Commando en una columna, y en esa época, pues lo típico: "venga, 25 pesetas y guajes, no molestéis..." Actualmente está cerrado a cal y canto.
Era un época oscura, que cuando había partido en la TV del bar, desenchufaban la recreativa para que no molestaran los crios.
Los arcades me los comí por ir a los bares, en sitios donde Jesuscristo perdió las alpargatas, como el Shinobi en una caleya de San Martin del Rey Aurelio. Como mi padre era técnico antenista, pues a poner la TV para los partidos. Así aprendí a tirar cable de 75 Ohmios como si no hubiera mañana, andar por los tejados, y ver mástiles de TELEVES de MAPRISE doblarse como plastilina por el viento. Hoy en día, si ven crios por un tejado, meterían preso a los padres.
Re: Tiny MAME
Dejo una primera prueba compilada del legendary wings.
https://github.com/rpsubc8/ESP32TinyMam ... itluni.zip
Requiere TTGO VGA32 v1.4, es decir, con PSRAM.
Las teclas, como en el MAME, es decir:
https://github.com/rpsubc8/ESP32TinyMam ... itluni.zip
Requiere TTGO VGA32 v1.4, es decir, con PSRAM.
Las teclas, como en el MAME, es decir:
- Monedas: 1,2,3,4
- flechas cursor
- disparos: control y alt
- F3,F9,F8