[ARM7] Remove unnecessary hooks so MRC and MCR disassemble properly.

This commit is contained in:
R. Belmont 2008-08-31 20:30:29 +00:00
parent ea2944f2a4
commit 2db405979c
2 changed files with 3 additions and 36 deletions

View File

@ -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

View File

@ -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