Sega Master System en ZX-Uno

Cerrado
Avatar de Usuario
mcleod_ideafix
Mensajes: 831
Registrado: 27 Sep 2015, 00:14
Ubicación: Jerez de la Frontera
Contactar:

Sega Master System en ZX-Uno

Mensaje por mcleod_ideafix » 28 Sep 2015, 03:12

Post escrito originalmente por Quest en Zona de Pruebas.
Enlace al post original: http://www.zonadepruebas.com/viewtopic.php?f=26&t=6457

Buenas! :D

Traigo una curiosidad que me ha llevado varios días, puesto que no tengo ni idea de HDL ni nada, sólo un poco de intuición y 1000 pruebas/error, y cogiendo algunas pistas de lo que hizo en su día jepalza la conversión del lady bug. ](*,)

He "portado" el core de Sega Master System al ZX-UNO :D . Es un core que hizo un tal Ben para la placa Papilio, que también monta una spartan-6.
Más abajo pongo unos enlaces de descarga con los .bit / .mcs que he generado, para el que lo quiera probar.

Ha habido que remapear pines para que coincidan con nuestro ZX-UNO (pines RGB, joystick, audio, SPI SD, reloj, memoria...), también he tenido que crear relojes (gracias al wizard del ISE de Xilinx, que si no.. :mrgreen: ) con el PLL de la spartan-6 para adaptarlos a los originales (8,16,32,64)que vienen de un oscilador de 32M (del Papilio), en vez de 50M como el ZX-UNO. También se ha tenido que adaptar el acceso a SRAM para la nuestra de 8 bits, porque la del Papilio es de 16. La señal VGA también la he tenido que adaptar ligeramente por los bits de color, que el ZX-UNO usa 3 por color. También he añadido un fix de un usuario que solucionaba algún glitch gráfico.

Salvo esas pequeñas cosas, que cualquiera de los que entendéis habríais hecho en 10 minutos como mucho (pero yo aún soy un zote en esto aún, y me ha llevado unas cuantas horas :mrgreen: ), el resto es mérito 100% del autor original, Ben, y su código fuente, que fue lo que usé de base, disponible en: https://github.com/ben0109/Papilio-Master-System

Para hacerlo funcionar en el ZX-UNO:

- Meter el bitfile a la FPGA (o el mcs para la flash, si no queréis estar regrabándolo cada vez que queráis cargar un juego, ya que hay que apagar/encender para seleccionar otro)
- Enchufar un mando real de Master System (o compartible) al puerto de joystick del ZX-UNO
- Enchufar la plaquita VGA al conector J8 y conectarlo a un monitor VGA normal. (no va por vídeo compuesto, sólo VGA)
- Preparar una tarjeta SD formateada en FAT con juegos de Master System. Preferiblemente nombres cortos 8.3, y meterla en el slot SD del ZX-UNO
- Enchufar el jack de salida de audio a unos altavoces.

Y ahora, a funcionar:

- Enchufar el ZX-UNO y saldrá el bootloader. Si os detecta bien la SD (saldrá "fat system initialized"), elegis con el joystick "load from SD card" y saldrá el listado de archivos de la SD
- Elegis el juego y pulsáis fuego. Empezará a cargar (tarda un poco dependiendo del tamaño de la rom del juego)
Algunos juegos presentan glitches gráficos y otros sonido acelerado,etc. El core es una especie de prueba que no perfeccionó el autor.

Juegos que he probado hasta ahora que funcionan (algunos con glitches):

Alex Kidd, Sonic, Sonic 2, Tom & Jerry, Wonder Boy, Psycho Fox, Bubble Bobble, Aladdin, Columns, Castle of illusion, Ghouls 'n' Ghosts, Golden Axe, Shinobi.

Aquí está la descarga. Si me dáis permiso, lo subo al repositorio :)
SMS_ZXUNO.zip
(295.08 KiB) Descargado 393 veces
Un par de fotillos, corriendo el Alex Kidd y el bootlader selector de roms:

Imagen

Imagen

No se si subir los fuentes modificados, puede haber algun problema? o hablo con el autor mejor?
http://www.zxuno.com
ZX-Uno · Clon de ordenador ZX Spectrum basado en FPGA

Avatar de Usuario
bakoulis
Mensajes: 187
Registrado: 12 Sep 2016, 10:36

Re: Sega Master System en ZX-Uno

Mensaje por bakoulis » 14 Sep 2016, 23:09

What roms are suitable and playable for SD card?
sms (J) /(E) /(U) /(UE) / (SG-1000)?
gg (J) / (U)?

Avatar de Usuario
jotego
Mensajes: 158
Registrado: 11 May 2016, 23:45
Ubicación: Valencia
Contactar:

Re: Sega Master System en ZX-Uno

Mensaje por jotego » 14 Sep 2016, 23:15

Fantástico. ¡Qué gracia verlo con el mando original!

Mira la licencia de los fuentes. Seguramente es GPL y puedes subirlos.

Avatar de Usuario
Quest
Mensajes: 900
Registrado: 27 Sep 2015, 00:20

Re: Sega Master System en ZX-Uno

Mensaje por Quest » 14 Sep 2016, 23:20

Este hilo tiene ya un año. Hace tiempo ya que hablé con el autor, que de hecho nos dio permiso a usar y modificar, y desde entonces he evolucionado mucho el core, ya que él lo abandonó. De hecho gracias a haber empezado a cacharrrear con este core he aprendido muchísimo de lenguajes HDL y de FPGAs, hasta que me he atrevido a meter cosas más complejas.

La última versión es de junio de este mismo año: viewtopic.php?f=17&t=398

Mejor cierro el hilo, para dejar activos los más recientes, ya que esta info está obsoleta :)
http://www.zxuno.com
ZX-Uno · Clon de ordenador ZX Spectrum basado en FPGA

Avatar de Usuario
Quest
Mensajes: 900
Registrado: 27 Sep 2015, 00:20

Re: Sega Master System en ZX-Uno

Mensaje por Quest » 14 Sep 2016, 23:30

bakoulis escribió:What roms are suitable and playable for SD card?
sms (J) /(E) /(U) /(UE) / (SG-1000)?
gg (J) / (U)?
SMS (all regions). Compatibility is about 80% , some games require the presence of the original SMS Bios, that is not implemented in this core.
http://www.zxuno.com
ZX-Uno · Clon de ordenador ZX Spectrum basado en FPGA

Cerrado