diff --git a/common/command.c b/common/command.c
index 0020d8a17..f9cdaf57d 100644
--- a/common/command.c
+++ b/common/command.c
@@ -17,7 +17,7 @@ along with this program. If not, see .
#include
#include
#include
-#include "usb_keycodes.h"
+#include "keycode.h"
#include "host.h"
#include "print.h"
#include "debug.h"
@@ -74,10 +74,10 @@ uint8_t command_extra(void)
static uint8_t command_common(void)
{
switch (host_get_first_key()) {
- case KB_H:
+ case KC_H:
help();
break;
- case KB_B:
+ case KC_B:
host_clear_keyboard_report();
host_send_keyboard_report();
print("jump to bootloader... ");
@@ -85,7 +85,7 @@ static uint8_t command_common(void)
bootloader_jump(); // not return
print("not supported.\n");
break;
- case KB_D:
+ case KC_D:
debug_enable = !debug_enable;
if (debug_enable) {
last_print_enable = true;
@@ -101,34 +101,34 @@ static uint8_t command_common(void)
debug_mouse = false;
}
break;
- case KB_X: // debug matrix toggle
+ case KC_X: // debug matrix toggle
debug_matrix = !debug_matrix;
if (debug_matrix)
print("debug matrix enabled.\n");
else
print("debug matrix disabled.\n");
break;
- case KB_K: // debug keyboard toggle
+ case KC_K: // debug keyboard toggle
debug_keyboard = !debug_keyboard;
if (debug_keyboard)
print("debug keyboard enabled.\n");
else
print("debug keyboard disabled.\n");
break;
- case KB_M: // debug mouse toggle
+ case KC_M: // debug mouse toggle
debug_mouse = !debug_mouse;
if (debug_mouse)
print("debug mouse enabled.\n");
else
print("debug mouse disabled.\n");
break;
- case KB_V: // print version & information
+ case KC_V: // print version & information
print(STR(DESCRIPTION) "\n");
break;
- case KB_T: // print timer
+ case KC_T: // print timer
print("timer: "); phex16(timer_count); print("\n");
break;
- case KB_P: // print toggle
+ case KC_P: // print toggle
if (last_print_enable) {
print("print disabled.\n");
last_print_enable = false;
@@ -137,7 +137,7 @@ static uint8_t command_common(void)
print("print enabled.\n");
}
break;
- case KB_S:
+ case KC_S:
print("host_keyboard_leds:"); phex(host_keyboard_leds()); print("\n");
#ifdef HOST_PJRC
print("UDCON: "); phex(UDCON); print("\n");
@@ -156,7 +156,7 @@ static uint8_t command_common(void)
#endif
break;
#ifdef NKRO_ENABLE
- case KB_N:
+ case KC_N:
// send empty report before change
host_clear_keyboard_report();
host_send_keyboard_report();
@@ -168,7 +168,7 @@ static uint8_t command_common(void)
break;
#endif
#ifdef EXTRAKEY_ENABLE
- case KB_ESC:
+ case KC_ESC:
host_clear_keyboard_report();
host_send_keyboard_report();
#ifdef HOST_PJRC
@@ -186,23 +186,23 @@ static uint8_t command_common(void)
#endif
break;
#endif
- case KB_BSPC:
+ case KC_BSPC:
matrix_init();
print("clear matrix\n");
break;
- case KB_0:
+ case KC_0:
switch_layer(0);
break;
- case KB_1:
+ case KC_1:
switch_layer(1);
break;
- case KB_2:
+ case KC_2:
switch_layer(2);
break;
- case KB_3:
+ case KC_3:
switch_layer(3);
break;
- case KB_4:
+ case KC_4:
switch_layer(4);
break;
default:
diff --git a/common/host.c b/common/host.c
index 0a03807f7..37f707d0b 100644
--- a/common/host.c
+++ b/common/host.c
@@ -17,7 +17,7 @@ along with this program. If not, see .
#include
#include
-#include "usb_keycodes.h"
+#include "keycode.h"
#include "host.h"
#include "util.h"
#include "debug.h"
diff --git a/common/keyboard.c b/common/keyboard.c
index 328941df3..6adad8882 100644
--- a/common/keyboard.c
+++ b/common/keyboard.c
@@ -19,7 +19,7 @@ along with this program. If not, see .
#include "keymap.h"
#include "host.h"
#include "led.h"
-#include "usb_keycodes.h"
+#include "keycode.h"
#include "timer.h"
#include "print.h"
#include "debug.h"
@@ -157,58 +157,58 @@ debug("register_code\n");
debug("consumer\n");
uint16_t usage = 0;
switch (code) {
- case KB_AUDIO_MUTE:
+ case KC_AUDIO_MUTE:
usage = AUDIO_MUTE;
break;
- case KB_AUDIO_VOL_UP:
+ case KC_AUDIO_VOL_UP:
usage = AUDIO_VOL_UP;
break;
- case KB_AUDIO_VOL_DOWN:
+ case KC_AUDIO_VOL_DOWN:
usage = AUDIO_VOL_DOWN;
break;
- case KB_MEDIA_NEXT_TRACK:
+ case KC_MEDIA_NEXT_TRACK:
usage = TRANSPORT_NEXT_TRACK;
break;
- case KB_MEDIA_PREV_TRACK:
+ case KC_MEDIA_PREV_TRACK:
usage = TRANSPORT_PREV_TRACK;
break;
- case KB_MEDIA_STOP:
+ case KC_MEDIA_STOP:
usage = TRANSPORT_STOP;
break;
- case KB_MEDIA_PLAY_PAUSE:
+ case KC_MEDIA_PLAY_PAUSE:
usage = TRANSPORT_PLAY_PAUSE;
break;
- case KB_MEDIA_SELECT:
+ case KC_MEDIA_SELECT:
usage = AL_CC_CONFIG;
break;
- case KB_MAIL:
+ case KC_MAIL:
usage = AL_EMAIL;
break;
- case KB_CALCULATOR:
+ case KC_CALCULATOR:
usage = AL_CALCULATOR;
break;
- case KB_MY_COMPUTER:
+ case KC_MY_COMPUTER:
usage = AL_LOCAL_BROWSER;
break;
- case KB_WWW_SEARCH:
+ case KC_WWW_SEARCH:
usage = AC_SEARCH;
break;
- case KB_WWW_HOME:
+ case KC_WWW_HOME:
usage = AC_HOME;
break;
- case KB_WWW_BACK:
+ case KC_WWW_BACK:
usage = AC_BACK;
break;
- case KB_WWW_FORWARD:
+ case KC_WWW_FORWARD:
usage = AC_FORWARD;
break;
- case KB_WWW_STOP:
+ case KC_WWW_STOP:
usage = AC_STOP;
break;
- case KB_WWW_REFRESH:
+ case KC_WWW_REFRESH:
usage = AC_REFRESH;
break;
- case KB_WWW_FAVORITES:
+ case KC_WWW_FAVORITES:
usage = AC_BOOKMARKS;
break;
}
@@ -218,13 +218,13 @@ debug("usage: "); phex16(usage); debug("\n");
else if IS_SYSTEM(code) {
uint16_t usage = 0;
switch (code) {
- case KB_SYSTEM_POWER:
+ case KC_SYSTEM_POWER:
usage = SYSTEM_POWER_DOWN;
break;
- case KB_SYSTEM_SLEEP:
+ case KC_SYSTEM_SLEEP:
usage = SYSTEM_SLEEP;
break;
- case KB_SYSTEM_WAKE:
+ case KC_SYSTEM_WAKE:
usage = SYSTEM_WAKE_UP;
break;
}
diff --git a/common/keycode.h b/common/keycode.h
new file mode 100644
index 000000000..4ed78a46a
--- /dev/null
+++ b/common/keycode.h
@@ -0,0 +1,441 @@
+/*
+Copyright 2011,2012 Jun Wako
+
+This program is free software: you can redistribute it and/or modify
+it under the terms of the GNU General Public License as published by
+the Free Software Foundation, either version 2 of the License, or
+(at your option) any later version.
+
+This program is distributed in the hope that it will be useful,
+but WITHOUT ANY WARRANTY; without even the implied warranty of
+MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
+GNU General Public License for more details.
+
+You should have received a copy of the GNU General Public License
+along with this program. If not, see .
+*/
+
+/*
+ * Keycodes based on HID Usage Keyboard/Keypad Page(0x07) plus special codes
+ * http://www.usb.org/developers/devclass_docs/Hut1_12.pdf
+ */
+#ifndef KEYCODE_H
+#define KEYCODE_H
+
+
+#define IS_ERROR(code) (KC_ROLL_OVER <= (code) && (code) <= KC_UNDEFINED)
+#define IS_ANY(code) (KC_A <= (code) && (code) <= 0xFF)
+#define IS_KEY(code) (KC_A <= (code) && (code) <= KC_EXSEL)
+#define IS_MOD(code) (KC_LCTRL <= (code) && (code) <= KC_RGUI)
+
+#define IS_FN(code) (KC_FN0 <= (code) && (code) <= KC_FN7)
+#define IS_MOUSEKEY(code) (KC_MS_UP <= (code) && (code) <= KC_MS_WH_RIGHT)
+#define IS_MOUSEKEY_MOVE(code) (KC_MS_UP <= (code) && (code) <= KC_MS_RIGHT)
+#define IS_MOUSEKEY_BUTTON(code) (KC_MS_BTN1 <= (code) && (code) <= KC_MS_BTN5)
+#define IS_MOUSEKEY_WHEEL(code) (KC_MS_WH_UP <= (code) && (code) <= KC_MS_WH_RIGHT)
+
+#define IS_SPECIAL(code) ((0xB0 <= (code) && (code) <= 0xDF) || (0xE8 <= (code) && (code) <= 0xFF))
+#define IS_CONSUMER(code) (KC_MUTE <= (code) && (code) <= KC_WFAV)
+#define IS_SYSTEM(code) (KC_POWER <= (code) && (code) <= KC_WAKE)
+
+#define MOD_BIT(code) (1< */
+ KC_SLASH, /* / and ? */
+ KC_CAPSLOCK,
+ KC_F1,
+ KC_F2,
+ KC_F3,
+ KC_F4,
+ KC_F5,
+ KC_F6,
+ KC_F7, /* 0x40 */
+ KC_F8,
+ KC_F9,
+ KC_F10,
+ KC_F11,
+ KC_F12,
+ KC_PSCREEN,
+ KC_SCKLOCK,
+ KC_PAUSE,
+ KC_INSERT,
+ KC_HOME,
+ KC_PGUP,
+ KC_DELETE,
+ KC_END,
+ KC_PGDOWN,
+ KC_RIGHT,
+ KC_LEFT, /* 0x50 */
+ KC_DOWN,
+ KC_UP,
+ KC_NUMLOCK,
+ KC_KP_SLASH,
+ KC_KP_ASTERISK,
+ KC_KP_MINUS,
+ KC_KP_PLUS,
+ KC_KP_ENTER,
+ KC_KP_1,
+ KC_KP_2,
+ KC_KP_3,
+ KC_KP_4,
+ KC_KP_5,
+ KC_KP_6,
+ KC_KP_7,
+ KC_KP_8, /* 0x60 */
+ KC_KP_9,
+ KC_KP_0,
+ KC_KP_DOT,
+ KC_NONUS_BSLASH, /* Non-US \ and | */
+ KC_APPLICATION,
+ KC_POWER,
+ KC_KP_EQUAL,
+ KC_F13,
+ KC_F14,
+ KC_F15,
+ KC_F16,
+ KC_F17,
+ KC_F18,
+ KC_F19,
+ KC_F20,
+ KC_F21, /* 0x70 */
+ KC_F22,
+ KC_F23,
+ KC_F24,
+ KC_EXECUTE,
+ KC_HELP,
+ KC_MENU,
+ KC_SELECT,
+ KC_STOP,
+ KC_AGAIN,
+ KC_UNDO,
+ KC_CUT,
+ KC_COPY,
+ KC_PASTE,
+ KC_FIND,
+ KC__MUTE,
+ KC__VOLUP, /* 0x80 */
+ KC__VOLDOWN,
+ KC_LOCKING_CAPS, /* locking Caps Lock */
+ KC_LOCKING_NUM, /* locking Num Lock */
+ KC_LOCKING_SCROLL, /* locking Scroll Lock */
+ KC_KP_COMMA,
+ KC_KP_EQUAL_AS400, /* equal sign on AS/400 */
+ KC_INT1,
+ KC_INT2,
+ KC_INT3,
+ KC_INT4,
+ KC_INT5,
+ KC_INT6,
+ KC_INT7,
+ KC_INT8,
+ KC_INT9,
+ KC_LANG1, /* 0x90 */
+ KC_LANG2,
+ KC_LANG3,
+ KC_LANG4,
+ KC_LANG5,
+ KC_LANG6,
+ KC_LANG7,
+ KC_LANG8,
+ KC_LANG9,
+ KC_ALT_ERASE,
+ KC_SYSREQ,
+ KC_CANCEL,
+ KC_CLEAR,
+ KC_PRIOR,
+ KC_RETURN,
+ KC_SEPARATOR,
+ KC_OUT, /* 0xA0 */
+ KC_OPER,
+ KC_CLEAR_AGAIN,
+ KC_CRSEL,
+ KC_EXSEL, /* 0xA4 */
+
+ /* NOTE: 0xA5-DF are used for internal special purpose */
+
+#if 0
+ /* NOTE: Following codes(0xB0-DD) are not used. Leave them for reference. */
+ KC_KP_00 = 0xB0,
+ KC_KP_000,
+ KC_THOUSANDS_SEPARATOR,
+ KC_DECIMAL_SEPARATOR,
+ KC_CURRENCY_UNIT,
+ KC_CURRENCY_SUB_UNIT,
+ KC_KP_LPAREN,
+ KC_KP_RPAREN,
+ KC_KP_LCBRACKET, /* { */
+ KC_KP_RCBRACKET, /* } */
+ KC_KP_TAB,
+ KC_KP_BSPACE,
+ KC_KP_A,
+ KC_KP_B,
+ KC_KP_C,
+ KC_KP_D,
+ KC_KP_E, /* 0xC0 */
+ KC_KP_F,
+ KC_KP_XOR,
+ KC_KP_HAT,
+ KC_KP_PERC,
+ KC_KP_LT,
+ KC_KP_GT,
+ KC_KP_AND,
+ KC_KP_LAZYAND,
+ KC_KP_OR,
+ KC_KP_LAZYOR,
+ KC_KP_COLON,
+ KC_KP_HASH,
+ KC_KP_SPACE,
+ KC_KP_ATMARK,
+ KC_KP_EXCLAMATION,
+ KC_KP_MEM_STORE, /* 0xD0 */
+ KC_KP_MEM_RECALL,
+ KC_KP_MEM_CLEAR,
+ KC_KP_MEM_ADD,
+ KC_KP_MEM_SUB,
+ KC_KP_MEM_MUL,
+ KC_KP_MEM_DIV,
+ KC_KP_PLUS_MINUS,
+ KC_KP_CLEAR,
+ KC_KP_CLEAR_ENTRY,
+ KC_KP_BINARY,
+ KC_KP_OCTAL,
+ KC_KP_DECIMAL,
+ KC_KP_HEXADECIMAL, /* 0xDD */
+#endif
+
+ /* Modifiers */
+ KC_LCTRL = 0xE0,
+ KC_LSHIFT,
+ KC_LALT,
+ KC_LGUI,
+ KC_RCTRL,
+ KC_RSHIFT,
+ KC_RALT,
+ KC_RGUI,
+
+ /* NOTE: 0xE8-FF are used for internal special purpose */
+};
+
+/* Special keycodes */
+/* NOTE: 0xA5-DF and 0xE8-FF are used for internal special purpose */
+enum internal_special_keycodes {
+ /* System Control */
+ KC_SYSTEM_POWER = 0xA5,
+ KC_SYSTEM_SLEEP,
+ KC_SYSTEM_WAKE, /* 0xA7 */
+ /* 0xA8-AF */
+
+ /* Consumer Page */
+ KC_AUDIO_MUTE = 0xB0,
+ KC_AUDIO_VOL_UP,
+ KC_AUDIO_VOL_DOWN,
+ KC_MEDIA_NEXT_TRACK,
+ KC_MEDIA_PREV_TRACK,
+ KC_MEDIA_STOP,
+ KC_MEDIA_PLAY_PAUSE,
+ KC_MEDIA_SELECT,
+ KC_MAIL,
+ KC_CALCULATOR,
+ KC_MY_COMPUTER,
+ KC_WWW_SEARCH,
+ KC_WWW_HOME,
+ KC_WWW_BACK,
+ KC_WWW_FORWARD,
+ KC_WWW_STOP,
+ KC_WWW_REFRESH, /* 0xC0 */
+ KC_WWW_FAVORITES, /* 0xC1 */
+ /* 0xC2-DF vacant for future use */
+
+ /* 0xE0-E7 for Modifiers. DO NOT USE. */
+
+ /* Layer Switching */
+ KC_FN0 = 0xE8,
+ KC_FN1,
+ KC_FN2,
+ KC_FN3,
+ KC_FN4,
+ KC_FN5,
+ KC_FN6,
+ KC_FN7, /* 0xEF */
+
+ /* Mousekey */
+ KC_MS_UP = 0xF0,
+ KC_MS_DOWN,
+ KC_MS_LEFT,
+ KC_MS_RIGHT,
+ KC_MS_BTN1,
+ KC_MS_BTN2,
+ KC_MS_BTN3,
+ KC_MS_BTN4,
+ KC_MS_BTN5,
+ /* Mousekey wheel */
+ KC_MS_WH_UP,
+ KC_MS_WH_DOWN,
+ KC_MS_WH_LEFT,
+ KC_MS_WH_RIGHT, /* 0xFC */
+ /* 0xFD-FF vacant for future use */
+};
+
+#endif /* KEYCODE_H */
diff --git a/common/mousekey.c b/common/mousekey.c
index 222d9e445..58a6e35bb 100644
--- a/common/mousekey.c
+++ b/common/mousekey.c
@@ -17,7 +17,7 @@ along with this program. If not, see .
#include
#include
-#include "usb_keycodes.h"
+#include "keycode.h"
#include "host.h"
#include "timer.h"
#include "print.h"
@@ -90,36 +90,36 @@ void mousekey_task(void)
void mousekey_on(uint8_t code)
{
- if (code == KB_MS_UP) report.y = MOUSEKEY_MOVE_INIT * -1;
- else if (code == KB_MS_DOWN) report.y = MOUSEKEY_MOVE_INIT;
- else if (code == KB_MS_LEFT) report.x = MOUSEKEY_MOVE_INIT * -1;
- else if (code == KB_MS_RIGHT) report.x = MOUSEKEY_MOVE_INIT;
- else if (code == KB_MS_WH_UP) report.v = MOUSEKEY_WHEEL_INIT;
- else if (code == KB_MS_WH_DOWN) report.v = MOUSEKEY_WHEEL_INIT * -1;
- else if (code == KB_MS_WH_LEFT) report.h = MOUSEKEY_WHEEL_INIT * -1;
- else if (code == KB_MS_WH_RIGHT) report.h = MOUSEKEY_WHEEL_INIT;
- else if (code == KB_MS_BTN1) report.buttons |= MOUSE_BTN1;
- else if (code == KB_MS_BTN2) report.buttons |= MOUSE_BTN2;
- else if (code == KB_MS_BTN3) report.buttons |= MOUSE_BTN3;
- else if (code == KB_MS_BTN4) report.buttons |= MOUSE_BTN4;
- else if (code == KB_MS_BTN5) report.buttons |= MOUSE_BTN5;
+ if (code == KC_MS_UP) report.y = MOUSEKEY_MOVE_INIT * -1;
+ else if (code == KC_MS_DOWN) report.y = MOUSEKEY_MOVE_INIT;
+ else if (code == KC_MS_LEFT) report.x = MOUSEKEY_MOVE_INIT * -1;
+ else if (code == KC_MS_RIGHT) report.x = MOUSEKEY_MOVE_INIT;
+ else if (code == KC_MS_WH_UP) report.v = MOUSEKEY_WHEEL_INIT;
+ else if (code == KC_MS_WH_DOWN) report.v = MOUSEKEY_WHEEL_INIT * -1;
+ else if (code == KC_MS_WH_LEFT) report.h = MOUSEKEY_WHEEL_INIT * -1;
+ else if (code == KC_MS_WH_RIGHT) report.h = MOUSEKEY_WHEEL_INIT;
+ else if (code == KC_MS_BTN1) report.buttons |= MOUSE_BTN1;
+ else if (code == KC_MS_BTN2) report.buttons |= MOUSE_BTN2;
+ else if (code == KC_MS_BTN3) report.buttons |= MOUSE_BTN3;
+ else if (code == KC_MS_BTN4) report.buttons |= MOUSE_BTN4;
+ else if (code == KC_MS_BTN5) report.buttons |= MOUSE_BTN5;
}
void mousekey_off(uint8_t code)
{
- if (code == KB_MS_UP && report.y < 0) report.y = 0;
- else if (code == KB_MS_DOWN && report.y > 0) report.y = 0;
- else if (code == KB_MS_LEFT && report.x < 0) report.x = 0;
- else if (code == KB_MS_RIGHT && report.x > 0) report.x = 0;
- else if (code == KB_MS_WH_UP && report.v > 0) report.v = 0;
- else if (code == KB_MS_WH_DOWN && report.v < 0) report.v = 0;
- else if (code == KB_MS_WH_LEFT && report.h < 0) report.h = 0;
- else if (code == KB_MS_WH_RIGHT && report.h > 0) report.h = 0;
- else if (code == KB_MS_BTN1) report.buttons &= ~MOUSE_BTN1;
- else if (code == KB_MS_BTN2) report.buttons &= ~MOUSE_BTN2;
- else if (code == KB_MS_BTN3) report.buttons &= ~MOUSE_BTN3;
- else if (code == KB_MS_BTN4) report.buttons &= ~MOUSE_BTN4;
- else if (code == KB_MS_BTN5) report.buttons &= ~MOUSE_BTN5;
+ if (code == KC_MS_UP && report.y < 0) report.y = 0;
+ else if (code == KC_MS_DOWN && report.y > 0) report.y = 0;
+ else if (code == KC_MS_LEFT && report.x < 0) report.x = 0;
+ else if (code == KC_MS_RIGHT && report.x > 0) report.x = 0;
+ else if (code == KC_MS_WH_UP && report.v > 0) report.v = 0;
+ else if (code == KC_MS_WH_DOWN && report.v < 0) report.v = 0;
+ else if (code == KC_MS_WH_LEFT && report.h < 0) report.h = 0;
+ else if (code == KC_MS_WH_RIGHT && report.h > 0) report.h = 0;
+ else if (code == KC_MS_BTN1) report.buttons &= ~MOUSE_BTN1;
+ else if (code == KC_MS_BTN2) report.buttons &= ~MOUSE_BTN2;
+ else if (code == KC_MS_BTN3) report.buttons &= ~MOUSE_BTN3;
+ else if (code == KC_MS_BTN4) report.buttons &= ~MOUSE_BTN4;
+ else if (code == KC_MS_BTN5) report.buttons &= ~MOUSE_BTN5;
if (report.x == 0 && report.y == 0 && report.v == 0 && report.h == 0)
mousekey_repeat = 0;
diff --git a/common/usb_keycodes.h b/common/usb_keycodes.h
deleted file mode 100644
index 6a4437418..000000000
--- a/common/usb_keycodes.h
+++ /dev/null
@@ -1,436 +0,0 @@
-/*
-Copyright 2011 Jun Wako
-
-This program is free software: you can redistribute it and/or modify
-it under the terms of the GNU General Public License as published by
-the Free Software Foundation, either version 2 of the License, or
-(at your option) any later version.
-
-This program is distributed in the hope that it will be useful,
-but WITHOUT ANY WARRANTY; without even the implied warranty of
-MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
-GNU General Public License for more details.
-
-You should have received a copy of the GNU General Public License
-along with this program. If not, see .
-*/
-
-/*
- * Key codes: HID Keyboard/Keypad Page(0x07)
- * http://www.usb.org/developers/devclass_docs/Hut1_12.pdf
- */
-#ifndef USB_KEYCODES_H
-#define USB_KEYCODES_H
-
-
-#define IS_ERROR(code) (KB_ROLL_OVER <= (code) && (code) <= KB_UNDEFINED)
-#define IS_ANY(code) (KB_A <= (code) && (code) <= 0xFF)
-#define IS_KEY(code) (KB_A <= (code) && (code) <= KB_EXSEL)
-#define IS_MOD(code) (KB_LCTRL <= (code) && (code) <= KB_RGUI)
-
-#define IS_FN(code) (KB_FN0 <= (code) && (code) <= KB_FN7)
-#define IS_MOUSEKEY(code) (KB_MS_UP <= (code) && (code) <= KB_MS_WH_RIGHT)
-#define IS_MOUSEKEY_MOVE(code) (KB_MS_UP <= (code) && (code) <= KB_MS_RIGHT)
-#define IS_MOUSEKEY_BUTTON(code) (KB_MS_BTN1 <= (code) && (code) <= KB_MS_BTN5)
-#define IS_MOUSEKEY_WHEEL(code) (KB_MS_WH_UP <= (code) && (code) <= KB_MS_WH_RIGHT)
-
-#define IS_SPECIAL(code) ((0xB0 <= (code) && (code) <= 0xDF) || (0xE8 <= (code) && (code) <= 0xFF))
-#define IS_CONSUMER(code) (KB_MUTE <= (code) && (code) <= KB_WFAV)
-#define IS_SYSTEM(code) (KB_POWER <= (code) && (code) <= KB_WAKE)
-
-#define MOD_BIT(code) (1<<((code) & 0x07))
-#define FN_BIT(code) (1<<((code) - KB_FN0))
-#define FN_INDEX(code) ((code) - KB_FN0)
-
-
-/* Short names */
-#define KB_LCTL KB_LCTRL
-#define KB_RCTL KB_RCTRL
-#define KB_LSFT KB_LSHIFT
-#define KB_RSFT KB_RSHIFT
-#define KB_ESC KB_ESCAPE
-#define KB_BSPC KB_BSPACE
-#define KB_ENT KB_ENTER
-#define KB_DEL KB_DELETE
-#define KB_INS KB_INSERT
-#define KB_CAPS KB_CAPSLOCK
-#define KB_RGHT KB_RIGHT
-#define KB_PGDN KB_PGDOWN
-#define KB_PSCR KB_PSCREEN
-#define KB_SLCK KB_SCKLOCK
-#define KB_PAUS KB_PAUSE
-#define KB_BRK KB_PAUSE
-#define KB_NLCK KB_NUMLOCK
-#define KB_SPC KB_SPACE
-#define KB_MINS KB_MINUS
-#define KB_EQL KB_EQUAL
-#define KB_GRV KB_GRAVE
-#define KB_RBRC KB_RBRACKET
-#define KB_LBRC KB_LBRACKET
-#define KB_COMM KB_COMMA
-#define KB_BSLS KB_BSLASH
-#define KB_SLSH KB_SLASH
-#define KB_SCLN KB_SCOLON
-#define KB_QUOT KB_QUOTE
-#define KB_APP KB_APPLICATION
-#define KB_NUHS KB_NONUS_HASH
-#define KB_NUBS KB_NONUS_BSLASH
-#define KB_ERAS KB_ALT_ERASE,
-#define KB_CLR KB_CLEAR
-/* for Japanese */
-#define KB_ZKHK KB_GRAVE
-#define KB_RO KB_INT1
-#define KB_KANA KB_INT2
-#define KB_JYEN KB_INT3
-#define KB_HENK KB_INT4
-#define KB_MHEN KB_INT5
-/* Keypad */
-#define KB_P1 KB_KP_1
-#define KB_P2 KB_KP_2
-#define KB_P3 KB_KP_3
-#define KB_P4 KB_KP_4
-#define KB_P5 KB_KP_5
-#define KB_P6 KB_KP_6
-#define KB_P7 KB_KP_7
-#define KB_P8 KB_KP_8
-#define KB_P9 KB_KP_9
-#define KB_P0 KB_KP_0
-#define KB_PDOT KB_KP_DOT
-#define KB_PCMM KB_KP_COMMA
-#define KB_PSLS KB_KP_SLASH
-#define KB_PAST KB_KP_ASTERISK
-#define KB_PMNS KB_KP_MINUS
-#define KB_PPLS KB_KP_PLUS
-#define KB_PEQL KB_KP_EQUAL
-#define KB_PENT KB_KP_ENTER
-/* Mousekey */
-#define KB_MS_U KB_MS_UP
-#define KB_MS_D KB_MS_DOWN
-#define KB_MS_L KB_MS_LEFT
-#define KB_MS_R KB_MS_RIGHT
-#define KB_BTN1 KB_MS_BTN1
-#define KB_BTN2 KB_MS_BTN2
-#define KB_BTN3 KB_MS_BTN3
-#define KB_BTN4 KB_MS_BTN4
-#define KB_BTN5 KB_MS_BTN5
-#define KB_WH_U KB_MS_WH_UP
-#define KB_WH_D KB_MS_WH_DOWN
-#define KB_WH_L KB_MS_WH_LEFT
-#define KB_WH_R KB_MS_WH_RIGHT
-/* Sytem Control & Consumer usage */
-#define KB_PWR KB_SYSTEM_POWER
-#define KB_SLEP KB_SYSTEM_SLEEP
-#define KB_WAKE KB_SYSTEM_WAKE
-#define KB_MUTE KB_AUDIO_MUTE
-#define KB_VOLU KB_AUDIO_VOL_UP
-#define KB_VOLD KB_AUDIO_VOL_DOWN
-#define KB_MNXT KB_MEDIA_NEXT_TRACK
-#define KB_MPRV KB_MEDIA_PREV_TRACK
-#define KB_MSTP KB_MEDIA_STOP
-#define KB_MPLY KB_MEDIA_PLAY_PAUSE
-#define KB_MSEL KB_MEDIA_SELECT
-#define KB_MAIL KB_MAIL
-#define KB_CALC KB_CALCULATOR
-#define KB_MYCM KB_MY_COMPUTER
-#define KB_WSCH KB_WWW_SEARCH
-#define KB_WHOM KB_WWW_HOME
-#define KB_WBAK KB_WWW_BACK
-#define KB_WFWD KB_WWW_FORWARD
-#define KB_WSTP KB_WWW_STOP
-#define KB_WREF KB_WWW_REFRESH
-#define KB_WFAV KB_WWW_FAVORITES
-
-
-/* Special keycode */
-/* NOTE: 0xA5-DF and 0xE8-FF can be used for internal special purpose */
-enum special_keycodes {
- /* System Control */
- KB_SYSTEM_POWER = 0xA5,
- KB_SYSTEM_SLEEP,
- KB_SYSTEM_WAKE, /* 0xA7 */
- /* 0xA8-AF */
-
- /* Consumer Page */
- KB_AUDIO_MUTE = 0xB0,
- KB_AUDIO_VOL_UP,
- KB_AUDIO_VOL_DOWN,
- KB_MEDIA_NEXT_TRACK,
- KB_MEDIA_PREV_TRACK,
- KB_MEDIA_STOP,
- KB_MEDIA_PLAY_PAUSE,
- KB_MEDIA_SELECT,
- KB_MAIL,
- KB_CALCULATOR,
- KB_MY_COMPUTER,
- KB_WWW_SEARCH,
- KB_WWW_HOME,
- KB_WWW_BACK,
- KB_WWW_FORWARD,
- KB_WWW_STOP,
- KB_WWW_REFRESH, /* 0xC0 */
- KB_WWW_FAVORITES, /* 0xC1 */
- /* 0xC2-DF vacant for future use */
-
- /* 0xE0-E7 for Modifiers. DO NOT USE. */
-
- /* Layer Switching */
- KB_FN0 = 0xE8,
- KB_FN1,
- KB_FN2,
- KB_FN3,
- KB_FN4,
- KB_FN5,
- KB_FN6,
- KB_FN7, /* 0xEF */
-
- /* Mousekey */
- KB_MS_UP = 0xF0,
- KB_MS_DOWN,
- KB_MS_LEFT,
- KB_MS_RIGHT,
- KB_MS_BTN1,
- KB_MS_BTN2,
- KB_MS_BTN3,
- KB_MS_BTN4,
- KB_MS_BTN5,
- /* Mousekey wheel */
- KB_MS_WH_UP,
- KB_MS_WH_DOWN,
- KB_MS_WH_LEFT,
- KB_MS_WH_RIGHT, /* 0xFC */
- /* 0xFD-FF vacant for future use */
-};
-
-/* USB HID Keyboard/Keypad Usage(0x07) */
-enum keycodes {
- KB_NO = 0x00,
- KB_ROLL_OVER,
- KB_POST_FAIL,
- KB_UNDEFINED,
- KB_A,
- KB_B,
- KB_C,
- KB_D,
- KB_E,
- KB_F,
- KB_G,
- KB_H,
- KB_I,
- KB_J,
- KB_K,
- KB_L,
- KB_M, /* 0x10 */
- KB_N,
- KB_O,
- KB_P,
- KB_Q,
- KB_R,
- KB_S,
- KB_T,
- KB_U,
- KB_V,
- KB_W,
- KB_X,
- KB_Y,
- KB_Z,
- KB_1,
- KB_2,
- KB_3, /* 0x20 */
- KB_4,
- KB_5,
- KB_6,
- KB_7,
- KB_8,
- KB_9,
- KB_0,
- KB_ENTER,
- KB_ESCAPE,
- KB_BSPACE,
- KB_TAB,
- KB_SPACE,
- KB_MINUS,
- KB_EQUAL,
- KB_LBRACKET,
- KB_RBRACKET, /* 0x30 */
- KB_BSLASH, /* \ (and |) */
- KB_NONUS_HASH, /* Non-US # and ~ */
- KB_SCOLON, /* ; (and :) */
- KB_QUOTE, /* ' and " */
- KB_GRAVE, /* Grave accent and tilde */
- KB_COMMA, /* , and < */
- KB_DOT, /* . and > */
- KB_SLASH, /* / and ? */
- KB_CAPSLOCK,
- KB_F1,
- KB_F2,
- KB_F3,
- KB_F4,
- KB_F5,
- KB_F6,
- KB_F7, /* 0x40 */
- KB_F8,
- KB_F9,
- KB_F10,
- KB_F11,
- KB_F12,
- KB_PSCREEN,
- KB_SCKLOCK,
- KB_PAUSE,
- KB_INSERT,
- KB_HOME,
- KB_PGUP,
- KB_DELETE,
- KB_END,
- KB_PGDOWN,
- KB_RIGHT,
- KB_LEFT, /* 0x50 */
- KB_DOWN,
- KB_UP,
- KB_NUMLOCK,
- KB_KP_SLASH,
- KB_KP_ASTERISK,
- KB_KP_MINUS,
- KB_KP_PLUS,
- KB_KP_ENTER,
- KB_KP_1,
- KB_KP_2,
- KB_KP_3,
- KB_KP_4,
- KB_KP_5,
- KB_KP_6,
- KB_KP_7,
- KB_KP_8, /* 0x60 */
- KB_KP_9,
- KB_KP_0,
- KB_KP_DOT,
- KB_NONUS_BSLASH, /* Non-US \ and | */
- KB_APPLICATION,
- KB_POWER,
- KB_KP_EQUAL,
- KB_F13,
- KB_F14,
- KB_F15,
- KB_F16,
- KB_F17,
- KB_F18,
- KB_F19,
- KB_F20,
- KB_F21, /* 0x70 */
- KB_F22,
- KB_F23,
- KB_F24,
- KB_EXECUTE,
- KB_HELP,
- KB_MENU,
- KB_SELECT,
- KB_STOP,
- KB_AGAIN,
- KB_UNDO,
- KB_CUT,
- KB_COPY,
- KB_PASTE,
- KB_FIND,
- KB__MUTE,
- KB__VOLUP, /* 0x80 */
- KB__VOLDOWN,
- KB_LOCKING_CAPS, /* locking Caps Lock */
- KB_LOCKING_NUM, /* locking Num Lock */
- KB_LOCKING_SCROLL, /* locking Scroll Lock */
- KB_KP_COMMA,
- KB_KP_EQUAL_AS400, /* equal sign on AS/400 */
- KB_INT1,
- KB_INT2,
- KB_INT3,
- KB_INT4,
- KB_INT5,
- KB_INT6,
- KB_INT7,
- KB_INT8,
- KB_INT9,
- KB_LANG1, /* 0x90 */
- KB_LANG2,
- KB_LANG3,
- KB_LANG4,
- KB_LANG5,
- KB_LANG6,
- KB_LANG7,
- KB_LANG8,
- KB_LANG9,
- KB_ALT_ERASE,
- KB_SYSREQ,
- KB_CANCEL,
- KB_CLEAR,
- KB_PRIOR,
- KB_RETURN,
- KB_SEPARATOR,
- KB_OUT, /* 0xA0 */
- KB_OPER,
- KB_CLEAR_AGAIN,
- KB_CRSEL,
- KB_EXSEL, /* 0xA4 */
-
- /* NOTE: 0xA5-DF are used for internal special purpose */
-
-#if 0
- KB_KP_00 = 0xB0,
- KB_KP_000,
- KB_THOUSANDS_SEPARATOR,
- KB_DECIMAL_SEPARATOR,
- KB_CURRENCY_UNIT,
- KB_CURRENCY_SUB_UNIT,
- KB_KP_LPAREN,
- KB_KP_RPAREN,
- KB_KP_LCBRACKET, /* { */
- KB_KP_RCBRACKET, /* } */
- KB_KP_TAB,
- KB_KP_BSPACE,
- KB_KP_A,
- KB_KP_B,
- KB_KP_C,
- KB_KP_D,
- KB_KP_E, /* 0xC0 */
- KB_KP_F,
- KB_KP_XOR,
- KB_KP_HAT,
- KB_KP_PERC,
- KB_KP_LT,
- KB_KP_GT,
- KB_KP_AND,
- KB_KP_LAZYAND,
- KB_KP_OR,
- KB_KP_LAZYOR,
- KB_KP_COLON,
- KB_KP_HASH,
- KB_KP_SPACE,
- KB_KP_ATMARK,
- KB_KP_EXCLAMATION,
- KB_KP_MEM_STORE, /* 0xD0 */
- KB_KP_MEM_RECALL,
- KB_KP_MEM_CLEAR,
- KB_KP_MEM_ADD,
- KB_KP_MEM_SUB,
- KB_KP_MEM_MUL,
- KB_KP_MEM_DIV,
- KB_KP_PLUS_MINUS,
- KB_KP_CLEAR,
- KB_KP_CLEAR_ENTRY,
- KB_KP_BINARY,
- KB_KP_OCTAL,
- KB_KP_DECIMAL,
- KB_KP_HEXADECIMAL, /* 0xDD */
-#endif
-
- /* Modifiers */
- KB_LCTRL = 0xE0,
- KB_LSHIFT,
- KB_LALT,
- KB_LGUI,
- KB_RCTRL,
- KB_RSHIFT,
- KB_RALT,
- KB_RGUI,
-
- /* NOTE: 0xE8-FF are used for internal special purpose */
-};
-
-#endif /* USB_KEYCODES_H */
diff --git a/keyboard/hhkb/config.h b/keyboard/hhkb/config.h
index 17a449406..e10a7ab37 100644
--- a/keyboard/hhkb/config.h
+++ b/keyboard/hhkb/config.h
@@ -38,7 +38,7 @@ along with this program. If not, see .
/* key combination for command */
-#define IS_COMMAND() (keyboard_report->mods == (MOD_BIT(KB_LSHIFT) | MOD_BIT(KB_RSHIFT)))
+#define IS_COMMAND() (keyboard_report->mods == (MOD_BIT(KC_LSHIFT) | MOD_BIT(KC_RSHIFT)))
/* mouse keys */
#ifdef MOUSEKEY_ENABLE
diff --git a/keyboard/hhkb/keymap.c b/keyboard/hhkb/keymap.c
index 43f777c56..3cfa5ff33 100644
--- a/keyboard/hhkb/keymap.c
+++ b/keyboard/hhkb/keymap.c
@@ -22,7 +22,7 @@ along with this program. If not, see .
#include
#include
#include "host.h"
-#include "usb_keycodes.h"
+#include "keycode.h"
#include "print.h"
#include "debug.h"
#include "util.h"
@@ -39,14 +39,14 @@ along with this program. If not, see .
K35, K36, K37, K57, K56 \
) \
{ \
- { KB_##K00, KB_##K01, KB_##K02, KB_##K03, KB_##K04, KB_##K05, KB_##K06, KB_##K07 }, \
- { KB_##K10, KB_##K11, KB_##K12, KB_##K13, KB_##K14, KB_##K15, KB_##K16, KB_##K17 }, \
- { KB_##K20, KB_##K21, KB_##K22, KB_##K23, KB_##K24, KB_##K25, KB_##K26, KB_NO }, \
- { KB_##K30, KB_##K31, KB_##K32, KB_##K33, KB_##K34, KB_##K35, KB_##K36, KB_##K37 }, \
- { KB_##K40, KB_##K41, KB_##K42, KB_##K43, KB_##K44, KB_##K45, KB_##K46, KB_NO }, \
- { KB_##K50, KB_##K51, KB_##K52, KB_##K53, KB_##K54, KB_##K55, KB_##K56, KB_##K57 }, \
- { KB_##K60, KB_##K61, KB_##K62, KB_##K63, KB_##K64, KB_##K65, KB_##K66, KB_NO }, \
- { KB_##K70, KB_##K71, KB_##K72, KB_##K73, KB_##K74, KB_##K75, KB_##K76, KB_NO } \
+ { KC_##K00, KC_##K01, KC_##K02, KC_##K03, KC_##K04, KC_##K05, KC_##K06, KC_##K07 }, \
+ { KC_##K10, KC_##K11, KC_##K12, KC_##K13, KC_##K14, KC_##K15, KC_##K16, KC_##K17 }, \
+ { KC_##K20, KC_##K21, KC_##K22, KC_##K23, KC_##K24, KC_##K25, KC_##K26, KC_NO }, \
+ { KC_##K30, KC_##K31, KC_##K32, KC_##K33, KC_##K34, KC_##K35, KC_##K36, KC_##K37 }, \
+ { KC_##K40, KC_##K41, KC_##K42, KC_##K43, KC_##K44, KC_##K45, KC_##K46, KC_NO }, \
+ { KC_##K50, KC_##K51, KC_##K52, KC_##K53, KC_##K54, KC_##K55, KC_##K56, KC_##K57 }, \
+ { KC_##K60, KC_##K61, KC_##K62, KC_##K63, KC_##K64, KC_##K65, KC_##K66, KC_NO }, \
+ { KC_##K70, KC_##K71, KC_##K72, KC_##K73, KC_##K74, KC_##K75, KC_##K76, KC_NO } \
}
#define KEYCODE(layer, row, col) (pgm_read_byte(&keymaps[(layer)][(row)][(col)]))
@@ -67,14 +67,14 @@ static const uint8_t PROGMEM fn_layer[] = {
// Assign Fn key(0-7) to a keycode sent when release Fn key without use of the layer.
// See layer.c for details.
static const uint8_t PROGMEM fn_keycode[] = {
- KB_NO, // Fn0
- KB_NO, // Fn1
- KB_SLSH, // Fn2
- KB_SCLN, // Fn3
- KB_NO, // Fn4
- KB_SPC, // Fn5
- KB_NO, // Fn6
- KB_NO // Fn7
+ KC_NO, // Fn0
+ KC_NO, // Fn1
+ KC_SLSH, // Fn2
+ KC_SCLN, // Fn3
+ KC_NO, // Fn4
+ KC_SPC, // Fn5
+ KC_NO, // Fn6
+ KC_NO // Fn7
};
static const uint8_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = {
@@ -95,7 +95,7 @@ static const uint8_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = {
TAB, Q, W, E, R, T, Y, U, I, O, P, LBRC,RBRC,BSPC, \
LCTL,A, S, D, F, G, H, J, K, L, FN3, QUOT,ENT, \
LSFT,Z, X, C, V, B, N, M, COMM,DOT, FN2, RSFT,FN1, \
- LGUI,LALT, SPC, RALT,FN4),
+ LGUI,LALT, FN5, RALT,FN4),
/* Layer 1: HHKB mode (HHKB Fn)
* ,-----------------------------------------------------------.
@@ -151,10 +151,10 @@ static const uint8_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = {
*/
#ifdef HOST_IWRAP
// iWRAP does not support mouse wheel, use these keycodes to remap as wheel
-#define KB_KPPL KB_KP_PLUS
-#define KB_KPMI KB_KP_MINUS
-#define KB_KPAS KB_KP_ASTERISK
-#define KB_KPSL KB_KP_SLASH
+#define KC_KPPL KC_KP_PLUS
+#define KC_KPMI KC_KP_MINUS
+#define KC_KPAS KC_KP_ASTERISK
+#define KC_KPSL KC_KP_SLASH
KEYMAP(ESC, F1, F2, F3, F4, F5, F6, F7, F8, F9, F10, F11, F12, INS, DEL, \
TAB, KPAS,KPPL,MS_U,KPMI,KPSL,KPAS,KPPL,KPMI,KPSL,NO, NO, NO, BSPC, \
LCTL,NO, MS_L,MS_D,MS_R,NO, MS_L,MS_D,MS_U,MS_R,FN3, NO, ENT, \
@@ -181,14 +181,13 @@ static const uint8_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = {
* |Gui |Alt |xxxxxxxxxxxxxxxxxxxxxxx|Alt |Gui|
* `--------------------------------------------'
*/
-/*
KEYMAP(MINS,0, 9, 8, 7, 6, 5, 4, 3, 2, 1, NO, NO, NO, ESC, \
BSPC,P, O, I, U, Y, T, R, E, W, Q, NO, NO, TAB, \
LCTL,SCLN,L, K, J, H, G, F, D, S, A, RCTL,RCTL, \
LSFT,SLSH,DOT, COMM,M, N, B, V, C, X, Z, RSFT,NO, \
- LGUI,LALT, FN5, RALT,RGUI)
-*/
- /* Mouse mode (Space) */
+ LGUI,LALT, FN5, RALT,RGUI),
+
+ /* Layer5: another Mouse mode (Space) */
#ifdef HOST_IWRAP
KEYMAP(ESC, F1, F2, F3, F4, F5, F6, F7, F8, F9, F10, F11, F12, INS, DEL, \
TAB, KPAS,KPPL,MS_U,KPMI,KPSL,KPAS,KPPL,KPMI,KPSL,NO, NO, NO, BSPC, \