[SDK] One step further towards ReactOS source code tree restructure: the sdk folder...
[reactos.git] / reactos / lib / sdk / crt / conio / kbhit.c
diff --git a/reactos/lib/sdk/crt/conio/kbhit.c b/reactos/lib/sdk/crt/conio/kbhit.c
deleted file mode 100644 (file)
index 6855263..0000000
+++ /dev/null
@@ -1,99 +0,0 @@
-/*
- * COPYRIGHT:   See COPYING in the top level directory
- * PROJECT:     ReactOS system libraries
- * FILE:        lib/sdk/crt/conio/kbhit.c
- * PURPOSE:     Checks for keyboard hits
- * PROGRAMERS:  Ariadne, Russell
- * UPDATE HISTORY:
- *              28/12/98: Created
- *              27/9/08: An almost 100% working version of _kbhit()
- */
-
-#include <precomp.h>
-
-static CRITICAL_SECTION CriticalSection;
-volatile BOOL CriticalSectionInitialized=FALSE;
-
-/*
- * @implemented
- */
-
-int _kbhit(void)
-{
-    PINPUT_RECORD InputRecord = NULL;
-    DWORD NumberRead = 0;
-    DWORD EventsRead = 0;
-    DWORD RecordIndex = 0;
-    DWORD BufferIndex = 0;
-    HANDLE StdInputHandle = 0;
-    DWORD ConsoleInputMode = 0;
-
-    /* Attempt some thread safety */
-    if (!CriticalSectionInitialized)
-    {
-        InitializeCriticalSectionAndSpinCount(&CriticalSection, 0x80000400);
-        CriticalSectionInitialized = TRUE;
-    }
-
-    EnterCriticalSection(&CriticalSection);
-
-    if (char_avail)
-    {
-        LeaveCriticalSection(&CriticalSection);
-        return 1;
-    }
-
-    StdInputHandle = GetStdHandle(STD_INPUT_HANDLE);
-
-    /* Turn off processed input so we get key modifiers as well */
-    GetConsoleMode(StdInputHandle, &ConsoleInputMode);
-
-    SetConsoleMode(StdInputHandle, ConsoleInputMode & ~ENABLE_PROCESSED_INPUT);
-
-    /* Start the process */
-    if (!GetNumberOfConsoleInputEvents(StdInputHandle, &EventsRead))
-    {
-        LeaveCriticalSection(&CriticalSection);
-        return 0;
-    }
-
-    if (!EventsRead)
-    {
-        LeaveCriticalSection(&CriticalSection);
-        return 0;
-    }
-
-    if (!(InputRecord = (PINPUT_RECORD)malloc(EventsRead * sizeof(INPUT_RECORD))))
-    {
-        LeaveCriticalSection(&CriticalSection);
-        return 0;
-    }
-
-    if (!PeekConsoleInput(StdInputHandle, InputRecord, EventsRead, &NumberRead))
-    {
-        free(InputRecord);
-        LeaveCriticalSection(&CriticalSection);
-        return 0;
-    }
-
-    for (RecordIndex = 0; RecordIndex < NumberRead; RecordIndex++)
-    {
-        if (InputRecord[RecordIndex].EventType == KEY_EVENT &&
-            InputRecord[RecordIndex].Event.KeyEvent.bKeyDown)
-        {
-            BufferIndex = 1;
-            break;
-        }
-    }
-
-    free(InputRecord);
-
-    /* Restore console input mode */
-    SetConsoleMode(StdInputHandle, ConsoleInputMode);
-
-    LeaveCriticalSection(&CriticalSection);
-
-    return BufferIndex;
-}
-
-