I've failed to blog about one of my more geeky things I've done in the past year – setup a RetroPie. Note that it's not Retro/Pi/ because you can install it on more things than a RasberryPi… though that is exactly what I did.
For the 2016-17 school year, my daughter had a big science fair project, she wanted to do something with programming and her and I talked about different RaspberryPi projects. She picked one and did very well with it on the school and metro levels. All that is besides the point but the fact that we had a Raspberry Pi 3 laying around the house in the fall of 2017. It has a case, and HDMI I started looking at what I could do with it. After some research I figure out a RetroPie system would be a fun thing -for me- for my kids to have.
Setting it up honestly is pretty easy if you do the pre-made images. I tried installing it over a pre-made Raspbian install but kept running out of room… which is important when you start putting ROMs on there. I got the image on an SD card and installation went pretty easy. I won't get into procuring your own ROMs… that exercise is up to the reader. Some of the emulators for the new systems do tax the Pi a bit, but things like Sega Genesis and NES are no problem. Even PS1 is fine, though I never have taken the time to figure out how to do multi-CD games with it.
I found it handy to have a wireless keyboard on my Pi during setup and hanging around in case I need it. I bought a cheap Logitech keyboard with a dongle I just keep in one of the Pi's USB slot. Works nice.. but now that my Pi is setup I rarely use it.
For controllers, I tried a cheaper Bluetooth game controller but I never could get it to work right. Save yourself some trouble and get a use PS3 controller. It worked fine after I paired it. It's also well-supported on the RetroPie platform so kinda makes this a no-brainer. I got mine used, which saved me some money but didn't come with a cord, which is a mini USB cord (not a micro, which works in most Android phones). Also, keep it plugged into your Pi when not playing to keep it charged. I didn't do that and recently couldn't figure out why it didn't charge until I plugged into my Mac. It seems to need data to charge. Apparently an XBox 360 controller works very well too. They may be cheaper.
The RetroPie system itself kinda odd and it's hard to discern what does what. It's not really one thing but a system of pre-existing applications: front-ends, emulators and things that go in-between. These application are already configured to work together in harmony. You can tweak things to your hearts content as well. These things are:
- EmulationStation is the front-end interface. It's the fancy menu system that use you to choose your game. It also has menus to get into controller settings, etc.
- RetroArch is the program that knows what emulator to use to run your ROMs and starts the appropriate one. Sometimes there are more than one valid emulator and RetroArch will pick the default one. You can easily change the default, or set the best emulator for that particular game. It also is where you do to save and load stat of the ROM. You know, so you can quickly save your place on that really hard game and so you can go back when you die. I interface with RetroArch by hitting the PS button on my controller.
- The emulators. I let RetroArch handle all of this. There are a lot of them, but really RetroArch does the work.
When you start a game, EmulationStation calls RetroArch and RetroArch does it's thing. When you quit playing (for me, PS2 button, push B, Quit) then RetroArch will also quit and EmulationStation will appear on the screen. All this is pretty painless but it's important because when you go to the forums if you have problems, you will see them talk about each individual component.
Another interesting thing that RetroPie includes is a Samba share. This makes transferring ROMs from where you, er, get them to the Pi as easy and copy and paste over the share. But, as I said above, knowing a bit about the emulators is a good idea because you have to know what ROM goes in what folder.
Excuse me while I continue to free my kingdom from the hordes of Runefast.