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

n64: support ROMs bigger than 63.9375 MiB #1354

Merged
merged 1 commit into from
Dec 28, 2023

Conversation

rasky
Copy link
Collaborator

@rasky rasky commented Dec 23, 2023

Currently, the n64 core is limited to ROMs whose size is 63.9375 MiB (also known as 64 MiB - 64 KiB). The reason is twofold: first, only 64 MiB are actually mapped in the PI bus; second, the last 64 KiB are shadowed by the ISViewer debugging device.

ISViewer addresses sit in the last 64 KiB of the 64th MiB, so when the ROM is larger than that (for instance, it is exactly 64 MiB), we should simply disable ISViewer. In the long run, there will be a better debugging solution which doesn't sit in the PI address space anyway.

Moreover, N64 supports basically ROM of unlimited size, there is no 64 MiB limit. This commit also allows that by simply mapping the whole ROM into the PI address bus, whatever the actual size is.

Currently, the n64 core is limited to ROMs whose size is 63.9375 MiB
(also known as 64 MiB - 64 KiB). The reason is twofold: first, only
64 MiB are actually mapped in the PI bus; second, the last 64 KiB
are shadowed by the ISViewer debugging device.

ISViewer addresses sit in the last 64 KiB of the 64th MiB, so when
the ROM is larger than that (for instance, it is exactly 64 MiB), we
should simply disable ISViewer. In the long run, there will be a better
debugging solution which doesn't sit in the PI address space anyway.

Moreover, N64 supports basically ROM of unlimited size, there is no
64 MiB limit. This commit also allows that by simply mapping the whole
ROM into the PI address bus, whatever the actual size is.
@LukeUsher LukeUsher merged commit 1478637 into ares-emulator:master Dec 28, 2023
9 checks passed
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Development

Successfully merging this pull request may close these issues.

2 participants