diff --git a/reactos/subsystems/mvdm/ntvdm/dos/dem.c b/reactos/subsystems/mvdm/ntvdm/dos/dem.c index c0658c980fb..b3642215c23 100644 --- a/reactos/subsystems/mvdm/ntvdm/dos/dem.c +++ b/reactos/subsystems/mvdm/ntvdm/dos/dem.c @@ -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 diff --git a/reactos/subsystems/mvdm/ntvdm/dos/dos32krnl/dos.c b/reactos/subsystems/mvdm/ntvdm/dos/dos32krnl/dos.c index 0b9712df83a..151186cef9e 100644 --- a/reactos/subsystems/mvdm/ntvdm/dos/dos32krnl/dos.c +++ b/reactos/subsystems/mvdm/ntvdm/dos/dos32krnl/dos.c @@ -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; } diff --git a/reactos/subsystems/mvdm/ntvdm/emulator.c b/reactos/subsystems/mvdm/ntvdm/emulator.c index 0873549b665..690a5222e6d 100644 --- a/reactos/subsystems/mvdm/ntvdm/emulator.c +++ b/reactos/subsystems/mvdm/ntvdm/emulator.c @@ -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 */