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

Stack Pointer

From SnesLab
Revision as of 04:07, 9 August 2024 by Xetheria (talk | contribs) (what pushing/pulling does)
Jump to: navigation, search

The Stack Pointer (SP) on the SPC700 is 16-bit, but the upper byte is fixed by the hardware to be 0x01.

On the 65c816, the only two instructions that modify the stack pointer (S) directly are TCS and TXS.[4] It is only fixed to be in page one in emulation mode on the '816.

1FFh is a common value to initialize the stack pointer to.

Pushing things onto the stack decrements the stack pointer and pulling things increments it.

See Also

References

  1. subparagraph 8.1.5 of page 3-8-4 of Book I of the official Super Nintendo development manual
  2. diversified activities: page 3-8-5 of Book I, lbid.
  3. Eyes & Lichty, page 31
  4. Eyes & Lichty, page 511 on TCS