TASEmulators / TASEmulators/BizHawk
Some rom formats have built-in checksums, we should check those
Open
Nobody has claimed this yet.
re: gamedb/FWdb and heuristics
Request: Feature/Enhancement
- Dominant language
- C#
- Stars
- 2.8k
- Forks
- 468
- PR merge metrics
- No merged PRs in 30d
Description
- GBA some old garbage
- when calculated improperly by bad assembler, will be rejected by LLE BIOS (and console), see https://github.com/TASEmulators/BizHawk/issues/2465#issuecomment-720194034
- Genesis some old garbage
- N64 not-a-CRC
- NDS multiple CRC-16s
I believe RetroArch and other casual-focused emus can fix the checksum before passing the rom to the core, in order to prevent accurate-but-unhelpful failures like the GBA one.
Would probably be better to do this as part of #3435.
Contributor guide
First steps
- Read the whole issue, then the project's contributing guide.
- Comment on the issue to say you are picking it up — it saves two people doing the same work.
- Fork the repository and make your change on a branch.
- Open a pull request that references the issue number.
Research direction
The issue identifies GBA, Genesis, N64, and NDS cartridge checksum formats and links to GBATEK, Genesis_ROM_Format.txt, and chksum64.c; start by reading those references and issue #3435. Done means the relevant ROM checksums are checked or corrected before the ROM reaches the core, avoiding failures caused by invalid header values.
Written by the indexing model from the issue text.
Assessment
- Tech stack
- csharp
- Domain
- game-dev
- Issue type
- Feature
- Difficulty
- 4/5
- Estimated time
- 3-5 days
- Activity status
- Stale
- Clarity
- Mostly clear
- Newbie friendliness
- 35/100