diff options
| author | Joel Challis <git@zvecr.com> | 2019-09-24 15:24:12 +0100 |
|---|---|---|
| committer | GitHub <noreply@github.com> | 2019-09-24 15:24:12 +0100 |
| commit | ad8dbd5ca5390ad9e441943b705684fce521bc15 (patch) | |
| tree | 5426b36cba3db2fafe4eb4dc59ee05c3b3788b77 /tmk_core/common | |
| parent | 237147ca236b0e942fc14e73010479a2785bf764 (diff) | |
| download | qmk_firmware-ad8dbd5ca5390ad9e441943b705684fce521bc15.tar.gz qmk_firmware-ad8dbd5ca5390ad9e441943b705684fce521bc15.zip | |
ARM split - Add bootmagic/magic keycodes for setting handedness (#6545)
* Add docs on bootmagic/magic keycodes for setting handedness
* Clang format fixes
* Maintain backwards compatibility
* Maintain backwards compatibility
Diffstat (limited to 'tmk_core/common')
| -rw-r--r-- | tmk_core/common/bootmagic.c | 8 | ||||
| -rw-r--r-- | tmk_core/common/bootmagic.h | 6 | ||||
| -rw-r--r-- | tmk_core/common/eeconfig.c | 19 | ||||
| -rw-r--r-- | tmk_core/common/eeconfig.h | 3 |
4 files changed, 34 insertions, 2 deletions
diff --git a/tmk_core/common/bootmagic.c b/tmk_core/common/bootmagic.c index 09b1664c9..bb2aa0db8 100644 --- a/tmk_core/common/bootmagic.c +++ b/tmk_core/common/bootmagic.c | |||
| @@ -122,6 +122,14 @@ void bootmagic(void) { | |||
| 122 | default_layer = eeconfig_read_default_layer(); | 122 | default_layer = eeconfig_read_default_layer(); |
| 123 | default_layer_set((layer_state_t)default_layer); | 123 | default_layer_set((layer_state_t)default_layer); |
| 124 | } | 124 | } |
| 125 | |||
| 126 | /* EE_HANDS handedness */ | ||
| 127 | if (bootmagic_scan_keycode(BOOTMAGIC_KEY_EE_HANDS_LEFT)) { | ||
| 128 | eeconfig_update_handedness(true); | ||
| 129 | } | ||
| 130 | if (bootmagic_scan_keycode(BOOTMAGIC_KEY_EE_HANDS_RIGHT)) { | ||
| 131 | eeconfig_update_handedness(false); | ||
| 132 | } | ||
| 125 | } | 133 | } |
| 126 | 134 | ||
| 127 | /** \brief Scan Keycode | 135 | /** \brief Scan Keycode |
diff --git a/tmk_core/common/bootmagic.h b/tmk_core/common/bootmagic.h index fb7647257..c64dc1785 100644 --- a/tmk_core/common/bootmagic.h +++ b/tmk_core/common/bootmagic.h | |||
| @@ -36,6 +36,12 @@ | |||
| 36 | #ifndef BOOTMAGIC_KEY_DEBUG_MOUSE | 36 | #ifndef BOOTMAGIC_KEY_DEBUG_MOUSE |
| 37 | # define BOOTMAGIC_KEY_DEBUG_MOUSE KC_M | 37 | # define BOOTMAGIC_KEY_DEBUG_MOUSE KC_M |
| 38 | #endif | 38 | #endif |
| 39 | #ifndef BOOTMAGIC_KEY_EE_HANDS_LEFT | ||
| 40 | # define BOOTMAGIC_KEY_EE_HANDS_LEFT KC_L | ||
| 41 | #endif | ||
| 42 | #ifndef BOOTMAGIC_KEY_EE_HANDS_RIGHT | ||
| 43 | # define BOOTMAGIC_KEY_EE_HANDS_RIGHT KC_R | ||
| 44 | #endif | ||
| 39 | 45 | ||
| 40 | /* | 46 | /* |
| 41 | * keymap config | 47 | * keymap config |
diff --git a/tmk_core/common/eeconfig.c b/tmk_core/common/eeconfig.c index 61aaec205..933ac42bd 100644 --- a/tmk_core/common/eeconfig.c +++ b/tmk_core/common/eeconfig.c | |||
| @@ -153,8 +153,8 @@ uint32_t eeconfig_read_kb(void) { return eeprom_read_dword(EECONFIG_KEYBOARD); } | |||
| 153 | * | 153 | * |
| 154 | * FIXME: needs doc | 154 | * FIXME: needs doc |
| 155 | */ | 155 | */ |
| 156 | |||
| 157 | void eeconfig_update_kb(uint32_t val) { eeprom_update_dword(EECONFIG_KEYBOARD, val); } | 156 | void eeconfig_update_kb(uint32_t val) { eeprom_update_dword(EECONFIG_KEYBOARD, val); } |
| 157 | |||
| 158 | /** \brief eeconfig read user | 158 | /** \brief eeconfig read user |
| 159 | * | 159 | * |
| 160 | * FIXME: needs doc | 160 | * FIXME: needs doc |
| @@ -166,9 +166,24 @@ uint32_t eeconfig_read_user(void) { return eeprom_read_dword(EECONFIG_USER); } | |||
| 166 | */ | 166 | */ |
| 167 | void eeconfig_update_user(uint32_t val) { eeprom_update_dword(EECONFIG_USER, val); } | 167 | void eeconfig_update_user(uint32_t val) { eeprom_update_dword(EECONFIG_USER, val); } |
| 168 | 168 | ||
| 169 | /** \brief eeconfig read haptic | ||
| 170 | * | ||
| 171 | * FIXME: needs doc | ||
| 172 | */ | ||
| 169 | uint32_t eeconfig_read_haptic(void) { return eeprom_read_dword(EECONFIG_HAPTIC); } | 173 | uint32_t eeconfig_read_haptic(void) { return eeprom_read_dword(EECONFIG_HAPTIC); } |
| 170 | /** \brief eeconfig update user | 174 | /** \brief eeconfig update haptic |
| 171 | * | 175 | * |
| 172 | * FIXME: needs doc | 176 | * FIXME: needs doc |
| 173 | */ | 177 | */ |
| 174 | void eeconfig_update_haptic(uint32_t val) { eeprom_update_dword(EECONFIG_HAPTIC, val); } | 178 | void eeconfig_update_haptic(uint32_t val) { eeprom_update_dword(EECONFIG_HAPTIC, val); } |
| 179 | |||
| 180 | /** \brief eeconfig read split handedness | ||
| 181 | * | ||
| 182 | * FIXME: needs doc | ||
| 183 | */ | ||
| 184 | bool eeconfig_read_handedness(void) { return !!eeprom_read_byte(EECONFIG_HANDEDNESS); } | ||
| 185 | /** \brief eeconfig update split handedness | ||
| 186 | * | ||
| 187 | * FIXME: needs doc | ||
| 188 | */ | ||
| 189 | void eeconfig_update_handedness(bool val) { eeprom_update_byte(EECONFIG_HANDEDNESS, !!val); } | ||
diff --git a/tmk_core/common/eeconfig.h b/tmk_core/common/eeconfig.h index aea4eff9f..308f865e1 100644 --- a/tmk_core/common/eeconfig.h +++ b/tmk_core/common/eeconfig.h | |||
| @@ -107,4 +107,7 @@ uint32_t eeconfig_read_haptic(void); | |||
| 107 | void eeconfig_update_haptic(uint32_t val); | 107 | void eeconfig_update_haptic(uint32_t val); |
| 108 | #endif | 108 | #endif |
| 109 | 109 | ||
| 110 | bool eeconfig_read_handedness(void); | ||
| 111 | void eeconfig_update_handedness(bool val); | ||
| 112 | |||
| 110 | #endif | 113 | #endif |
