Arqade is a question and answer site for passionate videogamers on all platforms. Join them; it only takes a minute:

Sign up
Here's how it works:
  1. Anybody can ask a question
  2. Anybody can answer
  3. The best answers are voted up and rise to the top

I need a vanilla ASCII, tab-separated list of the arcade games which I have in my "roms" directory of MAME, with at least the following entries: game name, year, manufacturer. Also good would be to have genre. Can I get this with MAME using command line parameters? I know it has the year, manufacturer.... information stored, but how do I retrieve it without painstakingly going manually through each game?

share|improve this question
off-topic, because not about playing games, but of meta-game nature. – DrFish Sep 17 '13 at 11:38
That a moderator answered this in 2012 would seem to indicate that this is not off topic. – SevenSidedDie Sep 17 '13 at 23:27
This seems to be about how to use an emulator, which seems to be on-topic as per the Arqade Meta post, What's the official stance on console emulation? – galacticninja Sep 18 '13 at 10:16

The game files themselves only contain the ROM data from the arcade cabinet - they don't contain any information about the game itself. That information is stored in XML files (in my copy of MAME, these are stored in the "hash" directory) that ship with MAME.

MAME has a command line option "-listxml" which can be used to dump this XML list to the command line, and you can filter it, but this might get somewhat tedious if your library is large.

There are a couple of listing tools available that can list and export lists of ROMs along with the data you're looking for. There may also be MAME front-ends that have this functionality, although it's not a primary feature of most front ends, so short of downloading them all and testing them, I can't give a concrete recommendation.

Finally, if you're not afraid to do a little script work yourself, there are a million ways to just access the XML file directly and extract the elements you need. Perhaps this StackExchange question about parsing XML files from the command line would spark some creative ideas. You'd have to list the rom directory, and then parse/filter the XML entries to only print the relevant information for the files you actually have available.

share|improve this answer

I think you have to parse the output of -verifyroms

then pass each working romset name to -listxml for full info or -listfull for just name/description.

share|improve this answer

Your Answer


By posting your answer, you agree to the privacy policy and terms of service.

Not the answer you're looking for? Browse other questions tagged or ask your own question.