#include "enums.h"
static const uint8_t optype[0x100] = {
[CPS ] = IMPL,
[ADC ] = IMM,
[AAB ] = IMPL,
[ADC_AB ] = ABS,
[LDA_IN ] = IND,
[ADC_Z ] = ZM,
[PHP ] = IMM,
[CPB ] = IMM,
[PHB ] = IMM,
[DEC_AB ] = ABS,
[DEC_Z ] = ZM,
[JMP_Z ] = ZM,
[JMP ] = ABS,
[SBC ] = IMM,
[SAB ] = IMPL,
[SBC_AB ] = ABS,
[STA_IN ] = IND,
[SBC_Z ] = ZM,
[ENT ] = IMM,
[CPY ] = IMM,
[PLB ] = IMM,
[INC_AB ] = ABS,
[INC_Z ] = ZM,
[JSR ] = ZM,
[JSL ] = ABS,
[AND ] = IMM,
[ABA ] = IMPL,
[AND_AB ] = ABS,
[CMP_IN ] = IND,
[AND_Z ] = ZM,
[PLP ] = IMM,
[CPX ] = IMM,
[PHY ] = IMM,
[CPB_AB ] = ABS,
[CPB_Z ] = ZM,
[BPO_Z ] = ZM,
[BPO ] = ABS,
[ORA ] = IMM,
[OAB ] = IMPL,
[ORA_AB ] = ABS,
[LDB_IN ] = IND,
[ORA_Z ] = ZM,
[STT ] = IMM,
[LDA_ZY ] = ZMY,
[PLY ] = IMM,
[CPX_AB ] = ABS,
[CPY_Z ] = ZM,
[BNG_Z ] = ZM,
[BNG ] = ABS,
[XOR ] = IMM,
[XAB ] = IMPL,
[XOR_AB ] = ABS,
[STB_IN ] = IND,
[XOR_Z ] = ZM,
[PHA ] = IMM,
[STA_ZY ] = ZMY,
[PHX ] = IMM,
[CPY_AB ] = ABS,
[CPX_Z ] = ZM,
[BCS_Z ] = ZM,
[BCS ] = ABS,
[LSL ] = IMM,
[LLB ] = IMPL,
[LSL_AB ] = ABS,
[CPB_IN ] = IND,
[LSL_Z ] = ZM,
[CLC ] = IMPL,
[LDB_ZY ] = ZMY,
[PLX ] = IMM,
[LDA_IY ] = INDY,
[LDA_IX ] = INDX,
[BCC_Z ] = ZM,
[BCC ] = ABS,
[LSR ] = IMM,
[LRB ] = IMPL,
[LSR_AB ] = ABS,
[LDY_IN ] = IND,
[LSR_Z ] = ZM,
[PLA ] = IMM,
[STB_ZY ] = ZMY,
[TAB ] = IMPL,
[STA_IY ] = INDY,
[STA_IX ] = INDX,
[BEQ_Z ] = ZM,
[BEQ ] = ABS,
[ROL ] = IMM,
[RLB ] = IMPL,
[ROL_AB ] = ABS,
[STY_IN ] = IND,
[ROL_Z ] = ZM,
[SEC ] = IMPL,
[LDA_ZX ] = ZMX,
[TBA ] = IMPL,
[CMP_IY ] = INDY,
[CMP_IX ] = INDX,
[BNE_Z ] = ZM,
[BNE ] = ABS,
[ROR ] = IMM,
[RRB ] = IMPL,
[ROR_AB ] = ABS,
[CPY_IN ] = IND,
[ROR_Z ] = ZM,
[DEY ] = IMPL,
[STA_ZX ] = ZMX,
[TAY ] = IMPL,
[LDB_IY ] = INDY,
[LDB_IX ] = INDX,
[BVS_Z ] = ZM,
[BVS ] = ABS,
[MUL ] = IMM,
[MAB ] = IMPL,
[MUL_AB ] = ABS,
[LDX_IN ] = IND,
[MUL_Z ] = ZM,
[CLI ] = IMPL,
[LDB_ZX ] = ZMX,
[TYA ] = IMPL,
[STB_IY ] = INDY,
[STB_IX ] = INDX,
[BVC_Z ] = ZM,
[BVC ] = ABS,
[DIV ] = IMM,
[DAB ] = IMPL,
[DIV_AB ] = ABS,
[STX_IN ] = IND,
[DIV_Z ] = ZM,
[INY ] = IMPL,
[STB_ZX ] = ZMX,
[TAX ] = IMPL,
[CPB_IY ] = INDY,
[CPB_IX ] = INDX,
[RTS ] = IMPL,
[RTL ] = IMPL,
[CMP ] = IMM,
[CAB ] = IMPL,
[CMP_AB ] = ABS,
[CPX_IN ] = IND,
[CMP_Z ] = ZM,
[SEI ] = IMPL,
[LDX ] = IMM,
[TXA ] = IMPL,
[LDX_AB ] = ABS,
[LDX_Z ] = ZM,
[JSR_IN ] = IND,
[RTI ] = IMPL,
[LDA ] = IMM,
[LDA_AB ] = ABS,
[DEX ] = IMPL,
[LDA_Z ] = ZM,
[CLV ] = IMPL,
[LDX_ZY ] = ZMY,
[TYX ] = IMPL,
[STA ] = ABS,
[STA_Z ] = ZM,
[JMP_IN ] = IND,
[TSX ] = IMPL,
[LDB ] = IMM,
[LDB_AB ] = ABS,
[INX ] = IMPL,
[LDB_Z ] = ZM,
[WAI ] = IMPL,
[STX_ZY ] = ZMY,
[TXY ] = IMPL,
[STB ] = ABS,
[STB_Z ] = ZM,
[TXS ] = IMM,
[LDY ] = IMM,
[LDY_AB ] = ABS,
[DEC ] = IMPL,
[LDY_Z ] = ZM,
[BRK ] = IMPL,
[LDY_ZX ] = ZMX,
[NOP ] = IMPL,
[STY ] = ABS,
[STY_Z ] = ZM,
[DEB ] = IMPL,
[ASR ] = IMM,
[ARB ] = IMPL,
[ASR_AB ] = ABS,
[INC ] = IMPL,
[ASR_Z ] = ZM,
[STY_ZX ] = ZMX,
[STX ] = ABS,
[STX_Z ] = ZM,
[INB ] = IMPL
};