This file was written by Greg Bendokus and is provided here for your information. We can accept no liability for damage caused to your PC from errors or omissions. If you find any errors, please let us know. It was written by an American so references of Radio shack and 120V can be substituted for Maplin and 240V.
This project will allow you to connect an arcade-style switch joystick to your PC's gameport through the use of the guts from a PC gamepad. Yes, you read correctly. To be able to complete this project, you must be in possession of the following:
1. An arcade joystick, preferably the whole console with sticks and buttons, right from an arcade machine. I used one from a Double Dribble machine because it has 2 nice sticks, each with 4 fire buttons. (I haven't tried an arcade stick that uses microswitches - if you do, let me know how you make out.)
2. Some basic knowledge of electronics, i.e. how to follow circuit board traces and the difference between hot and ground. 3. One (or 2) PC gamepads. What kind to use it up to you - the $5 ones from Babbage's work as well as a Gravis. Don't get too fancy because you're going to junk everything except the circuit board inside (hereafter referred to as the circuit card). 4. A spool of wire, available from Radio Shack, which will be used to connect the leaf switches to the gamepad circuit card. Don't use anything too thick, or you will have problems with your wire overlapping traces on the circuit card, causing all kinds of headaches. You will also need a short piece of this wire with both ends stripped, to use as a test lead. 5. A soldering iron. A good pencil iron from the Shack will do, just don't use one of those industrial 600 watt guns and you should be fine. Since we'll be soldering directly to the circuit card, don't use solder with a lot of rosin in it.
STEP 1 - Getting Ready
Take your gamepad, remove all the screws, and open it up. Throw away everything except the small circuit card, attached to which is the cable that plugs into your PC. If you have a common gamepad, you should see 2 groups of 4 round traces on the circuit card. 4 of these are for the fire buttons, the other 4 are for the compass directions. Determine which ones are which. Plug this shell of a gamepad into your PC and turn it on. What you need to do now is to fire up any game program on your PC that has a joystick calibration function in it. The choice is yours, but make sure the program shows you the actual position of the joystick on the screen. MsPacPC is a good example. If you have Windows 95, you can use the joystick setup applet in the control panel, which is my preferred method. Be sure you have the joystick type set to "4 button gamepad" if you do this. NOTE: I've done all of my wiring and soldering with the gamepad plugged in my PC while it was turned on. I can't be responsible for any damage caused if YOU do this, but unless you wire up a 120V AC line to the gamepad, I can't imagine that anything could get fried. Doing it this way also immediately allows to check your work. Not recommend.
STEP 2 - Finding the correct traces.
Each round trace on the gamepad card has 2 circuit traces leading to it, usually one on each side. By connecting a single piece of wire across both of these traces, you "close the circuit" for that switch and the gamepad circuitry thinks you've just pressed a direction (or a fire button). What you want to do is take your test wire and manually close these switches and see what direction is registered in your calibration program. The switches on PC gamepads are usually arranged this way:
Take a piece of paper and jot down your findings. Of course, if your arcade joystick setup is using only 2 fire buttons, you don't need to worry about buttons 3 and 4. If you are using 2 joysticks (you will need a joystick "Y" cable, available at the Shack), be aware that your PC is limited to 2 fire buttons each when using 2 sticks.
STEP 3 - Time to do some soldering.
Well, we're ready to solder. Look at one of the leaf switches on your arcade stick. Each one should have 2 solder blades on it, even though some have 3, like Wizard of Wor sticks. All you do now is simply solder each blade to opposite ends of the traces for that direction on the game card. Let's do the left direction first. Move your joystick left and note what leaf switches close; it won't always be the ones you would think! Now, solder a wire, about 6 inches long, to one of the blades on the back of the leaf switch. Repeat for the other blade. Now take these 2 wires and solder them, one to each side, to the left gamepad direction trace on the gamepad, which you've determined earlier with your test lead. Move the joystick left, and with any kind of luck, the screen should say that you're moving the joystick to the left. If this works, congratulate yourself and wire up the rest of the directions and any fire buttons you're using. Repeat the whole process with another gamepad card if you have second joystick. Some of you may note that I didn't mention you could tie all the grounds together on the leaf switches and just run one wire to the low side of all the gamepad's switches. I seem to get better results when I DON'T do this, i.e. the stick calibrates easier with my software. It is also a pain in the ass to find a common ground on a gamepad - it's just easier to make each connection a separate one. Feel free to experiment, though...
STEP 4 - Finishing up.
That wasn't so bad, huh? Hopefully, when you got your joystick, you also got the wooden enclosure it came in. If you did, you can use a screw and attach the circuit card right to the wood next to the joystick assembly. Most gamepad circuit cards have holes in them which make this easy to do. Just make sure none of your wires interfere with the leaf switch blades. You can then take a piece of plywood, cut it to fit the back of the wooden console, and nail it on, making a box. Use a staple gun to fasten the PC cord(s) to the wood so your handiwork isn't ripped to shreds if the cord is yanked. You should now have a completed box with one (or two) cords coming out of the back, ready to plug into your PC. (If you didn't get the enclosure, well, build something to hold the stick. You're on your own for the fire buttons...) Now, plug the thing into your PC and fire it up! I recommend trying Starforce to really give the thing a good work-out. If you've wired up 2 sticks, the logical choice to try first would be Robotron (worth building for this game alone). Be sure to calibrate the program(s) for your new stick(s) first! If all goes well, you should be quite impressed with your work. It should also become quite a apparent what youve been missing by trying to play these emulators with a gamepad. :-)
1. You may need to adjust the gaps of your leaf switches. Ifyou find it hard to move diagonally, check each individual direction and adjust the switches for the best feel. There is a very fine line when setting leaf switches - either they don't touch at all or they are too sensitive. If you have a leaf switch blade adjustment tool (looks like a knitting needle with a gap on the end), this will be a much easier process. I have no idea where to get one of these tools - arcade machine repairmen usually have them.
2. It may be hard to accurately calibrate the joystick in some
programs. The only real problem I've had is with Mike Cuddy's Gyruss and Time
Pilot emulators. The on-screen joystick cursor just goes nuts when I try to
calibrate the stick. I resorted to plugging in a normal gamepad, calibrating the
program with that, and then plugging the arcade stick back in. No problem. Most
other programs, like Sparcade and even Doom(!), calibrate quite easily and work
like a champ. MAME even calibrates automatically, which is really nice.
3. You may be tempted to try to use an Atari joystick instead of an arcade stick. Don't bother. The 'bubble' switches on these joystick's circuit cards have such a weak electrical connection that the end result will always seem to be erratic, with one direction usually refusing to work at all. Experimenting with this is where the whole project started, however. 4. I've tried my setup on several Soundblaster cards, including one of those $30 clone cards, with no problems at all. I have NOT tried it with a GUS, or anything else for that matter. I can't imagine why one sound card's gameport would behave differently than any other, but in world of computer hardware, anything's possible.
Well, there you have it. If you run into any problems or just want to tell me how you like your new controller, please Email me at: greg.bendokus AT gmail.com. Also, be aware that this is a very early version of this document, the bulk of which being written at 2 AM. If you feel something could be explained better or come up with an easier way to do something you've read here, please let me know. I am looking for ANY suggestions that would improve this document, so please Email me at the above address. You are free to upload this document to whoever or wherever you like, provided you do not modify it in any way. I will not be held liable for any misuse of the information contained herein. What this basically means is that I am absolved of all blame if you blow up your PC.
I'd like to thank all of the arcade emulator authors for their hard work, allowing me to re-live a prized part of my childhood. Thanks also to Phil for reading my first draft of this document. Your web page will definitely be missed! Finally, special thanks must go to my good friend Scott Stilphen, arcade machine guru that he is, who patiently endured my temper tantrums when we first tried to wire up Atari sticks to a Gravis pad. Without him, this project would have never happened.
19th March. 1997
Return to Digital Press Home