Mick's MAME Arcade Controls
Created on: Thursday 26 January 2006
Updated on: Sunday 05 February 2006
Updated on: Monday 27 February 2006: added link to Page 2
I've been a fan of
MAME for a
good few years and I've always wanted to do it justice by creating a
dedicated arcade cabinet. I decided to go for it now my kids are old
enough to play
Gauntlet!
I was going to use my Xmas and birthday allowance to get a
GP2X handheld Linux
console
but I decided I'd be better off spending my time and creative efforts
on a large tangible project with an end product that I can share with
my family rather than spending more time coding!
I placed an online order on Monday (16 Jan 06) with
Ultimarc
for two Mag-Stik Plus joysticks (4-8-way selector and magnetic
self-centering mechanism) and eight pushbuttons and I recieved them on
the Thursday morning!
As it happens I was at home to receive the package on
Thursday morning looking after Ruby, my eldest daughter, who was
suffering with a high fever from tonsilitis :( .
Whoa! I'm impressed with the engineering quality of these things.
2 players! My proposed layout giving each player 4 buttons.
This is what I'm going to use to provide the controls with an input to
the computer: it's a keyboard controller out of an old 104-key Cherry
keyboard (circa 1993). As you can see, it has an AT plug so I have added an
AT-PS/2 adapter.
Here's the back. I've been playing with keyboard controllers as part of my
ongoing DefenderBoard project (a keyboard for playing
Defender!).
Matrix ribbon connector A - it has 8 conductors.
Matrix ribbon connector B - it has 19 conductors.
I started mapping the keyboard matrix by
shorting out pairs of connectors and seeing the keycodes produced. The
controller has an 8 x 19 matrix giving a maximum of 152 combinations.
Cherry.
board detail
mapping the matrix by shorting out pairs of coordinates
mapping the matrix
I broke open the ribbon connector shrouds to expose contacts for soldering
I soldered tails onto all contacts
then hid my ugly soldering!
here's matrix axis B
prototype 1 panel woodwork
back of prototype 1
size of prototype 1 600mm x 300mm - will be shaped and coated
Shaped front profile and surfacing with neoprene.
Neoprene surface.
From... discarded mousemats!
Slightly untidy wiring!
Ruby is the red wizard!
Wood paneling installed for front and sides.
I need to do something about that wiring!
Added prototype cardboard button-box for Menu, Pause, Escape, Coin1, Coin2, etc.
A new wiring strategy: connection blocks for each set of controls.
View from back with new wiring - controller not yet fitted.
Wed Feb 8 2006: wiring finished - now using telephone engineers' patch wire
A tidier job. The wire is solid-cored so stays nicely where routed.
All required key contacts are patched into the matrix.
I did want to use krone punch-down idc terminal blocks but didn't have any to hand
Defender. I use the red joystick for up & down, the red button for reverse, and the right-hand buttons: blue = smartbomb, orange = fire, yellow = thrust, green = hyperspace.
I'm not fully decided how to integrate the button box into the panel (if at all). I guess I'll wait until I'm building the cabinet.
Continued on Page 2...