jueves, 28 de mayo de 2026

La informática personal en la U.R.S.S.

Primera parte    Segunda parte    Europa del Este    La U.R.S.S.   

🟥 La informática personal en la U.R.S.S.

A diferencia del mercado occidental, la informática doméstica en la antigua U.R.S.S. siguió un camino muy distinto. Las restricciones tecnológicas, la dificultad para importar componentes y la inexistencia de una industria comercial comparable a la de Europa occidental o Estados Unidos hicieron que gran parte del ecosistema se basara en clones, diseños autodidactas y sistemas educativos estatales.

Entre todos ellos, los clones del ZX Spectrum dominaron claramente el panorama, hasta el punto de generar una escena propia que aún hoy sigue activa. 

🌍 Un ecosistema único

La informática en la U.R.S.S. no fue simplemente una copia del modelo occidental, sino una adaptación forzada por la escasez… que terminó generando innovación.

Sin acceso fácil a hardware extranjero, miles de aficionados, ingenieros y estudiantes desarrollaron sus propios sistemas, compartiendo diseños en revistas y replicándolos en casa. Esta cultura dio lugar a una comunidad extremadamente activa que sobrevivió incluso tras la caída de la Unión Soviética.

Mientras en Occidente el usuario compraba software, en el Este era habitual modificar hardware, montar ordenadores desde cero y optimizar sistemas

📅 Cronología de los principales sistemas

No voy a mencionar todos los clones, ya que hay una lista interminable, solo los principales. Una visión temporal ayuda a entender cómo evolucionó la informática soviética frente al ZX Spectrum, que fue lanzado en 1982:

  • 1984-1985 – Agat: introducción del modelo educativo basado en Apple II
  • 1985 – BK-0010: primer sistema PDP-11 doméstico
  • 1986 – Specialist: auge del movimiento DIY en revistas
  • 1986-1987 – Vector-06C: uno de los sistemas gráficos más avanzados
  • 1987 – Leningrad: clon ZX económico ampliamente difundido
  • 1988 – Korvet: solución en red para educación
  • 1989 – Orion-128: consolidación del DIY avanzado
  • 1989 – Scorpion ZS-256: salto a clones potentes con almacenamiento
  • 1990 – Profi: enfoque más profesional y expandible
  • 1991 – Pentagon: estándar de la demoscene rusa
  • 1991-1993 – ATM Turbo: evolución hacia un “super Spectrum”
  • Finales 80s – UKNC: sistemas educativos avanzados en red

⚖️ ¿En qué superaban al ZX Spectrum?

Aunque el ZX Spectrum original de 1982 fue la base de casi todo, los desarrollos soviéticos evolucionaron el concepto en varias direcciones:

  • Más memoria: de 48K/128K hasta 256K o más
  • Menor dependencia del cassette y mejor almacenamiento real: TR-DOS, disqueteras e incluso discos duros
  • Más velocidad: CPUs aceleradas en modelos como ATM Turbo
  • Mejores gráficos: con mas colores y mas nítidos, especialmente en sistemas como Vector-06C
  • Arquitecturas híbridas: mezcla de compatibilidad y sistemas propios
  • Cultura de expansión: hardware pensado para ser modificado

Especialmente importante fue la eliminación o mitigación de uno de los mayores defectos del Spectrum: el attribute clash, algo que sistemas como el Vector-06C resolvían completamente.


🔷 Clones del ZX Spectrum

Estos modelos representan la evolución más interesante del Spectrum en territorio soviético. Podemos dividirlos en dos grupos, clones domésticos y clones avanzados, estos mejoraban el sistema original y son los mas interesantes.

🔷Clones Avanzados: 

⭐ Pentagon (1989-2006)

Es el clon más emblemático de la escena rusa, muy utilizado en la demoscene del Este. Desarrollaron un sistema altamente compatible con el Spectrum 48, con mejoras en timing y expansión. El primer modelo usaba 48Kb, pero los siguientes fueron ampliando a 128 y luego a 1024, usando las memorias económicas diseñadas para los clones del PC.

El original usaba un cloin del Z80 a 3.50 MHz, pero pronto se incorporó el modo "Turbo", para hacer trabajar al microprocesador  a mayor velocidad, sobre todo usando el КР1858ВМ1/3 capaz de funcionar a 7 MHz. En el 2006 lanzaron el último modelo de la gama, el Pentagon 1024SL v2.3, que incluía 1024 Kb de RAM ampliable hasta 4Mb, interface Beta Disk y puertos ZX-BUS especiales para tarjetas IDE y General Sound.

A diferencia de sistemas como el ATM Turbo o el Vector-06C, el Pentagon no introducía nuevos modos gráficos. Sin embargo, su enorme éxito en la demoscene se debía a su  timing de vídeo más preciso, lo que permitía explotar al máximo las limitaciones del ZX Spectrum y lograr efectos visuales más complejos. 

Placa del Pentagon Placa del Pentagon. Imagen: Wikipedia

⭐ Scorpion (1992)

Los Scorpion fuerons uno de los diseños más avanzados de su época, con hasta256 KB de RAM, destacaba por disponer de soporte para sistema TR-DOS y unidades de disco externas, por lo que estaba orientado a usuarios más exigentes. En los modelos iniciales usaban el procesador a 3.50 Mhz, pero pronto incluyeron el Modo Turbo.

Aunque inicialmente usaba la mismas resolución del Spectrum, lanzaron una tarjeta gráfica denominada GMX Scorpion, que incluía un modo de alta resolución de 640x200 con 16 colores.

Placa del Scorpion Placa del Scorpion ZS-256 Turbo. Imagen: Wikipedia

⭐ Profi (1991)

El Profi fue un diseño de Kondor and Kramis, usnado un clon del Z80 a 7 MHz, memoria de hasta 1024Kb RAM, sonido AY8910, el interface de disco Beta 128 con interface IDE, lo que le hizo muy popular en entornos técnicos.

Disponía de una modo gráfico de 512×240 con 8 colores, pero hasta 2 en cada bloque de 8x8, y una versión del CP/M. Se podía ampliar con puertos serie y paralelo, o incluir un teclado de PC estándar.

⭐ ATM Turbo (1991)

El ATM fue ena evolución muy ambiciosa del Spectrum, como varios modos gráficos propios y la CPU acelerada, por lo que es considerado por muchos como un “Spectrum 2.0”.

Disponía de 1024 KB RAM, 128 KB ROM,  uno o dos chips de sonido AY-8910 según modelo, un controlador DAC de 8-bit, un ADC de 8 canales, puerto serie RS-232 y puerto paralelo Centronics, interface Beta Disk, interface IDE, teclado AT, y dos modos gráficos adicioanles de 320x200 y 640x200 pixels.

ATM Turbo ATM Turbo. Imagen: nedopc.com

🔷 Clones ZX populares

Además de los modelos avanzados, existieron numerosos clones más simples y accesibles:

🔹 Leningrad

  • Uno de los primeros clones ampliamente difundidos
  • Diseño sencillo y económico
  • Muy habitual en entornos domésticos 
Leningrad 1 Leningrad 1. Imagen: nedopc.com

🔹 Moskva

  • Variante local del Spectrum, con dos clones el del 48Kb en 1988  y el del 128Kb en 1989
  • Tenía pequeñas diferencias con los modelos originales según el fabricante

🔹 Baltik o Baltica

  • Compatibilidad ZX con ligeras variaciones
  • Distribución regional
Baltik Leningrad 1. Imagen: nedopc.com

🔹 Dubna 48K

  • Otro clon temprano
  • Representativo de la etapa inicial soviética

🔧 Sistemas no basados en Spectrum

No toda la informática soviética giró en torno al ZX Spectrum. Existieron máquinas con arquitecturas propias o inspiradas en otros sistemas:

⭐ BK-0010 / BK-0011

  • Basados en arquitectura PDP-11 (16 bits)
  • Muy importantes históricamente
  • Amplio uso educativo y técnico
BK-0011 BK-0011. Imagen: nedopc.com

⭐ Vector-06C

  • Uno de los sistemas más originales
  • Gráficos muy avanzados para su contexto
    • 256×256 pixels, 16 colores de una paleta de 256
    • 512×256 pixels, 4  colores de una paleta de 256
    • En modo monocromo dos resoluciones, 256×256 y 512×256, la memoria de vídeo no usada se podía emplear en los programas
    • La memoria de video se organizaba en planos de 4 bits, por lo que dependiendo del modo se podían obtener 4 o 16 colores según la resolución.
  • Diseño completamente independiente
  • Muy valorado hoy en la escena retro
Vector-06C Vector-06C Imagen: wikipedia

⭐ Agat

  • Clon del Apple II, aunque no era compatible.
  • Orientado principalmente a educación
  • Parte de programas estatales de informatización
Agat Agat Imagen: wikipedia

🏫 Sistemas educativos e institucionales

El gobierno soviético impulsó una informatización basada en redes escolares y soluciones centralizadas:

🔹 Korvet (1987 a 1992)

  • Sistema diseñado para aulas, diseñado por la universidad de Moscú
  • Funcionamiento en red
  • Arquitectura interesante y poco convencional
Korvet Korvet Imagen: wikipedia

🔹 UKNC

  • Equipo educativo muy avanzado
  • Arquitectura de doble procesador
  • Enfoque en redes de computadoras escolares
UKNC UKNC Imagen: wikipedia

🧪 Rarezas y cultura DIY

Una característica única del bloque soviético fue la fuerte cultura hazlo tú mismo, impulsada por revistas técnicas y escasez de hardware:

🔸 Specialist

  • Diseño DIY publicado en revistas y construido por aficionados
  • Gran popularidad en entornos técnicos
  • Usaba un clon del Intel 8080A a 2 MHz con 48Kb de RAM.
  • La salida de video era en modo texto de 64 columna sy 25 líneas, o un modo gráfico monocoromo de 384 × 256.

🔸 Orion-128

  • Otro sistema autodidacta
  • Relativamente extendido
  • Ejemplo claro de la inventiva local
Orion-128 Orion-128 Imagen: wikipedia


🧩 Conclusión

Los ordenadores de 8 bits soviéticos representan una de las ramas más fascinantes —y menos conocidas— de la historia de la informática.

Partiendo del ZX Spectrum, estos sistemas no solo replicaron su funcionalidad, sino que la expandieron en direcciones inesperadas: más memoria, más velocidad, mejores gráficos y una mentalidad completamente abierta a la modificación.

El resultado fue una escena única: técnicamente irregular, pero increíblemente creativa. Un mundo donde cada ordenador podía ser diferente… y donde la informática no era solo consumo, sino también construcción.

Hoy, estas máquinas no solo son piezas de coleccionismo: son el testimonio de cómo la limitación puede convertirse en innovación.


En próximas entradas seguiré explorando sistemas pocos conocidos y comparando sus capacidades frente a los de Europa Occidental, veremos los de América, los asiáticos, los africanos y sin olvidar a Australia y Oceanía.

sábado, 23 de mayo de 2026

Tras el telón de acero, los 8 bits ocultos

Primera parte    Segunda parte    Europa del Este    La U.R.S.S.   

La informática de 8 bits tras el Telón de Acero

Mientras en Europa occidental florecía un mercado caótico lleno de competencia y creatividad, al otro lado del Telón de Acero la informática seguía un camino muy distinto.

Durante los años 80, los países del bloque del Este desarrollaron sus propios microordenadores en un contexto muy particular: empress estatales, economías planificadas, acceso restringido a tecnología occidental y una fuerte orientación educativa e institucional.

El resultado fue un ecosistema fascinante de máquinas poco conocidas, basadas en clones de procesadores occidentales, pero con soluciones técnicas propias, algunos clones de máquinas sin licencia y una identidad muy marcada.

La entrada sería demasiado larga, por lo que la divido en vaias partes, donde hablaré de las máquinas de paises de europa el este y de las máquinas de la antígua U.R.S.S. 


🔧 Clones de procesadores: ingeniería bajo limitaciones

Uno de los aspectos más fascinantes de la informática en Europa del Este fue la producción de clones de procesadores occidentales. Debido a las restricciones tecnológicas y comerciales impuestas por la Guerra Fría, los países del bloque comunista no tenían acceso directo a los chips diseñados en Estados Unidos o Europa occidental.

Como respuesta, desarrollaron sus propias versiones, casi siempre mediante ingeniería inversa. Estos procesadores no eran solo copias: en muchos casos incluían pequeñas variaciones, mejoras o adaptaciones a los procesos de fabricación disponibles en sus países.

El ejemplo más conocido es el Zilog Z80, uno de los procesadores más populares de los años 80. En la Europa del Este fue reproducido por múltiples fabricantes:

  • U880 (Alemania del Este): utilizado en sistemas como los Robotron KC85
  • KR1858VM1 (URSS): versión soviética ampliamente usada en clones de Spectrum
  • T34VM1 (Checoslovaquia): clon local del Z80

Estos chips eran generalmente compatibles a nivel de código máquina, pero podían presentar diferencias en la temporización o en la calidad de fabricación, lo que a veces provocaba comportamientos inesperados en software diseñado para sistemas originales.

Además del Z80, también se clonaron otros procesadores importantes:

  • Intel 8080: base del PMD 85 y otros sistemas educativos
  • MOS 6502: reproducido en Bulgaria para los sistemas Pravetz "compatibles" con Apple II

En muchos casos, estos desarrollos no eran únicamente intentos de copiar tecnología extranjera, sino una necesidad estratégica: disponer de una industria informática propia en un contexto de aislamiento tecnológico.


La informática con fronteras

Como en los paises de influencia soviética lo había mucha comunicación entre personas de distintos paises, en cada pais se desarrollaron sistemas independientes. 

En el Este NO soviético había 3 líneas principales: 

1. Sistemas educativos (dominantes): KC85, PMD 85, Elwro 

2. Clones domésticos (principalemnte del Spectrum) como el Didaktik 

3. Sistemas "profesionales" y Clones del Apple II: Pravetz 

Mientras que en la URSS, aunque enorme, la informática personal estuvo casi restringida a las grandes ciudades, donde dominan clones del ZX Spectrum avanzados, con una gran escena y mucha demoscen.


El caso de Polonia: informática entre mercadillos y parques

En Polonia, durante los años finales del sistema comunista y la transición hacia la economía de mercado a finales de los 80 y principios de los 90, la informática doméstica vivió una situación muy peculiar.

Debido a la escasez de canales oficiales de distribución y al alto coste de los equipos importados, muchos ordenadores y componentes comenzaron a comercializarse en entornos informales. Uno de los lugares más emblemáticos fueron los mercadillos improvisados en parques y plazas.

En estos espacios —a medio camino entre feria tecnológica y mercado negro— era posible encontrar desde clones del ZX Spectrum hasta piezas sueltas, cintas de cassette con software pirata o periféricos ensamblados artesanalmente.


Los sistemas principales

La lista es larga, voy a dividirlos en grupos según su difusión, estos son los más conocidos ya que tuvieron gran difusión en sus paises:

  • RDA
    • Robotron: Modelos Z9001 (1984 a 85), KC85 (1985 a 1987)  y KC87 (1987 a 1989)
  • Checoslovaquia
    • PMD 85
    • Didaktik Gama
  • Hungría
    • Videoton TVC
  • Bulgaria
    • Elwro 800
  • Polonia
    • Pravetz

Hay otros que no cosiguieron tanta difusión:

  • RDA
    • KC Compact (clon CPC)
  • Checoslovaquia
    • Didaktik M (evolución)
    • IQ-151 más académico y menos popular
  • Hungría
    • HomeLab / Aircomp (kits educativos) muy interesante DIY
  • Polonia
    • Meritum (clon del TRS-80)
  • Bulgaria
    • Pravetz 16 (ya más orientado al PC)
    • Clones del Apple II

Hay un tercer grupo de los que es dificil encontrar información

  • Specialist (aunque más soviético)
  • Homebrew locales
  • Prototipos educativos
  • Kits de revista

🇩🇪 Robotron (1984–1988): modularidad socialista

Durante la Guerra Fría, a los países del Este se les negó el acceso y la importación de tecnología occidental, lo que incluía la microelectrónica y la informática. Sin acceso a los chips occidentales, se suplió mediante la copia descardada, utilizando usualmente ingeniería inversa a partir de chips conseguidos irregularmente. Gracias a esto y a los esfuerzos adicionales, disponían desde finales de la década de 1960 acceso a la tecnología, en la forma del Robotron 300, el primer microprocesador fabricado en la RDA, una réplica del Intel 8008 lanzado por Interl cinco años antes, que se amplió con el U808 en otoño de 1977, un clon del Z80.

KC son iniciales para Kleincomputer (pequeño ordenador), y a pesar de su nombre similar, no estaba relacionado con los KC87 fabricados en Dresde por VEB Robotron-Meßelektronik, ni estos con el KC compact, ya que pertenecían a líneas de desarrollo diferentes dentro de la industria estatal VEB. 

El prototipo de la gama KC fue el  Z9001, pensado para uso en educación sin descartar su empleo doméstico, que tuvo una buena acogida pese a sus limitaciones. Se lanzó en dos variantes, salida para TV monocromo (lo habitual en esa época en la RDA), y una versión en color. Existió un módulo para convertir la salida monocorma en color. No disponñia de ningún lenguaje interno, solo una pequeña ROM con un monitor, pero se podía cargar un BASIC desde unidades externas.

El Robotron KC85 fué una versión mejorada del mismo, con teclado externo y posibilidad de ampliaciones modulares. No es un único modelo sino una familia de microordenadores (KC85/2, /3 y /4) desarrollados en la Alemania del Este por VEB Mikroelektronik en Mühlhausen a partir de 1984. Su origen está en el HC 900, un diseño inicial pensado como ordenador doméstico que fue rápidamente reorientado hacia usos educativos e institucionales, por lo que se usó el Z9001 como punto de partida. Al no disponer tampoco de un lenguaje interno, debía cargarse el BASIC desde unidades externas.

Su disponibilidad para el público general fue muy limitada: la mayoría de estos equipos se utilizaron en escuelas, organismos oficiales y entornos profesionales, lo que explica en gran parte su escasa difusión fuera del bloque del Este.

Basado en el procesador U880 (clon del Z80), su característica más llamativa era su diseño modular: el usuario podía ampliar el sistema mediante módulos físicos insertados en la carcasa.

  • Procesador: U880 (clon del Z80 a ~1.75 MHz)
  • RAM: 16 KB a 64 KB
  • ROM: 4–20 KB
  • Gráficos: 320x256 píxeles con hasta 16 colores
Robotron KC85
KC85. Imagen: Wikimedia Commons (CC BY-SA)

Para abaratar el coste y poder introducirlo en el mercado doméstico, se lanzó el KB87, mas compacto al usar la caja del Z9001 con el teclado incorporado, pero con el BASIC en ROM. El ordenador no era compatible con el KC85.

Robotron KC87
Z9001 y KX87 usaban la misma caja. Imagen: Wikimedia Commons (CC BY-SA)

🇩🇪 Robotron KC Kompact (1989): intento fallido

El KC compact fué diseñado como un clon del Amstrad / Schneider CPC, unando el U880, pero al poder comprar en Taiwan, incluía algunos chips importados como el de sonido. Debido a que la computadora entró en producción poco antes de la caida del muro de Berlin y el final de la RDA, se fabricaron muy pocas unidades.

Aunque no era 100% compatible, al ser una copia sin licencia, si que copiaron las ROM del CPC, cambiando los mensajes únicamente. 

A diferencia de los CPC, la salida era por TV, por lo que usaba una fucnte externa, y no incluía la unidad de casette, se podía conectar una externa, ni una disquetera que se podía incluir externa usando una ampliación conectada al expansor del bus. 

Robotron KC Compact
KC Kompact con su alimentador externo: Fuente: museo8bits.com

🇨🇿 PMD 85 (1985): el ordenador escolar checoslovaco

El PMD 85 fue uno de los ordenadores más utilizados en Checoslovaquia, especialmente en el ámbito educativo. Diseñado con recursos limitados, refleja perfectamente las restricciones tecnológicas del bloque del Este.

Su arquitectura era sencilla, pero suficiente para enseñanza de programación básica y control de hardware.

  • Procesador: Intel 8080 compatible
  • RAM: 48 KB
  • Gráficos: 288x256 píxeles monocromo
PMD 85
Imagen: Wikimedia Commons (CC BY-SA)

🇨🇿 Didaktik Gamma (1987): el clon que sí llegó a las casas

A diferencia de otros sistemas más institucionales, el Didaktik Gama consiguió cierta difusión en el ámbito doméstico. Hubo varios modelos de Didaktik: Alfa 1, Alfa 2, Beta, Gamma, M y Kompakt, no todos compatibles entre sí. 

El Gamma era un clon del ZX Spectrum, con una apariencia bastante similar, adaptado a la disponibilidad de componentes en Checoslovaquia. Aunque compatible en gran medida, presentaba diferencias en temporización y hardware que podían causar problemas con algunos programas.

  • Procesador: Z80 compatible
  • RAM: 48 KB
  • Gráficos: compatibles con Spectrum
Didaktik Gama
Imagen: Wikimedia Commons (CC BY-SA)

🇧🇬 Pravetz 8D (1985): el ecosistema búlgaro

Bulgaria fue uno de los países más activos en la producción de microordenadores dentro del bloque del Este. La serie Pravetz incluía sistemas compatibles con Apple II y otros estándares occidentales.

El Pravetz 8D era uno de los modelos más extendidos, orientado a educación.

  • Procesador: 6502 compatible
  • RAM: 48 KB
  • Sistema: compatible parcialmente con Apple II
Pravetz 8D
Imagen: Wikimedia Commons (CC BY-SA)

🇵🇱 Elwro 800 Junior (1986): informática en las aulas polacas

El Elwro 800 Junior fue uno de los principales ordenadores educativos en Polonia. Inspirado en el ZX Spectrum, fue adaptado a las necesidades del sistema educativo del país.

  • Procesador: Z80 compatible
  • RAM: 64 KB
  • Gráficos: similares a Spectrum
Elwro 800 Junior
Imagen: Wikimedia Commons (CC BY-SA)

🇭🇺 Videoton TVC (1984): el orgullo del Bloque del Este

Fabricado en Hungría por la empresa estatal Videoton (conocida por sus televisores), el TV Computer (TVC) se basaba en el procesador Z80 y estaba enfocado al sistema educativo de su país.

Contaba con un joystick integrado en la carcasa, un teclado bastante robusto y un BASIC potente capaz de manejar gráficos a color muy avanzados para los estándares de Europa Oriental. Fuera de las fronteras húngaras y de ciertos acuerdos de exportación muy limitados dentro del Bloque del Este, este robusto microordenador fue un auténtico fantasma para el mercado occidental.

  • Procesador: Zilog Z80A (a 3.125 MHz)
  • RAM: 32 KB o 64 KB (según la versión instalada de fábrica)
  • ROM: 20 KB (con el sistema operativo propio y el intérprete de TVC-BASIC)
  • Gráficos: Tres modos diferentes; máximo de alta resolución en 512x240 píxeles (2 colores), modo intermedio en 256x240 píxeles (4 colores) o modo color en 128x240 píxeles (16 colores)
Videoton TVC 
 Imagen: Wikimedia Commons (CC BY-SA)

Conclusión

La informática de 8 bits en Europa del Este no fue simplemente una versión retrasada de la occidental. Fue un ecosistema distinto, condicionado por la política, la economía y la disponibilidad de recursos.

Estas máquinas no solo cuentan la historia de la tecnología, sino también la de una época en la que programar, aprender y experimentar con ordenadores era, en muchos casos, una cuestión de ingenio frente a la escasez.

Hoy, estos sistemas forman parte de una historia paralela de la informática que merece ser explorada.

¿Conocías alguno de estos ordenadores?
Si conoces más máquinas del bloque del Este, déjalo en los comentarios.

Estas son importantes, pero continuará con las máquinas en la U.R.S.S.

martes, 19 de mayo de 2026

La Europa olvidada de los 8 bits (II)

Primera parte    Segunda parte    Europa del Este    La U.R.S.S.   

La otra Europa de los 8 bits: industrias, clones y sistemas olvidados

Segunda parte de la búsqueda de ordenadores personales en la Europa de los años 80 y 90, tras haber mencionado las "más conocidas", ahora revisaremos otras de Europa Occidental. En otra entrada hablaremos de las máquinas de la Europa del Este.

Mientras algunos países europeos importaban ordenadores, otros desarrollaron industrias propias, creando máquinas únicas que hoy forman parte de la historia olvidada de la informática.


🇬🇷 Grecia: informática nacional

Gigatronics, que operó aproximadamente entre 1980 y 1992, es una de las epopeyas más singulares de la informática europea. Representa el intento de Grecia por alcanzar la soberanía tecnológica en plena ebullición de los microordenadores, creando máquinas con ingeniería 100% local pensadas específicamente para los ciudadanos helenos.

A pesar de ser una empresa pequeña, logró diseñar dos sistemas icónicos que hoy son auténticas piezas de museo: el Ermis (Hermes) y el revolucionario KAT.

El Ermis (1984): En un momento en que el mercado no estaba estandarizado, Gigatronics decidió no copiar a nadie y crear un ordenador puramente corporativo y nacional. Utilizaba un microprocesador de 8 bits (un clon del Z80). Una máquina de oficina única, pues no estaba pensado para jugar.

  • El Ermis se diseñó como una estación de trabajo que incluía su propio sistema operativo (Gigatronics-DOS) y venía con software nativo de procesamiento de textos y hojas de cálculo.
  • El extra del Télex: Para hacerlo irresistible a las empresas y ministerios griegos, incorporaba el hardware necesario para funcionar directamente como una terminal de Télex, el sistema de comunicación interempresarial de la época.
  • Apoyo oficial: Su presentación fue tan importante para el país que contó con el respaldo del mismísimo Primer Ministro griego de la época, Andreas Papandréu.
  • Se complementaba con el terminal de pantalla Ekati, que sumaba su propio procesador y hasta 16 KB de RAM adicionales para gestionar los textos.
Kat El Gigatronics KAT. Imagen: retrocomputers.gr

Su gran obra maestra fue el Gigatronics KAT (1987/1988): A finales de los 80, el mercado se dividía entre el entorno profesional de IBM (PC) y el educativo/creativo de Apple. Gigatronics tuvo una idea revolucionaria: crear un ordenador híbrido capaz de transformarse en ambos sistemas. Así nació el KAT, con arquitectura de triple procesador.

  • Para lograr este milagro de compatibilidad, los ingenieros de Gigatronics metieron tres "cerebros" en la placa base:
    • Western Digital 65C816 (un chip de 16 bits evolutivo del mítico 6502) para ejecutar el entorno de Apple II.
    • Intel 8088 para ejecutar el sistema operativo MS-DOS y los programas de IBM PC.
    • Intel 8741 de 8 bits que hacía de "árbitro" y coordinaba ambos entornos.
  • El truco de magia: El ordenador arrancaba por defecto en modo Apple. Sin embargo, si el usuario ejecutaba el comando de teclado Alt + Ctrl + F9, la máquina conmutaba instantáneamente el hardware y pasaba a comportarse como un IBM PC.
  • Lo más relevante del KAT es que estaba totalmente adaptado a su cultura. El teclado incluía caracteres del alfabeto griego de forma nativa y todo el sistema de la ROM estaba traducido, facilitando la informática a escuelas que no dominaban el inglés.

Gigatronics no solo hacía hardware. En 1986 desarrollaron una suite ofimática integrada (base de datos, hoja de cálculo y procesador de textos) llamada Foundation. El programa estaba tan bien optimizado para el ecosistema Apple que consiguieron distribuirlo y venderlo con éxito en el mercado de Estados Unidos, todo un logro para una tecnológica de Atenas.

A pesar de su genialidad, Gigatronics sufrió el mal de la periferia europea: la falta de economía de escala. El KAT era un ordenador caro de producir en Grecia comparado con la avalancha de clones taiwaneses de IBM que inundaron Europa a finales de los 80 a precios irrisorios. El plan gubernamental para estandarizar el KAT en los colegios públicos se retrasó demasiado y la empresa no pudo sobrevivir a la competencia, cerrando sus puertas a principios de los 90.

Hoy en día, encontrar un Gigatronics KAT funcional es una absoluta rareza arqueológica.


🇵🇹 Portugal: la fábrica olvidada del Spectrum

El caso de Portugal en la era de los 8 bits es único en Europa. A diferencia de España donde Inves llegó a fabricar el Spectrum 128 y luego los clones Inves pero a pequeña escala, el país llegó a tener una de las plantas de fabricación más avanzadas gracias a Timex Portugal, ubicada en Caparica.

Tras la retirada de la matriz americana en 1984, los ingenieros portugueses tomaron el control y comenzaron a diseñar y fabricar sus propias versiones mejoradas del ZX Spectrum.

Timex Computer 2048 (1984)

  • Compatible en un 98% con Spectrum
  • Teclado rígido de calidad (no goma)
  • Salida de vídeo compuesto
  • Puerto de joystick y mejoras gráficas

Timex Computer 2068 (1985)

  • 72 KB de RAM
  • Sonido avanzado
  • Cartuchos intercambiables
  • Problemas de compatibilidad solucionados con cartucho

FDD-3000

  • Unidad de disco con CPU Z80 propia
  • 64 KB de memoria
  • Capaz de ejecutar CP/M

TC 3256 (1987, prototipo)

  • 256 KB RAM
  • Disquetera integrada
  • Módem

🇩🇪 Alemania Occidental: ingeniería por encima del ocio

Alemania fue el mayor mercado europeo de microinformática. Su industria local rechazaba en gran medida el concepto de los ordenadores como simples juguetes de videojuegos, priorizando en su lugar sistemas robustos, con teclados profesionales y clara orientación industrial u ofimática.

Triumph-Adler Alphatronic PC

Lanzado en 1983 por la veterana firma de máquinas de escribir Triumph-Adler, la gama Alphatronic (especialmente el modelo PC-P5) se convirtió en el estándar de oficina asequible en Alemania. Apostó por un teclado de calidad profesional con teclado numérico integrado y el sistema operativo CP/M.

  • CPU: NEC D780C-1 (clon compatible con Zilog Z80A a 4 MHz).
  • Memoria: 64 KB de RAM ampliables y 32 KB de ROM (incluía Microsoft BASIC).
  • Almacenamiento: Soporte nativo para unidades de disquete externas de 5.25 pulgadas mediante su controladora integrada.
Alphatronic El Alphatronic PC de Triumph-Adler. Imagen: retroordenadoresorty.blogspot.com

Schneider CPC

A mediados de los 80, la británica Amstrad quería conquistar el mercado alemán pero sabía que los usuarios germanos desconfiaban de los plásticos ligeros. Se aliaron con la prestigiosa firma de audio Schneider para vender los CPC 464, 664 y 6128 bajo su marca. Schneider modificó sustancialmente las carcasas internas con blindajes metálicos pesados para cumplir las estrictas normativas de interferencias electromagnéticas FTZ y cambió el color de las teclas británicas por tonos grises mucho más sobrios y corporativos.

Schneider CPC El Schneider CPC464 con su característica estética sobria. Imagen: Wikipedia

NDR-Klein-Computer (NKC)

El NKC representa la cumbre de la cultura "Hazlo tú mismo" (DIY) alemana. Diseñado por el ingeniero Rolf-Dieter Klein en 1984, este sistema modular no se vendía en tiendas; se enseñaba a construir paso a paso en el programa de televisión educativo de la cadena pública NDR (*Norddeutscher Rundfunk*). Los entusiastas compraban las placas de circuito impreso desnudas y soldaban ellos mismos los componentes en casa. Su estructura en formato rack de tarjetas de expansión permitía actualizar el ordenador desde un procesador básico de 8 bits hasta chips avanzados de 16 y 32 bits.

  • Estructura Modular: Basado en un bus de expansión con ranuras (*slots*) donde se pinchaban tarjetas independientes (tarjeta de CPU, tarjeta de vídeo, tarjeta controladora de pantalla LCD, etc.).
  • Versatilidad de CPU: Podía arrancar con un procesador Zilog Z80, pero el diseño permitía cambiar la tarjeta principal por un Motorola 68000 o un 68020.
  • Enfoque educativo: Muy utilizado en universidades y escuelas técnicas alemanas para enseñar arquitectura de ordenadores y programación a bajo nivel.
NDR Módulos del NDR-Klein-Computer con pantalla LCD. Imagen: ndr-nkc.de

Commodore en Alemania

Braunschweig fue el centro europeo de Commodore, donde se fabricaron los Commodore 128.


🇮🇹 Italia: diseño, licencias y cultura DIY

El mercado italiano estuvo fuertemente marcado por el gigante Olivetti. Aunque la firma de Ivrea era mundialmente conocida por sus sistemas profesionales de oficina y hitos como el Programma 101, para conquistar los hogares creó la división doméstica Olivetti Prodest. Su estrategia no fue diseñar desde cero, sino adquirir licencias de microordenadores extranjeros exitosos y adaptarlos con la sobria estética de su marca.

  • Prodest PC128 (1986): Basado en el hardware del Thomson MO6 francés. Utilizaba un microprocesador Motorola 6809E de 8 bits y contaba con una disquetera o un lector de casete integrado según la versión. Fue muy popular en el ámbito educativo italiano.
  • Prodest PC128S (1987): Basado en el prestigioso BBC Master Compact de la británica Acorn Computers. Equipaba un procesador MOS 65C02 y estaba pensado como una estación potente orientada a la programación y la gestión.
Prodest PC128 El Olivetti Prodest PC128 con casete integrado. Imagen: retroordenadoresorty.blogspot.com

Nuova Elettronica (Z80 N.E.)

El verdadero despertar del entusiasta de la informática en Italia no llegó en las tiendas, sino a través de los quioscos de prensa. La mítica revista de divulgación científica Nuova Elettronica lanzó a finales de los 70 y principios de los 80 su propio ordenador por fascículos basándose en el procesador Zilog Z80. Los aficionados debían comprar los componentes mes a mes, soldar la placa base en sus casas y programar mediante lenguaje ensamblador con un sencillo teclado hexadecimal, sentando las bases de la cultura *hacker* local.

Clones de Apple II sin licencia

Debido a las fuertes restricciones aduaneras y las altas tasas de importación que encarecían los productos americanos, Italia se convirtió en un nido de ingeniosas copias ilegales del hardware de Cupertino. Microempresas locales crearon clones exactos del Apple II Plus y Apple IIe como el *Lemon II* o el *Pineapple*. Utilizaban componentes clónicos y volcaban la ROM original de Apple para venderlos a una fracción del coste original en pequeñas tiendas de electrónica.


🇧🇪 Bélgica: el ordenador adelantado a su tiempo

DAI Personal Computer (1980)

Creado por la compañía belga Data Applications International, el DAI fue uno de los ordenadores de 8 bits más avanzados de su generación, anticipándose años a su competencia en capacidades multimedia. Sin embargo, su complejidad técnica elevó el precio de venta a niveles prohibitivos, lo que limitó su adopción al mercado profesional, laboratorios y estaciones de televisión locales.

  • CPU: Intel 8080A funcionando a 2 MHz, optimizado para tareas lógicas.
  • Gráficos revolucionarios: Su chip gráfico era capaz de generar una paleta de 16 colores reales a una resolución de 256x192, superando por mucho las limitaciones de color ("color-clash") que sufriría el ZX Spectrum años más tarde.
  • Sonido estéreo: Incorporaba un generador de sonido capaz de procesar 3 canales de audio estéreo de forma nativa.
  • Coprocesador matemático: Opcionalmente incluía un chip físico AMD Am9511 para acelerar cálculos científicos en punto flotante.
DAI El DAI Personal Computer y su avanzado diseño belga. Imagen: Wikipedia

🇨🇭 Suiza: ingeniería avanzada

Lilith (1980)

Bajo la dirección del legendario científico de la computación Niklaus Wirth (creador de lenguajes como Pascal y Modula-2), el Instituto Federal Tecnológico de Zúrich (ETH) desarrolló el Lilith. No era un ordenador de consumo, sino una estación de trabajo de alta ingeniería que influyó masivamente en el desarrollo del software moderno.

  • Entorno visual pionero: Disponía de una interfaz gráfica de usuario completa (GUI), ventanas superpuestas, mapas de bits de alta resolución y un ratón de tres botones de diseño propio.
  • Orientación a lenguaje: Todo su hardware estaba diseñado específicamente para ejecutar código compilado en Modula-2 a velocidad de hardware.
Lilith La estación de trabajo suiza Lilith. Imagen: Wikipedia

Bobst

La empresa suiza Bobst, especialista histórica en maquinaria pesada para artes gráficas y empaquetado, desarrolló a principios de los 80 sus propios terminales e interfaces de ordenador de 8 bits a medida. Eran equipos industriales rugerizados dedicados a la automatización de la imprenta, el troquelado y el control de fotocomposición.

Dauphin

El Dauphin fue un pionero kit de entrenamiento educativo suizo diseñado para escuelas industriales. Utilizaba el atípico microprocesador RCA CDP1802 (arquitectura COSMAC de tecnología CMOS de muy bajo consumo), ideal para que los estudiantes aprendieran los fundamentos de las líneas de direcciones, registros de memoria y buses de comunicación de datos.


🇩🇰 Dinamarca: red en las aulas

RC Piccoline (1984)

Diseñado por la histórica corporación danesa Regnecentralen, el RC759 Piccoline se convirtió en el ordenador oficial de las escuelas secundarias de Dinamarca gracias a un ambicioso plan estatal de alfabetización digital.

  • CPU: Intel 8085 funcionando a 4 MHz.
  • Arquitectura compacta: Todo el ordenador estaba integrado directamente bajo la robusta carcasa del teclado, minimizando el espacio requerido en los pupitres de los colegios.
  • Sistema de red local: Su característica más sobresaliente era su interfaz de red integrada de serie (
CP-NET), lo que permitía interconectar hasta 30 ordenadores Piccoline de los alumnos a un único servidor central de discos en el aula.
Piccoline El danés RC Piccoline, diseñado para resistir las aulas. Imagen: Wikipedia

🇦🇹 Austria: el terminal que se convirtió en ordenador

MUPID (1981)

El MUPID (*Mehrzweck Universell Programmierbarer Intelligenter Decoder*) nació de la mente del profesor Hermann Maurer en la Universidad de Graz. Su objetivo principal era servir como decodificador avanzado de Videotex/Teletexto para la infraestructura telefónica austriaca, pero sus diseñadores le añadieron capacidades plenas de ordenador de 8 bits.

  • Hardware básico: Procesador Zilog Z80 acoplado a un módem interno de conexión telefónica.
  • Evolución (MUPID II, 1983): Tras el éxito de los primeros terminales con carcasas externas, la segunda versión añadió un chip de sonido dedicado, un teclado mecánico completo de mejor tacto y un potente modo gráfico de 320x240 píxeles optimizado para teletexto interactivo.
MUPID El sistema MUPID austríaco de telecomunicación. Imagen: Wikipedia

🇳🇴 Noruega: soberanía tecnológica

TIKI 100 (1984)

Originalmente llamado *Kontiki 100* (en honor a la famosa expedición de Thor Heyerdahl), este ordenador fue desarrollado por la empresa Tiki Data para ganar el concurso nacional de ordenadores educativos de Noruega. Compitió directamente con el IBM PC y el Apple II, ganándose un puesto prioritario en casi todas las aulas noruegas de la década.

  • CPU: Procesador Zilog Z80A a 4 MHz.
  • Gráficos superiores: Ofrecía tres modos de visualización sin limitaciones de color por bloques, destacando su modo de 256x256 píxeles con 16 colores simultáneos de una paleta de 256, un rendimiento asombroso para un sistema basado en Z80.
TIKI El TIKI 100 en un laboratorio escolar. Imagen: Wikipedia

🇫🇮 Finlandia: antes de Nokia

Salora Fellow (1983)

Mucho antes de que Finlandia fuera famosa a nivel mundial gracias a la telefonía celular de Nokia, la firma nacional de electrónica Salora dominaba la fabricación de televisores y radios en el norte de Europa. Tratando de entrar en la informática de masas, licenciaron el diseño del microordenador *Laser 200* de la empresa asiática Video Technology (VTech). Salora adaptó la carcasa, tradujo los manuales y creó un ecosistema de cintas de casete con software educativo en finés.

TIKI El Salora Fellow finlandés basado en tecnología VTech. Imagen: Wikipedia

Teleste

La compañía finlandesa Teleste se especializó en el desarrollo de sistemas de automatización industrial y distribución de televisión por cable. Durante la era de los 8 bits, crearon ordenadores industriales personalizados basados en procesadores Intel 8080, orientados a controlar los nodos de telecomunicaciones y monitorizar líneas de producción en fábricas nórdicas.


🇮🇪 Irlanda: fabricación efímera para otros

Apple II Europlus (1980)

Irlanda comenzó a forjar su estatus como centro tecnológico europeo en 1980, cuando Apple inauguró su planta de manufactura oficial en Hollyhill, Cork. El fruto principal de esta fábrica fue el Apple II Europlus, la versión legítima del Apple II adaptada a Europa. Contaba con una fuente de alimentación modificada para las líneas eléctricas de 220V del continente y circuitos moduladores preparados para generar señal de televisión en estándar PAL, evitando que los usuarios europeos sufrieran distorsiones de color cromático.

Hanimex Pencil II

Aunque la corporación multinacional Hanimex tenía sus orígenes en Australia (famosa por la importación de lentes ópticas y distribución de consolas de sobremesa tipo Pong), decidió asaltar el mercado informático de Europa Occidental utilizando el suelo de Irlanda como trampolín logístico. El ordenador fue diseñado en Hong Kong por la factoría Soundic, pero se despachaba a mercados clave como el Reino Unido o Francia desde almacenes británicos e irlandeses.

El Pencil II montaba un chip Zilog Z80A y, gracias a sus chips de vídeo y sonido firmados por Texas Instruments, intentaba unificar el mercado de las videoconsolas de cartucho (mediante un adaptador para juegos de ColecoVision) con el de los ordenadores de aprendizaje, gracias a su teclado completo de membrana.

Hanimex Pencil II El rarísimo Hanimex Pencil II. Imagen: Rare & Old Computer

Conclusión

Europa no fue un mercado uniforme en los años 80. Mientras algunos países adoptaban estándares globales, otros apostaron por soluciones propias, motivadas por independencia tecnológica, educación o identidad nacional.

Muchas de estas máquinas no triunfaron comercialmente, pero hoy forman un mapa fascinante de caminos alternativos que la informática pudo haber seguido.

En la siguiente entrada hablaré de la otra Europa, la desconocida que estaba tras el telón de acero, sin contacto con nuestra Europa Occidental, pero compartiendo el surgimiento de la informática personal.

domingo, 17 de mayo de 2026

La Europa olvidada de los 8 bits (I)

Primera parte    Segunda parte    Europa del Este    La U.R.S.S.    Africa    Japón    Asia    América    USA   

Los microordenadores europeos de 8 bits que no llegaron a España

Durante los años 80, Europa era un mosaico de ordenadores incompatibles entre sí. Más allá de los sistemas que triunfaron en España, existía todo un universo paralelo de máquinas fascinantes que aquí apenas llegaron a existir.

Cuando pensamos en la informática doméstica de los años 80, solemos recordar unas pocas máquinas icónicas: Spectrum, Commodore, Amstrad o MSX fueron los líderes. Sin embargo, mientras en España el mercado estaba muy concentrado en estas máquinas, en el resto de Europa existía una diversidad de ordenadores de 8 bits, muchos de ellos desconocidos aquí.

Este artículo es un pequeño viaje por esa Europa informática olvidada: máquinas interesantes, a veces brillantes, que no tuvieron presencia real en nuestro país.


🇸🇪 Luxor ABC80 (1978): el pionero escandinavo

El Luxor ABC80 (1978) fue uno de los primeros microordenadores europeos de gran difusión en su mercado local, especialmente en Suecia. Basado en un procesador Z80, se utilizó ampliamente en educación y pequeñas empresas. Su éxito en Escandinavia contrasta con su casi total desconocimiento en el sur de Europa.

  • Procesador: Zilog Z80A (a 3.5 MHz)
  • RAM: 16 KB (ampliable a 32 KB)
  • ROM: 16 KB (con BASIC integrado)
  • Gráficos: Modo texto (40x24 caracteres) y gráficos de bloques monocromo (78x72 píxeles)
Luxor ABC80 Imagen: Wikimedia Commons (CC BY-SA)

🇬🇧 Grundy NewBrain (1981): el micro con pantalla propia

El Grundy NewBrain (1981) es uno de los ordenadores más peculiares de la época. Diseñado originalmente como un proyecto de Sinclair y posteriormente desarrollado por Grundy Business Systems, destacaba por incluir una pequeña pantalla en la propia carcasa, conexión a TV o Monitor.

Con gráficos de alta resolución monocromos, basado en un procesador Z80 y con un BASIC bastante potente que disponía de muy buen manejo de números en coma flotante. Estaba orientado a un uso más serio que lúdico, por lo que se usó mucho para temas científicos.

Incluía una pantalla de una sola línea, lo que permitía interactuar con el sistema sin necesidad de monitor externo, algo casi único en los microordenadores domésticos de principios de los 80 (hay otro equipo canadiense de 1974 que usaba una pantalla similar, el MCM/70). Las bajas ventas del aparato hizo que sacaran un modelo sin el display para abaratar el coste.

  • Procesador: Zilog Z80A (a 4 MHz)
  • RAM: 32 KB (ampliable hasta 2 MB)
  • ROM: 28 KB (incluye NewBrain BASIC y software de oficina)
  • Gráficos: Pantalla VF integrada (1 línea de 16 caracteres). En monitor externo: hasta 640x256 píxeles (monocromo) o 320x256 píxeles (4 colores)
Grundy NewBrain Imagen: Wikimedia Commons (CC BY-SA)

🇬🇧 Jupiter Ace (1982): el rebelde que hablaba Forth

Creado por Richard Altwasser y Steven Vickers (diseñadores clave del ZX Spectrum), el Jupiter Ace es una de las grandes rarezas de la informática británica.

A diferencia de casi todos sus rivales, que usaban el lenguaje BASIC, este microordenador apostaba por el lenguaje Forth en su memoria ROM. Esto lo hacía increíblemente rápido y eficiente con solo 3 KB de RAM.

Su aspecto modesto con teclas de goma blanca y su falta de capacidades gráficas avanzadas provocaron que vendiera muy pocas unidades, convirtiéndolo hoy en una cotizadísima pieza de coleccionista que apenas se vio en España. Para el mercado americano fabricaron la versión Jupiter Ace 4000, con una caja igual pero con plástico de mejor calidad y salida para monitor.

  • Procesador: Zilog Z80A (a 3.25 MHz)
  • RAM: 3 KB (ampliable externamente a 16 KB o 48 KB)
  • ROM: 8 KB (con el entorno y compilador interactivo Forth integrado)
  • Gráficos: Modo texto estricto (32x24 caracteres). Gráficos redefinibles mediante bloques monocromáticos de baja resolución (64x48 píxeles)
Jupiter Ace  
Imagen: Wikimedia Commons (CC BY-SA)

🇬🇧 Acorn Electron (1983): la evolución del estándar británico

Acorn fue uno de los actores clave en Reino Unido. El BBC Micro (1981) se convirtió en un estándar educativo, muy usado a partir del programa de la Televisión BBC sobre ordenadores, donde se enseñaba a manejar el aparato, y se incluyó en los colegios para enseñar informática. Evolucionó en el Acorn Electron (1983), que intentó llevar esa tecnología a un mercado doméstico más asequible.

El BBC Micro destacaba por su potencia y expansión, mientras que el Electron ofrecía una versión simplificada y más económica. Aunque tuvieron un enorme impacto en Reino Unido, en España su presencia fue muy limitada, y el Electron es muy poco conocido.

  • Procesador: MOS Technology 6502 (a 2 MHz en BBC Micro / 1 MHz en Electron)
  • RAM: 16 KB o 32 KB (BBC Micro) / 32 KB (Electron)
  • ROM: 32 KB (BBC) / 32 KB (Electron)
  • Gráficos: Múltiples modos; máximo de 640x256 píxeles (2 colores) o 160x256 píxeles (16 colores en BBC / 4 colores en Electron)
Acorn BBC Micro 
 Imagen: Wikimedia Commons (CC BY-SA)

🇫🇷 Matra Alice (1983): minimalismo francés

El Matra Alice (1983), fue un ordenador doméstico francés basado en el Motorola 6803. Orientado a la iniciación, apostaba por un diseño compacto, colores llamativos y un enfoque educativo. Su simplicidad y limitaciones técnicas hicieron que quedara relegado frente a sistemas más potentes.

  • Procesador: Motorola 6803 (a 0.89 MHz)
  • RAM: 4 KB (el Alice 32 posterior subió a 16 KB)
  • ROM: 8 KB (con Microsoft BASIC)
  • Gráficos: Gestionado por el chip Motorola 6847. Modo texto y gráficos semigráficos con un máximo de 9 colores disponibles en baja resolución
Matra Alice  
Imagen: Wikimedia Commons (CC BY-SA)

🇬🇧 Memotech MTX (1983): ingeniería brillante

El Memotech MTX (1983) fue un ordenador británico basado en Z80 con características avanzadas, dentro de una caja de forma similar a la del Commodore 64. Permitía ampliaciones de memoria poco habituales en su época y utilizaba un chip gráfico similar al estándar MSX. A pesar de su calidad, llegó a un mercado saturado y no alcanzó el éxito comercial que seguramente merecía, siendo uno de los grandes olvidados.

  • Procesador: Zilog Z80A (a 4 MHz)
  • RAM: 32 KB (MTX500) o 64 KB (MTX512), ampliable a 512 KB
  • ROM: 24 KB (con MTX BASIC y ensamblador/desensamblador de código máquina)
  • Gráficos: Chip Texas Instruments TMS9918. Resolución de 256x192 píxeles con una paleta de 16 colores y soporte para 32 sprites por hardware
Memotech MTX  
Imagen: Wikimedia Commons (CC BY-SA)

🇬🇧 Oric-1 (1983) y Oric Atmos (1984): buenas ideas, mala suerte

El Oric-1 (1983) fue un ordenador doméstico basado en un procesador 6502, con 16 KB de RAM, teclado de membrana y un BASIC competente.

El Oric Atmos (1984) mejoró el diseño con un buen teclado mecánico y 64 KB de RAM, pero los problemas empresariales y la falta de software limitaron su éxito.

  • Procesador: MOS Technology 6502A (a 1 MHz)
  • RAM: 16 KB o 48 KB (Oric-1) / 48 KB (Oric Atmos)
  • ROM: 16 KB (con Oric Extended BASIC)
  • Gráficos: Modo alta resolución de 240x200 píxeles con 8 colores disponibles (limitaciones de atributos de color por filas, similar al Spectrum)
Oric 1 
 Imagen: Wikimedia Commons (CC BY-SA)
Oric Atmos 
 Imagen: Wikimedia Commons (CC BY-SA)

🇫🇷 Thomson MO5 (1984): la informática impulsada por el Estado

En Francia, el gobierno apostó por introducir la informática en las escuelas, y uno de los ordenadores protagonistas fue el Thomson MO5 (1984).

Equipado con un procesador Motorola 6809 y gráficos de hasta 320x200 píxeles, fue utilizado ampliamente en programas educativos nacionales.

Sin embargo, su fuerte enfoque educativo y su ecosistema cerrado limitaron su expansión fuera del país. La carcasa era de color negro, pero existieron algunas variantes, como una versión especial firmada por Platini, un famoso jugador de fútbol francés de la época.

  • Procesador: Motorola 6809E (a 1 MHz)
  • RAM: 48 KB (ampliable a 64 KB)
  • ROM: 16 KB (con Microsoft BASIC)
  • Gráficos: Resolución de 320x200 píxeles, capaz de mostrar 16 colores simultáneos (con restricciones de proximidad de color)
Thomson MO5  
Imagen: Wikimedia Commons (CC BY-SA)

🇳🇱 Philips VG-5000 (1984): el intento previo al MSX

Antes de apostar por el estándar MSX, Philips lanzó en Europa el VG-5000 (1984), un ordenador de 8 bits bastante modesto.

Su arquitectura limitada y su escaso catálogo de software hicieron que quedara rápidamente eclipsado, pero es un buen ejemplo de la experimentación previa a la aparición de estándares comunes.

  • Procesador: Zilog Z80A (a 4 MHz)
  • RAM: 24 KB (ampliable a 56 KB)
  • ROM: 16 KB (con un dialecto propio de Microsoft BASIC)
  • Gráficos: Gestionado por el procesador de vídeo SGS Thomson EF9345. Modo semigráfico con una resolución equivalente de 320x250 píxeles y paleta de 8 colores
Philips VG-5000 
Imagen: system-cfg.com

🇭🇺 Videoton TVC (1984): el orgullo del Bloque del Este

Fabricado en Hungría por la empresa estatal Videoton (conocida por sus televisores), el TV Computer (TVC) se basaba en el procesador Z80 y estaba enfocado al sistema educativo de su país.

Contaba con un joystick integrado en la carcasa, un teclado bastante robusto y un BASIC potente capaz de manejar gráficos a color muy avanzados para los estándares de Europa Oriental. Fuera de las fronteras húngaras y de ciertos acuerdos de exportación muy limitados dentro del Bloque del Este, este robusto microordenador fue un auténtico fantasma para el mercado occidental.

  • Procesador: Zilog Z80A (a 3.125 MHz)
  • RAM: 32 KB o 64 KB (según la versión instalada de fábrica)
  • ROM: 20 KB (con el sistema operativo propio y el intérprete de TVC-BASIC)
  • Gráficos: Tres modos diferentes; máximo de alta resolución en 512x240 píxeles (2 colores), modo intermedio en 256x240 píxeles (4 colores) o modo color en 128x240 píxeles (16 colores)
Videoton TVC 
 Imagen: Wikimedia Commons (CC BY-SA)

🇭🇺🇬🇧 Enterprise 64/128 (1985): adelantado a su tiempo

El Enterprise 64/128 fue lanzado en 1985 tras varios retrasos. Diseñado en Reino Unido y producido en un contexto empresarial complicado, muchas unidades terminaron en Hungría.

Destacaba por sus chips personalizados para gráficos ("Nick") y sonido ("Dave"), así como por un sistema de memoria muy avanzado.

Pero llegó tarde y con poco software disponible, lo que impidió su éxito comercial.

  • Procesador: Zilog Z80A (a 4 MHz)
  • RAM: 64 KB o 128 KB (arquitectura ampliable internamente hasta un máximo teórico de 4 MB)
  • ROM: 32 KB (EXOS, sistema operativo propio) + 16 KB adicionales en cartucho de lenguaje IS-BASIC
  • Gráficos: Chip a medida "Nick". Múltiples resoluciones desde baja densidad hasta un máximo de 640x512 píxeles entrelazado. Paleta total de 256 colores (hasta 256 colores simultáneos en pantalla según el modo)
Enterprise 128 
 Imagen: Wikimedia Commons (CC BY-SA)

🇩🇪 Robotron KC85 (1985–88): informática tras el Telón de Acero

En la Alemania del Este, la informática doméstica seguía un camino propio. El Robotron KC85 es uno de los ejemplos más representativos.

Basado en un clon del Z80, se utilizaba principalmente en entornos educativos y técnicos, con disponibilidad muy limitada.

Su diseño modular lo hace especialmente interesante desde el punto de vista técnico.

  • Procesador: U880D (un clon exacto de la RDA del Zilog Z80, corriendo a 1.75 MHz)
  • RAM: 16 KB o 64 KB (según el modelo KC85/2, /3 o /4), muy ampliable mediante módulos hardware físicos enchufables
  • ROM: 4 KB a 20 KB (según la revisión del sistema operativo interno y la versión del intérprete de BASIC)
  • Gráficos: Resolución fija en pantalla de 320x256 píxeles con soporte para mostrar una paleta de 16 colores
Robotron KC85  
Imagen: Wikimedia Commons (uso libre con atribución)

Conclusión

La informática de 8 bits en Europa fue mucho más diversa de lo que solemos recordar. Cada país experimentó con sus propias soluciones, dando lugar a una enorme variedad de máquinas olvidadas o desconocidas en España.

Hoy, estos ordenadores no solo son piezas de colección, sino también una ventana a una época en la que la informática aún no estaba estandarizada.

Explorarlos es, en cierto modo, redescubrir una historia alternativa de la informática.

¿Conocías alguno de estos sistemas? Si recuerdas algún otro micro europeo poco conocido, déjalo en los comentarios. La historia de los 8 bits aún tiene muchos rincones por descubrir.

viernes, 1 de mayo de 2026

ZX2SB: Cambio de idea de los temas especiales

Índice de entradas del conversor

Modificado el 04/05/2026, cambios en rojo 


Casos especiales: GO TO / GO SUB y variables con espacios

Había decidido tratar estos casos en el parser por comodidad, pero al final hacer las cosas de forma correcta es lo adecuado. En lugar de introducir excepciones en el parser, es mejor que el lexer los trate correctamente desde el principio y devuelva ya los tokens adecuados.

GO TO y GO SUB

Además de poder escribirse en una o dos palabras, he detectado que en un Spectrum +2/+3 (ya que en el «gomas» todo va por tokens y no es posible escribir otra cosa) se puede introducir GOTO20 y el sistema lo separa correctamente como GO TO 20.

Ante esto, he modificado el lexer para que, cuando reciba una sentencia de salto, la trate correctamente en todas sus variantes.

De esta forma, las sentencias GO TO 20, GOTO 20, GO TO20 o GOTO20 generan siempre los mismos dos tokens:

  • TK_GOTO
  • TK_NUMERO 20

Y lo mismo ocurre con GOSUB, generando correctamente TK_GOSUB y TK_NUMERO.

Nombres de variables con espacios

Realmente no he visto ningún programa que utilice nombres de variables con espacios. Por tanto, he optado por simplificar el caso: si se detectan espacios en un nombre de variable, se eliminan directamente, generando un nombre compacto.

Así, cuando recibo:

LET ANTES O DESPUES = 4

El lexer genera directamente:

  • TK_LET
  • TK_VARIABLE antesodespues

Procesado en dos fases

Para realizar este cambio, tras buscar distintas alternativas durante la lectura del código y comprobar que el manejo directo se complicaba innecesariamente —especialmente por la coexistencia de palabras reservadas que no admiten espacios y nombres de variables que sí pueden contenerlos—, opté por una solución en dos fases.

El caso de variables con espacios será poco habitual, pero existe, y preferí resolverlo de forma explícita en lugar de cargar al parser con lógica adicional para anticipar combinaciones poco frecuentes. 

 En la primera fase se realiza únicamente el proceso de tokenización. Durante esta etapa, si se detecta que existen nombres de variables separados por espacios, que generan varios tokens consecutivos, al finalizar el proceso del Lexer se pregunta al usuario si desea procesarlos.

En la segunda fase, se reconstruyen esos nombres de variable, uniendo los tokens que originalmente estaban separados por espacios en un único identificador sin ellos, verificando previamente que el nombre resultante no coincida con ninguna palabra reservada del lenguaje.

Por ejemplo, ante una secuencia de tokens como:


TK_LET
TK_VARIABLE antes
TK_VARIABLE o
TK_VARIABLE despues

Se genera:


TK_LET
TK_VARIABLE antesodespues

Ficheros intermedios

Este proceso genera dos ficheros intermedios:

  • .TOK, que contiene la tokenización inicial
  • .TOS, que contiene los identificadores ya normalizados

De este modo, el parser puede elegir directamente cuál de los dos ficheros debe procesar, sin necesidad de realizar comprobaciones adicionales ni de modificar el mismo fichero en varias pasadas.

Separación de responsabilidades

Esta decisión refuerza una separación clara de responsabilidades dentro del diseño del sistema:

  • El lexer se encarga exclusivamente de analizar el texto y generar tokens.
  • La normalización de identificadores se realiza como una fase independiente, consciente y explícita.
  • El parser puede centrarse únicamente en la estructura sintáctica, sin necesidad de anticipar ni corregir decisiones tomadas en fases anteriores.

Evitar que el parser tenga que buscar patrones por adelantado o reinterpretar secuencias ambiguas simplifica enormemente su implementación y lo hace más robusto y mantenible.

Pensando en el transpilador en SuperBASIC

Esta estrategia resulta especialmente útil de cara al futuro transpilador desarrollado en SuperBASIC, que no destaca precisamente por su facilidad para manejar ficheros. Generar dos ficheros independientes, en lugar de leer y modificar uno sobre la marcha, simplifica mucho la implementación y reduce el riesgo de errores.

En definitiva, se trata de priorizar una solución sencilla, explícita y robusta: cuanta menos lógica compleja se introduzca en las fases críticas del proceso, más fácil será mantener y evolucionar el sistema a largo plazo.

martes, 28 de abril de 2026

ZX2SB: Mejorando el sistema de evaluación de expresiones y cambios menores

Índice de entradas del conversor

Cambios el 01/05/26 marcados en rojo 


Mejorando el transpilador: IR estructurado y parser avanzado

En el desarrollo de un compilador no solo importa que el código “funcione”, sino que cada fase esté bien delimitada y tenga responsabilidades claras. En este artículo repasamos una mejora importante en el proyecto actual del transpilador de ZX BASIC: una revisión de la arquitectura general, la resolución de algunos retos léxicos concretos del lenguaje y, sobre todo, un cambio estructural en el parser que impacta directamente en el análisis semántico y en la generación de código.


Índice


1. Arquitectura del compilador: lexer, parser, semántico y generador

Los compiladores suelen dividirse en cuatro fases clásicas, cada una con un papel bien definido. Esta separación es fundamental para mantener el código extensible, depurable y preparado para futuros backends.

Lexer (analizador léxico)

El lexer es la primera fase del proceso. Su tarea es transformar el texto fuente en una secuencia de tokens: identificadores, números, palabras clave, operadores y signos de puntuación. En esta fase se ignoran detalles como espacios irrelevantes o comentarios y se normaliza el formato.

Una decisión clave del diseño es que el lexer produzca tokens semánticamente completos. Esto evita que el parser tenga que reinterpretar combinaciones de palabras o resolver ambigüedades que no le corresponden.

El lexer solo conoce los elementos básicos del lenguaje: separadores, delimitadores y palabras reservadas. Un tema importante que se resuelve aquí es el de los comentarios, que pueden variar desde el simple REM del BASIC clásico hasta los de estilo C de una línea // o de várias líneas /* */.

Habitualmente los comentarios se eliminan en esta fase, pero en nuestro caso se conservan ya que el objetivo es un transpilador en el que puedan mantenerse o descartarse a elección.

Parser (analizador sintáctico)

El parser recibe la secuencia de tokens y la interpreta según la gramática del lenguaje. El parser trabaja por sentencias completas de una o varias líneas, lo que en nuestro caso se simplifica ya que el BASIC se estructura por líneas, por lo que nuestro parser trabaja línea por línea, detectando sentencias, expresiones y separadores como : o el fin de línea.

El resultado del parser debería ser un árbol sintáctico, pero he optado por una forma simplificada: una representación intermedia (IR) estructurada, que conserva la forma del programa pero es más fácil de analizar y transformar.

Inicialmente el parser emitía sentencias “ajustadas” como texto, lo que obligaba al semántico y al generador a volver a analizarlas. Esto se ha corregido parcialemnte emitiendo ya tokens y estructuras explícitas desde el parser.

El parser detecta errores estructurales (por ejemplo, un LET sin un =), pero no valida aún el significado profundo del programa.

Semántico

El análisis semántico valida el significado del programa: existencia de variables, tipos, uso correcto de arrays, coherencia de expresiones y saltos válidos. Aquí ya no importa cómo estaba escrito el código original, sino qué representa.

Esta fase se beneficia enormemente de que el parser proporcione estructuras claras y no cadenas ambiguas.

Generador de código

Por último, el generador traduce la IR validada a un backend concreto, como SuperBASIC o ensamblador 68000. Al trabajar sobre estructuras bien definidas, puede centrarse únicamente en cómo emitir el código.


2. Resolviendo casos especiales: GO TO / GO SUB y variables con espacios

He cambiado ligeramente esto, ver la entrada Cambio de idea en los temas especiales, la idea es la misma solo cambia la resolución.

GO TO y GO SUB

El ZX BASIC tiene particularidades históricas heredadas del ZX80/81, máquinas con 1Kb de memoria, por lo que ahorrar espacio era fundamental. En el Spectrum un tema llamativos es el uso de sentencias formadas por dos palabras:

  • GO TO en lugar de GOTO
  • GO SUB en lugar de GOSUB

Esto se produce porque heradado de los ZX80/81, internamente el Spectrum no almacena cadenas de texto para las palabras reservadas, sino códigos dentro del propio juego de caracteres. Por ejemplo, al ejecutar PRINT CHR$(236) aparece en pantalla GO TO, lo que hace que internamente sea un solo código, pero se presente en pantalla como 5 caracteres.

Aunque en los listados pueda verse separado, semánticamente siempre es una única sentencia. Para tratarlo correctamente y aceptar las dos formas de escribir la sentencia, el lexer emite tokens separados para TK_GOTO, TK_GOSUB que ya se tratan sin problemas, y además para TK_GO, TK_TO, TK_SUB, y he optado por resolver este segundo caso en el parser por comodidad:

  • Si aparecen TK_GOTO o TK_GOSUB, se aceptan directamente
  • Si aparece TK_GO, se mira el token siguiente
    • Si es TK_TO, se genera un único token TK_GOTO uniendo ambos tokens.
    • Si es TK_SUB, se genera TK_GOSUB uniendo ambos tokens.
    • Cualquier otro caso es un error.

Así, el resto del parser y el semántico trabajan siempre con sentencias completas sin ambiguedades, y aunque parezca un poco inconsistente usar el mismo token para dos cosas, de esta manera tampoco hay conflictos con el TO usando en el bucle FOR.

Nombres de variables con espacios

Otra particularidad del ZX Spectrum es que los nombres de las variables pueden contener espacios, los cuales son ignorados por el intérprete. Así, A B es equivalente a AB. Este comportamiento proviene del modo en que el analizador de sentencias elimina los espacios considerados no significativos durante el análisis. No obstante, en mi opinión esto no responde a una decisión de diseño consciente, sino más bien a un bug del intérprete que no contempla correctamente este caso.

No he encontrado documentación oficial que lo acredite explícitamente como un bug, aunque no soy el único que lo interpreta así, como puede verse en este comentario técnico: los nombres de variables pueden contener espacios .

Como curiosidad histórica, en el lenguaje FORTRAN los espacios tampoco son significativos en ningún punto de la sentencia. Esto daba lugar a ambigüedades bien conocidas, como el clásico ejemplo:

    DO10I=1,10

donde el compilador no puede distinguir, hasta encontrar la coma, si se trata de una asignación:

    DO10I = 1

o de un bucle:

    DO 10 I = 1,10

En ZX BASIC este comportamiento permite construcciones como esta que funcionan correctamente y muestran un 4 en pantalla:

    LET A B=4 : PRINT AB

Para evitar estas ambigüedades en el transpilador, el lexer separa por espacios y produce varios identificadores en este caso, uno para A y otro para B, luego en el parser se detecta que existen varios  identificadores consecutivos y se unen en uno solo, sustituyendo los espacios por un guion bajo (_) y generando la variable A_B. Como este carácter no pertenece al juego de caracteres del Spectrum, no puede entrar en conflicto con el código original. De este modo, el parser emite internamente:

LET A_B=4 : PRINT AB

El semántico considera equivalentes A_B y AB, y finalmente el generador emite el nombre correcto para el backend, produciendo:

    LET AB=4 : PRINT AB

sin ambigüedades y totalmente compatible con SuperBASIC.


3. IR estructurado, PRINT dividido y polaco inverso

No me resultaba satisfactorio que el parser enviara información que luego el semántico debía volver a analizar. Por ello he cambiado la representación de expresiones y PRINT, acercándola más a un árbol real, pero usando una forma lineal conocida como montón (heap), que corresponde al recorrido en postorden del árbol.

División estructurada del PRINT

En versiones anteriores del transpilador, el PRINT se generaba como texto concatenado, lo que obligaba al semántico y al generador a reinterpretar de nuevo su contenido. Esto resultaba frágil y poco extensible. Para evitarlo, ahora el parser divide cada PRINT complejo en una secuencia de elementos estructurados.

Cada elemento del PRINT se representa como una unidad independiente que contiene:

  • El tipo del elemento (cadena, variable, AT, TAB, INK, etc.)
  • El separador asociado (;, , o ninguno)
  • El valor completo del elemento

Por ejemplo, la siguiente línea en ZX BASIC:

    PRINT AT 3,4,"Nombre: ";N$;TAB(20);INK 3;"Edad: ";EDAD

Es descompuesta por el parser en una serie de instrucciones PRINT independientes, cada una representando un único elemento lógico:

    PRINT <AT>        <3,4>        <,>
    PRINT <CADENA>    <"Nombre: "> <;>
    PRINT <VARIABLE>  <N$>         <;>
    PRINT <TAB>       <(20)>       <;>
    PRINT <INK>       <3>          <;>
    PRINT <CADENA>    <"Edad: ">   <;>
    PRINT <VARIABLE>  <EDAD>       <none>

Esta representación intermedia permite que cada fase posterior trate los elementos de forma adecuada, sin necesidad de volver a analizar texto.Durante la generación de código para SuperBASIC, estas instrucciones se traducen en:

    AT 3,4            
    PRINT ,           
    PRINT N$;
    PRINT TO 20;      
    INK 3             
    PRINT "Edad: ";
    PRINT EDAD

Hay varios cambios en SuperBASIC que obligan a hacerlo de esta manera:

  • AT ya no forma parte del PRINT, se debe lanzar por separado
  • Los modificadores gráficos (INK, PAPER, etc.) tampoco se pueden usar ya dentro de un PRINT 
  • TAB cambia el nombre por TO, y no se deben usar paréntesis en su parámetro (en el Spectrum se puede usar con o sin paréntesis) 
  • Los separadores se tratan siempre correctamente. La segunda línea generada parece estraña, pero reemplaza a la coma tras el AT en la sentencia original, que ya no forma parte del PRINT. Pero la coma es necesario incluirla para mantener lo que intenta presentar en pantalla el programa original. Como usar una coma tras un AT o tras un TAB no tiene sentido, el parser emite un warning de aviso únicamente.

El resultado es un código más limpio, correcto y fácil de generar, sin alterar para nada el código original, solo adaptado a la forma de trabajar del SuperBASIC.

Expresiones en polaco inverso (RPN), árbol y montón

Hasta ahora, el parser analizaba las expresiones, pero luego las enviaba prácticamente en bruto al semántico, que debía volver a analizarlas. Esto implicaba repetir trabajo y hacía el sistema más frágil. Para evitarlo, el parser genera ahora una representación estructurada de las expresiones basada en el recorrido del árbol sintáctico.

Internamente, toda expresión puede representarse como un árbol, donde los nodos son operadores y las hojas son operandos (variables, literales, constantes, etc.). Por ejemplo, la expresión:

A + B * C

se puede representar mediante el siguiente árbol:

    +
   / \
  A   *
     / \
    B   C

En lugar de almacenar explícitamente el árbol, el parser lo recorre en postorden (primero los hijos, luego el nodo) y guarda el resultado en una estructura lineal denominada montón (heap). Esta representación corresponde a lo que se conoce como notación polaca inversa o RPN (Reverse Polish Notation):

A B C * +

El montón es, por tanto, un árbol almacenado de forma lineal: conserva toda la información estructural, pero sin necesidad de punteros ni referencias explícitas, lo que facilita enormemente su almacenamiento y recorrido.

La evaluación de una expresión en RPN se realiza mediante un autómata de pila, siguiendo una regla muy simple: cuando se lee un operando se apila, y cuando se lee un operador se desapilan los dos elementos superiores, se aplica la operación y se vuelve a apilar el resultado.

Siguiendo el ejemplo anterior, la evaluación de A B C * + se realiza así:

Lee A  -> se apila A                (A)
Lee B  -> se apila B                (B, A)
Lee C  -> se apila C                (C, B, A)
Lee *  -> C * B, se apila resultado (C*B, A)
Lee +  -> (C*B) + A                 (resultado final)

La gran ventaja de este enfoque es que ya no son necesarios paréntesis ni reglas implícitas de precedencia durante la evaluación: el orden de las operaciones está completamente determinado por la posición de los elementos en el montón. La única responsabilidad del parser es generar correctamente el árbol y recorrerlo respetando la prioridad de los operadores.

Gracias a esta representación, el semántico puede validar fácilmente las expresiones (tipos, operaciones permitidas, número de operandos), y el generador puede emitir código eficiente sin necesidad de reinterpretar la expresión original.

Impacto en el semántico y el generador

  • El semántico trabaja directamente con estructuras, sin reinterpretar texto.
  • El generador emite código más limpio y eficiente.

Este enfoque hace que el transpilador sea más robusto, más extensible y más preparado para múltiples backends.


Este tipo de decisiones estructurales, aunque no siempre visibles desde fuera, son las que marcan la diferencia entre un traductor funcional y un compilador sólido y mantenible (y sí, también sirven de consuelo cuando uno se da cuenta de que ha tenido que volver a  rehacer parte del camino por no preveerlo desde el inicio).