SDL_PumpEvents();\r
        oldButtons=buttons;\r
        buttons=SDL_GetRelativeMouseState(&dX,&dY);\r
-       memcpy((unsigned char*)(*oldKeys),keys,sizeof(unsigned char)*keyCount);\r
+       memcpy(oldKeys,keys,sizeof(unsigned char)*keyCount);\r
        keys=SDL_GetKeyState(&keyCount);\r
 }\r
 \r
 
 #endif // _MSC_VER > 1000\r
 \r
 #include "engine.h"\r
+#include "Amaltheia/Input.h"\r
 #ifdef WIN32\r
 #define DIRECTINPUT_VERSION 0x0800\r
 #include <dinput.h>\r
        static unsigned int buttons;\r
        static unsigned int oldButtons;\r
 \r
-       static bool inline curKey(int index) { return (keys[index] & 0x80) != 0; }\r
-       static bool inline oldKey(int index) { return (oldKeys[index] & 0x80) != 0; }\r
+       static bool inline curKey(int index) { return (keys[index]) != 0; }\r
+       static bool inline oldKey(int index) { return (oldKeys[index]) != 0; }\r
 \r
        //some helper functions to make certain things easier\r
        //static bool inline keyDown(int index)         { return ( curKey(index))&&(!oldKey(index)); }\r