The Easiest Way to Play Retro Games on Raspberry Pi

Spread the love

Dreaming of revisiting those nostalgic childhood gaming moments or experiencing the magic of old video games for the first time? This guide will show you the easiest way to play retro games on Raspberry Pi.

Content

Tip: alternatively, you can install Retroarch on various platforms, like the Xbox to play retro games.

Can a Raspberry Pi Run Retro Games?

The answer is Yes. All you need is to install the necessary emulators on your Raspberry Pi and you can get started playing retro games in no time. While installing and using the emulator is legal, downloading the games you don’t own might not.

Choose the Right Retro-Gaming Distribution

The easiest and most straightforward way to start playing retro games on your Raspberry Pi is to use a specialized retro-gaming distribution. These distributions include a pre-configured operating system loaded with all the necessary software to emulate classic game consoles. They often require minimum set-up and allow you to play games from various game systems from the get-go.

Your main options for retro-gaming distributions on Raspberry Pi are:

Retropie is the best-known option, but at the time of writing this article, the Retropie image isn’t compatible with the Raspberry Pi 5. For this reason, I’ll be using Batocera in this guide.

Note: For older Raspberry Pi, you can follow this guide to configure Retroarch on your Raspberry Pi for the best gaming setup.

All these distributions use nearly the same emulation system, with EmulationStation as the front-end and libretro emulation cores as the back-end. Therefore, the choice mostly comes down to personal preferences.

In the next section, we’ll guide you through the process of setting up Batocera on your Raspberry Pi and getting started with playing retro games. If you’ve decided to use a different distribution than Batocera, you can still follow our instructions, as the process is largely the same regardless of the distribution you choose.

On a side note, the above distributions should work on any of the Raspberry Pi alternatives too.

Install Batocera on Your Raspberry Pi

To set up Batocera on your Raspberry Pi, you first need to download the Batocera image for your Raspberry Pi. Next, download and install Raspberry Pi Imager for your operating system (available for Windows, macOS, and Linux). This is the tool you’ll use to write the Batocera image on a microSD card.

Connect a microSD card to your computer’s usb port. If you want to store ROMs and BIOS files on the same microSD card as the operating system, make sure it’s large enough. I recommend 128 GB of storage space or more. You can easily get the SD card on Amazon for cheap. That said, you can also store ROMs and BIOS files on a separate storage device, such as a USB drive or an external hard drive, so it doesn’t matter if you don’t have a large microSD card available right now.

Warning: The SD card will be completely erased, so make sure you don’t have anything important on it.

With your microSD card connected, you can launch the Raspberry Pi Imager tool and select your Raspberry Pi model. Then click the Choose OS button and scroll all the way down until you see the Use custom .img option. Click on it and choose the downloaded Batocera image file.

Finally, select your SD card and click Next. You will be given the option to customize your OS settings. I recommend you do so because it’s easier to do it now than later. Click the Edit Settings button and configure the hostname (you can use “batocera”), username and password, wireless LAN settings, and local settings in the General tab. In the Services tab, you can enable SSH for remote access. Then click Save and confirm your decision to apply the OS customization settings.

Now you just need to wait for the image to be written to the SD card. This may take a few minutes. Once the image has been written, insert the SD card into your Raspberry Pi and connect it to a display, keyboard, and mouse. Power on your Raspberry Pi and wait for Batocera to boot up.

Add ROMs and BIOS Files

Now that Batocera is up and running, it’s time to add your favorite retro games! These come in the form of files called ROMs. Additionally, some console emulators might require specific BIOS files to function correctly.

The most convenient option is to store ROM and BIOS files on the Batocera microSD card. You can simply copy your ROM and BIOS files directly using one of these methods:

  • Batocera file manager: Access it by pressing F1 on the home screen. You can then use it to copy your ROM and BIOS files from any external storage devices connected to your Raspberry Pi to the roms and/or bios folders. (use ALT + F4 to exit the file manager once you’re done).
  • Batocera network share: Alternatively, you can connect to the Batocera network share, which becomes available as soon as Batocera boots up. The network share exposes all important user folders, including roms and bios.
  • Transferring files directly: It’s also possible to connect the Batocera microSD card to a computer with a file system that can read EXT4 (most modern Linux machines can). You can then copy your ROMs and BIOS files directly onto the card.

I personally went with the second option and copied my ROM and BIOS files over the network. The process was smooth, and Batocera recognized my NES collection in no time.

If you want to use an external storage device, you need to configure Batocera to use it. Open the main menu (space bar if you’re using a keyboard) and navigate to SYSTEM SETTINGSSTORAGE DEVICE. There, select the storage device you want to use (it must have a compatible file system such as FAT32, exFAT, or EXT4).

Batocera will automatically create the folder structure it needs on the drive you select after rebooting. Once the folder structures are created, you can remove the drive, copy your files to it, and connect it back to Batocera.

For Batocera to actually recognize your newly added games, you must update the game list by going to GAME SETTINGSUPDATE GAMELISTS in the main menu.

While you’re at it, you should also download cover art for your ROM files. You can do that using the Scraper tool in the main menu. In most cases, the default settings should work fine (some sources may require you to provide your login information), so you can simply launch the tool and select Scrape Now.

Note: You need to use the UPDATE GAMELISTS option again after scraping.

Connect a Bluetooth or Wired Controller

To enjoy a more authentic retro gaming experience, you probably want to use a controller or gamepad. Fortunately, Batocera supports all popular controllers by default, and no configuration is needed. All you need to do is put your controller to pairing mode and go to CONTROLLER & BLUETOOTH SETTINGSPAIR BLUETOOTH PADS AUTOMATICALLY. If that doesn’t work, use the PAIR A BLUETOOTH DEVICE MANUALLY option instead.

Unless you’re using an obscure controller, its buttons should be mapped correctly automatically. If not, then you can remap them by going to CONTROLLER & BLUETOOTH SETTINGSCONTROLLER MAPPING.

Start Playing

With your ROMs added and your controller configured, you’re ready to start playing retro games on your Raspberry Pi with Batocera. But why stop there when you can turn any PC into a retro gaming machine with Batocera Linux? If you have some old PC hardware lying around, then you repurpose it as a great and original gift.

Image credit: DALL-E. All screenshots by David Morelo.

Subscribe to our newsletter!

Our latest tutorials delivered straight to your inbox

Sign up for all newsletters.
By signing up, you agree to our Privacy Policy and European users agree to the data transfer policy. We will not share your data and you can unsubscribe at any time. Subscribe


David Morelo
Staff Writer

David Morelo is a professional content writer in the technology niche, covering everything from consumer products to emerging technologies and their cross-industry application. His interest in technology started at an early age and has only grown stronger over the years.

Leave a comment