TIAdigitizer (for Atari 2600) - c0pperdragon/LumaCode GitHub Wiki

The TIAdigitizer is a small add-on board that can be installed into an Atari 2600 console to produce a Lumacode signal. This signal contains all the information of the video screen in a semi-digital form that can be losslessly processed. In conjunction with an RGBtoHDMI upscaler or some other compatible device, this will create a pixel-perfect display.

pitfall

Mod kit contents

The mod kit comes with a 2-lead wire and an RCA jack for lumacode output that can be mounted to the case. Everything is designed for a solder-less install. You will need to drill a hole in the case, though. TIAdigitizer

Installation

After taking apart the Atari 2600 to get to the TIA (the chip responsible to generate the graphics), you need to take the chip from the socket. Be careful to not bend any pins. Then insert the mod board (check orientation!) and put the TIA chip back on top. installation

Then find a way to bring the attached cable to a convenient spot on the case. This may be a bit fiddly when the main board is enclosed in a massive RF shielding, but there are always some slits to bring the cable through. For ease of installation, the cable can be temporarily detached from the RCA jack so you can fit it into a hole in the case without having to solder anything.

Audio

For a complete solution you also need to take care of the audio signal which is originally transmitted together with the video signal through the RF cable. This is not part of this mod, as there are many resources available on how to replace the RF output with composite video & audio. Providing composite video as a fallback solution is a good idea anyway, in my opinion.

ports In my installation, the ports are colored as follows:

  • Yellow = Composite Video
  • Red = Audio
  • Black = LumaCode

PAL or NTSC

Originally the Atari 2600 can play cartridges that are intended for a different TV standard then what the actual machine is built for. This did result in a non-standard output video signal that a TV may or may not accept. In any case the colors will look completely wrong.

The TIAdigitizer will work for any combination of PAL/NTSC machines and cartridges. The LumaCode signal only contains the logical color numbers, so the actual coloring is done by the upscaler (for example the RGBtoHDMI). By detecting the presence of a 50Hz or 60Hz signal, the upcaler can detect which type of game cartridge is running and can show the colors in the way it was intended by the game developer.

Details of color encoding

The Atari 2600 can show 128 different colors (16 hues of 8 luminances). This would need 7 bits per pixel to be transfered. But because lumacode will always transfer a multiple of 2 bits (each sample point can have 4 different values), one bit would be wasted. Because the internal data bus aof the Atari allows setting 8 bits into each color register (even if the TIA itself can only use 7 of these), the TIAdigitizer uses a full range of 8 bits for each pixel. This might allow interesting expansions of the color space in the future, but until forther notice, all upscalers should just handle the least significant bit of being always 0. Overall encoding is straight-forward: 4 consecutive samples are combined to an 8-bit value (higher bits first) that directly represents the Atari color index.