diff options
Diffstat (limited to 'keyboards/gmmk/pro')
83 files changed, 56 insertions, 5632 deletions
diff --git a/keyboards/gmmk/pro/config.h b/keyboards/gmmk/pro/config.h index 995dd95ec8..258b57e49d 100644 --- a/keyboards/gmmk/pro/config.h +++ b/keyboards/gmmk/pro/config.h @@ -28,56 +28,4 @@ #define AW20216S_CS_PIN_1 B13 #define AW20216S_CS_PIN_2 B14 -#define AW20216S_EN_PIN_1 C13 -#define AW20216S_EN_PIN_2 C13 - -#define RGB_DISABLE_WHEN_USB_SUSPENDED - -// RGB Matrix Animation modes. Explicitly enabled -// For full list of effects, see: -// https://docs.qmk.fm/#/feature_rgb_matrix?id=rgb-matrix-effects -#define ENABLE_RGB_MATRIX_ALPHAS_MODS -#define ENABLE_RGB_MATRIX_GRADIENT_UP_DOWN -#define ENABLE_RGB_MATRIX_GRADIENT_LEFT_RIGHT -#define ENABLE_RGB_MATRIX_BREATHING -#define ENABLE_RGB_MATRIX_BAND_SAT -#define ENABLE_RGB_MATRIX_BAND_VAL -#define ENABLE_RGB_MATRIX_BAND_PINWHEEL_SAT -#define ENABLE_RGB_MATRIX_BAND_PINWHEEL_VAL -#define ENABLE_RGB_MATRIX_BAND_SPIRAL_SAT -#define ENABLE_RGB_MATRIX_BAND_SPIRAL_VAL -#define ENABLE_RGB_MATRIX_CYCLE_ALL -#define ENABLE_RGB_MATRIX_CYCLE_LEFT_RIGHT -#define ENABLE_RGB_MATRIX_CYCLE_UP_DOWN -#define ENABLE_RGB_MATRIX_RAINBOW_MOVING_CHEVRON -#define ENABLE_RGB_MATRIX_CYCLE_OUT_IN -#define ENABLE_RGB_MATRIX_CYCLE_OUT_IN_DUAL -#define ENABLE_RGB_MATRIX_CYCLE_PINWHEEL -#define ENABLE_RGB_MATRIX_CYCLE_SPIRAL -#define ENABLE_RGB_MATRIX_DUAL_BEACON -#define ENABLE_RGB_MATRIX_RAINBOW_BEACON -#define ENABLE_RGB_MATRIX_RAINBOW_PINWHEELS -#define ENABLE_RGB_MATRIX_RAINDROPS -#define ENABLE_RGB_MATRIX_JELLYBEAN_RAINDROPS -#define ENABLE_RGB_MATRIX_HUE_BREATHING -#define ENABLE_RGB_MATRIX_HUE_PENDULUM -#define ENABLE_RGB_MATRIX_HUE_WAVE -#define ENABLE_RGB_MATRIX_PIXEL_RAIN -#define ENABLE_RGB_MATRIX_PIXEL_FLOW -#define ENABLE_RGB_MATRIX_PIXEL_FRACTAL -// enabled only if RGB_MATRIX_FRAMEBUFFER_EFFECTS is defined -#define ENABLE_RGB_MATRIX_TYPING_HEATMAP -#define ENABLE_RGB_MATRIX_DIGITAL_RAIN -// enabled only of RGB_MATRIX_KEYPRESSES or RGB_MATRIX_KEYRELEASES is defined -#define ENABLE_RGB_MATRIX_SOLID_REACTIVE_SIMPLE -#define ENABLE_RGB_MATRIX_SOLID_REACTIVE -#define ENABLE_RGB_MATRIX_SOLID_REACTIVE_WIDE -#define ENABLE_RGB_MATRIX_SOLID_REACTIVE_MULTIWIDE -#define ENABLE_RGB_MATRIX_SOLID_REACTIVE_CROSS -#define ENABLE_RGB_MATRIX_SOLID_REACTIVE_MULTICROSS -#define ENABLE_RGB_MATRIX_SOLID_REACTIVE_NEXUS -#define ENABLE_RGB_MATRIX_SOLID_REACTIVE_MULTINEXUS -#define ENABLE_RGB_MATRIX_SPLASH -#define ENABLE_RGB_MATRIX_MULTISPLASH -#define ENABLE_RGB_MATRIX_SOLID_SPLASH -#define ENABLE_RGB_MATRIX_SOLID_MULTISPLASH +#define AW20216S_EN_PIN C13 diff --git a/keyboards/gmmk/pro/info.json b/keyboards/gmmk/pro/info.json new file mode 100644 index 0000000000..9108057519 --- /dev/null +++ b/keyboards/gmmk/pro/info.json @@ -0,0 +1,51 @@ +{ + "rgb_matrix": { + "animations": { + "alphas_mods": true, + "gradient_up_down": true, + "gradient_left_right": true, + "breathing": true, + "band_sat": true, + "band_val": true, + "band_pinwheel_sat": true, + "band_pinwheel_val": true, + "band_spiral_sat": true, + "band_spiral_val": true, + "cycle_all": true, + "cycle_left_right": true, + "cycle_up_down": true, + "rainbow_moving_chevron": true, + "cycle_out_in": true, + "cycle_out_in_dual": true, + "cycle_pinwheel": true, + "cycle_spiral": true, + "dual_beacon": true, + "rainbow_beacon": true, + "rainbow_pinwheels": true, + "raindrops": true, + "jellybean_raindrops": true, + "hue_breathing": true, + "hue_pendulum": true, + "hue_wave": true, + "pixel_rain": true, + "pixel_flow": true, + "pixel_fractal": true, + "typing_heatmap": true, + "digital_rain": true, + "solid_reactive_simple": true, + "solid_reactive": true, + "solid_reactive_wide": true, + "solid_reactive_multiwide": true, + "solid_reactive_cross": true, + "solid_reactive_multicross": true, + "solid_reactive_nexus": true, + "solid_reactive_multinexus": true, + "splash": true, + "multisplash": true, + "solid_splash": true, + "solid_multisplash": true + }, + "driver": "aw20216s", + "sleep": true + } +}
\ No newline at end of file diff --git a/keyboards/gmmk/pro/rev1/ansi/ansi.c b/keyboards/gmmk/pro/rev1/ansi/ansi.c index a06594cb88..ff6382625a 100644 --- a/keyboards/gmmk/pro/rev1/ansi/ansi.c +++ b/keyboards/gmmk/pro/rev1/ansi/ansi.c @@ -136,7 +136,7 @@ led_config_t g_led_config = {{ 4, 2, 2, 4, 4, 2, 2, 4, 2, 2, 4, 4, 2, 2, 4, 4, 2, 2, 4, 4, 4, 4, 4 }}; -const aw20216s_led_t g_aw20216s_leds[RGB_MATRIX_LED_COUNT] = { +const aw20216s_led_t PROGMEM g_aw20216s_leds[AW20216S_LED_COUNT] = { {0, CS1_SW1, CS2_SW1, CS3_SW1}, // 0, ESC, k13 {0, CS4_SW1, CS5_SW1, CS6_SW1}, // 1, ~, k16 {0, CS7_SW1, CS8_SW1, CS9_SW1}, // 2, Tab, k11 diff --git a/keyboards/gmmk/pro/rev1/ansi/config.h b/keyboards/gmmk/pro/rev1/ansi/config.h deleted file mode 100644 index 9f21a6bf71..0000000000 --- a/keyboards/gmmk/pro/rev1/ansi/config.h +++ /dev/null @@ -1,22 +0,0 @@ -/* Copyright 2021 Gigahawk - * - * This program is free software: you can redistribute it and/or modify - * it under the terms of the GNU General Public License as published by - * the Free Software Foundation, either version 2 of the License, or - * (at your option) any later version. - * - * This program is distributed in the hope that it will be useful, - * but WITHOUT ANY WARRANTY; without even the implied warranty of - * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the - * GNU General Public License for more details. - * - * You should have received a copy of the GNU General Public License - * along with this program. If not, see <http://www.gnu.org/licenses/>. - */ - -#pragma once - - -#define DRIVER_1_LED_TOTAL 66 -#define DRIVER_2_LED_TOTAL 32 -#define RGB_MATRIX_LED_COUNT (DRIVER_1_LED_TOTAL + DRIVER_2_LED_TOTAL) diff --git a/keyboards/gmmk/pro/rev1/ansi/info.json b/keyboards/gmmk/pro/rev1/ansi/info.json index fc2197a0d7..533a379656 100644 --- a/keyboards/gmmk/pro/rev1/ansi/info.json +++ b/keyboards/gmmk/pro/rev1/ansi/info.json @@ -8,9 +8,6 @@ "pid": "0x5044", "device_version": "0.0.1" }, - "rgb_matrix": { - "driver": "aw20216s" - }, "matrix_pins": { "cols": ["A0", "A1", "A2", "A3", "A4", "A8", "A9", "A10"], "rows": ["B0", "B1", "B2", "B3", "B4", "B5", "B6", "B7", "B8", "B9", "B10"] diff --git a/keyboards/gmmk/pro/rev1/ansi/keymaps/alexmarmon/keymap.c b/keyboards/gmmk/pro/rev1/ansi/keymaps/alexmarmon/keymap.c deleted file mode 100644 index 838aee8652..0000000000 --- a/keyboards/gmmk/pro/rev1/ansi/keymaps/alexmarmon/keymap.c +++ /dev/null @@ -1,67 +0,0 @@ -/* Copyright 2021 Glorious, LLC <salman@pcgamingrace.com> - Copyright 2021 alexmarmon - -This program is free software: you can redistribute it and/or modify -it under the terms of the GNU General Public License as published by -the Free Software Foundation, either version 2 of the License, or -(at your option) any later version. - -This program is distributed in the hope that it will be useful, -but WITHOUT ANY WARRANTY; without even the implied warranty of -MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the -GNU General Public License for more details. - -You should have received a copy of the GNU General Public License -along with this program. If not, see <http://www.gnu.org/licenses/>. -*/ - -#include QMK_KEYBOARD_H - -const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = { - -// ESC F1 F2 F3 F4 F5 F6 F7 F8 F9 F10 F11 F12 Prt Rotary(Mute) -// ~ 1 2 3 4 5 6 7 8 9 0 - (=) BackSpc Del -// Tab Q W E R T Y U I O P [ ] \ PgUp -// Caps A S D F G H J K L ; " Enter PgDn -// Sh_L Z X C V B N M , . ? Sh_R Up End -// Ct_L Alt_L Win_L SPACE Ct_R Alt_R FN Left Down Right - - - // The FN key by default maps to a momentary toggle to layer 1 to provide access to the QK_BOOT key (to put the board into bootloader mode). Without - // this mapping, you have to open the case to hit the button on the bottom of the PCB (near the USB cable attachment) while plugging in the USB - // cable to get the board into bootloader mode - definitely not fun when you're working on your QMK builds. Remove this and put it back to KC_RGUI - // if that's your preference. - // - // To put the keyboard in bootloader mode, use FN+backslash. If you accidentally put it into bootloader, you can just unplug the USB cable and - // it'll be back to normal when you plug it back in. - [0] = LAYOUT( - 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_MUTE, - 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_DEL, - 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_PGUP, - KC_CAPS, KC_A, KC_S, KC_D, KC_F, KC_G, KC_H, KC_J, KC_K, KC_L, KC_SCLN, KC_QUOT, KC_ENT, KC_PGDN, - 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, KC_END, - KC_LCTL, KC_LALT, KC_LGUI, KC_SPC, KC_RCTL, KC_RALT, MO(1), KC_LEFT, KC_DOWN, KC_RGHT - ), - - [1] = LAYOUT( - _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, - _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, - _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, QK_BOOT, RGB_MODE_FORWARD, - _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, RGB_MODE_REVERSE, - _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, RGB_TOG, - _______, _______, _______, _______, _______, _______, _______, KC_MEDIA_PREV_TRACK, _______, KC_MEDIA_NEXT_TRACK - ), - - -}; - - -bool encoder_update_user(uint8_t index, bool clockwise) { - if (clockwise) { - tap_code(KC_VOLU); - } else { - tap_code(KC_VOLD); - } - //return true; //set to return false to counteract enabled encoder in pro.c - return false; -} diff --git a/keyboards/gmmk/pro/rev1/ansi/keymaps/alexmarmon/readme.md b/keyboards/gmmk/pro/rev1/ansi/keymaps/alexmarmon/readme.md deleted file mode 100644 index 36ad42b1af..0000000000 --- a/keyboards/gmmk/pro/rev1/ansi/keymaps/alexmarmon/readme.md +++ /dev/null @@ -1,7 +0,0 @@ -![Layout Image](https://i.imgur.com/MizMvsI.jpg) - -# Simple MacOS like keymap with RGB - -* Working basic RGB thanks to https://github.com/qmk/qmk_firmware/pull/13430 -* Restore working rotary knob volume control -* Add media_previous and media_next to FN+left and FN+right
\ No newline at end of file diff --git a/keyboards/gmmk/pro/rev1/ansi/keymaps/andrebrait/config.h b/keyboards/gmmk/pro/rev1/ansi/keymaps/andrebrait/config.h deleted file mode 100644 index 18271fb4d2..0000000000 --- a/keyboards/gmmk/pro/rev1/ansi/keymaps/andrebrait/config.h +++ /dev/null @@ -1,81 +0,0 @@ -/* Copyright 2022 Andre Brait - * - * This program is free software: you can redistribute it and/or modify - * it under the terms of the GNU General Public License as published by - * the Free Software Foundation, either version 2 of the License, or - * (at your option) any later version. - * - * This program is distributed in the hope that it will be useful, - * but WITHOUT ANY WARRANTY; without even the implied warranty of - * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the - * GNU General Public License for more details. - * - * You should have received a copy of the GNU General Public License - * along with this program. If not, see <http://www.gnu.org/licenses/>. - */ - -#pragma once - -#ifdef RGB_MATRIX_ENABLE -# define RGB_MATRIX_TIMEOUT 1200000 // 20 minutes (20 * 60 * 1000ms) -# define RGB_DISABLE_WHEN_USB_SUSPENDED -#endif - -// A debounce of 8 represents a minimum key press time of just under 1 refresh at 120Hz -// Slightly higher than the default because we are using sym_eager_pk -#ifdef DEBOUNCE -# undef DEBOUNCE -#endif -#define DEBOUNCE 8 - -// RGB Matrix Animation modes. Explicitly enabled -// For full list of effects, see: -// https://docs.qmk.fm/#/feature_rgb_matrix?id=rgb-matrix-effects -// #define ENABLE_RGB_MATRIX_ALPHAS_MODS -// #define ENABLE_RGB_MATRIX_GRADIENT_UP_DOWN -// #define ENABLE_RGB_MATRIX_GRADIENT_LEFT_RIGHT -#define ENABLE_RGB_MATRIX_BREATHING -// #define ENABLE_RGB_MATRIX_BAND_SAT -// #define ENABLE_RGB_MATRIX_BAND_VAL -// #define ENABLE_RGB_MATRIX_BAND_PINWHEEL_SAT -// #define ENABLE_RGB_MATRIX_BAND_PINWHEEL_VAL -// #define ENABLE_RGB_MATRIX_BAND_SPIRAL_SAT -#define ENABLE_RGB_MATRIX_BAND_SPIRAL_VAL -#define ENABLE_RGB_MATRIX_CYCLE_ALL -#define ENABLE_RGB_MATRIX_CYCLE_LEFT_RIGHT -#define ENABLE_RGB_MATRIX_CYCLE_UP_DOWN -#define ENABLE_RGB_MATRIX_RAINBOW_MOVING_CHEVRON -#define ENABLE_RGB_MATRIX_CYCLE_OUT_IN -#define ENABLE_RGB_MATRIX_CYCLE_OUT_IN_DUAL -#define ENABLE_RGB_MATRIX_CYCLE_PINWHEEL -#define ENABLE_RGB_MATRIX_CYCLE_SPIRAL -#define ENABLE_RGB_MATRIX_DUAL_BEACON -#define ENABLE_RGB_MATRIX_RAINBOW_BEACON -// #define ENABLE_RGB_MATRIX_RAINBOW_PINWHEELS -// #define ENABLE_RGB_MATRIX_RAINDROPS -#define ENABLE_RGB_MATRIX_JELLYBEAN_RAINDROPS -// #define ENABLE_RGB_MATRIX_HUE_BREATHING -// #define ENABLE_RGB_MATRIX_HUE_PENDULUM -// #define ENABLE_RGB_MATRIX_HUE_WAVE -#define ENABLE_RGB_MATRIX_PIXEL_RAIN -// #define ENABLE_RGB_MATRIX_PIXEL_FLOW -// #define ENABLE_RGB_MATRIX_PIXEL_FRACTAL -// enabled only if RGB_MATRIX_FRAMEBUFFER_EFFECTS is defined -#define ENABLE_RGB_MATRIX_TYPING_HEATMAP -#define ENABLE_RGB_MATRIX_DIGITAL_RAIN -// enabled only of RGB_MATRIX_KEYPRESSES or RGB_MATRIX_KEYRELEASES is defined -#define ENABLE_RGB_MATRIX_SOLID_REACTIVE_SIMPLE -// #define ENABLE_RGB_MATRIX_SOLID_REACTIVE -// #define ENABLE_RGB_MATRIX_SOLID_REACTIVE_WIDE -#define ENABLE_RGB_MATRIX_SOLID_REACTIVE_MULTIWIDE -// #define ENABLE_RGB_MATRIX_SOLID_REACTIVE_CROSS -// #define ENABLE_RGB_MATRIX_SOLID_REACTIVE_MULTICROSS -// #define ENABLE_RGB_MATRIX_SOLID_REACTIVE_NEXUS -#define ENABLE_RGB_MATRIX_SOLID_REACTIVE_MULTINEXUS -#define ENABLE_RGB_MATRIX_SPLASH -// #define ENABLE_RGB_MATRIX_MULTISPLASH -#define ENABLE_RGB_MATRIX_SOLID_SPLASH -#define ENABLE_RGB_MATRIX_SOLID_MULTISPLASH - -#define RGB_MATRIX_KEYPRESSES -#define RGB_MATRIX_FRAMEBUFFER_EFFECTS diff --git a/keyboards/gmmk/pro/rev1/ansi/keymaps/andrebrait/keymap.c b/keyboards/gmmk/pro/rev1/ansi/keymaps/andrebrait/keymap.c deleted file mode 100644 index 3d2792b4a6..0000000000 --- a/keyboards/gmmk/pro/rev1/ansi/keymaps/andrebrait/keymap.c +++ /dev/null @@ -1,510 +0,0 @@ -/* Copyright 2021 Glorious, LLC <salman@pcgamingrace.com> - Copyright 2022 Andre Brait <andrebrait@gmail.com> - -This program is free software: you can redistribute it and/or modify -it under the terms of the GNU General Public License as published by -the Free Software Foundation, either version 2 of the License, or -(at your option) any later version. - -This program is distributed in the hope that it will be useful, -but WITHOUT ANY WARRANTY; without even the implied warranty of -MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the -GNU General Public License for more details. - -You should have received a copy of the GNU General Public License -along with this program. If not, see <http://www.gnu.org/licenses/>. -*/ - -#include QMK_KEYBOARD_H - -enum layers { WIN_BASE = 0, WIN_FN, MAC_BASE, MAC_FN }; - -enum custom_keycodes { - CMDQ_TOG = QK_KB_2 // TECH DEBT: Starts at QK_KB_2 to maintain ordering with VIA definitions. See #19884. Revert to QK_KB_0 when VIA catches up with QMK. -}; - -#define KC_TASK LWIN(KC_TAB) // Open Task Manager -#define KC_FLXP LWIN(KC_E) // Open File Explorer -#define DF_WINB DF(WIN_BASE) // Switch to WIN_BASE layer -#define MO_WINF MO(WIN_FN) // Toggle to WIN_FN layer -#define DF_MACB DF(MAC_BASE) // Switch to MAX_BASE layer -#define MO_MACF MO(MAC_FN) // Toggle to MAC_FN layer - -// clang-format off -uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = { - -// The GMMK Pro default layout is: -// -// ESC F1 F2 F3 F4 F5 F6 F7 F8 F9 F10 F11 F12 Del Rotary(Play/Pause) -// ~ 1 2 3 4 5 6 7 8 9 0 - (=) BackSpc Home -// Tab Q W E R T Y U I O P [ ] \ PgUp -// Caps A S D F G H J K L ; " Enter PgDn -// Sh_L Z X C V B N M , . ? Sh_R Up End -// Ct_L Win_L Alt_L SPACE Alt_R FN Ct_R Left Down Right - - - // The FN key by default maps to a momentary toggle to layer 1 to provide access to the QK_BOOT key (to put the board into bootloader mode). Without - // this mapping, you have to open the case to hit the button on the bottom of the PCB (near the USB cable attachment) while plugging in the USB - // cable to get the board into bootloader mode - definitely not fun when you're working on your QMK builds. Remove this and put it back to KC_RGUI - // if that's your preference. - // - // To put the keyboard in bootloader mode, use FN+backslash. If you accidentally put it into bootloader, you can just unplug the USB cable and - // it'll be back to normal when you plug it back in. - // - // This keyboard defaults to 6KRO instead of NKRO for compatibility reasons (some KVMs and BIOSes are incompatible with NKRO). - // Since this is, among other things, a "gaming" keyboard, a key combination to enable NKRO on the fly is provided for convenience. - // Press Fn+N to toggle between 6KRO and NKRO. This setting is persisted to the EEPROM and thus persists between restarts. - // - // RGB and function keys are inspired by the Keychron Q1 layouts instead of using the default keys. - // To clean the EEPROM, hold the ESC key while connecting the keyboard. - - [WIN_BASE] = LAYOUT( - 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_MUTE, - 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_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_CAPS, KC_A, KC_S, KC_D, KC_F, KC_G, KC_H, KC_J, KC_K, KC_L, KC_SCLN, KC_QUOT, KC_ENT, KC_HOME, - 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, KC_END, - KC_LCTL, KC_LWIN, KC_LALT, KC_SPC, KC_RALT, MO_WINF, KC_RCTL, KC_LEFT, KC_DOWN, KC_RGHT - ), - - [WIN_FN] = LAYOUT( - EE_CLR, KC_BRID, KC_BRIU, KC_TASK, KC_FLXP, RGB_VAD, RGB_VAI, KC_MPRV, KC_MPLY, KC_MNXT, KC_MUTE, KC_VOLD, KC_VOLU, XXXXXXX, XXXXXXX, - XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, KC_PAUS, - RGB_TOG, RGB_MOD, RGB_HUI, RGB_SAI, RGB_SPI, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, QK_BOOT, KC_SCRL, - DF_MACB, RGB_RMOD, RGB_HUD, RGB_SAD, RGB_SPD, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, KC_PGUP, - XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, NK_TOGG, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, KC_PGDN, - XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX - ), - - [MAC_BASE] = LAYOUT( - 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_MUTE, - 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_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_CAPS, KC_A, KC_S, KC_D, KC_F, KC_G, KC_H, KC_J, KC_K, KC_L, KC_SCLN, KC_QUOT, KC_ENT, KC_HOME, - 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, KC_END, - KC_LCTL, KC_LOPT, KC_LCMD, KC_SPC, KC_RCMD, MO_MACF, KC_RCTL, KC_LEFT, KC_DOWN, KC_RGHT - ), - - [MAC_FN] = LAYOUT( - EE_CLR, KC_BRID, KC_BRIU, KC_MCTL, KC_LPAD, RGB_VAD, RGB_VAI, KC_MPRV, KC_MPLY, KC_MNXT, KC_MUTE, KC_VOLD, KC_VOLU, XXXXXXX, XXXXXXX, - XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, KC_BRMU, - RGB_TOG, RGB_MOD, RGB_HUI, RGB_SAI, RGB_SPI, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, QK_BOOT, KC_BRMD, - DF_WINB, RGB_RMOD, RGB_HUD, RGB_SAD, RGB_SPD, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, KC_PGUP, - XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, NK_TOGG, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, KC_PGDN, - XXXXXXX, XXXXXXX, CMDQ_TOG, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX - ) -}; -// clang-format on - -#ifdef ENCODER_MAP_ENABLE -const uint16_t PROGMEM encoder_map[][NUM_ENCODERS][2] = { - [WIN_BASE] = {ENCODER_CCW_CW(KC_VOLD, KC_VOLU)}, - [WIN_FN] = {ENCODER_CCW_CW(XXXXXXX, XXXXXXX)}, - [MAC_BASE] = {ENCODER_CCW_CW(KC_VOLD, KC_VOLU)}, - [MAC_FN] = {ENCODER_CCW_CW(XXXXXXX, XXXXXXX)}, -}; -#endif - -/* To record user preferences */ -typedef union { - uint32_t raw; // set to 32-bit of size - struct { - bool rgb_enabled : 1; // Artificial RGB ON/OFF flag (1 bit) - bool cmd_q_delay_enabled : 1; // Toggle CMD+Q delay (1 bit) - }; -} user_config_t; -user_config_t user_config; - -/* Delayed keypresses variables and functions */ -static fast_timer_t delayed_press_delay = 0; -static uint16_t delayed_press_keycode = KC_NO; -static fast_timer_t delayed_press_start_time = 0; -static uint16_t delayed_press_sent_keycode = KC_NO; -static void start_delayed_press(fast_timer_t delay, uint16_t keycode); -static void mark_delayed_press_sent(void); -static void mark_delayed_release_sent(void); -static void cancel_delayed_press(void); - -#define IS_ANY_DELAYED_PRESS_PENDING() (delayed_press_start_time > 0 && delayed_press_keycode != KC_NO) -#define IS_DELAYED_PRESS_PENDING(keycode) (delayed_press_start_time > 0 && delayed_press_keycode == (keycode)) -#define IS_DELAYED_PRESS_SENT(keycode) (delayed_press_sent_keycode != KC_NO && delayed_press_sent_keycode == (keycode)) - -/* CMD+Q delay */ -#ifndef CMD_Q_DELAY -# define CMD_Q_DELAY 1000 -#endif -#if CMD_Q_DELAY <= 0 || CMD_Q_DELAY >= UINT16_MAX / 2 -# error "CMD_Q_DELAY must be a positive integer smaller than UINT16_MAX / 2" -#endif - -#ifdef RGB_MATRIX_ENABLE - -# define CAPS_LOCK_COLOR RGB_RED -# define WIN_BASE_COLOR RGB_BLUE -# define WIN_FN_COLOR RGB_BLUE -# define MAC_BASE_COLOR RGB_WHITE -# define MAC_FN_COLOR RGB_WHITE -# define UNKNOWN_LAYER_COLOR RGB_PINK - -/* The maximum effects duration */ -# ifndef EFFECTS_DURATION -# define EFFECTS_DURATION 2000 -# endif -# if EFFECTS_DURATION <= 0 || EFFECTS_DURATION >= UINT16_MAX / 2 -# error "EFFECTS_DURATION must be a positive integer smaller than UINT16_MAX / 2" -# endif -/* The interval for the flashing effect */ -# ifndef FLASHING_EFFECT_INTERVAL -# define FLASHING_EFFECT_INTERVAL 250 -# endif -# if FLASHING_EFFECT_INTERVAL <= 0 || FLASHING_EFFECT_INTERVAL >= UINT16_MAX / 2 -# error "FLASHING_EFFECT_INTERVAL must be a positive integer smaller than UINT16_MAX / 2" -# endif - -static void set_rgb_layer_winfn(void); -static void set_rgb_layer_macfn(void); - -/* Effects functions */ -static float flashing_effect(fast_timer_t delta_time); -static float static_effect(fast_timer_t delta_time); -static float increasing_effect(fast_timer_t delta_time); - -/* Effect variables and functions */ -static fast_timer_t effect_started_time = 0; -static fast_timer_t effect_max_duration = EFFECTS_DURATION; -static uint8_t effect_r = 0x0, effect_g = 0x0, effect_b = 0x0; -static float (*effect_multiplier)(fast_timer_t) = static_effect; -static void start_effects(fast_timer_t max_duration, uint8_t r_color, uint8_t g_color, uint8_t b_color, float (*multiplier)(fast_timer_t)); -static void stop_effects(void); - -/* Delayed keypresses variables with RGB variant */ -static void start_delayed_press_with_effects(fast_timer_t delay, uint16_t keycode, uint8_t r_color, uint8_t g_color, uint8_t b_color); - -#endif // RGB_MATRIX_ENABLE - -void eeconfig_init_user(void) { // EEPROM is getting reset! - user_config.raw = 0; - user_config.rgb_enabled = true; // We want this enabled by default - user_config.cmd_q_delay_enabled = true; // We want this enabled by default - eeconfig_update_user(user_config.raw); // Write default value to EEPROM now -} - -void keyboard_post_init_user(void) { -#ifdef RGB_MATRIX_ENABLE - // Enable the RGB matrix, if not enabled - if (!rgb_matrix_is_enabled()) { - rgb_matrix_enable(); - } - // Set the flags to ALL, if not already set - if (rgb_matrix_get_flags() != LED_FLAG_ALL) { - rgb_matrix_set_flags(LED_FLAG_ALL); - } -#endif - - // Read the user config from EEPROM - user_config.raw = eeconfig_read_user(); -} - -void matrix_scan_user(void) { - if (IS_ANY_DELAYED_PRESS_PENDING()) { - if (timer_elapsed_fast(delayed_press_start_time) > delayed_press_delay) { - register_code(delayed_press_keycode); - mark_delayed_press_sent(); - } - } -} - -bool process_record_user(uint16_t keycode, keyrecord_t *record) { - if (IS_DELAYED_PRESS_SENT(keycode)) { - if (!record->event.pressed) { - /* Send key-up event and clear the keycode and stop processing */ - unregister_code(keycode); - mark_delayed_release_sent(); - return false; - } - } else if (IS_DELAYED_PRESS_PENDING(keycode)) { - if (!record->event.pressed) { - /* Cancel the pending press and stop processing */ - cancel_delayed_press(); - return false; - } - } else if (IS_ANY_DELAYED_PRESS_PENDING()) { - /* Cancel the pending press and resume processing */ - cancel_delayed_press(); - } - switch (keycode) { - case QK_DEF_LAYER ... QK_DEF_LAYER_MAX: - if (record->event.pressed) { - /* Set the default layout on the EEPROM, let the default layer change callback handle the rest */ - set_single_persistent_default_layer(QK_DEF_LAYER_GET_LAYER(keycode)); - } - return false; - case CMDQ_TOG: - if (record->event.pressed) { -#ifdef RGB_MATRIX_ENABLE - if (user_config.cmd_q_delay_enabled) { - /* Turning delay OFF */ - start_effects(EFFECTS_DURATION, RGB_RED, flashing_effect); - } else { - /* Turning delay ON */ - start_effects(EFFECTS_DURATION, RGB_GREEN, flashing_effect); - } -#endif - user_config.cmd_q_delay_enabled = !user_config.cmd_q_delay_enabled; - eeconfig_update_user(user_config.raw); - } - return false; - case KC_Q: - if (user_config.cmd_q_delay_enabled) { - if (layer_state_is(MAC_BASE)) { - uint8_t mods = get_mods(); - if (mods == MOD_BIT(KC_LCMD) || mods == MOD_BIT(KC_RCMD)) { - if (record->event.pressed) { -#ifdef RGB_MATRIX_ENABLE - start_delayed_press_with_effects(CMD_Q_DELAY, KC_Q, RGB_ORANGE); -#else - start_delayed_press(CMD_Q_DELAY, KC_Q); -#endif - } - return false; - } - } - } - break; -#ifdef RGB_MATRIX_ENABLE -# ifdef NKRO_ENABLE - case NK_TOGG: - if (record->event.pressed) { - if (keymap_config.nkro) { - /* Turning NKRO OFF */ - start_effects(EFFECTS_DURATION, RGB_RED, flashing_effect); - } else { - /* Turning NKRO ON */ - start_effects(EFFECTS_DURATION, RGB_GREEN, flashing_effect); - } - } - break; -# endif // NKRO_ENABLE - case RGB_TOG: - if (record->event.pressed) { - user_config.rgb_enabled = !user_config.rgb_enabled; - eeconfig_update_user(user_config.raw); - } - return false; - case RGB_MODE_FORWARD ... RGB_MODE_TWINKLE: - if (!user_config.rgb_enabled) { - /* Ignore changes to RGB settings while only it's supposed to be OFF */ - return false; // Skip all further processing of this key - } - break; -#endif // RGB_MATRIX_ENABLE - } - return true; -} - -static void start_delayed_press(fast_timer_t delay, uint16_t keycode) { - delayed_press_delay = delay; - delayed_press_keycode = keycode; - delayed_press_start_time = timer_read_fast(); - delayed_press_sent_keycode = KC_NO; -} - -static void mark_delayed_press_sent(void) { - delayed_press_sent_keycode = delayed_press_keycode; - cancel_delayed_press(); -} - -static void mark_delayed_release_sent(void) { - delayed_press_sent_keycode = KC_NO; -} - -static void cancel_delayed_press(void) { - delayed_press_delay = 0; - delayed_press_keycode = KC_NO; - delayed_press_start_time = 0; -#ifdef RGB_MATRIX_ENABLE - stop_effects(); -#endif -} - -#ifdef RGB_MATRIX_ENABLE - -static void start_delayed_press_with_effects(fast_timer_t delay, uint16_t keycode, uint8_t r_color, uint8_t g_color, uint8_t b_color) { - start_delayed_press(delay, keycode); - start_effects(delay, r_color, g_color, b_color, increasing_effect); -} - -/* -Effects when switching layers -*/ - -static uint8_t previous_layer = UINT8_MAX; - -layer_state_t default_layer_state_set_user(layer_state_t state) { - uint8_t current_layer = get_highest_layer(state); - if (previous_layer != current_layer) { - // For some reason, setting the default layer alone doesn't change it fully - layer_move(current_layer); - switch (current_layer) { - case WIN_BASE: - start_effects(EFFECTS_DURATION, WIN_BASE_COLOR, flashing_effect); - break; - case MAC_BASE: - start_effects(EFFECTS_DURATION, MAC_BASE_COLOR, flashing_effect); - break; - default: - // This should not ever happen, but let's display something if it does! - start_effects(EFFECTS_DURATION, UNKNOWN_LAYER_COLOR, static_effect); - break; - } - previous_layer = current_layer; - } - return state; -} - -static void start_effects(fast_timer_t max_duration, uint8_t r_color, uint8_t g_color, uint8_t b_color, float (*multiplier)(fast_timer_t)) { - effect_r = r_color; - effect_g = g_color; - effect_b = b_color; - effect_multiplier = multiplier; - effect_max_duration = max_duration; - effect_started_time = timer_read_fast(); -} - -static void stop_effects(void) { - effect_r = 0x0; - effect_g = 0x0; - effect_b = 0x0; - effect_multiplier = static_effect; - effect_max_duration = EFFECTS_DURATION; - effect_started_time = 0; -} - -static float flashing_effect(fast_timer_t delta_time) { - return ((delta_time / FLASHING_EFFECT_INTERVAL) + 1) & 0x01; -} - -static float static_effect(fast_timer_t delta_time) { - return 1.0; -} - -static float increasing_effect(fast_timer_t delta_time) { - return ((float)delta_time) / effect_max_duration; -} - -bool rgb_matrix_indicators_user(void) { - if (effect_started_time > 0) { - fast_timer_t delta_time = timer_elapsed_fast(effect_started_time); - if (delta_time <= effect_max_duration) { - /* Render effect */ - float multiplier = effect_multiplier(delta_time); - uint8_t val_r = multiplier * effect_r; - uint8_t val_g = multiplier * effect_g; - uint8_t val_b = multiplier * effect_b; - rgb_matrix_set_color_all(val_r, val_g, val_b); - return false; - } else { - /* Effect duration is finished */ - stop_effects(); - } - } - if (host_keyboard_led_state().caps_lock) { - rgb_matrix_set_color_all(CAPS_LOCK_COLOR); - } else if (!user_config.rgb_enabled) { - rgb_matrix_set_color_all(RGB_OFF); - } - switch (get_highest_layer(layer_state)) { - case WIN_BASE: - case MAC_BASE: - break; - case WIN_FN: - set_rgb_layer_winfn(); - return false; - case MAC_FN: - set_rgb_layer_macfn(); - return false; - default: - // This should never happen, but if it does, let's display something! - rgb_matrix_set_color_all(UNKNOWN_LAYER_COLOR); - return false; - } - return true; -} - -// RGB led number layout, function of the key - -// 67, led 01 0, ESC 6, F1 12, F2 18, F3 23, F4 28, F5 34, F6 39, F7 44, F8 50, F9 56, F10 61, F11 66, F12 69, Prt Rotary(Mute) 68, led 12 -// 70, led 02 1, ~ 7, 1 13, 2 19, 3 24, 4 29, 5 35, 6 40, 7 45, 8 51, 9 57, 0 62, -_ 78, (=+) 85, BackSpc 72, Home 71, led 13 -// 73, led 03 2, Tab 8, Q 14, W 20. E 25, R 30, T 36, Y 41, U 46, I 52, O 58, P 63, [{ 89, ]} 93, \| 75, PgUp 74, led 14 -// 76, led 04 3, Caps 9, A 15, S 21, D 26, F 31, G 37, H 42, J 47, K 53, L 59, ;: 64, '" 96, Enter 86, PgDn 77, led 15 -// 80, led 05 4, Sh_L 10, Z 16, X 22, C 27, V 32, B 38, N 43, M 48, ,< 54, .< 60, /? 90, Sh_R 94, Up 82, End 81, led 16 -// 83, led 06 5, Ct_L 11,Win_L 17, Alt_L 33, SPACE 49, Alt_R 55, FN 65, Ct_R 95, Left 97, Down 79, Right 84, led 17 -// 87, led 07 88, led 18 -// 91, led 08 92, led 19 - -static void set_rgb_layer_winfn(void) { - rgb_matrix_set_color(0, WIN_FN_COLOR); - rgb_matrix_set_color(6, WIN_FN_COLOR); - rgb_matrix_set_color(12, WIN_FN_COLOR); - rgb_matrix_set_color(18, WIN_FN_COLOR); - rgb_matrix_set_color(23, WIN_FN_COLOR); - rgb_matrix_set_color(28, WIN_FN_COLOR); - rgb_matrix_set_color(34, WIN_FN_COLOR); - rgb_matrix_set_color(39, WIN_FN_COLOR); - rgb_matrix_set_color(44, WIN_FN_COLOR); - rgb_matrix_set_color(50, WIN_FN_COLOR); - rgb_matrix_set_color(56, WIN_FN_COLOR); - rgb_matrix_set_color(61, WIN_FN_COLOR); - rgb_matrix_set_color(66, WIN_FN_COLOR); - rgb_matrix_set_color(2, WIN_FN_COLOR); - rgb_matrix_set_color(3, WIN_FN_COLOR); - rgb_matrix_set_color(8, WIN_FN_COLOR); - rgb_matrix_set_color(9, WIN_FN_COLOR); - rgb_matrix_set_color(14, WIN_FN_COLOR); - rgb_matrix_set_color(15, WIN_FN_COLOR); - rgb_matrix_set_color(20, WIN_FN_COLOR); - rgb_matrix_set_color(21, WIN_FN_COLOR); - rgb_matrix_set_color(25, WIN_FN_COLOR); - rgb_matrix_set_color(26, WIN_FN_COLOR); - rgb_matrix_set_color(38, WIN_FN_COLOR); - rgb_matrix_set_color(93, WIN_FN_COLOR); - rgb_matrix_set_color(72, WIN_FN_COLOR); - rgb_matrix_set_color(75, WIN_FN_COLOR); - rgb_matrix_set_color(86, WIN_FN_COLOR); - rgb_matrix_set_color(82, WIN_FN_COLOR); -} - -static void set_rgb_layer_macfn(void) { - rgb_matrix_set_color(0, MAC_FN_COLOR); - rgb_matrix_set_color(6, MAC_FN_COLOR); - rgb_matrix_set_color(12, MAC_FN_COLOR); - rgb_matrix_set_color(18, MAC_FN_COLOR); - rgb_matrix_set_color(23, MAC_FN_COLOR); - rgb_matrix_set_color(28, MAC_FN_COLOR); - rgb_matrix_set_color(34, MAC_FN_COLOR); - rgb_matrix_set_color(39, MAC_FN_COLOR); - rgb_matrix_set_color(44, MAC_FN_COLOR); - rgb_matrix_set_color(50, MAC_FN_COLOR); - rgb_matrix_set_color(56, MAC_FN_COLOR); - rgb_matrix_set_color(61, MAC_FN_COLOR); - rgb_matrix_set_color(66, MAC_FN_COLOR); - rgb_matrix_set_color(2, MAC_FN_COLOR); - rgb_matrix_set_color(3, MAC_FN_COLOR); - rgb_matrix_set_color(8, MAC_FN_COLOR); - rgb_matrix_set_color(9, MAC_FN_COLOR); - rgb_matrix_set_color(14, MAC_FN_COLOR); - rgb_matrix_set_color(15, MAC_FN_COLOR); - rgb_matrix_set_color(20, MAC_FN_COLOR); - rgb_matrix_set_color(21, MAC_FN_COLOR); - rgb_matrix_set_color(25, MAC_FN_COLOR); - rgb_matrix_set_color(26, MAC_FN_COLOR); - rgb_matrix_set_color(38, MAC_FN_COLOR); - rgb_matrix_set_color(93, MAC_FN_COLOR); - rgb_matrix_set_color(72, MAC_FN_COLOR); - rgb_matrix_set_color(75, MAC_FN_COLOR); - rgb_matrix_set_color(86, MAC_FN_COLOR); - rgb_matrix_set_color(82, MAC_FN_COLOR); - rgb_matrix_set_color(17, MAC_FN_COLOR); -} - -#endif // RGB_MATRIX_ENABLE diff --git a/keyboards/gmmk/pro/rev1/ansi/keymaps/andrebrait/readme.md b/keyboards/gmmk/pro/rev1/ansi/keymaps/andrebrait/readme.md deleted file mode 100644 index 2b21bd2821..0000000000 --- a/keyboards/gmmk/pro/rev1/ansi/keymaps/andrebrait/readme.md +++ /dev/null @@ -1,32 +0,0 @@ -# andrebrait's GMMK Pro layout - -This is pretty much the stock layout with a few things moved around. -It basically reflects my needs for both Delete and Insert being readily available for coding, as well as a full Home/PgUp/PgDwn/End column. - -The differences are as follows: - -- Dedicated MacOS and Windows/Linux layers - - Switching between them by pressing Fn + CAPS LOCK -- VIA support -- Disabled Mouse Keys (to fix issues with KVM switches and also because they're not used here anyway) -- RGB turns off after 20 minutes of inactivity -- RGB turns off when USB is suspended -- Layer 0: - - Delete -> Insert - - Page Up -> Delete - - Page Down -> Home -- Layer 1 (accessed by pressing Fn): - - Fn + Insert -> Pause - - Fn + Delete -> Scroll Lock - - Fn + Esc -> Clear EEPROM - - Fn + (Left) CMD (macOS layout) -> Toggle the CMD + Q delay - -On the Mac layer, pressing CMD + Q will not immediately send the combination.\ -There's a configurable delay (defaults to 1 second) to send it.\ -This is done mainly to prevent hitting CMD + Q by mistake when alternating between applications with CMD + Tab. - -This keymap also includes CAPS LOCK ON indicator.\ -All left and right side LEDs, and the Caps key LED will turn solid red while CAPS LOCK is ON. - -No other changes have been made. \ -The other keys on each layer have been kept intact. diff --git a/keyboards/gmmk/pro/rev1/ansi/keymaps/andrebrait/rules.mk b/keyboards/gmmk/pro/rev1/ansi/keymaps/andrebrait/rules.mk deleted file mode 100644 index 14e4106321..0000000000 --- a/keyboards/gmmk/pro/rev1/ansi/keymaps/andrebrait/rules.mk +++ /dev/null @@ -1,30 +0,0 @@ -# Enable additional features. - -# Disabling MouseKey because it breaks my KVM switch -MOUSEKEY_ENABLE = no - -# Use sym_eager_pk for better latency when gaming. -# -# Previous issues with sym_defer_pk (and sym_eager_pk and debounce times -# shorter than 8ms) were due to Glorious' horrible hot-swap sockets. -# These issues were 100% resolved after I replaced them with Gateron hot-swap sockets. -# -# The old sockets apparently didn't hold onto the legs of the switches at all. -# -# Using eager might not be a good idea with other switch types, but I only use -# linears now, so this should be ok. -# -# asym_eager_defer_pk also works well and it is more resistant to chatter at -# the cost of delay when releasing a key being slightly higher. -DEBOUNCE_TYPE = sym_eager_pk - -# Useful for debugging -# CONSOLE_ENABLE = yes -# DEBUG_MATRIX_SCAN_RATE_ENABLE = yes -# DEBUG_MATRIX_SCAN_RATE = yes - -# Encoder Map support -ENCODER_MAP_ENABLE = yes - -# Enables VIA -VIA_ENABLE = yes diff --git a/keyboards/gmmk/pro/rev1/ansi/keymaps/andrewcharnley/config.h b/keyboards/gmmk/pro/rev1/ansi/keymaps/andrewcharnley/config.h deleted file mode 100644 index dc3dfefab0..0000000000 --- a/keyboards/gmmk/pro/rev1/ansi/keymaps/andrewcharnley/config.h +++ /dev/null @@ -1,24 +0,0 @@ -/* Copyright 2021 Andrew Charnley - * - * This program is free software: you can redistribute it and/or modify - * it under the terms of the GNU General Public License as published by - * the Free Software Foundation, either version 2 of the License, or - * (at your option) any later version. - * - * This program is distributed in the hope that it will be useful, - * but WITHOUT ANY WARRANTY; without even the implied warranty of - * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the - * GNU General Public License for more details. - * - * You should have received a copy of the GNU General Public License - * along with this program. If not, see <http://www.gnu.org/licenses/>. - */ - -#pragma once - -#define RGBLIGHT_DEFAULT_MODE RGBLIGHT_MODE_STATIC_LIGHT -#define RGBLIGHT_DEFAULT_SAT 0 -#define RGB_DISABLE_WHEN_USB_SUSPENDED -#define RGB_MATRIX_DEFAULT_MODE RGB_MATRIX_SOLID_COLOR - - diff --git a/keyboards/gmmk/pro/rev1/ansi/keymaps/andrewcharnley/keymap.c b/keyboards/gmmk/pro/rev1/ansi/keymaps/andrewcharnley/keymap.c deleted file mode 100644 index 52fd7a5a34..0000000000 --- a/keyboards/gmmk/pro/rev1/ansi/keymaps/andrewcharnley/keymap.c +++ /dev/null @@ -1,88 +0,0 @@ -/* Copyright 2021 Andrew Charnley - * - * This program is free software: you can redistribute it and/or modify - * it under the terms of the GNU General Public License as published by - * the Free Software Foundation, either version 2 of the License, or - * (at your option) any later version. - * - * This program is distributed in the hope that it will be useful, - * but WITHOUT ANY WARRANTY; without even the implied warranty of - * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the - * GNU General Public License for more details. - * - * You should have received a copy of the GNU General Public License - * along with this program. If not, see <http://www.gnu.org/licenses/>. - */ - -#include QMK_KEYBOARD_H - -// Windows key changed to second FN key. Use KC_LGUI to revert. - -enum userspace_layers { - QWERTY, - FNLAYER -}; - -const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = { - - // The FN key by default maps to a momentary toggle to layer 1 to provide access to the QK_BOOT key (to put the board into bootloader mode). Without - // this mapping, you have to open the case to hit the button on the bottom of the PCB (near the USB cable attachment) while plugging in the USB - // cable to get the board into bootloader mode - definitely not fun when you're working on your QMK builds. Remove this and put it back to KC_RGUI - // if that's your preference. - // - // To put the keyboard in bootloader mode, use FN+backslash. If you accidentally put it into bootloader, you can just unplug the USB cable and - // it'll be back to normal when you plug it back in. - - [QWERTY] = LAYOUT( - 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_MUTE, - 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_DEL, - 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_PGUP, - KC_CAPS, KC_A, KC_S, KC_D, KC_F, KC_G, KC_H, KC_J, KC_K, KC_L, KC_SCLN, KC_QUOT, KC_ENT, KC_PGDN, - 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, KC_END, - KC_LCTL, MO(FNLAYER), KC_LALT, KC_SPC, KC_RALT, MO(FNLAYER),KC_RCTL, KC_LEFT, KC_DOWN, KC_RGHT - ), - - [FNLAYER] = LAYOUT( - _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, KC_MEDIA_PLAY_PAUSE, - _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, - _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, QK_BOOT, _______, - _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, - _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, RGB_VAI, _______, - _______, _______, _______, _______, _______, _______, _______, _______, RGB_VAD, _______ - ), -}; - -bool encoder_update_user(uint8_t index, bool clockwise) { - if(IS_LAYER_ON(FNLAYER)) { - if (clockwise) { - tap_code(KC_MEDIA_NEXT_TRACK); - } else { - tap_code(KC_MEDIA_PREV_TRACK); - } - } else { - if (clockwise) { - tap_code(KC_VOLU); - } else { - tap_code(KC_VOLD); - } - } - return false; -} - -static uint8_t val; - -void keyboard_post_init_user(void) { - - val = rgb_matrix_get_val(); -} - -bool rgb_matrix_indicators_advanced_user(uint8_t led_min, uint8_t led_max) { - - if (host_keyboard_led_state().caps_lock) { - rgb_matrix_set_color_all(val,0,0); - } else { - rgb_matrix_set_color_all(val, val, val); - val = rgb_matrix_get_val(); - } - return false; -} diff --git a/keyboards/gmmk/pro/rev1/ansi/keymaps/andrewcharnley/readme.md b/keyboards/gmmk/pro/rev1/ansi/keymaps/andrewcharnley/readme.md deleted file mode 100644 index e064edd83a..0000000000 --- a/keyboards/gmmk/pro/rev1/ansi/keymaps/andrewcharnley/readme.md +++ /dev/null @@ -1,18 +0,0 @@ -# Description -A keymap designed to be functional for development purposes - no flashing lights or gimmicks. PRTSC and DEL key in the top right corner. -Solid backlight that changes red if CAPS is on and reverts back afterwards. Brightness retained in both cases. -Backlight is disabled on suspend and restored upon wake-up. -The 'Windows' key is a second FN key. This makes it more natural to use the encoder wheel (good luck trying to do it with one hand). - -Compile using `qmk compile -kb gmmk/pro/ansi -km andrewcharnley` - -# Encoder -FN + Encoder scroll = media next/prev -FN + Encoder press = media pause -default encoder behavior = volume up/down - -# Function Layer -FN + Up = increase brightness -FN + Down = decrease brightness -FN + Backslash = bootloader - diff --git a/keyboards/gmmk/pro/rev1/ansi/keymaps/batin/keymap.c b/keyboards/gmmk/pro/rev1/ansi/keymaps/batin/keymap.c deleted file mode 100644 index 9d84e86889..0000000000 --- a/keyboards/gmmk/pro/rev1/ansi/keymaps/batin/keymap.c +++ /dev/null @@ -1,50 +0,0 @@ -/* Copyright 2021 Glorious, LLC <salman@pcgamingrace.com> - -This program is free software: you can redistribute it and/or modify -it under the terms of the GNU General Public License as published by -the Free Software Foundation, either version 2 of the License, or -(at your option) any later version. - -This program is distributed in the hope that it will be useful, -but WITHOUT ANY WARRANTY; without even the implied warranty of -MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the -GNU General Public License for more details. - -You should have received a copy of the GNU General Public License -along with this program. If not, see <http://www.gnu.org/licenses/>. -*/ - -#include QMK_KEYBOARD_H - -// clang-format off -const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = { - [0] = LAYOUT( - KC_ESC, KC_F1, KC_F2, KC_BRID, KC_BRIU, RGB_VAD, RGB_VAI, RGB_RMOD, RGB_MOD, KC_F9, KC_MPRV, KC_MPLY, KC_MNXT, KC_PSCR, KC_MUTE, - 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_DEL, - 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_PGUP, - KC_CAPS, KC_A, KC_S, KC_D, KC_F, KC_G, KC_H, KC_J, KC_K, KC_L, KC_SCLN, KC_QUOT, KC_ENT, KC_PGDN, - 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, KC_END, - KC_LCTL, KC_LALT, KC_LGUI, KC_SPC, KC_RGUI, MO(1), KC_RCTL, KC_LEFT, KC_DOWN, KC_RGHT - ), - - [1] = LAYOUT( - _______, KC_F1, KC_F2, KC_F3, KC_F4, KC_F5, KC_F6, KC_F7, KC_F8, KC_F9, KC_F10, KC_F10, KC_F12, _______, KC_MUTE, - _______, RGB_TOG, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, - _______, _______, RGB_VAI, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, QK_BOOT, _______, - _______, RGB_HUD, RGB_VAD, RGB_HUI, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, - _______, _______, _______, _______, _______, _______, _______, NK_TOGG, _______, _______, _______, _______, RGB_MOD, - _______, _______, _______, _______, _______, _______, _______, _______, RGB_SPD, RGB_RMOD, RGB_SPI - ), -}; -// clang-format on - -#ifdef ENCODER_ENABLE -bool encoder_update_user(uint8_t index, bool clockwise) { - if (clockwise) { - tap_code(KC_VOLU); - } else { - tap_code(KC_VOLD); - } - return false; -} -#endif diff --git a/keyboards/gmmk/pro/rev1/ansi/keymaps/benschaeff/keymap.c b/keyboards/gmmk/pro/rev1/ansi/keymaps/benschaeff/keymap.c deleted file mode 100644 index b536a8535a..0000000000 --- a/keyboards/gmmk/pro/rev1/ansi/keymaps/benschaeff/keymap.c +++ /dev/null @@ -1,128 +0,0 @@ -/* Copyright 2021 Glorious, LLC <salman@pcgamingrace.com> -This program is free software: you can redistribute it and/or modify -it under the terms of the GNU General Public License as published by -the Free Software Foundation, either version 2 of the License, or -(at your option) any later version. -This program is distributed in the hope that it will be useful, -but WITHOUT ANY WARRANTY; without even the implied warranty of -MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the -GNU General Public License for more details. -You should have received a copy of the GNU General Public License -along with this program. If not, see <http://www.gnu.org/licenses/>. -*/ - -#include QMK_KEYBOARD_H - -enum userspace_layers { - QWERTY, - FNLAYER, - POPTAB, -}; - -//custom keycodes -#define MODS_ALT_MASK (MOD_BIT(KC_LALT)) // Make ALT layer for encoder use -#define MODS_CTRL_MASK (MOD_BIT(KC_LCTL)) // Make CTRL layer for encoder use -#define SWAP_L SGUI(KC_LEFT) // Swap application to left display -#define SWAP_R SGUI(KC_RGHT) // Swap application to right display -#define MINI LGUI(KC_DOWN) // Shrink window -#define MAXI LGUI(KC_UP) // Maximize window -#define CLOSEAPPLICATION LALT(KC_F4) // Kill application -#define CLOSETAB LCTL(KC_W) // Kill current tab -#define POPOUT LCTL(LSFT(KC_K)) - -const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = { - -// ESC F1 F2 F3 F4 F5 F6 F7 F8 F9 F10 F11 F12 Prt Rotary(Mute) -// ~ 1 2 3 4 5 6 7 8 9 0 - (=) BackSpc Del -// Tab Q W E R T Y U I O P [ ] \ PgUp -// Caps A S D F G H J K L ; " Enter PgDn -// Sh_L Z X C V B N M , . ? Sh_R Up End -// Ct_L Win_L Alt_L SPACE Alt_R FN Ct_R Left Down Right - - - // The FN key by default maps to a momentary toggle to layer 1 to provide access to the QK_BOOT key (to put the board into bootloader mode). Without - // this mapping, you have to open the case to hit the button on the bottom of the PCB (near the USB cable attachment) while plugging in the USB - // cable to get the board into bootloader mode - definitely not fun when you're working on your QMK builds. Remove this and put it back to KC_RGUI - // if that's your preference. - // - // To put the keyboard in bootloader mode, use FN+backslash. If you accidentally put it into bootloader, you can just unplug the USB cable and - // it'll be back to normal when you plug it back in. - - [QWERTY] = LAYOUT( - 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_MUTE, - 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_DEL, - 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_PGUP, - KC_CAPS, KC_A, KC_S, KC_D, KC_F, KC_G, KC_H, KC_J, KC_K, KC_L, KC_SCLN, KC_QUOT, KC_ENT, KC_PGDN, - 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, KC_END, - KC_LCTL, KC_LGUI, KC_LALT, KC_SPC, KC_RALT, MO(FNLAYER), KC_RCTL, KC_LEFT, KC_DOWN, KC_RGHT - ), - - [FNLAYER] = LAYOUT( - CLOSEAPPLICATION, CLOSETAB,_______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, KC_MEDIA_PLAY_PAUSE, - _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, - _______, SWAP_L , MAXI , SWAP_R , _______, _______, _______, _______, _______, _______, _______, _______, _______, QK_BOOT, _______, - _______, _______, MINI , _______, POPOUT, _______, _______, _______, _______, _______, _______, _______, _______, _______, - _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, - _______, _______, _______, _______, _______, _______, KC_TRNS, _______, _______, _______ - ), - - -}; - - -bool encoder_update_user(uint8_t index, bool clockwise) { - if (get_mods() & MODS_ALT_MASK) { - if (clockwise) { - tap_code(KC_TAB); - } else { - tap_code16(S(KC_TAB)); - } - } else if (get_mods() & MODS_CTRL_MASK) { - if (clockwise) { - tap_code(KC_TAB); - } else { - tap_code16(S(KC_TAB)); - } - } else if(IS_LAYER_ON(FNLAYER)) { - if (clockwise) { - tap_code(KC_MEDIA_NEXT_TRACK); - } else { - tap_code(KC_MEDIA_PREV_TRACK); - } - } else { - if (clockwise) { - tap_code(KC_VOLU); - } else { - tap_code(KC_VOLD); - } - } - return false; -} - -bool rgb_matrix_indicators_advanced_user(uint8_t led_min, uint8_t led_max) { - switch(get_highest_layer(layer_state)) { - // special handling per layer - case 0: //layer one - if (host_keyboard_led_state().caps_lock) - rgb_matrix_set_color_all(255,0,0); - else - rgb_matrix_set_color_all(0,255,56); - break; - case 1: - for (uint8_t i = led_min; i < led_max; i++) { - RGB_MATRIX_INDICATOR_SET_COLOR(i,0,0,0); - } - RGB_MATRIX_INDICATOR_SET_COLOR(0, 0, 0, 255) //esc - RGB_MATRIX_INDICATOR_SET_COLOR(6, 0, 0, 255) //f1 - RGB_MATRIX_INDICATOR_SET_COLOR(8, 0, 0, 255) //q - RGB_MATRIX_INDICATOR_SET_COLOR(14, 0, 0, 255) //w - RGB_MATRIX_INDICATOR_SET_COLOR(20, 0, 0, 255) //e - RGB_MATRIX_INDICATOR_SET_COLOR(15, 0, 0, 255) //s - RGB_MATRIX_INDICATOR_SET_COLOR(26, 0, 0, 255) //f - RGB_MATRIX_INDICATOR_SET_COLOR(49, 0, 0, 255) //R_Alt - break; - default: - break; - } - return false; -} diff --git a/keyboards/gmmk/pro/rev1/ansi/keymaps/benschaeff/readme.md b/keyboards/gmmk/pro/rev1/ansi/keymaps/benschaeff/readme.md deleted file mode 100644 index 8162002892..0000000000 --- a/keyboards/gmmk/pro/rev1/ansi/keymaps/benschaeff/readme.md +++ /dev/null @@ -1,19 +0,0 @@ -# Description -Pretty simple keymap with a few handy tools on a 2nd layer and rotary encoder. - -# Encoder -Holding tab and scrolling encoder will allow scrolling through applications, as if using alt + tab -Holding ctrl and scrolling encoder will allow scrolling through chrome tabs -FN + Encoder scroll is media next/prev -FN + Encoder press is media pause -default encoder behavior is volume up/down - -# Function Layer -FN + \ is used to put keyboard into bootloader mode -FN + ESC is the same as alt F4, for closing applications -FN + F1 is to close current browser tab -FN + Q moves current application one monitor to the left -FN + W maximizes current application -FN + E moves current application one monitor to the right -FN + S minimizes current application -FN + F is used in junction with the "Popout tab" extension to chrome (https://chrome.google.com/webstore/detail/popout-tab/pcfcieidiaaobigemjnkclebhnmgfbco) to pop out current tab to its own window diff --git a/keyboards/gmmk/pro/rev1/ansi/keymaps/coryginsberg/config.h b/keyboards/gmmk/pro/rev1/ansi/keymaps/coryginsberg/config.h deleted file mode 100644 index 6b06448f71..0000000000 --- a/keyboards/gmmk/pro/rev1/ansi/keymaps/coryginsberg/config.h +++ /dev/null @@ -1,24 +0,0 @@ -/* Copyright 2021 Glorious, LLC <salman@pcgamingrace.com> - Copyright 2021 Cory Ginsberg (@coryginsberg) - -This program is free software: you can redistribute it and/or modify -it under the terms of the GNU General Public License as published by -the Free Software Foundation, either version 2 of the License, or -(at your option) any later version. - -This program is distributed in the hope that it will be useful, -but WITHOUT ANY WARRANTY; without even the implied warranty of -MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the -GNU General Public License for more details. - -You should have received a copy of the GNU General Public License -along with this program. If not, see <http://www.gnu.org/licenses/>. -*/ - -#pragma once - -// #define TAPPING_TOGGLE 2 -// TT set to two taps - -#define TAPPING_TERM 250 -#define RGBLIGHT_DEFAULT_MODE SOLID_WHITE diff --git a/keyboards/gmmk/pro/rev1/ansi/keymaps/coryginsberg/keymap.c b/keyboards/gmmk/pro/rev1/ansi/keymaps/coryginsberg/keymap.c deleted file mode 100644 index 49e2050ea0..0000000000 --- a/keyboards/gmmk/pro/rev1/ansi/keymaps/coryginsberg/keymap.c +++ /dev/null @@ -1,112 +0,0 @@ -/* Copyright 2021 Glorious, LLC <salman@pcgamingrace.com> - Copyright 2021 Cory Ginsberg (@coryginsberg) - -This program is free software: you can redistribute it and/or modify -it under the terms of the GNU General Public License as published by -the Free Software Foundation, either version 2 of the License, or -(at your option) any later version. - -This program is distributed in the hope that it will be useful, -but WITHOUT ANY WARRANTY; without even the implied warranty of -MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the -GNU General Public License for more details. - -You should have received a copy of the GNU General Public License -along with this program. If not, see <http://www.gnu.org/licenses/>. -*/ - -#include QMK_KEYBOARD_H - -void dance_media(tap_dance_state_t *state, void *user_data) { - if (state->count == 1) { - tap_code(KC_MPLY); - } else if (state->count == 2) { - tap_code(KC_MNXT); - } else if (state->count == 3) { - tap_code(KC_MPRV); - } else { - reset_tap_dance(state); - } -} - -tap_dance_action_t tap_dance_actions[] = { - // Tap once for shift, twice for Caps Lock - [0] = ACTION_TAP_DANCE_DOUBLE(KC_LSFT, KC_CAPS), - [1] = ACTION_TAP_DANCE_FN(dance_media)}; - -const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = { - -// ESC F1 F2 F3 F4 F5 F6 F7 F8 F9 F10 F11 F12 Prt Rotary(Mute) -// ~ 1 2 3 4 5 6 7 8 9 0 - (=) BackSpc Del -// Tab Q W E R T Y U I O P [ ] \ PgUp -// Caps A S D F G H J K L ; " Enter PgDn -// Sh_L Z X C V B N M , . ? Sh_R Up End -// Ct_L Alt_L Win_L SPACE Ct_R Alt_R FN Left Down Right - - // The FN key by default maps to a momentary toggle to layer 1 to provide access to the QK_BOOT key (to put the board into bootloader mode). Without - // this mapping, you have to open the case to hit the button on the bottom of the PCB (near the USB cable attachment) while plugging in the USB - // cable to get the board into bootloader mode - definitely not fun when you're working on your QMK builds. Remove this and put it back to KC_RGUI - // if that's your preference. - // - // To put the keyboard in bootloader mode, use FN+backslash. If you accidentally put it into bootloader, you can just unplug the USB cable and - // it'll be back to normal when you plug it back in. - [0] = LAYOUT( - 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, TO(1), - 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_DEL, - 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_PGUP, - KC_CAPS, KC_A, KC_S, KC_D, KC_F, KC_G, KC_H, KC_J, KC_K, KC_L, KC_SCLN, KC_QUOT, KC_ENT, KC_PGDN, - 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, KC_END, - KC_LCTL, KC_LGUI, KC_LALT, KC_SPC, KC_RALT, MO(4), TO(2), KC_LEFT, KC_DOWN, KC_RGHT - ), - [1] = LAYOUT( - 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, TD(1), TO(0), - 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_DEL, - 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_PGUP, - KC_CAPS, KC_A, KC_S, KC_D, KC_F, KC_G, KC_H, KC_J, KC_K, KC_L, KC_SCLN, KC_QUOT, KC_ENT, KC_PGDN, - 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, KC_END, - KC_LCTL, KC_LALT, KC_LGUI, KC_SPC, KC_RALT, MO(4), KC_RCTL, KC_LEFT, KC_DOWN, KC_RGHT - ), - [2] = LAYOUT( - 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, TD(1), TO(0), - 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_DEL, - 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_PGUP, - KC_CAPS, KC_A, KC_S, KC_D, KC_F, KC_G, KC_H, KC_J, KC_K, KC_L, KC_SCLN, KC_QUOT, KC_ENT, KC_PGDN, - 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, KC_END, - KC_LCTL, KC_LALT, KC_LGUI, KC_SPC, KC_RALT, MO(4), KC_RCTL, KC_LEFT, KC_DOWN, KC_RGHT - ), - [3] = LAYOUT( - XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, - XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, KC_PSLS, KC_PAST, KC_PMNS, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, - XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, KC_7, KC_8, KC_9, KC_PPLS, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, - XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, KC_4, KC_5, KC_6, KC_PPLS, XXXXXXX, KC_PENT, XXXXXXX, - XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, KC_1, KC_2, KC_3, KC_EQL, XXXXXXX, XXXXXXX, XXXXXXX, - XXXXXXX, XXXXXXX, XXXXXXX, KC_0, KC_DOT, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX - ), - [4] = LAYOUT( - XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, TD(1), _______, - XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, _______, - XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, RGB_M_P, XXXXXXX, XXXXXXX, QK_BOOT, RGB_MODE_FORWARD, - XXXXXXX, XXXXXXX, RGB_SAI, XXXXXXX, XXXXXXX, XXXXXXX, RGB_HUI, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, RGB_MODE_REVERSE, - _______, XXXXXXX, XXXXXXX, XXXXXXX, RGB_VAI, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, _______, XXXXXXX, RGB_TOG, - XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, _______, XXXXXXX, KC_MEDIA_PREV_TRACK, KC_MEDIA_PLAY_PAUSE, KC_MEDIA_NEXT_TRACK - ), - [5] = LAYOUT( - _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, - _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, - _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, - _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, - _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, - _______, _______, _______, _______, _______, _______, _______, _______, _______, _______ - ), -}; - -bool encoder_update_user(uint8_t index, bool clockwise) { - if (clockwise) { - tap_code(KC_VOLU); - } - else { - tap_code(KC_VOLD); - } - //return true; //set to return false to counteract enabled encoder in pro.c - return false; -} diff --git a/keyboards/gmmk/pro/rev1/ansi/keymaps/coryginsberg/readme.md b/keyboards/gmmk/pro/rev1/ansi/keymaps/coryginsberg/readme.md deleted file mode 100644 index e448521572..0000000000 --- a/keyboards/gmmk/pro/rev1/ansi/keymaps/coryginsberg/readme.md +++ /dev/null @@ -1,15 +0,0 @@ -# Description -Mac and Windows profiles with special touches for the Mac profile. - -## Windows Profile -Should be nearly identical to the default profile for GMMK Pro. Only major difference is the button next to F12 is now PrintScreen and clicking the rotary dial switches profiles instead of muting. - -## Mac Profile -Besides the usual swapping of the alt and windows/cmd placement also changes the following: -* Double press shift to activate caps lock -* Capslock is escape -* Button next to F12: - * 1 press: play/pause - * 2 presses: skip - * 3 presses: previous -* Clicking Rotary Dial switches profiles diff --git a/keyboards/gmmk/pro/rev1/ansi/keymaps/coryginsberg/rules.mk b/keyboards/gmmk/pro/rev1/ansi/keymaps/coryginsberg/rules.mk deleted file mode 100644 index 1dd6809223..0000000000 --- a/keyboards/gmmk/pro/rev1/ansi/keymaps/coryginsberg/rules.mk +++ /dev/null @@ -1,5 +0,0 @@ -VIA_ENABLE = yes -MOUSEKEY_ENABLE = no -TAP_DANCE_ENABLE = yes -BOOTMAGIC_ENABLE = yes # Enable Bootmagic Lite -UNICODE_ENABLE = yes diff --git a/keyboards/gmmk/pro/rev1/ansi/keymaps/gigahawk/config.h b/keyboards/gmmk/pro/rev1/ansi/keymaps/gigahawk/config.h deleted file mode 100644 index a4e1173e4f..0000000000 --- a/keyboards/gmmk/pro/rev1/ansi/keymaps/gigahawk/config.h +++ /dev/null @@ -1,6 +0,0 @@ -// Copyright 2021 Jasper Chan (@Gigahawk) -// SPDX-License-Identifier: GPL-2.0-or-later -#pragma once - -#define RGB_MATRIX_DEFAULT_MODE RGB_MATRIX_SOLID_COLOR -#define RGB_MATRIX_DEFAULT_SPD 0 diff --git a/keyboards/gmmk/pro/rev1/ansi/keymaps/gigahawk/keymap.c b/keyboards/gmmk/pro/rev1/ansi/keymaps/gigahawk/keymap.c deleted file mode 100644 index c693bd90d8..0000000000 --- a/keyboards/gmmk/pro/rev1/ansi/keymaps/gigahawk/keymap.c +++ /dev/null @@ -1,76 +0,0 @@ -// Copyright 2021 Jasper Chan (@Gigahawk) -// SPDX-License-Identifier: GPL-2.0-or-later -#include QMK_KEYBOARD_H - -enum layers { - _BASE, - _GAME, - _TRAN, -}; - -#define _BASE_COLOR_RGB 156, 123, 85 -#define _GAME_COLOR_RGB 147, 21, 21 -#define _TRAN_COLOR_RGB 45, 89, 24 -#define _CAPS_COLOR_RGB 146, 140, 16 - -// clang-format off -const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = { - - [_BASE] = LAYOUT( - 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_DEL, KC_MUTE, - 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_HOME, - 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_PGUP, - KC_ESC, KC_A, KC_S, KC_D, KC_F, KC_G, KC_H, KC_J, KC_K, KC_L, KC_SCLN, KC_QUOT, KC_ENT, KC_PGDN, - 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, KC_END, - KC_LCTL, KC_LGUI, KC_LALT, KC_SPC, KC_RALT, MO(2), KC_RCTL, KC_LEFT, KC_DOWN, KC_RGHT - ), - - [_GAME] = LAYOUT( - _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, - _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, - _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, - XXXXXXX, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, - _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, - _______, _______, _______, _______, _______, _______, _______, _______, _______, _______ - ), - - [_TRAN] = LAYOUT( - KC_CAPS, 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_INS, _______, - _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, - _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, - TG(1), _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, - _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, - _______, _______, _______, KC_MPLY, _______, _______, _______, KC_MPRV, _______, KC_MNXT - ), - -}; -// clang-format on - -bool encoder_update_user(uint8_t index, bool clockwise) { - if (clockwise) { - tap_code(KC_VOLU); - } else { - tap_code(KC_VOLD); - } - //return true; //set to return false to counteract enabled encoder in pro.c - return false; -} - -bool rgb_matrix_indicators_user(void) { - if (IS_LAYER_ON(_TRAN)) { - rgb_matrix_set_color_all(_TRAN_COLOR_RGB); - } else if (IS_LAYER_ON(_GAME)) { - rgb_matrix_set_color_all(_GAME_COLOR_RGB); - } else if (IS_LAYER_ON(_BASE)) { - rgb_matrix_set_color_all(_BASE_COLOR_RGB); - } - - if (host_keyboard_led_state().caps_lock) { - for (uint8_t i = 0; i < RGB_MATRIX_LED_COUNT; ++i) { - if (HAS_ANY_FLAGS(g_led_config.flags[i], LED_FLAG_UNDERGLOW)) { - rgb_matrix_set_color(i, _CAPS_COLOR_RGB); - } - } - } - return false; -} diff --git a/keyboards/gmmk/pro/rev1/ansi/keymaps/hachetman/config.h b/keyboards/gmmk/pro/rev1/ansi/keymaps/hachetman/config.h deleted file mode 100644 index 845262b7e8..0000000000 --- a/keyboards/gmmk/pro/rev1/ansi/keymaps/hachetman/config.h +++ /dev/null @@ -1,22 +0,0 @@ -/* Copyright 2021 Andre Brait - * - * This program is free software: you can redistribute it and/or modify - * it under the terms of the GNU General Public License as published by - * the Free Software Foundation, either version 2 of the License, or - * (at your option) any later version. - * - * This program is distributed in the hope that it will be useful, - * but WITHOUT ANY WARRANTY; without even the implied warranty of - * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the - * GNU General Public License for more details. - * - * You should have received a copy of the GNU General Public License - * along with this program. If not, see <http://www.gnu.org/licenses/>. - */ - -#pragma once - -#ifdef RGB_MATRIX_ENABLE - #define RGB_MATRIX_TIMEOUT 1200000 // 20 minutes (20 * 60 * 1000ms) - #define RGB_DISABLE_WHEN_USB_SUSPENDED -#endif diff --git a/keyboards/gmmk/pro/rev1/ansi/keymaps/hachetman/keymap.c b/keyboards/gmmk/pro/rev1/ansi/keymaps/hachetman/keymap.c deleted file mode 100644 index 3b378ba572..0000000000 --- a/keyboards/gmmk/pro/rev1/ansi/keymaps/hachetman/keymap.c +++ /dev/null @@ -1,309 +0,0 @@ -/* Copyright 2021 Glorious, LLC <salman@pcgamingrace.com> - Copyright 2021 Andre Brait <andrebrait@gmail.com> - -This program is free software: you can redistribute it and/or modify -it under the terms of the GNU General Public License as published by -the Free Software Foundation, either version 2 of the License, or -(at your option) any later version. - -This program is distributed in the hope that it will be useful, -but WITHOUT ANY WARRANTY; without even the implied warranty of -MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the -GNU General Public License for more details. - -You should have received a copy of the GNU General Public License -along with this program. If not, see <http://www.gnu.org/licenses/>. -*/ - -#include QMK_KEYBOARD_H - -#ifdef RGB_MATRIX_ENABLE - #ifndef RGB_CONFIRMATION_BLINKING_TIME - #define RGB_CONFIRMATION_BLINKING_TIME 2000 // 2 seconds - #endif -#endif // RGB_MATRIX_ENABLE - -// clang-format off -const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = { - -// ESC F1 F2 F3 F4 F5 F6 F7 F8 F9 F10 F11 F12 Del Rotary(Play/Pause) -// ~ 1 2 3 4 5 6 7 8 9 0 - (=) BackSpc Home -// Tab Q W E R T Y U I O P [ ] \ PgUp -// Caps A S D F G H J K L ; " Enter PgDn -// Sh_L Z X C V B N M , . ? Sh_R Up End -// Ct_L Win_L Alt_L SPACE Alt_R FN Ct_R Left Down Right - - - // The FN key by default maps to a momentary toggle to layer 1 to provide access to the QK_BOOT key (to put the board into bootloader mode). Without - // this mapping, you have to open the case to hit the button on the bottom of the PCB (near the USB cable attachment) while plugging in the USB - // cable to get the board into bootloader mode - definitely not fun when you're working on your QMK builds. Remove this and put it back to KC_RGUI - // if that's your preference. - // - // To put the keyboard in bootloader mode, use FN+backslash. If you accidentally put it into bootloader, you can just unplug the USB cable and - // it'll be back to normal when you plug it back in. - // - // This keyboard defaults to 6KRO instead of NKRO for compatibility reasons (some KVMs and BIOSes are incompatible with NKRO). - // Since this is, among other things, a "gaming" keyboard, a key combination to enable NKRO on the fly is provided for convenience. - // Press Fn+N to toggle between 6KRO and NKRO. This setting is persisted to the EEPROM and thus persists between restarts. - [0] = LAYOUT( - 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_DEL, KC_MUTE, - 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_HOME, - 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_PGUP, - KC_CAPS, KC_A, KC_S, KC_D, KC_F, KC_G, KC_H, KC_J, KC_K, KC_L, KC_SCLN, KC_QUOT, KC_ENT, KC_PGDN, - 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, KC_END, - KC_LCTL, KC_LGUI, KC_LALT, KC_SPC, KC_RALT, MO(1), KC_RCTL, KC_LEFT, KC_DOWN, KC_RGHT - ), - - [1] = LAYOUT( - _______, KC_MYCM, KC_WHOM, KC_CALC, KC_MSEL, KC_MPRV, KC_MNXT, KC_MPLY, KC_MSTP, KC_MUTE, KC_VOLD, KC_VOLU, _______, KC_INS, _______, - _______, RGB_TOG, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, KC_PSCR, - _______, _______, RGB_VAI, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, QK_BOOT, _______, - _______, _______, RGB_VAD, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, - _______, _______, RGB_HUI, _______, _______, _______, NK_TOGG, _______, _______, _______, _______, _______, RGB_MOD, _______, - _______, _______, _______, _______, _______, _______, _______, RGB_SPD, RGB_RMOD, RGB_SPI - ), - - -}; -// clang-format on - -const key_override_t up_key_override = ko_make_basic(MOD_MASK_CTRL, KC_UP, KC_PGUP); -const key_override_t dn_key_override = ko_make_basic(MOD_MASK_CTRL, KC_DOWN, KC_PGDN); - -// This globally defines all key overrides to be used -const key_override_t **key_overrides = (const key_override_t *[]){ - &up_key_override, - &dn_key_override, - NULL // Null terminate the array of overrides! -}; -#ifdef ENCODER_ENABLE -bool encoder_update_user(uint8_t index, bool clockwise) { - if (clockwise) { - tap_code(KC_VOLU); - } else { - tap_code(KC_VOLD); - } - //return true; //set to return false to counteract enabled encoder in pro.c - return false; -} -#endif // ENCODER_ENABLE - -#ifdef RGB_MATRIX_ENABLE - -/* Renaming those to make the purpose on this keymap clearer */ -#define LED_FLAG_CAPS LED_FLAG_NONE -#define LED_FLAG_EFFECTS LED_FLAG_INDICATOR - -static void set_rgb_caps_leds(void); - -#if RGB_CONFIRMATION_BLINKING_TIME > 0 -static uint16_t effect_started_time = 0; -static uint8_t r_effect = 0x0, g_effect = 0x0, b_effect = 0x0; -static void start_effects(void); - -/* The higher this is, the slower the blinking will be */ -#ifndef TIME_SELECTED_BIT - #define TIME_SELECTED_BIT 8 -#endif -#if TIME_SELECTED_BIT < 0 || TIME_SELECTED_BIT >= 16 - #error "TIME_SELECTED_BIT must be a positive integer smaller than 16" -#endif -#define effect_red() r_effect = 0xFF, g_effect = 0x0, b_effect = 0x0 -#define effect_green() r_effect = 0x0, g_effect = 0xFF, b_effect = 0x0 -#endif // RGB_CONFIRMATION_BLINKING_TIME > 0 - -bool led_update_user(led_t led_state) { - if (led_state.caps_lock) { - if (!rgb_matrix_is_enabled()) { - /* Turn ON the RGB Matrix for CAPS LOCK */ - rgb_matrix_set_flags(LED_FLAG_CAPS); - rgb_matrix_enable(); - } - } else if (rgb_matrix_get_flags() == LED_FLAG_CAPS) { - /* RGB Matrix was only ON because of CAPS LOCK. Turn it OFF. */ - rgb_matrix_set_flags(LED_FLAG_ALL); - rgb_matrix_disable(); - } - return true; -} - -bool process_record_user(uint16_t keycode, keyrecord_t *record) { - switch (keycode) { - #ifdef NKRO_ENABLE - #if RGB_CONFIRMATION_BLINKING_TIME > 0 - case NK_TOGG: - if (record->event.pressed) { - if (keymap_config.nkro) { - /* Turning NKRO OFF */ - effect_red(); - } else { - /* Turning NKRO ON */ - effect_green(); - } - start_effects(); - } - break; - case NK_ON: - if (record->event.pressed) { - if (!keymap_config.nkro) { - /* Turning NKRO ON */ - effect_green(); - start_effects(); - } - } - break; - case NK_OFF: - if (record->event.pressed) { - if (keymap_config.nkro) { - /* Turning NKRO OFF */ - effect_red(); - start_effects(); - } - } - break; - #endif // RGB_CONFIRMATION_BLINKING_TIME > 0 - #endif // NKRO_ENABLE - case RGB_MOD: - case RGB_RMOD: - case RGB_HUI: - case RGB_HUD: - case RGB_SAI: - case RGB_SAD: - case RGB_VAI: - case RGB_VAD: - case RGB_SPI: - case RGB_SPD: - if (record->event.pressed) { - if (rgb_matrix_get_flags() != LED_FLAG_ALL) { - /* Ignore changes to RGB settings while only it's supposed to be OFF */ - return false; - } - } - break; - case RGB_TOG: - if (record->event.pressed) { - if (rgb_matrix_is_enabled()) { - switch (rgb_matrix_get_flags()) { - #if RGB_CONFIRMATION_BLINKING_TIME > 0 - case LED_FLAG_EFFECTS: - #endif - case LED_FLAG_CAPS: - /* Turned ON because of EFFECTS or CAPS, is actually OFF */ - /* Change to LED_FLAG_ALL to signal it's really ON */ - rgb_matrix_set_flags(LED_FLAG_ALL); - /* Will be re-enabled by the processing of the toggle */ - rgb_matrix_disable_noeeprom(); - break; - case LED_FLAG_ALL: - /* Is actually ON */ - #if RGB_CONFIRMATION_BLINKING_TIME > 0 - if (effect_started_time > 0) { - /* Signal EFFECTS */ - rgb_matrix_set_flags(LED_FLAG_EFFECTS); - /* Will be re-enabled by the processing of the toggle */ - rgb_matrix_disable_noeeprom(); - } else - #endif - if (host_keyboard_led_state().caps_lock) { - /* Signal CAPS */ - rgb_matrix_set_flags(LED_FLAG_CAPS); - /* Will be re-enabled by the processing of the toggle */ - rgb_matrix_disable_noeeprom(); - } - break; - } - } - } - break; - } - return true; -} - - -bool rgb_matrix_indicators_user(void) { - #if RGB_CONFIRMATION_BLINKING_TIME > 0 - if (effect_started_time > 0) { - /* Render blinking EFFECTS */ - const uint16_t deltaTime = sync_timer_elapsed(effect_started_time); - if (deltaTime <= RGB_CONFIRMATION_BLINKING_TIME) { - const uint8_t led_state = ((~deltaTime) >> TIME_SELECTED_BIT) & 0x01; - const uint8_t val_r = led_state * r_effect; - const uint8_t val_g = led_state * g_effect; - const uint8_t val_b = led_state * b_effect; - rgb_matrix_set_color_all(val_r, val_g, val_b); - if (host_keyboard_led_state().caps_lock) { - set_rgb_caps_leds(); - } - return; - } else { - /* EFFECTS duration is finished */ - effect_started_time = 0; - if (rgb_matrix_get_flags() == LED_FLAG_EFFECTS) { - /* It was turned ON because of EFFECTS */ - if (host_keyboard_led_state().caps_lock) { - /* CAPS is still ON. Demote to CAPS */ - rgb_matrix_set_flags(LED_FLAG_CAPS); - } else { - /* There is nothing else keeping RGB enabled. Reset flags and turn if off. */ - rgb_matrix_set_flags(LED_FLAG_ALL); - rgb_matrix_disable_noeeprom(); - } - } - } - } - #endif // RGB_CONFIRMATION_BLINKING_TIME > 0 - if (rgb_matrix_get_flags() == LED_FLAG_CAPS) { - rgb_matrix_set_color_all(0x0, 0x0, 0x0); - } - if (host_keyboard_led_state().caps_lock) { - set_rgb_caps_leds(); - } - return false; -} - -#if RGB_CONFIRMATION_BLINKING_TIME > 0 -static void start_effects(void) { - effect_started_time = sync_timer_read(); - if (!rgb_matrix_is_enabled()) { - /* Turn it ON, signal the cause (EFFECTS) */ - rgb_matrix_set_flags(LED_FLAG_EFFECTS); - rgb_matrix_enable_noeeprom(); - } else if (rgb_matrix_get_flags() == LED_FLAG_CAPS) { - /* It's already ON, promote the cause from CAPS to EFFECTS */ - rgb_matrix_set_flags(LED_FLAG_EFFECTS); - } -} -#endif // RGB_CONFIRMATION_BLINKING_TIME > 0 - -// RGB led number layout, function of the key - -// 67, led 01 0, ESC 6, F1 12, F2 18, F3 23, F4 28, F5 34, F6 39, F7 44, F8 50, F9 56, F10 61, F11 66, F12 69, Prt Rotary(Mute) 68, led 12 -// 70, led 02 1, ~ 7, 1 13, 2 19, 3 24, 4 29, 5 35, 6 40, 7 45, 8 51, 9 57, 0 62, -_ 78, (=+) 85, BackSpc 72, Home 71, led 13 -// 73, led 03 2, Tab 8, Q 14, W 20. E 25, R 30, T 36, Y 41, U 46, I 52, O 58, P 63, [{ 89, ]} 93, \| 75, PgUp 74, led 14 -// 76, led 04 3, Caps 9, A 15, S 21, D 26, F 31, G 37, H 42, J 47, K 53, L 59, ;: 64, '" 96, Enter 86, PgDn 77, led 15 -// 80, led 05 4, Sh_L 10, Z 16, X 22, C 27, V 32, B 38, N 43, M 48, ,< 54, .< 60, /? 90, Sh_R 94, Up 82, End 81, led 16 -// 83, led 06 5, Ct_L 11,Win_L 17, Alt_L 33, SPACE 49, Alt_R 55, FN 65, Ct_R 95, Left 97, Down 79, Right 84, led 17 -// 87, led 07 88, led 18 -// 91, led 08 92, led 19 - -static void set_rgb_caps_leds(void) { - rgb_matrix_set_color(67, 0xFF, 0x0, 0x0); // Left side LED 1 - rgb_matrix_set_color(68, 0xFF, 0x0, 0x0); // Right side LED 1 - rgb_matrix_set_color(70, 0xFF, 0x0, 0x0); // Left side LED 2 - rgb_matrix_set_color(71, 0xFF, 0x0, 0x0); // Right side LED 2 - rgb_matrix_set_color(73, 0xFF, 0x0, 0x0); // Left side LED 3 - rgb_matrix_set_color(74, 0xFF, 0x0, 0x0); // Right side LED 3 - rgb_matrix_set_color(76, 0xFF, 0x0, 0x0); // Left side LED 4 - rgb_matrix_set_color(77, 0xFF, 0x0, 0x0); // Right side LED 4 - rgb_matrix_set_color(80, 0xFF, 0x0, 0x0); // Left side LED 5 - rgb_matrix_set_color(81, 0xFF, 0x0, 0x0); // Right side LED 5 - rgb_matrix_set_color(83, 0xFF, 0x0, 0x0); // Left side LED 6 - rgb_matrix_set_color(84, 0xFF, 0x0, 0x0); // Right side LED 6 - rgb_matrix_set_color(87, 0xFF, 0x0, 0x0); // Left side LED 7 - rgb_matrix_set_color(88, 0xFF, 0x0, 0x0); // Right side LED 7 - rgb_matrix_set_color(91, 0xFF, 0x0, 0x0); // Left side LED 8 - rgb_matrix_set_color(92, 0xFF, 0x0, 0x0); // Right side LED 8 - rgb_matrix_set_color(3, 0xFF, 0x0, 0x0); // CAPS LED -} - -#endif // RGB_MATRIX_ENABLE diff --git a/keyboards/gmmk/pro/rev1/ansi/keymaps/hachetman/readme.md b/keyboards/gmmk/pro/rev1/ansi/keymaps/hachetman/readme.md deleted file mode 100644 index bc8c580dbb..0000000000 --- a/keyboards/gmmk/pro/rev1/ansi/keymaps/hachetman/readme.md +++ /dev/null @@ -1,26 +0,0 @@ -# hachetmans's GMMK Pro layout - -This is pretty much the stock layout with a few things moved around. -It basically reflects my needs for both Delete and Insert being readily available for coding, as well as a full Home/PgUp/PgDwn/End column. - -The differences are as follows: - -- Disabled Mouse Keys (to fix issues with KVM switches and also because they're not used here anyway) -- Short DEBOUNCE time (5 ms) -- Per-key debounce algorithm (sym_defer_pk) -- RGB turns off after 20 minutes of inactivity -- RGB turns off when USB is suspended -- Layer 0: - - Print Screen (default) -> Delete - - Delete (default) -> Home -- Layer 1 (accessed by pressing Fn): - - Fn + Delete -> Insert - - Fn + Home -> Print Screen -- override CTRL + UP -> PGUP -- override CTRL + DOWN -> PGDN - -This keymap also includes CAPS LOCK ON indicator.\ -All left and right side LEDs, and the Caps key LED will turn solid red while CAPS LOCK is ON. - -No other changes have been made. \ -The other keys on each layer have been kept intact. diff --git a/keyboards/gmmk/pro/rev1/ansi/keymaps/hachetman/rules.mk b/keyboards/gmmk/pro/rev1/ansi/keymaps/hachetman/rules.mk deleted file mode 100644 index 9995f3f4d2..0000000000 --- a/keyboards/gmmk/pro/rev1/ansi/keymaps/hachetman/rules.mk +++ /dev/null @@ -1,5 +0,0 @@ -# Enable additional features. - -DEBOUNCE_TYPE = sym_defer_pk -MOUSEKEY_ENABLE = no -KEY_OVERRIDE_ENABLE = yes diff --git a/keyboards/gmmk/pro/rev1/ansi/keymaps/jackkenney/keymap.c b/keyboards/gmmk/pro/rev1/ansi/keymaps/jackkenney/keymap.c deleted file mode 100644 index 1bedcab41f..0000000000 --- a/keyboards/gmmk/pro/rev1/ansi/keymaps/jackkenney/keymap.c +++ /dev/null @@ -1,67 +0,0 @@ -/* Copyright 2021 Glorious, LLC <salman@pcgamingrace.com> - -This program is free software: you can redistribute it and/or modify -it under the terms of the GNU General Public License as published by -the Free Software Foundation, either version 2 of the License, or -(at your option) any later version. - -This program is distributed in the hope that it will be useful, -but WITHOUT ANY WARRANTY; without even the implied warranty of -MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the -GNU General Public License for more details. - -You should have received a copy of the GNU General Public License -along with this program. If not, see <http://www.gnu.org/licenses/>. -*/ - -#include QMK_KEYBOARD_H - -const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = { - - // ESC F1 F2 F3 F4 F5 F6 F7 F8 F9 F10 F11 F12 Prt Rotary(Mute) - // ~ 1 2 3 4 5 6 7 8 9 0 - (=) BackSpc Del - // Tab Q W E R T Y U I O P [ ] \ PgUp - // Caps A S D F G H J K L ; " Enter PgDn - // Sh_L Z X C V B N M , . ? Sh_R Up End - // Ct_L Win_L Alt_L SPACE Alt_R FN Ct_R Left Down Right - - - // The FN key by default maps to a momentary toggle to layer 1 to provide access to the QK_BOOT key (to put the board into bootloader mode). Without - // this mapping, you have to open the case to hit the button on the bottom of the PCB (near the USB cable attachment) while plugging in the USB - // cable to get the board into bootloader mode - definitely not fun when you're working on your QMK builds. Remove this and put it back to KC_RGUI - // if that's your preference. - // - // To put the keyboard in bootloader mode, use FN+backslash. If you accidentally put it into bootloader, you can just unplug the USB cable and - // it'll be back to normal when you plug it back in. - [0] = LAYOUT( - 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_DEL, KC_MUTE, - 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_PGUP, - 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_PGDN, - KC_CAPS, KC_A, KC_S, KC_D, KC_F, KC_G, KC_H, KC_J, KC_K, KC_L, KC_SCLN, KC_QUOT, KC_ENT, KC_HOME, - 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, KC_END, - KC_LCTL, KC_LGUI, KC_LALT, KC_SPC, KC_RALT, MO(1), KC_RCTL, KC_LEFT, KC_DOWN, KC_RGHT - ), - - [1] = LAYOUT( - _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, KC_INS, KC_PSCR, - _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, - _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, QK_BOOT, _______, - KC_INS, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, - _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, - _______, _______, _______, QK_BOOT, KC_RGUI, _______, _______, _______, _______, _______ - ), - - -}; - - -bool encoder_update_user(uint8_t index, bool clockwise) { - if (clockwise) { - tap_code(KC_VOLU); - } - else { - tap_code(KC_VOLD); - } - //return true; //set to return false to counteract enabled encoder in pro.c - return false; -} diff --git a/keyboards/gmmk/pro/rev1/ansi/keymaps/lalitmaganti/config.h b/keyboards/gmmk/pro/rev1/ansi/keymaps/lalitmaganti/config.h deleted file mode 100644 index 74c018f7f1..0000000000 --- a/keyboards/gmmk/pro/rev1/ansi/keymaps/lalitmaganti/config.h +++ /dev/null @@ -1,19 +0,0 @@ -/* Copyright 2021 Lalit Maganti - -This program is free software: you can redistribute it and/or modify -it under the terms of the GNU General Public License as published by -the Free Software Foundation, either version 2 of the License, or -(at your option) any later version. - -This program is distributed in the hope that it will be useful, -but WITHOUT ANY WARRANTY; without even the implied warranty of -MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the -GNU General Public License for more details. - -You should have received a copy of the GNU General Public License -along with this program. If not, see <http://www.gnu.org/licenses/>. -*/ - -#pragma once - -#define RGB_DISABLE_WHEN_USB_SUSPENDED
\ No newline at end of file diff --git a/keyboards/gmmk/pro/rev1/ansi/keymaps/lalitmaganti/keymap.c b/keyboards/gmmk/pro/rev1/ansi/keymaps/lalitmaganti/keymap.c deleted file mode 100644 index 7ec0e8c4b6..0000000000 --- a/keyboards/gmmk/pro/rev1/ansi/keymaps/lalitmaganti/keymap.c +++ /dev/null @@ -1,92 +0,0 @@ -/* Copyright 2021 Lalit Maganti - -This program is free software: you can redistribute it and/or modify -it under the terms of the GNU General Public License as published by -the Free Software Foundation, either version 2 of the License, or -(at your option) any later version. - -This program is distributed in the hope that it will be useful, -but WITHOUT ANY WARRANTY; without even the implied warranty of -MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the -GNU General Public License for more details. - -You should have received a copy of the GNU General Public License -along with this program. If not, see <http://www.gnu.org/licenses/>. -*/ - -#include QMK_KEYBOARD_H - -#ifdef PROGRAMMABLE_BUTTON_ENABLE -#define L1_NUM1 QK_PROGRAMMABLE_BUTTON_1 -#define L1_NUM2 QK_PROGRAMMABLE_BUTTON_2 -#define L1_NUM3 QK_PROGRAMMABLE_BUTTON_3 -#define L1_NUM4 QK_PROGRAMMABLE_BUTTON_4 -#define L1_NUM5 QK_PROGRAMMABLE_BUTTON_5 -#define L1_NUM6 QK_PROGRAMMABLE_BUTTON_6 -#define L1_NUM7 QK_PROGRAMMABLE_BUTTON_7 -#define L1_NUM8 QK_PROGRAMMABLE_BUTTON_8 -#define L1_NUM9 QK_PROGRAMMABLE_BUTTON_9 -#else -#define L1_NUM1 _______ -#define L1_NUM2 _______ -#define L1_NUM3 _______ -#define L1_NUM4 _______ -#define L1_NUM5 _______ -#define L1_NUM6 _______ -#define L1_NUM7 _______ -#define L1_NUM8 _______ -#define L1_NUM9 _______ -#endif - - -const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = { - [0] = LAYOUT( - 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_DEL, KC_MUTE, - 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_HOME, - 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_END, - KC_CAPS, KC_A, KC_S, KC_D, KC_F, KC_G, KC_H, KC_J, KC_K, KC_L, KC_SCLN, KC_QUOT, KC_ENT, KC_PGUP, - 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, KC_PGDN, - KC_LCTL, KC_LGUI, KC_LALT, KC_SPC, KC_RALT, MO(1), KC_RCTL, KC_LEFT, KC_DOWN, KC_RGHT - ), - - [1] = LAYOUT( - _______, KC_F13, KC_F14, KC_F15, KC_F16, KC_F17, KC_F18, KC_F19, KC_F20, KC_F21, KC_F22, KC_F23, KC_F24, RGB_TOG, _______, - _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, - _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, QK_BOOT, _______, - _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, - _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, - _______, _______, _______, _______, _______, _______, _______, _______, _______, _______ - ), -}; - -bool encoder_update_user(uint8_t index, bool clockwise) { - if (clockwise) { - tap_code_delay(KC_VOLU, 10); - } else { - tap_code_delay(KC_VOLD, 10); - } - return false; -} - - -#ifdef RGB_MATRIX_ENABLE - -static void set_rgb_side_leds(void); - -static void set_rgb_side_leds(void) { - rgb_matrix_set_color(67, RGB_WHITE); // Left side LED 1 - rgb_matrix_set_color(68, RGB_WHITE); // Right side LED 1 - rgb_matrix_set_color(91, RGB_WHITE); // Left side LED 8 - rgb_matrix_set_color(92, RGB_WHITE); // Right side LED 8 -} - -bool rgb_matrix_indicators_user(void) { - rgb_matrix_set_color_all(0x0, 0x0, 0x0); - if (host_keyboard_led_state().caps_lock) { - rgb_matrix_set_color(3, RGB_WHITE); // CAPS - } - set_rgb_side_leds(); - return false; -} - -#endif diff --git a/keyboards/gmmk/pro/rev1/ansi/keymaps/lalitmaganti/rules.mk b/keyboards/gmmk/pro/rev1/ansi/keymaps/lalitmaganti/rules.mk deleted file mode 100644 index 0a5b666e85..0000000000 --- a/keyboards/gmmk/pro/rev1/ansi/keymaps/lalitmaganti/rules.mk +++ /dev/null @@ -1 +0,0 @@ -MOUSEKEY_ENABLE = no diff --git a/keyboards/gmmk/pro/rev1/ansi/keymaps/macos/config.h b/keyboards/gmmk/pro/rev1/ansi/keymaps/macos/config.h deleted file mode 100644 index f37ff59c44..0000000000 --- a/keyboards/gmmk/pro/rev1/ansi/keymaps/macos/config.h +++ /dev/null @@ -1,80 +0,0 @@ -/* Copyright 2021 zvuc <https://github.com/zvuc> - * - * This program is free software: you can redistribute it and/or modify - * it under the terms of the GNU General Public License as published by - * the Free Software Foundation, either version 2 of the License, or - * (at your option) any later version. - * - * This program is distributed in the hope that it will be useful, - * but WITHOUT ANY WARRANTY; without even the implied warranty of - * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the - * GNU General Public License for more details. - * - * You should have received a copy of the GNU General Public License - * along with this program. If not, see <http://www.gnu.org/licenses/>. - */ - -#pragma once - -// At the time of this, there are 41 effects! That may be a bit too many to cycle through - keeping what I believe is the best. -#ifdef RGB_MATRIX_ENABLE - #define RGB_MATRIX_TIMEOUT 1200000 // 20 minutes (20 * 60 * 1000ms) - -// #define RGB_MATRIX_DEFAULT_MODE RGB_MATRIX_SOLID_COLOR - -// Below added per: https://beta.docs.qmk.fm/using-qmk/hardware-features/lighting/feature_rgb_matrix#suspended-state-id-suspended-state - #define RGB_DISABLE_WHEN_USB_SUSPENDED - -// Effects - #define RGB_MATRIX_FRAMEBUFFER_EFFECTS // Heatmap, Rain - #define RGB_MATRIX_KEYPRESSES // REACTIVE, SPLASH modes - - // Disable effects you don't like. - // Soon, you'll have to explicitly enable effects you want: https://github.com/qmk/qmk_firmware/pull/13758 - // #define DISABLE_RGB_MATRIX_SOLID_COLOR, // Static single hue, no speed support - // #define DISABLE_RGB_MATRIX_ALPHAS_MODS, // Static dual hue, speed is hue for secondary hue - // #define DISABLE_RGB_MATRIX_GRADIENT_UP_DOWN, // Static gradient top to bottom, speed controls how much gradient changes - // #define DISABLE_RGB_MATRIX_GRADIENT_LEFT_RIGHT, // Static gradient left to right, speed controls how much gradient changes - // #define DISABLE_RGB_MATRIX_BREATHING, // Single hue brightness cycling animation - // #define DISABLE_RGB_MATRIX_BAND_SAT, // Single hue band fading saturation scrolling left to right - // #define DISABLE_RGB_MATRIX_BAND_VAL, // Single hue band fading brightness scrolling left to right - // #define DISABLE_RGB_MATRIX_BAND_PINWHEEL_SAT, // Single hue 3 blade spinning pinwheel fades saturation - // #define DISABLE_RGB_MATRIX_BAND_PINWHEEL_VAL, // Single hue 3 blade spinning pinwheel fades brightness - // #define DISABLE_RGB_MATRIX_BAND_SPIRAL_SAT, // Single hue spinning spiral fades saturation - // #define DISABLE_RGB_MATRIX_BAND_SPIRAL_VAL, // Single hue spinning spiral fades brightness - // #define DISABLE_RGB_MATRIX_CYCLE_ALL, // Full keyboard solid hue cycling through full gradient - // #define DISABLE_RGB_MATRIX_CYCLE_LEFT_RIGHT, // Full gradient scrolling left to right - // #define DISABLE_RGB_MATRIX_CYCLE_UP_DOWN, // Full gradient scrolling top to bottom - // #define DISABLE_RGB_MATRIX_CYCLE_OUT_IN, // Full gradient scrolling out to in - // #define DISABLE_RGB_MATRIX_CYCLE_OUT_IN_DUAL, // Full dual gradients scrolling out to in - // #define DISABLE_RGB_MATRIX_RAINBOW_MOVING_CHEVRON, // Full gradent Chevron shapped scrolling left to right - // #define DISABLE_RGB_MATRIX_CYCLE_PINWHEEL, // Full gradient spinning pinwheel around center of keyboard - // #define DISABLE_RGB_MATRIX_CYCLE_SPIRAL, // Full gradient spinning spiral around center of keyboard - // #define DISABLE_RGB_MATRIX_DUAL_BEACON, // Full gradient spinning around center of keyboard - // #define DISABLE_RGB_MATRIX_RAINBOW_BEACON, // Full tighter gradient spinning around center of keyboard - // #define DISABLE_RGB_MATRIX_RAINBOW_PINWHEELS, // Full dual gradients spinning two halfs of keyboard - // #define DISABLE_RGB_MATRIX_RAINDROPS, // Randomly changes a single key's hue - // #define DISABLE_RGB_MATRIX_JELLYBEAN_RAINDROPS, // Randomly changes a single key's hue and saturation - // #define DISABLE_RGB_MATRIX_HUE_BREATHING, // Hue shifts up a slight ammount at the same time, then shifts back - // #define DISABLE_RGB_MATRIX_HUE_PENDULUM, // Hue shifts up a slight ammount in a wave to the right, then back to the left - // #define DISABLE_RGB_MATRIX_HUE_WAVE, // Hue shifts up a slight ammount and then back down in a wave to the right - - // Framebuffer effects - // #define DISABLE_RGB_MATRIX_TYPING_HEATMAP, // How hot is your WPM! - // #define DISABLE_RGB_MATRIX_DIGITAL_RAIN, // That famous computer simulation - - // Reactive effects - // #define DISABLE_RGB_MATRIX_SOLID_REACTIVE_SIMPLE, // Pulses keys hit to hue & value then fades value out - // #define DISABLE_RGB_MATRIX_SOLID_REACTIVE, // Static single hue, pulses keys hit to shifted hue then fades to current hue - // #define DISABLE_RGB_MATRIX_SOLID_REACTIVE_WIDE // Hue & value pulse near a single key hit then fades value out - // #define DISABLE_RGB_MATRIX_SOLID_REACTIVE_MULTIWIDE // Hue & value pulse near multiple key hits then fades value out - // #define DISABLE_RGB_MATRIX_SOLID_REACTIVE_CROSS // Hue & value pulse the same column and row of a single key hit then fades value out - // #define DISABLE_RGB_MATRIX_SOLID_REACTIVE_MULTICROSS // Hue & value pulse the same column and row of multiple key hits then fades value out - // #define DISABLE_RGB_MATRIX_SOLID_REACTIVE_NEXUS // Hue & value pulse away on the same column and row of a single key hit then fades value out - // #define DISABLE_RGB_MATRIX_SOLID_REACTIVE_MULTINEXUS // Hue & value pulse away on the same column and row of multiple key hits then fades value out - // #define DISABLE_RGB_MATRIX_SPLASH, // Full gradient & value pulse away from a single key hit then fades value out - // #define DISABLE_RGB_MATRIX_MULTISPLASH, // Full gradient & value pulse away from multiple key hits then fades value out - // #define DISABLE_RGB_MATRIX_SOLID_SPLASH, // Hue & value pulse away from a single key hit then fades value out - // #define DISABLE_RGB_MATRIX_SOLID_MULTISPLASH, // Hue & value pulse away from multiple key hits then fades value out - -#endif diff --git a/keyboards/gmmk/pro/rev1/ansi/keymaps/macos/keymap.c b/keyboards/gmmk/pro/rev1/ansi/keymaps/macos/keymap.c deleted file mode 100644 index 60bd53f407..0000000000 --- a/keyboards/gmmk/pro/rev1/ansi/keymaps/macos/keymap.c +++ /dev/null @@ -1,431 +0,0 @@ -/* Copyright 2021 Glorious, LLC <salman@pcgamingrace.com> - - GMMK Pro Standard keymap for macOS - by zvuc <https://github.com/zvuc> - - with code snippets from - Andre Brait <andrebrait@gmail.com>, stickandgum - -This program is free software: you can redistribute it and/or modify -it under the terms of the GNU General Public License as published by -the Free Software Foundation, either version 2 of the License, or -(at your option) any later version. - -This program is distributed in the hope that it will be useful, -but WITHOUT ANY WARRANTY; without even the implied warranty of -MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the -GNU General Public License for more details. - -You should have received a copy of the GNU General Public License -along with this program. If not, see <http://www.gnu.org/licenses/>. -*/ - -#include QMK_KEYBOARD_H - -enum my_keycodes { - LED_TLDE = SAFE_RANGE, - LED_1, - LED_2, - LED_3, - LED_4, - LED_5, - LED_6, - LED_7, - LED_8, - LED_9, - LED_0, - LED_MINS, - LED_EQL -}; - -#ifdef RGB_MATRIX_ENABLE - #ifndef RGB_CONFIRMATION_BLINKING_TIME - #define RGB_CONFIRMATION_BLINKING_TIME 2000 // 2 seconds - #endif -#endif // RGB_MATRIX_ENABLE - -// clang-format off -const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = { - -// ESC F1 F2 F3 F4 F5 F6 F7 F8 F9 F10 F11 F12 Eject Rotary(Mute) -// ~ 1 2 3 4 5 6 7 8 9 0 - (=) BackSpc Del -// Tab Q W E R T Y U I O P [ ] \ PgUp -// Caps A S D F G H J K L ; " Enter PgDn -// Sh_L Z X C V B N M , . ? Sh_R Up F13 -// Ct_L Opt_L Cmd_L SPACE Cmd_R Opt_R FN Left Down Right - - - // The FN key by default maps to a momentary toggle to layer 1 to provide access to the QK_BOOT key (to put the board into bootloader mode). Without - // this mapping, you have to open the case to hit the button on the bottom of the PCB (near the USB cable attachment) while plugging in the USB - // cable to get the board into bootloader mode - definitely not fun when you're working on your QMK builds. Remove this and put it back to KC_RGUI - // if that's your preference. - // - // To put the keyboard in bootloader mode, use FN+backslash. If you accidentally put it into bootloader, you can just unplug the USB cable and - // it'll be back to normal when you plug it back in. - // - // This keyboard defaults to 6KRO instead of NKRO for compatibility reasons (some KVMs and BIOSes are incompatible with NKRO). - // Since this is, among other things, a "gaming" keyboard, a key combination to enable NKRO on the fly is provided for convenience. - // Press Fn+N to toggle between 6KRO and NKRO. This setting is persisted to the EEPROM and thus persists between restarts. - [0] = LAYOUT( - KC_ESC, KC_BRID, KC_BRIU, KC_MSCTRL, KC_LNPD, RGB_VAD, RGB_VAI, KC_F7, KC_F8, KC_MRWD, KC_MPLY, KC_MFFD, KC_F12, KC_EJCT, KC_MUTE, - 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_DEL, - 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_PGUP, - KC_CAPS, KC_A, KC_S, KC_D, KC_F, KC_G, KC_H, KC_J, KC_K, KC_L, KC_SCLN, KC_QUOT, KC_ENT, KC_PGDN, - 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, KC_F13, - KC_LCTL, KC_LOPT, KC_LCMD, KC_SPC, KC_RCMD, KC_ROPT, MO(1), KC_LEFT, KC_DOWN, KC_RGHT - ), - - [1] = LAYOUT( - _______, KC_F1, KC_F2, KC_F3, KC_F4, KC_F5, KC_F6, KC_F7, KC_F8, KC_F9, KC_F10, KC_F11, KC_F12, _______, RGB_TOG, - LED_TLDE, LED_1, LED_2, LED_3, LED_4, LED_5, LED_6, LED_7, LED_8, LED_9, LED_0, LED_MINS, LED_EQL, _______, KC_PSCR, - _______, RGB_HUI, RGB_VAI, RGB_SAI, _______, _______, _______, _______, _______, _______, _______, _______, _______, QK_BOOT, _______, - _______, RGB_HUD, RGB_VAD, RGB_SAD, TG(2), _______, _______, _______, _______, _______, _______, _______, _______, _______, - _______, _______, _______, _______, _______, _______, NK_TOGG, _______, _______, _______, _______, _______, RGB_MOD, RGB_TOG, - _______, _______, _______, _______, _______, _______, _______, RGB_SPD, RGB_RMOD, RGB_SPI - ), - - // This is an alternative togglable layer to change default function row to standard F keys - [2] = LAYOUT( - _______, 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_F24, _______, - _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, - _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, - _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, - _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, - _______, _______, _______, _______, _______, _______, _______, _______, _______, _______ - ), - - -}; -// clang-format on - -#ifdef ENCODER_ENABLE - bool encoder_update_user(uint8_t index, bool clockwise) { - // https://beta.docs.qmk.fm/using-qmk/simple-keycodes/feature_advanced_keycodes#alt-escape-for-alt-tab-id-alt-escape-for-alt-tab - if (get_mods() & MOD_MASK_CTRL) { // If CTRL is held - uint8_t mod_state = get_mods(); // Store all modifiers that are held - unregister_mods(MOD_MASK_CTRL); // Immediately unregister the CRTL key (don't send CTRL-PgDn) - del_mods doesn't work here (not immediate) - if (clockwise) { - rgblight_increase_hue(); - } else { - rgblight_decrease_hue(); - } - set_mods(mod_state); // Add back in the CTRL key - so ctrl-key will work if ctrl was never released after paging. - } else if (get_mods() & MOD_MASK_ALT) { - uint8_t mod_state = get_mods(); - unregister_mods(MOD_MASK_ALT); - if (clockwise) { - rgblight_increase_sat(); - } else { - rgblight_decrease_sat(); - } - set_mods(mod_state); - } else if (get_mods() & MOD_MASK_GUI) { - uint8_t mod_state = get_mods(); - unregister_mods(MOD_MASK_GUI); - if (clockwise) { - rgblight_increase_val(); - } else { - rgblight_decrease_val(); - } - set_mods(mod_state); - } else if (get_mods() & MOD_MASK_SHIFT) { - uint8_t mod_state = get_mods(); - unregister_mods(MOD_MASK_SHIFT); - if (clockwise) { - rgblight_increase_speed(); - } else { - rgblight_decrease_speed(); - } - set_mods(mod_state); - } else if (clockwise) { // All else volume. - tap_code(KC_VOLU); - } else { - tap_code(KC_VOLD); - } - //return true; //set to return false to counteract enabled encoder in pro.c - return false; - } -#endif //ENCODER_ENABLE - -#ifdef RGB_MATRIX_ENABLE - - // Called on powerup and is the last _init that is run. - void keyboard_post_init_user(void) { - - int mods[35] = {0,2,3,4,5,11,17,33,49,55,65,95,97,79,94,85,93,96,90,69,92,67,76,80,91,75,86,68,77,81,92,28,34,39,44}; - int j; - - /* output each array element's value */ - for (j = 0; j < 35; j++ ) { - g_led_config.flags[mods[j]] = LED_FLAG_MODIFIER; - } - - if (!rgb_matrix_is_enabled()) { - rgb_matrix_enable(); - #ifdef CONSOLE_ENABLE - uprintf("ERROR! RGB Matrix Enabled and wrote to EEPROM! -How was the RGB Matrix Disabled?"); - #endif - } - } - - /* Renaming those to make the purpose on this keymap clearer */ - #define LED_FLAG_CAPS LED_FLAG_NONE - #define LED_FLAG_EFFECTS LED_FLAG_INDICATOR - - static void set_rgb_caps_leds(void); - - #if RGB_CONFIRMATION_BLINKING_TIME > 0 - static uint16_t effect_started_time = 0; - static uint8_t r_effect = 0x0, g_effect = 0x0, b_effect = 0x0; - static void start_effects(void); - - /* The higher this is, the slower the blinking will be */ - #ifndef TIME_SELECTED_BIT - #define TIME_SELECTED_BIT 8 - #endif - #if TIME_SELECTED_BIT < 0 || TIME_SELECTED_BIT >= 16 - #error "TIME_SELECTED_BIT must be a positive integer smaller than 16" - #endif - #define effect_red() r_effect = 0xFF, g_effect = 0x0, b_effect = 0x0 - #define effect_green() r_effect = 0x0, g_effect = 0xFF, b_effect = 0x0 - #endif // RGB_CONFIRMATION_BLINKING_TIME > 0 - - bool led_update_user(led_t led_state) { - if (led_state.caps_lock) { - if (!rgb_matrix_is_enabled()) { - /* Turn ON the RGB Matrix for CAPS LOCK */ - rgb_matrix_set_flags(LED_FLAG_CAPS); - rgb_matrix_enable(); - } - } else if (rgb_matrix_get_flags() == LED_FLAG_CAPS) { - /* RGB Matrix was only ON because of CAPS LOCK. Turn it OFF. */ - rgb_matrix_set_flags(LED_FLAG_ALL); - rgb_matrix_disable(); - } - return true; - } - - bool process_record_user(uint16_t keycode, keyrecord_t *record) { - switch (keycode) { - #ifdef NKRO_ENABLE - #if RGB_CONFIRMATION_BLINKING_TIME > 0 - case NK_TOGG: - if (record->event.pressed) { - if (keymap_config.nkro) { - /* Turning NKRO OFF */ - effect_red(); - } else { - /* Turning NKRO ON */ - effect_green(); - } - start_effects(); - } - break; - #endif // RGB_CONFIRMATION_BLINKING_TIME > 0 - #endif // NKRO_ENABLE - - #if RGB_CONFIRMATION_BLINKING_TIME > 0 - case TG(2): - if (record->event.pressed) { - if (IS_LAYER_OFF(2)) { - effect_red(); - } else { - effect_green(); - } - start_effects(); - } - break; - #endif // RGB_CONFIRMATION_BLINKING_TIME > 0 - - /* LED quick preset keys assignments */ - case LED_TLDE: - rgb_matrix_mode(RGB_MATRIX_SOLID_COLOR); // Can use RGB_M_P built-in keycode instead. - break; - case LED_1: - rgb_matrix_mode(RGB_MATRIX_ALPHAS_MODS); - break; - case LED_2: - rgb_matrix_mode(RGB_MATRIX_GRADIENT_UP_DOWN); - break; - case LED_3: - rgb_matrix_mode(RGB_MATRIX_JELLYBEAN_RAINDROPS); - break; - case LED_4: - rgb_matrix_mode(RGB_MATRIX_BAND_SAT); - break; - case LED_5: - rgb_matrix_mode(RGB_MATRIX_BAND_VAL); - break; - case LED_6: - rgb_matrix_mode(RGB_MATRIX_BAND_SPIRAL_VAL); - break; - case LED_7: - rgb_matrix_mode(RGB_MATRIX_CYCLE_LEFT_RIGHT); // Can use RGB_M_R built-in keycode instead. - break; - case LED_8: - rgb_matrix_mode(RGB_MATRIX_CYCLE_PINWHEEL); // Can use RGB_M_SW built-in keycode instead. - break; - case LED_9: - rgb_matrix_mode(RGB_MATRIX_BREATHING); // Can use RGB_M_B built-in keycode instead. - break; - - #ifdef RGB_MATRIX_KEYPRESSES // Reactive effects require RGB_MATRIX_KEYPRESSES in config.h - case LED_0: - rgb_matrix_mode(RGB_MATRIX_SOLID_REACTIVE_WIDE); - break; - #endif //RGB_MATRIX_KEYPRESSES - - #ifdef RGB_MATRIX_FRAMEBUFFER_EFFECTS // Heatmap and Rain require #define RGB_MATRIX_FRAMEBUFFER_EFFECTS in config.h - case LED_MINS: - rgb_matrix_mode(RGB_MATRIX_DIGITAL_RAIN); - break; - case LED_EQL: - rgb_matrix_mode(RGB_MATRIX_TYPING_HEATMAP); - break; - #endif //RGB_MATRIX_FRAMEBUFFER_EFFECTS - - - // case RGB_MOD: - // case RGB_RMOD: - // case RGB_HUI: - // case RGB_HUD: - // case RGB_SAI: - // case RGB_SAD: - // case RGB_VAI: - // case RGB_VAD: - // case RGB_SPI: - case RGB_SPD: - if (record->event.pressed) { - if (rgb_matrix_get_flags() != LED_FLAG_ALL) { - /* Ignore changes to RGB settings while only it's supposed to be OFF */ - return false; - } - } - break; - - case RGB_TOG: - // if (record->event.pressed) { - // if (rgb_matrix_get_flags() == LED_FLAG_ALL) { - // rgb_matrix_set_flags(LED_FLAG_NONE); - // rgb_matrix_set_color_all(0, 0, 0); - // } else { - // rgb_matrix_set_flags(LED_FLAG_ALL); - // } - // } - // return false; - if (record->event.pressed) { - if (rgb_matrix_is_enabled()) { - switch (rgb_matrix_get_flags()) { - #if RGB_CONFIRMATION_BLINKING_TIME > 0 - case LED_FLAG_EFFECTS: - #endif - case LED_FLAG_CAPS: - /* Turned ON because of EFFECTS or CAPS, is actually OFF */ - /* Change to LED_FLAG_ALL to signal it's really ON */ - rgb_matrix_set_flags(LED_FLAG_ALL); - /* Will be re-enabled by the processing of the toggle */ - rgb_matrix_disable_noeeprom(); - break; - case LED_FLAG_ALL: - /* Is actually ON */ - #if RGB_CONFIRMATION_BLINKING_TIME > 0 - if (effect_started_time > 0) { - /* Signal EFFECTS */ - rgb_matrix_set_flags(LED_FLAG_EFFECTS); - /* Will be re-enabled by the processing of the toggle */ - rgb_matrix_disable_noeeprom(); - } else - #endif - if (host_keyboard_led_state().caps_lock) { - /* Signal CAPS */ - rgb_matrix_set_flags(LED_FLAG_CAPS); - /* Will be re-enabled by the processing of the toggle */ - rgb_matrix_disable_noeeprom(); - } - break; - } - } - } - break; - - } - return true; - } - - - bool rgb_matrix_indicators_user(void) { - #if RGB_CONFIRMATION_BLINKING_TIME > 0 - if (effect_started_time > 0) { - /* Render blinking EFFECTS */ - uint16_t deltaTime = sync_timer_elapsed(effect_started_time); - if (deltaTime <= RGB_CONFIRMATION_BLINKING_TIME) { - uint8_t led_state = ((~deltaTime) >> TIME_SELECTED_BIT) & 0x01; - uint8_t val_r = led_state * r_effect; - uint8_t val_g = led_state * g_effect; - uint8_t val_b = led_state * b_effect; - rgb_matrix_set_color_all(val_r, val_g, val_b); - if (host_keyboard_led_state().caps_lock) { - set_rgb_caps_leds(); - } - return; - } else { - /* EFFECTS duration is finished */ - effect_started_time = 0; - if (rgb_matrix_get_flags() == LED_FLAG_EFFECTS) { - /* It was turned ON because of EFFECTS */ - if (host_keyboard_led_state().caps_lock) { - /* CAPS is still ON. Demote to CAPS */ - rgb_matrix_set_flags(LED_FLAG_CAPS); - } else { - /* There is nothing else keeping RGB enabled. Reset flags and turn if off. */ - rgb_matrix_set_flags(LED_FLAG_ALL); - rgb_matrix_disable_noeeprom(); - } - } - } - } - #endif // RGB_CONFIRMATION_BLINKING_TIME > 0 - if (rgb_matrix_get_flags() == LED_FLAG_CAPS) { - rgb_matrix_set_color_all(0x0, 0x0, 0x0); - } - if (host_keyboard_led_state().caps_lock) { - set_rgb_caps_leds(); - } - return false; - } - - #if RGB_CONFIRMATION_BLINKING_TIME > 0 - static void start_effects(void) { - effect_started_time = sync_timer_read(); - if (!rgb_matrix_is_enabled()) { - /* Turn it ON, signal the cause (EFFECTS) */ - rgb_matrix_set_flags(LED_FLAG_EFFECTS); - rgb_matrix_enable_noeeprom(); - } else if (rgb_matrix_get_flags() == LED_FLAG_CAPS) { - /* It's already ON, promote the cause from CAPS to EFFECTS */ - rgb_matrix_set_flags(LED_FLAG_EFFECTS); - } - } - #endif // RGB_CONFIRMATION_BLINKING_TIME > 0 - - static void set_rgb_caps_leds(void) { - rgb_matrix_set_color(67, 0xFF, 0x0, 0x0); // Left side LED 1 - rgb_matrix_set_color(68, 0xFF, 0x0, 0x0); // Right side LED 1 - rgb_matrix_set_color(70, 0xFF, 0x0, 0x0); // Left side LED 2 - rgb_matrix_set_color(71, 0xFF, 0x0, 0x0); // Right side LED 2 - rgb_matrix_set_color(73, 0xFF, 0x0, 0x0); // Left side LED 3 - rgb_matrix_set_color(74, 0xFF, 0x0, 0x0); // Right side LED 3 - rgb_matrix_set_color(76, 0xFF, 0x0, 0x0); // Left side LED 4 - rgb_matrix_set_color(77, 0xFF, 0x0, 0x0); // Right side LED 4 - rgb_matrix_set_color(80, 0xFF, 0x0, 0x0); // Left side LED 5 - rgb_matrix_set_color(81, 0xFF, 0x0, 0x0); // Right side LED 5 - rgb_matrix_set_color(83, 0xFF, 0x0, 0x0); // Left side LED 6 - rgb_matrix_set_color(84, 0xFF, 0x0, 0x0); // Right side LED 6 - rgb_matrix_set_color(87, 0xFF, 0x0, 0x0); // Left side LED 7 - rgb_matrix_set_color(88, 0xFF, 0x0, 0x0); // Right side LED 7 - rgb_matrix_set_color(91, 0xFF, 0x0, 0x0); // Left side LED 8 - rgb_matrix_set_color(92, 0xFF, 0x0, 0x0); // Right side LED 8 - rgb_matrix_set_color(3, 0xFF, 0x0, 0x0); // CAPS LED - } - -#endif // RGB_MATRIX_ENABLE diff --git a/keyboards/gmmk/pro/rev1/ansi/keymaps/macos/readme.md b/keyboards/gmmk/pro/rev1/ansi/keymaps/macos/readme.md deleted file mode 100644 index 8024e77cc1..0000000000 --- a/keyboards/gmmk/pro/rev1/ansi/keymaps/macos/readme.md +++ /dev/null @@ -1,85 +0,0 @@ -# GMMK Pro Standard Layout for macOS by zvuc - -As you may know, Glorious does not (yet) provide their Glorious Core software for macOS; so with stock firmware, there aren't any ways to customize layouts on the hardware level unless you turn to software-based override solutions such as [Karabiner Elements](https://karabiner-elements.pqrs.org/). This is my attempt to try to create the most macOS-like experience on the GMMK Pro, taking close notes from Apple's Magic Keyboard, also referencing code from other community keymaps. - -## Keymap -Layer 0 -<img width="1092" alt="Layer0" src="https://user-images.githubusercontent.com/2870726/132235505-64ac1c89-ecf9-49b5-a030-1d94389fc66d.png"> - -Layer 1 (Hold <kbd>Fn</kbd>) -<img width="1088" alt="Layer1" src="https://user-images.githubusercontent.com/2870726/133090831-5e84fb69-a8bf-463e-a8f6-f1f38a5901d6.png"> - -Layer 2 (Togglable alternative function row layout by pressing <kbd>Fn</kbd>+<kbd>F</kbd>) -<img width="1094" alt="Layer2" src="https://user-images.githubusercontent.com/2870726/133090841-0c6a8b16-bf46-4e6c-b8fa-79f213f95765.png"> - - -## Notable differences from stock key layout for Windows: -- <kbd>Delete</kbd> key placed right next to backspace (under rotary encoder) -- <kbd>F13</kbd> key for the bottommost row (Assign it to a shortcut you like in macOS preferences! [For example: "Emoji & Symbols" to bring up the emoji input popup instantly](https://user-images.githubusercontent.com/2870726/132237211-7e13c156-96a8-4a91-b215-28d310228feb.png)) -- <kbd>Eject</kbd> key for the last key in function row: Needed for macOS native global "Sleep" hotkey (<kbd>⌘</kbd><kbd>⌥</kbd><kbd>Eject</kbd>) - -## Notable Features -- VIA support -- Rotary Encoder support (Defaults to stock behavior Volume Up/Down) -- Standard order for macOS modifier keys: - * Left: <kbd>⌃ Control</kbd><kbd>⌥ Option</kbd><kbd>⌘ Command</kbd> - * Right: <kbd>⌘ Command</kbd><kbd>⌥ Option</kbd><kbd>Fn</kbd> -- Apple Magic Keyboard-like Function Row Mode (Toggle with <kbd>Fn</kbd>+<kbd>F</kbd>) - * <kbd>F1</kbd>: Decrease display brightness - * <kbd>F2</kbd>: Increase display brightness - * <kbd>F3</kbd>: Mission Control - * <kbd>F4</kbd>: Launchpad - * <kbd>F5</kbd>: Decrease keyboard backlight brightness - * <kbd>F6</kbd>: Increase keyboard backlight brightness - * <kbd>F7</kbd>: (none) - * <kbd>F8</kbd>: (none) - * <kbd>F9</kbd>: Media Rewind - * <kbd>F10</kbd>: Media Play/Pause - * <kbd>F11</kbd>: Media Fast Forward - * <kbd>F12</kbd>: (none) - -> #### NOTE -> - Media key mappings follow Apple Magic Keyboard except <kbd>F8</kbd> thru <kbd>F12</kbd>, where keys have been shifted by one to the right. It's because I wanted to get over the awkward gap between <kbd>F8</kbd> and <kbd>F9</kbd> that the GMMK Pro has—and also because we don't need dedicated keys for volume control when we have the more convenient rotary knob. -> - To access standard <kbd>F1</kbd> - <kbd>F12</kbd> keys, press the Function keys while holding <kbd>Fn</kbd>. -> - If you're planning to use Karabiner Elements, use the standard Function row mode (<kbd>F1</kbd> - <kbd>F12</kbd>) because Karabiner Elements always overrides function keys even if you want to just use simple or complex modifications, and it doesn't catch custom keys like Mission Control, Launchpad or <kbd>Eject</kbd>. (<kbd>Eject</kbd> is mapped as <kbd>F24</kbd> so you can replace it with 'Eject' within Karabiner.) - -## RGB Lighting -- Retains Glorious stock firmware key mappings for control - * <kbd>Fn</kbd><kbd>Up</kbd> / <kbd>Fn</kbd><kbd>Down</kbd>: Cycle presets - * <kbd>Fn</kbd><kbd>Left</kbd> / <kbd>Fn</kbd><kbd>Right</kbd>: Adjust speed - * <kbd>Fn</kbd><kbd>W</kbd> / <kbd>Fn</kbd><kbd>S</kbd>: Adjust brightness -- Quickly switch to popular presets: - * <kbd>Fn</kbd><kbd>`</kbd> : Solid color (no animation) - * <kbd>Fn</kbd><kbd>1</kbd> : Solid duotone (no animation) - <kbd>Shift</kbd><kbd>Knob</kbd> to change secondary color. - * <kbd>Fn</kbd><kbd>2</kbd> : Vertical gradient - <kbd>Shift</kbd><kbd>Knob</kbd> to change secondary color. - * <kbd>Fn</kbd><kbd>3</kbd> : "Jellybean Raindrops" - * <kbd>Fn</kbd><kbd>4</kbd> : Horizontal wipe with white backlight - * <kbd>Fn</kbd><kbd>5</kbd> : Horizontal wipe - * <kbd>Fn</kbd><kbd>6</kbd> : Single color pinwheel - * <kbd>Fn</kbd><kbd>7</kbd> : Horizontal rainbow - * <kbd>Fn</kbd><kbd>8</kbd> : Rainbow pinwheel - * <kbd>Fn</kbd><kbd>9</kbd> : Breathing - * <kbd>Fn</kbd><kbd>0</kbd> : Reactive (light up on keypress) - * <kbd>Fn</kbd><kbd>-</kbd> : "Digital Rain" - * <kbd>Fn</kbd><kbd>=</kbd> : "Heatmap" -- RGB turns off after 20 minutes of inactivity -- RGB turns off when USB is suspended / enters sleep -- <kbd>Caps Lock</kbd> toggle indicator (<kbd>Caps Lock</kbd> key and side lights will turn red) -- Easy RGB control using Rotary Encoder - - <kbd>Control</kbd>+<kbd>Rotate Knob</kbd>: Adjust hue - - <kbd>Option</kbd>+<kbd>Rotate Knob</kbd>: Adjust saturation - - <kbd>Command</kbd>+<kbd>Rotate Knob</kbd>: Adjust brightness - -> All latest QMK effects [(41 as of now)](https://beta.docs.qmk.fm/using-qmk/hardware-features/lighting/feature_rgb_matrix#rgb-matrix-effects-id-rgb-matrix-effects) are enabled by default and will apply in order when cycling through using <kbd>Fn</kbd><kbd>Up</kbd> / <kbd>Fn</kbd><kbd>Down</kbd>. You can disable specific effects by uncommenting (remove the `//` at the beginning of line) respective lines (ex: `#define DISABLE_RGB_MATRIX_BREATHING`) in `qmk_firmware/keyboards/gmmk/pro/ansi/keymaps/zvuc/config.h` then recompiling the firmware. - -## Other Features -- 1000hz polling rate -- Short DEBOUNCE time (5 ms) -- Per-key debounce algorithm (`sym_defer_pk`) -- NKRO toggle (<kbd>Fn</kbd>+<kbd>N</kbd>) - -## Warning regarding VIA support -When observing this keyboard firmware in VIA, some custom-implemented keys such as Mission Control/Launchpad and RGB preset shortcuts appear as keycodes such as `0x5d62`. **These must not be modified!** There is no way to get their default functionality back unless you re-flash the firmware through QMK Toolbox. - -## Download pre-compiled firmware binary file -[Download BIN file from here](https://github.com/zvuc/qmk_firmware/releases/tag/zvuc-1.0.1) diff --git a/keyboards/gmmk/pro/rev1/ansi/keymaps/macos/rules.mk b/keyboards/gmmk/pro/rev1/ansi/keymaps/macos/rules.mk deleted file mode 100644 index e9073d44a0..0000000000 --- a/keyboards/gmmk/pro/rev1/ansi/keymaps/macos/rules.mk +++ /dev/null @@ -1,4 +0,0 @@ -# Enable additional features. - -DEBOUNCE_TYPE = sym_defer_pk -VIA_ENABLE = yes diff --git a/keyboards/gmmk/pro/rev1/ansi/keymaps/mike1808/.gitignore b/keyboards/gmmk/pro/rev1/ansi/keymaps/mike1808/.gitignore deleted file mode 100644 index 03b2b46668..0000000000 --- a/keyboards/gmmk/pro/rev1/ansi/keymaps/mike1808/.gitignore +++ /dev/null @@ -1 +0,0 @@ -secrets.h diff --git a/keyboards/gmmk/pro/rev1/ansi/keymaps/mike1808/README.md b/keyboards/gmmk/pro/rev1/ansi/keymaps/mike1808/README.md deleted file mode 100644 index cb17239882..0000000000 --- a/keyboards/gmmk/pro/rev1/ansi/keymaps/mike1808/README.md +++ /dev/null @@ -1,19 +0,0 @@ -QMK layout for gmmk/pro -======================= - -## Secrets -The format is the same as [drashna's](../../../../users/drashna/readme_secrets.md) secrets implementation. Create a `secret.h` and define your secrets like this: - -```c -static const char* secrets[] = {"secret1", "secret2", "secret3", "secret4", "secret5"}; -``` - -## Rotary encoder knob -You can hookup your encoder functions by defining new encoder states in [encoder.h](./encoder.h), then in [encoder.c](./encoder.c) assign static variable `state` your new state depending on your desired condition and add callbacks to `encoder_mapping` array. - -## RGB Matrix Ledmaps -RGB Matrix ledmaps is the future allowing you assign colors to individual keys on every keymap layer. - -You can see some examples of my usage in the bottom of [keymap.c](./keymap.c). - -Color defines are just HSV colors wrapped in curly braces, like `#define RED { HSV_RED }`. diff --git a/keyboards/gmmk/pro/rev1/ansi/keymaps/mike1808/config.h b/keyboards/gmmk/pro/rev1/ansi/keymaps/mike1808/config.h deleted file mode 100644 index ece08ecfee..0000000000 --- a/keyboards/gmmk/pro/rev1/ansi/keymaps/mike1808/config.h +++ /dev/null @@ -1,30 +0,0 @@ -/* Copyright 2021 Mikael Manukyan <arm.localhost@gmail.com> - * - * This program is free software: you can redistribute it and/or modify - * it under the terms of the GNU General Public License as published by - * the Free Software Foundation, either version 2 of the License, or - * (at your option) any later version. - * - * This program is distributed in the hope that it will be useful, - * but WITHOUT ANY WARRANTY; without even the implied warranty of - * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the - * GNU General Public License for more details. - * - * You should have received a copy of the GNU General Public License - * along with this program. If not, see <http://www.gnu.org/licenses/>. - */ - -#define COMBO_TERM 100 - -#define RGB_MATRIX_KEYPRESSES -#define RGB_DISABLE_WHEN_USB_SUSPENDED -#define RGB_MATRIX_TIMEOUT 90000 - -#define MACRO_TIMER 5 - -#define TAPPING_TOGGLE 3 - -#define WPM_SMOOTHING 0.1 - -// this is for macOS so keyboard can work after sleep -#define NO_USB_STARTUP_CHECK diff --git a/keyboards/gmmk/pro/rev1/ansi/keymaps/mike1808/encoder.c b/keyboards/gmmk/pro/rev1/ansi/keymaps/mike1808/encoder.c deleted file mode 100644 index c912806217..0000000000 --- a/keyboards/gmmk/pro/rev1/ansi/keymaps/mike1808/encoder.c +++ /dev/null @@ -1,112 +0,0 @@ -/* Copyright 2021 Mikael Manukyan <arm.localhost@gmail.com> - * - * This program is free software: you can redistribute it and/or modify - * it under the terms of the GNU General Public License as published by - * the Free Software Foundation, either version 2 of the License, or - * (at your option) any later version. - * - * This program is distributed in the hope that it will be useful, - * but WITHOUT ANY WARRANTY; without even the implied warranty of - * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the - * GNU General Public License for more details. - * - * You should have received a copy of the GNU General Public License - * along with this program. If not, see <http://www.gnu.org/licenses/>. - */ -#include "encoder.h" -#include "mike1808.h" -#include "print.h" -#include "utils.h" -#include "process_record.h" -#include "rgb_matrix_ledmaps.h" - -static uint8_t state = ENCODER_DEFAULT; - -// clang-format off -const encoder_callback encoder_mapping[][2] = { - [ENCODER_VOLUME] = {&volume_up, &volume_down}, -#ifdef RGB_MATRIX_ENABLE - [ENCODER_RGB_HUE] = {&rgb_matrix_increase_hue_noeeprom, &rgb_matrix_decrease_hue_noeeprom}, - [ENCODER_RGB_SAT] = {&rgb_matrix_increase_sat_noeeprom, &rgb_matrix_decrease_sat_noeeprom}, - [ENCODER_RGB_VAL] = {&rgb_matrix_increase_val_noeeprom, &rgb_matrix_decrease_val_noeeprom}, - [ENCODER_RGB_EFFECT] = {&rgb_matrix_step_noeeprom, &rgb_matrix_step_reverse_noeeprom}, - [ENCODER_RGB_EFFECT_SPEED] = {&rgb_matrix_increase_speed_noeeprom, &rgb_matrix_decrease_speed_noeeprom}, -#endif // RGB_MATRIX_ENABLE -}; - -// clang-format on - -void volume_up(void) { tap_code(KC_VOLU); } - -void volume_down(void) { tap_code(KC_VOLD); } - -bool encoder_update_user(uint8_t index, bool clockwise) { - dprintf("current encoder state is: %d\n", state); - - if (clockwise) { - (*encoder_mapping[state][0])(); - } else { - (*encoder_mapping[state][1])(); - } - - //return true; //set to return false to counteract enabled encoder in pro.c - return false; -} - -void handle_rgb_key(bool pressed) { - dprintf("handle_rgb_key %d\f", pressed); - - if (pressed) { - rgb_matrix_layers_disable(); - } else { - rgb_matrix_layers_enable(); - } -} - -static KeyPressState *rgb_state; - -void keyboard_post_init_encoder(void) { - rgb_state = NewKeyPressState(handle_rgb_key); -} - -bool process_record_encoder(uint16_t keycode, keyrecord_t *record) { -#ifdef RGB_MATRIX_ENABLE - switch (keycode) { - case KC_RGB_ENC_HUE ... KC_RGB_ENC_EFFECT: - if (record->event.pressed) { -# ifdef RGB_MATRIX_LEDMAPS_ENABLED - // disable layers so we can adjust RGB effects - rgb_state->press(rgb_state); -# endif // RGB_MATRIX_LEDMAPS_ENABLED - - switch (keycode) { - case KC_RGB_ENC_HUE: - state = ENCODER_RGB_HUE; - break; - case KC_RGB_ENC_SAT: - state = ENCODER_RGB_SAT; - break; - case KC_RGB_ENC_VAL: - state = ENCODER_RGB_VAL; - break; - case KC_RGB_ENC_EFFECT_SPEED: - state = ENCODER_RGB_EFFECT_SPEED; - break; - case KC_RGB_ENC_EFFECT: - state = ENCODER_RGB_EFFECT; - break; - } - } else { -# ifdef RGB_MATRIX_LEDMAPS_ENABLED - rgb_state->release(rgb_state); -# endif // RGB_MATRIX_LEDMAPS_ENABLED - state = ENCODER_DEFAULT; - store_rgb_state_to_eeprom(); - } - - return false; - } -#endif // RGB_MATRIX_ENABLE - - return true; -} diff --git a/keyboards/gmmk/pro/rev1/ansi/keymaps/mike1808/encoder.h b/keyboards/gmmk/pro/rev1/ansi/keymaps/mike1808/encoder.h deleted file mode 100644 index 204922730e..0000000000 --- a/keyboards/gmmk/pro/rev1/ansi/keymaps/mike1808/encoder.h +++ /dev/null @@ -1,35 +0,0 @@ -/* Copyright 2021 Mikael Manukyan <arm.localhost@gmail.com> - * - * This program is free software: you can redistribute it and/or modify - * it under the terms of the GNU General Public License as published by - * the Free Software Foundation, either version 2 of the License, or - * (at your option) any later version. - * - * This program is distributed in the hope that it will be useful, - * but WITHOUT ANY WARRANTY; without even the implied warranty of - * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the - * GNU General Public License for more details. - * - * You should have received a copy of the GNU General Public License - * along with this program. If not, see <http://www.gnu.org/licenses/>. - */ - -// To add a new functionality define a new state here and then assign -// the handler to the `encoder_callback` -#include "quantum.h" - -enum encoder_state { - ENCODER_VOLUME = 0, - ENCODER_RGB_HUE, - ENCODER_RGB_SAT, - ENCODER_RGB_VAL, - ENCODER_RGB_EFFECT_SPEED, - ENCODER_RGB_EFFECT, -}; - -typedef void (*encoder_callback)(void); - -#define ENCODER_DEFAULT ENCODER_VOLUME - -void volume_up(void); -void volume_down(void); diff --git a/keyboards/gmmk/pro/rev1/ansi/keymaps/mike1808/fun.c b/keyboards/gmmk/pro/rev1/ansi/keymaps/mike1808/fun.c deleted file mode 100644 index cb47824c80..0000000000 --- a/keyboards/gmmk/pro/rev1/ansi/keymaps/mike1808/fun.c +++ /dev/null @@ -1,50 +0,0 @@ -/* Copyright 2021 Mikael Manukyan <arm.localhost@gmail.com> - * - * This program is free software: you can redistribute it and/or modify - * it under the terms of the GNU General Public License as published by - * the Free Software Foundation, either version 2 of the License, or - * (at your option) any later version. - * - * This program is distributed in the hope that it will be useful, - * but WITHOUT ANY WARRANTY; without even the implied warranty of - * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the - * GNU General Public License for more details. - * - * You should have received a copy of the GNU General Public License - * along with this program. If not, see <http://www.gnu.org/licenses/>. - */ -#include "mike1808.h" -#include "print.h" - -static bool wpm_rgb_enabled = false; -static uint8_t rgb_mode; - -bool rgb_matrix_indicators_keymap(void) { - if (wpm_rgb_enabled && rgb_matrix_is_enabled()) { - uint8_t wpm = get_current_wpm(); - dprintf("WPM = %d\n", wpm); - HSV hsv = rgb_matrix_get_hsv(); - hsv.h = wpm; - RGB rgb = hsv_to_rgb(hsv); - rgb_matrix_set_color_all(rgb.r, rgb.g, rgb.b); - } - return false; -} - -bool process_record_fun(uint16_t keycode, keyrecord_t *record) { - if (record->event.pressed && keycode == KC_WPM_RGB) { - if (wpm_rgb_enabled) { - wpm_rgb_enabled = false; - rgb_matrix_mode(rgb_mode); - } else { - wpm_rgb_enabled = true; - rgb_mode = rgb_matrix_get_mode(); - rgb_matrix_enable(); - rgb_matrix_mode(RGB_MATRIX_SOLID_COLOR); - } - - return false; - } - - return true; -} diff --git a/keyboards/gmmk/pro/rev1/ansi/keymaps/mike1808/keymap.c b/keyboards/gmmk/pro/rev1/ansi/keymaps/mike1808/keymap.c deleted file mode 100644 index 70b60526ce..0000000000 --- a/keyboards/gmmk/pro/rev1/ansi/keymaps/mike1808/keymap.c +++ /dev/null @@ -1,127 +0,0 @@ -/* Copyright 2021 Glorious, LLC <salman@pcgamingrace.com>, Mikael Manukyan <arm.localhost@gmail.com> - * - * This program is free software: you can redistribute it and/or modify - * it under the terms of the GNU General Public License as published by - * the Free Software Foundation, either version 2 of the License, or - * (at your option) any later version. - * - * This program is distributed in the hope that it will be useful, - * but WITHOUT ANY WARRANTY; without even the implied warranty of - * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the - * GNU General Public License for more details. - * - * You should have received a copy of the GNU General Public License - * along with this program. If not, see <http://www.gnu.org/licenses/>. - */ -#include "mike1808.h" - -const uint16_t PROGMEM jk_combo[] = {KC_J, KC_K, COMBO_END}; - -combo_t key_combos[] = { - [JK_ESC] = COMBO(jk_combo, KC_ESC), -}; - -// clang-format off -const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = { - -// ESC F1 F2 F3 F4 F5 F6 F7 F8 F9 F10 F11 F12 Prt Rotary(Mute) -// ~ 1 2 3 4 5 6 7 8 9 0 - (=) BackSpc Del -// Tab Q W E R T Y U I O P [ ] \ PgUp -// Caps A S D F G H J K L ; " Enter PgDn -// Sh_L Z X C V B N M , . ? Sh_R Up End -// Ct_L Win_L Alt_L SPACE Alt_R FN Ct_R Left Down Right - [LINUX] = LAYOUT( - 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_DEL, KC_MUTE, - 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_HOME, - 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_PGUP, - KC_ESC, KC_A, KC_S, KC_D, KC_F, KC_G, KC_H, KC_J, KC_K, KC_L, KC_SCLN, KC_QUOT, KC_ENT, KC_PGDN, - 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, KC_END, - KC_LCTL, KC_LGUI, KC_LALT, KC_SPC, KC_RALT, TT_FN, KC_RCTL, KC_LEFT, KC_DOWN, KC_RGHT - ), - - [WINDOWS] = LAYOUT( - _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, - _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, - _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, - _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, - _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, - _______, _______, _______, _______, _______, _______, _______, _______, _______, _______ - ), - - [MACOS] = LAYOUT( - _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, - _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, - _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, - _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, - _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, - _______, KC_LALT, KC_LGUI, _______, _______, _______, _______, _______, _______, _______ - ), - - [FUNCTIONS] = LAYOUT( - _______, KC_SEC1, KC_SEC2, KC_SEC3, KC_SEC4, KC_SEC5, _______, _______, _______, _______, KC_MPRV, KC_MPLY, KC_MNXT, KC_PSCR, _______, - _______, KC_LINX, KC_MAC, KC_WIN, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, KC_INS, - _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, KC_RST, _______, - KC_CAPS, _______, _______, _______, _______, OS_GIT, _______, _______, _______, _______, _______, _______, _______, _______, - _______, KC_RGBH, KC_RGBS, KC_RGBV, KC_RGBE, KC_RGBP, KC_WRGB, _______, _______, _______, _______, _______, KC_PGUP, _______, - _______, _______, _______, RGB_TOG, _______, _______, _______, KC_HOME, KC_PGDN, KC_END - ), - - [GIT] = LAYOUT( - _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, - _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, - _______, _______, _______, G_DIFF, _______, _______, _______, _______, _______, _______, G_PULL, G_PUSH, _______, _______, _______, - _______, G_ADD, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, - _______, _______, _______, G_CHECK, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, - _______, _______, _______, _______, _______, _______, _______, _______, _______, _______ - ), -}; - -#ifdef RGB_MATRIX_LEDMAPS_ENABLED - -#define ______ {0, 0, 0} - -const ledmap PROGMEM ledmaps[] = { - // LU = Left Underglow, RU = Right Underglow - // LU_1 ESC F1 F2 F3 F4 F5 F6 F7 F8 F9 F10 F11 F12 Prt Rotary(Mute) RU_1 - // LU_2 ~ 1 2 3 4 5 6 7 8 9 0 - (=) BackSpc Del RU_2 - // LU_3 Tab Q W E R T Y U I O P [ ] \ PgUp RU_3 - // LU_4 Caps A S D F G H J K L ; " Enter PgDn RU_4 - // LU_5 Sh_L Z X C V B N M , . ? Sh_R Up End RU_5 - // LU_6 Ct_L Win_L Alt_L SPACE Alt_R FN Ct_R Left Down Right RU_6 - [LINUX] = RGB_MATRIX_LAYOUT_LEDMAP( - PURPLE, ______, ______, ______, ______, ______, ______, ______, ______, ______, ______, ______, ______, ______, ______, ______, PURPLE, - PURPLE, ______, ______, ______, ______, ______, ______, ______, ______, ______, ______, ______, ______, ______, ______, ______, PURPLE, - PURPLE, ______, ______, ______, ______, ______, ______, ______, ______, ______, ______, ______, ______, ______, ______, ______, PURPLE, - PURPLE, ______, ______, ______, ______, ______, ______, ______, ______, ______, ______, ______, ______, ______, ______, PURPLE, - PURPLE, ______, ______, ______, ______, ______, ______, ______, ______, ______, ______, ______, ______, ______, ______, PURPLE, - PURPLE, ______, RED, ______, ______, ______, ______, ______, ______, ______, ______, PURPLE - ), - [WINDOWS] = RGB_MATRIX_LAYOUT_LEDMAP( - GREEN, ______, ______, ______, ______, ______, ______, ______, ______, ______, ______, ______, ______, ______, ______, ______, PURPLE, - GREEN, ______, ______, ______, ______, ______, ______, ______, ______, ______, ______, ______, ______, ______, ______, ______, PURPLE, - GREEN, ______, ______, ______, ______, ______, ______, ______, ______, ______, ______, ______, ______, ______, ______, ______, PURPLE, - GREEN, ______, ______, ______, ______, ______, ______, ______, ______, ______, ______, ______, ______, ______, ______, PURPLE, - GREEN, ______, ______, ______, ______, ______, ______, ______, ______, ______, ______, ______, ______, ______, ______, PURPLE, - GREEN, ______, RED, ______, ______, ______, ______, ______, ______, ______, ______, PURPLE - ), - [MACOS] = RGB_MATRIX_LAYOUT_LEDMAP( - YELLOW, ______, ______, ______, ______, ______, ______, ______, ______, ______, ______, ______, ______, ______, ______, ______, PURPLE, - YELLOW, ______, ______, ______, ______, ______, ______, ______, ______, ______, ______, ______, ______, ______, ______, ______, PURPLE, - YELLOW, ______, ______, ______, ______, ______, ______, ______, ______, ______, ______, ______, ______, ______, ______, ______, PURPLE, - YELLOW, ______, ______, ______, ______, ______, ______, ______, ______, ______, ______, ______, ______, ______, ______, PURPLE, - YELLOW, ______, ______, ______, ______, ______, ______, ______, ______, ______, ______, ______, ______, ______, ______, PURPLE, - YELLOW, ______, ______, RED, ______, ______, ______, ______, ______, ______, ______, PURPLE - ), - - [FUNCTIONS] = RGB_MATRIX_LAYOUT_LEDMAP( - CYAN, GREEN, GREEN, GREEN, GREEN, GREEN, GREEN, ______, ______, ______, ______, GREEN, GREEN, GREEN, GREEN, ______, PURPLE, - CYAN, ______, GOLD, GOLD, GOLD, ______, ______, ______, ______, ______, ______, ______, ______, ______, ______, GOLD, PURPLE, - CYAN, ______, ______, ______, ______, ______, ______, ______, ______, ______, ______, ______, ______, ______, TEAL, ______, PURPLE, - CYAN, TURQ, ______, ______, ______, ______, TURQ, ______, ______, ______, ______, ______, ______, ______, ______, PURPLE, - CYAN, ______, RED, RED, RED, RED, RED, RED, ______, ______, ______, ______, ______, RED, ______, PURPLE, - CYAN, ______, ______, BLUE, ______, ______, ______, ______, ______, ______, ______, PURPLE - ), -}; - -#endif // RGB_MATRIX_LEDMAPS_ENABLED -// clang-format on diff --git a/keyboards/gmmk/pro/rev1/ansi/keymaps/mike1808/mike1808.c b/keyboards/gmmk/pro/rev1/ansi/keymaps/mike1808/mike1808.c deleted file mode 100644 index 607606b3e7..0000000000 --- a/keyboards/gmmk/pro/rev1/ansi/keymaps/mike1808/mike1808.c +++ /dev/null @@ -1,69 +0,0 @@ -/* Copyright 2021 Mikael Manukyan <arm.localhost@gmail.com> - * - * This program is free software: you can redistribute it and/or modify - * it under the terms of the GNU General Public License as published by - * the Free Software Foundation, either version 2 of the License, or - * (at your option) any later version. - * - * This program is distributed in the hope that it will be useful, - * but WITHOUT ANY WARRANTY; without even the implied warranty of - * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the - * GNU General Public License for more details. - * - * You should have received a copy of the GNU General Public License - * along with this program. If not, see <http://www.gnu.org/licenses/>. - */ -#include "mike1808.h" - -#if (__has_include("secrets.h") && !defined(NO_SECRETS)) -# include "secrets.h" -#else -// `PROGMEM const char secret[][x]` may work better, but it takes up more space in the firmware -// And I'm not familiar enough to know which is better or why... -static const char *const secrets[] = {"test1", "test2", "test3", "test4", "test5"}; -#endif - -// userspace_config_t userspace_config; - -bool process_record_secrets(uint16_t keycode, keyrecord_t *record) { - switch (keycode) { - case KC_SECRET_1 ... KC_SECRET_5: // Secrets! Externally defined strings, not stored in repo - if (!record->event.pressed) { - clear_oneshot_layer_state(ONESHOT_OTHER_KEY_PRESSED); - send_string_with_delay(secrets[keycode - KC_SECRET_1], MACRO_TIMER); - } - return false; - break; - } - return true; -} - -void suspend_power_down_user(void) { -#ifdef RGB_MATRIX_ENABLE - rgb_matrix_set_suspend_state(true); -#endif // RGB_MATRIX_ENABLE -} - -void suspend_wakeup_init_user(void) { -#ifdef RGB_MATRIX_ENABLE - rgb_matrix_set_suspend_state(false); -#endif // RGB_MATRIX_ENABLE -} - -#ifdef RGB_MATRIX_ENABLE -bool rgb_matrix_indicators_advanced_keymap(uint8_t led_min, uint8_t led_max) { - // Turn on sideglow when CAPS LOCK is activated - if (host_keyboard_led_state().caps_lock) { - HSV hsv = {CAPS_LOCK_COLOR}; - hsv.v = rgb_matrix_get_val(); - RGB rgb = hsv_to_rgb(hsv); - - for (uint8_t i = led_min; i < led_max; i++) { - if (HAS_FLAGS(g_led_config.flags[i], LED_FLAG_UNDERGLOW)) { - RGB_MATRIX_INDICATOR_SET_COLOR(i, rgb.r, rgb.g, rgb.b); - } - } - } - return false; -} -#endif // RGB_MATRIX_ENABLE diff --git a/keyboards/gmmk/pro/rev1/ansi/keymaps/mike1808/mike1808.h b/keyboards/gmmk/pro/rev1/ansi/keymaps/mike1808/mike1808.h deleted file mode 100644 index b35ad7590d..0000000000 --- a/keyboards/gmmk/pro/rev1/ansi/keymaps/mike1808/mike1808.h +++ /dev/null @@ -1,111 +0,0 @@ -/* Copyright 2021 Mikael Manukyan <arm.localhost@gmail.com> - * - * This program is free software: you can redistribute it and/or modify - * it under the terms of the GNU General Public License as published by - * the Free Software Foundation, either version 2 of the License, or - * (at your option) any later version. - * - * This program is distributed in the hope that it will be useful, - * but WITHOUT ANY WARRANTY; without even the implied warranty of - * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the - * GNU General Public License for more details. - * - * You should have received a copy of the GNU General Public License - * along with this program. If not, see <http://www.gnu.org/licenses/>. - */ -#pragma once -#include QMK_KEYBOARD_H -#include "rgb_matrix_ledmaps.h" - -enum layout_names { - LINUX = 0, // Base Layout: The main keyboard layout that has all the characters - WINDOWS, // Base ayout for Windows - MACOS, // Base Layout for MacOS - FUNCTIONS, // Function Layout: The function key activated layout with default functions and - // some added ones - GIT, // GIT Layout: GIT shortcuts and macros - SECRETS, // Layer with secrets -}; - -enum custom_keycodes { - KC_CCCV = SAFE_RANGE, // Hold to copy, tap to paste - KC_LINUX, - KC_MAC, - KC_WIN, - - KC_SECRET_1, - KC_SECRET_2, - KC_SECRET_3, - KC_SECRET_4, - KC_SECRET_5, - - KC_RGB_ENC_HUE, - KC_RGB_ENC_SAT, - KC_RGB_ENC_VAL, - KC_RGB_ENC_EFFECT_SPEED, - KC_RGB_ENC_EFFECT, - - KC_WPM_RGB, -}; - -enum git_macros { - // The start of this enum should always be equal to end of ctrl_keycodes + 1 - G_INIT = KC_WPM_RGB + 1, // git init - G_CLONE, // git clone - G_CONF, // git config --global - G_ADD, // git add - G_DIFF, // git diff - G_QK_BOOT, // git reset - G_REBAS, // git rebase - G_BRANH, // git branch - G_CHECK, // git checkout - G_MERGE, // git merge - G_REMTE, // git remote add - G_FETCH, // git fetch - G_PULL, // git pull - G_PUSH, // git push - G_COMM, // git commit - G_STAT, // git status - G_LOG, // git log - NEW_SAFE_RANGE, -}; - -enum combos { - JK_ESC, // jk to ESC for Vim -}; - -#define KC_SEC1 KC_SECRET_1 -#define KC_SEC2 KC_SECRET_2 -#define KC_SEC3 KC_SECRET_3 -#define KC_SEC4 KC_SECRET_4 -#define KC_SEC5 KC_SECRET_5 - -#define KC_RGBH KC_RGB_ENC_HUE -#define KC_RGBS KC_RGB_ENC_SAT -#define KC_RGBV KC_RGB_ENC_VAL -#define KC_RGBE KC_RGB_ENC_EFFECT -#define KC_RGBP KC_RGB_ENC_EFFECT_SPEED - -#define KC_WRGB KC_WPM_RGB - -#define KC_LINX KC_LINUX - -#define KC_RESET QK_BOOT -#define KC_RST KC_RESET - -#define OS_GIT OSL(GIT) -#define TT_FN TT(FUNCTIONS) - -#define OS_LGUI OSM(MOD_LGUI) -#define OS_RGUI OSM(MOD_RGUI) -#define OS_LSFT OSM(MOD_LSFT) -#define OS_RSFT OSM(MOD_RSFT) -#define OS_LCTL OSM(MOD_LCTL) -#define OS_RCTL OSM(MOD_RCTL) -#define OS_LALT OSM(MOD_LALT) -#define OS_RALT OSM(MOD_RALT) -#define OS_MEH OSM(MOD_MEH) -#define OS_HYPR OSM(MOD_HYPR) - -#define CAPS_LOCK_COLOR HSV_RED - diff --git a/keyboards/gmmk/pro/rev1/ansi/keymaps/mike1808/process_record.c b/keyboards/gmmk/pro/rev1/ansi/keymaps/mike1808/process_record.c deleted file mode 100644 index a21b58a36c..0000000000 --- a/keyboards/gmmk/pro/rev1/ansi/keymaps/mike1808/process_record.c +++ /dev/null @@ -1,119 +0,0 @@ -/* Copyright 2021 Christopher Courtney, aka Drashna Jael're (@drashna) <drashna@live.com>, - Mikael Manukyan <arm.localhost@gmail.com> - * - * This program is free software: you can redistribute it and/or modify - * it under the terms of the GNU General Public License as published by - * the Free Software Foundation, either version 2 of the License, or - * (at your option) any later version. - * - * This program is distributed in the hope that it will be useful, - * but WITHOUT ANY WARRANTY; without even the implied warranty of - * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the - * GNU General Public License for more details. - * - * You should have received a copy of the GNU General Public License - * along with this program. If not, see <http://www.gnu.org/licenses/>. - */ -#include "mike1808.h" -#include "print.h" -#include "process_record.h" - -uint16_t copy_paste_timer; - -__attribute__((weak)) bool process_record_secrets(uint16_t keycode, keyrecord_t *record) { - return true; -} -__attribute__((weak)) bool process_record_encoder(uint16_t keycode, keyrecord_t *record) { - return true; -} -__attribute__((weak)) bool process_record_fun(uint16_t keycode, keyrecord_t *record) { - return true; -} - -__attribute__((weak)) void keyboard_post_init_encoder(void) { return; } - -static const char *git_commands[] = { - "git init ", "git clone ", "git config --global ", "git add ", - "git diff ", "git reset ", "git rebase ", "git branch -b \"", - "git checkout ", "git merge ", "git remote add ", "git fetch ", - "git pull ", "git push ", "git commit ", "git status ", - "git log ", -}; - -bool process_record_user(uint16_t keycode, keyrecord_t *record) { - // If console is enabled, it will print the matrix position and status of each key pressed -#ifdef KEYLOGGER_ENABLE - uprintf("KL: kc: 0x%04X, col: %2u, row: %2u, pressed: %b, time: %5u, int: %b, count: %u\n", - keycode, record->event.key.col, record->event.key.row, record->event.pressed, - record->event.time, record->tap.interrupted, record->tap.count); -#endif // KEYLOGGER_ENABLE - switch (keycode) { - case KC_LINUX ... KC_WIN: - if (record->event.pressed) { - dprintf("set_single_persistent_default_layer %d\n", keycode - KC_LINUX + LINUX); - set_single_persistent_default_layer(keycode - KC_LINUX + LINUX); - return false; - } - - break; - - case KC_CCCV: // One key copy/paste - if (record->event.pressed) { - copy_paste_timer = timer_read(); - } else { - if (timer_elapsed(copy_paste_timer) > TAPPING_TERM) { // Hold, copy - if (layer_state_is(MACOS)) { - tap_code16(LGUI(KC_C)); - } else { - tap_code16(LCTL(KC_C)); - } - } else { // Tap, paste - if (layer_state_is(MACOS)) { - tap_code16(LGUI(KC_V)); - } else { - tap_code16(LCTL(KC_V)); - } - } - } - break; - - case G_INIT ... G_LOG: - if (record->event.pressed) { - clear_oneshot_layer_state(ONESHOT_OTHER_KEY_PRESSED); - send_string_with_delay(git_commands[keycode - G_INIT], MACRO_TIMER); - return false; - } - break; -#ifdef RGB_MATRIX_ENABLE - case RGB_TOG: - if (record->event.pressed) { - switch (rgb_matrix_get_flags()) { - case LED_FLAG_ALL: { - rgb_matrix_set_flags(LED_FLAG_KEYLIGHT | LED_FLAG_MODIFIER); - rgb_matrix_set_color_all(0, 0, 0); - } break; - case LED_FLAG_KEYLIGHT | LED_FLAG_MODIFIER: { - rgb_matrix_set_flags(LED_FLAG_UNDERGLOW); - rgb_matrix_set_color_all(0, 0, 0); - } break; - case LED_FLAG_UNDERGLOW: { - // This line is for LED idle timer. It disables the toggle so you can turn - // off LED completely if you like - rgb_matrix_set_flags(LED_FLAG_NONE); - rgb_matrix_disable(); - } break; - default: { - rgb_matrix_set_flags(LED_FLAG_ALL); - rgb_matrix_enable(); - } break; - } - } - return false; -#endif // RGB_MATRIX_ENABLE - } - - return process_record_encoder(keycode, record) && process_record_secrets(keycode, record) && - process_record_fun(keycode, record); -} - -void keyboard_post_init_user(void) { keyboard_post_init_encoder(); } diff --git a/keyboards/gmmk/pro/rev1/ansi/keymaps/mike1808/process_record.h b/keyboards/gmmk/pro/rev1/ansi/keymaps/mike1808/process_record.h deleted file mode 100644 index 1021751655..0000000000 --- a/keyboards/gmmk/pro/rev1/ansi/keymaps/mike1808/process_record.h +++ /dev/null @@ -1,26 +0,0 @@ -/* Copyright 2021 Mikael Manukyan <arm.localhost@gmail.com> - * - * This program is free software: you can redistribute it and/or modify - * it under the terms of the GNU General Public License as published by - * the Free Software Foundation, either version 2 of the License, or - * (at your option) any later version. - * - * This program is distributed in the hope that it will be useful, - * but WITHOUT ANY WARRANTY; without even the implied warranty of - * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the - * GNU General Public License for more details. - * - * You should have received a copy of the GNU General Public License - * along with this program. If not, see <http://www.gnu.org/licenses/>. - */ -#pragma once -#include "mike1808.h" - - -bool process_record_secrets(uint16_t keycode, keyrecord_t *record); - -bool process_record_encoder(uint16_t keycode, keyrecord_t *record); - -bool process_record_fun(uint16_t keycode, keyrecord_t *record); - -void keyboard_post_init_encoder(void); diff --git a/keyboards/gmmk/pro/rev1/ansi/keymaps/mike1808/rgb_matrix_ledmaps.c b/keyboards/gmmk/pro/rev1/ansi/keymaps/mike1808/rgb_matrix_ledmaps.c deleted file mode 100644 index b213abc998..0000000000 --- a/keyboards/gmmk/pro/rev1/ansi/keymaps/mike1808/rgb_matrix_ledmaps.c +++ /dev/null @@ -1,71 +0,0 @@ -/* Copyright 2021 Mikael Manukyan <arm.localhost@gmail.com> - * - * This program is free software: you can redistribute it and/or modify - * it under the terms of the GNU General Public License as published by - * the Free Software Foundation, either version 2 of the License, or - * (at your option) any later version. - * - * This program is distributed in the hope that it will be useful, - * but WITHOUT ANY WARRANTY; without even the implied warranty of - * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the - * GNU General Public License for more details. - * - * You should have received a copy of the GNU General Public License - * along with this program. If not, see <http://www.gnu.org/licenses/>. - */ -#include "rgb_matrix_ledmaps.h" - -__attribute__((weak)) bool rgb_matrix_indicators_keymap(void) { return true; } -__attribute__((weak)) bool rgb_matrix_indicators_advanced_keymap(uint8_t led_min, uint8_t led_max) { - return true; -} - -#ifdef RGB_MATRIX_LEDMAPS_ENABLED - -static bool enabled = true; - -#endif // RGB_MATRIX_LEDMAPS_ENABLED - -bool rgb_matrix_indicators_user(void) { return rgb_matrix_indicators_keymap(); } -bool rgb_matrix_indicators_advanced_user(uint8_t led_min, uint8_t led_max) { -#ifdef RGB_MATRIX_LEDMAPS_ENABLED - if (rgb_matrix_is_enabled() && enabled) { - set_layer_rgb(led_min, led_max, get_highest_layer(layer_state | default_layer_state)); - } - -#endif // RGB_MATRIX_LEDMAPS_ENABLED - return rgb_matrix_indicators_advanced_keymap(led_min, led_max); -} - -#ifdef RGB_MATRIX_LEDMAPS_ENABLED - -void set_layer_rgb(uint8_t led_min, uint8_t led_max, int layer) { - const ledmap *l = &(ledmaps[layer]); - - uint8_t val = rgb_matrix_get_val(); - - for (int i = 0; i < RGB_MATRIX_LED_COUNT; i++) { - HSV hsv = { - .h = (*l)[i][0], - .s = (*l)[i][1], - .v = val, - }; - - if (hsv.h || hsv.s) { - RGB rgb = hsv_to_rgb(hsv); - RGB_MATRIX_INDICATOR_SET_COLOR(i, rgb.r, rgb.g, rgb.b); - } - } -} - -void rgb_matrix_layers_enable(void) { - dprintf("ledmaps are enabled\n"); - enabled = true; -} - -void rgb_matrix_layers_disable(void) { - dprintf("ledmaps are disabled\n"); - enabled = false; -} - -#endif // RGB_MATRIX_LEDMAPS_ENABLED diff --git a/keyboards/gmmk/pro/rev1/ansi/keymaps/mike1808/rgb_matrix_ledmaps.h b/keyboards/gmmk/pro/rev1/ansi/keymaps/mike1808/rgb_matrix_ledmaps.h deleted file mode 100644 index 931dfa0704..0000000000 --- a/keyboards/gmmk/pro/rev1/ansi/keymaps/mike1808/rgb_matrix_ledmaps.h +++ /dev/null @@ -1,100 +0,0 @@ -/* Copyright 2021 Mikael Manukyan <arm.localhost@gmail.com> - * - * This program is free software: you can redistribute it and/or modify - * it under the terms of the GNU General Public License as published by - * the Free Software Foundation, either version 2 of the License, or - * (at your option) any later version. - * - * This program is distributed in the hope that it will be useful, - * but WITHOUT ANY WARRANTY; without even the implied warranty of - * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the - * GNU General Public License for more details. - * - * You should have received a copy of the GNU General Public License - * along with this program. If not, see <http://www.gnu.org/licenses/>. - */ -#pragma once - -#include "quantum.h" - -#ifdef RGB_MATRIX_LEDMAPS_ENABLED - -// no association keycode -# define XXX \ - { 0, 0, 0 } - -// clang-format off -# define RGB_MATRIX_LAYOUT_LEDMAP( \ - ul1, k13, k26, k36, k31, k33, k07, k63, k71, k76, ka6, ka7, ka3, ka5, k97, k01, ur1, \ - ul2, k16, k17, k27, k37, k47, k46, k56, k57, k67, k77, k87, k86, k66, ka1, k65, ur2, \ - ul3, k11, k10, k20, k30, k40, k41, k51, k50, k60, k70, k80, k81, k61, ka2, k15, ur3, \ - ul4, k21, k12, k22, k32, k42, k43, k53, k52, k62, k72, k82, k83, ka4, k25, ur4, \ - ul5, k00, k14, k24, k34, k44, k45, k55, k54, k64, k74, k85, k91, k35, k75, ur5, \ - ul6, k06, k90, k93, k94, k95, k92, k04, k03, k73, k05, ur6 \ - ) \ - { \ - k13, k16, k11, k21, k00, k06, k26, k17, \ - k10, k12, k14, k90, k36, k27, k20, k22, \ - k24, k93, k31, k37, k30, k32, k34, k33, \ - k47, k40, k42, k44, k07, k46, k41, k43, \ - k45, k94, k63, k56, k51, k53, k55, k71, \ - k57, k50, k52, k54, k76, k67, k60, k62, \ - k64, k95, ka6, k77, k70, k72, k74, k92, \ - ka7, k87, k80, k82, k85, ka3, k86, k81, \ - k83, k04, ka5, ul1, ur1, k97, ul2, ur2, \ - k65, ul2, ur2, k15, ul3, ur3, k66, k05, \ - ul3, ur3, k75, ul4, ur4, ka1, k25, ul5, \ - ur5, k61, k91, ul6, ur6, ka2, k35, k03, \ - ka4, k73 \ - } -// clang-format on -typedef uint8_t ledmap[RGB_MATRIX_LED_COUNT][3]; -extern const ledmap ledmaps[]; - -void set_layer_rgb(uint8_t led_min, uint8_t led_max, int layer); - -void rgb_matrix_layers_enable(void); -void rgb_matrix_layers_disable(void); - -// Just a handy defines to make our ledmaps look better -# define RED \ - { HSV_RED } -# define CORAL \ - { HSV_CORAL } -# define ORANGE \ - { HSV_ORANGE } -# define GOLDEN \ - { HSV_GOLDENROD } -# define GOLD \ - { HSV_GOLD } -# define YELLOW \ - { HSV_YELLOW } -# define CHART \ - { HSV_CHARTREUSE } -# define GREEN \ - { HSV_GREEN } -# define SPRING \ - { HSV_SPRINGGREEN } -# define TURQ \ - { HSV_TURQUOISE } -# define TEAL \ - { HSV_TEAL } -# define CYAN \ - { HSV_CYAN } -# define AZURE \ - { HSV_AZURE } -# define BLUE \ - { HSV_BLUE } -# define PURPLE \ - { HSV_PURPLE } -# define MAGENT \ - { HSV_MAGENTA } -# define PINK \ - { HSV_PINK } -# define BLACK \ - { HSV_BLACK } - -#endif // RGB_MATRIX_LEDMAPS_ENABLED - -bool rgb_matrix_indicators_keymap(void); -bool rgb_matrix_indicators_advanced_keymap(uint8_t led_min, uint8_t led_max); diff --git a/keyboards/gmmk/pro/rev1/ansi/keymaps/mike1808/rules.mk b/keyboards/gmmk/pro/rev1/ansi/keymaps/mike1808/rules.mk deleted file mode 100644 index a6d4e6259c..0000000000 --- a/keyboards/gmmk/pro/rev1/ansi/keymaps/mike1808/rules.mk +++ /dev/null @@ -1,25 +0,0 @@ -VIA_ENABLE = no - -COMBO_ENABLE = yes -COMMAND_ENABLE = yes -RGB_MATRIX_ENABLE = yes -RAW_ENABLE = no -CONSOLE_ENABLE = yes - -WPM_ENABLE = no - -RGB_MATRIX_LEDMAPS = yes - -SRC += utils.c -SRC += mike1808.c -SRC += process_record.c -SRC += encoder.c - -ifeq ($(strip $(WPM_ENABLE)), yes) - SRC += fun.c -endif - -ifeq ($(strip $(RGB_MATRIX_LEDMAPS)), yes) - SRC += rgb_matrix_ledmaps.c - OPT_DEFS += -DRGB_MATRIX_LEDMAPS_ENABLED -endif diff --git a/keyboards/gmmk/pro/rev1/ansi/keymaps/mike1808/utils.c b/keyboards/gmmk/pro/rev1/ansi/keymaps/mike1808/utils.c deleted file mode 100644 index 009e826423..0000000000 --- a/keyboards/gmmk/pro/rev1/ansi/keymaps/mike1808/utils.c +++ /dev/null @@ -1,64 +0,0 @@ -/* Copyright 2021 Mikael Manukyan <arm.localhost@gmail.com> - * - * This program is free software: you can redistribute it and/or modify - * it under the terms of the GNU General Public License as published by - * the Free Software Foundation, either version 2 of the License, or - * (at your option) any later version. - * - * This program is distributed in the hope that it will be useful, - * but WITHOUT ANY WARRANTY; without even the implied warranty of - * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the - * GNU General Public License for more details. - * - * You should have received a copy of the GNU General Public License - * along with this program. If not, see <http://www.gnu.org/licenses/>. - */ -#include "utils.h" - -void store_rgb_state_to_eeprom(void) { - uint8_t mode = rgb_matrix_get_mode(); - uint8_t speed = rgb_matrix_get_speed(); - HSV color = rgb_matrix_get_hsv(); - - rgb_matrix_mode(mode); - rgb_matrix_set_speed(speed); - rgb_matrix_sethsv(color.h, color.s, color.v); -} - -void press(KeyPressState *self) { - self->_count++; - - dprintf("KPS: press: %d\n", self->_count); - - // pressed the first time - if (self->_count == 1) { - self->hander(true); - } -} - -void release(KeyPressState *self) { - self->_count--; - - dprintf("KPS: release: %d\n", self->_count); - - // all keys are relased - if (self->_count == 0) { - self->hander(false); - } -} - -void reset(KeyPressState *self) { - self->_count = 0; -} - -KeyPressState *NewKeyPressState(key_press_handler handler) { - KeyPressState *kps = (KeyPressState *)(malloc(sizeof(KeyPressState))); - - kps->_count = 0; - kps->press = press; - kps->release = release; - kps->reset = reset; - kps->hander = handler; - - return kps; -} diff --git a/keyboards/gmmk/pro/rev1/ansi/keymaps/mike1808/utils.h b/keyboards/gmmk/pro/rev1/ansi/keymaps/mike1808/utils.h deleted file mode 100644 index 49d0745cf8..0000000000 --- a/keyboards/gmmk/pro/rev1/ansi/keymaps/mike1808/utils.h +++ /dev/null @@ -1,32 +0,0 @@ -/* Copyright 2021 Mikael Manukyan <arm.localhost@gmail.com> - * - * This program is free software: you can redistribute it and/or modify - * it under the terms of the GNU General Public License as published by - * the Free Software Foundation, either version 2 of the License, or - * (at your option) any later version. - * - * This program is distributed in the hope that it will be useful, - * but WITHOUT ANY WARRANTY; without even the implied warranty of - * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the - * GNU General Public License for more details. - * - * You should have received a copy of the GNU General Public License - * along with this program. If not, see <http://www.gnu.org/licenses/>. - */ -#pragma once -#include "quantum.h" - -void store_rgb_state_to_eeprom(void); - -typedef void (*key_press_handler)(bool); - -typedef struct KeyPressState KeyPressState; -struct KeyPressState { - int _count; - void (*press)(KeyPressState *self); - void (*release)(KeyPressState *self); - void (*reset)(KeyPressState *self); - key_press_handler hander; -}; - -KeyPressState *NewKeyPressState(key_press_handler); diff --git a/keyboards/gmmk/pro/rev1/ansi/keymaps/paddlegame/config.h b/keyboards/gmmk/pro/rev1/ansi/keymaps/paddlegame/config.h deleted file mode 100644 index 8d8c35af49..0000000000 --- a/keyboards/gmmk/pro/rev1/ansi/keymaps/paddlegame/config.h +++ /dev/null @@ -1,24 +0,0 @@ -/* Copyright 2021 Tomas Guinan - * - * This program is free software: you can redistribute it and/or modify - * it under the terms of the GNU General Public License as published by - * the Free Software Foundation, either version 2 of the License, or - * (at your option) any later version. - * - * This program is distributed in the hope that it will be useful, - * but WITHOUT ANY WARRANTY; without even the implied warranty of - * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the - * GNU General Public License for more details. - * - * You should have received a copy of the GNU General Public License - * along with this program. If not, see <http://www.gnu.org/licenses/>. - */ - -#pragma once - -#ifdef RGB_MATRIX_ENABLE - #define RGB_MATRIX_DEFAULT_MODE RGB_MATRIX_SOLID_COLOR -# define RGB_DISABLE_WHEN_USB_SUSPENDED -#endif - -#define FORCE_NKRO diff --git a/keyboards/gmmk/pro/rev1/ansi/keymaps/paddlegame/keymap.c b/keyboards/gmmk/pro/rev1/ansi/keymaps/paddlegame/keymap.c deleted file mode 100644 index f4184525fc..0000000000 --- a/keyboards/gmmk/pro/rev1/ansi/keymaps/paddlegame/keymap.c +++ /dev/null @@ -1,475 +0,0 @@ -/* Copyright 2021 Glorious, LLC <salman@pcgamingrace.com> - Copyright 2021 Tomas Guinan - -This program is free software: you can redistribute it and/or modify -it under the terms of the GNU General Public License as published by -the Free Software Foundation, either version 2 of the License, or -(at your option) any later version. - -This program is distributed in the hope that it will be useful, -but WITHOUT ANY WARRANTY; without even the implied warranty of -MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the -GNU General Public License for more details. - -You should have received a copy of the GNU General Public License -along with this program. If not, see <http://www.gnu.org/licenses/>. -*/ - -#include QMK_KEYBOARD_H -#include "rgb_matrix_map.h" -#include "paddlegame.h" -#include <math.h> - -enum custom_layers { - _BASE, - _FN1, - _MO2, - _MO3, -}; - -enum custom_keycodes { - KC_00 = SAFE_RANGE, - KC_WINLK, //Toggles Win key on and off -}; - -bool process_record_user(uint16_t keycode, keyrecord_t *record) { - switch (keycode) { - case KC_00: - if (record->event.pressed) { - // when keycode KC_00 is pressed - SEND_STRING("00"); - } else { - // when keycode KC_00 is released - } - break; - - case KC_WINLK: - if (record->event.pressed) { - if(!keymap_config.no_gui) { - process_magic(GUI_OFF, record); - } else { - process_magic(GUI_ON, record); - } - } else unregister_code16(keycode); - break; - } - return true; -}; - - -const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = { - -// ESC F1 F2 F3 F4 F5 F6 F7 F8 F9 F10 F11 F12 Del Rotary(Mute) -// ~ 1 2 3 4 5 6 7 8 9 0 - (=) BackSpc Home -// Tab Q W E R T Y U I O P [ ] \ PgUp -// Caps A S D F G H J K L ; " Enter PgDn -// Sh_L Z X C V B N M , . ? Sh_R Up End -// Ct_L Win_L Alt_L SPACE Alt_R FN Ct_R Left Down Right - - - [_BASE] = LAYOUT( - 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_DEL, KC_MUTE, - 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_HOME, - 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_PGUP, - KC_CAPS, KC_A, KC_S, KC_D, KC_F, KC_G, KC_H, KC_J, KC_K, KC_L, KC_SCLN, KC_QUOT, KC_ENT, KC_PGDN, - 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, KC_END, - KC_LCTL, KC_LGUI, KC_LALT, KC_SPC, KC_RALT, MO(_FN1), KC_RCTL, KC_LEFT, KC_DOWN, KC_RGHT - ), - - [_FN1] = LAYOUT( - KC_SLEP, KC_MYCM, KC_WHOM, KC_CALC, KC_MSEL, KC_MPRV, KC_MNXT, KC_MPLY, KC_MSTP, KC_PSCR, KC_SCRL, KC_PAUS, _______, KC_INS, _______, - RGB_TOG, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, RGB_HUD, RGB_HUI, _______, RGB_M_P, - _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, TO(_MO2), RGB_SAD, RGB_SAI, QK_BOOT, RGB_M_B, - _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, RGB_RMOD, RGB_MOD, _______, RGB_M_R, - _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, RGB_VAI, RGB_M_SW, - _______, KC_WINLK, _______, _______, _______, _______, _______, RGB_SPD, RGB_VAD, RGB_SPI - ), - - [_MO2] = LAYOUT( - _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, - _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, - _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, - _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, - _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, - _______, _______, _______, _______, _______, TG(_MO2), _______, _______, _______, _______ - ), - - [_MO3] = LAYOUT( - _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, - _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, - _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, - _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, - _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, - _______, _______, _______, _______, _______, _______, _______, _______, _______, _______ - ), - -}; - -#ifdef ENCODER_ENABLE // Encoder Functionality - - bool encoder_update_user(uint8_t index, bool clockwise) { - - switch(get_highest_layer(layer_state)) { - case _FN1: - if ( clockwise ) { - tap_code16(KC_PGDN); - } else { - tap_code16(KC_PGUP); - } - break; - - case _MO2: - // Game: Paddle movement - if (damage_count == 0) { - if ( clockwise ) { - if (paddle_pos_full < 15) ++paddle_pos_full; - } else { - if (paddle_pos_full > 0) --paddle_pos_full; - } - } - break; - - case _BASE: - default: - if ( clockwise ) { - tap_code(KC_VOLU); - } else { - tap_code(KC_VOLD); - } - break; - } - //return true; //set to return false to counteract enabled encoder in pro.c - return false; - } -#endif - -#ifdef RGB_MATRIX_ENABLE - void init_ball(uint8_t i) { - i &= 1; - ball[i].on = true; - ball[i].up = false; - ball[i].y = 0; - ball[i].x = rand() % 16; - - // Set initial ball state - if (ball[i].x < 8) { - ball[i].left = false; - } else { - ball[i].x -= 4; - ball[i].left = true; - } - - // 1/4 chance of being an enemy ball after level 6 - if (level_number > 3) { - ball[i].enemy = ((rand() % 4) == 0); - } else { - ball[i].enemy = false; - } - } - - void hurt_paddle(void) { - if (paddle_lives > 0) { - --paddle_lives; - } - damage_timer = timer_read(); - damage_count = 10; - - // Reset board - init_ball(0); - ball[1].on = false; - } - - // Capslock, Scroll lock and Numlock indicator on Left side lights. - bool rgb_matrix_indicators_advanced_user(uint8_t led_min, uint8_t led_max) { - switch(get_highest_layer(layer_state)) { - case _FN1: - // Light up FN layer keys - if (!fn_active) { - fn_active = true; - rgb_value.r = 0xff; - rgb_value.g = 0x00; - rgb_value.b = 0x00; - } - - if (rgb_value.r == 0xff && rgb_value.g < 0xff) { - if (rgb_value.b > 0) { --rgb_value.b; } - else { ++rgb_value.g; } - } else if (rgb_value.g == 0xff && rgb_value.b < 0xff) { - if (rgb_value.r > 0) { --rgb_value.r; } - else { ++rgb_value.b; } - } else if (rgb_value.b == 0xff && rgb_value.r < 0xff) { - if (rgb_value.g > 0) { --rgb_value.g; } - else { ++rgb_value.r; } - } - - for (uint8_t i=0; i<ARRAY_SIZE(LED_RGB); i++) { - rgb_matrix_set_color(LED_RGB[i], rgb_value.r, rgb_value.g, rgb_value.b); - } - - for (uint8_t i=0; i<ARRAY_SIZE(LED_WHITE); i++) { - rgb_matrix_set_color(LED_WHITE[i], RGB_WHITE); - } - - for (uint8_t i=0; i<ARRAY_SIZE(LED_GREEN); i++) { - rgb_matrix_set_color(LED_GREEN[i], RGB_GREEN); - } - - rgb_matrix_set_color(LED_ESC, RGB_RED); - - rgb_matrix_set_color(LED_LWIN, RGB_BLUE); - break; - - case _MO2: - // Paddle game - if (!game_start) { - srand((unsigned int)timer_read()); - - // Store user light settings - last_hsv = rgb_matrix_get_hsv(); - rgb_matrix_sethsv_noeeprom(0, 0, 0); - - rgb_value.r = 0xff; - rgb_value.g = 0x00; - rgb_value.b = 0x00; - - paddle_pos_full = 8; - paddle_lives = 4; - bounce_count = 0; - level_number = 0; - damage_count = 0; - - init_ball(0); - ball[1].on = false; - ball_timer = timer_read(); - - game_start = true; - } - - // Set level indicator - if (level_number < 12) { - rgb_matrix_set_color(GAME_R0[level_number], RGB_BLUE); - } - - // Set life bar - for (uint8_t i=0; i < paddle_lives ; i++) { - rgb_matrix_set_color(GAME_LIVES[i], RGB_GREEN); - } - - uint8_t paddle_pos = paddle_pos_full >> 1; - - if (damage_count > 0) { - // Flash paddle when receiving damage - if (timer_elapsed(damage_timer) > 500) { - --damage_count; - damage_timer = timer_read(); - } - if ((damage_count & 1) == 0) { - for (uint8_t i=0; i < 3 ; i++) { - rgb_matrix_set_color(GAME_PADDLE[paddle_pos + i], RGB_RED); - } - } - if (damage_count == 0) { - ball_timer = timer_read(); - } - - - } else if (paddle_lives == 0) { - // Game over - for (uint8_t i=0; i<ARRAY_SIZE(LED_GAME_OVER); i++) { - rgb_matrix_set_color(LED_GAME_OVER[i], RGB_RED); - } - - } else if (level_number >= 12) { - // You win - if (rgb_value.r == 0xff && rgb_value.g < 0xff) { - if (rgb_value.b > 0) { --rgb_value.b; } - else { ++rgb_value.g; } - } else if (rgb_value.g == 0xff && rgb_value.b < 0xff) { - if (rgb_value.r > 0) { --rgb_value.r; } - else { ++rgb_value.b; } - } else if (rgb_value.b == 0xff && rgb_value.r < 0xff) { - if (rgb_value.g > 0) { --rgb_value.g; } - else { ++rgb_value.r; } - } - - for (uint8_t i=0; i < 3 ; i++) { - rgb_matrix_set_color(GAME_PADDLE[paddle_pos + i], rgb_value.r, rgb_value.g, rgb_value.b); - } - rgb_matrix_set_color(GAME_SMILE1[paddle_pos], rgb_value.r, rgb_value.g, rgb_value.b); - rgb_matrix_set_color(GAME_SMILE1[paddle_pos + 3], rgb_value.r, rgb_value.g, rgb_value.b); - rgb_matrix_set_color(GAME_SMILE2[paddle_pos], rgb_value.r, rgb_value.g, rgb_value.b); - rgb_matrix_set_color(GAME_SMILE2[paddle_pos + 3], rgb_value.r, rgb_value.g, rgb_value.b); - - } else { - // normal game loop - - // Set paddle position - for (uint8_t i=0; i < 3 ; i++) { - rgb_matrix_set_color(GAME_PADDLE[paddle_pos + i], RGB_GREEN); - } - - // Ball movement logic happens at intervals - if (timer_elapsed(ball_timer) > GAME_TIMER[level_number]) { - for (int i=0; i<2; ++i) { - if (ball[i].on) { - // Ball movement - if (ball[i].up) { - if (ball[i].y > 0) { - --ball[i].y; - if (!ball[i].left) ++ball[i].x; - } else { - // Count reflections. If > 10, increase level - ++bounce_count; - if (bounce_count >= 10) { - bounce_count = 0; - ++level_number; - } - ball[i].on = false; - } - } else { - ++ball[i].y; - if (ball[i].left) --ball[i].x; - if (ball[i].y > 4) { - // Remove a life if ball isn't returned and isn't enemy - if (!ball[i].enemy) { - hurt_paddle(); - i = 2; - } else { - ball[i].on = false; - } - } - } - } - } - if (ball[0].y == 4 && !ball[1].on) { - init_ball(1); - } - if (ball[1].y == 4 && !ball[0].on) { - init_ball(0); - } - if (!ball[0].on && !ball[1].on) { - init_ball(0); - } - ball_timer = timer_read(); - } - - // Other ball stuff - for (int i=0; i<2; ++i) { - if (ball[i].on) { - // Ball deflection logic - if (!ball[i].up && ball[i].y == 4 && (ball[i].x == paddle_pos || ball[i].x == paddle_pos - 1 || ball[i].x == paddle_pos + 1)) { - if (!ball[i].enemy) { - --ball[i].y; - if (!ball[i].left) { ++ball[i].x; } - ball[i].up = true; - } else { - hurt_paddle(); - i = 2; - } - } - - // Ball display - switch (ball[i].y) { - case 0: - if (ball[i].enemy) { - rgb_matrix_set_color(GAME_R0[ball[i].x], RGB_RED); - } else { - rgb_matrix_set_color(GAME_R0[ball[i].x], RGB_WHITE); - } - break; - - case 1: - if (ball[i].enemy) { - rgb_matrix_set_color(GAME_R1[ball[i].x], RGB_RED); - } else { - rgb_matrix_set_color(GAME_R1[ball[i].x], RGB_WHITE); - } - break; - - case 2: - if (ball[i].enemy) { - rgb_matrix_set_color(GAME_R2[ball[i].x], RGB_RED); - } else { - rgb_matrix_set_color(GAME_R2[ball[i].x], RGB_WHITE); - } - break; - - case 3: - if (ball[i].enemy) { - rgb_matrix_set_color(GAME_R3[ball[i].x], RGB_RED); - } else { - rgb_matrix_set_color(GAME_R3[ball[i].x], RGB_WHITE); - } - break; - - case 4: - if (ball[i].enemy) { - rgb_matrix_set_color(GAME_R4[ball[i].x], RGB_RED); - } else { - rgb_matrix_set_color(GAME_R4[ball[i].x], RGB_WHITE); - } - break; - } - } - } - } - - - break; - - default: - fn_active = false; - if (game_start) { - // Reset lighting settings - game_start = false; - rgb_matrix_sethsv_noeeprom(last_hsv.h, last_hsv.s, last_hsv.v); - } - break; - } - - led_t led_state = host_keyboard_led_state(); - - if (led_state.caps_lock) { - if (!caps_active) { - caps_active = true; - caps_flash_on = true; - caps_flasher = timer_read(); - } - if (timer_elapsed(caps_flasher) > 500) { - caps_flasher = timer_read(); - caps_flash_on = !caps_flash_on; - } - - rgb_matrix_set_color(LED_CAPS, RGB_WHITE); - if (caps_flash_on) { - for (uint8_t i=0; i<ARRAY_SIZE(LED_SIDE_LEFT); i++) { - rgb_matrix_set_color(LED_SIDE_LEFT[i], RGB_RED); - rgb_matrix_set_color(LED_SIDE_RIGHT[i], RGB_RED); - } - } else { - for (uint8_t i=0; i<ARRAY_SIZE(LED_SIDE_LEFT); i++) { - rgb_matrix_set_color(LED_SIDE_LEFT[i], 0, 0, 0); - rgb_matrix_set_color(LED_SIDE_RIGHT[i], 0, 0, 0); - } - } - } else { - caps_active = false; - } - if (led_state.scroll_lock) { - rgb_matrix_set_color(LED_F10, RGB_WHITE); - } - if (keymap_config.no_gui) { - rgb_matrix_set_color(LED_LWIN, RGB_RED); //light up Win key when disabled - } - return false; - } - -#endif - -void keyboard_post_init_user(void) { - - #ifdef RGB_MATRIX_ENABLE - rgb_matrix_set_color_all(RGB_RED); // Default startup colour - #endif - -} diff --git a/keyboards/gmmk/pro/rev1/ansi/keymaps/paddlegame/paddlegame.h b/keyboards/gmmk/pro/rev1/ansi/keymaps/paddlegame/paddlegame.h deleted file mode 100644 index 27df2dd703..0000000000 --- a/keyboards/gmmk/pro/rev1/ansi/keymaps/paddlegame/paddlegame.h +++ /dev/null @@ -1,46 +0,0 @@ -/* Copyright 2021 Glorious, LLC <salman@pcgamingrace.com> - Copyright 2021 Tomas Guinan - -This program is free software: you can redistribute it and/or modify -it under the terms of the GNU General Public License as published by -the Free Software Foundation, either version 2 of the License, or -(at your option) any later version. - -This program is distributed in the hope that it will be useful, -but WITHOUT ANY WARRANTY; without even the implied warranty of -MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the -GNU General Public License for more details. - -You should have received a copy of the GNU General Public License -along with this program. If not, see <http://www.gnu.org/licenses/>. -*/ - - -const uint16_t GAME_TIMER[] = { - 400, 350, 300, 250, 400, 350, 300, 250, 225, 200, 175, 150 -}; - -bool game_start = false; -HSV last_hsv; -static uint8_t paddle_pos_full; -static uint8_t paddle_lives; -static uint8_t level_number; -static uint8_t bounce_count; -static uint8_t damage_count; -static uint16_t damage_timer; -static uint16_t ball_timer; - -struct BallStruct -{ - uint8_t x; - uint8_t y; - bool on; - bool up; - bool left; - bool enemy; -}; - -struct BallStruct ball[2]; - -void init_ball(uint8_t i); -void hurt_paddle(void);
\ No newline at end of file diff --git a/keyboards/gmmk/pro/rev1/ansi/keymaps/paddlegame/readme.md b/keyboards/gmmk/pro/rev1/ansi/keymaps/paddlegame/readme.md deleted file mode 100644 index c6da7f5f47..0000000000 --- a/keyboards/gmmk/pro/rev1/ansi/keymaps/paddlegame/readme.md +++ /dev/null @@ -1,18 +0,0 @@ -![GMMK Pro Paddle Game zLayout Image](https://i.imgur.com/RYcKyOj.png) - -# Paddle Game GMMK Pro layout by Tomas Guinan - -- Add Print Screen, Scroll Lock, Pause/Break, Insert to Fn layer -- Toggle backlight using Fn+` - - If you don't like using a backlight but wnat to play the paddle game or - use other RGB features, turn RGB on and set brightness to 0 -- Usable Fn layer keys are backlit -- Implement Win key lock using Fn+Win like in Glorious Core firmware -- Caps Lock and Scroll Lock keys light up white when active -- Caps Lock has red flashing side lights like in Glorious Core firmware -- Layer 2 includes Paddle Game, playable by pressing Fn+P - - Use rotary encoder to control paddle - - Contains 12 levels, indicated by blue LED on F row - - Player has 4 lives, indicated by nav cluster - - Deflect white balls while avoiding red ones - - Press Fn to quit game diff --git a/keyboards/gmmk/pro/rev1/ansi/keymaps/paddlegame/rgb_matrix_map.h b/keyboards/gmmk/pro/rev1/ansi/keymaps/paddlegame/rgb_matrix_map.h deleted file mode 100644 index 06d34ba6cb..0000000000 --- a/keyboards/gmmk/pro/rev1/ansi/keymaps/paddlegame/rgb_matrix_map.h +++ /dev/null @@ -1,181 +0,0 @@ -/* Copyright 2021 Tomas Guinan - * - * This program is free software: you can redistribute it and/or modify - * it under the terms of the GNU General Public License as published by - * the Free Software Foundation, either version 2 of the License, or - * (at your option) any later version. - * - * This program is distributed in the hope that it will be useful, - * but WITHOUT ANY WARRANTY; without even the implied warranty of - * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the - * GNU General Public License for more details. - * - * You should have received a copy of the GNU General Public License - * along with this program. If not, see <http://www.gnu.org/licenses/>. - */ - - -#ifdef RGB_MATRIX_ENABLE - - bool fn_active = false; - bool caps_active = false; - bool caps_flash_on = false; - - static uint16_t caps_flasher = 0; - RGB rgb_value; - - // RGB LED locations - enum led_location_map { - LED_ESC, // 0, ESC, k13 - LED_GRV, // 1, ~, k16 - LEB_TAB, // 2, Tab, k11 - LED_CAPS, // 3, Caps, k21 - LED_LSFT, // 4, Sh_L, k00 - LED_LCTL, // 5, Ct_L, k06 - LED_F1, // 6, F1, k26 - LED_1, // 7, 1, k17 - LED_Q, // 8, Q, k10 - LED_A, // 9, A, k12 - LED_Z, // 10, Z, k14 - LED_LWIN, // 11, Win_L, k90 - LED_F2, // 12, F2, k36 - LED_2, // 13, 2, k27 - LED_W, // 14, W, k20 - LED_S, // 15, S, k22 - LED_X, // 16, X, k24 - LED_LALT, // 17, Alt_L, k93 - LED_F3, // 18, F3, k31 - LED_3, // 19, 3, k37 - LED_E, // 20, E, k30 - LED_D, // 21, D, k32 - LED_C, // 22, C, k34 - LED_F4, // 23, F4, k33 - LED_4, // 24, 4, k47 - LED_R, // 25, R, k40 - LED_F, // 26, F, k42 - LED_V, // 27, V, k44 - LED_F5, // 28, F5, k07 - LED_5, // 29, 5, k46 - LED_T, // 30, T, k41 - LED_G, // 31, G, k43 - LED_B, // 32, B, k45 - LED_SPC, // 33, SPACE, k94 - LED_F6, // 34, F6, k63 - LED_6, // 35, 6, k56 - LED_Y, // 36, Y, k51 - LED_H, // 37, H, k53 - LED_N, // 38, N, k55 - LED_F7, // 39, F7, k71 - LED_7, // 40, 7, k57 - LED_U, // 41, U, k50 - LED_J, // 42, J, k52 - LED_M, // 43, M, k54 - LED_F8, // 44, F8, k76 - LED_8, // 45, 8, k67 - LED_I, // 46, I, k60 - LED_K, // 47, K, k62 - LED_COMM, // 48, ,, k64 - LED_RALT, // 49, Alt_R, k95 - LED_F9, // 50, F9, ka6 - LED_9, // 51, 9, k77 - LED_O, // 52, O, k70 - LED_L, // 53, L, k72 - LED_DOT, // 54, ., k74 - LED_FN, // 55, FN, k92 - LED_F10, // 56, F10, ka7 - LED_0, // 57, 0, k87 - LED_P, // 58, P, k80 - LED_SCLN, // 59, ;, k82 - LED_SLSH, // 60, ?, k85 - LED_F11, // 61, F11, ka3 - LED_MINS, // 62, -, k86 - LED_LBRC, // 63, [, k81 - LED_QUOT, // 64, ", k83 - LED_RCTL, // 65, Ct_R, k04 - LED_F12, // 66, F12, ka5 - LED_L1, // 67, LED, l01 - LED_R1, // 68, LED, l11 - LED_DEL, // 69, Del, k97 - LED_L2, // 70, LED, l02 - LED_R2, // 71, LED, l12 - LED_HOME, // 72, Home, k65 - LED_L3, // 73, LED, l03 - LED_R3, // 74, LED, l13 - LED_PGUP, // 75, PgUp, k15 - LED_L4, // 76, LED, l04 - LED_R4, // 77, LED, l14 - LED_EQL, // 78, =, k66 - LED_RIGHT, // 79, Right, k05 - LED_L5, // 80, LED, l05 - LED_R5, // 81, LED, l15 - LED_END, // 82, End, k75 - LED_L6, // 83, LED, l06 - LED_R6, // 84, LED, l16 - LED_BSPC, // 85, BSpc, ka1 - LED_PGDN, // 86, PgDn, k25 - LED_L7, // 87, LED, l07 - LED_R7, // 88, LED, l17 - LED_RBRC, // 89, ], k61 - LED_RSFT, // 90, Sh_R, k91 - LED_L8, // 91, LED, l08 - LED_R8, // 92, LED, l18 - LED_BSLS, // 93, \, ka2 - LED_UP, // 94, Up, k35 - LED_LEFT, // 95, Left, k03 - LED_ENT, // 96, Enter, ka4 - LED_DOWN // 97, Down, k73 - }; - - const uint8_t LED_RGB[] = { - LED_MINS, LED_EQL, - LED_LBRC, LED_RBRC, - LED_SCLN, LED_QUOT, - LED_HOME, LED_PGUP, LED_PGDN, LED_END, - LED_UP, LED_DOWN, LED_LEFT, LED_RIGHT - }; - - const uint8_t LED_GREEN[] = { - LED_F1, LED_F2, LED_F3, LED_F4, - LED_F5, LED_F6, LED_F7, LED_F8 - }; - - const uint8_t LED_WHITE[] = { - LED_F9, LED_F10, LED_F11, LED_DEL - }; - - const uint8_t LED_SIDE_LEFT[] = { LED_L1, LED_L2, LED_L3, LED_L4, LED_L5, LED_L6, LED_L7, LED_L8}; - - const uint8_t LED_SIDE_RIGHT[] = { LED_R1, LED_R2, LED_R3, LED_R4, LED_R5, LED_R6, LED_R7, LED_R8}; - - // Breakout LED rules - - const uint8_t GAME_LIVES[] = { LED_HOME, LED_PGUP, LED_PGDN, LED_END }; - const uint8_t GAME_PADDLE[] = { - LED_Z, LED_X, LED_C, LED_V, LED_B, LED_N, LED_M, LED_COMM, LED_DOT, LED_SLSH - }; - const uint8_t GAME_SMILE1[] = { - LED_A, LED_S, LED_D, LED_F, LED_G, LED_H, LED_J, LED_K, LED_L, LED_SCLN, LED_QUOT - }; - const uint8_t GAME_SMILE2[] = { - LED_2, LED_3, LED_4, LED_5, LED_6, LED_7, LED_8, LED_9, LED_0, LED_MINS, LED_EQL - }; - const uint8_t GAME_R4[] = { - LED_X, LED_C, LED_V, LED_B, LED_N, LED_M, LED_COMM, LED_DOT - }; - const uint8_t GAME_R3[] = { - LED_S, LED_D, LED_F, LED_G, LED_H, LED_J, LED_K, LED_L, LED_SCLN - }; - const uint8_t GAME_R2[] = { - LED_W, LED_E, LED_R, LED_T, LED_Y, LED_U, LED_I, LED_O, LED_P, LED_LBRC - }; - const uint8_t GAME_R1[] = { - LED_2, LED_3, LED_4, LED_5, LED_6, LED_7, LED_8, LED_9, LED_0, LED_MINS, LED_EQL - }; - const uint8_t GAME_R0[] = { - LED_F1, LED_F2, LED_F3, LED_F4, LED_F5, LED_F6, LED_F7, LED_F8, LED_F9, LED_F10, LED_F11, LED_F12 - }; - - const uint8_t LED_GAME_OVER[] = { LED_5, LED_8, LED_F, LED_G, LED_H, LED_J, LED_C, LED_M }; - - -#endif
\ No newline at end of file diff --git a/keyboards/gmmk/pro/rev1/ansi/keymaps/paddlegame/rules.mk b/keyboards/gmmk/pro/rev1/ansi/keymaps/paddlegame/rules.mk deleted file mode 100644 index a3f5bfd35c..0000000000 --- a/keyboards/gmmk/pro/rev1/ansi/keymaps/paddlegame/rules.mk +++ /dev/null @@ -1,4 +0,0 @@ -MOUSEKEY_ENABLE = no -BOOTMAGIC_ENABLE = yes # Enable Bootmagic Lite -RGB_MATRIX_ENABLE = yes -ENCODER_ENABLE = yes diff --git a/keyboards/gmmk/pro/rev1/ansi/keymaps/stickandgum/config.h b/keyboards/gmmk/pro/rev1/ansi/keymaps/stickandgum/config.h deleted file mode 100644 index 91d731faca..0000000000 --- a/keyboards/gmmk/pro/rev1/ansi/keymaps/stickandgum/config.h +++ /dev/null @@ -1,75 +0,0 @@ -/* Copyright 2021 stickandgum - * - * This program is free software: you can redistribute it and/or modify - * it under the terms of the GNU General Public License as published by - * the Free Software Foundation, either version 2 of the License, or - * (at your option) any later version. - * - * This program is distributed in the hope that it will be useful, - * but WITHOUT ANY WARRANTY; without even the implied warranty of - * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the - * GNU General Public License for more details. - * - * You should have received a copy of the GNU General Public License - * along with this program. If not, see <http://www.gnu.org/licenses/>. - */ - -#pragma once - -// I like NKRO.. but let's not force it. @drashna pointed out some older hardware has issues - Toggle it via keycode if you like. -// #define FORCE_NKRO - -// At the time of this, there are 41 effects! That may be a bit too many to cycle through - keeping what I believe is the best. -#ifdef RGB_MATRIX_ENABLE - -// #define RGB_MATRIX_DEFAULT_MODE RGB_MATRIX_SOLID_COLOR - -// Below added per: https://beta.docs.qmk.fm/using-qmk/hardware-features/lighting/feature_rgb_matrix#suspended-state-id-suspended-state - #define RGB_DISABLE_WHEN_USB_SUSPENDED - - #define RGB_MATRIX_FRAMEBUFFER_EFFECTS // Heatmap, Rain - #define RGB_MATRIX_KEYPRESSES // REACTIVE, SPLASH modes - -// Soon we need to ENABLE modes by DEFAULT soon as per: https://github.com/qmk/qmk_firmware/pull/13758 Thanks @noroadsleft -// #undef ENABLE_RGB_MATRIX_SOLID_COLOR // BUILT IN (MAPPED!) Static single color. -// #undef ENABLE_RGB_MATRIX_ALPHAS_MODS // Accenting various keys on the keyboard. -// #undef ENABLE_RGB_MATRIX_GRADIENT_UP_DOWN // Top down rainbow! -# undef ENABLE_RGB_MATRIX_GRADIENT_LEFT_RIGHT // Left Right Rainbow (the top-down is better imho). - // #undef ENABLE_RGB_MATRIX_BREATHING // Built in (MAPPED!) - // #undef ENABLE_RGB_MATRIX_BAND_SAT // Single hue band fading saturation scrolling left to right (with white) - // #undef ENABLE_RGB_MATRIX_BAND_VAL // Single hue band fading brightness scrolling left to right (with black) -# undef ENABLE_RGB_MATRIX_BAND_PINWHEEL_SAT // Single hue 3 blade spinning pinwheel fades sat (RGB_MATRIX_CYCLE_PINWHEEL) -# undef ENABLE_RGB_MATRIX_BAND_PINWHEEL_VAL // See above -# undef ENABLE_RGB_MATRIX_BAND_SPIRAL_SAT // See above - // #undef ENABLE_RGB_MATRIX_BAND_SPIRAL_VAL // Single hue spinning spiral fades brightness (with black) -# undef ENABLE_RGB_MATRIX_CYCLE_ALL // Full keyboard cycling through rainbow - // #undef ENABLE_RGB_MATRIX_CYCLE_LEFT_RIGHT // BUILT IN (MAPPED!) Full Rainbow Left to Right -# undef ENABLE_RGB_MATRIX_CYCLE_UP_DOWN // Full gradient scrolling top to bottom -# undef ENABLE_RGB_MATRIX_CYCLE_OUT_IN // Rainbow circles coming to center. -# undef ENABLE_RGB_MATRIX_CYCLE_OUT_IN_DUAL // Two Rainbow circles coming to 1/3 and 2/3 points. -# undef ENABLE_RGB_MATRIX_RAINBOW_MOVING_CHEVRON // Full gradent Chevron shapped scrolling left to right - // #undef ENABLE_RGB_MATRIX_CYCLE_PINWHEEL // BUILT IN (MAPPED!) - Consider disabling this - my poor eyes. -# undef ENABLE_RGB_MATRIX_CYCLE_SPIRAL // Full gradient spinning spiral around center of keyboard -# undef ENABLE_RGB_MATRIX_DUAL_BEACON // Two rainbows spinning around keyboards -# undef ENABLE_RGB_MATRIX_RAINBOW_BEACON // Similar to above. -# undef ENABLE_RGB_MATRIX_RAINBOW_PINWHEELS // Enough of the spinning rainbows - we get it! :-) -# undef ENABLE_RGB_MATRIX_RAINDROPS // Jellybeans are better. - // #undef ENABLE_RGB_MATRIX_JELLYBEAN_RAINDROPS // Randomly changes a single key's hue and saturation - better than above. -# undef ENABLE_RGB_MATRIX_HUE_BREATHING // Hue shifts up a slight ammount at the same time, then shifts back -# undef ENABLE_RGB_MATRIX_HUE_PENDULUM // Hue shifts up a slight ammount in a wave to the right, then back to the left -# undef ENABLE_RGB_MATRIX_HUE_WAVE // Hue shifts up a slight ammount and then back down in a wave to the right - // #undef ENABLE_RGB_MATRIX_TYPING_HEATMAP // Hot keys! - // #undef ENABLE_RGB_MATRIX_DIGITAL_RAIN // The Matrix! -# undef ENABLE_RGB_MATRIX_SOLID_REACTIVE_SIMPLE // Key hits shown in current hue - all other keys black: wide slightly better imo -# undef ENABLE_RGB_MATRIX_SOLID_REACTIVE // Key hits shown in current hue - all other keys shifted hue - // #undef ENABLE_RGB_MATRIX_SOLID_REACTIVE_WIDE // Hue & value pulse around a single key hit then fades value out (black otherwise) -# undef ENABLE_RGB_MATRIX_SOLID_REACTIVE_MULTIWIDE // same as above but a bit too intense imo. -# undef ENABLE_RGB_MATRIX_SOLID_REACTIVE_CROSS // Column and Row single color fade. -# undef ENABLE_RGB_MATRIX_SOLID_REACTIVE_MULTICROSS // Column and Row single color fade. (Multi-keys) -# undef ENABLE_RGB_MATRIX_SOLID_REACTIVE_NEXUS // Hue & value pulse away on the same column and row of key hit then fades -# undef ENABLE_RGB_MATRIX_SOLID_REACTIVE_MULTINEXUS // Hue & value pulse away on the same column and row of multi-key hit then fades -# undef ENABLE_RGB_MATRIX_SPLASH // Full rainbow pulses from key hit. All else black. -# undef ENABLE_RGB_MATRIX_MULTISPLASH // Full rainbow pulses from multi-keys. All else black. -# undef ENABLE_RGB_MATRIX_SOLID_SPLASH // Single color pulses from key hit. All else black. (Using solid_reactive_wide instead). -# undef ENABLE_RGB_MATRIX_SOLID_MULTISPLASH // Single color pulses from muli-keys. All else black. (Using solid_reactive_wide instead). -#endif diff --git a/keyboards/gmmk/pro/rev1/ansi/keymaps/stickandgum/keymap.c b/keyboards/gmmk/pro/rev1/ansi/keymaps/stickandgum/keymap.c deleted file mode 100644 index 9a3123a0a7..0000000000 --- a/keyboards/gmmk/pro/rev1/ansi/keymaps/stickandgum/keymap.c +++ /dev/null @@ -1,302 +0,0 @@ -/* Copyright 2021 stickandgum GMMK Pro ANSI Enhanced Keymap File - * - * This program is free software: you can redistribute it and/or modify - * it under the terms of the GNU General Public License as published by - * the Free Software Foundation, either version 2 of the License, or - * (at your option) any later version. - * - * This program is distributed in the hope that it will be useful, - * but WITHOUT ANY WARRANTY; without even the implied warranty of - * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the - * GNU General Public License for more details. - * - * You should have received a copy of the GNU General Public License - * along with this program. If not, see <http://www.gnu.org/licenses/>. - */ - -#include QMK_KEYBOARD_H - -enum my_keycodes { - LED_TILDE = SAFE_RANGE, - LED_1, - LED_2, - LED_3, - LED_4, - LED_5, - LED_6, - LED_7, - LED_8, - LED_9, - LED_0, - LED_MINS, - LED_EQL, - QMKBEST -}; - -const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = { - -// ESC F1 F2 F3 F4 F5 F6 F7 F8 F9 F10 F11 F12 Prt Rotary(Mute) -// ~ 1 2 3 4 5 6 7 8 9 0 - (=) BackSpc Del -// Tab Q W E R T Y U I O P [ ] \ PgUp -// Caps A S D F G H J K L ; " Enter PgDn -// Sh_L Z X C V B N M , . ? Sh_R Up End -// Ct_L Win_L Alt_L SPACE Alt_R FN Ct_R Left Down Right - - [0] = LAYOUT( - 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_MUTE, - 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_HOME, - 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_PGUP, - KC_CAPS, KC_A, KC_S, KC_D, KC_F, KC_G, KC_H, KC_J, KC_K, KC_L, KC_SCLN, KC_QUOT, KC_ENT, KC_PGDN, - 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, KC_END, - KC_LCTL, KC_LGUI, KC_LALT, KC_SPC, KC_DEL, MO(1), KC_RCTL, KC_LEFT, KC_DOWN, KC_RGHT - ), - - [1] = LAYOUT( - _______, KC_CALC, KC_MYCM, KC_MSEL, KC_MAIL, KC_WHOM, _______, _______, _______, _______, _______, KC_WAKE, KC_SLEP, KC_PAUS, _______, - LED_TILDE, LED_1, LED_2, LED_3, LED_4, LED_5, LED_6, LED_7, LED_8, LED_9, LED_0, LED_MINS, LED_EQL, KC_INS, KC_SCRL, - _______, RGB_SAI, RGB_VAI, RGB_HUI, RGB_TOG, _______, _______, _______, _______, _______, _______, _______, _______, QK_BOOT, KC_BRIU, - _______, RGB_RMOD, RGB_VAD, RGB_MOD, RGB_SPI, _______, _______, _______, _______, QMKBEST, _______, _______, _______, KC_BRID, - _______, _______, _______, _______, _______, _______, NK_TOGG, _______, _______, _______, _______, _______, KC_MPLY, KC_PWR, - _______, _______, _______, _______, KC_RALT, _______, KC_APP, KC_MPRV, KC_MSTP, KC_MNXT - ), - -}; - -#ifdef ENCODER_ENABLE -bool encoder_update_user(uint8_t index, bool clockwise) { - // https://beta.docs.qmk.fm/using-qmk/simple-keycodes/feature_advanced_keycodes#alt-escape-for-alt-tab-id-alt-escape-for-alt-tab - if (get_mods() & MOD_MASK_CTRL) { // If CTRL is held - uint8_t mod_state = get_mods(); // Store all modifiers that are held - unregister_mods(MOD_MASK_CTRL); // Immediately unregister the CRTL key (don't send CTRL-PgDn) - del_mods doesn't work here (not immediate) - if (clockwise) { - tap_code(KC_PGDN); - } else { - tap_code(KC_PGUP); - } - set_mods(mod_state); // Add back in the CTRL key - so ctrl-key will work if ctrl was never released after paging. - } else if (get_mods() & MOD_MASK_SHIFT) { - uint8_t mod_state = get_mods(); - unregister_mods(MOD_MASK_SHIFT); - if (clockwise) { - #ifdef MOUSEKEY_ENABLE // If using the mouse scroll - make sure MOUSEKEY is enabled - tap_code(KC_MS_WH_DOWN); - #else - tap_code(KC_VOLU); - #endif - } else { - #ifdef MOUSEKEY_ENABLE - tap_code(KC_MS_WH_UP); - #else - tap_code(KC_VOLD); - #endif - } - set_mods(mod_state); - } else if (clockwise) { // All else volume. - tap_code(KC_VOLU); - } else { - tap_code(KC_VOLD); - } - //return true; //set to return false to counteract enabled encoder in pro.c - return false; -} -#endif //ENCODER_ENABLE - -#ifdef RGB_MATRIX_ENABLE -static void set_rgb_caps_leds_on(void); -static void set_rgb_scroll_leds_on(void); -static void set_rgb_caps_leds_off(void); -static void set_rgb_scroll_leds_off(void); - -// Called on powerup and is the last _init that is run. -void keyboard_post_init_user(void) { - - int mods[35] = {0,2,3,4,5,11,17,33,49,55,65,95,97,79,94,85,93,96,90,69,92,67,76,80,91,75,86,68,77,81,92,28,34,39,44}; - int j; - - /* output each array element's value */ - for (j = 0; j < 35; j++ ) { - g_led_config.flags[mods[j]] = LED_FLAG_MODIFIER; - } - - if (!rgb_matrix_is_enabled()) { - rgb_matrix_enable(); -#ifdef CONSOLE_ENABLE - uprintf("ERROR! RGB Matrix Enabled and wrote to EEPROM! -How was the RGB Matrix Disabled?"); -#endif - } -} - -bool process_record_user(uint16_t keycode, keyrecord_t *record) { -#ifdef CONSOLE_ENABLE - switch(rgb_matrix_get_flags()) { - case 0x08: - uprintf("FLAG: LED_FLAG_INDICATOR "); - break; - case 0x04: - uprintf("FLAG: LED_FLAG_KEYLIGHT "); - break; - case 0x02: - uprintf("FLAG: LED_FLAG_UNDERGLOW "); - break; - case 0x01: - uprintf("FLAG: LED_FLAG_MODIFIER "); - break; - case 0xFF: - uprintf("FLAG: LED_FLAG_ALL "); - break; - case 0x00: - uprintf("FLAG: LED_FLAG_NONE "); - break; - default: - uprintf("FLAG Other: %u ", rgb_matrix_get_flags()); - } - uprintf("Caps? %d Scroll? %d - MATRIX: %d\n", host_keyboard_led_state().caps_lock, host_keyboard_led_state().scroll_lock, rgb_matrix_is_enabled()); -#endif //CONSOLE_ENABLE - - switch (keycode) { - case RGB_TOG: - if (record->event.pressed) { - if (rgb_matrix_get_flags() == LED_FLAG_ALL) { - rgb_matrix_set_flags(LED_FLAG_NONE); - rgb_matrix_set_color_all(0, 0, 0); - } else { - rgb_matrix_set_flags(LED_FLAG_ALL); - } - } - return false; - case LED_TILDE: - rgb_matrix_mode(RGB_MATRIX_SOLID_COLOR); // Can use RGB_M_P built-in keycode instead. - break; - case LED_1: - rgb_matrix_mode(RGB_MATRIX_ALPHAS_MODS); - break; - case LED_2: - rgb_matrix_mode(RGB_MATRIX_GRADIENT_UP_DOWN); - break; - case LED_3: - rgb_matrix_mode(RGB_MATRIX_JELLYBEAN_RAINDROPS); - break; - case LED_4: - rgb_matrix_mode(RGB_MATRIX_BAND_SAT); - break; - case LED_5: - rgb_matrix_mode(RGB_MATRIX_BAND_VAL); - break; - case LED_6: - rgb_matrix_mode(RGB_MATRIX_BAND_SPIRAL_VAL); - break; - case LED_7: - rgb_matrix_mode(RGB_MATRIX_CYCLE_LEFT_RIGHT); // Can use RGB_M_R built-in keycode instead. - break; - case LED_8: - rgb_matrix_mode(RGB_MATRIX_CYCLE_PINWHEEL); // Can use RGB_M_SW built-in keycode instead. - break; - case LED_9: - rgb_matrix_mode(RGB_MATRIX_BREATHING); // Can use RGB_M_B built-in keycode instead. - break; - #ifdef RGB_MATRIX_KEYPRESSES // Reactive effects require RGB_MATRIX_KEYPRESSES in config.h - case LED_0: - rgb_matrix_mode(RGB_MATRIX_SOLID_REACTIVE_WIDE); - break; - #endif //RGB_MATRIX_KEYPRESSES - #ifdef RGB_MATRIX_FRAMEBUFFER_EFFECTS // Heatmap and Rain require #define RGB_MATRIX_FRAMEBUFFER_EFFECTS in config.h - case LED_MINS: - rgb_matrix_mode(RGB_MATRIX_DIGITAL_RAIN); - break; - case LED_EQL: - rgb_matrix_mode(RGB_MATRIX_TYPING_HEATMAP); - break; - #endif //RGB_MATRIX_FRAMEBUFFER_EFFECTS - case QMKBEST: - if (record->event.pressed) { // when keycode QMKBEST is pressed - SEND_STRING("QMK rocks"); - } else { // when keycode QMKBEST key is released - SEND_STRING("!!"); - } - break; - } - return true; -} - -bool rgb_matrix_indicators_user(void) { - if (host_keyboard_led_state().caps_lock) { - set_rgb_caps_leds_on(); - } else { - if (rgb_matrix_get_flags() == LED_FLAG_NONE){ - set_rgb_caps_leds_off(); - } - } - if (host_keyboard_led_state().scroll_lock) { - set_rgb_scroll_leds_on(); - } else { - if (rgb_matrix_get_flags() == LED_FLAG_NONE){ - set_rgb_scroll_leds_off(); - } - } - return false; -} - -// RGB led number layout, function of the key - -// 67, led 01 0, ESC 6, F1 12, F2 18, F3 23, F4 28, F5 34, F6 39, F7 44, F8 50, F9 56, F10 61, F11 66, F12 69, Prt Rotary(Mute) 68, led 12 -// 70, led 02 1, ~ 7, 1 13, 2 19, 3 24, 4 29, 5 35, 6 40, 7 45, 8 51, 9 57, 0 62, -_ 78, (=+) 85, BackSpc 72, Home 71, led 13 -// 73, led 03 2, Tab 8, Q 14, W 20. E 25, R 30, T 36, Y 41, U 46, I 52, O 58, P 63, [{ 89, ]} 93, \| 75, PgUp 74, led 14 -// 76, led 04 3, Caps 9, A 15, S 21, D 26, F 31, G 37, H 42, J 47, K 53, L 59, ;: 64, '" 96, Enter 86, PgDn 77, led 15 -// 80, led 05 4, Sh_L 10, Z 16, X 22, C 27, V 32, B 38, N 43, M 48, ,< 54, .< 60, /? 90, Sh_R 94, Up 82, End 81, led 16 -// 83, led 06 5, Ct_L 11,Win_L 17, Alt_L 33, SPACE 49, Alt_R 55, FN 65, Ct_R 95, Left 97, Down 79, Right 84, led 17 -// 87, led 07 88, led 18 -// 91, led 08 92, led 19 - -static void set_rgb_caps_leds_on(void) { - rgb_matrix_set_color(0, 255, 0, 0); //Escape Key - rgb_matrix_set_color(3, 255, 0, 0); //capslock key - rgb_matrix_set_color(5, 255, 0, 0); //Left CTRL key - rgb_matrix_set_color(67, 255, 0, 0); //Left LED 01 - rgb_matrix_set_color(68, 255, 0, 0); //Right LED 12 - rgb_matrix_set_color(70, 255, 127, 0); //Left LED 02 - rgb_matrix_set_color(71, 255, 127, 0); //Right LED 13 - rgb_matrix_set_color(73, 255, 255, 0); //Left LED 03 - rgb_matrix_set_color(74, 255, 255, 0); //Right LED 14 - rgb_matrix_set_color(76, 0, 255, 0); //Left LED 04 - rgb_matrix_set_color(77, 0, 255, 0); //Right LED 15 - rgb_matrix_set_color(80, 0, 0, 255); //Left LED 05 - rgb_matrix_set_color(81, 0, 0, 255); //Right LED 16 - rgb_matrix_set_color(83, 46, 43, 95); //Left LED 06 - rgb_matrix_set_color(84, 46, 43, 95); //Right LED 17 - rgb_matrix_set_color(87, 139, 0, 255); //Left LED 07 - rgb_matrix_set_color(88, 139, 0, 255); //Right LED 18 - rgb_matrix_set_color(91, 255, 255, 255); //Left LED 08 - rgb_matrix_set_color(92, 255, 255, 255); //Right LED 19 -} - -static void set_rgb_caps_leds_off(void) { - rgb_matrix_set_color(0, 0, 0, 0); //Escape Key - rgb_matrix_set_color(3, 0, 0, 0); //capslock key - rgb_matrix_set_color(5, 0, 0, 0); //Left CTRL key - rgb_matrix_set_color(67, 0, 0, 0); //Left LED 01 - rgb_matrix_set_color(68, 0, 0, 0); //Right LED 12 - rgb_matrix_set_color(70, 0, 0, 0); //Left LED 02 - rgb_matrix_set_color(71, 0, 0, 0); //Right LED 13 - rgb_matrix_set_color(73, 0, 0, 0); //Left LED 03 - rgb_matrix_set_color(74, 0, 0, 0); //Right LED 14 - rgb_matrix_set_color(76, 0, 0, 0); //Left LED 04 - rgb_matrix_set_color(77, 0, 0, 0); //Right LED 15 - rgb_matrix_set_color(80, 0, 0, 0); //Left LED 05 - rgb_matrix_set_color(81, 0, 0, 0); //Right LED 16 - rgb_matrix_set_color(83, 0, 0, 0); //Left LED 06 - rgb_matrix_set_color(84, 0, 0, 0); //Right LED 17 - rgb_matrix_set_color(87, 0, 0, 0); //Left LED 07 - rgb_matrix_set_color(88, 0, 0, 0); //Right LED 18 - rgb_matrix_set_color(91, 0, 0, 0); //Left LED 08 - rgb_matrix_set_color(92, 0, 0, 0); //Right LED 19 -} - -static void set_rgb_scroll_leds_on(void) { - rgb_matrix_set_color(72, 255, 255, 255); // Under Rotary (HOME) -} - -static void set_rgb_scroll_leds_off(void) { - rgb_matrix_set_color(72, 0, 0, 0); // Under Rotary (HOME) -} - -#endif // RGB_MATRIX_ENABLE diff --git a/keyboards/gmmk/pro/rev1/ansi/keymaps/stickandgum/readme.md b/keyboards/gmmk/pro/rev1/ansi/keymaps/stickandgum/readme.md deleted file mode 100644 index c4e2225433..0000000000 --- a/keyboards/gmmk/pro/rev1/ansi/keymaps/stickandgum/readme.md +++ /dev/null @@ -1,63 +0,0 @@ -# Glorious GMMK Pro / ANSI - Enhanced Keyboard - -Tried to incorporate full featured GMMK Pro keyboard functionality without adding unnecessary features. Included Scroll Lock and Caps LEDs. NKRO can be toggled (Fn + N). -SHIFT and Ctrl keys for scrolling with the rotary, Fn-keys also used for screen brightness, media, PowerOff, Suspend, App Shortcuts, and RGB Toggle/Modifications. Trimmed down the amazing (currently 41) built-in RGB effects down to about 13 or so reasonable effects that feel are just enough for your entertainment without being too excessive. - -BIG thank you to [AndreBrait](https://github.com/andrebrait), And of course, @drashna and @filterpaper, @noroadsleft and the entire discord community. - -* Keymap Creator: [StickAndGum](https://github.com/StickAndGum) -* Keyboard: [More info on GMMK Pro](https://www.pcgamingrace.com/products/glorious-gmmk-pro-75-barebone-black) -* Controller [STM32F303CCT6](https://www.st.com/en/microcontrollers-microprocessors/stm32f303.html) - -* Layout: - ![keyboard-layout](https://user-images.githubusercontent.com/22257588/130371838-875ba65b-88ea-4f81-a44a-bb24194c4989.png) - -Features are as follows: - -Rotary: - - Default: Volume Up/Down - - Shift: Mouse Wheel Down/Up - - Ctrl: Page Down/Up - -Top/Default Layer: - - Print Screen -> Print Screen (Left of rotary) - - Delete -> Home (Under Rotary) - - Right Alt -> Delete (Right of Spacebar) - - All other keys defaults. - -Fn Layer: - - Fn + \ -> Bootloader Mode (Can also hold ESC while powering up) - If hit by mistake, just unplug and replug in. - - Fn + Backspace -> Insert - - Fn + Print -> Pause/Break - - Fn + Home -> Scroll Lock (Lights up white!) - - Fn + Del (right of space) -> Right-Alt key. - - Fn + RCtrl (right of Fn) -> Menu/App key. - - Fn + N -> Toggle NKRO - - Fn + End -> Power Off Computer - - Fn + F12 -> Suspend Computer - - Fn + F11 -> Wake Computer (Necessary on MAC OS?) - - Fn + Page Up / Down -> Laptop Screen Brightness Up/Down - - Fn + F1 - F5 -> Launch Calc, My Comp (Explorer), Media Player, Mail Client, Web Browser. - - Fn + Up, Down, Left, Right Arrows -> Media Play, Stop, Previous, Next respectively. - -- RGB Information: - - Toggle for RGB via Fn-r (CAPS & ScrlLock still Light/Indicate) - - CAPS: Side Light Rainbow Indicators and Left-side RED Indicators - - Scroll-Lock: Fn-Home (Under Rotary) white indicator. - - Modifiers identified around most of the edge of keyboard / Side lights also accented (Fn-1 looks GREAT IMHO) - -- RGB Modifing (all via Function key) all via wasdqerf (common gaming keys) - easy to remember. - - Fn + r -> Toggle RGB - - Fn + w,s -> Brightness Up, Down - - Fn + a,d -> Cycle Forward/Backward through rgb effects - - Fn + q -> Increase or Decrease Saturation (use SHIFT key to lower) - - Fn + e -> Increase or Decrease Hue/Color (use SHIFT key to lower) - - Fn + f -> Increase or Decrease Speed (Using "F" for Fast!) (Use SHIFT for slower) - - Fn + ~, 0-9, - = keys (2nd row keys) -> 13 RGB different effects arranged to my liking. Fn-1 is my favorite. - - Fn + L -> My easter egg... "QMK rocks!" - -- Known issues: - - The Heatmap and Matrix FrameBuffer effects (Fn - and =) are a bit buggy - F-keys light up when they shouldn't and the Caps/Scroll lights don't turn off properly when using. Just change the effect to something else to fix this. - - If you find a fix for this, please let me know. - -See the [build environment setup](https://docs.qmk.fm/#/getting_started_build_tools) and the [make instructions](https://docs.qmk.fm/#/getting_started_make_guide) for more information. Brand new to QMK? Start with our [Complete Newbs Guide](https://docs.qmk.fm/#/newbs). diff --git a/keyboards/gmmk/pro/rev1/ansi/keymaps/stickandgum/rules.mk b/keyboards/gmmk/pro/rev1/ansi/keymaps/stickandgum/rules.mk deleted file mode 100644 index 6440dc6d41..0000000000 --- a/keyboards/gmmk/pro/rev1/ansi/keymaps/stickandgum/rules.mk +++ /dev/null @@ -1,2 +0,0 @@ -CONSOLE_ENABLE = no -MOUSEKEY_ENABLE = yes diff --git a/keyboards/gmmk/pro/rev1/ansi/keymaps/trwnh/config.h b/keyboards/gmmk/pro/rev1/ansi/keymaps/trwnh/config.h deleted file mode 100644 index 1cc3cdf228..0000000000 --- a/keyboards/gmmk/pro/rev1/ansi/keymaps/trwnh/config.h +++ /dev/null @@ -1,55 +0,0 @@ -// Copyright 2021 a (@trwnh on Github) -// SPDX-License-Identifier: GPL-2.0-or-later - -#pragma once -#ifdef RGB_MATRIX_ENABLE - #define RGB_DISABLE_WHEN_USB_SUSPENDED - - #define RGB_MATRIX_FRAMEBUFFER_EFFECTS // Heatmap, Rain - #define RGB_MATRIX_KEYPRESSES // REACTIVE, SPLASH modes - - // #undef ENABLE_RGB_MATRIX_SOLID_COLOR // BUILT IN (MAPPED!) Static single color. - #undef ENABLE_RGB_MATRIX_ALPHAS_MODS // Accenting various keys on the keyboard. - // #undef ENABLE_RGB_MATRIX_GRADIENT_UP_DOWN // Top down rainbow! - // #undef ENABLE_RGB_MATRIX_GRADIENT_LEFT_RIGHT // Left Right Rainbow (the top-down is better imho). - // #undef ENABLE_RGB_MATRIX_BREATHING // Built in (MAPPED!) - #undef ENABLE_RGB_MATRIX_BAND_SAT // Single hue band fading saturation scrolling left to right (with white) - #undef ENABLE_RGB_MATRIX_BAND_VAL // Single hue band fading brightness scrolling left to right (with black) - #undef ENABLE_RGB_MATRIX_BAND_PINWHEEL_SAT // Single hue 3 blade spinning pinwheel fades sat (RGB_MATRIX_CYCLE_PINWHEEL) - #undef ENABLE_RGB_MATRIX_BAND_PINWHEEL_VAL // See above - #undef ENABLE_RGB_MATRIX_BAND_SPIRAL_SAT // See above - #undef ENABLE_RGB_MATRIX_BAND_SPIRAL_VAL // Single hue spinning spiral fades brightness (with black) - #undef ENABLE_RGB_MATRIX_CYCLE_ALL // Full keyboard cycling through rainbow - // #undef ENABLE_RGB_MATRIX_CYCLE_LEFT_RIGHT // BUILT IN (MAPPED!) Full Rainbow Left to Right - // #undef ENABLE_RGB_MATRIX_CYCLE_UP_DOWN // Full gradient scrolling top to bottom - // #undef ENABLE_RGB_MATRIX_CYCLE_OUT_IN // Rainbow circles coming to center. - // #undef ENABLE_RGB_MATRIX_CYCLE_OUT_IN_DUAL // Two Rainbow circles coming to 1/3 and 2/3 points. - #undef ENABLE_RGB_MATRIX_RAINBOW_MOVING_CHEVRON // Full gradent Chevron shapped scrolling left to right - // #undef ENABLE_RGB_MATRIX_CYCLE_PINWHEEL // BUILT IN (MAPPED!) - Consider disabling this - my poor eyes. - // #undef ENABLE_RGB_MATRIX_CYCLE_SPIRAL // Full gradient spinning spiral around center of keyboard - // #undef ENABLE_RGB_MATRIX_DUAL_BEACON // Two rainbows spinning around keyboards - // #undef ENABLE_RGB_MATRIX_RAINBOW_BEACON // Similar to above. - // #undef ENABLE_RGB_MATRIX_RAINBOW_PINWHEELS // Enough of the spinning rainbows - we get it! :-) - #undef ENABLE_RGB_MATRIX_RAINDROPS // Jellybeans are better. - #undef ENABLE_RGB_MATRIX_JELLYBEAN_RAINDROPS // Randomly changes a single key's hue and saturation - better than above. - #undef ENABLE_RGB_MATRIX_HUE_BREATHING // Hue shifts up a slight ammount at the same time, then shifts back - #undef ENABLE_RGB_MATRIX_HUE_PENDULUM // Hue shifts up a slight ammount in a wave to the right, then back to the left - #undef ENABLE_RGB_MATRIX_HUE_WAVE // Hue shifts up a slight ammount and then back down in a wave to the right - #undef ENABLE_RGB_MATRIX_PIXEL_FRACTAL // Single hue fractal filled keys pulsing horizontally out to edges - #undef ENABLE_RGB_MATRIX_PIXEL_FLOW // Pulsing RGB flow along LED wiring with random hues - #undef ENABLE_RGB_MATRIX_PIXEL_RAIN // Randomly light keys with random hues - #undef ENABLE_RGB_MATRIX_TYPING_HEATMAP // Hot keys! - #undef ENABLE_RGB_MATRIX_DIGITAL_RAIN // The Matrix! - #undef ENABLE_RGB_MATRIX_SOLID_REACTIVE_SIMPLE // Key hits shown in current hue - all other keys black: wide slightly better imo - // #undef ENABLE_RGB_MATRIX_SOLID_REACTIVE // Key hits shown in current hue - all other keys shifted hue - // #undef ENABLE_RGB_MATRIX_SOLID_REACTIVE_WIDE // Hue & value pulse around a single key hit then fades value out (black otherwise) - #undef ENABLE_RGB_MATRIX_SOLID_REACTIVE_MULTIWIDE // same as above but a bit too intense imo. - #undef ENABLE_RGB_MATRIX_SOLID_REACTIVE_CROSS // Column and Row single color fade. - #undef ENABLE_RGB_MATRIX_SOLID_REACTIVE_MULTICROSS // Column and Row single color fade. (Multi-keys) - #undef ENABLE_RGB_MATRIX_SOLID_REACTIVE_NEXUS // Hue & value pulse away on the same column and row of key hit then fades - #undef ENABLE_RGB_MATRIX_SOLID_REACTIVE_MULTINEXUS // Hue & value pulse away on the same column and row of multi-key hit then fades - // #undef ENABLE_RGB_MATRIX_SPLASH // Full rainbow pulses from key hit. All else black. - // #undef ENABLE_RGB_MATRIX_MULTISPLASH // Full rainbow pulses from multi-keys. All else black. - // #undef ENABLE_RGB_MATRIX_SOLID_SPLASH // Single color pulses from key hit. All else black. (Using solid_reactive_wide instead). - // #undef ENABLE_RGB_MATRIX_SOLID_MULTISPLASH // Single color pulses from muli-keys. All else black. (Using solid_reactive_wide instead). -#endif
\ No newline at end of file diff --git a/keyboards/gmmk/pro/rev1/ansi/keymaps/trwnh/keymap.c b/keyboards/gmmk/pro/rev1/ansi/keymaps/trwnh/keymap.c deleted file mode 100644 index 7daa154826..0000000000 --- a/keyboards/gmmk/pro/rev1/ansi/keymaps/trwnh/keymap.c +++ /dev/null @@ -1,181 +0,0 @@ -// Copyright 2021 a (@trwnh on Github) -// SPDX-License-Identifier: GPL-2.0-or-later - -#include QMK_KEYBOARD_H - -// clang-format off -const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = { - - [0] = LAYOUT( - 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_MUTE, - 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_DEL, - 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_PGUP, - KC_CAPS, KC_A, KC_S, KC_D, KC_F, KC_G, KC_H, KC_J, KC_K, KC_L, KC_SCLN, KC_QUOT, KC_ENT, KC_PGDN, - 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, KC_END, - KC_LCTL, KC_LGUI, KC_LALT, KC_SPC, KC_RALT, MO(1), KC_RCTL, KC_LEFT, KC_DOWN, KC_RGHT - ), - - [1] = LAYOUT( - KC_KB_POWER, 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_INS, - _______, RGB_HUI, RGB_SAI, RGB_VAI, RGB_SPI, RGB_TOG, _______, _______, _______, _______, _______, _______, _______, _______, KC_PAUS, - _______, RGB_HUD, RGB_SAD, RGB_VAD, RGB_SPD, _______, _______, _______, _______, _______, _______, _______, _______, KC_SCRL, - KC_MSTP, RGB_MOD, RGB_RMOD,_______, _______, _______, NK_TOGG, _______, _______, _______, _______, _______, KC_PGUP, KC_APP, - KC_MPRV, KC_MPLY, KC_MNXT, QK_BOOT, MO(2), _______, _______, KC_HOME, KC_PGDN, KC_END - ), - - [2] = LAYOUT( - _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, KC_BTN3, - _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, - _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, - _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, KC_BTN1, _______, - _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, KC_BTN2, KC_MS_U, _______, - _______, _______, _______, _______, _______, _______, _______, KC_MS_L, KC_MS_D, KC_MS_R - ), - - -}; - -#if defined(ENCODER_ENABLE) && defined(ENCODER_MAP_ENABLE) -const uint16_t PROGMEM encoder_map[][NUM_ENCODERS][NUM_DIRECTIONS] = { - [0] = { ENCODER_CCW_CW(KC_VOLD, KC_VOLU) }, - [1] = { ENCODER_CCW_CW(KC_BRIGHTNESS_DOWN, KC_BRIGHTNESS_UP) }, - [2] = { ENCODER_CCW_CW(KC_MS_WH_UP, KC_MS_WH_DOWN) }, -}; -#endif -// clang-format on - -// RGB led number layout, function of the key - -// 67, led 01 0, ESC 6, F1 12, F2 18, F3 23, F4 28, F5 34, F6 39, F7 44, F8 50, F9 56, F10 61, F11 66, F12 69, Prt Rotary(Mute) 68, led 12 -// 70, led 02 1, ~ 7, 1 13, 2 19, 3 24, 4 29, 5 35, 6 40, 7 45, 8 51, 9 57, 0 62, -_ 78, (=+) 85, BackSpc 72, Home 71, led 13 -// 73, led 03 2, Tab 8, Q 14, W 20. E 25, R 30, T 36, Y 41, U 46, I 52, O 58, P 63, [{ 89, ]} 93, \| 75, PgUp 74, led 14 -// 76, led 04 3, Caps 9, A 15, S 21, D 26, F 31, G 37, H 42, J 47, K 53, L 59, ;: 64, '" 96, Enter 86, PgDn 77, led 15 -// 80, led 05 4, Sh_L 10, Z 16, X 22, C 27, V 32, B 38, N 43, M 48, ,< 54, .< 60, /? 90, Sh_R 94, Up 82, End 81, led 16 -// 83, led 06 5, Ct_L 11,Win_L 17, Alt_L 33, SPACE 49, Alt_R 55, FN 65, Ct_R 95, Left 97, Down 79, Right 84, led 17 -// 87, led 07 88, led 18 -// 91, led 08 - -#ifdef RGB_MATRIX_ENABLE - static void set_rgb_caps_leds_on(void); - static void set_rgb_scroll_leds_on(void); - static void set_rgb_caps_leds_off(void); - static void set_rgb_scroll_leds_off(void); - - static void set_rgb_caps_leds_on(void) { - // Set alpha and capslock to red - - rgb_matrix_set_color( 3, 255, 0, 0); // Caps - - rgb_matrix_set_color( 8, 255, 0, 0); // Q - rgb_matrix_set_color(14, 255, 0, 0); // W - rgb_matrix_set_color(20, 255, 0, 0); // E - rgb_matrix_set_color(25, 255, 0, 0); // R - rgb_matrix_set_color(30, 255, 0, 0); // T - rgb_matrix_set_color(36, 255, 0, 0); // Y - rgb_matrix_set_color(41, 255, 0, 0); // U - rgb_matrix_set_color(46, 255, 0, 0); // I - rgb_matrix_set_color(52, 255, 0, 0); // O - rgb_matrix_set_color(58, 255, 0, 0); // P - - rgb_matrix_set_color( 9, 255, 0, 0); // A - rgb_matrix_set_color(15, 255, 0, 0); // S - rgb_matrix_set_color(21, 255, 0, 0); // D - rgb_matrix_set_color(26, 255, 0, 0); // F - rgb_matrix_set_color(31, 255, 0, 0); // G - rgb_matrix_set_color(37, 255, 0, 0); // H - rgb_matrix_set_color(42, 255, 0, 0); // J - rgb_matrix_set_color(47, 255, 0, 0); // K - rgb_matrix_set_color(53, 255, 0, 0); // L - - rgb_matrix_set_color(10, 255, 0, 0); // Z - rgb_matrix_set_color(16, 255, 0, 0); // X - rgb_matrix_set_color(22, 255, 0, 0); // C - rgb_matrix_set_color(27, 255, 0, 0); // V - rgb_matrix_set_color(32, 255, 0, 0); // B - rgb_matrix_set_color(38, 255, 0, 0); // N - rgb_matrix_set_color(43, 255, 0, 0); // M - } - - static void set_rgb_caps_leds_off(void) { - // Set alpha and capslock to black - - rgb_matrix_set_color( 3, 0, 0, 0); // Caps - - rgb_matrix_set_color( 8, 0, 0, 0); // Q - rgb_matrix_set_color(14, 0, 0, 0); // W - rgb_matrix_set_color(20, 0, 0, 0); // E - rgb_matrix_set_color(25, 0, 0, 0); // R - rgb_matrix_set_color(30, 0, 0, 0); // T - rgb_matrix_set_color(36, 0, 0, 0); // Y - rgb_matrix_set_color(41, 0, 0, 0); // U - rgb_matrix_set_color(46, 0, 0, 0); // I - rgb_matrix_set_color(52, 0, 0, 0); // O - rgb_matrix_set_color(58, 0, 0, 0); // P - - rgb_matrix_set_color( 9, 0, 0, 0); // A - rgb_matrix_set_color(15, 0, 0, 0); // S - rgb_matrix_set_color(21, 0, 0, 0); // D - rgb_matrix_set_color(26, 0, 0, 0); // F - rgb_matrix_set_color(31, 0, 0, 0); // G - rgb_matrix_set_color(37, 0, 0, 0); // H - rgb_matrix_set_color(42, 0, 0, 0); // J - rgb_matrix_set_color(47, 0, 0, 0); // K - rgb_matrix_set_color(53, 0, 0, 0); // L - - rgb_matrix_set_color(10, 0, 0, 0); // Z - rgb_matrix_set_color(16, 0, 0, 0); // X - rgb_matrix_set_color(22, 0, 0, 0); // C - rgb_matrix_set_color(27, 0, 0, 0); // V - rgb_matrix_set_color(32, 0, 0, 0); // B - rgb_matrix_set_color(38, 0, 0, 0); // N - rgb_matrix_set_color(43, 0, 0, 0); // M - } - - static void set_rgb_scroll_leds_on(void) { - rgb_matrix_set_color(72, 255, 255, 255); // Under Rotary (HOME) - } - - static void set_rgb_scroll_leds_off(void) { - rgb_matrix_set_color(72, 0, 0, 0); // Under Rotary (HOME) - } - - bool rgb_matrix_indicators_user(void) { - // Left side rainbow - rgb_matrix_set_color(67, 255, 0, 0); // Left LED 01 - rgb_matrix_set_color(70, 255, 127, 0); // Left LED 02 - rgb_matrix_set_color(73, 255, 255, 0); // Left LED 03 - rgb_matrix_set_color(76, 0, 255, 0); // Left LED 04 - rgb_matrix_set_color(80, 0, 0, 255); // Left LED 05 - rgb_matrix_set_color(83, 46, 43, 95); // Left LED 06 - rgb_matrix_set_color(87, 139, 0, 255); // Left LED 07 - rgb_matrix_set_color(91, 255, 255, 255); // Left LED 08 - - // Right side rainbow - rgb_matrix_set_color(68, 255, 0, 0); // Right LED 12 - rgb_matrix_set_color(71, 255, 127, 0); // Right LED 13 - rgb_matrix_set_color(74, 255, 255, 0); // Right LED 14 - rgb_matrix_set_color(77, 0, 255, 0); // Right LED 15 - rgb_matrix_set_color(81, 0, 0, 255); // Right LED 16 - rgb_matrix_set_color(84, 46, 43, 95); // Right LED 17 - rgb_matrix_set_color(88, 139, 0, 255); // Right LED 18 - rgb_matrix_set_color(92, 255, 255, 255); // Right LED 19 - - if (host_keyboard_led_state().caps_lock) { - set_rgb_caps_leds_on(); - } else { - if (rgb_matrix_get_flags() == LED_FLAG_NONE){ - set_rgb_caps_leds_off(); - } - } - if (host_keyboard_led_state().scroll_lock) { - set_rgb_scroll_leds_on(); - } else { - if (rgb_matrix_get_flags() == LED_FLAG_NONE){ - set_rgb_scroll_leds_off(); - } - } - return false; - } - -#endif // RGB_MATRIX_ENABLE diff --git a/keyboards/gmmk/pro/rev1/ansi/keymaps/trwnh/readme.md b/keyboards/gmmk/pro/rev1/ansi/keymaps/trwnh/readme.md deleted file mode 100644 index 12be0cdcc3..0000000000 --- a/keyboards/gmmk/pro/rev1/ansi/keymaps/trwnh/readme.md +++ /dev/null @@ -1,91 +0,0 @@ -### features - -- via enable -- rgb matrix reactive and animation modes enabled -- disable rgb when usb is suspended -- mouse control - - fn+ralt+arrow keys to move - - fn+ralt+enter = left click - - fn+ralt+rshift = right click - - fn+ralt+rotary = scroll up/down (click for middle click) -- fn+n = toggle n key rollover - -### changes - -- fn+space to reset (instead of fn+backslash) -- fn+del = ins -- fn+pgup = pause/break (brightness up on macos) -- fn+pgdn = scroll lock (brightness down on macos) -- fn+end = app menu -- lower left mod key cluster = media controls - - fn+lctrl = prev - - fn+lsuper = play/pause - - fn+lalt = next - - fn+lshift = stop -- function keys = 2nd row function keys - - fn+f1 = f13 - - fn+f2 = f14 - - ... - - fn+f12 = f24 -- fn + arrow keys used for nav - - fn + left = home - - fn + right = end - - fn + up = page up - - fn + down = page down -- rgb control moved to qwer/asdf + z/x + t - - fn+q/a = hue increase/decrease - - fn+w/s = saturation increase/decrease - - fn+e/d = value increase/decrease - - fn+r/f = speed increase/decrease - - fn+z = rgb mode forward - - fn+x = rgb mode reverse - - fn+t = rgb toggle - -### rgb effects enabled - -sidebars are constant rainbow. alpha and capslock turn red when caps is on - -- solid color -- rainbow gradient - - gradient up down - - gradient left right -- breathing -- rainbow cycles - - cycle all - - cycle left right - - cycle up down - - cycle out in - - cycle out in dual - - cycle pinwheel - - cycle spiral - - rainbow beacon - - rainbow pinwheels -- reactive - - splash - - multisplash - - solid splash - - solid multisplash - -### layers - -source code for keyboard layout editor images here: https://gist.github.com/trwnh/94e48f132c49043373918df29409ab48 - -#### layer 0 - -![](https://i.imgur.com/P1hSkZT.png) - -#### layer 1 - -![](https://i.imgur.com/qqiObxP.png) - -#### layer 2 - -![](https://i.imgur.com/W0i1D0C.png) - -### misc - -i am taking suggestions for possible improvements to this keymap; you may contact me via the following - -- email: mailto:a@trwnh.com -- chat: xmpp:a@trwnh.com -- fediverse: https://mastodon.social/@trwnh
\ No newline at end of file diff --git a/keyboards/gmmk/pro/rev1/ansi/keymaps/trwnh/rules.mk b/keyboards/gmmk/pro/rev1/ansi/keymaps/trwnh/rules.mk deleted file mode 100644 index 4253f570f0..0000000000 --- a/keyboards/gmmk/pro/rev1/ansi/keymaps/trwnh/rules.mk +++ /dev/null @@ -1,2 +0,0 @@ -VIA_ENABLE = yes -ENCODER_MAP_ENABLE = yes
\ No newline at end of file diff --git a/keyboards/gmmk/pro/rev1/ansi/keymaps/wholesomeducky/keymap.c b/keyboards/gmmk/pro/rev1/ansi/keymaps/wholesomeducky/keymap.c deleted file mode 100644 index 13c58d0392..0000000000 --- a/keyboards/gmmk/pro/rev1/ansi/keymaps/wholesomeducky/keymap.c +++ /dev/null @@ -1,58 +0,0 @@ -/* Copyright 2021 Glorious, LLC <salman@pcgamingrace.com> - -This program is free software: you can redistribute it and/or modify -it under the terms of the GNU General Public License as published by -the Free Software Foundation, either version 2 of the License, or -(at your option) any later version. - -This program is distributed in the hope that it will be useful, -but WITHOUT ANY WARRANTY; without even the implied warranty of -MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the -GNU General Public License for more details. - -You should have received a copy of the GNU General Public License -along with this program. If not, see <http://www.gnu.org/licenses/>. -*/ - -#include QMK_KEYBOARD_H - -const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = { - -// ESC F1 F2 F3 F4 F5 F6 F7 F8 F9 F10 F11 F12 Prt Rotary -// ~ 1 2 3 4 5 6 7 8 9 0 - (=) BackSpc Del -// Tab Q W E R T Y U I O P [ ] \ PgUp -// Ct_L A S D F G H J K L ; " Enter PgDn -// Sh_L Z X C V B N M , . ? Sh_R Up Win_R -// Ct_L Win_L Alt_L SPACE Alt_R FN Ct_R Left Down Right - - - [0] = LAYOUT( - 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_MEDIA_PLAY_PAUSE, - 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_DEL, - 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_PGUP, - 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, KC_PGDN, - 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, KC_RGUI, - KC_LCTL, KC_LGUI, KC_LALT, KC_SPC, KC_RALT, MO(1), KC_APP, KC_LEFT, KC_DOWN, KC_RGHT - ), - - [1] = LAYOUT( - KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, - KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_INS, - KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_PSCR, KC_SCRL, KC_PAUS, KC_TRNS, KC_TRNS, KC_TRNS, KC_HOME, - KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_MPLY, KC_TRNS, KC_TRNS, KC_END, - KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_MPRV, KC_MNXT, QK_BOOT, KC_TRNS, KC_TRNS, KC_TRNS, - KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_HOME, KC_TRNS, KC_END - ), - -}; - - -bool encoder_update_user(uint8_t index, bool clockwise) { - if (clockwise) { - tap_code(KC_MS_WH_RIGHT); - } else { - tap_code(KC_MS_WH_LEFT); - } - //return true; //set to return false to counteract enabled encoder in pro.c - return false; -} diff --git a/keyboards/gmmk/pro/rev1/ansi/keymaps/willwm/keymap.c b/keyboards/gmmk/pro/rev1/ansi/keymaps/willwm/keymap.c deleted file mode 100644 index 5343f1b649..0000000000 --- a/keyboards/gmmk/pro/rev1/ansi/keymaps/willwm/keymap.c +++ /dev/null @@ -1,74 +0,0 @@ -/* Copyright 2021 Glorious, LLC <salman@pcgamingrace.com> - -This program is free software: you can redistribute it and/or modify -it under the terms of the GNU General Public License as published by -the Free Software Foundation, either version 2 of the License, or -(at your option) any later version. - -This program is distributed in the hope that it will be useful, -but WITHOUT ANY WARRANTY; without even the implied warranty of -MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the -GNU General Public License for more details. - -You should have received a copy of the GNU General Public License -along with this program. If not, see <http://www.gnu.org/licenses/>. -*/ - -#include QMK_KEYBOARD_H - -// clang-format off -const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = { - - // ESC F1 F2 F3 F4 F5 F6 F7 F8 F9 F10 F11 F12 Del Rotary(Mute) - // ~ 1 2 3 4 5 6 7 8 9 0 - (=) BackSpc Home - // Tab Q W E R T Y U I O P [ ] \ PgUp - // Caps A S D F G H J K L ; " Enter PgDn - // Sh_L Z X C V B N M , . ? Sh_R Up End - // Ct_L Win_L Alt_L SPACE Alt_R FN Ct_R Left Down Right - [0] = LAYOUT( - 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_DEL, KC_MUTE, - 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_HOME, - 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_PGUP, - MO(1), KC_A, KC_S, KC_D, KC_F, KC_G, KC_H, KC_J, KC_K, KC_L, KC_SCLN, KC_QUOT, KC_ENT, KC_PGDN, - 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, KC_END, - KC_LCTL, KC_LGUI, KC_LALT, KC_SPC, KC_RALT, MO(1), KC_RCTL, KC_LEFT, KC_DOWN, KC_RGHT - ), - - [1] = LAYOUT( - _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, KC_INS, _______, - _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, KC_PSCR, - KC_CAPS, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, QK_BOOT, _______, - _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, - _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, KC_PGUP, _______, - _______, _______, _______, _______, _______, _______, _______, KC_HOME, KC_PGDN, KC_END - ), - - [2] = LAYOUT( - _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, - _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, - _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, - _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, - _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, - _______, _______, _______, _______, _______, _______, _______, _______, _______, _______ - ), - - [3] = LAYOUT( - _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, - _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, - _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, - _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, - _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, - _______, _______, _______, _______, _______, _______, _______, _______, _______, _______ - ), -}; -// clang-format on - -bool encoder_update_user(uint8_t index, bool clockwise) { - if (clockwise) { - tap_code(KC_VOLU); - } else { - tap_code(KC_VOLD); - } - //return true; //set to return false to counteract enabled encoder in pro.c - return false; -} diff --git a/keyboards/gmmk/pro/rev1/ansi/keymaps/willwm/keymap.json b/keyboards/gmmk/pro/rev1/ansi/keymaps/willwm/keymap.json deleted file mode 100644 index bdb9e95264..0000000000 --- a/keyboards/gmmk/pro/rev1/ansi/keymaps/willwm/keymap.json +++ /dev/null @@ -1,181 +0,0 @@ -{ - "version": 1, - "notes": "", - "documentation": "\"This file is a QMK Configurator export. You can import this at <https://config.qmk.fm>. It can also be used directly with QMK's source code.\n\nTo setup your QMK environment check out the tutorial: <https://docs.qmk.fm/#/newbs>\n\nYou can convert this file to a keymap.c using this command: `qmk json2c {keymap}`\n\nYou can compile this keymap using this command: `qmk compile {keymap}`\"\n", - "keyboard": "gmmk/pro", - "keymap": "willwm", - "layout": "LAYOUT", - "layers": [ - [ - "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_DEL", - "KC_MUTE", - "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_HOME", - "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_PGUP", - "MO(1)", - "KC_A", - "KC_S", - "KC_D", - "KC_F", - "KC_G", - "KC_H", - "KC_J", - "KC_K", - "KC_L", - "KC_SCLN", - "KC_QUOT", - "KC_ENT", - "KC_PGDN", - "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", - "KC_END", - "KC_LCTL", - "KC_LGUI", - "KC_LALT", - "KC_SPC", - "KC_RALT", - "MO(1)", - "KC_RCTL", - "KC_LEFT", - "KC_DOWN", - "KC_RGHT" - ], - [ - "KC_NO", - "KC_NO", - "KC_NO", - "KC_NO", - "KC_NO", - "KC_NO", - "KC_NO", - "KC_NO", - "KC_NO", - "KC_NO", - "KC_NO", - "KC_NO", - "KC_NO", - "KC_INS", - "KC_NO", - "KC_NO", - "KC_NO", - "KC_NO", - "KC_NO", - "KC_NO", - "KC_NO", - "KC_NO", - "KC_NO", - "KC_NO", - "KC_NO", - "KC_NO", - "KC_NO", - "KC_NO", - "KC_NO", - "KC_PSCR", - "KC_CAPS", - "KC_NO", - "KC_NO", - "KC_NO", - "KC_NO", - "KC_NO", - "KC_NO", - "KC_NO", - "KC_NO", - "KC_NO", - "KC_NO", - "KC_NO", - "KC_NO", - "QK_BOOT", - "KC_NO", - "KC_TRNS", - "KC_NO", - "KC_NO", - "KC_NO", - "KC_NO", - "KC_NO", - "KC_NO", - "KC_NO", - "KC_NO", - "KC_NO", - "KC_NO", - "KC_NO", - "KC_NO", - "KC_NO", - "KC_NO", - "KC_NO", - "KC_NO", - "KC_NO", - "KC_NO", - "KC_NO", - "KC_NO", - "KC_NO", - "KC_NO", - "KC_NO", - "KC_NO", - "KC_NO", - "KC_PGUP", - "KC_NO", - "KC_NO", - "KC_NO", - "KC_NO", - "KC_NO", - "KC_NO", - "KC_TRNS", - "KC_NO", - "KC_HOME", - "KC_PGDN", - "KC_END" - ] - ], - "author": "" -}
\ No newline at end of file diff --git a/keyboards/gmmk/pro/rev1/ansi/keymaps/willwm/readme.md b/keyboards/gmmk/pro/rev1/ansi/keymaps/willwm/readme.md deleted file mode 100644 index 1c169faac6..0000000000 --- a/keyboards/gmmk/pro/rev1/ansi/keymaps/willwm/readme.md +++ /dev/null @@ -1,22 +0,0 @@ -<img width="567" alt="layer0" src="https://user-images.githubusercontent.com/303042/118893170-da3e3280-b8b6-11eb-9459-f6c339c59bde.png"> -<img width="566" alt="layer1" src="https://user-images.githubusercontent.com/303042/118893191-e0341380-b8b6-11eb-8641-a4fdeeb7cbb2.png"> - -# willwm GMMK Pro Layout - -Based on [gmmk/pro/keymaps/default](../default/keymap.c), with [VIA support](./rules.mk) - -Layer 0 - -* Delete between F12 and rotary encoder (replaces PrtSc) -* Home below rotary encoder (replaces Del) -* MO(1) in default location and Caps Lock location - -Layer 1 - -* Tab -> Caps Lock -* Del -> Insert -* Home -> PrtSc -* Left Arrow -> Home -* Right Arrow -> End -* Up Arrow -> PgUp -* Down Arrow -> PgDn diff --git a/keyboards/gmmk/pro/rev1/ansi/keymaps/willwm/rules.mk b/keyboards/gmmk/pro/rev1/ansi/keymaps/willwm/rules.mk deleted file mode 100644 index 511b50e19c..0000000000 --- a/keyboards/gmmk/pro/rev1/ansi/keymaps/willwm/rules.mk +++ /dev/null @@ -1,2 +0,0 @@ -VIA_ENABLE = yes -UNICODE_ENABLE = yes diff --git a/keyboards/gmmk/pro/rev1/iso/config.h b/keyboards/gmmk/pro/rev1/iso/config.h deleted file mode 100644 index 8ed1802803..0000000000 --- a/keyboards/gmmk/pro/rev1/iso/config.h +++ /dev/null @@ -1,22 +0,0 @@ -/* Copyright 2021 Jasper Chan - * - * This program is free software: you can redistribute it and/or modify - * it under the terms of the GNU General Public License as published by - * the Free Software Foundation, either version 2 of the License, or - * (at your option) any later version. - * - * This program is distributed in the hope that it will be useful, - * but WITHOUT ANY WARRANTY; without even the implied warranty of - * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the - * GNU General Public License for more details. - * - * You should have received a copy of the GNU General Public License - * along with this program. If not, see <http://www.gnu.org/licenses/>. - */ - -#pragma once - - -#define DRIVER_1_LED_TOTAL 66 -#define DRIVER_2_LED_TOTAL 33 -#define RGB_MATRIX_LED_COUNT (DRIVER_1_LED_TOTAL + DRIVER_2_LED_TOTAL) diff --git a/keyboards/gmmk/pro/rev1/iso/info.json b/keyboards/gmmk/pro/rev1/iso/info.json index 492a5cf486..90f66171aa 100644 --- a/keyboards/gmmk/pro/rev1/iso/info.json +++ b/keyboards/gmmk/pro/rev1/iso/info.json @@ -8,9 +8,6 @@ "pid": "0x5044", "device_version": "0.0.1" }, - "rgb_matrix": { - "driver": "aw20216s" - }, "matrix_pins": { "cols": ["A0", "A1", "A2", "A3", "A4", "A8", "A9", "A10"], "rows": ["B0", "B1", "B2", "B3", "B4", "B5", "B6", "B7", "B8", "B9", "B10"] diff --git a/keyboards/gmmk/pro/rev1/iso/iso.c b/keyboards/gmmk/pro/rev1/iso/iso.c index 9744447587..68165dd27f 100644 --- a/keyboards/gmmk/pro/rev1/iso/iso.c +++ b/keyboards/gmmk/pro/rev1/iso/iso.c @@ -137,7 +137,7 @@ led_config_t g_led_config = {{ 2, 4, 2, 2, 4, 4, 2, 2, 4, 2, 2, 4, 4, 2, 2, 4, 4, 2, 2, 4, 4, 4, 4, 4 }}; -const aw20216s_led_t g_aw20216s_leds[RGB_MATRIX_LED_COUNT] = { +const aw20216s_led_t PROGMEM g_aw20216s_leds[AW20216S_LED_COUNT] = { {0, CS1_SW1, CS2_SW1, CS3_SW1}, // 0, ESC, k13 {0, CS4_SW1, CS5_SW1, CS6_SW1}, // 1, ~, k16 {0, CS7_SW1, CS8_SW1, CS9_SW1}, // 2, Tab, k11 diff --git a/keyboards/gmmk/pro/rev1/iso/keymaps/chofstede/keymap.c b/keyboards/gmmk/pro/rev1/iso/keymaps/chofstede/keymap.c deleted file mode 100644 index 971e0821a3..0000000000 --- a/keyboards/gmmk/pro/rev1/iso/keymaps/chofstede/keymap.c +++ /dev/null @@ -1,107 +0,0 @@ -/* Copyright 2021 Glorious, LLC <salman@pcgamingrace.com> - -This program is free software: you can redistribute it and/or modify -it under the terms of the GNU General Public License as published by -the Free Software Foundation, either version 2 of the License, or -(at your option) any later version. - -This program is distributed in the hope that it will be useful, -but WITHOUT ANY WARRANTY; without even the implied warranty of -MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the -GNU General Public License for more details. - -You should have received a copy of the GNU General Public License -along with this program. If not, see <http://www.gnu.org/licenses/>. -*/ - -#include QMK_KEYBOARD_H - -// clang-format off -const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = { - -// ESC F1 F2 F3 F4 F5 F6 F7 F8 F9 F10 F11 F12 Prt Rotary(Mute) -// ~ 1 2 3 4 5 6 7 8 9 0 - (=) BackSpc Del -// Tab Q W E R T Y U I O P [ ] PgUp -// Caps A S D F G H J K L ; " # Enter PgDn -// Sh_L / Z X C V B N M , . ? Sh_R Up End -// Ct_L Win_L Alt_L SPACE Alt_R FN Ct_R Left Down Right - - - // The FN key by default maps to a momentary toggle to layer 1 to provide access to the QK_BOOT key (to put the board into bootloader mode). Without - // this mapping, you have to open the case to hit the button on the bottom of the PCB (near the USB cable attachment) while plugging in the USB - // cable to get the board into bootloader mode - definitely not fun when you're working on your QMK builds. Remove this and put it back to KC_RGUI - // if that's your preference. - // - // To put the keyboard in bootloader mode, use FN+backspace. If you accidentally put it into bootloader, you can just unplug the USB cable and - // it'll be back to normal when you plug it back in. - // - // This keyboard defaults to 6KRO instead of NKRO for compatibility reasons (some KVMs and BIOSes are incompatible with NKRO). - // Since this is, among other things, a "gaming" keyboard, a key combination to enable NKRO on the fly is provided for convenience. - // Press Fn+N to toggle between 6KRO and NKRO. This setting is persisted to the EEPROM and thus persists between restarts. - [0] = LAYOUT( - 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_HOME, KC_MUTE, - 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_DEL, - 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_PGUP, - KC_CAPS, KC_A, KC_S, KC_D, KC_F, KC_G, KC_H, KC_J, KC_K, KC_L, KC_SCLN, KC_QUOT, KC_NUHS, KC_ENT, KC_PGDN, - KC_LSFT, KC_NUBS, KC_Z, KC_X, KC_C, KC_V, KC_B, KC_N, KC_M, KC_COMM, KC_DOT, KC_SLSH, KC_RSFT, KC_UP, KC_END, - KC_LCTL, KC_LGUI, KC_LALT, KC_SPC, KC_RALT, MO(1), KC_RCTL, KC_LEFT, KC_DOWN, KC_RGHT - ), - - [1] = LAYOUT( - _______, KC_MYCM, KC_WHOM, KC_CALC, KC_MSEL, KC_MPRV, KC_MNXT, KC_MPLY, KC_MSTP, KC_MUTE, KC_VOLD, KC_VOLU, _______, KC_PSCR, _______, - _______, RGB_TOG, RGB_M_P, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, QK_BOOT, _______, - _______, RGB_SAI, RGB_VAI, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, - _______, _______, RGB_VAD, _______, _______, _______, _______, _______, _______, _______, _______, _______, KC_INS, _______, _______, - _______, _______, _______, RGB_HUI, _______, _______, _______, NK_TOGG, _______, _______, _______, _______, _______, RGB_MOD, _______, - _______, _______, _______, _______, _______, _______, _______, RGB_SPD, RGB_RMOD, RGB_SPI - ), - - -}; -// clang-format on - -#ifdef ENCODER_ENABLE -bool encoder_update_user(uint8_t index, bool clockwise) { - if (clockwise) { - tap_code(KC_VOLU); - } else { - tap_code(KC_VOLD); - } - return false; -} -#endif - -bool rgb_matrix_indicators_advanced_user(uint8_t led_min, uint8_t led_max) { - static uint32_t cycle_led_timer = 0; - static uint8_t current_value = 0; - static uint8_t left_side_leds[8] = {68, 71, 74, 77, 81, 84, 88, 92}; - static uint8_t right_side_leds[8] = {69, 72, 75, 78, 82, 85, 89, 93}; - - if (host_keyboard_led_state().caps_lock) { - if (timer_elapsed32(cycle_led_timer) > 500) { - current_value = current_value == 0 ? 255 : 0; - cycle_led_timer = timer_read32(); - } - HSV tempHSV = {.h = 0, .s = 255, .v = current_value}; - RGB tempRGB = hsv_to_rgb(tempHSV); - for (uint8_t i = 0; i < ARRAY_SIZE(left_side_leds); i++) { - rgb_matrix_set_color(left_side_leds[i], tempRGB.r, tempRGB.g, tempRGB.b); - rgb_matrix_set_color(right_side_leds[i], tempRGB.r, tempRGB.g, tempRGB.b); - } - } - - static uint8_t l2_functions[26] = {6, 7, 8, 12, 13, 14, 15, 16, 18, 23, 28, 34, 38, 39, 44, 50, 56, 61, 66, 70, 80, 86, 94, 95, 96, 98}; - switch(get_highest_layer(layer_state)){ // special handling per layer - case 2: //layer one - break; - case 1: - for (uint8_t i = 0; i < ARRAY_SIZE(l2_functions); i++) { - RGB_MATRIX_INDICATOR_SET_COLOR(l2_functions[i], 255, 0, 0); - } - break; - default: - break; - break; - } - return false; -} diff --git a/keyboards/gmmk/pro/rev1/iso/keymaps/chofstede/readme.md b/keyboards/gmmk/pro/rev1/iso/keymaps/chofstede/readme.md deleted file mode 100644 index da66c447ad..0000000000 --- a/keyboards/gmmk/pro/rev1/iso/keymaps/chofstede/readme.md +++ /dev/null @@ -1,8 +0,0 @@ -# chofstede GMMK Pro layout - -- Added Print-Screen to FN+POS1 -- Added Insert to FN+# -- The LED bars on the left and right side of the keyboard blink red when CAPS Lock is enabled -- All mapped keys light up red when FN is being pressed - - diff --git a/keyboards/gmmk/pro/rev1/iso/keymaps/falkecarlsen/keymap.c b/keyboards/gmmk/pro/rev1/iso/keymaps/falkecarlsen/keymap.c deleted file mode 100644 index 694fd80e19..0000000000 --- a/keyboards/gmmk/pro/rev1/iso/keymaps/falkecarlsen/keymap.c +++ /dev/null @@ -1,72 +0,0 @@ -/* Copyright 2021 Glorious, LLC <salman@pcgamingrace.com> - -This program is free software: you can redistribute it and/or modify -it under the terms of the GNU General Public License as published by -the Free Software Foundation, either version 2 of the License, or -(at your option) any later version. - -This program is distributed in the hope that it will be useful, -but WITHOUT ANY WARRANTY; without even the implied warranty of -MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the -GNU General Public License for more details. - -You should have received a copy of the GNU General Public License -along with this program. If not, see <http://www.gnu.org/licenses/>. -*/ - -#include QMK_KEYBOARD_H - -// clang-format off -const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = { - -// ESC F1 F2 F3 F4 F5 F6 F7 F8 F9 F10 F11 F12 Prt Rotary(Mute) -// ~ 1 2 3 4 5 6 7 8 9 0 - (=) BackSpc Del -// Tab Q W E R T Y U I O P [ ] PgUp -// Caps A S D F G H J K L ; " # Enter PgDn -// Sh_L / Z X C V B N M , . ? Sh_R Up End -// Ct_L Win_L Alt_L SPACE Alt_R FN Ct_R Left Down Right - - - // The FN key by default maps to a momentary toggle to layer 1 to provide access to the QK_BOOT key (to put the board into bootloader mode). Without - // this mapping, you have to open the case to hit the button on the bottom of the PCB (near the USB cable attachment) while plugging in the USB - // cable to get the board into bootloader mode - definitely not fun when you're working on your QMK builds. Remove this and put it back to KC_RGUI - // if that's your preference. - // - // To put the keyboard in bootloader mode, use FN+backspace. If you accidentally put it into bootloader, you can just unplug the USB cable and - // it'll be back to normal when you plug it back in. - // - // This keyboard defaults to 6KRO instead of NKRO for compatibility reasons (some KVMs and BIOSes are incompatible with NKRO). - // Since this is, among other things, a "gaming" keyboard, a key combination to enable NKRO on the fly is provided for convenience. - // Press Fn+N to toggle between 6KRO and NKRO. This setting is persisted to the EEPROM and thus persists between restarts. - [0] = LAYOUT( - 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_DEL, KC_MPLY, - 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_HOME, - 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_PGUP, - MO(1), KC_A, KC_S, KC_D, KC_F, KC_G, KC_H, KC_J, KC_K, KC_L, KC_SCLN, KC_QUOT, KC_NUHS, KC_ENT, KC_PGDN, - KC_LSFT, KC_NUBS, KC_Z, KC_X, KC_C, KC_V, KC_B, KC_N, KC_M, KC_COMM, KC_DOT, KC_SLSH, KC_RSFT, KC_UP, KC_END, - KC_LCTL, KC_LGUI, KC_LALT, KC_SPC, KC_RALT, MO(1), KC_RCTL, KC_LEFT, KC_DOWN, KC_RGHT - ), - - [1] = LAYOUT( - _______, KC_BRID, KC_BRIU, _______, _______, _______, _______, KC_MPRV, KC_MPLY, KC_MNXT, KC_MUTE, KC_VOLD, KC_VOLU, KC_MSTP, KC_MNXT, - _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, QK_BOOT, _______, - _______, KC_BTN1, KC_MS_U, KC_BTN2, KC_WH_U, _______, _______, _______, _______, _______, _______, _______, _______, _______, - _______, KC_MS_L, KC_MS_D, KC_MS_R, KC_WH_D, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, - _______, _______, RGB_VAD, RGB_TOG, RGB_VAI, RGB_HUI, _______, NK_TOGG, _______, _______, _______, _______, _______, RGB_MOD, _______, - _______, _______, _______, _______, _______, _______, _______, RGB_SPD, RGB_RMOD, RGB_SPI - ), - - -}; -// clang-format on - -#ifdef ENCODER_ENABLE -bool encoder_update_user(uint8_t index, bool clockwise) { - if (clockwise) { - tap_code(KC_VOLU); - } else { - tap_code(KC_VOLD); - } - return false; -} -#endif diff --git a/keyboards/gmmk/pro/rev1/iso/keymaps/falkecarlsen/readme.md b/keyboards/gmmk/pro/rev1/iso/keymaps/falkecarlsen/readme.md deleted file mode 100644 index 4239e0dcb8..0000000000 --- a/keyboards/gmmk/pro/rev1/iso/keymaps/falkecarlsen/readme.md +++ /dev/null @@ -1,8 +0,0 @@ -# Falke Carlsen keymap for GMMK PRO ISO -Based on the default keymap, inheriting rotary encoder and LED configs without modification. - -## Changes: -- Fixes layer 1 of top-row to correspond to 'Keychron ISO Q1 & K2 Dye-Sub PBT Nordic' printed legend multimedia keys. -- Adds early 2010s Ducky layer 1 mouse-emulation to WASD with left+right click and scroll in the 2x4 cluster. -- Remaps default keymaps LED-handling to 2nd-row due to addition of mouse-emulation. -- Swap layer 0 rotary encoder click to play/pause, and layer 1 click to next. diff --git a/keyboards/gmmk/pro/rev2/ansi/ansi.c b/keyboards/gmmk/pro/rev2/ansi/ansi.c index 322e94c938..c592e3cdae 100644 --- a/keyboards/gmmk/pro/rev2/ansi/ansi.c +++ b/keyboards/gmmk/pro/rev2/ansi/ansi.c @@ -136,7 +136,7 @@ led_config_t g_led_config = {{ 4, 2, 2, 4, 4, 2, 2, 4, 2, 2, 4, 4, 2, 2, 4, 4, 2, 2, 4, 4, 4, 4, 4 }}; -const aw20216s_led_t g_aw20216s_leds[RGB_MATRIX_LED_COUNT] = { +const aw20216s_led_t PROGMEM g_aw20216s_leds[AW20216S_LED_COUNT] = { {0, CS1_SW1, CS2_SW1, CS3_SW1}, // 0, ESC, k13 {0, CS4_SW1, CS5_SW1, CS6_SW1}, // 1, ~, k16 {0, CS7_SW1, CS8_SW1, CS9_SW1}, // 2, Tab, k11 diff --git a/keyboards/gmmk/pro/rev2/ansi/config.h b/keyboards/gmmk/pro/rev2/ansi/config.h deleted file mode 100644 index cc489b9c63..0000000000 --- a/keyboards/gmmk/pro/rev2/ansi/config.h +++ /dev/null @@ -1,22 +0,0 @@ -/* Copyright 2021 Glorious, LLC <salman@pcgamingrace.com> - * - * This program is free software: you can redistribute it and/or modify - * it under the terms of the GNU General Public License as published by - * the Free Software Foundation, either version 2 of the License, or - * (at your option) any later version. - * - * This program is distributed in the hope that it will be useful, - * but WITHOUT ANY WARRANTY; without even the implied warranty of - * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the - * GNU General Public License for more details. - * - * You should have received a copy of the GNU General Public License - * along with this program. If not, see <http://www.gnu.org/licenses/>. - */ - -#pragma once - - -#define DRIVER_1_LED_TOTAL 66 -#define DRIVER_2_LED_TOTAL 32 -#define RGB_MATRIX_LED_COUNT (DRIVER_1_LED_TOTAL + DRIVER_2_LED_TOTAL) diff --git a/keyboards/gmmk/pro/rev2/ansi/info.json b/keyboards/gmmk/pro/rev2/ansi/info.json index cd1fd31bf0..5615044316 100644 --- a/keyboards/gmmk/pro/rev2/ansi/info.json +++ b/keyboards/gmmk/pro/rev2/ansi/info.json @@ -8,9 +8,6 @@ "pid": "0x5044", "device_version": "0.0.2" }, - "rgb_matrix": { - "driver": "aw20216s" - }, "matrix_pins": { "cols": ["A0", "A1", "A2", "A3", "A4", "A8", "A9", "A10"], "rows": ["B0", "B1", "B2", "B3", "B4", "B5", "B6", "B7", "B8", "B9", "B10"] diff --git a/keyboards/gmmk/pro/rev2/iso/config.h b/keyboards/gmmk/pro/rev2/iso/config.h deleted file mode 100644 index 9a115d9194..0000000000 --- a/keyboards/gmmk/pro/rev2/iso/config.h +++ /dev/null @@ -1,22 +0,0 @@ -/* Copyright 2021 Glorious, LLC <salman@pcgamingrace.com> - * - * This program is free software: you can redistribute it and/or modify - * it under the terms of the GNU General Public License as published by - * the Free Software Foundation, either version 2 of the License, or - * (at your option) any later version. - * - * This program is distributed in the hope that it will be useful, - * but WITHOUT ANY WARRANTY; without even the implied warranty of - * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the - * GNU General Public License for more details. - * - * You should have received a copy of the GNU General Public License - * along with this program. If not, see <http://www.gnu.org/licenses/>. - */ - -#pragma once - - -#define DRIVER_1_LED_TOTAL 66 -#define DRIVER_2_LED_TOTAL 33 -#define RGB_MATRIX_LED_COUNT (DRIVER_1_LED_TOTAL + DRIVER_2_LED_TOTAL) diff --git a/keyboards/gmmk/pro/rev2/iso/info.json b/keyboards/gmmk/pro/rev2/iso/info.json index 6233356616..3b7c0ca544 100644 --- a/keyboards/gmmk/pro/rev2/iso/info.json +++ b/keyboards/gmmk/pro/rev2/iso/info.json @@ -8,9 +8,6 @@ "pid": "0x5044", "device_version": "0.0.2" }, - "rgb_matrix": { - "driver": "aw20216s" - }, "matrix_pins": { "cols": ["A0", "A1", "A2", "A3", "A4", "A8", "A9", "A10"], "rows": ["B0", "B1", "B2", "B3", "B4", "B5", "B6", "B7", "B8", "B9", "B10"] diff --git a/keyboards/gmmk/pro/rev2/iso/iso.c b/keyboards/gmmk/pro/rev2/iso/iso.c index 3a5b21c014..969ce8bf2e 100644 --- a/keyboards/gmmk/pro/rev2/iso/iso.c +++ b/keyboards/gmmk/pro/rev2/iso/iso.c @@ -137,7 +137,7 @@ led_config_t g_led_config = {{ 2, 4, 2, 2, 4, 4, 2, 2, 4, 2, 2, 4, 4, 2, 2, 4, 4, 2, 2, 4, 4, 4, 4, 4 }}; -const aw20216s_led_t g_aw20216s_leds[RGB_MATRIX_LED_COUNT] = { +const aw20216s_led_t PROGMEM g_aw20216s_leds[AW20216S_LED_COUNT] = { {0, CS1_SW1, CS2_SW1, CS3_SW1}, // 0, ESC, k13 {0, CS4_SW1, CS5_SW1, CS6_SW1}, // 1, ~, k16 {0, CS7_SW1, CS8_SW1, CS9_SW1}, // 2, Tab, k11 |