Viewing Issue Advanced Details
ID Category [?] Severity [?] Reproducibility Date Submitted Last Update
07894 Interface Minor Always Mar 4, 2021, 20:50 Mar 9, 2021, 14:33
Tester Foxhack View Status Public Platform MAME (Official Binary)
Assigned To Resolution Open OS Windows 10 (64-bit)
Status [?] Confirmed Driver
Version 0.229 Fixed in Version Build 64-bit
Fixed in Git Commit Github Pull Request #
Summary 07894: UI doesn't show missing files/CHDs for clone sets
Description If a parent romset that uses a CHD is missing the CHD, then MAME will say what files are missing. But if you do the same with a clone set that is also missing files, it doesn't say what exact files are missing.
Steps To Reproduce Select Wayne Gretzky's 3D Hockey. In my setup, I have the romset but the CHD is missing. Selecting it in MAME will tell me that required ROM / disk images are missing, and it says the CHD is missing.

Now select Wayne Gretzky's 3D Hockey Fatality Edition (prototype) - it will say that required ROM/disk images are missing, but it won't actually say which ones are missing. It should say "you don't have the wg3dhfe.chd file" but it just... doesn't.

Attempting to run the same drivers from the command line -does- show that you are missing the CHD files.

I tried this with a few other "clones with CHD" games, like the Beatmania sets, and they all appeared to have the same issue.
Additional Information
Github Commit
Regression Version
Affected Sets / Systems
Attached Files
png file icon wg3dherror.png (210,920 bytes) Mar 4, 2021, 20:50 Uploaded by Foxhack
There are no relationship linked to this issue.
User avatar
Mar 5, 2021, 04:24
edited on: Mar 5, 2021, 04:27
Issue confirmed.

Also, the filename in the message is incorrect - ".chd" is missing.

Further, the error is printed to the console and the filename is wrong there too.

So, 3 bugs in one report.
User avatar
Mar 6, 2021, 09:26
This is not a bug. MAME doesn’t itemise missing files if the audit reports the set as not found. We have logic to report clones as not found if you don’t have any files that are part of the clone set but not part of the parent set. The same logic is used for -verifyroms on the command line as well as for the audit when selecting a system from the UI.

Originally this was implemented to discourage PokéROMming and to reduce clutter in the output, but people seem to like the behaviour. In fact, we had a series of bug reports complaining that MAME listed missing files for clone sets that aren’t present. An attempt to suppress them led to some systems incorrectly being reported as not found even if the ROMs were all present, which sadly made it into a release (see MT07410, MT07756 and GitHub #7314).

The lack of the .chd extension on disk images is another thing that’s not really a bug per se. It’s never been included for disk images in listings. Speculating, I’d say it was originally done this way because the CHD format is an implementation detail, and we could conceivably adapt to support different disk image formats. We also don’t include an extension for device/system names because we support a folder, a zip archive, or a 7zip archive.

There’s nothing in this report that isn’t intended behaviour.
User avatar
Mar 6, 2021, 11:30
Is this intended behaviour documented?

If a clone doesn't show what's missing, how is a user to know that they need to refer to the parent for guidance?

If xyz.chd is missing, and the report says that xyz is missing, how would the user know that it's a chd and they should somehow know they have to find xyz.chd instead? What if they were under the impression that a rom called xyz was the one missing? It's isn't being helpful to leave out part of the filename.

Lastly, why do we care about the doings of pokerommers? It isn't our concern.
User avatar
Mar 6, 2021, 13:16
If there are no ROMs specific to the clone missing, they don’t have the clone set at all and need to get it. They don’t need to look at the parent for guidance. In this case, they have no files specific to wg3dhfe, only files from wg3dh. This is treated as the clone set being absent.
User avatar
Mar 6, 2021, 19:29
edited on: Mar 6, 2021, 19:30
"This is treated as the clone set being absent."

I understand the logic. But I'm not sure I agree with the way it's reported. If the entire romset (or in this case, the required CHD that makes up the clone set) is missing, then the UI should specifically say "Dude, this isn't here. You can't run it." The way you worded things in your first post implies that it's not feasible to list the missing files from the clone set, but is it possible to show a different output if required files are missing or if the entire set is missing, since that's two different scenarios?
User avatar
Mar 9, 2021, 14:33
I guess we can change it to show a different message for a “not found” audit result.