diff options
Diffstat (limited to 'disasm.h')
-rw-r--r-- | disasm.h | 353 |
1 files changed, 169 insertions, 184 deletions
@@ -1,186 +1,171 @@ static const char *opname[0x100] = { - [0x00] = "CPS", - [0x01] = "ADC #", - [0x02] = "AAB", - [0x04] = "ADC a", - [0x05] = "LDA ind", - [0x06] = "ADC zm", - [0x08] = "PHP #", - [0x09] = "CPB #", - [0x0A] = "PHB #", - [0x0C] = "DEC a", - [0x0D] = "DEC zm", - [0x0E] = "JMP zm", - [0x10] = "JMP a", - [0x11] = "SBC #", - [0x12] = "SAB", - [0x14] = "SBC a", - [0x15] = "STA ind", - [0x16] = "SBC zm", - [0x18] = "ENT #", - [0x19] = "CPY #", - [0x1A] = "PLB #", - [0x1C] = "INC a", - [0x1D] = "INC zm", - [0x1E] = "JSR zm", - [0x20] = "JSR a", - [0x21] = "AND #", - [0x22] = "ABA", - [0x24] = "AND a", - [0x25] = "CMP ind", - [0x26] = "AND zm", - [0x28] = "PLP #", - [0x29] = "CPX #", - [0x2A] = "PHY #", - [0x2C] = "CPB a", - [0x2D] = "CPB zm", - [0x2E] = "BPO zm", - [0x30] = "BPO a", - [0x31] = "ORA #", - [0x32] = "OAB", - [0x34] = "ORA a", - [0x35] = "LDB ind", - [0x36] = "ORA zm", - [0x38] = "STT #", - [0x39] = "LDA zmy", - [0x3A] = "PLY #", - [0x3C] = "CPX a", - [0x3D] = "CPY zm", - [0x3E] = "BNG zm", - [0x40] = "BNG a", - [0x41] = "XOR #", - [0x42] = "XAB", - [0x44] = "XOR a", - [0x45] = "STB ind", - [0x46] = "XOR zm", - [0x48] = "PHA #", - [0x49] = "STA zmy", - [0x4A] = "PHX #", - [0x4C] = "CPY a", - [0x4D] = "CPX zm", - [0x4E] = "BCS zm", - [0x50] = "BCS a", - [0x51] = "LSL #", - [0x52] = "LLB", - [0x54] = "LSL a", - [0x55] = "CPB ind", - [0x56] = "LSL zm", - [0x58] = "CLC", - [0x59] = "LDB zmy", - [0x5A] = "PLX #", - [0x5C] = "LDA iny", - [0x5D] = "LDA inx", - [0x5E] = "BCC zm", - [0x60] = "BCC a", - [0x61] = "LSR #", - [0x62] = "LRB", - [0x64] = "LSR a", - [0x65] = "LDY ind", - [0x66] = "LSR zm", - [0x68] = "PLA #", - [0x69] = "STB zmy", - [0x6A] = "TAB", - [0x6C] = "STA iny", - [0x6D] = "STA inx", - [0x6E] = "BEQ zm", - [0x70] = "BEQ a", - [0x71] = "ROL #", - [0x72] = "RLB", - [0x74] = "ROL a", - [0x75] = "STY ind", - [0x76] = "ROL zm", - [0x78] = "SEC", - [0x79] = "LDA zmx", - [0x7A] = "TBA", - [0x7C] = "CMP iny", - [0x7D] = "CMP inx", - [0x7E] = "BNE zm", - [0x80] = "BNE a", - [0x81] = "ROR #", - [0x82] = "RRB", - [0x84] = "ROR a", - [0x85] = "CPY ind", - [0x86] = "ROR zm", - [0x88] = "DEY", - [0x89] = "STA zmx", - [0x8A] = "TAY", - [0x8C] = "LDB iny", - [0x8D] = "LDB inx", - [0x8E] = "BVS zm", - [0x90] = "BVS a", - [0x91] = "MUL #", - [0x92] = "MAB", - [0x94] = "MUL a", - [0x95] = "LDX ind", - [0x96] = "MUL zm", - [0x98] = "CLI", - [0x99] = "LDB zmx", - [0x9A] = "TYA", - [0x9C] = "STB iny", - [0x9D] = "STB inx", - [0x9E] = "BVC zm", - [0xA0] = "BVC a", - [0xA1] = "DIV #", - [0xA2] = "DAB", - [0xA4] = "DIV a", - [0xA5] = "STX ind", - [0xA6] = "DIV zm", - [0xA8] = "INY", - [0xA9] = "STB zmx", - [0xAA] = "TAX", - [0xAC] = "CPB iny", - [0xAD] = "CPB inx", - [0xAE] = "RTS", - [0xB1] = "CMP #", - [0xB2] = "CAB", - [0xB4] = "CMP a", - [0xB5] = "CPX ind", - [0xB6] = "CMP zm", - [0xB8] = "SEI", - [0xB9] = "LDX #", - [0xBA] = "TXA", - [0xBC] = "LDX a", - [0xBD] = "LDX zm", - [0xBE] = "JSR ind", - [0xC0] = "RTI", - [0xC1] = "LDA #", - [0xC4] = "LDA a", - [0xC5] = "DEX", - [0xC6] = "LDA zm", - [0xC8] = "CLV", - [0xC9] = "LDX zmy", - [0xCA] = "TYX", - [0xCC] = "STA a", - [0xCD] = "STA zm", - [0xCE] = "JMP ind", - [0xD0] = "TSX", - [0xD1] = "LDB #", - [0xD4] = "LDB a", - [0xD5] = "INX", - [0xD6] = "LDB zm", - [0xD8] = "WAI", - [0xD9] = "STX zmy", - [0xDA] = "TXY", - [0xDC] = "STB a", - [0xDD] = "STB zm", - [0xE0] = "TXS #", - [0xE1] = "LDY #", - [0xE4] = "LDY a", - [0xE5] = "DEC A", - [0xE6] = "LDY zm", - [0xE8] = "BRK", - [0xE9] = "LDY zmx", - [0xEA] = "NOP", - [0xEC] = "STY a", - [0xED] = "STY zm", - [0xEE] = "DEB", - [0xF1] = "ASR #", - [0xF2] = "ARB", - [0xF4] = "ASR a", - [0xF5] = "INC A", - [0xF6] = "ASR zm", - [0xF9] = "STY zmx", - [0xFC] = "STX a", - [0xFD] = "STX zm", - [0xFE] = "INB" + [CPS_IMP ] = "CPS", + [ADC_IMM ] = "ADC #", + [AAB_IMP ] = "AAB", + [ADC_AB ] = "ADC a", + [LDA_IN ] = "LDA ind", + [ADC_Z ] = "ADC zm", + [CLC_IMP ] = "CLC", + [DEX_IMP ] = "DEX", + [DEC_IMP ] = "DEC", + [DEC_AB ] = "DEC a", + [DEC_Z ] = "DEC zm", + [JMP_AB ] = "JMP a", + [SBC_IMM ] = "SBC #", + [SAB_IMP ] = "SAB", + [SBC_AB ] = "SBC a", + [STA_IN ] = "STA ind", + [SBC_Z ] = "SBC zm", + [SEC_IMP ] = "SEC", + [INX_IMP ] = "INX", + [INC_IMP ] = "INC", + [INC_AB ] = "INC a", + [INC_Z ] = "INC zm", + [JSR_AB ] = "JSR a", + [AND_IMM ] = "AND #", + [ABA_IMP ] = "ABA", + [AND_AB ] = "AND a", + [CMP_IN ] = "CMP ind", + [AND_Z ] = "AND zm", + [CLI_IMP ] = "CLI", + [DEY_IMP ] = "DEY", + [CPB_IMM ] = "CPB #", + [CPB_AB ] = "CPB a", + [CPB_Z ] = "CPB zm", + [JMP_Z ] = "JMP zm", + [ORA_IMM ] = "ORA #", + [OAB_IMP ] = "OAB", + [ORA_AB ] = "ORA a", + [LDB_IN ] = "LDB ind", + [ORA_Z ] = "ORA zm", + [SEI_IMP ] = "SEI", + [INY_IMP ] = "INY", + [CPX_IMM ] = "CPX #", + [CPX_AB ] = "CPX a", + [CPY_Z ] = "CPY zm", + [JSR_Z ] = "JSR zm", + [XOR_IMM ] = "XOR #", + [XAB_IMP ] = "XAB", + [XOR_AB ] = "XOR a", + [STB_IN ] = "STB ind", + [XOR_Z ] = "XOR zm", + [CLV_IMP ] = "CLV", + [CPY_IMM ] = "CPY #", + [CPY_AB ] = "CPY a", + [CPX_Z ] = "CPX zm", + [BPO_REL ] = "BPO rel", + [LSL_IMM ] = "LSL #", + [LLB_IMP ] = "LLB", + [LSL_AB ] = "LSL a", + [CPB_IN ] = "CPB ind", + [LSL_Z ] = "LSL zm", + [WAI_IMP ] = "WAI", + [PHP_IMP ] = "PHP", + [TAB_IMP ] = "TAB", + [LDA_IY ] = "LDA indy", + [LDA_IX ] = "LDA indx", + [BNG_REL ] = "BNG rel", + [LSR_IMM ] = "LSR #", + [LRB_IMP ] = "LRB", + [LSR_AB ] = "LSR a", + [LDY_IN ] = "LDY ind", + [LSR_Z ] = "LSR zm", + [BRK_IMP ] = "BRK", + [PLP_IMP ] = "PLP", + [TBA_IMP ] = "TBA", + [STA_IY ] = "STA indy", + [STA_IX ] = "STA indx", + [BCS_REL ] = "BCS rel", + [ROL_IMM ] = "ROL #", + [RLB_IMP ] = "RLB", + [ROL_AB ] = "ROL a", + [STY_IN ] = "STY ind", + [ROL_Z ] = "ROL zm", + [LDA_ZY ] = "LDA zmy", + [PHA_IMP ] = "PHA", + [TAY_IMP ] = "TAY", + [CMP_IY ] = "CMP indy", + [CMP_IX ] = "CMP indx", + [BCC_REL ] = "BCC rel", + [ROR_IMM ] = "ROR #", + [RRB_IMP ] = "RRB", + [ROR_AB ] = "ROR a", + [LDX_IN ] = "LDX ind", + [ROR_Z ] = "ROR zm", + [STA_ZY ] = "STA zmy", + [PLA_IMP ] = "PLA", + [TYA_IMP ] = "TYA", + [LDB_IY ] = "LDB indy", + [LDB_IX ] = "LDB indx", + [BEQ_REL ] = "BEQ rel", + [MUL_IMM ] = "MUL #", + [MAB_IMP ] = "MAB", + [MUL_AB ] = "MUL a", + [STX_IN ] = "STX ind", + [MUL_Z ] = "MUL zm", + [LDB_ZY ] = "LDB zmy", + [PHB_IMP ] = "PHB", + [TAX_IMP ] = "TAX", + [STB_IY ] = "STB indy", + [STB_IX ] = "STB indx", + [BNE_REL ] = "BNE rel", + [DIV_IMM ] = "DIV #", + [DAB_IMP ] = "DAB", + [DIV_AB ] = "DIV a", + [JSR_IN ] = "JSR ind", + [DIV_Z ] = "DIV zm", + [STB_ZY ] = "STB zmy", + [PLB_IMP ] = "PLB", + [TXA_IMP ] = "TXA", + [CPB_IY ] = "CPB indy", + [CPB_IX ] = "CPB indx", + [BVS_REL ] = "BVS rel", + [CMP_IMM ] = "CMP #", + [CAB_IMP ] = "CAB", + [CMP_AB ] = "CMP a", + [JMP_IN ] = "JMP ind", + [CMP_Z ] = "CMP zm", + [LDA_ZX ] = "LDA zmx", + [LDX_IMM ] = "LDX #", + [TYX_IMP ] = "TYX", + [LDX_AB ] = "LDX a", + [LDX_Z ] = "LDX zm", + [BVC_REL ] = "BVC rel", + [LDA_IMM ] = "LDA #", + [DEB_IMP ] = "DEB", + [LDA_AB ] = "LDA a", + [LDA_Z ] = "LDA zm", + [STA_ZX ] = "STA zmx", + [PHY_IMP ] = "PHY", + [TXY_IMP ] = "TXY", + [STA_AB ] = "STA a", + [STA_Z ] = "STA zm", + [BRA_REL ] = "BRA rel", + [LDB_IMM ] = "LDB #", + [INB_IMP ] = "INB", + [LDB_AB ] = "LDB a", + [LDB_Z ] = "LDB zm", + [LDB_ZX ] = "LDB zmx", + [PLY_IMP ] = "PLY", + [TSX_IMP ] = "TSX", + [STB_AB ] = "STB a", + [STB_Z ] = "STB zm", + [RTS_IMP ] = "RTS", + [LDY_IMM ] = "LDY #", + [LDY_AB ] = "LDY a", + [LDY_Z ] = "LDY zm", + [STB_ZX ] = "STB zmx", + [PHX_IMP ] = "PHX", + [NOP_IMP ] = "NOP", + [STY_AB ] = "STY a", + [STY_Z ] = "STY zm", + [RTI_IMP ] = "RTI", + [ASR_IMM ] = "ASR #", + [ARB_IMP ] = "ARB", + [ASR_AB ] = "ASR a", + [ASR_Z ] = "ASR zm", + [PLX_IMP ] = "PLX", + [TXS_IMM ] = "TXS #", + [STX_AB ] = "STX a", + [STX_Z ] = "STX zm" }; |