FM Towns, el PC japonés que quiso ser consola

Desconocido en occidente, el FM Towns (Fujitsu Micro) fue la apuesta de Fujitsu en el mundo de los ordenadores para el periodo situado entre 1989 y 1997. Con una arquitectura de PC, como en el caso del NEC PC-98, y con hardware gráfico y sonoro orientado de cara a los videojuegos como el X68000. Se le puede considerar, a nivel técnico, como la máquina japonesa más potente de la época, pero al mismo tiempo desconocida para el mercado occidental. Es por ello que hemos decidido dedicarle este reportaje, para que conozcáis mejor cómo es su hardware por dentro.

El hardware del FM Towns

Fujitsu fue la primera marca de ordenadores japonesa en apostar por un sistema de 32 bits, ya que si bien NEC lanzó modelos del PC-98 basados en el 386 de Intel en 1989, lo hizo apostando por la variante SX,  mientras que el FM Towns lo hizo empleando el modelo DX a 16 MHz, lo que le permitió manejar un bus de direcciones y otro de datos de 32 bits. La idea de Fujitsu era obviamente ir a por el mercado del PC-98 utilizando un microprocesador desde donde se pudieran adaptar los programas diseñados para el ordenador de NEC y los PC occidentales.

Anuncio FM Towns

No obstante, pese a que el PC-98 era principalmente un ordenador de trabajo y oficina que con el tiempo se había filtrado en el mercado doméstico, el FM Towns destacó por contener hardware gráfico y de audio ideal para portar videojuegos con calidad de recreativa avanzada y conseguir ports de PC. Sobre el papel tenía lo mejor de los dos mundos. No solo eso, sino que en su planificación y diseño participó el padre del MSX,  Kazuhiko Nishi.

Es decir, lo tenía todo para triunfar, pero la aparición del estándar DOS-V que llenó el mercado japonés de clónicos PC y el monopolio de NEC con el PC-98, el cual ya estaba más que asentado, no le permitieron ir más allá de sus pretensiones iniciales. Es más, podríamos considerarlo como el precursor de los PC multimedia que saldrían años más tarde a nivel global, especialmente por ser el primer ordenador en traer una unidad CD-ROM de serie.

No es un PC, pero casi

No hay ninguna duda que la base para el diseño del FM Towns fueron los 386 AT, ya que aparte del chip de reloj a tiempo real, el resto de componentes son los mismos que los de PC AT construido alrededor del Intel 386, pero con una serie de diferencias de serie, que fueron el hardware de video y de audio incluido de serie en el sistema y cuyas rutinas para manejarlo se encontraban en el sistema operativo. Es decir, al igual que el PC-98, integra su propio hardware de vídeo, diferente a los EGA, CGA y VGA que se emplearon en PC.

Entrañas FM Towns

No obstante, al contrario que el PC-98 de NEC no integra un zócalo de expansión propietario al estilo del C-Bus, sino que emplea puertos de expansión ISA. Por desgracia, no se pueden utilizar tarjetas para PC, ya que al usar el sistema operativo direcciones de memoria distintas para sus rutinas, hay que adaptarlas. Por lo que era necesario crear versiones de las mismas tarjetas para FM Towns, lo cual se convertía para sus usuarios en un problema al ser mucho más caras por la poca cuota de mercado.

El sistema operativo del FM Towns

El sistema operativo del FM Towns se encontraba en una ROM de 12 Megabits (1.5 MB), un tamaño mucho más grande de lo que el propio MS-DOS de Microsoft podía manejar, la cual no era más de 1 MB, ya que el sistema operativo de Microsoft funcionaba en el modo real del 386 y posteriores en los PC convencionales, dejando 640 KB para los programas y el resto hasta llegar a 1 MB para la gestión del sistema. Todo ello, obviamente, se veía muy limitado en 1989, por lo que Fujitsu le hizo algunos cambios al MS-DOS 3 para crear el sistema operativo de su ordenador.

FM Towns OS

El resultado fue el TownsOS, una variante del MS-DOS 3, pero modificado por Fujitsu para poder manejar más de 1 MB de memoria (640 KB para el usuario), además de eso, añadió una serie de controladores y rutinas para el hardware único del FM Towns, así como una interfaz gráfica propia para manejar el sistema. En todo caso, la similitud técnica con el PC y el hecho de que el sistema operativo fuese un MS-DOS modificado permitió portar fácilmente Windows 3.1 para FM Towns, reemplazando la interfaz gráfica propietaria a favor de la de Microsoft.

MejoraDescripción
Soporte nativo para arranque desde CD-ROMEl FM Towns podía arrancar directamente los títulos desde el CD-ROM sin necesidar disquetes o disccos duros
Soporte grafico propietarioAl igual que en el PC-98 de NEC, el FM Tonws tenía su propio hardware gráfico integrado de serie.
Soporte para sonido FM y PCM integrado de serieEl sistema operativo del FM Towns incluia rutinas para manejar el uso del hardware de audio avanzado del sistema.
DOS ExtenderPermite usar todo el direccionamiento de memoria el 386 de forma directa.

En todo caso, hay que recalcar que, pese a las funciones adicionales y su diferente mapa de memoria, es mucho más cercano a lo que fue un PC convencional que no el PC-98 de NEC, lo cual facilitó enormemente su posterior evolución en el FMV Towns y la conversión de varios títulos de PC con mejoras que aprovechaban la capacidad gráfica y sonora de serie que tenía el sistema. En los PC occidentales se tardaron años en que una configuración como las del ordenador de Fujitsu fuese estándar entre los usuarios.

Juegos para PC en CD-ROM, mucho antes que en PC

Aunque la particularidad más grande del FM Towns fue que pudo disfrutar de conversiones de PC, especialmente las aventuras gráficas de la época, con todas las ventajas del formato CD-ROM y adaptadores gráficos y sonoros mucho más avanzados que el PC estándar que tenían los usuarios en la época. Si bien la calidad no era mejor que la de un 386 con VGA fue el hardware de audio, muy superior a otros ordenadores y el formato CD-ROM los que hicieron el resto.

FM Towns Monkey Island 2

Sin embargo, dado que el CD-ROM no es un medio válido para ejecutar juegos directamente, esto forzaba a tener altas configuraciones de memoria RAM para disfrutar de los títulos. Por suerte, el FM Towns soportaba RAM estándar de PC sin tener que estar adaptada. Claro está que esto fue un problema para la FM Towns Marty, la versión consolizada del ordenador que salió en 1993, que venía con RAM fija sin capacidad de ampliación, siendo este uno de los motivos de su enorme fiasco y del mito de que los juegos no se ejecutarán bien en la plataforma.

Gráficos en el FM Towns

Si bien el FM Towns no usaba un controlador gráfico como los de PC, sí que usaba un CRTC al estilo del 6845 diseñado por la propia Fujitsu para el sistema, lo que le da una enorme versatilidad de modos gráficos. En especial por el hecho de que el monitor que venía de serie con el sistema funcionaba con 3 frecuencias horizontales distintas, lo que le permitía mostrar hasta 3 modos gráficos distintos.

  • A 31 KHz, aunque no usaba salida VGA, sino una propietaria para el monitor que venía con el ordenador.
    ModoResolución VirtualResolución RealColoresScrollSprites
    1640×400640×400 (No entrelazado)16 / 4096NoNo
    4640×400640×400 (No entrelazado)32768NoNo
    5256×512256×256 (No entrelazado)32768NoNo
    6256×256256×256 (No entrelazado)32768No
    9512×256324×216-EsféricoNo
    121024×512640×480 (No entrelazado)256 / 16777
    15512×512320×480 (No entrelazado)32768NoNo
    17512×480512×480 (No entrelazado)32768NoNo
  • a 24 KHz:
    ModoResolución VirtualResolución RealColoresScrollSprites
    2640×200640×200 (No entrelazado)16 / 4096NoNo soporta sprites
    31024×512640×480 (Entrelazado)16 / 4096Scroll cilíndricoNo soporta sprites
    121024×512640×480 (No entrelazado)256 / 16777KScroll cilíndricoSi
  • A 15 KHz:
    ModoResolución VirtualResolución RealColoresScrollSprites
    6256×256256×256 (No entrelazado)32768Ninguno
    7230×240230×216 (Entrelazado)--
    8256×240230×216 (Entrelazado)--
    10320×240320×240 (Entrelazado)--
    11320×240288×216 (Entrelazado)--
    13640×400640×400 (No entrelazado)32768-
    14720×480648×432 (Entrelazado)--
    16320×480288×432 (Entrelazado)32768-
    18512×480512×432 (Entrelazado)32768-

    Lo que le permite conectar al FM Towns a un televisor externo. Como curiosidad, el monitor externo del FM Towns puede utilizarse para como pantalla para una consola externa.

Scroll

Además, el CRTC del FM Towns tiene soporte de scroll por hardware, el cual es definido como scroll esférico y scroll cilíndrico. Su nombre se debe debido a que trata de que se trata de un desplazamiento infinito, ya que lo que hace el chip gráfico es ajustar automáticamente las direcciones de memoria de la VRAM para que, al llegar al borde, el desplazamiento continúe desde el otro extremo. Así, pues, el scroll cilíndrico es el que se da cuando el scroll es vertical u horizontal, y el esférico cuando se están usando ambos ejes. No obstante, dicho scroll especial no era soportado en todos los modos gráficos del FM Towns.

VRAM y modos de vídeo

El FM Towns dispone de 512 KB de VRAM de doble puerto, lo cual le permite a la CPU acceder en cualquier momento al contenido de la misma, incluso en la etapa de dibujado, por lo que en este aspecto funciona igual que los adaptadores VGA. Además, al encontrarse la memoria de vídeo en el mismo espacio de memoria que la RAM del sistema, al tener el direccionamiento unificado, esto facilita la creación del búfer de imagen. Eso sí, se trata de un búfer sencillo donde se indica el valor de color de cada píxel o la dirección de memoria de cada patrón en pantalla. Por lo que no tiene ningún secreto y no dispone de funciones especiales como un Blitter y/o instrucciones para CAD CAM.

Splatterhouse

En cuanto a la organización de la VRAM, esta se puede usar como un único búfer de imagen completo (512 KB), almacenar dos búferes de imagen (256 KB cada uno)  o cuatro búferes de imagen (128 KB cada uno). Al contrario que otros sistemas donde la memoria de más es para un búfer de imagen extendido que no se muestra en pantalla, a no ser que esta se desplace, en el FM Towns se utiliza el concepto de capas de pantalla, y estas se pueden superponer la una de la otra. Pensad en el mismo concepto que los Tilemaps múltiples superpuestos que ya hemos visto en algunos sistemas de 16 bits.

Sprites

Las capacidades para el manejo de sprites del FM Towns son ciertamente impresionantes, superando sobre el papel incluso al X68000, ya que puede manejar hasta 1024 sprites de hasta 32.768 colores cada uno. Sin embargo, el diablo se encuentra en los detalles y pronto veréis que no es así. El sistema tiene un controlador de sprites que tiene asignados 128 KB de memoria. Dicha memoria no es un búfer de imagen, ya que en su interior almacena la siguiente información: los patrones gráficos de cada uno de los sprites y la tabla de atributos de cada sprite. Cada uno de ellos es de 16 x 16 píxeles, pero pueden ser de 16 colores o de 32.768 colores. En el segundo caso, el límite de sprites en pantalla baja a los 224, pero dicho modo nunca se uso excepto en escenas cinemáticas no interactivas.

Tatsujin FM Towns

Los sprites no tienen su propio búfer de imagen, sino que toman una de las capas de pantalla de 128 KB de la VRAM del CRTC, dado que 1024 sprites de 16 x 16 píxeles con 4 bits de color es el máximo que puede albergar la capa de 512 x 512, pues ese se considera el límite. No obstante, solo es visible una capa de 256 x 256 píxeles o de 320 x 256 píxeles, por lo que habrá sprites que se dibujen fuera de pantalla. Esto se traduce, a efectos prácticos que el límite real es de 256 o de 320 sprites en pantalla de forma simultánea, aun así, se trata de una cifra impresionante y convierten al FM Towns en la máquina más potente en lo que al manejo de sprites se refiere, incluso por encima del X68000 en todas sus variantes.

ByteBitsNombre del campoDescripción
00–7X LowBits bajos de la posición X.
10–7X HighBits altos de X (9 bits en total). Bit 7 indica signo para coordenadas negativas.
20–7Y LowBits bajos de la posición Y.
30–7Y HighBits altos de Y (9 bits en total). Igual que en X.
40–7Pattern Number LowBits bajos del número de patrón (tile).
50–7Pattern Number HighBits altos del número de patrón (generalmente solo se usan 3-4 bits).
60–3WidthTamaño en tiles horizontales (1 a 16).
4–7HeightTamaño en tiles verticales (1 a 16).
70–3Zoom XEscalado horizontal (1x–16x).
4–7Zoom YEscalado vertical (1x–16x).
80–7Palette NumberNúmero de paleta (0–255).
90Enable1 = Sprite activo, 0 = Sprite oculto.
1Collision Enable1 = Habilita detección de colisión.
2Flip X1 = Reflejo horizontal.
3Flip Y1 = Reflejo vertical.
4–5PriorityPrioridad de dibujo (0–3).
6Pattern ExtensionHabilita extensión del número de patrón.
7Unused(Reservado o no usado).
10–31(Reservado / no documentado)Bytes reservados o sin uso conocido (relleno o uso interno del hardware).

Doble Buffer

El FM Towns es el primer sistema que vamos a tratar que tiene soporte para doble búfer de imagen. El concepto es sencillo: tenemos dos búferes de imagen, en el primero de ellos tenemos el fotograma anterior siendo enviado a la pantalla por el controlador de pantalla, el cual se encarga de leerlo y transformarlo en la señal de vídeo correspondiente. En el segundo búfer de imagen se genera sobre el mismo.

Doble Buffer Imagen

Una vez el primer búfer de imagen se ha enviado a la pantalla, el segundo búfer donde se encuentra almacenado el frame siguiente se convierte en el primero, y el primero pasa a ser el segundo donde se dibuja un nuevo fotograma. Esto ocurre consecutivamente y de forma automática, sin que el programa tenga que intervenir en ello. En el FM Towns y sistemas posteriores, esto sirve para no limitar el envío de patrones gráficos para los sprites solo al periodo VBlank. Lo que permite aumentar considerablemente la cantidad de sprites en pantalla y evitar artefactos gráficos innecesarios que se dan cuando se trabaja con un solo búfer de imagen.

Audio en el FM Towns

Dado que el ordenador de Fujitsu viene de serie con una unidad CD-ROM, la capacidad para reproducir audio obviamente no estaba limitada, especialmente con la enorme capacidad de almacenamiento que otorgaba el CD-ROM, aunque aquí teníamos dos sistemas de audio funcionando al mismo tiempo.

  • El primer chip de audio es un chip de síntesis FM, el YM2612 de YAMAHA, y que no es otro que el mismo chip de sonido que lleva la Mega Drive.
  • El segundo chip de audio  es un DSP Ricoh RF5c68 de audio con la capacidad de procesar hasta 8 pistas de audio PCM con una calidad de muestreo de 19.2 KHz y con calidad de 8 o 10 bits. Dispone de una memoria propia de 64 KB, donde cada canal tiene asignados 8 KB para la reproducción.

Al contrario de lo que ocurre con las consolas de 16 bits y algunas máquinas recreativas, no tenemos un chip controlando el chip de síntesis FM y el DSP para el audio PCM, ya que el 386 DX y posteriores tienen la suficiente potencia como para poder manejar el audio además del programa principal sin necesidad de ningún coprocesador de apoyo para ello.

FM Towns Marty

Por desgracia, el FM Towns es más conocido por la FM Towns Marty, la versión consolizada que fue lanzado en 1993, sin embargo, se encuentra altamente limitado respecto a la gama de ordenadores, lo que provocaba no solo que no todos los juegos fueran compatibles, sino que además muchos no rindieran como es debido. Debido a ello, existe el mito entre gran parte del público de que el ordenador de Fujitsu era técnicamente inferior al X68000 de SHARP.

FMTowns Marty

  • Su CPU era un clon del 386 SX fabricado por AMD, por lo que tenía un bus de 16 bits y no de 32 bits, lo que se traduce en que la CPU tiene peor rendimiento al necesitar más ciclos de reloj para acceder a memoria.
  • Solo 2 MB de RAM, sin capacidad de ampliación, por lo que los títulos que requieran más memoria no funcionan en la Marty. Es más, muchos títulos tienen también un rendimiento limitado debido a ello.
  • Obviamente, al ser una consola, carece de puertos de expansión.
  • El hardware de vídeo está recortado, no soportando las resoluciones y modos de 24 y 31 KHz.

FMV Towns

El enorme éxito de los clones DOS/V en Japón hizo que Fujitsu lanzará el FMV Towns en 1995, un ordenador que combinaba un FM Towns con un clónico sin perder la compatibilidad con los modelos FM Towns. Entre las mejoras se encontraba el uso de una CPU Intel Pentium, la adopción de puertos IDE para el disco duro y las unidad CD-ROM, puertos PS/2 para teclado y ratón, una salida VGA estándar y la inclusión de ranuras PCI.

FMV Towns

Si bien el sistema conservó por completo el hardware original para la compatibilidad de los juegos, la creciente popularidad de Windows 95 y la necesidad de tener una tarjeta gráfica SVGA de PC hicieron el resto, la mayoría de los usuarios terminaron por usarlo solo como un PC más, llegándole a instalar incluso tarjetas de sonido y tarjetas gráficas estándar para PC, incluyendo las primeras aceleradoras 3D, en su interior. Con ello, la personalidad y lo que hacía único al FM Towns desaparecieron y los usuarios japoneses dejaron de comprar cada vez más software para el sistema, hasta que Fujitsu en 1997 canceló la gama FMV Towns, dando punto final a los FM Towns de manera definitiva.

5 2 votes
Article Rating
Subscribe
Notify of
guest

0 Comments
Oldest
Newest Most Voted
Inline Feedbacks
View all comments
0
Would love your thoughts, please comment.x
()
x