La Bally Astrocade (también conocida como Bally Arcade e inicialmente como Bally ABA-1000 [1] ) es una consola de videojuegos doméstica de segunda generación y un sistema informático simple diseñado por un equipo de Midway , en ese momento la división de videojuegos de Bally . Originalmente se anunció como "Bally Home Library Computer" en octubre de 1977 e inicialmente se puso a disposición para pedidos por correo en diciembre de 1977. Pero debido a retrasos en la producción, las unidades se lanzaron por primera vez a las tiendas en abril de 1978 y su marca cambió a "Bally Professional Arcade". Se comercializó solo por un tiempo limitado antes de que Bally decidiera salir del mercado. Los derechos fueron adquiridos más tarde por una empresa de terceros, que lo relanzó y lo vendió hasta alrededor de 1984. La Astrocade es particularmente notable por sus capacidades gráficas muy potentes para el momento de su lanzamiento, [ cita requerida ] y por la dificultad para acceder a esas capacidades.
A finales de los años 70, Midway contrató a Dave Nutting Associates para diseñar un chip de visualización de vídeo que pudiera utilizarse en todos sus sistemas de videojuegos, desde juegos arcade hasta un sistema informático doméstico . El sistema que Nutting entregó se utilizó en la mayoría de los juegos arcade clásicos de Midway de la época, incluidos Gorf y Wizard of Wor . El chipset admitía lo que en ese momento era una resolución relativamente alta de 320 × 204 en cuatro colores por línea , aunque para acceder a este modo se necesitaba una memoria a la que se pudiera acceder a una velocidad más rápida que la RAM dinámica común de 2 MHz de la época.
Originalmente conocida como Bally Home Library Computer , se lanzó en 1977, pero solo estaba disponible a través de pedidos por correo . Los retrasos en la producción hicieron que ninguna de las unidades se enviara hasta 1978, y para ese momento la máquina había sido rebautizada como Bally Professional Arcade . En esta forma, se vendió principalmente en tiendas de informática y tuvo poca exposición minorista (a diferencia de la Atari VCS ). En 1979 , Bally perdió interés en el mercado de las salas de juegos y decidió vender su División de Productos de Consumo, incluido el desarrollo y la producción de la consola de juegos.
Casi al mismo tiempo, un grupo de terceros había intentado sin éxito llevar su propio diseño de consola al mercado como Astrovision . [2] Un comprador corporativo de Montgomery Ward que estaba a cargo del sistema Bally puso a los dos grupos en contacto y finalmente se llegó a un acuerdo. En 1981 relanzaron la unidad con el cartucho BASIC incluido de forma gratuita, esta vez conocida como Bally Computer System , con el nombre cambiando nuevamente, en 1982, a Astrocade . Se vendió con este nombre hasta la crisis de los videojuegos de 1983 , y luego desapareció alrededor de 1985.
Midway llevaba tiempo planeando lanzar un sistema de expansión para la unidad, conocido como ZGRASS-100 . El sistema estaba siendo desarrollado por un grupo de artistas informáticos de la Universidad de Illinois en Chicago, conocido como "Circle Graphics Habitat" , junto con programadores de Nutting. Midway pensó que un sistema de este tipo, en una caja externa, haría que el Astrocade fuera más interesante para el mercado. Sin embargo, todavía no estaba listo para su lanzamiento cuando Bally vendió la división. Es posible que se hayan producido unas cuantas unidades como ZGRASS-32 después de que Astrovision relanzara la máquina.
El sistema, combinado en una sola caja, finalmente se lanzaría al mercado como Datamax UV-1 . Destinado al mercado de computadoras domésticas durante su diseño, la máquina se reorientó ahora como un sistema para generar gráficos de alta calidad en cintas de video . Estos se pusieron a la venta en algún momento entre 1980 y 1982 , pero se desconoce cuántos se construyeron.
El sistema básico funcionaba con un Zilog Z80 que controlaba el chip de visualización con un búfer de RAM entre los dos. El chip de visualización tenía dos modos, un modo de baja resolución de 160 × 102 y un modo de alta resolución de 320 × 204, ambos con 2 bits por píxel para cuatro colores. Este tipo de color/resolución normalmente estaba fuera de las capacidades de la RAM de la época, que no podía leer los datos lo suficientemente rápido como para seguir el ritmo de la pantalla del televisor. El sistema utilizaba el direccionamiento en modo de página, lo que les permitía leer una "línea" a la vez a una velocidad muy alta en un búfer dentro del chip de visualización. La línea podía entonces leerse en la pantalla a un ritmo más lento, al mismo tiempo que interfería menos con la CPU, que también estaba tratando de utilizar la misma memoria.
En el Astrocade, los pines necesarios para utilizar este "truco" no estaban conectados. Por lo tanto, el sistema Astrocade se quedó con el modo de resolución más baja de 160 × 102. En este modo, el sistema utilizó 160 × 102 × 2 bits = 4080 bytes de memoria para contener la pantalla. Dado que la máquina tenía solo 4 kiB (4096 bytes) de RAM, esto dejó muy poco espacio para funciones del programa como llevar la puntuación y las opciones del juego. El resto del programa tendría que colocarse en la ROM .
El Astrocade utilizaba registros de color o indirección de color , de modo que los cuatro colores se podían elegir de una paleta de 256 colores. La animación de color era posible modificando los valores de los registros y, mediante una interrupción en blanco horizontal, se podían cambiar de una línea a otra. Se podía "intercambiar" un conjunto adicional de cuatro registros de color en cualquier punto de la línea, lo que permitía la creación de dos "mitades" de pantalla, divididas verticalmente. Originalmente pensada para permitir la creación de un área de puntuación en el lateral de la pantalla, los programadores también utilizaron esta función para emular 8 modos de color.
A diferencia del VCS, el Astrocade no incluía soporte de hardware para sprites . Sin embargo, sí incluía un sistema tipo blitter y un software para controlarlo. La memoria por encima de 0x4000 estaba dedicada a la pantalla, y la memoria por debajo de esa, a la ROM. Si un programa escribía en el espacio de la ROM (normalmente imposible, después de todo, es de "solo lectura"), el chip de video tomaría los datos, les aplicaría una función y luego copiaría el resultado en la ubicación correspondiente en la RAM. La función a utilizar se almacenaba en un registro en el chip de pantalla e incluía instrucciones comunes como XOR y bit-shift . Esto permitió que el Astrocade admitiera cualquier cantidad de objetos similares a sprites independientemente del hardware, con la desventaja de que dependía del software volver a dibujarlos cuando se movían.
El Astrocade fue uno de los primeros sistemas basados en cartuchos, que utilizaba cartuchos conocidos como Videocades que estaban diseñados para ser lo más parecidos posible en tamaño y forma a una cinta de casete . La unidad también incluía dos juegos integrados en la ROM, Gunfight y Checkmate , junto con la sencilla pero útil Calculator y un programa de "dibujos" llamado Scribbling. La mayoría de los cartuchos incluían dos juegos y, cuando se insertaban, la máquina se reiniciaba y mostraba un menú que comenzaba con los programas del cartucho y luego enumeraba los cuatro programas integrados.
El Astrocade presentaba un dispositivo de entrada relativamente complejo que incorporaba varios tipos de mecanismos de control: el controlador tenía la forma de una empuñadura estilo pistola con un interruptor de gatillo en el frente; un pequeño joystick de 4 interruptores/8 direcciones se colocaba en la parte superior de la empuñadura, y el eje del joystick estaba conectado a un potenciómetro , lo que significa que el joystick se podía girar para funcionar también como un controlador de paleta .
En la parte frontal de la unidad había un teclado "hex-pad" de 24 teclas que se usaba para seleccionar juegos y opciones, así como para operar la calculadora. En la parte posterior había una serie de puertos, incluidos conectores para la alimentación, los controladores y un puerto de expansión. Una rareza era que la parte superior trasera de la unidad estaba vacía y se podía abrir para almacenar hasta 15 cartuchos. La capacidad del sistema para actualizarse de una consola de videojuegos a una computadora personal junto con su biblioteca de casi 30 juegos en 1982 son algunas de las razones que lo hicieron más versátil que sus principales competidores, y fue incluido por Jeff Rovin como uno de los siete principales proveedores de videojuegos. [3]
El Astrocade también incluía un cartucho de lenguaje de programación BASIC , escrito por Jamie Fenton , quien amplió el Palo Alto Tiny BASIC de Li-Chen Wang . [4] Publicado por primera vez como Bally BASIC en 1978.
El desarrollo de un intérprete BASIC en el sistema fue difícil, ya que la pantalla por sí sola consumía casi toda la RAM disponible. La solución a este problema fue almacenar el código del programa BASIC en la RAM de video.
Esto se logró intercalando cada bit del programa junto con la pantalla misma; BASIC usaba todos los bits pares y la pantalla los bits impares. El intérprete leía dos bytes, descartaba todos los bits impares y ensamblaba los resultados en un solo byte de código. Esto se hizo invisible al configurar dos de los colores para que fueran iguales a los otros dos, de modo que los colores 01
y 11
fueran iguales (blanco), por lo que la presencia o falta de un bit para BASIC no tenía efecto en la pantalla. Se aprovechó memoria adicional al usar menos líneas verticalmente, solo 88 en lugar de las 102 completas. Esto logró exprimir 1760 bytes de RAM para los programas BASIC. La desventaja fue que la mayor parte de la potencia del sistema gráfico no estaba disponible.
Los programas se ingresaban a través del teclado de la calculadora, con una cubierta de plástico que mostraba letras, símbolos y palabras clave de BASIC. Estas se seleccionaban mediante un conjunto de 4 teclas de mayúsculas de colores. Por ejemplo, al escribir "WORD" (oro) y luego la tecla "+", obtenía GOTO
.
Se admitió un editor de líneas simple. Después de escribir el número de línea correspondiente a un programa existente, cada vez que se presionaba la tecla PAUSA se cargaba el siguiente carácter de la memoria. [4] : 16
Un programa Astro BASIC que luego se comercializó fue Artillery Duel . John Perkins escribió el juego primero y lo envió a The Arcadian fanzine , de donde fue adaptado para el manual de Astro BASIC. [4] : 95 Perkins desarrolló posteriormente el cartucho Astrocade del juego.
Astro BASIC admitió las siguientes palabras clave: [4] : 108-114
LIST
, RUN
, STOP
,TRACE
PRINT
,INPUT
GOTO
, GOSUB
, RETURN
, IF
(pero no THEN
y no ELSE
),FOR-TO-STEP/NEXT
BOX
, CLEAR
,LINE
:PRINT
, :INPUT
, :LIST
,:RUN
ABS()
, CALL()
, JX()
(posición horizontal del joystick especificado), JY()
(posición vertical del joystick), KN()
(estado de la perilla), PX(X,Y)
(píxel activado o desactivado), RND()
, TR()
(estado del disparador)KP
(pulsación de tecla), RM
(resto de la última división), SZ
(tamaño de memoria), XY
(posición de la última LÍNEA)SM=
(modo de desplazamiento), TV=
(mostrar caracteres ASCII)BC
(color de fondo), CX
CY
(posición del cursor), FC
(color de primer plano), NT
(tiempo de la nota),Un punto .
al comienzo de la línea era equivalente a REM
en otras implementaciones de BASIC. Ciertos comandos se manejaban mediante el teclado en lugar de palabras clave: el botón RESET era equivalente a NEW
en otros intérpretes.
El lenguaje admitía 26 variables enteras A
y dos matricesZ
predefinidas , - que se almacenaba comenzando después del programa, de manera ascendente - y - que se almacenaba desde la parte superior de la memoria, de manera descendente. El lenguaje carecía de una declaración para dimensionar las matrices, cuyo tamaño estaba determinado por la memoria disponible ( ) no utilizada por el listado del programa (2 bytes por elemento). Se accedía a los puertos a través de la matriz , y se accedía a la memoria a través de la matriz , en lugar de usar PEEK y POKE . Si bien el lenguaje carecía de cadenas, proporcionaría el valor ASCII de una pulsación de tecla, que podría enviarse a , lo que significa que los caracteres podrían leerse desde el teclado, almacenarse en una matriz y luego enviarse.@()
*()
DIM
SZ
&()
%()
KP
TV
La pantalla de caracteres tenía 11 líneas de 26 caracteres cada una. La resolución de los comandos gráficos era de 88 x 160, con X entre -80 y 79 y Y entre -44 y 43.
La música se podía producir de cuatro maneras: [4] : 40,114
PRINT
comando, como efecto secundario, producía un tono único para cada carácter o palabra clave mostrada.MU
variable convirtió números en notas.MO
(oscilador maestro), NM
(modo de ruido) NV
, (volumen del ruido), TA
(tono A), TB
(tono B), TC
(tono C), VA
(volumen de la voz A), VB
(volumen de la voz B), VC
(volumen de la voz C), VF
(frecuencia de vibrato), VR
(vibrato). (Se agregó a Astro BASIC pero no a Bally BASIC).El siguiente programa de muestra del manual muestra las funciones de entrada y gráficos del joystick. "Prueba tu habilidad... La perilla del primer jugador mueve el phaser hacia la izquierda o la derecha y el gatillo dispara... El segundo jugador controla el objetivo mientras el primer jugador dispara". [4] : 72
1.PHASER PHUN 2. POR DICK AINSWORTH 10 20X=RND(60)-31
Y=RND(20)
30 CLARO 40 X=X+JX(2)×3 50 Y=Y+JY(2)×3 60 CAJA X,Y,4,4,3 70 K = KN (1) ÷ 2 CAJA 80 K,-40,3,8,1 90IF TR(1)=0GOTO 30
100 N=1110 120IF K>X-3IF K<X+3N=15
FOR A=1TO N
130 CAJA K,0,1,80,3140 MU="4"150 a. C. = A×8160NEXT A
170 FC=7180 a. C. = 8190GOTO 10
Esta lista ilustra cómo las palabras clave, que fueron tokenizadas, siempre se mostraron con un espacio siguiente.
La unidad ZGRASS se colocó debajo del Astrocade y lo convirtió en una computadora "real", que incluía un teclado completo, un coprocesador matemático ( FPU ), 32k de RAM y una nueva ROM de 32k que contenía el lenguaje de programación GRASS (a veces denominado GRAFIX en esta máquina). [5] La unidad también agregó puertos de E/S para un casete y un disquete , lo que le permitió usarse con CP/M .
La revista Games incluyó a Bally Professional Astrocade en su lista de los "100 mejores juegos de 1981", señalando que "nuestros cartuchos favoritos son los clásicos Gunfight, Red Baron air war y Demolition Derby". [6]
Danny Goodman de Creative Computing Video & Arcade Games afirmó en 1983 que Astrocade "tiene uno de los mejores paquetes de gráficos y sonido de cualquier videojuego doméstico". [7]
Hay 28 videojuegos lanzados oficialmente para el sistema.
Otros cartuchos
Prototipos
No licenciado
Cerveza casera