Please do not post a support request without first reading and following the advice in

Rom Filtering:

  • Hi All,

    Now i know there are lots of programs out there to manage ROMs, but none of them did exactly what I wanted so I knocked this up last night to sort out the ROMs on my arcade cabinet. I created this due to the insane mess that my ROM directory appeared to be in once I had sourced the relevant ROM sets for my RetroPie based arcade emulator.

    It is pretty simple to use and will work with any folder of data. I needed this to work with not just MAME but Genesis, Snes, Nes and others! The idea is simple, you select the "source" folder (that is where the data will be coming from), and then a "Sync" folder which will be the "destination" or rather the "synchronised" folder.

    For Mame/NeoGeo you can select an optional XML file which represents the database, this will add extra information to the program so you can sort by category, copy samples and see extra ROM info.


    • Select a source ROM folder, for example "D:\Games\Arcade_FullRomSets\Mame_0.78\roms"
    • Select the sync folder, for example "F:\retropie-mount\Roms\arcade
    • [optional] Select a database file, for example "D:\Games\Arcade_FullRomSets\Mame_0.78\mame2003-lr-lite.xml"

    Then hit "-Build List-", it will generate two lists of ROMs

    • The left list are the ROMs in the source directory that you don't want in the sync folder

    • The right list are the ROMs that you want in the sync folder.

      • If you have supplied a valid XML file, you can visually filter these with the category checkboxes
      • You can also search in the box to easily find roms that you are interested in
      • Use the arrows in the middle to move ROMs in and out of the sync folder.
    • N.B. The source folder is never changed, your ROMs are completely safe here and never touched.

      • The sync folder IS changed, when you click sync:
        • ROMS are copied to the folder, AND
        • ROMs in the folder that are NOT in the sync list will be deleted from the sync folder!
      • The idea being that it is super easy to chop and change your ROM directory.
    • Hit "Sync" to start the synchronisation process.


    I generally create and save a setup file for each emulator so I can keep track of all the different ROMS on different platforms. I also have a folder which has just my sync folders inside it, setup in the format of retropie, then I can simply copy them over as and when with ease. I've also got an SFTP drive setup to my Pi which means I can simply run this program and change the ROMS in place on the Pi easily.

    It is windows only, c#, probably uses .Net framework, Get it from, let me know what you think or if it is missing anything!


  • And a few screenshots so you know what you are getting:

    General setup of ROMs.

    Easy filtering by name in the search box to find ROMS and sync:


    The "Load/Save selection from file" buttons simply automatically put roms in the text file into the sync list (or save out a file). IT is simply a text file with the raw rom name on each file. This is useful for sharing sets.

  • That looks like a welcome addition to the toolset. Thank you!

  • @iainjh No problem!

    I've also made some tweaks to AmiBerry so the keyboard can open up the menu when using an iPac controller! I'll see if I can push it through git too as I have some other amiga tweaks for retropie.

Contributions to the project are always appreciated, so if you would like to support us with a donation you can do so here.

Hosting provided by Mythic-Beasts. See the Hosting Information page for more information.