El COSMAC Elf era un ordenador basado en un microprocesador RCA 1802 descrito en una serie de artículos de construcción en la revista Popular Electronics en 1976 y 1977. A través de las últimas páginas de las revistas de electrónica, tanto Netronics como Quest Electronics ofrecían kits mejorados y de bajo precio que se basaban en este diseño. El sistema era uno de los primeros ordenadores personales de placa única. Se operaba sin ROM integradas y los programas se introducían directamente con la ayuda del DMA integrado en la CPU utilizando 8 interruptores de palanca y un botón pulsador de entrada.
Presentaba dos pantallas LED hexadecimales para la salida de valores de datos de bytes y un conjunto de 8 interruptores de palanca para la entrada. (un teclado hexadecimal era una extensión opcional) La configuración básica tenía 256 bytes de RAM , pero los proyectos de expansión podían elevarlo a una potencia de dos de almacenamiento de memoria, con un límite superior de 64K de espacio de direcciones .
El diseño original de Elf utilizaba un cristal con una frecuencia en el rango de 1 a 2 MHz con el circuito oscilador incorporado del 1802 .
Un circuito simple utilizaba la característica DMA del 1802 para permitir la entrada de programas y datos en la RAM a través de los interruptores de palanca. Al ingresar un byte a través de los interruptores de palanca y presionar el botón "entrada", se ingresaba un byte en la RAM y se mostraba en el par de LED hexadecimales, luego se avanzaba el contador DMA a la siguiente ubicación. Se podía usar un interruptor de "protección de memoria" para deshabilitar la alteración de la memoria. Si se cometía un error en la entrada del programa, se podía corregir activando la protección de memoria, desactivando el modo de carga (reiniciando así el contador del programa a cero), activando el modo de carga y presionando "entrada" para avanzar a la dirección de los datos incorrectos. Después de desactivar la protección de memoria, se podía ingresar el valor correcto.
El cuarto artículo de la serie presentó modificaciones para utilizar un CI generador de video RCA 1861 “Pixie” complementario (CDP1861). El Pixie requería un reloj de 1,76 MHz y, dado que esa era una frecuencia de cristal poco común, generalmente se utilizaba un cristal de ráfaga de color de 3,579545 MHz, que estaba fácilmente disponible, en un circuito oscilador separado con un circuito de división por dos para controlar las entradas de reloj tanto del microprocesador como del Pixie. El reloj de 1,7897725 MHz resultante era lo suficientemente cercano para que el hardware funcionara. La salida de video monocromática (con una temporización que se aproximaba aproximadamente al estándar NTSC ) podía generarse utilizando operaciones DMA intercaladas con códigos de operación 1802 cuidadosamente ordenados como instrucciones en el software. La resolución máxima del 1861 era de 64 h por 128 v píxeles rectangulares. Al cambiar la ubicación de las instrucciones en las rutinas de control e interrupción de la pantalla de video , se podrían repetir filas de píxeles para obtener resoluciones más bajas, lo que permitiría utilizar la pantalla de video con 256 bytes de RAM (64×32 píxeles cuadrados ).
Una salida de un bit del microprocesador, la línea Q, podía ser controlada por software para producir sonidos a través de un altavoz conectado, para guardar programas en la RAM en una grabadora de casetes y para la salida de E/S en serie . Las instrucciones de bifurcación en el conjunto de instrucciones 1802 podían leer el estado de las líneas de entrada de valor de un solo bit EF1 a EF4, que se usaban para leer el botón pulsador momentáneo (normalmente EF4) del teclado numérico "I" (entrada), programas de la grabadora de casetes a través de circuitos de interfaz, entrada de E/S en serie y entrada de periféricos como un lápiz óptico . También hay siete puertos de E/S de 8 bits disponibles para decodificación e interconexión.
Las computadoras Elf originales eran esencialmente versiones caseras del RCA Microkit, Microtutor I y Microtutor II, que eran las placas de demostración de RCA para su predecesor de 2 chips CDP1801 y los microprocesadores de un solo chip CDP1802.
Los kits mejorados, como el Netronics Elf II y el Quest Super Elf, añadieron funciones integradas como teclados para la entrada de datos, E/S serial, interfaz de casete y el chip de video CDP1861 "Pixie" . Más tarde, RCA presentó su propia versión ampliada de manera similar, denominada COSMAC VIP .
En agosto de 2006, la revista Nuts and Volts , junto con Spare Time Gizmos, lanzó un proyecto para construir el "Cosmac Elf 2000", basado en el Elf original, con algunos componentes más nuevos y más fáciles de encontrar y características, módulos y funcionalidades mejorados, incluida la placa de reemplazo de gráficos STG1861 Pixie que es funcionalmente equivalente al ahora raro circuito integrado RCA CDP1861.
La tarjeta de membresía es una nueva versión moderna y simple de COSMAC, similar a un Elfo, para aficionados a la retroinformática , diseñada para caber en una lata de Altoids .
En Internet se pueden encontrar muchos otros sistemas para aficionados, incluidos emuladores de hardware que utilizan FPGA y microcontroladores modernos .
Una serie de boletines y pequeños folletos ofrecidos por Netronics y Quest contenían programas en lenguaje de máquina 1802 y CHIP-8 , junto con esquemas para ampliar el Elf y agregar periféricos, incluido un lápiz óptico. Se puede encontrar otra información similar y proyectos de software para aficionados en Internet. El único libro publicado sobre el 1802 es "Programmer's Guide to the 1802" (Guía del programador para el 1802) de Tom Swan (1981), que se ha publicado en formato PDF después de estar agotado durante muchos años. [1]
Tiny BASIC, una versión de BASIC propuesta por Tom Pittman, se podía utilizar para escribir pequeños programas BASIC en el Elf que se podían visualizar a través de la pantalla gráfica monocromática de baja resolución Pixie o del hardware TV-Typewriter. Pittman también escribió un pequeño folleto sobre el 1802 titulado "Un breve curso de programación", que ha permitido que se publique y esté disponible en línea de forma gratuita. [2] [3]
Mike Riley ha escrito un editor, un ensamblador, intérpretes BASIC y FORTH , una BIOS y el sistema operativo de disco Elf/OS que se ejecutará en sistemas Elf ampliados, incluido el COSMAC Elf 2000.
En la entrada de Wikipedia RCA 1802 se indican otros idiomas disponibles , incluidos intérpretes , compiladores y ensambladores .
Los cartuchos de juego para el RCA Studio II contienen juegos Chip-8 que pueden ejecutarse en otros sistemas 1802. Los archivos de estos juegos se pueden encontrar en Internet.
Artículos de construcción