MAME Path Handling¶
MAME has a specific order it uses when checking for user files such as ROM sets and cheat files.
Order of Path Loading¶
Let's use an example of the cheat file for After Burner 2 for Sega Genesis/MegaDrive (aburner2 in the megadrive softlist), and your cheatpath is set to "cheat" (as per the default) -- this is how MAME will search for that cheat file:
cheat/megadriv/aburner2.xmlcheat/megadriv.zip->aburner2.xmlNotice that it checks for a .ZIP file first before a .7Z file.cheat/megadriv.zip-><arbitrary path>/aburner2.xmlIt will look for the first (if any)aburner2.xmlfile it can find inside that zip, no matter what the path is.cheat.zip->megadriv/aburner2.xmlNow it is specifically looking for the file and folder combination, but inside the cheat.zip file.cheat.zip-><arbitrary path>/megadriv/aburner2.xmlLike before, except looking for the first (if any)aburner2.xmlinside amegadrivfolder inside the zip.cheat/megadriv.7z->aburner2.xmlNow we start checking 7ZIP files.cheat/megadriv.7z-><arbitrary path>/aburner2.xmlcheat.7z->megadriv/aburner2.xmlcheat.7z-><arbitrary path>/megadriv/aburner2.xmlSimilar to zip, except now 7ZIP files.
[todo: ROM set loading is slightly more complicated, adding CRC. Get that documented in the next day or two.]