static void KEYBOARD_TickHandler(void) {
	if (keyb.reset)
		return;

	if (keyb.active && keyb.scanning) {
		if (keyb.pending_key >= 0) {
			KEYBOARD_AddKey((KBD_KEYS)keyb.pending_key,keyb.pending_key_state);
			keyb.pending_key = -1;
		}
		else if (keyb.repeat.wait) {
			keyb.repeat.wait--;
			if (!keyb.repeat.wait) KEYBOARD_AddKey(keyb.repeat.key,true);
		}
	}
}
Beispiel #2
0
void keyboard_event(bool down, unsigned keycode, uint32_t character, uint16_t key_modifiers)
{
    for (int i = 0; keyMap[i].retroID; i ++)
    {
        if (keyMap[i].retroID == keycode)
        {
            keyboardState[keyMap[i].dosboxID] = down;
            KEYBOARD_AddKey(keyMap[i].dosboxID, down);
            return;
        }
    }
}
Beispiel #3
0
static void KEYBOARD_TickHandler(void) {
	if (keyb.repeat.wait) {
		keyb.repeat.wait--;
		if (!keyb.repeat.wait) KEYBOARD_AddKey(keyb.repeat.key,true);
	}
}
Beispiel #4
0
 void release() const
 {
         KEYBOARD_AddKey(keyMap[keyID].dosboxID, false);
 }
Beispiel #5
0
 void press() const
 {
         KEYBOARD_AddKey(keyMap[keyID].dosboxID, true);
 }