Browse Source

Add bootmagic keys.(hhkb)

- kick bootloader
- enable debug print
led_matrix
tmk 11 years ago
parent
commit
1fe820a865
2 changed files with 25 additions and 0 deletions
  1. 11
    0
      common/keyboard.c
  2. 14
    0
      keyboard/hhkb/config.h

+ 11
- 0
common/keyboard.c View File

@@ -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

+ 14
- 0
keyboard/hhkb/config.h View File

@@ -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)))