Articulo de referencia

Elfo COSMAC

El COSMAC Elf fue un ordenador personal de placa única de los primeros tiempos , basado en el microprocesador RCA 1802. Su descripción original apareció en una serie de artículo...

El COSMAC Elf fue un ordenador personal de placa única de los primeros tiempos , basado en el microprocesador RCA 1802. Su descripción original apareció en una serie de artículos de construcción publicados en la revista Popular Electronics entre 1976 y 1977. En las últimas páginas de revistas de electrónica, tanto Netronics como Quest Electronics ofrecían kits mejorados y económicos basados ​​en este diseño. El sistema funcionaba sin chips de memoria de solo lectura (ROM): los programas se introducían directamente en la memoria RAM mediante el acceso directo a memoria (DMA) integrado del 1802 , ocho interruptores de palanca y un botón pulsador de entrada . Posteriormente, se comercializó una versión actualizada, denominada COSMAC VIP, en forma de kit.

Descripción

El Elf original contaba con dos pantallas LED hexadecimales para la salida de valores de datos en 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 aumentarla a una memoria basada en potencias de dos, con un límite superior de espacio de direcciones de 64 KB .

El primer diseño 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 sencillo utilizaba la función DMA del microcontrolador 1802 para permitir la entrada de programas y datos en la RAM mediante interruptores de palanca. Al introducir un byte mediante los interruptores y pulsar el botón "input", se almacenaba dicho byte en la RAM y se mostraba en los dos LED hexadecimales, avanzando el contador DMA a la siguiente ubicación. Un interruptor de "protección de memoria" permitía desactivar la modificación de la memoria. Si se producía un error al introducir el programa, este podía corregirse activando la protección de memoria, desactivando el modo de carga (lo que reiniciaba el contador de programa a cero), activando nuevamente el modo de carga y pulsando "input" para avanzar a la dirección de los datos incorrectos. Tras desactivar la protección de memoria, se podía introducir el valor correcto.

El cuarto artículo de la serie presentó modificaciones para usar un circuito integrado generador de video RCA 1861 “Pixie” (CDP1861). El Pixie requería un reloj de 1,76 MHz, y dado que esta era una frecuencia de cristal poco común, generalmente se usaba un cristal de ráfaga de color de 3,579545 MHz , fácilmente disponible , en un circuito oscilador separado con un divisor de frecuencia para controlar las entradas de reloj tanto del microprocesador como del Pixie. El reloj resultante de 1,7897725 MHz era lo suficientemente cercano para que el hardware funcionara. La salida de video monocromática (con una temporización aproximada al estándar NTSC ) podía generarse mediante operaciones DMA intercaladas con códigos de operación 1802 cuidadosamente organizados como instrucciones en el software. La resolución máxima del 1861 era de 64 píxeles horizontales por 128 verticales. Al modificar la ubicación de las instrucciones en las rutinas de control e interrupción de la pantalla de vídeo , se podían repetir las filas de píxeles para obtener resoluciones más bajas, lo que permitía utilizar la pantalla de vídeo 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 casete y para la salida de E/S serie . Las instrucciones de salto en el conjunto de instrucciones 1802 podían leer el estado de las líneas de entrada de un bit EF1 a EF4, que se utilizaban para leer el pulsador momentáneo del teclado 'I' (entrada) (normalmente EF4), los programas de la grabadora de casete a través de circuitos de interfaz, la entrada de E/S serie y la 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 interfaz.

Microcomputadoras

COSMAC Elf en exhibición en el Museo de Historia de la Computación . (Abajo a la izquierda, en el centro, debajo de la computadora Altair 8800 y junto a la TV Typewriter ).

Los ordenadores Elf originales eran esencialmente versiones caseras de los RCA Microkit, Microtutor I y Microtutor II, que eran las placas de demostración de RCA para sus microprocesadores predecesores de dos chips CDP1801 y 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 serie, interfaz de casete y el chip de vídeo CDP1861 "Pixie" . Posteriormente, RCA presentó su propia versión ampliada, el COSMAC VIP .

En agosto de 2006, la revista Nuts and Volts , junto con Spare Time Gizmos , publicó un proyecto para construir el "Cosmac Elf 2000", basado en el Elf original, con algunos componentes más nuevos y fáciles de encontrar, así como características, módulos y funcionalidades mejoradas, incluyendo la placa de reemplazo de gráficos Pixie STG1861, que es funcionalmente equivalente al ahora escaso circuito integrado RCA CDP1861.

La tarjeta de membresía es una reedición moderna y sencilla, al estilo de los Elfos de COSMAC, para aficionados a la informática retro, diseñada para caber en una lata de Altoids .

En Internet se pueden encontrar otros sistemas para aficionados, incluidos emuladores de hardware que utilizan FPGA y microcontroladores modernos .

Software

Una serie de boletines y pequeños folletos ofrecidos por Netronics y Quest contenían lenguaje máquina 1802 y programas CHIP-8 , junto con esquemas para expandir el Elf y agregar periféricos, incluyendo un lápiz óptico. En Internet se puede encontrar información similar y proyectos de software para aficionados. El único libro publicado sobre el 1802 es "Programmer's Guide to the 1802" de Tom Swan (1981), que ahora está disponible en formato PDF después de haber estado agotado durante muchos años. [ 1 ]

Tiny BASIC, una versión de BASIC ofrecida por Tom Pittman, podía usarse para escribir pequeños programas en BASIC en el Elf que podían visualizarse a través de la pantalla gráfica monocromática de baja resolución Pixie o el hardware TV-Typewriter. Pittman también escribió un pequeño folleto sobre el 1802 titulado "Un breve curso de programación", cuya publicación y disponibilidad en línea ha autorizado gratuitamente. [ 2 ] [ 3 ]

Mike Riley ha escrito un editor, un ensamblador, intérpretes de BASIC y FORTH , una BIOS y el sistema operativo de disco Elf/OS que funcionará en sistemas Elf ampliados, incluido el COSMAC Elf 2000.

En la entrada de Wikipedia sobre la RCA de 1802 se indican otros lenguajes disponibles , incluidos intérpretes , compiladores y ensambladores .

Los cartuchos de juegos para RCA Studio II contienen juegos Chip-8, que pueden ejecutarse en otros sistemas 1802. Se pueden encontrar copias de seguridad de estos juegos en Internet.

Referencias

  1. Swan, Tom (1981). "Guía del programador para el 1802" . Página principal de Tom Swan . Tom Swan . Consultado el 19 de agosto de 2016 .
  2. Pittman, Tom (1980). "Un curso breve de programación" . COSMAC Elf . Dave Ruske . Consultado el 19 de agosto de 2016 .
  3. Pittman, Tom (1980). "Un curso breve de programación" . Itty Bitty Computers . Tom Pittman . Consultado el 19 de agosto de 2016 .

Lecturas adicionales

  • Weisbecker, Joseph (agosto de 1976). "Construye el 'Elf' de COSMAC (Parte 1)" . Popular Electronics . Vol.  10, n.º  2. Ziff Davis. págs. 33–38 . 
  • Weisbecker, Joseph (septiembre de 1976). "Construye el 'Elf' de COSMAC (Parte 2)" . Popular Electronics . Vol.  10, n.º  3. Ziff Davis. págs. 37–40 . 
  • Weisbecker, Joseph (marzo de 1977). "Construya el microordenador COSMAC 'Elf' (Parte 3)" . Popular Electronics . Vol.  11, n.º  3. Ziff Davis. págs. 63-67 . 
  • Weisbecker, Joe (mayo de 1977). "Un sistema de microprocesador práctico y de bajo costo para el hogar/escuela" . Dr. Dobb's Journal . Vol.  2, n.°  5, págs. 34-44 . 
  • Weisbecker, Joseph A. (julio de 1977). "Parte IV: Construye la pantalla gráfica PIXIE" . Popular Electronics . Vol.  12, n.º  1. Ziff Davis. págs. 41–46 . 
  • McCormak, Edward (octubre de 1977). "Prometedor sistema operativo 1K para RCA Elfs" . Dr. Dobb's Journal . Vol.  2, n.º  9, pág.  34.
  • McCormick, Edward M. (febrero de 1978). "Cómo actualizar un microordenador básico Elf" . Popular Electronics . Vol.  13, n.º  2. Ziff Davis. págs. 65–69 . 
  • Meyer, Martin (marzo de 1978). "Ampliando el Elf II" . Popular Electronics . Vol.  13, n.º  3. Ziff Davis. págs. 62–65 . 
  • Armstrong, Robert (agosto de 2006). "Elf cumple 30 años — Parte 1" . Nuts and Volts . T & L Publications Inc. págs. 67–73 . 
  • Armstrong, Robert (septiembre de 2006). "Elf cumple 30 años — Parte 2" . Nuts and Volts . T & L Publications Inc. págs. 67–71 . 
  • Artículo de Spare Time Gizmo sobre el Cosmac Elf 2000
  • Emma 02 incluyendo el emulador de elfos Cosmac
  • SimElf COSMAC Elf-ish CDP1802 Simulator, una aplicación web extendida en JavaScript, SimElf++ / COSMAC Elf 2
  • FPGA Cosmac ELF Recreación en FPGA de un ordenador Cosmac ELF en un procesador 1802 de precisión de ciclo, codificado en spinalHDL.