RetroArch Android configuration / 2026-07-25

Save RetroArch core options, overrides, and remaps correctly on Android

Choose the right RetroArch file and scope for a MAME core option, frontend setting, controller remap, or shader instead of overwriting the global configuration.

10 minute configuration guideRetroArch on Android with a versioned libretro MAME core

Save RetroArch core options, overrides, and remaps correctly on Android

Use a game `.opt` file for core options, a `.cfg` override for frontend settings, and an `.rmp` remap for controls. Save at game, content-directory, or core scope only as broadly as needed, confirm automatic loading is enabled, then relaunch the same content to verify the setting was written.

Do this in order

  1. 01

    Record the RetroArch version, exact MAME core name/revision, content name, and current Config directory.

  2. 02

    Change one setting while the game is loaded and classify it as a core option, frontend setting, input remap, or shader preset.

  3. 03

    Choose the narrowest scope: game first, content directory only for a coherent folder, or core only when every game should inherit it.

  4. 04

    Save through the matching Quick Menu action: game options, game/directory/core override, remap file, or shader preset.

  5. 05

    Confirm content-specific core options and automatic override loading are enabled where your build exposes those switches.

  6. 06

    Close content, relaunch it, and verify the setting; back up the Config and Remap directories before changing global configuration.

Decision and diagnostic table

Setting typeFile or actionUse it for
Core optionGame `.opt` / Save Game OptionsMAME-core behavior exposed under Quick Menu → Core Options
Frontend overrideGame, directory, or core `.cfg`Video, latency, overlay, and other RetroArch settings
Input remapGame, directory, or core `.rmp`Mapping RetroPad controls to the emulated machine
Shader presetGame or core shader presetA display-processing chain kept separate from CFG overrides

Options, overrides, and remaps solve different layers

RetroArch deliberately separates core options from frontend configuration and input remaps. A MAME option saved as a game option belongs in the core-options system; a controller mapping belongs in a remap; a frontend video or overlay change belongs in an override.

Using the matching save action makes rollback possible and prevents an unrelated global setting from changing every core.

The most specific scope wins

RetroArch loads its base configuration, then applies core, content-directory, and game overrides, with the more specific layer taking precedence. A forgotten game override can therefore make a later core-wide change appear broken.

When diagnosing a conflict, list the active game, directory, and core files. Remove or reset the narrowest file first rather than deleting `retroarch.cfg`.

Verify the write on Android

Android builds may keep Config and Remap directories in locations that normal file browsers cannot open. Use Settings → Directory to see the configured paths and move them to a user-controlled location only through a supported picker or documented frontend flow.

After saving, fully close and reload the content. An on-screen success message is useful, but the relaunch is the proof that automatic loading, file naming, and scope all match.

First-party sources

Related guides