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 Relative Addressing: Difference between revisions
From SnesLab
(opcode 23) |
(→References: hid archive URL for E&L) |
||
(17 intermediate revisions by the same user not shown) | |||
Line 1: | Line 1: | ||
'''Stack Relative Addressing''' is supported by eight instructions: | |||
* [[ADC]] (opcode 63) | * [[ADC]] (opcode 63) | ||
* [[AND]] (opcode 23) | * [[AND]] (opcode 23) | ||
* [[CMP]] | * [[CMP]] (opcode C3) | ||
* [[EOR]] | * [[EOR]] (opcode 43) | ||
* [[LDA]] | * [[LDA]] (opcode A3) | ||
* [[ORA]] | * [[ORA]] (opcode 03) | ||
* [[SBC]] | * [[SBC]] (opcode E3) | ||
* [[STA]] | * [[STA]] (opcode 83) | ||
They are all two bytes long. | |||
The effective addresses generated by stack relative addressing will always be in [[bank]] 0.<sup>[3]</sup> The effective address is the sum of the [[stack pointer]] and the 8-bit operand byte. | |||
==== Syntax ==== | |||
<pre> | |||
LDA sr, S | |||
</pre> | |||
There is no long version of this addressing mode. | |||
=== See Also === | === See Also === | ||
* [[Stack Addressing]] | |||
* [[Stack Relative Indirect Indexed, Y Addressing]] | * [[Stack Relative Indirect Indexed, Y Addressing]] | ||
=== | === References === | ||
# [[Eyes & Lichty]], [https://archive.org/details/0893037893ProgrammingThe65816/page/418 page 418] | |||
# section 3.5.23 of 65c816 datasheet, https://westerndesigncenter.com/wdc/documentation/w65c816s.pdf | |||
# lbid, section 3.2 | |||
# Clark, Bruce. http://www.6502.org/tutorials/65c816opcodes.html#5.20 | |||
[[Category:Addressing Modes]] | [[Category:Addressing Modes]] | ||
[[Category:65c816 additions]] | [[Category:65c816 additions]] | ||
[[Category:Complex Admodes]] | |||
[[Category:ASM]] | [[Category:ASM]] |
Latest revision as of 17:39, 8 August 2024
Stack Relative Addressing is supported by eight instructions:
- ADC (opcode 63)
- AND (opcode 23)
- CMP (opcode C3)
- EOR (opcode 43)
- LDA (opcode A3)
- ORA (opcode 03)
- SBC (opcode E3)
- STA (opcode 83)
They are all two bytes long. The effective addresses generated by stack relative addressing will always be in bank 0.[3] The effective address is the sum of the stack pointer and the 8-bit operand byte.
Syntax
LDA sr, S
There is no long version of this addressing mode.
See Also
References
- Eyes & Lichty, page 418
- section 3.5.23 of 65c816 datasheet, https://westerndesigncenter.com/wdc/documentation/w65c816s.pdf
- lbid, section 3.2
- Clark, Bruce. http://www.6502.org/tutorials/65c816opcodes.html#5.20