ROM Management

A large portion of gaming on single-board computers is done through emulation. Emulation requires ROMs, and for said emulation to work you need the correct ROMs.

For the most part, a typical user will have ROMs that have been verified by No-Intro, Redump, MAME, or some other preservation group. The problem is that some users may have ROMs that do not work in their chosen emulator, which then raises the question of if the ROMs are incorrect.

The point of this documentation is to explain how to verify your ROMs are correct, which is especially important when dealing with arcade emulation.

1. DATs

The purpose of DATs you may find within arcade documentation, generated by arcade emulators, or on preservation sites like No-Intro's DAT-o-MATIC or Redump is to verify that the ROMs you have obtained are correct. When used with a verification program, DATs make short work of verifying, renaming, and even reassembling arcade ROMs so that they work with specific arcade emulators.

Below you will find various DATs for arcade emulators, consoles, handhelds, and computers that are commonly run on typical SBCs. If one of the Arcade ROM Sets is marked "Active" then the DAT may be out of date if in a ZIP, while if a ROM Set is marked "Frozen" then it should be up to date if it is in a ZIP: all direct links to DATs should be up-to-date. The version of the ROM Set the emulator uses is listed to the right alongside the CHD version, and in the cases of the FBN/FBA ones the FBN/FBA ROM Set version and the MAME ROM Set version it is associated with.

Make sure you update any active arcade emulator from Source on your SBC at the same time you download its DAT so that they match.

For reference, here is the CHD version history. Source

  • CHD v1 - MAME 0.63
  • CHD v2 - MAME 0.70u1
  • CHD v3 - MAME 0.77u1
  • CHD v4 - MAME 0.130u1
  • CHD v5 - MAME 0.145u1

1.1 Arcade - FBN/FBA

FBN (Libretro Core) (Active) - Current FBN - Current MAME (Usually)

FBA 2012 (Libretro Core) (Frozen) - FBA - MAME 0.149

1.2 Arcade - MAME

MAME 2000 (Libretro Core) (Frozen) - MAME 0.37b5

MAME 2003 (Libretro Core) (Frozen) - MAME 0.78 - CHD v3

MAME 2003 Plus (Libretro Core) (Active) - MAME 0.78 - CHD v3

MAME 2010 (Libretro Core) (Frozen) - MAME 0.139 - CHD v4

MAME 2015 (Libretro Core) (Frozen) - MAME 0.160 - CHD v5

MAME 2016 (Libretro Core) (Frozen) - MAME 0.174 - CHD v5

1.3 Arcade - AdvanceMAME

AdvanceMAME v0.94 (Frozen) - MAME 0.94 - CHD v3

AdvanceMAME v1.4 (Frozen) - MAME 0.106 - CHD v3

AdvanceMAME v3.9 (Active) - Up-To-Date Source - MAME 0.106 - CHD v3

1.4 Arcade - Raspberry Pi 3/3B+

All-in-One Overclocked RPi3B Arcade ROM Set Setup v1.10 (Custom)

1.5 Arcade - Raspberry Pi 1/0

GnGeo-Pi (Frozen) - MAME 0.138

MAME4All-Pi (Frozen) - MAME 0.37b5

PiFBA (Frozen) - FBA - MAME 0.114u1

1.6 Arcade - Resources

MAME Rollback & MAME DAT Downloads

MAME Rollback ROMs are used to make any old ROM Set when combined with the current MAME ROMs.

HBMAME Download

HBMAME is where most hacks/homebrew can be found. You'll have to install matching versions of both MAME and HBMAME, then use HBMAME to export the DAT (you want the second export option in the list).

This ROM Set is completely optional. So, if you don't care about hacks or homebrew and don't mind seeing the ROM Sets you build missing some ROMs, then you can just skip this one.

1.7 Various - No-Intro

The most commonly used cartridge-based system ROMs today are those verified by the No-Intro preservation group, though they also cover other storage mediums and some digitally distributed games. This group only keeps good ROMs in their database with no duplicates beyond what makes sense. Their database also offers customization of most DATs that can be generated, with one customization being able to generate a Parent/Clone XML that can be used to effortlessly make a custom "One Game, One ROM" ROM set containing only one ROM per game: not all systems have a usable Parent/Clone database.

DAT-o-MATIC Main Download Page

1.8 Various - Redump

Much like how most people prefer No-Intro for their cartridge-based ROM verification, Redump is the prefered choice for disc-based ROM verification. However, unlike No-Intro's allowance of any ROM dump being added to their database as long as it works and is unique, Redump only allows ROM dumps that have been properly put through their strict verification process to be added. Redump's strict verification process does produce perfect copies, but it also means that some games are still missing from their database.

Redump Homepage

1.9 Various - TOSEC

The Old School Emulation Center (TOSEC) has one of the largest and most comprehensive databases available. They cover just about everything you could think of. If No-Intro or Redump does not cover the system you need to verify, then TOSEC most likely has you covered. The only issue most will have with TOSEC is the fact it catalogs all ROM dumps so a fully verified collection will require some sifting through to find what you want.

TOSEC Download Page

1.10 Arcade - RG-350

The RG-350 has several frozen emulators between FBA, XMAME (uses three different ROM sets), GnGeo, and MAME4All. The archive below contains all the DATs for these emulators.

RG-350 - Arcade ROM Set DATs

2. Verification Programs

2.1 CLRMAMEPRO [Windows & Linux (WINE)] [Closed-Source]

CLRMAMEPRO Download Page

2.2 CLRMAMEPRO - Mac Port [Mac] [Closed-Source]

Simply a Mac conversion of CLRMAMEPRO using Wineskin Winery.

CLRMAMEPRO - Mac Port Download Page

Refer to instructions above for the Windows version.

2.3 MAME Set Rebuilder

A simplistic arcade ROM set rebuilder. Not advised to use due to how inefficient it is, but here it is for completion's sake.

MAME Set Rebuilder

3. Sorting Programs

3.1 Arcade Manager [Windows, MacOS, Linux] [Open-Source]

The major feature for most is the automatic RetroArch overlay (bezel) creation for any arcade ROM collection. It is also a useful tool for creating your own arcade ROM set, but want to start from a base.

Arcade Manager Download Page

3.2 Simple Arcade Multifilter [Windows] [Open-Source]

What you'll want to use if creating a custom arcade ROM set from scratch.

Simple Arcade Multifilter Download Page

3.3 ROMLister [Windows] [Open-Source]

A powerful ROM sorting program, but only works with DATs generated by MAME. Some other required files are hard to track down, though links to several "catver.ini" can be found on the "Simple Arcade Multifilter" page above.

ROMLister Download Page

Unless otherwise stated, the content of this page is licensed under Creative Commons Attribution-ShareAlike 3.0 License