From: tmk Date: Sun, 10 Mar 2013 16:55:41 +0000 (+0900) Subject: Add keyconf in eeconfig.c X-Git-Url: https://git.donarmstrong.com/?a=commitdiff_plain;h=e4fbaf30be00d73a3fab2aee24c7a522a0ecdd31;p=tmk_firmware.git Add keyconf in eeconfig.c --- diff --git a/common/command.c b/common/command.c index a18eb78..d7ba3f2 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 9cf2ff6..2786995 100644 --- a/common/eeconfig.h +++ b/common/eeconfig.h @@ -46,6 +46,21 @@ along with this program. If not, see . #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);