Переглянути джерело

Merge pull request #112 from shayneholmes/ee_nkro_use_reserved_bit

Adding NKRO virtual dip-switch, using existing bit in keymap byte.
tags/v1.9
tmk 10 роки тому
джерело
коміт
3eeb0a9623
6 змінених файлів з 15 додано та 1 видалено
  1. 1
    0
      README.md
  2. 8
    0
      common/bootmagic.c
  3. 3
    0
      common/bootmagic.h
  4. 1
    0
      common/command.c
  5. 1
    0
      common/eeconfig.h
  6. 1
    1
      common/keymap.h

+ 1
- 0
README.md Переглянути файл

- Disable Gui(`Left Gui`) - Disable Gui(`Left Gui`)
- Swap Grave and Escape(`Grave`) - Swap Grave and Escape(`Grave`)
- Swap BackSlash and BackSpace(`Back Slash`) - Swap BackSlash and BackSpace(`Back Slash`)
- Enable NKRO on boot(`N`)


#### Default Layer #### Default Layer
- Set Default Layer to 0(`0`) - Set Default Layer to 0(`0`)

+ 8
- 0
common/bootmagic.c Переглянути файл

#include "bootloader.h" #include "bootloader.h"
#include "debug.h" #include "debug.h"
#include "keymap.h" #include "keymap.h"
#include "host.h"
#include "action_layer.h" #include "action_layer.h"
#include "eeconfig.h" #include "eeconfig.h"
#include "bootmagic.h" #include "bootmagic.h"
if (bootmagic_scan_keycode(BOOTMAGIC_KEY_SWAP_BACKSLASH_BACKSPACE)) { if (bootmagic_scan_keycode(BOOTMAGIC_KEY_SWAP_BACKSLASH_BACKSPACE)) {
keymap_config.swap_backslash_backspace = !keymap_config.swap_backslash_backspace; keymap_config.swap_backslash_backspace = !keymap_config.swap_backslash_backspace;
} }
if (bootmagic_scan_keycode(BOOTMAGIC_HOST_NKRO)) {
keymap_config.nkro = !keymap_config.nkro;
}
eeconfig_write_keymap(keymap_config.raw); eeconfig_write_keymap(keymap_config.raw);


#ifdef NKRO_ENABLE
keyboard_nkro = keymap_config.nkro;
#endif

/* default layer */ /* default layer */
uint8_t default_layer = 0; uint8_t default_layer = 0;
if (bootmagic_scan_keycode(BOOTMAGIC_KEY_DEFAULT_LAYER_0)) { default_layer |= (1<<0); } if (bootmagic_scan_keycode(BOOTMAGIC_KEY_DEFAULT_LAYER_0)) { default_layer |= (1<<0); }

+ 3
- 0
common/bootmagic.h Переглянути файл

#ifndef BOOTMAGIC_KEY_SWAP_BACKSLASH_BACKSPACE #ifndef BOOTMAGIC_KEY_SWAP_BACKSLASH_BACKSPACE
#define BOOTMAGIC_KEY_SWAP_BACKSLASH_BACKSPACE KC_BSLASH #define BOOTMAGIC_KEY_SWAP_BACKSLASH_BACKSPACE KC_BSLASH
#endif #endif
#ifndef BOOTMAGIC_HOST_NKRO
#define BOOTMAGIC_HOST_NKRO KC_N
#endif




/* /*

+ 1
- 0
common/command.c Переглянути файл

print(".no_gui: "); print_dec(kc.no_gui); print("\n"); print(".no_gui: "); print_dec(kc.no_gui); print("\n");
print(".swap_grave_esc: "); print_dec(kc.swap_grave_esc); print("\n"); print(".swap_grave_esc: "); print_dec(kc.swap_grave_esc); print("\n");
print(".swap_backslash_backspace: "); print_dec(kc.swap_backslash_backspace); print("\n"); print(".swap_backslash_backspace: "); print_dec(kc.swap_backslash_backspace); print("\n");
print(".nkro: "); print_dec(kc.nkro); print("\n");


#ifdef BACKLIGHT_ENABLE #ifdef BACKLIGHT_ENABLE
backlight_config_t bc; backlight_config_t bc;

+ 1
- 0
common/eeconfig.h Переглянути файл

#define EECONFIG_KEYMAP_NO_GUI (1<<4) #define EECONFIG_KEYMAP_NO_GUI (1<<4)
#define EECONFIG_KEYMAP_SWAP_GRAVE_ESC (1<<5) #define EECONFIG_KEYMAP_SWAP_GRAVE_ESC (1<<5)
#define EECONFIG_KEYMAP_SWAP_BACKSLASH_BACKSPACE (1<<6) #define EECONFIG_KEYMAP_SWAP_BACKSLASH_BACKSPACE (1<<6)
#define EECONFIG_KEYMAP_NKRO (1<<7)




bool eeconfig_is_enabled(void); bool eeconfig_is_enabled(void);

+ 1
- 1
common/keymap.h Переглянути файл

bool no_gui:1; bool no_gui:1;
bool swap_grave_esc:1; bool swap_grave_esc:1;
bool swap_backslash_backspace:1; bool swap_backslash_backspace:1;
bool reserved:1;
bool nkro:1;
}; };
} keymap_config_t; } keymap_config_t;
keymap_config_t keymap_config; keymap_config_t keymap_config;

Завантаження…
Відмінити
Зберегти