Remove unnecessary indentation and clarify the code a bit.


svn path=/branches/ntvdm/; revision=60919
This commit is contained in:
Aleksandar Andrejevic 2013-11-10 18:14:40 +00:00
parent e4946e8b85
commit 7c036fd0f7

View file

@ -130,40 +130,38 @@ VOID WINAPI InitializeInt32(WORD BiosSegment)
{ {
LPDWORD IntVecTable = (LPDWORD)BaseAddress; LPDWORD IntVecTable = (LPDWORD)BaseAddress;
LPBYTE BiosCode = (LPBYTE)SEG_OFF_TO_PTR(BiosSegment, 0); LPBYTE BiosCode = (LPBYTE)SEG_OFF_TO_PTR(BiosSegment, 0);
USHORT i; USHORT i;
WORD CommonStub, BopSeqOffset, Offset; WORD CommonStub, BopSeqOffset, Offset;
CommonStub = Offset = 0x00; CommonStub = Offset = 0;
/* Write the common stub code */ /* Write the common stub code */
{
// BOP_SEQ: // BOP_SEQ:
BiosCode[Offset++] = 0xF8; // clc BiosCode[Offset++] = 0xF8; // clc
BiosCode[Offset++] = LOBYTE(EMULATOR_BOP); // BOP sequence BiosCode[Offset++] = LOBYTE(EMULATOR_BOP); // BOP sequence
BiosCode[Offset++] = HIBYTE(EMULATOR_BOP); BiosCode[Offset++] = HIBYTE(EMULATOR_BOP);
BiosCode[Offset++] = EMULATOR_CTRL_BOP; // Control BOP BiosCode[Offset++] = EMULATOR_CTRL_BOP; // Control BOP
BiosCode[Offset++] = CTRL_BOP_INT32; // 32-bit Interrupt dispatcher BiosCode[Offset++] = CTRL_BOP_INT32; // 32-bit Interrupt dispatcher
BiosCode[Offset++] = 0x73; // jnc EXIT (offset +4) BiosCode[Offset++] = 0x73; // jnc EXIT (offset +4)
BiosCode[Offset++] = 0x04; BiosCode[Offset++] = 0x04;
BiosCode[Offset++] = 0xFB; // sti BiosCode[Offset++] = 0xFB; // sti
// HACK: The following instruction should be HLT! // HACK: The following instruction should be HLT!
BiosCode[Offset++] = 0x90; // nop BiosCode[Offset++] = 0x90; // nop
BiosCode[Offset++] = 0xEB; // jmp BOP_SEQ (offset -11) BiosCode[Offset++] = 0xEB; // jmp BOP_SEQ (offset -11)
BiosCode[Offset++] = 0xF5; BiosCode[Offset++] = 0xF5;
// EXIT: // EXIT:
BiosCode[Offset++] = 0x83; // add sp, 4 BiosCode[Offset++] = 0x83; // add sp, 4
BiosCode[Offset++] = 0xC4; BiosCode[Offset++] = 0xC4;
BiosCode[Offset++] = 0x04; BiosCode[Offset++] = 0x04;
BiosCode[Offset++] = 0xCF; // iret BiosCode[Offset++] = 0xCF; // iret
}
/* Generate ISR stubs and fill the IVT */ /* Generate ISR stubs and fill the IVT */
for (i = 0x00; i <= 0xFF; i++) for (i = 0x00; i <= 0xFF; i++)
@ -178,12 +176,11 @@ VOID WINAPI InitializeInt32(WORD BiosSegment)
BiosCode[Offset++] = 0x6A; // push 0 BiosCode[Offset++] = 0x6A; // push 0
BiosCode[Offset++] = 0x00; BiosCode[Offset++] = 0x00;
BopSeqOffset = CommonStub - Offset - 3; BopSeqOffset = CommonStub - (Offset + 3);
BiosCode[Offset+0] = 0xE9; // jmp near BOP_SEQ BiosCode[Offset++] = 0xE9; // jmp near BOP_SEQ
BiosCode[Offset+1] = LOBYTE(BopSeqOffset); BiosCode[Offset++] = LOBYTE(BopSeqOffset);
BiosCode[Offset+2] = HIBYTE(BopSeqOffset); BiosCode[Offset++] = HIBYTE(BopSeqOffset);
Offset+=3;
} }
} }