From 6151e26958fa243b6322a9a544446dda5020204b Mon Sep 17 00:00:00 2001
From: bunnei <ericbunnie@gmail.com>
Date: Fri, 25 Apr 2014 15:57:32 -0400
Subject: [PATCH] added disassembly to unimplemented instruction

---
 src/core/arm/interpreter/armsupp.cpp | 7 ++++++-
 1 file changed, 6 insertions(+), 1 deletion(-)

diff --git a/src/core/arm/interpreter/armsupp.cpp b/src/core/arm/interpreter/armsupp.cpp
index 101b9807ae..48e55c63a7 100644
--- a/src/core/arm/interpreter/armsupp.cpp
+++ b/src/core/arm/interpreter/armsupp.cpp
@@ -17,9 +17,11 @@
 
 #include "armdefs.h"
 #include "armemu.h"
+
 //#include "ansidecl.h"
 #include "skyeye_defs.h"
 #include "core/hle/hle.h"
+#include "core/arm/disassembler/arm_disasm.h"
 
 unsigned xscale_cp15_cp_access_allowed (ARMul_State * state, unsigned reg,
                                         unsigned cpnum);
@@ -846,7 +848,10 @@ ARMul_CDP (ARMul_State * state, ARMword instr)
 void
 ARMul_UndefInstr (ARMul_State * state, ARMword instr)
 {
-	ERROR_LOG(ARM11, "Undefined instruction!! Instr: 0x%x", instr);
+	char buff[512];
+	ARM_Disasm disasm = ARM_Disasm();
+	disasm.disasm(state->pc, instr, buff);
+	ERROR_LOG(ARM11, "Undefined instruction!! Disasm: %s Opcode: 0x%x", buff, instr);
 	ARMul_Abort (state, ARMul_UndefinedInstrV);
 }