diff options
author | lokher <lokher@gmail.com> | 2022-12-06 17:10:48 +0800 |
---|---|---|
committer | lokher <lokher@gmail.com> | 2022-12-07 15:50:49 +0800 |
commit | a336c2c5005251e4cb0f3a62ccabdb4cfccad915 (patch) | |
tree | 3c948b631a5e3b6f940dabe02fad3c7487e6f350 /keyboards/bastardkb/dilemma/3x5_3 | |
parent | 27fc28fd2ff52e079a5bc58d6aaea4c752420615 (diff) |
Merge upstream master to 2022 Q4 breaking change
Diffstat (limited to 'keyboards/bastardkb/dilemma/3x5_3')
-rw-r--r-- | keyboards/bastardkb/dilemma/3x5_3/3x5_3.c | 83 | ||||
-rw-r--r-- | keyboards/bastardkb/dilemma/3x5_3/3x5_3.h | 39 | ||||
-rw-r--r-- | keyboards/bastardkb/dilemma/3x5_3/config.h | 71 | ||||
-rw-r--r-- | keyboards/bastardkb/dilemma/3x5_3/halconf.h | 23 | ||||
-rw-r--r-- | keyboards/bastardkb/dilemma/3x5_3/info.json | 49 | ||||
-rw-r--r-- | keyboards/bastardkb/dilemma/3x5_3/keymaps/bstiq/config.h | 144 | ||||
-rw-r--r-- | keyboards/bastardkb/dilemma/3x5_3/keymaps/bstiq/keymap.c | 223 | ||||
-rw-r--r-- | keyboards/bastardkb/dilemma/3x5_3/keymaps/bstiq/readme.md | 3 | ||||
-rw-r--r-- | keyboards/bastardkb/dilemma/3x5_3/keymaps/default/keymap.c | 84 | ||||
-rw-r--r-- | keyboards/bastardkb/dilemma/3x5_3/mcuconf.h | 26 | ||||
-rw-r--r-- | keyboards/bastardkb/dilemma/3x5_3/readme.md | 5 | ||||
-rw-r--r-- | keyboards/bastardkb/dilemma/3x5_3/rules.mk | 36 |
12 files changed, 0 insertions, 786 deletions
diff --git a/keyboards/bastardkb/dilemma/3x5_3/3x5_3.c b/keyboards/bastardkb/dilemma/3x5_3/3x5_3.c deleted file mode 100644 index 0b6c657fda..0000000000 --- a/keyboards/bastardkb/dilemma/3x5_3/3x5_3.c +++ /dev/null @@ -1,83 +0,0 @@ -/** - * Copyright 2020 Christopher Courtney <drashna@live.com> (@drashna) - * Copyright 2021 Quentin LEBASTARD <qlebastard@gmail.com> - * Copyright 2022 Charly Delay <charly@codesink.dev> (@0xcharly) - * - * This program is free software: you can redistribute it and/or modify - * it under the terms of the GNU General Publicw License as published by - * the Free Software Foundation, either version 2 of the License, or - * (at your option) any later version. - * - * This program is distributed in the hope that it will be useful, - * but WITHOUT ANY WARRANTY; without even the implied warranty of - * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the - * GNU General Public License for more details. - * - * You should have received a copy of the GNU General Public License - * along with this program. If not, see <http://www.gnu.org/licenses/>. - */ - -#include "3x5_3.h" - -/** - * LEDs index. - * - * â•â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â•® â•â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â•® - * 2 3 8 9 12 30 27 26 21 20 - * ├────────────────────┤ ├────────────────────┤ - * 1 4 7 10 13 31 28 25 22 19 - * ├────────────────────┤ ├────────────────────┤ - * 0 5 6 11 14 32 29 24 23 18 - * ╰────────────────────╯ ╰────────────────────╯ - * 15 16 17 35 34 33 - * ╰────────────╯ ╰────────────╯ - */ -// clang-format off -#ifdef RGB_MATRIX_ENABLE -led_config_t g_led_config = { { - /* Key Matrix to LED index. */ - // Left split. - { 2, 3, 8, 9, 12 }, // Top row - { 1, 4, 7, 10, 13 }, // Middle row - { 0, 5, 6, 11, 14 }, // Bottom row - { 17, NO_LED, 15, 16, NO_LED }, // Thumb cluster - // Right split. - { 20, 21, 26, 27, 30 }, // Top row - { 19, 22, 25, 28, 31 }, // Middle row - { 18, 23, 24, 29, 32 }, // Bottom row - { 35, NO_LED, 33, 34, NO_LED }, // Thumb cluster -}, { - /* LED index to physical position. */ - // Left split. - /* index=0 */ { 0, 42 }, { 0, 21 }, { 0, 0 }, // col 1 (left most) - /* index=3 */ { 18, 0 }, { 18, 21 }, { 18, 42 }, // col 2 - /* index=6 */ { 36, 42 }, { 36, 21 }, { 36, 0 }, - /* index=9 */ { 54, 0 }, { 54, 21 }, { 54, 42 }, - /* index=12 */ { 72, 0 }, { 72, 21 }, { 72, 42 }, - /* index=15 */ { 72, 64 }, { 90, 64 }, { 108, 64 }, // Thumb cluster - // Right split. - /* index=18 */ { 224, 42 }, { 224, 21 }, { 224, 0 }, // col 10 (right most) - /* index=21 */ { 206, 0 }, { 206, 21 }, { 206, 42 }, // col 9 - /* index=24 */ { 188, 42 }, { 188, 21 }, { 188, 0 }, - /* index=27 */ { 170, 0 }, { 170, 21 }, { 170, 42 }, - /* index=30 */ { 152, 0 }, { 152, 21 }, { 152, 42 }, - /* index=33 */ { 152, 64 }, { 134, 64 }, { 116, 64 }, // Thumb cluster -}, { - /* LED index to flag. */ - // Left split. - /* index=0 */ LED_FLAG_KEYLIGHT, LED_FLAG_KEYLIGHT, LED_FLAG_KEYLIGHT, // col 1 - /* index=3 */ LED_FLAG_KEYLIGHT, LED_FLAG_KEYLIGHT, LED_FLAG_KEYLIGHT, // col 2 - /* index=6 */ LED_FLAG_KEYLIGHT, LED_FLAG_KEYLIGHT, LED_FLAG_KEYLIGHT, - /* index=9 */ LED_FLAG_KEYLIGHT, LED_FLAG_KEYLIGHT, LED_FLAG_KEYLIGHT, - /* index=12 */ LED_FLAG_KEYLIGHT, LED_FLAG_KEYLIGHT, LED_FLAG_KEYLIGHT, - /* index=15 */ LED_FLAG_MODIFIER, LED_FLAG_MODIFIER, LED_FLAG_MODIFIER, // Thumb cluster - // Right split. - /* index=18 */ LED_FLAG_KEYLIGHT, LED_FLAG_KEYLIGHT, LED_FLAG_KEYLIGHT, // col 10 - /* index=21 */ LED_FLAG_KEYLIGHT, LED_FLAG_KEYLIGHT, LED_FLAG_KEYLIGHT, // col 9 - /* index=24 */ LED_FLAG_KEYLIGHT, LED_FLAG_KEYLIGHT, LED_FLAG_KEYLIGHT, - /* index=27 */ LED_FLAG_KEYLIGHT, LED_FLAG_KEYLIGHT, LED_FLAG_KEYLIGHT, - /* index=30 */ LED_FLAG_KEYLIGHT, LED_FLAG_KEYLIGHT, LED_FLAG_KEYLIGHT, - /* index=33 */ LED_FLAG_MODIFIER, LED_FLAG_MODIFIER, LED_FLAG_MODIFIER, // Thumb cluster -} }; -#endif -// clang-format on diff --git a/keyboards/bastardkb/dilemma/3x5_3/3x5_3.h b/keyboards/bastardkb/dilemma/3x5_3/3x5_3.h deleted file mode 100644 index 566d5b81d2..0000000000 --- a/keyboards/bastardkb/dilemma/3x5_3/3x5_3.h +++ /dev/null @@ -1,39 +0,0 @@ -/** - * Copyright 2022 Charly Delay <charly@codesink.dev> (@0xcharly) - * - * This program is free software: you can redistribute it and/or modify - * it under the terms of the GNU General Public License as published by - * the Free Software Foundation, either version 2 of the License, or - * (at your option) any later version. - * - * This program is distributed in the hope that it will be useful, - * but WITHOUT ANY WARRANTY; without even the implied warranty of - * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the - * GNU General Public License for more details. - * - * You should have received a copy of the GNU General Public License - * along with this program. If not, see <http://www.gnu.org/licenses/>. - */ - -#pragma once - -#include "dilemma.h" - -// clang-format off -#define LAYOUT_split_3x5_3( \ - k00, k01, k02, k03, k04, k44, k43, k42, k41, k40, \ - k10, k11, k12, k13, k14, k54, k53, k52, k51, k50, \ - k20, k21, k22, k23, k24, k64, k63, k62, k61, k60, \ - k32, k30, k31, k71, k70, k72 \ -) \ -{ \ - { k00, k01, k02, k03, k04 }, \ - { k10, k11, k12, k13, k14 }, \ - { k20, k21, k22, k23, k24 }, \ - { k30, k31, k32, KC_NO, KC_NO }, \ - { k40, k41, k42, k43, k44 }, \ - { k50, k51, k52, k53, k54 }, \ - { k60, k61, k62, k63, k64 }, \ - { k70, k71, k72, KC_NO, KC_NO }, \ -} -// clang-format on diff --git a/keyboards/bastardkb/dilemma/3x5_3/config.h b/keyboards/bastardkb/dilemma/3x5_3/config.h deleted file mode 100644 index 985d622fb6..0000000000 --- a/keyboards/bastardkb/dilemma/3x5_3/config.h +++ /dev/null @@ -1,71 +0,0 @@ -/** - * Copyright 2022 Charly Delay <charly@codesink.dev> (@0xcharly) - * - * This program is free software: you can redistribute it and/or modify - * it under the terms of the GNU General Public License as published by - * the Free Software Foundation, either version 2 of the License, or - * (at your option) any later version. - * - * This program is distributed in the hope that it will be useful, - * but WITHOUT ANY WARRANTY; without even the implied warranty of - * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the - * GNU General Public License for more details. - * - * You should have received a copy of the GNU General Public License - * along with this program. If not, see <http://www.gnu.org/licenses/>. - */ - -#pragma once - -/* Key matrix configuration. */ -#define MATRIX_ROW_PINS \ - { GP4, GP5, GP27, GP26 } -#define MATRIX_COL_PINS \ - { GP8, GP9, GP7, GP6, GP28 } - -/* Handedness. */ -#define SPLIT_HAND_PIN GP29 -#define SPLIT_HAND_PIN_LOW_IS_LEFT // High -> right, Low -> left. - -/* serial.c configuration (for split keyboard). */ -#define SOFT_SERIAL_PIN GP1 - -/* RGB settings. */ -#define RGB_DI_PIN GP0 // Per-key. -// #define RGB_DI_PIN GP10 // Underglow. - -/* CRC. */ -#define CRC8_USE_TABLE -#define CRC8_OPTIMIZE_SPEED - -/* Cirque trackpad over SPI. */ -#define SPI_SCK_PIN GP22 -#define SPI_MOSI_PIN GP23 -#define SPI_MISO_PIN GP20 -#define POINTING_DEVICE_CS_PIN GP21 - -/* OLED over i2c. */ -#define I2C1_CLOCK_SPEED 400000 -#define I2C1_DUTY_CYCLE FAST_DUTY_CYCLE_16_9 -#define OLED_DISPLAY_HEIGHT 128 - -/* Reset. */ -#define RP2040_BOOTLOADER_DOUBLE_TAP_RESET -#define RP2040_BOOTLOADER_DOUBLE_TAP_RESET_LED GP17 -#define RP2040_BOOTLOADER_DOUBLE_TAP_RESET_TIMEOUT 1000U - -/* RGB settings. */ -#define RGBLED_NUM 36 -#define RGBLED_SPLIT \ - { 18, 18 } - -/* RGB matrix support. */ -#ifdef RGB_MATRIX_ENABLE -# define SPLIT_TRANSPORT_MIRROR -# define RGB_MATRIX_LED_COUNT RGBLED_NUM -# define RGB_MATRIX_SPLIT RGBLED_SPLIT -# define RGB_MATRIX_MAXIMUM_BRIGHTNESS 50 -# define RGB_MATRIX_DEFAULT_VAL RGB_MATRIX_MAXIMUM_BRIGHTNESS -# define RGB_DISABLE_WHEN_USB_SUSPENDED -# define RGB_MATRIX_KEYPRESSES -#endif diff --git a/keyboards/bastardkb/dilemma/3x5_3/halconf.h b/keyboards/bastardkb/dilemma/3x5_3/halconf.h deleted file mode 100644 index a3774605a8..0000000000 --- a/keyboards/bastardkb/dilemma/3x5_3/halconf.h +++ /dev/null @@ -1,23 +0,0 @@ -/** - * Copyright 2022 Charly Delay <charly@codesink.dev> (@0xcharly) - * - * This program is free software: you can redistribute it and/or modify - * it under the terms of the GNU General Public License as published by - * the Free Software Foundation, either version 2 of the License, or - * (at your option) any later version. - * - * This program is distributed in the hope that it will be useful, - * but WITHOUT ANY WARRANTY; without even the implied warranty of - * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the - * GNU General Public License for more details. - * - * You should have received a copy of the GNU General Public License - * along with this program. If not, see <http://www.gnu.org/licenses/>. - */ - -#pragma once - -#define HAL_USE_I2C TRUE -#define HAL_USE_SPI TRUE - -#include_next "halconf.h" diff --git a/keyboards/bastardkb/dilemma/3x5_3/info.json b/keyboards/bastardkb/dilemma/3x5_3/info.json deleted file mode 100644 index 777367903d..0000000000 --- a/keyboards/bastardkb/dilemma/3x5_3/info.json +++ /dev/null @@ -1,49 +0,0 @@ -{ - "keyboard_name": "Dilemma (3x5+3) Assembled", - "usb": { - "device_version": "2.0.0", - "pid": "0x1835" - }, - "layouts": { - "LAYOUT_split_3x5_3": { - "layout": [ - { "label": "L00", "x": 0, "y": 0 }, - { "label": "L01", "x": 1, "y": 0 }, - { "label": "L02", "x": 2, "y": 0 }, - { "label": "L03", "x": 3, "y": 0 }, - { "label": "L04", "x": 4, "y": 0 }, - { "label": "R00", "x": 11, "y": 0 }, - { "label": "R01", "x": 12, "y": 0 }, - { "label": "R02", "x": 13, "y": 0 }, - { "label": "R03", "x": 14, "y": 0 }, - { "label": "R04", "x": 15, "y": 0 }, - { "label": "L10", "x": 0, "y": 1 }, - { "label": "L11", "x": 1, "y": 1 }, - { "label": "L12", "x": 2, "y": 1 }, - { "label": "L13", "x": 3, "y": 1 }, - { "label": "L14", "x": 4, "y": 1 }, - { "label": "R10", "x": 11, "y": 1 }, - { "label": "R11", "x": 12, "y": 1 }, - { "label": "R12", "x": 13, "y": 1 }, - { "label": "R13", "x": 14, "y": 1 }, - { "label": "R14", "x": 15, "y": 1 }, - { "label": "L20", "x": 0, "y": 2 }, - { "label": "L21", "x": 1, "y": 2 }, - { "label": "L22", "x": 2, "y": 2 }, - { "label": "L23", "x": 3, "y": 2 }, - { "label": "L24", "x": 4, "y": 2 }, - { "label": "R20", "x": 11, "y": 2 }, - { "label": "R21", "x": 12, "y": 2 }, - { "label": "R22", "x": 13, "y": 2 }, - { "label": "R23", "x": 14, "y": 2 }, - { "label": "R24", "x": 15, "y": 2 }, - { "label": "L32", "x": 4, "y": 3 }, - { "label": "L33", "x": 5, "y": 3 }, - { "label": "L34", "x": 6, "y": 3 }, - { "label": "R32", "x": 11, "y": 3 }, - { "label": "R33", "x": 10, "y": 3 }, - { "label": "R34", "x": 9, "y": 3 } - ] - } - } -} diff --git a/keyboards/bastardkb/dilemma/3x5_3/keymaps/bstiq/config.h b/keyboards/bastardkb/dilemma/3x5_3/keymaps/bstiq/config.h deleted file mode 100644 index 139b1f06ea..0000000000 --- a/keyboards/bastardkb/dilemma/3x5_3/keymaps/bstiq/config.h +++ /dev/null @@ -1,144 +0,0 @@ -/** - * Copyright 2021 Quentin LEBASTARD <qlebastard@gmail.com> - * Copyright 2022 Charly Delay <charly@codesink.dev> (@0xcharly) - * - * This program is free software: you can redistribute it and/or modify - * it under the terms of the GNU General Public License as published by - * the Free Software Foundation, either version 2 of the License, or - * (at your option) any later version. - * - * This program is distributed in the hope that it will be useful, - * but WITHOUT ANY WARRANTY; without even the implied warranty of - * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the - * GNU General Public License for more details. - * - * You should have received a copy of the GNU General Public License - * along with this program. If not, see <http://www.gnu.org/licenses/>. - */ -#pragma once - -#ifdef VIA_ENABLE -/* Via configuration. */ -# define DYNAMIC_KEYMAP_LAYER_COUNT 8 -#endif // VIA_ENABLE - -/** - * Configure the global tapping term (default: 200ms). - * If you have a lot of accidental mod activations, crank up the tapping term. - */ -#ifndef TAPPING_TERM -# define TAPPING_TERM 160 -#endif // TAPPING_TERM - -// disable trackpad taps -// #define CIRQUE_PINNACLE_TAPPING_TERM 0 - -/** - * Enable rapid switch from tap to hold. Disable auto-repeat when pressing key - * twice, except for one-shot keys. - */ -#define TAPPING_FORCE_HOLD - -/* - * Tap-or-Hold decision modes. - * - * Note that the following flags behave differently when combined (ie. when 2 or - * more are enabled). - * - * See bit.ly/tap-or-hold for a visual explanation of the following tap-or-hold - * decision modes. - */ - -/** - * Faster tap-hold trigger. - * - * Without `PERMISSIVE_HOLD`, within `TAPPING_TERM`: - * Mod(a)🠗 e🠗 e🠕 Mod(a)🠕 âžž ae - * With `PERMISSIVE_HOLD`, within `TAPPING_TERM`: - * Mod(a)🠗 e🠗 e🠕 Mod(a)🠕 âžž Mod+e - */ -#define PERMISSIVE_HOLD - -/** - * Prevent normal rollover on alphas from accidentally triggering mods. - * - * Ignores key presses that interrupt a mod-tap. Must-have for Home Row mod. - * - * Without `IGNORE_MOD_TAP_INTERRUPT`, within `TAPPING_TERM`: - * Mod(a)🠗 e🠗 Mod(a)🠕 e🠕 âžž Mod+e - * With `IGNORE_MOD_TAP_INTERRUPT`, within `TAPPING_TERM`: - * Mod(a)🠗 e🠗 Mod(a)🠕 e🠕 âžž ae - */ -#define IGNORE_MOD_TAP_INTERRUPT - -/** Dilemma-specific features. */ - -#ifdef POINTING_DEVICE_ENABLE -// Flip horizontal direction for drag-scroll. -# define DILEMMA_DRAGSCROLL_REVERSE_X -// #define DILEMMA_DRAGSCROLL_REVERSE_Y -#endif // POINTING_DEVICE_ENABLE - -/** RGB Matrix. */ - -#ifdef RGB_MATRIX_ENABLE -// Enable all animations on ARM boards since they have plenty of memory -// available for it. -# define ENABLE_RGB_MATRIX_ALPHAS_MODS -# define ENABLE_RGB_MATRIX_GRADIENT_UP_DOWN -# define ENABLE_RGB_MATRIX_GRADIENT_LEFT_RIGHT -# define ENABLE_RGB_MATRIX_BREATHING -# define ENABLE_RGB_MATRIX_BAND_SAT -# define ENABLE_RGB_MATRIX_BAND_VAL -# define ENABLE_RGB_MATRIX_BAND_PINWHEEL_SAT -# define ENABLE_RGB_MATRIX_BAND_PINWHEEL_VAL -# define ENABLE_RGB_MATRIX_BAND_SPIRAL_SAT -# define ENABLE_RGB_MATRIX_BAND_SPIRAL_VAL -# define ENABLE_RGB_MATRIX_CYCLE_ALL -# define ENABLE_RGB_MATRIX_CYCLE_LEFT_RIGHT -# define ENABLE_RGB_MATRIX_CYCLE_UP_DOWN -# define ENABLE_RGB_MATRIX_RAINBOW_MOVING_CHEVRON -# define ENABLE_RGB_MATRIX_CYCLE_OUT_IN -# define ENABLE_RGB_MATRIX_CYCLE_OUT_IN_DUAL -# define ENABLE_RGB_MATRIX_CYCLE_PINWHEEL -# define ENABLE_RGB_MATRIX_CYCLE_SPIRAL -# define ENABLE_RGB_MATRIX_DUAL_BEACON -# define ENABLE_RGB_MATRIX_RAINBOW_BEACON -# define ENABLE_RGB_MATRIX_RAINBOW_PINWHEELS -# define ENABLE_RGB_MATRIX_RAINDROPS -# define ENABLE_RGB_MATRIX_JELLYBEAN_RAINDROPS -# define ENABLE_RGB_MATRIX_HUE_BREATHING -# define ENABLE_RGB_MATRIX_HUE_PENDULUM -# define ENABLE_RGB_MATRIX_HUE_WAVE -# define ENABLE_RGB_MATRIX_TYPING_HEATMAP -# define ENABLE_RGB_MATRIX_DIGITAL_RAIN -# define ENABLE_RGB_MATRIX_SOLID_REACTIVE_SIMPLE -# define ENABLE_RGB_MATRIX_SOLID_REACTIVE -# define ENABLE_RGB_MATRIX_SOLID_REACTIVE_WIDE -# define ENABLE_RGB_MATRIX_SOLID_REACTIVE_MULTIWIDE -# define ENABLE_RGB_MATRIX_SOLID_REACTIVE_CROSS -# define ENABLE_RGB_MATRIX_SOLID_REACTIVE_MULTICROSS -# define ENABLE_RGB_MATRIX_SOLID_REACTIVE_NEXUS -# define ENABLE_RGB_MATRIX_SOLID_REACTIVE_MULTINEXUS -# define ENABLE_RGB_MATRIX_SPLASH -# define ENABLE_RGB_MATRIX_MULTISPLASH -# define ENABLE_RGB_MATRIX_SOLID_SPLASH -# define ENABLE_RGB_MATRIX_SOLID_MULTISPLASH - -// Limit maximum brightness to keep power consumption reasonable, and avoid -// disconnects. -# undef RGB_MATRIX_MAXIMUM_BRIGHTNESS -# define RGB_MATRIX_MAXIMUM_BRIGHTNESS 64 - -// Rainbow swirl as startup mode. -# define ENABLE_RGB_MATRIX_CYCLE_LEFT_RIGHT -# define RGB_MATRIX_DEFAULT_MODE RGB_MATRIX_CYCLE_LEFT_RIGHT - -// Slow swirl at startup. -# define RGB_MATRIX_DEFAULT_SPD 32 - -// Startup values. -# define RGB_MATRIX_DEFAULT_HUE 0 -# define RGB_MATRIX_DEFAULT_SAT 255 -# define RGB_MATRIX_DEFAULT_VAL RGB_MATRIX_MAXIMUM_BRIGHTNESS -#endif // RGB_MATRIX_ENABLE diff --git a/keyboards/bastardkb/dilemma/3x5_3/keymaps/bstiq/keymap.c b/keyboards/bastardkb/dilemma/3x5_3/keymaps/bstiq/keymap.c deleted file mode 100644 index 2c262521bc..0000000000 --- a/keyboards/bastardkb/dilemma/3x5_3/keymaps/bstiq/keymap.c +++ /dev/null @@ -1,223 +0,0 @@ -/** - * Copyright 2021 Quentin LEBASTARD <qlebastard@gmail.com> - * Copyright 2022 Charly Delay <charly@codesink.dev> (@0xcharly) - * - * This program is free software: you can redistribute it and/or modify - * it under the terms of the GNU General Public License as published by - * the Free Software Foundation, either version 2 of the License, or - * (at your option) any later version. - * - * This program is distributed in the hope that it will be useful, - * but WITHOUT ANY WARRANTY; without even the implied warranty of - * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the - * GNU General Public License for more details. - * - * You should have received a copy of the GNU General Public License - * along with this program. If not, see <http://www.gnu.org/licenses/>. - */ -#include QMK_KEYBOARD_H - -enum bstiq_layers { - LAYER_BASE = 0, - LAYER_MBO, - LAYER_MEDIA, - LAYER_NAV, - LAYER_MOUSE, - LAYER_SYM, - LAYER_NUM, - LAYER_FUN, -}; - -// Automatically enable sniping when the mouse layer is on. -#define DILEMMA_AUTO_SNIPING_ON_LAYER LAYER_MOUSE - -#define BSP_NAV LT(LAYER_NAV, KC_BSPC) -#define ENT_MBO LT(LAYER_MBO, KC_ENT) -#define TAB_MED LT(LAYER_MEDIA, KC_TAB) -#define ESC_SYM LT(LAYER_SYM, KC_ESC) -#define SPC_NUM LT(LAYER_NUM, KC_SPC) -#define SPC_MBO LT(LAYER_MBO, KC_SPC) -#define MOUSE(KC) LT(LAYER_MOUSE, KC) - -#define USR_RDO KC_AGAIN -#define USR_PST S(KC_INS) -#define USR_CPY C(KC_INS) -#define USR_CUT S(KC_DEL) -#define USR_UND KC_UNDO - -#define MS_L KC_MS_LEFT -#define MS_R KC_MS_RIGHT -#define MS_D KC_MS_DOWN -#define MS_U KC_MS_UP - -#define WH_L KC_MS_WH_LEFT -#define WH_R KC_MS_WH_RIGHT -#define WH_D KC_MS_WH_DOWN -#define WH_U KC_MS_WH_UP - -// clang-format off -/** Convenience macro. */ -#define _KC_LAYOUT_wrapper( \ - k00, k01, k02, k03, k04, k05, k06, k07, k08, k09, \ - k10, k11, k12, k13, k14, k15, k16, k17, k18, k19, \ - k20, k21, k22, k23, k24, k25, k26, k27, k28, k29, \ - ...) \ - KC_##k00, KC_##k01, KC_##k02, KC_##k03, KC_##k04, KC_##k05, KC_##k06, KC_##k07, KC_##k08, KC_##k09, \ - KC_##k10, KC_##k11, KC_##k12, KC_##k13, KC_##k14, KC_##k15, KC_##k16, KC_##k17, KC_##k18, KC_##k19, \ - KC_##k20, KC_##k21, KC_##k22, KC_##k23, KC_##k24, KC_##k25, KC_##k26, KC_##k27, KC_##k28, KC_##k29, \ - __VA_ARGS__ -#define KC_LAYOUT_wrapper(...) _KC_LAYOUT_wrapper(__VA_ARGS__) - -/** Base layer with BÉPO layout. */ -#define LAYOUT_LAYER_BASE_BEPO KC_LAYOUT_wrapper( \ - B, W, P, O, QUOT, DOT, V, D, L, J, \ - A, U, I, E, COMM, C, T, S, R, N, \ - Z, Y, X, SLSH, K, M, Q, G, H, F, \ - KC_A, SPC_MBO, TAB_MED, ESC_SYM, SPC_NUM, KC_A) - -/** Convenience key shorthands. */ -#define U_NA KC_NO // Present but not available for use. -#define U_NU KC_NO // Available but not used. - -/** Convenience row shorthands. */ -#define ________________HOME_ROW_NA________________ U_NA, U_NA, U_NA, U_NA, U_NA -#define ______________HOME_ROW_GASC_L______________ KC_LGUI, KC_LALT, KC_LSFT, KC_LCTL, U_NA -#define ______________HOME_ROW_ALGR_L______________ U_NA, KC_ALGR, U_NA, U_NA, U_NA -#define ______________HOME_ROW_GASC_R______________ U_NA, KC_LCTL, KC_LSFT, KC_LALT, KC_LGUI -#define ______________HOME_ROW_ALGR_R______________ U_NA, U_NA, U_NA, KC_ALGR, U_NA - -/** Layers. */ - -// Buttons. -#define LAYOUT_LAYER_MBO \ - ________________HOME_ROW_NA________________, USR_RDO, USR_PST, USR_CPY, USR_CUT, USR_UND, \ - ______________HOME_ROW_GASC_L______________, KC_BSPC, KC_LEFT, KC_DOWN, KC_UP, KC_RGHT, \ - KC_BTN3, KC_ALGR, KC_BTN2, KC_BTN1, U_NA, KC_DEL, KC_HOME, KC_PGDN, KC_PGUP, KC_END, \ - U_NA, U_NA, U_NA, KC_ENT, KC_ENT, KC_ENT - -// Media. -#define LAYOUT_LAYER_MEDIA \ - ________________HOME_ROW_NA________________, USR_RDO, USR_PST, USR_CPY, USR_CUT, USR_UND, \ - ______________HOME_ROW_GASC_L______________, U_NU, MS_L, MS_D, MS_U, MS_R, \ - ______________HOME_ROW_ALGR_L______________, U_NU, WH_L, WH_D, WH_U, WH_R, \ - U_NA, U_NA, U_NA, KC_BTN1, KC_BTN3, KC_BTN2 - -// Navigation. -#define LAYOUT_LAYER_NAV \ - ________________HOME_ROW_NA________________, RGB_TOG, RGB_MOD, RGB_HUI, RGB_SAI, RGB_VAI, \ - ______________HOME_ROW_GASC_L______________, U_NU, KC_MPRV, KC_VOLD, KC_VOLU, KC_MNXT, \ - ______________HOME_ROW_ALGR_L______________, U_NU, U_NU, U_NU, U_NU, U_NU, \ - U_NA, U_NA, U_NA, KC_MSTP, KC_MPLY, U_NA - -// Mouse. -#define LAYOUT_LAYER_MOUSE \ - S_D_MOD, USR_PST, USR_CPY, USR_CUT, USR_UND, USR_RDO, USR_PST, USR_CPY, USR_CUT, USR_UND, \ - DPI_MOD, DRGSCRL, KC_LSFT, DRGSCRL, _______, U_NU, MS_L, MS_D, MS_U, MS_R, \ - USR_RDO, USR_PST, USR_CPY, KC_BTN3, USR_UND, U_NU, WH_L, WH_D, WH_U, WH_R, \ - KC_BTN3, KC_BTN1, KC_BTN2, KC_BTN1, KC_BTN3, KC_BTN2 - -// Symbols. -#define LAYOUT_LAYER_SYM \ - KC_LCBR, KC_AMPR, KC_ASTR, KC_LPRN, KC_RCBR, ________________HOME_ROW_NA________________, \ - KC_COLN, KC_DLR, KC_PERC, KC_CIRC, KC_PLUS, ______________HOME_ROW_GASC_R______________, \ - KC_TILD, KC_EXLM, KC_AT, KC_HASH, KC_MINS, ______________HOME_ROW_ALGR_R______________, \ - U_NA, KC_RPRN, KC_LPRN, U_NA, U_NA, U_NA - -// Numerals. -#define LAYOUT_LAYER_NUM \ - KC_LBRC, KC_7, KC_8, KC_9, KC_RBRC, ________________HOME_ROW_NA________________, \ - KC_SCLN, KC_4, KC_5, KC_6, KC_EQL, ______________HOME_ROW_GASC_R______________, \ - KC_GRV, KC_1, KC_2, KC_3, KC_UNDS, ______________HOME_ROW_ALGR_R______________, \ - U_NA, KC_0, KC_MINS, U_NA, U_NA, U_NA - -// Function keys. -#define LAYOUT_LAYER_FUN \ - KC_F12, KC_F7, KC_F8, KC_F9, KC_PSCR, ________________HOME_ROW_NA________________, \ - KC_F11, KC_F4, KC_F5, KC_F6, KC_SCRL, ______________HOME_ROW_GASC_R______________, \ - KC_F10, KC_F1, KC_F2, KC_F3, KC_PAUS, ______________HOME_ROW_ALGR_R______________,\ - U_NA, KC_APP, KC_TAB, U_NA, U_NA, U_NA - -/** - * Add Home Row mod to a layout. - * - * Expects a 10-key per row layout. Adds support for GASC (Gui, Alt, Shift, Ctl) - * home row. The layout passed in parameter must contain at least 20 keycodes. - * - * This is meant to be used with `LAYOUT_LAYER_BASE_BEPO` defined above, eg.: - * - * HOME_ROW_MOD_GASC(LAYOUT_LAYER_BASE_BEPO) - */ -#define _HOME_ROW_MOD_GASC( \ - L00, L01, L02, L03, L04, R05, R06, R07, R08, R09, \ - L10, L11, L12, L13, L14, R15, R16, R17, R18, R19, \ - ...) \ - L00, L01, L02, L03, L04, \ - R05, R06, R07, R08, R09, \ - LGUI_T(L10), LALT_T(L11), LSFT_T(L12), LCTL_T(L13), L14, \ - R15, RCTL_T(R16), RSFT_T(R17), LALT_T(R18), RGUI_T(R19), \ - __VA_ARGS__ -#define HOME_ROW_MOD_GASC(...) _HOME_ROW_MOD_GASC(__VA_ARGS__) - -/** - * Add mouse layer keys to a layout. - * - * Expects a 10-key per row layout. The layout passed in parameter must contain - * at least 30 keycodes. - * - * This is meant to be used with `LAYOUT_LAYER_BASE_BEPO` defined above, eg.: - * - * MOUSE_MOD(LAYOUT_LAYER_BASE_BEPO) - */ -#define _MOUSE_MOD( \ - L00, L01, L02, L03, L04, R05, R06, R07, R08, R09, \ - L10, L11, L12, L13, L14, R15, R16, R17, R18, R19, \ - L20, L21, L22, L23, L24, R25, R26, R27, R28, R29, \ - ...) \ - L00, L01, L02, L03, L04, \ - R05, R06, R07, R08, R09, \ - L10, L11, L12, L13, L14, \ - R15, R16, R17, R18, R19, \ - L20, MOUSE(L21), L22, L23, L24, \ - R25, R26, R27, R28, MOUSE(R29), \ - __VA_ARGS__ -#define MOUSE_MOD(...) _MOUSE_MOD(__VA_ARGS__) - -#define LAYOUT_wrapper(...) LAYOUT_split_3x5_3(__VA_ARGS__) - -const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = { - [LAYER_BASE] = LAYOUT_wrapper( - MOUSE_MOD(HOME_ROW_MOD_GASC(LAYOUT_LAYER_BASE_BEPO)) - ), - [LAYER_MBO] = LAYOUT_wrapper(LAYOUT_LAYER_MBO), - [LAYER_MEDIA] = LAYOUT_wrapper(LAYOUT_LAYER_MEDIA), - [LAYER_NAV] = LAYOUT_wrapper(LAYOUT_LAYER_NAV), - [LAYER_MOUSE] = LAYOUT_wrapper(LAYOUT_LAYER_MOUSE), - [LAYER_SYM] = LAYOUT_wrapper(LAYOUT_LAYER_SYM), - [LAYER_NUM] = LAYOUT_wrapper(LAYOUT_LAYER_NUM), - [LAYER_FUN] = LAYOUT_wrapper(LAYOUT_LAYER_FUN), -}; -// clang-format on - -#if defined(POINTING_DEVICE_ENABLE) && defined(DILEMMA_AUTO_SNIPING_ON_LAYER) -layer_state_t layer_state_set_user(layer_state_t state) { - dilemma_set_pointer_sniping_enabled(layer_state_cmp(state, DILEMMA_AUTO_SNIPING_ON_LAYER)); - return state; -} -#endif // POINTING_DEVICE_ENABLE && DILEMMA_AUTO_SNIPING_ON_LAYER - -#ifdef RGB_MATRIX_ENABLE -// Forward-declare this helper function since it is defined in rgb_matrix.c. -void rgb_matrix_update_pwm_buffers(void); -#endif - -void shutdown_user(void) { -#ifdef RGBLIGHT_ENABLE - rgblight_enable_noeeprom(); - rgblight_mode_noeeprom(RGBLIGHT_MODE_STATIC_LIGHT); - rgblight_setrgb_red(); -#endif // RGBLIGHT_ENABLE -#ifdef RGB_MATRIX_ENABLE - rgb_matrix_set_color_all(RGB_RED); - rgb_matrix_update_pwm_buffers(); -#endif // RGB_MATRIX_ENABLE -} diff --git a/keyboards/bastardkb/dilemma/3x5_3/keymaps/bstiq/readme.md b/keyboards/bastardkb/dilemma/3x5_3/keymaps/bstiq/readme.md deleted file mode 100644 index df1f43cbcb..0000000000 --- a/keyboards/bastardkb/dilemma/3x5_3/keymaps/bstiq/readme.md +++ /dev/null @@ -1,3 +0,0 @@ -# Dilemma @bstiq keymap - -Inspired from Miryoku, using home-rows. diff --git a/keyboards/bastardkb/dilemma/3x5_3/keymaps/default/keymap.c b/keyboards/bastardkb/dilemma/3x5_3/keymaps/default/keymap.c deleted file mode 100644 index 461976b276..0000000000 --- a/keyboards/bastardkb/dilemma/3x5_3/keymaps/default/keymap.c +++ /dev/null @@ -1,84 +0,0 @@ -/** - * Copyright 2022 Charly Delay <charly@codesink.dev> (@0xcharly) - * - * This program is free software: you can redistribute it and/or modify - * it under the terms of the GNU General Public License as published by - * the Free Software Foundation, either version 2 of the License, or - * (at your option) any later version. - * - * This program is distributed in the hope that it will be useful, - * but WITHOUT ANY WARRANTY; without even the implied warranty of - * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the - * GNU General Public License for more details. - * - * You should have received a copy of the GNU General Public License - * along with this program. If not, see <http://www.gnu.org/licenses/>. - */ - -#include QMK_KEYBOARD_H - -enum dilemma_keymap_layers { - LAYER_BASE = 0, - LAYER_NAV, - LAYER_SYM, - LAYER_NUM, -}; - -#define NAV MO(LAYER_NAV) -#define SYM MO(LAYER_SYM) - -// clang-format off -const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = { - [LAYER_BASE] = LAYOUT_split_3x5_3( - // â•â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â•® â•â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â•® - KC_Q, KC_W, KC_E, KC_R, KC_T, KC_Y, KC_U, KC_I, KC_O, KC_P, - // ├─────────────────────────────────────────────┤ ├─────────────────────────────────────────────┤ - KC_A, KC_S, KC_D, KC_F, KC_G, KC_H, KC_J, KC_K, KC_L, KC_SCLN, - // ├─────────────────────────────────────────────┤ ├─────────────────────────────────────────────┤ - KC_Z, KC_X, KC_C, KC_V, KC_B, KC_N, KC_M, KC_COMM, KC_DOT, KC_SLSH, - // ╰─────────────────────────────────────────────┤ ├─────────────────────────────────────────────╯ - KC_A, NAV, CAPSWRD, KC_SPC, SYM, KC_A - // ╰───────────────────────────╯ ╰──────────────────────────╯ - ), - - [LAYER_NAV] = LAYOUT_split_3x5_3( - // â•â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â•® â•â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â•® - KC_TAB, XXXXXXX, XXXXXXX, XXXXXXX, KC_VOLU, XXXXXXX, KC_HOME, KC_UP, KC_END, KC_DEL, - // ├─────────────────────────────────────────────┤ ├─────────────────────────────────────────────┤ - KC_LSFT, KC_LCTL, KC_LALT, KC_RGUI, KC_VOLD, XXXXXXX, KC_LEFT, KC_DOWN, KC_RGHT, KC_BSPC, - // ├─────────────────────────────────────────────┤ ├─────────────────────────────────────────────┤ - QK_BOOT, EE_CLR, KC_MPRV, KC_MNXT, KC_MPLY, XXXXXXX, KC_PGDN, KC_PGUP, XXXXXXX, KC_ENT, - // ╰─────────────────────────────────────────────┤ ├─────────────────────────────────────────────╯ - KC_A, _______, KC_LSFT, KC_SPC, _______, KC_A - // ╰───────────────────────────╯ ╰──────────────────────────╯ - ), - - [LAYER_SYM] = LAYOUT_split_3x5_3( - // â•â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â•® â•â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â•® - KC_ESC, KC_LBRC, KC_LCBR, KC_LPRN, KC_TILD, KC_CIRC, KC_RPRN, KC_RCBR, KC_RBRC, KC_GRV, - // ├─────────────────────────────────────────────┤ ├─────────────────────────────────────────────┤ - KC_MINS, KC_ASTR, KC_EQL, KC_UNDS, KC_DLR, KC_HASH, KC_RGUI, KC_RALT, KC_RCTL, KC_RSFT, - // ├─────────────────────────────────────────────┤ ├─────────────────────────────────────────────┤ - KC_PLUS, KC_PIPE, KC_AT, KC_SLSH, KC_PERC, _______, KC_BSLS, KC_AMPR, KC_QUES, KC_EXLM, - // ╰─────────────────────────────────────────────┤ ├─────────────────────────────────────────────╯ - KC_A, _______, KC_LSFT, KC_SPC, _______, KC_A - // ╰───────────────────────────╯ ╰─────────────┠|