1
0

Merge branch 'bootmagic_salt'(Fix issue #41)

This commit is contained in:
tmk 2013-07-24 00:43:40 +09:00
commit 61cebd63a8
3 changed files with 17 additions and 1 deletions

View File

@ -124,6 +124,8 @@ Following commands can be also executed with `Magic` + key. In console mode `Mag
Boot Magic are executed during boot up time. Press Magic key below then pulgin keyboard cable. Boot Magic are executed during boot up time. Press Magic key below then pulgin keyboard cable.
Note that you must use keys of **Layer 0** as Magic keys. These settings are stored in EEPROM so that retain your configure over power cycles. Note that you must use keys of **Layer 0** as Magic keys. These settings are stored in EEPROM so that retain your configure over power cycles.
To avoid configuring accidentally additive salt key `KC_SPACE` also needs to be pressed along with the following configuration keys. The salt key is configurable in `config.h`. See [common/bootmagic.h](common/bootmagic.h).
#### General #### General
- Skip reading EEPROM to start with default configuration(`ESC`) - Skip reading EEPROM to start with default configuration(`ESC`)
- Clear configuration stored in EEPROM to reset configuration(`Backspace`) - Clear configuration stored in EEPROM to reset configuration(`Backspace`)

View File

@ -5,6 +5,7 @@
#include "bootloader.h" #include "bootloader.h"
#include "debug.h" #include "debug.h"
#include "keymap.h" #include "keymap.h"
#include "action_layer.h"
#include "eeconfig.h" #include "eeconfig.h"
#include "bootmagic.h" #include "bootmagic.h"
@ -94,7 +95,7 @@ void bootmagic(void)
} }
} }
bool bootmagic_scan_keycode(uint8_t keycode) static bool scan_keycode(uint8_t keycode)
{ {
for (uint8_t r = 0; r < MATRIX_ROWS; r++) { for (uint8_t r = 0; r < MATRIX_ROWS; r++) {
matrix_row_t matrix_row = matrix_get_row(r); matrix_row_t matrix_row = matrix_get_row(r);
@ -108,3 +109,10 @@ bool bootmagic_scan_keycode(uint8_t keycode)
} }
return false; return false;
} }
bool bootmagic_scan_keycode(uint8_t keycode)
{
if (!scan_keycode(BOOTMAGIC_KEY_SALT)) return false;
return scan_keycode(keycode);
}

View File

@ -2,6 +2,12 @@
#define BOOTMAGIC_H #define BOOTMAGIC_H
/* bootmagic salt key */
#ifndef BOOTMAGIC_KEY_SALT
#define BOOTMAGIC_KEY_SALT KC_SPACE
#endif
/* skip bootmagic and eeconfig */
#ifndef BOOTMAGIC_KEY_SKIP #ifndef BOOTMAGIC_KEY_SKIP
#define BOOTMAGIC_KEY_SKIP KC_ESC #define BOOTMAGIC_KEY_SKIP KC_ESC
#endif #endif