mirror of
https://github.com/reactos/reactos.git
synced 2024-12-28 18:15:11 +00:00
[NTVDM]
- Fix ZF and CF flags setting in function INT 2Fh, AX=1214h. - Use CreateEventW explicitely. - Set the VdmTaskEvent event at startup. This allows user input by default (even if we don't run our own DOS) in NTVDM. Fixes keyboard input not working when testing boot&usage of MSDOS 6. svn path=/trunk/; revision=69339
This commit is contained in:
parent
5c49e6b52e
commit
d65c53b046
3 changed files with 13 additions and 4 deletions
|
@ -1015,7 +1015,7 @@ DWORD DosStartProcess32(IN LPCSTR ExecutablePath,
|
|||
sizeof(*DosStartProc32.ComSpecInfo));
|
||||
ASSERT(DosStartProc32.ComSpecInfo);
|
||||
|
||||
DosStartProc32.hEvent = CreateEvent(NULL, FALSE, FALSE, NULL);
|
||||
DosStartProc32.hEvent = CreateEventW(NULL, FALSE, FALSE, NULL);
|
||||
ASSERT(DosStartProc32.hEvent);
|
||||
#endif
|
||||
|
||||
|
|
|
@ -2184,8 +2184,16 @@ VOID WINAPI DosInt2Fh(LPWORD Stack)
|
|||
PVOID PointerFromFarPointer2 = SEG_OFF_TO_PTR(getES(), getDI());
|
||||
BOOLEAN AreEqual = (PointerFromFarPointer1 == PointerFromFarPointer2);
|
||||
|
||||
setZF(AreEqual);
|
||||
setCF(!AreEqual);
|
||||
if (AreEqual)
|
||||
{
|
||||
Stack[STACK_FLAGS] |= EMULATOR_FLAG_ZF;
|
||||
Stack[STACK_FLAGS] &= ~EMULATOR_FLAG_CF;
|
||||
}
|
||||
else
|
||||
{
|
||||
Stack[STACK_FLAGS] &= ~EMULATOR_FLAG_ZF;
|
||||
Stack[STACK_FLAGS] |= EMULATOR_FLAG_CF;
|
||||
}
|
||||
break;
|
||||
}
|
||||
|
||||
|
|
|
@ -475,7 +475,7 @@ BOOLEAN EmulatorInitialize(HANDLE ConsoleInput, HANDLE ConsoleOutput)
|
|||
|
||||
/**************** ATTACH INPUT WITH CONSOLE *****************/
|
||||
/* Create the task event */
|
||||
VdmTaskEvent = CreateEvent(NULL, TRUE, FALSE, NULL);
|
||||
VdmTaskEvent = CreateEventW(NULL, TRUE, FALSE, NULL);
|
||||
ASSERT(VdmTaskEvent != NULL);
|
||||
|
||||
/* Start the input thread */
|
||||
|
@ -486,6 +486,7 @@ BOOLEAN EmulatorInitialize(HANDLE ConsoleInput, HANDLE ConsoleOutput)
|
|||
EmulatorCleanup();
|
||||
return FALSE;
|
||||
}
|
||||
ResumeEventThread();
|
||||
/************************************************************/
|
||||
|
||||
/* Initialize the VGA */
|
||||
|
|
Loading…
Reference in a new issue