Repository navigation
Conversation
Many CDI images have two data tracks: track 1 has no IP.BIN, and track 2 holds it at the disc base FAD. rcheevos asks for track 3, which doesn't exist, then for the first data track, and reads track 1. The hash fails with "Not a Dreamcast CD" and RetroAchievements doesn't load. For track 3 and the first data track, return the data track that contains Disc::GetBaseFAD(), the same base reios and IsoFs use to boot, and start reading it at the base FAD. GD-ROMs are unchanged, since their base is track 3 at FAD 45150. Tested by hashing 66 CDIs and 3 CHDs with the old and new readers: - 39 CDIs that failed now hash, including Crazy Taxi, Jet Grind Radio, Shenmue and 102 Dalmatians. - Different rips of the same game get the same hash. - The 27 CDIs and 3 CHDs that already hashed are unchanged. Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment
Add this suggestion to a batch that can be applied as a single commit.This suggestion is invalid because no changes were made to the code.Suggestions cannot be applied while the pull request is closed.Suggestions cannot be applied while viewing a subset of changes.Only one suggestion per line can be applied in a batch.Add this suggestion to a batch that can be applied as a single commit.Applying suggestions on deleted lines is not supported.You must change the existing code in this line in order to create a valid suggestion.Outdated suggestions cannot be applied.This suggestion has been applied or marked resolved.Suggestions cannot be applied from pending reviews.Suggestions cannot be applied on multi-line comments.Suggestions cannot be applied while the pull request is queued to merge.Suggestion cannot be applied right now. Please check back later.
Many CDI images have two data tracks: track 1 has no IP.BIN, and track 2
holds it at the disc base FAD. rcheevos asks for track 3, which doesn't
exist, then for the first data track, and reads track 1. The hash fails
with "Not a Dreamcast CD" and RetroAchievements doesn't load.
For track 3 and the first data track, return the data track that
contains Disc::GetBaseFAD(), the same base reios and IsoFs use to boot,
and start reading it at the base FAD. GD-ROMs are unchanged, since their
base is track 3 at FAD 45150.
Tested by hashing 66 CDIs and 3 CHDs with the old and new readers:
Shenmue and 102 Dalmatians.
Testing: hashed with a host harness linking flycast's own disc readers and rcheevos (results above). RetroAchievements server recognition of the new hashes is not yet confirmed in-app.
🤖 Generated with Claude Code