1
clrmame Discussion / rebuilder 0.09 over MAME 0.268 ROMset (split) by ClrMAMEPro 4.048d
« on: 07 August 2024, 04:15 »
Hi folks, long time no see. Life's keeping me busy, so I can't find enough time to follow the game emulating scene like the old days, but I try to at least keep my MAME ROM collection complete. That's a compulsion many of us have, and I was never immune to it. Since R. Belmont said a long time ago "MAMEDev can waste your disk space with impunity"... we who suffer from ROM Collection Syndrome can only accept.
Speaking of keeping my collection complete, I must extend my deepest thanks to Roman. His tool ClrMAMEPro has been invaluable since its creation, almost 25 years ago. Today I made a donation, so beer's on me, my friend. Greetings from Brazil.
Now, onto business: I have a complete (minus software lists) MAME 0.268 ROMset in split form. I like the idea of a full merged ROMset, but ClrMAMEPro 4.048d can't do it the way I want, with clone subfolders inside their parents' zipfiles. In merge mode, it will have some clone folders inside a parent zipfile, but not all. With the release of new tools, I decided to try them out.
First thing I did was to copy all ROMsets and CHDs to another drive, so I could preserve what I already had and make comparisons between results. I ran rebuilder 0.09 using the 0.268 split ROMset sanctioned by ClrMAMEPro and it took about 4 hours to complete. The total numer of zipfiles reduced from 41,776 to 14,766 (64.7% less files). It became faster to navigate within a folder with a lot less files (of course, total size remained approximately the same).
But I had my doubts if MAME would agree with the output generated by the new rebuilder. I decided to have MAME verify both collections and them compare results. I got -listxml, filtered all <machine name=> inside of it, which amounts to 47,016 items. Being curious, I discovered that Roman's tools fix the -listxml output, replacing commas by periods in some machines' refresh rates (typos in the source). Then I made a batch file where MAME would verify each "machine" and output verify results to text files of same names. Like this:
After MAME finished verifying both collections, I had 47,016 txt files on each drive. 5,323 of them had 0 bytes; that's because these refer to "machines" without ROMS, so MAME couldn't verify them. 575 ROMsets didn't exist as zipfiles in my split ROM collection; I assume it's because they are clones whose ROMs match exactly the same as their parents (like kizuna4p is a clone of kizuna, but kizuna4p.zip isn't created by ClrMAMEPro). The remaining 41,118 txt files were all OK in both drives. That's great!
Side note: I am puzzled as to why some machines which don't have ROMs receive OK while others don't. For example, mame ac97 -listroms shows [No ROMs required for device "ac97"], same with mame a2600 -listroms [No ROMs required for driver "a2600"]. But when verified, MAME says a2600 is OK (best available) while for ac97 it says it has no ROMs. Maybe Roman can explain this apparent double standard? I guess it's because one is a device (ac97) and the other is a driver (a2600), but still.
Continuing, the new rebuilder inserted 13 files marked as NO GOOD DUMP KNOWN inside 11 zipfiles. I manually identified and copied them into my previously existing collection, then had ClrMAMEPro performing its check. It warned me about those 13 files being unneeded:
Funny thing is, these files are considered good dumps in other sets (clones or parents), but not in these particular sets. I wish there was a way for ClrMAMEPro not see them as unneded and automatically keep them, since they are (most likely) good dumps. Maybe just marked wrong in the source?
Then I launched scanner 0.02.1 to see how it would react to the new, compact collection created by rebuilder 0.09. It warned me about misplaced and wrongly named CHD disks, so I let it fix these issues. Right now, it's stuck at 48% for almost 10 minutes. I find it strange that the number of folders containing CHDs is still the same (947 from the split collection).
Speaking of keeping my collection complete, I must extend my deepest thanks to Roman. His tool ClrMAMEPro has been invaluable since its creation, almost 25 years ago. Today I made a donation, so beer's on me, my friend. Greetings from Brazil.
Now, onto business: I have a complete (minus software lists) MAME 0.268 ROMset in split form. I like the idea of a full merged ROMset, but ClrMAMEPro 4.048d can't do it the way I want, with clone subfolders inside their parents' zipfiles. In merge mode, it will have some clone folders inside a parent zipfile, but not all. With the release of new tools, I decided to try them out.
First thing I did was to copy all ROMsets and CHDs to another drive, so I could preserve what I already had and make comparisons between results. I ran rebuilder 0.09 using the 0.268 split ROMset sanctioned by ClrMAMEPro and it took about 4 hours to complete. The total numer of zipfiles reduced from 41,776 to 14,766 (64.7% less files). It became faster to navigate within a folder with a lot less files (of course, total size remained approximately the same).
But I had my doubts if MAME would agree with the output generated by the new rebuilder. I decided to have MAME verify both collections and them compare results. I got -listxml, filtered all <machine name=> inside of it, which amounts to 47,016 items. Being curious, I discovered that Roman's tools fix the -listxml output, replacing commas by periods in some machines' refresh rates (typos in the source). Then I made a batch file where MAME would verify each "machine" and output verify results to text files of same names. Like this:
Quote
mame 005 -verifyroms >005.txt
mame 09825_67907 -verifyroms >09825_67907.txt
mame 100lions -verifyroms >100lions.txt
After MAME finished verifying both collections, I had 47,016 txt files on each drive. 5,323 of them had 0 bytes; that's because these refer to "machines" without ROMS, so MAME couldn't verify them. 575 ROMsets didn't exist as zipfiles in my split ROM collection; I assume it's because they are clones whose ROMs match exactly the same as their parents (like kizuna4p is a clone of kizuna, but kizuna4p.zip isn't created by ClrMAMEPro). The remaining 41,118 txt files were all OK in both drives. That's great!
Side note: I am puzzled as to why some machines which don't have ROMs receive OK while others don't. For example, mame ac97 -listroms shows [No ROMs required for device "ac97"], same with mame a2600 -listroms [No ROMs required for driver "a2600"]. But when verified, MAME says a2600 is OK (best available) while for ac97 it says it has no ROMs. Maybe Roman can explain this apparent double standard? I guess it's because one is a device (ac97) and the other is a driver (a2600), but still.
Continuing, the new rebuilder inserted 13 files marked as NO GOOD DUMP KNOWN inside 11 zipfiles. I manually identified and copied them into my previously existing collection, then had ClrMAMEPro performing its check. It warned me about those 13 files being unneeded:
Quote
Link (Korean bootleg of Atari Tetris) [folder: link - parent: atetris - size: 132kb]
unneeded file: D:\mame\roms\link\82s123.bin [not fixed]
Cuore 1 (Italian, set 6) [folder: cuoreunoe - parent: cuoreuno - size: 99kb]
unneeded file: D:\mame\roms\cuoreunoe\palce16v8h-25pc-4.u5 [not fixed]
Cuore 1 (Italian, set 7) [folder: cuoreunof - parent: cuoreuno - size: 99kb]
unneeded file: D:\mame\roms\cuoreunof\palce16v8h-25pc-4.u5 [not fixed]
Diana Bifuca (v9.25) [folder: dibifuca - size: 134kb]
unneeded file: D:\mame\roms\dibifuca\24lc16b.ic8 [not fixed]
Diana Bifuca (v7.43) [folder: dibif743 - parent: dibifuca - size: 134kb]
unneeded file: D:\mame\roms\dibif743\24lc16b.ic8 [not fixed]
Desert Patrol [folder: dpatrol - size: 3kb]
unneeded file: D:\mame\roms\dpatrol\bd2.h7 [not fixed]
Driving Force (Galaxian conversion, Seatongrove UK, E-0237) [folder: drivfrcsga - parent: drivfrcp - size: 32kb]
unneeded file: D:\mame\roms\drivfrcsga\82s123-1.bin [not fixed]
unneeded file: D:\mame\roms\drivfrcsga\82s123-2.bin [not fixed]
Jolly Card (Italian, encrypted bootleg, set 2) [folder: jolycdic - parent: jollycrd - size: 195kb]
unneeded file: D:\mame\roms\jolycdic\gal16v8b.bin [not fixed]
Jolly Card (Italian, encrypted bootleg, set 3) [folder: jolycdii - parent: jollycrd - size: 100kb]
unneeded file: D:\mame\roms\jolycdii\gal16v8b.bin [not fixed]
Lup Lup Puzzle / Zhuan Zhuan Puzzle (version 3.0 / 990128) [folder: luplup - parent: suplup - size: 9mb]
unneeded file: D:\mame\roms\luplup\gal22v10b.gal1 [not fixed]
Hipoly (bootleg of Hyper Olympic) [folder: hipoly - parent: trackfld - size: 137kb]
unneeded file: D:\mame\roms\hipoly\pal16l8.e4 [not fixed]
unneeded file: D:\mame\roms\hipoly\pal16l8.e6 [not fixed]
Funny thing is, these files are considered good dumps in other sets (clones or parents), but not in these particular sets. I wish there was a way for ClrMAMEPro not see them as unneded and automatically keep them, since they are (most likely) good dumps. Maybe just marked wrong in the source?
Then I launched scanner 0.02.1 to see how it would react to the new, compact collection created by rebuilder 0.09. It warned me about misplaced and wrongly named CHD disks, so I let it fix these issues. Right now, it's stuck at 48% for almost 10 minutes. I find it strange that the number of folders containing CHDs is still the same (947 from the split collection).