Brad's MAME arcade story - Build your own vintage arcade!

BradEinarsen 20,745 views 68 slides Jan 09, 2014
Slide 1
Slide 1 of 68
Slide 1
1
Slide 2
2
Slide 3
3
Slide 4
4
Slide 5
5
Slide 6
6
Slide 7
7
Slide 8
8
Slide 9
9
Slide 10
10
Slide 11
11
Slide 12
12
Slide 13
13
Slide 14
14
Slide 15
15
Slide 16
16
Slide 17
17
Slide 18
18
Slide 19
19
Slide 20
20
Slide 21
21
Slide 22
22
Slide 23
23
Slide 24
24
Slide 25
25
Slide 26
26
Slide 27
27
Slide 28
28
Slide 29
29
Slide 30
30
Slide 31
31
Slide 32
32
Slide 33
33
Slide 34
34
Slide 35
35
Slide 36
36
Slide 37
37
Slide 38
38
Slide 39
39
Slide 40
40
Slide 41
41
Slide 42
42
Slide 43
43
Slide 44
44
Slide 45
45
Slide 46
46
Slide 47
47
Slide 48
48
Slide 49
49
Slide 50
50
Slide 51
51
Slide 52
52
Slide 53
53
Slide 54
54
Slide 55
55
Slide 56
56
Slide 57
57
Slide 58
58
Slide 59
59
Slide 60
60
Slide 61
61
Slide 62
62
Slide 63
63
Slide 64
64
Slide 65
65
Slide 66
66
Slide 67
67
Slide 68
68

About This Presentation

This deck shows how I took an old TAITO vintage arcade cabinet and made a MAME-based gaming machine for two players that runs 193 games.


Slide Content

MAME Arcade Construction 101 157.5 : 1 Wherein Brad shares his experiences creating a MAME arcade machine in 2013 from a vintage Taito cabinet from 1981.

Early in 2013 I discovered MAME and I began to dream of my own arcade machine. Once I got the bug it was only a matter of time before I built one and put it in the basement. I actually dreamt of it in the living room, but my lovely wife has veto power up there. When I was a 13-year-old kid in Nanaimo I went to the “Fun Centre” arcade with my cousin Trent and plugged quarter after quarter into the buzzing, beeping machines. I wasn’t very good nor did I have the attention span to develop real skill, so I dreamt of having unlimited quarters. I would have never guessed that come 2013, and thanks to the volunteer open source programmers who created MAME, I’d have something better than unlimited quarters – unlimited games AND unlimited quarters!

Vintage arcade machines are not just for playing alone, the fun is exponential by the number of people.

Software Configuration

What is MAME? MAME = Multiple Arcade Machine Emulator Project created to save old video games from extinction The fact that they can be played has created a bit of a cottage industry ROMs are “read” into source binaries and MAME fools them into thinking they are on a board

ROMs Legal ROMs are available on the MAME website http://www.mamedev.org/roms / Other ROMs are under copyright by their respective owners I will not publish mechanisms to find these files

MAME is Configurable To accommodate all the different cabinet types, MAME has developed a large amount of configurability The key files are: All Games.mlg (for MALA) catver.ini controls.ini nplayers.ini These files are also used by RomLister

Arcade Front Ends MaLa The front end created by some of the same open source team members as MAME Simple, and highly configurable HyperSpin Flashy and built for machines that contain many emulators Others There are many other, less popular, front ends

Configuring MALA — First Run On first run a bunch of files get created “all games” files are most important Must re-run initial start to get the file if anything happens to it Then you get…

The default MaLa layout is workable, but let’s face it, you’ll want to customize it for your cabinet!

Configuring MALA — Games List Create full game list that contains only the games you want MalaGamelist allows you to create a more manageable list RomLister auto-generates based on the controls you have

Configuring MALA — Games List RomLister created a list that was too long for me, and I wanted the older games, so… Sort games by date in the GUI Scan screen captures to see what triggers memories This process re-discovered games I would never have remembered Recognition vs. recall I made a spreadsheet to ensure that I made the right choice on my control panel / screen orientation…

Example of the information I compiled about my target games to determine how many buttons to use and which orientation for the screen.

Configuring MALA — Screen MALA uses a layout file to create the screen MalaLayout.exe Time Marquee Screen Shot Control Panel Game Details Game Name Game List Details Cabinet Shot And many more…

Here is the version I’m using now, except the brochure is replaced with the cabinet photo.

The Cabinet — Build or Buy?

The Cabinet — Build Build or Buy? Build You can get exactly what you want Room for as many controls as needed Will take some woodworking skills, tools, and a workshop Also… see Adrian Griggs However! Beware the Crapmame syndrome

The Cabinet — Build Kit

The Cabinet — Build Kit Local guy with access to a CNC machine can make kits 1-player bartop : $150 2-player bartop : $175 Small cocktail: $250 Large cocktail: $300 Visual pinball: $350 Bartops can be made as full uprights but pricing is $425 Kits use mortise and tenon joinery and glue together

The Cabinet — Buy Build or Buy? Buy Cabinet can be authentic to the time you remember They tend to be smaller (but you can build smaller ones) Buying is way easier than building However! You won’t be able to get all controls on one panel Solution: multiple panels!

The Cabinet Restoration

When I found two cabinets for sale on Craigslist the vintage Taito won over the home-built model because: It fit in my Honda Fit It had wheels for rolling It was a real cabinet from 1981 It fit in my Honda Fit (can’t stress that enough)

I single-handedly got it out of the car, and the wheels made it easy to get into the garage.

It was already mostly gutted, but still had to clean it up, rip out the wires, and make a list of tasks to get it together.

Scale drawings of the available control space I created a space in Visio where I could play with different layouts at scale. The shaded regions are where the cabinet wood intrudes on the control surface underneath.

My first control panel (not the only control panel) The first control panel ended up looking like this. These are enough buttons for the games I want and the two player layout fits perfectly in the vintage cabinet. Notice I failed to include the 1- and 2-player buttons, they show up later.

One day… I’ve been playing with some graphics that I want to print at GameOnGraphix.com and overlay the wood panel.

The parts are cheap! Joystick: $12.00 Pushbutton: $1.85 Control board: $23.25 Adam Allan is always willing to help Other sites as well if you can stomach international shipping http:// wiki.arcadecontrols.com/wiki/Vendors http://www.ultimarc.com/ http://www.multicade.ca/

The parts arrive from Multicade.ca! It’s great to have a parts source in Canada so I don’t have to deal with random border issues.

http://www.slagcoin.com/joystick/mounting_layering.html Don’t Over-design There is a lot of information online about creating control panels My experience is that over planning just gets in the way Create your layout and screw the damn thing together

1/8” hardboard 1/8” hardboard 5/8” plywood For Example… It turned out that one hardboard layer and the plywood was fine, I didn’t need the second layer for the joystick mounting plates. In fact, I think the plywood would have been fine on its own, just make sure to get cabinet-quality wood that has a “good” side that is nice and flat. The hardboard does provide a great surface so I may still do this on my next control panel.

You can’t countersink hardboard by hand using a large drill bit – it rides up the bit every time. Buy a special countersink bit for this task. Align and bolt the two pieces together. Make sure the second bolt is in the right place for trimming the panel width. Cut to correct dimensions. Now you have a clean cut through all the sandwiched boards and you’re ready to drill some more bolt holes.

Oops, a red button was missing from the order. And where are my 1- and 2-player buttons going to go? Pieces bolted together and the pushbutton holes started. A spade bit worked, but you’ll get cleaner edges with a hole saw. It’s worth the extra few dollars. For the joysticks I just traced the mounting holes. You can mount in any orientation as the wires will define up / down / left / right.

The Xin Mo USB control board came with all the wiring I could possibly need. A great kit for the money. Painting the monitor mounting board and the control panel traditional black. Buttons and joysticks mounted. I didn’t need to sandwich them, the joysticks were plenty long enough to mount under the plywood. The buttons in place. This is starting to look like a control panel.

Using an old, cheap, Bic -style pen made great offsets for the board. The height afforded by 1½” wood screws gives lots of room to work.

My initial wiring of the buttons was wrong – they were set to always-on. A quick flip of the positive wire fixed that. The windows game control panel made short work of the diagnosis. The pushbuttons with the relays mounted. Initial wiring to the Xin Mo board. This shows the positive leads being connected to the pins on the board. The joysticks were a close fit with the edges of the cabinet where the control panel rests so a couple of the connectors had to be bent a bit.

Testing USB Joysticks Open the Game Controllers dialog (from Devices) You should see two USB Joystick controllers Opening properties will show the joystick movement and the buttons Test all connections Then map connections in MAME

Mapping Controls in MAME Start any game Press Tab to open the MAME configuration controls Select Input (general) Map your User Interface and Player 1 & 2 Controls to the correct buttons The general setup is used by all games by default and can be changed on a game-by-game basis

Testing the control panel on a handy laptop. It’s great to be able to set up MAME on a laptop and then move everything over to the arcade system on a USB key. In theory I could connect the XP machine to my internal network and just copy the files over but I want the system to be standalone so I don’t need to ever apply further patches.

The full wiring. Notice that the negative leads (the top ones on the relays) are daisy-chained to one connection on the controller board.

Meanwhile, on the Bench

My first choice for a PC was and old IBM system I had hanging around. I remember it being slow but it should be ok.

This old computer couldn’t even get out of its own way. I was afraid of all the IBM hardware re: clean install of XP so I abandoned this one.

My next one was a great old 2.0GHz Intel board. I was confused when it wouldn’t get past BIOS and I finally discovered a nick in the CPU traces on the motherboard. I should improve my storage techniques.

Finally, success! I found an old Optiplex 2.6GHz board on Kijiji for $10. Three hour trip later (traffic in Toronto is always hell) and I had my board. I had to figure out the Dell pinouts to get it to boot, but once I got it running I just set it to auto-boot on power. In the background you’ll see an old ATI video card with NTSC out. The Dell motherboard graphics didn’t make the cut for MAME and this way I can use a TV in the future if I want to.

Putting it all Together

Got both sides connected and they are still holding four months later. If the control panel slips fore / aft I might needs pins but for now it’s solid. The old cabinets had quick-release latches for the control panels. This looks like it would make a great way to mount my new panel. Some wire clothes hangers provided the raw materials needed to create the control panel hangers.

The motherboard came on a tray from the original PC and this made a great quick-detach mount for the side of the cabinet. I kept all the equipment on the wall to avoid anything falling on it. Always drill pilot holes in MDF, the stuff is hard and will either strip the hole or rip the head off the screw. The coin mechs worked. This was a shot before I stripped the wires. A poor man’s VESA mount for the LCD monitor. Finding the right metric bolts was a pain, but Canadian Tire came through where Home Depot failed.

The first game started up on the cabinet with the real PC and monitor installed. Purists say a real arcade monitor is needed but I find the old LCD fine for my purposes, and I had it free. LCDs can get dark at some view angles though, so YMMV. Other options include old CRT TVs (I chose a video card that would work in that configuration), or old CRT computer monitors.

Time to get the soldering iron hot, we have some audio to install.

Velcro patch to mount the board. Cheap and plentiful, old PC speakers provide plenty of volume and sound quality for the electronic sounds of the old games. Ripping out the audio board was easy, and the speaker wires were simple to strip. Some industrial-strength Velcro will hold the board to the cabinet. I could have mounted with offsets like the controller board but this is easier.

The board mounted. The speaker wire connections (large bolts) were covered in electrical tape. The two speakers (right is original) work fine and I don’t have any real stereo games anyway.

The bulbs used in the old cabinets are not easy to find, but a quick search found the 6V, 0.15A, bayonette bulbs from places I could order from online in Canada. I used RP Electronics . Not shown are the wires to the coin lights. Let’s face it, you simply must have the coin lights working. The coin mechs with the wiring that connects to the Xin Mo controller board. These connections map to pushbuttons that are set as Coin 1 and Coin 2. Beware some games that map the Coin relays to more than one credit (Williams games had Coin 2 set to a dollar bill reader and gave 4 credits in Joust).

The 6V bulbs weren’t very bright so I wired them to the +5V and -5V (which provides the equivalent of 10V). The bulbs burned very bright but the power supply had a 1Amp breaker on the -5V side and it failed. Back to plain old 5V operation. The bulbs aren’t as bright but they should last forever.

Shots of the final layout and wiring of the cabinet interior. I kept everything on the walls to keep the whole thing organized and clean and protect the motherboard from anything that might fall on it. I still need to put the on/off switch back in and wire it through the power strip plug.

Clean and simple. That’s how I like it.

Don’t make the same mistake I did and cut the tape on the Plexiglas with a knife, the blade will score the plastic. Oh well, it’s not “the bezel” … it’s the “first bezel.” There are great places to have bezels printed, but for efficiency I decided just to paint the back of the Plexiglas black. Using masking tape and black spray paint did the job. Don’t read the hype online about how to cut Plexiglas, it’s way too anal. Just grab your skill saw and have at it. The job isn’t perfect, and I’ll want a real bezel one day, but for now it totally fits the bill.

It’s starting to look like an arcade machine. A couple of cigarette burns in the Plexiglas are the only things that would make it look more authentic.

There is still the issue of the giant gap under the control panel. The original control panels often wrapped around and covered this area.

Some hardboard and a couple of wood mount hanger bolts will hold this in place. First, mount the bolts into the cabinet wood, then put some black ink on the ends and press the hardboard onto them. That’s where you need to drill your holes. Paint it black, and we’re good to go. Looks like a good fit.

It is far from perfect, but there is color there where there wasn’t before. This now looks like a real arcade machine! I really want a marquee printed by GameOnGrafix.com but the guys were coming over for the inaugural Vintage Arcade Party so I needed a quick fix. Masking tape and some colorful spray paint did the trick.

The first guest to the party had the honor of helping me get the machine downstairs (thanks, Franz). It’s heavy, but the wheels on the back make it easy to move and I had a straight-shot from my side door to the basement. Welcome to your new home, 1981 Taito cabinet!

What do I Need?

Money — $419.60 Item Cost, Ea. # Cost, Tot. Date Supplier Taito Generic Cabinet, Green $150.00 1 $150 27-Jul-13 Craigslist Celeron 2.26GHz MB & CPU $10.00 1 $10 15-Aug-13 Kijiji 80GB IDE HD $ - 1 $ - - Existing ATX Power Supply $ - 1 $ - - Existing Joysticks $12.00 2 $24 5-Sep-13 Multicade Push buttons $1.80 8 $14 5-Sep-13 Multicade Player start buttons $1.80 2 $4 5-Sep-13 Multicade Plywood mount for LCD $25.00 1 $25 10-Sep-13 Home Depot LCD Monitor, 19" $ - 1 $ - - Existing Keyboard $ - 1 $ - - Existing Mouse $ - 1 $ - - Existing Plexiglass panel $45.00 1 $45 10-Sep-13 Home Depot Xin Mo arcade controller USB with wires $23.25 1 $23 5-Sep-13 Multicade Hardboard for control surface $5.00 2 $10 10-Sep-13 Home Depot Speaker $1.95 1 $2 5-Sep-13 Multicade Bolts for controller construction $10.00 1 $10 10-Sep-13 Home Depot Strapping to secure monitor $2.00 1 $2 10-Sep-13 Home Depot Cable routing clips (pack of 10) $2.00 2 $4 10-Sep-13 Home Depot Black spray paint $10.00 1 $10 10-Sep-13 Home Depot Countersink bit $7.00 1 $7 16-Sep-13 Canadian Tire VESA mount bolts $1.00 4 $4 30-Sep-13 Canadian Tire Industrial Velcro $6.00 1 $6 2-Oct-13 Canadian Tire Monitor mount stove bolts $2.00 4 $8 2-Oct-13 Canadian Tire Zip Tie mounts $1.00 3 $3 7-Oct-13 Canadian Tire Replacement bulbs for marquee $1.72 20 $34 13-Oct-13 RP Electronics Hangers for marquee $4.00 1 $4 11-Nov-13 Canadian Tire Paint for temporary marquee $5.00 4 $20 8-Nov-13 Canadian Tire

Computer Item Description CPU Intel Pentium Celeron single core 2.26GHz RAM 1 GB Video ATI Radeon ( PowerColor ) c . 2001 Hard Disk Seagate 7,200 RPM 80GB IDE Arcade Controller Xin Mo buttons-to-USB interface Sound Creative Labs SoundBlaster Pro c. 1995 Speakers KOSS all-in-one PC speakers, dismantled Keyboard Generic PS/2 Mouse Generic PS/2 (mechanical ball) Operating System MS Windows XP SP3, fresh install

Time — 157.5 hours Task Hours Date Research & load MAME 20 7-Jun-13 Find ROMS 20 7-Jun-13 Configure MALA 10 6-Sep-13 Pick up cabinet 3 29-Jul-13 Design control layout 5 6-Aug-13 Design control graphics 15 6-Aug-13 Clean cabinet 2 30-Jul-13 Map games to controls and screen orientation 10 1-Aug-13 Build control panel - 1st try 4 15-Sep-13 Pick up motherboard 3 16-Aug-13 Build control panel - 2nd try 4 16-Sep-13 Wire control panel 4 23-Sep-13 Home Depot 1 4 11-Sep-13 Canadian Tire 0.5 16-Sep-13 Paint control panel 2 17-Sep-13 Mount motherboard 1 24-Sep-13 Mount PC components 4 30-Sep-13 Mount monitor 4 30-Sep-13 Control panel locking mechanism 1 1-Oct-13 Wire coin mech 2 2-Oct-13 Install audio amp 2 2-Oct-13 Configure MALA 1 4-Oct-13 Configure MALA 4 5-Oct-13 Zip tie cables & wire coin mech lights 3 8-Oct-13 Cut plexiglass bezel 2 9-Oct-13 Paint bezel 2 14-Oct-13 Review Games 8 1-Sep-13 Configure MALA 8 8-Nov-13 Configure MALA 2 11-Nov-13 Bezel Mounts 1 11-Nov-13 Mount light power supply 2 13-Nov-13 Configure MALA 4 25-Nov-13

Summary So far: $419.60 157.5 hours 6 months 20 litres of beer Coming next: Printed Marquee Printed Control Panel Second Control Panel with trackball and spinners / steering wheels