How to build a Nintendo arcade

FeaturedContest Winner

Step 2: Hack the keyboard to use as an interface

Now let's work on the interface for the joystick/buttons. This is how the controls will communicate with the PC.

You can buy encoders pre-made and save a lot of time, or you can do it on the cheap and spend a lot of time soldering. I prefer to do as much as possible myself, without buying special parts.

Take apart the keyboard and inside you will find a thin transparent piece of plastic film. It's actually two pieces that you must separate. After doing so, take a sharpie and mark the contacts that correspond to the keys you want to use.

I used the following keys: tab, esc, ctrl, alt, R, F4, enter, num lock, and the numbers 2,4,5,6,8, all from the num pad, that is very important. The numbers across the top of the keyboard will not work. This is because I used 2,4,6, and 8 as the up, down, left and right controllers for the emulator. By turning on sticky keys, these same numbers control the mouse cursor. The num locks enables/disables sticky keys. The number 5 key is the left mouse click. If you are using an 8-way joystick, you can also use the numbers 7,9,1, and 3 for the respective diagonals. I chose to keep it simple with a 4-way joystick since it was only going to emulate and old school NES.

Inside the emulator, you can choose which keyboard keys control what. This is what I used:

Main buttons:

UP-------------------num pad 8
DOWN--------------num pad 2
LEFT----------------num pad 4
RIGHT--------------num pad 6
B button------------ctrl
A button------------alt

Secondary buttons:

Mouse Mode----------num lock
Hide/show menu----esc
Mouse click-----------num pad 5

Now that you have keys marked on the films, we need to trace the contacts out and see which pin corresponds to which contact. each film will have its own set of pins. One set will be grounds and the others will be opens. The film that is the grounds will have the least amount of pins. My grounding film had 8 pins and the open film had 20 pins. For example: Take the R key on the ground sheet and using a multimeter in continuity mode, find out which pin of the 8 pins leads to the contact for the letter R. In my case it was pin 5. Doing the same thing for the letter R on the open field shows the R key corresponds to pin 11. Now we know that if we make those two pins touch each other, that will activate the letter R. That is how a keyboard works. Repeat this for every keyboard key you are going to use, making a list of this information as you go.

solder wires between the contact pins you need and a prototyping circuit board from radioshack. A nice tip is once you have your solder point done, smother the entire thing in hot glue so no wire accidentally get pulled off.

Once the interface is complete, you will wire the buttons to the prototyping boards.
Remove these adsRemove these ads by Signing Up
x-muts-x2 years ago
But if you're using an LCD or Plasma,
You won't be able to play Duck Hunt...
Which is the best game ever...
And you can't put an old screen in there. They're huge..
Im sure the screen doesn't matter if its LCD/Plasma.
Is the diet coke have to come in later on or is it used for something?

Ples explain
it is for all the energy. caffiene
jackman273 years ago
i cant get the sticky key trick to work, any help?
Drandula3 years ago
And this have been collecting dust for long time, 'cause I am too lazy to wire keyboard or install computer inside.
trete3 years ago
whats the paper you have? And how exactly would connect the wires to the pins and all?
mrsocky4 years ago
where did you get your software to open the games and was there any aditional programming?i realy would like to do this but thats the only problem.
russm313 (author)  mrsocky4 years ago
I wrote a VB code to act as a menu for opening the games, however, I have now discovered that it was not the best way to do so.  You can download a "front end" for emulators.  A good one I found is AtomicFE , you just point it at your list of games and it opens them for you, letting you choose which game you want.
where did you get your games?
could you please post a link to the matrics... or anything i need about this keyboard since i have the same exact one to cut time... great instrucable by the way!
habzbah4 years ago
 where can i buy the nes controller/keyboard thing pre-built?
turtleshane4 years ago
 i really want to do this but im confused and have some questions haha for starters where did you get the keyboard controller
russm313 (author)  turtleshane4 years ago
I built my controller from a USB keyboard.  However, you can buy one premade.  Just google ipac
alrite so i googled ipac and found the controller but im still not getting what exactly is goin on at that part.  The ipac controller and the keyboard controller are different.
nevermind did some research and now im starting to get all of this, but if i use the ipac then how do i program buttons such as select, mouse mode, exit, reset, mouse click, and hide/show menu?
 How would you make it 2 player?
migueIII4 years ago
i need!help please! can you send me a step by step i have the key board apart but i just dont understand
Drandula4 years ago
I had ordered joysticks and buttons, but I dont understand this. Please, could you do step-to-step? So I could check what I must do before I can even connect them.
Dont need anymore, I finally understood (couple days ago really). Ordered two joysticks for two player :)
Samdrag14 years ago
can you send me a step by step instructions to my email?
devsfan18304 years ago
Am I correct in assuming that one lead of the multimeter is on the key location and the other is run along the pins of the sheet until u make a connection

Get More Out of Instructables

Already have an Account?


PDF Downloads
As a Pro member, you will gain access to download any Instructable in the PDF format. You also have the ability to customize your PDF download.

Upgrade to Pro today!