mirror of
https://github.com/holub/mame
synced 2025-04-23 17:00:53 +03:00
[ARM7] Remove unnecessary hooks so MRC and MCR disassemble properly.
This commit is contained in:
parent
ea2944f2a4
commit
2db405979c
@ -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
|
||||
|
@ -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
|
||||
|
Loading…
Reference in New Issue
Block a user