Add bootmagic keys.(hhkb)

- kick bootloader
- enable debug print
This commit is contained in:
tmk 2013-01-22 12:30:30 +09:00
parent f71a5217b7
commit 1fe820a865
2 changed files with 25 additions and 0 deletions

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

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