The Complete RetroArch Setup Guide For Android & Windows PC

The Complete RetroArch Setup Guide For Android & Windows PC

RetroArch can turn an Android handheld, phone, tablet or Windows PC into one organised system for playing games from dozens of classic consoles and computers. However, RetroArch is not a single emulator and it does not arrive ready to play every system automatically.

RetroArch is a frontend that loads separate emulator modules called cores. Each core has its own supported file formats, firmware requirements, controller options, graphics settings and compatibility limitations. A reliable setup therefore depends on more than installing RetroArch and pointing it towards a folder full of games.

This guide covers:

  • Installing the official RetroArch build on Android.
  • Installing RetroArch on a Windows 10 or Windows 11 PC.
  • Creating an organised ROM, BIOS, save and backup structure.
  • Installing suitable emulator cores.
  • Configuring controllers, hotkeys, video, audio and touchscreen overlays.
  • Adding games to RetroArch playlists.
  • Using core, folder and game-specific overrides.
  • Setting up shaders without affecting every system.
  • Managing normal saves and save states.
  • Moving or synchronising saves between Android and PC.
  • Backing up and recovering a RetroArch installation.

RetroArch does not include commercial games or console BIOS files. Use game backups and firmware dumped from hardware and software you own.

In This Article

What RetroArch Actually Is

RetroArch is a frontend for software built around the Libretro interface. The individual programs loaded inside RetroArch are called cores.

For example:

  • RetroArch is the main application and menu system.
  • Gambatte is a core for Game Boy and Game Boy Color.
  • mGBA is a core for Game Boy Advance.
  • Snes9x is a core for Super Nintendo.
  • Genesis Plus GX is a core for several Sega systems.
  • FinalBurn Neo is a core for supported arcade and Neo Geo games.

RetroArch handles shared features such as controller input, hotkeys, playlists, shaders, screenshots, save directories and frontend menus. The core performs the actual emulation.

One system can have several different cores. A more accurate core may require more processing power, while a lighter core may perform better on a slower Android device. Installing every available core makes the setup harder to manage. Start with one core per system and add alternatives only when a particular game requires one.

Back To Menu

The Correct Setup Order

Complete the setup in this order:

  1. Create the ROM, BIOS, save, state and backup folders.
  2. Install the official RetroArch build.
  3. Run the Online Updater.
  4. Configure the System/BIOS, Save Files, Save States and File Browser directories.
  5. Install one core for each required system.
  6. Add and verify any required BIOS files.
  7. Configure and test the controller.
  8. Create safe hotkey combinations.
  9. Launch one game manually.
  10. Create playlists one system at a time.
  11. Test a normal in-game save.
  12. Configure core options, remaps, overrides and shaders only after basic emulation works.
  13. Back up the working setup.

Do not begin by scanning a complete multi-system library. Test one or two games for each core first. This makes it much easier to identify whether a problem is caused by the core, BIOS, game format, controller, directory or playlist.

Back To Menu

Create The Folder Structure

Create the following structure before configuring RetroArch:

RetroArch
├── BIOS
├── ROMs
│   ├── Arcade
│   ├── Atari 2600
│   ├── Dreamcast
│   ├── Game Boy
│   ├── Game Boy Advance
│   ├── Game Boy Color
│   ├── Game Gear
│   ├── Mega Drive
│   ├── Neo Geo
│   ├── NES
│   ├── Nintendo 64
│   ├── PC Engine
│   ├── PC Engine CD
│   ├── PlayStation
│   ├── Sega CD
│   └── SNES
├── Saves
├── States
├── Screenshots
├── Controller Profiles
└── Backups

Android Folder Location

On Android, open the Files application and create the main RetroArch folder in shared internal storage:

Internal Storage/RetroArch

A removable microSD card can also be used:

microSD Card/RetroArch

Using shared storage makes ROMs, BIOS files, saves and backups easier to access from a computer.

Windows Folder Location

On Windows, create the folder somewhere that does not require administrator permission. Suitable examples include:

C:\Users\YourName\Games\RetroArch

or:

D:\RetroArch

Avoid placing a portable RetroArch installation inside:

C:\Program Files

Windows can restrict writing to protected folders, preventing RetroArch from updating cores, saving configurations or creating playlists correctly.

Undoing A Folder Change

Renaming or moving a folder after RetroArch has been configured breaks its stored path. Before moving anything, record the existing directory shown under RetroArch’s Directory settings.

After moving a folder, return to the relevant Directory option and select its new location. Do not delete the original folder until the new path has been tested with a game and a normal save.

Back To Menu

Install RetroArch On Android

Open a web browser on the Android device and visit the official RetroArch download page.

Select the current Stable Android build. On a modern 64-bit Android handheld, phone or tablet, choose the AArch64 or 64-bit APK. The universal build can be used when the device architecture is uncertain.

Do not use the old Google Play versions for a new setup. The official Libretro documentation states that these builds have not been updated for years because of Play Store policy changes.

Once the APK has downloaded, open the Android Files application, select Downloads and press the RetroArch APK.

If Android reports that the Files application or browser is not allowed to install unknown applications, press Settings on the warning screen and enable Allow From This Source. Press Back to return to the installer and select Install.

If Google Play Protect displays a warning, verify that the APK came directly from the official RetroArch website and select Install Anyway where that option is available.

When installation finishes, select Open.

RetroArch should display its main menu. The default interface is normally the Ozone menu, with a vertical list of sections and icons.

Remove The Temporary Installation Permission

After RetroArch has installed, open:

Android Settings > Apps > Special App Access > Install Unknown Apps

Select the browser or Files application used to open the APK and disable Allow From This Source.

On Android versions where that exact path is not shown, use the Settings search box and search for:

install unknown apps

Uninstall RetroArch

Back up saves, states, BIOS files and controller profiles before uninstalling.

Open:

Android Settings > Apps > See All Apps > RetroArch

Select Uninstall and confirm the warning.

Files stored in the shared RetroArch folder should remain, but application-owned files and private configuration data can be removed during an uninstall.

Back To Menu

Install RetroArch On Windows PC

Download the current Stable 64-bit Windows release from the official RetroArch download page.

Windows users can choose between the installer and the portable 7z archive.

Portable Installation

The portable archive is the easiest version to move and back up.

Download the 64-bit RetroArch.7z package, then right-click the downloaded archive and extract it using Windows, 7-Zip or another archive utility.

Extract it to a writable location such as:

C:\Users\YourName\Games\RetroArch

or:

D:\RetroArch

Open the extracted folder and double-click:

retroarch.exe

The main RetroArch menu should appear.

To remove a portable installation, back up the folder and then delete it. Because the configuration, cores and playlists are normally stored inside the portable directory, deleting the folder removes the complete installation.

Installer Version

Alternatively, download the Windows setup package and run it.

Follow the installation wizard, keep the default installation options unless there is a reason to change them and allow the installer to finish.

Open RetroArch from the Start menu. The main menu should appear.

The installer can later be removed through:

Windows Settings > Apps > Installed Apps > RetroArch

Back up the RetroArch directories before uninstalling.

Create A Desktop Shortcut For A Portable Installation

Right-click retroarch.exe, select Show More Options where required, then select:

Send To > Desktop (Create Shortcut)

Double-click the new shortcut and confirm that RetroArch opens.

Deleting the shortcut later does not delete RetroArch itself.

Back To Menu

Complete The First Launch

Do not change the video driver, audio driver or menu driver immediately.

First confirm that the default interface works, the controls can navigate the menu and RetroArch can connect to its update servers.

On Windows, the keyboard can be used to navigate:

  • Arrow keys: move through the menu.
  • Enter: select.
  • Backspace: return to the previous menu.
  • Escape: quit RetroArch.

On Android, use the touchscreen or the device’s physical controller.

Before changing anything else, open:

Main Menu > Configuration File > Save Current Configuration

A message should briefly appear confirming the location of retroarch.cfg.

On Android, return to the Main Menu and select Quit RetroArch. Reopen the application and confirm that the menu loads normally.

Using RetroArch’s own Quit command is particularly important on Android because force-closing the application can prevent recent configuration changes from being written.

Back To Menu

Update RetroArch Support Files

Connect the Android device or PC to the internet and open:

Main Menu > Online Updater

Select the following items one at a time, waiting for each one to finish before starting the next:

  • Update Core Info Files.
  • Update Assets.
  • Update Controller Profiles.
  • Update Databases.
  • Update Overlays.
  • Update Cheats.
  • Update Shaders for the shader format shown by the current build.

A completion notification should appear after each download.

Updating Core Info Files allows RetroArch to display current information about installed cores. Updating Databases improves automatic content scanning. Updating Controller Profiles refreshes the controller autoconfiguration files.

If Core Downloader Is Missing

Open:

Settings > User Interface > Menu Item Visibility

Enable Show Core Downloader.

Return to the Online Updater. Core Downloader should now be visible.

To hide it again, return to Menu Item Visibility and disable the same option.

If The Updater Fails

Confirm that another application can access the internet.

On Android, check that the device’s date and time are correct. On Windows, confirm that security software has not blocked retroarch.exe.

Restart RetroArch and try one update at a time.

If only core downloads fail, check:

Settings > Directory > Cores

The selected Cores directory must be writable. Restore the original Cores directory if the problem began after changing it.

Back To Menu

Configure Directories On Android

Open:

Settings > Directory

Set The BIOS Directory

Select System/BIOS.

Browse to:

Internal Storage/RetroArch/BIOS

or the equivalent RetroArch/BIOS folder on the microSD card.

Open the folder and select Use This Directory where shown.

Return to the Directory menu. The System/BIOS entry should display the selected path.

Set The Save Files Directory

Select Save Files and choose:

Internal Storage/RetroArch/Saves

The Save Files entry should now display the new directory.

Set The Save States Directory

Select Save States and choose:

Internal Storage/RetroArch/States

The Save States entry should display the new directory.

Set The Screenshot Directory

Select Screenshots and choose:

Internal Storage/RetroArch/Screenshots

Set The File Browser Start Directory

Select File Browser and choose:

Internal Storage/RetroArch/ROMs

The next time Load Content is opened, RetroArch should begin inside the ROM folder or provide it as the starting location.

Save The New Paths

Open:

Main Menu > Configuration File > Save Current Configuration

Then select:

Main Menu > Quit RetroArch

Reopen RetroArch and return to Settings > Directory. The selected paths should still be present.

Undo Or Recover

Changing a directory does not move files already stored in the previous location.

To restore an old path, return to Settings > Directory and select the original folder again.

Copy existing saves into the replacement folder before launching games. Keep the old save folder until a normal in-game save has loaded successfully from the new location.

Back To Menu

Configure Directories On Windows

A portable Windows installation can keep most files inside the main RetroArch folder. Alternatively, separate data folders can be used on another drive.

Open:

Settings > Directory

Set the following paths:

RetroArch Directory Example Windows Location
System/BIOS D:\RetroArch\BIOS
File Browser D:\RetroArch\ROMs
Save Files D:\RetroArch\Saves
Save States D:\RetroArch\States
Screenshots D:\RetroArch\Screenshots

Select each entry, browse to the required folder and choose Use This Directory.

Save the configuration through:

Main Menu > Configuration File > Save Current Configuration

Close and reopen RetroArch. Return to Settings > Directory and confirm that the selected paths remain.

If a path returns to its old value, confirm that the RetroArch folder is not read-only and is not inside a protected Windows directory.

To reverse a change, select the original directory again. Move existing saves before launching a game from the restored path.

Back To Menu

Install Emulator Cores

Open:

Main Menu > Online Updater > Core Downloader

Scroll to the required core and select it once.

A download notification should appear. When it finishes, return to:

Main Menu > Load Core

The installed core should appear in the list.

Install only one starting core for each system. Alternative cores can be added later without removing the original.

Remove A Core

Open:

Settings > Core > Manage Cores

Select the unwanted core and choose Delete Core.

Confirm that the core disappears from Load Core.

Deleting a core does not normally delete ROMs or normal saves, but save-state compatibility depends on the exact core. Keep normal in-game saves before removing or replacing a core.

Back To Menu

Recommended Starting Cores

System Recommended Starting Core Android Note Windows PC Note
Atari 2600 Stella 2014 Suitable for a broad range of Android hardware. Stella is also available for more powerful systems, but Stella 2014 is a simple starting point.
Game Boy & Game Boy Color Gambatte Accurate and suitable for modern 64-bit Android devices. Accurate and lightweight on a modern PC.
Game Boy Advance mGBA Use gpSP only when mGBA is too demanding on an older device. mGBA is the preferred general starting point.
NES Mesen Use Nestopia UE on slower Android hardware if required. Mesen is accurate and performs well on a modern PC.
SNES Snes9x Current Use Snes9x 2010 only on hardware that cannot run the current core properly. Snes9x Current is the straightforward starting choice.
Master System, Game Gear & Mega Drive Genesis Plus GX Handles several Sega systems through one core. Also supports Sega CD when the required regional BIOS is present.
Sega 32X PicoDrive Generally lighter than more demanding alternatives. Can also be used for Mega Drive and Sega CD where required.
PC Engine & PC Engine CD Beetle PCE Fast Suitable for Android and supports CD games with the correct system card BIOS. Suitable for Windows PC.
Arcade & Neo Geo FinalBurn Neo The ROM archive and BIOS archive must match the installed FinalBurn Neo set. Do not mix files from unrelated MAME or FinalBurn sets.
Nintendo 64 Mupen64Plus-Next Use the GLES3 version on a GLES3-compatible Android device. Start with the standard Mupen64Plus-Next core.
PlayStation PCSX ReARMed on Android Optimised for ARM processors and suitable for handhelds and phones. Use Beetle PSX or Beetle PSX HW on a capable PC.
Dreamcast Flycast More demanding than older systems; configure one game at a time. Supports Dreamcast, NAOMI and related hardware with the correct files.
Nintendo DS melonDS DS The newer melonDS DS core should be preferred over the older melonDS core. Suitable for a modern PC and supports DSi configuration when the required files are supplied.
DOS DOSBox Pure Provides a controller-friendly start menu and can load supported ZIP files directly. Also supports keyboard, mouse and disc-image workflows.

GameCube, Wii, PlayStation 2, PSP and Nintendo 3DS are available through some Libretro cores, but standalone emulators are often easier to configure and update for these demanding systems. Complete the older systems first before adding high-end cores.

Back To Menu

Configure BIOS & Firmware Files

BIOS files normally belong in the folder selected under:

Settings > Directory > System/BIOS

Three things must be correct:

  1. The BIOS must contain the correct firmware data.
  2. The filename and extension must match what the core expects.
  3. The file must be inside the correct system directory or required subfolder.

Renaming an incorrect file does not convert it into a valid BIOS.

Check What A Core Requires

Open:

Main Menu > Load Core

Select the core being configured, then open:

Main Menu > Information > Core Information

Scroll to the Firmware section.

Required or optional files should be displayed with their expected filenames. Correctly detected firmware is marked Present. Missing firmware is marked Missing.

If a file remains missing:

  1. Check the System/BIOS path.
  2. Check the exact filename and extension.
  3. Check whether the core requires a subfolder.
  4. Verify the file’s hash against the core’s official documentation.
  5. Fully close and reopen RetroArch.

Common Examples

System Example File Requirement
Game Boy Advance gba_bios.bin Optional for mGBA, but useful for original boot behaviour and specific compatibility cases.
Sega CD Europe bios_CD_E.bin Required for European Sega CD or Mega CD games in Genesis Plus GX.
Sega CD USA bios_CD_U.bin Required for North American Sega CD games.
Sega CD Japan bios_CD_J.bin Required for Japanese Mega CD games.
PC Engine CD syscard3.pce Recommended system card BIOS for Super CD-ROM² games.
Neo Geo neogeo.zip Must remain zipped and match the FinalBurn Neo ROM set.
PlayStation Core-specific PlayStation BIOS filename Check Core Information because supported filenames differ between PlayStation cores.

Undo Or Recover

Keep a copy of the previous working BIOS before replacing it.

If a new file causes games to stop loading, remove it, restore the previous BIOS and restart RetroArch.

Do not overwrite a verified BIOS with an unverified file simply because both use the same filename.

Back To Menu

Configure Android Controls

Connect the Bluetooth or USB controller before opening RetroArch, or use the controls built into the Android handheld.

When RetroArch detects a supported controller, a notification should briefly appear stating that the device has been configured.

Open:

Settings > Input > RetroPad Binds > Port 1 Controls

Check the Device Index. It should display the built-in controller or connected gamepad.

Move through the listed RetroPad controls and confirm that each physical input is assigned correctly.

If the controller is not mapped correctly, select Set All Controls and press each requested button in order.

When the sequence finishes, test the D-pad, face buttons, shoulder buttons, triggers, analogue sticks, Start and Select.

Save A Custom Android Controller Profile

Android’s default controller-profile directory may be inside RetroArch’s private application storage. To make a custom profile accessible, create:

Internal Storage/RetroArch/Controller Profiles/android

Open:

Settings > Directory > Controller Profiles

Select:

Internal Storage/RetroArch/Controller Profiles

Return to:

Settings > Input > RetroPad Binds > Port 1 Controls

Select Save Controller Profile.

A confirmation notification should appear. Close RetroArch through Main Menu > Quit RetroArch, reopen it and confirm that the controller is detected with the saved mapping.

Undo Or Recover

To reset one binding, highlight it and press the control shown at the bottom of the menu for Reset To Default. This is normally the Start button on a controller.

To remove a binding completely, use the control shown for Remove Binding. This is normally the left face button corresponding to RetroPad Y.

If the complete mapping becomes unusable, connect a second working controller or use the touchscreen to return to Port 1 Controls and select Set All Controls again.

Back To Menu

Configure Windows Controllers

Connect the controller before opening RetroArch.

XInput controllers, including most modern Xbox-style controllers, should normally work automatically. A notification should appear when the controller is detected.

Open:

Settings > Input > RetroPad Binds > Port 1 Controls

Confirm that Device Index shows the correct controller.

If the automatic mapping is incorrect, select Set All Controls and press each requested control.

After mapping, select Save Controller Profile.

Close and reopen RetroArch. The controller should be recognised automatically.

If Windows Detects The Controller But RetroArch Does Not

Press the Windows key, type:

Set up USB game controllers

Open the matching Control Panel result.

Select the controller and press Properties. Press each button and move both analogue sticks.

If Windows does not register the inputs, reconnect the controller, change the USB port or repair the Bluetooth pairing before changing RetroArch.

If Windows registers the controller correctly, reopen RetroArch and reselect it under Device Index.

Keyboard Controls

RetroArch can map keyboard keys to the virtual RetroPad through:

Settings > Input > RetroPad Binds > Port 1 Controls

Select a control and press the keyboard key that should represent it.

For computer and arcade cores that need direct keyboard input, use Game Focus mode. The default Game Focus hotkey is normally Scroll Lock.

When Game Focus is enabled, RetroArch’s normal keyboard-to-RetroPad bindings and most hotkeys are temporarily disabled so the core can receive the keys directly.

Press Scroll Lock again to leave Game Focus mode.

Back To Menu

Configure Local Multiplayer

Connect every controller before opening RetroArch.

Open:

Settings > Input > RetroPad Binds

Select Port 1 Controls and set Device Index to the first controller.

Return to RetroPad Binds, open Port 2 Controls and set Device Index to the second controller.

Repeat for additional players supported by the core and game.

Launch a multiplayer game and open its player-selection or controller-test screen. Each physical controller should operate only its assigned player.

If two controllers control Player 1, return to the Port settings and select different Device Index entries.

To restore automatic assignment, set each port back to its original Device Index or disconnect the extra controllers and restart RetroArch.

Back To Menu

Configure RetroArch Hotkeys

Open:

Settings > Input > Hotkeys

The Enable Hotkeys control acts as a modifier. When it is assigned, the other controller hotkeys only activate while that button is held.

Recommended Android Controller Hotkeys

  • Enable Hotkeys: Select.
  • Menu Toggle: X or L3.
  • Save State: R1.
  • Load State: L1.
  • Fast-Forward Toggle: R2.
  • Close Content: Start.

With this layout, Save State is activated by pressing Select + R1, not R1 by itself.

Launch a test game and press Select + X or Select + L3. The Quick Menu should appear.

Return to the game and press Select + R1. A save-state notification should appear. Press Select + L1 and confirm that the state reloads.

Default Windows Keyboard Hotkeys

  • F1: open or close the RetroArch menu.
  • F2: save state.
  • F4: load state.
  • Space: toggle fast-forward.
  • F8: take a screenshot.
  • Escape: quit RetroArch.

These can be changed under Settings > Input > Hotkeys.

Remove Or Reset A Hotkey

Highlight the hotkey.

On a Windows keyboard, press Delete to remove it or Space to restore its default.

On a controller, use the button shown by RetroArch for Remove Binding or Reset To Default.

Do not assign Quit RetroArch to a single frequently used controller button. Use Close Content for returning from a game and leave full application exit inside the Main Menu. This reduces the chance of losing an unsaved configuration change.

Back To Menu

Configure Video Settings

Leave the default video driver unchanged until a basic 2D game works.

Set The Aspect Ratio

Open:

Settings > Video > Scaling

Set Aspect Ratio to Core Provided.

Launch a game. A Game Boy game should appear close to its intended square display shape, while most home-console games should appear close to 4:3.

If the image is stretched, return to Scaling and confirm that a forced 16:9 ratio is not active.

Integer Scaling

Under Settings > Video > Scaling, enable Integer Scale for sharp, evenly sized pixels.

Launch a game. The image may become slightly smaller with black borders because RetroArch is using whole-number scaling.

If the borders are too large, disable Integer Scale. The game will return to filling more of the available screen.

Bilinear Filtering

Open:

Settings > Video

Disable Bilinear Filtering for a sharper pixel image, or enable it for a softer image.

The change should be visible immediately in a running game.

This setting can be saved globally or through an override for a specific core.

Changing The Video Driver

Open:

Settings > Drivers > Video

Common options include:

  • Vulkan: useful for supported hardware-rendered cores on Android and Windows.
  • D3D11: a reliable Windows option, particularly on some integrated graphics systems.
  • gl or glcore: useful for OpenGL cores and compatibility testing.

Select the driver, then use:

Main Menu > Restart RetroArch

After restarting, return to Settings > Drivers and confirm that the selected driver remains active.

If a core displays a black screen, restore the previous video driver and restart RetroArch.

Recover A Windows Installation From A Broken Video Driver

Fully close RetroArch.

Open the RetroArch folder and rename:

retroarch.cfg

to:

retroarch-broken.cfg

Reopen RetroArch. A new default configuration should be created.

If the menu works again, the problem was inside the old configuration. Reapply the required settings manually rather than immediately copying the broken file back.

To undo the reset, close RetroArch, delete the newly created retroarch.cfg and rename retroarch-broken.cfg back to retroarch.cfg.

Back To Menu

Configure Audio Settings

Leave the default audio driver, output rate and latency unchanged during initial setup.

Launch a game and listen for:

  • Repeating crackling.
  • Audio slowing down with the game.
  • Long pauses or dropouts.
  • Sound continuing after the game has frozen.

Repeating crackle often indicates that the core cannot maintain full speed rather than a faulty speaker.

Adjust Audio Latency

Open:

Settings > Audio > Output > Audio Latency

Increase the value slightly if audio repeatedly breaks up while the game otherwise appears close to full speed.

Restart the game and test the same section.

Do not reduce audio latency aggressively. A buffer that is too small can create more stuttering rather than less.

If the change makes the audio worse, restore the previous value.

Check Game Speed Before Changing Audio

Open:

Settings > On-Screen Display > On-Screen Notifications > Notification Visibility

Enable Display Framerate or Display Statistics where available.

Return to the game and check whether the core is maintaining its expected speed.

If speed is consistently low, reduce demanding core options or use a lighter core before changing the audio configuration.

Back To Menu

Launch The First Game Manually

Before creating playlists, test one game directly.

Open:

Main Menu > Load Content

Browse to the appropriate system folder, select the game and choose the installed core when RetroArch asks which core to use.

The game should start.

Test:

  • D-pad or analogue movement.
  • Face buttons.
  • Start and Select.
  • Audio.
  • Aspect ratio.
  • Menu hotkey.
  • Normal in-game saving.

Open the Quick Menu with the configured hotkey and select Close Content.

RetroArch should return to its Main Menu without closing the application.

If RetroArch Chooses The Wrong Core

Open Load Content again, select the game and choose Set Core Association or select the correct core when prompted.

For a playlist entry, highlight the game, open its information or management options and reset its core association.

Changing the core does not change the game file. However, normal save formats and save states may differ between cores.

Back To Menu

Create RetroArch Playlists

Before scanning, open:

Main Menu > Online Updater

Select Update Databases and Update Core Info Files.

Then open:

Playlists > Import Content > Scan Directory

On builds where Import Content is displayed on the Main Menu, open it there instead.

Browse to one system folder, such as:

RetroArch/ROMs/Game Boy Advance

Select Scan This Directory.

A progress indicator should appear. When scanning finishes, return to the main interface.

A new system playlist should appear. Open it and confirm that the test games are listed.

Launch one entry from the playlist and confirm that it opens with the correct core.

Why Automatic Scan Can Miss Games

The normal scanner checks files against RetroArch’s game databases. Modified, translated, patched, renamed or unusually dumped files may not match the database even when the core can run them.

Use Manual Scan for files that work through Load Content but do not appear after a normal directory scan.

Back To Menu

Use Manual Scan For Missing Games

Open:

Playlists > Import Content > Manual Scan

Configure the following:

  • Content Directory: select the ROM folder for one system.
  • System Name: select the correct system playlist name.
  • Default Core: select the core that has already launched the test game successfully.
  • File Extensions: enter only the extensions that should be included.
  • Scan Recursively: enable this when games are stored inside subfolders.
  • Scan Inside Archives: leave disabled unless the chosen core supports content inside the archive format.

For a Game Boy Advance folder, the File Extensions field might contain:

gba

For a PlayStation CHD and M3U folder, use:

chd m3u cue

Do not include bin for a CUE/BIN PlayStation library or each track can appear as a separate game.

Select Start Scan.

The playlist should appear with every file matching the selected extensions.

Launch a test entry. It should use the selected Default Core.

Undo A Manual Scan

Open the playlist, use its Manage or Delete Playlist option and confirm the deletion.

Deleting the playlist does not delete the ROM files.

Alternatively, run Manual Scan again with corrected settings and enable the option to overwrite the existing playlist where available.

Back To Menu

Download Cover Artwork

Open:

Main Menu > Online Updater > Playlist Thumbnails Updater

Select the playlist that needs artwork.

RetroArch should download available box art, title screens and screenshots.

Return to the playlist and highlight several games. Matching images should appear in the interface.

The Playlist Thumbnails Updater can overwrite custom thumbnails when an official image exists for the same entry. Back up custom artwork before running a full playlist thumbnail update.

Enable On-Demand Thumbnails

Open:

Settings > Network > On-Demand Thumbnail Downloads

Enable the option where available.

Browse a playlist while connected to the internet. RetroArch should attempt to download artwork as entries are highlighted.

Disable the option from the same menu to stop automatic downloads.

Fix Missing Artwork

Artwork matching normally depends on the visible playlist title.

Rename the playlist entry to match the title used by the Libretro thumbnail repository, then run the Playlist Thumbnails Updater again.

For manually scanned playlists, clean filenames improve matching. Remove unnecessary website names, release tags and duplicate numbering.

Back To Menu

Configure Core Options

Launch a game using the core being configured.

Open:

Quick Menu > Core Options

Depending on the core, this menu can include:

  • Emulated hardware model.
  • Region.
  • Internal resolution.
  • Colour correction.
  • CPU emulation mode.
  • Audio emulation.
  • Crop or overscan settings.
  • Controller type.

Change one setting at a time and return to the game.

If the option states that a restart is required, select Close Content and reopen the game.

Save A Game-Specific Core Options File

After changing a core option for one game, open:

Quick Menu > Core Options > Manage Core Options

Select Save Game Options or the game-options command shown by the core.

Close and reopen the game. The special setting should apply only to that title.

To remove it, return to Manage Core Options and delete the game-options file or reset the game to the core’s global options.

Back To Menu

Create Core & Game Control Remaps

A remap changes how a core receives the RetroPad controls without changing how the controller navigates the main RetroArch menu.

Launch a game and open:

Quick Menu > Controls

Change the required buttons.

Then open:

Quick Menu > Controls > Manage Remap Files

Select:

  • Save Core Remap File to apply the mapping to every game using that core.
  • Save Content Directory Remap File to apply it to games in the current folder.
  • Save Game Remap File to apply it only to the current game.

Close and reopen the game. The remap should load automatically.

To undo it, return to Manage Remap Files and delete the relevant remap file.

Use remaps for game controls, not the global Port 1 mapping. Changing Port 1 Controls affects the RetroArch menu and every core, while a remap affects only the selected core, folder or game.

Back To Menu

Create Core, Folder & Game Overrides

Overrides store frontend settings such as aspect ratio, integer scaling, overlays and video filters for a specific core, folder or game.

Launch a game and change the required RetroArch setting.

Open:

Quick Menu > Overrides

Select:

  • Save Core Overrides for every game using the current core.
  • Save Content Directory Overrides for games inside the current ROM folder.
  • Save Game Overrides for the current game only.

Close and reopen the game. The override should load automatically.

Override Priority

RetroArch applies the most specific matching configuration:

  1. Game override.
  2. Content-directory override.
  3. Core override.
  4. Global configuration.

A game override therefore takes priority over a core override.

Remove An Override

Open Quick Menu > Overrides and select the command to remove the active game, directory or core override.

If the removal command is not shown, restore the correct global setting and save a replacement override at the same level.

Back To Menu

Configure Android Touchscreen Overlays

Touchscreen controls are useful on an Android phone or tablet but are usually unnecessary on a handheld with physical controls.

Open:

Settings > On-Screen Display > On-Screen Overlay

Use Display Overlay to enable or disable the touchscreen controls.

Launch a game. When Display Overlay is disabled, the virtual controls should disappear.

Choose A Different Overlay

Open the same On-Screen Overlay menu and select Overlay Preset.

Browse to the required overlay file and select it.

Return to the game. The new control layout should appear.

If it does not fit correctly, enable Auto-Scale Overlay.

Use Different Overlays For Different Systems

Launch a game, select the required overlay and then open:

Quick Menu > Overrides > Save Core Overrides

The overlay should now load whenever that core is used.

To remove it, delete the core override or disable Display Overlay and save a replacement core override.

Back To Menu

Configure Shaders

Shaders can reproduce CRT scanlines, LCD grids, colour blending, smoothing and other display effects.

First update the available shader files through:

Main Menu > Online Updater > Update Shaders

The exact label can include Slang, GLSL or another shader format depending on the active video driver.

Launch a game and open:

Quick Menu > Shaders

Enable Video Shaders, then select Load Shader Preset.

Choose a lightweight preset first.

Return to the game. The visual effect should appear immediately.

Save The Shader

Return to:

Quick Menu > Shaders > Save

Select:

  • Save Core Preset for every game using the core.
  • Save Content Directory Preset for the current ROM folder.
  • Save Game Preset for the current game.

Close and reopen the game. The shader should load automatically.

Remove A Shader

Open Quick Menu > Shaders and disable Video Shaders.

Return to the Save menu and remove the active automatic preset where the command is available.

If the game becomes too slow, disable the shader and test again. Multi-pass CRT presets can be demanding on lower-powered Android hardware.

Back To Menu

Configure Normal Saves & Save States

Normal Saves

Normal saves are created through the game’s own save system and are stored in the directory selected under:

Settings > Directory > Save Files

After configuring a core:

  1. Launch a game.
  2. Create a normal save through the game’s own menu.
  3. Open the RetroArch menu.
  4. Select Close Content.
  5. Quit RetroArch normally.
  6. Reopen RetroArch and launch the same game with the same core.
  7. Load the save through the game’s menu.

Do not rely on save states until the normal save works.

Save States

Save states record the complete running condition of a core.

They are stored in the directory selected under:

Settings > Directory > Save States

Save states can become incompatible after:

  • A core update.
  • Changing to another core.
  • A major core-options change.
  • Moving between different RetroArch architectures or platforms.

Use normal saves as the main progress record.

Organise Saves Into Core Folders

Open:

Settings > Saving

Review:

  • Sort Saves Into Folders By Core Name.
  • Sort Save States Into Folders By Core Name.
  • Sort Saves Into Folders By Content Directory.
  • Sort Save States Into Folders By Content Directory.

Choose one organisation method and keep it consistent.

Changing these options does not move existing saves. Copy the old files into the new folder structure before launching games.

Android and PC must use the same saving-folder options when their saves are being synchronised. Otherwise each device can write the same game’s save into a different subfolder.

Back To Menu

Synchronise Saves Between Android & PC

The safest basic method is to copy the Save Files folder manually between devices.

For a save to load reliably on both devices:

  • Use the same core on Android and PC.
  • Use the same game filename.
  • Use matching region and revision game files.
  • Use identical save-folder sorting settings.
  • Close content before copying or synchronising the save.

Manual Save Transfer

Close the game and quit RetroArch on the source device.

Copy the relevant .srm or save file from the configured Save Files directory.

Place it in the matching Save Files directory on the destination device.

Open RetroArch on the destination device and launch the same game using the same core.

The game’s Continue or Load menu should display the save.

If it does not, compare the filenames and folder structure exactly.

RetroArch Cloud Sync

RetroArch includes cloud synchronisation with WebDAV and supported Apple backends. WebDAV is the relevant cross-platform option for Android and Windows.

Begin on the primary device and open:

Settings > Saving > Cloud Sync

Configure:

  • Enable Cloud Sync: On.
  • Destructive Cloud Sync: Off.
  • Cloud Sync Backend: WebDAV.
  • Sync Saves: On.
  • Sync Configs: Off for the first test.
  • Sync Thumbnails: Off initially.
  • Sync System: Off initially.
  • Sync Mode: Manual while testing.

Enter the WebDAV server URL, username and password. Include the trailing slash in the server URL where required by the provider.

Save the current configuration and restart RetroArch.

Return to Cloud Sync and select Sync Now.

The status line should report Cloud Sync In Progress, followed by Cloud Sync Finished.

Configure the second device with the same backend details and identical save-folder sorting settings. Run Sync Now before launching a game.

After playing, create a normal save, select Close Content and return to the RetroArch Main Menu. Run Sync Now again before closing the application.

Avoid Cloud Conflicts

Do not play the same game on both devices before the previous device has completed its upload.

Always synchronise before starting a session and after closing content.

If RetroArch reports a conflict, do not repeatedly run Sync Now. Back up both local save folders and decide which version should be retained.

Disable Cloud Sync

Return to Settings > Saving > Cloud Sync and disable Enable Cloud Sync.

This stops future synchronisation but does not delete the local saves.

With Destructive Cloud Sync disabled, files that would otherwise be overwritten or deleted are backed up inside RetroArch’s cloud-backup directory.

Back To Menu

Configure Multi-Disc Games

Multi-disc games should use an M3U playlist file.

Place every disc in one folder:

Final Fantasy VII (Europe) (Disc 1).chd
Final Fantasy VII (Europe) (Disc 2).chd
Final Fantasy VII (Europe) (Disc 3).chd

Create a plain text file containing one disc filename per line:

Final Fantasy VII (Europe) (Disc 1).chd
Final Fantasy VII (Europe) (Disc 2).chd
Final Fantasy VII (Europe) (Disc 3).chd

Save it as:

Final Fantasy VII (Europe).m3u

Confirm that the file is not accidentally named:

Final Fantasy VII (Europe).m3u.txt

Launch the M3U file rather than an individual disc.

Change Disc

When the game asks for the next disc, open:

Quick Menu > Disc Control

Select Eject Disc.

Change Current Disc Index to the next disc.

Select Insert Disc.

Return to the game and wait a few seconds. The next disc should be recognised.

If the wrong disc was selected, eject it again, restore the previous Current Disc Index and insert it.

CUE/BIN Games

When an M3U references CUE/BIN games, list only the CUE files:

Game Name (Disc 1).cue
Game Name (Disc 2).cue

Do not list the individual BIN tracks.

Back To Menu

Update RetroArch Safely

Before Any Update

Back up:

  • Normal saves.
  • Save states.
  • BIOS files.
  • retroarch.cfg where accessible.
  • Core option files.
  • Overrides.
  • Controller remaps and profiles.
  • Playlists.
  • Custom shaders and thumbnails.

Create and reload a normal in-game save before updating.

Update Android RetroArch

Download the newer APK from the official RetroArch website.

Open the APK and install it over the existing application.

Do not uninstall the old version first unless the official release instructions specifically require it.

Open RetroArch, run the Online Updater and confirm that the existing directories, cores and controller settings remain.

Launch a test game and load a normal save.

If the update causes a problem, reinstall the previously working APK without clearing application storage.

Update A Portable Windows Installation

Close RetroArch and copy the complete portable RetroArch folder to a backup location.

Download the latest Stable 7z package.

Extract it into a temporary folder.

Copy the updated application files into the existing RetroArch directory, allowing Windows to replace the program files.

Open RetroArch and test the configuration.

If it fails, close RetroArch and restore the complete backup folder.

Update The Windows Installer Version

Download the latest installer and run it over the current installation.

After installation, open RetroArch, update its support files and test a normal save.

Update Installed Cores

Open:

Main Menu > Online Updater

Select Update Installed Cores where available.

After updating, launch one game with each important core.

Do not assume that existing save states will remain compatible. Test normal saves first.

Back To Menu

Back Up The Complete Setup

Android Backup

At minimum, copy these shared folders to a computer or separate drive:

  • BIOS.
  • Saves.
  • States.
  • Controller Profiles.
  • Screenshots.
  • Custom thumbnails.
  • Custom shaders.

Use Main Menu > Configuration File > Save New Configuration if a separate accessible configuration copy is required.

Store the backup outside the Android device. A backup on the same microSD card does not protect against card failure.

Portable Windows Backup

Close RetroArch.

Copy the complete RetroArch installation folder to another drive.

This preserves the program, cores, configuration, playlists, saves, remaps, shaders and thumbnails when they are stored inside the portable folder.

Open the copied version and launch a test game to confirm that the backup works.

Restore A Backup Safely

Do not immediately overwrite the current installation.

Rename the current folder by adding:

-current-backup

Copy the older backup into the original location.

Open RetroArch and test:

  • The main menu.
  • One installed core.
  • One playlist.
  • A normal in-game save.

If the restored setup fails, delete it and rename the safety copy back to its original name.

Back To Menu

Detailed Troubleshooting

Core Downloader Is Missing

Open:

Settings > User Interface > Menu Item Visibility

Enable Show Core Downloader.

If it is still missing, confirm that the installed RetroArch package supports core downloading and that the Cores directory is writable.

A Game Works Through Load Content But Is Missing From The Playlist

Run Manual Scan instead of the database scan.

Select the correct Content Directory, System Name, Default Core and file extensions.

Start the scan and confirm that the game appears.

RetroArch Reports Missing Firmware

Load the affected core, then open:

Main Menu > Information > Core Information

Write down the exact missing filename.

Check the System/BIOS path, filename, extension, required subfolder and hash.

Restart RetroArch after correcting the file.

A PlayStation Game Appears Several Times

The scanner may have added the CUE file and every BIN track.

Delete the incorrect playlist and create a Manual Scan using:

chd cue m3u

Do not include:

bin

FinalBurn Neo Reports Missing Files

The arcade ZIP, parent set or neogeo.zip does not match the installed FinalBurn Neo database.

Do not extract the archives or combine files from different sets.

Restore the original matching archives and test again.

The Controller Works In The Menu But Not In The Game

Open the Quick Menu while the game is running and select Controls.

Check the Port 1 Device Type and remapped controls.

Delete an incorrect game remap before changing the global controller profile.

If every core is affected, return to Settings > Input > RetroPad Binds > Port 1 Controls and remap the physical controller.

Two Controllers Both Control Player 1

Open Settings > Input > RetroPad Binds.

Set a different Device Index for Port 1 and Port 2.

Restart the game and test its multiplayer menu.

Android Settings Do Not Save

Use:

Main Menu > Configuration File > Save Current Configuration

Then use:

Main Menu > Quit RetroArch

Do not swipe RetroArch away from Recent Apps immediately after changing settings.

If settings still reset, check that custom directories are writable and restore the default Config directory.

Windows Settings Do Not Save

Confirm that RetroArch is not installed inside Program Files or another protected directory.

Right-click the RetroArch folder, select Properties and confirm that it is not marked read-only.

Use Save Current Configuration and look for the on-screen confirmation showing the location of retroarch.cfg.

A New Video Driver Causes A Black Screen

On Windows, close RetroArch and rename retroarch.cfg so the application creates a default configuration.

On Android, reopen RetroArch and attempt to restore the previous driver through the touchscreen. Clearing Android application storage should be treated as a final recovery method because it resets the complete application configuration.

Audio Crackles Repeatedly

Disable demanding shaders and return core resolution options to their default values.

Confirm that the game is running at full speed.

Increase Audio Latency slightly only after performance settings have been checked.

A Save Disappears After Changing Core

Different cores can use different filenames, formats or subfolders.

Return to the original core and confirm that the save still loads.

Do not rename or convert the only copy of a save. Work from a duplicate and check the destination core’s official save-format documentation.

A Save Does Not Synchronise Between Android & PC

Confirm that both devices use:

  • The same core.
  • The same game filename.
  • The same save-folder sorting options.
  • The same region and revision of the game.

Close content on both devices before copying or synchronising.

Thumbnails Are Missing

Update Databases and run Playlist Thumbnails Updater.

Check that the visible playlist title matches the official game title.

For manually scanned content, remove unnecessary text from the playlist entry or filename and try again.

A Shader Makes The Game Slow

Open Quick Menu > Shaders and disable Video Shaders.

Delete the active core or game shader preset if it continues to load automatically.

Use a lighter single-pass shader on lower-powered Android devices.

RetroArch Crashes While Loading One Core

Launch a different core and game to confirm that RetroArch itself still works.

Open Settings > Core > Manage Cores, select the failing core and review its information.

Delete and redownload that core.

If the crash continues, restore default core options and remove its game or core override.

Generate A Diagnostic Log

Open:

Settings > Logging

Enable Log To File and set Logging Level to Debug.

Reproduce the problem once, then close content and quit RetroArch normally.

Open the configured Logs directory and inspect the latest log file.

Disable Debug logging after troubleshooting because it creates larger log files.

Back To Menu

Final Setup Checklist

  • The official current RetroArch build is installed.
  • The Android build came from RetroArch or another officially recommended source.
  • The Windows installation is outside protected system folders.
  • Core info files, assets, controller profiles and databases have been updated.
  • The System/BIOS path points to the correct folder.
  • The Save Files and Save States paths are correct.
  • The File Browser starts inside the ROM folder.
  • One tested core is installed for each required system.
  • Required firmware is marked Present under Core Information.
  • Port 1 controls are mapped and tested.
  • Additional controllers use separate Device Index assignments.
  • Hotkeys require a modifier on the controller.
  • The menu hotkey, save state, load state and Close Content commands work.
  • Aspect Ratio is set to Core Provided.
  • One game has been launched manually before scanning.
  • Each system has its own playlist.
  • Manual Scan is used for working games missed by the database scanner.
  • CUE/BIN track files are not listed as separate games.
  • A normal in-game save has been closed and reloaded.
  • Save states are treated as secondary to normal saves.
  • Core options are changed one setting at a time.
  • Control remaps are saved at the correct core, folder or game level.
  • Frontend settings use the correct override level.
  • Shaders are saved only after performance has been tested.
  • Android and PC use matching save-folder options before synchronisation.
  • Multi-disc games use M3U playlists.
  • The complete working setup has been backed up away from the original device.

Back To Menu

Back To Menu

The Bottom Line

A reliable RetroArch setup is built in stages. Install the correct official version, update its support files, configure the directories, install one suitable core per system and test games manually before creating large playlists.

Keep global settings conservative. Use core options for emulator-specific changes, remap files for game controls, overrides for frontend settings and shader presets for display effects. Saving each adjustment at the correct level prevents one unusual game from changing the rest of the library.

Normal in-game saves should remain the main record of progress. Save states are useful, but they are more vulnerable to core updates and platform changes. Back up the complete setup before updating RetroArch, replacing a core or synchronising data between Android and PC.

Retrolize provides a set configuration service for the Android handheld consoles we sell, giving customers an organised and tested starting point without requiring them to configure every emulator from a blank installation.

Shop Modern Retro Gaming Handhelds

Back To Menu

Back to blog

Leave a comment

Please note, comments need to be approved before they are published.