summaryrefslogtreecommitdiff
path: root/tables.h
diff options
context:
space:
mode:
Diffstat (limited to 'tables.h')
-rw-r--r--tables.h168
1 files changed, 167 insertions, 1 deletions
diff --git a/tables.h b/tables.h
index 16d5563..b67765d 100644
--- a/tables.h
+++ b/tables.h
@@ -104,7 +104,7 @@ static const uint8_t optype[0x100] = {
[XOR_B ] = BREG,
[CMP_B ] = BREG,
[DEB_IMP ] = IMPL,
- [TXS_IMM ] = IMM,
+ [TXS_IMP ] = IMPL,
[STY_IN ] = IND,
[PLA_IMP ] = IMPL,
[BCC_REL ] = REL,
@@ -171,3 +171,169 @@ static const uint8_t optype[0x100] = {
[CPB_IY ] = INDY,
[PLX_IMP ] = IMPL
};
+
+static const uint8_t ext_optype[0x100] = {
+ [LEA_AY ] = ABSY,
+ [ADD_IMM] = IMM,
+ [LEA_Z ] = ZM,
+ [CPE_IMM] = IMM,
+ [CLZ_Z ] = ZM,
+ [ADD_Z ] = ZM,
+ [STB_E ] = EIND,
+ [CPE_Z ] = ZM,
+ [LNG_IMM] = IMM,
+ [LNG_E ] = EIND,
+ [JMP_E ] = EIND,
+ [ADC_E ] = EIND,
+ [ROR_E ] = EIND,
+ [LEA_AB ] = ABS,
+ [CLZ_AB ] = ABS,
+ [ADD_AB ] = ABS,
+ [LEA_ZY ] = ZMY,
+ [CPE_AB ] = ABS,
+ [CLZ_E ] = EIND,
+ [ADD_E ] = EIND,
+ [LDX_E ] = EIND,
+ [SNG_E ] = EIND,
+ [PEA_AY ] = ABSY,
+ [SUB_IMM] = IMM,
+ [PEA_Z ] = ZM,
+ [CLO_Z ] = ZM,
+ [SUB_Z ] = ZM,
+ [STX_E ] = EIND,
+ [ICE_Z ] = ZM,
+ [LPO_IMM] = IMM,
+ [LPO_E ] = EIND,
+ [JSR_E ] = EIND,
+ [SBC_E ] = EIND,
+ [MUL_E ] = EIND,
+ [PEA_AB ] = ABS,
+ [CLO_AB ] = ABS,
+ [SUB_AB ] = ABS,
+ [PEA_ZY ] = ZMY,
+ [ICE_AB ] = ABS,
+ [CLO_E ] = EIND,
+ [SUB_E ] = EIND,
+ [CPB_E ] = EIND,
+ [ICE_E ] = EIND,
+ [SPO_E ] = EIND,
+ [LDS_IMM] = IMM,
+ [LEA_AI ] = AIND,
+ [LDS_Z ] = ZM,
+ [ADE_IMM] = IMM,
+ [LEA_IN ] = IND,
+ [BIT_Z ] = ZM,
+ [ADE_Z ] = ZM,
+ [CPX_E ] = EIND,
+ [LLM_Z ] = ZM,
+ [LCS_IMM] = IMM,
+ [LCS_E ] = EIND,
+ [LDS_AB ] = ABS,
+ [AND_E ] = EIND,
+ [DIV_E ] = EIND,
+ [LEA_AX ] = ABSX,
+ [LDS_E ] = EIND,
+ [BIT_AB ] = ABS,
+ [ADE_AB ] = ABS,
+ [LEA_ZX ] = ZMX,
+ [LLM_AB ] = ABS,
+ [BIT_E ] = EIND,
+ [CPY_E ] = EIND,
+ [LLM_E ] = EIND,
+ [SCS_E ] = EIND,
+ [SCO_IMM] = IMM,
+ [PEA_AI ] = AIND,
+ [SCO_Z ] = ZM,
+ [SBE_IMM] = IMM,
+ [PEA_IN ] = IND,
+ [SBE_Z ] = ZM,
+ [PHE_IMP] = IMPL,
+ [LRM_Z ] = ZM,
+ [LCC_IMM] = IMM,
+ [LCC_E ] = EIND,
+ [SCO_AB ] = ABS,
+ [ORA_E ] = EIND,
+ [ASR_E ] = EIND,
+ [PEA_AX ] = ABSX,
+ [SCO_E ] = EIND,
+ [SBE_AB ] = ABS,
+ [PEA_ZX ] = ZMX,
+ [LRM_AB ] = ABS,
+ [PLE_IMP] = IMPL,
+ [LRM_E ] = EIND,
+ [SCC_E ] = EIND,
+ [ECO_IMM] = IMM,
+ [DEC_E ] = EIND,
+ [LEA_AIY] = AINDY,
+ [ECO_Z ] = ZM,
+ [ADS_IMM] = IMM,
+ [LEA_IY ] = INDY,
+ [ADS_Z ] = ZM,
+ [DEE_IMP] = IMPL,
+ [RLM_Z ] = ZM,
+ [LEQ_IMM] = IMM,
+ [LEQ_E ] = EIND,
+ [ECO_AB ] = ABS,
+ [XOR_E ] = EIND,
+ [CMP_E ] = EIND,
+ [LEA_AIX] = AINDX,
+ [ECO_E ] = EIND,
+ [ADS_AB ] = ABS,
+ [LEA_IX ] = INDX,
+ [RLM_AB ] = ABS,
+ [ADS_E ] = EIND,
+ [INE_IMP] = IMPL,
+ [RLM_E ] = EIND,
+ [SEQ_E ] = EIND,
+ [INC_E ] = EIND,
+ [PEA_AIY] = AINDY,
+ [STS_Z ] = ZM,
+ [SBS_IMM] = IMM,
+ [PEA_IY ] = INDY,
+ [SBS_Z ] = ZM,
+ [DES_IMP] = IMPL,
+ [RRM_Z ] = ZM,
+ [LNE_IMM] = IMM,
+ [LNE_E ] = EIND,
+ [STS_AB ] = ABS,
+ [LSL_E ] = EIND,
+ [LDY_E ] = EIND,
+ [PEA_AIX] = AINDX,
+ [STS_E ] = EIND,
+ [SBS_AB ] = ABS,
+ [PEA_IX ] = INDX,
+ [RRM_AB ] = ABS,
+ [SBS_E ] = EIND,
+ [INS_IMP] = IMPL,
+ [RRM_E ] = EIND,
+ [REP_REL] = REL,
+ [SNE_E ] = EIND,
+ [STY_E ] = EIND,
+ [STE_Z ] = ZM,
+ [NOT_A ] = IMPL,
+ [NOT_Z ] = ZM,
+ [MMV_IMP] = IMPL,
+ [ARM_Z ] = ZM,
+ [REQ_REL] = REL,
+ [STE_AB ] = ABS,
+ [LSR_E ] = EIND,
+ [LDA_E ] = EIND,
+ [NOT_AB ] = ABS,
+ [ARM_AB ] = ABS,
+ [NOT_E ] = EIND,
+ [ARM_E ] = EIND,
+ [RNE_REL] = REL,
+ [STA_E ] = EIND,
+ [STZ_Z ] = ZM,
+ [SWP_A ] = IMPL,
+ [SWP_Z ] = ZM,
+ [PCN_Z ] = ZM,
+ [STZ_AB ] = ABS,
+ [ROL_E ] = EIND,
+ [LDB_E ] = EIND,
+ [STZ_E ] = EIND,
+ [SWP_AB ] = ABS,
+ [PCN_AB ] = ABS,
+ [SWP_E ] = EIND,
+ [PCN_E ] = EIND
+};