Added keycodes for swapping and unswapping the Control and OS keys (#6110)
* Add MAGIC_SWAP_CONTROL_LGUI and MAGIC_UNSWAP_CONTROL_LGUI keycodes Key codes to swap and unswap the control and windows/cmd keys * Fix issues with pull request #6110 Renamed swap/unswap lctl and lgui key codes, added key codes to swap/unswap rctl and rgui, and moved new bool inside keycode_config.h struct to the end * Move new keycodes to the end of the enum (#6110) * add cases for swapped control and OS keys to mod_config (#6110) * Add new keycodes to feature_bootmagic.md (#6110) * Add R+L swap codes to keep in parity with AG_* codes * Extend Magic range check to include new magic codes * Update audio docs * Combine 2 byte ranges into 1 word for EECONFG Fix names for Keymap config EEPROM * Update docs/feature_bootmagic.md Co-Authored-By: noroadsleft <18669334+noroadsleft@users.noreply.github.com> * Update docs/feature_bootmagic.md Co-Authored-By: noroadsleft <18669334+noroadsleft@users.noreply.github.com> * Update docs/feature_bootmagic.md Co-Authored-By: noroadsleft <18669334+noroadsleft@users.noreply.github.com> * Update docs/feature_bootmagic.md Co-Authored-By: noroadsleft <18669334+noroadsleft@users.noreply.github.com>
This commit is contained in:
		
							parent
							
								
									6a79b05cf0
								
							
						
					
					
						commit
						d534c72a54
					
				
					 10 changed files with 136 additions and 11 deletions
				
			
		| 
						 | 
				
			
			@ -286,6 +286,8 @@ static void print_eeconfig(void)
 | 
			
		|||
    print("keymap_config.raw: "); print_hex8(kc.raw); print("\n");
 | 
			
		||||
    print(".swap_control_capslock: "); print_dec(kc.swap_control_capslock); print("\n");
 | 
			
		||||
    print(".capslock_to_control: "); print_dec(kc.capslock_to_control); print("\n");
 | 
			
		||||
    print(".swap_lctl_lgui: "); print_dec(kc.swap_lctl_lgui); print("\n");
 | 
			
		||||
    print(".swap_rctl_rgui: "); print_dec(kc.swap_rctl_rgui); print("\n");
 | 
			
		||||
    print(".swap_lalt_lgui: "); print_dec(kc.swap_lalt_lgui); print("\n");
 | 
			
		||||
    print(".swap_ralt_rgui: "); print_dec(kc.swap_ralt_rgui); print("\n");
 | 
			
		||||
    print(".no_gui: "); print_dec(kc.no_gui); print("\n");
 | 
			
		||||
| 
						 | 
				
			
			
 | 
			
		|||
| 
						 | 
				
			
			@ -39,7 +39,8 @@ void eeconfig_init_quantum(void) {
 | 
			
		|||
  eeprom_update_byte(EECONFIG_DEBUG,          0);
 | 
			
		||||
  eeprom_update_byte(EECONFIG_DEFAULT_LAYER,  0);
 | 
			
		||||
  default_layer_state = 0;
 | 
			
		||||
  eeprom_update_byte(EECONFIG_KEYMAP,         0);
 | 
			
		||||
  eeprom_update_byte(EECONFIG_KEYMAP_LOWER_BYTE, 0);
 | 
			
		||||
  eeprom_update_byte(EECONFIG_KEYMAP_UPPER_BYTE, 0);
 | 
			
		||||
  eeprom_update_byte(EECONFIG_MOUSEKEY_ACCEL, 0);
 | 
			
		||||
  eeprom_update_byte(EECONFIG_BACKLIGHT,      0);
 | 
			
		||||
  eeprom_update_byte(EECONFIG_AUDIO,             0xFF); // On by default
 | 
			
		||||
| 
						 | 
				
			
			@ -127,12 +128,17 @@ void eeconfig_update_default_layer(uint8_t val) { eeprom_update_byte(EECONFIG_DE
 | 
			
		|||
 *
 | 
			
		||||
 * FIXME: needs doc
 | 
			
		||||
 */
 | 
			
		||||
uint8_t eeconfig_read_keymap(void)      { return eeprom_read_byte(EECONFIG_KEYMAP); }
 | 
			
		||||
uint16_t eeconfig_read_keymap(void) {
 | 
			
		||||
    return ( eeprom_read_byte(EECONFIG_KEYMAP_LOWER_BYTE) | (eeprom_read_byte(EECONFIG_KEYMAP_UPPER_BYTE) << 8) );
 | 
			
		||||
}
 | 
			
		||||
/** \brief eeconfig update keymap
 | 
			
		||||
 *
 | 
			
		||||
 * FIXME: needs doc
 | 
			
		||||
 */
 | 
			
		||||
void eeconfig_update_keymap(uint8_t val) { eeprom_update_byte(EECONFIG_KEYMAP, val); }
 | 
			
		||||
void eeconfig_update_keymap(uint16_t val) {
 | 
			
		||||
    eeprom_update_byte(EECONFIG_KEYMAP_LOWER_BYTE, val & 0xFF);
 | 
			
		||||
    eeprom_update_byte(EECONFIG_KEYMAP_UPPER_BYTE, ( val >> 8 ) & 0xFF );
 | 
			
		||||
}
 | 
			
		||||
 | 
			
		||||
/** \brief eeconfig read backlight
 | 
			
		||||
 *
 | 
			
		||||
| 
						 | 
				
			
			
 | 
			
		|||
| 
						 | 
				
			
			@ -45,7 +45,8 @@ along with this program.  If not, see <http://www.gnu.org/licenses/>.
 | 
			
		|||
#define EECONFIG_HAPTIC                            (uint32_t *)24
 | 
			
		||||
#define EECONFIG_RGB_MATRIX                        (uint32_t *)28
 | 
			
		||||
#define EECONFIG_RGB_MATRIX_SPEED                   (uint8_t *)32
 | 
			
		||||
 | 
			
		||||
// TODO: Combine these into a single word and single block of EEPROM
 | 
			
		||||
#define EECONFIG_KEYMAP_UPPER_BYTE                  (uint8_t *)33
 | 
			
		||||
/* debug bit */
 | 
			
		||||
#define EECONFIG_DEBUG_ENABLE                       (1<<0)
 | 
			
		||||
#define EECONFIG_DEBUG_MATRIX                       (1<<1)
 | 
			
		||||
| 
						 | 
				
			
			@ -62,6 +63,7 @@ along with this program.  If not, see <http://www.gnu.org/licenses/>.
 | 
			
		|||
#define EECONFIG_KEYMAP_SWAP_BACKSLASH_BACKSPACE    (1<<6)
 | 
			
		||||
#define EECONFIG_KEYMAP_NKRO                        (1<<7)
 | 
			
		||||
 | 
			
		||||
#define EECONFIG_KEYMAP_LOWER_BYTE EECONFIG_KEYMAP
 | 
			
		||||
 | 
			
		||||
bool eeconfig_is_enabled(void);
 | 
			
		||||
bool eeconfig_is_disabled(void);
 | 
			
		||||
| 
						 | 
				
			
			@ -81,8 +83,8 @@ void eeconfig_update_debug(uint8_t val);
 | 
			
		|||
uint8_t eeconfig_read_default_layer(void);
 | 
			
		||||
void eeconfig_update_default_layer(uint8_t val);
 | 
			
		||||
 | 
			
		||||
uint8_t eeconfig_read_keymap(void);
 | 
			
		||||
void eeconfig_update_keymap(uint8_t val);
 | 
			
		||||
uint16_t eeconfig_read_keymap(void);
 | 
			
		||||
void eeconfig_update_keymap(uint16_t val);
 | 
			
		||||
 | 
			
		||||
#ifdef BACKLIGHT_ENABLE
 | 
			
		||||
uint8_t eeconfig_read_backlight(void);
 | 
			
		||||
| 
						 | 
				
			
			
 | 
			
		|||
		Loading…
	
	Add table
		Add a link
		
	
		Reference in a new issue