Building a new MAME arcade machine
There has been a little itch in the back of my mind for the last several months. Sort of like a tickle that’s been getting bigger and bigger. I’ve built a few arcade cabinets in the past, and just last year sold the machine I built for myself. I wouldn’t say that I regret that decision – I don’t. There were a few good reasons that I wanted to get rid of it. But, as time goes on I remember how much I enjoy the building of the machine, more so than even owning a completed one.
So I started the process of building a new one. This time around I am taking more pictures and will use this blog as a guide for others to build there own arcade machines too. The look and flavour will be different for sure, but you can use this blog as a guideline for your own project build.
First, the planning. The machines I’ve built in the past were based on the Defender style cabinet. This time I wanted to try something different. My all time favourite arcade game is Galaga, and it was housed in a Pac Man style cabinet. So, for a challenge, I decided to use that style for my design.
I also wanted to make it a little bit smaller too. One of the big reasons that I got rid of my last machine was because it was just so big. With this build, I want to make the cabinet smaller. To accomplish this I decided to use an LCD monitor and not go with a cheaper, or traditional CRT tube monitor. Those things add so much bulk and weight to the machine, it becomes almost impossible to move around if need be.
So, with the basic plans drawn out, I made my first trip to Home Depot for this project! I am trying to keep the weight down as much as possible on this cabinet, so I decided to use plywood for the construction material.
Building the controller board
Rubber Flexible Keyboard
Building an arcade cabinet is challenging enough, but I also wanted to build my own controller board. This is the electronic controller that interfaces the computer with the arcade buttons and joystick. There are a few commercially available boards available, but I wanted to save a couple bucks and build my own. I was also looking forward to the challenge of doing it.
The method is pretty straight forward – hack a keyboard. Since MAME uses a computer keyboard to control everything, all I needed to do was rip some poor unsuspecting keyboard asunder, and use the small electronic board inside to connect up to my arcade buttons. This is actually slightly challenging, and requires a lot of patients. I went through a few keyboards before I found one that would be easy enough to work with my system.
Keyboard with traces coloured.
If you’ve never seen the inside of a computer keyboard, you may be surprised to see that there is not a lot there. It’s basically just two thin sheets of clear plastic with wire tracings that meet up at the position of every key of the keyboard. All these tracings then lead to a small control board, in most cases, about one inch by four inches. The tracings form a complex matrix that in turn allows the electronics to know which two tracings are connecting a circuit. It’s pretty amazing looking, and I’m sure that some poor guy had one heck of a time figuring this out for the first time.
What I then needed to do was map out the tracings to the specific keys that I wanted to use on my arcade machine. There are some standard keys that you usually use with MAME games. For example, the ’1′ key is the player one start button. The ’5′ key is the player one insert coin button. I needed to decide which keys I needed to use, and map them out.
At this point in the design process I really hadn’t made a final decision on the layout of my controller, but I wanted to get started in the mapping process. So I decided to just map everything while I was at it, and make my final decision later.
There are a couple of ways to do this mapping. I could visually follow each path, and not were it intersects with other paths, and then figure out what keyboard key it was. I could use a multi-meter and point and note each keys location. In the end I decided to be a little more creative, and devised a more visual method for finding the key locations on the keyboard.
Using my scanner I scanned in each side of the plastic film, and popped them into photoshop. I then used the fill bucket to fill each tracing with a different colour. Then all I had to do was look at where each key location was and note the two colours. In this way I was able to map all the keyboard key colours, and which pin was which colour.
I numbered one bank of pins on the controller board, and lettered each pin on the other bank. I then made up a sheet with key colours, and was able to translate them into pins. In this manner, pin E-18 could be the ‘ESCAPE’ key location. Which is another important MAME key.
Once I had the keys mapped, I then had to figure out exactly which keys to use. So I made my final decision on what my controller would look like, and which keys I was going to use. I mounted the keyboard controller to a small board, and began wiring out the keys I needed.
Mapped Controller Board
In the end, it took me about 2 hours to complete the entire task. The keyboard was $10, and the wire connectors were about $4. So I built my controller for about $14, saving about $46 and giving me a feeling of accomplishment to boot.
Assembling the complete Controller Board
Now that my controller board electronics are done, I need to build the controller board. For the controls, I am using X-Arcade parts. These are actually left over buttons and joystick from my previous builds. One think to note. If you every build your own arcade machine, be sure to not cheap-out on your hole saw. I did, and I paid the price. It took me three tries to finally get it right. You will need a 1 1/8th inch spade bit, or hole saw. The more common 1 inch spade will not work, and will leave you manhandling your holes. I walked around Home Depot for a while before I made my decision on what I would make my control board out of. I am very please with my final design. It looks really good.
What a mess
Looks much better – Cable management = good
Testing my controller and starting the cabinet built
I’ve got the control board setup and working now. I’ve been working on setting up the software side of this project – which I’ll go into later. I wanted to see how well my controller worked. And as you can see from the picture, it works perfectly. So now I have something to play with while I build the rest of my machine.
Testing the Controller
I’ve started laying out my design for this new cabinet. I wanted to go with a Galaga style cabinet, but I also want to modify it slightly. These things can be huge monsters, and I wanted to make sure the it would fit in my house, and that I could actually move the sucker. My last builds where a two man job if I wanted to move them. I started out by roughing out a style that matched what was in my head.
As you can see, it’s pretty close. The original cabinet is about 30 inches deep. I wanted this one to be no more than 24 inches. This means less wood to buy, and it’ll fit in my house. Since I am using an LCD panel monitor, I wouldn’t need all that extra depth anyway.
Next I cut out both the side panels, and using a slot cutter bit on my router, I cut the slots for the T-molding. I had a short piece left over from my old build, so I was able to try it out for size. At this point I wasn’t sure on what colour to pick, but I always liked this Galaga green.
Edging looks great
Even though my intention was to build a lighter cabinet, I decided to use particle-board for the sides for a few reasons. Even though it is very heavy and adds a great deal of weight to the overall cabinet, it’s cheap, and very smooth. It requires almost no finishing work. Just sand the edges, prime it, and paint. It’s also a good deal cheaper than the plywood equivalent. I don’t regret the decision.
At this point of the project it feels like a lot of the hard work is over. Figuring out the shape of the side panels, cutting them out, and routing in the t-molding slot is a lot of work. Getting both sides to match can be a little stressful too. So now the rest of the build should be very straight forward… well except for figuring out how to mount the 19″ Acer LCD monitor, but we’ll worry about that later. With the two heavy side panels I really need to worry about attaching them together in a manner that will not only provide strength, but allow for attaching the rest of the paneling.
I started by attaching a series of 24″ long 2×3′s. Why 24″ you might be asking? Well, it’s a very good number when you are buying wood. Mostly sheets come in 48″ widths, so cutting in half gives me two pieces. It really keeps the cost of wood down to a minimum. I also attached two long 2×3′s done the length of the back, on either side. This is for attaching the real panel. I could have used 1×2′s, but I want to screw on a nice thick 5/8th rear panel to help keep this thing solid.
Back Panel Attached
The back panel raises above the hight of the rear supports so that it covers the back of the marquee box. The marquee box is where we add the cabinet artwork, which is backlit. It’s also where the speakers will go, just over the screen area. This lets the sound of the games come down off the screen and right to the player. I’ll go over the marquee details in a latter post. Once the rear panel was installed, I fitted in the floor. The computer and the sound system base unit will sit on it. I’ll also be cutting in a hole for the base sound to go down under the cabinet.
Finally you can see the marquee box in place, minus the front part where the artwork will go. I’m saving the marquee artwork for last because I’m not sure what to put up there, and I’ll have to spend time designing it and getting it printed out.
Roughing out the Marque
More Panels Added
At this point of the project I need to start adding in more of the panel supports. I know where the monitor bezel will sit, so I can start there. I also needed to really think about how to mount the 19″ LCD, because I need it to be in exactly the right position in order to butt-up against the back of the bezel and leave as little space as possible between the two.
I was thinking about mounting a 2×3 across the inside of the cabinet and making a VESA mount for the back of the monitor. Then I could attach the homemade mount to the 2×3 and if everything worked out right, I would have a perfectly mounted monitor. I could have gone math crazy here and measured everything over and over and position everything with lasers – but I didn’t. I went with the old fashion method of holding things together and marking with a pencil – old school.
LCD Mounting Support
Also, I wasn’t 100% sure that just this type of monitor mounting would be sturdy enough to hold the monitor and not wiggle and move around slighly. So I came up with a method of adding additional supports around the edge of the monitor to help hold it in place. I really just stumbled upon this method as I was looking at all the parts and moving things around. In the end I couldn’t have planned it much better than it turned out. The monitor is secured to the back of the bezel with 1×2′s that are screwed in from the front of the bezel. I plan to cover bezel later to hide the screw heads.
Monitor in place
I used some scrap grey foam to help add gentle pressure to the back of the monitor to hold it in place snuggly. I was then able to fit the bezel in place – with monitor attached, and figure out the exact position of the 2×3 support that the VESA mount will attach to. In the end, the monitor is probably the most secure piece of the entire cabinet. As you can see, once I cut in the speaker holes in the bottom of the marquee box and added some primer paint, it looks great so far!
Starting to look good now
Time for some paint
Time to start putting things together. I decided on a black and white paint job for my cabinet. At this point I was still waiting for the t-molding to be delivered.
Back panel installed and two air vents cut in. If heat seems like a problem later I’ll add a couple fans.
The completed controller board just about to be installed.
So Close Now
After moving the cabinet into my basement I started to assemble the marque with lighting. I also installed the computer and the sound system. I photoshopped myself a marque sign and had it printed to 24″ x 6.5″ at a local print shop.
The software I choose to install is called UltraStyle. I really like it, even though it’s not really supported any more, it’s still usable. I had to really dig in to get my ROM’s to load. I needed to edit a little XML, but it works! I also added some jukebox software. This thing also has wireless networking, so I can remotely add music or tweak setting if I want. The T-molding was the very last thing to add. I guess I ordered it a little too late, but it’s a 20 minute install when it finally comes in.
Marque – Still no T-Molding Yet.
The Finished MAME Arcade Cabinet with scratch built controller.
Here it is, the completed project. It took just over a month to design and build, and cost about $300 not including the 19″ monitor which I already had. I also did a little more photoshop work and added button layout instructions for each part of the front-end system. I set up the on and off switch to be specific key combinations, as well as controlling the volume using the joystick.
The Finished Project
Meet the RONCADE… Ron’s Arcade. Yup, I named it after me.