forked from dolphin-emu/dolphin
		
	
		
			
				
	
	
		
			199 lines
		
	
	
		
			4.0 KiB
		
	
	
	
		
			C
		
	
	
	
	
	
			
		
		
	
	
			199 lines
		
	
	
		
			4.0 KiB
		
	
	
	
		
			C
		
	
	
	
	
	
| // Copyright 2015 Dolphin Emulator Project
 | |
| // Licensed under GPLv2+
 | |
| // Refer to the license.txt file included.
 | |
| 
 | |
| #pragma once
 | |
| 
 | |
| #include "Common/CommonTypes.h"
 | |
| 
 | |
| enum KeyMasks
 | |
| {
 | |
| 	KEYMASK_HOME = (1 << 0),
 | |
| 	KEYMASK_END = (1 << 1),
 | |
| 	KEYMASK_PGUP = (1 << 2),
 | |
| 	KEYMASK_PGDN = (1 << 3),
 | |
| 	KEYMASK_SCROLLLOCK = (1 << 4),
 | |
| 	KEYMASK_A = (1 << 5),
 | |
| 	KEYMASK_B = (1 << 6),
 | |
| 	KEYMASK_C = (1 << 7),
 | |
| 	KEYMASK_D = (1 << 8),
 | |
| 	KEYMASK_E = (1 << 9),
 | |
| 	KEYMASK_F = (1 << 10),
 | |
| 	KEYMASK_G = (1 << 11),
 | |
| 	KEYMASK_H = (1 << 12),
 | |
| 	KEYMASK_I = (1 << 13),
 | |
| 	KEYMASK_J = (1 << 14),
 | |
| 	KEYMASK_K = (1 << 15),
 | |
| 	KEYMASK_L = (1 << 0),
 | |
| 	KEYMASK_M = (1 << 1),
 | |
| 	KEYMASK_N = (1 << 2),
 | |
| 	KEYMASK_O = (1 << 3),
 | |
| 	KEYMASK_P = (1 << 4),
 | |
| 	KEYMASK_Q = (1 << 5),
 | |
| 	KEYMASK_R = (1 << 6),
 | |
| 	KEYMASK_S = (1 << 7),
 | |
| 	KEYMASK_T = (1 << 8),
 | |
| 	KEYMASK_U = (1 << 9),
 | |
| 	KEYMASK_V = (1 << 10),
 | |
| 	KEYMASK_W = (1 << 11),
 | |
| 	KEYMASK_X = (1 << 12),
 | |
| 	KEYMASK_Y = (1 << 13),
 | |
| 	KEYMASK_Z = (1 << 14),
 | |
| 	KEYMASK_1 = (1 << 15),
 | |
| 	KEYMASK_2 = (1 << 0),
 | |
| 	KEYMASK_3 = (1 << 1),
 | |
| 	KEYMASK_4 = (1 << 2),
 | |
| 	KEYMASK_5 = (1 << 3),
 | |
| 	KEYMASK_6 = (1 << 4),
 | |
| 	KEYMASK_7 = (1 << 5),
 | |
| 	KEYMASK_8 = (1 << 6),
 | |
| 	KEYMASK_9 = (1 << 7),
 | |
| 	KEYMASK_0 = (1 << 8),
 | |
| 	KEYMASK_MINUS = (1 << 9),
 | |
| 	KEYMASK_PLUS = (1 << 10),
 | |
| 	KEYMASK_PRINTSCR = (1 << 11),
 | |
| 	KEYMASK_BRACE_OPEN = (1 << 12),
 | |
| 	KEYMASK_BRACE_CLOSE = (1 << 13),
 | |
| 	KEYMASK_COLON = (1 << 14),
 | |
| 	KEYMASK_QUOTE = (1 << 15),
 | |
| 	KEYMASK_HASH = (1 << 0),
 | |
| 	KEYMASK_COMMA = (1 << 1),
 | |
| 	KEYMASK_PERIOD = (1 << 2),
 | |
| 	KEYMASK_QUESTIONMARK = (1 << 3),
 | |
| 	KEYMASK_INTERNATIONAL1 = (1 << 4),
 | |
| 	KEYMASK_F1 = (1 << 5),
 | |
| 	KEYMASK_F2 = (1 << 6),
 | |
| 	KEYMASK_F3 = (1 << 7),
 | |
| 	KEYMASK_F4 = (1 << 8),
 | |
| 	KEYMASK_F5 = (1 << 9),
 | |
| 	KEYMASK_F6 = (1 << 10),
 | |
| 	KEYMASK_F7 = (1 << 11),
 | |
| 	KEYMASK_F8 = (1 << 12),
 | |
| 	KEYMASK_F9 = (1 << 13),
 | |
| 	KEYMASK_F10 = (1 << 14),
 | |
| 	KEYMASK_F11 = (1 << 15),
 | |
| 	KEYMASK_F12 = (1 << 0),
 | |
| 	KEYMASK_ESC = (1 << 1),
 | |
| 	KEYMASK_INSERT = (1 << 2),
 | |
| 	KEYMASK_DELETE = (1 << 3),
 | |
| 	KEYMASK_TILDE = (1 << 4),
 | |
| 	KEYMASK_BACKSPACE = (1 << 5),
 | |
| 	KEYMASK_TAB = (1 << 6),
 | |
| 	KEYMASK_CAPSLOCK = (1 << 7),
 | |
| 	KEYMASK_LEFTSHIFT = (1 << 8),
 | |
| 	KEYMASK_RIGHTSHIFT = (1 << 9),
 | |
| 	KEYMASK_LEFTCONTROL = (1 << 10),
 | |
| 	KEYMASK_RIGHTALT = (1 << 11),
 | |
| 	KEYMASK_LEFTWINDOWS = (1 << 12),
 | |
| 	KEYMASK_SPACE = (1 << 13),
 | |
| 	KEYMASK_RIGHTWINDOWS = (1 << 14),
 | |
| 	KEYMASK_MENU = (1 << 15),
 | |
| 	KEYMASK_LEFTARROW = (1 << 0),
 | |
| 	KEYMASK_DOWNARROW = (1 << 1),
 | |
| 	KEYMASK_UPARROW = (1 << 2),
 | |
| 	KEYMASK_RIGHTARROW = (1 << 3),
 | |
| 	KEYMASK_ENTER = (1 << 4),
 | |
| };
 | |
| 
 | |
| enum KeyScanCode
 | |
| {
 | |
| 	KEY_HOME = 0x06,
 | |
| 	KEY_END = 0x07,
 | |
| 	KEY_PGUP = 0x08,
 | |
| 	KEY_PGDN = 0x09,
 | |
| 	KEY_SCROLLLOCK = 0x0A,
 | |
| 	KEY_A = 0x10,
 | |
| 	KEY_B = 0x11,
 | |
| 	KEY_C = 0x12,
 | |
| 	KEY_D = 0x13,
 | |
| 	KEY_E = 0x14,
 | |
| 	KEY_F = 0x15,
 | |
| 	KEY_G = 0x16,
 | |
| 	KEY_H = 0x17,
 | |
| 	KEY_I = 0x18,
 | |
| 	KEY_J = 0x19,
 | |
| 	KEY_K = 0x1A,
 | |
| 	KEY_L = 0x1B,
 | |
| 	KEY_M = 0x1C,
 | |
| 	KEY_N = 0x1D,
 | |
| 	KEY_O = 0x1E,
 | |
| 	KEY_P = 0x1F,
 | |
| 	KEY_Q = 0x20,
 | |
| 	KEY_R = 0x21,
 | |
| 	KEY_S = 0x22,
 | |
| 	KEY_T = 0x23,
 | |
| 	KEY_U = 0x24,
 | |
| 	KEY_V = 0x25,
 | |
| 	KEY_W = 0x26,
 | |
| 	KEY_X = 0x27,
 | |
| 	KEY_Y = 0x28,
 | |
| 	KEY_Z = 0x29,
 | |
| 	KEY_1 = 0x2A,
 | |
| 	KEY_2 = 0x2B,
 | |
| 	KEY_3 = 0x2C,
 | |
| 	KEY_4 = 0x2D,
 | |
| 	KEY_5 = 0x2E,
 | |
| 	KEY_6 = 0x2F,
 | |
| 	KEY_7 = 0x30,
 | |
| 	KEY_8 = 0x31,
 | |
| 	KEY_9 = 0x32,
 | |
| 	KEY_0 = 0x33,
 | |
| 	KEY_MINUS = 0x34,
 | |
| 	KEY_PLUS = 0x35,
 | |
| 	KEY_PRINTSCR = 0x36,
 | |
| 	KEY_BRACE_OPEN = 0x37,
 | |
| 	KEY_BRACE_CLOSE = 0x38,
 | |
| 	KEY_COLON = 0x39,
 | |
| 	KEY_QUOTE = 0x3A,
 | |
| 	KEY_HASH = 0x3B,
 | |
| 	KEY_COMMA = 0x3C,
 | |
| 	KEY_PERIOD = 0x3D,
 | |
| 	KEY_QUESTIONMARK = 0x3E,
 | |
| 	KEY_INTERNATIONAL1 = 0x3F,
 | |
| 	KEY_F1 = 0x40,
 | |
| 	KEY_F2 = 0x41,
 | |
| 	KEY_F3 = 0x42,
 | |
| 	KEY_F4 = 0x43,
 | |
| 	KEY_F5 = 0x44,
 | |
| 	KEY_F6 = 0x45,
 | |
| 	KEY_F7 = 0x46,
 | |
| 	KEY_F8 = 0x47,
 | |
| 	KEY_F9 = 0x48,
 | |
| 	KEY_F10 = 0x49,
 | |
| 	KEY_F11 = 0x4A,
 | |
| 	KEY_F12 = 0x4B,
 | |
| 	KEY_ESC = 0x4C,
 | |
| 	KEY_INSERT = 0x4D,
 | |
| 	KEY_DELETE = 0x4E,
 | |
| 	KEY_TILDE = 0x4F,
 | |
| 	KEY_BACKSPACE = 0x50,
 | |
| 	KEY_TAB = 0x51,
 | |
| 	KEY_CAPSLOCK = 0x53,
 | |
| 	KEY_LEFTSHIFT = 0x54,
 | |
| 	KEY_RIGHTSHIFT = 0x55,
 | |
| 	KEY_LEFTCONTROL = 0x56,
 | |
| 	KEY_RIGHTALT = 0x57,
 | |
| 	KEY_LEFTWINDOWS = 0x58,
 | |
| 	KEY_SPACE = 0x59,
 | |
| 	KEY_RIGHTWINDOWS = 0x5A,
 | |
| 	KEY_MENU = 0x5B,
 | |
| 	KEY_LEFTARROW = 0x5C,
 | |
| 	KEY_DOWNARROW = 0x5D,
 | |
| 	KEY_UPARROW = 0x5E,
 | |
| 	KEY_RIGHTARROW = 0x5F,
 | |
| 	KEY_ENTER = 0x61
 | |
| 
 | |
| };
 | |
| 
 | |
| struct KeyboardStatus
 | |
| {
 | |
| 	u16 key0x;
 | |
| 	u16 key1x;
 | |
| 	u16 key2x;
 | |
| 	u16 key3x;
 | |
| 	u16 key4x;
 | |
| 	u16 key5x;
 | |
| 	u16 key6x;
 | |
| 	s8  err;
 | |
| };
 |