#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_Z ] = ZM, [JSR ] = 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, [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 };