Add keyconf in eeconfig.c

master
tmk 2013-03-11 01:55:41 +09:00
parent 09bd1aef12
commit e4fbaf30be
2 changed files with 24 additions and 0 deletions

View File

@ -135,6 +135,15 @@ static void print_eeprom_config(void)
eebyte = eeconfig_read_keyconf(); eebyte = eeconfig_read_keyconf();
print("keyconf: "); print_hex8(eebyte); print("\n"); 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) static bool command_common(uint8_t code)

View File

@ -46,6 +46,21 @@ along with this program. If not, see <http://www.gnu.org/licenses/>.
#define EECONFIG_KEYCONF_SWAP_BACKSLASH_BACKSPACE (1<<6) #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); bool eeconfig_initialized(void);
void eeconfig_init(void); void eeconfig_init(void);