Back up MAME saves and settings on Android before an update
Close the emulator cleanly, record its exact MAME and frontend versions, then copy the configured NVRAM, CFG, and save-state directories to a user-controlled backup. Restore that copy into the same version first; only after it passes should you update, because save states are not guaranteed to survive a driver or version change.
Do this in order
- 01
Write down the Android app version, bundled MAME/core version, game short names, and the date of the backup.
- 02
Open the frontend’s directory settings and record the actual CFG, NVRAM, save-state, and input-recording locations.
- 03
Exit every running game and close the emulator so it can finish writing configuration and NVRAM.
- 04
Copy the configured `cfg`, `nvram`, and `sta` data to a user-controlled folder; include `inp` only if you need input recordings.
- 05
Keep the backup separate from ROM, BIOS, and CHD files, then calculate a checksum for the backup archive if you create one.
- 06
Test a restore with the same app and MAME version before updating; after an update, validate one game at a time and keep the old copy.
Decision and diagnostic table
| MAME data | What it preserves | Restore caution |
|---|---|---|
| CFG | Input assignments, DIP switches, bookkeeping, UI-related machine settings | A stale mapping can conflict with a changed controller or frontend |
| NVRAM | EEPROM and other non-volatile machine memory | Let MAME exit cleanly before copying or restoring |
| Save state (STA) | A serialized machine state for supported drivers | Treat as version- and driver-sensitive, not archival |
| Input recording (INP) | Recorded input stream | Playback may desync when configuration or NVRAM differs |
Find configured directories, not guessed Android paths
Official MAME exposes separate output directories for CFG, NVRAM, input recordings, and states. An Android frontend may map those directories into app-private storage, shared storage, or an exported folder. Read the frontend’s directory screen and use its export flow where available; do not assume a path copied from another app or Android version.
If the only copy is in app-private storage, uninstalling or clearing app data can make it inaccessible. Export before changing the package, storage permission, or selected document tree.
A save state is not the same as durable machine memory
NVRAM represents the machine’s non-volatile devices and is read at startup and written on exit. A save state captures a broader running-machine snapshot, but only drivers that explicitly support states can use MAME’s autosave or manual state features.
Prefer in-game or NVRAM progress for long-lived preservation when the machine supports it. Keep save states as convenient checkpoints tied to the exact build that created them.
Prove the backup with a small restore drill
A copied folder is not yet a verified backup. With your lawful game data unchanged, restore one known machine into the same emulator version and check its controls, DIP settings, NVRAM-backed progress, and one state if supported.
After an emulator update, test a copy of the data first. If a state fails but NVRAM works, keep the old build for that state instead of repeatedly overwriting the last known-good files.
Back up only progress and configuration you are entitled to keep. Do not share ROM, BIOS, CHD, artwork, or music merely because it sits beside a save directory.