diff options
Diffstat (limited to 'keyboards/kinesis')
-rw-r--r-- | keyboards/kinesis/keymaps/xyverz/keymap.c | 104 | ||||
-rw-r--r-- | keyboards/kinesis/stapelberg/stapelberg.c | 53 |
2 files changed, 123 insertions, 34 deletions
diff --git a/keyboards/kinesis/keymaps/xyverz/keymap.c b/keyboards/kinesis/keymaps/xyverz/keymap.c index 4f3dbf83eb..533047b156 100644 --- a/keyboards/kinesis/keymaps/xyverz/keymap.c +++ b/keyboards/kinesis/keymaps/xyverz/keymap.c @@ -2,16 +2,19 @@ extern keymap_config_t keymap_config; -#define _DV 0 // Dvorak layer -#define _QW 1 // Qwerty layer -#define _CM 2 // Colemak layer -#define _MD 3 // Media Layer -#define _KP 4 // Keypad Layer +#define _DVORAK 0 // Dvorak layer +#define _QWERTY 1 // Qwerty layer +#define _COLEMAK 2 // Colemak layer +#define _MEDIA 3 // Media Layer +#define _KEYPAD 4 // Keypad Layer -// Macro name shortcuts -#define DVORAK M(_DV) -#define QWERTY M(_QW) -#define COLEMAK M(_CM) +enum custom_keycodes { + DVORAK = SAFE_RANGE, + QWERTY, + COLEMAK, + MEDIA, + KEYPAD +}; // Fillers to make layering more clear #define _______ KC_TRNS @@ -130,7 +133,7 @@ extern keymap_config_t keymap_config; const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = { -[_DV] = LAYOUT ( +[_DVORAK] = LAYOUT ( // Left Hand KC_ESC, KC_F1, KC_F2, KC_F3, KC_F4, KC_F5, KC_F6, KC_F7, KC_F8, KC_RBRC, KC_1, KC_2, KC_3, KC_4, KC_5, @@ -141,10 +144,10 @@ const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = { // Left Thumb KC_LCTL, KC_LALT, KC_HOME, - KC_BSPC, LT(_MD, KC_DEL), KC_END, + KC_BSPC, LT(_MEDIA, KC_DEL), KC_END, // Right Hand - KC_F9, KC_F10, KC_F11, KC_F12, KC_PSCR, KC_SLCK, KC_PAUS, TG(_KP), RESET, + KC_F9, KC_F10, KC_F11, KC_F12, KC_PSCR, KC_SLCK, KC_PAUS, TG(_KEYPAD), RESET, KC_6, KC_7, KC_8, KC_9, KC_0, KC_LBRC, KC_F, KC_G, KC_C, KC_R, KC_L, KC_BSLS, KC_D, KC_H, KC_T, KC_N, KC_S, KC_MINS, @@ -153,10 +156,10 @@ const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = { // Right Thumb KC_RGUI, KC_RCTL, KC_PGUP, - KC_PGDN, LT(_KP, KC_ENT), KC_SPC + KC_PGDN, LT(_KEYPAD, KC_ENT), KC_SPC ), -[_QW] = LAYOUT ( +[_QWERTY] = LAYOUT ( // Left Hand KC_ESC, KC_F1, KC_F2, KC_F3, KC_F4, KC_F5, KC_F6, KC_F7, KC_F8, KC_EQL, KC_1, KC_2, KC_3, KC_4, KC_5, @@ -167,10 +170,10 @@ const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = { // Left Thumb KC_LCTL, KC_LALT, KC_HOME, - KC_BSPC, LT(_MD, KC_DEL), KC_END, + KC_BSPC, LT(_MEDIA, KC_DEL), KC_END, // Right Hand - KC_F9, KC_F10, KC_F11, KC_F12, KC_PSCR, KC_SLCK, KC_PAUS, TG(_KP), RESET, + KC_F9, KC_F10, KC_F11, KC_F12, KC_PSCR, KC_SLCK, KC_PAUS, TG(_KEYPAD), RESET, KC_6, KC_7, KC_8, KC_9, KC_0, KC_BSLS, KC_Y, KC_U, KC_I, KC_O, KC_P, KC_DEL , KC_H, KC_J, KC_K, KC_L, KC_SCLN, KC_QUOT, @@ -179,10 +182,10 @@ const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = { // Right Thumb KC_RGUI, KC_RCTL, KC_PGUP, - KC_PGDN, LT(_KP, KC_ENT), KC_SPC + KC_PGDN, LT(_KEYPAD, KC_ENT), KC_SPC ), -[_CM] = LAYOUT ( +[_COLEMAK] = LAYOUT ( // Left Hand KC_ESC, KC_F1, KC_F2, KC_F3, KC_F4, KC_F5, KC_F6, KC_F7, KC_F8, KC_EQL, KC_1, KC_2, KC_3, KC_4, KC_5, @@ -193,10 +196,10 @@ const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = { // Left Thumb KC_LCTL, KC_LALT, KC_HOME, - KC_BSPC, LT(_MD, KC_DEL), KC_END, + KC_BSPC, LT(_MEDIA, KC_DEL), KC_END, // Right Hand - KC_F9, KC_F10, KC_F11, KC_F12, KC_PSCR, KC_SLCK, KC_PAUS, TG(_KP), RESET, + KC_F9, KC_F10, KC_F11, KC_F12, KC_PSCR, KC_SLCK, KC_PAUS, TG(_KEYPAD), RESET, KC_6, KC_7, KC_8, KC_9, KC_0, KC_MINS, KC_J, KC_L, KC_U, KC_Y, KC_SCLN, KC_DEL, KC_H, KC_N, KC_E, KC_I, KC_O, KC_QUOT, @@ -205,10 +208,10 @@ const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = { // Right Thumb KC_RGUI, KC_RCTL, KC_PGUP, - KC_PGDN, LT(_KP, KC_ENT), KC_SPC + KC_PGDN, LT(_KEYPAD, KC_ENT), KC_SPC ), -[_MD] = LAYOUT ( +[_MEDIA] = LAYOUT ( // Left Hand _______, _______, _______, _______, _______, _______, _______, _______, _______, KC_F11, KC_F1, KC_F2, KC_F3, KC_F4, KC_F5, @@ -234,7 +237,7 @@ const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = { _______, _______, _______ ), -[_KP] = LAYOUT ( +[_KEYPAD] = LAYOUT ( // Left Hand _______, _______, _______, _______, _______, _______, _______, _______, _______, KC_PWR, _______, _______, _______, _______, _______, @@ -272,28 +275,63 @@ void persistent_default_layer_set(uint16_t default_layer) { default_layer_set(default_layer); } -const macro_t *action_get_macro(keyrecord_t *record, uint8_t id, uint8_t opt) -{ - switch(id) { - case _DV: +bool process_record_user(uint16_t keycode, keyrecord_t *record) { + switch (keycode) { + case DVORAK: if (record->event.pressed) { - persistent_default_layer_set(1UL<<_DV); + persistent_default_layer_set(1UL<<_DVORAK); } + return false; break; - case _QW: + case QWERTY: if (record->event.pressed) { - persistent_default_layer_set(1UL<<_QW); + persistent_default_layer_set(1UL<<_QWERTY); } + return false; break; - case _CM: + case COLEMAK: if (record->event.pressed) { - persistent_default_layer_set(1UL<<_CM); + persistent_default_layer_set(1UL<<_COLEMAK); } + return false; break; } - return MACRO_NONE; + return true; }; +// getting the LEDs working... +void led_set_user(uint8_t usb_led) { + + DDRF |= (1<<0); // Keypad LED + if (usb_led & (1<<USB_LED_COMPOSE)) { + PORTF |= (1<<0); + } else { + PORTF &= ~(1<<0); + } + + DDRF |= (1<<1); // ScrLock LED + if (usb_led & (1<<USB_LED_SCROLL_LOCK)) { + PORTF |= (1<<1); + } else { + PORTF &= ~(1<<1); + } + + DDRF |= (1<<2); // NumLock LED + if (usb_led & (1<<USB_LED_NUM_LOCK)) { + PORTF |= (1<<2); + } else { + PORTF &= ~(1<<2); + } + + DDRF |= (1<<3); // CapsLock LED + if (usb_led & (1<<USB_LED_CAPS_LOCK)) { + PORTF |= (1<<3); + } else { + PORTF &= ~(1<<3); + } + +} + // Runs just one time when the keyboard initializes. void matrix_init_user(void) { diff --git a/keyboards/kinesis/stapelberg/stapelberg.c b/keyboards/kinesis/stapelberg/stapelberg.c index e551dacc4e..94d15316df 100644 --- a/keyboards/kinesis/stapelberg/stapelberg.c +++ b/keyboards/kinesis/stapelberg/stapelberg.c @@ -3,6 +3,11 @@ void matrix_init_kb(void) { // put your keyboard start-up code here // runs once when the firmware starts up + // * Set our LED pins as output + DDRF |= (1<<0); // Keypad LED + DDRF |= (1<<1); // ScrLock LED + DDRF |= (1<<2); // NumLock LED + DDRF |= (1<<3); // CapsLock LED matrix_init_user(); } @@ -21,8 +26,42 @@ bool process_record_kb(uint16_t keycode, keyrecord_t *record) { return process_record_user(keycode, record); } +void led_init_ports() { + // * Set our LED pins as output + DDRF |= (1<<0); // Keypad LED + DDRF |= (1<<1); // ScrLock LED + DDRF |= (1<<2); // NumLock LED + DDRF |= (1<<3); // CapsLock LED +} + void led_set_kb(uint8_t usb_led) { - // put your keyboard LED indicator (ex: Caps Lock LED) toggling code here + DDRF |= (1<<0); // Keypad LED + if (usb_led & (1<<USB_LED_COMPOSE)) { + PORTF |= (1<<0); + } else { + PORTF &= ~(1<<0); + } + + DDRF |= (1<<1); // ScrLock LED + if (usb_led & (1<<USB_LED_SCROLL_LOCK)) { + PORTF |= (1<<1); + } else { + PORTF &= ~(1<<1); + } + + DDRF |= (1<<2); // NumLock LED + if (usb_led & (1<<USB_LED_NUM_LOCK)) { + PORTF |= (1<<2); + } else { + PORTF &= ~(1<<2); + } + + DDRF |= (1<<3); // CapsLock LED + if (usb_led & (1<<USB_LED_CAPS_LOCK)) { + PORTF |= (1<<3); + } else { + PORTF &= ~(1<<3); + } led_set_user(usb_led); @@ -38,3 +77,15 @@ inline void kinesis_caps_led_off(void) { DDRF &= ~(1<<3); PORTF &= ~(1<<3); } } + +/* This is the old code that has the port information in it. +inline void kinesis_keypad_led_on(void) { DDRF |= (1<<0); PORTF |= (1<<0); } +inline void kinesis_scroll_led_on(void) { DDRF |= (1<<1); PORTF |= (1<<1); } +inline void kinesis_num_led_on(void) { DDRF |= (1<<2); PORTF |= (1<<2); } +inline void kinesis_caps_led_on(void) { DDRF |= (1<<3); PORTF |= (1<<3); } + +inline void kinesis_keypad_led_off(void) { DDRF &= ~(1<<0); PORTF &= ~(1<<0); } +inline void kinesis_scroll_led_off(void) { DDRF &= ~(1<<1); PORTF &= ~(1<<1); } +inline void kinesis_num_led_off(void) { DDRF &= ~(1<<2); PORTF &= ~(1<<2); } +inline void kinesis_caps_led_off(void) { DDRF &= ~(1<<3); PORTF &= ~(1<<3); } +*/ |