My "Arcade Classics" Arcade Stick
  • Hello Fellow Gamers,


    http://s693.photobucket.com/user/lgallair/library/PiMAME


    I just wanted to share my latest project with you. It's an arcade stick that runs PiMAME. In total, it took about a 100 hours to build and cost about $500 in parts and shipping. The control box itself is made from 1" red oak and the control panel from MDF. The top and bottom are protected by 5mm plexi-glass.

    The joysticks are ServoStiks from Ultimarc which is basically a J-Stik with a servo motor that moves the restrictor plate to either the 4-way or 8-way position. The servo controller board was put into "hardware" mode so I could control it manually with a toggle switch. It would have been nice if Mame4all was able to detect what joystick mode each game used and automatically controlled the servo's but unfortunately it cannot.

    I decided to use an I-PAC2 (also from Ultimarc) as my encoder rather than the GPIO header because I needed more buttons than the GPIO provided. I also wanted the control panel to be user-friendly enough that anyone could play, so I installed more "admin" buttons than usual. In the past, the biggest problem I had were friends asking silly questions like ... "How do you start a game?", "How do you add a credit?", "How do you do this?" or "How do you do that?".

    The reason for two joysticks was not because I wanted a 2-player setup; it was because I wanted the games to be playable by both left-handed or right-handed people. Also, there are a few games that require two joysticks to play (ie: Karate Champ) so this seemed like the right thing to do.

    The button layout was a big concern. I wanted a simple design that accomodated all the arcade games from the 70's and 80's. Not many games from this era needed more than 4 buttons. I formulated a list of all my favorite games and downloaded their control panels. Once I had all the panels in front of me, I decided on the layout you see here. Games like "Defender", "Stargate" and "Bank Panic" were the most difficult to incorporate but in the end, they all conformed nicely to this layout.

    I purchased a Frontline controller off eBay to install on my control panel because I loved the game as a kid and wanted to play it with an authentic controller. I've tried many other methods of emulating the controls for Frontline but none of them came close to the real controller. The only problem I had with the Frontline controller was it kept registering a key press within AdvMenu and Mame4all. This is because there is always at least one switch depressed at any given time. The solution to this problem was to install an on/off switch that cuts the ground to the four micro-switches that control the up/down/left/right movements.

    The Trackball was purchased from JammaBoards.com. It is a 2-1/4" PS2 LED Illuminating MAME Arcade Trackball. In rolling operation, the ball will glow green in color. Once any of the buttons are pressed, the ball will change to an illuminated red color. As soon as the button is released the trackball will instantly go back to green in color. Since I did not use any of the mouse buttons, I wanted the ball to glow red at all times so I modified it slightly by removing the green LED's and replacing them with the red one's.

    Another hurdle I had to overcome was the power switch. As you know, the Pi does not come with an on/off switch. You simply cut the power to shut it off. I've heard that this can corrupt the SD card, forcing you to re-image the card. So I bought a shutdown switch from MausberryCircuits.com. This switch connects directly to the GPIO header. Pressing the switch on will turn your Pi on. Switching it off will send a shutdown command to the operating system. Once the operating system has safely shut down, the circuit removes power from the Pi.

    Anyways, the whole project was fun to make and I enjoy playing all the classics and reliving my past ... one life at a time!
  • nice job. looks great.

Howdy, Stranger!

It looks like you're new here. If you want to get involved, click one of these buttons!