domingo, 6 de junio de 2021

Atari 2600 Jr: Clon Kingsway

La consola Atari 2600 tuvo mucho éxito y se vendieron gran número de unidades de sus diferentes modelos. Al tener tanto éxito surgieron muchos clones fabricados por múltiples empresas. Yo tengo un clon del modelo 2600 Jr. fabricado por KingsWay. La consola incluye en varios chips de memoria ROM 191 de los juegos clásicos desarrollados para Atari 2600.

Al igual que el original, en la parte superior solo tiene cuatro interruptores, los interruptores de dificultad han sido movidos a la parte de atrás. En el lado izquierdo se encuentra el interruptor de encendido y debajo de este un indicador luminoso de encendido/apagado. El modelo 2600 Jr. tenía a la derecha del interruptor de encendido otro interruptor para seleccionar entre imagen en color o en blanco y negro. Este clon en lugar de un interruptor tiene un pulsador en el que se indica que sirve para "seleccionar color o juego".

Cuando se enciende la consola se ejecuta un programa para seleccionar un juego de los 191 incluidos indicando su número. Moviendo el joystick a la derecha o izquierda se selecciona el dígito a modificar, moviéndolo hacía arriba y hacia abajo se aumenta o disminuye el dígito y pulsando el botón del joystick se ejecuta el juego. La función "seleccionar juego" del pulsador junto al interruptor de encendido sirve para terminar el juego que se esté ejecutando y volver al programa de selección de juego.

En el lado derecho hay dos pulsadores. "Player Select" para seleccionar el número de jugadores en juegos que lo permitan y "Reset" para iniciar o reiniciar el juego. Debajo del botón "Reset" se indica que la consola tiene 192 juegos incluidos, pero en realidad son 191 juegos más el programa de selección de juegos. En el centro está la ranura para cartuchos de juegos como en el resto de consolas Atari 2600.



En la parte de atrás se encuentran los dos puertos de joystick DE-9 con norma Atari y los interruptores de dificultad para dos jugadores. La consola venía con dos joysticks con dos botones a cada lado pero no los conservo. He tenido que comprar una réplica del joystick CX40 de la consola original.


En el lado izquierdo de la parte trasera se puede ver el conector RCA hembra para conectar la consola a un televisor usando un cable con un conector RCA macho en un extremo y un conector Belling Lee macho en el otro para el televisor. A la derecha está el conector Jack hembra para conectar el adaptador de corriente de 9 V sin regular.


Por la parte de abajo tiene varias rejillas de ventilación y seis tornillos que sujetan la parte superior e inferior de la carcasa y es necesario quitar para abrir la consola.

Hay que tener mucho cuidado al abrir la consola porque el pulsador de selección de juego está unido a la placa base mediante dos cables soldados. Lo mejor es levantar la parte de abajo de la carcasa y a continuación dar la vuelta a la placa base con cuidado de no tirar de los cables.


El interruptor de encendido/apagado mueve un interruptor soldado a la placa y los dos pulsadores de la derecha tienen unas piezas de plástico con tres puntas que presionan unos contactos situados en la placa base. Arriba a la derecha de la placa está el led rojo que da luz al indicador de encendido/apagado.



Una vez girada la placa base podremos ver todos sus componentes, muy similares a los de la consola original pero con algunas diferencias.

La consola dispone de los tres circuitos integrados básicos de las consolas Atari 2600. Tiene un procesador 6507 pero no se si es original o un clon ya que no tiene ninguna inscripción del fabricante. También cuenta con un chip RIOT 6532 (RAM Input/Output Timer) sin inscripciones de fabricante. El chip TIA (Television Interface Adapter) es un KSC131-6526P. A la izquierda del chip RIOT se encuentra el resonador de 3,546894 MHz utilizado por el chip TIA para su frecuencia de funcionamiento. El chip TIA también divide esa frecuencia entre tres para crear la frecuencia de 1,182298 MHz usada por el procesador. Arriba del chip RIOT se puede ver la ranura de cartuchos.



Junto al chip TIA hay tres chips de memoria ROM para almacenar los juegos incluidos. Los dos de arriba son chips 23C512 de 64 KiB y el de abajo a la derecha es un chip 23C040 de 512 KiB, en total 640 KiB. El procesador tiene un bus de datos de 8 bits y un bus de direcciones de solo 13 bits, lo que le permite acceder a 213 = 8192 direcciones de 8 bits = 8 KiB. Además, según el diseño de la consola Atari 2600, solo se utilizan 12 bits para los cartuchos, permitiendo juegos de hasta 4 KiB (212 = 4096 bytes = 4 KiB).

Los chips de memoria ROM tienen mucha más capacidad de los 4 KiB a los que puede acceder directamente la consola. Los de 64 KiB tienen un bus de direcciones de 16 bits y el de 512 KiB de 19 bits, 4 y 7 bits más de lo que permite la consola. Además los tres chips se conectan al bus de datos del procesador, por lo que es necesario un sistema de control que active solo uno de ellos a la vez y le comunique los 4 o 7 bits adicionales de la dirección. Este sistema de control está conectado al bus de datos del procesador y lo forman cinco chips con puertas lógicas situados arriba a la derecha de la placa. Cuatro de estos chips son de la serie 7400.


Para hacer accesibles los juegos al procesador se utiliza un sistema de "bank switching". Los juegos originalmente se distribuían en cartuchos de 2 o 4 KiB, por lo que se divide la memoria ROM en espacios de 2 o 4 KiB. Cada espacio es ocupado por uno de los 191 juegos o el programa de selección según su tamaño. Para realizar cálculos contaremos el programa de selección como un juego mas, sumando 192 juegos.

La memoria ROM solo permitiría 160 juegos de 4 KiB (640 / 4 = 160), asi que algunos juegos deben ser de 2 KiB. Dando por hecho que se utiliza todo el espacio de la memoria podemos calcular que 64 juegos son de 2 KiB y 128 de 4 KiB. Si no se ocupa toda la memoria, por cada juego de 4 KiB se puede almacenar un juego de 2 KiB y dejar los otros 2 KiB libres manteniendo el mismo número de juegos.

x + y = 192
2x + 4y = 640

-------------------------

y = 192 - x
2x + 4 (192 - x) = 640
2x + 768 - 4x = 640
2x - 4x = 640 - 768
-2x = -128
2x = 128
x = 128 / 2
x = 64
y = 192 - 64
y = 128

-------------------------

x = 64
y = 128

Cuando arranca la consola se ejecuta el programa de selección de juego. Al seleccionarse un juego el programa utiliza el sistema de control de la memoria ROM para activar el chip en el que se encuentra el juego y seleccionar la dirección donde comienzan los 2 o 4 KiB del espacio del juego. De esta forma el juego ya se encuentra en el espacio de memoria del procesador y puede ser ejecutado normalmente como si estuviera en un cartucho. Apretando el pulsador "Game Select" de la consola se termina el juego y se vuelve a ejecutar el programa de selección de juego.

Las señales de luminancia, crominancia y sincronismo del chip TIA se mezclan para crear la señal de vídeo compuesto. A diferencia de la consola original no se utiliza un chip Hex Buffer 4050. Para que el vídeo y audio de la consola se puedan ver en un televisor son modulados con las frecuencias de un canal de televisión. Arriba a la izquierda de la placa se encuentra el circuito que modula la señal de vídeo. Ajustando el inductor de color azul se puede modificar la frecuencia de la señal de vídeo si hay problemas para verla en el televisor.

Más abajo está el circuito encargado de modular la señal de audio. También tiene un inductor regulable (componente con forma de cubo) para modificar la frecuencia del audio si hay problemas de sintonización en el televisor. A la derecha hay un resonador de 4,433618 MHz para la frecuencia de la subportadora de crominancia del sistema PAL.

Abajo de la placa se encuentran los conectores e interruptores de la parte de atrás de la consola. En el lado izquierdo podemos ver el conector RCA por donde sale el canal de televisión con las señales moduladas de vídeo y audio. A continuación está el conector para el joystick de la derecha y el interruptor de dificultad para el jugador de ese joystick. A la derecha del interruptor se encuentra el potenciómetro que permite regular el color de la imagen.


Abajo a la derecha de la placa está el conector para el joystick de la izquierda, su interruptor de dificultad y el conector Jack hembra para conectar el adaptador de corriente.

En el borde derecho de la placa se puede ver un disipador de calor al que está atornillado el regulador de voltaje 7805 que toma los 9 V sin regular del adaptador de corriente y los convierte en 5 V regulados para alimentar los componentes de la consola.

En general la consola es muy similar al original, la mayor diferencia es la memoria ROM y su sistema de control. En la siguiente foto se muestra la placa con indicaciones de los componentes más importantes.

Para profundizar más en la estructura de las consolas Atari 2600 se puede leer el artículo que escribí sobre la Atari 2600 modelo Woody Light Sixer.

20 comentarios:

  1. Buenisimo el articulo! Donde podria adquirir una asi? Tuve una de niño con 128 juegos y quisera recupersrla. Excelente blog!!

    ResponderEliminar
    Respuestas
    1. Hola, gracias por tu comentario, me alegra que te guste el blog.

      La consola del artículo es mi consola de finales de los 1980 o principios de los 1990. Es posible encontrar este tipo de clones o originales de segunda mano en Ebay. Al tener muchos años pueden fallar pronto y necesitar reparación. También es posible que donde vivas haya alguna tienda "retro" donde la vendan y te puedan dar algún tiempo de garantía y repararla cuando falle.

      Hace unos años Atari comercializó las consolas Flashback https://es.wikipedia.org/wiki/Atari_Flashback Ahora las produce AtGames con licencia de Atari.

      Si lo que te interesa es volver a jugar a los juegos hay múltiples emuladores para todos los sistemas operativos. Yo utilizo Stella https://stella-emu.github.io/ en Linux pero también funciona en otros sistemas operativos.

      Eliminar
    2. Hola, que tal?.... ya probe stella y pude jugar algunos, pero me trajo tantos recuerdos que quisiera tener la consola. En mi caso pedi un nintendo, pero me trajeron un atari con 128 integrados + el casette de mario bros. Al principio estaba algo decepcionado pero la verdad que los años de diversion q me dio esa consola clon de atari la hicieron inolvidable para mi.... un par de años despues tuve la nintendo, pero para mi esta siempre sera la mejor, que juegos tan entretenidos tenia! Voy a ver si me hago de la flashback como me sugeriste tu.... muchas gracias!!

      Eliminar
  2. Excelente artículo, muy detallado!. Tengo la misma consola, pero con 160 juegos. Lo único es que no tengo el listado de los 160 juegos y se complica tener que ir juego por juego hasta encontrar el que quiero. Tú tendrás el.listadp de los juegos?. Muchas gracias

    ResponderEliminar
  3. Lo siento, no tengo el listado de los juegos. En internet encontré estos de dos ROMs con 160 juegos. Puede que coincidan con los de tu consola.

    http://www.atarimania.com/game-atari-2600-vcs-160-in-1-game_12588.html

    http://www.atarimania.com/game-atari-2600-vcs-160-in-1-game_12588.html

    Si nos dices el nombre de los primeros juegos quizás podamos encontrar una lista que los tenga y sea la de tu consola.

    ResponderEliminar
    Respuestas
    1. Por error puse dos veces la misma lista. Esta es la otra.

      http://www.atarimania.com/game-atari-2600-vcs-160-in-1_27425.html

      Eliminar
  4. Muchísimas gracias. Lo voy a corroborar y te confirmo. Saludos. Daniel

    ResponderEliminar
  5. Hola Alejandro. Verifique la lista de juegos y no es la misma, gracias por la molestia. Te comento que lamentablemente tratando de ajustar la señal de video desde el inductor que mencionas en la explicación, el.mismo se ha roto y no funciona más. Lo peor de todo es que no creo que lo consiga. Así que lamentablemente quedará inutilizado la consola. Una pena

    ResponderEliminar
    Respuestas
    1. El inductor se puede cambiar, es fácil encontrar un repuesto. Cualquiera con conocimientos de soldadura lo puede cambiar.

      También es posible sacar la señal de vídeo compuesto. Esta señal es más fácil que se vea bien en televisores nuevos. Yo lo hice con un ZX Spectrum 48K. En la Atari 2600 es similar, se pueden encontrar las instrucciones en internet.

      https://www.cuadernoinformatica.com/2017/07/sinclair-zx-spectrum-48k-video-compuesto.html

      Eliminar
  6. Alejandro muchas gracias por tu respuesta. Ya voy a chequear bien el enlace que me has brindado. Con respecto al inductor, me referí mal, es el inductor en forma de cubo del audio al que se le rompió el núcleo de ferrite al querer ajustar. Parece que el tipo de inductor es un YT-2.5UH. Que no sé si lo conseguiré. Desde ya muchas gracias. Saludos
    Daniel

    ResponderEliminar
    Respuestas
    1. Repasando la electrónica de la consola me he dado cuenta que había confundido el inductor del audio con el del vídeo. Ya modifiqué el texto y las indicaciones de la imagen.

      No debería ser difícil encontrar un inductor de las mismas características.

      Si el televisor no es capaz de sintonizar el canal de la consola la única opción es sacar las señales de vídeo compuesto y audio analógico desde algún punto anterior a los circuitos moduladores del vídeo y audio que se encuentran a la izquierda de la placa.

      Eliminar
    2. Gracias por tu respuesta. La voy a tener en cuenta. Saludos

      Eliminar
  7. Hola, tengo una consola Kingsway que al arrrancar lo hace siempre en el mismo juego, no en la pantalla de inicio. La placa es ligeramente distinta que la que tienes tu en este artículo. ¿Sabrías indicarme por donde puede andar el fallo? ¿Hay alguna manera de enviarte fotos de la placa para que te hagas una idea?. Muchas gracias.

    ResponderEliminar
    Respuestas
    1. Parece un problema de direccionamiento de memoria. En lugar de apuntar a la dirección de memoria del programa de selección de juegos apunta a la memoria de un juego.

      Como explico en el artículo hay una serie de chips de la serie 7400 con puertas lógicas que se utilizan para hacer accesible al procesador los 4 KiB del programa o juego seleccionado. Quizás alguno de esos chips esté mal. Puede que en tu consola esa función la hagan otros chips. También puede estar mal el bus de direcciones del procesador.

      Lo primero que habría que mirar es la dirección de memoria que tiene el procesador en su bus de direcciones y que puertas lógicas de los chips 7400 activa con su bus de datos. Eso nos da la dirección completa de memoria a la que está accediendo el procesador. Luego habría que mirar si las puertas de los chips 74xx están funcionando correctamente. Si alguno de estos chips se calienta en exceso seguramente esté roto.

      Para subir fotos puedes utilizar algún servicio de compartir fotos como flickr.com.

      Eliminar
    2. También puede estar mal alguna resistencia, condensador, diodo o transistor conectados a esos chips. Mira a ver si algún componente tiene alguna mancha que pueda indicar que se ha fundido.

      Eliminar
    3. ¿El juego que se ejecuta funciona bien? ¿Si le das al botón "Game Select" vuelve al mismo juego?

      Eliminar
  8. Hola Alejandro. Muchas gracias por contestar, te subo un par de fotos y un video donde te cuento lo que le pasa
    https://www.youtube.com/watch?v=FmNhKj1WQck
    [url=https://ibb.co/vBrtbdZ][img]https://i.ibb.co/vBrtbdZ/atari1.jpg[/img][/url] [url=https://ibb.co/jZWfc4d][img]https://i.ibb.co/jZWfc4d/atari2.jpg[/img][/url]

    ResponderEliminar
  9. https://ibb.co/vBrtbdZ
    https://ibb.co/jZWfc4d

    ResponderEliminar
    Respuestas
    1. Los juegos se encuentran en una memoria ROM SR-23C4000 de 512 KiB con un bus de direcciones de 19 bits. El procesador 6507 solo utiliza 12 bits de su bus de direcciones. Para fijar los otros 7 bits, hasta 19 bits de la ROM, necesita utilizar otros circuitos. En el caso de tu consola parece que son los chips MC14024BCP y GD4069UB. Alguno de estos chips o las resistencias, condensadores y diodos que hay junto a ellos debe estar mal y no le indican a la memoria ROM la dirección adecuada. También podría ser que fallara la memoria ROM y no leyera bien la dirección que se le indica o no pudiera acceder a ella. Y puede haber algún corte en alguna pista.

      Habría que comprobar la conexión de esos chips con el procesador y la memoria ROM. Y comprobar que esos chips funcionan correctamente. También comprobar la conexión de los cables blanco y negro del botón "GAME SELECT". Como el juego de la ROM y el del cartucho se ejecutan bien parece que el procesador está bien.

      ¿Alguno de los chips se calienta demasiado? Es un indicativo fácil de comprobar de que puedan fallar. Prueba a desconectar el joystick por si estuviera interfiriendo de alguna forma.

      Eliminar
  10. Gracias Alejandro, comprobaré primer los pasivos y discretos y si no veo nada mal, levantaré el 14024 y el 4069 y los cambiaré. Si con esto no se soluciona, probaré a poner una ROM de otra consola que tengo por ahí. Antes mediré continuidades en las pistas. No he notado que niguno se caliente en exceso.
    Ya te contaré si consigo algo...

    ResponderEliminar