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

Absolute Addressing

From SnesLab
Revision as of 19:11, 8 August 2024 by Xetheria (talk | contribs) (→‎References: hid archive URL for E&L)
Jump to: navigation, search

Absolute addressing wraps within bank 0.[4] The effective addresses generated are 16-bit.

Syntax

LDA addr

Twenty six instructions support absolute addressing:

  • ADC (opcode 6D)
  • AND (opcode 2D)
  • ASL (opcode 0E)
  • BIT (opcode 2C)
  • CMP (opcode CD)
  • CPX (opcode EC)
  • CPY (opcode CC)
  • DEC (opcode CE)
  • EOR (opcode 4D)
  • INC (opcode EE)
  • LDA (opcode AD)
  • LDX (opcode AE)
  • LDY (opcode AC)
  • LSR (opcode 4E)
  • ORA (opcode 0D)
  • ROL (opcode 2E)
  • ROR (opcode 6E)
  • SBC (opcode ED)
  • STA (opcode 8D)
  • STX (opcode 8E)
  • STY (opcode 8C)
  • STZ (opcode 9C)
  • TRB (opcode 1C)
  • TSB (opcode 0C)
  • JMP (opcode 4C)
  • JSR (opcode 20)

On the SPC700, operands which use absolute addressing are prefixed with an exclamation point (!).

The Leventhal 6502 textbook also refers to absolute addressing as "direct", but this usage is discouraged on the 65c816 to avoid confusion with direct page addressing.

There is no syntax to differentiate between absolute and relative addressing.[5]

See Also

References

  1. Eyes & Lichty, page 379
  2. lbid, page 111
  3. section 3.5.1 of 65c816 datasheet, https://westerndesigncenter.com/wdc/documentation/w65c816s.pdf
  4. Clark, Bruce. http://www.6502.org/tutorials/65c816opcodes.html#5.1.2
  5. lbid, http://www.6502.org/tutorials/65c816opcodes.html#6.8.1