Skip to content

Conversation

@abaire
Copy link
Contributor

@abaire abaire commented May 2, 2025

Fixes #326

ESPN NFL Football sets the color surface offset using a RAM address (0x83ba0000) rather than the equivalent VRAM range (0x03ba0000). The game modifies the 0x880 register to disable the associated limit exception similar to what was seen previously in Spongebob.

While we could implement the limit exceptions and handle the 0x880 flag to emulate hardware, it is simpler to allow RAM addresses by masking off the high nibble.

@abaire abaire force-pushed the fix_326_color_offset_using_ram_addr branch from 12c8dac to fdb9ae6 Compare June 3, 2025 19:31
@abaire abaire force-pushed the fix_326_color_offset_using_ram_addr branch 2 times, most recently from 90aeccd to 42c0aa3 Compare June 28, 2025 13:55
@abaire abaire force-pushed the fix_326_color_offset_using_ram_addr branch from 42c0aa3 to cb0b70b Compare July 2, 2025 17:01
@antoniodesousa
Copy link

Hopefully, @mborgerson can take a look at this? Thanks.

@abaire abaire force-pushed the fix_326_color_offset_using_ram_addr branch from cb0b70b to 3c6dd75 Compare October 9, 2025 20:36
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

[Assertion] surface->offset <= dma.limit

2 participants