#include "enums.h" static const uint8_t optype[0x100] = { [CPS_IMP ] = IMPL, [ADC_IMM ] = IMM, [ROR_IMM ] = IMM, [CPB_IMM ] = IMM, [ADC_Z ] = ZM, [ROR_Z ] = ZM, [CPB_Z ] = ZM, [CLC_IMP ] = IMPL, [TAB_IMP ] = IMPL, [STY_Z ] = ZM, [JMP_AB ] = ABS, [ADC_AB ] = ABS, [ROR_AB ] = ABS, [CPB_AB ] = ABS, [ADC_B ] = BREG, [ROR_B ] = BREG, [STY_AB ] = ABS, [SEC_IMP ] = IMPL, [TBA_IMP ] = IMPL, [JMP_Z ] = ZM, [SBC_IMM ] = IMM, [MUL_IMM ] = IMM, [CPX_IMM ] = IMM, [SBC_Z ] = ZM, [MUL_Z ] = ZM, [CPX_Z ] = ZM, [CLI_IMP ] = IMPL, [TAY_IMP ] = IMPL, [STA_Z ] = ZM, [STA_ZX ] = ZMX, [JSR_AB ] = ABS, [SBC_AB ] = ABS, [MUL_AB ] = ABS, [CPX_AB ] = ABS, [SBC_B ] = BREG, [MUL_B ] = BREG, [STA_AB ] = ABS, [SEI_IMP ] = IMPL, [TYA_IMP ] = IMPL, [STA_ZY ] = ZMY, [STA_IX ] = INDX, [JSR_Z ] = ZM, [AND_IMM ] = IMM, [DIV_IMM ] = IMM, [CPY_IMM ] = IMM, [AND_Z ] = ZM, [DIV_Z ] = ZM, [CPY_Z ] = ZM, [CLV_IMP ] = IMPL, [TAX_IMP ] = IMPL, [STB_Z ] = ZM, [STB_ZX ] = ZMX, [RTS_IMP ] = IMPL, [AND_AB ] = ABS, [DIV_AB ] = ABS, [CPY_AB ] = ABS, [AND_B ] = BREG, [DIV_B ] = BREG, [STB_AB ] = ABS, [WAI_IMP ] = IMPL, [TXA_IMP ] = IMPL, [STB_ZY ] = ZMY, [STB_IX ] = INDX, [RTI_IMP ] = IMPL, [ORA_IMM ] = IMM, [ASR_IMM ] = IMM, [LDX_IMM ] = IMM, [ORA_Z ] = ZM, [ASR_Z ] = ZM, [LDX_Z ] = ZM, [BRK_IMP ] = IMPL, [TYX_IMP ] = IMPL, [STX_Z ] = ZM, [PHP_IMP ] = IMPL, [BPO_REL ] = REL, [ORA_AB ] = ABS, [ASR_AB ] = ABS, [LDX_AB ] = ABS, [ORA_B ] = BREG, [ASR_B ] = BREG, [STX_AB ] = ABS, [DEY_IMP ] = IMPL, [TXY_IMP ] = IMPL, [CPB_IN ] = IND, [PLP_IMP ] = IMPL, [BNG_REL ] = REL, [XOR_IMM ] = IMM, [CMP_IMM ] = IMM, [DEC_IMP ] = IMPL, [XOR_Z ] = ZM, [CMP_Z ] = ZM, [DEC_Z ] = ZM, [INY_IMP ] = IMPL, [TSX_IMP ] = IMPL, [CMP_IN ] = IND, [PHA_IMP ] = IMPL, [BCS_REL ] = REL, [XOR_AB ] = ABS, [CMP_AB ] = ABS, [DEC_AB ] = ABS, [XOR_B ] = BREG, [CMP_B ] = BREG, [DEB_IMP ] = IMPL, [TXS_IMM ] = IMM, [STY_IN ] = IND, [PLA_IMP ] = IMPL, [BCC_REL ] = REL, [LSL_IMM ] = IMM, [LDY_IMM ] = IMM, [INC_IMP ] = IMPL, [LSL_Z ] = ZM, [LDY_Z ] = ZM, [INC_Z ] = ZM, [INB_IMP ] = IMPL, [CMP_IX ] = INDX, [LDY_IN ] = IND, [PHB_IMP ] = IMPL, [BEQ_REL ] = REL, [LSL_AB ] = ABS, [LDY_AB ] = ABS, [INC_AB ] = ABS, [LSL_B ] = BREG, [DEX_IMP ] = IMPL, [CPB_IX ] = INDX, [LDX_IN ] = IND, [PLB_IMP ] = IMPL, [BNE_REL ] = REL, [LSR_IMM ] = IMM, [LDA_IMM ] = IMM, [LDA_IN ] = IND, [LSR_Z ] = ZM, [LDA_Z ] = ZM, [LDA_ZX ] = ZMX, [INX_IMP ] = IMPL, [STA_IY ] = INDY, [STX_IN ] = IND, [PHY_IMP ] = IMPL, [BVS_REL ] = REL, [LSR_AB ] = ABS, [LDA_AB ] = ABS, [STA_IN ] = IND, [LSR_B ] = BREG, [LDA_ZY ] = ZMY, [LDA_IX ] = INDX, [LDA_IY ] = INDY, [STB_IY ] = INDY, [JSR_IN ] = IND, [PLY_IMP ] = IMPL, [BVC_REL ] = REL, [ROL_IMM ] = IMM, [LDB_IMM ] = IMM, [LDB_IN ] = IND, [ROL_Z ] = ZM, [LDB_Z ] = ZM, [LDB_ZX ] = ZMX, [LDB_IY ] = INDY, [NOP_IMP ] = IMPL, [JMP_IN ] = IND, [PHX_IMP ] = IMPL, [BRA_REL ] = REL, [ROL_AB ] = ABS, [LDB_AB ] = ABS, [STB_IN ] = IND, [ROL_B ] = BREG, [LDB_ZY ] = ZMY, [LDB_IX ] = INDX, [CMP_IY ] = INDY, [CPB_IY ] = INDY, [PLX_IMP ] = IMPL };