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

From SnesLab
Jump to: navigation, search
((opcode E3/F3))
(→‎Reference: added ref to datasheet)
Line 76: Line 76:


=== Reference ===
=== Reference ===
* [[Eyes & Lichty]] page 401 https://archive.org/details/0893037893ProgrammingThe65816/page/n427
* [[Eyes & Lichty]] page 401, https://archive.org/details/0893037893ProgrammingThe65816/page/n427
* section 3.5.22 of 65c816 datasheet, https://westerndesigncenter.com/wdc/documentation/w65c816s.pdf

Revision as of 16:34, 27 June 2024

There are several types of Stack Addressing:

Absolute:

  • PEA (opcode F4)

Direct Page Indirect:

  • PEI (opcode D4)

Interrupt:

  • BRK (opcode 00)
  • COP (opcode 02)

Program Counter Relative Long:

  • PER (opcode 62)

Pull:

  • PLA (opcode 68)
  • PLB (opcode AB)
  • PLD (opcode 2B)
  • PLP (opcode 28)
  • PLX (opcode FA)
  • PLY (opcode 7A)

Push:

  • PHA (opcode 48)
  • PHB (opcode 8B)
  • PHD (opcode 0B)
  • PHK (opcode 4B)
  • PHP (opcode 08)
  • PHX (opcode DA)
  • PHY (opcode 5A)

RTI:

  • RTI (opcode 40)

RTL:

  • RTL (opcode 6B)

RTS:

  • RTS (opcode 60)

Relative:

  • ADC (opcode 63)
  • AND (opcode 23)
  • CMP (opcode C3)
  • EOR (opcode 43)
  • LDA (opcode A3)
  • ORA (opcode 03)
  • SBC (opcode E3)
  • STA (opcode 83)

Relative Indirect Indexed, Y

  • ADC (opcode 73)
  • AND (opcode 33)
  • CMP (opcode D3)
  • EOR (opcode 53)
  • LDA (opcode B3)
  • ORA (opcode 13)
  • SBC (opcode F3)
  • STA (opcode 93)

Reference