Files
2026-05-08 15:09:47 +02:00

104 lines
2.6 KiB
C

#pragma once
#define KEYBOARD_KEYS_COUNT 80
typedef enum {
KEYBOARD_GPIO0 = 0,
KEYBOARD_ESC = 1,
KEYBOARD_TAB = 2,
KEYBOARD_MOD_FN = 3,
KEYBOARD_MOD_CTRL = 4,
KEYBOARD_1 = 5,
KEYBOARD_Q = 6,
KEYBOARD_MOD_SHIFT = 7,
KEYBOARD_MOD_OPT = 8,
KEYBOARD_2 = 11,
KEYBOARD_W = 12,
KEYBOARD_A = 13,
KEYBOARD_MOD_ALT = 14,
KEYBOARD_3 = 15,
KEYBOARD_E = 16,
KEYBOARD_S = 17,
KEYBOARD_Z = 18,
KEYBOARD_4 = 21,
KEYBOARD_R = 22,
KEYBOARD_D = 23,
KEYBOARD_X = 24,
KEYBOARD_5 = 25,
KEYBOARD_T = 26,
KEYBOARD_F = 27,
KEYBOARD_C = 28,
KEYBOARD_6 = 31,
KEYBOARD_Y = 32,
KEYBOARD_G = 33,
KEYBOARD_V = 34,
KEYBOARD_7 = 35,
KEYBOARD_U = 36,
KEYBOARD_H = 37,
KEYBOARD_B = 38,
KEYBOARD_8 = 41,
KEYBOARD_I = 42,
KEYBOARD_J = 43,
KEYBOARD_N = 44,
KEYBOARD_9 = 45,
KEYBOARD_O = 46,
KEYBOARD_K = 47,
KEYBOARD_M = 48,
KEYBOARD_0 = 51,
KEYBOARD_P = 52,
KEYBOARD_L = 53,
KEYBOARD_LEFT = 54, //also comma
KEYBOARD_UNDERSCORE = 55,
KEYBOARD_LEFT_BRACKET = 56,
KEYBOARD_UP = 57, //also semicolon
KEYBOARD_DOWN = 58,
KEYBOARD_EQUALS = 61,
KEYBOARD_RIGHT_BRACKET = 62,
KEYBOARD_APOSTROPHE = 63,
KEYBOARD_RIGHT = 64, //also slash
KEYBOARD_BACKSPACE = 65,
KEYBOARD_BACKSLASH = 66,
KEYBOARD_RETURN = 67,
KEYBOARD_SPACE = 68
}
KEYMAP_MAP;
typedef enum {
KEYBOARD_SHIFT_TILDE = KEYBOARD_ESC,
KEYBOARD_SHIFT_EXCLAMATION = KEYBOARD_1,
KEYBOARD_SHIFT_AT = KEYBOARD_2,
KEYBOARD_SHIFT_HASH = KEYBOARD_3,
KEYBOARD_SHIFT_DOLLAR = KEYBOARD_4,
KEYBOARD_SHIFT_PERCENT = KEYBOARD_5,
KEYBOARD_SHIFT_POWER = KEYBOARD_6,
KEYBOARD_SHIFT_AMPERSAND = KEYBOARD_7,
KEYBOARD_SHIFT_STAR = KEYBOARD_8,
KEYBOARD_SHIFT_OPENPARETHESIS = KEYBOARD_9,
KEYBOARD_SHIFT_CLOSEPARENTHESIS = KEYBOARD_0,
KEYBOARD_SHIFT_LESS = KEYBOARD_LEFT,
KEYBOARD_SHIFT_DASH = KEYBOARD_UNDERSCORE,
KEYBOARD_SHIFT_LEFT_CURLY_BRACKET = KEYBOARD_LEFT_BRACKET,
KEYBOARD_SHIFT_COLON = KEYBOARD_UP,
KEYBOARD_SHIFT_GREATER = KEYBOARD_DOWN,
KEYBOARD_SHIFT_PLUS = KEYBOARD_EQUALS,
KEYBOARD_SHIFT_RIGHT_CURLY_BRACKET = KEYBOARD_RIGHT_BRACKET,
KEYBOARD_SHIFT_APOSTROPHES = KEYBOARD_APOSTROPHE,
KEYBOARD_SHIFT_QUESTIONMARK = KEYBOARD_LEFT, //also slash
KEYBOARD_SHIFT_DELETE = KEYBOARD_BACKSPACE,
KEYBOARD_SHIFT_PIPE = KEYBOARD_BACKSLASH,
} KEYMAP_SHIFT;
extern const char keymap_normal[KEYBOARD_KEYS_COUNT];
extern const char keymap_shift[KEYBOARD_KEYS_COUNT];
extern const char * keymap_normal_name[KEYBOARD_KEYS_COUNT];
extern const char * keymap_shift_name[KEYBOARD_KEYS_COUNT];