Home » Atari VCS (2600), así era la consola que popularizo los videojuegos

Atari VCS (2600), así era la consola que popularizo los videojuegos

1
Atari VCS (2600)

La Video Computer System de Atari, conocida por sus siglas en su primer periodo de vida, VCS, y más posteriormente como Atari 2600. Se trata ni más ni menos que de la primera consola en ser un éxito de masas en todo el mundo y que consiguió popularizar a los videojuegos y llevarlos a millones de personas. Todo ello utilizando una tecnología única y totalmente rudimentaria en comparación incluso con lo que existía en la época.

Los orígenes de la Atari VCS (2600)

La marca Atari no se popularizó entre el público con la consola de la que estamos hablando, sino con un dispositivo llamado Atari Pong Home TV, el cual había conseguido miniaturizar la compleja placa de la primera máquina recreativa en un dispositivo de pequeño que se podía conectar al televisor y con un coste ínfimo, tanto que no pararon de salir clones por todos sitios y Nolan Bushnell, el por aquel entonces presidente de la compañía vio la necesidad de crear algo que el resto no pudieran copiar.

Atari HOME Pong

Por lo que Atari se planteó el uso de un microprocesador integrado, los primeros ya habían empezado a aparecer en el mercado. Estamos hablando del Motorola 6800, el Intel 8080 y su clon mejorado, el Z80 y el MOS 6502. El concepto era permitirles utilizar un mismo chip para diferentes juegos. Al final, la elección de los padres del Atari VCS (2600), Jay Miner y Joe Decuir quienes serían años más tarde los padres de los Atari PC de 8 bits y del Commodore Amiga, fue el chip de MOS.

¿La primera consola basada en cartuchos?

Un cartucho es una pequeña placa con varias memorias ROM que incluye un programa, normalmente un videojuego, al que la CPU de un sistema accede como si fuese parte de su memoria RAM, con la única diferencia de que no puede escribir sobre estos. No obstante, la Atari VCS (2600) no fue la primera consola en basarse en cartuchos de la historia, ya que dicho honor le corresponde a la Fairchild Channel F.

Fairchild Channel F

El nombre de Fairchild no os sonará, pero era una de las mayores empresas de microelectrónica de los años 60 y buena parte de los 70. No obstante, la empresa más modesta, Atari, fue la que se llevó el gato al agua y acabo, teniendo el producto más popular.

Inicialmente, Atari no tenía pensado que lo que sería su VCS (2600) usará cartuchos intercambiables, ya que se inició como un proyecto llamado Atari Tank II, el cual tenía que seguir el mismo concepto que la Atari Home Pong, pero mucho más complejo.

Atari Tank II

La Atari Tank II no llego a salir jamás al mercado,  pero esta serviría de base para la creación de la Atari VCS (2600) dado que el primer título para la misma fue el Combat, el resto, como ya sabréis es historia.

Por influencia de la Fairchild Channel F Atari adopto los cartuchos intercambiables permitiendo una variedad de títulos en su consola, lo que obligo a hacer una serie de cambios finales en el diseño final. Sin embargo, hemos de partir que su diseño se vio limitado por el hecho de estar pensado para un único videojuego originalmente, es más, Atari no pensó que su VCS (2600) iba a tener más de dos años de vida.

El interior de la Atari VCS (2600)

Comparada con otros sistemas de la época, poblada por decenas de chips de la serie 7400 o TTL, la circuitería de la Atari VCS (2600) era muy limpia, dado que había solo tres chips en total. Por lo que se trata de un diseño extremadamente sencillo, pero al mismo tiempo también excesivamente inteligente. Y es que la consola no tenía ni un solo chip de memoria RAM a la vista, aunque existe cierta trampa.

Placa Atari VCS (2600)

Los tres chips principales eran: 

  • Una CPU MOS 6502, una versión recortada del MOS 6502 con 13 pines de direccionamiento y capaz solamente de direccionar 8 KB de memoria. Por lo demás, era igual a su hermano mayor. En cuanto a su velocidad de reloj era de 1.19 MHz.
    • No obstante, la mitad de los mismos se iba a los cartuchos, los cuales inicialmente tenían un tamaño máximo de 4 KB.
  • El segundo chip era un MOS 6532 o RIOT, siglas de RAM-I/O-Timer que contenía los siguientes componentes:
    • 128 bytes de memoria SRAM.
    • Dos interfaces de E/S para periféricos de 8 bits bidireccionales para los mandos.
    • Un reloj programable.
  • Y ya para terminar el Atari TIA, o Television Interface Adapter, creado por Joe Decuir y Jay Miner, se trata del primer chip gráfico de la historia de los videojuegos y su trabajo era el de generar tanto los gráficos en pantalla como el sonido, será en este chip en el que nos centraremos a partir de este punto.

¿Cómo generaba la Atari VCS (2600) sus gráficos)

La memoria RAM de la Atari VCS (2600) es muy limitada, tiene un total de 128 bytes situados en el MOS 6532, lo cual es una cantidad de memoria insuficiente para cualquier tipo de búfer de imagen: incluyendo un Tile Map o un Line Buffer. Es por ello que se requiere que los juegos generen sus gráficos en pantalla a medida que el haz de electrones viajaba por la pantalla del CRT.

Frame Atari VCS (2600)

La forma de generar los gráficos del TIA en la Atari VCS (2600) consistía en leer una serie de direcciones de memoria concretas en los 128 bytes que había dentro del chip RIOT, cuyos valores se cambiaban durante los  periodos HBlank VBlank y Overscan, el cual en que el haz de electrones del televisor CRT saltaba a la siguiente línea de escaneo, por lo que los desarrolladores tenían que ir contando los ciclos de reloj del TIA, el cual funcionaba a 3.58 MHz, el mismo que la portadora de color del estándar de televisión NTSC. Todo ello para formar una imagen en pantalla a 192 x 160 píxeles a una tasa de refresco de 60 Hz

Atari VCS 2600 Space Invaders
Space Invaders para Atari VCS

Por otro lado, el TIA por limitaciones de memoria no usaba patrones de bits para generar sus gráficos, sino que realmente dibujaba usando líneas, esto queda muy claro en la imagen arriba de esta líneas, el cual corresponde a la conversión de Space Invaders de TAITO para la consola, el que fue su mayor éxito. Por lo que no estamos ante un hardware que se basará en terminales de texto como si ocurría con otros sistema contemporáneos al mismo.

Versiones PAL y SECAM

Dado que en Europa no se utilizaba el estándar NTSC, sino el estándar PAL y en el caso de Francia el SECAM, los tiempos eran distintos, esto hacía que Atari no solo tuviese que rehacer la consola al completo para respetar los tiempos, sino que además los juegos también requerían una reprogramación interna, la cual no solo afectaba los gráficos, sino también al sonido debido a que la tasa de refresco PAL es de 50 Hz.

Versión NTSC Atari VCS-2600
Versión NTSC Atari VCS
Versiones PAL Atari VCS
Version PAL Atari VCS

Hemos de partir del hecho de que el formato PAL en modo entrelazado está compuesto por 312 líneas de escaneo, de las cuales, la Atari VCS (2600) para dicho formato de televisión se toma: 

  • 48 para el VBlank
  • 228 líneas de escaneo para la pantalla principal.
  • 36 líneas para el overscan

Curiosamente, al contrario de lo que ocurre en otros sistemas europeos, el TIA aquí sigue funcionando a la misma frecuencia, pero debido al resto de tiempos, los cuales se encuentran totalmente automatizados, se trata de un chip distinto al original con la misma funcionalidad. No obstante, lo que también destaca es el hecho que paleta de colores se encuentra reducida de 128 colores posibles a 104, lo que hace que el colorido se vea diferente en los juegos.

Atari VCS SECAM
Atari VCS (SECAM)

Aunque la peor versión de la Atari VCS (2600) era versión SECAM para Francia y otros países, funcionaba con los tiempos y resoluciones de la versión PAL, pero con una paleta de colores limitada a 8 colores en total, con resultados como el que podéis en la imagen de arriba. 

Los registros del TIA

Para generar la pantalla, la CPU, el MOS 6507, escribe en una serie de direcciones de memoria en los 128 bytes dentro del RIOT que luego el TIA lee para generar la siguiente línea de escaneo. Lo que obliga a los programadores a contar los ciclos de reloj en el código para ir dibujando la imagen, tanto del 6507 como del TIA. A este se le llama Racing the Beam o correr contra el haz (de electrones), ya que es literalmente lo que se hacía.

Atari VCS Combat
Atari VCS Combat

Hemos de partir del hecho que si bien buena parte de las funcionalidades del TIA podría hacerlas la CPU, no las haría con la velocidad suficiente del chip gráfico de la Atari VCS (2600) y requerirían grandes cantidades de memoria. Por lo que la idea con los registros del TIA es simple, el escribir ciertos datos en ciertas direcciones de memoria lo que hace es activar ciertas funciones, lo que convierte al diseño del chip creado por Joe Decuir y Jay Miner en algo tan sencillo como elegante.

Todos los registros son de 8 bits, sin embargo, alguno de ellos solo necesitan ser invocados para que se active su función. Los hemos ordenado en diferentes secciones para que sean más comprensibles. En todo caso, esto no es un manual de programación de esta consola, sino una descripción del hardware y más bien los ponemos en este artículo para complementar la descripción de la consola.

Campo de juego (Playfield)

El campo de juego son las partes que no son móviles del escenario, en el caso del Atari VCS (2600) todo el Playfield es de un mismo color, definido por el registro COLORPF. Mientra que el color de fondo o Background se define en el registro COLORBK.

Registros Atari TIA

En cuanto a la forma de dibujarlo, esto se hace con 3 registros distintos (PF0, PF1, y PF2), los cuales son de 4 bits el primero y 8 bits los otros dos, lo que hacen un total de 20 bits para definir cada línea del escenario. Obviamente dichos registros se han de renovar en cada línea de escaneo. Cada bit aquí representan 4 píxeles del escenario, por lo que esto nos permite definir la mitad del escenario.

Otro registro muy importante es el CTRLPF, ya que:

  • El bit 0 indica si se refleja el escenario en la otra mitad de la pantalla, fijaos que en muchos títulos del VCS la mitad derecha es una versión espejo de la mitad izquierda.
  • En cuanto al bit 1, este permite tener un marcador con colores diferentes al escenario.
    • Si el valor es 0 el color es el del registro del COLORPF
    • En cambio, si el valor es 1, la mitad izquierda del COLUP0 y la mitad derecha del COLUP1.
  • Podemos colocar los objetos móviles detrás del escenario o delante con el bit 2.
  • El bit 3 no se usa.
  • Los bits 4 y 5 marcan el tamaño del objeto móvil bola.
    • 00: 1 píxel
    • 01: 2 píxeles
    • 10: 4 píxeles
    • 11: 8 píxeles
  • Los bits 6 y 7 no se usan.

Objetos móviles

Atari VCS (2600) PITFALL

Técnicamente, el Atari VCS 2600 define los gráficos en tres categorías: el campo de juego, el cual ya hemos descrito, el jugador 1 y el jugador 2. Sin embargo, hemos de partir del hecho que fue el videojuego Combat la base para el diseño de la Atari VCS (2600) por lo que los objetos móviles se definen como una serie de registros para el jugador 0 y el jugador 1.

  • Los registros GRP0/GRP1 define el gráfico del jugador 0 y el jugador 1 en todos sus 8 bits.
    • Para controlar el movimiento del jugador 0 y 1 se utilizan los registros HMP0/HMP1
    • Si activamos el bit 3 de los registros REFP0/REFP1, entonces mostrará los gráficos en modo espejo.
    • NUSIZ0/NUSIZ1 nos permite colocar varias copias y variar el tamaño del gráfico del jugador 0 y 1.
  • Los gráficos Missile son elementos de 1 solo píxel, los cuales representaban el disparo de cada uno de los tanques:
    • ENAM0/ENAM1 activa o desactiva los misiles en la próxima línea de escaneo.
    • HMM0/HMM1: índica cuantos píxeles se desplaza el misil correspondiente respecto a la anterior línea de escaneo.
    • RESMP0/RESMP1: coloca el misil en la misma posición que el jugador 0 o 1.
  • La bola es un objeto independiente, usa el color del escenario y su movimiento se controla con el registro HMBL

Detección de colisiones y audio

La detección de colisiones ocurre cuando dos objetos se encuentran en el mismo lugar de la pantalla, pues bien, el TIA de la Atari VCS (2600) es capaz de informarle a la CPU cuando esto ocurre, lo que evita el tener que desarrollar una rutina compleja para ello. A diferencia de los registros para dibujar los objetos en pantalla, estos no se generan por la CPU para que los lea el TIA, sino a la inversa.

En cuanto al audio, en el Atari VCS (2600) este es bastante primitivo, no mucho más que el de un altavoz integrado, ya que dispone solo de 2 canales de audio generando una onda cuadrada que se controla a través de 3 registros distintos por canal:

  • El tono es controlado por 4 bits de los registros AUDC0 y AUDC1.
  • La frecuencia es controlada por 5 bits de los registros AUDF0 y AUDF1.
  • El volumen por 4 bits de los registros AUDV0 y AUDV1.

Esto es todo, esperamos que os haya sido informativo este documento para haceros una idea del funcionamiento de la Atari VCS (2600), una consola única en su arquitectura y que popularizo los videojuegos.

5 1 vote
Article Rating
Subscribe
Notify of
guest

1 Comment
Oldest
Newest Most Voted
Inline Feedbacks
View all comments
trackback

[…] en cuenta como funciona el negocio de las consolas de videojuegos. Y es que desde los tiempos de la Atari VCS siguen un modelo de negocio llamado Razor and Blades, y dado que parece ser que los niñatos de hoy […]

1
0
Would love your thoughts, please comment.x
()
x