Wes Ellis./ a personal notebook
Technology. Stories. Side projects.
A few things worth writing down.
← Back to Retro Tech

Retro Tech

Folders by Platform: How I Lay Out a Multi-System Game Backup Library

An overhead flat lay of a laptop hard drive, an SD card, a drive adapter board and a round case of cables and adapters on a white desk.

Part 6 of the thread Keeping a media library tidy

THE SHORT VERSION4 points
  • Manufacturer, then system: Nintendo/SNES, Sega/Genesis, Sony/PlayStation. Two levels, no deeper.
  • Know your extensions. CHD for most disc systems, RVZ for GameCube and Wii, zip for arcade sets.
  • Keep BIOS files in their own folder, apart from the games.
  • Next on my list: Virtual Boy, Atari 2600 and 7800, and the Wii.

Once a game backup collection gets past a few systems, the folder structure starts to matter as much as the file names. Emulators and frontends want to know where each system's games live, you want to find things by eye, and a messy tree turns every new setup into an afternoon of pointing software at the right place.

This is the layout I use, the extensions that go in each folder, and a look at what's in my own collection and what I'd add.

The layout

ROMS/
├── Arcade/
│   ├── Final Burn Neo/
│   └── MAME/
├── Atari/
│   ├── 2600/
│   ├── 5200/
│   ├── 7800/
│   ├── Jaguar/
│   └── Lynx/
├── Nintendo/
│   ├── Game Boy/
│   ├── Game Boy Color/
│   ├── Game Boy Advance/
│   ├── NES/
│   ├── SNES/
│   ├── N64/
│   ├── GameCube/
│   ├── Wii/
│   ├── Switch/
│   └── DS/
├── Sega/
│   ├── Master System/
│   ├── Genesis/
│   ├── Saturn/
│   ├── Dreamcast/
│   └── Game Gear/
├── Sony/
│   ├── PlayStation/
│   ├── PlayStation 2/
│   ├── PlayStation 3/
│   └── PSP/
└── Other/
    ├── PC Engine/
    ├── Neo Geo/
    └── WonderSwan/

Manufacturer, then system, and that's it. Two levels is enough to find anything, and it's shallow enough that pointing an emulator at a folder is never a chore.

Tip

Use the official system names for the folders, and keep BIOSThe firmware that starts a PC before Windows loads. On anything modern it's technically UEFI, but nearly everyone still calls it the BIOS. files in a separate folder of their own. Mixing them in with the games is how they end up renamed, scraped or deleted by accident.

Which extensions go where

System Extensions
Arcade (Final Burn Neo, MAME) .zip, .7z. Keep arcade sets zipped; the emulator expects it
Neo Geo .zip (it's arcade hardware)
Atari 2600 / 5200 / 7800 .a26 / .a52 / .a78, or .bin
Atari Jaguar / Lynx .jag / .lnx
NES .nes, and .fds for Famicom Disk System
SNES .sfc, .smc
Nintendo 64 .z64, .n64, .v64
Game Boy / Color / Advance .gb / .gbc / .gba
DS / 3DS .nds / .3ds, .cia
GameCube / Wii .rvz (compressed), .iso; .wbfs and .wad for Wii
Wii U .wux, .wud
Switch .nsp, .nsz, .xci
Master System / Game Gear .sms / .gg
Genesis / Mega Drive .md, .gen, .bin
32X .32x
Sega CD / Saturn / Dreamcast .chd, or .cue with .bin; .gdi and .cdi for Dreamcast
PlayStation .chd, .cue with .bin, .pbp
PlayStation 2 .iso, .chd
PSP .iso, .cso, .pbp
PS3 / Vita .pkg, .iso / .vpk
Xbox / Xbox 360 .iso, .xex for 360
PC Engine / TurboGrafx-16 .pce, and .chd or .cue with .bin for CD
SuperGrafx .sgx
WonderSwan / Color .ws / .wsc
Neo Geo Pocket / Color .ngp / .ngc

CHDA lossless compressed format for disc images. It turns a messy set of .cue and .bin files into one smaller file that most emulators read directly.More: A Raspberry Pi Retro Box: What to Buy, What to Run and What It Can Handle is worth singling out. It's a lossless compressed disc format that most emulators read directly, and it turns a messy pile of .cue and .bin files into one file per disc, usually a good bit smaller.

What's in my collection

My backups cover Game Boy, Game Boy Color, Game Boy Advance, NES, SNES, N64, GameCube and DS; Genesis, 32X, Sega CD, Saturn, Game Gear and Dreamcast; PlayStation, PlayStation 2 and PSP; TurboGrafx-16 and its CD add-on; and arcade through Final Burn Neo and Neo Geo.

What I'd add next

System Why
Virtual Boy Nintendo's odd red 3D experiment. Interesting for preservation alone
Atari 2600 The console that made home gaming a thing
Atari 7800 Plays 2600 games too, with better graphics of its own
Wii The motion-control library

And worth considering after that: MAME for broader arcade coverage than Final Burn Neo, MSX for its Japanese and European exclusives, Amiga and DOS for classic computer games, WonderSwan for Bandai's handheld (with some Square games), Intellivision, ColecoVision, and the Vectrex, with its built-in vector screen.

Heads up

Amiga and DOS games were made for keyboard and mouse. They often need setup per game to be playable on a controller or a Steam Deck. The console systems above slot into EmulationStation-style frontends with far less fuss.

Storage scales fast as you go: cartridge systems are kilobytes to a few megabytes per game, disc systems 100MB to 1.5GB, and GameCube and Wii 1 to 8GB each.

When a later release beats the original

Some games have a better version elsewhere. If you're trimming a collection, these are worth knowing:

Original Consider instead
Final Fantasy I and II (NES) Final Fantasy Origins (PS1), or the PSP anniversary editions
The Mega Man games (NES) Mega Man Anniversary Collection (GameCube)
Chrono Trigger (SNES) The PS1 version, which adds anime cutscenes
Breath of Fire I and II (SNES) The GBA ports
Pokémon Red, Blue and Yellow FireRed and LeafGreen (GBA)
Link's Awakening (Game Boy) Link's Awakening DX (Game Boy Color)

That said, plenty of collectors keep every version on purpose, for history's sake or because the original is what they grew up with. Hard drives are cheap, so there's no rush to delete anything.

The files inside these folders get named with my genre-code convention, and once they're there, Remove-DuplicateRom keeps one copy per game. For systems that ship as a pile of files per game, like Switch backups, Move-GameToTitleFolder gives each title its own folder.