#include <windows.h>
#include <iostream.h>


int main()
{
  SHORT KeyState;
  SHORT ArrKeyState[256];
  long CheckSum;
  long OldCheckSum;

  OldCheckSum = 987654;          // dummy

  while (1)
  {
    CheckSum = 0;
    for (int i = 0; i < 256; i++)
    {
      KeyState = GetAsyncKeyState(i);
      CheckSum += KeyState;
      ArrKeyState[i] = KeyState;

    }

    if (OldCheckSum != CheckSum)
    {
      for (int i = 0; i < 256; i++)
      {
        // -32767 = KeyDown
        if (ArrKeyState[i] == -32767)

        {
          cout << "Key " << i << " pressed. (" << (char) i << ")" << endl;
        }
      }
    }
    OldCheckSum = CheckSum;
  }
}
