#include <conio.h>
#define WIN32_NO_STATUS
-#include <windows.h>
+#include <windef.h>
+#include <winbase.h>
+#include <wingdi.h>
+#include <wincon.h>
+#include <winnls.h>
+#include <winreg.h>
+#include <winuser.h>
+#include <subsys/win/vdm.h>
-#include <debug.h>
-
-/* DEFINES ********************************************************************/
+#include <vddsvc.h>
-#define TO_LINEAR(seg, off) (((seg) << 4) + (off))
-#define MAX_SEGMENT 0xFFFF
-#define MAX_OFFSET 0xFFFF
-#define MAX_ADDRESS TO_LINEAR(MAX_SEGMENT, MAX_OFFSET)
+#include <debug.h>
-#define FAR_POINTER(x) \
- (PVOID)((ULONG_PTR)BaseAddress + TO_LINEAR(HIWORD(x), LOWORD(x)))
+/* PROTOTYPES *****************************************************************/
-#define SEG_OFF_TO_PTR(seg, off) \
- (PVOID)((ULONG_PTR)BaseAddress + TO_LINEAR((seg), (off)))
+BOOL
+WINAPI
+GetNextVDMCommand(
+ IN OUT PVDM_COMMAND_INFO CommandData OPTIONAL
+);
-#define STEPS_PER_CYCLE 256
+VOID
+WINAPI
+ExitVDM(
+ IN BOOL IsWow,
+ IN ULONG iWowTask
+);
/* FUNCTIONS ******************************************************************/
-extern LPVOID BaseAddress;
-extern BOOLEAN VdmRunning;
-extern LPCWSTR ExceptionName[];
-
VOID DisplayMessage(LPCWSTR Format, ...);
#endif // _NTVDM_H_