romcenter wrote:
Lynx.dll should be good (
posted here)
Yes it is, with 1 exception. See reply on that thread.
romcenter wrote:
fds also, by using arcade.dll plugin.
Yes, ok too, but now at least 7 entries are not recognized. The problem is in dumps (this is not RC-related). The following 7 still have a 16 bytes FDS header (it is not the one in your image, I think that's part of the actual data), for the rest it is removed. The DAT lists size and hashes for header-removed dumps consistently. That's why the CMPro header is probably supplied, in case user has dumps with 16 byte header they get properly recognized.
So nes.dll is required after all.
Code:
Disk Hacker II - Copy Plus 3 (Japan) (Unl)
Donkey Kong (Japan) (Disk Writer)
Donkey Kong Jr. (Japan) (Disk Writer)
Karate Champ (Japan)
Knight Move (Japan)
Nazoraa Land Dai 2 Gou (Japan) (Nazo Magazine Disk)
Wakusei Aton Gaiden (Japan) (National Tax Agency Demo)
romcenter wrote:
About nes, we have a problem here.
nes.dll can identify iNES, UNIF, Pasofami, FFE, FDS and FAM format.
It means a final_fantasy rom will be identified as a final fantasy game, no matter the file format (using header-skipping and byte swapping if needed).
Then, the extension is identified from the file format. Ines format should get a .nes extension, the unif should have .unf etc...
The p/c nes file (xml) have the '.nes' format hardcoded. So, what should happens if you get a unf final_fantasy ? It is identified as a final fantasy, because of header skipping, but then the .nes format is used because it is part of the rom name in the dat ?
This dat must be used with a very basic nes-only identifier plugin. All other format will be rejected as unknown. You will identify 2550 roms (2550 games in nes format).
A dat without extension using the full features nes.dll could identify 15300 files (2550 games in 6 file formats)
Do you see what I mean ?

Yes I understand what you mean. Your plugin allows to validate user files against DAT hashes even when they are in a different format. This is good, because this saves the user the trouble of searching falsely missing files.
However our point of view is that we expect the user files to be in a *specific* format, because we think that it is the correct one.
I've checked NI NES XML DAT using "nes.dll". All files are recognized, but there is the double extension problem (.nes.nes) On a side note to NES maintainer the following entries are recognized as ".pas":
Code:
[BIOS] Game Master Kid (Unknown) (Proto)
Field Combat (Japan)
Futebol (Brazil) (Unl)
Galaxian (Japan)
Game Master Kid (Unknown) (Proto) (RAM)
Hidden Chinese Chess - An Qi (Asia) (NTSC) (Unl)
Othello (Australia) (Unl)
Prince of Persia (Spain)
Sidewinder (Australia) (Unl)
So how to solve this extension conflict for the XML DAT? I can't really blame current RC plugin behaviour, trying to determine actual format and reporting correct extension for user files, this is technically correct, user friendly and useful indeed.
How about an option under "Preferences" allowing to enable/disable "Use Smart Filename Extensions" for DATs using plugins? The user could enable it to check whether his files have expected format and disable it when renaming.