diff options
author | tmk <nobody@nowhere> | 2013-03-11 01:55:41 +0900 |
---|---|---|
committer | tmk <nobody@nowhere> | 2013-03-11 01:55:41 +0900 |
commit | e4fbaf30be00d73a3fab2aee24c7a522a0ecdd31 (patch) | |
tree | 8186ded1924f5420a972540c3780a49aa683e051 | |
parent | 09bd1aef12e42b44f90b8275ae95b578294957c0 (diff) |
Add keyconf in eeconfig.c
-rw-r--r-- | common/command.c | 9 | ||||
-rw-r--r-- | common/eeconfig.h | 15 |
2 files changed, 24 insertions, 0 deletions
diff --git a/common/command.c b/common/command.c index a18eb78006..d7ba3f232a 100644 --- a/common/command.c +++ b/common/command.c @@ -135,6 +135,15 @@ static void print_eeprom_config(void) eebyte = eeconfig_read_keyconf(); print("keyconf: "); print_hex8(eebyte); print("\n"); + + keyconf kc = (keyconf){ .raw = eebyte }; + print("keyconf.swap_control_capslock: "); print_hex8(kc.swap_control_capslock); print("\n"); + print("keyconf.capslock_to_control: "); print_hex8(kc.capslock_to_control); print("\n"); + print("keyconf.swap_lalt_lgui: "); print_hex8(kc.swap_lalt_lgui); print("\n"); + print("keyconf.swap_ralt_rgui: "); print_hex8(kc.swap_ralt_rgui); print("\n"); + print("keyconf.no_gui: "); print_hex8(kc.no_gui); print("\n"); + print("keyconf.swap_grave_esc: "); print_hex8(kc.swap_grave_esc); print("\n"); + print("keyconf.swap_backslash_backspace: "); print_hex8(kc.swap_backslash_backspace); print("\n"); } static bool command_common(uint8_t code) diff --git a/common/eeconfig.h b/common/eeconfig.h index 9cf2ff6802..2786995a29 100644 --- a/common/eeconfig.h +++ b/common/eeconfig.h @@ -46,6 +46,21 @@ along with this program. If not, see <http://www.gnu.org/licenses/>. #define EECONFIG_KEYCONF_SWAP_BACKSLASH_BACKSPACE (1<<6) +/* XXX: Not portable. Bit field order depends on implementation */ +typedef union { + uint8_t raw; + struct { + bool swap_control_capslock:1; + bool capslock_to_control:1; + bool swap_lalt_lgui:1; + bool swap_ralt_rgui:1; + bool no_gui:1; + bool swap_grave_esc:1; + bool swap_backslash_backspace:1; + bool reserved:1; + }; +} keyconf; + bool eeconfig_initialized(void); void eeconfig_init(void); |