Raspberry Pi Retro Arcade Game Console

Posted by John on May 21, 2014

This project brings together two great things, one new and one old: The Raspberry Pi & Retro Gaming! Having cut my teeth on Asteroids on the Atari 2600, and Load Runner on the Apple IIe, what is called "retro" is a thing that I lived through the first time, and would like to occasionally revisit. When I want to play early computer games, I can always emulate them on my laptop, as it already has the original keyboard and mouse inputs, but a lot of early arcade style games really require the visceral touch of a full sized joystick along with some big buttons that you can mash. 

This project consists of three primary parts: The Console Cabinet & Game Controls, The Raspberry Pi and The Code. Most of the items you need can be purchased directly from MCM Electronics, as listed below. You will have to make your console, but there are many options available. You will also have to download the code, which is readily available online.  

The Console Cabinet & Game Controls
The console for this gaming system can be nearly anything. AdaFruit suggested a cigar box or laser-cut acrylic, but I wanted something that could really take a pounding and feel like a classic arcade cabinet without taking up all the room that a full cabinet would require.  So, I broke out the MDF and went to work.  I gave the top a 15° slant because that felt about right for a lot of old games, and I left a slot in the front so that I could clamp it to a table or desk if things started moving around. In addition to the standard "Jump" and "Fire" buttons, I also wanted a "Start/Run" and a "Select" button, so I added a couple of holes for these. The joystick consists electrically of four micro-switches, and can be mounted either above or below the surface of the cabinet.  I chose to mount it above the surface Likewise, each Game Button is a single micro-switch totaling eight switches in all.  I wired these eight switches to a common ground pin GPIO pin on the Raspberry Pi while each of the NO contacts tracks back to an individual GPIO pin (2,3,4,17,27,18,23) I used terminal blocks between the buttons and the Raspberry Pi, but that was for ease of hookup, and could easily be skipped.

The Raspberry Pi

The Raspberry Pi is the link that brings together the code and the console. Along with the basic Raspberry Pi you will also need an SD Card, Pi Power Hub, USB Cable, USB keyboard and HDMI Cable. Plus you will of course need a TV so that you can see what you're playing.

The Code
To bring it all together, I used the "retrogame" code from Adafruit to map the GPIO pins to keystrokes.  I had to modify the code a little to make all four of my buttons do what I wanted them to do, but the code is simple enough that even though I am only a "casual" programmer, that was not a problem.  I also used Aloshi's "EmulationStation" to run the games.  This is a great package that can run nearly any old game that you can find.  Naturally, both of these do take a basic understanding of Linux to get working, but with the number of online tutorials available, the average user should have no troubles.

Raspberry Pi Retro Arcade Game Console Parts List

Add the full project to your shopping cart!

Game Controls:

28-3625               Joystick - Add to Cart
26-4745               Red Game Button - Add to Cart
26-4765               Yellow Game Button - Add to Cart
26-4760               Green Game Button - Add to Cart
26-4770               Black Game Button - Add to Cart

Optional Colors:
26-4755               Blue Game Button - Add to Cart
26-4750               White Game Button - Add to Cart


83-15503             6" Jumper wires (Optional) - Add to Cart
24-15120             Black 24awg Hookup wire - Add to Cart
24-15122            Red 24awg Hookup wire - Add to Cart
24-15125             Green 24awg Hookup wire - Add to Cart
24-15129             White 24awg Hookup wire - Add to Cart

Raspberry Pi:

83-17300             Model B Raspberry Pi 3 Board - Add to Cart
83-17305             SD Card - Add to Cart
28-19336             Pi Power Supply - Add to Cart
83-14882             USB Cable - Add to Cart
24-14757             HDMI Cable - Add to Cart


Projects Tutorials

Add comment

Please register or log in to post a comment.