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

Implement register mirroring #1119

Open
wants to merge 1 commit into
base: master
Choose a base branch
from

Conversation

Rosalie241
Copy link
Contributor

This patch is based on the ares PR which implements the same thing: ares-emulator/ares#1344

We also sadly still need bounds checking for some register read/writes.

This also adds a bounds check for RDRAM register read/writes, which, according to n64brew, reads 0 when out-of-bounds:
https://n64brew.dev/wiki/RDRAM#RDRAM_registers

It also mentions the following:

RDRAM registers mirror every 0x40 bytes (16 words). Register numbers 10 to 15 all produce 0 when read. Above 0x200 (register number 128) the Device Type mirrors are replaced with the Row register.

I don't think any game relies on that so that's a TODO for the future.

@Rosalie241 Rosalie241 marked this pull request as ready for review February 9, 2025 13:33
@Rosalie241 Rosalie241 mentioned this pull request Feb 9, 2025
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.

1 participant