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 Indirect Indexed, Y Addressing: Difference between revisions
From SnesLab
(where indirect address lives) |
(bolded effective/indirect addresses) |
||
Line 12: | Line 12: | ||
They are all two bytes long. | They are all two bytes long. | ||
The indirect address lives on the [[stack]] at sum of the [[stack pointer]] and the 8-bit operand. | The '''indirect address''' lives on the [[stack]] at sum of the [[stack pointer]] and the 8-bit operand. | ||
The effective address is generated by concatenating the [[data bank register]] to the indirect address, and then adding the [[Y index register]] to the 24-bit sum. | The '''effective address''' is generated by concatenating the [[data bank register]] to the indirect address, and then adding the [[Y index register]] to the 24-bit sum. | ||
==== Syntax ==== | ==== Syntax ==== |
Revision as of 05:22, 24 July 2024
Stack Relative Indirect Indexed, Y Addressing is supported by eight instructions:
- ADC (opcode 73)
- AND (opcode 33)
- CMP (opcode D3)
- EOR (opcode 53)
- LDA (opcode B3)
- ORA (opcode 13)
- SBC (opcode F3)
- STA (opcode 93)
They are all two bytes long.
The indirect address lives on the stack at sum of the stack pointer and the 8-bit operand.
The effective address is generated by concatenating the data bank register to the indirect address, and then adding the Y index register to the 24-bit sum.
Syntax
LDA (sr, S), Y
See Also
References
- Eyes & Lichty page 419, https://archive.org/details/0893037893ProgrammingThe65816/page/419
- section 3.5.24 of 65c816 datasheet, https://westerndesigncenter.com/wdc/documentation/w65c816s.pdf
- Clark, Bruce. http://www.6502.org/tutorials/65c816opcodes.html#5.21