Retropie: Full guide for Raspberry Pi
retro gaming machine 2018

How to turn your Raspberry Pi into
an all-in-one retro gaming console

What is Retropie?

Retropie is a great application for retro gaming on Raspberry Pi, Odroid and PC devices, working on open source operating systems, including Ubuntu and Debian.

Retropie features a user-friendly interface and can run both on top of an existing operating system (for example Raspbian) and boot as an operating system from a speсial pre-made SD card image.

Retropie is the most popular emulator for Raspberry Pi. In fact, it comes from the Raspberry Pi version of the EmulationStation application (former front-end for RetroArch emulators). And now it has grown up to a big and popular open source project, offering extended features application for ARM-based devices. Besides RPi Zero/1 and Raspberry Pi 2/3, there are also distributions for Odroid-C1/C2 and Odroid-XU3/XU4 (both on Ubuntu), as well as additional versions for PC devices running Debian/Ubuntu operating systems.

The main feature of Retropie is that it includes almost all the previous experience of console gaming emulation. It consists of the EmulationStation’s interface with themes for emulators, Kodi media-player, RetroArch (frontend for the Libretro API which helps many of emulators work) and more than 50 systems pre-installed by default.

Build Your Own Retropie Gaming Super Machine

By following this tutorial you’ll be able to make your own Raspberry Pi retro gaming console with Retropie. A powerful all-in-one gaming machine to play almost all known console games as well as the large part of popular old and medium age x86 PC games. For that outstanding retrogaming project you will need:

Model

Raspberry Pi 2 Model B

Raspberry Pi 3 Model B

Frequency

1000 MHz

1200 MHz

Memory

1 GB RAM

1 GB RAM

Operating System

Raspbian Stretch from November 2017

Raspbian Stretch from November 2017

Software

Retropie for Raspberry Pi 2/3

ExaGear Desktop for Raspberry Pi 2

Retropie for Raspberry Pi 2/3

ExaGear Desktop for Raspberry Pi 3

Additional hardware for any RPi model:

Micro SD card (8Gb minimum)

Micro SD card for Retropie gaming machine

USB Controllers of your choice (almost any USB-controllers are compatible, even XBox360 and Wii)

USB Controllers for Retropie gaming machine

A mouse and a keyboard (for the first-time setup)

Mouse and a keyboard for Retropie gaming machine

A TV or a monitor (with HDMI and/or AV cables)

A monitor for Retropie gaming machine

Additional PC (Windows, Linux or Mac) for initial SD card installation and ROMs transferring

Additional PC for Retropie gaming machine

Well, as soon as you gather all the necessary parts together, the real work just starts at this point. Generally, you need to do the following big steps:

  1. Download and install Retropie
  2. Configure controllers
  3. Configure WiFi
  4. Add ROMs to Retropie (game files)
  5. Manage emulators (optional)
  6. Add ExaGear emulator for x86 PC games (2018 must-have!)

Retropie is compatible with any model of Rasberry Pi but it’s recommended to use the Raspberry Pi 3 Model B for the best performance.

How to Install Retropie

In this post, we are going to introduce only the Raspberry Pi tutorial, as one of the most popular devices to build a gaming machine on. If you’d like to learn more tutorials, visit the special page on Retropie official website.

Basically, there are two options for installation of Retropie on RPi devices: set up Retropie as an SD image (with no OS on a hardware) and installation on top of an existing operating system.

Install Retropie on RPi with an SD Card Image

To make a Retropie image on some SD, follow this simple algorithm.

1. Download the proper image of Retropie (you’ll need to choose between Raspberry Pi 0/1 and Raspberry Pi 2/3).

2. Unpack the downloaded archive using the app of your choice (note, that the file is going to have the .img format).

3. Write an image using an SD card and a special application. The further depends on what additional device you are using: Windows PC, Mac or Linux device. For PC use Win32DiskImager app, for Mac – Apple Pi Baker, and for Linux – Etcher (or use the command line). Depending on your device, follow the steps respectively (see below):

Writing a Retropie image on an SD card

4. As soon as the image is ready, simply insert the SD card into your Raspberry Pi and switch it on. The Retropie will start booting automatically. On the first boot, you’ll need to configure the controllers. For that, simply hold the proper button you want to assign.

Also, it’s worth mentioning, that on the first boot, you won’t find any emulators. To display them, you need to add the respective ROMs for that gaming system in the system folder. We’ll show you what the ROMs are and how to add them a little bit later in this article.

Install Retropie on top of Raspbian

1. Set up the “Locale” settings. For that use the command locale in the command line. You should see the following output:

Writing a Retropie image on an SD card

If something from above is unset or displays the wrong value, you need to correct that parameter with the following command:

$ sudo update-locale LANG="en_US.UTF-8" 
#replace the LANG with any parameter from the list above and set the value within ""

2. Install the packages for the RetroPie setup script:

$ sudo apt-get install git lsb-release

3. Download the RetroPie setup script:

$ cd
$ git clone --depth=1 https://github.com/RetroPie/RetroPie-Setup.git

4. Launch the script:

$ cd RetroPie-Setup
$ git clone --depth=1 https://github.com/RetroPie/RetroPie-Setup.git
$ chmod +x retropie_setup.sh
$ sudo ./retropie_setup.sh

As soon as you are done with that, Retropie will start an automatic first boot. As the result, you should see the Welcome screen. Now you can set up the controllers and assign the buttons for controlling and playing. It’s very easy to do just by following the prompts you will see.

Raspberry Pi emulator Retropie welcome screen

As the final result, you won’t see any emulators available. For them to appear, you need to install console game files to Retropie (called “ROMs” – read below). For instance, if you install ROMs for NES, the NES emulator will appear on the list.

Configure Retropie Controllers

Well, now you’re done with the installation an are making your first boot. On this step, you need to configure the controllers by switching to the menu after you’ve seen the welcome screen posted above. All the controllers are automatically detected, so make sure you have plugged them in before the booting. To proceed from the detection to the assigning the buttons, just push any button on your gamepad.

To set the controls just follow the prompts you see in the window of the interface screen and hold the button you’d like to assign. As soon as all the buttons are assigned, the window will be closed.

There are three possible ways to configure the controllers:

  1. Autoconfigurations
  2. Hardcoded Configurations
  3. Core Input Remapping

By configuring the controllers for Emulation Station you automatically set the same configuration for libretro (RetroArch) emulators as well. This is an example of the Automatic configuration.

Hardcoded Configurations is the way of setting the configuration for a specific emulator, system or even an individual game. For that, you need to make manual edits into the “retroarch.cfg” files, which you can find in the emulators’ directories. For example, the global settings are done in /opt/retropie/configs/all/retroarch.cfg. Each emulator has got its own file directory.

Core Input Remapping is made via RetroArch RGUI and sets different controls for specific cores. It means that the buttons will be remapped in accordance with what core you are operating on at the moment. This specific action can be done with the following:

  1. Start the game wich controllers you’d like to remap
  2. Open up the RGUI. You can do it with hotkeys combination “Select+X” (see the details below)
  3. Go to Quick Menu -> Controls
  4. Do the configuration you want
  5. Then choose either “Save Core Remap File” for assigning the remapping for the whole emulator, or “Save Game Remap File” for the particular game only.

Finally, despite any way of configuration that you prefer for your Retropie, there are the hot keys for all controllers set by default:

Retropie control configurations hot keys

Configure WiFi

It’s really convenient to use WiFi connection for updating and transferring ROMs to your Retropie. Raspberry Pi 3 has got the WiFi module and that’s why it’s highly recommended for your Retropie project.

The easiest way to set up WiFi on Retropie is through the EmulationStation menu. To do that, you just need to select the “WiFi” option:

Retropie WiFi configuration setup

You’ll be transferred to the setup menu, looking like that:

Retropie WiFi configuration setup - choosing the wifi connection name

Then, you’ll need to follow a few very simple steps:

  • Choose “Connect to Wifi Network”
  • Find and choose your WiFi name from the list
  • Input the password and push “Ok” button

After the WiFi connection is saved you should see the respective WiFi connection information in the menu. This way is the simplest possible. There are actually 4 more advanced ways to set up the WiFi connection for Retropie. You can find all of them on their official web-site.

Retropie ROMs

Basically, ROM is an abbreviation for Read Only Memory. Retropie ROMs are the digital copies of old game cartridges (CDs) for game console emulators. You need a particular game ROM to have this game up and running with a particular emulator on the Retropie.

So, where can we get them and how to add ROMs to Retropie?

Due to the Copyright Property Rights Law ROMs cannot be provided with Retropie and should be found and added by users. There is a small chance that you can find ROMs on sale on special e-commerce websites. Otherwise, downloading them, which is a much more available option on the Internet, is illegal. Although a bunch of sites offers peer-to-peer downloads.

And as soon as you get the ROMs, you need to upload them to Retropie. There are three ways to do that: using USB, SFTP or Samba.

Transfer ROMs via USB (must be formatted to NTFS or FAT32):

  • Make up a “Retropie” folder on your USB
  • Plug it into the Pi and wait for it to finish blinking
  • Unplug it and then insert it into the PC you keep the ROMs on
  • Add the ROMs to their respective folders (in the retropie/roms folder)
  • Plug it back into the RPi
  • Refresh Retropie by restarting it from the start menu

Transferring ROMs via SFTP:

  • Enable SSH via sudo raspi-config terminal command
  • In the pop-up window follow the path: Interfacing Options -> SSH -> Enable -> Reboot Your Pi. After rebooting, move on to the next step
  • Access to Retropie folders via some app (we recommend WinSCP on Raspberry Pi). Use the default username “pi”, and default password “raspberry”.
  • Transfer the ROMs

Transfer ROMs with Samba:

  • For Windows: type “\\retropie” into the computer folder
  • For MAC: open finder, select “Go” menu and “Connect to Server”, type “smb://retropie” and hit “Connect”
  • Transfer the ROMs

For illustration, we advise you to watch a great video on Retropie setup on ETA-Prime youtube channel.

That’s it! Time to play. Just get back to the interface, find the emulator you want and then choose the game.

How to Update Retropie

If you have the Retropie image up and running on your device, you’ll certainly want to use the most up-to-date version of the software all the time. For that, there’s a very straightforward way to update your Retropie application directly from the main interface menu:

1. Open Retropie welcome screen and choose “Configuration” from the main menu.

Retropie update step 1

2. Then keep on with the “Retropie Setup” option.

Retropie update step 2

3. Select the “Update Retropie-Setup Script” and press “Ok” button. Then you need to wait for a little until the system downloads and installs the updates automatically.

Retropie update step 3

4. Finally, perform a reboot by choosing:

Retropie Update - rebooting

Note, that it is recommended to backup the whole Retropie image to an SD card to prevent the loss of configurations and games you’ve collected before the update. Actually, the cases when something goes wrong is very rare but still take place. So, it’s smart to do the backup beforehand, just for the occasion. Learn the simplest way to back up the Raspberry Pi SD card in this article.

How to Install Retropie Emulators

Retropie systems mean a bunch of emulators which are included in the Retropie package. A part of them is available by default and another part goes as an option. It was proved to be reasonable limiting the pre-installed number of emulators in the pursuit of maximizing the application performance as well as user experience. The default list of emulators is formed up in accordance with many years of experience and tons of feedback from users, who defined what they tend to use and what works the best. See the essential list of Retropie emulators below:

3do

Amiga

Amstrad CPC

Apple II

Atari 2600

Atari 5200 and 8 bit series

Atari 7800

Atari Jaguar

Atari Lynx

Atari ST/STE/TT/Falcon

CoCo

Colecovision

Commodore 64

Daphne

Dragon 32

Dreamcast

FinalBurn Alpha

GameCube

Game & Watch

Game Gear

Game Boy

Game Boy Color

Game Boy Advance

Intellivision

Macintosh

MAME

Master System

Megadrive/Genesis

MESS

MSX

Nintendo 64

Nintendo DS

Nintendo Entertainment System

Neo Geo

Neo Geo Pocket

Neo Geo Pocket Color

Oric-1/Atmos

PC

PC Engine/TurboGrafx-16

PC-FX

PSP

PlayStation 1

PlayStation 2

ResidualVM

SAM Coupé

Saturn

ScummVM

Sega 32X

Sega CD

Sega SG-1000

Super Nintendo Entertainment System

TI-99/4A

TRS-80

Vectrex

Videopac/Odyssey2

Virtual Boy

Wii

WonderSwan

WonderSwan Color

Zmachine

ZX Spectrum

Anyway, you are always free to install any additional emulators in an easy and quick way using the interface menu.

For that, go to the main menu and find the Retropie Configuration and go to “Retropie Setup”.

Add emulators to Retropie - go to Retropie Setup

Then choose the “Manage Packages” option.

Add emulators to Retropie -

You’ll see the list of possible packages. Among them, there are the “Core” and the “Main” packages which come pre-installed with a Retropie image (in fact the Core ones are needed for Retropie to run, so, DO NOT REMOVE THEM!).

The “Optional” and the “Experimental” packages are those, which aren’t included in the basic Retropie image and you can install them additionally. The “Experimental” section includes all the new emulators that haven’t been tested yet and may contain bugs. So, we’d recommend focusing on the “Optional” emulators.

To proceed with the emulators installation go to the Optional packages list.

Add emulators to Retropie - go to Optional packages

There you’ll find a large list of possible systems. Select the needed system:

Add emulators to Retropie - select the system

When you select the system you’ll get into the list of emulators, that can emulate this particular console. Choose whatever you like:

Add emulators to Retropie - choose the emulator

In the context menu, choose the option “Install from binary” if available (some emulators have only “Install from source” option):

Add emulators to Retropie - install an emulator from binary

If the installation is performed well, the “Install from binary” should change into “Update from binary”. So, just finish the setup by rebooting the Retropie. After you perform an installation for any of the packages, it gets the mark “Installed”.

Remember! Even if you have installed the emulator, but haven’t added any relevant ROM files for it, this console will not appear in the main Retropie menu. To see this system, you need to have at least one ROM loaded in the respective system ROMs folder.

ExaGear Emulator for Retropie to Play x86 PC games

Among lots of emulators available for playing retro console games on Raspberry Pi, ExaGear Desktop is an emulator to stand out. It’s an additional software which can be run on top of Raspbian and side by side with Retropie as well. The key feature of ExaGear is that it can put your Retropie gaming experience to the next level on Raspberry Pi.

  1. The ExaGear emulator allows playing x86 Windows PC games on Raspberry Pi. Of course, the level of games should be relevant to hardware performance limitations. For example, such games as Fallout, Arcanum, Heroes III etc. are OK. But the latest Destiny 2 will never start! 🙂
  2. ExaGear supports hardware graphics acceleration and widens the variety and level of PC games to be launched on RPi. The latest attempts show good results in playing Counter-Strike and Diablo II on Raspberry Pi 3 (read more here)
  3. Since the latest update in 2017, ExaGear Desktop emulator can be integrated into Retropie, which is very convenient. It enables installing PC games and runs them directly from the Retropie’s interface.
  4. ExaGear for gaming is compatible not only with Raspberry Pi (all models) but with Odroid as well. You just need to make sure you have downloaded the proper version.

In addition, it’s worth noting that ExaGear runs headless and is very convenient and easy to use. So, the only thing you need is to download it, set up and start. For that, simply follow the instructions below.

ExaGear Desktop installation instruction

First of all, we need to install Exagear Desktop Emulator on Retropie. To do that, you need to follow these steps.

1. Open Retropie and call for the terminal inside the Retropie interface by pressing “Ctrl+Alt+F4”.

2. Download and install ExaGear Rettopie Emulator with this command (you need to be in “home” directory):

$ cd /home/pi
$ wget downloads.eltechs.com/install-exagear-retropie-v2.sh

3. Assign the proper rights to the installer app and launch it:

$ chmod +x install-exagear-retropie-v2.sh
$ ./install-exagear-retropie-v2.sh

4. The next step is to fill out a tiny pop-up form. Input your name, last name and e-mail address to activate the emulator.

ExaGear Retropie pop-up form

5. As the final step, you’ll need to configure Wine. The configuration window will open up automatically and you’ll have to simply tick “Emulate a virtual desktop” checkbox.

ExaGear Retropie emulator Wine configuration

As soon as you are done with all the steps and the installation is finished, perform a reboot.

$ sudo reboot

Add PC Game files for ExaGear Retropie emulator

Now, when the emulator is up and running, it’s time to play games. ROMs for ExaGear emulator differ from ROM files for Retropie console emulators. To play x86 PC games, you’ll need to get images, distributions or installers. It’s possible to run a different kind of distros and installers, but in some cases, you’ll need to do unobvious tricks to make it work. That’s why we recommend using DRM-free versions of games from the special website www.gog.com, as this is the most straightforward way to launch a game.

Beware of using other sources which offer the game files for free, as they are breaking the Copyrights Law Regulations. For more up-to-date games (Like Counter-Strike, for example) you can also use Steam (you’ll need to use the Linux version of the client via Wine).

ExaGear emulator for Retropie doesn’t have or create a special folder for PC games to store. So, you need to do everything manually and can load all the game files right into the Retropie folder. This process is really straightforward and is illustrated in the video guide below:

If you need more detailed instructions with pictures and videos, see our full detailed guide on how to install ExaGear emulator on Retropie.

Examples of x86 PC games to Play on Retropie with ExaGear

For you to understand the ExaGear’s capabilities, I’ve gathered the games we have already installed and run on Raspberry Pi with ExaGear, so they are proved. The assembly below illustrates the process of installation, which is very simple. For of all of them, before you start installing the game itself, you should make sure that ExGear is up and running on your device. To learn how to do that see the above part where the ExaGear Desktop emulator is described.

So, to check that ExaGear emulator is working properly and to start it at the same time, you should fulfill the following terminal command:

$ exagear
$ arch
i686 # - if you see this output, everything is OK, move on to the next step
GAME How to set up
Arcanum
Arcanum to Play on Raspberry Pi with ExaGear via Retropie
  1. Download the game file from a special website.
  2. Run the command in the terminal:
  3. $ cd /home/pi/Downloads
    $ wine setup_arcanum_2.0.0.15.exe
  4. Follow the prompts shown in the game installer.
  5. For the best experience add ‘-doublebuffer -no3d’ options to Arcanum launcher
  6. the detailed tutorial

Disciples II
Play Disciples II on Raspberry Pi with ExaGear via Retropie
  1. Download the game file from a special website.
  2. Run the command in the terminal:
  3. $ cd /home/pi/Downloads
    $ wine setup_disciples2_gold_2.0.0.7.exe
  4. Follow the prompts shown in the game installer.
  5. Launch the game directly from the Raspbian Desktop.
  6. the detailed tutorial

Fallout
Play Fallout on Raspberry Pi with ExaGear via Retropie
  1. Download the game file from a special website.
  2. Run the command in the terminal:
  3. $ cd /home/pi/Downloads
    $ wine setup_fallout_2.1.0.18.exe
  4. Follow the prompts shown in the game installer.
  5. Launch the game directly from the Raspbian Desktop.
  6. the detailed tutorial

Heroes of Might and Magic 3
Play Heroes of Might and Magic 3 on Raspberry Pi with ExaGear via Retropie
  1. Download the game file.
  2. Run the command in the terminal:
  3. $ cd /home/pi/Downloads
    $ wine setup_homm3_complete_2.0.0.16.exe
  4. Follow the prompts shown in the game installer.
  5. Launch the game directly from the Raspbian Desktop.
  6. the detailed tutorial

Might and Magic 6
Play Might and Magic 6 on Raspberry Pi with ExaGear via Retropie
  1. Download the game file.
  2. Run the command in the terminal:
  3. $ cd /home/pi/Downloads
    $ wine setup_mm6_2.1.0.42.exe
  4. Follow the prompts shown in the game installer.
  5. Launch the game directly from the Raspbian Desktop.
  6. the detailed tutorial

Pharaoh and Cleopatra
Play Pharaoh and Cleopatra on Raspberry Pi with ExaGear via Retropie
  1. Download the game.
  2. Run the command in the terminal:
  3. $ cd /home/pi/Downloads
    $ wine setup_pharaoh_gold_2.0.0.12.exe
  4. Follow the prompts shown in the game installer.
  5. Launch the game directly from the Raspbian Desktop.
  6. the detailed tutorial

Stronghold Crusader Extreme HD
Play Stronghold Crusader on Raspberry Pi with ExaGear via Retropie
  1. Download the game.
  2. Run the command in the terminal:
  3. $ cd /home/pi/Downloads
    $ wine setup_stronghold_crusader_extreme_hd_2.2.0.8.exe
  4. Follow the prompts shown in the game installer.
  5. Launch the game directly from the Raspbian Desktop.
  6. the detailed tutorial

Sid Meier’s Alpha Centauri
Play Alpha Centauri on Raspberry Pi with ExaGear via Retropie
  1. Download the game.
  2. Run the command in the terminal:
  3. $ cd /home/pi/Downloads
    $ wine setup_sid_meiers_alpha_centauri_2.0.2.23.exe
  4. Follow the prompts shown in the game installer.
  5. Launch the game directly from the Raspbian Desktop.
  6. the detailed tutorial

Caesar 3
Play Alpha Centauri on Raspberry Pi with ExaGear via Retropie
  1. Download the game.
  2. Run the command in the terminal:
  3. $ cd /home/pi/Downloads
    $ wine setup_caesar3_2.0.0.9.exe
  4. Follow the prompts shown in the game installer.
  5. Launch the game directly from the Raspbian Desktop.
  6. the detailed tutorial

Also, stay tuned as we are testing more games, and have already succeeded in running such games as Counter-Strike and Diablo II on RPi. See the video as the proof.

And read the details in this article on how we have made it happen!

Final notes

So, in this article, we’ve learned how to make your RPi (or any other ARM device) a gaming console with Retropie. Moreover, to enhance your emulation machine performance you can use extra software, which will allow you to widen the limits of your personal Raspberry Pi game gear.

Exagear Desktop is able not only to turn your Raspberry Pi into a game emulator but can also help you to significantly increase the capabilities of your RPi based emulation system by letting you run Linux and Windows PC games (such as Might and Magic 6, Stronghold Crusader Extreme HD, Pharaoh and Cleopatra, listed in this tutorial, and more games from our previous articles).

Don’t limit yourself – enjoy more of your favorite games with ExaGear Desktop!

Get my ExaGear Desktop

Also on Eltechs

Virtual machine for Rasberry Pi - ExaGear Desktop

Virtual machines for Raspberry Pi

Choose the best virtual machine for your Raspberry Pi or any other ARM device comparing ExaGear and its alternatives

TeamSpeak 3 Server on Raspberry Pi

Build a TeamSpeak 3 Server on Raspberry Pi

In this post, we will tell you how to setup TeamSpeak 3 Server on Raspberry Pi with ExaGear Desktop which allows running any x86 apps on ARM mini PCs.

Microsoft Dotnet Framework on Raspberry Pi

Run MS .NET Framework 4.5 on Raspberry Pi

Set and run .NET Framework on Raspberry Pi for any specific reason. Step-by-step detailed guide.

Run Wine on Raspberry Pi

Wine on Raspberry Pi

Detailed instruction on running a Wine app on any Raspberry Pi (or other ARM) to port different x86 apps on Raspbian

Get you gaming experience beyond RetroPie level

Gaming Beyond RetroPie

Run iconic PC games like Arcanum, Disciples II and Fallout on RPi with Exagear and improve your device gaming level beyond Retropie.

How to turn Raspberry Pi into gaming emulator device

Raspberry Pi Gaming emulator

A detailed guide on how to make your Raspberry Pi a powerful gaming emulator and run any iconic and nostalgic PC games on Raspbian (or any other ARM).

ExaGear is registered trademark of Eltechs, Inc. Raspberry Pi is a trademark of the Raspberry Pi Foundation. Other trademarks and product names are the property of their respective owners.