-
-
Notifications
You must be signed in to change notification settings - Fork 18
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
nes roms being changed/corrupted #1346
Comments
You are providing a DAT that catalogs headerless ROMs, so Igir is removing the header from files before writing. If you don't want headerless ROMs, you should exclude the DAT with This may happen with any of the ROM headers that Igir supports, though No-Intro only separates headered/headerless Lynx and NES DATs right now.
Please let me know what page(s) might be confusing, I can update them. Other options such as ROM patching can also cause changes to ROMs during writing. |
OK, so this is expected behavior. Fair enough, I'll close this issue. I would expect that enabling patching would change the output, that's the whole point of patching. I didn't see this section about ROM headers, thanks for linking to that. So now my problem is that the "Headered" DAT file isn't matching anything, so nothing is output; only the "Headerless" DAT matches, and that output doesn't work. I guess I'll try that I'm super new to all of this, so sorry for any ignorance on my part. I definitely need to read up some more. |
I think I have my answer. I tried processing ROMs with the FinalBurn Neo DATs and that one matches what I have and doesn't strip headers. So this IS just a side effect of the DAT files I'm using. |
🔒 Inactive issue lockThis issue has been automatically locked since there has not been any recent activity after it was closed. Please open a new issue for related bugs. Comment generated by the GitHub Lock Issues workflow. |
Paste the command
igir copy
--dat "No-Intro/Nintendo - Nintendo Entertainment System*.dat"
--input "/roms/*.nes"
--output "/output"
--dir-dat-name
--temp-dir "/output/tmp"
--cache-path "/output/cache"
--single
--filter-language EN
--filter-region USA,WORLD,EUR,JPN
--prefer-region USA,WORLD,EUR
--prefer-verified
--prefer-good
--prefer-retail
--prefer-revision newer
--reader-threads 10
--writer-threads 6
-v
Describe the bug
I tried a lot of incantations of this command. I also tried it both with extracted
.nes
files and with the GoodMerge 7z sources. The results are always the same, the output roms are modified and do not load in retroarch. Here is one example, but this happens with all my NES ROMs.Input SHA1:
2e9897846e54a4a9865e87de7517c6710bdec255 roms/Excitebike (JU) [!].nes
Output SHA1:
ba8d9227a0d02b62ee6cb9e691fa5a5134c303a8 output/Nintendo - Nintendo Entertainment System (Headerless)/Excitebike (Japan, USA) (En).nes
The output of the
file
command in linux also indicates that the ouput is no longer an NES ROM.$ file 'output/Nintendo - Nintendo Entertainment System (Headerless)/Excitebike (Japan, USA) (En).nes' output/Nintendo - Nintendo Entertainment System (Headerless)/Excitebike (Japan, USA) (En).nes: data
I originally thought it was related to an issue with 7z extraction, which is why I extracted the files myself, but the result was the same. This also only seems to be happening with NES roms, all the other system ROMs I tried worked as expected.
Of note I think; while I was writing up this issue, I noticed that while the output does not match the source, the SHA1 of the output does match what's in the "Headerless" DAT file (neither match what's in the "Headered" DAT file). Maybe there is some change taking place because of the DAT file?
Expected behavior
copy
should just copy the ROM without changing it. That's what the docs seem to indicate too.Debug logs
DAT(s) used
igir version
tried 3.0.0 and 2.11.0
Node.js version
N/A
Operating system
ubuntu 24.10
Additional context
I tried running this with just one of the DAT files at a time, only the Headerless one matches the ROMs.
The text was updated successfully, but these errors were encountered: