From: Hermès Bélusca-Maïto Date: Tue, 24 Dec 2013 15:52:31 +0000 (+0000) Subject: [NTVDM]: Implement and export VDDTerminateVDM. X-Git-Tag: backups/0.3.17@66124~1365^2~151 X-Git-Url: https://git.reactos.org/?p=reactos.git;a=commitdiff_plain;h=8331d27b2bcfb9e248e6f3ee616a5b97174b872d [NTVDM]: Implement and export VDDTerminateVDM. svn path=/branches/ntvdm/; revision=61374 --- diff --git a/include/ddk/nt_vdd.h b/include/ddk/nt_vdd.h index 199c6c64fc7..3f3838629b1 100644 --- a/include/ddk/nt_vdd.h +++ b/include/ddk/nt_vdd.h @@ -28,6 +28,14 @@ extern "C" { #endif +/* + * VDM Control + */ + +VOID +WINAPI +VDDTerminateVDM(VOID); + /* * I/O Port services */ diff --git a/subsystems/ntvdm/dos.c b/subsystems/ntvdm/dos.c index c871d3daa4c..e478070abe3 100644 --- a/subsystems/ntvdm/dos.c +++ b/subsystems/ntvdm/dos.c @@ -2572,6 +2572,7 @@ VOID WINAPI DosBreakInterrupt(LPWORD Stack) { UNREFERENCED_PARAMETER(Stack); + /* Stop the VDM */ VdmRunning = FALSE; } diff --git a/subsystems/ntvdm/emulator.c b/subsystems/ntvdm/emulator.c index 71e2741310a..49a52fb908b 100644 --- a/subsystems/ntvdm/emulator.c +++ b/subsystems/ntvdm/emulator.c @@ -181,6 +181,14 @@ VOID EmulatorSetA20(BOOLEAN Enabled) +VOID +WINAPI +VDDTerminateVDM(VOID) +{ + /* Stop the VDM */ + VdmRunning = FALSE; +} + PBYTE WINAPI Sim32pGetVDMPointer(IN ULONG Address, diff --git a/subsystems/ntvdm/ntvdm.spec b/subsystems/ntvdm/ntvdm.spec index 263e5a37e92..ceca023a33d 100644 --- a/subsystems/ntvdm/ntvdm.spec +++ b/subsystems/ntvdm/ntvdm.spec @@ -185,3 +185,5 @@ @ stdcall call_ica_hw_interrupt(long long long) @ stdcall VDDInstallIOHook(long long ptr ptr) @ stdcall VDDDeInstallIOHook(long long ptr) + +@ stdcall VDDTerminateVDM()