Files
Apple-ADB-Ressurector/src/keymap.h
T
Clément SAILLANT 6db6e6434e disco_f303vc and Num_lock setting
in progress, use esp32
2025-03-25 22:46:37 +01:00

149 lines
3.9 KiB
C++

#ifndef KEYMAP_h
#define KEYMAP_h
#include <cstdint>
#include "hid_tables.h"
bool adb_keymap_is_modifier(uint8_t key) {
return \
(key == ADB_KEY_LEFT_SHIFT) ||
(key == ADB_KEY_RIGHT_SHIFT) ||
(key == ADB_KEY_LEFT_OPTION) ||
(key == ADB_KEY_RIGHT_OPTION) ||
(key == ADB_KEY_LEFT_COMMAND) ||
(key == ADB_KEY_RIGHT_COMMAND) ||
(key == ADB_KEY_LEFT_CONTROL) ||
(key == ADB_KEY_RIGHT_CONTROL);
}
uint8_t adb_keycode_to_hid[128] = {
/* 0x00 = */ KEY_A,
/* 0x01 = */ KEY_S,
/* 0x02 = */ KEY_D,
/* 0x03 = */ KEY_F,
/* 0x04 = */ KEY_H,
/* 0x05 = */ KEY_G,
/* 0x06 = */ KEY_Z,
/* 0x07 = */ KEY_X,
/* 0x08 = */ KEY_C,
/* 0x09 = */ KEY_V,
/* 0x0a = */ KEY_102ND,
/* 0x0b = */ KEY_B,
/* 0x0c = */ KEY_Q,
/* 0x0d = */ KEY_W,
/* 0x0e = */ KEY_E,
/* 0x0f = */ KEY_R,
/* 0x10 = */ KEY_Y,
/* 0x11 = */ KEY_T,
/* 0x12 = */ KEY_1,
/* 0x13 = */ KEY_2,
/* 0x14 = */ KEY_3,
/* 0x15 = */ KEY_4,
/* 0x16 = */ KEY_6,
/* 0x17 = */ KEY_5,
/* 0x18 = */ KEY_EQUAL,
/* 0x19 = */ KEY_9,
/* 0x1a = */ KEY_7,
/* 0x1b = */ KEY_MINUS,
/* 0x1c = */ KEY_8,
/* 0x1d = */ KEY_0,
/* 0x1e = */ KEY_RIGHTBRACE,
/* 0x1f = */ KEY_O,
/* 0x20 = */ KEY_U,
/* 0x21 = */ KEY_LEFTBRACE,
/* 0x22 = */ KEY_I,
/* 0x23 = */ KEY_P,
/* 0x24 = */ KEY_ENTER,
/* 0x25 = */ KEY_L,
/* 0x26 = */ KEY_J,
/* 0x27 = */ KEY_APOSTROPHE,
/* 0x28 = */ KEY_K,
/* 0x29 = */ KEY_SEMICOLON,
/* 0x2a = */ KEY_HASHTILDE,
/* 0x2b = */ KEY_COMMA,
/* 0x2c = */ KEY_SLASH,
/* 0x2d = */ KEY_N,
/* 0x2e = */ KEY_M,
/* 0x2f = */ KEY_DOT,
/* 0x30 = */ KEY_TAB,
/* 0x31 = */ KEY_SPACE,
/* 0x32 = */ KEY_GRAVE,
/* 0x33 = */ KEY_BACKSPACE,
/* 0x34 = */ 0,
/* 0x35 = */ KEY_ESC,
/* 0x36 = */ KEY_LEFTCTRL,
/* 0x37 = */ KEY_LEFTMETA,
/* 0x38 = */ KEY_LEFTSHIFT,
/* 0x39 = */ KEY_CAPSLOCK,
/* 0x3a = */ KEY_LEFTALT,
/* 0x3b = */ KEY_LEFT,
/* 0x3c = */ KEY_RIGHT,
/* 0x3d = */ KEY_DOWN,
/* 0x3e = */ KEY_UP,
/* 0x3f = */ 0,
/* 0x40 = */ 0,
/* 0x41 = */ KEY_KPDOT,
/* 0x42 = */ 0,
/* 0x43 = */ KEY_KPASTERISK,
/* 0x44 = */ 0,
/* 0x45 = */ KEY_KPPLUS,
/* 0x46 = */ 0,
/* 0x47 = */ KEY_NUMLOCK,
/* 0x48 = */ 0,
/* 0x49 = */ 0,
/* 0x4a = */ 0,
/* 0x4b = */ KEY_KPSLASH,
/* 0x4c = */ KEY_KPENTER,
/* 0x4d = */ 0,
/* 0x4e = */ KEY_KPMINUS,
/* 0x4f = */ 0,
/* 0x50 = */ 0,
/* 0x51 = */ KEY_KPEQUAL,
/* 0x52 = */ KEY_KP0,
/* 0x53 = */ KEY_KP1,
/* 0x54 = */ KEY_KP2,
/* 0x55 = */ KEY_KP3,
/* 0x56 = */ KEY_KP4,
/* 0x57 = */ KEY_KP5,
/* 0x58 = */ KEY_KP6,
/* 0x59 = */ KEY_KP7,
/* 0x5a = */ 0,
/* 0x5b = */ KEY_KP8,
/* 0x5c = */ KEY_KP9,
/* 0x5d = */ 0,
/* 0x5e = */ 0,
/* 0x5f = */ 0,
/* 0x60 = */ KEY_F5,
/* 0x61 = */ KEY_F6,
/* 0x62 = */ KEY_F7,
/* 0x63 = */ KEY_F3,
/* 0x64 = */ KEY_MEDIA_PREVIOUSSONG, // F7: Lecture en arrière
/* 0x65 = */ KEY_MEDIA_PLAYPAUSE, // F8: Play/Pause
/* 0x66 = */ KEY_MEDIA_NEXTSONG, // F9: Lecture suivante
/* 0x67 = */ KEY_VOLUMEDOWN,
/* 0x68 = */ 0,
/* 0x69 = */ 0,
/* 0x6a = */ 0,
/* 0x6b = */ 0,
/* 0x6c = */ 0,
/* 0x6d = */ KEY_MUTE, // F10: Mute
/* 0x6e = */ 0,
/* 0x6f = */ KEY_VOLUMEUP, // F12: Volume +
/* 0x70 = */ 0,
/* 0x71 = */ 0,
/* 0x72 = */ KEY_HELP, // or KEY_INSERT
/* 0x73 = */ KEY_HOME,
/* 0x74 = */ KEY_PAGEUP,
/* 0x75 = */ KEY_DELETE,
/* 0x76 = */ KEY_F4,
/* 0x77 = */ KEY_END,
/* 0x78 = */ KEY_F2,
/* 0x79 = */ KEY_PAGEDOWN,
/* 0x7a = */ KEY_F1,
/* 0x7b = */ KEY_RIGHTSHIFT,
/* 0x7c = */ KEY_RIGHTALT,
/* 0x7d = */ KEY_RIGHTCTRL,
/* 0x7e = */ 0,
/* 0x7f = */ KEY_POWER, // Special key, repeated in both bytes of the register
};
#endif