lunes, 27 de abril de 2020

Atari 2600 VCS (Video Computer System)

Entre las décadas de 1970 y 1980, junto a los ordenadores personales, llegó a los hogares otro aparato electrónico que revolucionaría la forma de jugar: la videoconsola de juegos. Un exponente muy importante fue la consola Atari 2600 VCS (Video Computer System), creada en 1977 por la empresa Atari, creadores del videojuego Pong. Se vendieron muchísimas unidades y hoy día es posible comprar alguna de segunda mano.

Las que siguen en funcionamiento son algo caras así que como yo sobre todo estaba interesado en ver su construcción compré una que no funcionaba por mucho menos dinero. Cuando me llegó además estaba completamente llena de suciedad, tuve que hacerle una limpieza a fondo, tanto que casi desaparece completamente el logo del fabricante.

Hubo varias versiones, la que yo he comprado es la segunda, conocida como "light" por ser más ligera que la versión anterior, "sixer" por tener seis interruptores y "woody" porque aún siendo la carcasa de plástico algunas zonas tienen apariencia de madera. Siguientes versiones eran más pequeñas, tenían menos palancas y no tenían apariencia de madera.

Los tres interruptores de la izquierda sirven para encender o apagar la consola, elegir el tipo de televisor (color o blanco y negro) y el nivel de dificultad del jugador del joystick izquierdo.

Los juegos para la consola se distribuían mediante cartuchos. En el centro, entre los interruptores de la izquierda y la derecha, se encuentra la ranura para la introducción de los cartuchos.

En el lado derecho está el interruptor para el nivel de dificultad del jugador del joystick derecho y los de selección y reinicio del juego. Los interruptores de selección y reinició de juego funcionan como pulsadores. Al moverlos hacia abajo hacen su función y vuelven arriba al soltarlos. Por eso a su derecha tienen el dibujo de una flecha hacia abajo en lugar de dos valores como el resto de interruptores.

Si quitamos la tapa superior se puede ver el interior de la consola. La electrónica de la consola se divide principalmente en dos partes: la placa de los interruptores y una caja de metal donde se encuentra la placa base. Esta caja de metal sirve para impedir que las ondas electromagnéticas que generan los componentes electrónicos de la placa base salgan y creen interferencias en otros aparatos electrónicos cercanos como el televisor al que debía conectarse la consola. Esto era necesario para cumplir con las normas de la FCC (Federal Communications Commission) (Comisión Federal de Comunicaciones) de Estados Unidos.

Los interruptores tienen una cinta de metal que en el manual de servicio se recomendaba colocar para proteger los circuitos integrados de la consola ante descargas de electricidad estática.


Por la parte de atrás se puede ver como los interruptores están fijados a la placa y como unos cables conectan la placa de los interruptores con la placa base.

En la parte de atrás de la consola se encuentran dos conectores DE-9 para dos joysticks y la toma de corriente.

La toma de corriente utiliza un conector Jack de dos polos. La consola me vino sin adaptador de corriente así que tuve que usar un adaptador de una consola compatible que tengo. El adaptador de corriente suministra 9 V sin regular.

En muchos aspectos la electrónica es muy similar a ordenadores de la época como el ZX Spectrum 48K que compré hace tiempo y del que escribí varios artículos.

En la parte izquierda de la placa de interruptores además de los interruptores se encuentran un condensador y un regulador de voltaje 7805 atornillado a una placa de metal que le sirve de disipador de calor. El regulador de voltaje se encarga de transformar los 9 V sin regular del adaptador de corriente en 5 V regulados para poder alimentar correctamente los circuitos integrados de la consola.

Al encender la consola, como era de esperar no funcionaba. Lo primero que hice fue comprobar si a la salida del regulador de voltaje había los 5 V necesarios. No había voltaje así que procedí a cambiarlo.

Después de cambiarlo solo daba 3 V, así que cambié también el condensador de 2200 uF y 16 V y por fin la salida del regulador de voltaje era de 5 V. Desafortunadamente la consola seguía sin funcionar y ya empecé a temer que el problema iba a ser más serio.

En el lado derecho se encuentra el modulador de televisión al que llegan la imagen y sonido creados por la consola y los modula en un canal de televisión para que se pueda ver y oír en cualquier televisor analógico en color o blanco y negro.

En la siguiente imagen se puede el interior del modulador con sus componentes.

El modulador se conecta al televisor mediante un cable coaxial bastante largo que tiene un conector RCA macho para el modulador y un conector Belling-Lee macho para el televisor.

En el centro de la placa de interruptores se encuentra un conector macho de 12 pines donde se conecta el conector hembra de la placa base con los cables que unen ambas placas.

Si se desconectan los cables que unen las placas se puede desmontar la placa de los interruptores según se ve en la siguiente imagen.

Si le damos la vuelta podremos ver las soldaduras de todos los componentes y las pistas que conectan los interruptores y resto de componentes con los conectores en el centro que unen esta placa con la placa base.

En la parte izquierda se pueden ver los seis contactos de cada uno de los interruptores de la parte derecha así como las conexiones del modulador de televisión. Los interruptores tienen seis contactos en lugar de tres para aumentar la robustez.

De igual forma en la parte derecha se ven las conexiones de los interruptores de la izquierda, el regulador de voltaje y los anclajes de la placa de metal disipadora de calor del regulador.

En el centro de la placa se encuentran las conexiones de los 12 pines del conector que une las dos placas.

En el reverso de la placa también se puede ver el logo de Atari, la versión de la placa (REV. B) y el año de fabricación (77).

Una vez quitada la placa de los interruptores en la carcasa solo queda la caja que contiene la placa base.

En la parte de arriba se encuentra la ranura para los cartuchos de juegos.

Por detrás de la caja de metal sobresale parte de la placa base con los conectores para joystick, la toma de corriente y los cables que conectan con la placa de los interruptores. Los cables están soldados a la placa base y tienen un conector hembra para conectar a la placa de interruptores.

Por estos cables pasan múltiples señales en ambas direcciones haciendo que las dos placas funcionen como una sola. Posteriores versiones de la consola tenían una sola placa con todos los componentes.

Por ejemplo la corriente de 9 V del adaptador de corriente entra por el conector de la placa base y luego pasa por uno de esos cables a la placa de los interruptores donde se encuentra el regulador de voltaje que la convierte a 5 V para luego volver por otro cable a la placa base para alimentar los circuitos.

Para acceder a la placa base hay que desatornillar la caja de la carcasa y quitar la placa de metal que cierra la caja por abajo.




En la placa base se encuentran los componentes electrónicos principales de la consola:

Los chips van montados sobre zócalos en lugar de soldados a la placa para facilitar su reemplazo en caso de dañarse.

El microprocesador MOS 6507 tiene un bus de datos de 8 bits. Es una versión del MOS 6502 con algunas limitaciones que le hacían más económico. Al igual que con otros ordenadores o consolas de la época era muy importante ajustar el precio de los componentes para hacer un producto barato que pudiera comprar un gran número de personas. El MOS 6507 solo tiene un bus de direcciones de 13 bits, lo que permite solo 213 = 8192 direcciones. Usando direcciones de un byte permite 8192 bytes = 8 KiB.

El chip TIA es un circuito integrado de imagen y sonido diseñado específicamente para esta consola. Se encarga de generar las imágenes a mostrar en la pantalla y utilizaba un sistema diferente al de otros ordenadores o consolas. No tenía un área de memoria framebuffer donde formar la imagen completa a partir de puntos. En su lugar creaba dinámicamente la imagen línea a línea a partir de la información que almacenaba de un campo de juego y cinco objetos gráficos móviles: 2 misiles, 1 bola y 2 jugadores. Esta información solo abarcaba una línea y el juego debía modificarla constantemente para cada línea de la pantalla si era necesario.

Esto tenía el inconveniente de que se consumía mucho tiempo de procesador en dibujar la pantalla que no se podía utilizar para la lógica del juego. Por otro lado el chip TIA tenía la capacidad de detectar colisiones entre los objetos, algo muy importante a la hora de programar juegos para saber por ejemplo cuando ha chocado la bola. De esta forma se liberaba trabajo del procesador, en otros ordenadores o consolas era necesario que el código del juego hiciera esta función.

Una ventaja de no tener memoria framebuffer y generar la imagen dinámicamente era la posibilidad de tener una paleta de colores más amplia que otros ordenadores y consolas de la época al no estar limitada por la cantidad de memoria.

Este sistema permitía disminuir costes de fabricación al no necesitar memoria framebuffer y hacía muy fácil programar juegos que se adaptaran a esas características predefinidas de 2 jugadores, misiles, bolas y colisiones. Para hacer juegos distintos el programador tenía que buscar la forma de adaptar las capacidades de la consola a las necesidades del juego. El chip TIA también permitía generar sonidos con distinto tono y volumen.

El chip TIA genera las señales de luminancia, crominancia y sincronismo necesarias para crear una señal de video compuesto que se envía al modulador de televisor. Para mezclar estas señales y crear el video compuesto se utiliza un Hex Buffer 4050 y otros componentes como resistencias y condensadores.

En la placa también se encuentra un potenciómetro que permite ajustar el nivel de color.

El chip RIOT (RAM Input Output Timer) proporcionaba los 128 bytes de memoria RAM de la consola, un temporizador y se encargaba de controlar las entradas DE-9 para joysticks, volantes, pedales, teclados numéricos u otros dispositivos de entrada. El protocolo de comunicación usado se convirtió en el estándar de facto conocido como Norma Atari y fue usado en otras consolas y ordenadores. Este chip también controlaba los seis interruptores de la consola. Además el chip TIA colaboraba en el control de algunos tipos de dispositivos como "paddles" y con los botones de disparo de los joysticks.

El modelo original se basaba en el sistema de televisión NTSC, por lo que se necesitaba un resonador de 3,579545 MHz para generar la señal de televisión. Esa misma frecuencia es la usada por el chip TIA para su funcionamiento y un tercio, 1,193182 MHz, por el procesador. De esta forma con un solo resonador funciona todo el sistema abaratando costes y simplificando la sincronización. Es lo mismo que hicieron en ordenadores como el ZX Spectrum 48K o el IBM 5150.

En versiones de la consola que usan el sistema PAL, como la consola que he comprado, el chip TIA es ligeramente distinto y se usan dos resonadores. Uno de 4,433618 MHz para generar la señal PAL y uno de 3,546894 MHz para el chip TIA. Esta frecuencia es 4/5 de la frecuencia PAL (4,433618 x 4/5 = 3,546894) y dividida entre tres da 1,182298 MHz para el procesador. Esas frecuencias se integran con el sistema PAL y son lo bastante similares a las frecuencias usadas en la consola NTSC para que los dos sistemas sean compatibles. También crearon versiones para el sistema Secam.

La frecuencia de 1,182298 MHz la genera el chip TIA en el pin 4. En la siguiente imagen se puede ver la señal medida con un osciloscopio. El ciclo de la señal es de 1000 ns / 1,182298 MHz = 845,81 ns.

A continuación se muestra una tabla con las diferentes frecuencias:

SeñalTIAProcesador
NTSC3,579545 MHz3,579545 MHz1,193182 MHz
PAL4,433618 MHz3,546894 MHz1,182298 MHz

Otro punto a tener en cuenta es que las paletas de colores de los sistemas NTSC y PAL no son iguales, por lo que los colores del juego no se verían igual en consolas NTSC y PAL. Por eso se publicaban versiones distintas de los juegos para los distintos sistemas.

En la parte de atrás de la placa base se puede ver el logo de Atari, la versión de la placa (REV B) y el año de fabricación (78). El año de fabricación es distinto al de la placa de interruptores, que es del año 1977.

Al desmontar la caja de metal se pueden ver en la parte de abajo de la carcasa todos los anclajes de las piezas internas de la consola y las aberturas hacía el exterior por donde salen los conectores y cables.

Con toda la electrónica a la vista pude comprobar que el procesador estaba muy caliente, lo que seguramente indique que está cortocircuitado y es lo que hace fallar la consola. Si alguna vez consigo un procesador compatible probaré a ver si es ese el problema.

Para poder probar la consola si funcionaba compré también el juego Ms. Pac-Man de Namco.



Los cartuchos tienen en el interior una placa de circuito electrónico con una memoria donde se encuentra el videojuego.


Debajo de la placa de metal que lo protege se encuentra el chip de memoria. Esta placa de metal, al igual que la caja de la placa base, sirve para que no salieran al exterior las ondas electromagnéticas generadas en la memoria y pudieran causar interferencias en otros aparatos.

Por el reverso de la placa se pueden ver los contactos de la memoria soldados a la placa.

La memoria está conectada a los contactos de la placa. Estos contactos sobresalen por la parte de arriba del cartucho y se insertan en la ranura para cartuchos de la consola. A los lados se pueden ver dos anclajes de plástico para sujetar firmemente el cartucho a la consola.


De esta forma la memoria donde se encuentra el juego queda accesible al procesador, que puede leerla como una memoria ROM. Para ello el procesador utiliza la mitad de sus direcciones de memoria posibles, pudiendo acceder a un máximo de 4 KiB. Para poder usar juegos más grandes era necesario usar técnicas de bank switching que permitieran acceder a distintas áreas de memoria del cartucho con la misma dirección del procesador. Algunos cartuchos también añadían más memoria RAM permitiendo la escritura en algunas de sus direcciones de memoria.

Tanto el chip del cartucho como los chips TIA y RIOT están conectados directamente al bus de datos y de direcciones del procesador sin ningún controlador intermedio. Los chips tienen líneas de selección conectadas a algunas líneas del bus de direcciones del procesador que le permiten a este seleccionar el chip a utilizar dependiendo de la dirección.

La forma tan básica en la que están conectados los chips hace que se pueda acceder a ellos con distintas direcciones. En el manual de servicio o manuales de programación que se encuentran por internet se puede ver con detalle como están conectados los chips al procesador y las direcciones de memoria que se pueden usar para acceder a ellos y leer y escribir datos. A continuación se muestran algunas de las direcciones posibles:

ChipHexadecimalDecimalTamaño
Registros TIA0000 - 003F0 - 6364 bytes
RIOT RAM0080 - 00FF128 - 255128 bytes
Registros RIOT0280 - 029F640 - 67132 bytes
ROM Cartucho1000 - 1FFF4096 - 81914096 bytes (4 KiB)

Como la consola no funciona, para poder probar el juego utilicé mi consola compatible conectada a un televisor TDT que también sintoniza televisión analógica.

Los técnicos que reparaban las consolas disponían de dos cartuchos especiales para encontrar fallos. En el manual de servicio de la consola se detalla como usarlos. Uno de ellos era el cartucho de diagnóstico que permitía hacer varias pruebas y detectar fallos. Si no era posible hallar el problema con uno de esos test se podía usar el cartucho "Signal Trace Cartridge" para encontrar cortes en las señales de los circuitos de la consola.

La siguiente captura de pantalla muestra uno de los test del cartucho de diagnóstico, para tomarla he usado el emulador Stella. Este test recibía el nombre de "Diagnostic Matrix Test" y permitía detectar problemas de entrada / salida.

Básicamente este es el diseño y funcionamiento de la consola. Para profundizar más en la electrónica lo mejor es leer con detenimiento el manual de servicio, donde se indica con todo detalle el diseño electrónico y los procedimientos de reparación.

Con el emulador Stella se puede ejecutar cualquiera de los miles de juegos creados para esta consola y siguientes versiones. Otro día escribiré un artículo sobre mi consola compatible con la Atari 2600. Desde la creación de la consola hasta hoy día se han creado multitud de consolas compatibles.

No hay comentarios:

Publicar un comentario