Changes

Jump to: navigation, search

6502

5,030 bytes removed, 6 September
/* Opcodes */
|}
The opcode quadrants are: <span style="background-color: #ff6666;">'''Control instructions'''</span>, <span style="background-color: #66ff66;">'''ALU instructions'''</span>, <span style="background-color: #6666ff;">'''Read-Modify-Write instructions'''</span>. '''Illegal instructions'''. The opcodes in bold are unstable. {| class="wikitable" style="white-space: nowrap;"
|-
!rowspan=2| High nibble ||colspan=16| Low nibble{|- ! styleclass="background-color:#ff6666;wikitable"|0! style="background-color:#ff6666;"|4Opc ! style="background-color:#ff6666;"|8! style="background-color:#ff6666;"|C! style="background-color:#66ff66;"|1! style="background-color:#66ff66;"|5! style="background-color:#66ff66;"|9! style="background-color:#66ff66;"|D! style="background-color:#6666ff;"|2! style="background-color:#6666ff;"|6! style="background-color:#6666ff;"|A! style="background-color:#6666ff;"|E! |3! |7! |B! |F|- ! 0| bgcolor=#e0e0e0|BRK| NOP ''zpg''| bgcolor=#e0e0e0|PHP| NOP ''abs''| bgcolor=#ffe0ff|ORA (''ind'',X)| bgcolor=#ffe0e0|ORA ''zpg''| bgcolor=#e0ffe0|ORA #| bgcolor=#e0ffff|ORA ''abs''| JAM| bgcolor=#ffe0e0|ASL ''zpg''| bgcolor=#e0e0e0|ASL A| bgcolor=#e0ffff|ASL ''abs''| SLO (''ind'',X)| SLO ''zpg''| ANC #| SLO ''abs''|- ! 1| bgcolor=#ffffe0|BPL ''rel''| NOP ''zpg'',X| bgcolor=#e0e0e0|CLC| NOP ''abs'',X| bgcolor=#ffe0ff|ORA (''ind''),Y| bgcolor=#ffe0e0|ORA ''zpg'',X| bgcolor=#e0ffff|ORA ''abs'',Y| bgcolor=#e0ffff|ORA ''abs'',X| JAM| bgcolor=#ffe0e0|ASL ''zpg'',X| NOP| bgcolor=#e0ffff|ASL ''abs'',X| SLO (''ind''),Y| SLO ''zpg'',X| SLO ''abs'',Y| SLO ''abs'',X|- ! 2| bgcolor=#e0ffff|JSR ''abs''| bgcolor=#ffe0e0|BIT ''zpg''| bgcolor=#e0e0e0|PLP| bgcolor=#e0ffff|BIT ''abs''| bgcolor=#ffe0ff|AND (''ind'',X)| bgcolor=#ffe0e0|AND ''zpg''| bgcolor=#e0ffe0|AND #| bgcolor=#e0ffff|AND ''abs''| JAM| bgcolor=#ffe0e0|ROL ''zpg''| bgcolor=#e0e0e0|ROL A| bgcolor=#e0ffff|ROL ''abs''| RLA (''ind'',X)| RLA ''zpg''| ANC #| RLA ''abs''|- ! 3| bgcolor=#ffffe0|BMI ''rel''| NOP ''zpg'',X| bgcolor=#e0e0e0|SEC| NOP ''abs'',X| bgcolor=#ffe0ff|AND (''ind''),Y| bgcolor=#ffe0e0|AND ''zpg'',X| bgcolor=#e0ffff|AND ''abs'',Y| bgcolor=#e0ffff|AND ''abs'',X| JAM| bgcolor=#ffe0e0|ROL ''zpg'',X| NOP| bgcolor=#e0ffff|ROL ''abs'',X| RLA (''ind''),Y| RLA ''zpg'',X| RLA ''abs'',Y| RLA ''abs'',X|- ! 4| bgcolor=#e0e0e0|RTI| NOP ''zpg''| bgcolor=#e0e0e0|PHA| bgcolor=#e0ffff|JMP ''abs''| bgcolor=#ffe0ff|EOR (''ind'',X)| bgcolor=#ffe0e0|EOR ''zpg''| bgcolor=#e0ffe0|EOR #| bgcolor=#e0ffff|EOR ''abs''| JAM| bgcolor=#ffe0e0|LSR ''zpg''| bgcolor=#e0e0e0|LSR A| bgcolor=#e0ffff|LSR ''abs''| SRE (''ind'',X)| SRE ''zpg''| ASR #| SRE ''abs''|- ! 5| bgcolor=#ffffe0|BVC ''rel''| NOP ''zpg'',X| bgcolor=#e0e0e0|CLI| NOP ''abs'',X| bgcolor=#ffe0ff|EOR (''ind''),Y| bgcolor=#ffe0e0|EOR ''zpg'',X| bgcolor=#e0ffff|EOR ''abs'',Y| bgcolor=#e0ffff|EOR ''abs'',X| JAM| bgcolor=#ffe0e0|LSR ''zpg'',X| NOP| bgcolor=#e0ffff|LSR ''abs'',X| SRE (''ind''),Y| SRE ''zpg'',X| SRE ''abs'',Y| SRE ''abs'',X|- ! 6| bgcolor=#e0e0e0|RTS| NOP ''zpg''| bgcolor=#e0e0e0|PLA| bgcolor=#ffe0ff|JMP (''ind'')| bgcolor=#ffe0ff|ADC (''ind'',X)| bgcolor=#ffe0e0|ADC ''zpg''| bgcolor=#e0ffe0|ADC #| bgcolor=#e0ffff|ADC ''abs''| JAM| bgcolor=#ffe0e0|ROR ''zpg''| bgcolor=#e0e0e0|ROR A| bgcolor=#e0ffff|ROR ''abs''| RRA (''ind'',X)| RRA ''zpg''| ARR #| RRA ''abs''|- ! 7| bgcolor=#ffffe0|BVS ''rel''| NOP ''zpg'',X| bgcolor=#e0e0e0|SEI| NOP ''abs'',X| bgcolor=#ffe0ff|ADC (''ind''),Y| bgcolor=#ffe0e0|ADC ''zpg'',X| bgcolor=#e0ffff|ADC ''abs'',Y| bgcolor=#e0ffff|ADC ''abs'',X| JAM| bgcolor=#ffe0e0|ROR ''zpg'',X| NOP| bgcolor=#e0ffff|ROR ''abs'',X| RRA (''ind''),Y| RRA ''zpg'',X| RRA ''abs'',Y| RRA ''abs'',X|- ! 8| NOP #| bgcolor=#ffe0e0|STY ''zpg''| bgcolor=#e0e0e0|DEY| bgcolor=#e0ffff|STY ''abs''| bgcolor=#ffe0ff|STA (''ind'',X)| bgcolor=#ffe0e0|STA ''zpg''| NOP #| bgcolor=#e0ffff|STA ''abs''| NOP #| bgcolor=#ffe0e0|STX ''zpg''| bgcolor=#e0e0e0|TXA| bgcolor=#e0ffff|STX ''abs''| SAX (''ind'',X)| SAX ''zpg''| '''XAA #'''| SAX ''abs''|- ! 9| bgcolor=#ffffe0|BCC ''rel''| bgcolor=#ffe0e0|STY ''zpg'',X| bgcolor=#e0e0e0|TYA| '''SHY ''abs'',X'''| bgcolor=#ffe0ff|STA (''ind''),Y| bgcolor=#ffe0e0|STA ''zpg'',X| bgcolor=#e0ffff|STA ''abs'',Y| bgcolor=#e0ffff|STA ''abs'',X| JAM| bgcolor=#ffe0e0|STX ''zpg'',Y| bgcolor=#e0e0e0|TXS| '''SHX ''abs'',Y'''| '''SHA (''ind''),Y'''| SAX ''zpg'',Y| '''SHS ''abs'',Y'''| '''SHA ''abs'',Y'''|- ! A| bgcolor=#e0ffe0|LDY #| bgcolor=#ffe0e0|LDY ''zpg''| bgcolor=#e0e0e0|TAY| bgcolor=#e0ffff|LDY ''abs''| bgcolor=#ffe0ff|LDA (''ind'',X)| bgcolor=#ffe0e0|LDA ''zpg''| bgcolor=#e0ffe0|LDA #| bgcolor=#e0ffff|LDA ''abs''| bgcolor=#e0ffe0|LDX #| bgcolor=#ffe0e0|LDX ''zpg''| bgcolor=#e0e0e0|TAX| bgcolor=#e0ffff|LDX ''abs''| LAX (''ind'',X)| LAX ''zpg''| '''LXA #'''| LAX ''abs''|- ! B| bgcolor=#ffffe0|BCS ''rel''| bgcolor=#ffe0e0|LDY ''zpg'',X| bgcolor=#e0e0e0|CLV| bgcolor=#e0ffff|LDY ''abs'',X| bgcolor=#ffe0ff|LDA (''ind''),Y| bgcolor=#ffe0e0|LDA ''zpg'',X| bgcolor=#e0ffff|LDA ''abs'',Y| bgcolor=#e0ffff|LDA ''abs'',X| JAM| bgcolor=#ffe0e0|LDX ''zpg'',Y| bgcolor=#e0e0e0|TSX| bgcolor=#e0ffff|LDX ''abs'',Y| LAX (''ind''),Y| LAX ''zpg'',Y| LAX ''abs'',Y| LAX ''abs'',X|- ! C| bgcolor=#e0ffe0|CPY #| bgcolor=#ffe0e0|CPY ''zpg''| bgcolor=#e0e0e0|INY| bgcolor=#e0ffff|CPY ''abs''| bgcolor=#ffe0ff|CMP (''ind'',X)| bgcolor=#ffe0e0|CMP ''zpg''| bgcolor=#e0ffe0|CMP #| bgcolor=#e0ffff|CMP ''abs''| NOP #| bgcolor=#ffe0e0|DEC ''zpg''| bgcolor=#e0e0e0|DEX| bgcolor=#e0ffff|DEC ''abs''| DCP (''ind'',X)| DCP ''zpg''| SBX #| DCP ''abs''|- ! D| bgcolor=#ffffe0|BNE ''rel''| NOP ''zpg'',X| bgcolor=#e0e0e0|CLD| NOP ''abs'',X| bgcolor=#ffe0ff|CMP (''ind''),Y| bgcolor=#ffe0e0|CMP ''zpg'',X| bgcolor=#e0ffff|CMP ''abs'',Y| bgcolor=#e0ffff|CMP ''abs'',X| JAM| bgcolor=#ffe0e0|DEC ''zpg'',X| NOP| bgcolor=#e0ffff|DEC ''abs'',X| DCP (''ind''),Y| DCP ''zpg'',X| DCP ''abs'',Y| DCP ''abs'',X|- ! E| bgcolor=#e0ffe0|CPX #| bgcolor=#ffe0e0|CPX ''zpg''| bgcolor=#e0e0e0|INX| bgcolor=#e0ffff|CPX ''abs''| bgcolor=#ffe0ff|SBC (''ind'',X)| bgcolor=#ffe0e0|SBC ''zpg''| bgcolor=#e0ffe0|SBC #| bgcolor=#e0ffff|SBC ''abs''| NOP #| bgcolor=#ffe0e0|INC ''zpg''| bgcolor=#e0e0e0|NOP| bgcolor=#e0ffff|INC ''abs''| ISC (''ind'',X)| ISC ''zpg''| SBC #| ISC ''abs''|- ! F| bgcolor=#ffffe0|BEQ ''rel''| NOP ''zpg'',X| bgcolor=#e0e0e0|SED| NOP ''abs'',X| bgcolor=#ffe0ff|SBC (''ind''),Y| bgcolor=#ffe0e0|SBC ''zpg'',X| bgcolor=#e0ffff|SBC ''abs'',Y| bgcolor=#e0ffff|SBC ''abs'',X| JAM| bgcolor=#ffe0e0|INC ''zpg'',X| NOP| bgcolor=#e0ffff|INC ''abs'',X| ISC (''ind''),Y| ISC ''zpg'',X| ISC ''abs'',Y| ISC ''abs'',XMnemonic
|-
|colspan=03 || '''SLO (''ind'',X)'''|-| 07 || '''SLO ''zpg'''''|-| 0B || '''ANC #'''|-| 0F || '''SLO ''abs'''''|-| 13 || '''SLO (''ind''),Y'''|-| 17| Addressing modes: <span style| '''SLO ''zpg'',X'''|-| 1B || '''SLO ''abs'',Y'''|-| 1F || '''SLO ''abs'',X'''|}| {| class="backgroundwikitable"! Opc !! Mnemonic|-color: | 23 || '''RLA (''ind'',X)'''|-| 27 || '''RLA ''zpg'''''|-| 2B || '''ANC #e0e0e0;">'''A|-| 2F || ''' RLA ''abs'''''|- accumulator</span>| 33 || '''RLA (''ind''), <span styleY'''|-| 37 || '''RLA ''zpg'',X'''|-| 3B || '''RLA ''abs'',Y'''|-| 3F || '''RLA ''abs'',X'''|}| {| class="backgroundwikitable"! Opc !! Mnemonic|-color: | 43 || '''SRE (''ind'',X)'''|-| 47 || '''SRE ''zpg'''''|-| 4B || '''ASR #e0ffe0;'''|-| 4F || '''SRE ''abs'''''|-| 53 || '''SRE (''ind''),Y'''|-| 57 || '''SRE ''zpg'',X'''|-| 5B || '''SRE ''abs'',Y'''|-| 5F || '''SRE ''abs'',X'''|}| {| class=">wikitable"! Opc !! Mnemonic|-| 63 || '''RRA (''ind'',X)'''|-| 67 || '''RRA ''zpg'''''|-| 6B || '''ARR #''' |- immediate</span>| 6F || '''RRA ''abs'''''|-| 73 || '''RRA (''ind''), <span styleY'''|-| 77 || '''RRA ''zpg'',X'''|-| 7B || '''RRA ''abs'',Y'''|-| 7F || '''RRA ''abs'',X'''|}| {| class="backgroundwikitable"! Opc !! Mnemonic|-color: | 83 || '''SAX (''ind'',X)'''|-| 87 || '''SAX ''zpg'''''|-| 8B || '''XAA #ffffe0;">'''rel|-| 8F || ''' SAX ''abs'''''|- relative</span>| 93 || '''SHA (''ind''), <span styleY'''|-| 97 || '''SAX ''zpg'',Y'''|-| 9B || '''SHS ''abs'',Y'''|-| 9F || '''SHA ''abs'',Y'''|}| {| class="backgroundwikitable"! Opc !! Mnemonic|-color: | A3 || '''LAX (''ind'',X)'''|-| A7 || '''LAX ''zpg'''''|-| AB || '''LXA #ffe0e0;">'''|-| AF || '''LAX ''abs'''''|-| B3 || '''LAX (''ind''),Y'''|-| B7 || '''LAX ''zpg'',X' ''|- zero page</span>| BB || '''LAX ''abs'', <span styleY'''|-| BF || '''LAX ''abs'',X'''|}| {| class="backgroundwikitable"! Opc !! Mnemonic|-color: | C3 || '''DCP (''ind'',X)'''|-| C7 || '''DCP ''zpg'''''|-| CB || '''SBX #e0ffff;">'''|-| CF || '''DCP ''abs''' ''|- absolute</span>| D3 || '''DCP (''ind''), <span styleY'''|-| D7 || '''DCP ''zpg'',X'''|-| DB || '''DCP ''abs'',Y'''|-| DF || '''DCP ''abs'',X'''|}| {| class="backgroundwikitable"! Opc !! Mnemonic|-color: | E3 || '''ISC (''ind'',X)'''|-| E7 || '''ISC ''zpg'''''|-| EB || '''SBC #ffe0ff;">'''|-| EF || '''ISC ''abs'''''|-| F3 || '''ISC (''ind''),Y' ''|- indirect</span>. Uncolored cells are illegal opcodes.| F7 || '''ISC ''zpg'',X'''|-| FB || '''ISC ''abs'',Y'''|-| FF || '''ISC ''abs'',X'''|}
|}
8,324
edits