summaryrefslogtreecommitdiffstats
path: root/private/os2/inc/os2nt.h
diff options
context:
space:
mode:
authorAdam <you@example.com>2020-05-17 05:51:50 +0200
committerAdam <you@example.com>2020-05-17 05:51:50 +0200
commite611b132f9b8abe35b362e5870b74bce94a1e58e (patch)
treea5781d2ec0e085eeca33cf350cf878f2efea6fe5 /private/os2/inc/os2nt.h
downloadNT4.0-e611b132f9b8abe35b362e5870b74bce94a1e58e.tar
NT4.0-e611b132f9b8abe35b362e5870b74bce94a1e58e.tar.gz
NT4.0-e611b132f9b8abe35b362e5870b74bce94a1e58e.tar.bz2
NT4.0-e611b132f9b8abe35b362e5870b74bce94a1e58e.tar.lz
NT4.0-e611b132f9b8abe35b362e5870b74bce94a1e58e.tar.xz
NT4.0-e611b132f9b8abe35b362e5870b74bce94a1e58e.tar.zst
NT4.0-e611b132f9b8abe35b362e5870b74bce94a1e58e.zip
Diffstat (limited to 'private/os2/inc/os2nt.h')
-rw-r--r--private/os2/inc/os2nt.h986
1 files changed, 986 insertions, 0 deletions
diff --git a/private/os2/inc/os2nt.h b/private/os2/inc/os2nt.h
new file mode 100644
index 000000000..b47b3286f
--- /dev/null
+++ b/private/os2/inc/os2nt.h
@@ -0,0 +1,986 @@
+/*++
+
+Copyright (c) 1989 Microsoft Corporation
+
+Module Name:
+
+ os2nt.h
+
+Abstract:
+
+ Prototypes for NT functions that are called from Win32 only os2ss files.
+
+Author:
+
+ Michael Jarus (mjarus) 21-Dec-1992
+
+Environment:
+
+ User Mode Only
+
+Revision History:
+
+--*/
+
+/****************************************
+ * Definitions from nt.h and ntrtl.h
+ ***************************************/
+
+#ifndef NT_INCLUDED // or _NTRTL_
+
+VOID
+RtlFillMemoryUlong (
+ IN PVOID Destination,
+ IN ULONG Length,
+ IN ULONG Pattern
+ );
+
+#if DBG
+
+#define KdPrint(_x_) DbgPrint _x_
+
+ULONG
+DbgPrint(
+ PCH Format,
+ ...
+ );
+
+VOID
+RtlAssert(
+ PVOID FailedAssertion,
+ PVOID FileName,
+ ULONG LineNumber,
+ PCHAR Message OPTIONAL
+ );
+
+#define ASSERT( exp ) \
+ if (!(exp)) \
+ RtlAssert( #exp, __FILE__, __LINE__, NULL )
+
+#define ASSERTMSG( msg, exp ) \
+ if (!(exp)) \
+ RtlAssert( #exp, __FILE__, __LINE__, msg )
+
+#else
+
+#define KdPrint(_x_)
+
+#define ASSERT( exp )
+#define ASSERTMSG( msg, exp )
+#endif // DBG
+
+#endif // NT_INCLUDED
+
+/************************************
+ * Internal definitions from Win32
+ ***********************************/
+
+BOOL
+VerifyConsoleIoHandle(
+ HANDLE hIoHandle
+ );
+
+#ifdef DBCS
+// MSKK Feb.10.1993 V-AkihiS
+/*******************************************
+ * Intrenal definitions from Win32 for DBCS
+ *******************************************/
+BOOL
+GetConsoleNlsMode(
+ IN HANDLE hConsole,
+ OUT PDWORD lpdwNlsMode
+ );
+
+BOOL
+SetConsoleNlsMode(
+ IN HANDLE hConsole,
+ IN DWORD fdwNlsMode
+ );
+
+// MSKK Jul.02.1992 KazuM
+BOOL
+GetConsoleCharType(
+ IN HANDLE hConsole,
+ IN COORD coordCheck,
+ OUT PDWORD pdwType
+ );
+
+#define CHAR_TYPE_SBCS 0 // Displayed SBCS character
+#define CHAR_TYPE_LEADING 2 // Displayed leading byte of DBCS
+#define CHAR_TYPE_TRAILING 3 // Displayed trailing byte of DBCS
+#endif
+#ifdef JAPAN
+// MSKK May.11.1993 V-AkihiS
+
+// kbdjpn.h
+
+
+//
+// Returned this value as keyboard type of GetKeyboardType()
+//
+#define KBD_TYPE_JAPAN 7
+
+// There are Microsoft keyboard types
+#define SUB_KBD_TYPE_MICROSOFT 0x00
+#define MICROSOFT_KBD_101_TYPE 0
+#define MICROSOFT_KBD_AX_TYPE 1
+#define MICROSOFT_KBD_106_TYPE 2
+#define MICROSOFT_KBD_002_TYPE 3
+#define MICROSOFT_KBD_001_TYPE 4
+#define MICROSOFT_KBD_FUNC 12
+
+// There are AX keyboard types
+#define SUB_KBD_TYPE_AX 0x01
+#define AX_KBD_DESKTOP_TYPE 1
+#define AX_KBD_DESKTOP_FUNC 12
+
+// There are EPSON keyboard types
+#define SUB_KBD_TYPE_EPSON 0x04
+
+// There are FUJITSU keyboard types
+#define SUB_KBD_TYPE_FUJITSU 0x05
+#define FUJITSU_KBD_JIS_TYPE 0
+#define FUJITSU_KBD_OASYS_TYPE 1
+
+// There are IBM keyboard types
+#define SUB_KBD_TYPE_IBM 0x07
+#define IBM_KBD_001_TYPE 1
+#define IBM_KBD_002_TYPE 2
+#define IBM_KBD_003_TYPE 3
+#define IBM_KBD_A01_TYPE 4
+#define IBM_KBD_S_TYPE 5
+
+#define IBM_KBD_002_FUNC 12
+#define IBM_KBD_A01_FUNC 12
+
+// There are MATSUSITA keyboard types
+#define SUB_KBD_TYPE_MATSUSITA 0x0a
+
+// There are NEC keyboard types
+#define SUB_KBD_TYPE_NEC 0x0d
+#define NEC_KBD_NORMAL_TYPE 1
+#define NEC_KBD_N_MODE_TYPE 2
+#define NEC_KBD_H_MODE_TYPE 3
+#define NEC_KBD_LAPTOP_TYPE 4
+
+#define NEC_KBD_NORMAL_FUNC 15
+#define NEC_KBD_N_MODE_FUNC 10
+#define NEC_KBD_H_MODE_FUNC 15
+#define NEC_KBD_LAPTOP_FUNC 15
+
+// There are TOSHIBA keyboard types
+#define SUB_KBD_TYPE_TOSHIBA 0x12
+#define TOSHIBA_KBD_LAPTOP_TYPE 1
+#define TOSHIBA_KBD_LAPTOP_TENKEY_TYPE 2
+#define TOSHIBA_KBD_DESKTOP_TYPE 3
+#define TOSHIBA_KBD_J3100GX_TYPE 4
+
+#define TOSHIBA_KBD_LAPTOP_FUNC 10
+#define TOSHIBA_KBD_LAPTOP_TENKEY_FUNC 10
+#define TOSHIBA_KBD_DESKTOP_FUNC 12
+#define TOSHIBA_KBD_J3100GX_FUNC 10
+#endif
+
+/********************************************************
+ * Definitions of debug Win32 API (ssrtl\sswinapi.c)
+ *******************************************************/
+
+#if DBG
+BOOL
+Or2WinPeekConsoleInputA(
+ PSZ FuncName,
+ HANDLE hConsoleInput,
+ PINPUT_RECORD lpBuffer,
+ DWORD nLength,
+ LPDWORD lpNumberOfEventsRead
+ );
+
+BOOL
+Or2WinReadConsoleInputA(
+ PSZ FuncName,
+ HANDLE hConsoleInput,
+ PINPUT_RECORD lpBuffer,
+ DWORD nLength,
+ LPDWORD lpNumberOfEventsRead
+ );
+
+BOOL
+Or2WinWriteConsoleInputA(
+ PSZ FuncName,
+ HANDLE hConsoleInput,
+ PINPUT_RECORD lpBuffer,
+ DWORD nLength,
+ LPDWORD lpNumberOfEventsWritten
+ );
+
+BOOL
+Or2WinReadConsoleOutputCharacterA(
+ PSZ FuncName,
+ HANDLE hConsoleOutput,
+ LPSTR lpCharacter,
+ DWORD nLength,
+ COORD dwReadCoord,
+ LPDWORD lpNumberOfCharsRead
+ );
+
+BOOL
+Or2WinReadConsoleOutputCharacterW(
+ PSZ FuncName,
+ HANDLE hConsoleOutput,
+ LPWSTR lpCharacter,
+ DWORD nLength,
+ COORD dwReadCoord,
+ LPDWORD lpNumberOfCharsRead
+ );
+
+BOOL
+Or2WinReadConsoleOutputAttribute(
+ PSZ FuncName,
+ HANDLE hConsoleOutput,
+ LPWORD lpAttribute,
+ DWORD nLength,
+ COORD dwReadCoord,
+ LPDWORD lpNumberOfAttrsRead
+ );
+
+BOOL
+Or2WinWriteConsoleOutputCharacterA(
+ PSZ FuncName,
+ HANDLE hConsoleOutput,
+ LPSTR lpCharacter,
+ DWORD nLength,
+ COORD dwWriteCoord,
+ LPDWORD lpNumberOfCharsWritten
+ );
+
+BOOL
+Or2WinWriteConsoleOutputCharacterW(
+ PSZ FuncName,
+ HANDLE hConsoleOutput,
+ LPWSTR lpCharacter,
+ DWORD nLength,
+ COORD dwWriteCoord,
+ LPDWORD lpNumberOfCharsWritten
+ );
+
+BOOL
+Or2WinWriteConsoleOutputAttribute(
+ PSZ FuncName,
+ HANDLE hConsoleOutput,
+ LPWORD lpAttribute,
+ DWORD nLength,
+ COORD dwWriteCoord,
+ LPDWORD lpNumberOfAttrsWritten
+ );
+
+BOOL
+Or2WinFillConsoleOutputCharacterA(
+ PSZ FuncName,
+ HANDLE hConsoleOutput,
+ CHAR cCharacter,
+ DWORD nLength,
+ COORD dwWriteCoord,
+ LPDWORD lpNumberOfCharsWritten
+ );
+
+BOOL
+Or2WinFillConsoleOutputAttribute(
+ PSZ FuncName,
+ HANDLE hConsoleOutput,
+ WORD wAttribute,
+ DWORD nLength,
+ COORD dwWriteCoord,
+ LPDWORD lpNumberOfAttrsWritten
+ );
+
+BOOL
+Or2WinGetConsoleMode(
+ PSZ FuncName,
+ HANDLE hConsoleHandle,
+ LPDWORD lpMode
+ );
+
+BOOL
+Or2WinGetNumberOfConsoleInputEvents(
+ PSZ FuncName,
+ HANDLE hConsoleInput,
+ LPDWORD lpNumberOfEvents
+ );
+
+BOOL
+Or2WinGetConsoleScreenBufferInfo(
+ PSZ FuncName,
+ HANDLE hConsoleOutput,
+ PCONSOLE_SCREEN_BUFFER_INFO lpConsoleScreenBufferInfo
+ );
+
+COORD
+Or2WinGetLargestConsoleWindowSize(
+ PSZ FuncName,
+ HANDLE hConsoleOutput
+ );
+
+BOOL
+Or2WinGetConsoleCursorInfo(
+ PSZ FuncName,
+ HANDLE hConsoleOutput,
+ PCONSOLE_CURSOR_INFO lpConsoleCursorInfo
+ );
+
+BOOL
+Or2WinGetNumberOfConsoleMouseButtons(
+ PSZ FuncName,
+ LPDWORD lpNumberOfMouseButtons
+ );
+
+BOOL
+Or2WinSetConsoleMode(
+ PSZ FuncName,
+ HANDLE hConsoleHandle,
+ DWORD dwMode
+ );
+
+BOOL
+Or2WinSetConsoleActiveScreenBuffer(
+ PSZ FuncName,
+ HANDLE hConsoleOutput
+ );
+
+BOOL
+Or2WinSetConsoleScreenBufferSize(
+ PSZ FuncName,
+ HANDLE hConsoleOutput,
+ COORD dwSize
+ );
+
+BOOL
+Or2WinSetConsoleCursorPosition(
+ PSZ FuncName,
+ HANDLE hConsoleOutput,
+ COORD dwCursorPosition
+ );
+
+BOOL
+Or2WinSetConsoleCursorInfo(
+ PSZ FuncName,
+ HANDLE hConsoleOutput,
+ PCONSOLE_CURSOR_INFO lpConsoleCursorInfo
+ );
+
+BOOL
+Or2WinScrollConsoleScreenBufferA(
+ PSZ FuncName,
+ HANDLE hConsoleOutput,
+ PSMALL_RECT lpScrollRectangle,
+ PSMALL_RECT lpClipRectangle,
+ COORD dwDestinationOrigin,
+ PCHAR_INFO lpFill
+ );
+
+BOOL
+Or2WinScrollConsoleScreenBufferW(
+ PSZ FuncName,
+ HANDLE hConsoleOutput,
+ PSMALL_RECT lpScrollRectangle,
+ PSMALL_RECT lpClipRectangle,
+ COORD dwDestinationOrigin,
+ PCHAR_INFO lpFill
+ );
+
+BOOL
+Or2WinSetConsoleWindowInfo(
+ PSZ FuncName,
+ HANDLE hConsoleOutput,
+ BOOL bAbsolute,
+ PSMALL_RECT lpConsoleWindow
+ );
+
+BOOL
+Or2WinSetConsoleTextAttribute(
+ PSZ FuncName,
+ HANDLE hConsoleOutput,
+ WORD wAttributes
+ );
+
+BOOL
+Or2WinSetConsoleCtrlHandler(
+ PSZ FuncName,
+ PHANDLER_ROUTINE HandlerRoutine,
+ BOOL Add
+ );
+
+DWORD
+Or2WinGetConsoleTitleW(
+ PSZ FuncName,
+ LPWSTR lpConsoleTitle,
+ DWORD nSize
+ );
+
+BOOL
+Or2WinSetConsoleTitleA(
+ PSZ FuncName,
+ LPSTR lpConsoleTitle
+ );
+
+BOOL
+Or2WinSetConsoleTitleW(
+ PSZ FuncName,
+ LPWSTR lpConsoleTitle
+ );
+
+BOOL
+Or2WinWriteConsoleA(
+ PSZ FuncName,
+ HANDLE hConsoleOutput,
+ CONST VOID *lpBuffer,
+ DWORD nNumberOfCharsToWrite,
+ LPDWORD lpNumberOfCharsWritten,
+ LPVOID lpReserved
+ );
+
+HANDLE
+Or2WinCreateConsoleScreenBuffer(
+ PSZ FuncName,
+ DWORD dwDesiredAccess,
+ DWORD dwShareMode,
+ LPSECURITY_ATTRIBUTES lpSecurityAttributes,
+ DWORD dwFlags,
+ PVOID lpScreenBufferData
+ );
+
+UINT
+Or2WinGetConsoleCP(
+ PSZ FuncName
+ );
+
+BOOL
+Or2WinSetConsoleCP(
+ PSZ FuncName,
+ UINT wCodePageID
+ );
+
+UINT
+Or2WinGetConsoleOutputCP(
+ PSZ FuncName
+ );
+
+BOOL
+Or2WinSetConsoleOutputCP(
+ PSZ FuncName,
+ UINT wCodePageID
+ );
+
+BOOL
+Or2WinBeep(
+ PSZ FuncName,
+ DWORD dwFreq,
+ DWORD dwDuration
+ );
+
+BOOL
+Or2WinCloseHandle(
+ PSZ FuncName,
+ HANDLE hObject
+ );
+
+HANDLE
+Or2WinCreateEventW(
+ PSZ FuncName,
+ LPSECURITY_ATTRIBUTES lpEventAttributes,
+ BOOL bManualReset,
+ BOOL bInitialState,
+ LPWSTR lpName
+ );
+
+HANDLE
+Or2WinCreateFileA(
+ PSZ FuncName,
+ LPCSTR lpFileName,
+ DWORD dwDesiredAccess,
+ DWORD dwShareMode,
+ LPSECURITY_ATTRIBUTES lpSecurityAttributes,
+ DWORD dwCreationDisposition,
+ DWORD dwFlagsAndAttributes,
+ HANDLE hTemplateFile
+ );
+
+HANDLE
+Or2WinCreateFileW(
+ PSZ FuncName,
+ LPCWSTR lpFileName,
+ DWORD dwDesiredAccess,
+ DWORD dwShareMode,
+ LPSECURITY_ATTRIBUTES lpSecurityAttributes,
+ DWORD dwCreationDisposition,
+ DWORD dwFlagsAndAttributes,
+ HANDLE hTemplateFile
+ );
+
+BOOL
+Or2WinCreateProcessA(
+ PSZ FuncName,
+ LPCSTR lpApplicationName,
+ LPCSTR lpCommandLine,
+ LPSECURITY_ATTRIBUTES lpProcessAttributes,
+ LPSECURITY_ATTRIBUTES lpThreadAttributes,
+ BOOL bInheritHandles,
+ DWORD dwCreationFlags,
+ LPVOID lpEnvironment,
+ LPSTR lpCurrentDirectory,
+ LPSTARTUPINFOA lpStartupInfo,
+ LPPROCESS_INFORMATION lpProcessInformation
+ );
+
+HANDLE
+Or2WinCreateThread(
+ PSZ FuncName,
+ LPSECURITY_ATTRIBUTES lpThreadAttributes,
+ DWORD dwStackSize,
+ LPTHREAD_START_ROUTINE lpStartAddress,
+ LPVOID lpParameter,
+ DWORD dwCreationFlags,
+ LPDWORD lpThreadId
+ );
+
+BOOL
+Or2WinDuplicateHandle(
+ PSZ FuncName,
+ HANDLE hSourceProcessHandle,
+ HANDLE hSourceHandle,
+ HANDLE hTargetProcessHandle,
+ LPHANDLE lpTargetHandle,
+ DWORD dwDesiredAccess,
+ BOOL bInheritHandle,
+ DWORD dwOptions
+ );
+
+VOID
+Or2WinEnterCriticalSection(
+ PSZ FuncName,
+ LPCRITICAL_SECTION lpCriticalSection
+ );
+
+LPSTR
+Or2WinGetCommandLineA(
+ PSZ FuncName
+ );
+
+COORD
+Or2WinGetConsoleFontSize(
+ PSZ FuncName,
+ HANDLE hConsoleOutput,
+ DWORD nFont
+ );
+
+DWORD
+Or2WinGetFileType(
+ PSZ FuncName,
+ HANDLE hFile
+ );
+
+DWORD
+Or2WinGetFullPathNameA(
+ PSZ FuncName,
+ LPCSTR lpFileName,
+ DWORD nBufferLength,
+ LPSTR lpBuffer,
+ LPSTR *lpFilePart
+ );
+
+HANDLE
+Or2WinGetModuleHandleA(
+ PSZ FuncName,
+ LPCSTR lpModuleName
+ );
+
+HANDLE
+Or2WinGetStdHandle(
+ PSZ FuncName,
+ DWORD nStdHandle
+ );
+
+UINT
+Or2WinGetSystemDirectoryA(
+ PSZ FuncName,
+ LPSTR lpBuffer,
+ UINT uSize
+ );
+
+VOID
+Or2WinInitializeCriticalSection(
+ PSZ FuncName,
+ LPCRITICAL_SECTION lpCriticalSection
+ );
+
+VOID
+Or2WinLeaveCriticalSection(
+ PSZ FuncName,
+ LPCRITICAL_SECTION lpCriticalSection
+ );
+
+int
+Or2WinLoadStringA(
+ PSZ FuncName,
+ HINSTANCE hInstance,
+ UINT uID,
+ LPSTR lpBuffer,
+ int nBufferMax
+ );
+
+int
+Or2WinMessageBoxA(
+ PSZ FuncName,
+ HWND hWnd ,
+ LPCSTR lpText,
+ LPCSTR lpCaption ,
+ UINT uType
+ );
+
+HANDLE
+Or2WinOpenProcess(
+ PSZ FuncName,
+ DWORD dwDesiredAccess,
+ BOOL bInheritHandle,
+ DWORD dwProcessId
+ );
+
+DWORD
+Or2WinResumeThread(
+ PSZ FuncName,
+ HANDLE hThread
+ );
+
+UINT
+Or2WinSetErrorMode(
+ PSZ FuncName,
+ UINT uMode
+ );
+
+BOOL
+Or2WinSetEvent(
+ PSZ FuncName,
+ HANDLE hEvent
+ );
+
+BOOL
+Or2WinSetStdHandle(
+ PSZ FuncName,
+ DWORD nStdHandle,
+ HANDLE hHandle
+ );
+
+LCID
+Or2WinGetThreadLocale(
+ PSZ FuncName
+ );
+
+BOOL
+Or2WinSetThreadLocale(
+ PSZ FuncName,
+ LCID Locale
+ );
+
+BOOL
+Or2WinSetThreadPriority(
+ PSZ FuncName,
+ HANDLE hThread,
+ int nPriority
+ );
+
+BOOL
+Or2WinSystemParametersInfoA(
+ PSZ FuncName,
+ UINT uiAction,
+ UINT uiParam,
+ PVOID pvParam,
+ UINT fWinIni
+ );
+
+BOOL
+Or2WinTerminateThread(
+ PSZ FuncName,
+ HANDLE hThread,
+ DWORD dwExitCode
+ );
+
+BOOL
+Or2WinVerifyConsoleIoHandle(
+ PSZ FuncName,
+ HANDLE hIoHandle
+ );
+
+DWORD
+Or2WinWaitForSingleObject(
+ PSZ FuncName,
+ HANDLE hHandle,
+ DWORD dwMilliseconds
+ );
+
+BOOL
+Or2WinWriteFile(
+ PSZ FuncName,
+ HANDLE hFile,
+ CONST VOID *lpBuffer,
+ DWORD nNumberOfBytesToWrite,
+ LPDWORD lpNumberOfBytesWritten,
+ LPOVERLAPPED lpOverlapped
+ );
+
+int
+Or2Win_read(
+ PSZ FuncName,
+ int hFile,
+ void *Buffer,
+ unsigned int Length
+ );
+
+BOOL
+Or2WinReadFile(
+ PSZ FuncName,
+ HANDLE hFile,
+ LPVOID lpBuffer,
+ DWORD nNumberOfBytesToRead,
+ LPDWORD lpNumberOfBytesRead,
+ LPOVERLAPPED lpOverlapped
+ );
+
+BOOL
+Or2WinIsValidCodePage(
+ PSZ FuncName,
+ UINT CodePage
+ );
+
+UINT
+Or2WinGetACP(
+ PSZ FuncName
+ );
+
+UINT
+Or2WinGetOEMCP(
+ PSZ FuncName
+ );
+
+BOOL
+Or2WinGetCPInfo(
+ PSZ FuncName,
+ UINT CodePage,
+ LPCPINFO lpCPInfo
+ );
+
+BOOL
+Or2WinIsDBCSLeadByte(
+ PSZ FuncName,
+ BYTE TestChar
+ );
+
+int
+Or2WinMultiByteToWideChar(
+ PSZ FuncName,
+ UINT CodePage,
+ DWORD dwFlags,
+ LPCSTR lpMultiByteStr,
+ int cchMultiByte,
+ LPWSTR lpWideCharStr,
+ int cchWideChar
+ );
+
+int
+Or2WinWideCharToMultiByte(
+ PSZ FuncName,
+ UINT CodePage,
+ DWORD dwFlags,
+ LPCWSTR lpWideCharStr,
+ int cchWideChar,
+ LPSTR lpMultiByteStr,
+ int cchMultiByte,
+ LPSTR lpDefaultChar,
+ LPBOOL lpUsedDefaultChar
+ );
+
+int
+Or2WinCompareStringW(
+ PSZ FuncName,
+ LCID Locale,
+ DWORD dwCmpFlags,
+ LPCWSTR lpString1,
+ int cchCount1,
+ LPCWSTR lpString2,
+ int cchCount2
+ );
+
+int
+Or2WinLCMapStringW(
+ PSZ FuncName,
+ LCID Locale,
+ DWORD dwMapFlags,
+ LPCWSTR lpSrcStr,
+ int cchSrc,
+ LPWSTR lpDestStr,
+ int cchDest
+ );
+
+int
+Or2WinGetLocaleInfoW(
+ PSZ FuncName,
+ LCID Locale,
+ LCTYPE LCType,
+ LPWSTR lpLCData,
+ int cchData
+ );
+
+LANGID
+Or2WinGetSystemDefaultLangID(
+ PSZ FuncName
+ );
+
+LANGID
+Or2WinGetUserDefaultLangID(
+ PSZ FuncName
+ );
+
+LCID
+Or2WinGetSystemDefaultLCID(
+ PSZ FuncName
+ );
+
+LCID
+Or2WinGetUserDefaultLCID(
+ PSZ FuncName
+ );
+
+BOOL
+Or2WinGetStringTypeW(
+ PSZ FuncName,
+ DWORD dwInfoType,
+ LPCWSTR lpSrcStr,
+ int cchSrc,
+ LPWORD lpCharType
+ );
+
+int
+Or2WinFoldStringW(
+ PSZ FuncName,
+ DWORD dwMapFlags,
+ LPCWSTR lpSrcStr,
+ int cchSrc,
+ LPWSTR lpDestStr,
+ int cchDest
+ );
+
+HANDLE
+Or2WinHeapCreate(
+ PSZ FuncName,
+ DWORD flOptions,
+ DWORD dwInitialSize,
+ DWORD dwMaximumSize
+ );
+
+LPSTR
+Or2WinHeapAlloc(
+ PSZ FuncName,
+ HANDLE hHeap,
+ DWORD dwFlags,
+ DWORD dwBytes
+ );
+
+BOOL
+Or2WinHeapFree(
+ PSZ FuncName,
+ HANDLE hHeap,
+ DWORD dwFlags,
+ LPSTR lpMem
+ );
+
+#else
+#define Or2WinPeekConsoleInputA PeekConsoleInputA
+#define Or2WinReadConsoleInputA ReadConsoleInputA
+#define Or2WinWriteConsoleInputA WriteConsoleInputA
+#define Or2WinReadConsoleOutputCharacterA ReadConsoleOutputCharacterA
+#define Or2WinReadConsoleOutputCharacterW ReadConsoleOutputCharacterW
+#define Or2WinReadConsoleOutputAttribute ReadConsoleOutputAttribute
+#define Or2WinWriteConsoleOutputCharacterA WriteConsoleOutputCharacterA
+#define Or2WinWriteConsoleOutputCharacterW WriteConsoleOutputCharacterW
+#define Or2WinWriteConsoleOutputAttribute WriteConsoleOutputAttribute
+#define Or2WinFillConsoleOutputCharacterA FillConsoleOutputCharacterA
+#define Or2WinFillConsoleOutputAttribute FillConsoleOutputAttribute
+#define Or2WinGetConsoleMode GetConsoleMode
+#define Or2WinGetNumberOfConsoleInputEvents GetNumberOfConsoleInputEvents
+#define Or2WinGetConsoleScreenBufferInfo GetConsoleScreenBufferInfo
+#define Or2WinGetLargestConsoleWindowSize GetLargestConsoleWindowSize
+#define Or2WinGetConsoleCursorInfo GetConsoleCursorInfo
+#define Or2WinGetNumberOfConsoleMouseButtons GetNumberOfConsoleMouseButtons
+#define Or2WinSetConsoleMode SetConsoleMode
+#define Or2WinSetConsoleActiveScreenBuffer SetConsoleActiveScreenBuffer
+#define Or2WinSetConsoleScreenBufferSize SetConsoleScreenBufferSize
+#define Or2WinSetConsoleCursorPosition SetConsoleCursorPosition
+#define Or2WinSetConsoleCursorInfo SetConsoleCursorInfo
+#define Or2WinScrollConsoleScreenBufferA ScrollConsoleScreenBufferA
+#define Or2WinScrollConsoleScreenBufferW ScrollConsoleScreenBufferW
+#define Or2WinSetConsoleWindowInfo SetConsoleWindowInfo
+#define Or2WinSetConsoleTextAttribute SetConsoleTextAttribute
+#define Or2WinSetConsoleCtrlHandler SetConsoleCtrlHandler
+#define Or2WinGetConsoleTitleW GetConsoleTitleW
+#define Or2WinSetConsoleTitleA SetConsoleTitleA
+#define Or2WinSetConsoleTitleW SetConsoleTitleW
+#define Or2WinWriteConsoleA WriteConsoleA
+#define Or2WinCreateConsoleScreenBuffer CreateConsoleScreenBuffer
+#define Or2WinGetConsoleCP GetConsoleCP
+#define Or2WinSetConsoleCP SetConsoleCP
+#define Or2WinGetConsoleOutputCP GetConsoleOutputCP
+#define Or2WinSetConsoleOutputCP SetConsoleOutputCP
+#define Or2WinBeep Beep
+#define Or2WinCloseHandle CloseHandle
+#define Or2WinCreateEventW CreateEventW
+#define Or2WinCreateFileA CreateFileA
+#define Or2WinCreateFileW CreateFileW
+#define Or2WinCreateProcessA CreateProcessA
+#define Or2WinCreateThread CreateThread
+#define Or2WinDuplicateHandle DuplicateHandle
+#define Or2WinEnterCriticalSection EnterCriticalSection
+#define Or2WinGetCommandLineA GetCommandLineA
+#define Or2WinGetConsoleFontSize GetConsoleFontSize
+#define Or2WinGetCurrentConsoleFont GetCurrentConsoleFont
+#define Or2WinGetFileType GetFileType
+#define Or2WinGetFullPathNameA GetFullPathNameA
+#define Or2WinGetModuleHandleA GetModuleHandleA
+#define Or2WinGetStdHandle GetStdHandle
+#define Or2WinGetSystemDirectoryA GetSystemDirectoryA
+#define Or2WinInitializeCriticalSection InitializeCriticalSection
+#define Or2WinLeaveCriticalSection LeaveCriticalSection
+#define Or2WinLoadStringA LoadStringA
+#define Or2WinMessageBoxA MessageBoxA
+#define Or2WinOpenProcess OpenProcess
+#define Or2WinResumeThread ResumeThread
+#define Or2WinSetErrorMode SetErrorMode
+#define Or2WinSetEvent SetEvent
+#define Or2WinSetStdHandle SetStdHandle
+#define Or2WinGetThreadLocale GetThreadLocale
+#define Or2WinSetThreadLocale SetThreadLocale
+#define Or2WinSetThreadPriority SetThreadPriority
+#define Or2WinSystemParametersInfoA SystemParametersInfoA
+#define Or2WinTerminateThread TerminateThread
+#define Or2WinVerifyConsoleIoHandle VerifyConsoleIoHandle
+#define Or2WinWaitForSingleObject WaitForSingleObject
+#define Or2WinWriteFile WriteFile
+#define Or2Win_read _read
+#define Or2WinReadFile ReadFile
+#define Or2WinIsValidCodePage IsValidCodePage
+#define Or2WinGetACP GetACP
+#define Or2WinGetOEMCP GetOEMCP
+#define Or2WinGetCPInfo GetCPInfo
+#define Or2WinIsDBCSLeadByte IsDBCSLeadByte
+#define Or2WinMultiByteToWideChar MultiByteToWideChar
+#define Or2WinWideCharToMultiByte WideCharToMultiByte
+#define Or2WinCompareStringW CompareStringW
+#define Or2WinLCMapStringW LCMapStringW
+#define Or2WinGetLocaleInfoW GetLocaleInfoW
+#define Or2WinGetSystemDefaultLangID GetSystemDefaultLangID
+#define Or2WinGetUserDefaultLangID GetUserDefaultLangID
+#define Or2WinGetSystemDefaultLCID GetSystemDefaultLCID
+#define Or2WinGetUserDefaultLCID GetUserDefaultLCID
+#define Or2WinGetStringTypeW GetStringTypeW
+#define Or2WinFoldStringW FoldStringW
+#define Or2WinHeapCreate HeapCreate
+#define Or2WinHeapAlloc HeapAlloc
+#define Or2WinHeapFree HeapFree
+#endif