I've been fighting this for like the last year, trying to figure out if it was my fault, the roms fault, etc... but I'm certain I know what's going on now - so this is my attempt to explain it..
There is a game for the fm-towns and pc-98 called 'Pro Student G' - on the FM-TOWNS system, it had a secondary re-release with a slightly different disc.
On the PC-98, *ONLY* the re-release was ever made available...
Mame relates the original release as the 'parent' and the re-release as the 'child' on FM-TOWNS....
However, since there is no original release on PC-98, the re-release is the 'parent'.
clrMame seems to have a huge problem with this, considering they're both the same SHA/CRC. So it SEEMS to be looking for a parent that doesn't exist, and gives errors about how the file is not right over and over. Sometimes I can copy files around until it fools the system into going 'oh yeah', found it.... other times not.
But my guess on what is going on here - the engine builds from the file up, and with the crc having different 'parents', it gets confused and looks for phantom files.
Not sure if I can suggest a good fix... I have considered writing a rom handler as well, but I was considering going 'top down' and building a list of needed files first, and then adding the file hashes to that list, and then building the zips that way. It would reduce the number of times it scans a zip to once (which would be nice for when there are multiple sets in a single zip), but it probably would require a sqllite database or something to hold the relationships, as it may be such a large ram requirement, most people couldn't use it. Not sure. You've created one, so you would know better than I.
Anyway, am willing to provide logs or whatever if needed.
Rodimus