Skip to content
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

Triple Play - Gold Edition (USA).md nothing but a black screen #112

Closed
benderscruffy opened this issue Jun 27, 2024 · 2 comments
Closed
Labels
bug Something isn't working fixed-next-release Fixed on master, will go into next release md Genesis / Mega Drive

Comments

@benderscruffy
Copy link

No description provided.

@jsgroth
Copy link
Owner

jsgroth commented Jun 27, 2024

The only trusted dump of this game is in a rather strange format.

First, it's little-endian instead of big-endian, so it will need to be byteswapped on load. This is easy to detect generically because $100-$104 in the ROM header always contains the ASCII string "SEGA", so if it instead contains "ESAG" then the ROM needs to be byteswapped.

The second and bigger issue is the last 1MB of the 4MB dump is garbage - it's just the byte 0xFF repeated roughly 1 million times. After byteswapping the ROM on load, the game eventually jumps to an address in the $300000-$3FFFFF range and crashes, so it clearly expects there to be something there.

Triple Play 96 seems to have the same issue.

@jsgroth jsgroth added bug Something isn't working md Genesis / Mega Drive labels Jun 28, 2024
jsgroth added a commit that referenced this issue Jul 2, 2024
…at $300000-$3FFFFF, where the game seemingly expects it to be (#112)
@jsgroth
Copy link
Owner

jsgroth commented Jul 2, 2024

The trick with this one is that it only has 3MB of ROM (not sure why the dump is 4MB) but it expects the third MB to be mapped to $300000-$3FFFFF, not $200000-$2FFFFF. $200000-$20FFFF should map to 32KB of SRAM (which is specified in the header, no need to special case).

That plus byteswapping on load fixes both versions of Triple Play.

@jsgroth jsgroth added the fixed-next-release Fixed on master, will go into next release label Jul 2, 2024
@jsgroth jsgroth closed this as completed Sep 16, 2024
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
bug Something isn't working fixed-next-release Fixed on master, will go into next release md Genesis / Mega Drive
Projects
None yet
Development

No branches or pull requests

2 participants