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