MOS 6502 Instruction Set

00BRK implORA X,ind??? ---??? ---??? ---ORA zpgASL zpg??? ---PHP implORA #ASL A??? ---??? ---ORA absASL abs??? ---
01BPL relORA ind,Y??? ---??? ---??? ---ORA zpg,XASL zpg,X??? ---CLC implORA abs,Y??? ---??? ---??? ---ORA abs,XASL abs,X??? ---
02JSR absAND X,ind??? ---??? ---BIT zpgAND zpgROL zpg??? ---PLP implAND #ROL A??? ---BIT absAND absROL abs??? ---
03BMI relAND ind,Y??? ---??? ---??? ---AND zpg,XROL zpg,X??? ---SEC implAND abs,Y??? ---??? ---??? ---AND abs,XROL abs,X??? ---
04RTI implEOR X,ind??? ---??? ---??? ---EOR zpgLSR zpg??? ---PHA implEOR #LSR A??? ---JMP absEOR absLSR abs??? ---
05BVC relEOR ind,Y??? ---??? ---??? ---EOR zpg,XLSR zpg,X??? ---CLI implEOR abs,Y??? ---??? ---??? ---EOR abs,XLSR abs,X??? ---
06RTS implADC X,ind??? ---??? ---??? ---ADC zpgROR zpg??? ---PLA implADC #ROR A??? ---JMP indADC absROR abs??? ---
07BVS relADC ind,Y??? ---??? ---??? ---ADC zpg,XROR zpg,X??? ---SEI implADC abs,Y??? ---??? ---??? ---ADC abs,XROR abs,X??? ---
08??? ---STA X,ind??? ---??? ---STY zpgSTA zpgSTX zpg??? ---DEY impl??? ---TXA impl??? ---STY absSTA absSTX abs??? ---
09BCC relSTA ind,Y??? ---??? ---STY zpg,XSTA zpg,XSTX zpg,Y??? ---TYA implSTA abs,YTXS impl??? ---??? ---STA abs,X??? ---??? ---
0ALDY #LDA X,indLDX #??? ---LDY zpgLDA zpgLDX zpg??? ---TAY implLDA #TAX impl??? ---LDY absLDA absLDX abs??? ---
0BBCS relLDA ind,Y??? ---??? ---LDY zpg,XLDA zpg,XLDX zpg,Y??? ---CLV implLDA abs,YTSX impl??? ---LDY abs,XLDA abs,XLDX abs,Y??? ---
0CCPY #CMP X,ind??? ---??? ---CPY zpgCMP zpgDEC zpg??? ---INY implCMP #DEX impl??? ---CPY absCMP absDEC abs??? ---
0DBNE relCMP ind,Y??? ---??? ---??? ---CMP zpg,XDEC zpg,X??? ---CLD implCMP abs,Y??? ---??? ---??? ---CMP abs,XDEC abs,X??? ---
0ECPX #SBC X,ind??? ---??? ---CPX zpgSBC zpgINC zpg??? ---INX implSBC #NOP impl??? ---CPX absSBC absINC abs??? ---
0FBEQ relSBC ind,Y??? ---??? ---??? ---SBC zpg,XINC zpg,X??? ---SED implSBC abs,Y??? ---??? ---??? ---SBC abs,XINC abs,X??? ---


Address Modes:

A....Accumulator OPC A operand is AC
abs....absolute OPC $HHLL operand is address $HHLL
abs,X....absolute, X-indexed OPC $HHLL,X operand is address incremented by X with carry
abs,Y....absolute, Y-indexed OPC $HHLL,Y operand is address incremented by Y with carry
#....immediate OPC #$BB operand is byte (BB)
impl....implied OPC operand implied
ind....indirect OPC ($HHLL) operand is effective address; effective address is value of address
X,ind....X-indexed, indirect OPC ($BB,X) operand is effective zeropage address; effective address is byte (BB) incremented by X without carry
ind,Y....indirect, Y-indexed OPC ($LL),Y operand is effective address incremented by Y with carry; effective address is word at zeropage address
rel....relative OPC $BB branch target is PC + offset (BB), bit 7 signifies negative offset
zpg....zeropage OPC $LL operand is of address; address hibyte = zero ($00xx)
zpg,X....zeropage, X-indexed OPC $LL,X operand is address incremented by X; address hibyte = zero ($00xx); no page transition
zpg,Y....zeropage, Y-indexed OPC $LL,Y operand is address incremented by Y; address hibyte = zero ($00xx); no page transition