62 WCHAR szMenuString[256];
117 for (
i = 0;
i <= MenuPos;
i++)
132 WCHAR szMenuString[256];
151 WCHAR szNoMedia[100];
152 WCHAR szMenuString1[256], szMenuString2[256];
209 WCHAR szNoMedia[100];
210 WCHAR szMenuString1[256], szMenuString2[256];
366 DPRINT1(
"NTVDM delayed killing in the CTRL_LAST_CLOSE_EVENT CtrlHandler!\n");
374 DPRINT1(
"Killing NTVDM in the 'default' CtrlHandler!\n");
406 wprintf(
L"FATAL: Cannot save console in/out modes\n");
469 wprintf(
L"FATAL: Cannot retrieve a handle to the console input\n");
484 wprintf(
L"FATAL: Cannot retrieve a handle to the console output\n");
591 DPRINT1(
"Killing NTVDM via console menu!\n");
#define ID_VDM_DUMPMEM_BIN
static DWORD OrgConsoleOutputMode
#define IDS_VDM_DUMPMEM_BIN
VOID EjectFloppy(IN ULONG DiskNumber)
BOOL WINAPI DrawMenuBar(_In_ HWND)
BOOL WINAPI ModifyMenuW(_In_ HMENU, _In_ UINT, _In_ UINT, _In_ UINT_PTR, _In_opt_ LPCWSTR)
int WINAPI MapWindowPoints(_In_opt_ HWND hWndFrom, _In_opt_ HWND hWndTo, _Inout_updates_(cPoints) LPPOINT lpPoints, _In_ UINT cPoints)
BOOL WINAPI InsertMenuW(_In_ HMENU, _In_ UINT, _In_ UINT, _In_ UINT_PTR, _In_opt_ LPCWSTR)
BOOL WINAPI ClipCursor(_In_opt_ LPCRECT)
struct _VDM_MENUITEM VDM_MENUITEM
static VOID ConsoleInitUI(VOID)
#define UNREFERENCED_PARAMETER(P)
BOOL WINAPI GetConsoleMode(HANDLE hConsoleHandle, LPDWORD lpMode)
#define IDS_VDM_MOUNT_FLOPPY
#define ID_VDM_DUMPMEM_TXT
#define INVALID_HANDLE_VALUE
static VOID ConsoleCleanupUI(VOID)
DWORD WINAPI GetFileType(HANDLE hFile)
VOID VdmShutdown(BOOLEAN Immediate)
int WINAPI LoadStringW(_In_opt_ HINSTANCE hInstance, _In_ UINT uID, _Out_writes_to_(cchBufferMax, return+1) LPWSTR lpBuffer, _In_ int cchBufferMax)
BOOL WINAPI AppendMenuW(_In_ HMENU, _In_ UINT, _In_ UINT_PTR, _In_opt_ LPCWSTR)
static BOOL VdmMenuExists(HMENU hConsoleMenu)
BOOL WINAPI EnableMenuItem(_In_ HMENU, _In_ UINT, _In_ UINT)
BOOL WINAPI DECLSPEC_HOTPATCH SetConsoleMode(HANDLE hConsoleHandle, DWORD dwMode)
static HANDLE CurrentConsoleOutput
VOID MenuEventHandler(PMENU_EVENT_RECORD MenuEvent)
BOOL WINAPI DECLSPEC_HOTPATCH SetConsoleCtrlHandler(PHANDLER_ROUTINE HandlerRoutine, BOOL Add)
int WINAPI GetMenuItemCount(_In_opt_ HMENU)
static HMENU hConsoleMenu
#define IDS_VDM_EJECT_FLOPPY
static const VDM_MENUITEM VdmMenuItems[]
int _snwprintf(wchar_t *buffer, size_t count, const wchar_t *format,...)
VOID DumpMemory(BOOLEAN TextFormat)
static VOID AppendMenuItems(HMENU hMenu, const VDM_MENUITEM *Items)
#define IDS_RELEASE_MOUSE
UNICODE_STRING FloppyDisks[2]
static VOID UpdateVdmMenuMouse(VOID)
static const VDM_MENUITEM VdmMainMenuItems[]
HMENU WINAPI DECLSPEC_HOTPATCH ConsoleMenuControl(HANDLE hConsoleOutput, DWORD dwCmdIdLow, DWORD dwCmdIdHigh)
VOID FocusEventHandler(PFOCUS_EVENT_RECORD FocusEvent)
BOOL WINAPI DeleteMenu(_In_ HMENU, _In_ UINT, _In_ UINT)
static VOID EnableExtraHardware(HANDLE ConsoleInput)
unsigned __int3264 UINT_PTR
static VOID ConsoleCleanup(VOID)
#define ENABLE_MOUSE_INPUT
#define ENABLE_WINDOW_INPUT
HMENU WINAPI GetSubMenu(_In_ HMENU, _In_ int)
static VOID CreateVdmMenu(HANDLE ConOutHandle)
BOOL WINAPI DestroyMenu(_In_ HMENU)
#define IDS_CAPTURE_MOUSE
INT WINAPI DECLSPEC_HOTPATCH ShowConsoleCursor(HANDLE hConsoleOutput, BOOL bShow)
VOID ConsoleReattach(HANDLE ConOutHandle)
BOOL WINAPI GetClientRect(_In_ HWND, _Out_ LPRECT)
static BOOL WINAPI ConsoleCtrlHandler(DWORD ControlType)
GLsizei GLenum const GLvoid GLsizei GLenum GLbyte GLbyte GLbyte GLdouble GLdouble GLdouble GLfloat GLfloat GLfloat GLint GLint GLint GLshort GLshort GLshort GLubyte GLubyte GLubyte GLuint GLuint GLuint GLushort GLushort GLushort GLbyte GLbyte GLbyte GLbyte GLdouble GLdouble GLdouble GLdouble GLfloat GLfloat GLfloat GLfloat GLint GLint GLint GLint GLshort GLshort GLshort GLshort GLubyte GLubyte GLubyte GLubyte GLuint GLuint GLuint GLuint GLushort GLushort GLushort GLushort GLboolean const GLdouble const GLfloat const GLint const GLshort const GLbyte const GLdouble const GLfloat const GLint const GLshort const GLdouble const GLfloat const GLint const GLshort const GLdouble const GLfloat const GLint const GLshort const GLdouble const GLfloat const GLint const GLshort const GLdouble const GLdouble const GLfloat const GLfloat const GLint const GLint const GLshort const GLshort const GLdouble const GLfloat const GLint const GLshort const GLdouble const GLfloat const GLint const GLshort const GLdouble const GLfloat const GLint const GLshort const GLdouble const GLfloat const GLint const GLshort const GLdouble const GLfloat const GLint const GLshort const GLdouble const GLfloat const GLint const GLshort const GLdouble const GLfloat const GLint const GLshort GLenum GLenum GLenum GLfloat GLenum GLint GLenum GLenum GLenum GLfloat GLenum GLenum GLint GLenum GLfloat GLenum GLint GLint GLushort GLenum GLenum GLfloat GLenum GLenum GLint GLfloat const GLubyte GLenum GLenum GLenum const GLfloat GLenum GLenum const GLint GLenum GLint GLint GLsizei GLsizei GLint GLenum GLenum const GLvoid GLenum GLenum const GLfloat GLenum GLenum const GLint GLenum GLenum const GLdouble GLenum GLenum const GLfloat GLenum GLenum const GLint GLsizei GLuint GLfloat GLuint GLbitfield GLfloat GLint GLuint GLboolean GLenum GLfloat GLenum GLbitfield GLenum GLfloat GLfloat GLint GLint const GLfloat GLenum GLfloat GLfloat GLint GLint GLfloat GLfloat GLint GLint const GLfloat GLint GLfloat GLfloat GLint GLfloat GLfloat GLint GLfloat GLfloat const GLdouble const GLfloat const GLdouble const GLfloat GLint i
static VOID UpdateVdmMenu(VOID)
static BOOL ConsoleInit(VOID)
VOID MountFloppy(IN ULONG DiskNumber)
DWORD WINAPI SetLastConsoleEventActive(VOID)
#define CTRL_LAST_CLOSE_EVENT
UINT WINAPI GetMenuItemID(_In_ HMENU, _In_ int)
HMENU WINAPI CreatePopupMenu(void)
static HANDLE ConsoleOutput
static VOID DestroyVdmMenu(VOID)
#define IDS_VDM_DUMPMEM_TXT
struct _VDM_MENUITEM * PVDM_MENUITEM
BOOL IsConsoleHandle(HANDLE hHandle)
static const CLSID *static CLSID *static const GUID VARIANT VARIANT *static IServiceProvider DWORD *static HMENU
static DWORD OrgConsoleInputMode
static VOID CaptureMousePointer(HANDLE ConOutHandle, BOOLEAN Capture)
NTVDM_SETTINGS GlobalSettings
VOID UpdateVdmMenuDisks(VOID)
HWND WINAPI DECLSPEC_HOTPATCH GetConsoleWindow(VOID)