Managing ROMs - eddywebs/RetroPie-Setup GitHub Wiki

RetroPie uses forks of the MAME and FinalBurn Alpha emulators that work well on the Raspberry Pi hardware, but are based on older versions of the original code. Your ROMs may be for earlier or later versions of MAME/FBA and if they are, they most likely will not work.

The following chart is a quick reference for all the arcade emulators in RetroPie.

Emulator Romset # of ROMs .DAT Files Compatibility List
mame4all 0.37b5 2270 .DAT List
lr-imame4all 0.37b5 2270 .DAT List
lr-mame2003 0.78 4705 .DAT List
lr-mame2010 0.139 8782 .DAT List
advmame-.94 0.94 5563 .DAT List
advmame-1.4 0.106 6166 .DAT List
pifba 0.114 (fba 0.2.96.71) 684 .DAT List
lr-fba 0.154 (fba 0.2.97.30) 3369 .DAT List
lr-fba-next 0.167 (fba 0.2.97.37) 3970 .DAT List
gngeopi 0.138 203 .DAT List

See also: MAME, FBA

This is where clrmamepro comes in. Clrmamepro is a Windows utility for verifying and managing your ROMs. It can also run on Linux, using Wine. Clrmamepro is very powerful, but also somewhat complex and not friendly to new users.

there is also a Mac version available now http://www.emulab.it its only in Beta at the moment, but it works exactly the same as the Windows utility

Here are the steps to getting started with clrmamepro.

Video Tutorial:

##Requirements:#

  • A Raspberry Pi running a RetroPie v2.4.x, v2.5.x or v2.6.x SD card image. Other images may work, but they have not been tested with these instructions. All you need from the RetroPie image are the DAT files (explained below).
  • A Windows PC for setting up RetroPie and running clrmamepro. This tutorial assumes you are running a 64 bit version of Windows, but the steps for 32 bit Windows will be the same once you get past downloading the clrmamepro software.

Step 1 - Back up your ROMs#

It is possible with clrmamepro to change one or two options and when it runs it will delete all your existing ROMs. OK, not really - using the default options it will make backups of any files it removes, but I have seen a lot of people when getting started mess up their ROMs beyond repair.

##Step 2 - Download clrmamepro# The version at the time of this article is 4.016. I would recommend the 64 bit version if you are running a 64 bit OS, it will be significantly faster. I would also recommend the zip version, just extract it to C:\clrmamepro. There's no need to run the installer.

##Step 3 - Acquire DAT files# DAT files are the XML-based database definitions of the exact ROMs an emulator uses. Using the DAT files and CRC checks, clrmamepro is able to identify which of your ROMs are valid for a given emulator.

You can download all .DAT files for all arcade emulators HERE

  • For this tutorial, extract the zip file into C:\ (but you can really put it anywhere you want)
  • Open retropie-dat-master and you should see a list of folders. Each folder contains the .DAT files for the respective emulator. We will only be using C:\retropie-dat-master\mame4all\MAME 0.37b5.dat in this tutorial.
  • Create a sub directory C:\retropie-dat-master\mame4allroms (this will be used in the next step)
  • Create a sub directory C:\retropie-dat-master\pifbaroms

##Step 4 - Run clrmamepro for the first time#

  • Run C:\clrmamepro\cmpro64.exe. The welcome screen explains that common first steps are to 1) Create a Profile, 2) Set up your paths and 3) Scan your ROMs. We will be doing things slightly differently, in order to leave your source ROMs intact.
  • Click OK to the Welcome screen
  • Click "Add DatFile..." and open the MAME4ALL DAT file at C:\retropie-dat-master\mame4all\MAME 0.37b5.dat
  • Accept the default profile location of [PROFILES], click "OK"
  • Select "[NEW DATFILES]" in the left-hand pane and select "MAME 0.37b5" in the right-hand pane
  • Click "Load / Update"
  • Clrmamepro will ask you how to generate the settings for this datfile, click "Default" (it is possible it will throw a warning but just select "ok to all" and continue on)
  • You are now at the main window for clrmamepro. We still need to set our paths, so click "Settings"
  • Verify "ROM-Paths" is the selected option in the upper-left corner drop down menu
  • Click the "Add..." button
  • Select the folder you created in the last step called C:\retropie-dat-master\mame4allroms and click "OK"
  • Close the settings window with the "X" button in the upper right

At this point, you could scan the ROMs folder you just selected, but we just created this folder and it is empty. Instead, we will rebuild into this folder. Clrmamepro can scan other locations for matching ROMs and build a new ROM set from them.

##Step 5- Rebuild a ROM set#

  • In the main clrmamepro window, select "Rebuilder"

  • The destination should already be filled in for you - it is the same as the ROM path you defined above in the settings window: C:\retropie-dat-master\mame4allroms

  • Use the browse button "..." to select your source path. For example you might have a full set of MAME v0.156 ROMs - point clrmamepro to that directory as your source.

  • When rebuilding there are three options: Merged Set, Split Set, and Non-Merged Set. (NOTE: As a prerequisite you need a .dat file that contains merge data for the romset. For best results build from a full romset.)

    • Merged Set: In theory a merged set merges all clones into the parent folder (not the most effective use of space but if you can afford the space it is an easy way to clean up your romlist so there aren't clones everywhere)
    • Split Set: a split set splits the parents and clones into their own folders (this is a bit messier as you have lots of clones that also need a parent romset in the same rom folder as the clone romset in order for it to work)
    • Non-Merged Set: a non-merged set copies the needed parent files into each clone's folder so you can delete the parent and in theory the clone should still work. (This is also not a very effective use of space but gives you the freedom to play clones without worrying about needing the parent romset in the same rom folder.)
  • Click "Rebuild...". Depending on the size of the directory your chose as a source, this could take some time

  • When clrmamepro is finished rebuilding, you will see a window with statistics showing how many matching files were found, how many files were created and how many were skipped. Click "OK"

  • Repeat for any other source paths you might have. You can rebuild from multiple sources, but leave the Destination path the same

  • When finished, close the Rebuilder with the "X" in the upper right corner of the window

Time to find out how well your source ROMs matched up...

##Step 6 - Scan a ROM set#

  • In the main clrmamepro window, select "Scanner"
  • Leave all settings at default and click "New Scan..."
  • When clrmamepro finishes scanning, you will see a "Statistics" window with high level information and a "Scan Results" window with detailed information about your missing ROMs

##Repeat Steps 4 through 6 for the FBA ROM set#

  • From clrmamepro "Profiler" window load the DAT file for PiFBA C:\retropie-dat-master\pifba\fba_029671_od_release_10_working_roms.dat
  • From clrmamepro "Settings" windows set the ROM path to C:\retropie-dat-master\pifbaroms
  • Use clrmamepro's "Rebuilder" to rebuild your existing ROMs to a new ROM set
  • Scan the rebuilt ROMs using the "Scanner"

##Notes#

That's the basics of using clrmamepro. Some additional notes:

  • Be careful with the "Fix" settings in the Scanner window and the "Remove Matched Sourcefiles" setting in the Rebuilder window. These settings will remove and rename your ROMs.

  • If clrmamepro does delete any ROMs (because you told it to), you should be able to find backups in C:\clrmamepro\backup as long as you didn't change the default settings.

  • clrmamepro is very stable. It has been around for a long time, it is regularly updated and it is widely used. If it reports problems reading your ROMs, you most likely have corrupt ROM archives (zip files) or a failing hard drive.

  • If you feel the need to reset clrmamepro's settings, just delete your existing profile(s) and reload your DAT file, selecting "Default" settings for the new profile. Almost all of clrmamepro's settings are per-profile.

List of Emulators and Their Respective Romsets:

RetroPie 3.0.0 MAME Versions

These details are as per the default installed binaries on the RetroPie 3.0.0 image.

Important

In 3.0.0 some emulators share directories, so you need to choose which FBA, NeoGeo and mame4all version you want. So you can have 1 romset for each of these (mame4all, FBA, NeoGeo, advmame)

See here for RetroPie 2.6

mame4all-pi

Roms Dir: /home/pi/RetroPie/roms/mame-mame4all
Binary Dir: /opt/retropie/emulators/mame4all
Config Dir: /opt/retropie/configs/mame-mame4all

MAME Version: Based on 0.37b5 (July 2000)

Size: 1.86 GB

Romsets emulated: 2270 (includes clones etc..)

Active Sets 2241/2241

  • Parents 560/560
  • Clones 990/990
  • Others 690/690
  • BIOS 1/1

Dat File: mame4all-037b5-RetroPie-260.zip

Dat File (with merge data): MAME 0.37b5.dat

Dat File (no clones, no neogeo): mame4all-no-clones-no-neogeo

MAME4ALL-PI COMPATIBILITY LIST feel free to contribute to the list.

lr-imame4all

Roms Dir: /home/pi/RetroPie/roms/mame-mame4all
Binary Dir: /opt/retropie/libretrocores/lr-imame4all
Config Dir: /opt/retropie/configs/mame-mame4all/retroarch.cfg

MAME Version: Based on 0.37b5 (July 2000)

Size: 1.86 GB

Romsets emulated: 2270 (includes clones etc..)

Active Sets 2241/2241

  • Parents 560/560
  • Clones 990/990
  • Others 690/690
  • BIOS 1/1

Dat File: mame4all-037b5-RetroPie-260.zip

Dat File (with merge data): MAME 0.37b5.dat

Dat File (no clones, no neogeo): mame4all-no-clones-no-neogeo

lr-IMAME4ALL COMPATIBILITY LIST feel free to contribute to the list.

lr-mame2003

Roms Dir: /home/pi/RetroPie/roms/mame-libretro
Binary Dir: /opt/retropie/libretrocores/lr-mame2003
Config Dir: /opt/retropie/configs/mame-libretro/retroarch.cfg

MAME Version: Based on 0.78 (December 2003)

Romsets emulated: 4705 (includes clones etc..)

Active Sets 4705/4705

  • Parents 1042/1042
  • Clones 2039/2039
  • Others 1624/1624
  • BIOS 1/1

Dat File (with merge data): MAME 0.78.dat

Dat File (working only, no clones): mame2003-lr-working-no-clones

Dat File ('lite' set: working, no clones, neogeo, PlayChoice (NES multiplay), no rotary/dial/trackball/lightgun controls, no casino/multiplay/quiz/mahjong/fruit_machines/rhythm/mature): mame2003-lr-lite (No. roms: 1615)

lr-mame2003 COMPATIBILITY LIST feel free to contribute to the list.

lr-mame2010

Roms Dir: /home/pi/RetroPie/roms/mame-libretro
Binary Dir: /opt/retropie/libretrocores/lr-mame2010
Config Dir: /opt/retropie/configs/mame-libretro/retroarch.cfg

MAME Version: Based on 0.139 (August 2010)

Romsets emulated: 8782 (includes clones etc..)

Active Sets 8782/8782

  • Parents 1835/1835
  • Clones 4265/4265
  • Others 2683/2683
  • BIOS 1/1

Dat File (with merge data): MAME 0.139.dat

lr-mame2010 COMPATIBILITY LIST feel free to contribute to the list.

AdvanceMAME 0.94.0 and 1.4

Roms Dir: /home/pi/RetroPie/roms/mame-advmame
Binary Dir: /opt/retropie/emulators/advmame/bin
Config Dir: /opt/retropie/configs/mame-advmame

MAME Version: Based on MAME 0.94 (March 2005) or (for 1.4) Based on MAME 0.106 (May 2006)

Size: 11.6GB (0.94.0) Size: 14.8GB (1.2)

Romsets Emulated: 5563 (0.94.0) 6166 (1.2) (includes clones etc..)

Active Sets (For 0.94.0) 5563/5563

  • Parents 1236/1236
  • Clones 2473/2473
  • Others 1829/1829
  • BIOS 25/25

Active Sets (For 1.4) 6166/6166

  • Parents 1388/1388
  • Clones 2824/2824
  • Others 1928/1928
  • BIOS 26/26

Dat File: advmame-0.94-RetroPie-260.7z

AdvMame .94 COMPATIBILITY LIST feel free to contribute to the list.

Dat File: advmame12-106.7z

AdvMame 1.4 COMPATIBILITY LIST feel free to contribute to the list.

PiFBA

Roms Dir: /home/pi/RetroPie/roms/fba
Binary Dir: /opt/retropie/emulators/pifba
Config Dir: /opt/retropie/configs/fba/fba2x.cfg

MAME Version: FBA 0.2.96.71 which is based on MAME 0.114 (April 2007)

Size: 3.62 GB

Romsets emulated: 684 (no clones)

Dat File: fba_0.2.96.71_clrmame_dat.zip

Dat File (With merge data): FB Alpha v0.2.96.71 (ClrMame Pro).dat

All clones (current tested) non-working\mahjong\quiz\adult\casino\rythm removed

Romsets emulated: 291

Dat File: [fba_029671_od_release_10_working_roms_filtered.zip] (https://drive.google.com/file/d/0B2TMeZ6iEFvHMTV2TnlrZWwxRXc/view?usp=sharing)

PiFBA COMPATIBILITY LIST feel free to contribute to the list.

lr-fba

Roms Dir: /home/pi/RetroPie/roms/fba
Binary Dir: /opt/retropie/libretrocores/lr-fba
Config Dir: /opt/retropie/configs/fba/retroarch.cfg

MAME Version: FBA 0.2.97.30 which is based on MAME 0.154 (Jul 2014)

Size: 9.15 GB

Romsets emulated: 3369 (includes clones etc..)

Active Sets 3369/3369

  • Parents 710/710
  • Clones 2146/2146
  • Others 508/508
  • BIOS 5/5

Dat File: FB Alpha v0.2.97.30.dat.zip

Neo Geo Only .Dat File: fba-lr-neogeo

lr-fba COMPATIBILITY LIST feel free to contribute to the list.

lr-fba-next

Roms Dir: /home/pi/RetroPie/roms/fba
Binary Dir: /opt/retropie/libretrocores/lr-fba-next
Config Dir: /opt/retropie/configs/fba/retroarch.cfg

MAME Version: FBA 0.2.97.37 which is based on MAME 0.167 (April 2015)

Romsets emulated: 3970 (includes clones etc..)

Active Sets 3970/3970

  • Parents 837/837
  • Clones 2583/2583
  • Others 550/550
  • BIOS 6/6

Dat File: FB Alpha v0.2.97.37.dat.zip

lr-fba-next COMPATIBILITY LIST feel free to contribute to the list.

GnGeo 0.8

Roms Dir: /home/pi/RetroPie/roms/neogeo
Binary Dir: /opt/retropie/emulators/gngeopi/bin
Config Dir: /opt/retropie/configs/neogeo

MAME Version: Based on 0.138 romsets (May 2010)

Romsets emulated: 203

Dat File: pandora_gngeo_084_dat.zip

All clones non-working\mahjong\quiz removed

Romsets emulated: 128

Dat File: pandora_gngeo_084_filtered.zip

GnGeo-Pi COMPATIBILITY LIST feel free to contribute to the list.

List courtesy of Floob