From 2db405979c801f45a81818bd7fb0af262448c45d Mon Sep 17 00:00:00 2001 From: "R. Belmont" Date: Sun, 31 Aug 2008 20:30:29 +0000 Subject: [PATCH] [ARM7] Remove unnecessary hooks so MRC and MCR disassemble properly. --- src/emu/cpu/arm7/arm7.c | 24 ------------------------ src/emu/cpu/arm7/arm7dasm.c | 15 +++------------ 2 files changed, 3 insertions(+), 36 deletions(-) diff --git a/src/emu/cpu/arm7/arm7.c b/src/emu/cpu/arm7/arm7.c index 042e10d5077..b54b70b9608 100644 --- a/src/emu/cpu/arm7/arm7.c +++ b/src/emu/cpu/arm7/arm7.c @@ -48,9 +48,6 @@ static READ32_HANDLER(test_rt_r_callback); static WRITE32_HANDLER(test_rt_w_callback); static void test_dt_r_callback(UINT32 insn, UINT32 *prn, UINT32 (*read32)(UINT32 addr)); static void test_dt_w_callback(UINT32 insn, UINT32 *prn, void (*write32)(UINT32 addr, UINT32 data)); -static char *Spec_RT(char *pBuf, UINT32 opcode, char *pConditionCode, char *pBuf0); -static char *Spec_DT(char *pBuf, UINT32 opcode, char *pConditionCode, char *pBuf0); -static char *Spec_DO(char *pBuf, UINT32 opcode, char *pConditionCode, char *pBuf0); #endif /* Macros that can be re-defined for custom cpu implementations - The core expects these to be defined */ @@ -99,10 +96,6 @@ static void arm7_init(int index, int clock, const void *config, int (*irqcallbac arm7_coproc_rt_w_callback = test_rt_w_callback; arm7_coproc_dt_r_callback = test_dt_r_callback; arm7_coproc_dt_w_callback = test_dt_w_callback; - // setup dasm callbacks - direct method example - arm7_dasm_cop_dt_callback = Spec_DT; - arm7_dasm_cop_rt_callback = Spec_RT; - arm7_dasm_cop_do_callback = Spec_DO; #endif } @@ -432,21 +425,4 @@ static void test_dt_w_callback(UINT32 insn, UINT32 *prn, void (*write32)(UINT32 { LOG(("test_dt_w_callback: opcode = %x\n", insn)); } - -/* Custom Co-proc DASM handlers */ -static char *Spec_RT(char *pBuf, UINT32 opcode, char *pConditionCode, char *pBuf0) -{ - pBuf += sprintf(pBuf, "SPECRT"); - return pBuf; -} -static char *Spec_DT(char *pBuf, UINT32 opcode, char *pConditionCode, char *pBuf0) -{ - pBuf += sprintf(pBuf, "SPECDT"); - return pBuf; -} -static char *Spec_DO(char *pBuf, UINT32 opcode, char *pConditionCode, char *pBuf0) -{ - pBuf += sprintf(pBuf, "SPECDO"); - return pBuf; -} #endif diff --git a/src/emu/cpu/arm7/arm7dasm.c b/src/emu/cpu/arm7/arm7dasm.c index 394ba74d733..b83a25a9578 100644 --- a/src/emu/cpu/arm7/arm7dasm.c +++ b/src/emu/cpu/arm7/arm7dasm.c @@ -586,10 +586,7 @@ UINT32 arm7_disasm( char *pBuf, UINT32 pc, UINT32 opcode ) else if( (opcode&0x0e000000)==0x0c000000 ) //bits 27-25 == 110 { /* co processor data transfer */ - if(arm7_dasm_cop_dt_callback) - arm7_dasm_cop_dt_callback(pBuf,opcode,(char*)pConditionCode,(char*)pBuf0); - else - DasmCoProc_DT(pBuf,opcode,(char*)pConditionCode,(char*)pBuf0); + DasmCoProc_DT(pBuf,opcode,(char*)pConditionCode,(char*)pBuf0); } else if( (opcode&0x0f000000)==0x0e000000 ) //bits 27-24 == 1110 { @@ -598,18 +595,12 @@ UINT32 arm7_disasm( char *pBuf, UINT32 pc, UINT32 opcode ) //Register Transfer if(opcode&0x10) { - if(arm7_dasm_cop_rt_callback) - arm7_dasm_cop_rt_callback(pBuf,opcode,(char*)pConditionCode,(char*)pBuf0); - else - DasmCoProc_RT(pBuf,opcode,pConditionCode,pBuf0); + DasmCoProc_RT(pBuf,opcode,pConditionCode,pBuf0); } //Data Op else { - if(arm7_dasm_cop_do_callback) - arm7_dasm_cop_do_callback(pBuf,opcode,(char*)pConditionCode,(char*)pBuf0); - else - DasmCoProc_DO(pBuf,opcode,pConditionCode,pBuf0); + DasmCoProc_DO(pBuf,opcode,pConditionCode,pBuf0); } } else if( (opcode&0x0f000000) == 0x0f000000 ) //bits 27-24 == 1111