Changes for new flags
Always add a 0x67 handler incase ems is not loaded. Imported-from: https://svn.code.sf.net/p/dosbox/code-0/dosbox/trunk@917
This commit is contained in:
parent
3874c20563
commit
5375838637
1 changed files with 5 additions and 3 deletions
|
@ -52,8 +52,8 @@ Bitu CALLBACK_Allocate(void) {
|
|||
|
||||
void CALLBACK_Idle(void) {
|
||||
/* this makes the cpu execute instructions to handle irq's and then come back */
|
||||
bool oldintf=flags.intf;
|
||||
flags.intf=true;
|
||||
Bitu oldIF=GETFLAG(IF);
|
||||
SETFLAGBIT(IF,true);
|
||||
Bit16u oldcs=SegValue(cs);
|
||||
Bit32u oldeip=reg_eip;
|
||||
SegSet16(cs,CB_SEG);
|
||||
|
@ -61,7 +61,7 @@ void CALLBACK_Idle(void) {
|
|||
DOSBOX_RunMachine();
|
||||
reg_eip=oldeip;
|
||||
SegSet16(cs,oldcs);
|
||||
flags.intf=oldintf;
|
||||
SETFLAGBIT(IF,oldIF);
|
||||
if (CPU_CycleLeft<300) CPU_CycleLeft=1;
|
||||
else CPU_CycleLeft-=300;
|
||||
}
|
||||
|
@ -174,6 +174,8 @@ void CALLBACK_Init(Section* sec) {
|
|||
for (i=0;i<0x40;i++) {
|
||||
real_writed(0,i*4,CALLBACK_RealPointer(call_default));
|
||||
}
|
||||
real_writed(0,0x67*4,CALLBACK_RealPointer(call_default));
|
||||
|
||||
}
|
||||
|
||||
|
||||
|
|
Loading…
Add table
Add a link
Reference in a new issue