Update 6.4.2016: RetroPie got a dedicated website. You can find it at https://www.retropie.org.uk. We keep this page solely as “historic” document about the beginnings of RetroPie. The content of this site is not up-to-date anymore and documents how RetroPie was presented during its very beginning.

Welcome to the RetroPie Project. This page provides information about all the pieces of the projects, the goals and should give you an understanding of what the RetroPie Project is.

The RetroPie Project started with the idea of turning the Raspberry Pi into a retro-gaming console and evolved ever since. Besides emulators and front-ends, a full retro-gaming experience also involves game pads or joysticks. The project offers approaches for software as well as hardware questions. In the following, you can find more detailed descriptions about the individual components of the project. The rest of this article is structured according to the following questions:

Let us start with the question:

What is the RetroPie Project?

The RetroPie Project is a collection of works that all have the overall goal to turn the Raspberry Pi into a dedicated retro-gaming console. The project uses Raspbian as OS at the bottom and integrates a large set of emulators for a wide variety of computer systems from the past decades. Besides the emulators, also a graphical front end and a lot of other software features are part of the project to let your nostalgic memories revive. The RetroPie Setup Script is a central piece of software for the installation and configuration of these components. There exists an SD-card image with a complete installation by the RetroPie Setup Script that comes with all supported emulators and functions. Besides the software aspects the RetroPie Project also consists of a solution for connecting certain original game pads directly to the Raspberry Pi. The RetroPie GPIO Adapter is a small piece of hardware that supports the connection of the game pads while also adding a push button and circuitry protection. The ControlBlock is another more advanced module that provides functionalities for reading various controller types as well as a power switch.

What is the RetroPie Setup Script?

retropiesetup2The RetroPie Setup Script lets you install and configure all the emulators, front-ends, drivers, and other components for your retro-gaming console. Technically, it is a bash script that consists of a few thousand lines of code and is run from the command line. The complete sources are hosted at Github to support collaboration, feedback, bug reporting, and pull requests.

And what are the RetroPie GPIO Adapter and the ControlBlock?

wpid-Photo-19.10.2012-1955.jpgThe RetroPie GPIO Adapter is a dedicated GPIO adapter for the Raspberry Pi that allows an easy and safe connection to, for example, two NES or SNES controllers. It provides circuitry protection against transients and over currents as well as a momentary switch button for arbitrary use. A step-by-step guide for getting started with the RetroPie GPIO Adapter can be found here.

SNESDev is a user-space device driver especially written for the RetroPie GPIO Adapter. It implements two (S)NES game controllers and a virtual keyboard for up to two (S)NES controllers and a button that are connected to the GPIO pins of the Raspberry Pivia the RetroPie GPIO Adapter. The sources of SNESDev are hosted at Github and everyone is invited to contribute!

IMG_2459_Snapseed480The ControlBlock is another extension board for the Raspberry Pi. The two key features of it are

  • a power switch functionality and
  • general purpose input/output (GPIO) pins ready to use, e.g., for connecting arcade or SNES controllers.

If you want to turn your Raspberry Pi into a keyboard-less game console, the ControlBlock might be a solution for your needs.

What is the RetroPie SD-card image and it’s features?

The RetroPie SD-card image is a ready-to-use image that provides a full installation of all systems and functions that are supported by the RetroPie Setup Script. Here is a short description about the features of the image:


  • Complete installation of all available emulators that are supported by the RetroPie Setup Script (see section “supported systems/emulators for details”)
  • Automatic start of Emulation Station, the front-end for browsing and running the ROMs. Emulation Station is maintained by Aloshi, who is also hosting the sources of Emulation Station at Github.
  • Pre-configured splash screen that can be customized with the RetroPie-Setup Script
  • SAMBA shares for each system for copying ROMs on the RPi via network
  • USB daemon for copying ROMs on the RPi via USB stick

Supported systems/emulators

The RetroPie SD-card includes emulators for a whole range of gaming history. Some of these systems are:

  • Amiga (UAE4ALL)
  • Apple II (LinApple)
  • Atari 800 (Atari800)
  • Atari 2600 (RetroArch/Stella)
  • Atari ST/STE/TT/Falcon (Hatari)
  • Apple Macintosh (Basilisk II)
  • C64 (VICE)
  • Amstrad CPC (#CPC4Rpi)
  • Final Burn Alpha (RetroArch/PiFBA, RetroArch/FBA)
  • Game Boy (RetroArch/Gambatte)
  • Game Boy Advance (GpSP)
  • Game Boy Color (RetroArch/Gambatte)
  • Sega Game Gear (Osmose)
  • Intellivision (jzIntv)
  • MAME (RetroArch/mame4all-pi, RetroArch/mame4all)
  • MSX (openMSX)
  • PC – x86 (rpix86)
  • NeoGeo (PiFBA, GnGeo)
  • Nintendo Entertainment System (RetroArch/FCEUmm)
  • Nintendo 64 (Mupen64Plus-RPi)
  • TurboGrafx 16 – PC Engine (RetroArch/Mednafen/pce_fast)
  • Ports
    – CaveStory (RetroArch/NXEngine)
    – Doom (RetroArch/PrBoom)
    – Duke Nukem 3D (eDuke)
  • ScummVM
  • Sega Master System / Mark III (RetroArch/Picodrive, Osmose, DGen)
  • Sega Mega Drive / Genesis (RetroArch/Picodrive, DGen)
  • Sega Mega-CD / CD (RetroArch/Picodrive, DGen)
  • Sega 32X (RetroArch/Picodrive, DGen)
  • Playstation 1 (RetroArch/PCSX ReARMed)
  • Super Nintendo Entertainment System (RetroArch/Pocket SNES, snes9x-rpi)
  • Sinclair ZX Spectrum (Fuse, FBZX)

A list with chronological order of release year of all supported systems can be found here.

If you would like to have another emulator supported by RetroPie, feel free to post it!

I would like to contribute! How could I do that?

The RetroPie Project would not exist, if there were not all the other great open-source projects that are combined and remixed here. All these projects evolve by the support of many people. The RetroPie Project evolves in the same way and there are many possibilities for every single one who likes to contribute in one or another way:

  • Take part in the discussions in the comments sections of the blog
  • Join the forum to post questions and support others
  • Propose enhancements or report bugs at the repositories of the individual projects
  • Inspire others by writing about your project in the forum
  • Support the project with a donation

Tell me about the related blog posts!

Here, you find a summary of all essential posts that are related to the RetroPie project, which started with the post about SNESDev.

  • The idea about the Raspberry Pi as a universal console and the description of a hardware interface for NES/SNES controllers. The beginning of the RetroPie project.
  • An assembly guide for connecting the controllers to the Raspberry Pi.
  • The RetroPie Setup script: An auto-installer and maintaining script that should make the whole software part easy.
  • PetRockBlock PIE, the case for the Raspberry Pi with pre-cut slots for two SNES connectors.
  • A wiki for the RetroPie script and all components that can be installed with it.
  • A GPIO driver for connecting (S)NES Controllers via the GPIO pins of the RPi.
  • The RetroPie GPIO adapter board: a dedicated GPIO adapter for the Raspberry Pi that allows an easy and safe connection of up to two NES or SNES controllers.
  • RetroPie Project SD-card image for download.
  • Recipe for creating the RetroPie image download.
  • A step-by-step guide for getting started with the RetroPie GPIO Adapter

987 thoughts on “The RetroPie Project

  1. Halsey says:

    I am using an IPAC 2 and can’t figure out how to run two players on Retro Pi. Does anyone have any clue how to configure 2 players?

  2. Bryce says:

    Is there any way to add an emulator to the list? for example, if I install this and want to add an emulator, such as an Xbox emulator, is there a way to do this?

  3. Ridwan says:

    can you download all this onto a external hard drive? And how do you download all this stuff? I really don’t get it. Please help!

  4. Johan says:

    Hi, I’m having trouble saving games in PSX on Retropie. I have placed the bios file in the correct folder – SCPH1001.bin in /home/pi/RetroPie/BIOS —> the emulator picks up the bios fine.
    I have edited the retroarch.cfg file to include savestate_directory and savefile_directory.
    I also ran the pi@raspberrypi ~ $ sudo chown -R pi /home/pi/RetroPie command for rights.
    However savestates and savefiles still does not work. Whether I can savestate it or use it as a normal memory card – I dont care. Please assist

  5. iamzsdawgy says:

    can someone help me? I put the image onto my sd card with fedora arm and again separately with win disc image and whenever i connect my rpi to my monitor through hdmi i get no signal. the rpi turns on with 2 lights one green and one red

  6. That Taryble Fellow says:

    So, having a little issue with an XBox 360 wireless pad, connecting with the wireless dongle that Microsoft sells.

    Specifically, it’s not recognizing the right trigger button at all. It works when I use the same controller and dongle on a PC, but not with the Pi.

    I’ve tried with two different wireless dongles and two different controllers. Both controllers work with both dongles, and the button is recognized with all four combinations when used on a PC.

    Does anybody have any suggestions or thoughts?

  7. disqus_BvtbvdNNsi says:

    Anyone know how to reinstall the usbmount daemon? Accidentally uninstalled it instead of disabling USB rom service. Any help is greatly appreciated.

  8. Pablo Nicolás Gaviglio says:

    I have a question, I can’t make work several games, examples, NeoGeo games like Metal Slug… a lot of MAME or SNES… there is anything to do in order to set it up? :D thanks this is a very wonderful jobs.

  9. Beau says:

    Can I disconnect a SNES controller and plug in an NES controller and vice versa while everything is running without reconfiguring anything?

  10. certifiable says:

    A good project with a few flaws (scraper is bad with names, typing names results in some letters pushed to the far end – like arryL when typing Larry, attiP when typing Patti). Hope it improves! This could be gaming’s OSMC!

    • Sweeters says:

      Hi Jordy – pretty much that, no different to any of the Noobs distros. SD image can be downloaded here – https://www.petrockblock.com/retropie/retropie-downloads/ . You’ll need to unpack the file with something like 7-Zip before burning onto SD. I’ve had a few problems getting my 360 controller working but others seem to be playing fine.

      Just worth noting that you’ll still need to acquire the ROMs (the actual games themselves) and place them in the relevant directory. Plenty of YouTube tutorials for that though if you get stuck at any point.

  11. Sweeters says:

    Wow – just got a working build sorted and this is incredible – thank you so much for this amazing distro. I’ve been getting a lot of nostalgia over my old PSX days and wanting to re-live them badly enough that I was looking into second hand worn and battered original consoles… this is perfect and gives me an excuse to buy another Pi (well, a Pi 2 to be exact).

    There were almost tears of joy when I managed to get Alien Trilogy and Syndicate Wars working. Sadly it’s not recognizing my 360 Wired controller (well I can steer the emulation station main menu with it but the moment it goes into games I’ve got no choice but to do a soft-reboot via SSH). All four lights on the controller blink over and over so it’s clearly not recognizing it properly.

    I’ve seen any number of guides including the ones over at git which I’ve been trying to follow but none work, and a lot of suggestions around changing any number of parameters within various cfg files. I’m going to try and spend a bit more time on this over the weekend but if anyone can point me to a definitive step by step process to getting the 360 wired controller working with PSX games then I’d be very grateful!

    Thanks again, along with OSMC, this’ll definitely be something I’ll donate towards.

  12. Julius says:

    You should include emulators for Gamecube and PS2 games. Looking over the specs of the Raspberry Pi 2 Model B, it should be able to run those systems too. That would pretty much bring it up to speed for all the completely abandoned and unsupported consoles.

  13. serhan says:

    Hi there, i’ve build up my project with using raspberry pi2. now i am playing mame games with no problem with my ps3 controller (still designing a custom joystick-button front panel). My coin acceptor is working fine, but i am planning to add a relay-based hardware for accepting coin when a game is started from emulator. Otherwise, coin will be wasted if i use my coin in emulation station. I want to use my coin acceptor closed on default and when a game is started, i would like to trigger a relay and make it on open position.

    I would like to ask you, is there any way to trigger a relay when a game is started from emulation station and close it on game close ?

    • petRockBlog says:

      You might want to take a look at the script “run command.sh”. That script is used by RetroPie to start the various emulators. You can find it at /opt/retropie/supplementary/runcommand/runcommand.sh.

  14. Oweny Meagher says:

    Can anyone help me I am new to the retro pie I’m building an full-size arcade machine I am having a few small problems wit the retro Pi software when I boot up the system it boots as normal then it boots into the retro pie logo screen it stays on the screen for about 30 seconds and then it reboots again and it repeat’s the same message every 5 seconds emulationstation will reboot in 5 seconds and if I have an e cheese is it goes straight to the configure screen can anyone tell me what’s going wrong

  15. TechnoTronix says:

    Thanks for the Article. I have recently looked at setting up a “RetroPie” and configuring game controllers, but there are a few other things we will need to know in order to get the most out of your Raspberry Pi-based retro gaming centre, including a run-down of the potential outlay and the best places to find and download games.

  16. Patrick Melfi says:

    There needs to be a way in the auto configuration of the controller for an exit button this whole project is worthless if i have to get up off the couch and push the escape or now in 3.0 completley reset the pi to pick another game

  17. Joel says:

    To the Retropie makers: Thank’s so much! – 30min after having my Pi2 delivered by the postman we were playing megadrive games, with two xbox one controllers connected through usb. Everything worked like charm and superfast!

    1. Download retropie image.
    2. Transfer the image to the mini sd card, with ApplePi-Baker (mac)
    3. Turn on the pi, with keyboard attached.
    4. Keyboard detected, keys mapped.
    5. F4 to exit to terminal. There: sudo raspi-config
    6. Expand sd memory, Overclock to Pi2 and Reboot.
    7. Create “retropie” folder in a usb drive.
    9. Insert the usb to the pi, and wait for 30sec to get the folder structure created.
    10. Remove usb, plug it to computer, and copy roms to the folders.
    11. Usb to the pi, wait for the roms to be copied from usb to the sd.
    12. Connect xbox one controller. Auto-detected. Buttons mapped.
    13. Same with second xbox one controller.
    14. Play!

  18. John Anderson says:

    I got the latest release going okay. Got some MAME roms working, but there is no sound on any of them, tried several config settings (HDMI stereo, others) but no sound. Really hard to configure. I heard the other emulators have no sound either (NES SNES). I have a Raspberry Pi 1 with 512MB. Got to be easier. Maybe cramming all these emulators together = a bad idea.

  19. Josh Cullitan says:

    Ok so i am very new to all of this. I want to set it up for pretty much only retro gaming. do i need to get the pasberry pi os first or just load retropi on my sd card and that will work just fine?

  20. xXMarmiteGamerXx says:

    I cant wait for tommorow. My dad is downloading it to his Windows 10 computer and is going to write it to an sd card that has ubuntu on it and is going to delete ubuntu and replace it with RetroPie. Cant wait to set it up!

    • Joel says:

      change the emulator used for gba games. when you start a game, press a button, a menu will appear, where you can select a different emulator for all or a specific game. it happened the same for me, and trying all of them I got one that worked fine.

  21. Azarius says:

    I have just set up a Raspberry Pi B+ with Retropie 3.0, everything is working fine but the only option I currently have for transfering ROMs is VIA a USB stick. I was told that once you insert a USB stick in to the RPi & boot it a folder will be created to transfer roms to on my PC but no such folder was created. I then read that with Retropie 3.0 you must create a folder called retropie before doing so, so I did this and re inserted the USB stick and booted up and again no rom or emulator folders were created. Can anyone advise me what I am doing wrong please as I can’t wait to get my old Amiga games up and running again :)
    Thanks in advance.

  22. Juan Hernandez says:

    I have a USB PS3 controller and I still haven’t found a way to configure NES and SNES controller mapping. It configures it just fine for the interface and detects it very well but every time I load a NES or SNES rom, the mapping is all weird. It took me hours to figure out some of the button mapping and still is not complete. Am I missing something guys? BTW: Holy crap, this RP2 distro is simply awesome, a dream come true!

    I’m also a dev. I’m checking the sources… I want to help make this project much better!!

  23. Jacob Bennett Poole says:

    Do you think you could add Wonder Swan, Neo Geo Pocket, Atari 5200, 7800, and Virtual Boy? Any of these would be great

  24. Raphael Onofre says:

    When i boot the joypad is working fine, like calibrating and selecting the console but when the game starts it stops working. Anyone could help me?

  25. Jay Scott says:

    Any possibility of getting retropie to use multiple cores on a rom? It runs on my pi2, but the audio is still choppy and video lags a bit. I oc’d it to 1100mhz, 512mb to the GPU, overvolt 6, that helped a little but it’s still not great.

  26. Jay says:

    HELP!!!!! I keep getting this annoy error and I can’t run emulation station because of it!!!!

    /usr/bin/emulationstation: line 11: 2498 Illegal instruction $es_bin “$@”

  27. Conor says:

    Can you put a playstation 1 emulator on the RetroPie? It’s the only thing it is missing for me.
    If that’s possible, I’ll buy it straight away!

  28. evho says:

    HI, just testing the 2.6 for Pi2 and got a problem on running the X server (black screen with white replica of pi login info on the top right). Do somebody knows how to fix this. Looking at the log /var/log/Xorg.0.log didn’t helped me that much

  29. CaosExpansivo says:

    Hello. I am excited with this collection of emulators and I’ve been using them for a long time in my Raspberry Pi. I found a problem, though. When I save a state in Neo Geo –with Retroarch– it crashes when I load it. The only way of avoid the crash is loading it within the same session, but whenever i boot the Pi or restart the EmulationStation session, it crashes.

    I have tried with the latest version of RetroPie, in my Raspberry Pi 2, and it crashes too. I have googled this, and I have found a bug in MAME which I think it’s related to –in fact, is the same that I have described:


    Do you think it could be fixed in a new version of RetroPie? Thanks in advance.

    • Derek says:

      You need to put roms in the proper location (/home/pi/RetroPie/roms/[System Name]), once at least one rom exists for an emulator you will see it in EmulatioStation.

  30. Dan says:

    Cannot get retro pie running on new raspberry pi 2 model B, whether 2.3 or 2.6. 2.6 doesn’t even look like a legit file from this site. NOOBS and Raspian boot fine.

    • Azarius says:

      Yes but you must own the original games to play the ROMs legally unless they are shareware / homebrew. With emulators that require a BIOS file you should also own the system.

  31. ibi sum says:

    Is there any way that Oricutron can be considered for inclusion in a near release? Its an emulator for the Oric-1/Atmos machines. I’ve already compiled Oricutron locally on a non-RetroPie rPi, so I know it works and can be built out of the box – but I have no idea how to include it in RetroPie myself. The Oric/Atmos is a wonderful system which keeps getting new updates and releases for it all the time, very much still alive, and the new games/apps are pretty good. So here’s a vote, anyway, for inclusion of Oricutron in a future release: https://code.google.com/p/oriculator/

  32. Justin Gamble says:

    Got everything set up, copied over my ROMS and when I go to start one I get the following errors on both the N64 and SNES emulators:

    “Segmentation fault” in runcommand.sh

    and in the SNES I get the following:

    RetroArch [WARN] :: patch_content :: Did not find a valid content patch
    No ROM file header found

    I did set this up at work so a block may have been in place to not allow something to be downloaded and I’m going to try it at home tonight but was wondering if anyone had seen this before.

    Great job on this guys! =D

  33. Bobby says:

    Whenever I boot up my Pi(which I have loaded multiple roms onto) I cannot see nor play any of them. It just stays the same with ports mac scumm mac 2 imb and amiga please help

  34. husker says:

    Hi there, Sunday I tried the last image that you have for downloading but I got an illegal … (forgot the rest :-P ) and I couldn’t get to work with it. I saw that it is ready for compiling so I decided to let compile everything from sources, as the binaries got me nowhere. I still have it compiling at home, I guess by today/tomorrow I’ll have everything compiled and I can try if it works again.

    My question, would it be interesting to create a new image if it works? I see that you have almost everything ready for test/debug and I can help on that :-)

  35. Kredrock says:

    Can anyone help me,
    I can play most games across all the platforms except for the one I really want. The game is Mystic Quest on SNES it loads the first screen of the game with the music but none of the buttons I click will advance the game.
    If anyone can help that would be great.
    Thanks in advance

    • Jigo says:

      Do the other SNES Games work ? Are you using the default SNES emulator ?( I suppose you have put therominto the…/snes-pisnes/roms folder ?)
      Have you tried an alternative ROM to the MQ you got there?

  36. Eric Wrecher says:

    I don’t think the image is working with the RPi2…. LAN jack not responding/working, can’t log into desktop (startx) I’m very much NEW to this, but from what I’ve researched and tried there are a couple bugs (understandable since RPi2 is very new).

    • Buzz says:

      The rpi2 image works fine on the rpi2. the desktop gui is removed to save space. it can be installed if needed – please use the forum for help.

  37. SaMmY says:

    I have a Raspberry Pi B+, I want to write code so that I can control the games and such with a breadboard. How can I write code that will apply to the Retropie OS, so that I can try this

  38. whynotv2 says:

    I’m new this type of hardware (and linux based stuff as well), so forgive the newb question, but can Retropie be used with the ODROID C1 and the version of linux they use?

  39. Ian Scarbrough says:

    so i am doing my senior project for school, i will be building a 10 inch tablet that can load 3 separate operating systems for it, and i would like to have the RetroPie as one of the OS’s, but i am using the banana pi instead of the raspberry pi (higher processing speeds, and a better overall board) is the RetroPie compatible for the banana pi?

  40. Hicks says:

    Installing dependencies for RetroArch
    = = = = = = = = = = = = = = = = = = = = =

    Did not find needed package(s): libudev-dev libxkbcommon-dev. I am trying to install them now.
    E: Unable to locate package libxkbcommon-dev
    Could not install package(s): libudev-dev libxkbcommon-dev. Aborting now.

    I am on rasbian…

    Any ideas?

    • gUI says:

      I had same issue (based on raspbian-ua-netinst). I found that another repo is keeping a version of libxkbcommon-dev for wheezy.

      So simply adding “deb http://raspberrypi.collabora.com wheezy rpi” in /etc/apt/sources.list and “apt-get update” did the trick, but I’m not sure it’s a good solution…

  41. Mike says:

    Thank you for RetroPi! I do want to give it a good try and see how powerful it is. It looks great by the way!

    Just one question: I’ve noticed there is a script for the Xgaming Xtreme Tank Dualstick. Since I intend to buy the Xgaming Xtreme Dualstick (no Tank, no ball), could anyone confirm whether the same script would work? Should a new script would have to be developed? Because, I do need a distro that allows for the Dualstick to be used a a joystick.

    Regards and thanks!

  42. Spanner Nick says:

    Hi..I was using Chameleon Pi before I came across this and I love it,I am able to play my Mega CD games on my C64…:D Well I do have my PI in a c64 case with a Keyrah,but there are some things that are not right..

    The Atari 800 Emulator why don’t it have the bios with it,its a pain setting it up,when you get it from the PI store it has the bios with it and the screen its bigger too,I can’t seem to make the screen bigger its at 300×400 i think.its tiny…:(

    Is there a way of downloading the covers for the games and different systems for the UK,like it says Sega CD not Mega CD and it downloads the US covers from the (Genesis)Mega Drive and (SegaCD)Mega CD I would like the UK covers for them. There is a Mega CD Library http://www.sega-mega-cd-library.co.uk/index1.html that you can get the images from..

    Thanks…Now go and play some Night Trap…;)

  43. THROUD says:

    Great project. I just would like to suggest to include oddyssey 2/magnavox emulator (working very well on all platfroms).
    My second suggestion is for Oric computers (from Tangerine).
    Just ideas…
    Thanx for your great job.

  44. bob says:

    Ive put some zx spectrum Roms on to retropie but when I launch it nothing to do with the zx spectrum or those Roms shows up!help please!

  45. LECOQ Vincent says:

    A little remark about joysticks configuration : I use an usb adapter allowing to plug multiple joysticks of real games stations (PSX, GC, XBOX1, …)
    Each ports of this adpater is detect and see as a real joystick even if it is not plugged.
    I use only Xbox controls, detected as joystick 2
    I configure the menu with this joystick, its works well.
    I launch a game un any retro emulator.
    The emulator use the joystick 0 (the GC controler) => imposible to play
    I use ES-config for set the keys to the 2 (-j 2) in the config
    The emulator continue to use the 0. => imposible to play.

    So, where in the config file can I force to use the defined keys on the good joystick ?

  46. Jason Whiteman says:

    I am using retropie as a vehicle for digging into the Raspberry for possible future prototype projects. Emulators provide a platform for taxing embedded hardware as they generally utilize high CPU utilization as well as using most features of the device.

    I am attempting to compile all from source. In doing so, I have a few general observations and then a few specific ones.


    1) My raspberry is unstable (no overclocking) as I am sure others may experience. Building from source takes “forever” and in doing so has a high chance the system will crash/lockup before completing the script. Upon reboot, the setup script does not appear to have an option to pick up where you left off. Selecting all packages (as was the initial run) will end up re-installing most packages as the script appears to delete directory contents as it goes even if a valid compile has taken place. For this use case, I would prefer an option to compile from source without deleting any folder contents. If this policy is followed, the makefiles will generally pick up a build where it left off. This is not an ideal solution, but reasonably simple to implement. A more utopian fix would be to also prevent re-download of source if the source is there (and complete).

    2) A second general failure is network availability or network sub-system failures which do not lock up the RPi. It may be useful to add some form of a retry hook for network commands where perhaps one could also edit this area and add ifdown / ifup or even USB resets to attempt to restore a connection.

    3) As mentioned before (other comments/announcements/TODOs) – some naming convention would be welcomed. One that unifies the directory names under /opt/retropie, the setup script list, and any other place a particular emulator is referenced. In order to figure out which package did not land – one is tasked with detective work reading README files (if available) or otherwise deducing which package in the setup script matches contents in a directory.


    1) I found the jzintv package did not compile. See error details in pastebin: http://pastebin.com/i2e5SsH7

    The summary is that gcc complained about the “-msse” flag. Removing this flag led to another error (link error).
    2) The PiFBA package also showed a similar link error as jzintv
    3) The apple II package did not compile and required adding libcurl to compile. “out of the box” the apple II package failed on link due to lack of libcurl. There may be other packages – I followed the install instructions for the apple II package to get it to compile.

    • Jason Whiteman says:

      Some details on the pifba error (not detailed previously) can be found:


      Other general issues:
      4) The log appears to over-write for each package installed. At times during a batch compile-from-scratch run, I would see multiple packages with fatal errors (compile bailed out on link, network error, etc) without abort. The script would continue to run and possibly error on other packages. When reviewing the log files, I would only see the error state of the last package attempted – not a full listing of all errors. This may be by design – but consider perhaps a verbosity switch to allow logging everything.
      5) The error logs do not appear to redirect stderr into the log so some information is missing. The previous pastebins submitted have been generated by manually running make, ensuring the error has been exactly duplicated, and redirecting both stderr and stdout to a text file for submitting to pastebin. Consider adding stderr to the error logs.

      • Jason Whiteman says:

        Regarding the P/S – I could probably use a higher current one. As a fix I am running with a powered USB hub to remove all external USB devices as power loads.

        Regarding compiling:

        I also saw an issue with pisnes compiling. All compile errors appear to be linking problems whereby force-feeding the required libraries seems to do the trick.

        pisnes fix:

        vi /opt/retropie/emulators/pisnes/Makefile

        snes9x: $(OBJECTS)
        $(CC) <– this line, add: -lrt -lm -lasound

        snes9x.gui: unix/frontend.o
        $(CC) <– this line add: -lrt

        That fixes pisnes for me.

        jzintv fix:

        vi /opt/retropie/emulators/jzintv/src/Makefile


        OPT_FLAGS = -flto -ggdb3 -O6 -fomit-frame-pointer -fprefetch-loop-arrays -msse #-DBENCHMARK_STIC

        This line, the compiler complained about -msse so I commented out -msse and added the missing "m" library:

        OPT_FLAGS = -flto -ggdb3 -O6 -fomit-frame-pointer -fprefetch-loop-arrays -lm #-msse #-DBENCHMARK_STIC
        This fixed jzintv and now the ../bin directory has several binaries.
        vi /opt/retropie/emulators/pifba/Makefile
        edit the "LIBS = " line to add:
        -lasound -lrt
        pifba "make" now generates "fba2x" executable.
        uae4all – received libm.so.6 error adding symbols error.
        vi /opt/retropie/emulators/uae4rpi/Makefile
        LDFLAGS =
        line, add: -lm -lz
        uae4all executable now generated
        Those are the fixes for now – not sure how the build got off the tracks.

      • Jason Whiteman says:

        FYI: P/S is marginal but stability seemed to improve w/USB hub. I’ll have to test with a power source with a higher rating.
        The rating is 700mA and the B+ is said to draw around 600mA on the low end.
        The last failure (all USB devices on a powered hub) occurred while accessing the SDCard as the LED (green) was illuminated. Video had been asleep (blank screen). I was at idle running dwm (instead of supplied window manager) and no applications were running in the foreground – essentially an idle Raspberry.
        However, this configuration does not clearly have power margin – so I will have to test with perhaps a 2A supply to cover the range indicated for a B+.

      • Jason Whiteman says:

        Update: I have purchased an MCM 2.2A 5V power supply designed for worst-case of the B+ (200mA over margin of documented worst case current draw) and I am still seeing stability issues in the form of kernel panics or lockups.
        Although I cannot rule out software – these do sometimes occur while at idle without any processes other than the kernel/OS and background processes running.
        I have done a quick search for a hardware diagnostic SDCard image that can perform some sub-system tests (CPU, memory, cache, I/O, interrupts, etc) and have not found one yet.
        I see one other user in the forums with complaints about B+ stability vs. his B using, I would imagine, the same software stack (should have tested by pulling the SDCard out of the B and used in the B+). Although his experience seems to be not at idle-time – the possible correlations are somewhat interesting.

  47. Pegabyte says:

    1. I’m planning on using this to make a game console. Is that okay? 2. Does this mean you can play PC exe games like Maplestory(for example)?

    • Jason Whiteman says:

      Version 0.9.11 is installed with:
      sudo apt-get install yabause
      0.9.13 is unstable on other versions of Debian – but 0.9.11 is shown as stable.
      Source is available from the yabause.org site should you want to take a hand at compiling. I had an issue w/movie.c which was fixed by redefining VERSION (#define VERSION “0.9.11”). There may be other issues as the make is not finished.

      • Jason Whiteman says:

        correction: should have set to VERSION to to match “YAB_VERSION” in CMakeLists.txt

      • Jason Whiteman says:

        … installed qt4 from apt-get now to bring in the qt build. src/qt/Settings.h had an issue with VERSION and PACKAGE so I hard-coded
        #define PROGRAM_NAME “yabause”
        #define PROGRAM_VERSION “”
        src/qt/main.cpp may have had a problem with VERSION so I added a #define VERSION “” in main.cpp at line 30.
        The qt version continues to build. Another snag.
        src/qt/ui/UIAbout.cpp has a VERSION on line 34 I replaced with “”.
        Certainly at this point, it would be great to fix the root-issue rather than hack the code. Perhaps the makefile’s -D statement as -D”\”…”\”. However, I continue down this path.
        … about 5 cpp files to compile left, I’ll leave it there as any further modifications are likely to be variants of previous fix methodologies.

      • Jason Whiteman says:

        Last nested follow-up. I have QT Yabause compiled and running with the debugger. I do not have any images to test, but the interface itself is working.
        src/qt/Arguments.cpp had a VERSION that I hardcoded to “” – that was the final edit to compile.

      • Jason Whiteman says:

        I’ve done
        0.9.11 isn’t from source – is trivial – so I didn’t add that yet. I’d rather use a harder case to navigate through my first github collaboration.

  48. FishFishmac says:

    Can someone help me out?
    I’ve downloaded the newest file from the download section and if I want to open the file “RetroPieImage_ver2.3.img” it says that it has an error and i’ve tried everithing.

    Could someone give me a DL Link for an non “.img” file?

    • Jason Whiteman says:

      This is fairly widely discussed that the emulator for DS (desmume) does not run acceptably fast on the Raspberry Pi. You can try it yourself without retropie:

      apt-get install desmume

  49. Wilson Bradley says:

    Heya, Thanks for a great interface.
    Havent really been able to use it much. Non of my Mame games work.
    resolution changes and then;
    Error: Required files are missing. The game cannot run.

  50. veganpete says:

    is there a current guide for setting up please? Managed to get all the roms installed and emulators run fine but cannot setup controls for games. Controller works for menu/front-end navigation but doesn’t work in games/emulator. How do you set a global control profile for all emulators or how do I access the menus for the various emulators to set up native controls? All the guides I’ve read say to edit

    ./retroarch-joyconfig in “/home/pi/RetroPie/RetroArch-Rpi/tools” but that directory doesn’t exist in the latest build


    • Steve says:

      Still need help? For the most recent image, v 2.3, and a generic controller, ie a usb snes controller, outside of emulation station, with the command prompt up, type
      cd retropie-setup
      sudo ./retropie_setup.sh
      This will then run you through a setup for each key, if you’re controller doesn’t have it just let the prompt run out. This works fine to get them to start working for emulators.
      If you want to make changes it the code the file is under /opt/retropie/emulators/retroarch/configs/*nameofgamepad*
      but you need root to edit it in leafpad
      easiest way to get root is in command line
      sudo su
      This puts you in the GUI with root access, to lose it just reboot your pie.
      This took forever for my luddite self to discover.

      • Davey says:

        I’ve had issues with this setup on the new 2.3 image. Im using an xbox 360 controller which is identified/works fine but it does not give enough time to press the buttons (2 seconds?), or if I press a button it thinks I pressed the button 3-4 times and uses that same button for several other buttons. Now – I’ve only run the controller setup when prompted when the image is installing. I cant find this specific controller configuration in the retropie_setup.sh list. I’m pretty familiar with the setup.sh but no controller configuration options besides the GPIO controller. I almost wish during setup that when your controller is found that it just gives a list of ‘common’ controllers and use a default configuration with all the buttons pre-configured to their normal defaults to at least get you started faster.

  51. VeganPete says:

    How do i Get Amiga to work please? – everything else works except amiga. I copied the adf files and the kick rom to the “/home/pi/RetroPie/ROMS/” folder but “Amiga” doesn’t appear on the front end menu. I’ve searched for days but all the help I get relates to “/home/pi/RetroPie/emulators/uae4rpi/” but this folder doesn’t exist in the latest build so I’m stumped. Any help would be great – nearly finished my project now. Thanks :)

    • Jason Whiteman says:

      I had to do some hacking to get uae4all to work. I do see /opt/retropie/emulators/uae4rpi/uae4all which is the Amiga executable now.
      I have details on another comment. I’m not altogether sure this is a universal problem or a local build corruption issue but perhaps you can benefit.
      Maybe retry as the directory does exist for me and I installed it 9/28/2014

    • petRockBlog says:

      I was not able to compile the emulator without further modification. I tried make, make PLATFORM=linux, and make PLATFORM=linux-nogl. This error messages appears:

      Package gtk+-3.0 was not found in the pkg-config search path.
      Perhaps you should add the directory containing `gtk+-3.0.pc’
      to the PKG_CONFIG_PATH environment variable
      No package ‘gtk+-3.0’ found

      You could post this into the forum at https://www.petrockblock.com/forums/forum/retropie-project-forum/ideas-for-further-enhancements/. Maybe someone from the community can take his/her time to make it compile.

      • Jason Whiteman says:

        Oricutron 1.0 is out now and that video was made with 0.9. Not sure if it makes a difference.

        In order to help compile – you should be following the guidance on the developer’s website for debian:


        This page describes how to compile Oricutron for Ubuntu (instructions correct for Debian unstable)

        Install SDL, GTK and OpenGL developer files with (as root):

        apt-get install libsdl-dev libgtk-3-dev libgl1-mesa-dev

        Make sure you have the GNU C++ compiler support installed (as root):

        apt-get install g++

        Either download and extract a source package from the download page, or check out the current subversion trunk.

        Open a shell, and navigate to the Oricutron sourcecode



        Hopefully, an Oricutron executable should come out the other end.

        I can try at some point. But the above should get you there.

      • Jason Whiteman says:

        Update: sudo apt-get install libgtk-3-dev was all that I needed in addition to removing the ARM-incompatible -m32 CFLAG and LFLAG. -m32 is better suited for x86.
        I was able to compile oricutron version 1.1 and see it shows a basic interpreter screen:
        (C) 1983 TANGERINE
        37631 BYTES FREE
        (flashing cursor)”
        It’s showing 80-something to 96% with 43-47FPS. I’ve got other things running and no overclock – so this approximately matches the 50fps advertised on the youtube videos.
        The sound engine looks like it may be having issues – but it’s hard to tell without loading a real “tape” that would use this feature.
        Typing does cause the sound to beep – so this seems normal.
        Oricutron comes with TRON (makes sense) – and this seems to work. I can’t tell if the missing graphic is part of the font (intentional) or not – I think it is. The sound is working. It could be faster as with the game the FPS is around 30FPS which is 60% rate. I cleared the 1st level and the 2nd is working fine. Sound, controls, graphics – everything seems fine.

      • Jason Whiteman says:

        Hopefully the last update – disk images were not working until I renamed roms/MICRODIS.ROM to roms/microdis.rom as the emulator was using lower-case vs. the file which was upper.
        The frame-rate is not up to par when the demos are loaded as they likely have high CPU utilization even in native hardware. It would be better to move the graphics away from X-win to lower the overhead. But I think as a proof of concept – my work is done with Oric (with the exception of generating another install script).

  52. chester says:

    I’m having trouble getting the internet to work. Can’t seem to find how to enter a wifi password anywhere to get it connected. and getting my xbox 360 controller to work. There was nothing in the tutorial about downloading drivers. I thought that was in retro pie. Any suggestions?

  53. chester says:

    I just bought a raspberry pi for this purpose. Can this do DOS games like tankwars and the old school pc games like x-com as well I want to play those games as well as some arcade games , like sinnistar, Galaga, super smash TV, etc.
    Can I also use pi as a Web browser/media player simultaneously with the retro gaming or does it have to be completely dedicated?
    Not very computer literate here, just wanted to get the most out of what I bought. Any help would be appreciated

    • Davey says:

      So far I’ve got fast DOSBox working pretty good (runs just about everything, but…). It is not very fast though! I’ve overclocked my Pi as high as it could go without voiding the warranty, but many of the later DOS games (eg. stuff from Epic-Megagames like Solar Winds –my favorite DOS RPG) will have frame rate dips that make the games almost unplayable. Watching the frame rate I noticed most DOS games are barely playable on the Pi, even lowering all the graphic settings. Good luck though. You can try your favorite DOS games and see.

      • Jason Whiteman says:

        Dosbox is also available in tablets so perhaps there are classes of emulators and target software that is too slow for the Pi at this stage of optimization for the emulator. As Retropie is more of a way to organize emulators – the performance of the emulators is more up to the developers of the individual packages than to Retropie. Retropie’s responsibility is to enhance the install process, help organize, and provide front-end polishing.

      • Enverex says:

        It’s not the software that is the problem, it’s the Raspberry Pi. It’s a -very weak- piece of hardware. Most phones and tablets are massively more powerful these days.

      • nipple_twister says:

        I’ve found the acceptable threshhold for power with this thing lies just above the warrantied clock speeds. It’s $45, wtf do you need a warranty for anyway? I’ve found that mine (with heatsincs) runs stable at about 1.2ghz and I can run whatever I want, minus anything with polygons. I’ve increased clock speeds until I didn’t even a video signal (around the 1.5 ghz mark) and it didn’t seem to do any permanent damage. Grow a pair and OC that shizz!

    • Michael_Ponder_JR says:

      I realize how old your post is, but i am pretty sure at this point, the Raspberry Pi 2 can handle DOS games, i mean.. it can handle N64 rather well.

  54. Chris says:

    The Pi itself that gets no sound init, until I try to run Doom (which crashes anyway). When I run Doom, I hear a sound pop telling me the sound just ‘switched on’. Even the RetroPie menus don’t give off sound effects at first, until running Doom.

    After running Doom once, LinApple and all other emulator sound starts working, as does the RP menu sounds.

    So my question is how can we make sure sound initializes on first boot of RetroPie? RSVP.

  55. Chris says:

    Nintendo 64: Are you aware of the “Audio buffer under run” error loop? It just gets stuck saying that over and over again. Any ideas?

    • Jason Whiteman says:

      This is a general indication (many/all emulators share the same issue on Raspberry Pi) that the hardware is not fast enough. The emulation is taxing the Raspberry Pi’s CPU core and slowing things down to the point where the sound emulation engine cannot stuff the buffer at a rate to meet the desired frequency so audio packets may be lost. For the most part, it may be desirable to sacrifice sound for video performance if there is an option to compile an emulator without sound.
      Usually when you see an emulator (even waiting “forever”) with absolutely no video and only the sound errors – this is an indication that the ROM/BIOS has not been configured and the device has no code to execute. One would hope the emulator would give an error to indicate this condition, but it is not always the case.
      These are general guidelines and may not apply to your situation.
      A better reply would be another user who has N64 properly configured to report that XYZ game is working and I have not tested this.

  56. Chris says:

    Dear petRockBlog. There is an issue with all the popular Atari 9-pin joystick > USB adapters, such as those on Amazon. Basically UP and LEFT on the joystick are not recognized during your config process. This affects a lot of people and so has been solved at http://www.raspberrypi.org/forums/viewtopic.php?f=78&t=36564&p=487878&hilit=retrobit#p487878. Could you kindly compile the fix into the next update?

    Also, how do I update RetroPie? Sorry for the n00b question, but the Pi is new to me. Can it auto-update?

  57. Chris says:

    What file format should MAME games be in? I want to run Star Wars, but the version I downloaded for MAME will not appear, once placed in the roms/mame directory. Can you link to a working version of Star Wars that works on MAME please? :)

  58. Chris says:

    Hi, I am finding that the ZX Spectrum emulator won’t run any games. Most of my games are .z80 files. When I click on one within RetroPie, whilst looking at the ZX Spectrum menu, it flicks back to the operating system, a few lines of text flash past quickly, then it dumps me back into the ZX Spectrum menu again. Does it actually work for you? If so can you confirm the file extension of a working game file, or supply a link to one that works so I can test please? Thanks! :)
    PS: Does it need an actual Spectrum ROM file i.e. an operating system chip ROM file?

      • Chris says:

        Thanks but I see nowhere from a Google search to find such ROM. Sorry if this is a silly question, but have you tested the ZX emulator and found it to work with RetroPie?

      • TheTurnipKing says:

        I havent tried it yet, but its on my agenda in the next day or so, so I’ll get back to you. Had one of these bad boys back in the day though, and I’ve experience of using other emulators for the system.

        The ROM image can be difficult to find because when it comes to emulators “ROM” has a very different connotation.


        Another possibility is the system is looking for a different emulator format, like TZX. The Z80 format is quite old and rather crude, being basically a state dump of all the registers and current contents of memory, and while still widespread its use is fairly depreciated.

        You can find a sizeable archive of TZX files over at World of Spectrum for testing purposes.

      • Chris says:

        Thanks for the reply. Well I switched all my files to newly download .tzx files, and also added the 48.rom file from your link, to the roms folder alongside the tapes. Now the emulator doesn’t appear in the RP menu at all, so it’s clearly not liking/seeing those files. Any ideas?

      • TheTurnipKing says:

        All a bit confusing since Retropie is supposed to be using Fuse for Spectrum emulation, which apparently supports TZX, and whatever error it’s giving doesn’t appear to be related to Fuse at all.

      • TheTurnipKing says:

        OK, after over a day of downloading, installing and updating, I can confirm the behavior.

        It ignores TZX files, shows .Z80 files and any attempt to run a Z80 file seems to result in the same error message.

      • TheTurnipKing says:

        I have done some browsing and fiddling, and come up with something that sort-of-works. Kudos to http://misapuntesde.com/post.php?id=109, which is where I stole most of this from.

        $ sudo apt-get install fuse-emulator-sdl spectrum-roms

        $ nano ~/.emulationstation/es_systems.cfg

        And changed the final ZX Spectrum section the following line:

        COMMAND=fuse-sdl %ROM%

        Also, adding .tzx and .TZX to the extensions section will result in those file types appearing in the browser, too, allowing you to play multi-load games like R-Type.

        There’s also an alternative emulator, FBZX, which is commented out and might give better results that synchronises better with retropie.

  59. Chris says:

    It says above you support “Apple II (Basilisk II)”. I ordered a Pi and lots of equipment based on this. Then I discovered Basilisk is a Mac emulator, not an Apple II emulator. Can you please clarify whether you support the Apple ][ or //e?

      • Chris says:

        Many thanks. You may want to correct that this page says Basilisk instead of LinApple :-)

      • Chris says:

        Thanks for doing that.
        1) However although I got the Apple IIe emulator working, it has no sound. It also has a few bugs and it seemed support stopped in 2012, and the dev hasn’t responded to my emails for 2 days. Any chance there’s a better emulator out there we can put in RetroPie instead?
        2) And I can’t find the Apple Macintosh (Basilisk II) emulator at all on your latest image. It can definitely emulate an old Mac? What could I be doing wrong?

  60. Harry Blake says:

    Ok total newbie so dumb question coming up, so I need to install Raspbian on my SD card as a first step correct? Now as a second step am I supposed to extract the retropie project sd card image to the SD card as well then?

  61. Michael Gibson says:

    Could you Work on maybe getting a Ds Emulator in there? And if at all possible a GameCube emulator with the GameCube you can find a way to cut down on the graphics can’t you?

    • petRockBlog says:

      I do not have the time to work on any particular emulator. Maintaining and setting everything up is more than enough :-)
      In addition, I do not know of any DS or Gamecube emulator that would run on the RPi …

  62. John Atkins says:

    is there any way to see all the games u can get I know there’s a lot but can u go to the site where there at and look thinking of getting pi for retro gaming just want to see list of all games I can get for it also does anyone know the biggest sd card u can get for it is or the biggest external hard drive?

  63. Micah I says:

    Hi guys. Im a noob to retropie and the raspberry pi itself and im having some trouble. I can load other emulators like NES and Sega Genisis perfectly fine. My problem is with the GBA emulator. It says i need a bios file and i have also read that controller support isnt available for the GBA emulator, is this true? Could you guys give me some info on how to obtain the bios file and also how to get the controller working for the GBA emulator…

    Thanks guys

  64. Alex says:

    Thank you for that awesome retropie projekt! :) And here is one tipp for everyone who serches Roms:Super ROM world (just enter it in google)

  65. Aaron says:

    Anyone having trouble with log files that quickly grow and eat up disk space? This happened to me and it resulted in corrupt game save files, as the emu’s tried to save the game, but couldn’t since my disk was full. I didn’t see the log files grow for several months. They started getting big after I got my ps3 controller working over bluetooth.

    Anyways, just wondering if anyone else has seen this problem, and if so, what did you do to fix it?

    Going through the kern.log in /var/logs/…, I get a lot of “bug: scheduling while atomic”…is this possibly due to a corrupt SD card? Or has anyone else seen this being cause by sixad or bluez or some sort of conflict related to those?

    I’m a linux noob, and Ill I’ll work on a script to clean the log files on a regular basis. Or maybe Ill just start fresh with a new image:(. However, maybe I’m missing something simple?


  66. MrDoreth says:

    Is it possible to have Raspbian and Retropie at once. So i can surf the internet and after a while switch back to retropie.

    I’m sorry but i’m a total noob I don’t know anything about the pi and Linux.
    I’ve been searching the internet but I havn’t found anything.

  67. Walter Flum says:

    I copied the Rom-files oft c64 to the rom-directory of RetroPie.
    But how can I activate Vince ?
    Nothing has changed when I reboot.
    I have used the preconfigured sdcard-image.

  68. Collin Vanessen says:

    Im having an issue when trying to configure my USB snes controller with RetroArch’s script retroarch-joyconfig

    heres the command im running:
    “./retroarch-joyconfig.c >> ~/RetroPie/configs/all/retroarch.cfg”
    with or without “sudo” before it, and with or without the “.c” at the end of joyconfig.

    When i try to run it without “sudo” the error message i get is:
    “-bash: ./retroarch-joyconfig.c: permission denied”

    When i try to run it with “sudo” the error message i get is:
    “sudo ./retroarch-joyconfig.c: command not found”

    Any help? Ive been trying to troubleshoot for 2 hours now with no luck.

    • petRockBlog says:

      retroarch-joyconfig.c is not the executable file that you are looking for. It is retroarch-joyconfig and can be found in /home/pi/RetroPie/emulators/RetroArch/installdir/bin/ (if I remember correctly).

  69. Mark says:

    Hey Merry Christmas to all RetroPie users and developers! Just discovered this awesome project and am trying to get it running on my own RPi. :)

    Small problem but I’m hoping someone can help. I’ve managed to get RetroPie running mostly really well with great graphics and sound. My Joypad (a GioTeck VX -1 wired controller) is setup and works well on the menu screen, but in-game I’m having a problem. Whether I’m playing Megadrive or SNES I seem to have a number of buttons that have either duplicated or been set up incorrectly. Whenever I press down on the pad it makes the character jump, and a couple of the other face buttons don’t correspond with how I set them up in the joypad config. I’ve re-run the script to reset the settings and taken great care not to press buttons twice etc, but the problem persists. Does anyone have a solution? Many thanks.

    • Mark says:

      Never mind I figured it out! I’d been running the setup from the command line, and I should have been using the input selector from the Emulation Station GUI. Dozy so and so. :D Works now.

      However I would like to configure the Megadrive controls separately if possible. I note that RetroPie uses Picodrive for the emulation, but I’m finding it hard to set the pad. I can use the SNES pad setup, but that really doesn’t suit the Megadrive as it had a flat six button layout as opposed to the SNES shoulder triggers and 4 button layout. Is there a way to set this? Where is Picodrive’s config and how do you alter it to suit?

      Many thanks again. :)

      • petRockBlog says:

        You can set custom mappings for pico drive in the RetroArch Config file file at /home/pi/RetroPie/configs/megadrive/retroarch.cfg.

        Hope that helps!?

      • Mark says:

        Sorry for the late reply. Actually I kinda got used to the default layout as it works well, so didn’t see the point in messing with it, but thanks for the reply! Had a massive amount of fun over Christmas just playing with it. What a great thing it is too – to be able to play all these things from one tiny Pi in front of the TV. Awesome!

        I seem to have a metric crapload of questions though about configuring all the emulators. I think it’s better if I register on the forum. :)

      • stenstorp says:

        unfortunately, I don’t think that’s possible. It can barely run N64 and PSX games fast enough to be properly playable. How would it react to the GameCube? not saying that it wouldn’t be great, it’s just unlikely with the Pi’s current processing power.

      • the person says:

        i think they should release a raspberry pi pro/b++/c for more advanced projects such as this!

      • nipple_twister says:

        You’re getting N64 and PSX roms to run playably on this thing?! I’ve got it literally overclocked to within 100mhz of freezing on the CPU and the GPU, with aftermarket heatsincs, and I’m still getting sound stutter on most SNES games. Forget FX chip games – Starfox plays at a crawl. Don’t get me wrong, I knew the specs when I bought it – if you’re playing Mario64 on the Pi I want a youtube link and a letter from a priest certifying you’re not a necromancer or something.

      • Jez 'Northern Nutter' Brook says:

        I am currently playing through FF7 and Resident Evil on the PSX all perfect. Just last night I was playing FF7 and never noticed any frame rate drops or issues with sound etc. The only one issue FF7 seems to have is a slight delay in detecting a memory card for saving/loading etc other than that it is perfect. I have loaded up Mario64 but haven’t played it but again that seems to work out.

      • Jez 'Northern Nutter' Brook says:

        I am using PCSX-ReARMed version 1.9 nothing special part of Emulation Station and the default for PSX games (well mine uses it as default). Only thing I had to edit was the es-config as for some reason supported file type .iso is not listed even though the Emu does support them (my ff7 files are iso).

      • Jez 'Northern Nutter' Brook says:

        ps I recommend you edit the retrroarch.cfg to add fullscreen and biliinear filtering. I know the PSX wasn’t much higher that 640×460 and ofc 4:3 ratio but even when stretched looks better than having big black borders.

      • nipple_twister says:

        CPU and memory specs are identical. The new Pi just has more USB ports and fewer ways to connect to a TV.

      • Nick Richardson says:

        Pi2 has a quad core 900Mhz processor versus the 700Mhz single core B+. Also has a gig of ram clocked 50Mhz faster than the 512mb B+. Can push 1.2 amps to USB as well… Aside from that they’re identical, even in price.

      • nipple_twister says:

        Small difference in clock speeds is moot, since I’ve got mine OC’ed to the edge of failure already… was not aware it had double the RAM though, that could be a game changer.

      • Carson Evans says:

        it’s not just clock speed. The rpi2 uses an arm v7 chip while the original is arm v6. When talking about 2 different generations of the arm architecture, you can’t simply compare clock speeds.

      • Gudg says:

        That is wrong though. The raspberry pi 2 has a four core cpu clocked at 900MhZ each (which can be further overclocked) and 1 GB of RAM.

        N64 and ps1 games are definitely playable

      • geocities says:

        no, it doesn’t. certain games are playable, but it does not play psx “perfectly”

      • David Gourde says:

        Well, I haven’t found a game that did not play perfectly. At least that is my experience.

    • Davey says:

      The ARM CPU power required would need to be phenomenal. The Game Cube and Wii are almost identical in GPU hardware, and the Wii is way faster than the Pi (IBM Power PC CPU). You would be trying to emulate a faster system and thats working backwards. On the other hand emulating other ARM or RISC CPUs; shouldn’t emulation be faster being native and newer? For $65 you can get an Odroid-U3 that could handle it with its quad core.

  70. ClickKlick says:

    I’m having issues with ES Scraper. I can run everything just fine, I’ve tried ROMS inside their own respective folders and ROMs thrown right into the NES folder to no avail. Anytime I run ES Scraper it says :Up to Date. But I don’t get any .xml files to look at, nor do I get boxart for any of the games. How do I resolve this? I am using RetroPie and everything up to this point is working just fine.

    • CaptainHelpful says:

      Use “ifconfig” in the console to determine your “inet addr” (the IP address your Pi is connected as) then use WinSCP, file protocol SCP, to connect to this inet address with the default username and password being pi and raspberry respectively, good luck! You can find a great tutorial that includes pushing roms to the Pi through SSH here: http://supernintendopi.wordpress.com/

  71. Teaman says:

    I don’t have much experience with Linux or the Raspberry Pi, I’ve only had mine for about a week. I’ve ran into a problem and I’m not sure how to go about trying to fix it. I’ve finally gotten MAME and most of the other emulators I’m concerned about working, but I’m having trouble getting GnGeo to work correctly. If I run it outside of the GUI it runs just fine. But if I launch it from the GUI and I’m using HDMI it will completely lock up and if I use composite it loads but the bottom half of the video is blank and the top half is garbled. I’m only really concerned about getting the composite to work because I’m going to put it in a small arcade cabinet that has a composite connection.

  72. Bobbo says:

    I’ve been struggling with this raspberry setup for about a month now, I’m almost giving it up. The Image version copied onto a SD card worked (finally). I’ve also enabled the whole size of the SD card (8gb). Everything works except I can’t add roms. I’ve Enabled the automatic USB-ROM service. I plug the USB drive in the raspberry, wait a minute, take it out. Put it in the pc. Nothing there, no folders or .cfg file or anything (Tried in the Setup menu/before retropie project logo shows up/in the menus of retropie, all several times). Is there anywhere I can read about how the folders should be set up? Or how I can move the ROMs onto my SD card another way? (Also I’ve tried SAMBA and the IP connection thing (using firefox/chrome/IE) and this did not work either. I’m about to throw this thing out the window :) / Sincerely Bobbo

  73. Rob says:

    I’ve set up a couple “systems” in es_systems.cfg to provide for “programs” and “admin” menus in emulationstation. I did this so I can launch XBMC, the X desktop, and some terminal based admin stuff like software updates, raspi-config, retro-config, change default desktop environment, etc. The examples I found on youtube to do this use files that end in .app, and have no shebang at the top, but appear to just be a script with no mention of a command interpreter. That is, the contents of xbmc.app is just one line, “sudo xbmc-standalone”. Everything works well enough this way but I would like to change resolution when I run tasks in the terminal using “tvservice -e (CEA 3)”, etc. I’m having problem getting this to work reliably. Changing resolution didn’t seem to work unless I used a proper shell script with shebang at the top, but scripts don’t seem to run as expected. They work best when all the commands are strung together with &&, but when I put each command on a newline it stops working. I also made 2 more scripts named res1.sh and res2.sh, and running those from new lines seems to work in some cases, not in others. I looked at the way runcommand.sh sort of wraps the resolution change around a command line arguement and thought I could do something similar, but I would prefer that the res change only apply to some of the “roms” for this “system” rather than for the whole system, so I prefer not to use something similar to runcommand.sh in es_systems.cfg.

    —-es_systems.cfg entry—-
    EXTENSION=.app .sh

    —–raspiconfig.sh script (AKA the %ROM%)—-
    tvservice -e “CEA 3”
    fbset -xres 720 -yres 480
    fbset -depth 8 && fbset -depth 16
    sudo raspi-config
    tvservice -e “CEA 4”
    fbset -xres 1280 -yres 720
    fbset -depth 8 && fbset -depth 16

    The example above will not work unless the tvservice and fbset commands are in a seperate scripts, or if the whole things is strung into one command with &&. What little I know about scripting commands tells me that I should be able to do the same thing several different ways and get the same results, but that doesn’t seem to be the case. Is there a better way to go about doing this? Am I doing somethign wrong?

  74. MeinLieberScholli says:

    Hello from Germany!
    First of all thank you very much for the RetroPie!
    It all works wunderful. But if I put all my roms in the library, my lxde doesnt start with “startx”
    If I leave RetroPie with Alt+F4 there comes a message:
    “==============ANTY, to the extenteftware;Ing governor.g).”
    After “startx” the system takes 2min. and abort loading.
    Can anybody help me or explain me, what is the meaning of the message?
    Thanks for every hint.

      • MeinLieberScholli says:

        I used a SD-Card image. But it had only 4GB. Perhaps that was the fault.
        Now I tested some biger cards and especially use “sudo raspi-config” to enlarge my SDHC Card. Now is everything alright.

        Thank you very much for answering.

        By the way…I got some other questions:
        – how could i change the background pictures of each emulator from the emulationstation? Some contrast settings are very bad to see the textdraw. (this one, who is white on the left and grey on the right)
        – how did i check out the empty space of the card?
        – Mastersystem & GameGear doesnt accept my own Joysets. Nothing changes if i do a preset in the folder.

        Love you!!!! ;-)
        Have a nice day!!!

      • MeinLieberScholli says:

        Hello again and happy 2014!
        Is there an option to change the f4 button to leave Emulationstation?
        Everything solved, but now i got a little BT Keyboard with no f-keys. Dont want to sign in the Forum for my little problem ;-)

        Thanks a lot!

      • petRockBlog says:

        As far as I know there is no way to re-assign the F4-key functionality to another key. Maybe you have the possibility to use some sort of a function key to enable the F-keys on your BT keyboard!?
        You might also want to post this question at the Github site of Emulation Station as a question or as a proposal for an enhancement.

      • MeinLieberScholli says:

        Okay, thx. I thought there is an easy way to change the keys. So i have to try out some other things. It’s for a friend who want to use his RetroPi in car and optionaly surf in the web. He had laze away the manual for his keyboard. Stupid boy :-) . Perhaps i use a GPIO to emulate a F4 key. Until then many thx for the quick response! I keep you up-to-date if i find a solution.

  75. Rob says:

    Nintendo No Working! (read for a fix)

    I used the install script and the NES roms I tried wouldn’t start. I got the —– lines but other text as well. Part of the text was error in runcommand.sh at line 13, it also mentioned something along the lines of “/RetroPie/emulators/RetroArch/installdir/bin/retroarch” not found. I opened runcommand.sh and realized line 13 just used a variable of some sort. I looked for this retroarch file, and it’s not there. No installdir or bin folders, however, there was a retroarch executable in ~/RetroPie/emulators/RetroArch/retroarch. I checked the debug.log and found the part where it listed the contents of es_systems.cfg, which included the Nintendo Entertainment System settings. It showed the full command line used to launch games, which included the invalid path and filename I mentioned above. I opened up ~/.emulationstation/es_systems.cfg and changed this path to point to the executable (~/RetroPie/emulators/RetroArch/retroarch) by removing the /installdir/bin part and saved.

    Nintendo Working!

    I don’t know if the install script has a bug or if I skipped a step somewhere, but I’m thinking the former since other people are having similar problems. I suspect I will have to make similar changes for other emulators as well as a few of the defaults don’t want to launch anything. I don’t know if this is the correct method to fix the problem the right way, but it worked so….pew pew!

    Also don’t cut n paste paths from my comment as I’m going from memory atm, there could be typos.

    Oh and also thank you for retropie, and all the scripts and images and docs and stuff!

      • Rob says:

        I used the binaries based install. I recently did another install and found that the paths were corrected so you must have found the problem. I have run into another problem however.

        The Gameboy Advanced emulator seems to not have been compiled. The path to it in es_systems.cfg points to a folder with no executable and some make stuff. Can I compile it easily?

        Another thing I noticed has to do with prboom. I found that right after install there is a prboom wad file, but trying to play it doesn’t do anything. So I went and got some other wad files and they play fine. I’m not too worried about prboom not working since I don’t know what it is anyway. I delete the file so it’s not in the list. The next time I try to load a real Doom wad file, it won’t load. It just drops back to emulationstation without running anything. A while later I came across another copy of prboom.wad installed along with the binary execuatable for prboom and I decided to copy it back to the doom emulators folder. Now all the other Doom wad files are playable again. I gather that prboom isn’t just another wad file, and that it’s presence is required for some reason. I wanted to mention this because while searching for a solution to this online I found quite a few people having similar problems.

      • Rob says:

        I tried running “make”, error…I tried to follow advice of a forum post somewhere and download the source using “git clone https://github.com/Aloshi/gpsp.git” but this asks me for username and passwords for github. Can someone tell me the right way to get the source that retropie uses and compile it?

  76. Jordi Ramón says:

    Hi everyone, I’ve managed to install and run Retropie and now it’s working really fine, amazing work, but i have an issue i can’t manage to solve by myself.

    This project has been my first “coding” experince and i’m really a noob (most of the time i don’t know what i’m doing…).

    I get a snes/usb adapter and now i’m playing with my snes controller, the problem is that i tried with xbox controller first, and now xboxdrv is booting at start so I can’t make the snes controller work to navigate thru emulationstation, only keyboard.

    I tried to remove the xboxdrv line in rc.local so xboxdrv doen’t load at boot but i can’t save changes since it says i got no permission when i try to save rc.local.

    I edited rc.local in the first place to add the line, but now when i try the same steps I did when i wrote the line to erase it, I always get the permission advice and rc.local doesn’t save the changes.

    I know there’s something about root and pi permissions but i can’t manage any solution to work.

    Any advice of what can I do? Thanks everyone and keep the good work!

    PD: I’m using model B with the RetroPie Image only.

  77. Frank says:

    Hi there,

    first of all: great work with the RetroPie, such a nice thing!
    I installed it on my Pi and got some SNES ROMS to work properly (keyboad control), but when it comes to connecting my snes controllers i get heavy problems.
    The original controllers are connected to a USB port via an adapter (looks something like this: http://www.amazon.de/SNES-SFC-Controller-Adapter-f%C3%BCr/dp/B002OWHTNI/ref=sr_1_1?ie=UTF8&qid=1380710099&sr=8-1&keywords=snes+usb+adapter).
    When I start emulationstation , I am able to configure the controllers and use them within the menu (so I am assuming that the adapter is working somehow).
    Next step would be to run retroarch-joyconfig and this is the point where things are no longer working. The Script tells me to press the B button (down), but nothing happens, when I press any button on my controller.
    Does anybody had similar problems, or (even better) a solution?

    Best regards,

    • petRockBlog says:

      First thing to do (or what I would suggest= would be to use the command line tool “jstest” to see, if the game pads are properly recognized by the OS Raspbian.

      You an exit Emulation Station by pressing F4. Then, you can test the first game pad via “jstest /dev/input/js0”. Note that you can exit this tool via “Ctrl-C”. The second game pad can be tested with the command “jstest /dev/input/js1”.

      If you see that the OS is recognizing the game pads properly, you could try to follow the guide at https://github.com/retropie/RetroPie-Setup/wiki/Control-Issues.

      Hope that helps!?

  78. Nicholas Moore says:

    Can anyone tell me if they have any idea’s on how I can set my xbox controller up to exit to terminal from the home button. I really need to accomplish this to add to my project. If anyone has ideas please reply or message me.

    • nomnaut says:

      Sure thing. Assuming an xbox 360 controller, you want to add input_menu_toggle_btn = 13 to ~/RetroPie/configs/all/retroarch.cfg. Then, whenever you press the xbox home button, the RetroPie menu will appear. This will allow you to reload, which will reload retroarch.cfg and roms, restart the pi, shutdown the pi, or exit RetroPie.

      • Nicholas Moore says:

        Cool I have switched to a nes controller so I will have to attempt to use a combo of keys like up and select do you know if that is possible?

  79. GaJitt says:

    Hi, I was wondering if it is possible to change or remove the Retropie project splash screen? I am using my Pi for an arcade system. Thanks!

  80. Pissed Off says:

    This is a POS! Nothing works right! The preinstalled games like Duke Nukem and Doom don’t work (won’t run or can’t configure controller). Can’t get a standard USB game controller to work. When a keyboard is plugged in it acts like it has keys that are stuck down so you can’t use that to control games. Roms that are loaded into directories are not detected… and the instructions say “have your own retro game console up and running in 30 minutes” BILLSHIT! Spent ALL EFFING DAY trying to get this POS to work and I’m no closer to making it run right than I was 12 hours ago! TOTAL WASTE OF TIME! Developers need to get their shit working BEFORE dumping this on the public!

  81. alex carter says:

    Hi,is it possible to have some emulators reendered with hdmi,and others with s-video.
    some emulators (pcsx)require rgb/ s-video,and others can be played with hdmi.
    sorry if i make duplicate post.thanks for all you make great.

    • PiRo says:

      you have to add your wireless info to WPA-supplicant.

      YES, it can be done but is not as easy to do as with the current Raspbian… Unless you tried to add network manager, but it can be done w/o network manager.

      I chose a full raspbian and built retro on top, this works fantastic and by doing it this way, I have newtwork manager and everything else that Raspbian comes with.

  82. Dylan Hunt says:

    Would love to see an Android app to use your Android phone as a wifi remote/gamepad. You can already do it with XBMC and RaspWheezy, so why not with retropi :) Heck i’d pay for it!!

    • PiRo says:

      Yes, use retroarch joypad config tool, not the GUI based one through ES. Use terminal, change the /all/ to /nes/ if you want it to configure for nes… do the same for snes and so forth. make sure you have the controller plugged in that you want to use for that specific system… Not sure, but you may need to remove the ES_input config file before you switch from 1 controller to the other when wanting to do such a setup. I found it easier to simply keep the same controller but map buttons to each system specific to my wants and needs. Just run those 2 commands and follow the mapping tool instructions, like I said, swap the /all/
      for the system you want.

      cd RetroPie/emulators/RetroArch/tools
      ./retroarch-joyconfig >> ~/RetroPie/configs/all/retroarch.cfg /all/

      • PiRo says:

        Or, config for ALL, then run startx, open the retropie config folders, and adjust each file manually. If you know your button numbers then this is easy. The main /all/ configurations will hold for ALL systems, anything added to each individual system will override the ALL configs for that system. If you would like a .cfg file that gives a lot more options (like save state, load state) let me know. I can give you my sample cfg.text. I have it built for PS3 wireless controllers, so that I can use save state but I think you can do it with controllers that offer less buttons too, just makes things crowded and a bit confusing…
        I am no guru, and could be completely wrong… I know what I have done and what has worked for me. If anyone finds fault in my remedy, let me know the correct procedure please, because that means I have been doing it wrong for 5 months now…

    • PiRo says:

      I prefer madcatz wireless PS3. It is the only controller I have used that allows me to map ALL of the buttons and hotkey type commands (like save and load state), I haven’t got rewind working yet, but other than that… I have a button for everything, a great wireless controller that gives me a D-pad for the systems that use D-pad, and joystick for those that are better with joystick… If you are not planning on doing much above SNES, then there are very cheap USB SNES controllers on Ebay, I found the Gtron w/ 9 ft cables work well for a wired controller. Depending on which controllers you use, you may want to add in a powered USB hub.

  83. Jesse Jarvis says:

    Well I know what I’ll be doing now. However this could have used an average of how much it’s going to cost for a base version of the RetroPi.

  84. Scott says:

    The initial controller setup screen goes off the left side of my 4:3 television, so I can’t actually see what buttons I need to press. No combination of settings in config.txt seems to fix the display of this setup. Does anyone have a solution?

      • Jo says:

        How do you edit config.txt? When I try I get permission denied because I’m logged in as pi and the file is set to root.
        I also have the issue with the list of games going outside the screen, both hight and width. The same thing goes for the games. Really annoying when Mario is standing on a ledge below the screen :(

  85. Warbird says:

    I’m having issues getting the emulators to work. Similar to the issue Waz was having of seeing “===============================” and as best I can tell something about runncommand.sh having the permission denied every time I try to get a game to start. Things like the Apple 2 and PC emulators seem to work fine, but so far all the roms for NES, SNES, and the Genesis all give the same response and crash back to the main screen showing the list of available games. This also applies to Duke, Doom, and Cave Story as well.

    I’ve checked the runcommand.sh file as recommended in the response to Waz’s post and have even replaced it with one I created in Notepad++ with the copy pasted data from the aforementioned link, but nothing works. Any ideas as to a fix? I’m really looking forward to playing some old games on my Pi.

    • Warbird says:

      Small edit, I reflashed the card and the problem persists. I figure the permission thing was due to my messing up the importing of the .sh file somehow. As it is, I’m just getting the “=====================” right now.

      • petRockBlog says:

        Maybe you are using .zip-files? You would need to extract the ROMs. Are you using the binaries- or source-based installation or the sd-card image?

    • PiRo says:

      Simply add raspbian, then use the guide to complete retro binaries install on raspbian. Keep in mind, BerryBoot was developed with the 256mb board in mind. Things like CPU split and overclocking may be weird in such an environment. It is easy to though and as long as you are only playing some of the earliest systems, then you probably won’t need to overclock or adjust CPU/GPU split. I have issues with it only after loading boxart and info. Maybe try not adding these, when on berryboot, and you won’t experience some of the issues I have, like my ES rom menu blanking out. I can still choose games, blindly, and after exiting emulator I get my art and rom menu back, but it is a bug I only experienced with berryboot builds.

  86. Сергей Беляев says:

    hello, petRock! im want to use like frontend xbmc media center. may be you know how adapt xmbc for retropie, or can you tell me how rewrite emulationstation for my needs?

  87. Wolf13 says:

    Hi there,

    Great job on the script. You guys did an amazing job.

    I have installed it fine- and have gone through the initial setup of the game-pad on the first boot.

    Though- when I start an emulator (NES in this case)- my gamepad is completely unresponsive.

    What am I doing wrong? Have I missed a step?

    Any help appreciated.


  88. Waz says:

    Hello ! First of all thank you very much for the RetroPie script :)

    But I have an issue… I managed to install RetroPie/emulstation and everything went well. I can launch the gui of emulstation and start Duke Nukem for instance. But when it comes to use Gensis/GB/GBA/SNES emulators, none of them works … My ROMs are well displayed on the gui, but when i try to start a game, emulstation jumps directly to command line, witting a bunch of “=================================” and display that damn white dot in the middle (OpenGL), and then crashes to come back to the emulstation GUI! I have a raspi B and my memory split is well set to 256/256 !

    Any ideas what’s going on ??


  89. Dani says:

    hello, I’ve gotten several roms via samba, but I can not get it to work.

    Snes-> Blackscreen

    Dgen->freezes on the logo

    Any ideas? Thank u

  90. 6th Sense says:

    Do you have any italian or german site or translate? A cant read very well english, so please give me anyone an answer ^^ Thanks

  91. Jonathan Lemonde says:

    Hey guys,
    Never done that before, but that project has me so stoked!
    Would there be a way or a link where there is a -clear- list of everything I have to buy in order to make mine?
    I see some parts are explained but there’s no real clear list of hardware parts you need to buy.

  92. 4cidBurnD says:

    Awesome project!! Brought my childhood back to the living room. A very big “thank you” for that. Even the GBA runs smoothly now, but unfortunately I couldn’t remap the controls for the gpsp so far. Is this a common problem, or is it just me? tried editing the retroarch.cfg in /configs/gba (did nothing) and also created a gpsp_input.cfg in emulators/gpsp/raspberry/ (also no luck). Moreover I wasn’t able to play anything with more than 2 gamepads. Is this a game- or emulator specific problem? Would be awesome to play CTR in 4 player mode. Anyway, thanks for your hard work…you’re awesome!

    Greetings from the Netherlands

    • Anonymous says:

      Hey, I know this is 3 months later, but better than never, I guess. Gpsp runs a bit independently from the rest of the package, it’s settings can be accessed by pressing y+R. You’ll need to do this for every game. My problem is the startup, it says I have an unofficial BIOS so I need the keyboard to start it whereas I want the whole thing to be strictly controller operated (Xbox 360) as it’s a gift for a friend.

  93. Marc Call says:

    Can anyone tell me if they are running SNES games at full speed with Retro Pie? I spent the whole weekend messing with my RPi and Retro Pie, and could not get Donkey Kong Country or Super Mario World to play at a good speed. What am I missing?

    • Marc Call says:

      I just came across the pre built SD-Card install file, I think I’ll try that tonight and see if I have any better luck with game speeds.

  94. Kim Royale says:

    The case look really good, however im looking for something larger where i can add extention cables to panel mounted hdmi, ethernet and usb ports to the back of it. It would be more appealing as a gamestation having most of the cables at the back of the case. Like now fully connected there is cables at every possible location on the board, hard to fit and make it look nice in the tv bench.

      • HDDguy says:

        Use an old NES console. With some “Cutting and pasting” you can have this working in no time. I’m working on mine, unfortunately I spent well over 120 dollars getting the H/W. But for the amount of games and platforms I will have available, I think it is WELL worth it

      • HDDguy says:

        Here’s My List (Definitely got the idea from jbaker on imgur):
        RaspberryPi w/ 512 MB
        ATXraspi (connect the NES power button to this and then connect to GPIO pins for On/Off switch)
        HDMI extension cable (M->F 6″)
        2 USB extension cables (M->F 12″)
        Ethernet extension cable (M->F12″)
        Single Pin PC Cables – connect between ATXraspi pins and GPIO pins on Pi
        32GB SD Card
        A Pack of Sugru (bonds within 24 hours, forms into semi-hard rubber)
        A dremel tool (Going to cut the panels clean off and make my own with sugru)

        Hopefully that inspires someone to a DIY conclusion. I thought it was a neat project, and so far I’m learning a lot!

  95. Makel says:

    I have my PS3 controllers running through bluetooth. Emulationstation starts before the controllers are recognized by the system. I have to wait for a minute then exit and restart emulationstation with the keyboard for the controllers to work with emulationstation. Is there a way to have emulationstation delay for a certain amount of time before starting, or get the controllers recognized even if they are connected after emulationstation has already started? I would like to not have to hook up a keyboard at all.

    • Makel says:

      Found a solution. Not very elegant. I disabled the splash screen and at the end of the rc.local file, I added a message to say press the ps button. Then I had the program sleep for 30s. That gives the Bluetooth time to setup js0 before emulationstation starts.

      • Florian says:

        Hello Makel,

        It would be great if you could provide me with the commands you put into /etc/rc.local to start emulationstation some seconds later. It seems I have the same odd behaviour with my PS3 controller and the bluetooth dongle.
        I tried it out on my own yesterday but it did not work properly. Maybe I am missing something.
        THX in advance

      • Florian says:

        I have figured it out. Now it works with these two commands in the rc.local file

        sleep 20s
        emulationstation &

        Thanks for this awesome Emulator on the RaspberryPi!

      • Royale says:

        Hi! I have the same problem, could you perhaps provide the code? the part where you have to press the PS Burton before the emulationstation would start is really interresting

      • Florian says:

        Hi, The 2 commands are the only code I write into my rc.local file. You have to write them above the exit 0 command and it will work. Like Makel mentioned you have to disable the splashscreen in the RetroPie Setup so you can see what is happening during the boot, When the sleep command starts press the PS button on your controller and it will connect to your BT dongle. After 20s Emulationstation will start and you can use your controller. That´s the way it works for my setup. Hope I could help.

  96. Jo says:

    Hi everyone, i’ve installed retropie on my pi.
    But my graphics aren’t good…
    Dus somebody know how to alter them to play on my 1920 x 1080 lcd screen (hdmi)?

    • Kyle says:

      This is great once you get everything configured. Someone needs to add a few improvements to it to make it more user-friendly to install! Not very many people will want to mess with this as it is…

      After messing around with this thing for a couple of weeks, I found RetroPie a pretty shoddily pieced together distro! It should come with a few caveats when you download it:

      First of all I found out that the /boot/config.txt is set for max overclocking out of the box. That poses two problems… First it blows the overclocking indicator fuse in the processor which effectively voids the warranty. Second of all, overclocking will cause otherwise compatible SD cards to become corrupted beyond simple repair with fsck.

      Secondly, it doesn’t become fully configured and requires logging into a command line. On top of that, the locaton for the tools have changed locations enough times (eg. retroarch-joyconfig) that several tutorials are now erroneous.

      It seems to me that a simple GUI could resolve many of the things that currently require fishing around blindly in the cli to do!

      • Davey says:

        If its not overclocking faster than Turbo than it wont void your warranty per Raspberry Pi website. Any overclock available in the default Raspian installation is valid and wont trigger the CPu’s ‘sticky bit’. That is the 1GHz/500MHz Turbo overclock. Any SD card corruption from overclocking memory does not destroy the SD card BTW. It usually requires reformatting though to fix the corrupted data. Ive been running Turbo as long as Ive had my Pi 9I have heat sinks though)and its never gone over 50c maxed out (rated for 80c if I remember correctly) and never had corruption of memory.

      • Davey says:

        David I hope you were not being sarcastic – when you buy a Pi you can generally get the little itty bitty heat sinks for an extra $5 and they simply stick on top of the CPU (they include thermal conductive tape). Putting heat sinks on the ram is pointless the ram barely gets warm. But honestly if not severely over volting the Pi you can get away with ‘marginal’ OC’s without a heat sink. The CPU runs very cool.

    • the person says:

      could you put a link to where to get those games plz im new to this so dont know where or what to expect when looking for games on the retro pie!

  97. Steve88 says:

    This project (and RetroArch itself) pretty much is the coolest thing I’ve encountered in a looong time.

    Please keep up the good work!

    Just a few minor issues I’ve stumbled upon:

    * The Atari2600-emulator doesn’t seem to work (some failure-message about “Paddles” and “MouseSensitivity” comes up).
    * Also please add the “.a26”-file-extension to the default-settings for the Stellar-emulator (Atari2600).
    * “eduke32” ignores ANY .grp-file passed on the command-line (it will always load the “internal” shareware-episodes).
    * The “GameBoy”-emulator isn’t active by default (“.emulationstation”-settings). “GameBoy Color” and “GameBoy Advance” are available though.

    Other than that… everything else (NES, SNES, MasterSystem, GameGear, NeoGeo, MAME, Genesis, etc.) all works fine out-of-the-box… simply awesome!

    Again… thanks a lot!

    • Florian says:

      Thanks a lot for your feedback!

      I have created corresponding issues at the Github repository of the script!
      Do not hesitate to do this on your own as well in case of future issues that you or someone else might find.
      Update: Most of the issues mentioned above have been fixed with the recent update of the script.

  98. spirit222 says:


    Thanks for making amazing retropie. I have problem with dgen. My gamepad’s d-pad don’t work in dgen, but it works in other emulators. I have modified dgenrc file and got buttons to right place, but cannot understand how to set d-pad directions. In retroarch d-pad works fine and in retroarch.cfg d-pad axes are -2,+2 and -3,+3. But i can’t figure out how to set these axes to dgenrc file. Can you give me a hint to fix d-pad in dgen?

  99. Dominik says:

    Mhh the update didn’t help… i just had a look at the cpu load while playing super mario world, first world on the right, where there are about ten turtles, my cpu load goes to 91%… but on my overclocked cpu… is this normal ?

    • Florian says:

      I cannot check the CPU load on my RPi right now, but do you see the same load without the game pad being connected?
      SNESDev does not interfere with other USB devices and (I assume) it is not the source of the problems.

  100. Dominik says:

    It’s an usb pad and i also see the laag on my keyboard… so this is really odd.

    I started a rebuild yesterday, maybe the problem is now away. Is there any way how i can debug what is causing this ?

    I’m not sure but i tried to install the SNESDev driver, but currently i don’t have a snes gamepad connected. Do you think this can have some side effects because it tries to poll from the USB gamepad ?


  101. Dominik says:

    Hi, i installed RetroPi on my rpi model 2 (512MB) and it works well (at least when i start it by hand)

    The problem i have on my pi is the performance. When i try to play Super Mario World on the snes emulator i get lacks of almost 1 second between pressing a key (keyboard and jostick doesn’t matter) and seeing the result on the screen.

    Do you also see that problems on your pi (I already tried to overclock the pi to 950Mhz but that doesn’t help)


    • Florian says:

      No, I do not see these lacks with my installation.
      Do you maybe have SNESDev and the gamecon driver polling the game pads at the same time? Or are you using an USB pad?

  102. mikie says:


    thanks for the quick reply! I must admit I was aware of the retroarch.cfg file, but haven’t really taken a close look. The default retroarch.cfg doesn’t seem to mention anything about screen rotation for example. Do you know if the default contains all the config options available? If not, would there be a definitive list somewhere perhaps?

    Thanks again,

  103. mikie says:


    It’s a question about the retroarch really, but I’m assuming it applies to RetroPie…

    Does RetroPie replace the individual emulator configuration files? I’m particularly interested in the MAME implementation; A standalone MAME executable (based on 0.37) needs a file called mame.ini. Is this still the case for the retrolib version? If not, how can I specify things like screen rotation when using RetroPie? I can’t figure out how to do this at the moment (Raspberry Pi version).

    Many thanks,

    • Florian says:

      I have no experience with the standalone MAME emulator. But, at least, I can tell you that the whole configuration for the RetroArch-based emulators is done in the file /etc/retroarch.cfg per default. The RetroPie script uses this config file per default. I hope this helps!?

    • Florian says:

      RetroArch configs can be set in /etc/retroarch.cfg. Of you are using the RetroPie script together with Emulation Station, you should modify ~/RetroPie/configs/all/retroarch.cfg. The config files are well documented and I assume that they contain all possible parameters (see also https://wiki.archlinux.org/index.php/RetroArch). Regarding the MAME core O must say that I do not have a clue about that.

    • Florian says:

      Start the script and choose the source-based installation. From there you can choose which components to be updated. The script will then checkout the most recent sources and recompile them for each chosen component. Please note that some of the options in that menu modify the retroarch and/or Emulation Station configurations, so make sure to deselect them if you want to keep them.

      • Mike says:

        It would be helpful to have an “Update” option that only downloaded the new source for the coresRetroArchEmulationStation, and left configs alone. Which options impact config files?

      • Florian says:

        I totally agree!
        The source-based installation menu can be used for an update. I have modified the entry titles to make more clear which entries change the settings. Simply deselecting these will update all other components to the most recent versions and keep the configurations untouched.

      • blabla says:

        what is this for a shit script? why not checking for enough discspace before installing all the stuff.. wasting of about 1 hour on a 4gig card where is the dislike button ?

      • blabla says:

        clean 4gig card, fresh install of raspbian OS + your script and now 0% discspace left while running retropie install script , check your script

Leave a Reply