diff options
| -rw-r--r-- | Dockerfile | 9 | ||||
| -rw-r--r-- | keyboards/amj60/amj60.h | 15 | ||||
| -rw-r--r-- | keyboards/amj60/keymaps/maximized/keymap.c | 61 | ||||
| -rw-r--r-- | keyboards/ergodox/keymaps/coderkun_neo2/keymap.c | 53 | ||||
| -rw-r--r-- | keyboards/ergodox/keymaps/coderkun_neo2/readme.md | 122 | ||||
| -rw-r--r-- | keyboards/handwired/promethium/color.h | 15 | ||||
| -rw-r--r-- | keyboards/handwired/promethium/config.h | 44 | ||||
| -rw-r--r-- | keyboards/handwired/promethium/keymaps/priyadi/config.h | 1 | ||||
| -rw-r--r-- | keyboards/handwired/promethium/keymaps/priyadi/keymap.c | 157 | ||||
| -rw-r--r-- | keyboards/handwired/promethium/keymaps/priyadi/rgbtheme.h | 1 | ||||
| -rw-r--r-- | keyboards/handwired/promethium/keymaps/priyadi/rgbtheme_carbon.h | 36 | ||||
| -rw-r--r-- | keyboards/handwired/promethium/keymaps/priyadi/rgbtheme_default.h | 36 | ||||
| -rw-r--r-- | keyboards/handwired/promethium/matrix.c | 4 | ||||
| -rw-r--r-- | keyboards/handwired/promethium/promethium.c | 6 | ||||
| -rw-r--r-- | keyboards/hhkb/keymaps/cinaeco/Makefile | 23 | ||||
| -rw-r--r-- | keyboards/hhkb/keymaps/cinaeco/README.md | 23 | ||||
| -rw-r--r-- | keyboards/hhkb/keymaps/cinaeco/config.h | 20 | ||||
| -rw-r--r-- | keyboards/hhkb/keymaps/cinaeco/keymap.c | 186 | ||||
| -rw-r--r-- | keyboards/hhkb/keymaps/smt/keymap.c | 176 | ||||
| -rw-r--r-- | keyboards/hhkb/rules.mk | 2 | ||||
| -rw-r--r-- | keyboards/miuni32/config.h | 1 | ||||
| -rw-r--r-- | keyboards/miuni32/keymaps/adam-lee/Makefile | 21 | ||||
| -rw-r--r-- | keyboards/miuni32/keymaps/adam-lee/config.h | 8 | ||||
| -rw-r--r-- | keyboards/miuni32/keymaps/adam-lee/keymap.c | 119 | ||||
| -rw-r--r-- | keyboards/miuni32/keymaps/adam-lee/readme.md | 1 | ||||
| -rw-r--r-- | keyboards/miuni32/keymaps/default/keymap.c | 104 | ||||
| -rw-r--r-- | keyboards/miuni32/keymaps/ht_156/Makefile | 21 | ||||
| -rw-r--r-- | keyboards/miuni32/keymaps/ht_156/config.h | 8 | ||||
| -rw-r--r-- | keyboards/miuni32/keymaps/ht_156/keymap.c | 181 | ||||
| -rw-r--r-- | keyboards/miuni32/keymaps/ht_156/readme.md | 1 | ||||
| -rw-r--r-- | keyboards/miuni32/miuni32.h | 4 | ||||
| -rw-r--r-- | keyboards/planck/keymaps/dshields/Makefile | 11 | ||||
| -rw-r--r-- | keyboards/planck/keymaps/dshields/config.h | 23 | ||||
| -rw-r--r-- | keyboards/planck/keymaps/dshields/keymap.c | 98 | ||||
| -rw-r--r-- | keyboards/planck/keymaps/lae3/keymap.c | 20 | ||||
| -rw-r--r-- | keyboards/planck/keymaps/lae3/readme.md | 112 | ||||
| -rw-r--r-- | keyboards/planck/keymaps/vifon/keymap.c | 3 | ||||
| -rw-r--r-- | keyboards/ps2avrGB/keymaps/default/keymap.c | 16 | ||||
| -rw-r--r-- | keyboards/ps2avrGB/ps2avrGB.h | 18 | ||||
| -rw-r--r-- | keyboards/s60-x/default/rules.mk | 1 | ||||
| -rw-r--r-- | keyboards/s60-x/rgb/rules.mk | 56 | ||||
| -rw-r--r-- | keyboards/s60-x/s60-x.c | 1 | ||||
| -rw-r--r-- | keyboards/s60-x/s60-x_precompiled.zip | bin | 276106 -> 0 bytes | |||
| -rw-r--r-- | keyboards/s60_x/Makefile (renamed from keyboards/s60-x/Makefile) | 0 | ||||
| -rw-r--r-- | keyboards/s60_x/config.h (renamed from keyboards/s60-x/config.h) | 13 | ||||
| -rw-r--r-- | keyboards/s60_x/default/Makefile (renamed from keyboards/s60-x/default/Makefile) | 0 | ||||
| -rw-r--r-- | keyboards/s60_x/default/config.h (renamed from keyboards/s60-x/default/config.h) | 0 | ||||
| -rw-r--r-- | keyboards/s60_x/default/default.c (renamed from keyboards/s60-x/default/default.c) | 0 | ||||
| -rw-r--r-- | keyboards/s60_x/default/default.h (renamed from keyboards/s60-x/default/default.h) | 0 | ||||
| -rw-r--r-- | keyboards/s60_x/default/rules.mk | 9 | ||||
| -rw-r--r-- | keyboards/s60_x/keymaps/ansi_qwertz/Makefile (renamed from keyboards/s60-x/keymaps/ansi_qwertz/Makefile) | 0 | ||||
| -rw-r--r-- | keyboards/s60_x/keymaps/ansi_qwertz/config.h (renamed from keyboards/s60-x/keymaps/ansi_qwertz/config.h) | 0 | ||||
| -rw-r--r-- | keyboards/s60_x/keymaps/ansi_qwertz/docs/KB_US-International-Alternative.png (renamed from keyboards/s60-x/keymaps/ansi_qwertz/docs/KB_US-International-Alternative.png) | bin | 54748 -> 54748 bytes | |||
| -rw-r--r-- | keyboards/s60_x/keymaps/ansi_qwertz/docs/KB_US-International-Alternative.svg (renamed from keyboards/s60-x/keymaps/ansi_qwertz/docs/KB_US-International-Alternative.svg) | 0 | ||||
| -rw-r--r-- | keyboards/s60_x/keymaps/ansi_qwertz/docs/KB_US-International-Alternative.svg.2016_08_18_09_06_36.0.svg (renamed from keyboards/s60-x/keymaps/ansi_qwertz/docs/KB_US-International-Alternative.svg.2016_08_18_09_06_36.0.svg) | 0 | ||||
| -rw-r--r-- | keyboards/s60_x/keymaps/ansi_qwertz/docs/KB_US-International.png (renamed from keyboards/s60-x/keymaps/ansi_qwertz/docs/KB_US-International.png) | bin | 54041 -> 54041 bytes | |||
| -rw-r--r-- | keyboards/s60_x/keymaps/ansi_qwertz/docs/KB_US-International.svg (renamed from keyboards/s60-x/keymaps/ansi_qwertz/docs/KB_US-International.svg) | 0 | ||||
| -rw-r--r-- | keyboards/s60_x/keymaps/ansi_qwertz/docs/base_layer.PNG (renamed from keyboards/s60-x/keymaps/ansi_qwertz/docs/base_layer.PNG) | bin | 29411 -> 29411 bytes | |||
| -rw-r--r-- | keyboards/s60_x/keymaps/ansi_qwertz/docs/function_layer.PNG (renamed from keyboards/s60-x/keymaps/ansi_qwertz/docs/function_layer.PNG) | bin | 25567 -> 25567 bytes | |||
| -rw-r--r-- | keyboards/s60_x/keymaps/ansi_qwertz/docs/gaming_layer.PNG (renamed from keyboards/s60-x/keymaps/ansi_qwertz/docs/gaming_layer.PNG) | bin | 17895 -> 17895 bytes | |||
| -rw-r--r-- | keyboards/s60_x/keymaps/ansi_qwertz/keymap.c (renamed from keyboards/s60-x/keymaps/ansi_qwertz/keymap.c) | 2 | ||||
| -rw-r--r-- | keyboards/s60_x/keymaps/ansi_qwertz/readme.md (renamed from keyboards/s60-x/keymaps/ansi_qwertz/readme.md) | 0 | ||||
| -rw-r--r-- | keyboards/s60_x/keymaps/custom/keymap.c (renamed from keyboards/s60-x/keymaps/custom/keymap.c) | 2 | ||||
| -rw-r--r-- | keyboards/s60_x/keymaps/custom/readme.md (renamed from keyboards/s60-x/keymaps/custom/readme.md) | 0 | ||||
| -rw-r--r-- | keyboards/s60_x/keymaps/dbroqua/keymap.c (renamed from keyboards/s60-x/keymaps/dbroqua/keymap.c) | 27 | ||||
| -rw-r--r-- | keyboards/s60_x/keymaps/default/keymap.c (renamed from keyboards/s60-x/keymaps/default/keymap.c) | 2 | ||||
| -rw-r--r-- | keyboards/s60_x/keymaps/default/readme.md (renamed from keyboards/s60-x/keymaps/default/readme.md) | 0 | ||||
| -rw-r--r-- | keyboards/s60_x/keymaps/hasu/keymap.c (renamed from keyboards/s60-x/keymaps/hasu/keymap.c) | 2 | ||||
| -rw-r--r-- | keyboards/s60_x/keymaps/hasu/readme.md (renamed from keyboards/s60-x/keymaps/hasu/readme.md) | 0 | ||||
| -rw-r--r-- | keyboards/s60_x/keymaps/hhkb/keymap.c (renamed from keyboards/s60-x/keymaps/hhkb/keymap.c) | 2 | ||||
| -rw-r--r-- | keyboards/s60_x/keymaps/hhkb/readme.md (renamed from keyboards/s60-x/keymaps/hhkb/readme.md) | 0 | ||||
| -rw-r--r-- | keyboards/s60_x/keymaps/iso/keymap.c (renamed from keyboards/s60-x/keymaps/iso/keymap.c) | 2 | ||||
| -rw-r--r-- | keyboards/s60_x/keymaps/iso/readme.md (renamed from keyboards/s60-x/keymaps/iso/readme.md) | 0 | ||||
| -rw-r--r-- | keyboards/s60_x/keymaps/jpec/keymap.c (renamed from keyboards/s60-x/keymaps/jpec/keymap.c) | 2 | ||||
| -rw-r--r-- | keyboards/s60_x/keymaps/jpec/readme.md (renamed from keyboards/s60-x/keymaps/jpec/readme.md) | 0 | ||||
| -rw-r--r-- | keyboards/s60_x/keymaps/plain/keymap.c (renamed from keyboards/s60-x/keymaps/plain/keymap.c) | 2 | ||||
| -rw-r--r-- | keyboards/s60_x/keymaps/plain/readme.md (renamed from keyboards/s60-x/keymaps/plain/readme.md) | 0 | ||||
| -rw-r--r-- | keyboards/s60_x/keymaps/poker/keymap.c (renamed from keyboards/s60-x/keymaps/poker/keymap.c) | 2 | ||||
| -rw-r--r-- | keyboards/s60_x/keymaps/poker/readme.md (renamed from keyboards/s60-x/keymaps/poker/readme.md) | 0 | ||||
| -rw-r--r-- | keyboards/s60_x/keymaps/poker_bit/keymap.c (renamed from keyboards/s60-x/keymaps/poker_bit/keymap.c) | 2 | ||||
| -rw-r--r-- | keyboards/s60_x/keymaps/poker_bit/readme.md (renamed from keyboards/s60-x/keymaps/poker_bit/readme.md) | 0 | ||||
| -rw-r--r-- | keyboards/s60_x/keymaps/poker_set/keymap.c (renamed from keyboards/s60-x/keymaps/poker_set/keymap.c) | 2 | ||||
| -rw-r--r-- | keyboards/s60_x/keymaps/poker_set/readme.md (renamed from keyboards/s60-x/keymaps/poker_set/readme.md) | 0 | ||||
| -rw-r--r-- | keyboards/s60_x/keymaps/spacefn/keymap.c (renamed from keyboards/s60-x/keymaps/spacefn/keymap.c) | 2 | ||||
| -rw-r--r-- | keyboards/s60_x/keymaps/spacefn/readme.md (renamed from keyboards/s60-x/keymaps/spacefn/readme.md) | 0 | ||||
| -rw-r--r-- | keyboards/s60_x/readme.md (renamed from keyboards/s60-x/readme.md) | 5 | ||||
| -rw-r--r-- | keyboards/s60_x/rgb/Makefile (renamed from keyboards/s60-x/rgb/Makefile) | 0 | ||||
| -rw-r--r-- | keyboards/s60_x/rgb/config.h (renamed from keyboards/s60-x/rgb/config.h) | 11 | ||||
| -rw-r--r-- | keyboards/s60_x/rgb/rgb.c (renamed from keyboards/s60-x/rgb/rgb.c) | 0 | ||||
| -rw-r--r-- | keyboards/s60_x/rgb/rgb.h (renamed from keyboards/s60-x/rgb/rgb.h) | 0 | ||||
| -rw-r--r-- | keyboards/s60_x/rgb/rules.mk | 9 | ||||
| -rw-r--r-- | keyboards/s60_x/rules.mk (renamed from keyboards/s60-x/rules.mk) | 4 | ||||
| -rw-r--r-- | keyboards/s60_x/s60_x.c | 1 | ||||
| -rw-r--r-- | keyboards/s60_x/s60_x.h (renamed from keyboards/s60-x/s60-x.h) | 0 | ||||
| -rw-r--r-- | keyboards/xd60/readme.md | 2 | ||||
| -rw-r--r-- | quantum/dynamic_macro.h | 82 | ||||
| -rw-r--r-- | tmk_core/avr.mk | 42 | ||||
| -rw-r--r-- | tmk_core/chibios.mk | 4 |
98 files changed, 1754 insertions, 297 deletions
diff --git a/Dockerfile b/Dockerfile index 744ded857..88da06f02 100644 --- a/Dockerfile +++ b/Dockerfile | |||
| @@ -1,8 +1,7 @@ | |||
| 1 | FROM debian:jessie | 1 | FROM debian:jessie |
| 2 | MAINTAINER Erik Dasque <erik@frenchguys.com> | 2 | MAINTAINER Erik Dasque <erik@frenchguys.com> |
| 3 | 3 | ||
| 4 | RUN apt-get update | 4 | RUN apt-get update && apt-get install --no-install-recommends -y build-essential \ |
| 5 | RUN apt-get install --no-install-recommends -y build-essential \ | ||
| 6 | gcc \ | 5 | gcc \ |
| 7 | unzip \ | 6 | unzip \ |
| 8 | wget \ | 7 | wget \ |
| @@ -15,10 +14,8 @@ RUN apt-get install --no-install-recommends -y build-essential \ | |||
| 15 | gcc-arm-none-eabi \ | 14 | gcc-arm-none-eabi \ |
| 16 | binutils-arm-none-eabi \ | 15 | binutils-arm-none-eabi \ |
| 17 | libnewlib-arm-none-eabi \ | 16 | libnewlib-arm-none-eabi \ |
| 18 | git | 17 | git \ |
| 19 | 18 | && rm -rf /var/lib/apt/lists/* | |
| 20 | RUN apt-get clean | ||
| 21 | RUN rm -rf /var/lib/apt/lists/* | ||
| 22 | 19 | ||
| 23 | ENV keyboard=ergodox | 20 | ENV keyboard=ergodox |
| 24 | ENV subproject=ez | 21 | ENV subproject=ez |
diff --git a/keyboards/amj60/amj60.h b/keyboards/amj60/amj60.h index a0cb47331..c508e479c 100644 --- a/keyboards/amj60/amj60.h +++ b/keyboards/amj60/amj60.h | |||
| @@ -147,6 +147,21 @@ | |||
| 147 | {k40, k41, k42, XXX, XXX, k45, XXX, XXX, XXX, XXX, k4a, k4b, k4c, k4d} \ | 147 | {k40, k41, k42, XXX, XXX, k45, XXX, XXX, XXX, XXX, k4a, k4b, k4c, k4d} \ |
| 148 | } | 148 | } |
| 149 | 149 | ||
| 150 | #define KEYMAP_MAX( \ | ||
| 151 | k00, k01, k02, k03, k04, k05, k06, k07, k08, k09, k0a, k0b, k0c, k0d, k49,\ | ||
| 152 | k10, k11, k12, k13, k14, k15, k16, k17, k18, k19, k1a, k1b, k1c, k1d, \ | ||
| 153 | k20, k21, k22, k23, k24, k25, k26, k27, k28, k29, k2a, k2b, k2d, \ | ||
| 154 | k30, k31, k32, k33, k34, k35, k36, k37, k38, k39, k3a, k3b, k3d, k3c, \ | ||
| 155 | k40, k41, k42, k45, k4a, k4b, k4c, k4d \ | ||
| 156 | ) \ | ||
| 157 | { \ | ||
| 158 | {k00, k01, k02, k03, k04, k05, k06, k07, k08, k09, k0a, k0b, k0c, k0d}, \ | ||
| 159 | {k10, k11, k12, k13, k14, k15, k16, k17, k18, k19, k1a, k1b, k1c, k1d}, \ | ||
| 160 | {k20, k21, k22, k23, k24, k25, k26, k27, k28, k29, k2a, k2b, XXX, k2d}, \ | ||
| 161 | {k30, k31, k32, k33, k34, k35, k36, k37, k38, k39, k3a, k3b, k3c, k3d}, \ | ||
| 162 | {k40, k41, k42, XXX, XXX, k45, XXX, XXX, XXX, k49, k4a, k4b, k4c, k4d} \ | ||
| 163 | } | ||
| 164 | |||
| 150 | void matrix_init_user(void); | 165 | void matrix_init_user(void); |
| 151 | void matrix_scan_user(void); | 166 | void matrix_scan_user(void); |
| 152 | 167 | ||
diff --git a/keyboards/amj60/keymaps/maximized/keymap.c b/keyboards/amj60/keymaps/maximized/keymap.c new file mode 100644 index 000000000..d2a4be59f --- /dev/null +++ b/keyboards/amj60/keymaps/maximized/keymap.c | |||
| @@ -0,0 +1,61 @@ | |||
| 1 | // This is the canonical layout file for the Quantum project. If you want to add another keyboard, | ||
| 2 | // this is the style you want to emulate. | ||
| 3 | |||
| 4 | #include "amj60.h" | ||
| 5 | |||
| 6 | // Each layer gets a name for readability, which is then used in the keymap matrix below. | ||
| 7 | // The underscores don't mean anything - you can have a layer called STUFF or any other name. | ||
| 8 | // Layer names don't all need to be of the same length, obviously, and you can also skip them | ||
| 9 | // entirely and just use numbers. | ||
| 10 | #define _DEF 0 | ||
| 11 | #define _SPC 1 | ||
| 12 | |||
| 13 | // dual-role shortcuts | ||
| 14 | #define SPACEDUAL LT(_SPC, KC_SPACE) | ||
| 15 | |||
| 16 | |||
| 17 | // increase readability | ||
| 18 | #define _______ KC_TRNS | ||
| 19 | |||
| 20 | const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = { | ||
| 21 | /* Keymap _DEF: Default Layer | ||
| 22 | * ,-----------------------------------------------------------. | ||
| 23 | * |Esc| 1| 2| 3| 4| 5| 6| 7| 8| 9| 0| -| =| \ | ~ | | ||
| 24 | * |-----------------------------------------------------------| | ||
| 25 | * |Tab | Q| W| E| R| T| Y| U| I| O| P| [| ]| bspc| | ||
| 26 | * |-----------------------------------------------------------| | ||
| 27 | * |Caps | A| S| D| F| G| H| J| K| L| ;| '| Return | | ||
| 28 | * |-----------------------------------------------------------| | ||
| 29 | * |Sft | Fn0| Z| X| C| V| B| N| M| ,| .| /| Sft |Fn2| | ||
| 30 | * |-----------------------------------------------------------| | ||
| 31 | * |Ctrl|Win |Alt | Space/Fn0 |Alt |Win |Menu|RCtl| | ||
| 32 | * `-----------------------------------------------------------' | ||
| 33 | */ | ||
| 34 | [_DEF] = KEYMAP_MAX( | ||
| 35 | KC_ESC, 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_BSLS, KC_GRV, \ | ||
| 36 | 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_BSPC, \ | ||
| 37 | 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, \ | ||
| 38 | KC_LSFT, F(0), KC_Z, KC_X, KC_C, KC_V, KC_B, KC_N, KC_M, KC_COMM, KC_DOT, KC_SLSH, KC_RSFT, F(1), \ | ||
| 39 | KC_LCTL, KC_LALT, KC_LGUI, SPACEDUAL, KC_RGUI, KC_RALT, KC_RCTL, F(2)), | ||
| 40 | |||
| 41 | /* Keymap 1: F-and-vim Layer, modified with Space (by holding space) | ||
| 42 | * ,-----------------------------------------------------------. | ||
| 43 | * |PrSc| F1| F2| F3| F4| F5| F6| F7| F8| F9|F10|F11|F12| | | | ||
| 44 | * |-----------------------------------------------------------| | ||
| 45 | * | |Paus| Up| [ | ] | | | | ( | ) | | | | Del | | ||
| 46 | * |-----------------------------------------------------------| | ||
| 47 | * | |Lft|Dwn|Rgt| | |Left|Down|Right|Up| | | PLAY | | ||
| 48 | * |-----------------------------------------------------------| | ||
| 49 | * | | | | | < | > | |M0 | | | | | Vol+ | | | ||
| 50 | * |-----------------------------------------------------------| | ||
| 51 | * | | | | |Alt |Prev|Vol-|Next| | ||
| 52 | * `-----------------------------------------------------------' | ||
| 53 | */ | ||
| 54 | [_SPC] = KEYMAP_MAX( | ||
| 55 | KC_PSCR, KC_F1, KC_F2, KC_F3, KC_F4, KC_F5, KC_F6, KC_F7, KC_F8, KC_F9, KC_F10, KC_F11, KC_F12, _______, _______, \ | ||
| 56 | _______, KC_PAUS, KC_UP, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, KC_DEL, \ | ||
| 57 | _______, KC_LEFT, KC_DOWN, KC_RIGHT, _______, _______, KC_LEFT, KC_DOWN, KC_UP, KC_RGHT, _______, _______, KC_MPLY, \ | ||
| 58 | _______, _______, _______, _______, _______, _______, KC_SPACE, M(0), _______, _______, _______, _______, KC_VOLU, _______, \ | ||
| 59 | _______, _______, _______, _______, _______, KC_MPRV, KC_VOLD, KC_MNXT), | ||
| 60 | |||
| 61 | }; | ||
diff --git a/keyboards/ergodox/keymaps/coderkun_neo2/keymap.c b/keyboards/ergodox/keymaps/coderkun_neo2/keymap.c index aaf75d58f..2d6f76856 100644 --- a/keyboards/ergodox/keymaps/coderkun_neo2/keymap.c +++ b/keyboards/ergodox/keymaps/coderkun_neo2/keymap.c | |||
| @@ -22,7 +22,7 @@ const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = { | |||
| 22 | * ├───────┼─────┼─────┼─────╄─────╃─────┤ TL2 │ │ TL3 ├─────╄─────╃─────┼─────┼─────┼───────┤ | 22 | * ├───────┼─────┼─────┼─────╄─────╃─────┤ TL2 │ │ TL3 ├─────╄─────╃─────┼─────┼─────┼───────┤ |
| 23 | * │ LSHFT │ Ü │ Ö │ Ä │ P │ Z │ │ │ │ B │ M │ , │ . │ J │ Shift │ | 23 | * │ LSHFT │ Ü │ Ö │ Ä │ P │ Z │ │ │ │ B │ M │ , │ . │ J │ Shift │ |
| 24 | * └─┬─────┼─────┼─────┼─────┼─────┼─────┴─────┘ └─────┴─────┼─────┼─────┼─────┼─────┼─────┬─┘ | 24 | * └─┬─────┼─────┼─────┼─────┼─────┼─────┴─────┘ └─────┴─────┼─────┼─────┼─────┼─────┼─────┬─┘ |
| 25 | * │ CTL │ ALT │ MO1 │ Win │ Mod4│ │ Mod4│ Win │ MO1 │ Alt │ CTL │ | 25 | * │ CTL │ ALT │ MO1 │ Win │ Mod4│ │ Mod4│ Win │ MO1 │ ALT │ CTL │ |
| 26 | * └─────┴─────┴─────┴─────┴─────┘ ┌─────┬─────┐ ┌─────┬─────┐ └─────┴─────┴─────┴─────┴─────┘ | 26 | * └─────┴─────┴─────┴─────┴─────┘ ┌─────┬─────┐ ┌─────┬─────┐ └─────┴─────┴─────┴─────┴─────┘ |
| 27 | * │ ← │ ↑ │ │ ↓ │ → │ | 27 | * │ ← │ ↑ │ │ ↓ │ → │ |
| 28 | * ┌─────┼─────┼─────┤ ├─────┼─────┼─────┐ | 28 | * ┌─────┼─────┼─────┤ ├─────┼─────┼─────┐ |
| @@ -46,7 +46,7 @@ const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = { | |||
| 46 | KC_END, NEO_K, NEO_H, NEO_G, NEO_F, NEO_Q, NEO_SS, | 46 | KC_END, NEO_K, NEO_H, NEO_G, NEO_F, NEO_Q, NEO_SS, |
| 47 | NEO_S, NEO_N, NEO_R, NEO_T, NEO_D, NEO_L1_R, | 47 | NEO_S, NEO_N, NEO_R, NEO_T, NEO_D, NEO_L1_R, |
| 48 | TG(PMN), NEO_B, NEO_M, KC_COMM,KC_DOT, NEO_J, KC_RSFT, | 48 | TG(PMN), NEO_B, NEO_M, KC_COMM,KC_DOT, NEO_J, KC_RSFT, |
| 49 | NEO_L2_R,KC_RGUI,MO(FMU),KC_RALT,KC_RCTL, | 49 | NEO_L2_R,KC_RGUI,MO(FMU),KC_LALT,KC_RCTL, |
| 50 | KC_DOWN, KC_RGHT, | 50 | KC_DOWN, KC_RGHT, |
| 51 | KC_MINS, | 51 | KC_MINS, |
| 52 | MEH_T(KC_NO),KC_ENT,KC_SPC | 52 | MEH_T(KC_NO),KC_ENT,KC_SPC |
| @@ -63,7 +63,7 @@ const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = { | |||
| 63 | * ├───────┼─────┼─────┼─────╄─────╃─────┤(TL2)│ │(TL3)├─────╄─────╃─────┼─────┼─────┼───────┤ | 63 | * ├───────┼─────┼─────┼─────╄─────╃─────┤(TL2)│ │(TL3)├─────╄─────╃─────┼─────┼─────┼───────┤ |
| 64 | * │ LSHFT │ Ä │ Q │ R │ W │ N │ │ │ │ J │ M │ , │ . │ ẞ │ Shift │ | 64 | * │ LSHFT │ Ä │ Q │ R │ W │ N │ │ │ │ J │ M │ , │ . │ ẞ │ Shift │ |
| 65 | * └─┬─────┼─────┼─────┼─────┼─────┼─────┴─────┘ └─────┴─────┼─────┼─────┼─────┼─────┼─────┬─┘ | 65 | * └─┬─────┼─────┼─────┼─────┼─────┼─────┴─────┘ └─────┴─────┼─────┼─────┼─────┼─────┼─────┬─┘ |
| 66 | * │ CTL │ ALT │ MO1 │ Win │ MO4 │ │ M04 │ Win │ MO1 │ Alt │ CTL │ | 66 | * │ CTL │ ALT │ MO1 │ Win │ MO4 │ │ M04 │ Win │ MO1 │ ALT │ CTL │ |
| 67 | * └─────┴─────┴─────┴─────┴─────┘ ┌─────┬─────┐ ┌─────┬─────┐ └─────┴─────┴─────┴─────┴─────┘ | 67 | * └─────┴─────┴─────┴─────┴─────┘ ┌─────┬─────┐ ┌─────┬─────┐ └─────┴─────┴─────┴─────┴─────┘ |
| 68 | * │ ← │ ↑ │ │ ↓ │ → │ | 68 | * │ ← │ ↑ │ │ ↓ │ → │ |
| 69 | * ┌─────┼─────┼─────┤ ├─────┼─────┼─────┐ | 69 | * ┌─────┼─────┼─────┤ ├─────┼─────┼─────┐ |
| @@ -87,7 +87,7 @@ const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = { | |||
| 87 | KC_END, DE_B, DE_A, DE_S, DE_G, DE_V, DE_Y, | 87 | KC_END, DE_B, DE_A, DE_S, DE_G, DE_V, DE_Y, |
| 88 | DE_U, DE_MINS,DE_Z, DE_E, DE_X, NEO_L1_R, | 88 | DE_U, DE_MINS,DE_Z, DE_E, DE_X, NEO_L1_R, |
| 89 | KC_TRNS, DE_J, DE_M, DE_COMM,DE_DOT, DE_SS, KC_RSFT, | 89 | KC_TRNS, DE_J, DE_M, DE_COMM,DE_DOT, DE_SS, KC_RSFT, |
| 90 | MO(NHL),KC_RGUI,MO(FMU),KC_RALT,KC_RCTL, | 90 | MO(NHL),KC_RGUI,MO(FMU),KC_LALT,KC_RCTL, |
| 91 | KC_DOWN, KC_RGHT, | 91 | KC_DOWN, KC_RGHT, |
| 92 | KC_MINS, | 92 | KC_MINS, |
| 93 | MEH_T(KC_NO),KC_ENT,KC_SPC | 93 | MEH_T(KC_NO),KC_ENT,KC_SPC |
| @@ -104,7 +104,7 @@ const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = { | |||
| 104 | * ├───────┼─────┼─────┼─────╄─────╃─────┤(TL2)│ │(TL3)├─────╄─────╃─────┼─────┼─────┼───────┤ | 104 | * ├───────┼─────┼─────┼─────╄─────╃─────┤(TL2)│ │(TL3)├─────╄─────╃─────┼─────┼─────┼───────┤ |
| 105 | * │ LSHFT │ Ü │ Ö │ Ä │ P │ Z │ │ │ │ B │ M │ , │ . │ J │ Shift │ | 105 | * │ LSHFT │ Ü │ Ö │ Ä │ P │ Z │ │ │ │ B │ M │ , │ . │ J │ Shift │ |
| 106 | * └─┬─────┼─────┼─────┼─────┼─────┼─────┴─────┘ └─────┴─────┼─────┼─────┼─────┼─────┼─────┬─┘ | 106 | * └─┬─────┼─────┼─────┼─────┼─────┼─────┴─────┘ └─────┴─────┼─────┼─────┼─────┼─────┼─────┬─┘ |
| 107 | * │ CTL │ ALT │ MO1 │ Win │ MO4 │ │ M04 │ Win │ MO1 │ Alt │ CTL │ | 107 | * │ CTL │ ALT │ MO1 │ Win │ MO4 │ │ M04 │ Win │ MO1 │ ALT │ CTL │ |
| 108 | * └─────┴─────┴─────┴─────┴─────┘ ┌─────┬─────┐ ┌─────┬─────┐ └─────┴─────┴─────┴─────┴─────┘ | 108 | * └─────┴─────┴─────┴─────┴─────┘ ┌─────┬─────┐ ┌─────┬─────┐ └─────┴─────┴─────┴─────┴─────┘ |
| 109 | * │ ← │ ↑ │ │ ↓ │ → │ | 109 | * │ ← │ ↑ │ │ ↓ │ → │ |
| 110 | * ┌─────┼─────┼─────┤ ├─────┼─────┼─────┐ | 110 | * ┌─────┼─────┼─────┤ ├─────┼─────┼─────┐ |
| @@ -127,7 +127,7 @@ const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = { | |||
| 127 | KC_END, DE_K, DE_H, DE_G, DE_F, DE_Q, DE_SS, | 127 | KC_END, DE_K, DE_H, DE_G, DE_F, DE_Q, DE_SS, |
| 128 | DE_S, DE_N, DE_R, DE_T, DE_D, KC_NO, | 128 | DE_S, DE_N, DE_R, DE_T, DE_D, KC_NO, |
| 129 | KC_TRNS, DE_B, DE_M, KC_COMM,KC_DOT, DE_J, KC_RSFT, | 129 | KC_TRNS, DE_B, DE_M, KC_COMM,KC_DOT, DE_J, KC_RSFT, |
| 130 | MO(NHL),KC_RGUI,MO(FMU),KC_RALT,KC_RCTL, | 130 | MO(NHL),KC_RGUI,MO(FMU),KC_LALT,KC_RCTL, |
| 131 | KC_DOWN, KC_RGHT, | 131 | KC_DOWN, KC_RGHT, |
| 132 | KC_MINS, | 132 | KC_MINS, |
| 133 | MEH_T(KC_NO),KC_ENT,KC_SPC | 133 | MEH_T(KC_NO),KC_ENT,KC_SPC |
| @@ -135,13 +135,13 @@ const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = { | |||
| 135 | 135 | ||
| 136 | /* Layer 3: F-keys, Mouse and Unicode | 136 | /* Layer 3: F-keys, Mouse and Unicode |
| 137 | * ┌───────┬─────┬─────┬─────┬─────┬─────┬─────┐ ┌─────┬─────┬─────┬─────┬─────┬─────┬───────┐ | 137 | * ┌───────┬─────┬─────┬─────┬─────┬─────┬─────┐ ┌─────┬─────┬─────┬─────┬─────┬─────┬───────┐ |
| 138 | * │ │ │ │ │ │ │ │ │ │ │ │ │ │ │ │ | 138 | * │ │ F1 │ F2 │ F3 │ F4 │ F5 │ F6 │ │ F7 │ F8 │ F9 │ F10 │ F11 │ F12 │ │ |
| 139 | * ├───────┼─────┼─────┼─────┼─────┼─────┼─────┤ ├─────┼─────┼─────┼─────┼─────┼─────┼───────┤ | 139 | * ├───────┼─────┼─────┼─────┼─────┼─────┼─────┤ ├─────┼─────┼─────┼─────┼─────┼─────┼───────┤ |
| 140 | * │ │ ┌ │ ┬ │ ┐ │ ─ │ │ │ │ │ │ │ F9 │ F10 │ F11 │ F12 │ │ | 140 | * │ │ ┌ │ ┬ │ ┐ │ ─ │ │ │ │ │ │ ↔ │ ← │ → │ ↑ │ ↓ │ │ |
| 141 | * ├───────┼─────┼─────┼─────╆─────╅─────┤ │ │ ├─────╆─────╅─────┼─────┼─────┼───────┤ | 141 | * ├───────┼─────┼─────┼─────╆─────╅─────┤ │ │ ├─────╆─────╅─────┼─────┼─────┼───────┤ |
| 142 | * │ │ ├ │ ┼ │ ┤ │ ✓ │ ✕ ├─────┤ ├─────┤ │ F5 │ F6 │ F7 │ F8 │ │ | 142 | * │ │ ├ │ ┼ │ ┤ │ 〈 │ 〉 ├─────┤ ├─────┤ │ ✓ │ ✕ │ • │ ∶ │ │ |
| 143 | * ├───────┼─────┼─────┼─────╄─────╃─────┤(TL2)│ │(TL3)├─────╄─────╃─────┼─────┼─────┼───────┤ | 143 | * ├───────┼─────┼─────┼─────╄─────╃─────┤(TL2)│ │(TL3)├─────╄─────╃─────┼─────┼─────┼───────┤ |
| 144 | * │ │ └ │ ┴ │ ┘ │ ↔ │ ⇔ │ │ │ │ │ F1 │ F2 │ F3 │ F4 │ │ | 144 | * │ │ └ │ ┴ │ ┘ │ │ │ │ │ │ ⇔ │ ⇐ │ ⇒ │ ⇑ │ ⇓ │ │ |
| 145 | * └─┬─────┼─────┼─────┼─────┼─────┼─────┴─────┘ └─────┴─────┼─────┼─────┼─────┼─────┼─────┬─┘ | 145 | * └─┬─────┼─────┼─────┼─────┼─────┼─────┴─────┘ └─────┴─────┼─────┼─────┼─────┼─────┼─────┬─┘ |
| 146 | * │ │ │(MO1)│ │(MO4)│ │(MO4)│ │(MO1)│ │ │ | 146 | * │ │ │(MO1)│ │(MO4)│ │(MO4)│ │(MO1)│ │ │ |
| 147 | * └─────┴─────┴─────┴─────┴─────┘ ┌─────┬─────┐ ┌─────┬─────┐ └─────┴─────┴─────┴─────┴─────┘ | 147 | * └─────┴─────┴─────┴─────┴─────┘ ┌─────┬─────┐ ┌─────┬─────┐ └─────┴─────┴─────┴─────┴─────┘ |
| @@ -154,23 +154,23 @@ const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = { | |||
| 154 | */ | 154 | */ |
| 155 | [FMU] = KEYMAP( | 155 | [FMU] = KEYMAP( |
| 156 | // left hand | 156 | // left hand |
| 157 | KC_TRNS, KC_TRNS,KC_TRNS,KC_TRNS,KC_TRNS,KC_TRNS,KC_TRNS, | 157 | KC_TRNS, KC_F1, KC_F2, KC_F3, KC_F4, KC_F5, KC_F6, |
| 158 | KC_TRNS, UC(0x250C),UC(0x252C),UC(0x2510),UC(0x2500),UC(0x2502),KC_TRNS, | 158 | KC_TRNS, UC(0x250C),UC(0x252C),UC(0x2510),UC(0x2500),UC(0x2502),KC_TRNS, |
| 159 | KC_TRNS, UC(0x251C),UC(0x253C),UC(0x2524),UC(0x2713),UC(0x2715), | 159 | KC_TRNS, UC(0x251C),UC(0x253C),UC(0x2524),UC(0x3008),UC(0x3009), |
| 160 | KC_TRNS, UC(0x2514),UC(0x2534),UC(0x2518),UC(0x2194),UC(0x21D4),KC_TRNS, | 160 | KC_TRNS, UC(0x2514),UC(0x2534),UC(0x2518),KC_TRNS, KC_TRNS, KC_TRNS, |
| 161 | KC_TRNS, KC_TRNS,KC_TRNS,KC_TRNS,KC_TRNS, | 161 | KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, |
| 162 | KC_MS_L, KC_MS_U, | 162 | KC_MS_L, KC_MS_U, |
| 163 | KC_BTN1, | 163 | KC_BTN1, |
| 164 | KC_TRNS,KC_TRNS, KC_TRNS, | 164 | KC_TRNS, KC_TRNS, KC_TRNS, |
| 165 | // right hand | 165 | // right hand |
| 166 | KC_TRNS, KC_TRNS,KC_TRNS,KC_TRNS,KC_TRNS,KC_TRNS,KC_TRNS, | 166 | KC_F7, KC_F8, KC_F9, KC_F10, KC_F11, KC_F12, KC_TRNS, |
| 167 | KC_TRNS, KC_TRNS,KC_F9, KC_F10, KC_F11, KC_F12, KC_TRNS, | 167 | KC_TRNS, UC(0x2194),UC(0x2190),UC(0x2192),UC(0x2191),UC(0x2193),KC_TRNS, |
| 168 | KC_TRNS,KC_F5, KC_F6, KC_F7, KC_F8, KC_TRNS, | 168 | KC_TRNS, UC(0x2713),UC(0x2715),UC(0x2022),UC(0x2236),KC_TRNS, |
| 169 | KC_TRNS, KC_TRNS,KC_F1, KC_F2, KC_F3, KC_F4, KC_TRNS, | 169 | KC_TRNS, UC(0x21D4),UC(0x21D0),UC(0x21D2),UC(0x21D1),UC(0x21D3),KC_TRNS, |
| 170 | KC_TRNS,KC_TRNS,KC_TRNS,KC_TRNS,KC_TRNS, | 170 | KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, |
| 171 | KC_MS_D, KC_MS_R, | 171 | KC_MS_D, KC_MS_R, |
| 172 | KC_BTN2, | 172 | KC_BTN2, |
| 173 | KC_TRNS, KC_TRNS,KC_TRNS | 173 | KC_TRNS, KC_TRNS, KC_TRNS |
| 174 | ), | 174 | ), |
| 175 | 175 | ||
| 176 | /* Layer 4: Neo’s software layer 4 rebuilt in Hardware | 176 | /* Layer 4: Neo’s software layer 4 rebuilt in Hardware |
| @@ -294,11 +294,10 @@ void unicode_input_start (void) { | |||
| 294 | // Override method to use NEO_A instead of KC_A | 294 | // Override method to use NEO_A instead of KC_A |
| 295 | uint16_t hex_to_keycode(uint8_t hex) | 295 | uint16_t hex_to_keycode(uint8_t hex) |
| 296 | { | 296 | { |
| 297 | if (hex == 0x0) { | 297 | if(hex == 0x0) { |
| 298 | return KC_0; | 298 | return KC_0; |
| 299 | } else if (hex < 0xA) { | 299 | } |
| 300 | return KC_1 + (hex - 0x1); | 300 | else if(hex >= 0xA) { |
| 301 | } else { | ||
| 302 | switch(hex) { | 301 | switch(hex) { |
| 303 | case 0xA: | 302 | case 0xA: |
| 304 | return NEO_A; | 303 | return NEO_A; |
| @@ -316,4 +315,6 @@ uint16_t hex_to_keycode(uint8_t hex) | |||
| 316 | return KC_NO; | 315 | return KC_NO; |
| 317 | } | 316 | } |
| 318 | } | 317 | } |
| 318 | |||
| 319 | return KC_1 + (hex - 0x1); | ||
| 319 | } | 320 | } |
diff --git a/keyboards/ergodox/keymaps/coderkun_neo2/readme.md b/keyboards/ergodox/keymaps/coderkun_neo2/readme.md index 2a4d3a535..0c9290bf0 100644 --- a/keyboards/ergodox/keymaps/coderkun_neo2/readme.md +++ b/keyboards/ergodox/keymaps/coderkun_neo2/readme.md | |||
| @@ -4,10 +4,18 @@ The idea of this layout is to use it for [Neo2](http://www.neo-layout.org) but a | |||
| 4 | 4 | ||
| 5 | The main goal of the default layer is to provide a complete symmetric layout with each modifier equally placed for both hands (mirror, of course). | 5 | The main goal of the default layer is to provide a complete symmetric layout with each modifier equally placed for both hands (mirror, of course). |
| 6 | 6 | ||
| 7 | It also features a layer for additional keys like F-keys (F1 – F12), some mouse keys and (hopefully in the near future) some useful Unicode symbols. | 7 | It also features a layer for additional keys like F-keys (F1 – F12), some mouse keys and some useful Unicode symbols. |
| 8 | 8 | ||
| 9 | 9 | ||
| 10 | ## Layers | 10 | ## Build |
| 11 | |||
| 12 | ``` | ||
| 13 | make clean | ||
| 14 | make coderkun_neo2 | ||
| 15 | ``` | ||
| 16 | |||
| 17 | |||
| 18 | ## Keymap | ||
| 11 | 19 | ||
| 12 | 0. Default layer for Neo2 | 20 | 0. Default layer for Neo2 |
| 13 | 1. Poor man’s QWERTZ | 21 | 1. Poor man’s QWERTZ |
| @@ -16,16 +24,106 @@ It also features a layer for additional keys like F-keys (F1 – F12), some mous | |||
| 16 | 4. Neo’s software layers 4 rebuilt in hardware | 24 | 4. Neo’s software layers 4 rebuilt in hardware |
| 17 | 25 | ||
| 18 | 26 | ||
| 19 | ## Build | 27 | ### Layer 0: Default layer for Neo2 |
| 20 | 28 | ||
| 21 | 1. Enable Unicode in Makefile | 29 | ┌───────┬─────┬─────┬─────┬─────┬─────┬─────┐ ┌─────┬─────┬─────┬─────┬─────┬─────┬───────┐ |
| 30 | │ TAB │ 1 │ 2 │ 3 │ 4 │ 5 │ ` │ │ ´ │ 6 │ 7 │ 8 │ 9 │ 0 │ BKSPC │ | ||
| 31 | ├───────┼─────┼─────┼─────┼─────┼─────┼─────┤ ├─────┼─────┼─────┼─────┼─────┼─────┼───────┤ | ||
| 32 | │ Y │ X │ V │ L │ C │ W │ HOM │ │ END │ K │ H │ G │ F │ Q │ ß │ | ||
| 33 | ├───────┼─────┼─────┼─────╆─────╅─────┤ E │ │ ├─────╆─────╅─────┼─────┼─────┼───────┤ | ||
| 34 | │ Mod3 │ U │ I │ A │ E │ O ├─────┤ ├─────┤ S │ N │ R │ T │ D │ Mod3 │ | ||
| 35 | ├───────┼─────┼─────┼─────╄─────╃─────┤ TL2 │ │ TL3 ├─────╄─────╃─────┼─────┼─────┼───────┤ | ||
| 36 | │ LSHFT │ Ü │ Ö │ Ä │ P │ Z │ │ │ │ B │ M │ , │ . │ J │ Shift │ | ||
| 37 | └─┬─────┼─────┼─────┼─────┼─────┼─────┴─────┘ └─────┴─────┼─────┼─────┼─────┼─────┼─────┬─┘ | ||
| 38 | │ CTL │ ALT │ MO1 │ Win │ Mod4│ │ Mod4│ Win │ MO1 │ Alt │ CTL │ | ||
| 39 | └─────┴─────┴─────┴─────┴─────┘ ┌─────┬─────┐ ┌─────┬─────┐ └─────┴─────┴─────┴─────┴─────┘ | ||
| 40 | │ ← │ ↑ │ │ ↓ │ → │ | ||
| 41 | ┌─────┼─────┼─────┤ ├─────┼─────┼─────┐ | ||
| 42 | │ │ │ ─ │ │ ─ │ │ │ | ||
| 43 | │ SPC │ RTN ├─────┤ ├─────┤ RTN │ SPC │ | ||
| 44 | │ │ │ HYP │ │ MEH │ │ │ | ||
| 45 | └─────┴─────┴─────┘ └─────┴─────┴─────┘ | ||
| 22 | 46 | ||
| 23 | ``` | ||
| 24 | UNICODE_ENABLE = yes | ||
| 25 | ``` | ||
| 26 | 2. Build as usual | ||
| 27 | 47 | ||
| 28 | ``` | 48 | ### Layer 1: Poor man’s QWERTZ |
| 29 | make clean | 49 | |
| 30 | make KEYMAP=coderkun_neo2 | 50 | ┌───────┬─────┬─────┬─────┬─────┬─────┬─────┐ ┌─────┬─────┬─────┬─────┬─────┬─────┬───────┐ |
| 31 | ``` | 51 | │ TAB │ 1 │ 2 │ 3 │ 4 │ 5 │ ` │ │ ´ │ 6 │ 7 │ 8 │ 9 │ 0 │ BKSPC │ |
| 52 | ├───────┼─────┼─────┼─────┼─────┼─────┼─────┤ ├─────┼─────┼─────┼─────┼─────┼─────┼───────┤ | ||
| 53 | │ C │ P │ T │ F │ K │ L │ HOM │ │ END │ B │ A │ S │ G │ V │ Y │ | ||
| 54 | ├───────┼─────┼─────┼─────╆─────╅─────┤ E │ │ ├─────╆─────╅─────┼─────┼─────┼───────┤ | ||
| 55 | │ Mod3 │ D │ H │ Ö │ O │ I ├─────┤ ├─────┤ U │ - │ Z │ E │ X │ Mod3 │ | ||
| 56 | ├───────┼─────┼─────┼─────╄─────╃─────┤(TL2)│ │(TL3)├─────╄─────╃─────┼─────┼─────┼───────┤ | ||
| 57 | │ LSHFT │ Ä │ Q │ R │ W │ N │ │ │ │ J │ M │ , │ . │ ẞ │ Shift │ | ||
| 58 | └─┬─────┼─────┼─────┼─────┼─────┼─────┴─────┘ └─────┴─────┼─────┼─────┼─────┼─────┼─────┬─┘ | ||
| 59 | │ CTL │ ALT │ MO1 │ Win │ MO4 │ │ M04 │ Win │ MO1 │ Alt │ CTL │ | ||
| 60 | └─────┴─────┴─────┴─────┴─────┘ ┌─────┬─────┐ ┌─────┬─────┐ └─────┴─────┴─────┴─────┴─────┘ | ||
| 61 | │ ← │ ↑ │ │ ↓ │ → │ | ||
| 62 | ┌─────┼─────┼─────┤ ├─────┼─────┼─────┐ | ||
| 63 | │ │ │ ─ │ │ ─ │ │ │ | ||
| 64 | │ SPC │ RTN ├─────┤ ├─────┤ RTN │ SPC │ | ||
| 65 | │ │ │ HYP │ │ MEH │ │ │ | ||
| 66 | └─────┴─────┴─────┘ └─────┴─────┴─────┘ | ||
| 67 | |||
| 68 | |||
| 69 | ### Layer 2: Poor man’s Neo | ||
| 70 | |||
| 71 | ┌───────┬─────┬─────┬─────┬─────┬─────┬─────┐ ┌─────┬─────┬─────┬─────┬─────┬─────┬───────┐ | ||
| 72 | │ TAB │ 1 │ 2 │ 3 │ 4 │ 5 │ ` │ │ ´ │ 6 │ 7 │ 8 │ 9 │ 0 │ BKSPC │ | ||
| 73 | ├───────┼─────┼─────┼─────┼─────┼─────┼─────┤ ├─────┼─────┼─────┼─────┼─────┼─────┼───────┤ | ||
| 74 | │ Y │ X │ V │ L │ C │ W │ HOM │ │ END │ K │ H │ G │ F │ Q │ ß │ | ||
| 75 | ├───────┼─────┼─────┼─────╆─────╅─────┤ E │ │ ├─────╆─────╅─────┼─────┼─────┼───────┤ | ||
| 76 | │ Mod3 │ U │ I │ A │ E │ O ├─────┤ ├─────┤ S │ N │ R │ T │ D │ Mod3 │ | ||
| 77 | ├───────┼─────┼─────┼─────╄─────╃─────┤(TL2)│ │(TL3)├─────╄─────╃─────┼─────┼─────┼───────┤ | ||
| 78 | │ LSHFT │ Ü │ Ö │ Ä │ P │ Z │ │ │ │ B │ M │ , │ . │ J │ Shift │ | ||
| 79 | └─┬─────┼─────┼─────┼─────┼─────┼─────┴─────┘ └─────┴─────┼─────┼─────┼─────┼─────┼─────┬─┘ | ||
| 80 | │ CTL │ ALT │ MO1 │ Win │ MO4 │ │ M04 │ Win │ MO1 │ Alt │ CTL │ | ||
| 81 | └─────┴─────┴─────┴─────┴─────┘ ┌─────┬─────┐ ┌─────┬─────┐ └─────┴─────┴─────┴─────┴─────┘ | ||
| 82 | │ ← │ ↑ │ │ ↓ │ → │ | ||
| 83 | ┌─────┼─────┼─────┤ ├─────┼─────┼─────┐ | ||
| 84 | │ │ │ ─ │ │ ─ │ │ │ | ||
| 85 | │ SPC │ RTN ├─────┤ ├─────┤ RTN │ SPC │ | ||
| 86 | │ │ │ HYP │ │ MEH │ │ │ | ||
| 87 | └─────┴─────┴─────┘ └─────┴─────┴─────┘ | ||
| 88 | |||
| 89 | |||
| 90 | ### Layer 3: F-keys, mouse keys und Unicode symbols | ||
| 91 | |||
| 92 | ┌───────┬─────┬─────┬─────┬─────┬─────┬─────┐ ┌─────┬─────┬─────┬─────┬─────┬─────┬───────┐ | ||
| 93 | │ │ F1 │ F2 │ F3 │ F4 │ F5 │ F6 │ │ F7 │ F8 │ F9 │ F10 │ F11 │ F12 │ │ | ||
| 94 | ├───────┼─────┼─────┼─────┼─────┼─────┼─────┤ ├─────┼─────┼─────┼─────┼─────┼─────┼───────┤ | ||
| 95 | │ │ ┌ │ ┬ │ ┐ │ ─ │ │ │ │ │ │ ↔ │ ← │ → │ ↑ │ ↓ │ │ | ||
| 96 | ├───────┼─────┼─────┼─────╆─────╅─────┤ │ │ ├─────╆─────╅─────┼─────┼─────┼───────┤ | ||
| 97 | │ │ ├ │ ┼ │ ┤ │ 〈 │ 〉 ├─────┤ ├─────┤ │ ✓ │ ✕ │ • │ ∶ │ │ | ||
| 98 | ├───────┼─────┼─────┼─────╄─────╃─────┤(TL2)│ │(TL3)├─────╄─────╃─────┼─────┼─────┼───────┤ | ||
| 99 | │ │ └ │ ┴ │ ┘ │ │ │ │ │ │ ⇔ │ ⇐ │ ⇒ │ ⇑ │ ⇓ │ │ | ||
| 100 | └─┬─────┼─────┼─────┼─────┼─────┼─────┴─────┘ └─────┴─────┼─────┼─────┼─────┼─────┼─────┬─┘ | ||
| 101 | │ │ │(MO1)│ │(MO4)│ │(MO4)│ │(MO1)│ │ │ | ||
| 102 | └─────┴─────┴─────┴─────┴─────┘ ┌─────┬─────┐ ┌─────┬─────┐ └─────┴─────┴─────┴─────┴─────┘ | ||
| 103 | │ Ms← │ Ms↑ │ │ Ms↓ │ Ms→ │ | ||
| 104 | ┌─────┼─────┼─────┤ ├─────┼─────┼─────┐ | ||
| 105 | │ │ │ MLC │ │ MRC │ │ │ | ||
| 106 | │ │ ├─────┤ ├─────┤ │ │ | ||
| 107 | │ │ │ │ │ │ │ │ | ||
| 108 | └─────┴─────┴─────┘ └─────┴─────┴─────┘ | ||
| 109 | |||
| 110 | |||
| 111 | ### Layer 4: Neo’s software layers 4 rebuilt in hardware | ||
| 112 | |||
| 113 | ┌───────┬─────┬─────┬─────┬─────┬─────┬─────┐ ┌─────┬─────┬─────┬─────┬─────┬─────┬───────┐ | ||
| 114 | │ │ │ │ │ │ │ │ │ │ │ │ │ │ │ │ | ||
| 115 | ├───────┼─────┼─────┼─────┼─────┼─────┼─────┤ ├─────┼─────┼─────┼─────┼─────┼─────┼───────┤ | ||
| 116 | │ │ PgUp│ BSpc│ ↑ │ Del │ PgDn│ │ │ │ │ 7 │ 8 │ 9 │ + │ − │ | ||
| 117 | ├───────┼─────┼─────┼─────╆─────╅─────┤ │ │ ├─────╆─────╅─────┼─────┼─────┼───────┤ | ||
| 118 | │ │ Home│ ← │ ↓ │ → │ End ├─────┤ ├─────┤ │ 4 │ 5 │ 6 │ , │ . │ | ||
| 119 | ├───────┼─────┼─────┼─────╄─────╃─────┤(TL2)│ │(TL3)├─────╄─────╃─────┼─────┼─────┼───────┤ | ||
| 120 | │ │ Esc │ Tab │ Ins │ Ret │ Undo│ │ │ │ │ 1 │ 2 │ 3 │ │ │ | ||
| 121 | └─┬─────┼─────┼─────┼─────┼─────┼─────┴─────┘ └─────┴─────┼─────┼─────┼─────┼─────┼─────┬─┘ | ||
| 122 | │ │ │(MO1)│ │(MO4)│ │(MO4)│ │(MO1)│ │ │ | ||
| 123 | └─────┴─────┴─────┴─────┴─────┘ ┌─────┬─────┐ ┌─────┬─────┐ └─────┴─────┴─────┴─────┴─────┘ | ||
| 124 | │ │ │ │ │ │ | ||
| 125 | ┌─────┼─────┼─────┤ ├─────┼─────┼─────┐ | ||
| 126 | │ │ │ │ │ │ │ │ | ||
| 127 | │ │ ├─────┤ ├─────┤ │ │ | ||
| 128 | │ │ │ │ │ │ │ │ | ||
| 129 | └─────┴─────┴─────┘ └─────┴─────┴─────┘ | ||
diff --git a/keyboards/handwired/promethium/color.h b/keyboards/handwired/promethium/color.h new file mode 100644 index 000000000..077242d5f --- /dev/null +++ b/keyboards/handwired/promethium/color.h | |||
| @@ -0,0 +1,15 @@ | |||
| 1 | #define COLOR_BLANK 0, 0, 0 | ||
| 2 | |||
| 3 | #define COLOR_BLACK 0, 0, 0 | ||
| 4 | #define COLOR_WHITE 15,15,15 | ||
| 5 | #define COLOR_GRAY 7, 7, 7 | ||
| 6 | |||
| 7 | #define COLOR_RED 15, 0, 0 | ||
| 8 | #define COLOR_GREEN 0,15, 0 | ||
| 9 | #define COLOR_BLUE 0, 0,15 | ||
| 10 | |||
| 11 | #define COLOR_YELLOW 15,15, 0 | ||
| 12 | #define COLOR_MAGENTA 15, 0,15 | ||
| 13 | #define COLOR_CYAN 0,15,15 | ||
| 14 | |||
| 15 | #define COLOR_ORANGE 15, 5, 0 \ No newline at end of file | ||
diff --git a/keyboards/handwired/promethium/config.h b/keyboards/handwired/promethium/config.h index a13406b0d..efb9ebdd7 100644 --- a/keyboards/handwired/promethium/config.h +++ b/keyboards/handwired/promethium/config.h | |||
| @@ -153,7 +153,7 @@ along with this program. If not, see <http://www.gnu.org/licenses/>. | |||
| 153 | //#define NO_ACTION_MACRO | 153 | //#define NO_ACTION_MACRO |
| 154 | //#define NO_ACTION_FUNCTION | 154 | //#define NO_ACTION_FUNCTION |
| 155 | 155 | ||
| 156 | #define PS2_INIT_DELAY 3000 | 156 | #define PS2_MOUSE_INIT_DELAY 2000 |
| 157 | #define BATTERY_PIN 9 | 157 | #define BATTERY_PIN 9 |
| 158 | #define BATTERY_POLL 30000 | 158 | #define BATTERY_POLL 30000 |
| 159 | #define MAX_VOLTAGE 4.2 | 159 | #define MAX_VOLTAGE 4.2 |
| @@ -205,7 +205,7 @@ enum led_sequence { | |||
| 205 | LED_RSFT, | 205 | LED_RSFT, |
| 206 | LED_RCTL, | 206 | LED_RCTL, |
| 207 | 207 | ||
| 208 | LED_RGUI, | 208 | LED_RALT, |
| 209 | LED_SLSH, | 209 | LED_SLSH, |
| 210 | LED_SCLN, | 210 | LED_SCLN, |
| 211 | LED_P, | 211 | LED_P, |
| @@ -213,9 +213,9 @@ enum led_sequence { | |||
| 213 | LED_O, | 213 | LED_O, |
| 214 | LED_L, | 214 | LED_L, |
| 215 | LED_DOT, | 215 | LED_DOT, |
| 216 | LED_RALT, | 216 | LED_RGUI, |
| 217 | 217 | ||
| 218 | LED_EMOJI, | 218 | LED_GREEK, |
| 219 | LED_COMM, | 219 | LED_COMM, |
| 220 | LED_K, | 220 | LED_K, |
| 221 | LED_I, | 221 | LED_I, |
| @@ -234,35 +234,35 @@ enum led_sequence { | |||
| 234 | LED_TRACKPOINT2, | 234 | LED_TRACKPOINT2, |
| 235 | LED_TRACKPOINT1, | 235 | LED_TRACKPOINT1, |
| 236 | 236 | ||
| 237 | LED_LSPC, | ||
| 238 | LED_B, | ||
| 239 | LED_G, | ||
| 240 | LED_T, | 237 | LED_T, |
| 238 | LED_G, | ||
| 239 | LED_B, | ||
| 240 | LED_LSPC, | ||
| 241 | 241 | ||
| 242 | LED_R, | ||
| 243 | LED_F, | ||
| 244 | LED_V, | ||
| 245 | LED_NUM, | 242 | LED_NUM, |
| 243 | LED_V, | ||
| 244 | LED_F, | ||
| 245 | LED_R, | ||
| 246 | 246 | ||
| 247 | LED_PUNC, | ||
| 248 | LED_C, | ||
| 249 | LED_D, | ||
| 250 | LED_E, | 247 | LED_E, |
| 248 | LED_D, | ||
| 249 | LED_C, | ||
| 250 | LED_EMPTY, | ||
| 251 | 251 | ||
| 252 | LED_W, | 252 | LED_LGUI, |
| 253 | LED_S, | ||
| 254 | LED_X, | 253 | LED_X, |
| 255 | LED_LALT, | 254 | LED_S, |
| 255 | LED_W, | ||
| 256 | 256 | ||
| 257 | LED_LGUI, | ||
| 258 | LED_Z, | ||
| 259 | LED_A, | ||
| 260 | LED_Q, | 257 | LED_Q, |
| 258 | LED_A, | ||
| 259 | LED_Z, | ||
| 260 | LED_LALT, | ||
| 261 | 261 | ||
| 262 | LED_TAB, | ||
| 263 | LED_ESC, | ||
| 264 | LED_LSFT, | ||
| 265 | LED_LCTL, | 262 | LED_LCTL, |
| 263 | LED_LSFT, | ||
| 264 | LED_ESC, | ||
| 265 | LED_TAB, | ||
| 266 | 266 | ||
| 267 | LED_TOTAL | 267 | LED_TOTAL |
| 268 | }; | 268 | }; |
diff --git a/keyboards/handwired/promethium/keymaps/priyadi/config.h b/keyboards/handwired/promethium/keymaps/priyadi/config.h index 3f5dd5817..fa86e2247 100644 --- a/keyboards/handwired/promethium/keymaps/priyadi/config.h +++ b/keyboards/handwired/promethium/keymaps/priyadi/config.h | |||
| @@ -14,6 +14,7 @@ | |||
| 14 | #define PREVENT_STUCK_MODIFIERS | 14 | #define PREVENT_STUCK_MODIFIERS |
| 15 | 15 | ||
| 16 | #define RGBSPS_ENABLE | 16 | #define RGBSPS_ENABLE |
| 17 | #define RGBSPS_DEMO_ENABLE | ||
| 17 | 18 | ||
| 18 | #define UNICODE_TYPE_DELAY 0 | 19 | #define UNICODE_TYPE_DELAY 0 |
| 19 | 20 | ||
diff --git a/keyboards/handwired/promethium/keymaps/priyadi/keymap.c b/keyboards/handwired/promethium/keymaps/priyadi/keymap.c index efa5d9756..d562c7bbf 100644 --- a/keyboards/handwired/promethium/keymaps/priyadi/keymap.c +++ b/keyboards/handwired/promethium/keymaps/priyadi/keymap.c | |||
| @@ -31,6 +31,7 @@ along with this program. If not, see <http://www.gnu.org/licenses/>. | |||
| 31 | #include "quantum.h" | 31 | #include "quantum.h" |
| 32 | #ifdef RGBSPS_ENABLE | 32 | #ifdef RGBSPS_ENABLE |
| 33 | #include "rgbsps.h" | 33 | #include "rgbsps.h" |
| 34 | #include "rgbtheme.h" | ||
| 34 | #endif | 35 | #endif |
| 35 | #ifdef PS2_MOUSE_ENABLE | 36 | #ifdef PS2_MOUSE_ENABLE |
| 36 | #include "ps2_mouse.h" | 37 | #include "ps2_mouse.h" |
| @@ -42,13 +43,13 @@ along with this program. If not, see <http://www.gnu.org/licenses/>. | |||
| 42 | #undef FAUXCLICKY_OFF | 43 | #undef FAUXCLICKY_OFF |
| 43 | #define FAUXCLICKY_OFF do { \ | 44 | #define FAUXCLICKY_OFF do { \ |
| 44 | fauxclicky_enabled = false; \ | 45 | fauxclicky_enabled = false; \ |
| 45 | rgbsps_set(LED_AUDIO, 0, 0, 0); \ | 46 | rgbsps_set(LED_AUDIO, COLOR_BLANK); \ |
| 46 | fauxclicky_stop(); \ | 47 | fauxclicky_stop(); \ |
| 47 | } while (0) | 48 | } while (0) |
| 48 | #undef FAUXCLICKY_ON | 49 | #undef FAUXCLICKY_ON |
| 49 | #define FAUXCLICKY_ON do { \ | 50 | #define FAUXCLICKY_ON do { \ |
| 50 | fauxclicky_enabled = true; \ | 51 | fauxclicky_enabled = true; \ |
| 51 | rgbsps_set(LED_AUDIO, 8, 0, 8); \ | 52 | rgbsps_set(LED_AUDIO, THEME_COLOR_AUDIO); \ |
| 52 | } while (0) | 53 | } while (0) |
| 53 | #endif | 54 | #endif |
| 54 | #endif | 55 | #endif |
| @@ -144,6 +145,7 @@ enum planck_keycodes { | |||
| 144 | #ifndef MODULE_ADAFRUIT_BLE | 145 | #ifndef MODULE_ADAFRUIT_BLE |
| 145 | OUT_BT, | 146 | OUT_BT, |
| 146 | #endif | 147 | #endif |
| 148 | RGBDEMO, | ||
| 147 | KEYCODE_END | 149 | KEYCODE_END |
| 148 | }; | 150 | }; |
| 149 | 151 | ||
| @@ -434,10 +436,10 @@ const uint8_t PROGMEM LED_MODS[] = { | |||
| 434 | }; | 436 | }; |
| 435 | 437 | ||
| 436 | const uint8_t PROGMEM LED_FN[] = { | 438 | const uint8_t PROGMEM LED_FN[] = { |
| 437 | LED_PUNC, | 439 | LED_EMPTY, |
| 438 | LED_NUM, | 440 | LED_NUM, |
| 439 | LED_FUN, | 441 | LED_FUN, |
| 440 | LED_EMOJI | 442 | LED_GREEK |
| 441 | }; | 443 | }; |
| 442 | 444 | ||
| 443 | const uint8_t PROGMEM LED_INDICATORS[] = { | 445 | const uint8_t PROGMEM LED_INDICATORS[] = { |
| @@ -468,16 +470,37 @@ const uint8_t PROGMEM LED_TRACKPOINT[] = { | |||
| 468 | 470 | ||
| 469 | void led_turnoff_keys(void) { | 471 | void led_turnoff_keys(void) { |
| 470 | for(uint8_t i = 0; i < COUNT(LED_ALNUM); i++) { | 472 | for(uint8_t i = 0; i < COUNT(LED_ALNUM); i++) { |
| 471 | rgbsps_set(pgm_read_byte(&LED_ALNUM[i]), 0, 0, 0); | 473 | rgbsps_set(pgm_read_byte(&LED_ALNUM[i]), COLOR_BLACK); |
| 472 | } | 474 | } |
| 473 | for(uint8_t i = 0; i < COUNT(LED_MODS); i++) { | 475 | for(uint8_t i = 0; i < COUNT(LED_MODS); i++) { |
| 474 | rgbsps_set(pgm_read_byte(&LED_MODS[i]), 0, 0, 0); | 476 | rgbsps_set(pgm_read_byte(&LED_MODS[i]), COLOR_BLACK); |
| 475 | } | 477 | } |
| 476 | for(uint8_t i = 0; i < COUNT(LED_FN); i++) { | 478 | for(uint8_t i = 0; i < COUNT(LED_FN); i++) { |
| 477 | rgbsps_set(pgm_read_byte(&LED_FN[i]), 0, 0, 0); | 479 | rgbsps_set(pgm_read_byte(&LED_FN[i]), COLOR_BLACK); |
| 478 | } | 480 | } |
| 479 | } | 481 | } |
| 480 | 482 | ||
| 483 | #ifdef RGBSPS_DEMO_ENABLE | ||
| 484 | void led_demo(void) { | ||
| 485 | rgbsps_set(LED_IND_LINUX, THEME_COLOR_LINUX); | ||
| 486 | rgbsps_set(LED_IND_APPLE, THEME_COLOR_APPLE); | ||
| 487 | rgbsps_set(LED_IND_WINDOWS, THEME_COLOR_WINDOWS); | ||
| 488 | rgbsps_set(LED_IND_QWERTY, THEME_COLOR_QWERTY); | ||
| 489 | rgbsps_set(LED_IND_ALT, THEME_COLOR_ALT); | ||
| 490 | rgbsps_set(LED_IND_AUDIO, THEME_COLOR_AUDIO); | ||
| 491 | rgbsps_set(LED_IND_BLUETOOTH, THEME_COLOR_BLUETOOTH); | ||
| 492 | rgbsps_set(LED_IND_USB, THEME_COLOR_USB); | ||
| 493 | rgbsps_set(LED_IND_CAPSLOCK, THEME_COLOR_CAPSLOCK); | ||
| 494 | rgbsps_set(LED_IND_GUI, THEME_COLOR_GUI); | ||
| 495 | rgbsps_set(LED_IND_FUN, THEME_COLOR_FUN); | ||
| 496 | rgbsps_set(LED_IND_NUM, THEME_COLOR_NUM); | ||
| 497 | rgbsps_set(LED_IND_PUNC, THEME_COLOR_PUNC); | ||
| 498 | rgbsps_set(LED_IND_GREEK, THEME_COLOR_GREEK); | ||
| 499 | rgbsps_set(LED_IND_EMOJI, THEME_COLOR_EMOJI); | ||
| 500 | rgbsps_send(); | ||
| 501 | } | ||
| 502 | #endif | ||
| 503 | |||
| 481 | void led_reset(void) { | 504 | void led_reset(void) { |
| 482 | switch (glow_mode) { | 505 | switch (glow_mode) { |
| 483 | case GLOW_NONE: | 506 | case GLOW_NONE: |
| @@ -486,26 +509,26 @@ void led_reset(void) { | |||
| 486 | case GLOW_MIN: | 509 | case GLOW_MIN: |
| 487 | led_turnoff_keys(); | 510 | led_turnoff_keys(); |
| 488 | for(uint8_t i = 0; i < COUNT(LED_HOMING); i++) { | 511 | for(uint8_t i = 0; i < COUNT(LED_HOMING); i++) { |
| 489 | rgbsps_set(pgm_read_byte(&LED_HOMING[i]), 8, 8, 8); | 512 | rgbsps_set(pgm_read_byte(&LED_HOMING[i]), THEME_COLOR_GLOW1_HOME); |
| 490 | } | 513 | } |
| 491 | rgbsps_set(LED_F, 15, 0, 0); | 514 | rgbsps_set(LED_F, THEME_COLOR_GLOW1_HOMING); |
| 492 | rgbsps_set(LED_J, 15, 0, 0); | 515 | rgbsps_set(LED_J, THEME_COLOR_GLOW1_HOMING); |
| 493 | break; | 516 | break; |
| 494 | case GLOW_FULL: | 517 | case GLOW_FULL: |
| 495 | for(uint8_t i = 0; i < COUNT(LED_ALNUM); i++) { | 518 | for(uint8_t i = 0; i < COUNT(LED_ALNUM); i++) { |
| 496 | rgbsps_set(pgm_read_byte(&LED_ALNUM[i]), 8, 8, 8); | 519 | rgbsps_set(pgm_read_byte(&LED_ALNUM[i]), THEME_COLOR_GLOW2_ALPHA); |
| 497 | } | 520 | } |
| 498 | for(uint8_t i = 0; i < COUNT(LED_MODS); i++) { | 521 | for(uint8_t i = 0; i < COUNT(LED_MODS); i++) { |
| 499 | rgbsps_set(pgm_read_byte(&LED_MODS[i]), 0, 15, 0); | 522 | rgbsps_set(pgm_read_byte(&LED_MODS[i]), THEME_COLOR_GLOW2_MODS); |
| 500 | } | 523 | } |
| 501 | for(uint8_t i = 0; i < COUNT(LED_FN); i++) { | 524 | for(uint8_t i = 0; i < COUNT(LED_FN); i++) { |
| 502 | rgbsps_set(pgm_read_byte(&LED_FN[i]), 0, 0, 15); | 525 | rgbsps_set(pgm_read_byte(&LED_FN[i]), THEME_COLOR_GLOW2_FN); |
| 503 | } | 526 | } |
| 504 | for(uint8_t i = 0; i < COUNT(LED_HOMING); i++) { | 527 | for(uint8_t i = 0; i < COUNT(LED_HOMING); i++) { |
| 505 | rgbsps_set(pgm_read_byte(&LED_HOMING[i]), 15, 0, 0); | 528 | rgbsps_set(pgm_read_byte(&LED_HOMING[i]), THEME_COLOR_GLOW2_HOME); |
| 506 | } | 529 | } |
| 507 | rgbsps_set(LED_F, 15, 15, 0); | 530 | rgbsps_set(LED_F, THEME_COLOR_GLOW2_HOMING); |
| 508 | rgbsps_set(LED_J, 15, 15, 0); | 531 | rgbsps_set(LED_J, THEME_COLOR_GLOW2_HOMING); |
| 509 | break; | 532 | break; |
| 510 | } | 533 | } |
| 511 | } | 534 | } |
| @@ -513,11 +536,11 @@ void led_reset(void) { | |||
| 513 | void led_set_default_layer_indicator(void) { | 536 | void led_set_default_layer_indicator(void) { |
| 514 | uint8_t default_layer = biton32(default_layer_state); | 537 | uint8_t default_layer = biton32(default_layer_state); |
| 515 | if (default_layer == _QWERTY) { | 538 | if (default_layer == _QWERTY) { |
| 516 | rgbsps_set(LED_IND_QWERTY, 15, 10, 0); | 539 | rgbsps_set(LED_IND_QWERTY, THEME_COLOR_QWERTY); |
| 517 | rgbsps_set(LED_IND_ALT, 0, 0, 0); | 540 | rgbsps_set(LED_IND_ALT, COLOR_BLANK); |
| 518 | } else { | 541 | } else { |
| 519 | rgbsps_set(LED_IND_QWERTY, 0, 0, 0); | 542 | rgbsps_set(LED_IND_QWERTY, COLOR_BLANK); |
| 520 | rgbsps_set(LED_IND_ALT, 15, 10, 0); | 543 | rgbsps_set(LED_IND_ALT, THEME_COLOR_ALT); |
| 521 | } | 544 | } |
| 522 | rgbsps_send(); | 545 | rgbsps_send(); |
| 523 | return; | 546 | return; |
| @@ -528,12 +551,12 @@ void led_set_layer_indicator(void) { | |||
| 528 | 551 | ||
| 529 | led_reset(); | 552 | led_reset(); |
| 530 | 553 | ||
| 531 | rgbsps_set(LED_IND_GUI, 0, 0, 0); | 554 | rgbsps_set(LED_IND_GUI, COLOR_BLANK); |
| 532 | rgbsps_set(LED_IND_FUN, 0, 0, 0); | 555 | rgbsps_set(LED_IND_FUN, COLOR_BLANK); |
| 533 | rgbsps_set(LED_IND_NUM, 0, 0, 0); | 556 | rgbsps_set(LED_IND_NUM, COLOR_BLANK); |
| 534 | rgbsps_set(LED_IND_PUNC, 0, 0, 0); | 557 | rgbsps_set(LED_IND_PUNC, COLOR_BLANK); |
| 535 | rgbsps_set(LED_IND_GREEK, 0, 0, 0); | 558 | rgbsps_set(LED_IND_GREEK, COLOR_BLANK); |
| 536 | rgbsps_set(LED_IND_EMOJI, 0, 0, 0); | 559 | rgbsps_set(LED_IND_EMOJI, COLOR_BLANK); |
| 537 | 560 | ||
| 538 | uint8_t layer = biton32(layer_state); | 561 | uint8_t layer = biton32(layer_state); |
| 539 | if (oldlayer == layer) { | 562 | if (oldlayer == layer) { |
| @@ -549,71 +572,71 @@ void led_set_layer_indicator(void) { | |||
| 549 | 572 | ||
| 550 | switch(layer) { | 573 | switch(layer) { |
| 551 | case _GUI: | 574 | case _GUI: |
| 552 | rgbsps_set(LED_IND_GUI, 15, 0, 15); | 575 | rgbsps_set(LED_IND_GUI, THEME_COLOR_GUI); |
| 553 | break; | 576 | break; |
| 554 | case _FUN: | 577 | case _FUN: |
| 555 | rgbsps_set(LED_IND_FUN, 15, 0, 0); | 578 | rgbsps_set(LED_IND_FUN, THEME_COLOR_FUN); |
| 556 | break; | 579 | break; |
| 557 | case _NUM: | 580 | case _NUM: |
| 558 | rgbsps_set(LED_IND_NUM, 0, 0, 15); | 581 | rgbsps_set(LED_IND_NUM, THEME_COLOR_NUM); |
| 559 | break; | 582 | break; |
| 560 | case _PUNC: | 583 | case _PUNC: |
| 561 | rgbsps_set(LED_IND_PUNC, 0, 15, 0); | 584 | rgbsps_set(LED_IND_PUNC, THEME_COLOR_PUNC); |
| 562 | break; | 585 | break; |
| 563 | case _GREEKL: | 586 | case _GREEKL: |
| 564 | case _GREEKU: | 587 | case _GREEKU: |
| 565 | rgbsps_set(LED_IND_GREEK, 0, 15, 15); | 588 | rgbsps_set(LED_IND_GREEK, THEME_COLOR_GREEK); |
| 566 | break; | 589 | break; |
| 567 | case _EMOJI: | 590 | case _EMOJI: |
| 568 | rgbsps_set(LED_IND_EMOJI, 15, 15, 0); | 591 | rgbsps_set(LED_IND_EMOJI, THEME_COLOR_EMOJI); |
| 569 | break; | 592 | break; |
| 570 | default: | 593 | default: |
| 571 | rgbsps_set(LED_IND_GUI, 3, 3, 3); | 594 | rgbsps_set(LED_IND_GUI, THEME_COLOR_OTHERLAYER); |
| 572 | rgbsps_set(LED_IND_FUN, 3, 3, 3); | 595 | rgbsps_set(LED_IND_FUN, THEME_COLOR_OTHERLAYER); |
| 573 | rgbsps_set(LED_IND_NUM, 3, 3, 3); | 596 | rgbsps_set(LED_IND_NUM, THEME_COLOR_OTHERLAYER); |
| 574 | rgbsps_set(LED_IND_PUNC, 3, 3, 3); | 597 | rgbsps_set(LED_IND_PUNC, THEME_COLOR_OTHERLAYER); |
| 575 | rgbsps_set(LED_IND_GREEK, 3, 3, 3); | 598 | rgbsps_set(LED_IND_GREEK, THEME_COLOR_OTHERLAYER); |
| 576 | rgbsps_set(LED_IND_EMOJI, 3, 3, 3); | 599 | rgbsps_set(LED_IND_EMOJI, THEME_COLOR_OTHERLAYER); |
| 577 | } | 600 | } |
| 578 | 601 | ||
| 579 | rgbsps_send(); | 602 | rgbsps_send(); |
| 580 | } | 603 | } |
| 581 | 604 | ||
| 582 | void led_set_unicode_input_mode(void) { | 605 | void led_set_unicode_input_mode(void) { |
| 583 | rgbsps_set(LED_IND_LINUX, 0, 0, 0); | 606 | rgbsps_set(LED_IND_LINUX, COLOR_BLANK); |
| 584 | rgbsps_set(LED_IND_APPLE, 0, 0, 0); | 607 | rgbsps_set(LED_IND_APPLE, COLOR_BLANK); |
| 585 | rgbsps_set(LED_IND_WINDOWS, 0, 0, 0); | 608 | rgbsps_set(LED_IND_WINDOWS, COLOR_BLANK); |
| 586 | 609 | ||
| 587 | switch (get_unicode_input_mode()) { | 610 | switch (get_unicode_input_mode()) { |
| 588 | case UC_LNX: | 611 | case UC_LNX: |
| 589 | rgbsps_set(LED_IND_LINUX, 15, 15, 15); | 612 | rgbsps_set(LED_IND_LINUX, THEME_COLOR_LINUX); |
| 590 | break; | 613 | break; |
| 591 | case UC_OSX: | 614 | case UC_OSX: |
| 592 | rgbsps_set(LED_IND_APPLE, 15, 15, 15); | 615 | rgbsps_set(LED_IND_APPLE, THEME_COLOR_APPLE); |
| 593 | break; | 616 | break; |
| 594 | case UC_WIN: | 617 | case UC_WIN: |
| 595 | case UC_WINC: | 618 | case UC_WINC: |
| 596 | rgbsps_set(LED_IND_WINDOWS, 15, 15, 15); | 619 | rgbsps_set(LED_IND_WINDOWS, THEME_COLOR_WINDOWS); |
| 597 | break; | 620 | break; |
| 598 | } | 621 | } |
| 599 | rgbsps_send(); | 622 | rgbsps_send(); |
| 600 | } | 623 | } |
| 601 | 624 | ||
| 602 | void led_set_output_ble(void) { | 625 | void led_set_output_ble(void) { |
| 603 | rgbsps_set(LED_IND_BLUETOOTH, 0, 0, 15); | 626 | rgbsps_set(LED_IND_BLUETOOTH, THEME_COLOR_BLUETOOTH); |
| 604 | rgbsps_set(LED_IND_USB, 0, 0, 0); | 627 | rgbsps_set(LED_IND_USB, COLOR_BLANK); |
| 605 | rgbsps_send(); | 628 | rgbsps_send(); |
| 606 | } | 629 | } |
| 607 | 630 | ||
| 608 | void led_set_output_usb(void) { | 631 | void led_set_output_usb(void) { |
| 609 | rgbsps_set(LED_IND_BLUETOOTH, 0, 0, 0); | 632 | rgbsps_set(LED_IND_BLUETOOTH, COLOR_BLANK); |
| 610 | rgbsps_set(LED_IND_USB, 15, 15, 15); | 633 | rgbsps_set(LED_IND_USB, THEME_COLOR_USB); |
| 611 | rgbsps_send(); | 634 | rgbsps_send(); |
| 612 | } | 635 | } |
| 613 | 636 | ||
| 614 | void led_set_output_none(void) { | 637 | void led_set_output_none(void) { |
| 615 | rgbsps_set(LED_IND_BLUETOOTH, 0, 0, 0); | 638 | rgbsps_set(LED_IND_BLUETOOTH, COLOR_BLANK); |
| 616 | rgbsps_set(LED_IND_USB, 0, 0, 0); | 639 | rgbsps_set(LED_IND_USB, COLOR_BLANK); |
| 617 | rgbsps_send(); | 640 | rgbsps_send(); |
| 618 | } | 641 | } |
| 619 | 642 | ||
| @@ -622,9 +645,9 @@ void led_init(void) { | |||
| 622 | rgbsps_turnoff(); | 645 | rgbsps_turnoff(); |
| 623 | 646 | ||
| 624 | // set trackpoint color | 647 | // set trackpoint color |
| 625 | rgbsps_set(LED_TRACKPOINT1, 15, 0, 0); | 648 | rgbsps_set(LED_TRACKPOINT1, THEME_COLOR_TP1); |
| 626 | rgbsps_set(LED_TRACKPOINT2, 0, 0, 15); | 649 | rgbsps_set(LED_TRACKPOINT2, THEME_COLOR_TP2); |
| 627 | rgbsps_set(LED_TRACKPOINT3, 15, 0, 0); | 650 | rgbsps_set(LED_TRACKPOINT3, THEME_COLOR_TP3); |
| 628 | 651 | ||
| 629 | // unicode input mode | 652 | // unicode input mode |
| 630 | led_set_unicode_input_mode(); | 653 | led_set_unicode_input_mode(); |
| @@ -632,6 +655,17 @@ void led_init(void) { | |||
| 632 | // layer indicator | 655 | // layer indicator |
| 633 | led_set_layer_indicator(); | 656 | led_set_layer_indicator(); |
| 634 | led_set_default_layer_indicator(); | 657 | led_set_default_layer_indicator(); |
| 658 | |||
| 659 | // clicky | ||
| 660 | #ifdef FAUXCLICKY_ENABLE | ||
| 661 | if (fauxclicky_enabled) { | ||
| 662 | rgbsps_set(LED_IND_AUDIO, THEME_COLOR_AUDIO); | ||
| 663 | } else { | ||
| 664 | rgbsps_set(LED_IND_AUDIO, COLOR_BLANK); | ||
| 665 | } | ||
| 666 | #endif | ||
| 667 | |||
| 668 | rgbsps_send(); | ||
| 635 | } | 669 | } |
| 636 | 670 | ||
| 637 | 671 | ||
| @@ -911,7 +945,7 @@ const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = { | |||
| 911 | * `-----------------------------------------------------------------------------------' | 945 | * `-----------------------------------------------------------------------------------' |
| 912 | */ | 946 | */ |
| 913 | [_SYS] = KEYMAP( | 947 | [_SYS] = KEYMAP( |
| 914 | DEBUG, QWERTY, WIN, XXXXXXX, RESET, XXXXXXX, XXXXXXX, OUT_USB, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, | 948 | DEBUG, QWERTY, WIN, XXXXXXX, RESET, XXXXXXX, XXXXXXX, OUT_USB, XXXXXXX, XXXXXXX, XXXXXXX, RGBDEMO, |
| 915 | XXXXXXX, FC_TOG, XXXXXXX, DVORAK, XXXXXXX, GLOW, XXXXXXX, XXXXXXX, WORKMAN, LINUX, XXXXXXX, XXXXXXX, | 949 | XXXXXXX, FC_TOG, XXXXXXX, DVORAK, XXXXXXX, GLOW, XXXXXXX, XXXXXXX, WORKMAN, LINUX, XXXXXXX, XXXXXXX, |
| 916 | XXXXXXX, XXXXXXX, XXXXXXX, COLEMAK, XXXXXXX, OUT_BT, NORMAN, OSX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, | 950 | XXXXXXX, XXXXXXX, XXXXXXX, COLEMAK, XXXXXXX, OUT_BT, NORMAN, OSX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, |
| 917 | _______, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, _______, | 951 | _______, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, _______, |
| @@ -1211,15 +1245,22 @@ bool process_record_user(uint16_t keycode, keyrecord_t *record) { | |||
| 1211 | case FC_TOG: | 1245 | case FC_TOG: |
| 1212 | #ifdef RGBSPS_ENABLE | 1246 | #ifdef RGBSPS_ENABLE |
| 1213 | if (fauxclicky_enabled) { | 1247 | if (fauxclicky_enabled) { |
| 1214 | rgbsps_set(LED_IND_AUDIO, 0, 0, 0); | 1248 | rgbsps_set(LED_IND_AUDIO, THEME_COLOR_AUDIO); |
| 1215 | } else { | 1249 | } else { |
| 1216 | rgbsps_set(LED_IND_AUDIO, 5, 11, 13); | 1250 | rgbsps_set(LED_IND_AUDIO, COLOR_BLANK); |
| 1217 | } | 1251 | } |
| 1218 | rgbsps_send(); | 1252 | rgbsps_send(); |
| 1219 | #endif | 1253 | #endif |
| 1220 | return true; | 1254 | return true; |
| 1221 | break; | 1255 | break; |
| 1222 | #endif | 1256 | #endif |
| 1257 | |||
| 1258 | #ifdef RGBSPS_DEMO_ENABLE | ||
| 1259 | case RGBDEMO: | ||
| 1260 | led_demo(); | ||
| 1261 | return false; | ||
| 1262 | break; | ||
| 1263 | #endif | ||
| 1223 | } | 1264 | } |
| 1224 | return true; | 1265 | return true; |
| 1225 | } | 1266 | } |
| @@ -1280,9 +1321,9 @@ void turn_off_capslock() { | |||
| 1280 | bool new_capslock = usb_led & (1<<USB_LED_CAPS_LOCK); | 1321 | bool new_capslock = usb_led & (1<<USB_LED_CAPS_LOCK); |
| 1281 | if (new_capslock ^ capslock) { // capslock state is different | 1322 | if (new_capslock ^ capslock) { // capslock state is different |
| 1282 | if ((capslock = new_capslock)) { | 1323 | if ((capslock = new_capslock)) { |
| 1283 | rgbsps_set(LED_IND_CAPSLOCK, 15, 0, 0); | 1324 | rgbsps_set(LED_IND_CAPSLOCK, THEME_COLOR_CAPSLOCK); |
| 1284 | } else { | 1325 | } else { |
| 1285 | rgbsps_set(LED_IND_CAPSLOCK, 0, 0, 0); | 1326 | rgbsps_set(LED_IND_CAPSLOCK, COLOR_BLANK); |
| 1286 | } | 1327 | } |
| 1287 | rgbsps_send(); | 1328 | rgbsps_send(); |
| 1288 | } | 1329 | } |
diff --git a/keyboards/handwired/promethium/keymaps/priyadi/rgbtheme.h b/keyboards/handwired/promethium/keymaps/priyadi/rgbtheme.h new file mode 100644 index 000000000..e60971035 --- /dev/null +++ b/keyboards/handwired/promethium/keymaps/priyadi/rgbtheme.h | |||
| @@ -0,0 +1 @@ | |||
| #include "rgbtheme_default.h" | |||
diff --git a/keyboards/handwired/promethium/keymaps/priyadi/rgbtheme_carbon.h b/keyboards/handwired/promethium/keymaps/priyadi/rgbtheme_carbon.h new file mode 100644 index 000000000..8e0a98b09 --- /dev/null +++ b/keyboards/handwired/promethium/keymaps/priyadi/rgbtheme_carbon.h | |||
| @@ -0,0 +1,36 @@ | |||
| 1 | #include "color.h" | ||
| 2 | |||
| 3 | #define THEME_COLOR_LINUX COLOR_WHITE | ||
| 4 | #define THEME_COLOR_APPLE COLOR_WHITE | ||
| 5 | #define THEME_COLOR_WINDOWS COLOR_WHITE | ||
| 6 | |||
| 7 | #define THEME_COLOR_QWERTY COLOR_RED | ||
| 8 | #define THEME_COLOR_ALT COLOR_RED | ||
| 9 | |||
| 10 | #define THEME_COLOR_AUDIO COLOR_GREEN | ||
| 11 | |||
| 12 | #define THEME_COLOR_BLUETOOTH 7,7,15 | ||
| 13 | #define THEME_COLOR_USB COLOR_WHITE | ||
| 14 | |||
| 15 | #define THEME_COLOR_CAPSLOCK COLOR_RED | ||
| 16 | |||
| 17 | #define THEME_COLOR_GUI COLOR_MAGENTA | ||
| 18 | #define THEME_COLOR_FUN COLOR_RED | ||
| 19 | #define THEME_COLOR_NUM 7,7,15 | ||
| 20 | #define THEME_COLOR_PUNC COLOR_GREEN | ||
| 21 | #define THEME_COLOR_GREEK COLOR_CYAN | ||
| 22 | #define THEME_COLOR_EMOJI COLOR_YELLOW | ||
| 23 | #define THEME_COLOR_OTHERLAYER COLOR_GRAY | ||
| 24 | |||
| 25 | #define THEME_COLOR_GLOW1_HOME COLOR_ORANGE | ||
| 26 | #define THEME_COLOR_GLOW1_HOMING COLOR_RED | ||
| 27 | |||
| 28 | #define THEME_COLOR_GLOW2_ALPHA COLOR_ORANGE | ||
| 29 | #define THEME_COLOR_GLOW2_MODS COLOR_ORANGE | ||
| 30 | #define THEME_COLOR_GLOW2_FN COLOR_ORANGE | ||
| 31 | #define THEME_COLOR_GLOW2_HOME COLOR_ORANGE | ||
| 32 | #define THEME_COLOR_GLOW2_HOMING COLOR_RED | ||
| 33 | |||
| 34 | #define THEME_COLOR_TP1 COLOR_ORANGE | ||
| 35 | #define THEME_COLOR_TP2 COLOR_RED | ||
| 36 | #define THEME_COLOR_TP3 COLOR_ORANGE \ No newline at end of file | ||
diff --git a/keyboards/handwired/promethium/keymaps/priyadi/rgbtheme_default.h b/keyboards/handwired/promethium/keymaps/priyadi/rgbtheme_default.h new file mode 100644 index 000000000..4c3fb1369 --- /dev/null +++ b/keyboards/handwired/promethium/keymaps/priyadi/rgbtheme_default.h | |||
| @@ -0,0 +1,36 @@ | |||
| 1 | #include "color.h" | ||
| 2 | |||
| 3 | #define THEME_COLOR_LINUX COLOR_WHITE | ||
| 4 | #define THEME_COLOR_APPLE COLOR_WHITE | ||
| 5 | #define THEME_COLOR_WINDOWS COLOR_WHITE | ||
| 6 | |||
| 7 | #define THEME_COLOR_QWERTY COLOR_RED | ||
| 8 | #define THEME_COLOR_ALT COLOR_RED | ||
| 9 | |||
| 10 | #define THEME_COLOR_AUDIO COLOR_GREEN | ||
| 11 | |||
| 12 | #define THEME_COLOR_BLUETOOTH COLOR_BLUE | ||
| 13 | #define THEME_COLOR_USB COLOR_WHITE | ||
| 14 | |||
| 15 | #define THEME_COLOR_CAPSLOCK COLOR_RED | ||
| 16 | |||
| 17 | #define THEME_COLOR_GUI COLOR_MAGENTA | ||
| 18 | #define THEME_COLOR_FUN COLOR_RED | ||
| 19 | #define THEME_COLOR_NUM COLOR_BLUE | ||
| 20 | #define THEME_COLOR_PUNC COLOR_GREEN | ||
| 21 | #define THEME_COLOR_GREEK COLOR_CYAN | ||
| 22 | #define THEME_COLOR_EMOJI COLOR_YELLOW | ||
| 23 | #define THEME_COLOR_OTHERLAYER COLOR_GRAY | ||
| 24 | |||
| 25 | #define THEME_COLOR_GLOW1_HOME COLOR_GRAY | ||
| 26 | #define THEME_COLOR_GLOW1_HOMING COLOR_RED | ||
| 27 | |||
| 28 | #define THEME_COLOR_GLOW2_ALPHA COLOR_GRAY | ||
| 29 | #define THEME_COLOR_GLOW2_MODS COLOR_GREEN | ||
| 30 | #define THEME_COLOR_GLOW2_FN COLOR_BLUE | ||
| 31 | #define THEME_COLOR_GLOW2_HOME COLOR_RED | ||
| 32 | #define THEME_COLOR_GLOW2_HOMING COLOR_YELLOW | ||
| 33 | |||
| 34 | #define THEME_COLOR_TP1 COLOR_RED | ||
| 35 | #define THEME_COLOR_TP2 COLOR_BLUE | ||
| 36 | #define THEME_COLOR_TP3 COLOR_RED \ No newline at end of file | ||
diff --git a/keyboards/handwired/promethium/matrix.c b/keyboards/handwired/promethium/matrix.c index 2b7ce2bf5..72dbe8d4d 100644 --- a/keyboards/handwired/promethium/matrix.c +++ b/keyboards/handwired/promethium/matrix.c | |||
| @@ -133,8 +133,8 @@ void matrix_init(void) { | |||
| 133 | matrix_init_quantum(); | 133 | matrix_init_quantum(); |
| 134 | } | 134 | } |
| 135 | 135 | ||
| 136 | uint8_t matrix_scan(void | 136 | uint8_t matrix_scan(void) |
| 137 | ){ | 137 | { |
| 138 | // Set row, read cols | 138 | // Set row, read cols |
| 139 | for (uint8_t current_row = 0; current_row < MATRIX_ROWS; current_row++) { | 139 | for (uint8_t current_row = 0; current_row < MATRIX_ROWS; current_row++) { |
| 140 | # if (DEBOUNCING_DELAY > 0) | 140 | # if (DEBOUNCING_DELAY > 0) |
diff --git a/keyboards/handwired/promethium/promethium.c b/keyboards/handwired/promethium/promethium.c index 8b1a0c71f..3cc0f5a8c 100644 --- a/keyboards/handwired/promethium/promethium.c +++ b/keyboards/handwired/promethium/promethium.c | |||
| @@ -4,9 +4,9 @@ | |||
| 4 | #include "matrix.h" | 4 | #include "matrix.h" |
| 5 | #include "musical_notes.h" | 5 | #include "musical_notes.h" |
| 6 | 6 | ||
| 7 | float fauxclicky_pressed_note[2] = MUSICAL_NOTE(_F3, .03125); | 7 | float fauxclicky_pressed_note[2] = MUSICAL_NOTE(_A4, 0.0625); |
| 8 | float fauxclicky_released_note[2] = MUSICAL_NOTE(_C3, .03125); | 8 | float fauxclicky_released_note[2] = MUSICAL_NOTE(_A4, 0.0625); |
| 9 | float fauxclicky_beep_note[2] = MUSICAL_NOTE(_C3, .03125); | 9 | float fauxclicky_beep_note[2] = MUSICAL_NOTE(_C6, 0.25); |
| 10 | 10 | ||
| 11 | // cubic fit {3.3, 0}, {3.5, 2.9}, {3.6, 5}, {3.7, 8.6}, {3.8, 36}, {3.9, 62}, {4.0, 73}, {4.05, 83}, {4.1, 89}, {4.15, 94}, {4.2, 100} | 11 | // cubic fit {3.3, 0}, {3.5, 2.9}, {3.6, 5}, {3.7, 8.6}, {3.8, 36}, {3.9, 62}, {4.0, 73}, {4.05, 83}, {4.1, 89}, {4.15, 94}, {4.2, 100} |
| 12 | 12 | ||
diff --git a/keyboards/hhkb/keymaps/cinaeco/Makefile b/keyboards/hhkb/keymaps/cinaeco/Makefile new file mode 100644 index 000000000..05b724051 --- /dev/null +++ b/keyboards/hhkb/keymaps/cinaeco/Makefile | |||
| @@ -0,0 +1,23 @@ | |||
| 1 | # cinaeco's HHKB firmware | ||
| 2 | |||
| 3 | # Build Options | ||
| 4 | # change to "no" to disable the options, or define them in the Makefile in | ||
| 5 | # the appropriate keymap folder that will get included automatically | ||
| 6 | # | ||
| 7 | BOOTMAGIC_ENABLE = no # Virtual DIP switch configuration(+1000) | ||
| 8 | MOUSEKEY_ENABLE = yes # Mouse keys(+4700) | ||
| 9 | EXTRAKEY_ENABLE = yes # Audio control and System control(+450) | ||
| 10 | CONSOLE_ENABLE = no # Console for debug(+400) | ||
| 11 | COMMAND_ENABLE = yes # Commands for debug and configuration | ||
| 12 | NKRO_ENABLE = yes # Nkey Rollover - if this doesn't work, see here: https://github.com/tmk/tmk_keyboard/wiki/FAQ#nkro-doesnt-work | ||
| 13 | BACKLIGHT_ENABLE = yes # Enable keyboard backlight functionality | ||
| 14 | MIDI_ENABLE = no # MIDI controls | ||
| 15 | AUDIO_ENABLE = no # Audio output on port C6 | ||
| 16 | UNICODE_ENABLE = no # Unicode | ||
| 17 | BLUETOOTH_ENABLE = no # Enable Bluetooth with the Adafruit EZ-Key HID | ||
| 18 | RGBLIGHT_ENABLE = no # Enable WS2812 RGB underlight. Do not enable this with audio at the same time. | ||
| 19 | SLEEP_LED_ENABLE = no # Breathing sleep LED during USB suspend | ||
| 20 | |||
| 21 | ifndef QUANTUM_DIR | ||
| 22 | include ../../../../Makefile | ||
| 23 | endif | ||
diff --git a/keyboards/hhkb/keymaps/cinaeco/README.md b/keyboards/hhkb/keymaps/cinaeco/README.md new file mode 100644 index 000000000..c1c48e609 --- /dev/null +++ b/keyboards/hhkb/keymaps/cinaeco/README.md | |||
| @@ -0,0 +1,23 @@ | |||
| 1 | # QMK Keyboard Firmware for HHKB | ||
| 2 | |||
| 3 | ## Modifications | ||
| 4 | |||
| 5 | ### HHKB Fn Layer | ||
| 6 | |||
| 7 | Added some Media keys. | ||
| 8 | |||
| 9 | ### Utility Layer (SpaceFN) | ||
| 10 | |||
| 11 | Hold `Space` for: | ||
| 12 | |||
| 13 | - Vi-style direction keys. | ||
| 14 | - WASD-style mouse keys. | ||
| 15 | - Dynamic macro playback on `1` and `2`. | ||
| 16 | - Qwerty/Colemak/Dvorak layout selection on `-`, `=` and `\ ` | ||
| 17 | |||
| 18 | ### Dynamic Macros | ||
| 19 | |||
| 20 | Hold `q` and press: | ||
| 21 | |||
| 22 | - `1` or `2` to record macro 1 or 2. | ||
| 23 | - `s` to stop recording. | ||
diff --git a/keyboards/hhkb/keymaps/cinaeco/config.h b/keyboards/hhkb/keymaps/cinaeco/config.h new file mode 100644 index 000000000..c7b4c784c --- /dev/null +++ b/keyboards/hhkb/keymaps/cinaeco/config.h | |||
| @@ -0,0 +1,20 @@ | |||
| 1 | #ifndef CONFIG_CINAECO_H | ||
| 2 | #define CONFIG_CINAECO_H | ||
| 3 | |||
| 4 | #include "../../config.h" | ||
| 5 | |||
| 6 | #undef MANUFACTURER | ||
| 7 | #undef PRODUCT | ||
| 8 | #undef DESCRIPTION | ||
| 9 | #define MANUFACTURER QMK | ||
| 10 | #define PRODUCT HHKB QMK cinaeco | ||
| 11 | #define DESCRIPTION HHKB on QMK Firmware with cinaeco keymap | ||
| 12 | |||
| 13 | // Increase "Tap" detection window. Avoid missing 'q' or 'z' when typing slowly. | ||
| 14 | #undef TAPPING_TERM | ||
| 15 | #define TAPPING_TERM 230 | ||
| 16 | |||
| 17 | // Uncomment to enable NKRO by default. May cause issues with KVM switches. | ||
| 18 | //#define FORCE_NKRO | ||
| 19 | |||
| 20 | #endif | ||
diff --git a/keyboards/hhkb/keymaps/cinaeco/keymap.c b/keyboards/hhkb/keymaps/cinaeco/keymap.c new file mode 100644 index 000000000..0b204600d --- /dev/null +++ b/keyboards/hhkb/keymaps/cinaeco/keymap.c | |||
| @@ -0,0 +1,186 @@ | |||
| 1 | /* -*- eval: (turn-on-orgtbl); -*- | ||
| 2 | * cinaeco's HHKB Layout | ||
| 3 | */ | ||
| 4 | #include "hhkb.h" | ||
| 5 | |||
| 6 | // Layers. | ||
| 7 | #define QWER 0 | ||
| 8 | #define COLE 1 | ||
| 9 | #define DVOR 2 | ||
| 10 | #define HHKB 3 | ||
| 11 | #define UTIL 4 | ||
| 12 | #define MREC 5 | ||
| 13 | |||
| 14 | // Easier-to-read Layer Arrays. | ||
| 15 | #define ____ KC_TRNS | ||
| 16 | |||
| 17 | enum hhkb_keycodes { | ||
| 18 | DYNAMIC_MACRO_RANGE = SAFE_RANGE, | ||
| 19 | }; | ||
| 20 | |||
| 21 | #include "dynamic_macro.h" | ||
| 22 | |||
| 23 | const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = { | ||
| 24 | |||
| 25 | |||
| 26 | /* QWER Layer: Qwerty Default | ||
| 27 | * | ||
| 28 | * ,--------------------------------------------------------------. | ||
| 29 | * |Esc| 1 | 2| 3| 4| 5| 6| 7| 8| 9| 0| -| =| \| `| | ||
| 30 | * |--------------------------------------------------------------| | ||
| 31 | * |Tab |Q/MREC| W| E| R| T| Y| U| I| O| P| [| ]|Backs| | ||
| 32 | * |--------------------------------------------------------------| | ||
| 33 | * |Ctrl | A| S| D| F| G| H| J| K| L| ;| '|Ent/Ctrl| | ||
| 34 | * |--------------------------------------------------------------| | ||
| 35 | * |Shift | Z| X| C| V| B| N| M| ,| .| /|Shift |Fn0| | ||
| 36 | * `--------------------------------------------------------------' | ||
| 37 | * |Alt|Gui | Space/UTIL |Gui |Alt| | ||
| 38 | * `-------------------------------------------' | ||
| 39 | * | ||
| 40 | */ | ||
| 41 | |||
| 42 | [QWER] = KEYMAP( | ||
| 43 | KC_ESC, 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_BSLS, KC_GRV, \ | ||
| 44 | KC_TAB, LT(MREC, 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_BSPC, \ | ||
| 45 | KC_LCTL, KC_A, KC_S, KC_D, KC_F, KC_G, KC_H, KC_J, KC_K, KC_L, KC_SCLN, KC_QUOT, CTL_T(KC_ENT), \ | ||
| 46 | KC_LSFT, KC_Z, KC_X, KC_C, KC_V, KC_B, KC_N, KC_M, KC_COMM, KC_DOT, KC_SLSH, KC_RSFT, MO(HHKB), \ | ||
| 47 | KC_LALT, KC_LGUI, LT(UTIL, KC_SPC), KC_RGUI, KC_RALT), | ||
| 48 | |||
| 49 | |||
| 50 | /* COLE Layer: Colemak | ||
| 51 | * | ||
| 52 | * ,--------------------------------------------------------------. | ||
| 53 | * |Esc| 1 | 2| 3| 4| 5| 6| 7| 8| 9| 0| -| =| \| `| | ||
| 54 | * |--------------------------------------------------------------| | ||
| 55 | * |Tab |Q/MREC| W| F| P| G| J| L| U| Y| ;| [| ]|Backs| | ||
| 56 | * |--------------------------------------------------------------| | ||
| 57 | * |Ctrl | A| R| S| T| D| H| N| E| I| O| '|Ent/Ctrl| | ||
| 58 | * |--------------------------------------------------------------| | ||
| 59 | * |Shift | Z| X| C| V| K| B| M| ,| .| /|Shift |Fn0| | ||
| 60 | * `--------------------------------------------------------------' | ||
| 61 | * |Alt|Gui | Space/UTIL |Gui |Alt| | ||
| 62 | * `-------------------------------------------' | ||
| 63 | * | ||
| 64 | */ | ||
| 65 | |||
| 66 | [COLE] = KEYMAP( | ||
| 67 | KC_ESC, 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_BSLS, KC_GRV, \ | ||
| 68 | KC_TAB, LT(MREC, KC_Q), KC_W, KC_F, KC_P, KC_G, KC_J, KC_L, KC_U, KC_Y, KC_SCLN, KC_LBRC, KC_RBRC, KC_BSPC, \ | ||
| 69 | KC_LCTL, KC_A, KC_R, KC_S, KC_T, KC_D, KC_H, KC_N, KC_E, KC_I, KC_O, KC_QUOT, CTL_T(KC_ENT), \ | ||
| 70 | KC_LSFT, KC_Z, KC_X, KC_C, KC_V, KC_K, KC_B, KC_M, KC_COMM, KC_DOT, KC_SLSH, KC_RSFT, MO(HHKB), \ | ||
| 71 | KC_LALT, KC_LGUI, LT(UTIL, KC_SPC), KC_RGUI, KC_RALT), | ||
| 72 | |||
| 73 | |||
| 74 | /* DVOR Layer: Dvorak | ||
| 75 | * | ||
| 76 | * ,--------------------------------------------------------------. | ||
| 77 | * |Esc| 1 | 2| 3| 4| 5| 6| 7| 8| 9| 0| [| ]| \| `| | ||
| 78 | * |--------------------------------------------------------------| | ||
| 79 | * |Tab |'/MREC| ,| .| P| Y| F| G| C| R| L| /| =|Backs| | ||
| 80 | * |--------------------------------------------------------------| | ||
| 81 | * |Ctrl | A| O| E| U| I| D| H| T| N| S| -|Ent/Ctrl| | ||
| 82 | * |--------------------------------------------------------------| | ||
| 83 | * |Shift | ;| Q| J| K| X| B| M| W| V| Z|Shift |Fn0| | ||
| 84 | * `--------------------------------------------------------------' | ||
| 85 | * |Alt|Gui | Space/UTIL |Gui |Alt| | ||
| 86 | * `-------------------------------------------' | ||
| 87 | * | ||
| 88 | */ | ||
| 89 | |||
| 90 | [DVOR] = KEYMAP( | ||
| 91 | KC_ESC, KC_1, KC_2, KC_3, KC_4, KC_5, KC_6, KC_7, KC_8, KC_9, KC_0, KC_LBRC, KC_RBRC, KC_BSLS, KC_GRV, \ | ||
| 92 | KC_TAB, LT(MREC, KC_QUOT), KC_COMM, KC_DOT, KC_P, KC_Y, KC_F, KC_G, KC_C, KC_R, KC_L, KC_SLSH, KC_EQL, KC_BSPC, \ | ||
| 93 | KC_LCTL, KC_A, KC_O, KC_E, KC_U, KC_I, KC_D, KC_H, KC_T, KC_N, KC_S, KC_MINS, CTL_T(KC_ENT), \ | ||
| 94 | KC_LSFT, KC_SCLN, KC_Q, KC_J, KC_K, KC_X, KC_B, KC_M, KC_W, KC_V, KC_Z, KC_RSFT, MO(HHKB), \ | ||
| 95 | KC_LALT, KC_LGUI, LT(UTIL, KC_SPC), KC_RGUI, KC_RALT), | ||
| 96 | |||
| 97 | |||
| 98 | /* HHKB Layer: HHKB mode (HHKB Fn) | ||
| 99 | * | ||
| 100 | * ,-----------------------------------------------------------. | ||
| 101 | * |Pwr| F1| F2| F3| F4| F5| F6| F7| F8| F9|F10|F11|F12|Ins|Del| | ||
| 102 | * |-----------------------------------------------------------| | ||
| 103 | * |Caps |PLA|PRV|NXT| | | | |Psc|Slk|Pus|Up | |Backs| | ||
| 104 | * |-----------------------------------------------------------| | ||
| 105 | * | |VoD|VoU|Mut|Ejc| | *| /|Hom|PgU|Lef|Rig|Enter | | ||
| 106 | * |-----------------------------------------------------------| | ||
| 107 | * | | | | | | | +| -|End|PgD|Dow| | | | ||
| 108 | * `-----------------------------------------------------------' | ||
| 109 | * | | | |STOP | | | ||
| 110 | * `-------------------------------------------' | ||
| 111 | */ | ||
| 112 | |||
| 113 | [HHKB] = KEYMAP( | ||
| 114 | KC_PWR, 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_INS, KC_DEL, \ | ||
| 115 | KC_CAPS, KC_MPLY, KC_MPRV, KC_MNXT, ____, ____, ____, ____, KC_PSCR, KC_SLCK, KC_PAUS, KC_UP, ____, KC_BSPC, \ | ||
| 116 | ____, KC_VOLD, KC_VOLU, KC_MUTE, KC_EJCT, ____, KC_PAST, KC_PSLS, KC_HOME, KC_PGUP, KC_LEFT, KC_RGHT, KC_PENT, \ | ||
| 117 | ____, ____, ____, ____, ____, ____, KC_PPLS, KC_PMNS, KC_END, KC_PGDN, KC_DOWN, ____, ____, \ | ||
| 118 | ____, ____, ____, KC_MSTP, ____), | ||
| 119 | |||
| 120 | |||
| 121 | /* UTIL Layer: Extra utilities | ||
| 122 | * | ||
| 123 | * ,-------------------------------------------------------------. | ||
| 124 | * |DFU|PLY1|PLY2| | | | | | | | |QWE|COL|DVO|DBG| | ||
| 125 | * |-------------------------------------------------------------| | ||
| 126 | * | |MLB |M-Up|MRB|MwU| |Hom|PgD|PgU|End| | | | | | ||
| 127 | * |-------------------------------------------------------------| | ||
| 128 | * | |M-Lt|M-Dn|M-R|MwD| |LEF|DOW|UP |RIG| | | | | ||
| 129 | * |-------------------------------------------------------------| | ||
| 130 | * | | | | | |SPC| | | | | | | | | ||
| 131 | * `-------------------------------------------------------------' | ||
| 132 | * | | | | | | | ||
| 133 | * `-------------------------------------------' | ||
| 134 | * | ||
| 135 | */ | ||
| 136 | |||
| 137 | [UTIL] = KEYMAP( | ||
| 138 | RESET, DYN_MACRO_PLAY1, DYN_MACRO_PLAY2, ____, ____, ____, ____, ____, ____, ____, ____, DF(QWER), DF(COLE), DF(DVOR), DEBUG, \ | ||
| 139 | ____, KC_BTN1, KC_MS_U, KC_BTN2, KC_WH_U, ____, KC_HOME, KC_PGDN, KC_PGUP, KC_END, ____, ____, ____, ____, \ | ||
| 140 | ____, KC_MS_L, KC_MS_D, KC_MS_R, KC_WH_D, ____, KC_LEFT, KC_DOWN, KC_UP, KC_RGHT, ____, ____, ____, \ | ||
| 141 | ____, ____, ____, ____, ____, KC_SPC, ____, ____, ____, ____, ____, ____, ____, \ | ||
| 142 | ____, ____, ____, ____, ____), | ||
| 143 | |||
| 144 | |||
| 145 | /* MREC Layer: Record macros with `q` | ||
| 146 | * | ||
| 147 | * ,-------------------------------------------------------------. | ||
| 148 | * | |REC1|REC2| | | | | | | | | | | | | | ||
| 149 | * |-------------------------------------------------------------| | ||
| 150 | * | | | | | | | | | | | | | | | | ||
| 151 | * |-------------------------------------------------------------| | ||
| 152 | * | | |RSTP| | | | | | | | | | | | ||
| 153 | * |-------------------------------------------------------------| | ||
| 154 | * | | | | | | | | | | | | | | | ||
| 155 | * `-------------------------------------------------------------' | ||
| 156 | * | | | | | | | ||
| 157 | * `-------------------------------------------' | ||
| 158 | * | ||
| 159 | */ | ||
| 160 | |||
| 161 | [MREC] = KEYMAP( | ||
| 162 | ____, DYN_REC_START1, DYN_REC_START2, ____, ____, ____, ____, ____, ____, ____, ____, ____, ____, ____, ____, \ | ||
| 163 | ____, ____, ____, ____, ____, ____, ____, ____, ____, ____, ____, ____, ____, ____, \ | ||
| 164 | ____, ____, DYN_REC_STOP, ____, ____, ____, ____, ____, ____, ____, ____, ____, ____, \ | ||
| 165 | ____, ____, ____, ____, ____, ____, ____, ____, ____, ____, ____, ____, ____, \ | ||
| 166 | ____, ____, ____, ____, ____) | ||
| 167 | |||
| 168 | }; | ||
| 169 | |||
| 170 | |||
| 171 | |||
| 172 | const uint16_t PROGMEM fn_actions[] = { | ||
| 173 | |||
| 174 | }; | ||
| 175 | |||
| 176 | const macro_t *action_get_macro(keyrecord_t *record, uint8_t id, uint8_t opt) { | ||
| 177 | return MACRO_NONE; | ||
| 178 | }; | ||
| 179 | |||
| 180 | // For Dynamic Macros. | ||
| 181 | bool process_record_user(uint16_t keycode, keyrecord_t *record) { | ||
| 182 | if (!process_record_dynamic_macro(keycode, record)) { | ||
| 183 | return false; | ||
| 184 | } | ||
| 185 | return true; | ||
| 186 | } | ||
diff --git a/keyboards/hhkb/keymaps/smt/keymap.c b/keyboards/hhkb/keymaps/smt/keymap.c new file mode 100644 index 000000000..a7ea54de8 --- /dev/null +++ b/keyboards/hhkb/keymaps/smt/keymap.c | |||
| @@ -0,0 +1,176 @@ | |||
| 1 | /* -*- eval: (turn-on-orgtbl); -*- | ||
| 2 | * default HHKB Layout | ||
| 3 | */ | ||
| 4 | #include "hhkb.h" | ||
| 5 | |||
| 6 | #define _QWERTY 0 | ||
| 7 | #define _COLEMAK 1 | ||
| 8 | #define _DVORAK 2 | ||
| 9 | #define _HHKB 3 | ||
| 10 | |||
| 11 | enum planck_keycodes { | ||
| 12 | QWERTY = SAFE_RANGE, | ||
| 13 | COLEMAK, | ||
| 14 | DVORAK, | ||
| 15 | HHKB | ||
| 16 | }; | ||
| 17 | |||
| 18 | // Fillers to make layering more clear | ||
| 19 | #define _______ KC_TRNS | ||
| 20 | #define XXXXXXX KC_NO | ||
| 21 | |||
| 22 | // Custom macros | ||
| 23 | #define CTL_ESC CTL_T(KC_ESC) // Tap for Esc, hold for Ctrl | ||
| 24 | #define SFT_ENT SFT_T(KC_ENT) // Tap for Enter, hold for Shift | ||
| 25 | #define HPR_TAB ALL_T(KC_TAB) // Tap for Tab, hold for Hyper (Super+Ctrl+Alt+Shift) | ||
| 26 | #define MEH_GRV MEH_T(KC_GRV) // Tap for Backtick, hold for Meh (Ctrl+Alt+Shift) | ||
| 27 | |||
| 28 | const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = { | ||
| 29 | |||
| 30 | /* Layer QWERTY: Qwerty Layer | ||
| 31 | |-------+---+---+---+---+---+---+---+---+---+---+-------+-----+-------+---| | ||
| 32 | | Esc | 1 | 2 | 3 | 4 | 5 | 6 | 7 | 8 | 9 | 0 | - | = | \ | ` | | ||
| 33 | |-------+---+---+---+---+---+---+---+---+---+---+-------+-----+-------+---| | ||
| 34 | | Tab | Q | W | E | R | T | Y | U | I | O | P | [ | ] | Backs | | | ||
| 35 | |-------+---+---+---+---+---+---+---+---+---+---+-------+-----+-------+---| | ||
| 36 | | Cont | A | S | D | F | G | H | J | K | L | ; | ' | Ent | | | | ||
| 37 | |-------+---+---+---+---+---+---+---+---+---+---+-------+-----+-------+---| | ||
| 38 | | Shift | Z | X | C | V | B | N | M | , | . | / | Shift | Fn | | | | ||
| 39 | |-------+---+---+---+---+---+---+---+---+---+---+-------+-----+-------+---| | ||
| 40 | |||
| 41 | |------+------+-----------------------+------+------| | ||
| 42 | | LAlt | LGUI | ******* Space ******* | RGUI | RAlt | | ||
| 43 | |------+------+-----------------------+------+------| | ||
| 44 | */ | ||
| 45 | |||
| 46 | [_QWERTY] = KEYMAP( // Qwerty layer | ||
| 47 | KC_ESC, 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_BSLS, MEH_GRV, \ | ||
| 48 | HPR_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_BSPC, \ | ||
| 49 | CTL_ESC, KC_A, KC_S, KC_D, KC_F, KC_G, KC_H, KC_J, KC_K, KC_L, KC_SCLN, KC_QUOT, SFT_ENT, \ | ||
| 50 | KC_LSFT, KC_Z, KC_X, KC_C, KC_V, KC_B, KC_N, KC_M, KC_COMM, KC_DOT, KC_SLSH, KC_RSFT, MO(_HHKB), \ | ||
| 51 | KC_LALT, KC_LGUI, /* */ KC_SPC, KC_RGUI, KC_RALT), | ||
| 52 | |||
| 53 | |||
| 54 | |||
| 55 | /* Layer COLEMAK: Colemak Layer | ||
| 56 | |-------+---+---+---+---+---+---+---+---+---+---+-------+-----+-------+---| | ||
| 57 | | Esc | 1 | 2 | 3 | 4 | 5 | 6 | 7 | 8 | 9 | 0 | - | = | \ | ` | | ||
| 58 | |-------+---+---+---+---+---+---+---+---+---+---+-------+-----+-------+---| | ||
| 59 | | Tab | Q | W | F | P | G | J | L | U | Y | ; | [ | ] | Backs | | | ||
| 60 | |-------+---+---+---+---+---+---+---+---+---+---+-------+-----+-------+---| | ||
| 61 | | Cont | A | R | S | T | D | H | N | E | I | O | ' | Ent | | | | ||
| 62 | |-------+---+---+---+---+---+---+---+---+---+---+-------+-----+-------+---| | ||
| 63 | | Shift | Z | X | C | V | B | K | M | , | . | / | Shift | Fn | | | | ||
| 64 | |-------+---+---+---+---+---+---+---+---+---+---+-------+-----+-------+---| | ||
| 65 | |||
| 66 | |------+------+-----------------------+------+------| | ||
| 67 | | LAlt | LGUI | ******* Space ******* | RGUI | RAlt | | ||
| 68 | |------+------+-----------------------+------+------| | ||
| 69 | */ | ||
| 70 | |||
| 71 | [_COLEMAK] = KEYMAP( // Colemak layer | ||
| 72 | KC_ESC, 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_BSLS, MEH_GRV, \ | ||
| 73 | HPR_TAB, KC_Q, KC_W, KC_F, KC_P, KC_G, KC_J, KC_L, KC_U, KC_Y, KC_SCLN, KC_LBRC, KC_RBRC, KC_BSPC, \ | ||
| 74 | CTL_ESC, KC_A, KC_R, KC_S, KC_T, KC_D, KC_H, KC_N, KC_E, KC_I, KC_O, KC_QUOT, SFT_ENT, \ | ||
| 75 | KC_LSFT, KC_Z, KC_X, KC_C, KC_V, KC_B, KC_K, KC_M, KC_COMM, KC_DOT, KC_SLSH, KC_RSFT, MO(_HHKB), \ | ||
| 76 | KC_LALT, KC_LGUI, /* */ KC_SPC, KC_RGUI, KC_RALT), | ||
| 77 | |||
| 78 | |||
| 79 | |||
| 80 | /* Layer DVORAK: Dvorak Layer | ||
| 81 | |-------+---+---+---+---+---+---+---+---+---+---+-------+-----+-------+---| | ||
| 82 | | Esc | 1 | 2 | 3 | 4 | 5 | 6 | 7 | 8 | 9 | 0 | [ | ] | \ | ` | | ||
| 83 | |-------+---+---+---+---+---+---+---+---+---+---+-------+-----+-------+---| | ||
| 84 | | Tab | ' | , | . | P | Y | F | G | C | R | L | / | = | Backs | | | ||
| 85 | |-------+---+---+---+---+---+---+---+---+---+---+-------+-----+-------+---| | ||
| 86 | | Cont | A | O | E | U | I | D | H | T | N | S | - | Ent | | | | ||
| 87 | |-------+---+---+---+---+---+---+---+---+---+---+-------+-----+-------+---| | ||
| 88 | | Shift | ; | Q | J | K | X | B | M | W | V | Z | Shift | Fn | | | | ||
| 89 | |-------+---+---+---+---+---+---+---+---+---+---+-------+-----+-------+---| | ||
| 90 | |||
| 91 | |------+------+-----------------------+------+------| | ||
| 92 | | LAlt | LGUI | ******* Space ******* | RGUI | RAlt | | ||
| 93 | |------+------+-----------------------+------+------| | ||
| 94 | */ | ||
| 95 | |||
| 96 | [_DVORAK] = KEYMAP( // Dvorak layer | ||
| 97 | KC_ESC, KC_1, KC_2, KC_3, KC_4, KC_5, KC_6, KC_7, KC_8, KC_9, KC_0, KC_LBRC, KC_RBRC, KC_BSLS, MEH_GRV, \ | ||
| 98 | HPR_TAB, KC_QUOT, KC_COMM, KC_DOT, KC_P, KC_Y, KC_F, KC_G, KC_C, KC_R, KC_L, KC_SLSH, KC_EQL, KC_BSPC, \ | ||
| 99 | CTL_ESC, KC_A, KC_O, KC_E, KC_U, KC_I, KC_D, KC_H, KC_T, KC_N, KC_S, KC_MINS, SFT_ENT, \ | ||
| 100 | KC_LSFT, KC_SCLN, KC_Q, KC_J, KC_K, KC_X, KC_B, KC_M, KC_W, KC_V, KC_Z, KC_RSFT, MO(_HHKB), \ | ||
| 101 | KC_LALT, KC_LGUI, /* */ KC_SPC, KC_RGUI, KC_RALT), | ||
| 102 | |||
| 103 | |||
| 104 | |||
| 105 | /* Layer HHKB: HHKB mode (HHKB Fn) | ||
| 106 | |------+-----+-----+-----+-----+-----+-----+-----+-----+-----+-----+-----+-------+-------+-----| | ||
| 107 | | Pwr | F1 | F2 | F3 | F4 | F5 | F6 | F7 | F8 | F9 | F10 | F11 | F12 | Ins | Del | | ||
| 108 | |------+-----+-----+-----+-----+-----+-----+-----+-----+-----+-----+-----+-------+-------+-----| | ||
| 109 | | Caps | | | | | | | | Psc | Slk | Pus | Up | | Backs | | | ||
| 110 | |------+-----+-----+-----+-----+-----+-----+-----+-----+-----+-----+-----+-------+-------+-----| | ||
| 111 | | | VoD | VoU | Mut | | | * | / | Hom | PgU | Lef | Rig | Enter | | | | ||
| 112 | |------+-----+-----+-----+-----+-----+-----+-----+-----+-----+-----+-----+-------+-------+-----| | ||
| 113 | | | | Qwt | Cmk | Dvk | | + | - | End | PgD | Dow | | | | | | ||
| 114 | |------+-----+-----+-----+-----+-----+-----+-----+-----+-----+-----+-----+-------+-------+-----| | ||
| 115 | |||
| 116 | |------+------+----------------------+------+------+ | ||
| 117 | | **** | **** | ******************** | **** | **** | | ||
| 118 | |------+------+----------------------+------+------+ | ||
| 119 | |||
| 120 | */ | ||
| 121 | |||
| 122 | [_HHKB] = KEYMAP( | ||
| 123 | KC_PWR, 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_INS, KC_DEL, \ | ||
| 124 | KC_CAPS, _______, _______, _______, _______, _______, _______, _______, KC_PSCR, KC_SLCK, KC_PAUS, KC_UP, _______, KC_BSPC, \ | ||
| 125 | _______, KC_VOLD, KC_VOLU, KC_MUTE, _______, _______, KC_PAST, KC_PSLS, KC_HOME, KC_PGUP, KC_LEFT, KC_RGHT, KC_PENT, \ | ||
| 126 | _______, _______, QWERTY, COLEMAK, DVORAK, _______, KC_PPLS, KC_PMNS, KC_END, KC_PGDN, KC_DOWN, _______, _______, \ | ||
| 127 | _______, _______, _______, _______, _______)}; | ||
| 128 | |||
| 129 | |||
| 130 | const uint16_t PROGMEM fn_actions[] = { | ||
| 131 | |||
| 132 | }; | ||
| 133 | |||
| 134 | const macro_t *action_get_macro(keyrecord_t *record, uint8_t id, uint8_t opt) | ||
| 135 | { | ||
| 136 | // MACRODOWN only works in this function | ||
| 137 | switch(id) { | ||
| 138 | case 0: | ||
| 139 | if (record->event.pressed) { | ||
| 140 | register_code(KC_RSFT); | ||
| 141 | } else { | ||
| 142 | unregister_code(KC_RSFT); | ||
| 143 | } | ||
| 144 | break; | ||
| 145 | } | ||
| 146 | return MACRO_NONE; | ||
| 147 | }; | ||
| 148 | |||
| 149 | void persistant_default_layer_set(uint16_t default_layer) { | ||
| 150 | eeconfig_update_default_layer(default_layer); | ||
| 151 | default_layer_set(default_layer); | ||
| 152 | } | ||
| 153 | |||
| 154 | bool process_record_user(uint16_t keycode, keyrecord_t *record) { | ||
| 155 | switch (keycode) { | ||
| 156 | case QWERTY: | ||
| 157 | if (record->event.pressed) { | ||
| 158 | persistant_default_layer_set(1UL<<_QWERTY); | ||
| 159 | } | ||
| 160 | return false; | ||
| 161 | break; | ||
| 162 | case COLEMAK: | ||
| 163 | if (record->event.pressed) { | ||
| 164 | persistant_default_layer_set(1UL<<_COLEMAK); | ||
| 165 | } | ||
| 166 | return false; | ||
| 167 | break; | ||
| 168 | case DVORAK: | ||
| 169 | if (record->event.pressed) { | ||
| 170 | persistant_default_layer_set(1UL<<_DVORAK); | ||
| 171 | } | ||
| 172 | return false; | ||
| 173 | break; | ||
| 174 | } | ||
| 175 | return true; | ||
| 176 | } | ||
diff --git a/keyboards/hhkb/rules.mk b/keyboards/hhkb/rules.mk index a46271f02..e4190039f 100644 --- a/keyboards/hhkb/rules.mk +++ b/keyboards/hhkb/rules.mk | |||
| @@ -53,7 +53,7 @@ OPT_DEFS += -DINTERRUPT_CONTROL_ENDPOINT | |||
| 53 | #OPT_DEFS += -DBOOTLOADER_SIZE=4096 | 53 | #OPT_DEFS += -DBOOTLOADER_SIZE=4096 |
| 54 | 54 | ||
| 55 | # as per original hasu settings | 55 | # as per original hasu settings |
| 56 | OPT_DEFS += -DBOOTLOADER_SIZE=512 | 56 | OPT_DEFS += -DBOOTLOADER_SIZE=4096 |
| 57 | 57 | ||
| 58 | # Build Options | 58 | # Build Options |
| 59 | # comment out to disable the options. | 59 | # comment out to disable the options. |
diff --git a/keyboards/miuni32/config.h b/keyboards/miuni32/config.h index 4f9b68551..9f26b2291 100644 --- a/keyboards/miuni32/config.h +++ b/keyboards/miuni32/config.h | |||
| @@ -163,6 +163,7 @@ along with this program. If not, see <http://www.gnu.org/licenses/>. | |||
| 163 | #define RGB_DI_PIN D0 // The pin your RGB strip is wired to | 163 | #define RGB_DI_PIN D0 // The pin your RGB strip is wired to |
| 164 | #define RGBLIGHT_TIMER // Require for fancier stuff (not compatible with audio) | 164 | #define RGBLIGHT_TIMER // Require for fancier stuff (not compatible with audio) |
| 165 | #define RGBLED_NUM 7 // Number of LEDs | 165 | #define RGBLED_NUM 7 // Number of LEDs |
| 166 | #define RGBLIGHT_ANIMATIONS | ||
| 166 | #define RGBLIGHT_HUE_STEP 10 | 167 | #define RGBLIGHT_HUE_STEP 10 |
| 167 | #define RGBLIGHT_SAT_STEP 17 | 168 | #define RGBLIGHT_SAT_STEP 17 |
| 168 | #define RGBLIGHT_VAL_STEP 17 | 169 | #define RGBLIGHT_VAL_STEP 17 |
diff --git a/keyboards/miuni32/keymaps/adam-lee/Makefile b/keyboards/miuni32/keymaps/adam-lee/Makefile new file mode 100644 index 000000000..88a3aea74 --- /dev/null +++ b/keyboards/miuni32/keymaps/adam-lee/Makefile | |||
| @@ -0,0 +1,21 @@ | |||
| 1 | # Build Options | ||
| 2 | # change to "no" to disable the options, or define them in the Makefile in | ||
| 3 | # the appropriate keymap folder that will get included automatically | ||
| 4 | # | ||
| 5 | BOOTMAGIC_ENABLE = no # Virtual DIP switch configuration(+1000) | ||
| 6 | MOUSEKEY_ENABLE = yes # Mouse keys(+4700) | ||
| 7 | EXTRAKEY_ENABLE = yes # Audio control and System control(+450) | ||
| 8 | CONSOLE_ENABLE = no # Console for debug(+400) | ||
| 9 | COMMAND_ENABLE = yes # Commands for debug and configuration | ||
| 10 | NKRO_ENABLE = yes # Nkey Rollover - if this doesn't work, see here: https://github.com/tmk/tmk_keyboard/wiki/FAQ#nkro-doesnt-work | ||
| 11 | BACKLIGHT_ENABLE = no # Enable keyboard backlight functionality | ||
| 12 | MIDI_ENABLE = no # MIDI controls | ||
| 13 | AUDIO_ENABLE = no # Audio output on port C6 | ||
| 14 | UNICODE_ENABLE = no # Unicode | ||
| 15 | BLUETOOTH_ENABLE = no # Enable Bluetooth with the Adafruit EZ-Key HID | ||
| 16 | RGBLIGHT_ENABLE = yes # Enable WS2812 RGB underlight. Do not enable this with audio at the same time. | ||
| 17 | SLEEP_LED_ENABLE = no # Breathing sleep LED during USB suspend | ||
| 18 | |||
| 19 | ifndef QUANTUM_DIR | ||
| 20 | include ../../../../Makefile | ||
| 21 | endif | ||
diff --git a/keyboards/miuni32/keymaps/adam-lee/config.h b/keyboards/miuni32/keymaps/adam-lee/config.h new file mode 100644 index 000000000..df06a2620 --- /dev/null +++ b/keyboards/miuni32/keymaps/adam-lee/config.h | |||
| @@ -0,0 +1,8 @@ | |||
| 1 | #ifndef CONFIG_USER_H | ||
| 2 | #define CONFIG_USER_H | ||
| 3 | |||
| 4 | #include "../../config.h" | ||
| 5 | |||
| 6 | // place overrides here | ||
| 7 | |||
| 8 | #endif \ No newline at end of file | ||
diff --git a/keyboards/miuni32/keymaps/adam-lee/keymap.c b/keyboards/miuni32/keymaps/adam-lee/keymap.c new file mode 100644 index 000000000..f799b8929 --- /dev/null +++ b/keyboards/miuni32/keymaps/adam-lee/keymap.c | |||
| @@ -0,0 +1,119 @@ | |||
| 1 | #include "miuni32.h" | ||
| 2 | |||
| 3 | const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = { | ||
| 4 | /* Level 0: Default Layer | ||
| 5 | * ,---------------------------------------------------------------------------------------. | ||
| 6 | * | Q | W | E | R | T | Y | U | I | O | P | BSP | | ||
| 7 | * |---------------------------------------------------------------------------------------| | ||
| 8 | * | A | S | D | F | G | H | J | K | L | ENT |LT(1|,)| | ||
| 9 | * |---------------------------------------------------------------------------------------| | ||
| 10 | * |LT(3|Z)| X | C | V | NO | SPC | B | N | M | RSFT |LT(2|.)| | ||
| 11 | * |---------------------------------------------------------------------------------------| | ||
| 12 | */ | ||
| 13 | [0] ={ | ||
| 14 | {KC_Q, KC_W, KC_E, KC_R, KC_T, KC_Y, KC_U, KC_I, KC_O, KC_P, KC_BSPC}, | ||
| 15 | {KC_A, KC_S, KC_D, KC_F, KC_G, KC_H, KC_J, KC_K, KC_L, KC_ENT, LT(1, KC_COMMA)}, | ||
| 16 | {LT(3, KC_Z), KC_X, KC_C, KC_V, KC_NO, KC_SPC, KC_B, KC_N, KC_M, KC_RSFT, LT(2, KC_DOT)} | ||
| 17 | }, | ||
| 18 | /* Level 1: Numbers Layer | ||
| 19 | * ,---------------------------------------------------------------------------------------. | ||
| 20 | * | ESC | 7 | 8 | 9 | / | * | . | , | ( | ) | DEL | | ||
| 21 | * |---------------------------------------------------------------------------------------| | ||
| 22 | * | TAB | 4 | 5 | 6 | - | + | HOME | UP | END | PGUP | TRNS | | ||
| 23 | * |---------------------------------------------------------------------------------------| | ||
| 24 | * | LATL | 1 | 2 | 3 | 0 | NO | LEFT | DOWN | RGHT | PGDN | RSHFT | | ||
| 25 | * |---------------------------------------------------------------------------------------| | ||
| 26 | */ | ||
| 27 | [1] ={ | ||
| 28 | {KC_ESC, KC_7, KC_8, KC_9, KC_SLSH, KC_ASTR, KC_DOT, KC_COMM, KC_LPRN, KC_RPRN, KC_DEL}, | ||
| 29 | {KC_TAB, KC_4, KC_5, KC_6, KC_MINS, KC_PLUS, KC_HOME, KC_UP, KC_END, KC_PGUP, KC_TRNS}, | ||
| 30 | {KC_LALT, KC_1, KC_2, KC_3, KC_0, KC_NO, KC_LEFT, KC_DOWN, KC_RGHT, KC_PGDN, KC_RSFT} | ||
| 31 | }, | ||
| 32 | /* Level 2: Symbols Layer | ||
| 33 | * ,---------------------------------------------------------------------------------------. | ||
| 34 | * | ! | @ | # | $ | % | ^ | & | * | - | + | = | | ||
| 35 | * |---------------------------------------------------------------------------------------| | ||
| 36 | * | { | } | [ | ] | TRNS | TRNS | \ | ; | : | ` | ? | | ||
| 37 | * |---------------------------------------------------------------------------------------| | ||
| 38 | * | LSFT | LCTL | L | T | TRNS | TAB | N | TRNS | TRNS | RCTL | TRNS | | ||
| 39 | * |---------------------------------------------------------------------------------------| | ||
| 40 | */ | ||
| 41 | [2] ={ | ||
| 42 | {KC_EXLM, KC_AT, KC_HASH, KC_DLR, KC_PERC, KC_CIRC, KC_AMPR, KC_ASTR, KC_MINS, KC_PLUS, KC_EQL}, | ||
| 43 | {KC_LCBR, KC_RCBR, KC_LBRC, KC_RBRC, KC_TRNS, KC_TRNS, KC_BSLS, KC_SCLN, KC_COLN, KC_GRV, KC_QUES}, | ||
| 44 | {KC_LSFT, KC_LCTL, KC_L, KC_T, KC_TRNS, KC_TAB, KC_N, KC_TRNS, KC_TRNS, KC_RCTL, KC_TRNS} | ||
| 45 | }, | ||
| 46 | /* Level 3: RGB Layer | ||
| 47 | * ,---------------------------------------------------------------------------------------. | ||
| 48 | * | RESET | TRNS | TRNS | TRNS | TRNS | F1 | F2 | F3 | F4 | F5 | F6 | | ||
| 49 | * |---------------------------------------------------------------------------------------| | ||
| 50 | * |RGB_TOG|RGB_MOD|RGB_HUI|RGB_HUD| NO |RGB_SAI|RGB_SAD|RGB_VAI|RGB_VAD| TRNS | TRNS | | ||
| 51 | * |---------------------------------------------------------------------------------------| | ||
| 52 | * | TRNS | TRNS | TRNS | TRNS | NO | F7 | F8 | F9 | F10 | F11 | F12 | | ||
| 53 | * |---------------------------------------------------------------------------------------| | ||
| 54 | */ | ||
| 55 | [3] ={ | ||
| 56 | {RESET, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_F1, KC_F2, KC_F3, KC_F4, KC_F5, KC_F6}, | ||
| 57 | {RGB_TOG, RGB_MOD, RGB_HUI, RGB_HUD, KC_NO, RGB_SAI, RGB_SAD, RGB_VAI, RGB_VAD, KC_TRNS, KC_TRNS}, | ||
| 58 | {KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_NO, KC_F7, KC_F8, KC_F9, KC_F10, KC_F11, KC_F12} | ||
| 59 | } | ||
| 60 | }; | ||
| 61 | |||
| 62 | const macro_t *action_get_macro(keyrecord_t *record, uint8_t id, uint8_t opt) | ||
| 63 | { | ||
| 64 | // MACRODOWN only works in this function | ||
| 65 | switch(id) { | ||
| 66 | case 0: | ||
| 67 | if (record->event.pressed) { | ||
| 68 | register_code(KC_RSFT); | ||
| 69 | } else { | ||
| 70 | unregister_code(KC_RSFT); | ||
| 71 | } | ||
| 72 | break; | ||
| 73 | } | ||
| 74 | return MACRO_NONE; | ||
| 75 | }; | ||
| 76 | |||
| 77 | void matrix_init_user(void) { | ||
| 78 | } | ||
| 79 | |||
| 80 | void matrix_scan_user(void) { | ||
| 81 | } | ||
| 82 | |||
| 83 | bool process_record_user(uint16_t keycode, keyrecord_t *record) { | ||
| 84 | return true; | ||
| 85 | } | ||
| 86 | |||
| 87 | void led_set_user(uint8_t usb_led) { | ||
| 88 | |||
| 89 | if (usb_led & (1 << USB_LED_NUM_LOCK)) { | ||
| 90 | |||
| 91 | } else { | ||
| 92 | |||
| 93 | } | ||
| 94 | |||
| 95 | if (usb_led & (1 << USB_LED_CAPS_LOCK)) { | ||
| 96 | |||
| 97 | } else { | ||
| 98 | |||
| 99 | } | ||
| 100 | |||
| 101 | if (usb_led & (1 << USB_LED_SCROLL_LOCK)) { | ||
| 102 | |||
| 103 | } else { | ||
| 104 | |||
| 105 | } | ||
| 106 | |||
| 107 | if (usb_led & (1 << USB_LED_COMPOSE)) { | ||
| 108 | |||
| 109 | } else { | ||
| 110 | |||
| 111 | } | ||
| 112 | |||
| 113 | if (usb_led & (1 << USB_LED_KANA)) { | ||
| 114 | |||
| 115 | } else { | ||
| 116 | |||
| 117 | } | ||
| 118 | |||
| 119 | } | ||
diff --git a/keyboards/miuni32/keymaps/adam-lee/readme.md b/keyboards/miuni32/keymaps/adam-lee/readme.md new file mode 100644 index 000000000..4cff8ef5a --- /dev/null +++ b/keyboards/miuni32/keymaps/adam-lee/readme.md | |||
| @@ -0,0 +1 @@ | |||
| # The default keymap for miuni32 \ No newline at end of file | |||
diff --git a/keyboards/miuni32/keymaps/default/keymap.c b/keyboards/miuni32/keymaps/default/keymap.c index 15e2fa45c..f799b8929 100644 --- a/keyboards/miuni32/keymaps/default/keymap.c +++ b/keyboards/miuni32/keymaps/default/keymap.c | |||
| @@ -1,19 +1,62 @@ | |||
| 1 | #include "miuni32.h" | 1 | #include "miuni32.h" |
| 2 | 2 | ||
| 3 | const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = { | 3 | const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = { |
| 4 | [0] ={ | 4 | /* Level 0: Default Layer |
| 5 | {KC_Q, KC_W, KC_E, KC_R, KC_T, KC_Y, KC_U, KC_I, KC_O, KC_P, KC_BSPC}, | 5 | * ,---------------------------------------------------------------------------------------. |
| 6 | {KC_A, KC_S, KC_D, KC_F, KC_G, KC_H, KC_J, KC_K, KC_L, KC_RSFT, KC_ENT}, | 6 | * | Q | W | E | R | T | Y | U | I | O | P | BSP | |
| 7 | {KC_Z, KC_X, KC_C, KC_V, KC_V, KC_SPC, KC_B, KC_N, KC_M , MO(1), KC_RCTL} | 7 | * |---------------------------------------------------------------------------------------| |
| 8 | }, | 8 | * | A | S | D | F | G | H | J | K | L | ENT |LT(1|,)| |
| 9 | [1] ={ | 9 | * |---------------------------------------------------------------------------------------| |
| 10 | {KC_PGUP, KC_UP, KC_PGDN, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_DEL}, | 10 | * |LT(3|Z)| X | C | V | NO | SPC | B | N | M | RSFT |LT(2|.)| |
| 11 | {KC_LEFT, KC_DOWN, KC_RGHT, KC_TRNS, KC_HOME, KC_LEFT, KC_DOWN, KC_UP, KC_RGHT, KC_END, KC_TRNS}, | 11 | * |---------------------------------------------------------------------------------------| |
| 12 | {RGB_TOG, RGB_HUI, RGB_HUD, RGB_SAI, KC_TRNS, RGB_SAD, RGB_VAI, RGB_VAD, KC_TRNS, KC_TRNS, RGB_MOD}, | 12 | */ |
| 13 | } | 13 | [0] ={ |
| 14 | }; | 14 | {KC_Q, KC_W, KC_E, KC_R, KC_T, KC_Y, KC_U, KC_I, KC_O, KC_P, KC_BSPC}, |
| 15 | const uint16_t PROGMEM fn_actions[] = { | 15 | {KC_A, KC_S, KC_D, KC_F, KC_G, KC_H, KC_J, KC_K, KC_L, KC_ENT, LT(1, KC_COMMA)}, |
| 16 | 16 | {LT(3, KC_Z), KC_X, KC_C, KC_V, KC_NO, KC_SPC, KC_B, KC_N, KC_M, KC_RSFT, LT(2, KC_DOT)} | |
| 17 | }, | ||
| 18 | /* Level 1: Numbers Layer | ||
| 19 | * ,---------------------------------------------------------------------------------------. | ||
| 20 | * | ESC | 7 | 8 | 9 | / | * | . | , | ( | ) | DEL | | ||
| 21 | * |---------------------------------------------------------------------------------------| | ||
| 22 | * | TAB | 4 | 5 | 6 | - | + | HOME | UP | END | PGUP | TRNS | | ||
| 23 | * |---------------------------------------------------------------------------------------| | ||
| 24 | * | LATL | 1 | 2 | 3 | 0 | NO | LEFT | DOWN | RGHT | PGDN | RSHFT | | ||
| 25 | * |---------------------------------------------------------------------------------------| | ||
| 26 | */ | ||
| 27 | [1] ={ | ||
| 28 | {KC_ESC, KC_7, KC_8, KC_9, KC_SLSH, KC_ASTR, KC_DOT, KC_COMM, KC_LPRN, KC_RPRN, KC_DEL}, | ||
| 29 | {KC_TAB, KC_4, KC_5, KC_6, KC_MINS, KC_PLUS, KC_HOME, KC_UP, KC_END, KC_PGUP, KC_TRNS}, | ||
| 30 | {KC_LALT, KC_1, KC_2, KC_3, KC_0, KC_NO, KC_LEFT, KC_DOWN, KC_RGHT, KC_PGDN, KC_RSFT} | ||
| 31 | }, | ||
| 32 | /* Level 2: Symbols Layer | ||
| 33 | * ,---------------------------------------------------------------------------------------. | ||
| 34 | * | ! | @ | # | $ | % | ^ | & | * | - | + | = | | ||
| 35 | * |---------------------------------------------------------------------------------------| | ||
| 36 | * | { | } | [ | ] | TRNS | TRNS | \ | ; | : | ` | ? | | ||
| 37 | * |---------------------------------------------------------------------------------------| | ||
| 38 | * | LSFT | LCTL | L | T | TRNS | TAB | N | TRNS | TRNS | RCTL | TRNS | | ||
| 39 | * |---------------------------------------------------------------------------------------| | ||
| 40 | */ | ||
| 41 | [2] ={ | ||
| 42 | {KC_EXLM, KC_AT, KC_HASH, KC_DLR, KC_PERC, KC_CIRC, KC_AMPR, KC_ASTR, KC_MINS, KC_PLUS, KC_EQL}, | ||
| 43 | {KC_LCBR, KC_RCBR, KC_LBRC, KC_RBRC, KC_TRNS, KC_TRNS, KC_BSLS, KC_SCLN, KC_COLN, KC_GRV, KC_QUES}, | ||
| 44 | {KC_LSFT, KC_LCTL, KC_L, KC_T, KC_TRNS, KC_TAB, KC_N, KC_TRNS, KC_TRNS, KC_RCTL, KC_TRNS} | ||
| 45 | }, | ||
| 46 | /* Level 3: RGB Layer | ||
| 47 | * ,---------------------------------------------------------------------------------------. | ||
| 48 | * | RESET | TRNS | TRNS | TRNS | TRNS | F1 | F2 | F3 | F4 | F5 | F6 | | ||
| 49 | * |---------------------------------------------------------------------------------------| | ||
| 50 | * |RGB_TOG|RGB_MOD|RGB_HUI|RGB_HUD| NO |RGB_SAI|RGB_SAD|RGB_VAI|RGB_VAD| TRNS | TRNS | | ||
| 51 | * |---------------------------------------------------------------------------------------| | ||
| 52 | * | TRNS | TRNS | TRNS | TRNS | NO | F7 | F8 | F9 | F10 | F11 | F12 | | ||
| 53 | * |---------------------------------------------------------------------------------------| | ||
| 54 | */ | ||
| 55 | [3] ={ | ||
| 56 | {RESET, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_F1, KC_F2, KC_F3, KC_F4, KC_F5, KC_F6}, | ||
| 57 | {RGB_TOG, RGB_MOD, RGB_HUI, RGB_HUD, KC_NO, RGB_SAI, RGB_SAD, RGB_VAI, RGB_VAD, KC_TRNS, KC_TRNS}, | ||
| 58 | {KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_NO, KC_F7, KC_F8, KC_F9, KC_F10, KC_F11, KC_F12} | ||
| 59 | } | ||
| 17 | }; | 60 | }; |
| 18 | 61 | ||
| 19 | const macro_t *action_get_macro(keyrecord_t *record, uint8_t id, uint8_t opt) | 62 | const macro_t *action_get_macro(keyrecord_t *record, uint8_t id, uint8_t opt) |
| @@ -31,19 +74,46 @@ const macro_t *action_get_macro(keyrecord_t *record, uint8_t id, uint8_t opt) | |||
| 31 | return MACRO_NONE; | 74 | return MACRO_NONE; |
| 32 | }; | 75 | }; |
| 33 | 76 | ||
| 34 | |||
| 35 | void matrix_init_user(void) { | 77 | void matrix_init_user(void) { |
| 36 | |||
| 37 | } | 78 | } |
| 38 | 79 | ||
| 39 | void matrix_scan_user(void) { | 80 | void matrix_scan_user(void) { |
| 40 | |||
| 41 | } | 81 | } |
| 42 | 82 | ||
| 43 | bool process_record_user(uint16_t keycode, keyrecord_t *record) { | 83 | bool process_record_user(uint16_t keycode, keyrecord_t *record) { |
| 44 | return true; | 84 | return true; |
| 45 | } | 85 | } |
| 46 | 86 | ||
| 47 | void led_set_user(uint8_t usb_led) { | 87 | void led_set_user(uint8_t usb_led) { |
| 48 | 88 | ||
| 89 | if (usb_led & (1 << USB_LED_NUM_LOCK)) { | ||
| 90 | |||
| 91 | } else { | ||
| 92 | |||
| 93 | } | ||
| 94 | |||
| 95 | if (usb_led & (1 << USB_LED_CAPS_LOCK)) { | ||
| 96 | |||
| 97 | } else { | ||
| 98 | |||
| 99 | } | ||
| 100 | |||
| 101 | if (usb_led & (1 << USB_LED_SCROLL_LOCK)) { | ||
| 102 | |||
| 103 | } else { | ||
| 104 | |||
| 105 | } | ||
| 106 | |||
| 107 | if (usb_led & (1 << USB_LED_COMPOSE)) { | ||
| 108 | |||
| 109 | } else { | ||
| 110 | |||
| 111 | } | ||
| 112 | |||
| 113 | if (usb_led & (1 << USB_LED_KANA)) { | ||
| 114 | |||
| 115 | } else { | ||
| 116 | |||
| 117 | } | ||
| 118 | |||
| 49 | } | 119 | } |
diff --git a/keyboards/miuni32/keymaps/ht_156/Makefile b/keyboards/miuni32/keymaps/ht_156/Makefile new file mode 100644 index 000000000..88a3aea74 --- /dev/null +++ b/keyboards/miuni32/keymaps/ht_156/Makefile | |||
| @@ -0,0 +1,21 @@ | |||
| 1 | # Build Options | ||
| 2 | # change to "no" to disable the options, or define them in the Makefile in | ||
| 3 | # the appropriate keymap folder that will get included automatically | ||
| 4 | # | ||
| 5 | BOOTMAGIC_ENABLE = no # Virtual DIP switch configuration(+1000) | ||
| 6 | MOUSEKEY_ENABLE = yes # Mouse keys(+4700) | ||
| 7 | EXTRAKEY_ENABLE = yes # Audio control and System control(+450) | ||
| 8 | CONSOLE_ENABLE = no # Console for debug(+400) | ||
| 9 | COMMAND_ENABLE = yes # Commands for debug and configuration | ||
| 10 | NKRO_ENABLE = yes # Nkey Rollover - if this doesn't work, see here: https://github.com/tmk/tmk_keyboard/wiki/FAQ#nkro-doesnt-work | ||
| 11 | BACKLIGHT_ENABLE = no # Enable keyboard backlight functionality | ||
| 12 | MIDI_ENABLE = no # MIDI controls | ||
| 13 | AUDIO_ENABLE = no # Audio output on port C6 | ||
| 14 | UNICODE_ENABLE = no # Unicode | ||
| 15 | BLUETOOTH_ENABLE = no # Enable Bluetooth with the Adafruit EZ-Key HID | ||
| 16 | RGBLIGHT_ENABLE = yes # Enable WS2812 RGB underlight. Do not enable this with audio at the same time. | ||
| 17 | SLEEP_LED_ENABLE = no # Breathing sleep LED during USB suspend | ||
| 18 | |||
| 19 | ifndef QUANTUM_DIR | ||
| 20 | include ../../../../Makefile | ||
| 21 | endif | ||
diff --git a/keyboards/miuni32/keymaps/ht_156/config.h b/keyboards/miuni32/keymaps/ht_156/config.h new file mode 100644 index 000000000..df06a2620 --- /dev/null +++ b/keyboards/miuni32/keymaps/ht_156/config.h | |||
| @@ -0,0 +1,8 @@ | |||
| 1 | #ifndef CONFIG_USER_H | ||
| 2 | #define CONFIG_USER_H | ||
| 3 | |||
| 4 | #include "../../config.h" | ||
| 5 | |||
| 6 | // place overrides here | ||
| 7 | |||
| 8 | #endif \ No newline at end of file | ||
diff --git a/keyboards/miuni32/keymaps/ht_156/keymap.c b/keyboards/miuni32/keymaps/ht_156/keymap.c new file mode 100644 index 000000000..e40180d49 --- /dev/null +++ b/keyboards/miuni32/keymaps/ht_156/keymap.c | |||
| @@ -0,0 +1,181 @@ | |||
| 1 | #include "miuni32.h" | ||
| 2 | |||
| 3 | // Keyboard layer definitions | ||
| 4 | #define BASE 0 | ||
| 5 | #define NUMBERS 1 | ||
| 6 | #define SYMBOLS 2 | ||
| 7 | #define MEDIA 3 | ||
| 8 | |||
| 9 | // Keyboard macro defintions | ||
| 10 | #define GIT_ST M(0) | ||
| 11 | #define GIT_PU M(1) | ||
| 12 | #define GIT_CM M(2) | ||
| 13 | #define HM_DIR M(3) | ||
| 14 | |||
| 15 | const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = { | ||
| 16 | /* Level 0: Default Layer | ||
| 17 | * ,---------------------------------------------------------------------------------------. | ||
| 18 | * | Q | W | E | R | T | Y | U | I | O | P | BSP | | ||
| 19 | * |---------------------------------------------------------------------------------------| | ||
| 20 | * | A | S | D | F | G | H | J | K | L | ENT | RSFT | | ||
| 21 | * |---------------------------------------------------------------------------------------| | ||
| 22 | * |LT(2|Z)|LT(3|X)| C | V | B | SPC | N | M | , |LT(1|.)| RCTL | | ||
| 23 | * |---------------------------------------------------------------------------------------| | ||
| 24 | */ | ||
| 25 | [BASE] ={ | ||
| 26 | {KC_Q, KC_W, KC_E, KC_R, KC_T, KC_Y, KC_U, KC_I, KC_O, KC_P, KC_BSPC}, | ||
| 27 | {KC_A, KC_S, KC_D, KC_F, KC_G, KC_H, KC_J, KC_K, KC_L, KC_ENT, KC_RSFT}, | ||
| 28 | {LT(2, KC_Z), LT(3, KC_X), KC_C, KC_V, KC_B, KC_SPC, KC_N, KC_M, KC_COMMA, LT(1, KC_DOT), KC_RCTL} | ||
| 29 | }, | ||
| 30 | /* Level 1: Numbers Layer | ||
| 31 | * ,---------------------------------------------------------------------------------------. | ||
| 32 | * | ESC | 7 | 8 | 9 | / | * | . | , | ( | ) | DEL | | ||
| 33 | * |---------------------------------------------------------------------------------------| | ||
| 34 | * | TAB | 4 | 5 | 6 | - | + | HOME | UP | END | INS | PGUP | | ||
| 35 | * |---------------------------------------------------------------------------------------| | ||
| 36 | * | LATL | 1 | 2 | 3 | 0 | ENT | LEFT | DOWN | RGHT | !TRNS!| PGDN | | ||
| 37 | * |---------------------------------------------------------------------------------------| | ||
| 38 | */ | ||
| 39 | [NUMBERS] ={ | ||
| 40 | {KC_ESC, KC_7, KC_8, KC_9, KC_SLSH, KC_ASTR, KC_DOT, KC_COMM, KC_LPRN, KC_RPRN, KC_DEL}, | ||
| 41 | {KC_TAB, KC_4, KC_5, KC_6, KC_MINS, KC_PLUS, KC_HOME, KC_UP, KC_END, KC_INSERT, KC_PGUP}, | ||
| 42 | {KC_LALT, KC_1, KC_2, KC_3, KC_0, KC_ENT, KC_LEFT, KC_DOWN, KC_RGHT, KC_TRNS, KC_PGDN} | ||
| 43 | }, | ||
| 44 | /* Level 2: Symbols Layer | ||
| 45 | * ,---------------------------------------------------------------------------------------. | ||
| 46 | * | ! | @ | # | $ | % | ^ | & | * | _ | = | ? | | ||
| 47 | * |---------------------------------------------------------------------------------------| | ||
| 48 | * | RESET | LSFT | ~ | { | } | \ | | | ; | : | ` | " | | ||
| 49 | * |---------------------------------------------------------------------------------------| | ||
| 50 | * | !TRNS!| LCTL | TRNS | [ | ] | TAB | < | > | TRNS | RCTL | TRNS | | ||
| 51 | * |---------------------------------------------------------------------------------------| | ||
| 52 | */ | ||
| 53 | [SYMBOLS] ={ | ||
| 54 | {KC_EXLM, KC_AT, KC_HASH, KC_DLR, KC_PERC, KC_CIRC, KC_AMPR, KC_ASTR, KC_UNDS, KC_EQL, KC_QUES}, | ||
| 55 | {RESET, KC_LSFT, KC_TILD, KC_LCBR, KC_RCBR, KC_BSLS, KC_PIPE, KC_SCLN, KC_COLN, KC_GRV, KC_DQUO}, | ||
| 56 | {KC_TRNS, KC_LCTL, KC_TRNS, KC_LBRC, KC_RBRC, KC_TAB, KC_LABK, KC_RABK, KC_TRNS, KC_RCTL, KC_TRNS} | ||
| 57 | }, | ||
| 58 | /* Level 3: Media Layer | ||
| 59 | * ,---------------------------------------------------------------------------------------. | ||
| 60 | * |RGB_TOG|RGB_HUI|RGB_SAI|RGB_VAI| GIT_CM| CALC | WREF | WFAV | MUTE | VOLD | VOLU | | ||
| 61 | * |---------------------------------------------------------------------------------------| | ||
| 62 | * |RGB_MOD|RGB_HUD|RGB_SAD|RGB_VAD| GIT_ST| WHOM | WBAK | WFWD | TRNS | STOP | PLAY | | ||
| 63 | * |---------------------------------------------------------------------------------------| | ||
| 64 | * | TRNS | !TRNS!| TRNS | HM_DIR| GIT_PU| MYCM | WSTP | WSCH | MSEL | MPRV | MNXT | | ||
| 65 | * |---------------------------------------------------------------------------------------| | ||
| 66 | */ | ||
| 67 | [MEDIA] ={ | ||
| 68 | {RGB_TOG, RGB_HUI, RGB_SAI, RGB_VAI, GIT_CM, KC_CALC, KC_WREF, KC_WFAV, KC_MUTE, KC_VOLD, KC_VOLU}, | ||
| 69 | {RGB_MOD, RGB_HUD, RGB_SAD, RGB_VAD, GIT_ST, KC_WHOM, KC_WBAK, KC_WFWD, KC_TRNS, KC_MSTP, KC_MPLY}, | ||
| 70 | {KC_TRNS, KC_TRNS, KC_TRNS, HM_DIR, GIT_PU, KC_MYCM, KC_WSTP, KC_WSCH, KC_MSEL, KC_MPRV, KC_MNXT} | ||
| 71 | } | ||
| 72 | }; | ||
| 73 | |||
| 74 | void press_and_release_key(uint8_t code) | ||
| 75 | { | ||
| 76 | register_code(code); | ||
| 77 | unregister_code(code); | ||
| 78 | } | ||
| 79 | |||
| 80 | void press_and_release_mod_key(uint8_t mod, uint8_t code) | ||
| 81 | { | ||
| 82 | register_code(mod); | ||
| 83 | register_code(code); | ||
| 84 | unregister_code(code); | ||
| 85 | unregister_code(mod); | ||
| 86 | } | ||
| 87 | |||
| 88 | const macro_t *action_get_macro(keyrecord_t *record, uint8_t id, uint8_t opt) | ||
| 89 | { | ||
| 90 | // MACRODOWN only works in this function | ||
| 91 | switch(id) | ||
| 92 | { | ||
| 93 | case 0: | ||
| 94 | if (record->event.pressed) | ||
| 95 | { | ||
| 96 | return MACRO(T(G), T(I), T(T), T(SPC), | ||
| 97 | T(S), T(T), T(A), T(T), T(U), T(S), END); | ||
| 98 | } | ||
| 99 | break; | ||
| 100 | case 1: | ||
| 101 | if (record->event.pressed) | ||
| 102 | { | ||
| 103 | return MACRO(T(G), T(I), T(T), T(SPC), | ||
| 104 | T(P), T(U), T(L), T(L), END); | ||
| 105 | } | ||
| 106 | break; | ||
| 107 | case 2: | ||
| 108 | if (record->event.pressed) | ||
| 109 | { | ||
| 110 | return MACRO(T(G), T(I), T(T), T(SPC), | ||
| 111 | T(C), T(O), T(M), T(M), T(I), T(T), END); | ||
| 112 | } | ||
| 113 | break; | ||
| 114 | case 3: | ||
| 115 | if (record->event.pressed) | ||
| 116 | { | ||
| 117 | /*press_and_release_key(KC_C); | ||
| 118 | press_and_release_key(KC_D); | ||
| 119 | press_and_release_key(KC_SPC); | ||
| 120 | press_and_release_mod_key(KC_LSFT, KC_GRV); | ||
| 121 | press_and_release_key(KC_SLSH); | ||
| 122 | press_and_release_key(KC_Q); | ||
| 123 | press_and_release_key(KC_M); | ||
| 124 | press_and_release_key(KC_K); | ||
| 125 | press_and_release_mod_key(KC_LSFT, KC_MINS);*/ | ||
| 126 | return MACRO(I(0), | ||
| 127 | T(C), T(D), T(SPC), | ||
| 128 | D(LSFT), T(GRV), U(LSFT), T(SLSH), | ||
| 129 | T(Q), T(M), T(K), D(LSFT), T(MINS), U(LSFT), | ||
| 130 | T(F), T(I), T(R), T(M), T(W), T(A), T(R), T(E), T(SLSH), | ||
| 131 | T(K), T(E), T(Y), T(B), T(O), T(A), T(R), T(D), T(S), T(SLSH), | ||
| 132 | T(M), T(I), T(U), T(N), T(I), T(3), T(2), T(SLSH), | ||
| 133 | T(K), T(E), T(Y), T(M), T(A), T(P), T(S), END); | ||
| 134 | } | ||
| 135 | } | ||
| 136 | return MACRO_NONE; | ||
| 137 | }; | ||
| 138 | |||
| 139 | void matrix_init_user(void) { | ||
| 140 | } | ||
| 141 | |||
| 142 | void matrix_scan_user(void) { | ||
| 143 | } | ||
| 144 | |||
| 145 | bool process_record_user(uint16_t keycode, keyrecord_t *record) { | ||
| 146 | return true; | ||
| 147 | } | ||
| 148 | |||
| 149 | void led_set_user(uint8_t usb_led) { | ||
| 150 | |||
| 151 | if (usb_led & (1 << USB_LED_NUM_LOCK)) { | ||
| 152 | |||
| 153 | } else { | ||
| 154 | |||
| 155 | } | ||
| 156 | |||
| 157 | if (usb_led & (1 << USB_LED_CAPS_LOCK)) { | ||
| 158 | |||
| 159 | } else { | ||
| 160 | |||
| 161 | } | ||
| 162 | |||
| 163 | if (usb_led & (1 << USB_LED_SCROLL_LOCK)) { | ||
| 164 | |||
| 165 | } else { | ||
| 166 | |||
| 167 | } | ||
| 168 | |||
| 169 | if (usb_led & (1 << USB_LED_COMPOSE)) { | ||
| 170 | |||
| 171 | } else { | ||
| 172 | |||
| 173 | } | ||
| 174 | |||
| 175 | if (usb_led & (1 << USB_LED_KANA)) { | ||
| 176 | |||
| 177 | } else { | ||
| 178 | |||
| 179 | } | ||
| 180 | |||
| 181 | } | ||
diff --git a/keyboards/miuni32/keymaps/ht_156/readme.md b/keyboards/miuni32/keymaps/ht_156/readme.md new file mode 100644 index 000000000..e46cc6d53 --- /dev/null +++ b/keyboards/miuni32/keymaps/ht_156/readme.md | |||
| @@ -0,0 +1 @@ | |||
| # ht_156's keymap for miuni32, using 33 keys | |||
diff --git a/keyboards/miuni32/miuni32.h b/keyboards/miuni32/miuni32.h index eecb17f81..8e1b4a38c 100644 --- a/keyboards/miuni32/miuni32.h +++ b/keyboards/miuni32/miuni32.h | |||
| @@ -6,10 +6,10 @@ | |||
| 6 | #define KEYMAP( \ | 6 | #define KEYMAP( \ |
| 7 | K00, K01, K02, K03, K04, K05, K06, K07, K08, K09, K0A, \ | 7 | K00, K01, K02, K03, K04, K05, K06, K07, K08, K09, K0A, \ |
| 8 | K10, K11, K12, K13, K14, K15, K16, K17, K18, K19, K1A, \ | 8 | K10, K11, K12, K13, K14, K15, K16, K17, K18, K19, K1A, \ |
| 9 | K20, K21, K22, K23, K24, K25, K26, K27, K28, K29, K2A ) { \ | 9 | K20, K21, K22, K23, K25, K26, K27, K28, K29, K2A ) { \ |
| 10 | { KC_##K00, KC_##K01, KC_##K02, KC_##K03, KC_##K04, KC_##K05, KC_##K06, KC_##K07, KC_##K08, KC_##K09, KC_##K0A }, \ | 10 | { KC_##K00, KC_##K01, KC_##K02, KC_##K03, KC_##K04, KC_##K05, KC_##K06, KC_##K07, KC_##K08, KC_##K09, KC_##K0A }, \ |
| 11 | { KC_##K10, KC_##K11, KC_##K12, KC_##K13, KC_##K14, KC_##K15, KC_##K16, KC_##K17, KC_##K18, KC_##K19, KC_##K1A }, \ | 11 | { KC_##K10, KC_##K11, KC_##K12, KC_##K13, KC_##K14, KC_##K15, KC_##K16, KC_##K17, KC_##K18, KC_##K19, KC_##K1A }, \ |
| 12 | { KC_##K20, KC_##K21, KC_##K22, KC_##K23, KC_##K24, KC_##K25, KC_##K26, KC_##K27, KC_##K28, KC_##K29, KC_##K2A } \ | 12 | { KC_##K20, KC_##K21, KC_##K22, KC_##K23, KC_NO, KC_##K25, KC_##K26, KC_##K27, KC_##K28, KC_##K29, KC_##K2A } \ |
| 13 | } | 13 | } |
| 14 | 14 | ||
| 15 | #endif | 15 | #endif |
diff --git a/keyboards/planck/keymaps/dshields/Makefile b/keyboards/planck/keymaps/dshields/Makefile new file mode 100644 index 000000000..5eaceda53 --- /dev/null +++ b/keyboards/planck/keymaps/dshields/Makefile | |||
| @@ -0,0 +1,11 @@ | |||
| 1 | ifndef QUANTUM_DIR | ||
| 2 | include ../../../../Makefile | ||
| 3 | endif | ||
| 4 | |||
| 5 | MOUSEKEY_ENABLE = yes # Mouse keys(+4700) | ||
| 6 | COMMAND_ENABLE = yes # Commands for debug and configuration | ||
| 7 | BACKLIGHT_ENABLE = yes # Enable keyboard backlight functionality | ||
| 8 | # Do not enable SLEEP_LED_ENABLE. it uses the same timer as BACKLIGHT_ENABLE | ||
| 9 | SLEEP_LED_ENABLE = no # Breathing sleep LED during USB suspend | ||
| 10 | TAP_DANCE_ENABLE = no | ||
| 11 | AUDIO_ENABLE = no | ||
diff --git a/keyboards/planck/keymaps/dshields/config.h b/keyboards/planck/keymaps/dshields/config.h new file mode 100644 index 000000000..35358af0b --- /dev/null +++ b/keyboards/planck/keymaps/dshields/config.h | |||
| @@ -0,0 +1,23 @@ | |||
| 1 | #ifndef CONFIG_USER_H | ||
| 2 | #define CONFIG_USER_H | ||
| 3 | |||
| 4 | #ifndef NO_DEBUG | ||
| 5 | #define NO_DEBUG | ||
| 6 | #endif | ||
| 7 | #ifndef NO_PRINT | ||
| 8 | #define NO_PRINT | ||
| 9 | #endif | ||
| 10 | |||
| 11 | #include "../../config.h" | ||
| 12 | |||
| 13 | #define TAPPING_TOGGLE 2 | ||
| 14 | #define TAPPING_TERM 300 | ||
| 15 | |||
| 16 | #define ONESHOT_TAP_TOGGLE 2 | ||
| 17 | #define ONESHOT_TIMEOUT 300 | ||
| 18 | |||
| 19 | #define _______ KC_TRNS | ||
| 20 | #define XXXXXXX KC_NO | ||
| 21 | |||
| 22 | #endif | ||
| 23 | |||
diff --git a/keyboards/planck/keymaps/dshields/keymap.c b/keyboards/planck/keymaps/dshields/keymap.c new file mode 100644 index 000000000..e96a67a53 --- /dev/null +++ b/keyboards/planck/keymaps/dshields/keymap.c | |||
| @@ -0,0 +1,98 @@ | |||
| 1 | #include "planck.h" | ||
| 2 | #include "backlight.h" | ||
| 3 | #include "config.h" | ||
| 4 | #include "action_layer.h" | ||
| 5 | #include "eeconfig.h" | ||
| 6 | |||
| 7 | extern keymap_config_t keymap_config; | ||
| 8 | |||
| 9 | enum planck_layers { DEF, LWR, RSE, FUN }; | ||
| 10 | enum planck_keycodes { M1 = SAFE_RANGE, M2, M3, M4 }; | ||
| 11 | |||
| 12 | const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = { | ||
| 13 | /* Default | ||
| 14 | * ,-----------------------------------------------------------------------------------. | ||
| 15 | * | Q | W | E | R | T | Esc | Bksp | Y | U | I | O | P | | ||
| 16 | * |------+------+------+------+------+-------------+------+------+------+------+------| | ||
| 17 | * | A | S | D | F | G | Tab | Enter| H | J | K | L | ; | | ||
| 18 | * |------+------+------+------+------+------|------+------+------+------+------+------| | ||
| 19 | * | Z | X | C | V | B | Shift| Play | N | M | , | . | / | | ||
| 20 | * |------+------+------+------+------+------+------+------+------+------+------+------| | ||
| 21 | * | Ctrl | Super| Alt | Fun | Lower| Space | Raise| Left | Down | Up |Right | | ||
| 22 | * `-----------------------------------------------------------------------------------' | ||
| 23 | */ | ||
| 24 | [DEF] = { | ||
| 25 | {KC_Q, KC_W, KC_E, KC_R, KC_T, KC_ESC, KC_BSPC, KC_Y, KC_U, KC_I, KC_O, KC_P}, | ||
| 26 | {KC_A, KC_S, KC_D, KC_F, KC_G, KC_TAB, KC_ENT, KC_H, KC_J, KC_K, KC_L, KC_SCLN}, | ||
| 27 | {KC_Z, KC_X, KC_C, KC_V, KC_B, OSM(MOD_LSFT), XXXXXXX, KC_N, KC_M, KC_COMM, KC_DOT, KC_SLSH}, | ||
| 28 | {KC_LCTL, KC_LGUI, KC_LALT, TT(FUN), TT(LWR), KC_SPC, KC_SPC, TT(RSE), KC_LEFT, KC_DOWN, KC_UP, KC_RGHT} | ||
| 29 | }, | ||
| 30 | /* Lower | ||
| 31 | * ,-----------------------------------------------------------------------------------. | ||
| 32 | * | ! | @ | # | $ | % | | | ^ | & | * | ( | ) | | ||
| 33 | * |------+------+------+------+------+-------------+------+------+------+------+------| | ||
| 34 | * | ~ | | | | | | | _ | + | | { | } | | ||
| 35 | * |------+------+------+------+------+------|------+------+------+------+------+------| | ||
| 36 | * | | | | | | | | | | | " | | | | ||
| 37 | * |------+------+------+------+------+------+------+------+------+------+------+------| | ||
| 38 | * | | | | | | | | Home | PgDn | PgUp | End | | ||
| 39 | * `-----------------------------------------------------------------------------------' | ||
| 40 | */ | ||
| 41 | [LWR] = { | ||
| 42 | {KC_EXLM, KC_AT, KC_HASH, KC_DLR, KC_PERC, _______, _______, KC_CIRC, KC_AMPR, KC_ASTR, KC_LPRN, KC_RPRN}, | ||
| 43 | {S(KC_GRV), _______, _______, _______, _______, _______, _______, KC_UNDS, KC_PLUS, _______, S(KC_LBRC), S(KC_RBRC)}, | ||
| 44 | {_______, _______, _______, _______, _______, _______, _______, _______, _______, _______, S(KC_QUOT), S(KC_BSLS)}, | ||
| 45 | {_______, _______, _______, _______, _______, _______, _______, _______, KC_HOME, KC_PGDN, KC_PGUP, KC_END} | ||
| 46 | }, | ||
| 47 | /* Raise | ||
| 48 | * ,-----------------------------------------------------------------------------------. | ||
| 49 | * | 1 | 2 | 3 | 4 | 5 | | | 6 | 7 | 8 | 9 | 0 | | ||
| 50 | * |------+------+------+------+------+-------------+------+------+------+------+------| | ||
| 51 | * | ` | | | | | | | - | = | | [ | ] | | ||
| 52 | * |------+------+------+------+------+------|------+------+------+------+------+------| | ||
| 53 | * | | | | | | | | | | | | | | ||
| 54 | * |------+------+------+------+------+------+------+------+------+------+------+------| | ||
| 55 | * | | | | | | | | Home | PgDn | PgUp | End | | ||
| 56 | * `-----------------------------------------------------------------------------------' | ||
| 57 | */ | ||
| 58 | [RSE] = { | ||
| 59 | {KC_1, KC_2, KC_3, KC_4, KC_5, _______, _______, KC_6, KC_7, KC_8, KC_9, KC_0}, | ||
| 60 | {KC_GRV, _______, _______, _______, _______, _______, _______, KC_MINS, KC_EQL, _______, KC_LBRC, KC_RBRC}, | ||
| 61 | {_______, _______, _______, _______, _______, _______, _______, _______, _______, _______, KC_QUOT, KC_BSLS}, | ||
| 62 | {_______, _______, _______, _______, _______, _______, _______, _______, KC_HOME, KC_PGDN, KC_PGUP, KC_END} | ||
| 63 | }, | ||
| 64 | /* Function | ||
| 65 | * ,-----------------------------------------------------------------------------------. | ||
| 66 | * | F1 | F2 | F3 | F4 | F5 | Reset|Delete| F6 | F7 | F8 | F9 | F10 | | ||
| 67 | * |------+------+------+------+------+-------------+------+------+------+------+------| | ||
| 68 | * | F11 | F12 | F13 | F14 | F15 | | | F16 | F17 | F18 | F19 | F20 | | ||
| 69 | * |------+------+------+------+------+------|------+------+------+------+------+------| | ||
| 70 | * |BlTggl|BlStep| | M1 | M2 | | | M3 | M4 |MsBtn1|MsBtn2|MsBtn3| | ||
| 71 | * |------+------+------+------+------+------+------+------+------+------+------+------| | ||
| 72 | * | | | | | | | |MsLeft|MsDown| MsUp |MsRght| | ||
| 73 | * `-----------------------------------------------------------------------------------' | ||
| 74 | */ | ||
| 75 | [FUN] = { | ||
| 76 | {KC_F1, KC_F2, KC_F3, KC_F4, KC_F5, RESET, KC_DEL, KC_F6, KC_F7, KC_F8, KC_F9, KC_F10}, | ||
| 77 | {KC_F11, KC_F12, KC_F13, KC_F14, KC_F15, _______, _______, KC_F16, KC_F17, KC_F18, KC_F19, KC_F20}, | ||
| 78 | {BL_TOGG, BL_STEP, _______, M1, _______, _______, _______, _______, _______, KC_BTN1, KC_BTN2, KC_BTN3}, | ||
| 79 | {_______, _______, _______, _______, _______, _______, _______, _______, KC_MS_L, KC_MS_D, KC_MS_U, KC_MS_R} | ||
| 80 | }, | ||
| 81 | |||
| 82 | }; | ||
| 83 | |||
| 84 | bool process_record_user(uint16_t keycode, keyrecord_t *record) { | ||
| 85 | switch (keycode) { | ||
| 86 | case M1: | ||
| 87 | if (record->event.pressed) { | ||
| 88 | SEND_STRING(" 2>&1 > "); | ||
| 89 | } | ||
| 90 | return false; | ||
| 91 | break; | ||
| 92 | } | ||
| 93 | return true; | ||
| 94 | } | ||
| 95 | |||
| 96 | void matrix_init_user(void) { | ||
| 97 | } | ||
| 98 | |||
diff --git a/keyboards/planck/keymaps/lae3/keymap.c b/keyboards/planck/keymaps/lae3/keymap.c index 81f94ccd6..4127a3ae1 100644 --- a/keyboards/planck/keymaps/lae3/keymap.c +++ b/keyboards/planck/keymaps/lae3/keymap.c | |||
| @@ -52,11 +52,11 @@ const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = { | |||
| 52 | /* Qwerty | 52 | /* Qwerty |
| 53 | * ,-----------------------------------------------------------------------------------. | 53 | * ,-----------------------------------------------------------------------------------. |
| 54 | * | Esc | Q | W | E | R | T | Y | U | I | O | P | Bksp | | 54 | * | Esc | Q | W | E | R | T | Y | U | I | O | P | Bksp | |
| 55 | * |------+------+------+------+------+-------------+------+------+------+------+------| | 55 | * |------+------+------+------+------+------+------+------+------+------+------+------| |
| 56 | * | Tab | A | S | D | F | G | H | J | K | L | ; |Enter | | 56 | * | Tab | A | S | D | F | G | H | J | K | L | ; |Enter | |
| 57 | * |------+------+------+------+------+------|------+------+------+------+------+------| | ||
| 58 | * |Shift | Z | X | C | V | B | N | M | , | . | / |Shift | | ||
| 59 | * |------+------+------+------+------+------+------+------+------+------+------+------| | 57 | * |------+------+------+------+------+------+------+------+------+------+------+------| |
| 58 | * |Shift | Z | X | C | V | B | N | M | , | . | / |Shift | | ||
| 59 | * |------+------+------+------+------+-------------+------+------+------+------+------| | ||
| 60 | * | Ctrl | GUI | Alt | Move |Lower | Space |Raise | Move | Alt | GUI | Ctrl | | 60 | * | Ctrl | GUI | Alt | Move |Lower | Space |Raise | Move | Alt | GUI | Ctrl | |
| 61 | * `-----------------------------------------------------------------------------------' | 61 | * `-----------------------------------------------------------------------------------' |
| 62 | */ | 62 | */ |
| @@ -93,7 +93,7 @@ const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = { | |||
| 93 | * |------+------+------+------+------+------+------+------+------+------+------+------| | 93 | * |------+------+------+------+------+------+------+------+------+------+------+------| |
| 94 | * | | | | | | | | 3 | 2 | 1 | - | | | 94 | * | | | | | | | | 3 | 2 | 1 | - | | |
| 95 | * |------+------+------+------+------+-------------+------+------+------+------+------| | 95 | * |------+------+------+------+------+-------------+------+------+------+------+------| |
| 96 | * | | | | | | | | 0 | = | + | | | 96 | * | | | | | | | | 0 | . | + | | |
| 97 | * `-----------------------------------------------------------------------------------' | 97 | * `-----------------------------------------------------------------------------------' |
| 98 | */ | 98 | */ |
| 99 | [_NUMPAD] = { | 99 | [_NUMPAD] = { |
| @@ -124,11 +124,11 @@ const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = { | |||
| 124 | /* Lower | 124 | /* Lower |
| 125 | * ,-----------------------------------------------------------------------------------. | 125 | * ,-----------------------------------------------------------------------------------. |
| 126 | * | ` | 1 | 2 | 3 | 4 | 5 | - | = | Del | End | PgDn | | | 126 | * | ` | 1 | 2 | 3 | 4 | 5 | - | = | Del | End | PgDn | | |
| 127 | * |------+------+------+------+------+-------------+------+------+------+------+------| | 127 | * |------+------+------+------+------+------+------+------+------+------+------+------| |
| 128 | * | Caps | 6 | 7 | 8 | 9 | 0 | [ | ] | \ | ' | | | | 128 | * | Caps | 6 | 7 | 8 | 9 | 0 | [ | ] | \ | ' | | | |
| 129 | * |------+------+------+------+------+------|------+------+------+------+------+------| | ||
| 130 | * | | F1 | F2 | F3 | F4 | | | F5 | F6 | F7 | F8 | | | ||
| 131 | * |------+------+------+------+------+------+------+------+------+------+------+------| | 129 | * |------+------+------+------+------+------+------+------+------+------+------+------| |
| 130 | * | | F1 | F2 | F3 | F4 | | | F5 | F6 | F7 | F8 | | | ||
| 131 | * |------+------+------+------+------+-------------+------+------+------+------+------| | ||
| 132 | * | | | | | | | | | | | | | 132 | * | | | | | | | | | | | | |
| 133 | * `-----------------------------------------------------------------------------------' | 133 | * `-----------------------------------------------------------------------------------' |
| 134 | */ | 134 | */ |
| @@ -142,11 +142,11 @@ const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = { | |||
| 142 | /* Raise | 142 | /* Raise |
| 143 | * ,-----------------------------------------------------------------------------------. | 143 | * ,-----------------------------------------------------------------------------------. |
| 144 | * | ~ | ! | @ | # | $ | % | _ | + | Ins | Home | PgUp | | | 144 | * | ~ | ! | @ | # | $ | % | _ | + | Ins | Home | PgUp | | |
| 145 | * |------+------+------+------+------+-------------+------+------+------+------+------| | 145 | * |------+------+------+------+------+------+------+------+------+------+------+------| |
| 146 | * | Caps | ^ | & | * | ( | ) | { | } | | | " | | | | 146 | * | Caps | ^ | & | * | ( | ) | { | } | | | " | | | |
| 147 | * |------+------+------+------+------+------|------+------+------+------+------+------| | ||
| 148 | * | | F9 | F10 | F11 | F12 | | | | | | | | | ||
| 149 | * |------+------+------+------+------+------+------+------+------+------+------+------| | 147 | * |------+------+------+------+------+------+------+------+------+------+------+------| |
| 148 | * | | F9 | F10 | F11 | F12 | | | | | | | | | ||
| 149 | * |------+------+------+------+------+-------------+------+------+------+------+------| | ||
| 150 | * | | | | | | | | | | | | | 150 | * | | | | | | | | | | | | |
| 151 | * `-----------------------------------------------------------------------------------' | 151 | * `-----------------------------------------------------------------------------------' |
| 152 | */ | 152 | */ |
diff --git a/keyboards/planck/keymaps/lae3/readme.md b/keyboards/planck/keymaps/lae3/readme.md index 429b51456..57a2f38dd 100644 --- a/keyboards/planck/keymaps/lae3/readme.md +++ b/keyboards/planck/keymaps/lae3/readme.md | |||
| @@ -1 +1,111 @@ | |||
| 1 | Keymap based around mode-switching for extended functionality | 1 | # Lae3 |
| 2 | _Keymap based around mode-switching for extended functionality_ | ||
| 3 | |||
| 4 | ## Base Layout | ||
| 5 | |||
| 6 | ┌-----------------------------------------------------------------------------------┐ | ||
| 7 | | Esc | Q | W | E | R | T | Y | U | I | O | P | Bksp | | ||
| 8 | |------+------+------+------+------+------+------+------+------+------+------+------| | ||
| 9 | | Tab | A | S | D | F | G | H | J | K | L | ; |Enter | | ||
| 10 | |------+------+------+------+------+------+------+------+------+------+------+------| | ||
| 11 | |Shift | Z | X | C | V | B | N | M | , | . | / |Shift | | ||
| 12 | |------+------+------+------+------+-------------+------+------+------+------+------| | ||
| 13 | | Ctrl | GUI | Alt | Move |Lower | Space |Raise | Move | Alt | GUI | Ctrl | | ||
| 14 | └-----------------------------------------------------------------------------------┘ | ||
| 15 | |||
| 16 | This is more similar to a standard keyboard layout than the standard planck | ||
| 17 | layout, but I have found that this is better for programming, especially for | ||
| 18 | editor shortcuts. | ||
| 19 | |||
| 20 | ## Lower Layer | ||
| 21 | |||
| 22 | ┌-----------------------------------------------------------------------------------┐ | ||
| 23 | | ` | 1 | 2 | 3 | 4 | 5 | - | = | Del | End | PgDn | | | ||
| 24 | |------+------+------+------+------+------+------+------+------+------+------+------| | ||
| 25 | | Caps | 6 | 7 | 8 | 9 | 0 | [ | ] | \ | ' | | | | ||
| 26 | |------+------+------+------+------+------+------+------+------+------+------+------| | ||
| 27 | | | F1 | F2 | F3 | F4 | | | F5 | F6 | F7 | F8 | | | ||
| 28 | |------+------+------+------+------+-------------+------+------+------+------+------| | ||
| 29 | | | | | | | | | | | | | | ||
| 30 | └-----------------------------------------------------------------------------------┘ | ||
| 31 | |||
| 32 | All the numbers are on one hand so that they can all be easily accessed when | ||
| 33 | playing games. The punctuation was placed in a way that is as similar as | ||
| 34 | possible the qwerty punctuation layout on a standard keyboard. | ||
| 35 | |||
| 36 | ## Raise Layer | ||
| 37 | |||
| 38 | ┌-----------------------------------------------------------------------------------┐ | ||
| 39 | | ~ | ! | @ | # | $ | % | _ | + | Ins | Home | PgUp | | | ||
| 40 | |------+------+------+------+------+------+------+------+------+------+------+------| | ||
| 41 | | Caps | ^ | & | * | ( | ) | { | } | | | " | | | | ||
| 42 | |------+------+------+------+------+------+------+------+------+------+------+------| | ||
| 43 | | | F9 | F10 | F11 | F12 | | | | | | | | | ||
| 44 | |------+------+------+------+------+-------------+------+------+------+------+------| | ||
| 45 | | | | | | | | | | | | | | ||
| 46 | └-----------------------------------------------------------------------------------┘ | ||
| 47 | |||
| 48 | This layer with the exception of the function and control keys is effectively | ||
| 49 | the lower layer in combination with the shift key, like on the standard planck | ||
| 50 | layout. | ||
| 51 | |||
| 52 | ## Movement Layer | ||
| 53 | |||
| 54 | ┌-----------------------------------------------------------------------------------┐ | ||
| 55 | | |MsBut2|Ms Up |MsBut1|MsWhUp| | Home | PgDn | PgUp | End | | | | ||
| 56 | |------+------+------+------+------+------+------+------+------+------+------+------| | ||
| 57 | | |Ms Lft|Ms Dn |Ms Rgt|MsWhDn| | Left | Down | Up | Right| | | | ||
| 58 | |------+------+------+------+------+------+------+------+------+------+------+------| | ||
| 59 | | | | | | | | | | | | | | | ||
| 60 | |------+------+------+------+------+-------------+------+------+------+------+------| | ||
| 61 | | | | | | | | | | | | | | ||
| 62 | └-----------------------------------------------------------------------------------┘ | ||
| 63 | |||
| 64 | Layer for simplifying movement. | ||
| 65 | |||
| 66 | ## Meta Layer | ||
| 67 | |||
| 68 | ┌-----------------------------------------------------------------------------------┐ | ||
| 69 | |Reset | | | | | | | | | | | | | ||
| 70 | |------+------+------+------+------+------+------+------+------+------+------+------| | ||
| 71 | | |Bcklgt| Mute |Vol Dn|Vol Up| | |Qwerty|Arrow |Numpad| | | | ||
| 72 | |------+------+------+------+------+------+------+------+------+------+------+------| | ||
| 73 | | | | | | | | | | | | | | | ||
| 74 | |------+------+------+------+------+-------------+------+------+------+------+------| | ||
| 75 | | | | | | | | | | | | | | ||
| 76 | └-----------------------------------------------------------------------------------┘ | ||
| 77 | |||
| 78 | This Layer is activated when pressing both the Lower and Raise keys. The Arrow | ||
| 79 | and Numpad keys each activate a layer between the base layer and the Movement | ||
| 80 | layer. The Qwerty key disables both of the layers leaving just the base layer | ||
| 81 | active. | ||
| 82 | |||
| 83 | ## Arrow Layer | ||
| 84 | |||
| 85 | ┌-----------------------------------------------------------------------------------┐ | ||
| 86 | | | | | | | | | | | | | | | ||
| 87 | |------+------+------+------+------+------+------+------+------+------+------+------| | ||
| 88 | | | | | | | | | | | | | | | ||
| 89 | |------+------+------+------+------+------+------+------+------+------+------+------| | ||
| 90 | | | | | | | | | | | | Up | | | ||
| 91 | |------+------+------+------+------+-------------+------+------+------+------+------| | ||
| 92 | | | | | | | | | | Left | Down | Right| | ||
| 93 | └-----------------------------------------------------------------------------------┘ | ||
| 94 | |||
| 95 | Replaces the bottom right of the keyboard with arrow keys for games like The | ||
| 96 | Binding of Isaac. | ||
| 97 | |||
| 98 | ## Numpad Layer | ||
| 99 | |||
| 100 | ┌-----------------------------------------------------------------------------------┐ | ||
| 101 | | | | | | | |NumLck| 7 | 8 | 9 | / | | | ||
| 102 | |------+------+------+------+------+------+------+------+------+------+------+------| | ||
| 103 | | | | | | | |Enter | 4 | 5 | 6 | * | | | ||
| 104 | |------+------+------+------+------+------+------+------+------+------+------+------| | ||
| 105 | | | | | | | | | 3 | 2 | 1 | - | | | ||
| 106 | |------+------+------+------+------+-------------+------+------+------+------+------| | ||
| 107 | | | | | | | | | 0 | . | + | | | ||
| 108 | └-----------------------------------------------------------------------------------┘ | ||
| 109 | |||
| 110 | Replaces the majority of the right side of the keyboard with a numpad because | ||
| 111 | why not? | ||
diff --git a/keyboards/planck/keymaps/vifon/keymap.c b/keyboards/planck/keymaps/vifon/keymap.c index ee0c0ac36..ecd5c2cc4 100644 --- a/keyboards/planck/keymaps/vifon/keymap.c +++ b/keyboards/planck/keymaps/vifon/keymap.c | |||
| @@ -107,7 +107,8 @@ const uint16_t PROGMEM fn_actions[] = { | |||
| 107 | bool process_record_user(uint16_t keycode, keyrecord_t *record) { | 107 | bool process_record_user(uint16_t keycode, keyrecord_t *record) { |
| 108 | static uint16_t key_timer; | 108 | static uint16_t key_timer; |
| 109 | 109 | ||
| 110 | if (!process_record_dynamic_macro(keycode, record)) { | 110 | uint16_t macro_kc = (keycode == MO(_DYN) ? DYN_REC_STOP : keycode); |
| 111 | if (!process_record_dynamic_macro(macro_kc, record)) { | ||
| 111 | return false; | 112 | return false; |
| 112 | } | 113 | } |
| 113 | 114 | ||
diff --git a/keyboards/ps2avrGB/keymaps/default/keymap.c b/keyboards/ps2avrGB/keymaps/default/keymap.c index 5c66cde59..3e4cebc81 100644 --- a/keyboards/ps2avrGB/keymaps/default/keymap.c +++ b/keyboards/ps2avrGB/keymaps/default/keymap.c | |||
| @@ -18,14 +18,14 @@ along with this program. If not, see <http://www.gnu.org/licenses/>. | |||
| 18 | #include "ps2avrGB.h" | 18 | #include "ps2avrGB.h" |
| 19 | 19 | ||
| 20 | const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = { | 20 | const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = { |
| 21 | KEYMAP( \ | 21 | KC_KEYMAP( |
| 22 | ESC, F1, F2, F3, F4, F5, F6, F7, F8, F9, F10, F11, F12, PSCR,HOME,END, \ | 22 | ESC, F1, F2, F3, F4, F5, F6, F7, F8, F9, F10, F11, F12, PSCR,HOME,END, |
| 23 | GRV, 1, 2, 3, 4, 5, 6, 7, 8, 9, 0, MINS,EQL, BSPC, DEL, \ | 23 | GRV, 1, 2, 3, 4, 5, 6, 7, 8, 9, 0, MINS,EQL, BSPC, DEL, |
| 24 | TAB, Q, W, E, R, T, Y, U, I, O, P, LBRC,RBRC,BSLS, INS, \ | 24 | TAB, Q, W, E, R, T, Y, U, I, O, P, LBRC,RBRC,BSLS, INS, |
| 25 | CAPS,A, S, D, F, G, H, J, K, L, SCLN,QUOT,ENT, PGUP,\ | 25 | CAPS,A, S, D, F, G, H, J, K, L, SCLN,QUOT,ENT, PGUP, |
| 26 | LSFT,Z, X, C, V, B, N, M, COMM,DOT, SLSH,RSFT, UP, PGDN,\ | 26 | LSFT,Z, X, C, V, B, N, M, COMM,DOT, SLSH,RSFT, UP, PGDN, |
| 27 | LCTL,LALT,LGUI, SPC, RGUI,RALT,RCTL,LEFT,DOWN,RGHT \ | 27 | LCTL,LALT,LGUI, SPC, RGUI,RALT,RCTL,LEFT,DOWN,RGHT |
| 28 | ), | 28 | ) |
| 29 | }; | 29 | }; |
| 30 | 30 | ||
| 31 | const uint16_t PROGMEM fn_actions[] = { | 31 | const uint16_t PROGMEM fn_actions[] = { |
diff --git a/keyboards/ps2avrGB/ps2avrGB.h b/keyboards/ps2avrGB/ps2avrGB.h index 6432e3be9..813f31f80 100644 --- a/keyboards/ps2avrGB/ps2avrGB.h +++ b/keyboards/ps2avrGB/ps2avrGB.h | |||
| @@ -22,6 +22,24 @@ along with this program. If not, see <http://www.gnu.org/licenses/>. | |||
| 22 | #include "action.h" | 22 | #include "action.h" |
| 23 | 23 | ||
| 24 | #define KEYMAP( \ | 24 | #define KEYMAP( \ |
| 25 | K05, K25, K35, K45, K55, K06, KA6, KA7, K07, KB5, KC5, KD5, KE5, KD1, KE1, KE2, \ | ||
| 26 | K04, K14, K24, K34, K44, K54, K16, KB6, KB7, K17, KA4, KB4, KC4, KE4, KD0, \ | ||
| 27 | K03, K13, K23, K33, K43, K53, K26, KC6, KC7, K27, KA3, KB3, KC3, KD3, K67, \ | ||
| 28 | K02, K12, K22, K32, K42, K52, K36, KD6, KD7, K37, KA2, KB2, KD2, KE0, \ | ||
| 29 | K01, K11, K21, K31, K41, K51, K46, KE6, KE7, K47, KA1, KB1, K86, K77, \ | ||
| 30 | K00, K10, K20, K56, K57, KB0, KC0, K66, K76, K96 \ | ||
| 31 | ){ \ | ||
| 32 | { K00, K10, K20, KC_NO, KC_NO, KC_NO, KC_NO, KC_NO, KC_NO, KC_NO, KC_NO, KB0, KC0, KD0, KE0 }, \ | ||
| 33 | { K01, K11, K21, K31, K41, K51, KC_NO, KC_NO, KC_NO, KC_NO, KA1, KB1, KC_NO, KD1, KE1 }, \ | ||
| 34 | { K02, K12, K22, K32, K42, K52, KC_NO, KC_NO, KC_NO, KC_NO, KA2, KB2, KC_NO, KD2, KE2 }, \ | ||
| 35 | { K03, K13, K23, K33, K43, K53, KC_NO, KC_NO, KC_NO, KC_NO, KA3, KB3, KC3, KD3, KC_NO }, \ | ||
| 36 | { K04, K14, K24, K34, K44, K54, KC_NO, KC_NO, KC_NO, KC_NO, KA4, KB4, KC4, KC_NO, KE4 }, \ | ||
| 37 | { K05, KC_NO, K25, K35, K45, K55, KC_NO, KC_NO, KC_NO, KC_NO, KC_NO, KB5, KC5, KD5, KE5 }, \ | ||
| 38 | { K06, K16, K26, K36, K46, K56, K66, K76, K86, K96, KA6, KB6, KC6, KD6, KE6 }, \ | ||
| 39 | { K07, K17, K27, K37, K47, K57, K67, K77, KC_NO, KC_NO, KA7, KB7, KC7, KD7, KE7 } \ | ||
| 40 | } | ||
| 41 | |||
| 42 | #define KC_KEYMAP( \ | ||
| 25 | K05, K25, K35, K45, K55, K06, KA6, KA7, K07, KB5, KC5, KD5, KE5, KD1, KE1, KE2, \ | 43 | K05, K25, K35, K45, K55, K06, KA6, KA7, K07, KB5, KC5, KD5, KE5, KD1, KE1, KE2, \ |
| 26 | K04, K14, K24, K34, K44, K54, K16, KB6, KB7, K17, KA4, KB4, KC4, KE4, KD0, \ | 44 | K04, K14, K24, K34, K44, K54, K16, KB6, KB7, K17, KA4, KB4, KC4, KE4, KD0, \ |
| 27 | K03, K13, K23, K33, K43, K53, K26, KC6, KC7, K27, KA3, KB3, KC3, KD3, K67, \ | 45 | K03, K13, K23, K33, K43, K53, K26, KC6, KC7, K27, KA3, KB3, KC3, KD3, K67, \ |
diff --git a/keyboards/s60-x/default/rules.mk b/keyboards/s60-x/default/rules.mk deleted file mode 100644 index b8ff76260..000000000 --- a/keyboards/s60-x/default/rules.mk +++ /dev/null | |||
| @@ -1 +0,0 @@ | |||
| 1 | RGBLIGHT_ENABLE ?= no \ No newline at end of file | ||
diff --git a/keyboards/s60-x/rgb/rules.mk b/keyboards/s60-x/rgb/rules.mk deleted file mode 100644 index c303af4bc..000000000 --- a/keyboards/s60-x/rgb/rules.mk +++ /dev/null | |||
| @@ -1,56 +0,0 @@ | |||
| 1 | # MCU name | ||
| 2 | MCU = atmega32u4 | ||
| 3 | |||
| 4 | # Processor frequency. | ||
| 5 | # This will define a symbol, F_CPU, in all source code files equal to the | ||
| 6 | # processor frequency in Hz. You can then use this symbol in your source code to | ||
| 7 | # calculate timings. Do NOT tack on a 'UL' at the end, this will be done | ||
| 8 | # automatically to create a 32-bit value in your source code. | ||
| 9 | # | ||
| 10 | # This will be an integer division of F_USB below, as it is sourced by | ||
| 11 | # F_USB after it has run through any CPU prescalers. Note that this value | ||
| 12 | # does not *change* the processor frequency - it should merely be updated to | ||
| 13 | # reflect the processor speed set externally so that the code can use accurate | ||
| 14 | # software delays. | ||
| 15 | F_CPU = 16000000 | ||
| 16 | |||
| 17 | # | ||
| 18 | # LUFA specific | ||
| 19 | # | ||
| 20 | # Target architecture (see library "Board Types" documentation). | ||
| 21 | ARCH = AVR8 | ||
| 22 | |||
| 23 | # Input clock frequency. | ||
| 24 | # This will define a symbol, F_USB, in all source code files equal to the | ||
| 25 | # input clock frequency (before any prescaling is performed) in Hz. This value may | ||
| 26 | # differ from F_CPU if prescaling is used on the latter, and is required as the | ||
| 27 | # raw input clock is fed directly to the PLL sections of the AVR for high speed | ||
| 28 | # clock generation for the USB and other AVR subsections. Do NOT tack on a 'UL' | ||
| 29 | # at the end, this will be done automatically to create a 32-bit value in your | ||
| 30 | # source code. | ||
| 31 | # | ||
| 32 | # If no clock division is performed on the input clock inside the AVR (via the | ||
| 33 | # CPU clock adjust registers or the clock division fuses), this will be equal to F_CPU. | ||
| 34 | F_USB = $(F_CPU) | ||
| 35 | |||
| 36 | # Interrupt driven control endpoint task(+60) | ||
| 37 | OPT_DEFS += -DINTERRUPT_CONTROL_ENDPOINT | ||
| 38 | |||
| 39 | |||
| 40 | # Boot Section Size in *bytes* | ||
| 41 | OPT_DEFS += -DBOOTLOADER_SIZE=4096 | ||
| 42 | |||
| 43 | |||
| 44 | # Build Options | ||
| 45 | # comment out to disable the options. | ||
| 46 | # | ||
| 47 | BOOTMAGIC_ENABLE ?= yes # Virtual DIP switch configuration(+1000) | ||
| 48 | MOUSEKEY_ENABLE ?= yes # Mouse keys(+4700) | ||
| 49 | EXTRAKEY_ENABLE ?= yes # Audio control and System control(+450) | ||
| 50 | CONSOLE_ENABLE ?= no # Console for debug(+400) | ||
| 51 | COMMAND_ENABLE ?= no # Commands for debug and configuration | ||
| 52 | SLEEP_LED_ENABLE ?= no # Breathing sleep LED during USB suspend | ||
| 53 | NKRO_ENABLE ?= yes # USB Nkey Rollover - if this doesn't work, see here: https://github.com/tmk/tmk_keyboard/wiki/FAQ#nkro-doesnt-work | ||
| 54 | BACKLIGHT_ENABLE ?= yes # Enable keyboard backlight functionality | ||
| 55 | AUDIO_ENABLE ?= no | ||
| 56 | RGBLIGHT_ENABLE ?= yes \ No newline at end of file | ||
diff --git a/keyboards/s60-x/s60-x.c b/keyboards/s60-x/s60-x.c deleted file mode 100644 index f031dd770..000000000 --- a/keyboards/s60-x/s60-x.c +++ /dev/null | |||
| @@ -1 +0,0 @@ | |||
| 1 | #include "s60-x.h" \ No newline at end of file | ||
diff --git a/keyboards/s60-x/s60-x_precompiled.zip b/keyboards/s60-x/s60-x_precompiled.zip deleted file mode 100644 index 00d99ca8a..000000000 --- a/keyboards/s60-x/s60-x_precompiled.zip +++ /dev/null | |||
| Binary files differ | |||
diff --git a/keyboards/s60-x/Makefile b/keyboards/s60_x/Makefile index 879e493a2..879e493a2 100644 --- a/keyboards/s60-x/Makefile +++ b/keyboards/s60_x/Makefile | |||
diff --git a/keyboards/s60-x/config.h b/keyboards/s60_x/config.h index 8e7bc78be..8b97b3c81 100644 --- a/keyboards/s60-x/config.h +++ b/keyboards/s60_x/config.h | |||
| @@ -32,6 +32,12 @@ along with this program. If not, see <http://www.gnu.org/licenses/>. | |||
| 32 | #define MATRIX_ROWS 5 | 32 | #define MATRIX_ROWS 5 |
| 33 | #define MATRIX_COLS 15 | 33 | #define MATRIX_COLS 15 |
| 34 | 34 | ||
| 35 | /* number of backlight levels */ | ||
| 36 | #define BACKLIGHT_PIN B7 | ||
| 37 | #ifdef BACKLIGHT_PIN | ||
| 38 | #define BACKLIGHT_LEVELS 3 | ||
| 39 | #endif | ||
| 40 | |||
| 35 | /* COL2ROW or ROW2COL */ | 41 | /* COL2ROW or ROW2COL */ |
| 36 | #define DIODE_DIRECTION COL2ROW | 42 | #define DIODE_DIRECTION COL2ROW |
| 37 | 43 | ||
| @@ -43,4 +49,11 @@ along with this program. If not, see <http://www.gnu.org/licenses/>. | |||
| 43 | keyboard_report->mods == (MOD_BIT(KC_LSHIFT) | MOD_BIT(KC_RSHIFT)) \ | 49 | keyboard_report->mods == (MOD_BIT(KC_LSHIFT) | MOD_BIT(KC_RSHIFT)) \ |
| 44 | ) | 50 | ) |
| 45 | 51 | ||
| 52 | #ifdef SUBPROJECT_default | ||
| 53 | #include "default/config.h" | ||
| 54 | #endif | ||
| 55 | #ifdef SUBPROJECT_rgb | ||
| 56 | #include "rgb/config.h" | ||
| 57 | #endif | ||
| 58 | |||
| 46 | #endif | 59 | #endif |
diff --git a/keyboards/s60-x/default/Makefile b/keyboards/s60_x/default/Makefile index 191c6bb66..191c6bb66 100644 --- a/keyboards/s60-x/default/Makefile +++ b/keyboards/s60_x/default/Makefile | |||
diff --git a/keyboards/s60-x/default/config.h b/keyboards/s60_x/default/config.h index 436c6fa8b..436c6fa8b 100644 --- a/keyboards/s60-x/default/config.h +++ b/keyboards/s60_x/default/config.h | |||
diff --git a/keyboards/s60-x/default/default.c b/keyboards/s60_x/default/default.c index 253f5495c..253f5495c 100644 --- a/keyboards/s60-x/default/default.c +++ b/keyboards/s60_x/default/default.c | |||
diff --git a/keyboards/s60-x/default/default.h b/keyboards/s60_x/default/default.h index 86233ef7e..86233ef7e 100644 --- a/keyboards/s60-x/default/default.h +++ b/keyboards/s60_x/default/default.h | |||
diff --git a/keyboards/s60_x/default/rules.mk b/keyboards/s60_x/default/rules.mk new file mode 100644 index 000000000..aaa3764df --- /dev/null +++ b/keyboards/s60_x/default/rules.mk | |||
| @@ -0,0 +1,9 @@ | |||
| 1 | CONSOLE_ENABLE ?= no # Console for debug(+400) | ||
| 2 | COMMAND_ENABLE ?= no # Commands for debug and configuration | ||
| 3 | NKRO_ENABLE ?= no # USB Nkey Rollover - if this doesn't work, see here: https://github.com/tmk/tmk_keyboard/wiki/FAQ#nkro-doesnt-work | ||
| 4 | BACKLIGHT_ENABLE ?= yes # Enable keyboard backlight functionality | ||
| 5 | RGBLIGHT_ENABLE ?= no | ||
| 6 | |||
| 7 | ifndef QUANTUM_DIR | ||
| 8 | include ../../../Makefile | ||
| 9 | endif \ No newline at end of file | ||
diff --git a/keyboards/s60-x/keymaps/ansi_qwertz/Makefile b/keyboards/s60_x/keymaps/ansi_qwertz/Makefile index 6a078bcc3..6a078bcc3 100644 --- a/keyboards/s60-x/keymaps/ansi_qwertz/Makefile +++ b/keyboards/s60_x/keymaps/ansi_qwertz/Makefile | |||
diff --git a/keyboards/s60-x/keymaps/ansi_qwertz/config.h b/keyboards/s60_x/keymaps/ansi_qwertz/config.h index 6c01d579f..6c01d579f 100644 --- a/keyboards/s60-x/keymaps/ansi_qwertz/config.h +++ b/keyboards/s60_x/keymaps/ansi_qwertz/config.h | |||
diff --git a/keyboards/s60-x/keymaps/ansi_qwertz/docs/KB_US-International-Alternative.png b/keyboards/s60_x/keymaps/ansi_qwertz/docs/KB_US-International-Alternative.png index 168780c82..168780c82 100644 --- a/keyboards/s60-x/keymaps/ansi_qwertz/docs/KB_US-International-Alternative.png +++ b/keyboards/s60_x/keymaps/ansi_qwertz/docs/KB_US-International-Alternative.png | |||
| Binary files differ | |||
diff --git a/keyboards/s60-x/keymaps/ansi_qwertz/docs/KB_US-International-Alternative.svg b/keyboards/s60_x/keymaps/ansi_qwertz/docs/KB_US-International-Alternative.svg index f03858993..f03858993 100644 --- a/keyboards/s60-x/keymaps/ansi_qwertz/docs/KB_US-International-Alternative.svg +++ b/keyboards/s60_x/keymaps/ansi_qwertz/docs/KB_US-International-Alternative.svg | |||
diff --git a/keyboards/s60-x/keymaps/ansi_qwertz/docs/KB_US-International-Alternative.svg.2016_08_18_09_06_36.0.svg b/keyboards/s60_x/keymaps/ansi_qwertz/docs/KB_US-International-Alternative.svg.2016_08_18_09_06_36.0.svg index 2304b2a4c..2304b2a4c 100644 --- a/keyboards/s60-x/keymaps/ansi_qwertz/docs/KB_US-International-Alternative.svg.2016_08_18_09_06_36.0.svg +++ b/keyboards/s60_x/keymaps/ansi_qwertz/docs/KB_US-International-Alternative.svg.2016_08_18_09_06_36.0.svg | |||
diff --git a/keyboards/s60-x/keymaps/ansi_qwertz/docs/KB_US-International.png b/keyboards/s60_x/keymaps/ansi_qwertz/docs/KB_US-International.png index 875eb3652..875eb3652 100644 --- a/keyboards/s60-x/keymaps/ansi_qwertz/docs/KB_US-International.png +++ b/keyboards/s60_x/keymaps/ansi_qwertz/docs/KB_US-International.png | |||
| Binary files differ | |||
diff --git a/keyboards/s60-x/keymaps/ansi_qwertz/docs/KB_US-International.svg b/keyboards/s60_x/keymaps/ansi_qwertz/docs/KB_US-International.svg index 1ca6a9c87..1ca6a9c87 100644 --- a/keyboards/s60-x/keymaps/ansi_qwertz/docs/KB_US-International.svg +++ b/keyboards/s60_x/keymaps/ansi_qwertz/docs/KB_US-International.svg | |||
diff --git a/keyboards/s60-x/keymaps/ansi_qwertz/docs/base_layer.PNG b/keyboards/s60_x/keymaps/ansi_qwertz/docs/base_layer.PNG index c730c2d65..c730c2d65 100644 --- a/keyboards/s60-x/keymaps/ansi_qwertz/docs/base_layer.PNG +++ b/keyboards/s60_x/keymaps/ansi_qwertz/docs/base_layer.PNG | |||
| Binary files differ | |||
diff --git a/keyboards/s60-x/keymaps/ansi_qwertz/docs/function_layer.PNG b/keyboards/s60_x/keymaps/ansi_qwertz/docs/function_layer.PNG index fae2439ca..fae2439ca 100644 --- a/keyboards/s60-x/keymaps/ansi_qwertz/docs/function_layer.PNG +++ b/keyboards/s60_x/keymaps/ansi_qwertz/docs/function_layer.PNG | |||
| Binary files differ | |||
diff --git a/keyboards/s60-x/keymaps/ansi_qwertz/docs/gaming_layer.PNG b/keyboards/s60_x/keymaps/ansi_qwertz/docs/gaming_layer.PNG index 59b202be2..59b202be2 100644 --- a/keyboards/s60-x/keymaps/ansi_qwertz/docs/gaming_layer.PNG +++ b/keyboards/s60_x/keymaps/ansi_qwertz/docs/gaming_layer.PNG | |||
| Binary files differ | |||
diff --git a/keyboards/s60-x/keymaps/ansi_qwertz/keymap.c b/keyboards/s60_x/keymaps/ansi_qwertz/keymap.c index 317a245be..ebb3aece3 100644 --- a/keyboards/s60-x/keymaps/ansi_qwertz/keymap.c +++ b/keyboards/s60_x/keymaps/ansi_qwertz/keymap.c | |||
| @@ -14,7 +14,7 @@ You should have received a copy of the GNU General Public License | |||
| 14 | along with this program. If not, see <http://www.gnu.org/licenses/>. | 14 | along with this program. If not, see <http://www.gnu.org/licenses/>. |
| 15 | */ | 15 | */ |
| 16 | 16 | ||
| 17 | #include "s60-x.h" | 17 | #include "s60_x.h" |
| 18 | 18 | ||
| 19 | //make keymap a little easier to read | 19 | //make keymap a little easier to read |
| 20 | #define _______ KC_TRNS | 20 | #define _______ KC_TRNS |
diff --git a/keyboards/s60-x/keymaps/ansi_qwertz/readme.md b/keyboards/s60_x/keymaps/ansi_qwertz/readme.md index b22010612..b22010612 100644 --- a/keyboards/s60-x/keymaps/ansi_qwertz/readme.md +++ b/keyboards/s60_x/keymaps/ansi_qwertz/readme.md | |||
diff --git a/keyboards/s60-x/keymaps/custom/keymap.c b/keyboards/s60_x/keymaps/custom/keymap.c index fb2a40b85..66eac3335 100644 --- a/keyboards/s60-x/keymaps/custom/keymap.c +++ b/keyboards/s60_x/keymaps/custom/keymap.c | |||
| @@ -1,4 +1,4 @@ | |||
| 1 | #include "s60-x.h" | 1 | #include "s60_x.h" |
| 2 | 2 | ||
| 3 | /* Main layer: Test layout, using all keys. | 3 | /* Main layer: Test layout, using all keys. |
| 4 | 4 | ||
diff --git a/keyboards/s60-x/keymaps/custom/readme.md b/keyboards/s60_x/keymaps/custom/readme.md index cf87bd915..cf87bd915 100644 --- a/keyboards/s60-x/keymaps/custom/readme.md +++ b/keyboards/s60_x/keymaps/custom/readme.md | |||
diff --git a/keyboards/s60-x/keymaps/dbroqua/keymap.c b/keyboards/s60_x/keymaps/dbroqua/keymap.c index 940119e52..8d1887e75 100644 --- a/keyboards/s60-x/keymaps/dbroqua/keymap.c +++ b/keyboards/s60_x/keymaps/dbroqua/keymap.c | |||
| @@ -1,4 +1,4 @@ | |||
| 1 | #include "s60-x.h" | 1 | #include "s60_x.h" |
| 2 | 2 | ||
| 3 | #define _DEFAULT 0 | 3 | #define _DEFAULT 0 |
| 4 | #define _FN 1 | 4 | #define _FN 1 |
| @@ -66,19 +66,14 @@ const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = { | |||
| 66 | */ | 66 | */ |
| 67 | [_SFX] = KEYMAP( | 67 | [_SFX] = KEYMAP( |
| 68 | ______, ______, ______, ______, ______, ______, ______, ______, ______, ______, ______, ______, ______, ______, ______, \ | 68 | ______, ______, ______, ______, ______, ______, ______, ______, ______, ______, ______, ______, ______, ______, ______, \ |
| 69 | ______, ______, ______, ______, ______, ______, ______, ______, ______, ______, ______, ______, ______, ______, \ | 69 | ______, BL_TOGG,BL_STEP,BL_DEC, BL_INC, ______, ______, ______, ______, ______, ______, ______, ______, ______, \ |
| 70 | ______, F(0), F(1), ______, ______, ______, ______, ______, ______, ______, ______, ______, ______, ______, \ | 70 | ______, F(0), F(1), ______, ______, ______, ______, ______, ______, ______, ______, ______, ______, ______, \ |
| 71 | ______, ______, F(2), F(3), F(4), F(5), F(6), F(7), ______, ______, ______, ______, ______, ______, ______, \ | 71 | ______, ______, F(2), F(3), F(4), F(5), F(6), F(7), ______, ______, ______, ______, ______, ______, ______, \ |
| 72 | ______, ______, ______, ______, ______, ______, ______, ______ \ | 72 | ______, ______, ______, ______, ______, ______, ______, ______ \ |
| 73 | ) | 73 | ) |
| 74 | }; | 74 | }; |
| 75 | 75 | ||
| 76 | const macro_t *action_get_macro(keyrecord_t *record, uint8_t id, uint8_t opt) { | 76 | const macro_t *action_get_macro(keyrecord_t *record, uint8_t id, uint8_t opt) { |
| 77 | keyevent_t event = record->event; | ||
| 78 | |||
| 79 | switch (id) { | ||
| 80 | |||
| 81 | } | ||
| 82 | return MACRO_NONE; | 77 | return MACRO_NONE; |
| 83 | } | 78 | } |
| 84 | 79 | ||
| @@ -108,42 +103,58 @@ void action_function(keyrecord_t *record, uint8_t id, uint8_t opt) { | |||
| 108 | switch (id) { | 103 | switch (id) { |
| 109 | case RGBLED_TOGGLE: | 104 | case RGBLED_TOGGLE: |
| 110 | if (record->event.pressed) { | 105 | if (record->event.pressed) { |
| 106 | #ifdef RGB_ENABLE | ||
| 111 | rgblight_toggle(); | 107 | rgblight_toggle(); |
| 108 | #endif | ||
| 112 | } | 109 | } |
| 113 | break; | 110 | break; |
| 114 | case RGBLED_INCREASE_HUE: | 111 | case RGBLED_INCREASE_HUE: |
| 115 | if (record->event.pressed) { | 112 | if (record->event.pressed) { |
| 113 | #ifdef RGB_ENABLE | ||
| 116 | rgblight_increase_hue(); | 114 | rgblight_increase_hue(); |
| 115 | #endif | ||
| 117 | } | 116 | } |
| 118 | break; | 117 | break; |
| 119 | case RGBLED_DECREASE_HUE: | 118 | case RGBLED_DECREASE_HUE: |
| 120 | if (record->event.pressed) { | 119 | if (record->event.pressed) { |
| 120 | #ifdef RGB_ENABLE | ||
| 121 | rgblight_decrease_hue(); | 121 | rgblight_decrease_hue(); |
| 122 | #endif | ||
| 122 | } | 123 | } |
| 123 | break; | 124 | break; |
| 124 | case RGBLED_INCREASE_SAT: | 125 | case RGBLED_INCREASE_SAT: |
| 125 | if (record->event.pressed) { | 126 | if (record->event.pressed) { |
| 127 | #ifdef RGB_ENABLE | ||
| 126 | rgblight_increase_sat(); | 128 | rgblight_increase_sat(); |
| 129 | #endif | ||
| 127 | } | 130 | } |
| 128 | break; | 131 | break; |
| 129 | case RGBLED_DECREASE_SAT: | 132 | case RGBLED_DECREASE_SAT: |
| 130 | if (record->event.pressed) { | 133 | if (record->event.pressed) { |
| 134 | #ifdef RGB_ENABLE | ||
| 131 | rgblight_decrease_sat(); | 135 | rgblight_decrease_sat(); |
| 136 | #endif | ||
| 132 | } | 137 | } |
| 133 | break; | 138 | break; |
| 134 | case RGBLED_INCREASE_VAL: | 139 | case RGBLED_INCREASE_VAL: |
| 135 | if (record->event.pressed) { | 140 | if (record->event.pressed) { |
| 141 | #ifdef RGB_ENABLE | ||
| 136 | rgblight_increase_val(); | 142 | rgblight_increase_val(); |
| 143 | #endif | ||
| 137 | } | 144 | } |
| 138 | break; | 145 | break; |
| 139 | case RGBLED_DECREASE_VAL: | 146 | case RGBLED_DECREASE_VAL: |
| 140 | if (record->event.pressed) { | 147 | if (record->event.pressed) { |
| 148 | #ifdef RGB_ENABLE | ||
| 141 | rgblight_decrease_val(); | 149 | rgblight_decrease_val(); |
| 150 | #endif | ||
| 142 | } | 151 | } |
| 143 | break; | 152 | break; |
| 144 | case RGBLED_STEP_MODE: | 153 | case RGBLED_STEP_MODE: |
| 145 | if (record->event.pressed) { | 154 | if (record->event.pressed) { |
| 155 | #ifdef RGB_ENABLE | ||
| 146 | rgblight_step(); | 156 | rgblight_step(); |
| 157 | #endif | ||
| 147 | } | 158 | } |
| 148 | break; | 159 | break; |
| 149 | } | 160 | } |
diff --git a/keyboards/s60-x/keymaps/default/keymap.c b/keyboards/s60_x/keymaps/default/keymap.c index eb0c6b056..a616e79b3 100644 --- a/keyboards/s60-x/keymaps/default/keymap.c +++ b/keyboards/s60_x/keymaps/default/keymap.c | |||
| @@ -1,4 +1,4 @@ | |||
| 1 | #include "s60-x.h" | 1 | #include "s60_x.h" |
| 2 | 2 | ||
| 3 | /* 0: Main layer | 3 | /* 0: Main layer |
| 4 | ┌─────┬─────┬─────┬─────┬─────┬─────┬─────┬─────┬─────┬─────┬─────┬─────┬─────┬─────┬─────┐ | 4 | ┌─────┬─────┬─────┬─────┬─────┬─────┬─────┬─────┬─────┬─────┬─────┬─────┬─────┬─────┬─────┐ |
diff --git a/keyboards/s60-x/keymaps/default/readme.md b/keyboards/s60_x/keymaps/default/readme.md index 01cda9df9..01cda9df9 100644 --- a/keyboards/s60-x/keymaps/default/readme.md +++ b/keyboards/s60_x/keymaps/default/readme.md | |||
diff --git a/keyboards/s60-x/keymaps/hasu/keymap.c b/keyboards/s60_x/keymaps/hasu/keymap.c index cbeaae028..ac90dc6b2 100644 --- a/keyboards/s60-x/keymaps/hasu/keymap.c +++ b/keyboards/s60_x/keymaps/hasu/keymap.c | |||
| @@ -1,4 +1,4 @@ | |||
| 1 | #include "s60-x.h" | 1 | #include "s60_x.h" |
| 2 | 2 | ||
| 3 | /* | 3 | /* |
| 4 | * Hasu | 4 | * Hasu |
diff --git a/keyboards/s60-x/keymaps/hasu/readme.md b/keyboards/s60_x/keymaps/hasu/readme.md index 64969b616..64969b616 100644 --- a/keyboards/s60-x/keymaps/hasu/readme.md +++ b/keyboards/s60_x/keymaps/hasu/readme.md | |||
diff --git a/keyboards/s60-x/keymaps/hhkb/keymap.c b/keyboards/s60_x/keymaps/hhkb/keymap.c index 9afd1247f..dc1bfffc4 100644 --- a/keyboards/s60-x/keymaps/hhkb/keymap.c +++ b/keyboards/s60_x/keymaps/hhkb/keymap.c | |||
| @@ -1,4 +1,4 @@ | |||
| 1 | #include "s60-x.h" | 1 | #include "s60_x.h" |
| 2 | 2 | ||
| 3 | /* | 3 | /* |
| 4 | * HHKB Layout | 4 | * HHKB Layout |
diff --git a/keyboards/s60-x/keymaps/hhkb/readme.md b/keyboards/s60_x/keymaps/hhkb/readme.md index 2bceb26dd..2bceb26dd 100644 --- a/keyboards/s60-x/keymaps/hhkb/readme.md +++ b/keyboards/s60_x/keymaps/hhkb/readme.md | |||
diff --git a/keyboards/s60-x/keymaps/iso/keymap.c b/keyboards/s60_x/keymaps/iso/keymap.c index 43a9c48b0..f6fc74172 100644 --- a/keyboards/s60-x/keymaps/iso/keymap.c +++ b/keyboards/s60_x/keymaps/iso/keymap.c | |||
| @@ -1,4 +1,4 @@ | |||
| 1 | #include "s60-x.h" | 1 | #include "s60_x.h" |
| 2 | 2 | ||
| 3 | /* 0: Main layer | 3 | /* 0: Main layer |
| 4 | ┌─────┬─────┬─────┬─────┬─────┬─────┬─────┬─────┬─────┬─────┬─────┬─────┬─────┬─────┬─────┐ | 4 | ┌─────┬─────┬─────┬─────┬─────┬─────┬─────┬─────┬─────┬─────┬─────┬─────┬─────┬─────┬─────┐ |
diff --git a/keyboards/s60-x/keymaps/iso/readme.md b/keyboards/s60_x/keymaps/iso/readme.md index 2c06bf86f..2c06bf86f 100644 --- a/keyboards/s60-x/keymaps/iso/readme.md +++ b/keyboards/s60_x/keymaps/iso/readme.md | |||
diff --git a/keyboards/s60-x/keymaps/jpec/keymap.c b/keyboards/s60_x/keymaps/jpec/keymap.c index c8fc13328..21e77c10b 100644 --- a/keyboards/s60-x/keymaps/jpec/keymap.c +++ b/keyboards/s60_x/keymaps/jpec/keymap.c | |||
| @@ -14,7 +14,7 @@ You should have received a copy of the GNU General Public License | |||
| 14 | along with this program. If not, see <http://www.gnu.org/licenses/>. | 14 | along with this program. If not, see <http://www.gnu.org/licenses/>. |
| 15 | */ | 15 | */ |
| 16 | 16 | ||
| 17 | #include "s60-x.h" | 17 | #include "s60_x.h" |
| 18 | 18 | ||
| 19 | const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = { | 19 | const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = { |
| 20 | /* Layout 0: Default Layer | 20 | /* Layout 0: Default Layer |
diff --git a/keyboards/s60-x/keymaps/jpec/readme.md b/keyboards/s60_x/keymaps/jpec/readme.md index 73318dad7..73318dad7 100644 --- a/keyboards/s60-x/keymaps/jpec/readme.md +++ b/keyboards/s60_x/keymaps/jpec/readme.md | |||
diff --git a/keyboards/s60-x/keymaps/plain/keymap.c b/keyboards/s60_x/keymaps/plain/keymap.c index 790ac88e7..d5075a07b 100644 --- a/keyboards/s60-x/keymaps/plain/keymap.c +++ b/keyboards/s60_x/keymaps/plain/keymap.c | |||
| @@ -1,4 +1,4 @@ | |||
| 1 | #include "s60-x.h" | 1 | #include "s60_x.h" |
| 2 | 2 | ||
| 3 | /* Main layer: | 3 | /* Main layer: |
| 4 | ┌─────┬─────┬─────┬─────┬─────┬─────┬─────┬─────┬─────┬─────┬─────┬─────┬─────┬─────┬─────┐ | 4 | ┌─────┬─────┬─────┬─────┬─────┬─────┬─────┬─────┬─────┬─────┬─────┬─────┬─────┬─────┬─────┐ |
diff --git a/keyboards/s60-x/keymaps/plain/readme.md b/keyboards/s60_x/keymaps/plain/readme.md index ab13323e3..ab13323e3 100644 --- a/keyboards/s60-x/keymaps/plain/readme.md +++ b/keyboards/s60_x/keymaps/plain/readme.md | |||
diff --git a/keyboards/s60-x/keymaps/poker/keymap.c b/keyboards/s60_x/keymaps/poker/keymap.c index 0a8691792..5b917704e 100644 --- a/keyboards/s60-x/keymaps/poker/keymap.c +++ b/keyboards/s60_x/keymaps/poker/keymap.c | |||
| @@ -1,4 +1,4 @@ | |||
| 1 | #include "s60-x.h" | 1 | #include "s60_x.h" |
| 2 | 2 | ||
| 3 | const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = { | 3 | const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = { |
| 4 | /* 0: qwerty | 4 | /* 0: qwerty |
diff --git a/keyboards/s60-x/keymaps/poker/readme.md b/keyboards/s60_x/keymaps/poker/readme.md index 0d8be9d0f..0d8be9d0f 100644 --- a/keyboards/s60-x/keymaps/poker/readme.md +++ b/keyboards/s60_x/keymaps/poker/readme.md | |||
diff --git a/keyboards/s60-x/keymaps/poker_bit/keymap.c b/keyboards/s60_x/keymaps/poker_bit/keymap.c index 7626038f4..1f7b1b633 100644 --- a/keyboards/s60-x/keymaps/poker_bit/keymap.c +++ b/keyboards/s60_x/keymaps/poker_bit/keymap.c | |||
| @@ -1,4 +1,4 @@ | |||
| 1 | #include "s60-x.h" | 1 | #include "s60_x.h" |
| 2 | 2 | ||
| 3 | // Poker fix with toggle and bit operation | 3 | // Poker fix with toggle and bit operation |
| 4 | // Fn + Esc = ` | 4 | // Fn + Esc = ` |
diff --git a/keyboards/s60-x/keymaps/poker_bit/readme.md b/keyboards/s60_x/keymaps/poker_bit/readme.md index 0d8be9d0f..0d8be9d0f 100644 --- a/keyboards/s60-x/keymaps/poker_bit/readme.md +++ b/keyboards/s60_x/keymaps/poker_bit/readme.md | |||
diff --git a/keyboards/s60-x/keymaps/poker_set/keymap.c b/keyboards/s60_x/keymaps/poker_set/keymap.c index 09423e75b..52eee5321 100644 --- a/keyboards/s60-x/keymaps/poker_set/keymap.c +++ b/keyboards/s60_x/keymaps/poker_set/keymap.c | |||
| @@ -1,4 +1,4 @@ | |||
| 1 | #include "s60-x.h" | 1 | #include "s60_x.h" |
| 2 | 2 | ||
| 3 | // Poker fix with set(state transition) | 3 | // Poker fix with set(state transition) |
| 4 | // Fn + Esc = ` | 4 | // Fn + Esc = ` |
diff --git a/keyboards/s60-x/keymaps/poker_set/readme.md b/keyboards/s60_x/keymaps/poker_set/readme.md index 0d8be9d0f..0d8be9d0f 100644 --- a/keyboards/s60-x/keymaps/poker_set/readme.md +++ b/keyboards/s60_x/keymaps/poker_set/readme.md | |||
diff --git a/keyboards/s60-x/keymaps/spacefn/keymap.c b/keyboards/s60_x/keymaps/spacefn/keymap.c index b6dc7ca7e..28369580e 100644 --- a/keyboards/s60-x/keymaps/spacefn/keymap.c +++ b/keyboards/s60_x/keymaps/spacefn/keymap.c | |||
| @@ -1,4 +1,4 @@ | |||
| 1 | #include "s60-x.h" | 1 | #include "s60_x.h" |
| 2 | 2 | ||
| 3 | /* | 3 | /* |
| 4 | * SpaceFN | 4 | * SpaceFN |
diff --git a/keyboards/s60-x/keymaps/spacefn/readme.md b/keyboards/s60_x/keymaps/spacefn/readme.md index d04bd9486..d04bd9486 100644 --- a/keyboards/s60-x/keymaps/spacefn/readme.md +++ b/keyboards/s60_x/keymaps/spacefn/readme.md | |||
diff --git a/keyboards/s60-x/readme.md b/keyboards/s60_x/readme.md index 408ad13ac..e30b2f76c 100644 --- a/keyboards/s60-x/readme.md +++ b/keyboards/s60_x/readme.md | |||
| @@ -5,11 +5,6 @@ DIY compact keyboard designed by VinnyCordeiro for Sentraq. Most of the keymaps | |||
| 5 | ## S60X Resources | 5 | ## S60X Resources |
| 6 | - [Massdrop page](https://www.massdrop.com/buy/sentraq-60-diy-keyboard-kit?mode=guest_open) | 6 | - [Massdrop page](https://www.massdrop.com/buy/sentraq-60-diy-keyboard-kit?mode=guest_open) |
| 7 | 7 | ||
| 8 | ## Quickstart | ||
| 9 | |||
| 10 | If you just want to test a few layouts, the archive [s60-x_precompiled.zip](s60-x_precompiled.zip) contains pre-compiled .hex-files for all available keymaps. Not all of them are tested. | ||
| 11 | You only need to flash them onto your keyboard, which is explained below, there's no need to setup a build environment. For a full list | ||
| 12 | |||
| 13 | ## Flashing your keyboard | 8 | ## Flashing your keyboard |
| 14 | The recommended programs for flashing your keyboard are [Atmel FLIP](http://www.atmel.com/tools/FLIP.aspx) (Windows) and [dfu-programmer](http://dfu-programmer.sourceforge.net/) (Linux/Windows). | 9 | The recommended programs for flashing your keyboard are [Atmel FLIP](http://www.atmel.com/tools/FLIP.aspx) (Windows) and [dfu-programmer](http://dfu-programmer.sourceforge.net/) (Linux/Windows). |
| 15 | 10 | ||
diff --git a/keyboards/s60-x/rgb/Makefile b/keyboards/s60_x/rgb/Makefile index bd09e5885..bd09e5885 100644 --- a/keyboards/s60-x/rgb/Makefile +++ b/keyboards/s60_x/rgb/Makefile | |||
diff --git a/keyboards/s60-x/rgb/config.h b/keyboards/s60_x/rgb/config.h index 26b246e57..81efc87d5 100644 --- a/keyboards/s60-x/rgb/config.h +++ b/keyboards/s60_x/rgb/config.h | |||
| @@ -9,12 +9,13 @@ | |||
| 9 | /* key matrix pins */ | 9 | /* key matrix pins */ |
| 10 | #define MATRIX_ROW_PINS { B5, B4, D7, D6, D4 } | 10 | #define MATRIX_ROW_PINS { B5, B4, D7, D6, D4 } |
| 11 | #define MATRIX_COL_PINS { D0, D1, D2, D3, D5, B6, C6, C7, F1, F0, E6, B3, B2, B1, B0 } | 11 | #define MATRIX_COL_PINS { D0, D1, D2, D3, D5, B6, C6, C7, F1, F0, E6, B3, B2, B1, B0 } |
| 12 | #define UNUSED_PINS | ||
| 12 | 13 | ||
| 13 | /* number of backlight levels */ | 14 | /* Mechanical locking support. Use KC_LCAP, KC_LNUM or KC_LSCR instead in keymap */ |
| 14 | #define BACKLIGHT_PIN B7 | 15 | #define LOCKING_SUPPORT_ENABLE |
| 15 | #ifdef BACKLIGHT_PIN | 16 | |
| 16 | #define BACKLIGHT_LEVELS 3 | 17 | /* Locking resynchronize hack */ |
| 17 | #endif | 18 | #define LOCKING_RESYNC_ENABLE |
| 18 | 19 | ||
| 19 | /* prevent stuck modifiers */ | 20 | /* prevent stuck modifiers */ |
| 20 | #define PREVENT_STUCK_MODIFIERS | 21 | #define PREVENT_STUCK_MODIFIERS |
diff --git a/keyboards/s60-x/rgb/rgb.c b/keyboards/s60_x/rgb/rgb.c index 0117e14ae..0117e14ae 100644 --- a/keyboards/s60-x/rgb/rgb.c +++ b/keyboards/s60_x/rgb/rgb.c | |||
diff --git a/keyboards/s60-x/rgb/rgb.h b/keyboards/s60_x/rgb/rgb.h index cb7a5f567..cb7a5f567 100644 --- a/keyboards/s60-x/rgb/rgb.h +++ b/keyboards/s60_x/rgb/rgb.h | |||
diff --git a/keyboards/s60_x/rgb/rules.mk b/keyboards/s60_x/rgb/rules.mk new file mode 100644 index 000000000..6953cc6d6 --- /dev/null +++ b/keyboards/s60_x/rgb/rules.mk | |||
| @@ -0,0 +1,9 @@ | |||
| 1 | CONSOLE_ENABLE ?= no # Console for debug(+400) | ||
| 2 | COMMAND_ENABLE ?= no # Commands for debug and configuration | ||
| 3 | NKRO_ENABLE ?= yes # USB Nkey Rollover - if this doesn't work, see here: https://github.com/tmk/tmk_keyboard/wiki/FAQ#nkro-doesnt-work | ||
| 4 | BACKLIGHT_ENABLE ?= yes # Enable keyboard backlight functionality | ||
| 5 | RGBLIGHT_ENABLE ?= yes # Enable RGB light | ||
| 6 | |||
| 7 | ifndef QUANTUM_DIR | ||
| 8 | include ../../../Makefile | ||
| 9 | endif \ No newline at end of file | ||
diff --git a/keyboards/s60-x/rules.mk b/keyboards/s60_x/rules.mk index 7ec93933a..0c568efe9 100644 --- a/keyboards/s60-x/rules.mk +++ b/keyboards/s60_x/rules.mk | |||
| @@ -56,13 +56,9 @@ OPT_DEFS += -DBOOTLOADER_SIZE=4096 | |||
| 56 | BOOTMAGIC_ENABLE ?= yes # Virtual DIP switch configuration(+1000) | 56 | BOOTMAGIC_ENABLE ?= yes # Virtual DIP switch configuration(+1000) |
| 57 | MOUSEKEY_ENABLE ?= yes # Mouse keys(+4700) | 57 | MOUSEKEY_ENABLE ?= yes # Mouse keys(+4700) |
| 58 | EXTRAKEY_ENABLE ?= yes # Audio control and System control(+450) | 58 | EXTRAKEY_ENABLE ?= yes # Audio control and System control(+450) |
| 59 | CONSOLE_ENABLE ?= yes # Console for debug(+400) | ||
| 60 | COMMAND_ENABLE ?= yes # Commands for debug and configuration | ||
| 61 | # Do not enable SLEEP_LED_ENABLE. it uses the same timer as BACKLIGHT_ENABLE | 59 | # Do not enable SLEEP_LED_ENABLE. it uses the same timer as BACKLIGHT_ENABLE |
| 62 | SLEEP_LED_ENABLE ?= no # Breathing sleep LED during USB suspend | 60 | SLEEP_LED_ENABLE ?= no # Breathing sleep LED during USB suspend |
| 63 | # if this doesn't work, see here: https://github.com/tmk/tmk_keyboard/wiki/FAQ#nkro-doesnt-work | 61 | # if this doesn't work, see here: https://github.com/tmk/tmk_keyboard/wiki/FAQ#nkro-doesnt-work |
| 64 | NKRO_ENABLE ?= no # USB Nkey Rollover | ||
| 65 | BACKLIGHT_ENABLE ?= no # Enable keyboard backlight functionality on B7 by default | ||
| 66 | MIDI_ENABLE ?= no # MIDI controls | 62 | MIDI_ENABLE ?= no # MIDI controls |
| 67 | UNICODE_ENABLE ?= no # Unicode | 63 | UNICODE_ENABLE ?= no # Unicode |
| 68 | BLUETOOTH_ENABLE ?= no # Enable Bluetooth with the Adafruit EZ-Key HID | 64 | BLUETOOTH_ENABLE ?= no # Enable Bluetooth with the Adafruit EZ-Key HID |
diff --git a/keyboards/s60_x/s60_x.c b/keyboards/s60_x/s60_x.c new file mode 100644 index 000000000..595418bfa --- /dev/null +++ b/keyboards/s60_x/s60_x.c | |||
| @@ -0,0 +1 @@ | |||
| #include "s60_x.h" \ No newline at end of file | |||
diff --git a/keyboards/s60-x/s60-x.h b/keyboards/s60_x/s60_x.h index 5bf8cfcef..5bf8cfcef 100644 --- a/keyboards/s60-x/s60-x.h +++ b/keyboards/s60_x/s60_x.h | |||
diff --git a/keyboards/xd60/readme.md b/keyboards/xd60/readme.md index 224498caa..dcc45ead2 100644 --- a/keyboards/xd60/readme.md +++ b/keyboards/xd60/readme.md | |||
| @@ -1,6 +1,6 @@ | |||
| 1 | # QMK Firmware for XIUDI's 60% XD60 PCB | 1 | # QMK Firmware for XIUDI's 60% XD60 PCB |
| 2 | 2 | ||
| 3 |  | 3 |  |
| 4 | 4 | ||
| 5 | ## Quantum MK Firmware | 5 | ## Quantum MK Firmware |
| 6 | For the full Quantum feature list, see [the parent readme.md](/readme.md). | 6 | For the full Quantum feature list, see [the parent readme.md](/readme.md). |
diff --git a/quantum/dynamic_macro.h b/quantum/dynamic_macro.h index 64093f293..f242405de 100644 --- a/quantum/dynamic_macro.h +++ b/quantum/dynamic_macro.h | |||
| @@ -40,6 +40,7 @@ | |||
| 40 | enum dynamic_macro_keycodes { | 40 | enum dynamic_macro_keycodes { |
| 41 | DYN_REC_START1 = DYNAMIC_MACRO_RANGE, | 41 | DYN_REC_START1 = DYNAMIC_MACRO_RANGE, |
| 42 | DYN_REC_START2, | 42 | DYN_REC_START2, |
| 43 | DYN_REC_STOP, | ||
| 43 | DYN_MACRO_PLAY1, | 44 | DYN_MACRO_PLAY1, |
| 44 | DYN_MACRO_PLAY2, | 45 | DYN_MACRO_PLAY2, |
| 45 | }; | 46 | }; |
| @@ -47,11 +48,22 @@ enum dynamic_macro_keycodes { | |||
| 47 | /* Blink the LEDs to notify the user about some event. */ | 48 | /* Blink the LEDs to notify the user about some event. */ |
| 48 | void dynamic_macro_led_blink(void) | 49 | void dynamic_macro_led_blink(void) |
| 49 | { | 50 | { |
| 51 | #ifdef BACKLIGHT_ENABLE | ||
| 50 | backlight_toggle(); | 52 | backlight_toggle(); |
| 51 | _delay_ms(100); | 53 | _delay_ms(100); |
| 52 | backlight_toggle(); | 54 | backlight_toggle(); |
| 55 | #endif | ||
| 53 | } | 56 | } |
| 54 | 57 | ||
| 58 | /* Convenience macros used for retrieving the debug info. All of them | ||
| 59 | * need a `direction` variable accessible at the call site. | ||
| 60 | */ | ||
| 61 | #define DYNAMIC_MACRO_CURRENT_SLOT() (direction > 0 ? 1 : 2) | ||
| 62 | #define DYNAMIC_MACRO_CURRENT_LENGTH(BEGIN, POINTER) \ | ||
| 63 | ((int)(direction * ((POINTER) - (BEGIN)))) | ||
| 64 | #define DYNAMIC_MACRO_CURRENT_CAPACITY(BEGIN, END2) \ | ||
| 65 | ((int)(direction * ((END2) - (BEGIN)) + 1)) | ||
| 66 | |||
| 55 | /** | 67 | /** |
| 56 | * Start recording of the dynamic macro. | 68 | * Start recording of the dynamic macro. |
| 57 | * | 69 | * |
| @@ -61,6 +73,8 @@ void dynamic_macro_led_blink(void) | |||
| 61 | void dynamic_macro_record_start( | 73 | void dynamic_macro_record_start( |
| 62 | keyrecord_t **macro_pointer, keyrecord_t *macro_buffer) | 74 | keyrecord_t **macro_pointer, keyrecord_t *macro_buffer) |
| 63 | { | 75 | { |
| 76 | dprintln("dynamic macro recording: started"); | ||
| 77 | |||
| 64 | dynamic_macro_led_blink(); | 78 | dynamic_macro_led_blink(); |
| 65 | 79 | ||
| 66 | clear_keyboard(); | 80 | clear_keyboard(); |
| @@ -78,6 +92,8 @@ void dynamic_macro_record_start( | |||
| 78 | void dynamic_macro_play( | 92 | void dynamic_macro_play( |
| 79 | keyrecord_t *macro_buffer, keyrecord_t *macro_end, int8_t direction) | 93 | keyrecord_t *macro_buffer, keyrecord_t *macro_end, int8_t direction) |
| 80 | { | 94 | { |
| 95 | dprintf("dynamic macro: slot %d playback\n", DYNAMIC_MACRO_CURRENT_SLOT()); | ||
| 96 | |||
| 81 | uint32_t saved_layer_state = layer_state; | 97 | uint32_t saved_layer_state = layer_state; |
| 82 | 98 | ||
| 83 | clear_keyboard(); | 99 | clear_keyboard(); |
| @@ -96,35 +112,68 @@ void dynamic_macro_play( | |||
| 96 | /** | 112 | /** |
| 97 | * Record a single key in a dynamic macro. | 113 | * Record a single key in a dynamic macro. |
| 98 | * | 114 | * |
| 115 | * @param macro_buffer[in] The start of the used macro buffer. | ||
| 99 | * @param macro_pointer[in,out] The current buffer position. | 116 | * @param macro_pointer[in,out] The current buffer position. |
| 100 | * @param macro_end2[in] The end of the other macro which shouldn't be overwritten. | 117 | * @param macro2_end[in] The end of the other macro. |
| 101 | * @param direction[in] Either +1 or -1, which way to iterate the buffer. | 118 | * @param direction[in] Either +1 or -1, which way to iterate the buffer. |
| 102 | * @param record[in] The current keypress. | 119 | * @param record[in] The current keypress. |
| 103 | */ | 120 | */ |
| 104 | void dynamic_macro_record_key( | 121 | void dynamic_macro_record_key( |
| 122 | keyrecord_t *macro_buffer, | ||
| 105 | keyrecord_t **macro_pointer, | 123 | keyrecord_t **macro_pointer, |
| 106 | keyrecord_t *macro_end2, | 124 | keyrecord_t *macro2_end, |
| 107 | int8_t direction, | 125 | int8_t direction, |
| 108 | keyrecord_t *record) | 126 | keyrecord_t *record) |
| 109 | { | 127 | { |
| 110 | if (*macro_pointer + direction != macro_end2) { | 128 | /* If we've just started recording, ignore all the key releases. */ |
| 129 | if (!record->event.pressed && *macro_pointer == macro_buffer) { | ||
| 130 | dprintln("dynamic macro: ignoring a leading key-up event"); | ||
| 131 | return; | ||
| 132 | } | ||
| 133 | |||
| 134 | /* The other end of the other macro is the last buffer element it | ||
| 135 | * is safe to use before overwriting the other macro. | ||
| 136 | */ | ||
| 137 | if (*macro_pointer - direction != macro2_end) { | ||
| 111 | **macro_pointer = *record; | 138 | **macro_pointer = *record; |
| 112 | *macro_pointer += direction; | 139 | *macro_pointer += direction; |
| 113 | } else { | 140 | } else { |
| 114 | /* Notify about the end of buffer. The blinks are paired | 141 | dynamic_macro_led_blink(); |
| 115 | * because they should happen on both down and up events. */ | ||
| 116 | backlight_toggle(); | ||
| 117 | } | 142 | } |
| 143 | |||
| 144 | dprintf( | ||
| 145 | "dynamic macro: slot %d length: %d/%d\n", | ||
| 146 | DYNAMIC_MACRO_CURRENT_SLOT(), | ||
| 147 | DYNAMIC_MACRO_CURRENT_LENGTH(macro_buffer, *macro_pointer), | ||
| 148 | DYNAMIC_MACRO_CURRENT_CAPACITY(macro_buffer, macro2_end)); | ||
| 118 | } | 149 | } |
| 119 | 150 | ||
| 120 | /** | 151 | /** |
| 121 | * End recording of the dynamic macro. Essentially just update the | 152 | * End recording of the dynamic macro. Essentially just update the |
| 122 | * pointer to the end of the macro. | 153 | * pointer to the end of the macro. |
| 123 | */ | 154 | */ |
| 124 | void dynamic_macro_record_end(keyrecord_t *macro_pointer, keyrecord_t **macro_end) | 155 | void dynamic_macro_record_end( |
| 156 | keyrecord_t *macro_buffer, | ||
| 157 | keyrecord_t *macro_pointer, | ||
| 158 | int8_t direction, | ||
| 159 | keyrecord_t **macro_end) | ||
| 125 | { | 160 | { |
| 126 | dynamic_macro_led_blink(); | 161 | dynamic_macro_led_blink(); |
| 127 | 162 | ||
| 163 | /* Do not save the keys being held when stopping the recording, | ||
| 164 | * i.e. the keys used to access the layer DYN_REC_STOP is on. | ||
| 165 | */ | ||
| 166 | while (macro_pointer != macro_buffer && | ||
| 167 | (macro_pointer - direction)->event.pressed) { | ||
| 168 | dprintln("dynamic macro: trimming a trailing key-down event"); | ||
| 169 | macro_pointer -= direction; | ||
| 170 | } | ||
| 171 | |||
| 172 | dprintf( | ||
| 173 | "dynamic macro: slot %d saved, length: %d\n", | ||
| 174 | DYNAMIC_MACRO_CURRENT_SLOT(), | ||
| 175 | DYNAMIC_MACRO_CURRENT_LENGTH(macro_buffer, macro_pointer)); | ||
| 176 | |||
| 128 | *macro_end = macro_pointer; | 177 | *macro_end = macro_pointer; |
| 129 | } | 178 | } |
| 130 | 179 | ||
| @@ -152,7 +201,7 @@ bool process_record_dynamic_macro(uint16_t keycode, keyrecord_t *record) | |||
| 152 | * ¯o_buffer macro_end | 201 | * ¯o_buffer macro_end |
| 153 | * v v | 202 | * v v |
| 154 | * +------------------------------------------------------------+ | 203 | * +------------------------------------------------------------+ |
| 155 | * |>>>>>> MACRO1 >>>>>>| |<<<<<<<<<<<<< MACRO2 <<<<<<<<<<<<<| | 204 | * |>>>>>> MACRO1 >>>>>> <<<<<<<<<<<<< MACRO2 <<<<<<<<<<<<<| |
| 156 | * +------------------------------------------------------------+ | 205 | * +------------------------------------------------------------+ |
| 157 | * ^ ^ | 206 | * ^ ^ |
| 158 | * r_macro_end r_macro_buffer | 207 | * r_macro_end r_macro_buffer |
| @@ -209,18 +258,17 @@ bool process_record_dynamic_macro(uint16_t keycode, keyrecord_t *record) | |||
| 209 | } else { | 258 | } else { |
| 210 | /* A macro is being recorded right now. */ | 259 | /* A macro is being recorded right now. */ |
| 211 | switch (keycode) { | 260 | switch (keycode) { |
| 212 | case MO(_DYN): | 261 | case DYN_REC_STOP: |
| 213 | /* Use the layer key used to access the macro recording as | 262 | /* Stop the macro recording. */ |
| 214 | * a stop button. */ | ||
| 215 | if (record->event.pressed) { /* Ignore the initial release | 263 | if (record->event.pressed) { /* Ignore the initial release |
| 216 | * just after the recoding | 264 | * just after the recoding |
| 217 | * starts. */ | 265 | * starts. */ |
| 218 | switch (macro_id) { | 266 | switch (macro_id) { |
| 219 | case 1: | 267 | case 1: |
| 220 | dynamic_macro_record_end(macro_pointer, ¯o_end); | 268 | dynamic_macro_record_end(macro_buffer, macro_pointer, +1, ¯o_end); |
| 221 | break; | 269 | break; |
| 222 | case 2: | 270 | case 2: |
| 223 | dynamic_macro_record_end(macro_pointer, &r_macro_end); | 271 | dynamic_macro_record_end(r_macro_buffer, macro_pointer, -1, &r_macro_end); |
| 224 | break; | 272 | break; |
| 225 | } | 273 | } |
| 226 | macro_id = 0; | 274 | macro_id = 0; |
| @@ -230,10 +278,10 @@ bool process_record_dynamic_macro(uint16_t keycode, keyrecord_t *record) | |||
| 230 | /* Store the key in the macro buffer and process it normally. */ | 278 | /* Store the key in the macro buffer and process it normally. */ |
| 231 | switch (macro_id) { | 279 | switch (macro_id) { |
| 232 | case 1: | 280 | case 1: |
| 233 | dynamic_macro_record_key(¯o_pointer, r_macro_end, +1, record); | 281 | dynamic_macro_record_key(macro_buffer, ¯o_pointer, r_macro_end, +1, record); |
| 234 | break; | 282 | break; |
| 235 | case 2: | 283 | case 2: |
| 236 | dynamic_macro_record_key(¯o_pointer, macro_end, -1, record); | 284 | dynamic_macro_record_key(r_macro_buffer, ¯o_pointer, macro_end, -1, record); |
| 237 | break; | 285 | break; |
| 238 | } | 286 | } |
| 239 | return true; | 287 | return true; |
| @@ -244,4 +292,8 @@ bool process_record_dynamic_macro(uint16_t keycode, keyrecord_t *record) | |||
| 244 | return true; | 292 | return true; |
| 245 | } | 293 | } |
| 246 | 294 | ||
| 295 | #undef DYNAMIC_MACRO_CURRENT_SLOT | ||
| 296 | #undef DYNAMIC_MACRO_CURRENT_LENGTH | ||
| 297 | #undef DYNAMIC_MACRO_CURRENT_CAPACITY | ||
| 298 | |||
| 247 | #endif | 299 | #endif |
diff --git a/tmk_core/avr.mk b/tmk_core/avr.mk index 5df539def..ccecdb192 100644 --- a/tmk_core/avr.mk +++ b/tmk_core/avr.mk | |||
| @@ -89,9 +89,9 @@ DEBUG_HOST = localhost | |||
| 89 | #============================================================================ | 89 | #============================================================================ |
| 90 | # Autodecct teensy loader | 90 | # Autodecct teensy loader |
| 91 | ifneq (, $(shell which teensy-loader-cli 2>/dev/null)) | 91 | ifneq (, $(shell which teensy-loader-cli 2>/dev/null)) |
| 92 | TEENSY_LOADER_CLI = teensy-loader-cli | 92 | TEENSY_LOADER_CLI ?= teensy-loader-cli |
| 93 | else | 93 | else |
| 94 | TEENSY_LOADER_CLI = teensy_loader_cli | 94 | TEENSY_LOADER_CLI ?= teensy_loader_cli |
| 95 | endif | 95 | endif |
| 96 | 96 | ||
| 97 | # Program the device. | 97 | # Program the device. |
| @@ -100,43 +100,47 @@ program: $(BUILD_DIR)/$(TARGET).hex $(BUILD_DIR)/$(TARGET).eep | |||
| 100 | 100 | ||
| 101 | teensy: $(BUILD_DIR)/$(TARGET).hex | 101 | teensy: $(BUILD_DIR)/$(TARGET).hex |
| 102 | $(TEENSY_LOADER_CLI) -mmcu=$(MCU) -w -v $(BUILD_DIR)/$(TARGET).hex | 102 | $(TEENSY_LOADER_CLI) -mmcu=$(MCU) -w -v $(BUILD_DIR)/$(TARGET).hex |
| 103 | |||
| 104 | BATCHISP ?= batchisp | ||
| 103 | 105 | ||
| 104 | flip: $(BUILD_DIR)/$(TARGET).hex | 106 | flip: $(BUILD_DIR)/$(TARGET).hex |
| 105 | batchisp -hardware usb -device $(MCU) -operation erase f | 107 | $(BATCHISP) -hardware usb -device $(MCU) -operation erase f |
| 106 | batchisp -hardware usb -device $(MCU) -operation loadbuffer $(BUILD_DIR)/$(TARGET).hex program | 108 | $(BATCHISP) -hardware usb -device $(MCU) -operation loadbuffer $(BUILD_DIR)/$(TARGET).hex program |
| 107 | batchisp -hardware usb -device $(MCU) -operation start reset 0 | 109 | $(BATCHISP) -hardware usb -device $(MCU) -operation start reset 0 |
| 110 | |||
| 111 | DFU_PROGRAMMER ?= dfu-programmer | ||
| 108 | 112 | ||
| 109 | dfu: $(BUILD_DIR)/$(TARGET).hex sizeafter | 113 | dfu: $(BUILD_DIR)/$(TARGET).hex sizeafter |
| 110 | until dfu-programmer $(MCU) get bootloader-version; do\ | 114 | until $(DFU_PROGRAMMER) $(MCU) get bootloader-version; do\ |
| 111 | echo "Error: Bootloader not found. Trying again in 5s." ;\ | 115 | echo "Error: Bootloader not found. Trying again in 5s." ;\ |
| 112 | sleep 5 ;\ | 116 | sleep 5 ;\ |
| 113 | done | 117 | done |
| 114 | ifneq (, $(findstring 0.7, $(shell dfu-programmer --version 2>&1))) | 118 | ifneq (, $(findstring 0.7, $(shell $(DFU_PROGRAMMER) --version 2>&1))) |
| 115 | dfu-programmer $(MCU) erase --force | 119 | $(DFU_PROGRAMMER) $(MCU) erase --force |
| 116 | else | 120 | else |
| 117 | dfu-programmer $(MCU) erase | 121 | $(DFU_PROGRAMMER) $(MCU) erase |
| 118 | endif | 122 | endif |
| 119 | dfu-programmer $(MCU) flash $(BUILD_DIR)/$(TARGET).hex | 123 | $(DFU_PROGRAMMER) $(MCU) flash $(BUILD_DIR)/$(TARGET).hex |
| 120 | dfu-programmer $(MCU) reset | 124 | $(DFU_PROGRAMMER) $(MCU) reset |
| 121 | 125 | ||
| 122 | dfu-start: | 126 | dfu-start: |
| 123 | dfu-programmer $(MCU) reset | 127 | $(DFU_PROGRAMMER) $(MCU) reset |
| 124 | dfu-programmer $(MCU) start | 128 | $(DFU_PROGRAMMER) $(MCU) start |
| 125 | 129 | ||
| 126 | flip-ee: $(BUILD_DIR)/$(TARGET).hex $(BUILD_DIR)/$(TARGET).eep | 130 | flip-ee: $(BUILD_DIR)/$(TARGET).hex $(BUILD_DIR)/$(TARGET).eep |
| 127 | $(COPY) $(BUILD_DIR)/$(TARGET).eep $(BUILD_DIR)/$(TARGET)eep.hex | 131 | $(COPY) $(BUILD_DIR)/$(TARGET).eep $(BUILD_DIR)/$(TARGET)eep.hex |
| 128 | batchisp -hardware usb -device $(MCU) -operation memory EEPROM erase | 132 | $(BATCHISP) -hardware usb -device $(MCU) -operation memory EEPROM erase |
| 129 | batchisp -hardware usb -device $(MCU) -operation memory EEPROM loadbuffer $(BUILD_DIR)/$(TARGET)eep.hex program | 133 | $(BATCHISP) -hardware usb -device $(MCU) -operation memory EEPROM loadbuffer $(BUILD_DIR)/$(TARGET)eep.hex program |
| 130 | batchisp -hardware usb -device $(MCU) -operation start reset 0 | 134 | $(BATCHISP) -hardware usb -device $(MCU) -operation start reset 0 |
| 131 | $(REMOVE) $(BUILD_DIR)/$(TARGET)eep.hex | 135 | $(REMOVE) $(BUILD_DIR)/$(TARGET)eep.hex |
| 132 | 136 | ||
| 133 | dfu-ee: $(BUILD_DIR)/$(TARGET).hex $(BUILD_DIR)/$(TARGET).eep | 137 | dfu-ee: $(BUILD_DIR)/$(TARGET).hex $(BUILD_DIR)/$(TARGET).eep |
| 134 | ifneq (, $(findstring 0.7, $(shell dfu-programmer --version 2>&1))) | 138 | ifneq (, $(findstring 0.7, $(shell dfu-programmer --version 2>&1))) |
| 135 | dfu-programmer $(MCU) flash --eeprom $(BUILD_DIR)/$(TARGET).eep | 139 | $(DFU_PROGRAMMER) $(MCU) flash --eeprom $(BUILD_DIR)/$(TARGET).eep |
| 136 | else | 140 | else |
| 137 | dfu-programmer $(MCU) flash-eeprom $(BUILD_DIR)/$(TARGET).eep | 141 | $(DFU_PROGRAMMER) $(MCU) flash-eeprom $(BUILD_DIR)/$(TARGET).eep |
| 138 | endif | 142 | endif |
| 139 | dfu-programmer $(MCU) reset | 143 | $(DFU_PROGRAMMER) $(MCU) reset |
| 140 | 144 | ||
| 141 | # Convert hex to bin. | 145 | # Convert hex to bin. |
| 142 | flashbin: $(BUILD_DIR)/$(TARGET).hex | 146 | flashbin: $(BUILD_DIR)/$(TARGET).hex |
diff --git a/tmk_core/chibios.mk b/tmk_core/chibios.mk index eb0c40138..2a8d32fb9 100644 --- a/tmk_core/chibios.mk +++ b/tmk_core/chibios.mk | |||
| @@ -151,5 +151,7 @@ endif | |||
| 151 | # List any extra directories to look for libraries here. | 151 | # List any extra directories to look for libraries here. |
| 152 | EXTRALIBDIRS = $(RULESPATH)/ld | 152 | EXTRALIBDIRS = $(RULESPATH)/ld |
| 153 | 153 | ||
| 154 | DFU_UTIL ?= dfu-util | ||
| 155 | |||
| 154 | dfu-util: $(BUILD_DIR)/$(TARGET).bin sizeafter | 156 | dfu-util: $(BUILD_DIR)/$(TARGET).bin sizeafter |
| 155 | dfu-util $(DFU_ARGS) -D $(BUILD_DIR)/$(TARGET).bin | 157 | $(DFU_UTIL) $(DFU_ARGS) -D $(BUILD_DIR)/$(TARGET).bin |
