Building a retro-gaming machine

I have a soft spot for retro games. I remember spending hours clearing stages in Shining Force with my elder brother on our Sega Mega Drive when we were young. Spending afternoons with friends at the arcade trying to defeat Deimos using Elf in the side-scrolling game of Dungeon & Dragons: Tower of Doom; and figuring out how to do 99-hits combo in Marvel vs Capcom. For some, their hands might be itchy for a game of King of Fighters ’98 after seeing these game titles.

These games certainly bring back childhood memories. I still have the cartridges but the console have long failed. So the next best thing is to build a retro-gaming platform. Nope, I am not going to build a arcade cabinet but to build one using RetroPie on a Raspberry Pi 3.

Why not get the Pandora Box Arcade Game Console?

Yes, I do know that there is the Pandora Box Arcade Game Console that retails for approximately S$200-ish which comes preloaded with a bunch of nostalgic games.

Aside from having a soft spot for retro games, I am also a tinkerer. I prefer to build my own. Should I get tired of it, I can always swop out the microSD card and repurpose theRaspberry Pi 3 for other usages.

What is RetroPie?

RetroPie turns your Raspberry Pi into a retro-gaming machine.

RetroPie allows you to turn your Raspberry Pi, ODroid C1/ C2, or PC into a retro-gaming machine. It will enable you to play your favourite Arcade, home-console and classic PC games with the minimum set-up. RetroPie does not comes with any copyrighted games.

The RetroPie’s website has a detailed guide on setting the stuffs up so I shall not elaborate further on how to set one up.

What goes into the retro-gaming machine?

What am I building it with?

I have the Raspberry Pi 1 and 2 but I reckon that I will need better compute for the games. Hence, I put together the following items for the retro-gaming machine:

  1. Raspberry Pi 3 Model B
  2. Heat sinks for the Raspberry Pi 3 Model B
  3. Original Raspberry Pi casing
  4. 5V 2.5A power adapter for the Raspberry Pi 3
  5. 8Bitdo N30 Bluetooth Arcade Stick
  6. 8Bitdo N30 Pro Bluetooth Controller
  7. Samsung EVO 16GB MicroSD card
  8. Sandisk 32GB Ultra Fit Flash Drive
  9. HDMI cable

That seems like a lot of stuffs but trust me, there isn’t. You are just going to end up with the following set up.

The retro-gaming machine.

Ingredients: The Raspberry Pi Model B and Accessories

The Raspberry Pi 3 is the third-generation Raspberry Pi and it replaced the Raspberry Pi 2 Model B in February 2016. It has quite a upgrade from its predecessor.

Raspberry Pi 3 Model B
CPU Quad Core 1.2 GHz Broadcom BCM 2837 64-bit
RAM 1GB
Wireless BCM43438 Wireless LAN
BLE
Ports 1 x HDMI
4 x USB
1 x MicroSD
Power 5V 2.5A
Product Page Raspberry Pi 3 Model B
The Raspberry Pi Model B comes packed like coffee beans.
The Raspberry Pi 3 board.
Looking underneath the Raspberry Pi 3 Model B.
The heat sinks for the Raspberry Pi 3 Model B.
Heat sinks attached to the Raspberry Pi 3 Model B.
The USB ports and Ethernet port.
Heat sinks attached to the Raspberry Pi 3 Model B.
Glad that the Raspberry Pi 3 Model B still fits into the case despite the additional thickness from the copper heatsink underneath.

Ingredients: The 8Bitdo N30 Bluetooth Arcade Stick

The 8Bitdo N30 Arcade Stick is compatible with most of the operating systems and it features turbo and d-pad/ joystick modes. It weighs 1.4 kg and have anti-slip feet so it does not slide around like some flimsy toy during gameplays. You wouldn’t want the arcade stick to slip while gunning down the final boss during a game of Metal Slug.

8Bitdo N30 Arcade Stick
Compatibility Windows, Android, macOS, Steam, Nintendo Switch, Raspberry Pi
Connectivity Bluetooth, USB (wired)
Controller Mode X-input, D-input, Mac mode, Nintendo Switch mode
Dimension 300 x 226 x 116 mm
Weight 1.4 kg
Power Rechargeable 480 mAh Li-on battery
18 hours game play with 1-2 hours charging time
The 8Bitdo N30 Bluetooth Arcade Stick.
The 8Bitdo N30 Bluetooth Arcade Stick.
The N30 Arcade Stick is an ultra-compatible arcade stick featuring turbo and d-pad/ joystick modes.
Just imagine playing arcade games using this!
The charging port at the edge of the 8Bitdo Arcade Stick.
The various setting buttons at the top left corner of the 8Bitdo Arcade Stick.

Ingredients: The 8Bitdo N30 Pro Bluetooth Controller

The 8Bitdo N30 Pro is a classic looking full-sized wireless Bluetooth game controller. It is pretty versatile and can be used with most operating systems. The looks adds a fair bit of nostalgia.

8Bitdo N30 Pro Controller
Compatibility Windows, Android, macOS, Steam, Nintendo Switch, Raspberry Pi, Wii\ Wii U, PS3
Connectivity Bluetooth, Micro-USB (wired)
Controller Mode X-input, D-input, Mac mode, Nintendo Switch mode
Dimension 132 x 64 x 15 mm
Weight 290 g
Power Rechargeable 480 mAh Li-on battery
18 hours game play with 1-2 hours charging time
The 8Bitdo N30 Pro Gaming Controller.
The 8Bitdo N30 Pro Gaming Controller.
The size of the 8Bitdo N30 Pro Gaming Controller.
The retro look of the 8Bitdo N30 Pro Gaming Controller.
The Micro-USB port at the top of the 8Bitdo N30 Pro Controller between the left and right trigger buttons.
The left and right analogue sticks are great for games!
It has LED lights to reflect its current operating status (e.g waiting for firmware upgrade, bluetooth pairing, connected).
Another look at the analogue stick.
The retro buttons that we grew up with.
The power button and pairing button at the bottom of the 8Bitdo N30 Pro Gaming Controller.

Ingredients: The MicroSD card and Flash Drive

TheSamsung EVO 16GB microSD card and Sandisk 32GB Ultra Fit Flash Drive are meant for the RetroPie (and Raspbian OS) and ROMs (the games) respectively.

You can actually use a single large-size microSD card like the Samsung EVO 256GB microSDXC card for the Raspbian OS, RetroPie and ROMs.

It is just my preference to separate the two.

How much did the build cost?

Now it is the moment of truth. How much did all these parts add up to?

The retro-gaming machine.

The RetroPie retro-gaming machine
Raspberry Pi 3 Model B and Accessories S$61.25
8Bitdo N30 Arcade Stick S$65.00
8Bitdo N30 Pro Controller S$35.18
Samsung EVO 16GB microSD S$14.00
Sandisk 32GB Ultra Fit Flash Drive S$17.00
Total S$192.43

It is as expensive as a Pandora Box Arcade Gaming Console! But the redeeming point is that I can reuse the parts as and when I feel like it. For example, using the controller and arcade stick on my Android or macOS for games.

Most importantly, I get the satisfaction from building my own retro-gaming machine! A sense of completion. My daughter also enjoys playing a couple of games with her geeky daddy.

Alright, done with the entry and back to gaming.

Tips and Tricks

While gaming on the RetroPie platform, I encountered a few kinks and managed to figure out how to resolve them. I am documenting them here in case you encounter them too.

1. How do I enable cheats for the games?

Well, you are in luck if the game is not an Arcade game. RetroArch comes with a cheat library that has cheats for most games on most consoles (e.g. Play Station, Game Gear, Mega Drive).

Going into Retroarch Menu

  1. In EmulationStation, navigate into RetroPie settings.
  2. Navigate to RetroArch.
    The RetroArch menu should launch.

Enabling Online Updater

  1. In RetroArch menu, navigate to Settings > User Interface.
  2. Toggle ‘Show Advanced Options’ to On.
  3. Navigate to Settings > User Interface > Views.
  4. Toggle ‘Show Online Updater’ to On.
  5. Navigate back to the main RetroArch menu.

Updating the Retroarch Cheats library

  1. In the RetroArch menu, navigate to Online Updater.
  2. In the Online Updater sub-menu, select ‘Update Cheats’.
    The system should download and extract the cheats library.

Using the Cheats

  1. Within the game, load RetroArch menu using the button combination select+x.
  2. Navigate to Cheats.
  3. Select Load Cheat File.
  4. Select the console type and game.
  5. Highlight the cheat and press left or right (on the D-pad) to enable to disable the cheat.
  6. Press the button B to exit out of the menu and resume the game.

2. Why doesn’t my arcade games launch?

If you encounter problem launching your arcade games, do make sure that the games are for your version and type of emulator (e.g. MAME4ALL, FireBurn Alpha). Next is that the dependencies (e.g. awbios.zip, neogeo.zip) for the game are also in the roms folder.

3. Why are my arcade games slow?

If you encounter slow-downs during games, you probably need to overclock the emulator’s CPU speed.

To do this, you will have to experiment with the emulator’s CPU speed.

  1. Within the game, press select+x to acces the RetroArch menu.
    The RetroArch menu should launch.
  2. In the RetroArch menu, navigate to CPU overclock.
  3. Use the left and right to increase the CPU speed in increments of 10 with a maximum of 200.
  4. Press the button B to exit out of the menu and resume the game.

4. How to use the analog stick on my 8Bitdo as d-pad?

If you have a 8Bitdo controller like the 8Bitdo NES30 Pro and like to use the left analog stick for control on top of just the d-pad, you can simple edit the retroarch.cfg file for that.

  1. Go into the terminal by exiting EmulationStation.
  2. Navigate to /opt/retropie/<system_name>/retroarch.cfg. For example, /opt/retropie/fba/retroarch.cfg or simply /opt/retropie/all/retroarch.cfg
  3. Add the following configurations.

5. How do I put my N30 Arcade Stick into Firmware Update Mode?

Start + L1 + R1.

 

Treat shadowandy!

If these step-by-step guides have been very helpful to you and saved you a lot of time, please consider treating shadowandy to a cup of Starbucks.