Home » RetroPie Project » RetroPie-Setup: An initialization script for RetroArch on the Raspberry Pi

RetroPie-Setup: An initialization script for RetroArch on the Raspberry Pi

If you want to install and setup RetroArch on the Raspberry Pi (TM) together with various emulator cores, all needed libraries for the SNESDev controller interface, and a graphical front end you can now go to https://github.com/retropie/RetroPie-Setup. There you will find an easy-to-use script that installs all essential packages for retro gaming on the Raspberry. I call it RetroPie script.

I prepared a Github repository with a shell script that automatically installs all needed packages. It has a console-based GUI and makes the installation of everything you need for retro gaming very easy. The script was tested on the Raspbian distribution. The following instructions can also be found directly on the Github site.


To obtain the installation script you first need to install two packages with

sudo apt-get update
sudo apt-get install -y git dialog

Then you can download the latest RetroPie setup script with

git clone git://github.com/petrockblog/RetroPie-Setup.git


The script is executed with

cd RetroPie-Setup
chmod +x retropie_setup.sh
sudo ./retropie_setup.sh

You are welcomed with the following screen

Here, you have the choice between two different ways of installation:

  1. Binaries-based installation: This way of installation will download per-compiled versions of RetroArch, various cores, Emulation Station, and SNESDev. In comparison to the second way of installation this is much faster. Even though the binaries will be updated from time to time, a disadvantage is that you probably will not have the most recent versions of the programs.
  2. Source-code based installation: This way of installation will download and compile the most recentsources of all programs and cores. Compiling everything takes some hours, but you will have the most up-to-date releases of the programs. When you choose this option in the menu a screen will appear that lets you select (with the space and arrow keys) the individual tasks to be done by the setup script:

    The default selection will install the complete set of packages.


With it’s default configuration the RetroPie setup configures the graphical front end EmulationStation such that a set of emulators can directly be used by the front end. You can start the front end with


Before that, however, you need to copy your ROM files into the according RetroPie/roms/ folders. Every emulator has its own subfolder here. Due to the early stage of the ALSA implementation on the Raspberry you can expect some creaking when using the analog output. I made quite good experiences with the HDMI output. For now, another solution for that seems to be the use of an external USB soundcard until the problems with the ALSA implementation are solved.

I really would like to see this script be further developed by you and me!! I think that Github is the right place for that.


Check Also

Quick Installation Script for the ControlBlock

We realized that the installation of the ControlBlock driver could be simplified. Therefore, we created …

  • I’ve got it working great for SNES (only thing I’ve used so far), but I’m having a bit of a problem with exiting a game.
    F4 works while at the menu (emulationstation), but the keyboard appears dead (caps lock/numlock doesn’t work) when a game is running.
    Am I missing a setting somewhere?

    • This question may be put in the wrong place, I’ll post it on the raspberry forum instead 😉

    • I observed that the Rasperry is very sensitive to the power source. If you have the possibility I would suggest to try another source with at least 1A (1000mA). Or another USB keyboard or an active USB hub.

      • I’ll have to see if I can’t get my hands on one then, I’ve got an extra Apple charger, that should supply sufficient power, just need a cable that fits 🙂

    • machete234

      You can try running it not in the xserver but in another console like ctrl+alt+f1, log in and start emulation station.
      My keyboard then wasnt dead and I can exit a game with esc, f4 closes the whole emulator.
      Nothing is saved when I use esc, at least I think so.

      • I wasn’t running it in X, never really saw the need 🙂

  • De_Cadanz

    Great! I’m making retro-emulation console too, but with standard USB gamepads. And put it to Russian famiclone called Dendy Revolver.
    1. When I try to launch emulationstation, it says “missed font”, until I place font to the /home/raspbian folder.
    2. I’m get a problem like a Lukeren says. My USB keyboard get off when I start game. But can I bind system hotkeys (exit game, etc) to the joypad buttons? How I can made it? I’m try to write input_exit_emulator = “6” (or just 6), but it don’t work.
    3. EmulationStation curses to roms named with “(“, “[” and “&” characters, its normally?
    4. If you want to make EmulationStation more beatiful, I can help you with graphical elements. Send me e-mail if you want. Or maybe you try Typhon as frontend?

    • Hi,
      thank you for your comment – your project sounds fun!

      Regarding EmulationStation I would suggest to get in contact with the developer Aloshi at his Github repository https://github.com/Aloshi/EmulationStation/issues! I am quite sure that any help, comments, or suggestions are appreciated!

  • De_Cadanz

    And now my my problems with binding is solved: config string for gamepad buttons should be input_exit_emulator_btn = “6″ instead of input_exit_emulator = “6″ for keydoard.
    Welcome to my blog (russian language, but we have google translate=)

    • Shawn

      Thanks for this, helped me a lot, except I used the guide button for exiting instead.

    • MIDItheKID

      Hey De_Candanz,

      Where are you putting this line? In the retroarch.cfg?

      Do you know if you can make it multi-button exit (press 6 + 7 + 8 to exit)?

  • So I installed this… how would I start from command line, say, the SNES emulator by itself?

    • You can run a SNES rom by calling “retroarch -L /home/pi/RetroPie/emulatorcores/pocketsnes-libretro/libretro.so /home/pi/RetroPie/roms/snes/nameofyourrom.smc”

      • Thank you for answering my noob question! And a thousand thank yous for setting up this install script, it is awesome!

  • Pingback: Major Update for RetroPie Setup | petRockBlog()

  • Shawn

    Florian, update the retroarch.cfg file with audio_out_rate = 44100
    Using that config the ALSA sound coming from the headphone jack is a lot clearer and has a lot less static.

    • Thanks a lot for your suggestion!
      I will consider this in a following commit!

  • Hi I’ve started to use this and love it.
    I was just wondering is there any way of starting Emulationstation on boot instead of going into the terminal and manually starting it. The reason being is I want to turn on my Pi with Joypad attached and not have to do anything through a keyboard or SSH.

    Great work though as you’ve simplified a huge process!

    • Hi Stephen,

      thanks a lot!

      I have this boot option at the top of my to-do list and I will commit an update for the script soon.

      • Brilliant 😀 Looking forward to it, in the meantime my son and I are enjoying some retro gaming thanks to your simplified installation 😀

    • I just committed an update for the script that will allow you to set things up for starting Emulation Station on boot.

  • Pingback: SNESDev-RPi: A SNES-Adapter for the Raspberry Pi | petRockBlog()

  • cardz

    hello, I am really greatful for this script, I have RetroArch up & running on my Pi, with snes ROMS tested & working.

    I’m struggling with joypad setup. I have a logitech USB PS3 controlelr which seems to work with the Pi. I have managed to configure navigating the emulators/ROM lists with the joypad but cant seem to get it to work with the SNES emulator. I have tried running retroarch-joyconfig however I always get “command not found”

    Is there another way to set up the gamepad for use withing the snes emulator>? Can anybody help?


    • MIDItheKID

      In terminal (before startx), browse to the folder where the retroarch-joyconfig is (default should be /home/pi/RetroPie/RetroArch-Rpi/tools) then use the command

      This will get the joyconfig running.

      I’m still stuck after this. Some of the buttons don’t register for some reason, and the ones that do, don’t write themself to the configuration. I took note of which button is which, and then tried to apply them manually to the retroarch.cfg, but I must be doing something wrong, because it’s not working.

      • Cardz

        Hey, thankyou for the reply. I was getting nowhere without the “./” at the beginning of retroarch-joyconfig! Linux n00b eh?

        I can help you with your problem, running the retroarch-joyconfig alone isnt enough, the output need to be written (appended) to the retroarch.cfg file so it remains after reboot.

        I think the exact command to use is “./retroarch-joyconfig >> ~/.retroarch.cfg”

        Then run the button config again!

  • I was reading in the Pi forum a thread concerning setting up the wireless USB Xbox 360 controller. I looked on Amazon for one of the USB connectors (as I have an old controller laying around) and noticed that there are two of them. A Microsoft (expensive) one for $21.99 and a cheaper Xbox 360 one for $12.45. Has anyone tried the cheaper one, do you know if it works or not the same as the Microsoft brand one?

  • I wanted to update my installation, so I did a rm rf Retropie* … When I execute the setup script, all I get is, well, nothing 🙂

    This is what happens: https://dl.dropbox.com/u/3851166/retropie.png

    • Hmm, I just checked this behavior myself with the root user. I run the script with ./retropie_setup.sh and everything works. Maybe you were still in an already removed directory? Usually removing RetroPie and RetroPie-Setup with “rm -rf RetroPie…” followed by a new git clone should give you a completely fresh installation.
      Could you maybe try to describe how this can be reproduced?

      • I’ll do you one better 😉


        I’ve noticed however, that the script creates a folder in /home called root, and in that folder it creates a RetroPie folder. The folder is empty though.

      • Found the problem, for some reason the ‘dialog’ command was missing, so the while true loop kept running not doing anything. All fixed now 🙂

      • good to hear that!
        Maybe I should insert a check for that. I have inserted a check for that.

  • Corey

    Thanks so much for this–I installed the binaries very easily and set up the NES, SNES, and 2600 emulators. I do have one question: I’m trying to use a Logitech F510 Joypad with an xbox layout. When I try to run retroarch-joyconfig, it doesn’t detect the gamepad. It shows up if I run lsusb, but retroarch doesn’t seem to detect it. If anyone has any suggestions, I’d really appreciate your help.

  • tnt06

    Has anyone used this running raspbmc? I was wanting to play NES roms using xbmc with the advanced launcher plugin. I’m not sure what to launch though: Emulation Station/Retro Arcade/NES specific emulator?

    • Kevin

      we tried to get it running in raspbmc…
      In Rom Collection browser and in Advanced launcher .. but no proffit so far 🙁

    • I got the RetroPie suite (including retroarch) compiled on raspbmc. In trying to compile retroarch manually I noticed it was looking for several header files which on the wheezy platform exist in /opt/vc/include. These files are put there when the firmware is updated via raspi-config.

      The reason raspi-config won’t run is because the ca-certificates package is missing from raspbmc. So,

      # sudo apt-get install ca-certificates

      Once this dependancy was installed I was able to get through the full source build of RetroPie — including, most importantly, the firmware update which installs the missing headers.

      • Thanks for that hint!
        I will add this to the RetroPie Setup Script. Just to be sure: Did you use the raspi-config or the rpi-update script to update the firmware?

      • I just chceked my command history, and indeed it was rpi-update. Sorry — I mixed the two up.

        Upon installing the ca-certificates package, I did a git clone of git://github.com/Hexxeh/rpi-update.git. I ran rpi-update manully to confirm that it installs the header files in /opt/vc/include.

        Once those files were in place, running the full source build in retropie-setup.sh worked with no errors (which included re-running rpi-update …. for good measure! )

      • I’m trying to install retropie on raspbmc but not being very successful.. it’s breaking raspbmc.. shortly after the installation of retropie starts it asks me if i want to replace or leave udev, udev.conf and a couple of other udev files… i also tried the steps ca-certificates and rpi-update to add header files btu when i check in opt/vc there is no include folder? how would i fix this?

  • Gubernatio

    HI there, Sorry if this is a really stupid question, but I have gone through the installation script and used the binaries based install. All seemed ok.
    I then put some game roms into a few of the system folders, (snes, gbc, gba and atari 2600).
    I then turn on my pi, log in, and then type emulationstation.
    It then returns with :
    ~/RetroPie/EmulationStation ~
    ~mulationStation cleanly shutting down…te it.ion / es_system.cfg was found but contained no systems

    Being a complete linux novice on a steep learning curve, I haven’t a clue what this is referring to. 8/
    Thanks in advance 😀

    • Hi Gubernatio,
      I just checked this and I found a bug in the script – thank you for pointing me to that one!
      I commited a fix for that that should solve this problem. For you the easiest thing would be to delete the RetroPie-Setup folder and to download and start the setup script again (as described at https://github.com/retropie/RetroPie-Setup). You can then run the binaries-based installation again and things should work!
      Please tell me if this solved your problem.

      • Gubernatio

        Thanks for the quick reply!
        I think that helped as I now get into the menu system! yay
        However I don’t seem to be able to start any games. Only F4 on keyboard or Start button on the gamepad seem to do anything, and that’s to open a Restart/Shutdown menu. Am I supposed to do anything to the emulators like add bios files?

      • Make sure that the extensions of your rom file are written in lower-case letters (except for Doom, there it is “.WAD”).

        Instead of starting the ROMs with EmulationStation, you could also try to start them directly from the console.

        cat ~/.emulationstation/es_systems.cfg

        shows you the commands that EmulationStation is using to start the ROMs. You have to replace %ROM% with the path to your desired rom file.

        I hope this helps?!

  • Colin

    Running into a problem with starting emulationstation and retroarch — both are giving me bash “No such file or directory” errors. The binaries appear to be where they should be, and they both are marked as executable. Also, ldd is telling me that all the .so files are being found… Any thoughts?

    • Hmm, I tested the current release again and everything is working here. I tested it on a fresh Raspbian installation by following the exact steps that are described above.. Everything must be run from the shell only, without X running in the background.

  • Simon

    Somehow the Source-code based installation doesn’t work for me, i tried it last week and afterwards i couldn’t get the Raspberry to boot, i was stuck with a single red LED.
    After that i tried the faster binaries-installation, which worked withouth problems.
    Now i wanted to give the Source-code based installation a new chance as i wanted to have the newest, best running emulators, and again i’m stuck with the red LED.

    Running on a fresh Raspbian, during the installation i got errormessages that no space was available, and it couldn’t write.

    • It seems as if you might not have your resized your partition to its full size.
      You can check this with the command “df -h”. /dev/root shows you the free space of your “main” partition. What size does your SD card have? You can do a resize of your partition with the shell command “sudo raspi-config” and then choosing “expand_rootfs”. You need to reboot your Raspberry with “sudo reboot” afterwards.
      Does this solve your problem?

      I have updated the free space check in the script. It now checks for 500MB of free space (it was 300MB before).

      • Simon

        Thanks for the fast reply,
        resizing the partition did the job, i had 332MB free space
        Now i just need to tackle a few more problems and i’m ready to play secret of mana again =)
        I have the sound barely working and my dualshock2 controller via usb-adapter isn’t always working as it should be.
        Is there an FAQ somewhere to be found? It is a little bit frustrating to keep digging through 4 threads on the Rpi forums that are related to Retroarch and comments on your blog for every little problem someone has perfectly answered before.
        Also i would like to have a list of all the keybindings of the keyboard to the emulationstation and the emulatorcores.

        I’m sorry if I just came up with more problems and questions but I would really love to be able to use Retroarch in all its Glory =)

      • Good to hear that you are making progress!
        Hmm, Besides the official forum, I do not know any FAQ for running RetroArch etc. on the Pi. I have prepared a wiki on the RetroPie setup site at https://github.com/retropie/RetroPie-Setup/wiki. Right now, there is no content. But that wiki could serve as a source of all kinds of collected information around the components that are installed with the RetroPie setup script.

        WRT to Emulation Station: You can use the arrow keys for navigation, the F1 key for reboot and shutdown, and the F4 key for exiting Emulation Station.

        All settings for retroarch can be found in /etc/retroarch.cfg (if you use only the original RetroPie script) or, alternatively, in your home directory at ~/.retroarch.cfg.

        Sound is an ubiquitous problem with the RPi and is tackled by the community these weeks and months (at least that’s my impression).

  • Pingback: Превращаем Raspberry Pi в игровую ретро консоль | wp2005 Превращаем Raspberry Pi в игровую ретро консоль |()

  • Brian


    I went ahead and followed your steps to getting EmulationStation/RetroArch installed on my system today. I followed the Binaries method, as I doubt building from source would be worth it for me. I received the es_systems.cfg error that was described earlier. Is it possible a change was made to the script since? Or should I be looking for something wrong on my end?


    • Hi Brian,

      I will check this later today! Update: I ran the script on a fresh Raspbian installation and everything worked out of the box.

      Until then you can first of all try to start a ROM from the command line (https://github.com/retropie/RetroPie-Setup/wiki/How-would-I-start-from-command-line,-say,-the-SNES-emulator-by-itself%3F)
      If this works, it is “just” a problem with the es_systems.cfg. Take care for lower- and uppercase extensions:
      Atari 2600: .bin
      Doom: .WAD
      Game Boy Advance: .gba
      Game Boy Color: .gbc
      MAME: .zip
      Megadrive: smd
      NES: .nes
      SNES: .smc

      • Brian

        Thanks for getting back to me so quick! I will try to run it from command line first, if that doesn’t work, I looked at the script so I will just write the es_systems.cfg myself.

      • I have found a bug in the binaries-based installation that affects the access rights to the EmulationStation configurations. The repository was just updated and the fixed script might also solve your problem!?

  • Pingback: A Wiki for the RetroPie setup script script and a debug log | petRockBlog()

  • Brian

    Hi Florian,
    I followed some steps you posted in another forum and removed the install completely, re cloned the git and re-ran the install script. It worked like a charm!
    Thanks Again,

  • Pingback: Gamecon driver module for NES, SNES, and N64 controllers Added to RetroPie Setup Script | petRockBlog()

  • Biernot

    Hi there, I installed RetroPie and put some roms in the /roms/snes/ folder. When I start emulationstation, I can see a list of my roms and can select one of them with the UP and DOWN keys (keyboard). But I cant start a rom. I have tried any other key on my keyboard but nothing happened.

    I also dont have a es_input.cfg in my home/pi/.emulationstation/ folder.

    Please help

    • Please use the “Generate debug log” function in the setup menu. This will generate the file /home/pi/RetroPie/debug.log. Could you send me the content of debug.log via the Contact form of this blog, please?
      Also, have you used the binaries- or source-based installation?
      Do you see an error message on the console, when you try to start a rom and press “F4” right afterwards (F4 exits Emulation Station)?
      Cam you start a rom from the command line by following the manual in the wiki at https://github.com/retropie/RetroPie-Setup/wiki/How-would-I-start-from-command-line,-say,-the-SNES-emulator-by-itself%3F?
      Please, send me the debug.log!

  • Reblogged this on Gigable – Tech Blog.

  • fidelgvelasquez

    I am currently using the standard Raspbian distribution (2012-08-16), and I installed from source (it didn’t take as long as I had expected), but when I tried to start it for the first time (with no ROMs in the folders), all that happened was a white dot showed up in the middle of the screen. I tried again later, after adding ROMs, but it still didn’t work. I am using a 5V 2A power adapter, an Apple Aluminum Keyboard, a 16GB micro SD (not sure what class, probably 4) with an adapter, and I have my Raspberry Pi overclocked to 900 MHz with 500 MHz SD RAM frequency. I have tested on both HDMI (at 1920×1080) and composite (RCA) video (not sure what resolution, but it was 4:3), and with and without ethernet plugged in. Any suggestions?

  • M

    What are the default key bindings for mame games? I can get it run, but can never insert a coin or start the game. Im using a keyboard. Or at least wheres the config file to change the key bindings?

    Hopefully performance will increase over time, even NES games are basically unplayable. 🙁

  • I just today downloaded and ran the installer (install from binaries) from the Git repo. I think it mostly worked, but I was unable to really test things, as emulationstation wasn’t installed at all. There was no EmulationStation directory created, so the /usr/bin/emulationstation command didn’t do anything useful. Creating the appropriate directories and re-running install-from-binary didn’t work either (I had hoped it was a minor script error).

    I don’t know if this is a one-off error (I’m not installing it on raspbian, but instead on a raspbmc installation, which is mostly raspbian), or a change to the underlying system.

    I tried installing emulationstation manually, but the basic git installation of that failed early in the make process (looking for an open GL library, if I read the error correctly). I am working on doing an install-from-source of retropie right now, I’ll see if that works.

    • The script is only tested on Raspbian. Thus, I would assume that the binaries-based installation will fail due to different shared libraries. The source-based installation might work, if all missing packages could be installed. For compiling Emulation Station you could specifically follow the steps at https://github.com/Aloshi/EmulationStation.
      For now I concentrate on Raspbian – but you could help a lot of people by posting your solution for RaspBMC-specific problems here!

  • Like Colin above I’m getting the error: “/usr/bin/emulationstation: line 9: ./emulationstation: No such file or directory”

    I’m not particularly good with Linux but as far as I can see everything has gone through as instructed (tried both methods of installation) – any suggestions?

  • My debug is exactly like MrCraigL’s. I can run a snes game, but the game freezes after around a minute and my emulationstation will not execute. It never creates an es_config file for me.

    • If you can run a game and it freezes it is probably an hardware issue – you might try to use another overclocking option (if you are overcklocking at all).
      Also, the RetroPie script is only tested on Raspbian.
      You need to be more a bit more specific about your distribution, what you already have done before, what works, what not works … Maybe the problems also come from changes by some recent official firmware updates.

      • I’m using the CNX image of raspbian. I’ve disabled the overclock and zram to test and this wasn’t the issue. Disabled sdl and that wasn’t the issue. I was able to run all the cores on a previous build, though I was never able to get emulationstation working. I have a backup image with working cores, I guess I can update that image and see if it breaks it, but I’m out of ideas.

      • You could prepare a fresh, working installation with the official Raspbian distribution (non-CNX version) and the RetroPie setup. You could then find all dependencies for emulationstation via ldd etc. and see if your CNX installation contains all these dependencies (if you want to stick to the CNX version). Just an idea …

      • I put a rom into the SNES folder, same problem. Trying to launch the SNES emulator with the command I got “-bash: /usr/local/bin/retroarch: No such file or directory”

      • Hmm, according to your debug.log, retroarch exists at “/usr/local/bin/retroarch”.
        Your command looked like this

        retroarch -L /home/pi/RetroPie/emulatorcores/pocketsnes-libretro/libretro.so “PutNameOfRomHere”


      • Here’s what I’ve tried:

        pi@raspberrypi:~/RetroPie/roms/snes$ retroarch -L /home/pi/RetroPie/emulatorcores/pocketsnes-libretro/libretro.so /home/pi/RetroPie/roms/snes/MM2.smc
        -bash: /usr/local/bin/retroarch: No such file or directory

        pi@raspberrypi:~/RetroPie/roms/snes$ retroarch -L /home/pi/RetroPie/emulatorcores/pocketsnes-libretro/libretro.so “/home/pi/RetroPie/roms/snes/MM2.smc”
        -bash: /usr/local/bin/retroarch: No such file or directory

        pi@raspberrypi:~/RetroPie/roms/snes$ retroarch -L /home/pi/RetroPie/emulatorcores/pocketsnes-libretro/libretro.so “MM2.smc”
        -bash: /usr/local/bin/retroarch: No such file or directory

        And here’s the relevant file:
        pi@raspberrypi:~/RetroPie/roms/snes$ ls
        MM2.smc theme.xml

      • Hmm, I would try to re-install the RetroArch emulator: Start the RetroPie script, choose “source-based (custom) installation”, and then de-select everything except “Install RetroArch”. Hitting ENTER starts the download, compilation, and installation of the RetroArch emulator. The script explicitly checks, if /usr/local/bin/retroarch can be found after the installation and gives a warning if it cannot find it. Does this work?

  • I am having a very hard time getting my controller to work with the emulators. It works fine with the frontend, just not with the emulator. I have tried running ./retroarch-joyconfig >> ~/.retroarch.cfg which starts up the joyconfig and creates a new retroarch.cfg in the tools folder. I took the values of what was in that file and added them to the cfg file in the RetroArch-Rpi folder, but still do not have functioning controls in-game other than keyboard.

  • Works great so far on the official Raspbian. Tested snes and emulationstation front end and both work for me now.

  • Pingback: The RetroPie Project: An Interim Report | petRockBlog()

  • So I got this up and running and it works great in NES and SNES and with my $15 radioshack controller. however I am having some trouble with MAME. the only game that seems to work so far is Black Tiger, which is awesome, but I can’t seem to get pacman, galaca or anything else to work.

  • Pingback: SNESPi: Super Nintendo Pi()

  • Every time I try to run anything, it doesn’t work. If I run the program directly, it loads, but when I select a ROM, emulationstation minimizes, nothing happens, then it pops back up.

    if I start it from the terminal, the same thing happens, but in the terminal it says “sh: 1: retroarch: not found” … launch terminated!

    the cfg file points to files in the emulatorcores folder, and the files it’s pointing to are there. idk what to do

    • There were quite some changes in the sources and organization of files and folders recently and that introduced at least one bug. I have just committed an update for the script and it should work now! You can either run the binaries- or source-based installation.
      Does it work for you now?

      • I’m at work right now, but when I get home I’ll remove everything and try a clean install. Thanks for the update to the script and I hope it works. I’ll let you know this afternoon.

  • ok, so I did a clean reinstall. It works… kind of. I’ve tried starting the program 3 different ways, and have had no success.

    first, I tried just double clicking the .exe file and starting emulationstation that way. The program loads up, and I can load roms, but, as expected, I lose keyboard control and can’t do anything. The game started up, but I couldn’t interact with it

    I tried launching from the terminal, but it just said it cant start while x running.

    so I tried launching it from the command line, it said it launched, but that no systems were present and nothing happened. It then asked if i had any games in the rom folder. obviously i do since i could open them from the gui. ughh!! I feel like I’m so close!

    • the whole script is tested and intended to be used with a Raspbian installation from command line without having X (and, thus, LXDE) running in the background. Your third approach seems to be he most promising one.

      By looking at ~/.emulationstation/es_systems.cfg you can see where Emulation Station tries to find your rom. Depending on your settings and the username during the installation these configurations might have to be adapted.

      • would that change depending on how I run the program? It can load the roms with x running in the background, but when I run it from the command line, it can’t find them I guess. idk, I’ll take another look tonight.

        this is so weird, though, in general. I was a computer science major in college and I have a tech job, but this is really my first time with linux, and I’m surprised at how different things are. It’s taking me a little while to wrap my head around.

      • The “~” refers to the home directory of the current user, so, in principal, yes – it can change.
        There are reports about several issues when X is running in the background and emulators in the foreground, so I recommend not to have X running.
        You can change to another console on-the-fly by by pressing Ctrl-Alt-F1 (and return to X by pressing Ctrl-Alt-F7). In that console you could run another installation with the RetroPie script and see if that works. With this way you would be sure that X/LXDE is not running in the background.

      • hm, ok, that makes sense. I’ll try that Thank you for all of your help, I really appreciate it. I’m sure this is all obvious stuff I’m asking, so thanks for helping.

  • Glad to help!
    People at http://www.raspberrypi.org/phpBB3/viewtopic.php?f=78&t=13600 are also always trying to help (and might have better answers than me) 🙂

  • Pingback: Video of RetroPie GPIO Adapter | petRockBlog()

  • dude, this is awesome! i got it working on my Pi now. So I put a SNES marioKart ROM inside the SNES roms folder, started the rom, but its barely playable… i OC’d the Pi to 1000MHz (Turbo Mode) in the raspi-config. But it still doesn’t run better. memory split is on 50:50.

    Could it be that I start the Pi directly into the GUi, and then switch to the F1 shell to start emulationstation? shoulud I rather start the Pi in console first without GUI and stuff?

    or is there any frameskip setting i can try in config of the snes emulator?

    but thanks for you work so far! VERY useful project!

    • I would try to NOT start X or to completely close X before running the emulators. This definetely will free resources. Mario Kart should well be playable with a clock of 900 MHz.

      Glad that you like the script!

      • Thanks for the quick answer Florian! I tried to directly boot into emulationstation (enabled through the setup item), but it stopped recognizing my inputs for the front end. but it also didn’t ask me to configure the input again… I assume that I need to move or delete/recreate the config file for the frontend input..?

        another question, is there any other config file than the /etc/retroarch.cfg where i can tweak settings of the emulators? Or does every emulator have a seperate config file?

        thanks for the help and keep your good work up!

      • Enabling Emulation Station to start on boot does not disable X/LXDE to start on boot. Thus, you also need to disable this with the raspi-config script: Use a terminal and start the tool with
        sudo raspi-config. From there you can disable X/LXDE to start on boot.

      • Of course! I didn’t think about that. I’ll try that! That will most likely solve my problem. thanks!

  • ghostwheel

    I’m also trying to get it to work on raspbmc. The main reason is that I couldn’t get xbmc to produce music on raspian… has anyone managed to do that? I’m just trying to have a retro game machine + jukebox + picture frame working.

    Anyway, the problems I have are the following:
    1. I can’t get any sound. imame4all runs, I can play games, but there is no sound. I noticed that pulse was uninstalled when RetroPie was installed- when there is no pulse, what is the other way imame4all plays sounds? Is there a way to debug what’s going on?
    2. When I first started emulatorstation, it detected that I have a joystick connected, and es_input.cfg contains hat looks like correct data, but the joystick does not work in imame4all.
    3. The image in imame4all looked pretty bad. I managed to get it to look better by setting
    video_smooth = false
    video_aspect_ratio = 0.75
    but it woud have been better if the aspect ratio was just automatically set correctly (without that line, the image has a ratio of 1:1, I think)

  • ghostwheel

    OK, I switched to raspbian + xbmc. Now sound works, almost all seems nice! Really great!!! Thank you!!
    One thing that is not perfect is the aspect ratio. As I mentioned above, I have to manually set the aspect ratio to 0.75 for mame to look nice. But then gba is too narrow.

  • martapp

    Great work on the script – I set it running and made an source based install of everything.
    At the end emulation station will launch, but the fullscreen view looks zoomed in and I can only access Duke Nukem and PRBoom using the arrow keys – none of the other emulators show up. Do they only appear if there are ROMs on the system, or should I expect a full list? Would I be better off restarting with a binary install first?

    • Great to hear!
      The systems only appear when there is at least a single rom.

      • martapp

        Thanks Florian; now I’ve put some other roms on there, it’s showing the extra systems fine.
        I’ll start out configuring controllers next – I have some different USB ones lying around.

  • Troka

    I’ve just tried to run the script with build from sources option but it said it wasn’t able to build gba core.
    After reviewing debug.log it seems some (important?) files are missing too:

    Not sure why because I haven’t watched the compile running.

    • Thanks for pointing me to this!
      There was a bug in the eduke installation routine that I have just fixed.

      • Troka

        Thanks for your quick bugfix!
        The compile worked now.

        Are those files important?
        /home/pi/RetroPie/../.emulationstation/es_input.cfg does NOT exist.
        /home/pi/RetroPie/supplementary/EmulationStation/LinLibertine_R.ttf does NOT exist.
        /home/pi/RetroPie/emulatorcores/fceu-next/libretro.so does NOT exist.
        /home/pi/RetroPie/emulatorcores/uae4all/uae4all does NOT exist.

        Because I still have some trouble getting emulationstation to work (currently not showing any emulator although I added some snes roms)

      • No, these files are not important and some of these are actually not needed anymore. Thanks for this indirect hint – I have updated the RetroPie script just now.

        You can have a look at https://github.com/retropie/RetroPie-Setup/blob/master/retropie_setup.sh#L936 to see which folders and file extensions are used by Emulation Station to find and show the roms.

  • Cheesecake


    First of, A big thanks for putting this togheter. I now have everything up and running with Emulationstation, cover art, nes, snes… Wireless xbox 360 connected and configured.. The whole nine yards 🙂

    But, sadly only my nes roms works at full speed. When trying to run snes the sound is messy and everything is very slow. How much do I have to overclock to get full speed on snes roms? how much overclocking is safe?

    I really like the Retroarch and Emulationstation combo, I now just have to turn the power on and everything autostarts flawlessly, I have even setup the xbox 360 controller to auto-connect at startup. But I would really like to play something else than just nes at full speed. Would be very grateful for any tips on how to get the snes to work at full/ok speed. Beside nes what else emulators works at full speed (or close to full speed)?

    Thanks again for putting this script togheter! 🙂

    • Thanks a lot!
      Do you have enable_rewind set to true? If yes, you will get a speed gain by setting it to false.

      I have updated the handling of retroarch.cfg in the recent update for the RetroPie script. It introduces a global and system specific config files.

      I have PC Engine, Atari, Doom, Megadrive/Genesis, NES, Gameboy Color, and SNES running at full speed (with 950 MHz CPU clock).

  • Thomas Mueller

    i’ve installed retropie from binaries, copied some roms to the roms folder and rebooted the pi. when i start emulationstation i see something i don’t understand:

    the word “doom” above, the word “prbroom” with red background and the image of a man (maybe a character from a game i don’t know) at the left side.

    how cani start the snes, nes or gameboy-emu?

    • What I’ve noticed is that this is a default game that’s provided for testing of emulationstation, and is a Doom WAD file.

      In emulationstation, the left-right arrows switch between systems. When I launch ES, I get the Doom one, and hitting left-arrow takes me to NES. Well, it used to; then I deleted prbroom.wad from the roms/doom directory.

      It’s also worth noting that I was totally unable to get emulationstation to notice my files until I realized that they needed to be unzipped (all my roms were in .gz format, but I unzipped them and made sure that they had .nes, .smc, and .a26 extensions), I edited the file in ~/.emulationstation and added .a26 as a recognized atari2600 format, and then ran the retropie config script, had the script organize things into alphabetical subdirectories.

      I’m not certain if emulationstation has trouble noticing roms or what, but it was definitely a hit-or-miss kind of thing to finally get it to see that I had a bunch of nes roms in the appropriate folders.

      Once all that happened, left-right arrows would switch between systems, then you see A B C … for subdirectories, up-down to select a letter, enter expands, then select a rom and it launches. Play and have fun, until you have to figure out your sound settings.

  • Thomas Mueller

    “and then ran the retropie config script”

    that means after i copied the roms in the directory i have to run the script again?

    i have no controller at the moment because i want to make sure that the emu is running on my pi. can i test it with the keyboard connected to the usb port? do i have to change something to use the keyboard?

    • No, you do not have to run the script again, but just to restart Emulation Station.

      You can use a keyboard by simply plugging it into the USB port. Nothing more.

  • Hi. I’ve been noticing a problem. in retroarch, the player 1 controller (SNES via the gamecon controller) works fine, but the player 2 controller (also snes via gamecon) only works when a button on the player 1 controller is pressed. I’ve switched the controllers in the retroarch config, and the problem keeps persisting, but with the other controller. It can’t be the soldering. it works perfectly in jstest. and I use the default config. Have you got any idea?

    • I just checked this my own. It seems as if there are some roms that have this problem. Super Mario Kart and NBA Jam are working though. So it seems to be a problem of the emulator. Maybe someone has an answer in the RetroArch thread in the Raspberry Pi forum.

      • I found the problem with donkey Kong Country (1) for SNES

  • Stu

    Hi. I got to the step to clone the repo, but it keeps giving me fatal: remote error: repository not found. Please help. Thanks

    • I just tried to clone the repository onto the RPi via “git clone –depth=0 git://github.com/petrockblog/RetroPie-Setup” and it worked without problems. Did you maybe have a typo on your command?

      • Stu

        Yep. Didn’t realize it was case-sensitive. Now I’m having a new problem. When I run emulationstation, it tells me that it creates a new config file root/.emulationstation/es_systems.cfg. Yet, when I navigate to that directory, no such file exists.

      • To start with I would login as user “pi” and follow the installation instructions from https://github.com/retropie/RetroPie-Setup via copy-paste.
        Emulation Station should locate the configuration files in the folder /home/pi/.emulationstation/.

  • Pingback: Tutorial: Power retro gaming with a Raspberry Pi | GabsGroup()

  • Pingback: Tutorial: Power retro gaming with a Raspberry Pi - FourTech Plus()

  • Pingback: Tutorial: Power retro gaming with a Raspberry Pi | allcom.se()

  • Pingback: Tutorial: Power retro gaming with a Raspberry Pi | Butingtech Technology Buzz()

  • Pingback: Tutorial: Power retro gaming with a Raspberry Pi - Need2review | Need2review()

  • Pingback: Latest Technology News » Tutorial: Power retro gaming with a Raspberry Pi()

  • Pingback: Tutorial: Power retro gaming with a Raspberry Pi | Latuji Jnr.()

  • Pingback: Raspberry Pi, 25 fun things to do with a Raspberry Pi | Özgür Aytekin's Personal Blog()

  • SeattleSinner

    How do you set up emulation station to boot on start up after you’ve installed everything (and exited out of the setup)?

    • You can configure this with the RetroPie script in the menu “Setup”.

  • I tried 3 times to run the script, and after 5 hours of compiling, installing and configuring through the script, I get a message which says: “Could not successfully compile and install RetroArch. Could not successfully compile Amiga emulator. Could not compile Atari 2600 core. Could not successfully install ScummVM. Could not successfully compile Emulation Station. See debug.log for more details.” I have the latest Raspbian installed, via BerryBoot. Do I need anything else, like dependencies etc.? Also, where is debug.log located? Thank you.

    • I did not test the script with the latest Raspbian yet. There might be dependency issues. Unfortunately, I do not have access to an RPi for the next three weeks so that I will need this time to fix the script. But, maybe, someone else takes care for that sooner than me and creates a pull request via Github. I could merge the fix then.

      • Chad Adams

        I saw your post on raspberrypi.org and I am eagerly waiting for the update!!

    • dragonkhanrider

      I copy-paste:

      I finally managed to run the script successfully, but I had to install an older image of Raspbian. I don’t know if this is important, but I skipped the apt-upgrade part, just in case. Everything is working now except for the gamepad, which it seems to work in EmulationStation but not in the games. Also, gba is slow and laggy as hell.

  • Hi,

    I have had the same problem for 1,5 weeks, compiling fails for some reason. Earlier it worked perfectly. The code lines imply that some files are missing.

    You Installed via BerryBoot, do you have the overclocking option in raspi-config? I installed raspbian also with BerryBoot and it had some weird repository address (mirror to somewhere). I changed it to the official one found in here http://www.raspbian.org/RaspbianRepository.

    The debug.log is in RetroPie folder.

  • Andre

    Hey I’m having a bit of an issue with my emulation station. I believe everything downloaded and installed correctly. I can run emulation station, doom will work no problem, however other rooms seem to not work. I put the rooms in the correct folder, with correct extensions through x. When I select and try to open a rom, it makes a noise goes blank shows the white dot and goes back to emulation station.

    • The latest version of RetroArch needed an update of the RetroPie script, which I have just uploaded. You can update your RetroPie setup script by changing to its directory and typing “git pull”. Then you can select to only install RetroArch, which should work now. In case you are using XBian also have a look at https://github.com/retropie/RetroPie-Setup/issues/96.

      • Zak

        Florian, I have ran the entire retropie setup, and I have some roms running (snes, Atari 2600, gba); however, the debug shows that doom core, gameboy color, and nes did not compile successfully
        At this point I have tried everything, and am left with no more options, if you could please help me that would be great
        E-mail: stealthycow369@hotmail.com
        Thank you for you consideration

      • Hi Zak, this is issue also reported in the Github repository at https://github.com/petrockblog…. I will take care for that this evening or tomorrow.

  • Micha

    i’ve got an error at the installation. NES Core is not successfully install

  • Poutine

    This is Awesome! Have everything up and running except MAME the roms show but selecting them takes it back to selection screen. Also i see psx roms folder.. do i need to install something else for this to work or just drop iso in the folder.. Cheers to you my children and I are enjoying this very much

    • Currently, the MAME emulator is based on iMame4All, which is quite limited with regard to its supported ROMS. AdvMAME is said to support far more ROMS. However, AdvMAME still has to be included into the script. So, if someone finds some time to do that … 😉

  • ghostwheel

    This script is very cool! Thank you!
    I managed to get psx working by putting cd images in the psx folder. I had to edit the emulationstation es_system config file and add the .pbp type, because that is the type of image I have, but it worked.
    However – it seems that the emulator is based on pcsx_rearmed, which I have also installed independently. But my pcsx_rearmed seems to work much better and faster than the one in retro arch. I tried ff 7, and psx_rearmed is playable, whereas retroarch gets stuck at the stars right at the beginning, and is much slower. On the positive side, retroarch rescales to fill the screen, which just pcsx_rearmed doesn’t.

    Oh, and another question: can one upgrade? Can I just rerun the script to get a new version? Will anything get overwritten? Is there a new version?

    • Thanks for the hint with the .pbp extension!
      Could you give some directions about how you installed pcsx_rearmed? Maybe I will integrate this into the RetroPie script then.

      An upgrade option for the script itself will be part of the next commit for the RetroPie script. To upgrade the components installed by the script you can simply re-rerun it and de-select all steps that write config files. The entries of these steps are marked with “(C)” at the beginning.

      I hope this helps!?

  • Pingback: Major Update for RetroPie Setup | petRockBlog()

  • Pingback: RetroPie-Setup: An initialization script for RetroArch on – petRockBlog | Blog Posting Wordpress()

  • hoblin

    Thanks for the script but i encountered some troubles with NES. It can’t find libretro.so. This lib has name fceumm_libretro.so and symlink solves the problem. Also, themes files in ~/.emulationstation path has wrong paths for images and sounds. It can’t find files with relative paths but when i changed them to absolute all works. Still have troubles with sound. debug.log here http://pastie.org/6094176

    • It seems as if some of the RetroArch cores have changed the file name of the .so libraries. This is also reported in the Github repository at https://github.com/retropie/RetroPie-Setup/issues/100. I will take care for that this evening or tomorrow.

      Regarding the sound – what exactly is the problem? The sound is working quite well for me (both, analog and via HDMI).

      • hoblin

        Sound issue solved now (with hdmi_drive=2 in /boot/config.txt). But i get one another with PS emulator. Get “Segmentation fault” after “ari64_reset” in log. Tried to run Crash Bandicut for my wife =)

      • Glad to hear!

  • It would be nice to be able to choose which emulators to install, when the install script starts. Most of them I’m never going to use, and it seems tedious to spend hours waiting for them all to install.

    • You can select exactly what you want the script to install by using the arrow keys for navigation and the space key for (de-)selection.

    • You can select which emulators are installed by using the arrow keys for navigation and the space key for (de-)selecting the components in the source-based installation.

  • devini01

    Hi there, quick question. I got the emulation station to load correctly and was able to play a SNES game and it was working great. I then set it up to boot emulation station on startup but now the menu appears when it loads and I cannot seem to get rid of the menu. I have tried f1 to get rid of it but I am still unsuccessful. Do you have any ideas on what could cause that?

  • chelleyf

    Hi folks. Setup is mostly working here (Big thanks to all for the serious work gone in to it this far)
    On a different note, My X-Arcade Dual is not being recognised by the Pi in any form. By a game or in Terminal. Any tips to get it up and running??? I have an issue with NES emulation but from reading, a “pull” should sort it.

    • Phillip Britain

      I just ordered one recently so I too would like to to know how to get it the X-Arcade Dual working!

      • Unfortunately, I do not own such a such. But I have to admit that it looks tempting!
        First of all you would need to look for how the device registers (if at all) in the system (joystick, keyboard, etc.). You could do that, e.g., with “dmesg”.
        Maybe someone at the official Raspberry Forum has written about this?

      • Phillip Britain

        From my understanding, it acts just a usb keyboard so I guess it would be just a matter of matching up the right buttons to the right inputs. Speaking of, how might I go about changing the key mapping for the emulators?

      • You can change the key mapping for most of the emulators in the file /home/pi/RetroPie/configs/all/retroarch.cfg.

        The wiki also has some information about this: https://github.com/retropie/RetroPie-Setup/wiki/RetroArch-Configuration and https://github.com/retropie/RetroPie-Setup/wiki/Control-Issues

      • Phillip Britain

        Sorry to keep bugging you but when I run “dmesg” it defiantly is being recognized as shown in this picture http://imgur.com/gKvgRL2, but I am confused about the path that it is supposedly in. Also I have found that it is working “out of the box” to a certain extent with some games that I’ve tried but the issue is that the keys are mapped to random buttons and neither of the joysticks are working so I’m not quite sure where to go from here.

      • Phillip Britain

        when I run “./retroarch-joyconfig” its says “Couldn’t open joystick #0.” Any suggestions?

        Also, I have discovered that the X-Arcades buttons and joysticks are basically configured like a keyboard. In the terminal I have verified that all of these (http://www.xgaming.com/service/images/Layouts/PC-MAC.htm) are correct. The issue that I’m still dealing with is how to set the keymaps so that “2”, “1”, “Left Shift”, etc. is the same things as “down”, “enter”, “A” (SNES games for example), etc. respectivley on the keyboard.

        I know its a simple fix, I just can’t figure out how to do it!

      • Also keyboard mappings are configured in the file /home/pi/RetroPie/configs/all/retroarch.cfg!

        You can edit it, e.g., via “nano /home/pi/RetroPie/configs/all/retroarch.cfg” and save your changes with “CTRL-X”.

      • chelleyf

        Hi. Sorry for the delay. Time on this project is at a premium these days. So far, I can confirm that the X-Arcade registers as a keyboard when the Pi boots. So if you have this and a keyboard plugged in, the X-Arcade registers as keyboard 1 instead of keyboard 0. I haven’t got around to mapping the keys yet. There are different programmable pre-sets on the arcade but I’m not sure if they are useable on the Pi yet!
        On another note, I’m trying the pre-compiled version on another card at the moment but same problem with SNES emulation. Black screen…

      • If it registers as a keyboard I assume that you “only” need to adapt the key mapping in ~/RetroPie/configs/all/retroarch.cfg.

        I tested the script with a Samsung TV via HDMI and with a Packard Bell LCD screen via HDMI. Sound and video is working there without any issues. People have reported several issues with sound over HDMI oder video over composite/HDMI depending on the devices the Raspberry is attached to … There still has some work do be done, until these kinds of problems have been solved. Community feedback like this is the best way, I would say 🙂

      • chelleyf

        Hi again. I have looked into the retroarch.cfg file (451 lines). To be honest I don’t know where to start. I know the X-Arcade defaults to 2-4-6-8 for up-down-left-right etc. but how can I map a NES/SNES controller a megadrive/Mastersystem controller through here? Default mappings for the X-Arcade are as in the pic? Any direction would be much appreciated

      • Just a heads up on this topic: I got an X-Arcade Tankstick as a courtesy of Xgaming. There will be a post about making it work with RetroPie soon.

      • chelleyf

        Hi. I am wondering if there is a resource to refer to the keys correctly while trying to map the X-Arcade. e.g. do you type:

        input_player1_a = lctrl OR
        input_player1_a = left ctrl
        Just wondering is there a reference guide anywhere that explains the correct way to refer to the extended keys

      • I do not know an “official” list of keys except the source code itself. By looking into https://github.com/Themaister/RetroArch/blob/master/input/linuxraw_input.c#L134 I would guess that the left Ctrl key would be described as “lctrl”. I did not test this, but I would be glad if you would give some feedback here when you are done with your configuration 🙂

      • chelleyf

        hi, any luck with mapping the keys to the X-Arcade yet?

      • Phillip Britain

        Not yet, I’m still trying to figure out how to get “Player 2” controls to work on things like the SNES emulator. Let me know if you get things working!

  • Louie

    Hi guys. I’ve managed to run through the setup and have gotten to the stage when at startup I have a red stripe running across the screen with “prboom” written, and Doom at the top of the page. My problem is that keyboard input has completely stopped working so i can’t navigate away from this page or even launch Doom. What am I doing wrong here ?

    • You need to copy your ROMs to the RPi first, so that the front-end can find them.

      • Louie

        all the ROMs are in the appropriate folders, all unzipped and in the correct formats, all tested before they were uploaded. Another strange thing ive noticed is that if i move the mouse when the white dot appears, more dots appear and move with the mouse and then i get a red, garbled screen that is clearly reacting to mouse input but is too garbled to see. Don’t know if this is related. Is there a way of bypassing emulation station booting at startup ? As I said, keyboard input when it loads is completely disabled.

      • I have not heard of such a behavior so far … maybe it is a powering issue. Does the same thing happen, when you restart the RPi and disconnect the keyboard from the very beginning?

        You might be able to ssh into the RPi, start the RetroPie Setup Script and disable auto-start on boot of Emulation Station in the setup menu.

      • Sam

        Has this bee resolved? I am having the same problem. The emulation station boots and it just sits on the doom “prboom” screen. No key press will work except for the enter key, and when I hit enter it just runs a couple lines really fast an comes back to the doom screen.

      • It sounds as if Emulation Station cannot find any ROMs in your case. The image has no ROMs pre-loaded. You need to copy ROMs into the folders ~/RetroPie/roms/[snes|megadrive| …]. Afterwards you can switch the systems with the left and right keys, start games with ENTER, and so on. I think @Louie has a different kind of problem with his setup.

  • Is it possible to play roms on a usb drive with this setup?

  • acott

    Hey, Thanks so much for this amazing piece of software its the only reason I bought a Pi! I have run the install from the project image and emulation station is showing, I can play Duke Nukem but cant play any other roms! I placed all roms in their correct folders and unzipp they accordingly. But when I try to luanch a rom it cuts out and takes me back to emulation station, when i look back it says ‘segementation fault’ any way to fix this?

    • Which emulators did you try to run?
      To make sure that you have the correct file extensions you could have a look, e.g., at https://github.com/retropie/RetroPie-Setup/blob/master/retropie_setup.sh#L1128.

      “Segmentation fault” is a quite general error message, unfortunately.

      • acott

        Hey I did a fresh install and all seems to be working now! Just a quick question, its listing games I havent installed roms for, is there a way of clearing these so they dont show and only games which I have the roms for are displayed? Thanks again for all your help and for this cracking piece of software

      • Glad to hear!

        You can manually edit ~/.emulationstation/es_systems.cfg, e.g., via “nano ~/.emulationstation/es_systems.cfg”, delete the systems that are not wanted via Ctrl-K, and exit via Ctrl-X.

      • Glad to hear!

        You can manually edit ~/.emulationstation/es_systems.cfg, e.g., via “nano ~/.emulationstation/es_systems.cfg”, delete the systems that are not wanted via Ctrl-K, and exit via Ctrl-X.

  • Nino

    It is normal that Super Mario Allstars (SNES) doesnt work?

    • I have heard from several people that they loose control after they have selected a game. Seems as if it is an issue with the combination of this particular rom and the emulator.
      Maybe another SNES emulator is working with that rom? Welshy did a great job by explaining the installation SNES9X at http://www.raspberrypi.org/phpBB3/viewtopic.php?f=78&t=24318. I did not have the time for trying that, did someone else try this?

    • Ok, I just had another try. I found out that after the selection a game, the control goes over to the second controller! This seems to be somehow a specialty of the Allstars ROM. But at least, it is playable 🙂

  • RetroFan

    Is there any change that parts of this project …


    … will merge in to RetroPie?

    ChameleonPi already has working (console-based) versions of C64-, Amstrad CPC 464- and other emulators running.
    Although I still prefer this initialization script – compiling (most) of the emulators itself and utilizing EmulationStation – there sure would be some parts in ChameleonPi we could benefit from.

    • The Chameleon project looks very interesting and it seems as if a lot of work is going into that!

      If you find that some feature should also be included by the RetroPie Project just tell it here or at Github. It would even be better if someone posts a short shell script that could be added to the RetroPie Script without major modifications 😉

      I really see the RetroPie Project as a community project that lives from the contributions, comments, suggestions, and reports to it! As long as people take part in this project it will further evolve.

  • When installing this on Xbian using your script it seems to install fine but when I try to run emulation station I get:

    “error while loading shared libraries: libbcm_host.so: cannot open shared object file: No such file or directory”

    It also seems to break xbmc as the pi boots properly and then Just stays on a black screen forever, I can still ssh into the pi so I think it’s just xbmc that’s broken. The weird thing is I installed retropie without problems on the same version of Xbian (alpha 4) last week and it worked perfectly.

    • Sorry to hear that!

      Did you use the binaries-based installation? I have also observed this problem recently – running sudo rpi-update from a remote shell, followed by a restart solved that problem for me. I hope to upload a fixed version of the RetroPie script today.

      • I had the same results with both source and binaries-based installations.

        I just ran rpi-update and have a similar error when starting xbmc but this time referring to “libtag.so.1”

  • Bill

    Kind of a noob here.. I made this setup for my nephews. I am able to start ES up by running the ’emulationstation’ command, but want it to autostart. Is there a way to do this, so that the only input device I need connected is my gamepad?

    • You can select to Start Emulation Station on boot in the “Setup” menu of the RetroPie Script. That should do it.

  • Pingback: Creating the RetroPie SD-card Image: A Recipe | petRockBlog()

  • Phillip

    I know you’ve probably already answered this before but I am having some difficulty figuring out the key mapping for RetroArch. For example, I can’t figure out the “Player 2” controls for SNES and MAME. Thanks!

      • Phillip

        I guess I should have been more specific. I would like to have the “Player 2” controls be on the same keyboard as those for “Player 1” and from what link me to, I’m not sure how to go about that.

      • The key mapping for player 1 is configures with the entries

        # input_player1_a = x
        # input_player1_b = z
        # input_player1_y = a
        # input_player1_x = s
        # input_player1_start = enter
        # input_player1_select = rshift
        # input_player1_l = q
        # input_player1_r = w
        # input_player1_left = left
        # input_player1_right = right
        # input_player1_up = up
        # input_player1_down = down

        Note that you need to remove the diamond in front of each line to enable the commands. The settings for player 2 look nearly the same, you only need to replace the “1” by “2” and use different target keys.

  • Frank

    Thanks for the possibility to play these games on the RPi.
    Sadly I also have control issues with my RetroArch. When I am in the emulator e.g. for a Game Boy, I am able to use all control keys on the keyboard (left,right,up,down,A,B,start) except ESCAPE. So I am not able to quit or save the game and the emulator. All modifications of the retroarch.cfg at were unsuccessful. Perhaps you can help me! Thanks!

    • I have heard of some USB keyboards that need too much power and, hence, lead to some strange behavior when it comes to key inputs. Maybe using another keyboard solves this!?
      Usually you do not need to alter retroarch.cfg for this function, but just to make sure that you are editing the right file: It should be ~/RetroPie/configs/all/retroarch.cfg. If you have a game pad, you could also try to use that for exiting RetroArch emulators.

      • I’m having exactly the same problem, tried with with two keyboards both 5V 100ma, and I can’t escape either. I’ve also tried changing the key in the config. It seems the cfg changes are being ignored? I’ve also tried putting my keyboard into a powered USB hub, this doesn’t fix the issue and causes a constant weird buzzing sound when retropie launches.

      • Could you try and test if disabling SNESDev via sudo service SNESDev stop changes this behavior? Just an idea …

      • When do I do this? I installed from the image so my pi automatically boots into retropie, I just tried it remotely from my PC then entered a SNES rom and nothing has changed

      • Ok, @kalehrl has reported this issue together with a fix at https://github.com/retropie/RetroPie-Setup/issues/133. Disabling the joystick/gamepad configuration from retroarch.cfg seems to circumvent this problem.
        Maybe I do not configure RetroArch for gamepad use as default for the SD card image!?

      • Thank you, works fine now!

    • Nico

      you use F4 to escape

  • bonesawguntram

    I cant stop a emulation. There are no keys that breaks me out

  • PI-RO

    I am having the same issues with keyboard. Pretty sure it is not a power issue considering it works will all other OS fine. No ESC assigned (or I don’t know the key combo), unable to back out of game once emulation has started. Must unplug (sure Pi loves that) each time I start a game, just to get back to main screen. Also, is there a way to config HDMI for audio output? I have no sound over HDMI, haven’t tried analog, heard it is real poor so I thought I’d save myself the aggravation. Most games run great (just won’t stop)…

  • This is most likely a stupid mistake on my part, but when emulation station runs I can navigate perfectly fine with my keyboard, but my Xbox controller doesn’t seem to be have any effect. However once I actually start a rom I have full control. Does anybody know of a way to fix this?

    • PI-RO

      https://github.com/retropie/RetroPie-Setup/wiki/Control-Issues, I think that may help, I am going through the same issue, and have recently found this. I hope it helps, if I get anywhere, I will let you know.

      • PI-RO

        then again… I couldn’t find anything there, I am sure when Florian gets back to you, he will have an answer.

    • I would try and delete the file ~/.emulationstation/es_input.cfg, which contains the control settings for Emulation Station. If you have a joystick / game pad connected, Emulation Station will come up with a config screen on the next start to map your joystick buttons to the controls of Emulation Station. Hope that helps!?

      • PI-RO

        Works like a charm. Have my PS3 controllers working well. Still trying to figure out how to get audio over my HDMI. IS there a force audio over HDMI command? Or is there a better way to remedy this?

  • PI-RO

    Does Audio work over the HDMI op? If so, could someone pass this bit
    of information on. I had it working over analog but very poor sounding,
    at 44000 and 44100 it is next to unbearable. I heard of someone getting
    audio over HDMI and was rather impressed by the results…

    • I have my RPi attached to the TV over HDMI only and it works very good. The sound has no statics at all.

      • PI-RO

        I normally get audio over the HDMI. Raspbian, OpenELEC are working but I get no audio over HDMI with RetroPi… Is there an HDMI setting in config that will force audio over HDMI? Or what am I not doing to get that working? Thanks a lot for all of your work guys, I have tried a couple of other setups, including Glint, and I say, HANDS DOWN, this is the best work done thus far. (I just need the HDMI audio working)

      • Some users reported that they solved HDMI audio problems with settings in /boot/config.txt. See http://blog.petrockblock.com/forums/topic/audio/#post-1138

  • Is this possible on a Pi without networking (the A model)?

    • For now, the only way would be to use the SD card image. The RetroPie Setup Script needs internet access to download the binaries or at least the sources for compilation (depending on the chosen installation type).
      I have added an enhancement suggestion to the repository that will add an automatic copy service for attached USB sticks. I cannot tell, however, when exactly this feature will be implemented.

  • Frank

    I´ve also solved the problem. I use a german keyboard with the german keymap. I think, because of activating the additional AltGr button, the emulator does not recognize the ESC button. So deactivated the additional AltGr button in raspi-config and it works like a charm!

  • Flipp

    Hey again, sorry for my many questions, i am a real linux noob. Did you ever test RetroArch with the SDTV out? Genesis has just a black screen with sound and the duke3d switches back to the menu after showing a red screen for 1/10 second. Don´t have a HDMI cable and also wanted to use a old school tv. Tried manual installation and your image 1.3. Always the same problem. Doom, SNES and NES work, the others i didn´t test.

  • Pingback: Raspberry Pi Retro Gaming Emulator Machine | The Hen()

  • retroarch_fan

    First of thanks for setting up this amazing script 🙂 I have my wireless xbox controller connected and everything start automagically (after some hacking with xboxdrv in bashrc) and boot directly into emulationstation. But sadly my xbox controller drops out every now and then, so I have decided to go for wired generic pc joypads/controller instead. So yesterday I bought a generic pc joypad/controller, I thoght this was gonna be easier to setup than the wireless xbox controller, but I can’t get it to work 🙁

    I run ./retroarch-joyconfig and get the controller mapped (so it is connected and works), then I add the output of my mapping in the retroarch.cfg file (I got mine in /etc), then I reboot, but the controller just don’t work, the led is lighting up, but nothing happens when I push the buttons. Kind of weird as it does work when mapping in ./retroarch-joyconfig.

    I have also tried ./retroarch-joyconfig >> ~/.retroarch.cfg and map the controller, reboot, but still nothing :-/

    I would be very grateful if you could help me out here, thanks in advanced 🙂

    • The RetroPie Setup script configures Emulation Station such that it uses the RetroArch config file loacated at ~/Retropie/configs/all/retroarch.cfg as default. So, all configurations that you want to apply should go in there!

      There is more information about setting about various controllers in the wiki at https://github.com/retropie/RetroPie-Setup/wiki/Control-Issues.

      • retroarch_fan

        Thanks for the fast reply 🙂

        I do not have any folders named /Retropie/configs/all. Should I do a re-install?

        I am pretty sure the retroarch.cfg file placed in my /etc folder has been used by emulation station before, when using the wireless xbox controller I did changes to the retroarch.cfg in /etc and that worked.

      • The folder should have the absolute path /home/pi/RetroPie/configs/all/. Otherwise I would suggest that you re-install the components with the RetroPie script according to the steps provided, for example, in the wiki.

  • RetroGameLover


    Thanks for this awesome script 🙂

    I got everything up and running, but got a problem with my controller in the Emulation Station menu, when pushing up/down, it jumps several places down instead of just one step down. So I can’t really scroll in the menu :-/

    The controller works in the game and I can move left, right, jump up and down. But the problem in the menu limit the fun, as I can’t choose the games I want, it jumps 10-15 steps,, making it impossible to choose the games I want.

    I arrive in the menu and it start with game 1 (a), when pushing the controller button down I would like to go to Game 2, but it jumps 10-15 places down, so instead I go to Game 10-15.
    Game 1
    Game 2
    Game 3
    Game 4
    Game 5
    Game 6
    Game 7
    Game 8
    Game 9
    Game 10
    Game 11
    Game 12
    Game 13
    Game 14
    Game 15

    Would be great if you could help me out. Thanks a bunch 🙂

    • RetroGameLover

      I got it fixed. I had messed up the es_input.cfg file, I just deleted the /home/pi/.emulationstation/es_input.cfg file and did a reboot, after that I got to map my controller when I reloaded emulation station. Sorry for spamming your page with a stupid question like this. Thanks again for making such a awesome script! Have a nice day 🙂

  • Duke3d

    Thanks for making this script! 🙂

    Just a quick question. I got everything up and running, but how do I install Duke 3D? I have run the binary installation, should I run the source based also to get Duke 3D? just check of only the duke 3d in sourcebased installation and push run? Or can I just download Duke 3D as I do with roms and put it in the duke rom folder?

    • I think the easiest way is to run the RetroPie Setup Script, choose “source-based installation” and then choose only Duke 3D to be installed. That should work.

  • Ernest Sheldon

    Hello i install and when it boots up i see apple II then while pressing left key i see cave game and then duke then back to apple II .Not seeing snes,or any other console help please.Iam now installing advanced menu see if that helps

  • Cain

    I have followed the instructions to the letter yet get nothing but a blank screen after the “Apple start” screen. What am I or have I done wrong?

    • This might be related to the HDMI video mode, which I set to VGA with a recent script update. To undo this change you need to comment (i.e., put “#” in front of the lines) the lines “hdmi_mode=1” and “hdmi_group=1”.
      The system-wide VGA mode will be discarded with the next update of the RetroPie Script and be replaced by a more sophisticated way for changing the video resolution in HDMI mode.

  • Pingback: Installing RetroPie & EmulationStation in XBian | thinwrists .co.uk()

  • gpalmq

    This works great overall, but I have a couple of issues. The SNES roms all have an odd green tinge to them. I can’t seem to find a fix in the config file, but I may be overlooking something. Has anyone run into this problem? Also having an issue where emulationstation seems to change the overscan adjustments that sticks after I exit to the terminal. Is there some config file for ES beyond the es_systems? Any thoughts? Thanks.

  • DJB

    I am having some trouble with my tomee usb snes controller, I have it configured correctly, however the L and R buttons act as save state and load state buttons which is not the desired effect. I’ve tried to find a fix but to no avail, does anyone have any idea why it does this?

    • Thanks for pointing that out – this is a bug in the RetroPie script and will be fixe with the next commit. You need to remove the lines with the keywords “input_save_state_btn” and “input_load_state_btn” in the file /home/pi/RetroPie/configs/all/retroarch.cfg.

      I hope that helps!

  • diego

    a question, can be put to full screen GnGeo 0.7?

    PD: I speak Spanish I translated in google translator.

    • For HDMI or composite video output? For me, HDMI is fullscreen per default. The overscan parameters in /boot/config.txt also have big influences on the display.

      • diego

        all emulators I work in full screen, less than neogeo (GnGeo 0.7) change the “overscan” to “disable” in raspi-config but only occupies a small percentage of the screen.

        PS: thanks for trying to help me.

  • alex carter

    hi friends of this great blog,and admin too.
    when i want to compiled script in a new raspbian,2 times,my eth0 is blocked after some moments in the install.(i don’t think it’s a script problem,but raspbian or hdcp.)
    have you see a report of a same problem.i desperate,and i really want to compile it)
    ps:put the image on the card directly ,is the same problem) eth0 cut after some times.
    thanks for help if can,(2 raspi,same effects)

    • Just a guess: you forgot to extend your root file system after copying the sd card image and starting the RPi for the first time. You could do this with the raspi-config tool.

      • alex carter

        thanks for your help petRock”Blog”.but no,it’s the first thing i made “expand root file system”.sorry,i know it’s not à retropie problem,and i love your work.it’s magic.i search,and test many solutions for that,and tell here when resolved it.thanks from France.

      • I have not heard of such a problem so far, so I do not have the 100% solution for that. Maybe your power supply is too weak!? Strangest things can happen in this case.

      • alex carter

        ok,thanks,i make an new install today,and the problem come to.install finish badly at 84%.like all the time.
        i see some people have problem with ethernet/usb hardware.when i see install is finish,internet is off.i search for a log of the operation inthe terminal;i see bcm problem.
        i test with my other raspi and report after.thanksand sorry for the new thread.

      • How do you see that it breaks at exactly 84%?

      • alex carter

        at the end,its write 84% 🙂 and seem operations are finished.(the end of instal wasn’t good)no connection internet.but i have similar problem with my other raspi (maybe my network isn’t so great).i finally take your “img” and work great now 🙂 i make other test for understand the problem.
        i try to setting up xbox 360 controller.i have successfuly assigned fonction with gamepad ‘but i dont understand after “add your cfg files to your default RetroPie/configs/all/retroarch.cfg”
        sorry for solicitation and grand merci tout plein 😉

      • There is a tutorial for XBox360 controllers at https://github.com/retropie/RetroPie-Setup/wiki/Setting-up-the-XBox360-controller. I suppose that you are following that one?

        In order to start the automatic button mapping screen of Emulation Station again, you need to delete the file /home/pi/.emulationstation/es_input.cfg and restart Emulation Station.

        Maybe that helps!?

      • alex carter

        ok,i found my error.
        in https://github.com/retropie/RetroPie-Setup/wiki/Setting-up-the-XBox360-controller
        xboxdrv –trigger-as-button –wid 0 –led 2 –deadzone 4000 –silent &
        sleep 1
        the first problem i make is wid 0 ,but you say id 0 for wired (my english is poor
        and make this mistake .”wid” i replace by id 0.
        after my second error,is i copy “sleep 1” but i have not another joystick.
        i finally understand it,and delete the “sleep 1” and after the reboot,my joystick
        is detected fine.
        your information is very good,but for a noob in linux like me,some subtility and hard
        to understand.
        copy /paste isn’t all without understood.
        i love your work and appreciate your help.
        scuse my english.if i can help ,tell me,it’s a pleasure if a can contribute.

      • Glad to hear that it’s working now!

        The issues list at https://github.com/retropie/RetroPie-Setup/issues?state=open always provides various issues that need to be solved 😉

      • alex carter

        hi petRock”Blog”.could you,maybe,help me or informed me?(bios loaded fine)I try play psx (game) ,working fine,but colors seem not been good,or quality image.when i quit game (F4) in terminal,i can see the following lines.
        RGB565 Supported,using it
        (other lines seem not important)
        Retroarch (WARN) :: Stock GLSL Shaders will be used
        Retroarch (WARN) :: Failed to init rewind buffer.Rewinding will be disabled

        i see we can modify options in retroarch.cfg/dgen.cfg/…cfg in emulatorn but i’m purely noob;is there a place who indicates the list of options,and what/why we can modify?

        sorry for the relance,i searched everywhere,but not find.(i see on youtube a guy play psx game with retropie in an excellent quality,i dream of that)
        since i have my raspi,i’m addicted,and many projects in my head.
        yours is mine,thanks for help and work.

      • Hi Alex,
        I cannot help here since I do not have experienced that issue yet. But maybe someone at the forum here has an answer.

      • Another one just told me that the download link for the binaries is broken. I fixed this right now, maybe this is also related to your issue!?

  • Pingback: Raspberry Pi — эмулятор ретро игр | Techno 4 / Техно 4()

  • James Miller

    Whenever I run

    sudo ./retropie_setup.sh

    It returns ‘Command not found’. I have no idea why because when I remove the ‘sudo’ it returns ‘Permission Denied’. What is going on?

    • kyle

      you first have to enter: cd RetroPie-Setup
      (and then hit “enter”)
      then enter: sudo ./retropie_setup.sh

  • Baxtex

    I want to use my xbox 360 controllers but I can’t seem to install the xbox dvr. When I do the command console tells me that “sudo” is an unknown command. :/

    • Are you using Raspbian as operating system? The “sudo” command is enabled by default with that distribution.

  • Jannomag

    The Source-Based Installations runs for 16 hours and isn’t finished yet…is this normal?

    • Yes – this is normal, because really a lot compiled with this option. As long as you see output on the console every now and then, everything is fine. I usually let it run during the night and the following work day so that it is ready the next evening.

      • Jannomag

        ok…it has finished now after 17 hours 😀 Thats crazy…but it works great! Good work!

      • Glad to hear!
        BTW: The binaries-based installation takes “only” about a tenth of that time.

  • meowzen

    Hey I’m hoping someone can help me out. Ive set up RetroPie and my wireless controller seems to work but I cant seem get any roms to open up. It only opens Apple II and then I have to use my keyboard to exit out. My roms have the correct file extensions but I can figure out how to get them to open. Also I dont see an option for this Cave game that keeps getting mentioned. Any ideas?

  • nicholas moore

    I have been having issues getting my config files for a wired Xbox 360 controller. The issue is inside the emulator its self. The drive works fine and the device is functional. I have tried a few def methods with no luck. Would someone be able to provide an image with the retro-pi being setup with a wired xbox 360 controller in the nes and snes emulators? I can provide a share drop box. Thanks!

  • sergey

    Hello, petRock! Can you help me use xbmc like front-end for retro-pie?

  • Chase

    I don’t understand … WHERE ARE THE ROMS FOR RETROPIE? I looked in the folder named ‘roms’, but they aren’t there. Please help.

    • You need to copy your own ROMs into the according rom folders. RetroPie does not provide any ROMs – except shareware of Doom and Duke3D and the freeware Cave Story.

  • Screamopancakes49

    Ok so I have emulation station and all that installed,as well as roms,but I’m having trouble running emulation station itself, when I try to run it from LXTerminal it tells me “X is running.please shut down X in order to mitigate problems with loosing keyboard input.for example,logout from LXDE.”
    Does that mean emulation station is open somewhere and I just can’t see it?

    • jmbrnt

      Hi there, you can’t run emulationstation from inside LXDE. You need to quit LXDE totally (I click the red ‘power’ icon in the bottom right corner of the screen and select logout). This takes you back to a terminal (not a terminal emulator like LXTerminal). From here you run the ’emulationstation’ command and it opens up.

      I hope that makes sense.

      • Arjan Vlek

        At this stage im sent back to a login screen rather than the terminal. If I press CTRL ALT F2 and log in, it still says that x is running even through im using the terminal screen as suggested. Can I bypass thisand open emustation anyway?

      • You need to exit LXDE completely. To put it simple, this has to do with the way, LXDE uses the graphics resources of the RPi.

      • Miguel Sousa

        isnt there a way to creat some kind of shortcut or a dual boot screen between raspien and emulationstation ?

      • William O’Meara

        when you get to the terminal type “sudo service lightdm stop” to stop the x server. Replace “stop” with “start” to return to LXDE.

      • Ol Bailey

        Hello, I have stopped LDXE as you described, I was left with what I presume is the terminal (a black screen awaiting a command)
        I have typed in emulationstation, and I’m not sure if it was in the middle of something, but I am now left with a black screen and no way to input anything, any help?
        I apologise for the complete beginner SOS call, but any idea what is going on?

      • Andrius Pyleckis

        “sudo service lightdm stop” then alt+f2

      • tmyhmie

        I’ve separately installed emulationstation and n64 emulator, went to console without lxde and x running, and getting this – error while loading shared libraries: libboost_locale.so.1.55 : cannot open shared object file: No such fie or directory

        Did i forget to install something?

    • Guest

      All this means is you need to log out of the desktop environment to be able to run emulation station

    • David Martinez

      I was having this issue as well. I figured out that my VNC server was keeping some form of X active. I took tightvncserver off my start up sequence, rebooted, and emulationstation was able to start.

      • pokepi

        How did you turn off vncserver? i keep getting X is running.please shut down X in order to mitigate problems with loosing keyboard input.for example,logout from LXDE.” when i try to start emulationstation…

      • Tom

        ‘Sudo service lightdm stop ‘ should let u run emulationstation

      • B Brown

        I have emulation station set to start on bootup. I can get back to the desktop with f4, but cant get back into emulationstatio, even when I use sudo…stop. I get a black screen. I tried sudo…stop followed by altf2,but was then asked for a username and pw, which I never set up. Any help would be appreciated.

      • B Brown

        Figured it out. I created a user name and pw, entered it where I mentioned before. Then entered ’emulationstation’ to get back in. From then on, I didn’t need to add my username and pw anymore, just ’emulationstation’.

  • Pingback: Tú puedes hacerlo: Crea tu propia consola | Nivel Oculto()

  • Big D

    Please help! Ive tried a few times, but every time the retropie script finishes compiling, the debug list says that retroarch did not install successfully, so none of the snes, nes, etc. emulators show in emulations station.

    • Big D

      okay, I added roms, so now they show up, but none of them run. I’m guessing this is because retroarch failed to install correctly, So, I’m still stuck.

      • PiRo

        have you configured your controller in both ES and RetroArch? The first allows you to navigate the menu, the 2nd allows you control once in the game.

  • Nick


    I am having a problem at the end of the compiling/installing. When the script completes, it says that RetroArch was not successfully compiled or installed. Any suggestions on how to fix this issue?

    Thanks in advance,

    • Big D

      I’m having the same problem. Hopefully someone can answer this for us. Did you compile from source or binary? I did source, but I’m about to try binary and see if it works that way.

  • Pingback: Getting Started with the RetroPie GPIO Adapter | petRockBlog()

  • Oliver

    Hi, first of all, thank you very much for this great script! Unfortunately, I get some errors: the Amiga, Atari 800, GnGeo and PPSSPP could not be compiled successfully. When looking at debug.log, it says that uae4all is not available (“/home/emulator/RetroPie/emulatorcors/uae4all/uae4all does NOT exist.”).
    I’ve selected to install all available emulators, the rPi is running raspian “wheezy” — any idea what went wrong?


    • It seems that some of the sources are not available anymore or other things have changed. I will update the script within the next days.

  • cii

    I seem to be having trouble with the install, specifically the script can’t download the RetroPie theme referenced at http://downloads.petrockblock.com/RetroPieSetupThemes_290513.tar.bz2 – I get a 404 error when accessing this URL?

    • Ups, that download was accidentally deleted. I fixed the download!

  • Kael

    Hi everyone.

    I just got my pi a few days ago and this is exactly what I was wanting to do with it. I do have a quick question, however.

    When running the retro-pie setup script, how long did it run for you guys? I loaded raspbian and followed the instructions on the github site. I ran retropie_setup.sh last night before going to bed, compiling everything from the source distro. That was over 12 hours ago and it’s still running. This doesn’t seem normal to me, but is it? Should I start over and do something different or just continue to wait it out?

    • Depending on the overclock settings I heard from people that it takes around 16 hours. The binaries-based installation is a lot faster.

      • Kael

        Thanks for the quick reply.
        I guess since I’m this far in I’ll let it continue to compile. I just wanted to make sure before I go TOO impatient and wiped my sd card and started over. 0.o

  • Pizzahut91

    please tell me that I can do this on windows, too. Their command prompt isn’t a unix based console like on linux or mac, so I can’t see any way for me to get this as it appears to require console commands I am incapable of performing on my current setup.

    • I’m afraid to say that the RetroPie Script only works on the Raspberry Pi. Getting emulators to run on Windows is a completely different story.

  • Diego Escobar

    neo geo full screen?

    can be modified to achieve this?

  • Pingback: more for raspberry | fredfire1()

  • Diego Escobar

    to install the core PicoDrive dgen emulator automatically uses it?

  • rleyfield

    By the way, you don’t need to use SSH to do this. The writer of petRockBlog only did this so they could take screenshots of it.

  • Pingback: Raspberry Pi | Persönliche Rezensionen aller Art()

  • torturedutopian

    Hi ! First, thanks a lot for your work, it’s very much appreciated !

    However, I’m experiencing some issues regarding input. I’m using keyboard input (as I’m using the Pi in an arcade cabinet with an i-pac interface).

    Emulation station reports some “script error” when trying to setup some input settings (dgen for instance). The settings for retroarch do not report any error, but buttons do not work when starting the emulator. Well it seems to partly work actually, I managed to get the start button to work once, but for instance, not when it was mapped to “&” but when it was mapped to “x”. But then the other ingame buttons didn’t work at all (ctrl alt space etc.)

    Anyway, I was using the binary install. Trying to build the sources now 🙂

  • Nicholas Moore

    Does anyone know how to configure the xbox controller to drop to a terminal when hitting the home button? any help would be great. I have found a work around to play music in the retro pie. I can complete ths via ssh but would like to be able to from the controller without ssh or a local keyboard!.

  • Pingback: Global Knowledge UK Training Blog » Blog Archive » Fun Things you Can Do with a Raspberry Pi()

  • Pingback: Creating the RetroPie SD-card Image: A Recipe()

  • DomNewell

    I love the image, and have just done this with the setup script, but for some reason now I just get a white dot in the middle of the screen when it boots up. Do you have any ideas as to what I could do?


    • In some cases in the past, this was observed when the power source was too weak (<1000mA).

      Are you using the downloadable SD-card image? Od did you use the binaries- or source-based installation of the RetroPie Setup Script?

      • DomNewell

        I am using the downloadable sd image, and used the binaries based installation.

      • If the white-dot-problem occurs with the SD-card image, I would guess that the power supply is too weak.

      • DomNewell

        Thanks, do you know what you use? I have tried two different plugs, one for my phone (1000mA) and the one that came with my pi (330mA).

      • I am using this one: http://www.amazon.de/Belkin-USB-Netzadapter-iPod-iPhone/dp/B003DN3API and I have not observed any issues regarding the power source until now.

      • DomNewell

        ok, thanks

      • Unfortunately, no I do not know it. Maybe someone else here?

      • DomNewell

        I’ve just had a look on google and it says that the white dot is a memory split problem. How would I get to terminal with this problem?

      • If you cannot even boot up, you would need to change the configuration in /boot/config.txt by mounting the sd-card from another Linux distribution. However, the image is working in my case as is for many, many others. So, I would not bet too much on the memory split.

      • DomNewell

        I’ve just redone the binaries installation onto a raspbian image, but when i type emulationstation into the terminal it just says no such file or directory

      • MojoArcade

        I’m having the exact same problem, had a working retropie installation

      • I will have a look into that.

      • DomNewell

        Which emulationstation: /usr/bin/emulationstation
        df /h: ‘/h’: nocsuch file or directory
        df: no file systems processed

      • If df is not working it sounds as if there are some serious error with the (file) system. I would recommend to copy a new version of the SD-card image onto the SD-card.

      • DomNewell


        Ive got an SD image and it all works now, thanks.
        However, for some reason, my retroarch.cfg has a problem where it presses back as well as down, when I press the down button. Here is the code:

        input_player1_joypad_index = “0”
        input_player1_b_axis = “+1”
        input_player1_y_axis = “-0”
        input_player1_select_btn = “2”
        input_player1_start_btn = “3”
        input_player1_up_axis = “-1”
        input_player1_down_axis = “+1”
        input_player1_left_axis = “-0”
        input_player1_right_axis = “+0”
        input_player1_a_btn = “0”
        input_player1_x_btn = “1”
        input_player1_l_btn = “4”
        input_player1_r_btn = “5”

        I thought it was a number mix up, but it doesn’t happen with the a button and the right button, which also have the same number. Could you help? Thanks

      • Maybe this works?

        input_player1_joypad_index = “0”
        input_player1_b_btn = “6”
        input_player1_y_btn = “7”
        input_player1_select_btn = “2”
        input_player1_start_btn = “3”
        input_player1_up_axis = “-1”
        input_player1_down_axis = “+1”
        input_player1_left_axis = “-0”
        input_player1_right_axis = “+0”
        input_player1_a_btn = “0”
        input_player1_x_btn = “1”
        input_player1_l_btn = “4”
        input_player1_r_btn = “5”

        The lines

        input_player1_b_axis = “+1”
        input_player1_y_axis = “-0”

        look strange – I would have expected button types in these lines.

      • DomNewell

        Thanks, that’s that problem sorted, but now that btn has gone completely. For example, it was the accelerate in the snes version of mario kart, and the shoot button in space invaders for atari 2600. Could I map this button?

      • Could you post the output of the command jstest /dev/input/js0 here?

      • DomNewell

        Driver version is 2.1.0.

        Joystick (USB Gamepad ) has 2 axes (X, Y)

        and 10 buttons (Trigger, ThumbBtn, ThumbBtn2, TopBtn, TopBtn2, PinkieBtn, BaseBtn, BaseBtn2, BaseBtn3, BaseBtn4).

        Testing … (interrupt to exit)

        Axes: 0: 0 1: 0 Buttons: 0:off 1:off 2:off 3:off 4:off 5:off 6:

        Axes: 0: 0 1: 0 Buttons: 0:off 1:off 2:off 3:off 4:off 5:off 6:

        Axes: 0: 0 1: 0 Buttons: 0:off 1:off 2:off 3:off 4:off 5:off 6:

        Axes: 0: 0 1: 0 Buttons: 0:off 1:off 2:off 3:off 4:off 5:off 6:

        Axes: 0: 0 1: 0 Buttons: 0:off 1:off 2:off 3:off 4:off 5:off 6:

        Axes: 0: 0 1: 0 Buttons: 0:off 1:off 2:off 3:off 4:off 5:off 6:

        Axes: 0: 0 1: 0 Buttons: 0:off 1:off 2:off 3:off 4:off 5:off 6:

        Axes: 0: 0 1: 0 Buttons: 0:off 1:off 2:off 3:off 4:off 5:off 6:

        Axes: 0: 0 1: 0 Buttons: 0:off 1:off 2:off 3:off 4:off 5:off 6:

        Axes: 0: 0 1: 0 Buttons: 0:off 1:off 2:off 3:off 4:off 5:off 6:

        Axes: 0:-32767 1: 0 Buttons: 0:off 1:off 2:off 3:off 4:off 5:off 6:

        Axes: 0:-32767 1:-32767 Buttons: 0:off 1:off 2:off 3:off 4:off 5:off 6:

        off 7:off 8:off 9:off

      • DomNewell

        could you give me some sort of update as to what is happening, it’s just that it has been a while since I last posted?

      • Could you try and follow the steps described in the article at http://blog.petrockblock.com/2013/12/02/retropie-autoconfig-functionality/? hope that this solves your controller issues.

      • DomNewell

        Thanks, that has worked. Ps1 games work brilliantly, I might add

      • what is the output of the command which emulationstation? This command checks for the location of emulationstation.

        what is the output of the command df /h? This command checks for the free space.

  • tri

    git clone git://github.com/petrockblog/RetroPie-Setup.git

    doesnt seem to be working for me, keep getting An error.

    fatal: remote error:
    repository not found.

    • Sandwich

      Try This

      git clone –depth=0 git://github.com/petrockblog/RetroPie-Setup.git

      • anil

        I did git clone without the depth parameter, is this a bad thing?
        can i fix it now, IVE already run the script?

      • The –depth=1 param just makes your clone of the repo “shallow” – that is, you only download the latest commit. Without it, you download about 20 megs of repository history in addition to what you actually want. In short, it’s fine.

  • Pingback: Update for the RetroPie Setup Script: Support for RetroArch’s Autoconfig Functionality and (wired) Xbox 360 controller support | petRockBlog()

  • Pingback: RetroPie-Setup: Raspi als retro console | fortschrittsbalken()

  • Pingback: 12 Ways To Make The Most Of Raspberry Pi | DIGIZENS()

  • Pingback: 12 Cool Projects For Your Raspberry Pi()

  • Pingback: 12 tutorials for taking your Raspberry Pi to the limit | TopNewsSites()

  • James Hastings-Trew

    I see a couple of errors go by while it is fetching dependencies:
    Err http://mirrordirector.raspbian.org/raspbian/ wheezy/main libgnutlsxx27 armhf 2.12.20-8
    404 Not Found
    Err http://mirrordirector.raspbian.org/raspbian/ wheezy/main libgnutls-dev armhf 2.12.20-8
    404 Not Found

  • Vakilando

    My SD card is corrupted but I can still mount it on an Debian PC. Can I just copy the Retropie folders to a new SD Card? I want to keep my Games and Savegames…

    • Yes, you can copy the folder RetroPie with all subfolders to another SD-card. It contains all emulators, ROMs, save games etc.

  • Michael Gibson

    If there are a few components that do not install correctly is there a way to run the installation again and only install the things that need to be re-installed?

    • You can use the “source-based installation” to select individual components for their (re-)installation.

      • Michael Gibson

        The only problem with that is you cannot always tell which parts of the installation went wrong When doing the Installation I left it overnight it taking 16 hours and all but I’m using my laptop to forward the internet to the Raspberry pi so when I got Up the internet was down for the Raspberry pi because the computer went to sleep in a way even though I selected things that were supposed to prevent that

      • A logging function was added some time ago. You can print the logs with the command zless /home/pi/RetroPie-Setup/logs/.

  • Pingback: Another Interim Report on the RetroPie Project and a new Logo | petRockBlog()

  • Pingback: Xarcade2Jstick – Map your Xarcade Tankstick to Game Pads | petRockBlog()

  • Lucas

    Hey, the MAME4ALL emulator is not working, I’m trying to load metalslug, streetfighter, pac man, tron and others, and it’s not working .. can someone help me ?

    • Lucas

      One thing, I’m using NOOBS as SO on my rpi, is that a problem ?

  • Pingback: Major Update for RetroPie | petRockBlog()

  • Pingback: Retro PiGeek Studio Club()

  • JakeTheGreat

    Hey i’m kinda a beginner and i need some help getting my PSX controller working in Emulation Station. My first problem is that when i test my controller in the terminal, for couple of the buttons it shows as if i was pressing multiple buttons, while other button presses aren’t detected.
    My second problem is that when i start emulation station it says “No game pads detected, Hold a button on you’re device to configure it.” and when i hold a button down there’s no response. Can someone please help me? Thanks, Jake

  • Modern Pie

    i in stalled it and ran it but it only has 3 systems an i can’t play on any of them

  • PhilW

    Okay so I chose the source-based installation, and it was running for ages as expected. When finished there were a host of messages saying it failed to compile various emulators (supposedly all this was logged to a debug log, but I can’t find that file anywhere). I tried running emulation station anyway but was told the was no such file or directory. Not sure where to go from here!

    • PhilW

      I tried the binaries installation after this, and managed to run emulationstation, but it freezes as soon as I hold any key/button at the start.

    • wrzr123

      Hey, similar problem here! I tried to install mupen64 via source-based installation, and there was the error message ‘Could not successfully compile Mupen 64 Plus RPi. See debug.log for more details.’
      But where is this debug.log-file??

      • You can find the debug logs of the RetroPie Setup Script in ~/RetroPie-Setup/logs/ To list a log file you can use the command zless LOGFILENAME

  • Xhogar

    This stuff is just amazing. Thanks for the effort!! 🙂

  • Santrell Wood

    Thanks for the tuts, but one question – If i use the “Binaries-based installation”, How can I update the versions later on? -Thanks In Advance

    • Santrell Wood

      And the reason i didn’t use the “Source-code based installation”, is because i assume it would take up more space. And seeing how I don’t need all the emulators (just maybe 3 or 4), i thought it would be quicker to do binary then source somehow!

      • Usually, the binaries-based installation is quicker, yes.

    • You can use the “Update” function from within the RetroPie-Setup Script. Or you could also manually update individual components with the script.

  • Pingback: Software Prep | Kevin Fitch's Blog()

  • randomguy125

    ho do i install the roms

  • falcioness

    hello, I’m having an issue with the autostart script. When I login manually its fine. Basically, emulation station will start but all I can get to is the setup screen. When I complete the setup, it just goes right back to the setup in emulationstation and I can’t use the actual system. ( It does say 9 games available though). Now when I press start and exit. then type login, and login with the pi account, emulationstation restarts and all my games are there. It seems to not be logging in automatically or something. Is there any way to have it automatically enter my username and password at the command line before launching emulationstation? Thanks.

  • Jared Arrington

    I followed the tutorial step-by-step with no problems at all. Once I performed the reboot it came to the Raspberry login. I understood it should reboot to the EmulationStation front end? Also once I login to Raspberry, I enter “sudo ./emulationstation” and it returns “:command not found”. I’ve gone over the steps many times and keep getting the same result.

    • AutogyroGuy

      just type emulationstation, nothing else, it should work. Keep me posted because i am also trying this for a friend. Also how long did it take you to install?

      • Jared Arrington

        Not sure on install time; I started the soirce based knstallation and left for work. UPDATE: I gave up on RetroPie and went to PiPlay. Not nearly as asthetically pleasing or intuitive but I can finally play NES and SNES games.

    • AutogyroGuy

      or try ./emulationstation

  • Jigo

    if you just type emulationstation, without sudo, you get marvellous errors that lots of files are not found…just saying 😉

  • Pingback: Raspberry Pi med RetroPie, del 2- Första uppstarten | blog.m.nu()

  • Pingback: RetroPie | tah()

  • Pingback: Retropie και τα Retroμυαλά στα κάγκελα | HomebrewGR()

  • James Rubinstein

    Can you use this install script with openelec? It doesn’t have sudo, apt, or git 🙁

  • Tom

    I installed everything okay. I’m able to run the EmulationStation and launch the free games included. But, no sound. I’ve tried one of my own ROMs and same thing. I ensured the sound was configured in EmulationStation. I tried forcing the sound via my HDMI in raspi-config and same thing. Probably something simple I’m overlooking. Anyone have suggestions?

  • Pingback: RetroPie: Raspberry Pi as gaming station |()

  • Poker CK

    Sorry if this has already been asked. Are these instructions the same for a Raspberry Pi 2? Im just wondering if a different build is needed to use the extra cores and ram?

  • Filipe Lana

    Hi !

    Lovely project !

    My Pi 2 arrived 2 days ago, and yesterday i installed Raspbian by a NOOBS image, installed some programs, and then installed Retropie by using the script.

    As i wanted some performance, i left it compiling at night, but today i was presented with some errors at the end, saying couldn’t compile thing like scummvm, gbasp, and couldn’t install some libs like libsdl-ttf2.0-dev , libsdl-mixer1.2-dev , libsdl-image1.2-dev , libsdl-gfx1.2-dev , libxaw7-dev, checkinstall…. What you recommend me to do in order to make a complete sucessfull install from the sources ?
    Anything i could see in the error logs ?

  • Pingback: Die alten Lieblingsspiele auf dem Raspberry Pi dank der Emulatorsammlung RetroPie |()

  • Pingback: Raspberry Pi: Technikwunder im Kreditkartenformat()

  • I am having a problem getting the games to start , EMUSTAT runs fine i select emulator , then a game and the screens goes black with a command select says hit x or n key to select defaults so i select the desired defaults (tried all ) no matter what it kicks me back to emu game select screen like rom doesnt load or something

  • Pingback: Raspberry Pi: How to Get Started()

  • Pingback: Mupen64Plus on Raspberry Pi: Won't load state »()

  • Pingback: Ein GPIO Display am Raspberry konfigurieren und andere Sachen | Fabriziere deine Modelle - FabMo()

  • kevin

    Hey thanks for the awesome writeup. I wanted to ask, I noticed not all emulators show up in my list. Will they show when I add ROMS to their respective folders or will I have to add the bios for said emulators for them to show?

  • Karasu-o-matic

    updating from jessie and installing the binaries everything goes smooth though at the end of it reports an error about some libraries (libsdl and another can’t remember now) Thanks for the effort though, really appreciate it!

  • tomyhmie

    great job you’ve done there mate, much respect. so if i just want n64, what steps would I want to take? Must have been an update, I have more than just the binary and source code options in the beginning when i start the setup script.

  • Pingback: Raspberry Pi(ラズベリー・パイ)でここまで出来る!12のクールな使い方 | ReadWrite Japan()

  • Mike Rosa

    Hey I have a problem (I don’t know if it was mentioned before) For almost every ROM that I load up, it goes to terminal for like a second and then switches back into emulation station, not having started the game

  • Pingback: Retrogaming part2: RetroPie on PiTFT | Consulting Daylights()

  • Pingback: 12 Cool Projects For Your Raspberry Pi – Your Smart IOT()

  • Pingback: Retropie: consola de videojuegos retro con Raspberry Pi | Laboratorio Visual Attack()

  • chadianscot

    I’ve installed the script and told it to run the binary based installation, but for the past hour all I see on my ssh session is it trying to get http://archive.raspberrpi.org/debian/jessie/main wolfram-engine armhf 10.3.1+2016012407. There’s a number in front of it that keeps increasing. It’s currently at 381. Is this what it’s supposed to do?

  • Matteo Pio Muscat

    Can you make this for Ubuntu Mate for the Raspberry Pi 3 and 2 please as I don’t want to have Berryboot. I just want to use a simple OS for all of my stuff including retro gaming and normal desktop uses.

  • Pingback: Retro Spiele Konsole | CodingByChance()

  • Ravi Patel

    This isn’t in the actual instructions above I don’t think, but can someone tell me how to add roms. I format the USB (FAT32) and plug in and enable USB ROM SERVICE before plugging in, but after waiting about 5 minutes, I plug into my computer and no new folders have been added. Can someone help please.

  • Trev

    It broke my rpis os i tried running it and it gave me the lxde error so i logged out and signed back in and it rebooted and gave me a root mount error

  • Adriaan Verhelst

    i got stuck here someone please help

    Getting sources for ‘lr-glupen64’ : N64 emu – GLupeN64 for libretro
    = = = = = = = = = = = = = = = = = = = = =

    git clone –recursive –depth 1 “https://github.com/loganmc10/GLupeN64.git” “/home/pi/RetroPie-Setup/tmp/build/lr-glupen64”
    Cloning into ‘/home/pi/RetroPie-Setup/tmp/build/lr-glupen64’…
    Username for ‘https://github.com’:

  • Pingback: Raspberry Pi — эмулятор ретро игр — Техно 4()

  • Pingback: Retropie for the Retro-Maniacs out there - G3ar()

  • Lepracon68

    So i just bought a RPI 3 B, followed the instructions and get the message : SORRY – Raspbian/Debian Stretch is not yet supported on the RPI.

  • Pingback: Gamecon driver module for NES, SNES, and N64 controllers Added to RetroPie Setup Script - PetRockBlock()

PLEASE NOTE: All orders that are placed between January 14th and January 28th will be shipped on January 29th. Dismiss

%d bloggers like this: