Level Up Your Nostalgia: Building Your Own Retro Arcade System
"Retro games were harder because they taught us patience, problem-solving, and the value of victory." — Unknown
Do you remember your first video game system? Want to play it again? As technology gets better and faster video game emulation gets easier and easier. I've played with a lot of emulation systems and I've seen them thrown together haphazardly. I wanted to build a emulation system I can hook up to my television and play the games I remember so fondly. Here's how I did it.
A Brief Recap of Emulation
Emulation involves two main components: the emulator and the ROM. The difference between emulators and ROMs:
The Emulator is a software program that simulates a piece of hardware (think Nintendo NES).
While the ROM is emulating the software that runs on the hardware. (think Duck Hunt cartridge). So you download and install an emulator and collect ROMs of your favorite games to play.
Generally, the older the hardware, the easier it is to emulate. For example, while an Atari 2600 can be easily emulated on a smartphone. Emulating a Nintendo Switch would require a state of the art machine powered to the max. (something that is doable and being done. But not by me.)
The first thing I needed to do was pick an emulator. There are a couple of factors I needed to keep in mind. Firstly I needed something that would run on hardware I had readily available. I had a raspberry pie 5 that was between projects and it ended up being a perfect fit,
Next i needed to pick a emulator program. A lot of this comes down to personal preference as far as interface and such. Of course finding an emulated program that supports your hardware is also a non-negotiable. I've listed a few here for you to play with. Some of them are desktop executables making the barrier for entry really low.
Emulator | Description | Supported Platforms |
---|---|---|
RetroArch | Front-end for Libretro cores, emulates various systems. | Windows, macOS, Linux, Android, iOS, consoles, more. |
BizHawk | Designed for tool-assisted speedruns (TAS), supports many systems. | Windows, macOS (via Mono). |
OpenEmu | User-friendly, uses Libretro cores for macOS. | macOS. |
Mednafen | Accurate emulator, supports PS1, Saturn, SNES, NES, and more. | Windows, macOS, Linux. |
Higan | Focuses on accuracy, supports SNES, NES, Game Boy, and others. | Windows, macOS, Linux. |
LaunchBox/BigBox | Front-end for organizing games, integrates with RetroArch and others. | Windows (Android in development). |
Lakka | Lightweight Linux OS, uses RetroArch. | Raspberry Pi, PCs, and other devices. |
Batocera.linux | Linux-based OS for retro gaming, includes built-in emulators. | Raspberry Pi, PCs, and SBCs. |
Recalbox | Easy-to-use Linux-based retro gaming OS. | Raspberry Pi, PCs, and other SBCs. |
EmulationStation | Front-end often paired with RetroPie, for Raspberry Pi. | Raspberry Pi, Windows, Linux. |
Phoenix Emulator | Multi-system emulator, supports PS1, PSP, NES, and more. | Windows. |
MESS | Part of MAME, focuses on non-arcade systems. | Windows, macOS, Linux. |
Having a raspberry pie 5 made my options limited. Most emulation programs hadn't been optimized for it yet. I found Recall Box.
The method for installing operating systems on the raspberry pie is a little bit different than what you might be used to. You download the image of the OS onto your desktop machine (mac, windows, etc) then use a program to install (burn) it onto a microSD card. Once finished you put the microSD card into the raspberry pie and i you're off to the races. Clear as mud?
Luckily this is made easy with the Raspberry Pi Imager.
https://www.raspberrypi.com/software/
From there you can choose from all different types of installs depending on your raspberry pie model, one of them is Recallbox. I installed it on a 1TB micro SD card.
I selected the Recallbox install from the menu and let the program do its thing. Once it finished I moved the SD card to the raspberry pie and booted it up.
From here a keyboard or wired controller is needed for configuration. If your hardware platform of choice has Bluetooth you can eventually use a wireless controller. I use an Xbox controller. But you'll need something wired to get it on its feet.
Keep an eye out for part two where we configure the system and maybe add a ROM or two.