Emulator Guide
How To Organize Supported Game Files For An Android Emulator
Practical guide to folder layout, file naming, and per-core expectations for an Android emulator ROM folder with legally obtained game files.

Written by the Fulldive product engineering team, based on direct inspection of the repositories listed below.
A tidy Android emulator ROM folder is the difference between an emulator that feels finished and one that feels broken. Most complaints we see about emulators on Android are actually file-organization issues: missing cover art, duplicated titles, saves going to the wrong folder, or a core not picking up files because the extension is wrong. This post is a practical guide to organizing supported game files for an emulator like Fulldive’s One Emulator for Game Consoles. Nothing here is about sourcing games — those should be legally obtained game files you already own.
The one rule that solves most problems
One folder per system. Name it after the system. Put files in the right system folder with the right extension. Everything else in an Android emulator depends on the library scan finding your files and classifying them correctly.
A reasonable top-level layout on an Android device:
/Emulator/
NES/
SNES/
GameBoy/
GBA/
NDS/
N64/
3DS/
PSX/
Saves/
States/
Keep Saves/ and States/ separate from the game folders. Some cores write in-game saves next to the game file by default; overriding that path prevents your game folder from filling with .sav, .srm, and state files over time.
Why folder structure matters for the library scan
When Fulldive’s emulator moved its search, systems, and games screens to Compose (commit 38ddf7fa) and later swapped in an updated animated game list (commit 4d836cb4), both changes assumed that a scan would group files by detected system and present them cleanly. If files are misnamed or sitting in the wrong folder, the scan still works, but you end up with the wrong system icon, wrong covers, or a game the library categorized as the wrong platform.
The in-game menu rebuild (commit 2372e240) made per-title settings easier to find, which also means per-title settings are only as clean as the library entries they attach to. Good file layout pays off here.
File extensions, by system family
Cores identify files partly by extension. A few practical notes:
- Game Boy / Color / Advance:
.gb,.gbc,.gba. Avoid renaming them to.binor.zip; the scan may miss them. - NES / SNES:
.nes,.sfc,.smc. Headered vs headerless images sometimes need a core option change. - Nintendo DS:
.nds. The desmume-to-melonDS migration in commitf71aade4handled save continuity; file extensions stayed the same. - Nintendo 3DS:
.3ds,.cia. New 3DS core support landed in commite9ca6f9b; Citra hardware shader cache work in commit640cdc59improved first-run performance, but files still need to be in the right place for the library to see them. - Compressed archives:
.zipand.7zoften work for simple cartridge-based systems. For disc images, keep them uncompressed — compressing a.isoor.cue/.binpair usually breaks boot.
Naming conventions
The library uses the file name to match covers and metadata. A few tips:
- Keep the title recognizable:
Game Name (Region) (Revision).ext. - Avoid unusual characters: commas, colons, and emoji can trip up older Android file APIs.
- If a game is multi-disc, keep the discs in the same folder with a clear
(Disc 1)/(Disc 2)suffix, plus the.m3uplaylist file some cores use. - Don’t rename a file after the emulator has already scanned it, or you may orphan its save.
Saves and states
Save states and in-game saves should live in predictable folders. We go into detail in Save states vs in-game saves on Android emulators, but the short version:
- Point the emulator’s save folder to
/Emulator/Saves/so your backups are easy. - Keep state files in
/Emulator/States/, because state files are large and tied to a specific core. - Before any core migration (like desmume to melonDS) or emulator update, copy the save folder somewhere safe. The lazy migration in commit
f71aade4is designed to preserve saves, but a backup is cheap.
BIOS and firmware
Some systems need BIOS or firmware files to boot. These files should be placed in the emulator’s designated BIOS folder, with the exact file name the core expects. The emulator does not ship them, and we do not distribute them; they must be extracted by the user from hardware they own or obtained through legitimate channels.
Scoped storage realities
Android’s scoped storage changed how apps access the shared file system. Practical implications:
- Pick a folder once, grant access once, and stay in it. Bouncing between folders on newer Android versions can trigger access prompts each time.
- Core download handling was affected by Android’s packaging rules too — a minification-related core-download bug was fixed in commit
3c3a0626. File-layout bugs and delivery bugs both tend to show up the same way to users: “my games are gone.” - If you move the emulator between devices, move the whole
/Emulator/tree, not just the game folder.
A starter checklist
Before your next library scan:
- Every game is in a folder named after its system.
- File extensions match the system conventions.
- Disc images are uncompressed; cartridge images may be zipped.
Saves/andStates/are separate from game folders.- BIOS files, where required, are in the BIOS folder with exact names.
- You have a backup of
Saves/somewhere outside the emulator.
Legal and compatibility notes
Fulldive’s emulator apps do not include or distribute copyrighted ROMs, BIOS files, or firmware. Users are expected to supply legally obtained game files from hardware they own. Library scan results and playable compatibility vary by game, file, device, Android version, and emulator core. We do not target or endorse ROM-download queries.
Related reading
- Android game console emulator features
- Save states vs in-game saves on Android emulators
- Controllers for an Android emulator
- Why emulator compatibility varies on Android
- Related: How to forward SMS to email on Android if you juggle files across devices
Sources
- Internal repository evidence brief:
website/docs/app-evolution/one-emulator-fullroid.md. - Android Developers — scoped storage and file access on Android.
- Lemuroid for reference on Android library scan UX.
Last updated: 2026-04-16. Commit hashes and version numbers are drawn from Fulldive repositories inspected on 2026-04-13.