This guide was written for the release of RetroPie 2.0+. I have written a new guide for RetroPie 3.0+ for all Raspberry Pi models including the new Raspberry Pi Zero.
Please click here to be redirected to the updated guide.
Installing RetroPie through Raspberry Pi's OS (Raspbian) and also enabling Playstation 1 Emulator in RetroPie. I'll also teach you how to write images on your Mac or Windows PC as well (no worries :D).
This tutorial is for Raspberry Pi 2 B+ Models. Any Raspberry Pi before this is a lot easier to just download the ROM from the official site and skip step 3.
Hey guys! This is my first Instructable, so any constructive feedback would be great! I've recently gotten my Raspberry Pi and decided to document all my projects and such as well as my experiences. If you would like to follow up on my projects please check out my website as well as my blog on Medium. Following my blog on Medium is the best way to stay updated on interesting project that I'm tinkering and experimenting with.It's still a work in progress, but I'll be documenting a lot of my DIY projects and technology interests there as well.
One more thing, if you can, like my computer repair startup on Facebook! Not only is the startup for computer repair around my region, but it is also used to post anything about tech as well.
Also, if you've just gotten your Pi, you might be interested in some of the things I bought for the Pi and why I bought them. I discuss a lot about the items I bought for my Raspberry Pi. If you're interested, you can click here. It's good to have these things if you want to be able to overclock without any worried as well.
Click here to visit my website
Click here to follow my Medium
Click here to like my computer repair startup! (Please like and share :D...)
Click here to visit my post on equipment I bought
I hope you guys learn a lot from what I have to teach. I'll also be explaining a lot of the commands and such so you'll learn some basic commands along the way. I'm not going to just tell you what to type most of the time. I'll try to fill you in on some basic background knowledge on how everything works so you might be able to apply it somewhere else (or for other Pi projects)! These guides are also ran through thoroughly so I'll be able to document any errors I experience for you guys as well.
Heatsinks and Ventilation will really help you out since you're gaming and video output takes a lot on chips. Also game pads will help better your experience with emulators for that classic controller feel :D
Now, time to set up your SD card with Raspbian OS.
Raspbian is Raspberry Pi's Linux OS. At this current time of writing, it's called Wheezy. You should start downloading this right now since it's going to take a while (the site has slow download speeds, unless you torrent). After that, extract the .zip file and you should get an image. Next, we're going to have to mount the image onto your SD card. Please refer to either the Windows or OSX guides depending on what OS you're running.
In English, we're basically downloading Raspberry Pi's program (the image file, hence .img) and writing it to the card for use.
Click here to download the Raspbian Debian
We're going to be using Win32DiskImager. Click here to download. This program is really easy to use, but just follow along anyway.
I did this the painful way and did it through terminal, but follow this guide for the easy way out.
Take your SD Card out, plug it into your Pi, and plug all the cables in (ethernet, keyboard, HDMI). Finally, plug in the power and proceed to the next step.
Basically, Raspi-Config is Raspberry's Pi's BIOS. This is where you'll be configuring all of Raspberry Pi's settings. From here you enable overclocking, video ram increases, and much more.
Now that your Pi is booted, you should be greeted with a blue screen with a bunch of options in the middle.
Note: You might have noticed you can change your password into the login for your Pi. You can if you want to. The default password for the Pi is raspberry. However, if you're going to change it, just remember that the password you set is going to be what you're using for the remainder of the tutorial.
We're essentially expanding the file system in make it accessible to the entire OS (giving it root access). We're also increasing the video RAM from whatever it was (default is 64mb I believe) to 512mb. By increasing the VRAM, we'll be able to play more graphics intense games (such as the Playstation 1 ROMs) without any video lag. Also, overclocking will really help with the speed and responsiveness of your Pi as well. Just make sure you have sufficient cooling and ventilation for it (as explained on my blog post). Again, do not set it to turbo. It'll crash, and you'll have to re-wipe and restart this whole Instructable all over again.
This section is only for the Raspberry Pi 2 B+ Model. Older versions of the Pi don't need these extra steps. You can simply download the image from the website depending on your model. Then, you can skip to step 4
Click here to download if you have an older Pi
We're going to be using the apt-get tool found in Linux. APT stands for Advanced Packaging Tool, and it's a really simple yet powerful command to download/upgrade anything (even the OS itself). You're going to be using this for a lot of the projects on the Pi or on Linux in the future as well. We're going to be upgrading the git feature to clone the git repository of RetroPie.
In other words, using the apt-get command, we're going to drag the stuff from a website and install it into our Pi.
When following these commands, make sure to follow these simple rules. Input the next command only when it says pi@raspberrypi ~ $ and also whenever a command is in a new line, make sure to please press enter and wait if necessary.
First thing's first, let's get an update check on all of our packages.
sudo apt-get update
Wait a couple minutes, and then once you return back to pi@raspberrypi ~ $, input this to upgrade git
sudo apt-get upgrade -y git
Wait.
sudo apt-get install -y git dialog
Wait, and now time to copy the git repository.
cd<br>git clone --depth=0 git://github.com/petrockblog/RetroPie-Setup.git
Now, time to launch the setup that we downloaded/copied.
cd RetroPie-Setup<br>chmod +x retropie_setup.sh sudo ./retropie_setup.sh
RetroPie is now installing. Using the second option to install is usually faster on the newer Pi models and you end up with the same stuff, but I trust Option 1 and I'll be using Option 1. The installation should take about 15 minutes.
You should be back at the terminal. Proceed to the next step.
What is FTP?
Essentially, FTP, also known as File Transfer Protocol, is a standard network protocol to transfer files from one computer/host to another through a network. In this case, it's your LAN (Local Area Network). We're going to need to find out the IP address of your Pi. Then we can tap into it using WinSCP.
Type this into the Terminal
ifconfig
Now just look where inet addr: is. Your IP should be 192.168.1.xx (xx meaning a random number depending on your network).
We're going to need this in the next step, so might as well do it now since you're still on your Pi. This basically claims ownership of folders using the chown command. This will make it easier for us to write files with the correct permissions. If there's any other folders that give you permission errors, just use the following command below, and change the directory accordingly.
sudo chown -R pi:pi /home/pi/RetroPie sudo chown -R pi:pi /etc/EmulationStation
Proceed to the next step to enable the PSX Emulator.
This is basically the BIOS for Playstation 1. It makes sense to download the code for Playstation 1 to run Playstation 1 ROMs.
Next (still using WinSCP) navigate to /opt/RetroPie/configs/all/retroarch.cfg
Double click retroarch.cfg to open up the text editor. Change these settings to the code below. MAKE SURE TO DELETE THE HASHTAG IN FRONT OF THE LINE. #s are basically there to disable that part of the setting/code int he config file.
input_menu_toggle = f1 video_smooth = true
Next, navigate to /etc/EmulationStation/es_systems.cfg and open it up again with the text editor. Scroll down to Sony Playstation or Playstation and change this code:
runcommand.sh 2
Also, between and make sure you just leave it looking like this:
<extension>.bin .cue .BIN .CUE</extension>
Time to finally insert ROMs now!
Probably the easiest step there is. Now time to configure our controls!
Restarting Your Pi
First off, shut down your Pi, and then plug in your gamepad. Type this command to shutdown
sudo shutdown -h now
After plugging your controller in (one at a time if you have more than 1), boot up your Pi. Once it's ready to receive your command, punch this in:
cd /opt/retropie/emulators/retroarch/
sudo ./retroarch-joyconfig -j 0 >> /opt/retropie/configs/all/retroarch.cfg
This should launch a command and now asks you to start pressing keys to how you want them keyed in when you play on the ROM.
Note: If you get an error saying "Couldn't open joystick #0", just replace that number with a 1 or a 2.
Press whatever key you want to output that command when it asks. Simple.
Note: If your controller has less buttons than the config tries to setup (SNES controllers lack the R2/L2, R3/L3, and Joysticks), then you need to select a dummy button (I used left trigger) for the buttons you don’t have. We will edit those out later. Once this is done, it will bring you back to the terminal.
Now that you're done figuring, reboot.
sudo reboot
input_player1_l2_btn = "8" input_player1_r2_btn = "8" input_player1_l3_btn = "8" input_player1_r3_btn = "8"
I am deleting these because I have no L2 or R2 buttons on the controller, and I also have no L3 or R3 buttons.
Further down in the .cfg file, I am also going to delete the Joystick configurations, because the controllers I have, use only a D-Pad. So delete all the line: “input_player1_l_x_plus_btn = “x”” and all of the lines under it.
Now the only things you should have left, are the buttons that exist on an SNES controller (A, B, Y, X, L, R, Start, Select, Up, Down, Left, Right), and one line at the top defining the first controller plugged in as “Player 1″
If you have another controller that's a different kind, run the configuration command again after rebooting and pluggin out your old controller and plugging the new one in. Run through those and edit the Retroarch.cfg accordingly.
However, if you have a controller of the same kind just copy and paste all the code start from input_player1_joypad_index = "0" and down again and change the index to "1". Then, change all of the player1 lines of the code under index 1 to player2.
You can setup an “exit emulator” button combination that will bring you back to the emulator/game selection screen. When you do this, it will dump the ROM and keep any save files that you have. Only do this if you have spare buttons on your controller that you won't be using. Otherwise, just use a keyboard for the time being.
Configuration is the most annoying in RetroPie. There's different configs that always override others.
Navigate to /opt/retropie/emulators/retroarch/configs/ and delete all the .cfg files in there.
Then, shutdown
sudo shutdown -h now
Proceed to the next step!
Using WinSCP, Navigate to /opt/RetroPie/configs/all/retroarch.cfgagain. Scroll all the way down and find this:
video_aspect_ratio = x.xx
Now, just paste this as a replacement for reference, and just put the number of what resolution you want next to the = sign. Since I have an HDTV, I put in 1.77, like this:
video_aspect_ratio =
#1.333333 (4:3) Traditional SDTV #1.56 (14:9) 4:3/16:9 Compromise aspect ratio #1.6667 (5:3 Super 16mm) #1.77 (16:9) HDTV US standard #1.78 (16:9) HDTV US standard alternate #1.6 (16:10) Common computer screen ratio #1.6667 (5:3) Common European widescreen standard #1.85 Common US widescreen cinema #2.39 Current widescreen cinema alternate #2.40 Current widescreen cinema alternate
Don't worry about the extra code, the hashtags cancel it out. It's just there for reference. Just save the file now and reboot if you want to see the changes.
sudo reboot
We're going to be downloading titles and info for each game now.
You have finally finished! Took a while didn't it? Now with all the software-end of the project finished, you can expand this a lot more. Here are some suggestions below. Anyway, I hope you learned a lot today and enjoyed making the RetroPie as much as I loved writing about it. I tried to make this guide as complete as I can after reading many other guides. Hope you enjoy! Make sure to check out my site for more projects!
Click here to visit my website
You can actually make your own personal cloud server and download/upload ROMs through the cloud. Neat huh? I'll have a tutorial soon on it!
This is to have a button to turn the system on and off to make it seem more of a console. Check it out!
Click here to check out the GPIO Adapter
Make a Case for it!
If you look around, there should be a bunch of cases for the RetroPie that people have made to make it seem more Retro so to speak. Check them out!