El Jupiter Ace de Jupiter Cantab era una computadora doméstica británica de principios de la década de 1980. El Ace se diferenciaba de otras microcomputadoras de la época en que su entorno de programación usaba Forth en lugar del más popular BASIC . [2]
Tipo | Computador de casa |
---|---|
Fecha de lanzamiento | 1982 |
Precio de lanzamiento | £ 89.95ACE-ROM-PROJECT [1] (equivalente a £ 319.78 en 2019) |
Interrumpido | 1984 |
Sistema operativo | ACE Forth |
UPC | Z80 a 3,25 MHz |
Memoria | 1 KB (máximo 49 KB) |
Después de que Jupiter Cantab dejó de comercializarse, la marca fue adquirida por Boldfield Computing Ltd en 1984, antes de finalmente ser vendida a la empresa de Paul Andrews, Andrews UK Limited, en 2015. [3]
Historia
Jupiter Cantab fue formado por Richard Altwasser y Steven Vickers . [4] Ambos habían estado en el equipo de diseño del Sinclair ZX Spectrum : Altwasser trabajó en el desarrollo del ZX-81 y en el diseño del hardware del Spectrum. Vickers adaptó y amplió la ROM 4K ZX-80 a la ROM 8K ZX-81 y escribió la mayor parte de la ROM para Spectrum.
El Jupiter Ace recibió su nombre de una de las primeras computadoras británicas, la ACE . [5]
Las ventas al público en general fueron lentas. Inicialmente, la computadora solo estaba disponible por pedido por correo, y Jupiter Cantab informó que había dificultades de producción, pero que se habían superado en enero de 1983 y que las unidades estaban llegando a las tiendas. [6] El uso de Forth en lugar de la opción más habitual de BASIC, y la disponibilidad y el éxito del ZX Spectrum, así como el software publicado limitado, el caso deficiente y la pequeña memoria inicial pesaron contra una aceptación más amplia del mercado.
Ventas
Las ventas de la máquina nunca fueron muy grandes; el número informado de Ace vendidos antes de que Jupiter Cantab cerrara sus operaciones era de alrededor de 5.000. [7] A principios de la década de 2000, las máquinas supervivientes son poco comunes, a menudo alcanzando altos precios como artículos de colección.
En cuarto lugar, aunque era estructurado y poderoso, se consideraba difícil de aprender, y el conocimiento de BÁSICO adquirido a partir de la familiaridad con otras computadoras domésticas no era de ayuda práctica para aprenderlo. Una revisión de 1982 declaró que "El éxito del Jupiter Ace dependerá de la aceptación del público comprador de máquinas de otro lenguaje de microcomputadoras". [8]
Además, solo había una gama muy limitada de software publicado, ya sea programas comerciales o programas de mecanografía impresos en revistas de pasatiempos, para la máquina, y estos estaban restringidos por la pequeña cantidad de RAM del modelo base. [9]
Los intentos de promover el As en el mercado educativo también fracasaron; Las dudas sobre si Forth sería relevante para los programas de exámenes y la falta de apoyo de Forth por parte del personal docente fueron cuestiones clave. [10] Los alumnos estaban más interesados en aprender el BASIC ampliamente utilizado que un lenguaje utilizado por una sola máquina (poco común) con una sintaxis RPN peculiar . [11]
Finalmente, los gráficos basados en mosaicos se compararon mal con los gráficos basados en píxeles de otras máquinas, que también eran en color en lugar del monocromo de Ace. Esto restringió las ventas en gran parte a un nicho de mercado de entusiastas de la programación técnica.
Diseño
El Jupiter ACE a menudo se compara con el ZX81 debido a su tamaño similar, bajo costo y factor de forma similar . [12] Internamente su diseño es más similar al del ZX Spectrum aunque el ACE también tenía una memoria de video dedicada de 2 KB, evitando en parte la ralentización cuando los programas acceden al mismo banco (mismos chips) que la memoria de video. Al igual que el Spectrum, el Ace usaba teclas de goma conductora negra .
Las capacidades de audio estaban controladas por la CPU con frecuencia y duración programables. La salida de sonido se realizó a través de un pequeño altavoz incorporado.
Como era común en ese momento, usó una grabadora común en lugar de unidades de disco / cinta. De manera similar, se necesitaba un televisor como pantalla, pero esto solo estaba en blanco y negro, en lugar del color compatible con los modelos de la competencia, como el Spectrum.
El Jupiter Ace se basó en el Zilog Z80, con el que los diseñadores tenían experiencia previa trabajando en el Sinclair ZX81 y ZX Spectrum.
Tanto los gráficos como el texto se pueden mostrar al mismo tiempo: (1) la redefinición de los mosaicos de caracteres proporcionó gráficos estándar de 256 × 192 limitados a los 128 caracteres disponibles (definibles) de 8 × 8, simultáneamente con el trazado de gráficos de 64 × 48.
Altavoz interno controlado directamente por la CPU en modo de tarea única, con control de frecuencia y duración del sonido en ms .
El almacenamiento se realizó a través de una interfaz de cinta de casete a 1500 baudios . Los archivos se pueden utilizar para el almacenamiento de cuatro programas (código compilado) o para volcados de memoria sin formato.
Memoria
El ACE tenía una ROM de 8 KB que contenía el núcleo y el sistema operativo de Forth , y el diccionario predefinido de palabras de Forth en aproximadamente 5 KB. Los 3 KB restantes de ROM admitían varias funcionalidades: biblioteca de números de punto flotante y tabla de definiciones de caracteres, acceso a la grabadora, descompilación y redefinición de 'palabras' recientemente reeditadas (es decir, rutinas). [13] Parte de la ROM se escribió en código de máquina Z80 , pero también se codificó en Forth.
Los siguientes 8 KB se dividieron en 2 bloques de 4 KB cada uno. El subsistema de video consumía 2 KB de RAM y permitía al usuario elegir dos prioridades diferentes, contención de CPU regular o predominante . En el último caso, se anularon los tiempos de las imágenes de TV , lo que permitió más tiempo de procesador para los programas de usuario a expensas de la pantalla, que se quedó en blanco.
El 1 KB de RAM de usuario solo se descodificó parcialmente , por lo que se repitió en el espacio de direcciones del bloque de 4 KB completo que reside. Es decir, el programa / datos de usuario parecía existir en cuatro ubicaciones de memoria diferentes.
Los primeros 16 KB del mapa de memoria se utilizaron para ROM, vídeo y RAM disponible para el usuario, dejando los segundos 16 KB del mapa de memoria libres para la extensión de RAM y los 32 KB superiores sin definir.
Un banco de 1K permitió la redefinición de la mayoría de sus 128 caracteres basados en ASCII en formato de mapa de bits de 8 × 8 píxeles . El otro banco de 1K almacenó la visualización de pantalla completa de 24 filas × 32 columnas de caracteres en blanco y negro. El color se pretendía lograr como expansión, pero aunque se diseñó una placa de gráficos en color, [14] nunca se produjo ninguna comercialmente.
1 KB de RAM con la opción de un paquete de RAM de 16 KB, y luego uno de 32k. Un PCB también fue comercializado por Boldfield Computing que convierte el conector de borde a la compatibilidad eléctrica con un Sinclair ZX81, permitiendo el uso del paquete de RAM ZX81 16K. [15]
Especificaciones
Característica | Valor |
---|---|
Procesador | Zilog Z80A registró una frecuencia de 3,25 MHz. [dieciséis] |
Sistema operativo | CUARTO (como lenguaje de programación e interfaz de línea de comandos ). |
Memoria | 2 KB para video + 1 KB base expandible hasta 49 KB (video excluido). |
Video | Subsistema independiente con 2 bancos SRAM dedicados : Pantalla (1 KB) + Char Tiles (1 KB). |
Sonar | Altavoz interno, controlado por CPU (no dedicado). |
Expansión | 2 conectores: principal (relacionado con la CPU) + vídeo (pantalla + señal AV). |
Teclado y juego de caracteres | Teclado Qwerty de 40 teclas (Acceso a símbolos con tecla extra). Todos los caracteres en Charset (basados en ASCII-1967 ) se pueden redefinir. |
Conjunto de caracteres | Basado en ASCII-1967 con extensiones como para el juego de caracteres ZX Spectrum que incluye ↑, £ y ©. |
Las referencias a la RAM ACE a veces incluyen la memoria de video separada de 2 KB , que no estaba disponible para programación, lo que genera cierta confusión. De manera similar, a veces se argumenta que debido a la eficiencia de Forth, la RAM estándar de 1 KB era de hecho comparable a al menos 2 KB en un sistema BASIC.
Programación
Su característica más distintiva fue la elección de Forth, un lenguaje estructurado que permite escribir programas que se ejecutan casi tan rápido como los lenguajes compilados cargados por computadoras más caras. Forth se consideró bien adaptado a las microcomputadoras con su pequeña memoria y procesadores de rendimiento relativamente bajo. [17] Los programas de cuarto son eficientes en memoria; a medida que crecen, reutilizan más código definido previamente. [18] Las estructuras de control se pueden anidar en cualquier nivel, limitado solo por la memoria disponible. Esto permitió implementar programas complejos, incluso permitiendo la programación recursiva . Se dijo que el ACE's Forth era "diez veces más rápido que el Basic" [19] [20] [21] y usaba menos de la mitad de la memoria (un porcentaje de costo significativo de las computadoras de gama baja de la época) de un programa equivalente escrito en interpretado BÁSICO. [19] También permitió una fácil implementación de rutinas de código de máquina si era necesario. [22]
Forth de ACE se basó principalmente en Forth-79, con algunas diferencias relevantes, [5] : 176 en particular, agregó verificación de sintaxis a las estructuras de control y construcciones de definidores y se agregaron algunas palabras adicionales basadas en comandos de cinta, video y sonido BASIC comunes . La implementación carecía de algunas palabras Forth utilizadas con menos frecuencia, que se implementaban fácilmente si era necesario. La comprobación de errores en tiempo de ejecución se puede desactivar para aumentar la velocidad entre un 25% y un 50%. [5] : 171
Descompilación
Su Forth se adaptó al hardware de computadora doméstico que usa cinta sin disco al ser capaz de guardar / cargar "vocabularios compilados" de usuario, en lugar de los habituales bloques de programación numerados usados por los sistemas de disquete.
La descompilación evitó el desperdicio de RAM en la simulación de un sistema de bloques ausente, utilizado tanto con controladores de disco como de cinta (estos últimos no deben confundirse con grabadoras de cinta). Como reemplazo, incluyó un archivo de datos adicional, para datos binarios sin procesar. Estas soluciones eran exclusivas del Jupiter ACE.
Definir vs Compilar
Para permitir la descompilación, distinguió la creación habitual de palabras de compilador y definidor de Forth , reemplazando el par de creación CREATE .. DOES>, [23] con:
- DEFINER .... DOES>: Crea nuevas palabras de definición, generalmente utilizadas para definir y construir estructuras de datos. Similar al uso CREATE..DOES en FORTH estándar. [5] : 120 (Ejemplo: Agregar estructuras de datos como matrices, registros, ...).
- COMPILER .. RUNS>: Crea nuevas palabras de compilación, que se usan con menos frecuencia para extender el lenguaje con palabras de compilación donde CREATE..DOES> depende de la implementación de FORTH. [5] : 136 (Ejemplo: Nuevas estructuras de control del compilador como caso, bucle infinito, ...).
Estos 2 pares de definición, en lugar de uno solo, permitieron al ACE descompilar sus programas, a diferencia de los sistemas habituales de Forth . Esta capacidad de descompilación fue una solución a la ausencia del sistema de disco más flexible utilizado por Forth. Al no almacenar la fuente de un programa Forth, pero al compilar el código después de la edición, evitó por completo la emulación de una unidad de disco / cinta en la RAM para ahorrar memoria de la computadora . También ahorró tiempo en la lectura y escritura de programas desde una cinta de casete. Esta solución compatible con cintas y que ahorra RAM era exclusiva de Jupiter ACE Forth.
Desarrollo
Evitar las fuentes se compensó almacenando los comentarios ingresados en el código con la salida compilada, la compilación tradicional descartaría tales comentarios. Luego, los comentarios se recuperaron al descompilar. Como resultado de "el código es la fuente", las palabras modificadas (editadas) exigirían la actualización de todo el código utilizando el que se acaba de editar. Esto se hizo con el comando REDEFINE no estándar.
Aunque no está diseñado explícitamente para tal propósito, el compilado podría utilizarse para extensiones ROM del sistema integrado. Las ROM externas se desarrollaron con Ace Forth para usarlas como aplicaciones de control. [24] [25]
Complementos
La máquina pudo usar algunos complementos ZX-81 debido a ubicaciones de RAM similares y una ranura de expansión externa. Jupiter Cantab fabricó un paquete de RAM de 16 KB y empresas externas fabricaron paquetes de RAM similares, así como otros periféricos e interfaces.
- Paquetes de RAM [26]
- 16 KB por Jupiter Cantab.
- 16 KB y 32 KB de Stonechip Electronics.
- 16 KB de Sinclair, con placa adaptadora de Jupiter Cantab para compatibilidad eléctrica.
- 48 KB de Boldfield (nuevo propietario de Jupiter ACE después de Jupiter Cantab).
- Teclado [27]
- Teclado Memotech, de Memotech .
- Sonido [28]
- SoundBoard (1983) de Essex Micro Electronics,
- Almacenamiento [29]
- Sistema de unidad de disco Jet-Disc (1983) de MPE (controla hasta cuatro unidades de 3 ", 5" u 8 ").
- Interfaz de disco "Deep Thought" con un 4K AceDOS en una EPROM (1986) por J Shepherd & S Leask.
- Adaptadores de impresora
- ADS Centronics Interface Machine (1983), de Advanced Digital Systems, [30]
- RS232 y Centronics PrinterCard (1984) de Essex Micro Electronics. [31]
- Tarjeta grafica
- Tarjeta de escala de grises - 4 tonos de gris de S Leask (1986)
Modelos
1982 - Jupiter ACE original en una caja estirada al vacío - Se reportaron 5000 unidades construidas. [32]
1983 - Jupiter ACE 4000 en una caja moldeada por inyección más resistente - Se reportaron 800 unidades construidas. [33]
Ver también
Otras microcomputadoras basadas en Forth:
- fr: Héctor HRX [34]
- El gato canon
Referencias
- ^ "¿Asesino ZX81 en una era post-Spectrum?" . 2012-08-01 . Consultado el 26 de junio de 2013 .
- ^ "Folleto de ventas" . Página 1
- ^ "Camino de Provenza - El as de Júpiter" . Consultado el 29 de julio de 2016 .
- ^ "Una entrevista con Richard Altwasser y Steven Vickers" . Archivado desde el original el 16 de mayo de 2011 . Consultado el 18 de septiembre de 2008 .
- ^ a b c d e Vickers, Steven (1982). Programación Júpiter Ace FORTH .
- ^ "Your Computer Magazine (1983 - 01)" . El Archivo de Internet . Enero de 1983. p. 28 . Consultado el 8 de diciembre de 2019 .
- ^ "Qué es un As" . Archivado desde el original el 17 de junio de 2012 . Consultado el 24 de septiembre de 2008 .
- ^ "Sitio de recursos de Jupiter Ace - revisión de su computadora, noviembre de 1982" . Consultado el 27 de abril de 2013 .
- ^ "Índice de software Jupiter Ace" . Archivado desde el original el 23 de mayo de 2007 . Consultado el 5 de octubre de 2014 .
- ^ "Sitio de recursos de Júpiter Ace - Carta - Ace vuelve a la escuela en Computación Popular semanal 11 de noviembre de 1982" . Consultado el 27 de abril de 2013 .
- ^ "El Júpiter Ace tiene 30 - Página 5 • El Registro" . Consultado el 27 de abril de 2013 .
- ^ "PCB no poblada" .
- ^ "Proyecto ACE ROM (E-Book)" .
- ^ "Añadiendo color al As" . artículo en la revista ETI, abril de 1984
- ^ "/ pub / Vintage / Sinclair / 80 / Jupiter Ace / Peripherals / Motherboard (Boldfield)" . El archivo de computadoras Sinclair ZX . Consultado el 8 de diciembre de 2019 .
- ^ Tecnologías Libres para Síntesis de Imagen Digital Tridimensional . pag. 40 . ISBN 978-84-689-9280-8.
Micro Z80 a 3,25 MHz [...], el Jupiter Ace [...]
- ^ Revista Byte . "Editorial". Agosto de 1980. Edición especial.
- ^ James, Revista John S. Byte . 1980, agosto "¿Qué es Forth?", Página 102, sección "Características del Código FORTH".
- ^ a b "El equipo de Spectrum reparte su as" . Popular Computing Weekly . 26 de agosto de 1982. Archivado desde el original el 3 de marzo de 2016 . Consultado el 15 de noviembre de 2012 .
- ^ "Puntos de referencia (entrada n. ° 9)" .
- ^ The Complete FORTH , por Alan Winfield, 1983, Sigma Technical Press, página xi.
- ^ Electrónica y Computación . "Revisión de Júpiter Ace". 1982, noviembre. página 70.
- ^ Winfield, Alan: "The Complete Forth", Capítulo 9 "Extendiéndose HACIA ADELANTE", Sigma Technical Press, 1983.
- ^ "Usuario 4 de ACE, página 8: Expansión de ROM para Ace" (PDF) .
- ^ "FORTH User Vol2 # 1, página 2," EPROMs para ACE " " (PDF) .
- ^ "RamPacks" .
- ^ "Teclado Memotech" .
- ^ "Revisión de la placa de sonido EME AY-3-8910" .
- ^ "Unidades de disco" .
- ^ "ADS Centronics" .
- ^ "Printercard" .
- ^ "¿Qué es un Júpiter ACE" . Archivado desde el original el 17 de junio de 2012 . Consultado el 24 de septiembre de 2008 .
- ^ "¿Qué es un Júpiter ACE 4000" .
- ^ "Micronique HECTOR HRX" . Museo OLD-COMPUTERS.COM. Archivado desde el original el 21 de noviembre de 2010 . Consultado el 5 de enero de 2015 .
enlaces externos
- Sitio de recursos de Jupiter Ace : El proyecto de restauración y preservación de Jupiter Ace.
- ACE-ROM-PROJECT : últimos documentos ROM (PDF) + ROM ACE restaurado (ZIP).
- theregister.co.uk: The Jupiter Ace tiene 30 años , esquema (2012)