diff options
Diffstat (limited to 'keyboards/massdrop/ctrl')
| -rw-r--r-- | keyboards/massdrop/ctrl/keymaps/r-pufky/config.h | 2 | ||||
| -rw-r--r-- | keyboards/massdrop/ctrl/keymaps/r-pufky/keymap.c | 105 | ||||
| -rw-r--r-- | keyboards/massdrop/ctrl/keymaps/r-pufky/readme.md | 34 |
3 files changed, 94 insertions, 47 deletions
diff --git a/keyboards/massdrop/ctrl/keymaps/r-pufky/config.h b/keyboards/massdrop/ctrl/keymaps/r-pufky/config.h index ddcd81630..e536ebdd8 100644 --- a/keyboards/massdrop/ctrl/keymaps/r-pufky/config.h +++ b/keyboards/massdrop/ctrl/keymaps/r-pufky/config.h | |||
| @@ -24,3 +24,5 @@ along with this program. If not, see <http://www.gnu.org/licenses/>. | |||
| 24 | #define RGB_MATRIX_STARTUP_MODE RGB_MATRIX_SOLID_COLOR | 24 | #define RGB_MATRIX_STARTUP_MODE RGB_MATRIX_SOLID_COLOR |
| 25 | #define RGB_MATRIX_STARTUP_VAL 100 | 25 | #define RGB_MATRIX_STARTUP_VAL 100 |
| 26 | #define HSV_BACKLIGHT_COLOR HSV_BLUE | 26 | #define HSV_BACKLIGHT_COLOR HSV_BLUE |
| 27 | #define HSV_GAME_COLOR 170, 255, 192 // darker blue | ||
| 28 | #define HSV_CONTROL_COLOR 0, 255, 192 // darker red | ||
diff --git a/keyboards/massdrop/ctrl/keymaps/r-pufky/keymap.c b/keyboards/massdrop/ctrl/keymaps/r-pufky/keymap.c index d523dba89..824725756 100644 --- a/keyboards/massdrop/ctrl/keymaps/r-pufky/keymap.c +++ b/keyboards/massdrop/ctrl/keymaps/r-pufky/keymap.c | |||
| @@ -16,6 +16,9 @@ | |||
| 16 | 16 | ||
| 17 | #include QMK_KEYBOARD_H | 17 | #include QMK_KEYBOARD_H |
| 18 | 18 | ||
| 19 | #define BASE 0 | ||
| 20 | #define GAME 1 | ||
| 21 | #define CTRL 2 | ||
| 19 | #define MODS_SHIFT (get_mods() & MOD_MASK_SHIFT) | 22 | #define MODS_SHIFT (get_mods() & MOD_MASK_SHIFT) |
| 20 | #define MODS_CTRL (get_mods() & MOD_MASK_CTRL) | 23 | #define MODS_CTRL (get_mods() & MOD_MASK_CTRL) |
| 21 | #define MODS_ALT (get_mods() & MOD_MASK_ALT) | 24 | #define MODS_ALT (get_mods() & MOD_MASK_ALT) |
| @@ -43,34 +46,60 @@ enum ctrl_keycodes { | |||
| 43 | }; | 46 | }; |
| 44 | 47 | ||
| 45 | const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = { | 48 | const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = { |
| 46 | [0] = LAYOUT( | 49 | [BASE] = LAYOUT( |
| 47 | KC_ESC, KC_F1, KC_F2, KC_F3, KC_F4, KC_F5, KC_F6, KC_F7, KC_F8, KC_F9, KC_F10, KC_F11, KC_F12, KC_PSCR, KC_SLCK, KC_PAUS, | 50 | KC_ESC, KC_F1, KC_F2, KC_F3, KC_F4, KC_F5, KC_F6, KC_F7, KC_F8, KC_F9, KC_F10, KC_F11, KC_F12, KC_PSCR, KC_SLCK, KC_PAUS, |
| 48 | KC_GRV, KC_1, KC_2, KC_3, KC_4, KC_5, KC_6, KC_7, KC_8, KC_9, KC_0, KC_MINS, KC_EQL, KC_BSPC, KC_INS, KC_HOME, KC_PGUP, | 51 | KC_GRV, KC_1, KC_2, KC_3, KC_4, KC_5, KC_6, KC_7, KC_8, KC_9, KC_0, KC_MINS, KC_EQL, KC_BSPC, KC_INS, KC_HOME, KC_PGUP, |
| 49 | KC_TAB, KC_Q, KC_W, KC_E, KC_R, KC_T, KC_Y, KC_U, KC_I, KC_O, KC_P, KC_LBRC, KC_RBRC, KC_BSLS, KC_DEL, KC_END, KC_PGDN, | 52 | KC_TAB, KC_Q, KC_W, KC_E, KC_R, KC_T, KC_Y, KC_U, KC_I, KC_O, KC_P, KC_LBRC, KC_RBRC, KC_BSLS, KC_DEL, KC_END, KC_PGDN, |
| 50 | KC_LCTL, KC_A, KC_S, KC_D, KC_F, KC_G, KC_H, KC_J, KC_K, KC_L, KC_SCLN, KC_QUOT, KC_ENT, | 53 | KC_LCTL, KC_A, KC_S, KC_D, KC_F, KC_G, KC_H, KC_J, KC_K, KC_L, KC_SCLN, KC_QUOT, KC_ENT, |
| 51 | KC_LSFT, KC_Z, KC_X, KC_C, KC_V, KC_B, KC_N, KC_M, KC_COMM, KC_DOT, KC_SLSH, KC_RSFT, KC_UP, | 54 | KC_LSFT, KC_Z, KC_X, KC_C, KC_V, KC_B, KC_N, KC_M, KC_COMM, KC_DOT, KC_SLSH, KC_RSFT, KC_UP, |
| 52 | KC_NLCK, KC_LGUI, KC_LALT, KC_SPC, KC_RALT, MO(1), KC_F24, KC_RCTL, KC_LEFT, KC_DOWN, KC_RGHT | 55 | KC_NLCK, KC_LGUI, KC_LALT, KC_SPC, KC_RALT, MO(CTRL), KC_F24, KC_RCTL, KC_LEFT, KC_DOWN, KC_RGHT |
| 53 | ), | 56 | ), |
| 54 | [1] = LAYOUT( | 57 | [GAME] = LAYOUT( |
| 55 | KC_EJCT, KC_F13, KC_F14, KC_F15, KC_F16, KC_F17, KC_F18, KC_F19, KC_F20, KC_F21, KC_F22, KC_F23, KC_F24, KC_MUTE, _______, _______, | 58 | KC_ESC, KC_F1, KC_F2, KC_F3, KC_F4, KC_F5, KC_F6, KC_F7, KC_F8, KC_F9, KC_F10, KC_F11, KC_F12, KC_PSCR, KC_SLCK, KC_PAUS, |
| 56 | _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, KC_MPLY, KC_MSTP, KC_VOLU, | 59 | KC_GRV, KC_1, KC_2, KC_3, KC_4, KC_5, KC_6, KC_7, KC_8, KC_9, KC_0, KC_MINS, KC_EQL, KC_BSPC, KC_INS, KC_HOME, KC_PGUP, |
| 57 | _______, RGB_SPD, RGB_VAI, RGB_SPI, RGB_HUI, RGB_SAI, _______, _______, _______, _______, _______, _______, _______, _______, KC_MPRV, KC_MNXT, KC_VOLD, | 60 | KC_TAB, KC_Q, KC_W, KC_E, KC_R, KC_T, KC_Y, KC_U, KC_I, KC_O, KC_P, KC_LBRC, KC_RBRC, KC_BSLS, KC_DEL, KC_END, KC_PGDN, |
| 58 | KC_CAPS, RGB_RMOD,RGB_VAD, RGB_MOD, RGB_HUD, RGB_SAD, _______, _______, _______, _______, _______, _______, _______, | 61 | KC_LCTL, KC_A, KC_S, KC_D, KC_F, KC_G, KC_H, KC_J, KC_K, KC_L, KC_SCLN, KC_QUOT, KC_ENT, |
| 59 | _______, RGB_TOG, _______, _______, _______, MD_BOOT, NK_TOGG, _______, _______, _______, _______, _______, KC_BRIU, | 62 | KC_LSFT, KC_Z, KC_X, KC_C, KC_V, KC_B, KC_N, KC_M, KC_COMM, KC_DOT, KC_SLSH, KC_RSFT, KC_UP, |
| 60 | _______, _______, _______, _______, _______, _______, _______, _______, KC_MRWD, KC_BRID, KC_MFFD | 63 | KC_HOME, KC_END, KC_LALT, KC_SPC, KC_RALT, MO(CTRL), KC_F24, KC_RCTL, KC_LEFT, KC_DOWN, KC_RGHT |
| 64 | ), | ||
| 65 | [CTRL] = LAYOUT( | ||
| 66 | KC_EJCT, KC_F13, KC_F14, KC_F15, KC_F16, KC_F17, KC_F18, KC_F19, KC_F20, KC_F21, KC_F22, KC_F23, KC_F24, KC_MUTE, _______, _______, | ||
| 67 | _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, KC_MPLY, KC_MSTP, KC_VOLU, | ||
| 68 | _______, RGB_SPD, RGB_VAI, RGB_SPI, RGB_HUI, RGB_SAI, _______, _______, _______, _______, _______, TO(BASE), TO(GAME), _______, KC_MPRV, KC_MNXT, KC_VOLD, | ||
| 69 | KC_CAPS, RGB_RMOD, RGB_VAD, RGB_MOD, RGB_HUD, RGB_SAD, _______, _______, _______, _______, _______, _______, _______, | ||
| 70 | _______, RGB_TOG, _______, _______, _______, MD_BOOT, NK_TOGG, _______, _______, _______, _______, _______, KC_BRIU, | ||
| 71 | _______, _______, _______, _______, _______, _______, _______, _______, KC_MRWD, KC_BRID, KC_MFFD | ||
| 61 | ), | 72 | ), |
| 62 | }; | 73 | }; |
| 63 | 74 | ||
| 64 | // Init keyboard static color with underglow off. | 75 | // Init keyboard static color with underglow off. |
| 65 | void matrix_init_user(void) { | 76 | void matrix_init_user(void) { |
| 66 | rgblight_sethsv(HSV_BACKLIGHT_COLOR); | 77 | rgblight_sethsv(HSV_BACKLIGHT_COLOR); |
| 67 | rgb_matrix_set_flags(LED_FLAG_KEYLIGHT | LED_FLAG_MODIFIER | LED_FLAG_INDICATOR); | 78 | rgb_matrix_set_flags(LED_FLAG_KEYLIGHT | LED_FLAG_MODIFIER | LED_FLAG_INDICATOR); |
| 68 | }; | 79 | }; |
| 69 | 80 | ||
| 70 | // Runs constantly in the background, in a loop. | 81 | // Runs constantly in the background, in a loop. |
| 71 | void matrix_scan_user(void) { | 82 | void matrix_scan_user(void) { |
| 72 | }; | 83 | }; |
| 73 | 84 | ||
| 85 | // Set backlight color based on active layer | ||
| 86 | layer_state_t layer_state_set_user(layer_state_t state) { | ||
| 87 | switch (get_highest_layer(state)) { | ||
| 88 | case GAME: { | ||
| 89 | rgblight_sethsv_noeeprom(HSV_GAME_COLOR); | ||
| 90 | break; | ||
| 91 | } | ||
| 92 | case CTRL: { | ||
| 93 | rgblight_sethsv_noeeprom(HSV_CONTROL_COLOR); | ||
| 94 | break; | ||
| 95 | } | ||
| 96 | default: | ||
| 97 | rgblight_sethsv_noeeprom(HSV_BACKLIGHT_COLOR); | ||
| 98 | break; | ||
| 99 | } | ||
| 100 | return state; | ||
| 101 | } | ||
| 102 | |||
| 74 | bool process_record_user(uint16_t keycode, keyrecord_t *record) { | 103 | bool process_record_user(uint16_t keycode, keyrecord_t *record) { |
| 75 | static uint32_t key_timer; | 104 | static uint32_t key_timer; |
| 76 | 105 | ||
| @@ -116,28 +145,28 @@ bool process_record_user(uint16_t keycode, keyrecord_t *record) { | |||
| 116 | return false; | 145 | return false; |
| 117 | case RGB_TOG: | 146 | case RGB_TOG: |
| 118 | if (record->event.pressed) { | 147 | if (record->event.pressed) { |
| 119 | switch (rgb_matrix_get_flags()) { | 148 | switch (rgb_matrix_get_flags()) { |
| 120 | case LED_FLAG_ALL: { | 149 | case LED_FLAG_ALL: { |
| 121 | rgb_matrix_set_flags(LED_FLAG_KEYLIGHT | LED_FLAG_MODIFIER | LED_FLAG_INDICATOR); | 150 | rgb_matrix_set_flags(LED_FLAG_KEYLIGHT | LED_FLAG_MODIFIER | LED_FLAG_INDICATOR); |
| 122 | rgb_matrix_set_color_all(RGB_OFF); | 151 | rgb_matrix_set_color_all(RGB_OFF); |
| 123 | } | 152 | } |
| 124 | break; | 153 | break; |
| 125 | case (LED_FLAG_KEYLIGHT | LED_FLAG_MODIFIER | LED_FLAG_INDICATOR): { | 154 | case (LED_FLAG_KEYLIGHT | LED_FLAG_MODIFIER | LED_FLAG_INDICATOR): { |
| 126 | rgb_matrix_set_flags(LED_FLAG_UNDERGLOW); | 155 | rgb_matrix_set_flags(LED_FLAG_UNDERGLOW); |
| 127 | rgb_matrix_set_color_all(RGB_OFF); | 156 | rgb_matrix_set_color_all(RGB_OFF); |
| 128 | } | 157 | } |
| 129 | break; | 158 | break; |
| 130 | case LED_FLAG_UNDERGLOW: { | 159 | case LED_FLAG_UNDERGLOW: { |
| 131 | rgb_matrix_set_flags(LED_FLAG_NONE); | 160 | rgb_matrix_set_flags(LED_FLAG_NONE); |
| 132 | rgb_matrix_disable_noeeprom(); | 161 | rgb_matrix_disable_noeeprom(); |
| 133 | } | 162 | } |
| 134 | break; | 163 | break; |
| 135 | default: { | 164 | default: { |
| 136 | rgb_matrix_set_flags(LED_FLAG_ALL); | 165 | rgb_matrix_set_flags(LED_FLAG_ALL); |
| 137 | rgb_matrix_enable_noeeprom(); | 166 | rgb_matrix_enable_noeeprom(); |
| 138 | } | 167 | } |
| 139 | break; | 168 | break; |
| 140 | } | 169 | } |
| 141 | } | 170 | } |
| 142 | return false; | 171 | return false; |
| 143 | default: | 172 | default: |
diff --git a/keyboards/massdrop/ctrl/keymaps/r-pufky/readme.md b/keyboards/massdrop/ctrl/keymaps/r-pufky/readme.md index 515189259..38075b3a0 100644 --- a/keyboards/massdrop/ctrl/keymaps/r-pufky/readme.md +++ b/keyboards/massdrop/ctrl/keymaps/r-pufky/readme.md | |||
| @@ -1,6 +1,7 @@ | |||
| 1 | # Massdrop Ctrl r-pufky | 1 | # Massdrop Ctrl r-pufky |
| 2 | 2 | ||
| 3 | Gaming QOL improvments; enabling useful keys for left hand & in-game overlay usage. | 3 | Gaming QOL improvments; enabling useful keys for left hand & in-game overlay |
| 4 | usage. | ||
| 4 | 5 | ||
| 5 | ## Layers | 6 | ## Layers |
| 6 | 7 | ||
| @@ -8,21 +9,36 @@ Gaming QOL improvments; enabling useful keys for left hand & in-game overlay usa | |||
| 8 | 9 | ||
| 9 |  | 10 |  |
| 10 | 11 | ||
| 11 | Layer optimized to enable useful keys for gaming without changing typing state, as well as specific | 12 | Layer optimized to enable useful keys for typing and casual gaming without |
| 12 | in-game overlay keys. | 13 | changing typing state, as well as specific in-game overlay keys. |
| 13 | 14 | ||
| 14 | * Left Ctrl: Easier control key usage without always setting capslock. | 15 | * Left Ctrl: Easier control key usage without always setting capslock. |
| 15 | * Num Lock: Unique non visible character key for additional left-hand input options in game. | 16 | * Num Lock: Unique non visible character key for additional left-hand input |
| 16 | * Fn: Enable layer 1, temporal. | 17 | options in game. |
| 17 | * F24: Unique non-visible F24 key; no windows function. Map to in-game overlays. | 18 | * Fn: Enable Control layer, temporal. |
| 19 | * F24: Non-visible F24 key; no windows function. Map to in-game overlays. | ||
| 20 | |||
| 21 | ### Gaming Layer | ||
| 22 | |||
| 23 |  | ||
| 24 | |||
| 25 | Replaces super key with additional non-printing inputs. | ||
| 26 | |||
| 27 | * Home: Non visible character key for additional input options in game. | ||
| 28 | * End: Non visible character key for additional input options in game. | ||
| 29 | * Left Ctrl: Easier control key usage without always setting capslock. | ||
| 30 | * Fn: Enable Control layer, temporal. | ||
| 31 | * F24: Non-visible F24 key; no windows function. Map to in-game overlays. | ||
| 18 | 32 | ||
| 19 | ### Function Layer | 33 | ### Control Layer |
| 20 | 34 | ||
| 21 |  | 35 |  |
| 22 | 36 | ||
| 23 | * Purple: Media keys. Note CD Eject on Escape, and OSX Prev/Next on Arrows. | 37 | * Purple: Media keys. Note CD Eject on Escape, and OSX Prev/Next on Arrows. |
| 24 | * Blue: Keyboard adminstration. Toggle NKRO (N Key Rollover) and enable bootloader. | 38 | * Blue: Keyboard adminstration. Toggle NKRO (N Key Rollover) and enable |
| 39 | bootloader. | ||
| 25 | * Orange: RGB Controls. | 40 | * Orange: RGB Controls. |
| 41 | * Green: Toggle gaming layer. | ||
| 26 | * Capslock: Now requires the use of the function key. | 42 | * Capslock: Now requires the use of the function key. |
| 27 | * F13-F24: Extended function keys. | 43 | * F13-F24: Extended function keys. |
| 28 | * Bright+/-: Monitor Brightness. | 44 | * Bright+/-: Monitor Brightness. |
