RetroArch is one of the best emulators you can have on your iDevice. It houses multiple platforms and is very versatile. There is a lot to be explained oh how to set up RetroArch and get games running. Below you will find a YouTube video made by me as well as an in depth text tutorial written by TheCriton over on the Jailbreak Subreddit. Enjoy!
Note: This text tutorial is a bit lengthy but it will be able to answer any questions that aren’t answered in the video.
Step 1. Be Jailbroken – honestly, there’s no real way around this.
Step 2. Gather Materials – The three programs we will use in this tutorial are UnlimDownloads (on the App Store), iFile (Big Boss repo – standard), and RetroArch (Cydia source: http://themaister.net/cydia). Note: this can all be done without UnlimDownloads, but getting Safari to react to download links is like pulling teeth with greasy fingers, so add an extra step and save yourself a lot of headache.
Step 2a. How to add repos in Cydia – Open Cydia, tap on “Sources” in the lower left hand corner. Then tap “Edit” in the upper right hand corner and tap “Add” in the upper left hand corner. Enter “themaister.net/cydia” Tap add source and let Cydia work. Once the source is ready tap the “Return to Cydia” and tap “Done” in the upper right hand corner.
Step 2b. Installing RetroArch – Tap on “themaister.net” in your sources screen. There should only be one item inside the source, RetroArch. Tap that, then hit “Install” in the upper right hand corner. Press “Confirm” and the package will be downloaded and installed, note that at the time of writing RetroArch is 26.2 Mb in size, so it may take a minute or two to finish this process. Eureka! We have the biggest part in setting up our emulation machine done!
Step 2c. Installing iFile – In Cydia, search for iFile with the built in search function, it is on the default repository, so no need to add additional sources. Follow the general steps above in Step 2b to install iFile.
Step 2d. Installing UnlimDownloads – This is the easiest part, go into the App Store and search/download UnlimDownloads.
Step 3. Choose what you want to play – RetroArch currently supports many cores (read: emulators of different systems) including PCSX ReARMed, Genesis Plus GX, Picodrive, SNES9x Next, VBA Next, NEStopia, FCEUmm, Mednafen PCE Fast, Mednafen NGP, Mednafen VB, Mednafen Wonderswan, Prboom,Tyrquake, NX Engine (Cave Story), Final Burn Alpha, Gambatte, MAME 2003 [0.78], Mupen64 Plus. Don’t worry if you don’t know what half (or any) of these are, RetroArch has an autodetection feature that will help you choose which core to use. Think of cores as which game system you want to use, you wouldn’t try to play an SNES game on your Playstation; the coding is totally different. For the purposes of the article, I will focus on the three most popular sytems (in my own opinion) SNES, Gameboy Advance, and Playstation. These three in my opinion work best with touch screens, especially for turn based games such as Chrono Trigger (SNES), Tactics Ogre: The Knight of Lodis (GBA), and Final Fantasy Tactics (PSX), which are the three games I will use as examples as they are easiest to play on touchscreen.
Step 3a. Download the ROMs – This is the hairiest part legally, as you are only legally allowed to download ROMs of titles you own. As little as it counts, I did at one point own all three of these titles, but I have no means of proving that as I have either sold them or cannot find them. A google search for Chrono Trigger Rom results the top hit on a site called “coolrom.com” which I personally recommend for its good mobile interface. Using the app UnlimDownloads, go to google and search for whichever game you choose, preferably SNES as the filesize is generally small and easiest to manage for a first time user. However you get there, press some sort of “Download Now” button and UnlimDownloads will prompt with some options. Choose “Download To” and you’ll see that it defaults to a folder called “Documents.” You can check the progress of your downloads by tapping the three horizontal lines in the top left and the tapping “Downloads.” Once this is finished, it’s time to delve into iFile.
Step 3b. Start to Organize a ROMs folder – Open iFile. Press the Sidebar button on the top left corner, and then press Documents. Uh Oh, no file. That’s OK, this is where we’ll begin to build our ROMs folder, not where the ROM files were originally downloaded. Consider this “Documents” Folder Home Base; this is where Retroarch will automatically start when you look for your downloaded ROMs. Once in “Documents” tap “Edit” in the upper right hand corner, then tap the plus sign in the bottom left corner. This will prompt you to name a directory (read: folder) which we will call “ROMs.” Tap “Create” and then “Done” in the upper right corner. Tap on your brand new folder and repeat the process to create another folder called “SNES,” or whichever system you are planning on emulating first. Now to find that file we downloaded.
Step 3c. Moving ROMs to the proper location – The Downloads from UnlimDownloads are stored in the Application files of that specific app, so we’ll need to find that. Tap “Sidebar” in the top left corner of iFile, and then tap Applications. Oh No. Numbers. Lots of Numbers. Fear Not! Tap the Gear icon in the bottom left corner and continue into “File Manager.” Swipe the “Application Names” switch over to the right and the scary numbers will be replaced with nice English words. While you’re here also swipe the “Hidden Files” switch, that’ll be helpful later. Close that menu and scroll down to the folder marked “UnlimDL,” which will house the “Documents” folder, which in turn, houses the downloaded files. As you see, there is likely a file titled Chrono Trigger.zip. Long press this file and lets move it to our ROMs folder by pressing “Select” then tapping the copy icon which is the bottom right corner icon. Tap “Cut” as we want to move this file, and then “Done,” in the right hand corner. Navigate back to your ROMs folder by tapping the “Sidebar”, then “Documents”, then “ROMs”, then “SNES.” Long press in the empty space and select “Paste.” Tapping the file will bring up a menu that includes the term “Unarchiver,” which functions to unzip the files within. For SNES, this step can be skipped, but you might want to anyway. It will likely not be a problem, as RetroArch usually has no issue reading SNES data from zip files, but sometimes rom sites will package multiple versions of a rom inside one zip file, so I generally will unzip the file just to be safe. Note: SNES and MAME are the only two cores that support directly from zip, so all others must be extracted. Use the “Unarchiver” and wait for a moment till the last line of the code displays “Finished with Result Code: 0.” Tap “Done” in the upper right corner and behold your first ROM in all its glory. You will see two files now, one the zip and another with another filetype, and possibly a readme file (Spoiler Alert: I don’t read them). Before you go and delete the zip file to save space, I recommend checking the file in RetroArch, just to make sure everything is working properly, if not, I have included some (very) basic troubleshooting in Step 4.
Step 3d. Rinse and Repeat for GBA and PSX – the steps for setting up GBA and PSX ROMs are identical to the SNES instructions except that you must extract the file from the .zip or .7z or .rar, each of these is more or less the same functionally, and Unarchiver can handle them. Full functionality for PSX ROMs requires one additional step, copying a BIOS file into RetroArch. Note: the BIOS file is copyright protected by Sony, and is thusly not bundled with RetroArch. The BIOS file you probably want is “scph1001.bin.” Google is your friend. Note: In iOS, SCPH1001.BIN is NOT the same as scph1001.bin, and while the file contents are identical, you may have to change the name to get RetroArch to recognize the file. Once downloaded, we will place the file in the proper place. If you haven’t already, enable “Hidden Files” in the iFile settings by tapping the Gear icon, then “File Manager” and enable “Hidden Files.” Return to UnlimDownloads’ Document Folder (Sidebar/Applications/UnlimDL/Documents) and cut the bin file. You may have to unzip this first as well, just make sure it’s .bin. Return to the main “Documents” folder (Sidebar/Documents) to see that there is a new folder entitled “.RetroArch”. Inside here lie your savegames (the .srm files) and other important information. Paste the bin file here, making sure that the spelling and capitalization are correct. Minor Troubleshooting: if RetroArch still does not recognize the bin file, long press the bin file and “Select” it, then tap the i in a circle icon and scroll down to “Access Permissions,” make sure that these are “Read, Write, Execute” for “User, Group, and World,” if they are not, tap each and add the other permissions.
Step 4 – Play the Games! – The one downside to RetroArch is the seemingly unfriendly GUI, but with a little finagling and patience, you’ll master the basics in no time. Let’s load up Chrono Trigger. Choose the “Load Content” option and you’ll suddenly appear inside of the Documents folder where we created our ROMs folder and stored all of our ROMs, convenient, huh? Tap your “ROMs” folder, then the “SNES” folder and tap the Chrono Trigger.smc or .sfc (these are the two most common file extensions for SNES games. You’ll be presented with a plethora of options, try each out, if you want, but I recommend the “SNES9x Next.” Now, I swear, as I was writing this and tried to open up Chrono Trigger.smc for the first time on my iPad, I got an error. “RetroArch Failed to load content,” I retried on every available core, but the same thing kept happening. This presents a nice time to learn some basic troubleshooting. Will it work on another core? No. Is the file corrupted somehow? Probably. So lets redownload and try again. When I did this, I got the same error again, so I changed websites to Emuparadise and downloaded the ROM from there. This time, the .zip file gave me an error in RetroArch, but the .sfc file loaded perfectly. The first ROM I downloaded was .smc so I tried a few other ROMs that were also .smc to check if that was the issue, but they all worked perfectly first try. Honestly, this is the first time I’ve run into this problem, but I was able to work around it. Can I accurately explain why those specific files didn’t work when the other did? Unfortunately not, but I promise if you try and think creatively you’ll most likely find a solution. Once you’ve loaded successfully, you can select “Load Content (History)”, to view and play recently loaded ROMs.
Step 4a. Configure RetroArch – Once the game is loaded, it’s time to pick an appropriate overlay of touchscreen buttons that will allow for full functionality. This is done by pressing on the top of the screen in the center, which will bring you to a menu that includes Save/Load States (extremely useful for emulation, you can save anywhere at anytime for any reason, and load right back in). Tap “Core” and you will be met with another set of options that can be mostly ignored. Look for “Input” then tap “Input Overlay.” These are the sets of buttons that have been made for Retroarch. When you first enter this, you may be in a menu with only a few options, but there are many more. Tap “Up” in the top left corner to see a whole mess of folders with different system names on them. Personally for SNES and PSX I use the “box-psx-diagonals.cfg” inside the “psx” folder. This will get you up and running to play everything. Check out some other ones, and find the one that is best for you, and if you can’t find one, check out http://www.libretro.com/ and their forums, they are always innovating new input maps and the like.
Step 4b. Controlling RetroArch – I will be describing the general setup and controls for “box-psx-diagonals.cfg” here. The placement of certain items may differ in other overlays, but the function remains. At the Top-middle of the screen is the RetroArch GUI menu, where we changed overlays and saw save states. This is also where we will exit games. Tapping “Close Content” will return you to the main menu, where you can change ROMs. The Atari-looking character underneath is the RGUI, the underlying GUI of Retroarch. This menu is useful, but likely not to you, to exit this menu either repress the Atari-looking button, or press down on your D-Pad to the “Resume Content” and press the Circle button. To the right of the Atari is a Gear which pulls up the Quick Menu, where you can quickly Load/Save State without pausing the game, there are other features here that you may want to check out too, such as the “Fast FWD” which is useful for turn based actions. To exit this menu press the arrow in the bottom middle of the screen. This will hide the overlay completely, which is good for when you play with an external controller, but not so much for now, as external controllers are currently not working. Tap the Bottom Middle again to return to the default overlay setting. Left of the Atari is a rotation icon, which is useful for changing the orientation of your device. Try it out in portrait and landscape once or twice, you’ll see what I mean.
Side Step 1. Playing ROMs off an SD card – Space is one of the highest valued commodities on the iPad, I myself only sprang for the 16Gb model, which means I’m always looking to save space. One of the best ways to save space is to load your ROMs onto an SD card and use either the Apple 30 pin (or lightning) to SD (cost $30) or a third party Camera Connection Kit (cost circa $8), I have both, my third party works great, some people report problems, but I’ve never encountered anything wrong. To my knowledge, iOS supports SD cards of up to 32Gb of space, but I have yet only tested my 16Gb card. The trick to using SD cards on iOS is simple, we’re going to create links to folders without coping over their contents, so we can access these folders as it they resided inside the iOS device. To do this, load your ROMs onto your SD card in a similar fashion as described above from your computer, then connect the dongle, or if you want a completely iOS experience, download the ROM onto your iDevice and cut it over to the Flash Drive. You’ll notice in iFile the addition of a “Flash Drive” to the Sidebar menu, tap this and browse your SD. You’ll notice that the path to this specific folder is /var/mount/mount1, which is the folder we want, so go up one level of the heirarchy by pressing the “mnt” icon in the top left. That folder “mount 1” is the root of our SD card, so lets put that somewhere useful, long press the “mount 1”, “Select,” then tap the Copy icon in the bottom right and press “Copy/Link.” Navigate back to the Documents Folder that we house our ROMs folder and lets create a link. Tap the Copy icon once more and select “Create Link.” You will see that a folder is created called “mount 1” and that it serves as a sort of bookmark for your SD card. From here, Load up RetroArch, navigate to the Documents folder, select “mount 1” and follow the usual steps to play your games.
Side Step 2. Cheats – While a fun, and in my opinion integral part of JRPG grind minimizing, RetroArch to my knowledge does not actively support cheats, and my attempts to use other iOS cheating engines such as iGameGuardian and GamePlayer (when I was testing them in iOS 6, neither to my knowledge work on iOS 7) were unsuccessful. Other emulators may support cheat functions, and it may be possible to import their saves into RetroArch, but that is beyond the scope of this tutorial.
Side Step 3. Joypads – at the time of writing, BTstack and Blutrol (if you aren’t using a PS3 controller) are not iOS 7 compatible, so stick to turn-based, easily controlled games for now. Or don’t. It’s your life. I will update this when the required services are made available.
We hope this post helped you out and if you have any unanswered questions, feel free to comment below!