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

EOR

From SnesLab
Revision as of 19:41, 10 August 2024 by Xetheria (talk | contribs) (flip all bits example)
Jump to: navigation, search
Basic Info
Addressing Mode Opcode Length Speed
Immediate 49 2/3 bytes 2 cycles*
Absolute 4D 3 bytes 4 cycles*
Absolute Long 4F 4 bytes 5 cycles*
Direct Page 45 2 bytes 3 cycles*
Direct Page Indirect 52 2 bytes 5 cycles*
Direct Page Indirect Long 47 2 bytes 6 cycles*
Absolute Indexed by X 5D 3 bytes 4 cycles*
Absolute Long Indexed by X 5F 4 bytes 5 cycles*
Absolute Indexed by Y 59 3 bytes 4 cycles*
Direct Page Indexed by X 55 2 bytes 4 cycles*
Direct Page Indexed Indirect by X 41 2 bytes 6 cycles*
Direct Page Indirect Indexed by Y 51 2 bytes 5 cycles*
Direct Page Indirect Long Indexed by Y 57 2 bytes 6 cycles*
Stack Relative 43 2 bytes 4 cycles*
Stack Relative Indirect Indexed by Y 53 2 bytes 7 cycles*
Flags Affected
N V M X D I Z C
N . . . . . Z .

EOR is a 65x instruction that performs a bitwise exclusive or between its operand and the accumulator. The sum is stored in the accumulator. The size of the accumulator determines whether 8 or 16 bits are EORed.

Syntax

EOR #const
EOR addr
EOR long
EOR dp
EOR (dp)
EOR [dp]
EOR addr, X
EOR long, X
EOR addr, Y
EOR dp, X
EOR (dp, X)
EOR (dp), Y
EOR [dp], Y
EOR sr, S
EOR (sr, S), Y

One example usage of EOR is to flip all the bits of the accumulator:[10]

EOR #$FFFF
Cycle Penalties

See Also

External Links

  1. Eyes & Lichty, page 454 on EOR
  2. Labiak, page 141 on EOR
  3. 2.2.4.3 on MCS6500 Manual, page 21 on EOR
  4. Carr, page 259 on EOR
  5. Leventhal, page 3-63 on EOR
  6. snes9x implementation of EOR: https://github.com/snes9xgit/snes9x/blob/master/cpuops.cpp#L533
  7. undisbeliever on EOR: https://undisbeliever.net/snesdev/65816-opcodes.html#eor-exclusive-or-accumulator-with-memory
  8. Pickens, John. http://www.6502.org/tutorials/6502opcodes.html#EOR
  9. Clark, Bruce. http://www.6502.org/tutorials/65c816opcodes.html#6.1.2.1
  10. Carr, page 260