Placa FPGA Sipeed Tang Console 60K, la base del MSX2+ MSXimus

FPGA y MSX: del WonderTANG a MSXimus y MSX Asgard


Una historia técnica de los principales proyectos FPGA modernos para MSX publicados en GitHub: de los primeros experimentos con VDP y cartuchos Tang a máquinas MSX2+ completas dentro de una FPGA.

Parte 1 · Historia y evolución
¿Primera vez con las FPGA? Si no tienes claro qué es una FPGA ni por qué está cambiando el mundo del MSX, empieza por ¿Qué es un FPGA? y sigue con Goa’uld para MSX, cómo se usa.

Nota importante: no todos los proyectos de esta historia son forks directos. Cuando existe una derivación explícita se indica como tal; cuando solo hay reutilización de ideas, módulos o conceptos se habla de influencia o convergencia.

El árbol general

RAMA CARTUCHO / WONDER WonderTANG └── tnCart └── tnCartWonder ├── Wonder9968 → vídeo / V9968 └── mangOPL4 → audio / OPL4 RAMA GOA’ULD MSX Goa’uld └── MSX Goa’uld SD ├── Goa’uld SD + USB ├── MSXnano │ └── MSXimus └── MSX Asgard → convergencia con el formato cartucho RAMAS PARALELAS tn_vdp └── V9958-Super TangCartMSX MSX1 on Tang Nano 20K

Antes de los cartuchos: FPGA como sustituto del VDP

Una de las líneas importantes para entender todo lo que vino después es tn_vdp, de Luis Felipe Antoniosi. El proyecto utiliza FPGA Tang para recrear chips de vídeo empleados en MSX.

tn_vdp

Tang Nano 9KTang Nano 20KTMS99xxV9958

La FPGA sustituye al VDP físico del ordenador. De este modo, el resto del MSX continúa siendo hardware real mientras la parte de vídeo puede repararse, modernizarse o utilizarse como plataforma de experimentación.

Beneficio: atacar directamente uno de los chips más importantes del sistema sin convertir todo el ordenador en FPGA.

GitHub: tn_vdp ↗

V9958-Super

V9958-Super deriva de tn_vdp y explora extensiones gráficas que van más allá del comportamiento tradicional del V9958. Es una rama especialmente orientada a experimentación.

GitHub: V9958-Super ↗

WonderTANG: una Tang Nano 20K dentro de un cartucho MSX

WonderTANG

Tang Nano 20KcartuchomicroSDNextorSCC+OPLL

WonderTANG convierte una Tang Nano 20K en una expansión multifunción para un MSX real. El ordenador anfitrión continúa siendo la máquina principal, pero el cartucho incorpora almacenamiento, memoria, sonido y diferentes funciones adicionales dentro de la FPGA.

Entre sus posibilidades se encuentran microSD con Nextor, Memory Mapper, MegaRAM, SCC+ y OPLL.

Uso principal: modernizar un MSX real sin sustituirlo.

Beneficio: concentrar en una sola expansión funciones que tradicionalmente requerirían varios cartuchos.

GitHub: WonderTANG ↗

WonderTANG → tnCart

Este es uno de los puntos que más fácilmente se puede interpretar de forma incorrecta: WonderTANG aparece antes que tnCart. El propio proyecto tnCart indica que su circuito toma como referencia revisiones del hardware WonderTANG.

tnCart

V9990NextorSCCOPLLPACMegaROM

tnCart desarrolla una plataforma propia sobre el concepto de cartucho Tang y añade una combinación muy amplia de funciones. Una de las más llamativas es la implementación de V9990 junto con Memory Mapper, Nextor, SCC/SCC-I, OPLL, PAC y diferentes posibilidades de emulación de cartuchos.

Uso principal: expansión multifunción y plataforma de experimentación, especialmente alrededor de V9990.

GitHub: tnCart ↗
WonderTANG → tnCart

tnCart → tnCartWonder

tnCartWonder

tnCartWonder es un fork de tnCart adaptado de nuevo al hardware WonderTANG. Es el puente directo entre ambas líneas.

Beneficio: utilizar el desarrollo de tnCart sobre una WonderTANG compatible.

GitHub: tnCartWonder ↗
WonderTANG → tnCart → tnCartWonder

Wonder9968: la rama de vídeo

Wonder9968

Wonder9968 explora la integración de un V9968 en el ecosistema WonderTANG/tnCart. Esta rama conecta el mundo del cartucho FPGA con la evolución de los VDP clásicos de MSX2+.

Uso: experimentar con capacidades gráficas superiores manteniendo una plataforma compatible con el ecosistema Tang.

GitHub: Wonder9968 ↗

mangOPL4: la rama de sonido

mangOPL4

mangOPL4 utiliza tnCartWonder y WonderTANG como base para avanzar hacia una implementación FPGA de OPL4 / MoonSound.

MoonSound, basado en el Yamaha YMF278B, es una de las expansiones de audio más avanzadas del ecosistema MSX.

Uso: desarrollo y validación de audio avanzado sobre FPGA.

Estado: debe considerarse un proyecto en desarrollo.

GitHub: mangOPL4 ↗

Otra vía: MSX Goa’uld

Mientras WonderTANG y tnCart evolucionaban alrededor del concepto de cartucho de expansión, MSX Goa’uld adoptó una aproximación radicalmente diferente.

MSX Goa’uld

Una Tang Nano 20K se instala en el lugar del Z80 de un MSX real. Pero la FPGA no se limita a sustituir la CPU: progresivamente integra CPU, VDP, BIOS y otros elementos fundamentales del ordenador.

El MSX físico continúa aportando elementos valiosos como teclado, joysticks, slots, carcasa y parte de la electrónica.

GitHub: MSX Goa’uld ↗
Placa FPGA Goa'uld (Tang Nano 20K) instalada en el zócalo del Z80 de un Sony HB-F1
Un Goa’uld dentro de un Sony HB-F1: la FPGA ocupa el sitio de la CPU original y el resto del ordenador sigue siendo el de siempre.

MSX Goa’uld SD

Z80 FPGAV9958HDMINextorSCCOPLLKanji

Goa’uld SD lleva la idea mucho más cerca de contener un MSX2+ completo. Integra CPU, V9958 con HDMI, BIOS MSX2+, almacenamiento SD con Nextor, mapper, MegaRAM SCC, PSG, OPLL, RTC, Kanji y funciones experimentales de conectividad.

Uso principal: convertir un MSX antiguo en una máquina MSX2+ muy avanzada manteniendo la experiencia física del ordenador.

Le dedicamos un artículo completo: Goauld SD, una mejora de otro mundo.

GitHub: MSX Goa’uld SD ↗

Goa’uld SD con teclado y gamepad USB

La rama MSXgoauldSD_usbkb añade una capa de entrada moderna utilizando un RP2040 como USB host.

RP2040USB HIDteclado USBgamepad USBESP-01S opcional

Una de sus ventajas es que el teclado y los joysticks originales del MSX pueden seguir utilizándose al mismo tiempo que los periféricos USB.

El Wi-Fi puede apoyarse en un ESP-01S basado en ESP8266; conviene diferenciarlo del ESP32-C6 que aparecerá posteriormente en MSXimus.

GitHub: Goa’uld SD + USB ↗

Guardian Angel

MSX Goa’uld Guardian Angel es un proyecto auxiliar relacionado con la integración del RP2040 y el soporte USB. No es un core FPGA MSX completo, pero forma parte de la evolución técnica de esta rama.

GitHub: Guardian Angel ↗

De Goa’uld a un MSX completamente autónomo

Cuando dentro de la FPGA ya existen CPU, VDP, memoria, BIOS, almacenamiento y sonido, el siguiente paso lógico es prescindir del MSX anfitrión. De esa evolución nace MSXnano.

MSXnano

MSXnano convierte una Tang Nano 20K en un MSX2+ autónomo. Ya no necesita estar instalado dentro de un ordenador MSX real.

Tang Nano 20KstandaloneV9958HDMINextorSCCOPLL

Uso principal: tener un MSX2+ FPGA compacto y moderno sin necesidad de disponer de un MSX original.

Beneficio: muy buena relación entre tamaño, coste y prestaciones.

Comentamos la última versión en MSXnano v1.8.

RetroSilicon/MSXnano ↗
Papipapito/MSXnano ↗
Interior de un MSXnano v1.8 con la Tang Nano 20K, el adaptador HDMI y el módulo WiFi ESP-01
Interior de un MSXnano: aquí ya no hay MSX anfitrión, solo la FPGA, el HDMI, la SD y el WiFi.

MSXimus: el hermano mayor

MSXimus

Tang Console 60KV9968V9958OPL4Y8950dual SCCUSBESP32-C6

MSXimus lleva la filosofía de MSXnano a una FPGA considerablemente mayor. El salto de recursos permite integrar V9968/V9958, HDMI 720p, OPL4/MoonSound, MSX-Audio basado en Y8950, OPLL, doble SCC estéreo, USB integrado, DDR3 y conectividad opcional mediante ESP32-C6.

Uso principal: disponer de un MSX FPGA autónomo mucho más ambicioso, especialmente en vídeo, audio y periféricos modernos.

Lo contamos a fondo en MSXimus: un MSX2+ completo en una FPGA.

GitHub: MSXimus ↗
Demo del VDP V9968 en un MSXimus, con sprites multicolor imposibles en un MSX2+ real
La demo del V9968 en un MSXimus: sprites de 15 colores definidos píxel a píxel, algo fuera del alcance de un MSX2+ real.

MSX Asgard: Goa’uld vuelve al cartucho

MSX Asgard

Asgard vuelve a unir dos conceptos que parecían haber evolucionado por caminos diferentes: el MSX2+ completo dentro de FPGA y el formato cartucho.

Integra Z80, V9958 con HDMI, BIOS MSX2+, SD y Nextor, mapper, MegaRAM SCC, PSG, OPLL, RTC y Kanji, pero utiliza el slot de cartucho en vez del zócalo del Z80.

Beneficio: llevar la filosofía Goa’uld a un formato potencialmente más cómodo y reversible.

Por prudencia, es mejor describir Asgard como una convergencia conceptual entre Goa’uld y la línea de cartuchos, no como un fork directo de tnCart mientras no exista una genealogía de código documentada.

GitHub: MSX Asgard ↗

TangCartMSX: otra línea de experimentación

TangCartMSX

El repositorio de HRA1129 agrupa numerosos experimentos relacionados con cartuchos FPGA, VDP, Tang Nano 9K/20K y aproximaciones a MSX1 y MSX2+.

No conviene tratarlo como un único producto cerrado: es más apropiado verlo como un laboratorio de investigación alrededor del bus MSX, los cartuchos y el vídeo.

GitHub: TangCartMSX ↗

Implementaciones independientes

MSX1 on Tang Nano 20K

No toda implementación MSX sobre Tang deriva de WonderTANG o Goa’uld. Este proyecto implementa un MSX1 autónomo con Z80, TMS9918A, AY-3-8910, HDMI, teclado PS/2 y soporte de almacenamiento.

Beneficio: una arquitectura más sencilla que resulta especialmente interesante para estudio y experimentación.

GitHub: MSX1 Tang Nano 20K ↗

Un árbol que continúa creciendo

Una de las características más interesantes de estos proyectos es que no estamos ante una única implementación cerrada del estándar MSX. Cada desarrollo ha servido de plataforma, inspiración o punto de partida para otros.

Un VDP FPGA lleva a experimentar con nuevos modos de vídeo. Un cartucho acaba alojando almacenamiento, memoria, sonido y nuevos VDP. Una FPGA situada en el zócalo del Z80 acaba convirtiéndose prácticamente en todo el ordenador. Y ese mismo ordenador termina funcionando sin necesitar ya un MSX anfitrión.

WonderTANG → tnCart → tnCartWonder → Wonder9968 / mangOPL4
MSX Goa’uld → Goa’uld SD → Goa’uld USB → MSXnano → MSXimus

Y MSX Asgard vuelve a cerrar el círculo llevando un MSX2+ FPGA completo otra vez al formato cartucho.

Artículo basado en la documentación pública de los repositorios, revisado en agosto de 2026. Los proyectos evolucionan y algunas funciones pueden ser experimentales o depender de revisiones concretas del hardware. ¿Falta algún proyecto o ves algo que corregir? Escríbenos a info@msx.barcelona y lo actualizamos.

Qué lleva cada FPGA MSX, para qué sirve y qué ventajas ofrece

Una comparativa práctica de las principales ramas: qué incorpora cada proyecto, qué necesita para funcionar, para qué resulta especialmente útil y qué ventajas ofrece frente a las demás opciones.

Parte 2 · Comparativa
Ampliar un MSX existenteWonderTANG, tnCart y tnCartWonder añaden almacenamiento, memoria, sonido y/o vídeo.
Convertir un MSX en MSX2+Goa’uld SD y Asgard incorporan CPU, VDP, BIOS y gran parte del sistema.
Tener un MSX autónomoMSXnano, MSXimus y MSX1 Tang Nano no necesitan un MSX original.
Experimentar con vídeotn_vdp, V9958-Super y TangCartMSX están especialmente orientados a vídeo y bus.

Cartuchos de ampliación

WonderTANG

Tang Nano 20K en cartucho MSX
AMPLIACIÓN
CPUusa la del MSX
SDNextor
MemoriaMapper + MegaRAM
AudioSCC+ + OPLL
FPGATang Nano 20K
Formatocartucho

Uso ideal

MSX real al que se quiere añadir almacenamiento moderno, RAM y sonido.

Beneficio

Concentra muchas expansiones en un solo cartucho.

Qué conserva

CPU, teclado, slots y personalidad del MSX original.

Limitación

No es un MSX completo autónomo.

GitHub ↗

tnCart

Cartucho multifunción con V9990
AMPLIACIÓN
VídeoV9990
SDNextor
AudioSCC / OPLL
OtrosPAC / MegaROM
HostMSX real
Formatocartucho

Uso ideal

Experimentar con una expansión FPGA muy configurable y especialmente con V9990.

Beneficio

Combina vídeo avanzado y funciones de expansión clásicas.

GitHub ↗

tnCartWonder

tnCart adaptado a WonderTANG
ADAPTACIÓN
BasetnCart
HardwareWonderTANG
VídeoV9990
SDNextor
AudioSCC / OPLL
Funcióncompatibilidad HW

Uso ideal

Ejecutar la línea tnCart sobre hardware WonderTANG.

Beneficio

Une dos ecosistemas de hardware y RTL.

GitHub ↗

mangOPL4

OPL4 / MoonSound
AUDIO / WIP
BasetnCartWonder
ObjetivoOPL4
HostMSX real
FPGATang Nano 20K
EnfoqueMoonSound
Estadodesarrollo

Uso ideal

Pruebas y desarrollo de OPL4/MoonSound mediante FPGA.

Beneficio

Añade una línea de audio mucho más avanzada.

GitHub ↗

Familia Goa’uld

MSX Goa’uld SD

MSX2+ desde el zócalo Z80
Z80 SOCKET
CPUZ80 FPGA
VDPV9958 HDMI
BIOSMSX2+
SDNextor
RAMMapper + MegaRAM
AudioPSG + SCC + OPLL

Uso ideal

Actualizar radicalmente un MSX antiguo conservando teclado, joysticks y slots.

Beneficio

Convierte el anfitrión en una máquina MSX2+ con HDMI y SD.

Extra

RTC, Kanji y conectividad experimental.

Limitación

Requiere instalación en el zócalo del Z80.

GitHub ↗

Goa’uld SD + USB

Teclado y gamepad USB
USB
BaseGoa’uld SD
USB HostRP2040
TecladoUSB + original
GamepadUSB + original
Wi-FiESP-01S opcional
Entradamixta

Uso ideal

Usar periféricos USB modernos sin perder los controles originales.

Beneficio

Combina entrada moderna y clásica simultáneamente.

GitHub ↗

MSX Asgard

MSX2+ dentro de un cartucho
MSX2+ CARTUCHO
CPUZ80 FPGA
VDPV9958 HDMI
SDNextor
RAMMapper + MegaRAM
AudioPSG + SCC + OPLL
Formatocartucho

Uso ideal

Convertir un MSX en MSX2+ desde el slot de cartucho.

Beneficio

La filosofía Goa’uld en un formato más reversible.

GitHub ↗

MSX FPGA autónomos

MSXnano

MSX2+ completo sobre Tang Nano 20K
STANDALONE
FPGATang Nano 20K
CPUZ80 FPGA
VDPV9958 HDMI
SDNextor
AudioPSG + SCC + OPLL
Wi-FiESP opcional

Uso ideal

Tener un MSX2+ FPGA pequeño sin poseer un MSX original.

Beneficio

Gran relación entre tamaño, coste y prestaciones.

GitHub ↗

MSXimus

La rama avanzada
STANDALONE AVANZADO
FPGATang Console 60K
VDPV9968 / V9958
VídeoHDMI 720p
AudioOPL4 + Y8950 + OPLL
SCCdual estéreo
USBintegrado

Uso ideal

Buscar un MSX FPGA muy completo, especialmente en vídeo y sonido.

Beneficio

Más recursos permiten integrar funciones imposibles de reunir cómodamente en 20K.

GitHub ↗

MSX1 Tang Nano 20K

Implementación independiente
MSX1 STANDALONE
CPUZ80
VDPTMS9918A
AudioAY-3-8910
VídeoHDMI
EntradaPS/2
PerfilMSX1

Uso ideal

Quien busca una implementación sencilla y educativa de un MSX1.

Beneficio

Arquitectura más simple y fácil de estudiar.

GitHub ↗

Proyectos centrados en vídeo

tn_vdp

Sustitución FPGA del VDP
VDP

Uso ideal

Reemplazar o experimentar con TMS99xx/V9958 dentro de un MSX real.

Beneficio

Moderniza solo el vídeo y conserva el resto del hardware.

GitHub ↗

V9958-Super

Extensiones gráficas experimentales
VDP EXPERIMENTAL

Uso ideal

Explorar modos gráficos más allá del V9958 estándar.

Beneficio

Laboratorio para nuevas posibilidades de vídeo.

GitHub ↗

Tabla comparativa rápida

ProyectoTipoMSX realStandaloneCPU FPGAVDPSD / NextorSCCOPLLOPL4USBWi-FiUso principal
WonderTANGCartuchoNoNoFunciones de vídeoNoNoNoAmpliar un MSX real
tnCartCartuchoNoNoV9990NoNoNoExpansión multifunción
tnCartWonderAdaptaciónNoNoV9990NoNoNotnCart sobre WonderTANG
mangOPL4AudioNoNoHereda baseEn desarrolloNoNoOPL4 / MoonSound
Goa’uld SDZ80 socketNoV9958NoNoExperimentalConvertir un MSX en MSX2+
Goa’uld SD + USBZ80 socketNoV9958NoOpcionalAñadir USB al Goa’uld
MSX AsgardCartucho MSX2+NoV9958NoNoNoMSX2+ completo desde slot
MSXnanoStandaloneNoV9958NoSegún ramaOpcionalMSX2+ FPGA compacto
MSXimusStandaloneNoV9968 / V9958ESP32-C6 opcionalMSX FPGA avanzado
tn_vdpVDPNoNoTMS99xx / V9958NoNoNoNoNoNoSustituir / experimentar con VDP

¿Cuál elegir según el uso?

Tengo un MSX real y quiero SD, RAM y sonido

WonderTANG es una opción directa. tnCart/tnCartWonder son especialmente interesantes si también interesa V9990.

Quiero convertir mi MSX en un MSX2+

Goa’uld SD desde el zócalo Z80. MSX Asgard desde el slot de cartucho.

Quiero teclado y gamepad USB

Goa’uld SD + USB para un MSX físico. MSXnano/MSXimus para una máquina FPGA autónoma.

No tengo MSX y quiero uno FPGA

MSXnano para una solución compacta. MSXimus cuando se priorizan V9968, audio avanzado y USB integrado.

Solo me interesa vídeo

tn_vdp para sustitución de VDP; V9958-Super para experimentación gráfica avanzada.

Quiero estudiar cómo funciona un MSX

MSX1 Tang Nano 20K es especialmente interesante por su arquitectura más sencilla.

¿No tienes claro cuál encaja contigo?

En MSX Barcelona trabajamos a diario con estas placas: reparamos, montamos y desarrollamos parte de los proyectos que aparecen en este artículo. Cuéntanos qué MSX tienes y qué quieres conseguir, y te decimos qué camino tiene más sentido en tu caso.

Escríbenos a info@msx.barcelona
Comparativa orientativa basada en la documentación pública de los proyectos. Las funciones pueden cambiar con nuevas versiones del RTL o del hardware.