some commenting for clarity

This commit is contained in:
Aaron Culliney 2014-02-01 12:18:48 -08:00
parent 4ce4a37dd3
commit f836a3004d

View File

@ -18,26 +18,26 @@
const char * const disasm_templates[15] =
{
"",
"A",
"#$%02X",
"$%02X",
"$%02X,X",
"$%02X,Y",
"$%02X%02X",
"$%02X%02X,X",
"$%02X%02X,Y",
"($%02X)",
"($%02X,X)",
"($%02X),Y",
"($%02X%02X)",
"($%02X%02X),X",
"$%04X (%c%02X)"
"", // addr_implied
"A", // addr_accumulator
"#$%02X", // addr_immediate
"$%02X", // addr_zeropage
"$%02X,X", // addr_zeropage_x
"$%02X,Y", // addr_zeropage_y
"$%02X%02X", // addr_absolute
"$%02X%02X,X", // addr_absolute_x
"$%02X%02X,Y", // addr_absolute_y
"($%02X)", // addr_indirect
"($%02X,X)", // addr_indirect_x
"($%02X),Y", // addr_indirect_y
"($%02X%02X)", // addr_j_indirect - non-zeropage indirects, used in JMP only
"($%02X%02X),X", // addr_j_indirect_x
"$%04X (%c%02X)" // addr_relative
};
const struct opcode_struct opcodes_6502[256] =
{
{ "BRK", addr_implied },
{ "BRK", addr_implied }, // 0x00
{ "ORA", addr_indirect_x },
{ "???", addr_implied },
{ "???", addr_implied },
@ -45,7 +45,7 @@ const struct opcode_struct opcodes_6502[256] =
{ "ORA", addr_zeropage },
{ "ASL", addr_zeropage },
{ "???", addr_implied },
{ "PHP", addr_implied },
{ "PHP", addr_implied }, // 0x08
{ "ORA", addr_immediate },
{ "ASL", addr_accumulator },
{ "???", addr_implied },
@ -53,7 +53,7 @@ const struct opcode_struct opcodes_6502[256] =
{ "ORA", addr_absolute },
{ "ASL", addr_absolute },
{ "???", addr_implied },
{ "BPL", addr_relative },
{ "BPL", addr_relative }, // 0x10
{ "ORA", addr_indirect_y },
{ "???", addr_implied },
{ "???", addr_implied },
@ -61,7 +61,7 @@ const struct opcode_struct opcodes_6502[256] =
{ "ORA", addr_zeropage_x },
{ "ASL", addr_zeropage_x },
{ "???", addr_implied },
{ "CLC", addr_implied },
{ "CLC", addr_implied }, // 0x18
{ "ORA", addr_absolute_y },
{ "???", addr_implied },
{ "???", addr_implied },
@ -69,7 +69,7 @@ const struct opcode_struct opcodes_6502[256] =
{ "ORA", addr_absolute_x },
{ "ASL", addr_absolute_x },
{ "???", addr_implied },
{ "JSR", addr_absolute },
{ "JSR", addr_absolute }, // 0x20
{ "AND", addr_indirect_x },
{ "???", addr_implied },
{ "???", addr_implied },
@ -77,7 +77,7 @@ const struct opcode_struct opcodes_6502[256] =
{ "AND", addr_zeropage },
{ "ROL", addr_zeropage },
{ "???", addr_implied },
{ "PLP", addr_implied },
{ "PLP", addr_implied }, // 0x28
{ "AND", addr_immediate },
{ "ROL", addr_accumulator },
{ "???", addr_implied },
@ -85,7 +85,7 @@ const struct opcode_struct opcodes_6502[256] =
{ "AND", addr_absolute },
{ "ROL", addr_absolute },
{ "???", addr_implied },
{ "BMI", addr_relative },
{ "BMI", addr_relative }, // 0x30
{ "AND", addr_indirect_y },
{ "???", addr_implied },
{ "???", addr_implied },
@ -93,7 +93,7 @@ const struct opcode_struct opcodes_6502[256] =
{ "AND", addr_zeropage_x },
{ "ROL", addr_zeropage_x },
{ "???", addr_implied },
{ "SEC", addr_implied },
{ "SEC", addr_implied }, // 0x38
{ "AND", addr_absolute_y },
{ "???", addr_implied },
{ "???", addr_implied },
@ -101,7 +101,7 @@ const struct opcode_struct opcodes_6502[256] =
{ "AND", addr_absolute_x },
{ "ROL", addr_absolute_x },
{ "???", addr_implied },
{ "RTI", addr_implied },
{ "RTI", addr_implied }, // 0x40
{ "EOR", addr_indirect_x },
{ "???", addr_implied },
{ "???", addr_implied },
@ -109,7 +109,7 @@ const struct opcode_struct opcodes_6502[256] =
{ "EOR", addr_zeropage },
{ "LSR", addr_zeropage },
{ "???", addr_implied },
{ "PHA", addr_implied },
{ "PHA", addr_implied }, // 0x48
{ "EOR", addr_immediate },
{ "LSR", addr_accumulator },
{ "???", addr_implied },
@ -117,7 +117,7 @@ const struct opcode_struct opcodes_6502[256] =
{ "EOR", addr_absolute },
{ "LSR", addr_absolute },
{ "???", addr_implied },
{ "BVC", addr_relative },
{ "BVC", addr_relative }, // 0x50
{ "EOR", addr_indirect_y },
{ "???", addr_implied },
{ "???", addr_implied },
@ -125,7 +125,7 @@ const struct opcode_struct opcodes_6502[256] =
{ "EOR", addr_zeropage_x },
{ "LSR", addr_zeropage_x },
{ "???", addr_implied },
{ "CLI", addr_implied },
{ "CLI", addr_implied }, // 0x58
{ "EOR", addr_absolute_y },
{ "???", addr_implied },
{ "???", addr_implied },
@ -133,7 +133,7 @@ const struct opcode_struct opcodes_6502[256] =
{ "EOR", addr_absolute_x },
{ "LSR", addr_absolute_x },
{ "???", addr_implied },
{ "RTS", addr_implied },
{ "RTS", addr_implied }, // 0x60
{ "ADC", addr_indirect_x },
{ "???", addr_implied },
{ "???", addr_implied },
@ -141,7 +141,7 @@ const struct opcode_struct opcodes_6502[256] =
{ "ADC", addr_zeropage },
{ "ROR", addr_zeropage },
{ "???", addr_implied },
{ "PLA", addr_implied },
{ "PLA", addr_implied }, // 0x68
{ "ADC", addr_immediate },
{ "ROR", addr_accumulator },
{ "???", addr_implied },
@ -149,7 +149,7 @@ const struct opcode_struct opcodes_6502[256] =
{ "ADC", addr_absolute },
{ "ROR", addr_absolute },
{ "???", addr_implied },
{ "BVS", addr_relative },
{ "BVS", addr_relative }, // 0x70
{ "ADC", addr_indirect_y },
{ "???", addr_implied },
{ "???", addr_implied },
@ -157,7 +157,7 @@ const struct opcode_struct opcodes_6502[256] =
{ "ADC", addr_zeropage_x },
{ "ROR", addr_zeropage_x },
{ "???", addr_implied },
{ "SEI", addr_implied },
{ "SEI", addr_implied }, // 0x78
{ "ADC", addr_absolute_y },
{ "???", addr_implied },
{ "???", addr_implied },
@ -165,7 +165,7 @@ const struct opcode_struct opcodes_6502[256] =
{ "ADC", addr_absolute_x },
{ "ROR", addr_absolute_x },
{ "???", addr_implied },
{ "???", addr_implied },
{ "???", addr_implied }, // 0x80
{ "STA", addr_indirect_x },
{ "???", addr_implied },
{ "???", addr_implied },
@ -173,7 +173,7 @@ const struct opcode_struct opcodes_6502[256] =
{ "STA", addr_zeropage },
{ "STX", addr_zeropage },
{ "???", addr_implied },
{ "DEY", addr_implied },
{ "DEY", addr_implied }, // 0x00
{ "???", addr_implied },
{ "TXA", addr_implied },
{ "???", addr_implied },
@ -181,7 +181,7 @@ const struct opcode_struct opcodes_6502[256] =
{ "STA", addr_absolute },
{ "STX", addr_absolute },
{ "???", addr_implied },
{ "BCC", addr_relative },
{ "BCC", addr_relative }, // 0x08
{ "STA", addr_indirect_y },
{ "???", addr_implied },
{ "???", addr_implied },
@ -189,7 +189,7 @@ const struct opcode_struct opcodes_6502[256] =
{ "STA", addr_zeropage_x },
{ "STX", addr_zeropage_y },
{ "???", addr_implied },
{ "TYA", addr_implied },
{ "TYA", addr_implied }, // 0x10
{ "STA", addr_absolute_y },
{ "TXS", addr_implied },
{ "???", addr_implied },
@ -197,7 +197,7 @@ const struct opcode_struct opcodes_6502[256] =
{ "STA", addr_absolute_x },
{ "???", addr_implied },
{ "???", addr_implied },
{ "LDY", addr_immediate },
{ "LDY", addr_immediate }, // 0x18
{ "LDA", addr_indirect_x },
{ "LDX", addr_immediate },
{ "???", addr_implied },
@ -205,7 +205,7 @@ const struct opcode_struct opcodes_6502[256] =
{ "LDA", addr_zeropage },
{ "LDX", addr_zeropage },
{ "???", addr_implied },
{ "TAY", addr_implied },
{ "TAY", addr_implied }, // 0x20
{ "LDA", addr_immediate },
{ "TAX", addr_implied },
{ "???", addr_implied },
@ -213,7 +213,7 @@ const struct opcode_struct opcodes_6502[256] =
{ "LDA", addr_absolute },
{ "LDX", addr_absolute },
{ "???", addr_implied },
{ "BCS", addr_relative },
{ "BCS", addr_relative }, // 0x28
{ "LDA", addr_indirect_y },
{ "???", addr_implied },
{ "???", addr_implied },
@ -221,7 +221,7 @@ const struct opcode_struct opcodes_6502[256] =
{ "LDA", addr_zeropage_x },
{ "LDX", addr_zeropage_y },
{ "???", addr_implied },
{ "CLV", addr_implied },
{ "CLV", addr_implied }, // 0x30
{ "LDA", addr_absolute_y },
{ "TSX", addr_implied },
{ "???", addr_implied },
@ -229,7 +229,7 @@ const struct opcode_struct opcodes_6502[256] =
{ "LDA", addr_absolute_x },
{ "LDX", addr_absolute_y },
{ "???", addr_implied },
{ "CPY", addr_immediate },
{ "CPY", addr_immediate }, // 0x38
{ "CMP", addr_indirect_x },
{ "???", addr_implied },
{ "???", addr_implied },
@ -237,7 +237,7 @@ const struct opcode_struct opcodes_6502[256] =
{ "CMP", addr_zeropage },
{ "DEC", addr_zeropage },
{ "???", addr_implied },
{ "INY", addr_implied },
{ "INY", addr_implied }, // 0x40
{ "CMP", addr_immediate },
{ "DEX", addr_implied },
{ "???", addr_implied },
@ -245,7 +245,7 @@ const struct opcode_struct opcodes_6502[256] =
{ "CMP", addr_absolute },
{ "DEC", addr_absolute },
{ "???", addr_implied },
{ "BNE", addr_relative },
{ "BNE", addr_relative }, // 0x48
{ "CMP", addr_indirect_y },
{ "???", addr_implied },
{ "???", addr_implied },
@ -253,7 +253,7 @@ const struct opcode_struct opcodes_6502[256] =
{ "CMP", addr_zeropage_x },
{ "DEC", addr_zeropage_x },
{ "???", addr_implied },
{ "CLD", addr_implied },
{ "CLD", addr_implied }, // 0x50
{ "CMP", addr_absolute_y },
{ "???", addr_implied },
{ "???", addr_implied },
@ -261,7 +261,7 @@ const struct opcode_struct opcodes_6502[256] =
{ "CMP", addr_absolute_x },
{ "DEC", addr_absolute_x },
{ "???", addr_implied },
{ "CPX", addr_immediate },
{ "CPX", addr_immediate }, // 0x58
{ "SBC", addr_indirect_x },
{ "???", addr_implied },
{ "???", addr_implied },
@ -269,7 +269,7 @@ const struct opcode_struct opcodes_6502[256] =
{ "SBC", addr_zeropage },
{ "INC", addr_zeropage },
{ "???", addr_implied },
{ "INX", addr_implied },
{ "INX", addr_implied }, // 0x60
{ "SBC", addr_immediate },
{ "NOP", addr_implied },
{ "???", addr_implied },
@ -277,7 +277,7 @@ const struct opcode_struct opcodes_6502[256] =
{ "SBC", addr_absolute },
{ "INC", addr_absolute },
{ "???", addr_implied },
{ "BEQ", addr_relative },
{ "BEQ", addr_relative }, // 0x68
{ "SBC", addr_indirect_y },
{ "???", addr_implied },
{ "???", addr_implied },
@ -285,7 +285,7 @@ const struct opcode_struct opcodes_6502[256] =
{ "SBC", addr_zeropage_x },
{ "INC", addr_zeropage_x },
{ "???", addr_implied },
{ "SED", addr_implied },
{ "SED", addr_implied }, // 0x70
{ "SBC", addr_absolute_y },
{ "???", addr_implied },
{ "???", addr_implied },
@ -297,7 +297,7 @@ const struct opcode_struct opcodes_6502[256] =
const struct opcode_struct opcodes_65c02[256] =
{
{ "BRK", addr_implied },
{ "BRK", addr_implied }, // 0x00
{ "ORA", addr_indirect_x },
{ "???", addr_implied },
{ "???", addr_implied },
@ -305,7 +305,7 @@ const struct opcode_struct opcodes_65c02[256] =
{ "ORA", addr_zeropage },
{ "ASL", addr_zeropage },
{ "???", addr_implied },
{ "PHP", addr_implied },
{ "PHP", addr_implied }, // 0x08
{ "ORA", addr_immediate },
{ "ASL", addr_accumulator },
{ "???", addr_implied },
@ -313,7 +313,7 @@ const struct opcode_struct opcodes_65c02[256] =
{ "ORA", addr_absolute },
{ "ASL", addr_absolute },
{ "???", addr_implied },
{ "BPL", addr_relative },
{ "BPL", addr_relative }, // 0x10
{ "ORA", addr_indirect_y },
{ "ORA", addr_indirect },
{ "???", addr_implied },
@ -321,7 +321,7 @@ const struct opcode_struct opcodes_65c02[256] =
{ "ORA", addr_zeropage_x },
{ "ASL", addr_zeropage_x },
{ "???", addr_implied },
{ "CLC", addr_implied },
{ "CLC", addr_implied }, // 0x18
{ "ORA", addr_absolute_y },
{ "INC", addr_accumulator },
{ "???", addr_implied },
@ -329,7 +329,7 @@ const struct opcode_struct opcodes_65c02[256] =
{ "ORA", addr_absolute_x },
{ "ASL", addr_absolute_x },
{ "???", addr_implied },
{ "JSR", addr_absolute },
{ "JSR", addr_absolute }, // 0x20
{ "AND", addr_indirect_x },
{ "???", addr_implied },
{ "???", addr_implied },
@ -337,7 +337,7 @@ const struct opcode_struct opcodes_65c02[256] =
{ "AND", addr_zeropage },
{ "ROL", addr_zeropage },
{ "???", addr_implied },
{ "PLP", addr_implied },
{ "PLP", addr_implied }, // 0x28
{ "AND", addr_immediate },
{ "ROL", addr_accumulator },
{ "???", addr_implied },
@ -345,7 +345,7 @@ const struct opcode_struct opcodes_65c02[256] =
{ "AND", addr_absolute },
{ "ROL", addr_absolute },
{ "???", addr_implied },
{ "BMI", addr_relative },
{ "BMI", addr_relative }, // 0x30
{ "AND", addr_indirect_y },
{ "AND", addr_indirect },
{ "???", addr_implied },
@ -353,7 +353,7 @@ const struct opcode_struct opcodes_65c02[256] =
{ "AND", addr_zeropage_x },
{ "ROL", addr_zeropage_x },
{ "???", addr_implied },
{ "SEC", addr_implied },
{ "SEC", addr_implied }, // 0x38
{ "AND", addr_absolute_y },
{ "DEC", addr_accumulator },
{ "???", addr_implied },
@ -361,7 +361,7 @@ const struct opcode_struct opcodes_65c02[256] =
{ "AND", addr_absolute_x },
{ "ROL", addr_absolute_x },
{ "???", addr_implied },
{ "RTI", addr_implied },
{ "RTI", addr_implied }, // 0x40
{ "EOR", addr_indirect_x },
{ "???", addr_implied },
{ "???", addr_implied },
@ -369,7 +369,7 @@ const struct opcode_struct opcodes_65c02[256] =
{ "EOR", addr_zeropage },
{ "LSR", addr_zeropage },
{ "???", addr_implied },
{ "PHA", addr_implied },
{ "PHA", addr_implied }, // 0x48
{ "EOR", addr_immediate },
{ "LSR", addr_accumulator },
{ "???", addr_implied },
@ -377,7 +377,7 @@ const struct opcode_struct opcodes_65c02[256] =
{ "EOR", addr_absolute },
{ "LSR", addr_absolute },
{ "???", addr_implied },
{ "BVC", addr_relative },
{ "BVC", addr_relative }, // 0x50
{ "EOR", addr_indirect_y },
{ "EOR", addr_indirect },
{ "???", addr_implied },
@ -385,7 +385,7 @@ const struct opcode_struct opcodes_65c02[256] =
{ "EOR", addr_zeropage_x },
{ "LSR", addr_zeropage_x },
{ "???", addr_implied },
{ "CLI", addr_implied },
{ "CLI", addr_implied }, // 0x58
{ "EOR", addr_absolute_y },
{ "PHY", addr_implied },
{ "???", addr_implied },
@ -393,7 +393,7 @@ const struct opcode_struct opcodes_65c02[256] =
{ "EOR", addr_absolute_x },
{ "LSR", addr_absolute_x },
{ "???", addr_implied },
{ "RTS", addr_implied },
{ "RTS", addr_implied }, // 0x60
{ "ADC", addr_indirect_x },
{ "???", addr_implied },
{ "???", addr_implied },
@ -401,7 +401,7 @@ const struct opcode_struct opcodes_65c02[256] =
{ "ADC", addr_zeropage },
{ "ROR", addr_zeropage },
{ "???", addr_implied },
{ "PLA", addr_implied },
{ "PLA", addr_implied }, // 0x68
{ "ADC", addr_immediate },
{ "ROR", addr_accumulator },
{ "???", addr_implied },
@ -409,7 +409,7 @@ const struct opcode_struct opcodes_65c02[256] =
{ "ADC", addr_absolute },
{ "ROR", addr_absolute },
{ "???", addr_implied },
{ "BVS", addr_relative },
{ "BVS", addr_relative }, // 0x70
{ "ADC", addr_indirect_y },
{ "ADC", addr_indirect },
{ "???", addr_implied },
@ -417,7 +417,7 @@ const struct opcode_struct opcodes_65c02[256] =
{ "ADC", addr_zeropage_x },
{ "ROR", addr_zeropage_x },
{ "???", addr_implied },
{ "SEI", addr_implied },
{ "SEI", addr_implied }, // 0x78
{ "ADC", addr_absolute_y },
{ "PLY", addr_implied },
{ "???", addr_implied },
@ -425,7 +425,7 @@ const struct opcode_struct opcodes_65c02[256] =
{ "ADC", addr_absolute_x },
{ "ROR", addr_absolute_x },
{ "???", addr_implied },
{ "BRA", addr_relative },
{ "BRA", addr_relative }, // 0x80
{ "STA", addr_indirect_x },
{ "???", addr_implied },
{ "???", addr_implied },
@ -433,7 +433,7 @@ const struct opcode_struct opcodes_65c02[256] =
{ "STA", addr_zeropage },
{ "STX", addr_zeropage },
{ "???", addr_implied },
{ "DEY", addr_implied },
{ "DEY", addr_implied }, // 0x88
{ "BIT", addr_immediate },
{ "TXA", addr_implied },
{ "???", addr_implied },
@ -441,7 +441,7 @@ const struct opcode_struct opcodes_65c02[256] =
{ "STA", addr_absolute },
{ "STX", addr_absolute },
{ "???", addr_implied },
{ "BCC", addr_relative },
{ "BCC", addr_relative }, // 0x90
{ "STA", addr_indirect_y },
{ "STA", addr_indirect },
{ "???", addr_implied },
@ -449,7 +449,7 @@ const struct opcode_struct opcodes_65c02[256] =
{ "STA", addr_zeropage_x },
{ "STX", addr_zeropage_y },
{ "???", addr_implied },
{ "TYA", addr_implied },
{ "TYA", addr_implied }, // 0x98
{ "STA", addr_absolute_y },
{ "TXS", addr_implied },
{ "???", addr_implied },
@ -457,7 +457,7 @@ const struct opcode_struct opcodes_65c02[256] =
{ "STA", addr_absolute_x },
{ "STZ", addr_absolute_x },
{ "???", addr_implied },
{ "LDY", addr_immediate },
{ "LDY", addr_immediate }, // 0xA0
{ "LDA", addr_indirect_x },
{ "LDX", addr_immediate },
{ "???", addr_implied },
@ -465,7 +465,7 @@ const struct opcode_struct opcodes_65c02[256] =
{ "LDA", addr_zeropage },
{ "LDX", addr_zeropage },
{ "???", addr_implied },
{ "TAY", addr_implied },
{ "TAY", addr_implied }, // 0xA8
{ "LDA", addr_immediate },
{ "TAX", addr_implied },
{ "???", addr_implied },
@ -473,7 +473,7 @@ const struct opcode_struct opcodes_65c02[256] =
{ "LDA", addr_absolute },
{ "LDX", addr_absolute },
{ "???", addr_implied },
{ "BCS", addr_relative },
{ "BCS", addr_relative }, // 0xB0
{ "LDA", addr_indirect_y },
{ "LDA", addr_indirect },
{ "???", addr_implied },
@ -481,7 +481,7 @@ const struct opcode_struct opcodes_65c02[256] =
{ "LDA", addr_zeropage_x },
{ "LDX", addr_zeropage_y },
{ "???", addr_implied },
{ "CLV", addr_implied },
{ "CLV", addr_implied }, // 0xB8
{ "LDA", addr_absolute_y },
{ "TSX", addr_implied },
{ "???", addr_implied },
@ -489,7 +489,7 @@ const struct opcode_struct opcodes_65c02[256] =
{ "LDA", addr_absolute_x },
{ "LDX", addr_absolute_y },
{ "???", addr_implied },
{ "CPY", addr_immediate },
{ "CPY", addr_immediate }, // 0xC0
{ "CMP", addr_indirect_x },
{ "???", addr_implied },
{ "???", addr_implied },
@ -497,7 +497,7 @@ const struct opcode_struct opcodes_65c02[256] =
{ "CMP", addr_zeropage },
{ "DEC", addr_zeropage },
{ "???", addr_implied },
{ "INY", addr_implied },
{ "INY", addr_implied }, // 0xC8
{ "CMP", addr_immediate },
{ "DEX", addr_implied },
{ "???", addr_implied },
@ -505,7 +505,7 @@ const struct opcode_struct opcodes_65c02[256] =
{ "CMP", addr_absolute },
{ "DEC", addr_absolute },
{ "???", addr_implied },
{ "BNE", addr_relative },
{ "BNE", addr_relative }, // 0xD0
{ "CMP", addr_indirect_y },
{ "CMP", addr_indirect },
{ "???", addr_implied },
@ -513,7 +513,7 @@ const struct opcode_struct opcodes_65c02[256] =
{ "CMP", addr_zeropage_x },
{ "DEC", addr_zeropage_x },
{ "???", addr_implied },
{ "CLD", addr_implied },
{ "CLD", addr_implied }, // 0xD8
{ "CMP", addr_absolute_y },
{ "PHX", addr_implied },
{ "???", addr_implied },
@ -521,7 +521,7 @@ const struct opcode_struct opcodes_65c02[256] =
{ "CMP", addr_absolute_x },
{ "DEC", addr_absolute_x },
{ "???", addr_implied },
{ "CPX", addr_immediate },
{ "CPX", addr_immediate }, // 0xE0
{ "SBC", addr_indirect_x },
{ "???", addr_implied },
{ "???", addr_implied },
@ -529,7 +529,7 @@ const struct opcode_struct opcodes_65c02[256] =
{ "SBC", addr_zeropage },
{ "INC", addr_zeropage },
{ "???", addr_implied },
{ "INX", addr_implied },
{ "INX", addr_implied }, // 0xE8
{ "SBC", addr_immediate },
{ "NOP", addr_implied },
{ "???", addr_implied },
@ -537,7 +537,7 @@ const struct opcode_struct opcodes_65c02[256] =
{ "SBC", addr_absolute },
{ "INC", addr_absolute },
{ "???", addr_implied },
{ "BEQ", addr_relative },
{ "BEQ", addr_relative }, // 0xF0
{ "SBC", addr_indirect_y },
{ "SBC", addr_indirect },
{ "???", addr_implied },
@ -545,7 +545,7 @@ const struct opcode_struct opcodes_65c02[256] =
{ "SBC", addr_zeropage_x },
{ "INC", addr_zeropage_x },
{ "???", addr_implied },
{ "SED", addr_implied },
{ "SED", addr_implied }, // 0xF8
{ "SBC", addr_absolute_y },
{ "PLX", addr_implied },
{ "???", addr_implied },
@ -557,7 +557,7 @@ const struct opcode_struct opcodes_65c02[256] =
const struct opcode_struct opcodes_undoc[256] =
{
{ "BRK", addr_implied },
{ "BRK", addr_implied }, // 0x00
{ "ORA", addr_indirect_x },
{ "hang", addr_implied },
{ "lor", addr_indirect_x },
@ -565,7 +565,7 @@ const struct opcode_struct opcodes_undoc[256] =
{ "ORA", addr_zeropage },
{ "ASL", addr_zeropage },
{ "lor", addr_zeropage },
{ "PHP", addr_implied },
{ "PHP", addr_implied }, // 0x08
{ "ORA", addr_immediate },
{ "ASL", addr_accumulator },
{ "ana", addr_immediate },
@ -573,7 +573,7 @@ const struct opcode_struct opcodes_undoc[256] =
{ "ORA", addr_absolute },
{ "ASL", addr_absolute },
{ "lor", addr_absolute },
{ "BPL", addr_relative },
{ "BPL", addr_relative }, // 0x10
{ "ORA", addr_indirect_y },
{ "hang", addr_implied },
{ "lor", addr_indirect_y },
@ -581,7 +581,7 @@ const struct opcode_struct opcodes_undoc[256] =
{ "ORA", addr_zeropage_x },
{ "ASL", addr_zeropage_x },
{ "lor", addr_zeropage_x },
{ "CLC", addr_implied },
{ "CLC", addr_implied }, // 0x18
{ "ORA", addr_absolute_y },
{ "nop", addr_implied },
{ "lor", addr_absolute_y },
@ -589,7 +589,7 @@ const struct opcode_struct opcodes_undoc[256] =
{ "ORA", addr_absolute_x },
{ "ASL", addr_absolute_x },
{ "lor", addr_absolute },
{ "JSR", addr_absolute },
{ "JSR", addr_absolute }, // 0x20
{ "AND", addr_indirect_x },
{ "hang", addr_implied },
{ "lan", addr_indirect_x },
@ -597,7 +597,7 @@ const struct opcode_struct opcodes_undoc[256] =
{ "AND", addr_zeropage },
{ "ROL", addr_zeropage },
{ "lan", addr_zeropage },
{ "PLP", addr_implied },
{ "PLP", addr_implied }, // 0x28
{ "AND", addr_immediate },
{ "ROL", addr_accumulator },
{ "anb", addr_immediate },
@ -605,7 +605,7 @@ const struct opcode_struct opcodes_undoc[256] =
{ "AND", addr_absolute },
{ "ROL", addr_absolute },
{ "lan", addr_absolute },
{ "BMI", addr_relative },
{ "BMI", addr_relative }, // 0x30
{ "AND", addr_indirect_y },
{ "hang", addr_implied },
{ "lan", addr_indirect_y },
@ -613,7 +613,7 @@ const struct opcode_struct opcodes_undoc[256] =
{ "AND", addr_zeropage_x },
{ "ROL", addr_zeropage_x },
{ "lan", addr_zeropage_x },
{ "SEC", addr_implied },
{ "SEC", addr_implied }, // 0x38
{ "AND", addr_absolute_y },
{ "nop", addr_implied },
{ "lan", addr_absolute_y },
@ -621,7 +621,7 @@ const struct opcode_struct opcodes_undoc[256] =
{ "AND", addr_absolute_x },
{ "ROL", addr_absolute_x },
{ "lan", addr_absolute_x },
{ "RTI", addr_implied },
{ "RTI", addr_implied }, // 0x40
{ "EOR", addr_indirect_x },
{ "hang", addr_implied },
{ "reo", addr_indirect_x },
@ -629,7 +629,7 @@ const struct opcode_struct opcodes_undoc[256] =
{ "EOR", addr_zeropage },
{ "LSR", addr_zeropage },
{ "reo", addr_zeropage },
{ "PHA", addr_implied },
{ "PHA", addr_implied }, // 0x48
{ "EOR", addr_immediate },
{ "LSR", addr_accumulator },
{ "ram", addr_immediate },
@ -637,7 +637,7 @@ const struct opcode_struct opcodes_undoc[256] =
{ "EOR", addr_absolute },
{ "LSR", addr_absolute },
{ "reo", addr_absolute },
{ "BVC", addr_relative },
{ "BVC", addr_relative }, // 0x50
{ "EOR", addr_indirect_y },
{ "hang", addr_implied },
{ "reo", addr_indirect_y },
@ -645,7 +645,7 @@ const struct opcode_struct opcodes_undoc[256] =
{ "EOR", addr_zeropage_x },
{ "LSR", addr_zeropage_x },
{ "reo", addr_zeropage_x },
{ "CLI", addr_implied },
{ "CLI", addr_implied }, // 0x58
{ "EOR", addr_absolute_y },
{ "nop", addr_implied },
{ "reo", addr_absolute_y },
@ -653,7 +653,7 @@ const struct opcode_struct opcodes_undoc[256] =
{ "EOR", addr_absolute_x },
{ "LSR", addr_absolute_x },
{ "reo", addr_absolute_x },
{ "RTS", addr_implied },
{ "RTS", addr_implied }, // 0x60
{ "ADC", addr_indirect_x },
{ "hang", addr_implied },
{ "rad", addr_indirect_x },
@ -661,7 +661,7 @@ const struct opcode_struct opcodes_undoc[256] =
{ "ADC", addr_zeropage },
{ "ROR", addr_zeropage },
{ "rad", addr_zeropage },
{ "PLA", addr_implied },
{ "PLA", addr_implied }, // 0x68
{ "ADC", addr_immediate },
{ "ROR", addr_accumulator },
{ "rbm", addr_immediate },
@ -669,7 +669,7 @@ const struct opcode_struct opcodes_undoc[256] =
{ "ADC", addr_absolute },
{ "ROR", addr_absolute },
{ "rad", addr_absolute },
{ "BVS", addr_relative },
{ "BVS", addr_relative }, // 0x70
{ "ADC", addr_indirect_y },
{ "hang", addr_implied },
{ "rad", addr_indirect_y },
@ -677,7 +677,7 @@ const struct opcode_struct opcodes_undoc[256] =
{ "ADC", addr_zeropage_x },
{ "ROR", addr_zeropage_x },
{ "rad", addr_zeropage_x },
{ "SEI", addr_implied },
{ "SEI", addr_implied }, // 0x78
{ "ADC", addr_absolute_y },
{ "nop", addr_implied },
{ "rad", addr_absolute_y },
@ -685,7 +685,7 @@ const struct opcode_struct opcodes_undoc[256] =
{ "ADC", addr_absolute_x },
{ "ROR", addr_absolute_x },
{ "rad", addr_absolute_x },
{ "nop", addr_immediate },
{ "nop", addr_immediate }, // 0x80
{ "STA", addr_indirect_x },
{ "nop", addr_immediate },
{ "aax", addr_indirect_x },
@ -693,7 +693,7 @@ const struct opcode_struct opcodes_undoc[256] =
{ "STA", addr_zeropage },
{ "STX", addr_zeropage },
{ "aax", addr_zeropage },
{ "DEY", addr_implied },
{ "DEY", addr_implied }, // 0x88
{ "nop", addr_immediate },
{ "TXA", addr_implied },
{ "xma", addr_immediate },
@ -701,7 +701,7 @@ const struct opcode_struct opcodes_undoc[256] =
{ "STA", addr_absolute },
{ "STX", addr_absolute },
{ "aax", addr_absolute },
{ "BCC", addr_relative },
{ "BCC", addr_relative }, // 0x90
{ "STA", addr_indirect_y },
{ "hang", addr_implied },
{ "aax", addr_indirect_y },
@ -709,7 +709,7 @@ const struct opcode_struct opcodes_undoc[256] =
{ "STA", addr_zeropage_x },
{ "STX", addr_zeropage_y },
{ "aax", addr_zeropage_y },
{ "TYA", addr_implied },
{ "TYA", addr_implied }, // 0x98
{ "STA", addr_absolute_y },
{ "TXS", addr_implied },
{ "axs", addr_absolute_y },
@ -717,7 +717,7 @@ const struct opcode_struct opcodes_undoc[256] =
{ "STA", addr_absolute_x },
{ "tex", addr_absolute_y },
{ "tea", addr_absolute_y },
{ "LDY", addr_immediate },
{ "LDY", addr_immediate }, // 0xA0
{ "LDA", addr_indirect_x },
{ "LDX", addr_immediate },
{ "lax", addr_indirect_x },
@ -725,7 +725,7 @@ const struct opcode_struct opcodes_undoc[256] =
{ "LDA", addr_zeropage },
{ "LDX", addr_zeropage },
{ "lax", addr_zeropage },
{ "TAY", addr_implied },
{ "TAY", addr_implied }, // 0xA8
{ "LDA", addr_immediate },
{ "TAX", addr_implied },
{ "ama", addr_immediate },
@ -733,7 +733,7 @@ const struct opcode_struct opcodes_undoc[256] =
{ "LDA", addr_absolute },
{ "LDX", addr_absolute },
{ "lax", addr_absolute },
{ "BCS", addr_relative },
{ "BCS", addr_relative }, // 0xB0
{ "LDA", addr_indirect_y },
{ "hang", addr_implied },
{ "lax", addr_indirect_y },
@ -741,7 +741,7 @@ const struct opcode_struct opcodes_undoc[256] =
{ "LDA", addr_zeropage_x },
{ "LDX", addr_zeropage_y },
{ "laz", addr_zeropage_y },
{ "CLV", addr_implied },
{ "CLV", addr_implied }, // 0xB8
{ "LDA", addr_absolute_y },
{ "TSX", addr_implied },
{ "las", addr_absolute_y },
@ -749,7 +749,7 @@ const struct opcode_struct opcodes_undoc[256] =
{ "LDA", addr_absolute_x },
{ "LDX", addr_absolute_y },
{ "lax", addr_absolute_y },
{ "CPY", addr_immediate },
{ "CPY", addr_immediate }, // 0xC0
{ "CMP", addr_indirect_x },
{ "nop", addr_immediate },
{ "dcp", addr_indirect_x },
@ -757,7 +757,7 @@ const struct opcode_struct opcodes_undoc[256] =
{ "CMP", addr_zeropage },
{ "DEC", addr_zeropage },
{ "dcp", addr_zeropage },
{ "INY", addr_implied },
{ "INY", addr_implied }, // 0xC8
{ "CMP", addr_immediate },
{ "DEX", addr_implied },
{ "axm", addr_immediate },
@ -765,7 +765,7 @@ const struct opcode_struct opcodes_undoc[256] =
{ "CMP", addr_absolute },
{ "DEC", addr_absolute },
{ "dcp", addr_absolute },
{ "BNE", addr_relative },
{ "BNE", addr_relative }, // 0xD0
{ "CMP", addr_indirect_y },
{ "hang", addr_implied },
{ "dcp", addr_indirect_y },
@ -773,7 +773,7 @@ const struct opcode_struct opcodes_undoc[256] =
{ "CMP", addr_zeropage_x },
{ "DEC", addr_zeropage_x },
{ "dcp", addr_zeropage_x },
{ "CLD", addr_implied },
{ "CLD", addr_implied }, // 0xD8
{ "CMP", addr_absolute_y },
{ "nop", addr_implied },
{ "dcp", addr_absolute_y },
@ -781,7 +781,7 @@ const struct opcode_struct opcodes_undoc[256] =
{ "CMP", addr_absolute_x },
{ "DEC", addr_absolute_x },
{ "dcp", addr_absolute_x },
{ "CPX", addr_immediate },
{ "CPX", addr_immediate }, // 0xE0
{ "SBC", addr_indirect_x },
{ "nop", addr_immediate },
{ "isb", addr_indirect_x },
@ -789,7 +789,7 @@ const struct opcode_struct opcodes_undoc[256] =
{ "SBC", addr_zeropage },
{ "INC", addr_zeropage },
{ "isb", addr_zeropage },
{ "INX", addr_implied },
{ "INX", addr_implied }, // 0xE8
{ "SBC", addr_immediate },
{ "NOP", addr_implied },
{ "zbc", addr_immediate },
@ -797,7 +797,7 @@ const struct opcode_struct opcodes_undoc[256] =
{ "SBC", addr_absolute },
{ "INC", addr_absolute },
{ "isb", addr_absolute },
{ "BEQ", addr_relative },
{ "BEQ", addr_relative }, // 0xF0
{ "SBC", addr_indirect_y },
{ "hang", addr_implied },
{ "isb", addr_indirect_y },
@ -805,7 +805,7 @@ const struct opcode_struct opcodes_undoc[256] =
{ "SBC", addr_zeropage_x },
{ "INC", addr_zeropage_x },
{ "isb", addr_zeropage_x },
{ "SED", addr_implied },
{ "SED", addr_implied }, // 0xF8
{ "SBC", addr_absolute_y },
{ "nop", addr_implied },
{ "isb", addr_absolute_y },