We've just updated MediaWiki and its underlying software. If anything doesn't look or work quite right, please mention it to us. --RanAS

Uppermost Page: Difference between revisions

From SnesLab
Jump to: navigation, search
(IPL lives here)
(underlying RAM)
 
(2 intermediate revisions by the same user not shown)
Line 5: Line 5:
Both [[TCALL]] and [[PCALL]] utilize it.
Both [[TCALL]] and [[PCALL]] utilize it.


The 64-byte [[SPC700/IPL ROM]] lives in the uppermost page.
The 64-byte [[SPC700/IPL ROM]] lives in the uppermost page at FFC0h.<sup>[2]</sup>  But, reading this 64-byte region only returns ROM data when bit 7 of the CONTROL register (00F1h) is set.  If bit 7 is clear, then the IPL ROM is currently unmapped, revealing 64 bytes of normal ARAM underneath which will be mapped and read instead.  Writes to this 64 byte region always affect the underlying RAM even if CONTROL's bit 7 is set.


=== See Also ===
=== See Also ===
Line 11: Line 11:
* [[Direct page]]
* [[Direct page]]


=== Reference ===
=== References ===
# [https://archive.org/details/SNESDevManual/book1/page/n226 Appendix C-1 of Book I] of the official Super Nintendo development manual
# [https://archive.org/details/SNESDevManual/book1/page/n226 Appendix C-1 of Book I] of the official Super Nintendo development manual
# [[fullsnes]]


[[Category:ASM]]
[[Category:ASM]]
[[Category:SPC700]]
[[Category:SPC700]]
[[Category:Official Jargon]]
[[Category:Official Jargon]]

Latest revision as of 11:16, 20 September 2024

The Uppermost Page is the contiguous region of 256 bytes in ARAM with the highest possible address, located at $FF00. It/offsets within it are abbreviated "upage."[1]

uppermost page.png

Both TCALL and PCALL utilize it.

The 64-byte SPC700/IPL ROM lives in the uppermost page at FFC0h.[2] But, reading this 64-byte region only returns ROM data when bit 7 of the CONTROL register (00F1h) is set. If bit 7 is clear, then the IPL ROM is currently unmapped, revealing 64 bytes of normal ARAM underneath which will be mapped and read instead. Writes to this 64 byte region always affect the underlying RAM even if CONTROL's bit 7 is set.

See Also

References

  1. Appendix C-1 of Book I of the official Super Nintendo development manual
  2. fullsnes