1 /* ResidualVM - A 3D game interpreter 2 * 3 * ResidualVM is the legal property of its developers, whose names 4 * are too numerous to list here. Please refer to the AUTHORS 5 * file distributed with this source distribution. 6 * 7 * Additional copyright for this file: 8 * Copyright (C) 1999-2000 Revolution Software Ltd. 9 * This code is based on source code created by Revolution Software, 10 * used with permission. 11 * 12 * This program is free software; you can redistribute it and/or 13 * modify it under the terms of the GNU General Public License 14 * as published by the Free Software Foundation; either version 2 15 * of the License, or (at your option) any later version. 16 * 17 * This program is distributed in the hope that it will be useful, 18 * but WITHOUT ANY WARRANTY; without even the implied warranty of 19 * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the 20 * GNU General Public License for more details. 21 * 22 * You should have received a copy of the GNU General Public License 23 * along with this program; if not, write to the Free Software 24 * Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA. 25 * 26 */ 27 28 #ifndef ICB_DINPUTH 29 #define ICB_DINPUTH 30 31 #include "common/keyboard.h" 32 33 namespace ICB { 34 35 extern bool8 keyboard_buf_scancodes[Common::KEYCODE_LAST]; 36 extern bool8 repeats_scancodes[Common::KEYCODE_LAST]; 37 38 void Init_direct_input(); 39 void setKeyState(Common::KeyCode key, bool pressed); 40 bool8 Read_DI_keys(uint32 key); 41 bool8 Read_DI_once_keys(uint32 key); 42 43 bool8 DI_key_waiting(); 44 uint32 Get_DI_key_press(); 45 void Clear_DI_key_buffer(); 46 void SetDefaultKeys(); 47 const char *GetKeyName(uint32 key); 48 49 } // End of namespace ICB 50 51 #endif 52