This project details the creation of a game controller floor mat that can be used in place of a four switch joy stick. The floor mat controller lets the user control the game play by stepping on switches to control the direction that would otherwise be determined by a joystick.
While the instructions presented here focus on the creation of a mat for use with a classic Atari 2600 game system, the approach described here could be applied to other game systems, depending on the construction of the joystick or other controllers that they use.
Step 1: Operation of a Common Four Switch Joystick
Internally, all the switches share one common connection, which is usually the PCB ground of the game system. The other terminal of each switch is a separate connection in the wiring of the joystick. Internal to the game system console, the input lines from the joystick connect via a resistor to a positive voltage. The voltage on each of the lines is at a logic high state when the switch is not pressed. When it is pressed, the line is shorted to ground and reads as a logic low. This level is input to a microprocessor or other logic in the game system console, which then responds accordingly.
The four switches correspond to the up, down, left, and right directions. To move in a diagonal fashion, two switches are closed. For example, to move diagonally up and to the right, the up and right switches are closed. The wiring of the joystick switches are shown in the diagram.
This simple interface can also be found in other game systems. The connector used on the joysticks for the Atari 2600 system are 9 pin female D-sub connectors, as shown in the picture. If any of the circuits described are to be used with another game system or application, the user will need to determine the proper connector pin out for that system.
The pinout for the D-sub connector on the Atari 2600 joystick is:
8=COMMON (game system ground)
The red “fire” button is also a momentary switch to ground. The “fire” button is not controlled by the floor mat, as that would be too cumbersome for game play. The fire button is instead controlled by a push button switch held by the user. I assembled a “wand” with a pushbutton that the user can hold for the fire button. In this setup, the fire button is just directly connected to pin 6 and pin 8 of the 9 pin D-sub connector.