This guide is meant to help you get set up with various RetroArch iterations. The video will primarily be done on Windows PC, but the same method will apply to MacOS, Linux, Android, iOS, Vita, and Xbox platforms, and more.
RetroArch really shines on retro systems, particularly PlayStation 1 and below games. For more modern consoles, it is often more efficient to rely on standalone emulators, which are generally more optimized than RetroArch. However, if you are using a system that relies primarily on RetroArch for emulation (like Xbox), or you have a beefy PC that can run well regardless of optimizations, you may find success in emulating higher-end systems in RetroArch, too.
Additionally, inside your GAMES folder, make a BIOS folder and put the BIOS files inside. BIOS files are necessary system files for certain consoles to run properly. Examples of systems that will not run without BIOS include PlayStation 1, Game Boy Advance, and Sega CD. Here is more information about BIOS files, including links to specific BIOS requirements for each core.
To install RetroArch, head over to their Downloads page and find the platform you want to use to run RetroArch. You can then download the version of your choice and install it. Note that there may be 64-bit and 32-bit versions available. In most cases, you want to install the 64-bit version if your device can handle it.
OVERRIDES. If you want to make a specific configuration that applies only to a certain emulator, emulated console, or game, you will want to use overrides. These are basically configuration (.cfg) files that are specific to a game or console. For example, if there is a certain game where you want to use a special hotkey or video scaling option, you would open up that game, make the adjustment in the settings, and then save it as a per-game override. Every other game will function normally, but the next time you boot that specific game, those per-game settings will load.
There are three types of overrides, which follow a specific hierarchy: core overrides, content directory overrides, and game overrides. In order to save an override, you need to launch a game first, and then access the RetroArch Quick Menu (which we will set up in the hotkeys section below), and then go to Quick Menu > Overrides to save the override.
CORE OVERRIDES will save your configuration for that entire core. This is good when you have a core that emulates multiple systems and you want to have the same experience across each of those systems. An example of this would be the Gambatte core, which emulates Game Boy and Game Boy Color. If you make a CORE OVERRIDE for Gambatte, all Game Boy and Game Boy Color games will be affected when launching those games with the Gambatte core.
REMAP FILES. If you want to save game-specific controls, then this is done via a REMAP (.rmp) file. To do so, you will need to enter the RetroArch Quick Menu > Controls section, make your changes (likely in the Port 1 Controls subsection), then save a Core / Content Directory / Game Remap file. These three types of remap files follow the same pattern as the overrides above.
INDEPENDENT SAVES. Confusingly, there are a couple other options and configurations that work outside of the process above. This is because they are governed by their own configuration files, and not the typical retroarch.cfg or override cfg/rmp files mentioned above.
You could offload even more of your directories to custom folders as well, so that they were located somewhere independent of the default RetroArch folders. This is beneficial if you want to update RetroArch in the future while preserving your current setup. See the Updating RetroArch section below for more information.
Additionally you will want to go into Online Updater > Core Downloader and download the cores you want to run on your system. You can download as many or few as you would like. I would recommend fully downloading one core before starting the download for the next core, because it can mess up your downloads to queue them all up at once. Periodically, you can also go in and select Update Installed Cores to see if there have been any updates to the cores since you first downloaded them.
To change the User Interface, go to Settings > User Interface > Menu and adjust it to one of the other menus. Then go to Configuration File > Save Current Configuration to save your changes. After you exit and re-open RetroArch, you will have the new menu.
You can also adjust the menu appearance to fit your preferences. To do so, go to Settings > User Interface > Appearance and adjust the settings here. You can adjust the Menu Scale Factor to increase or decrease the menu font, adjust the menu icons, or change the background color, and more.
Once you have mapped your controls, be sure to go to RetroArch Main Menu > Configuration File > Save Current Configuration. Note that you can make core or game specific button mapping by using overrides, if you want to have a special setup for a particular game or core. Additionally, in the Input setting there is an option to create and save Controller Profiles, which you could use for multiple controllers (for example, if you wanted to use a specific controller for SNES gameplay, you could map the controls to that one controller and then choose that profile for SNES gameplay).
Confirm Quit: with this ON, you will have to press the Quit RetroArch hotkey twice to actually exit. This can be good to avoid accidental button presses, but can get annoying over time. I leave this one OFF.
Menu Toggle Controller Combo: this option will pause your game and bring up the RetroArch Quick Menu. This can be a specific key combination that works independently of any other hotkey setup. For this one I choose Hold Start (2 Seconds). This means if I hold the START button for two seconds, the RetroArch Quick Menu will appear.
Hotkey Enable: this will be your primary hotkey button. Every hotkey you choose in the options below it will need to be used in combination with your hotkey enable button. For this I usually choose the SELECT button. This means that SELECT + whatever other hotkey I choose will be my button combo to activate a hotkey shortcut.
* For the Rewind function to work, you will need to go into Settings > Frame Throttle > Rewind > ON. This is not something I would recommend turning on as a global configuration, because some systems (like Saturn or PS1) will be very slow with it on, and some (like PSP) may outright crash. Instead, I recommend setting the hotkey now, then for the systems you want to use rewind (like NES, for example), you can go into the Quick Menu by pressing SELECT + X and then go turn Rewind on and save it as a core override. More information is in the section below.
An option I like to set with my games is AUTO SAVE / AUTO LOAD. This will create a save state when you close down a game, and then load that save state when you launch the game again. It provides a pick-up-and-play feel to your retro gaming. To set this, use the following two commands:
Finally, on many versions of RetroArch (specifically those with touchscreen capability, like Android), they may have a TOUCHSCREEN BUTTON OVERLAY on your screen when starting up a game. If you have a controller you likely do not want to see this overlay. To turn it off, go to Settings > On-Screen Display > On-Screen Overlay > Display Overlay > Hide Overlay When Controller is Connected > ON.
You can set up playlists within RetroArch to browse and launch your games directly in the program. This will be helpful if you just want to remain within RetroArch to launch your games. There are two methods for creating playlists in RetroArch:
Finally, you can go into Settings > Playlists and adjust how your playlists behave. There is also a Manage Playlists section within here that will allow you to adjust things like the default core, how the thumbnails appear, or just delete the playlist altogether.
Most classic home consoles had an aspect ratio of 4:3 to match CRT TVs. Handheld systems had varying aspect ratios, due to having a variety of screens. Arcade system aspect ratios are also all over the place, because each cabinet was different. Some other notes:
After you have made your adjustment, go to Main Menu > Configuration File > Save Current Configuration. You could also use the Overrides function to make core-specific or game-specific configurations.
To turn on integer scaling, go to Settings > Video > Scaling > Integer Scaling and make your adjustment. Like with everything else, you will need to save your configuration file, and you could also use overrides to make per-core or per-game settings, too.
You can add Shaders to your game image to recreate classic looks (like scanlines to mimic CRT displays) or LCD grids, and more. They are stackable and adjustable, giving you a lot of freedom in their implementation. For more information on shaders, check out this page from RetroArch. Shaders can become very complex, so we will stick with just the basics here.
To find shaders, start a game then enter the Quick Menu > Shaders > Video Shaders > ON, then navigate to the Load menu. You will likely have the choice of glsl or slang shaders; slang shaders are newer but may not be compatible with your device. You can experiment with the two to find which set you prefer. Within each shader folder will be subfolders that contain shader collections. Some of the best places to start looking are the handheld folder (for handheld systems) or the interpolation folder. Once you have found shaders you like, you can save them as global, core-based, or game-based presets within the Shaders folder.
Note that the way you save shaders versus filters is different. Shaders are saved by their own presets within the Shaders setting menu, while Filters are saved via overrides or the global configuration file (Save Current Configuration).
64591212e2