MSX: La plataforma que unió a gigantes de la tecnología en los 80

Si bien el estándar MSX tuvo poco éxito fuera de Japón, se trata de un ordenador con una base de fans sólida y que en el país del sol naciente marcó la década de los 80 junto a la Famicom y el PC-88. En este artículo haremos un repaso a su historia y el hardware de las diferentes generaciones de esta plataforma, la cual fue la apuesta de las grandes marcas japonesas de la electrónica de consumo y de … ¿Microsoft?

Los orígenes del MSX

Para entender lo que es el MSX hemos de coger la máquina del tiempo y mirar cuál era la situación del mercado japonés de ordenadores a principios de 1983, con una gran cantidad de marcas haciendo ordenadores, todos ellos dirigidos a la oficina y extremadamente caros. Mientras que en los Estados Unidos ya había sistemas como el Atari 800 y el Commodore 64, cuyo precio los colocaba al alcance de los usuarios domésticos, en Japón, sistemas como el PC-88 de NEC eran mucho más caros, y si hablamos de sistemas de videojuegos, aún peor. Por ejemplo, la Atari 2800, la versión japonesa de la Atari 2600, tenía un precio de 56800 yenes.

Spectravideo SV-328
El Spectravideo SV-328, el «primer» MSX

Viviendo dicha situación, Kazuhiko Nishi quien era trabajador de Microsoft Japón, y de una empresa fundada por él mismo llamada ASCII, y que se encargaba de traer videojuegos de occidente a Japón, decidió crear un estándar común. Para ello, tomó como referencia un ordenador poco conocido que se lanzó en junio de 1983 como referencia: el Spectravideo SV-328, que se vendía por 599 dólares por aquel entonces. No obstante, no lo lanzó tal cual al mercado, sino que hizo una serie de modificaciones en lo que a hardware y software se refiere para crear el estándar MSX.

  • Se reemplazó el SV-BASIC por el MSX-BASIC, ambos son dialectos o versiones extendidas del Microsoft GW-BASIC con pequeños cambios.
  • El estándar MSX en su primera generación dispone de dos puertos de expansión en vez de uno.

No obstante, ASCII no era un fabricante de hardware, y la propuesta del estándar MSX era crear una plataforma común entre los diferentes fabricantes japoneses.

¿Por qué fue un estándar?

Aunque el punto fuerte fue cuando el creador del estándar MSX consiguió convencer a marcas como Sony, Matsushita (Panasonic), Sanyo y muchas otras de crear un ordenador con software y especificaciones comunes en vez de hacer cada una su sistema. La idea era hacer un estándar como el VHS, pero en forma de microordenador. Su lanzamiento se produjo a los pocos meses, el 21 de octubre de 1983.

Sony Hit-Bit
El Sony Hit-Bit en rojo, uno de MSX más icónicos

Sin embargo, la clave fue el precio, ya que era económicamente más accesible que otros sistemas. Un truco para conseguirlo fue prescindir por completo de un monitor específico y permitir conectar el ordenador al televisor. Lo cual hizo soñar a los fabricantes de vender un MSX a cada hogar japonés y más allá.

Al mismo tiempo, la fuerza de marketing de dichos gigantes de la electrónica de consumo popularizaron enormemente este sistema en Japón. Las ventas del mismo no fueron malas, 100.000 unidades, pero la Famicom que era tres veces más barata, consiguió llegar a las 500.000 debido a su mayor popularidad entre los niños japoneses de por aquel entonces.

La participación de Microsoft

Durante un tiempo se llegó a decir que las siglas MSX significaban Microsoft eXtended, lo cual se debe al ombliguismo de la prensa estadounidense, quienes no podían concebir por aquel entonces que los japoneses hubieran creado el estándar MSX. ¿El significado de las siglas? «Machines with Software Exchangeability», lo que no quita que Microsoft tuviese participación.

Kazuhiko Nishi junto a Bill Gates
Kazuhiko Nishi junto a Bill Gates

Por aquel entonces, una de las fuentes de dinero de la empresa de Bill Gates era licenciar su BASIC a las diferentes empresas, pero con el MSX Nishi quería ir mucho más allá. Por lo que de la mano de Tim Paterson, creador del MS-DOS, se hizo una conversión de la versión 1.25 del mismo al MSX a la que llamaron MSX-DOS. La cual, desde el momento en que Paterson había fusilado al CP/M de Digital Research resultaba irónico, pero esto le dio al MSX la capacidad de usar disquetes e ir más allá de muchos sistemas de 8 bits similares en lo que al software se refiere.

No obstante, las primeras máquinas se vendieron junto al MSX-BASIC y la BIOS del sistema, pero sin el MSX-DOS de serie. El motivo de ello es que la disquetera del sistema no estuvo lista hasta a mediados de 1984, no obstante, en el MSX2, debido a que la unidad de discos ya vino de serie, dicho sistema operativo se incluía ya en todos los sistemas.

El hardware del primer MSX

La elección de Nishi por el SV-328 como referencia tuvo un sentido práctico, dicho ordenador utilizaba un diseño basado en chips que no eran exclusivos de una marca. Es más, la circuitería principal se basaba en el mismo conjunto de chips que la Colecovision, es decir: un Zilog Z80 a 3.58 MHz como CPU, un VDP TMS9918A para generar los gráficos y un AY-3-8910 para el sonido. Sin embargo, hay un motivo adicional y es que fabricantes japoneses como Hitachi y YAMAHA tenían licencias para fabricar dentro del país clones de dichos chips, reduciendo el precio del MSX enormemente.

Reparación de un ordenador MSX
Reparación de un ordenador MSX

Sin embargo, un punto que diferenciaba a las consolas de los ordenadores es el hecho de que estos últimos solían venir con una ROM que incluía las rutinas del sistema (BIOS) y el intérprete BASIC. Dado que dicha información la CPU accedía a través del mismo direccionamiento de la RAM, esto creaba un problema, dado que el Z80 como CPU solo podía direccionar 64 KB de memoria. En las consolas se dividía el direccionamiento en dos mitades: 32 KB para la RAM del sistema y otros 32 KB para los cartuchos.

Banco0123
UsoROMSlot de cartuchos 1Slot de cartuchos 2RAM
0000-3FFFBIOSDatosDatosDatos (solo con 64 KB de RAM)
4000-7FFFBASICDatosDatosDatos (solo con 48 KB de RAM)
8000-BFFFDatosDatosDatos (solo con 32 KB de RAM)
C000-FFFFDatosDatosDatos (solo con 16 KB de RAM)

En el MSX la cosa era más complicada, para ello se usaba el Intel 8255A, el cual se encargaba de controlar el teclado y escoger los bancos de memoria que se usaban en cada momento que permitían configurar la asignación de memoria a los diferentes usos sin que se viera limitada por el direccionamiento.

El segundo slot de cartuchos

Si bien la idea del segundo slot de cartuchos no es una novedad, su funcionamiento en el estándar MSX es totalmente distinto, dado que realmente se utiliza como un puerto de expansión para añadir nuevo hardware que el MSX no trae de serie o se encuentra fuera de la norma básica del estándar. Dado que la norma mínima para construir un MSX eran los 16 KB de memoria, se usaba el segundo slot de cartuchos para ampliar la RAM del sistema.

Cartucho de expansión de memoria MSX
Expansión de memoria para los MSX de primera generación

s

Sin embargo, no era la única utilidad planeada para la segunda ranura. Por desgracia, dado que era algo opcional en el estándar, aunque se tenía en cuenta en el direccionamiento, no todos los modelos lo traían de serie. Claro está que por aquel entonces no existía internet y cosas como la interfaz de la disquetera, interfaces para conectar una impresora, una ROM con rutinas adicionales de BASIC, mapeadores de memoria para programas que requerían ir más allá del direccionamiento, etcétera.

La disquetera

La primera generación del estándar MSX no vino con una unidad de discos flexibles de serie; es más, la BIOS original del sistema no contemplaba las rutinas de acceso al disquete, las cuales tenían que añadirse a través de una ROM incluida en la misma unidad o en un cartucho aparte. En todo caso, todas las disqueteras tenían que usar las mismas llamadas del sistema para una total compatibilidad.

Disquetera MSX
Disquetera MSX

El estándar originalmente no tenía un tipo de disquete como referencia, podía usar de 3.5 pulgadas, de 5.25 pulgadas e incluso de 3 pulgadas. Sin embargo, el estándar de 3.5 pulgadas fue el que se estandarizó a partir de la segunda generación del estándar, donde dichas disqueteras venían de serie y las rutinas para acceder al contenido de los disquetes pasaron a estar integradas en los ordenadores.

La disquetera era esencial para usar el MSX-DOS, y si bien no fue el primer sistema en usar este tipo de almacenamiento para ejecutar software no-lúdico portado desde CP/M, tuvo una aceptación mucho mayor en el uso de discos flexibles que sus contemporáneos como el Amstrad CPC o el Commodore 64 no consiguieron.

El MSX2

E El éxito de la primera generación del msx fue cuando menos relativo dado que no fue tan alto como se esperaba inicialmente por diversos motivos:

  • Dentro del mercado japonés, la Famicom tuvo más éxito y se veía por parte de los usuarios como superior técnicamente por su mejor chip gráfico.
  • Si ya nos vamos a los Estados Unidos, el enorme éxito comercial del Commodore 64 había provocado que el MSX no tuviese espacio de ventas, por lo que llegó demasiado tarde para poder optar a una base de usuarios lo suficientemente grande.
  • En Europa se hubiese superado por otras plataformas que, aunque técnicamente inferiores, como es el caso ZX Spectrum eran mucho más asequibles.
MSX2 Phillipps
Un MSX2 de Philipps

No obstante, el mayor problema era el chip gráfico que, si bien era excelente para máquinas de videojuegos, tenía ciertas limitaciones de cara a su uso en ordenadores, lo que obligó A la creación de una segunda versión del estándar MSX conocida como MSX2, la cual fue lanzada en 1985. Y cuya principal novedad fue precisamente un VDP renovado: el V9938.

Cambios en el MSX2

Para la segunda generación del MSX se conservaron buena parte de los componentes de la primera generación, así pues, tanto en la CPU como el chip de sonido eran exactamente los mismos, y el nuevo VDP era totalmente compatible hacia atrás con el TMS9918A. De esta manera, se aseguraron que todo el software continuará siendo compatible.

MSX2 con el cartucho de Vampire Killer
Cartucho de Vampire Killer en MSX2

Sin embargo, hubo cambios importantes aparte del ya mencionado nuevo chip gráfico.

  • Se añadió al uso de mapeadores de memoria para poder llegar a cantidades de RAM mucho más altas que los 64 KB lo cual permitió software mucho más complejo. La memoria de serie pasó a ser de 64 KB, aunque este cambio permitió que hubiese en sistemas con 256 e incluso 512 kilobytes.
  • En cuanto a la ROM, se añadieron nuevas rutinas para hacer uso de los nuevos componentes del hardware Y las nuevas funciones, lo que elevó el tamaño de la misma a los 48 KB.
  • Funcionalidades como el puerto de la impresora o la capacidad para añadir Chips de síntesis FM se hicieron opcionales para poderlos implementar en la circuitería del ordenador. Aunque no formaban parte de la especificación mínima del estándar.

No obstante, pese a las mejoras, el MSX2 no consiguió tener el impacto necesario y en 1986, un año después del lanzamiento y tras un infructuoso intento de Microsoft por comprar el estándar, los de Bill Gates abandonaron la coalición. No solo eso, sino que los diferentes fabricantes empezaron a abandonar el estándar MSX, especialmente en Japón, donde se vio devorado por el éxito cada vez más creciente de la Famicom y la estandarización en diferentes estamentos del PC-88 y el PC-98.

El V9938, el VDP del MSX2

Diseñado por ASCII Corporation junto a Microsoft y YAMAHA, el VDP V9938 es sin duda el componente definitorio de la segunda generación del MSX y el que hizo posible una gran cantidad de juegos clásicos para esta plataforma. Se trata sin duda del mejor chip gráfico para un ordenador jamás creado. Si descontamos, claro está, su versión mejorada para el MSX2+ y el MSX Turbo R, el V9958, cuyas mejoras fueron mínimas respecto al VDP del MSX2. En todo caso, hay que aclarar que, aunque es compatible hacia atrás con el TMS9918, no es exactamente una versión potenciada del mismo, aunque por motivos de compatibilidad hacia atrás sí que incluye el hardware completo del VDP del primer MSX.

V9938
V9938, el chip gráfico del MSX2

Por lo que nos centraremos en las novedades que trae respecto al TMS9918A, siendo la primera de ellas el aumento de la VRAM, la cual puede ser de hasta 128 KB, con la opción de otros 64 KB auxiliares. Un salto más que considerable respecto a los 16 KB de su antecesor y que permite, entre otras cosas, la generación de un búfer de imagen basado en píxeles, un cambio que es definitorio del V9938 y que es importante para entender su funcionamiento. Y es que, pese a que sigue funcionando como un generador de caracteres, ya no se basa en ir al tempo del haz de electrones.

La otra mejora es en la salida de vídeo, si el TMS9918A original está pensado para vídeo compuesto y teníamos una versión con salida para vídeo por componentes en forma de TMS9928A, pues el V9938A del MSX2 dispone de una salida RGB completa, lo cual es un punto a favor de estos potentes ordenadores.

Modos gráficos y memoria

El V9938 soporta todos los modos gráficos del TMS9918A, pero añade otros nuevos que son exclusivos del VDP del MSX2. Todos ellos funcionan sin problemas en un ordenador con 64 KB de VRAM a excepción del modo GRAPHIC 7/SCREEN 8.

Nombre del Modo Modo SCREEN Descripción
TEXT 1 SCREEN 0 (ancho=40) 40 caracteres por línea de texto, un color por cada carácter
TEXT 2 SCREEN 0 (ancho=80) 80 caracteres por línea de texto, con selección de parpadeo de carácter
MULTI-COLOR SCREEN 3 Pseudo-gráfico, cada carácter dividido en cuatro bloques
GRAPHIC 1 SCREEN 1 32 caracteres por línea de texto, disponible un carácter coloreado
GRAPHIC 2 SCREEN 2 256 x 192, el color se especifica para cada 8 píxeles
GRAPHIC 3 SCREEN 4 GRAPHIC 2 que puede usar sprites en modo 2
GRAPHIC 4 SCREEN 5 256 x 212; 16 colores disponibles para cada píxel
GRAPHIC 5 SCREEN 6 512 x 212; 4 colores disponibles para cada píxel
GRAPHIC 6 SCREEN 7 512 x 212; 16 colores disponibles para cada píxel
GRAPHIC 7 SCREEN 8 256 x 212; 256 colores disponibles para cada píxel

El motivo de ello es que el V9938 genera un búfer de imagen con 2, 4 u 8 bits por píxel dependiendo del modo. A una resolución de 256 x 212 solo para almacenarlo se necesitan 53 KB, lo que hace que se requiera una configuración de 128 KB de VRAM, lo que limitaba su adopción. Dado que la gran mayoría de los sistemas MSX de segunda generación traían de serie 64 KB de memoria de vídeo.

E

Generador de sprites

El V9938 dispone de su propio generador y controlador de sprites, el cual no es el mismo que el del TMS9918A, pese a que incluye el de este último para poder ejecutar sin problemas los juegos y el software para la primera generación del MSX.

Contra para MSX2

Por lo que al sistema clásico se le menciona como Sprite Mode 1 y al nuevo como Sprite Mode 2, el cual trae las siguientes mejoras en el V9938

  • Lista de 32 sprites simultáneos, pero con 4 bits de color por píxel (16 colores), independientemente del modo gráfico del que estemos usando.
  • 8 sprites simultáneos por lista de escaneo, frente a 4 del TMS9918A.

El generador de sprites funciona independiente del modo gráfico seleccionado, escribirá sus píxeles siempre con una prioridad superior al tilemap o fondo de pantalla, independientemente del modo gráfico que se esté usando, a excepciones de los modos de texto, donde el generador de sprites se encuentra desactivado.

Blitter

Uno de los problemas del TMS9918A es la comunicación entre la CPU y la VRAM, la cual requiere una gran cantidad de ciclos para copiar la información. Para solucionar esta limitación en los modos propios del V9938 en el MSX de segunda generación, incluye una unidad DMA, que permite realizar copias de datos a mayor velocidad, pero que además tiene las mismas funciones de un Blitter, aunque recortadas en comparación con otros ordenadores contemporáneos como el Commodore Amiga.

Snatcher para MSX2

Por lo que no solo tenemos la opción de copiar de la RAM a la VRAM, sino también dentro de la propia VRAM. Dichas copias de datos se pueden hacer sin operaciones lógicas o con ellas, pero con una limitación importante, si los Blitter más avanzados pueden hacer operaciones con operandos A, B y C y un operando D como resultado, el limitado Blitter del V9938 puede hacerlo solo con A y B, haciendo este último de resultado. No es la única limitación, ya que el MSX2 no tiene soporte CAD/CAM completo al no poder generar arcos.

En realidad, el hecho de que el V9938 genere un búfer de imagen es necesario para que su Blitter funcione. De ahí a que esto no se implementara en otros VDP de YAMAHA para consolas, por la cantidad de VRAM que requería. No obstante, el concepto de la unidad DMA sin operaciones lógicas fue copiado por SEGA en forma de Blast Processing para su Mega Drive/Genesis.

El MSX2+, el principio del fin del estándar

El siguiente año en lo que a salto tecnológico se refiere para los ordenadores japoneses fue 1987, donde los PC-88 de tercera generación hicieron acto de aparición adoptando el NEC 7220 como chip gráfico, el potente X68000 hizo su acto de presencia y la PC-Engine se convirtió en el sistema alternativo a la Famicom. ¿La respuesta por parte de ASCII Corporation? El decepcionante MSX2+ por el hecho de que el salto técnico respecto al MSX2 fue cuando menos nimio.

V9958, el último VDP para el estándar MSX

Sin embargo, el MSX2+ hizo aparición en exclusiva para el mercado japonés de la mano de solo 3 marcas. Sanyo, Sony y Matsushita (Panasonic), ya que el resto de los fabricantes abandonaron el estándar tras las malas ventas del MSX2 y por el hecho de que el nuevo hardware no era competitivo, perdiendo en el proceso el apoyo de muchas marcas. Y no es de extrañar, ya que la principal novedad fue un nuevo VDP, el V9958, con 128 KB de RAM para vídeo, pero cuya única novedad era el soporte para horizontal y vertical, el cual era una de las limitaciones del V9938 en comparación con sus semejantes. Aparte de traer un DAC de 15 bits, lo que le permite tener una mayor variedad de colores en los modos más avanzados.

Lo cual es paradójico, por el hecho de que en el mismo año de lanzamiento que el MSX2+, 1988, la SEGA Mega Drive/Genesis apareció en el mercado con un VDP de características superiores y diseñado también por YAMAHA, sin embargo, no era el final, ya que todavía hubo un último intento para el estándar.

MSX Turbo R

Tras el fiasco del MSX2+ y la falta de soporte tanto en ventas como en software, hacía falta un revulsivo para salvaguardar el estándar. No obstante, solo Panasonic creyó en el cuarto proyecto de ASCII Corporation que fue el punto final al estándar MSX, al menos hasta a día de hoy. Originalmente, el MSX Turbo R tenía que ser el MSX3 y basarse en un nuevo VDP, el V9978, el cual nunca llegó a terminarse, en vez de ello YAMAHA lanzó al mercado el V9990, el cual no soportaba los modos gráficos del MSX2 y el MSX2+ y de ahí que Nishi decidiera descartarlo para el nunca lanzado MSX de tercera generación y este repitiera usando de nuevo el V9958 como VDP.

MSX Turbo R
MSX Turbo R

La parte triste de la historia es que el MSX Turbo R es casi un MSX3, excepto que mantiene el V9958 como VDP, por lo que es un hardware mucho más interesante que el MSX2+, dado que los cambios eran mayores. No obstante, el hecho de disponer de un hardware gráfico desfasado era algo que pesaba muy en contra de dicho ordenador.

Lanzado en el año 1990, el MSX Turbo R fue el punto final a 7 años del estándar. El cual trajo consigo una enorme multitud de clásicos como Vampire Killer, los dos primeros videojuegos de la saga Metal Gear, Aleste, la saga YS, Mr. Ghost y muchos otros que nos dejamos en el camino, sin embargo, todos ellos se hicieron para MSX2 principalmente.

El R800

El cambio más importante fue la adopción del R800 como CPU, un microprocesador diseñado por la propia ASCII y Panasonic que era una versión mejorada del Z80 con el cual era binariamente compatible dado que usaba el mismo set de registros e instrucciones. No obstante, por problemas de timing con ciertas aplicaciones, los MSX Turbo R incorporaron también el clásico Zilog Z80A a 3.58 MHz como CPU secundaria.

El bus de datos continuo, siendo de 8 bits, una limitación que se debió a la necesidad de mantener la compatibilidad con los viejos componentes. Por temas de coste mantuveron el direccionamiento como en el Z80, no soportaba más de 64 KB de RAM. Sin embargo, añadieron un mapeador de memoria integrado que le permitía direccionar hasta 4 MB de memoria.

Los cambios principales se encontraban en el tiempo de ejecución de las instrucciones. La ALU de 4 bits del Z80 fue reemplazada por una de 16 bits que redujo a una cuarta parte el número de ciclos de reloj necesarios en la etapa de ejecución de ciertas instrucciones, no solo eso, sino que la captación o Fetch también se redujo a una cuarta parte, pasando de 4 ciclos a un solo ciclo. Lo que llevó a la necesidad de usar RAM mucho más rápida y cara en el sistema, así como también memoria ROM muy rápida para que esta no fuese un cuello de botella para la CPU.

MSX-Music

En 1988 Panasonic introdujo un cartucho de expansión para todos los modelos de MSX, el cual recibió el nombre de FM-PAC y traía consigo un sintetizador FM en forma de cartucho de 7800 yenes, curiosamente se trataba del mismo chip FM de la Master System: el YM2413, esta vez acompañado de 8 KB de SRAM.

MSX FM PAC

Dado que Panasonic era el fabricante de los MSX Turbo R, las capacidades de dicho cartucho se incluyeron de serie en el sistema y como parte de la especificación mínima. Su limitación se encuentra en que no se pueden hacer algoritmos de síntesis FM para simular diferentes instrumentos, ya que todos ellos se encuentran ya codificados, por lo que limita el número de operandos por canal a 2.

Por lo que no estamos ante un chip de audio pensado para músicos y productores musicales, lo que limita el atractivo para los profesionales y no deja de ser un añadido para videojuegos. El problema es que, en comparación con las capacidades de audio de otros sistemas de la época, queda muy por debajo. Además, incluye un sintetizador PCM para la reproducción de voces e instrumentos que la Síntesis FM no reproduce correctamente.

Deja un comentario

Tu dirección de correo electrónico no será publicada. Los campos obligatorios están marcados con *

Scroll al inicio