diff options
author | StapleButter <thetotalworm@gmail.com> | 2016-11-24 18:31:49 +0100 |
---|---|---|
committer | StapleButter <thetotalworm@gmail.com> | 2016-11-24 18:31:49 +0100 |
commit | f74fb2dd27d739b22c44c4df793fb894fc5b5aef (patch) | |
tree | a31d17aa09f2a46817527dbf633bf878b14109f5 /ARMInterpreter.cpp | |
parent | 3505ec993b0d700800f77c667078e2c552a38b34 (diff) |
well, adding shit. laying out the base for the interpreter. really dirty code.
Diffstat (limited to 'ARMInterpreter.cpp')
-rw-r--r-- | ARMInterpreter.cpp | 31 |
1 files changed, 31 insertions, 0 deletions
diff --git a/ARMInterpreter.cpp b/ARMInterpreter.cpp new file mode 100644 index 0000000..2acef27 --- /dev/null +++ b/ARMInterpreter.cpp @@ -0,0 +1,31 @@ +#include <stdio.h> +#include "NDS.h" +#include "ARMInterpreter.h" +#include "ARMInterpreter_Branch.h" + + +namespace ARMInterpreter +{ + + +s32 A_UNK(ARM* cpu) +{ + printf("undefined ARM instruction %08X @ %08X\n", cpu->CurInstr, cpu->R[15]-8); + NDS::Halt(); + return 0x7FFFFFFF; +} + +s32 T_UNK(ARM* cpu) +{ + printf("undefined THUMB instruction %04X @ %08X\n", cpu->CurInstr, cpu->R[15]-4); + NDS::Halt(); + return 0x7FFFFFFF; +} + + + +#define INSTRFUNC_PROTO(x) s32 (*x)(ARM* cpu) +#include "ARM_InstrTable.h" +#undef INSTRFUNC_PROTO + +} |