Win32 fixes: redirection and file codepage
This commit is contained in:
@@ -132,7 +132,9 @@ void GKbd::Init() {
|
||||
osversion.dwOSVersionInfoSize = sizeof(OSVERSIONINFO);
|
||||
GetVersionEx(&osversion);
|
||||
gkbd_nt = (osversion.dwPlatformId & VER_PLATFORM_WIN32_NT) ? true : false;
|
||||
gkbd_hin = GetStdHandle(STD_INPUT_HANDLE);
|
||||
gkbd_hin = CreateFile("CONIN$", GENERIC_READ | GENERIC_WRITE,
|
||||
FILE_SHARE_READ | FILE_SHARE_WRITE, NULL,
|
||||
OPEN_EXISTING, 0, NULL);
|
||||
GetConsoleMode(gkbd_hin, &gkbd_kbdmode);
|
||||
if(gkbd_kbdmode & KBD_TEXTMODE)
|
||||
SetConsoleMode(gkbd_hin, gkbd_kbdmode & ~KBD_TEXTMODE);
|
||||
|
@@ -130,6 +130,7 @@ int g_init_os(int flags) {
|
||||
memset(&WinVer, 0, sizeof(OSVERSIONINFO));
|
||||
WinVer.dwOSVersionInfoSize = sizeof (OSVERSIONINFO);
|
||||
GetVersionEx(&WinVer);
|
||||
SetFileApisToOEM();
|
||||
GetConsoleTitle(ge_win_coldtitle, sizeof(ge_win_coldtitle));
|
||||
if(WinVer.dwPlatformId == VER_PLATFORM_WIN32_NT) {
|
||||
for(i = 0; i < 256; i++) {
|
||||
|
@@ -393,7 +393,11 @@ int GVid::detectadapter() {
|
||||
|
||||
#elif defined(__WIN32__)
|
||||
|
||||
gvid_hout = GetStdHandle(STD_OUTPUT_HANDLE);
|
||||
gvid_hout = CreateFile("CONOUT$", GENERIC_READ | GENERIC_WRITE,
|
||||
FILE_SHARE_WRITE | FILE_SHARE_READ, NULL,
|
||||
OPEN_EXISTING,
|
||||
FILE_FLAG_NO_BUFFERING|FILE_FLAG_WRITE_THROUGH, NULL);
|
||||
// gvid_hout = GetStdHandle(STD_OUTPUT_HANDLE);
|
||||
|
||||
adapter = V_VGA;
|
||||
|
||||
|
@@ -1,3 +1,4 @@
|
||||
|
||||
// This may look like C code, but it is really -*- C++ -*-
|
||||
|
||||
// ------------------------------------------------------------------
|
||||
|
Reference in New Issue
Block a user