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: Difference between revisions

From SnesLab
Jump to: navigation, search
(more nonexistent instructions)
(top of stack ref)
Line 5: Line 5:
In [[emulation mode]] it wraps within page one.<sup>[2]</sup>
In [[emulation mode]] it wraps within page one.<sup>[2]</sup>


The stack grows towards zero, but the most recently pushed byte is nontheless called the top of the stack.  These instructions push things to the stack:
The stack grows towards zero, but the most recently pushed byte is nontheless called the top of the stack.<sup>[4]</sup> These instructions push things to the stack:


* [[PEA]]
* [[PEA]]
Line 43: Line 43:
# Clark, Bruce. http://www.6502.org/tutorials/65c816opcodes.html#5.1.1
# Clark, Bruce. http://www.6502.org/tutorials/65c816opcodes.html#5.1.1
# section 2.11 of 65c816 datasheet: https://www.westerndesigncenter.com/wdc/documentation/w65c816s.pdf
# section 2.11 of 65c816 datasheet: https://www.westerndesigncenter.com/wdc/documentation/w65c816s.pdf
# [[Eyes & Lichty]], [https://archive.org/details/0893037893ProgrammingThe65816/page/33 page 33]


[[Category:ASM]]
[[Category:ASM]]
[[Category:Inherited from 6502]]
[[Category:Inherited from 6502]]
[[Category:Buffers]]
[[Category:Buffers]]

Revision as of 23:51, 16 August 2024

The Stack is a buffer which remembers the state of subroutines that are currently executing.

On the 65c816, the stack is always in bank zero.[3] It can be thousands of bytes deep.[1]

In emulation mode it wraps within page one.[2]

The stack grows towards zero, but the most recently pushed byte is nontheless called the top of the stack.[4] These instructions push things to the stack:

PL* instructions take one cycle more than their PH* counterparts. These instructions pull things from the stack:

Note the lack of PLK. PHS and PLS similarly do not exist, nor do any instructions performing the inverse of PEA, PEI, or PER.

See Also

References

  1. Wilson, Garth. https://wilsonminesco.com/816myths
  2. Clark, Bruce. http://www.6502.org/tutorials/65c816opcodes.html#5.1.1
  3. section 2.11 of 65c816 datasheet: https://www.westerndesigncenter.com/wdc/documentation/w65c816s.pdf
  4. Eyes & Lichty, page 33