Skip to content

Honor DMAC scratchpad address selectors - #224

Open
GTTeancum wants to merge 1 commit into
ran-j:mainfrom
GTTeancum:fix/dmac-spr-addresses
Open

Honor DMAC scratchpad address selectors#224
GTTeancum wants to merge 1 commit into
ran-j:mainfrom
GTTeancum:fix/dmac-spr-addresses

Conversation

@GTTeancum

Copy link
Copy Markdown

Summary

  • preserve bit 31 as the DMAC SPR selector for MADR and DMAtag ADDR values
  • canonicalize SPR-selected addresses to the 16 KiB scratchpad only when resolving transfer memory
  • cover direct GIF MADR transfers and chained NEXT tags targeting SPR

Why

DMAC addresses use bit 31 to select scratchpad memory on non-SPR channels. Masking the DMAtag address to 31 bits discarded that selector, while raw bit-31 MADR values were treated as ordinary guest aliases. Both cases could source data from RDRAM instead of SPR.

Testing

  • 427/427 ps2x_tests passed (Release)

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