/* * Copyright (c) 2020 The ZMK Contributors * * SPDX-License-Identifier: MIT */ #pragma once #define USAGE_KEYPAD 0x07 #define USAGE_CONSUMER 0x0C #define A 0x04 #define B 0x05 #define C 0x06 #define D 0x07 #define E 0x08 #define F 0x09 #define G 0x0A #define H 0x0B #define I 0x0C #define J 0x0D #define K 0x0E #define L 0x0F #define M 0x10 #define N 0x11 #define O 0x12 #define P 0x13 #define Q 0x14 #define R 0x15 #define S 0x16 #define T 0x17 #define U 0x18 #define V 0x19 #define W 0x1A #define X 0x1B #define Y 0x1C #define Z 0x1D #define NUM_1 0x1E #define NUM_2 0x1F #define NUM_3 0x20 #define NUM_4 0x21 #define NUM_5 0x22 #define NUM_6 0x23 #define NUM_7 0x24 #define NUM_8 0x25 #define NUM_9 0x26 #define NUM_0 0x27 #define RET 0x28 #define ESC 0x29 #define BKSP 0x2A #define TAB 0x2B #define SPC 0x2C #define MINUS 0x2D #define EQL 0x2E #define LBKT 0x2F #define RBKT 0x30 #define BSLH 0x31 #define TILD 0x32 #define SCLN 0x33 #define QUOT 0x34 #define GRAV 0x35 #define CMMA 0x36 #define DOT 0x37 #define FSLH 0x38 #define CLCK 0x39 #define F1 0x3A #define F2 0x3B #define F3 0x3C #define F4 0x3D #define F5 0x3E #define F6 0x3F #define F7 0x40 #define F8 0x41 #define F9 0x42 #define F10 0x43 #define F11 0x44 #define F12 0x45 #define PRSC 0x46 #define SCLK 0x47 #define PAUS 0x48 #define INS 0x49 #define HOME 0x4A #define PGUP 0x4B #define DEL 0x4C #define END 0x4D #define PGDN 0x4E #define RARW 0x4F #define LARW 0x50 #define DARW 0x51 #define UARW 0x52 #define KDIV 0x54 #define KMLT 0x55 #define KMIN 0x56 #define KPLS 0x57 #define GUI 0x65 #define UNDO 0x7A #define CUT 0x7B #define COPY 0x7C #define PSTE 0x7D #define CURU 0xB4 #define LPRN 0xB6 #define RPRN 0xB7 #define LCUR 0xB8 #define RCUR 0xB9 #define CRRT 0xC3 #define PRCT 0xC4 #define LABT 0xC5 #define RABT 0xC6 #define AMPS 0xC7 #define PIPE 0xC9 #define COLN 0xCB #define HASH 0xCC #define KSPC 0xCD #define ATSN 0xCE #define BANG 0xCF #define LCTL 0xE0 #define LSFT 0xE1 #define LALT 0xE2 #define LGUI 0xE3 #define RCTL 0xE4 #define RSFT 0xE5 #define RALT 0xE6 #define RGUI 0xE7 #define VOLU 0x80 #define VOLD 0x81 /* The following are select consumer page usages */ #define M_NEXT 0xB5 #define M_PREV 0xB6 #define M_STOP 0xB7 #define M_EJCT 0xB8 #define M_PLAY 0xCD #define M_MUTE 0xE2 #define M_VOLU 0xE9 #define M_VOLD 0xEA #define MOD_LCTL (1 << 0x00) #define MOD_LSFT (1 << 0x01) #define MOD_LALT (1 << 0x02) #define MOD_LGUI (1 << 0x03) #define MOD_RCTL (1 << 0x04) #define MOD_RSFT (1 << 0x05) #define MOD_RALT (1 << 0x06) #define MOD_RGUI (1 << 0x07)