Intellivision controllers - retronicdesign/USBJoystickAdapter_v3.2 GitHub Wiki

image

Pinout of Intellivision controller (Mattel original)

image

PIN NAME  
1 image Row1  
2 image Disk2/Row2  
3 image Row3  
4 image Row4  
5 image Disk1/Ground  
6 image Column1  
7 image Column2  
8 image Column3  
9 image Disc Button  

Pinout of Intellivision Flashback controller

image

PIN FUNCTION  
1 image Row4  
2 image Column1  
3 image Disk1/Ground  
4 image Disk2/Row2  
5 image Disc Button
6 image Column3  
7 image Column2  
8 image Row3  
9 image Row1  

Principle of operation

This controller is using a simple combinational Gray code encoding for its inputs. This shrinks needed wires to 8(+1) for a total of 31 input combination. See table below. This is a cleaver way of building a simple IC free controller while limiting number of wires.

Note that the hardware also lend unofficial key combinations that can be decoded with specifically designed emulators. JzIntv is one of them.

Pin 5 is the ground and the rest of the pins are readed through the decoding scheme. Note that input pins has to be weak pulled-up to vcc. Output logic is negative.

Intellivision 1 and Intellivision 2 controllers uses the same pinout/ reading scheme.

Intellivision controller decoding table

  • Unlikely to other controllers/ joysticks, this controller has 16 directions instead of 8. Top Gray code of the table illustrate thoses combinations (D1 to D16).
  • Second "K" section are the keyboard buttons
  • Third "S" section are the side buttons

image image

Internal picture of the controller

This controller construction is relatively simple. It's built of two sheets of mylar PCB with an isolating sheet of plastic in between. Whenever a button is pressed, it makes a contact between two points on each sheet of mylar, closing a circuit that can be decoded.

image