Joystick for MAME and other things

This is the place where we write about ideas and projects made with our products

Moderator: Guido Körber

Post Reply
Guido Körber
Site Admin
Posts: 2856
Joined: Tue Nov 25, 2003 10:25 pm
Location: Germany/Berlin
Contact:

Joystick for MAME and other things

Post by Guido Körber »

If you are using the MAME (1) emulator to revive classic games you likely are looking for ways to use controls that are closer to the old arcade machines or game consoles. JoyWarrior and KeyWarrior are easy options for this.

Games that were originally played with buttons or digital joysticks are controlled via the keyboard on MAME. This gives a limited retro feeling as far as the control is concerned. Much more attractive would be to use the large sturdy machine buttons found on an arcade machine or joysticks as used on vintage game consoles.

The electro mechanical parts for this can be easily located in electronic stores. Some old joysticks may be still around. So the major question is how to connect them to the computer via USB.

To build a joystick that generates keyboard input it is a good option to use a KeyWarrior24-8-MOD. Only a USB cable has to be connected to the module and it has to be wired to the switches of the joystick.

For the direction controls MAME uses the arrow keys. The joystick switches have to the connected to the KeyWarrior24-8 X and Y lines according to the matrix layout as found in the data sheet (2).

The connections are:
Up arrow - X1 / Y5
Left arrow - X0 / Y6
Down arrow - X1 / Y6
Right arrow - X2 / Y6
Ctrl left - X6 / Y6 (fire button)

An old joystick that was designed for Atari consoles and C64 retrofitted with a KeyWarrior24-8-MOD:
Joystick.jpg
Joystick.jpg (1.4 MiB) Viewed 31866 times
One trace on the PCB of the joystick had to be cut since all four direction switches had one end connected together. For the modification only three of the switches go to Y6, one has to go to Y6.

(1) http://www.mame.net

(2) http://www.codemercs.com/downloads/keyw ... asheet.pdf
Post Reply