more crap implemented!

This commit is contained in:
StapleButter
2016-12-03 15:15:34 +01:00
parent 948cdeab59
commit 53bef35cd1
9 changed files with 472 additions and 98 deletions

View File

@ -1571,40 +1571,40 @@ INSTRFUNC_PROTO(ARMInstrTable[4096]) =
INSTRFUNC_PROTO(THUMBInstrTable[1024]) =
{
// 0000 0000 00
T_UNK, T_UNK, T_UNK, T_UNK,
T_UNK, T_UNK, T_UNK, T_UNK,
T_UNK, T_UNK, T_UNK, T_UNK,
T_UNK, T_UNK, T_UNK, T_UNK,
T_LSL_IMM, T_LSL_IMM, T_LSL_IMM, T_LSL_IMM,
T_LSL_IMM, T_LSL_IMM, T_LSL_IMM, T_LSL_IMM,
T_LSL_IMM, T_LSL_IMM, T_LSL_IMM, T_LSL_IMM,
T_LSL_IMM, T_LSL_IMM, T_LSL_IMM, T_LSL_IMM,
// 0000 0100 00
T_UNK, T_UNK, T_UNK, T_UNK,
T_UNK, T_UNK, T_UNK, T_UNK,
T_UNK, T_UNK, T_UNK, T_UNK,
T_UNK, T_UNK, T_UNK, T_UNK,
T_LSL_IMM, T_LSL_IMM, T_LSL_IMM, T_LSL_IMM,
T_LSL_IMM, T_LSL_IMM, T_LSL_IMM, T_LSL_IMM,
T_LSL_IMM, T_LSL_IMM, T_LSL_IMM, T_LSL_IMM,
T_LSL_IMM, T_LSL_IMM, T_LSL_IMM, T_LSL_IMM,
// 0000 1000 00
T_UNK, T_UNK, T_UNK, T_UNK,
T_UNK, T_UNK, T_UNK, T_UNK,
T_UNK, T_UNK, T_UNK, T_UNK,
T_UNK, T_UNK, T_UNK, T_UNK,
T_LSR_IMM, T_LSR_IMM, T_LSR_IMM, T_LSR_IMM,
T_LSR_IMM, T_LSR_IMM, T_LSR_IMM, T_LSR_IMM,
T_LSR_IMM, T_LSR_IMM, T_LSR_IMM, T_LSR_IMM,
T_LSR_IMM, T_LSR_IMM, T_LSR_IMM, T_LSR_IMM,
// 0000 1100 00
T_UNK, T_UNK, T_UNK, T_UNK,
T_UNK, T_UNK, T_UNK, T_UNK,
T_UNK, T_UNK, T_UNK, T_UNK,
T_UNK, T_UNK, T_UNK, T_UNK,
T_LSR_IMM, T_LSR_IMM, T_LSR_IMM, T_LSR_IMM,
T_LSR_IMM, T_LSR_IMM, T_LSR_IMM, T_LSR_IMM,
T_LSR_IMM, T_LSR_IMM, T_LSR_IMM, T_LSR_IMM,
T_LSR_IMM, T_LSR_IMM, T_LSR_IMM, T_LSR_IMM,
// 0001 0000 00
T_UNK, T_UNK, T_UNK, T_UNK,
T_UNK, T_UNK, T_UNK, T_UNK,
T_UNK, T_UNK, T_UNK, T_UNK,
T_UNK, T_UNK, T_UNK, T_UNK,
T_ASR_IMM, T_ASR_IMM, T_ASR_IMM, T_ASR_IMM,
T_ASR_IMM, T_ASR_IMM, T_ASR_IMM, T_ASR_IMM,
T_ASR_IMM, T_ASR_IMM, T_ASR_IMM, T_ASR_IMM,
T_ASR_IMM, T_ASR_IMM, T_ASR_IMM, T_ASR_IMM,
// 0001 0100 00
T_UNK, T_UNK, T_UNK, T_UNK,
T_UNK, T_UNK, T_UNK, T_UNK,
T_UNK, T_UNK, T_UNK, T_UNK,
T_UNK, T_UNK, T_UNK, T_UNK,
T_ASR_IMM, T_ASR_IMM, T_ASR_IMM, T_ASR_IMM,
T_ASR_IMM, T_ASR_IMM, T_ASR_IMM, T_ASR_IMM,
T_ASR_IMM, T_ASR_IMM, T_ASR_IMM, T_ASR_IMM,
T_ASR_IMM, T_ASR_IMM, T_ASR_IMM, T_ASR_IMM,
// 0001 1000 00
T_UNK, T_UNK, T_UNK, T_UNK,
@ -1669,10 +1669,10 @@ INSTRFUNC_PROTO(THUMBInstrTable[1024]) =
// 0100 0000 00
T_UNK, T_UNK, T_UNK, T_UNK,
T_UNK, T_UNK, T_UNK, T_UNK,
T_UNK, T_UNK, T_UNK, T_UNK,
T_UNK, T_UNK, T_UNK, T_UNK,
T_AND_REG, T_EOR_REG, T_LSL_REG, T_LSR_REG,
T_ASR_REG, T_ADC_REG, T_SBC_REG, T_ROR_REG,
T_TST_REG, T_NEG_REG, T_CMP_REG, T_CMN_REG,
T_ORR_REG, T_MUL_REG, T_BIC_REG, T_MVN_REG,
// 0100 0100 00
T_UNK, T_UNK, T_UNK, T_UNK,
@ -1767,28 +1767,28 @@ INSTRFUNC_PROTO(THUMBInstrTable[1024]) =
// 1000 0000 00
T_UNK, T_UNK, T_UNK, T_UNK,
T_UNK, T_UNK, T_UNK, T_UNK,
T_UNK, T_UNK, T_UNK, T_UNK,
T_UNK, T_UNK, T_UNK, T_UNK,
T_STRH_IMM, T_STRH_IMM, T_STRH_IMM, T_STRH_IMM,
T_STRH_IMM, T_STRH_IMM, T_STRH_IMM, T_STRH_IMM,
T_STRH_IMM, T_STRH_IMM, T_STRH_IMM, T_STRH_IMM,
T_STRH_IMM, T_STRH_IMM, T_STRH_IMM, T_STRH_IMM,
// 1000 0100 00
T_UNK, T_UNK, T_UNK, T_UNK,
T_UNK, T_UNK, T_UNK, T_UNK,
T_UNK, T_UNK, T_UNK, T_UNK,
T_UNK, T_UNK, T_UNK, T_UNK,
T_STRH_IMM, T_STRH_IMM, T_STRH_IMM, T_STRH_IMM,
T_STRH_IMM, T_STRH_IMM, T_STRH_IMM, T_STRH_IMM,
T_STRH_IMM, T_STRH_IMM, T_STRH_IMM, T_STRH_IMM,
T_STRH_IMM, T_STRH_IMM, T_STRH_IMM, T_STRH_IMM,
// 1000 1000 00
T_UNK, T_UNK, T_UNK, T_UNK,
T_UNK, T_UNK, T_UNK, T_UNK,
T_UNK, T_UNK, T_UNK, T_UNK,
T_UNK, T_UNK, T_UNK, T_UNK,
T_LDRH_IMM, T_LDRH_IMM, T_LDRH_IMM, T_LDRH_IMM,
T_LDRH_IMM, T_LDRH_IMM, T_LDRH_IMM, T_LDRH_IMM,
T_LDRH_IMM, T_LDRH_IMM, T_LDRH_IMM, T_LDRH_IMM,
T_LDRH_IMM, T_LDRH_IMM, T_LDRH_IMM, T_LDRH_IMM,
// 1000 1100 00
T_UNK, T_UNK, T_UNK, T_UNK,
T_UNK, T_UNK, T_UNK, T_UNK,
T_UNK, T_UNK, T_UNK, T_UNK,
T_UNK, T_UNK, T_UNK, T_UNK,
T_LDRH_IMM, T_LDRH_IMM, T_LDRH_IMM, T_LDRH_IMM,
T_LDRH_IMM, T_LDRH_IMM, T_LDRH_IMM, T_LDRH_IMM,
T_LDRH_IMM, T_LDRH_IMM, T_LDRH_IMM, T_LDRH_IMM,
T_LDRH_IMM, T_LDRH_IMM, T_LDRH_IMM, T_LDRH_IMM,
// 1001 0000 00
T_UNK, T_UNK, T_UNK, T_UNK,
@ -1845,8 +1845,8 @@ INSTRFUNC_PROTO(THUMBInstrTable[1024]) =
T_UNK, T_UNK, T_UNK, T_UNK,
// 1011 0100 00
T_UNK, T_UNK, T_UNK, T_UNK,
T_UNK, T_UNK, T_UNK, T_UNK,
T_PUSH, T_PUSH, T_PUSH, T_PUSH,
T_PUSH, T_PUSH, T_PUSH, T_PUSH,
T_UNK, T_UNK, T_UNK, T_UNK,
T_UNK, T_UNK, T_UNK, T_UNK,
@ -1857,8 +1857,8 @@ INSTRFUNC_PROTO(THUMBInstrTable[1024]) =
T_UNK, T_UNK, T_UNK, T_UNK,
// 1011 1100 00
T_UNK, T_UNK, T_UNK, T_UNK,
T_UNK, T_UNK, T_UNK, T_UNK,
T_POP, T_POP, T_POP, T_POP,
T_POP, T_POP, T_POP, T_POP,
T_UNK, T_UNK, T_UNK, T_UNK,
T_UNK, T_UNK, T_UNK, T_UNK,
@ -1925,38 +1925,38 @@ INSTRFUNC_PROTO(THUMBInstrTable[1024]) =
T_UNK, T_UNK, T_UNK, T_UNK,
// 1110 1000 00
T_UNK, T_UNK, T_UNK, T_UNK,
T_UNK, T_UNK, T_UNK, T_UNK,
T_UNK, T_UNK, T_UNK, T_UNK,
T_UNK, T_UNK, T_UNK, T_UNK,
T_BL_LONG_2, T_BL_LONG_2, T_BL_LONG_2, T_BL_LONG_2,
T_BL_LONG_2, T_BL_LONG_2, T_BL_LONG_2, T_BL_LONG_2,
T_BL_LONG_2, T_BL_LONG_2, T_BL_LONG_2, T_BL_LONG_2,
T_BL_LONG_2, T_BL_LONG_2, T_BL_LONG_2, T_BL_LONG_2,
// 1110 1100 00
T_UNK, T_UNK, T_UNK, T_UNK,
T_UNK, T_UNK, T_UNK, T_UNK,
T_UNK, T_UNK, T_UNK, T_UNK,
T_UNK, T_UNK, T_UNK, T_UNK,
T_BL_LONG_2, T_BL_LONG_2, T_BL_LONG_2, T_BL_LONG_2,
T_BL_LONG_2, T_BL_LONG_2, T_BL_LONG_2, T_BL_LONG_2,
T_BL_LONG_2, T_BL_LONG_2, T_BL_LONG_2, T_BL_LONG_2,
T_BL_LONG_2, T_BL_LONG_2, T_BL_LONG_2, T_BL_LONG_2,
// 1111 0000 00
T_UNK, T_UNK, T_UNK, T_UNK,
T_UNK, T_UNK, T_UNK, T_UNK,
T_UNK, T_UNK, T_UNK, T_UNK,
T_UNK, T_UNK, T_UNK, T_UNK,
T_BL_LONG_1, T_BL_LONG_1, T_BL_LONG_1, T_BL_LONG_1,
T_BL_LONG_1, T_BL_LONG_1, T_BL_LONG_1, T_BL_LONG_1,
T_BL_LONG_1, T_BL_LONG_1, T_BL_LONG_1, T_BL_LONG_1,
T_BL_LONG_1, T_BL_LONG_1, T_BL_LONG_1, T_BL_LONG_1,
// 1111 0100 00
T_UNK, T_UNK, T_UNK, T_UNK,
T_UNK, T_UNK, T_UNK, T_UNK,
T_UNK, T_UNK, T_UNK, T_UNK,
T_UNK, T_UNK, T_UNK, T_UNK,
T_BL_LONG_1, T_BL_LONG_1, T_BL_LONG_1, T_BL_LONG_1,
T_BL_LONG_1, T_BL_LONG_1, T_BL_LONG_1, T_BL_LONG_1,
T_BL_LONG_1, T_BL_LONG_1, T_BL_LONG_1, T_BL_LONG_1,
T_BL_LONG_1, T_BL_LONG_1, T_BL_LONG_1, T_BL_LONG_1,
// 1111 1000 00
T_UNK, T_UNK, T_UNK, T_UNK,
T_UNK, T_UNK, T_UNK, T_UNK,
T_UNK, T_UNK, T_UNK, T_UNK,
T_UNK, T_UNK, T_UNK, T_UNK,
T_BL_LONG_2, T_BL_LONG_2, T_BL_LONG_2, T_BL_LONG_2,
T_BL_LONG_2, T_BL_LONG_2, T_BL_LONG_2, T_BL_LONG_2,
T_BL_LONG_2, T_BL_LONG_2, T_BL_LONG_2, T_BL_LONG_2,
T_BL_LONG_2, T_BL_LONG_2, T_BL_LONG_2, T_BL_LONG_2,
// 1111 1100 00
T_UNK, T_UNK, T_UNK, T_UNK,
T_UNK, T_UNK, T_UNK, T_UNK,
T_UNK, T_UNK, T_UNK, T_UNK,
T_UNK, T_UNK, T_UNK, T_UNK
T_BL_LONG_2, T_BL_LONG_2, T_BL_LONG_2, T_BL_LONG_2,
T_BL_LONG_2, T_BL_LONG_2, T_BL_LONG_2, T_BL_LONG_2,
T_BL_LONG_2, T_BL_LONG_2, T_BL_LONG_2, T_BL_LONG_2,
T_BL_LONG_2, T_BL_LONG_2, T_BL_LONG_2, T_BL_LONG_2
};