diff options
author | tmk <nobody@nowhere> | 2013-01-22 12:30:30 +0900 |
---|---|---|
committer | tmk <nobody@nowhere> | 2013-01-23 23:51:15 +0900 |
commit | 1fe820a8654b69576875a8173e22b47b365c2460 (patch) | |
tree | 8bc46d6f713b6b2ee289bc4242c8c84e820ddbaa | |
parent | f71a5217b762225eec294b02f9403f29a25ceb6a (diff) | |
download | qmk_firmware-1fe820a8654b69576875a8173e22b47b365c2460.tar.gz |
Add bootmagic keys.(hhkb)
- kick bootloader
- enable debug print
-rw-r--r-- | common/keyboard.c | 11 | ||||
-rw-r--r-- | keyboard/hhkb/config.h | 14 |
2 files changed, 25 insertions, 0 deletions
diff --git a/common/keyboard.c b/common/keyboard.c index ea4d0ee7e..9f0ca7676 100644 --- a/common/keyboard.c +++ b/common/keyboard.c @@ -40,6 +40,17 @@ void keyboard_init(void) timer_init(); matrix_init(); + + /* boot magic keys goes here */ + matrix_scan(); +#ifdef IS_BOOTMAGIC_BOOTLOADER + /* kick up bootloader */ + if (IS_BOOTMAGIC_BOOTLOADER()) bootloader_jump(); +#endif +#ifdef IS_BOOTMAGIC_DEBUG + if (IS_BOOTMAGIC_DEBUG()) debug_enable = true; +#endif + #ifdef PS2_MOUSE_ENABLE ps2_mouse_init(); #endif diff --git a/keyboard/hhkb/config.h b/keyboard/hhkb/config.h index cca75f243..66dede9a5 100644 --- a/keyboard/hhkb/config.h +++ b/keyboard/hhkb/config.h @@ -37,6 +37,20 @@ along with this program. If not, see <http://www.gnu.org/licenses/>. #define MATRIX_COLS 8 +/* + * Boot magic keys + * call some function by pressing key when pluging cable or powering on. + */ +/* key position on matrix(ROW:COL) */ +#define KEY_FN 0x54 +#define KEY_D 0x14 +#define KEY_IS_ON(key) matrix_is_on((key)>>4, (key)&0xF) +/* kick up bootloader */ +#define IS_BOOTMAGIC_BOOTLOADER() KEY_IS_ON(KEY_FN) +/* debug on */ +#define IS_BOOTMAGIC_DEBUG() KEY_IS_ON(KEY_D) + + /* key combination for command */ #define IS_COMMAND() (keyboard_report->mods == (MOD_BIT(KC_LSHIFT) | MOD_BIT(KC_RSHIFT))) |