Improve int32 callback stub (and sync int32.c too).

svn path=/trunk/; revision=63248
This commit is contained in:
Hermès Bélusca-Maïto 2014-05-12 00:26:48 +00:00
parent df0efd5556
commit 76f9d532f2
2 changed files with 10 additions and 12 deletions

View file

@ -75,8 +75,7 @@ BYTE Int16To32[] =
0xEB, 0xF5, // jmp BOP_SEQ (offset -11)
// EXIT:
// 0x44, 0x44, // inc sp, inc sp
0x83, 0xC4, 0x02, // add sp, 2
0x44, 0x44, // inc sp, inc sp
0xCF, // iret
};
@ -202,11 +201,13 @@ RegisterInt32(IN ULONG FarPtr,
BYTE IntCallback[sizeof(Int16To32)/sizeof(BYTE)];
/* Check whether the 32-bit interrupt was already registered */
// if (Int32Proc[IntNumber] != NULL)
// {
// DPRINT1("RegisterInt32: Interrupt 0x%X already registered!\n", IntNumber);
// return 0;
// }
#if 0
if (Int32Proc[IntNumber] != NULL)
{
DPRINT1("RegisterInt32: Interrupt 0x%X already registered!\n", IntNumber);
return 0;
}
#endif
/* Register the 32-bit interrupt handler */
Int32Proc[IntNumber] = IntHandler;

View file

@ -111,11 +111,8 @@ VOID InitializeInt32(WORD BiosSegment)
BiosCode[Offset++] = 0xF5;
// EXIT:
// BiosCode[Offset++] = 0x44; // inc sp
// BiosCode[Offset++] = 0x44; // inc sp
BiosCode[Offset++] = 0x83; // add sp, 2
BiosCode[Offset++] = 0xC4;
BiosCode[Offset++] = 0x02;
BiosCode[Offset++] = 0x44; // inc sp
BiosCode[Offset++] = 0x44; // inc sp
BiosCode[Offset++] = 0xCF; // iret