stringtranslate.com

As de Júpiter

El Jupiter Ace de Jupiter Cantab fue un ordenador doméstico británico lanzado en 1982. El Ace se diferenciaba de otros microordenadores de la época en que su entorno de programación utilizaba Forth en lugar del más popular BASIC . [1] [2] Esta diferencia, junto con el software disponible limitado y la visualización gráfica basada en caracteres deficiente, ventas limitadas y la máquina no fue un éxito. [3] [4]

Historia

Un pequeño sistema Júpiter Ace

Júpiter Cantab fue formado por Richard Altwasser y Steven Vickers . [5] Ambos habían estado en el equipo de diseño del ZX Spectrum : Altwasser trabajó en el desarrollo del ZX81 y en el diseño del hardware del Spectrum. Vickers adaptó y amplió la ROM 4K ZX80 a la ROM 8K ZX81 y escribió la mayor parte de la ROM para Spectrum.

El Jupiter Ace recibió su nombre de uno de los primeros ordenadores británicos, el Pilot ACE , [6] y salió a la venta el 22 de septiembre de 1982 con un precio de £ 89,95. [2]

Las ventas al público en general fueron lentas. Inicialmente, la computadora sólo estaba disponible por pedido por correo, [2] y Jupiter Cantab informó que había dificultades de producción, pero que se habían superado en enero de 1983 y que estaban llegando unidades a las tiendas. [7]

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, la carcasa deficiente y la pequeña memoria inicial pesaron en contra de una mayor aceptación en el mercado. Finalmente, Júpiter Cantab dejó de cotizar a finales de octubre de 1983. [8]

Luego, la marca fue adquirida por Boldfield Computing Ltd en 1984, que vendió el stock restante por correo por £ 26. [8] La marca se vendió nuevamente a la empresa de Paul Andrews, Andrews UK Limited, en 2015. [9]

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 puertas era de alrededor de 5.000. [4] A principios de la década de 2000, las máquinas supervivientes son poco comunes y a menudo alcanzan precios elevados como artículos de colección.

Forth, aunque estructurado y potente, se consideraba difícil de aprender, y el conocimiento de BASIC adquirido gracias a la familiaridad con otras computadoras domésticas no servía de ayuda práctica para aprenderlo. Una revisión de 1982 afirmó que "el éxito de Jupiter Ace dependerá de la aceptación por parte del público comprador de máquinas de otro lenguaje de microcomputadoras". [10]

Además, solo había una gama muy limitada de software publicado (ya fueran programas comerciales o programas mecanografiados impresos en revistas de pasatiempos) para la máquina, y estos estaban restringidos por la pequeña cantidad de RAM del modelo base. [3]

Los intentos de promover Ace 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 para Forth por parte del personal docente fueron cuestiones clave. [11] 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 . [12]

Finalmente, los gráficos basados ​​en mosaicos se comparan mal con los gráficos basados ​​en píxeles de otras máquinas, que también eran en color en lugar del monocromo del Ace. Esto restringió las ventas en gran medida 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 . [13] Internamente su diseño es más similar al 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 accedían al mismo banco (mismos chips) que la memoria de video. Al igual que el Spectrum, el Ace usaba teclas de goma conductoras negras , aunque a diferencia del Spectrum, las teclas tenían una almohadilla conductora que se aplastaba directamente sobre las pistas de la PCB en lugar de usar una membrana. Como resultado, las teclas a menudo dejaban de funcionar de manera confiable hasta que se limpiaban o se actualizaba el material conductor.

Las capacidades de audio estaban controladas por la CPU con frecuencia y duración programables. La salida de sonido se realizaba a través de un pequeño altavoz incorporado.

Como era común en ese momento, usaba una grabadora de cinta común en lugar de unidades de disco/cinta. De manera similar, se necesitaba un televisor como pantalla, pero solo en blanco y negro, en lugar del color que admiten los modelos de la competencia, como el Spectrum. Un conector de borde secundario (no documentado) en la parte posterior de la carcasa hizo que algunas señales de video estuvieran disponibles, presumiblemente para una próxima tarjeta de video en color, pero nunca se lanzó ningún producto oficial que usara este conector.

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 podían 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 de 8 × 8 disponibles (definibles), al mismo tiempo que el trazado de gráficos de 64 × 48.

Altavoz interno controlado directamente por la CPU en modo monotarea, con control de frecuencia y duración del sonido en milisegundos .

El almacenamiento se realizó a través de una interfaz de cinta de casete a 1500 baudios . Los archivos podrían usarse para el almacenamiento de programas Forth (código compilado) o volcados de memoria sin procesar.

Memoria

El Ace tenía una ROM de 8 KB que contenía el kernel 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 grabadoras, descompilación y redefinición de 'palabras' recién reeditadas (es decir, rutinas). [14] Parte de la ROM se escribió en código de máquina Z80 , pero parte también se codificó en Forth.

Los siguientes 8 KB se construyeron en RAM que solo fue parcialmente decodificada , con 2 KB de RAM de video repetidos dos veces y 1 KB de RAM de usuario repetido 4 veces (con la misma memoria apareciendo en varias direcciones de memoria diferentes).

El uso del espejo de dirección inferior de la RAM de video seleccionaría la prioridad de la CPU, lo que resultaría en algunos píxeles aleatorios momentáneos en la pantalla cuando el subsistema de video y la CPU accedieran a la RAM de video en el mismo ciclo de reloj . El uso de la dirección superior pausaría brevemente la CPU debido a la interferencia, lo que afectaría la sincronización del programa y haría que este modo no fuera adecuado para operaciones de E/S. Dado que la RAM de vídeo estaba parcialmente separada de los buses de datos y direcciones principales, en su mayor parte el subsistema de vídeo y la CPU podían funcionar en paralelo .

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 en pantalla completa de 24 filas × 32 columnas de caracteres en blanco y negro. Se pretendía lograr el color como expansión, pero aunque se diseñó un tablero de gráficos en color, [15] nunca se produjo ninguno comercialmente.

1 KB de RAM con opción a un RAM-Pack de 16 KB, y posteriormente uno de 32 KB. Boldfield Computing también comercializó una PCB que convirtió el conector de borde a compatibilidad eléctrica con un Sinclair ZX81, lo que permitió el uso del paquete de RAM ZX81 de 16K. [dieciséis]

Especificaciones

Las referencias a Ace RAM a veces incluyen la memoria de video separada de 2 KB , que no estaba disponible para la 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 BÁSICO.

Programación

Vocabulario del cuarto de Ace

Su característica más distintiva fue la elección del Forth, un lenguaje estructurado . La compilación por subprocesos permitió que los programas escritos se ejecutaran casi tan rápido como muchos lenguajes compilados nativos cargados por computadoras más caras. Se consideraba que Forth estaba bien adaptado a las microcomputadoras con su pequeña memoria y procesadores de rendimiento relativamente bajo. [18] Los programas Forth son eficientes en cuanto a memoria; a medida que crecen, reutilizan más código previamente definido. [19] Las estructuras de control podrían anidarse en cualquier nivel, limitadas únicamente por la memoria disponible. Esto permitió implementar programas complejos, permitiendo incluso la programación recursiva . Se afirmó que Ace's Forth era "diez veces más rápido que Basic" [20] [21] [22] 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 lenguaje interpretado. BÁSICO. [20] También permitió una fácil implementación de rutinas de código de máquina si era necesario. [23]

Ace's Forth se basó principalmente en Forth-79, con algunas diferencias relevantes, [6] : 176  en particular agregó verificación de sintaxis para controlar estructuras y construcciones de definidores y se agregaron algunas palabras adicionales basadas en comandos BÁSICOS comunes de sonido, video y cinta. A la implementación le faltaron algunas palabras Forth utilizadas con menos frecuencia, que se implementaron fácilmente si fuera necesario. La verificación de errores en tiempo de ejecución se puede desactivar para aumentar la velocidad entre un 25% y un 50%. [6] : 171 

Descompilando

Su Forth se adaptó al hardware de computadora doméstica que utiliza cintas sin disco al poder guardar/cargar "vocabularios compilados" del usuario, en lugar de los habituales bloques de programación numerados utilizados por los sistemas de disquetes.

La descompilación evitó el desperdicio de RAM al simular 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, incluía un archivo de datos adicional para datos binarios sin procesar. Estas soluciones eran exclusivas del Júpiter Ace.

DEFINIDOR vs COMPILADOR

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>, [24] con:

  1. DEFINER .... DOES> : Crea nuevas palabras de definición, generalmente utilizadas para definir y construir estructuras de datos. Similar al CREATE..DOESuso en ADELANTE estándar. [6] : 120  (Ejemplo: Agregar estructuras de datos como matrices, registros,...).
  2. COMPILER .. RUNS> : cree nuevas palabras de compilación, que se usan con menos frecuencia para ampliar el lenguaje con palabras del compilador que CREATE..DOES>dependen de la implementación de FORTH. [6] : 136  (Ejemplo: Nuevas estructuras de control del compilador como caso, bucle infinito, ...).

Estos dos pares definitorios, en lugar de uno solo, permitieron al Ace descompilar sus programas, a diferencia de los sistemas Forth habituales . 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 el código fuente de un programa Forth, sino compilar el código después de editarlo, se evitaba por completo la emulación de una unidad de disco/cinta en la RAM, lo que ahorraba memoria de la computadora . También ahorró tiempo en la lectura y escritura de programas desde cintas de casete. Esta solución compatible con cintas y ahorro de RAM era exclusiva del Jupiter Ace Forth.

Los nombres pueden ser equívocos fuera del contexto Forth, ya que todas las palabras se compilan cuando se declaran. [25]DEFINER define una nueva Clase (como una matriz) que construirá (compilará) un Objeto de matriz. [26] Estos están activos en 'Intérprete'. Emparejar este modo de interacción COMPILERdefine una estructura de programación (normalmente un par o un triplete) como IF-ELSE-THEN. [27] Estas 'Programación estructurada' están activas en el modo 'Compilar' (que consiste simplemente en crear una nueva palabra Forth). En resumen, "modo de interpretación" significa etapa de ejecución, mientras que "modo de compilación" se refiere a una etapa de edición.

Desarrollo

Evitar fuentes se compensó almacenando los comentarios ingresados ​​en el código con la salida compilada; la compilación tradicional descartaría dichos comentarios. Luego, los comentarios se recuperaron al descompilar. Como resultado de que "el código es la fuente", las palabras modificadas (editadas) exigirían la actualización de todo el código utilizando el recién editado. Esto se hizo con el REDEFINEcomando no estándar.

Aunque no está diseñado explícitamente para tal propósito, el Forth compilado podría utilizarse para extensiones ROM del sistema integrado. Las ROM externas se desarrollaron con Ace Forth para usarse como aplicaciones de control. [28] [29]

Complementos

La máquina pudo usar algunos complementos del ZX81 debido a ubicaciones de RAM similares y a 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 [30]
  1. 16 KB por Júpiter Cantab.
  2. 16 KB y 32 KB de Stonechip Electronics.
  3. 16 KB de Sinclair, con placa adaptadora de Jupiter Cantab para compatibilidad eléctrica.
  4. 48 KB de Boldfield (nuevo propietario de Jupiter Ace después de Jupiter Cantab).
Teclado [31]
Sonido [32]
  • SoundBoard (1983) de Essex Micro Electronics,
Almacenamiento [33]
  1. Sistema de unidad de disco Jet-Disc (1983) de MPE (controla hasta cuatro unidades de 3", 5" u 8").
  2. Interfaz de disco "Deep Thought" con AceDOS 4K en una EPROM (1986) de J Shepherd & S Leask.
Adaptadores de impresora
  • Máquina de interfaz ADS Centronics (1983), de Advanced Digital Systems, [34]
  • Tarjeta de impresora RS232 y Centronics (1984) de Essex Micro Electronics. [35]
  • Fue posible conectar la impresora Sinclair ZX mediante una placa adaptadora y un software. [36]
Tarjeta grafica
  1. Tarjeta de escala de grises: 4 tonos de gris de S Leask (1986)

Modelos

Júpiter Ace número 1

El número 1 original de Jupiter Ace se presentó en 1982 y venía en una caja extraída al vacío. Según se informa, se produjeron 5.000 unidades. [37]

Júpiter Ace 4000

El Jupiter Ace 4000 se presentó en 1983 y tenía una carcasa moldeada por inyección más resistente. Según se informa, se produjeron 800 unidades. [38] [8]

Videojuego

Hay 51 videojuegos conocidos lanzados comercialmente para Jupiter Ace [39]

Ver también

Otras microcomputadoras basadas en Forth:

Referencias

  1. ^ "Folleto de ventas de Júpiter Cantab". Sitio de recursos de Júpiter Ace .Página 1
  2. ^ abc Smith, Tony (1 de agosto de 2012). "El Júpiter Ace: 40 años en el avance de dos estrellas del espectro". El registro . Consultado el 26 de junio de 2013 .
  3. ^ ab "Índice de software Jupiter Ace". Sitio de recursos de Júpiter Ace . Archivado desde el original el 23 de mayo de 2007 . Consultado el 5 de octubre de 2014 .
  4. ^ ab "¿Qué es un as?". Sitio de recursos de Júpiter Ace . Archivado desde el original el 17 de junio de 2012 . Consultado el 24 de septiembre de 2008 .
  5. ^ "Planes secretos trazados por la nueva empresa: DOS DE las figuras líderes en el desarrollo del ZX Spectrum, Richard Altwasser y Steven Vickers, cortaron sus vínculos con Sinclair Research y crearon su propia empresa". Usuario de Sinclair . Núm. 4. Julio de 1982.
  6. ^ abcde Vickers, Steven (1982). Júpiter Ace ADELANTE Programación.
  7. ^ "Noticias: los distribuidores de High Street tendrán todos los ases". Tu computadora . Enero de 1983. p. 29.
  8. ^ abc Smith, Tony (21 de septiembre de 2012). "El Júpiter Ace: 40 años después". El registro .
  9. ^ "Sendero Provenzal". El as de Júpiter . 2022-05-21 . Consultado el 8 de marzo de 2024 .
  10. ^ Bennett, Bill (noviembre de 1982). "Revisión de Júpiter Ace". Tu computadora .
  11. ^ Laine, Joe (11 de noviembre de 1982). "Ace vuelve a la escuela". Semanario de Computación Popular .
  12. ^ Smith, Tony (21 de septiembre de 2012). "El Júpiter Ace: 40 años después". El registro .
  13. ^ "PCB número dos despoblado". Archivo Júpiter Ace .
  14. ^ "Proyecto ACE ROM (libro electrónico)".
  15. ^ Wike, John (abril de 1984). "Agregando color al As". ETI . pag. 41.
  16. ^ "/pub/Vintage/Sinclair/80/Jupiter Ace/Periféricos/Placa base (Boldfield)". El archivo de computadoras Sinclair ZX . Consultado el 8 de diciembre de 2019 .
  17. ^ Tecnologías Libres para Síntesis de Imagen Digital Tridimensional. Ser. 2006. pág. 40.ISBN 978-84-689-9280-8. Micro Z80 a 3,25 MHz [...], el Júpiter Ace [...]
  18. ^ Williams, Gregg (agosto de 1980). «Editorial - Hilos de un CUARTO tapiz» (PDF) . Byte . pag. 6.
  19. ^ James, John S. (agosto de 1980). "¿Qué es Forth? - Características del código FORTH" (PDF) . Byte . pag. 102.
  20. ^ ab "El equipo de Spectrum ofrece su as". Semanario de Computación Popular . 26 de agosto de 1982. Archivado desde el original el 3 de marzo de 2016 . Consultado el 15 de noviembre de 2012 .
  21. ^ "Puntos de referencia (entrada n.º 9)".
  22. ^ The Complete FORTH , de Alan Winfield , 1983, Sigma Technical Press, página xi.
  23. ^ Electrónica e informática , "Jupiter Ace Review", noviembre de 1982, página 70.
  24. ^ Winfield, Alan : "The Complete Forth", Capítulo 9 "Extendiendo hacia adelante", Sigma Technical Press, 1983.
  25. ^ Proyecto ACE ROM v3, 2021. Libro II "Listado original", Fuente ROM
  26. ^ Proyecto ACE ROM v3, 2021. Capítulo 3 "Consejos de programación", Sección 3.2 "Definidor/compilador"
  27. ^ Proyecto ACE ROM v3, 2021. Capítulo 4 "Más rápido, más rápido", Sección 4.4 "Construyendo el nuestro", "El caso de Case"
  28. ^ "ACE User 4, página 8: Expansión de ROM para Ace" (PDF) .
  29. ^ "CUARTO usuario Vol2#1, página 2," EPROM para ACE"" (PDF) .
  30. ^ "Paquetes de RAM de hardware Jupiter ACE". www.jupiter-ace.co.uk .
  31. ^ "Teclado Memotech de hardware Jupiter ACE". www.jupiter-ace.co.uk .
  32. ^ "Sitio de recursos de Jupiter Ace - Revisión de la placa de sonido EME AY-3-8910". www.jupiter-ace.co.uk .
  33. ^ "El sistema de transmisión Jet-Disc Disc II". www.jupiter-ace.co.uk .
  34. ^ "Revisión de la interfaz Centronics de ADS de hardware de Jupiter Ace". www.jupiter-ace.co.uk .
  35. ^ "Tarjeta de impresora de hardware Jupiter Ace". www.jupiter-ace.co.uk .
  36. ^ "Cinta 11: Controlador de impresora ZX". www.jupiter-ace.co.uk . Consultado el 25 de noviembre de 2023 .
  37. ^ "¿Qué es un Júpiter ACE?". Archivado desde el original el 17 de junio de 2012 . Consultado el 24 de septiembre de 2008 .
  38. ^ "¿Qué es un Júpiter ACE 4000?".
  39. ^ "De la A a la Z". www.jupiter-ace.co.uk .
  40. ^ "Micronique HÉCTOR HRX". Museo OLD-COMPUTERS.COM. Archivado desde el original el 21 de noviembre de 2010 . Consultado el 5 de enero de 2015 .

enlaces externos