MOV DRx now loads/stores from 'dummy' DRx registers (BeOS).
This commit is contained in:
parent
1e5b46c077
commit
28a2336aae
2 changed files with 5 additions and 2 deletions
|
|
@ -155,6 +155,7 @@ union
|
|||
#define msw CR0.w
|
||||
|
||||
uint32_t cr2, cr3, cr4;
|
||||
uint32_t dr[8];
|
||||
|
||||
#define C_FLAG 0x0001
|
||||
#define P_FLAG 0x0004
|
||||
|
|
|
|||
|
|
@ -80,7 +80,7 @@ static int opMOV_r_DRx_a16(uint32_t fetchdat)
|
|||
return 1;
|
||||
}
|
||||
fetch_ea_16(fetchdat);
|
||||
regs[rm].l = 0;
|
||||
regs[rm].l = dr[reg];
|
||||
CLOCK_CYCLES(6);
|
||||
return 0;
|
||||
}
|
||||
|
|
@ -93,7 +93,7 @@ static int opMOV_r_DRx_a32(uint32_t fetchdat)
|
|||
return 1;
|
||||
}
|
||||
fetch_ea_32(fetchdat);
|
||||
regs[rm].l = 0;
|
||||
regs[rm].l = dr[reg];
|
||||
CLOCK_CYCLES(6);
|
||||
return 0;
|
||||
}
|
||||
|
|
@ -188,6 +188,7 @@ static int opMOV_DRx_r_a16(uint32_t fetchdat)
|
|||
return 1;
|
||||
}
|
||||
fetch_ea_16(fetchdat);
|
||||
dr[reg] = regs[rm].l;
|
||||
CLOCK_CYCLES(6);
|
||||
return 0;
|
||||
}
|
||||
|
|
@ -200,6 +201,7 @@ static int opMOV_DRx_r_a32(uint32_t fetchdat)
|
|||
return 1;
|
||||
}
|
||||
fetch_ea_16(fetchdat);
|
||||
dr[reg] = regs[rm].l;
|
||||
CLOCK_CYCLES(6);
|
||||
return 0;
|
||||
}
|
||||
|
|
|
|||
Loading…
Reference in a new issue