Arcade game build/restore
Amidst all the various projects I have in varying states (started, abandoned, nascent), the one I'm now pursuing is building an old school arcade game.There are so many posts of these things online, it's almost silly for me to think I'm adding any knowledge to the world. So this is probably going to be more of a log or journal in my travails moreso than a "how to" document.
The game
For starters, there are a number of ways to get games working on a system, some more kosher than others.Option 1: MAME
The MAME approach requires getting games running on an emulator, and display to a computer screen (via whatever the computer has for video out). I tried that in full-power computer form and Raspberry Pi form (lower power).For both approaches, it was useful to get an arcade control board with a USB connection. If you don't do that, you can do some game UI actions using your keyboard, but it's clumsy.
The arcade USB board was a little thing with lots of plugs for 2-pin connectors that would connect to switches (joystick, buttons), and one place where you'd connect the USB dongle to your computer. Initially, I thought the thing was just acting as a keyboard-type device (i.e., the USB chip on the board would report that it's a keyboard), and you'd map the device's simulated keystrokes to the ones expected by the MAME software. Instead, it reports itself as an arcade type device.
Upon firing up MAME, the system would recognize the arcade device, and allow you to set up mappings. It took me a while to figure out that UI, and it's not very forgiving if you make mistakes. But it was pretty cool, being able to choose an action (e.g., Joystick up) and then just move the joystick to the up position, and that would be recorded in the config file(s)..
But the MAME approach has obvious limitations when it comes to getting actual games. You have to find ROM images somewhere, and then there would be the gray area around whether possession of those ROMs would entitle you to holding binary images of the games.
For both systems, too, I didn't get to the point of figuring out how to make the computer auto-boot to start up MAME in any particular game. I'm sure I could have figured it out eventually with the Pi, but I had other ideas.
Option 2: Get an arcade game
The next choice would be to just go out and get an arcade game and fix it up. As it turns out, there was one for sale nearby and I bought it. It's a Midway multicade. An example (in better condition) is here: https://www.youtube.com/watch?v=pYRc3314WYc. After purchasing it and reading up on it (perhaps it's better to do that in the opposite order), I found that it had been sold historically via real brick & mortar stores, increasing my confidence in the validity of the game licensing.One discussion about this kind of game and cabinet, and moreover its shortcomings, is here: https://forums.arcade-museum.com/showthread.php?t=73341
And as that discussion outlines, it's cheap. It's not a full stand-up arcade game, being only about 5' tall, and it has a cramped, small control panel. Both video and audio came from a 13" CRT TV.
While I was disappointed in my purchase, it felt good to have properly licensed games (or at least that's what I think they are).
Option 3: JAMMA
The next area I would look into was JAMMA boards. There are numerous kinds of JAMMA boards out there, and they usually have dozens or even hundreds of games. Each conforms to a pretty well established pinout standard, so you just get one of those boards, attach the board (56 pins, 28 per side) to a "harness", and then connect a spaghetti set of wires to various things.The Midway multi game
Cabinet
Here's a picture of the Midway system.As you can see, the cabinet is in poor condition. Most of the front artwork was faded or water-damaged. Because it was in poor shape when I got it, I stripped more of it off so I could disassemble it (both to take a peek inside, and to transport it without breaking my back). Eventually, stripping off the artwork also gave me access to the game cartridge.
The cabinet for this is odd and fairly cheap. It appears to be 1/2" MDF for the main walls, and thinner MDF for the back. Mine has some water damage at the back base.
What's also funny about the cabinet is that it can be disassembled in thirds. A regular arcade game's cabinet walls (left and right) would be a single piece of 3/4" MDF. For this one, each wall is comprised of three pieces of 1/2" MDF, and there are interior supports and junctions that guide one third to sit atop another. I can take off the back panel, and then undo a few bolts, and the whole top third can come off. There are no electronics in the top (whereas a real cabinet would have a power switch, lighting wires, and maybe speakers).
Control panel
The control panel looks like this:It provides a fairly cramped two-player capability with six buttons per player, plus player 1 and player 2 start buttons. (There are no coin slots, and there are no service or test switches.) While I envisioned creating a single-joystick CP for building my own game, the ability to play Robotron (need two joysticks for one player) or Joust or Rampage (more fun playing with a friend) argued well for this kind of CP functionality.
The joysticks themselves are cheap, but functional. The buttons feel small, even though physically they compare well with standard arcade buttons. More importantly, they have too much spring resistance.
There are some games where the button layout really makes a difference. For example, Stargate and Defender have meaningfully restrictive joystick movement (vertical only), and a Reverse button is placed near the joystick. Then, the Smart Bomb and Hyperspace buttons are separated farther out.
What I'm striving for is a CP that can be customized or swapped based on the game in play. I'd rather have a layout that is faithful to each original game, rather than a generic, multibutton panel.
The CP itself also is just a plastic box, and you can hear it creak and groan as you play. A more standard old school CP might have a metal plate supporting things, but most cabinet construction uses 3/4" MDF or plywood, routed out so that the controls fit and the joystick doesn't sink too much.
The monitor (and audio)
The monitor is a little 13" TV. It has front-panel push-button volume controls. The two little red buttons on the image above (the buttons above the Player 1 Start button) are just extensions of the actual monitor controls.The audio for the game comes from the TV's own speakers. As such, the game system simply has to emit audio left and right signals, and a TV video line.
Internal electronics
Power is switched on using a rocker switch on the side. There's a hole cut out of the wall that provides access to the switch. The switch turns on a box that provides power to both the TV (pass-through 110VAC) and the game board (6VDC).The game board is enclosed in a cartridge, and the cartridge plugs into a holder. I assume this cartridge-style architecture was done for common structure in manufacturing, so they could release some other multicade with other games with just a change of cartridge and outer labeling..
The cartridge plugged in through the front. |
Cartridge removed |
The cartridge holder has a locking mechanism (screwed in clip that prevents removal of the cartridge from the front). The locking clip is only accessible from inside the cabinet via the rear.
This is what the back of the cartridge looks like:
Cartridge rear - allows for push-in connection |
Cartridge rear close-up. 18x2=36-pin finger board connection, plus audio left, right, and video out. |
Six buttons per player
Four joystick positions per player
One start button per player
Grounding wires
6VDC and ground in
An LED light pin that indicates that the power is on.
That adds up to 24 pins. (As you can see on the solder-side close-up, there are four pins labeled "N.A.")
Here's what the cartridge looks like on the inside:
Solder side (cartridge bottom), view 1 |
Solder side (cartridge bottom), view 2, close-up |
Component side (cartridge top) |
The rear of the cartridge holder has these things:
A ribbon cable that connects to the control panel, power input, and LED. (Need pictures of ribbon that connects to the cartridge holder, and the ribbon end that connects to the control panel.)
RCA connectors for red (right audio), white (left audio), and yellow (video)
I won't go into the ugly details of the inner wiring of the joysticks and buttons. That stuff should be pretty obvious to anyone who is working with Sanwa joysticks and Happ buttons.
As far as I know, all remaining wiring is just plain switches and connectors. For example, the power LED is just that -- an LED with no other inline resistors, etc. All electronic componentry is kept on the cartridge board.
To be added:
- Ribbon end connectors
- Maybe: internals of the cabinet, and how things are made (for better or worse).
Conversion
For a better arcade game experience, I want to retain the guts of this cabinet, but use a real, solid cabinet and controls. The games do play nicely, though the video output board probably is of limited resolution.The only pieces worth keeping are:
- The power supply (to feed the 6V input that it is used to getting)
- The cartridge
- The cartridge holder and ribbon cables.
What I wouldn't find useful:
- The control board, all buttons, and joysticks
- The 13" TV
- The cabinet walls and shelves and artwork, and other cabinet parts (hinges, fasteners were of poor quality).
To connect the cartridge to a new system, I have a few options. I could get a "finger board" like this
http://www.twistedquarter.com/index.php?main_page=popup_image&pID=1715
or
https://www.mikesarcade.com/cgi-bin/store.pl?sku=JAMMATYPE2
and then chop it down to 18 pins. Then, I'd wire directly from it to something more standard (JAMMA).
The other way to go would be to map the ribbon output of the cartridge holder.
Yet another option would be to cut the wires that connect to the existing controller, label each wire, and solder those to a JAMMA finger board. While that has multiple connectors involved, each of which could wiggle loose, it probably is the least costly solution. I couldn't preserve all the button functionality of the original, since JAMMA only supports up to 4 "fire" buttons per player, not 6, so some wires would end up hanging loose.
Any way I play it, I'll need to find some solution for mapping the Red/White/Yellow RCA outputs of the cartridge to whatever JAMMA needs or whatever the monitor needs. I am thinking I'll circumvent the standard JAMMA output, and use VGA instead, but that may involve crafting a VGA switch as well. And yet another possibility there is that the monitor I choose might support RCA and VGA inputs, and I could just click to a different monitor input choice.
Audio
I'm realizing that there's another issue in conversion of audio. The cartridge is probably emitting line level audio output in stereo. But JAMMA outputs amplified signal (speaker-ready), and in most cases emits mono (monaural) output.I had thought of building a stereo-to-mono passive bridge (just a couple of resistors connected to each R and W signal, then joined to hit a single mono signal) but maybe that's going in the wrong direction. Instead, maybe I should make the cabinet with stereo speakers, and have a switch that lets me choose which way to set up audio. When in JAMMA mode, it would split the amplified mono to stereo (but can't just be a parallel circuit due to impedance drop that that would cause), and when in Midway mode it'd go through an amplifier to the stereo speakers. What should I do?
Next up: the Midway Mortal Kombat II cabinet rebuild approach.