Sinclair ZX81
Desarrollado en Reino Unido por el afamado Sir Clive Sinclair, la sencillez del diseño de este microordenador llevó a que multitud de fabricantes en distintos países creasen clones suyos. Entre los clones oficiales se encontraba el fabricado bajo la marca Timex Sinclair para su venta en Estados Unidos, pero también hubo desarrollos similares en países como Brasil, la extinta URSS o Argentina.
En los poco más de dos años que estuvo a la venta antes de que Sinclair presentase su producto con más éxito, el Spectrum 48K, la empresa vendió más de un millón de unidades del ZX-81, una cantidad nada despreciable para aquellos tiempos.
Respecto a su directo antecesor, el mencionado ZX-80, el diseño hardware del ZX-81 resultó un derroche de simplicidad y elegancia, al reducir de veintiuno a solamente cuatro el número de circuitos integrados que componían el sistema. Aparte de éstos, en la placa del ZX-81 solamente se encuentra el sintonizador de la señal de TV, un regulador de tensión y algunas resistencias, condensadores y diodos. El montaje por parte del usuario final, en consecuencia, no resulta demasiado laborioso y permitía ahorrarse aproximadamente un 30% del precio.
Con unas dimensiones de 17cm x 17cm x 4cm de grosor medio, el tamaño del ZX-81 se asemeja más al de una calculadora que al de otros ordenadores de la época, como puede ser el Commodore VIC-20. También resultaba característico su teclado de membrana, por entonces eran usuales los teclados mecánicos, con una bajísima sensibilidad que requiere un cierto nivel de presión por parte del usuario, lo que no le hace especialmente cómodo. En su favor, sin embargo, hay que decir que los comandos están precodificados y se introducían a través de combinaciones de teclas, en lugar de tener que escribirlos letra a letra, lo cual ahorraba tiempo.
En realidad la mayoría de los ZX-81 no usaban el Z-80 fabricado por Zilog, sino un microprocesador clónico fabricado por Nec que resultaba más barato. Además de este circuito integrado, en la placa del sistema también se encuentra un circuito con 1 Kbyte de memoria RAM y otro con 8 Kbytes de ROM conteniendo el intérprete de BASIC.
La pantalla es en modo texto solamente, 32 caracteres de ancho por 24 de alto, sin embargo, son posibles gráficos con una resolución de 64 por 48 píxels con el uso del comando PLOT, que selecciona entre un grupo de 16 caracteres gráficos para la simulación de los pixels. Para conservar memoria, el texto mostrado en la pantalla se almacenaba como cadenas de forma dinámica: por ejemplo, una línea en pantalla de 12 caracteres se almacenan como sólo los 12 caracteres seguidos por el código para "NEWLINE".
Tanto en el ZX80 como en el ZX81, la salida video es generada por el chip Z80. En el ZX80, cuando un programa formaba la imagen del TV se movía desde el principio para comenzar una nueva imagen. Debido a que un bucle FOR-NEXT de 1 a 1.000 tardaba 19 segundos, era común hacer funcionar la máquina en modo rápido todo el tiempo, incluso al editar un programa. Esto hacía destellar la imagen del televisor cada vez que una tecla era presionada.
A diferencia de la mayoría de los ordenadores de la época, el ZX-81 no incorpora un intérprete BASIC de Microsoft sino que fue la propia Sinclair la que diseñó el software incorporado en la ROM del equipo. Este intérprete de BASIC específico cuenta con múltiples peculiaridades, incluyendo algunos errores que se hicieron famosos como el hecho de que la función encargada de calcular la raíz cuadrada disese como resultado 1.36 en lugar de 0.5 al obtener la raíz cuadrada de 0.25.
Ampliaciones:
ZX-Printer: impresora termica en papel especial.
Placa de sonido: un AY-3-8912, ofrece 3 canales de sonido y uno de ruido blanco.
Generador de caracteres programable: permite redefinir los caracteres, almacenándolos en 1 Kb de memoria de de la placa
Interfaz de unidad de disco de 5'25 con 49 Kb de capacidad
Interfaz de 2 joystick (probablemente por mapeo del teclado)
Interfaz Centronics
Ampliaciones de memoria: llamadas RAM PACKs proporcionan 16, 32 e incluso 64 KB
Teclado profesional: inaugura un mercado que florece con el ZX-Spectrum. Unos deben de conectarse a placa madre. Otros lo hacen por el BUS de expansión. Algunos de los primeros incluso permiten alojar dentro las ampliaciones de memoria.
RS-232 /Modem
DK'tronics vendió una carcasa y un teclado que, con considerable habilidad, se podía usar para sustituir el teclado de membrana y para contener el ordenador.
Emuladores ZX81
Dada la simplicidad del hardware y popularidad de este sistema, el número de emuladores existentes es muy extenso y los hay disponibles para prácticamente todos los sistemas operativos, incluidos otros microordenadores. Algunos de ellos son:
XTender
EightyOne
ZX81
Hardware
Respecto a su directo antecesor, el mencionado ZX-80, el diseño hardware del ZX-81 resultó un derroche de simplicidad y elegancia, al reducir de veintiuno a solamente cuatro el número de circuitos integrados que componían el sistema. Aparte de éstos, en la placa del ZX-81 solamente se encuentra el sintonizador de la señal de TV, un regulador de tensión y algunas resistencias, condensadores y diodos. El montaje por parte del usuario final, en consecuencia, no resultaba demasiado laborioso y permitía ahorrarse aproximadamente un 30% del precio.
El elemento hardware más importante de los ZX-81 era el archiconocido microprocesador Z-80 fabricado por la empresa Zilog. Según las especificaciones de Sinclair, la versión elegida fue el Z-80A que contaba con una velocidad superior respecto al Z-80 original. Este mismo microprocesador sería elegido pocos años más tarde para la fabricación del ZX-Spectrum, toda la familia MSX, los productos de Amstrad y muchos otros diseños de microcomputadores.
En realidad la mayoría de los ZX-81 no usaban el Z-80 fabricado por Zilog, sino un microprocesador clónico fabricado por Nec que resultaba más barato. Además de este circuito integrado, en la placa del sistema también se encontraba un circuito con 1 Kbyte de memoria RAM y otro con 8 Kbytes de ROM conteniendo el intérprete de BASIC.
El cuarto circuito integrado es el que caracteriza al ZX-81. Se trata de un ULA (Uncommitted Logic Array) diseñado por Sinclair para sustituir la función que aportaban dieciocho de los integrados con que contaba el ZX-80, encargándose, por ejemplo, de las tareas de entrada/salida.
Módulo de ampliación de memoria
El bus que comunica al Z-80 con el resto de elementos del sistema se extiende hacia el exterior, con un conector accesible en la parte trasera del microordenador. Es la vía que permite tanto ampliar el sistema como conectar otro tipo de dispositivos, más allá del televisor y la unidad de cinta. La ampliación más común era el módulo de 16 Kbytes de RAM que, según la publicidad de Sinclair, facilita una capacidad de almacenamiento masiva que permitía ejecutar las aplicaciones más sofisticadas del momento, como las bases de datos personales.
Entre los dispositivos más populares se encontraba la impresora fabricada por la propia Sinclair, una impresora peculiar que precisaba un papel especial ya que era de tipo térmico, no matricial o de margarita. Era capaz de imprimir hasta 50 caracteres por segundo y, lo que resultaba más interesante, era posible realizar un volcado a papel del contenido actual de la pantalla con un simple comando.
La sencillez del diseño del ZX-81, con un número tan reducido de circuitos integrados, se debía en gran parte a que era el microprocesador (el Z-80) el encargado de realizar tareas que en ordenadores más sofisticados se encomendaban a integrados específicos. El exponente más claro de este hecho se encuentra en la generación de la imagen de vídeo, un proceso efectuado continuamente por el microprocesador que producía a partir del contenido de una cierta porción de memoria la información que, a continuación, era enviada hacia el exterior a través del sintonizador de TV. Este trabajo consumía una buena parte de la potencia del Z-80, por lo que la ejecución de los programas se veía claramente ralentizada. Por ello el ZX-81 ofrecía un modo de funcionamiento alternativo, denominado modo rápido, que detenía la actualización de la pantalla mientras se ejecutaba un programa.