diff options
| -rw-r--r-- | keyboards/kbd66/info.json | 84 | ||||
| -rw-r--r-- | keyboards/kbd66/kbd66.h | 2 | ||||
| -rw-r--r-- | keyboards/kbd66/keymaps/ansi/keymap.c | 6 | ||||
| -rw-r--r-- | keyboards/kbd66/keymaps/default/keymap.c | 6 | ||||
| -rw-r--r-- | keyboards/kbd66/keymaps/iso/keymap.c | 6 | ||||
| -rwxr-xr-x | keyboards/kbd66/keymaps/maartenwut/keymap.c | 10 | ||||
| -rw-r--r-- | keyboards/rama/m6_a/info.json | 19 | ||||
| -rw-r--r-- | keyboards/rama/m6_a/keymaps/default/keymap.c | 542 | ||||
| -rw-r--r-- | keyboards/rama/m6_a/keymaps/knops/keymap.c | 173 | ||||
| -rw-r--r-- | keyboards/rama/m6_a/keymaps/krusli/README.md | 10 | ||||
| -rw-r--r-- | keyboards/rama/m6_a/keymaps/krusli/keymap.c | 100 | ||||
| -rw-r--r-- | keyboards/rama/m6_a/keymaps/naut/keymap.c | 21 | ||||
| -rw-r--r-- | keyboards/rama/m6_a/m6_a.h | 10 |
13 files changed, 565 insertions, 424 deletions
diff --git a/keyboards/kbd66/info.json b/keyboards/kbd66/info.json new file mode 100644 index 000000000..c242abb9f --- /dev/null +++ b/keyboards/kbd66/info.json | |||
| @@ -0,0 +1,84 @@ | |||
| 1 | { | ||
| 2 | "keyboard_name": "kbd66", | ||
| 3 | "url": "", | ||
| 4 | "maintainer": "qmk", | ||
| 5 | "width": 16.5, | ||
| 6 | "height": 5, | ||
| 7 | "layouts": { | ||
| 8 | "LAYOUT": { | ||
| 9 | "layout": [ | ||
| 10 | { "label": "~", "x": 0, "y": 0 }, | ||
| 11 | { "label": "!", "x": 1, "y": 0 }, | ||
| 12 | { "label": "@", "x": 2, "y": 0 }, | ||
| 13 | { "label": "#", "x": 3, "y": 0 }, | ||
| 14 | { "label": "$", "x": 4, "y": 0 }, | ||
| 15 | { "label": "%", "x": 5, "y": 0 }, | ||
| 16 | { "label": "^", "x": 6, "y": 0 }, | ||
| 17 | { "label": "&", "x": 7, "y": 0 }, | ||
| 18 | { "label": "*", "x": 8, "y": 0 }, | ||
| 19 | { "label": "(", "x": 9, "y": 0 }, | ||
| 20 | { "label": ")", "x": 10, "y": 0 }, | ||
| 21 | { "label": "_", "x": 11, "y": 0 }, | ||
| 22 | { "label": "+", "x": 12, "y": 0 }, | ||
| 23 | { "label": "Bkspc", "x": 13, "y": 0 }, | ||
| 24 | { "label": "Bkspc", "x": 14, "y": 0 }, | ||
| 25 | { "x": 15.5, "y": 0 }, | ||
| 26 | { "label": "Tab", "x": 0, "y": 1, "w": 1.5 }, | ||
| 27 | { "label": "Q", "x": 1.5, "y": 1 }, | ||
| 28 | { "label": "W", "x": 2.5, "y": 1 }, | ||
| 29 | { "label": "E", "x": 3.5, "y": 1 }, | ||
| 30 | { "label": "R", "x": 4.5, "y": 1 }, | ||
| 31 | { "label": "T", "x": 5.5, "y": 1 }, | ||
| 32 | { "label": "Y", "x": 6.5, "y": 1 }, | ||
| 33 | { "label": "U", "x": 7.5, "y": 1 }, | ||
| 34 | { "label": "I", "x": 8.5, "y": 1 }, | ||
| 35 | { "label": "O", "x": 9.5, "y": 1 }, | ||
| 36 | { "label": "P", "x": 10.5, "y": 1 }, | ||
| 37 | { "label": "{", "x": 11.5, "y": 1 }, | ||
| 38 | { "label": "}", "x": 12.5, "y": 1 }, | ||
| 39 | { "label": "|", "x": 13.5, "y": 1, "w": 1.5 }, | ||
| 40 | { "x": 15.5, "y": 1 }, | ||
| 41 | { "label": "Caps Lock", "x": 0, "y": 2, "w": 1.75 }, | ||
| 42 | { "label": "A", "x": 1.75, "y": 2 }, | ||
| 43 | { "label": "S", "x": 2.75, "y": 2 }, | ||
| 44 | { "label": "D", "x": 3.75, "y": 2 }, | ||
| 45 | { "label": "F", "x": 4.75, "y": 2 }, | ||
| 46 | { "label": "G", "x": 5.75, "y": 2 }, | ||
| 47 | { "label": "H", "x": 6.75, "y": 2 }, | ||
| 48 | { "label": "J", "x": 7.75, "y": 2 }, | ||
| 49 | { "label": "K", "x": 8.75, "y": 2 }, | ||
| 50 | { "label": "L", "x": 9.75, "y": 2 }, | ||
| 51 | { "label": ":", "x": 10.75, "y": 2 }, | ||
| 52 | { "label": "\"", "x": 11.75, "y": 2 }, | ||
| 53 | { "x": 12.75, "y": 2 }, | ||
| 54 | { "label": "Enter", "x": 13.75, "y": 2, "w": 1.25 }, | ||
| 55 | { "label": "Shift", "x": 0, "y": 3, "w": 1.25 }, | ||
| 56 | { "x": 1.25, "y": 3 }, | ||
| 57 | { "label": "Z", "x": 2.25, "y": 3 }, | ||
| 58 | { "label": "X", "x": 3.25, "y": 3 }, | ||
| 59 | { "label": "C", "x": 4.25, "y": 3 }, | ||
| 60 | { "label": "V", "x": 5.25, "y": 3 }, | ||
| 61 | { "label": "B", "x": 6.25, "y": 3 }, | ||
| 62 | { "label": "N", "x": 7.25, "y": 3 }, | ||
| 63 | { "label": "M", "x": 8.25, "y": 3 }, | ||
| 64 | { "label": "<", "x": 9.25, "y": 3 }, | ||
| 65 | { "label": ">", "x": 10.25, "y": 3 }, | ||
| 66 | { "label": "?", "x": 11.25, "y": 3 }, | ||
| 67 | { "label": "Shift", "x": 12.25, "y": 3, "w": 1.25 }, | ||
| 68 | { "label": "Fn", "x": 13.5, "y": 3 }, | ||
| 69 | { "label": "Up", "x": 14.5, "y": 3 }, | ||
| 70 | { "label": "Ctrl", "x": 0, "y": 4, "w": 1.5 }, | ||
| 71 | { "label": "Win", "x": 1.5, "y": 4, "w": 1.25 }, | ||
| 72 | { "label": "Alt", "x": 2.75, "y": 4, "w": 1.25 }, | ||
| 73 | { "x": 4, "y": 4, "w": 2.75 }, | ||
| 74 | { "x": 6.75, "y": 4, "w": 2.75 }, | ||
| 75 | { "label": "Alt", "x": 9.5, "y": 4, "w": 1.25 }, | ||
| 76 | { "label": "Win", "x": 10.75, "y": 4, "w": 1.25 }, | ||
| 77 | { "label": "Menu", "x": 12, "y": 4, "w": 1.5 }, | ||
| 78 | { "label": "Left", "x": 13.5, "y": 4 }, | ||
| 79 | { "label": "Down", "x": 14.5, "y": 4 }, | ||
| 80 | { "label": "Right", "x": 15.5, "y": 4 } | ||
| 81 | ] | ||
| 82 | } | ||
| 83 | } | ||
| 84 | } | ||
diff --git a/keyboards/kbd66/kbd66.h b/keyboards/kbd66/kbd66.h index af1156e5e..784e8e493 100644 --- a/keyboards/kbd66/kbd66.h +++ b/keyboards/kbd66/kbd66.h | |||
| @@ -19,7 +19,7 @@ | |||
| 19 | #include "quantum.h" | 19 | #include "quantum.h" |
| 20 | 20 | ||
| 21 | // This a shortcut to help you visually see your layout. | 21 | // This a shortcut to help you visually see your layout. |
| 22 | #define KEYMAP( \ | 22 | #define LAYOUT( \ |
| 23 | k00, k01, k02, k03, k04, k05, k06, k07, k08, k09, k0A, k0B, k0C, k0D,k0E, k0F, \ | 23 | k00, k01, k02, k03, k04, k05, k06, k07, k08, k09, k0A, k0B, k0C, k0D,k0E, k0F, \ |
| 24 | k10, k11, k12, k13, k14, k15, k16, k17, k18, k19, k1A, k1B, k1C, k1D, k1F, \ | 24 | k10, k11, k12, k13, k14, k15, k16, k17, k18, k19, k1A, k1B, k1C, k1D, k1F, \ |
| 25 | k20, k21, k22, k23, k24, k25, k26, k27, k28, k29, k2A, k2B, k2D, \ | 25 | k20, k21, k22, k23, k24, k25, k26, k27, k28, k29, k2A, k2B, k2D, \ |
diff --git a/keyboards/kbd66/keymaps/ansi/keymap.c b/keyboards/kbd66/keymaps/ansi/keymap.c index f5ffa7b75..253d8d5db 100644 --- a/keyboards/kbd66/keymaps/ansi/keymap.c +++ b/keyboards/kbd66/keymaps/ansi/keymap.c | |||
| @@ -13,7 +13,7 @@ | |||
| 13 | * You should have received a copy of the GNU General Public License | 13 | * 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 | #include "kbd66.h" | 16 | #include QMK_KEYBOARD_H |
| 17 | 17 | ||
| 18 | #define _____ KC_TRNS | 18 | #define _____ KC_TRNS |
| 19 | #define XXXXX KC_NO | 19 | #define XXXXX KC_NO |
| @@ -35,7 +35,7 @@ const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = { | |||
| 35 | * |Ctl |OS |Alt | Space |Alt | Fn |Ctl |LFT|DWN|RIG| | 35 | * |Ctl |OS |Alt | Space |Alt | Fn |Ctl |LFT|DWN|RIG| |
| 36 | * `-------------------------------------------------------------------' | 36 | * `-------------------------------------------------------------------' |
| 37 | */ | 37 | */ |
| 38 | [_L0] = KEYMAP( | 38 | [_L0] = LAYOUT( |
| 39 | KC_GESC, KC_1, KC_2, KC_3, KC_4, KC_5, KC_6, KC_7, KC_8, KC_9, KC_0, KC_MINS, KC_EQL, XXXXX, KC_BSPC, KC_INS, | 39 | KC_GESC, KC_1, KC_2, KC_3, KC_4, KC_5, KC_6, KC_7, KC_8, KC_9, KC_0, KC_MINS, KC_EQL, XXXXX, KC_BSPC, KC_INS, |
| 40 | KC_TAB, KC_Q, KC_W, KC_E, KC_R, KC_T, KC_Y, KC_U, KC_I, KC_O, KC_P, KC_LBRC, KC_RBRC, KC_BSLS, KC_DEL, | 40 | KC_TAB, KC_Q, KC_W, KC_E, KC_R, KC_T, KC_Y, KC_U, KC_I, KC_O, KC_P, KC_LBRC, KC_RBRC, KC_BSLS, KC_DEL, |
| 41 | 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, | 41 | 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, |
| @@ -56,7 +56,7 @@ const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = { | |||
| 56 | * | | | | | | | | |PDn|SLk| | 56 | * | | | | | | | | |PDn|SLk| |
| 57 | * `-------------------------------------------------------------------' | 57 | * `-------------------------------------------------------------------' |
| 58 | */ | 58 | */ |
| 59 | [_L1] = KEYMAP( | 59 | [_L1] = LAYOUT( |
| 60 | KC_GRV, KC_F1, KC_F2, KC_F3, KC_F4, KC_F5, KC_F6, KC_F7, KC_F8, KC_F9, KC_F10, KC_F11, KC_F12, _____, _____, KC_HOME, | 60 | KC_GRV, KC_F1, KC_F2, KC_F3, KC_F4, KC_F5, KC_F6, KC_F7, KC_F8, KC_F9, KC_F10, KC_F11, KC_F12, _____, _____, KC_HOME, |
| 61 | _____, _____, _____, _____, _____, _____, _____, _____, _____, _____, KC_PSCR, KC_VOLD, KC_VOLU, KC_MUTE, KC_END, | 61 | _____, _____, _____, _____, _____, _____, _____, _____, _____, _____, KC_PSCR, KC_VOLD, KC_VOLU, KC_MUTE, KC_END, |
| 62 | RESET, _____, _____, _____, _____, _____, _____, KC_MPRV, KC_MPLY, KC_MNXT, KC_MSTP, _____, _____, | 62 | RESET, _____, _____, _____, _____, _____, _____, KC_MPRV, KC_MPLY, KC_MNXT, KC_MSTP, _____, _____, |
diff --git a/keyboards/kbd66/keymaps/default/keymap.c b/keyboards/kbd66/keymaps/default/keymap.c index 551df1418..3e8a90ee5 100644 --- a/keyboards/kbd66/keymaps/default/keymap.c +++ b/keyboards/kbd66/keymaps/default/keymap.c | |||
| @@ -13,7 +13,7 @@ | |||
| 13 | * You should have received a copy of the GNU General Public License | 13 | * 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 | #include "kbd66.h" | 16 | #include QMK_KEYBOARD_H |
| 17 | 17 | ||
| 18 | #define _____ KC_TRNS | 18 | #define _____ KC_TRNS |
| 19 | #define XXXXX KC_NO | 19 | #define XXXXX KC_NO |
| @@ -35,7 +35,7 @@ const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = { | |||
| 35 | * |Ctl |OS |Alt | Space |Alt | Fn |Ctl |LFT|DWN|RIG| | 35 | * |Ctl |OS |Alt | Space |Alt | Fn |Ctl |LFT|DWN|RIG| |
| 36 | * `-------------------------------------------------------------------' | 36 | * `-------------------------------------------------------------------' |
| 37 | */ | 37 | */ |
| 38 | [_L0] = KEYMAP( | 38 | [_L0] = LAYOUT( |
| 39 | KC_GESC, 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_GRV, KC_BSPC, KC_INS, | 39 | KC_GESC, 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_GRV, KC_BSPC, KC_INS, |
| 40 | KC_TAB, KC_Q, KC_W, KC_E, KC_R, KC_T, KC_Y, KC_U, KC_I, KC_O, KC_P, KC_LBRC, KC_RBRC, KC_BSLS, KC_DEL, | 40 | KC_TAB, KC_Q, KC_W, KC_E, KC_R, KC_T, KC_Y, KC_U, KC_I, KC_O, KC_P, KC_LBRC, KC_RBRC, KC_BSLS, KC_DEL, |
| 41 | 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, | 41 | 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, |
| @@ -56,7 +56,7 @@ const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = { | |||
| 56 | * | | | | | | | | |PDn|SLk| | 56 | * | | | | | | | | |PDn|SLk| |
| 57 | * `-------------------------------------------------------------------' | 57 | * `-------------------------------------------------------------------' |
| 58 | */ | 58 | */ |
| 59 | [_L1] = KEYMAP( | 59 | [_L1] = LAYOUT( |
| 60 | KC_GRV, KC_F1, KC_F2, KC_F3, KC_F4, KC_F5, KC_F6, KC_F7, KC_F8, KC_F9, KC_F10, KC_F11, KC_F12, _____, _____, KC_HOME, | 60 | KC_GRV, KC_F1, KC_F2, KC_F3, KC_F4, KC_F5, KC_F6, KC_F7, KC_F8, KC_F9, KC_F10, KC_F11, KC_F12, _____, _____, KC_HOME, |
| 61 | _____, _____, _____, _____, _____, _____, _____, _____, _____, _____, KC_PSCR, KC_VOLD, KC_VOLU, KC_MUTE, KC_END, | 61 | _____, _____, _____, _____, _____, _____, _____, _____, _____, _____, KC_PSCR, KC_VOLD, KC_VOLU, KC_MUTE, KC_END, |
| 62 | RESET, _____, _____, _____, _____, _____, _____, KC_MPRV, KC_MPLY, KC_MNXT, KC_MSTP, _____, _____, | 62 | RESET, _____, _____, _____, _____, _____, _____, KC_MPRV, KC_MPLY, KC_MNXT, KC_MSTP, _____, _____, |
diff --git a/keyboards/kbd66/keymaps/iso/keymap.c b/keyboards/kbd66/keymaps/iso/keymap.c index fa9202cad..6b9b7ac4d 100644 --- a/keyboards/kbd66/keymaps/iso/keymap.c +++ b/keyboards/kbd66/keymaps/iso/keymap.c | |||
| @@ -13,7 +13,7 @@ | |||
| 13 | * You should have received a copy of the GNU General Public License | 13 | * 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 | #include "kbd66.h" | 16 | #include QMK_KEYBOARD_H |
| 17 | 17 | ||
| 18 | #define _____ KC_TRNS | 18 | #define _____ KC_TRNS |
| 19 | #define XXXXX KC_NO | 19 | #define XXXXX KC_NO |
| @@ -35,7 +35,7 @@ const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = { | |||
| 35 | * |Ctl |OS |Alt | Space |Alt | Fn |Ctl |LFT|DWN|RIG| | 35 | * |Ctl |OS |Alt | Space |Alt | Fn |Ctl |LFT|DWN|RIG| |
| 36 | * `-------------------------------------------------------------------' | 36 | * `-------------------------------------------------------------------' |
| 37 | */ | 37 | */ |
| 38 | [_L0] = KEYMAP( | 38 | [_L0] = LAYOUT( |
| 39 | KC_GESC, 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_GRV, KC_BSPC, KC_INS, | 39 | KC_GESC, 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_GRV, KC_BSPC, KC_INS, |
| 40 | 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_NUHS, KC_DEL, | 40 | 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_NUHS, KC_DEL, |
| 41 | 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, | 41 | 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, |
| @@ -56,7 +56,7 @@ const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = { | |||
| 56 | * | | | | | | | | |PDn|SLk| | 56 | * | | | | | | | | |PDn|SLk| |
| 57 | * `-------------------------------------------------------------------' | 57 | * `-------------------------------------------------------------------' |
| 58 | */ | 58 | */ |
| 59 | [_L1] = KEYMAP( | 59 | [_L1] = LAYOUT( |
| 60 | KC_GRV, KC_F1, KC_F2, KC_F3, KC_F4, KC_F5, KC_F6, KC_F7, KC_F8, KC_F9, KC_F10, KC_F11, KC_F12, _____, _____, KC_HOME, | 60 | KC_GRV, KC_F1, KC_F2, KC_F3, KC_F4, KC_F5, KC_F6, KC_F7, KC_F8, KC_F9, KC_F10, KC_F11, KC_F12, _____, _____, KC_HOME, |
| 61 | _____, _____, _____, _____, _____, _____, _____, _____, _____, _____, KC_PSCR, KC_VOLD, KC_VOLU, KC_MUTE, KC_END, | 61 | _____, _____, _____, _____, _____, _____, _____, _____, _____, _____, KC_PSCR, KC_VOLD, KC_VOLU, KC_MUTE, KC_END, |
| 62 | RESET, _____, _____, _____, _____, _____, _____, KC_MPRV, KC_MPLY, KC_MNXT, KC_MSTP, _____, _____, | 62 | RESET, _____, _____, _____, _____, _____, _____, KC_MPRV, KC_MPLY, KC_MNXT, KC_MSTP, _____, _____, |
diff --git a/keyboards/kbd66/keymaps/maartenwut/keymap.c b/keyboards/kbd66/keymaps/maartenwut/keymap.c index 4ca794c96..da438022e 100755 --- a/keyboards/kbd66/keymaps/maartenwut/keymap.c +++ b/keyboards/kbd66/keymaps/maartenwut/keymap.c | |||
| @@ -1,4 +1,4 @@ | |||
| 1 | #include "kbd66.h" | 1 | #include QMK_KEYBOARD_H |
| 2 | 2 | ||
| 3 | #define _MA 0 | 3 | #define _MA 0 |
| 4 | #define _GA 1 | 4 | #define _GA 1 |
| @@ -14,7 +14,7 @@ | |||
| 14 | 14 | ||
| 15 | const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = { | 15 | const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = { |
| 16 | // Main Layer | 16 | // Main Layer |
| 17 | [_MA] = KEYMAP( | 17 | [_MA] = LAYOUT( |
| 18 | KC_GESC, KC_1, KC_2, KC_3, KC_4, KC_5, KC_6, KC_7, KC_8, KC_9, KC_0, KC_MINS, KC_EQL, ______, KC_BSPC, KC_MPLY, | 18 | KC_GESC, KC_1, KC_2, KC_3, KC_4, KC_5, KC_6, KC_7, KC_8, KC_9, KC_0, KC_MINS, KC_EQL, ______, KC_BSPC, KC_MPLY, |
| 19 | KC_TAB, KC_Q, KC_W, KC_E, KC_R, KC_T, KC_Y, KC_U, KC_I, KC_O, KC_P, KC_LBRC, KC_RBRC, KC_BSLS, KC_DEL, | 19 | KC_TAB, KC_Q, KC_W, KC_E, KC_R, KC_T, KC_Y, KC_U, KC_I, KC_O, KC_P, KC_LBRC, KC_RBRC, KC_BSLS, KC_DEL, |
| 20 | 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, | 20 | 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, |
| @@ -22,7 +22,7 @@ const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = { | |||
| 22 | KC_LCTL, KC_LGUI, KC_LALT, SPACE, SPACE, KC_RALT, KC_RCTRL, MO(_FL), KC_LEFT, KC_DOWN, KC_RGHT), | 22 | KC_LCTL, KC_LGUI, KC_LALT, SPACE, SPACE, KC_RALT, KC_RCTRL, MO(_FL), KC_LEFT, KC_DOWN, KC_RGHT), |
| 23 | 23 | ||
| 24 | //Function Layer | 24 | //Function Layer |
| 25 | [_FL] = KEYMAP( | 25 | [_FL] = LAYOUT( |
| 26 | KC_GRV, KC_F1, KC_F2, KC_F3, KC_F4, KC_F5, KC_F6, KC_F7, KC_F8, KC_F9, KC_F10, KC_F11, KC_F12, TRNS, RESET, KC_PSCR, | 26 | KC_GRV, KC_F1, KC_F2, KC_F3, KC_F4, KC_F5, KC_F6, KC_F7, KC_F8, KC_F9, KC_F10, KC_F11, KC_F12, TRNS, RESET, KC_PSCR, |
| 27 | TRNS, ______, ______, ______, TRNS, TRNS, TRNS, TRNS, TRNS, TRNS, TRNS, TRNS, TRNS, TRNS, ______, | 27 | TRNS, ______, ______, ______, TRNS, TRNS, TRNS, TRNS, TRNS, TRNS, TRNS, TRNS, TRNS, TRNS, ______, |
| 28 | TRNS, ______, ______, ______, TRNS, TG(_GA), TRNS, TRNS, TRNS, TRNS, TRNS, TRNS, TRNS, | 28 | TRNS, ______, ______, ______, TRNS, TG(_GA), TRNS, TRNS, TRNS, TRNS, TRNS, TRNS, TRNS, |
| @@ -30,7 +30,7 @@ const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = { | |||
| 30 | TRNS, TRNS, TRNS, TRNS, TRNS, TRNS, TRNS, TRNS, ______, KC_PGDN, ______), | 30 | TRNS, TRNS, TRNS, TRNS, TRNS, TRNS, TRNS, TRNS, ______, KC_PGDN, ______), |
| 31 | 31 | ||
| 32 | //Arrow keys layer (space bar) | 32 | //Arrow keys layer (space bar) |
| 33 | [_AR] = KEYMAP( | 33 | [_AR] = LAYOUT( |
| 34 | KC_GRV, KC_F1, KC_F2, KC_F3, KC_F4, KC_F5, KC_F6, KC_F7, KC_F8, KC_F9, KC_F10, KC_F11, KC_F12, TRNS, TRNS, TRNS, | 34 | KC_GRV, KC_F1, KC_F2, KC_F3, KC_F4, KC_F5, KC_F6, KC_F7, KC_F8, KC_F9, KC_F10, KC_F11, KC_F12, TRNS, TRNS, TRNS, |
| 35 | TRNS, TRNS, TRNS, TRNS, TRNS, TRNS, TRNS, TRNS, TRNS, TRNS, TRNS, TRNS, TRNS, TRNS, TRNS, | 35 | TRNS, TRNS, TRNS, TRNS, TRNS, TRNS, TRNS, TRNS, TRNS, TRNS, TRNS, TRNS, TRNS, TRNS, TRNS, |
| 36 | TRNS, TRNS, TRNS, TRNS, TRNS, TRNS, TRNS, TRNS, TRNS, TRNS, TRNS, TRNS, TRNS, | 36 | TRNS, TRNS, TRNS, TRNS, TRNS, TRNS, TRNS, TRNS, TRNS, TRNS, TRNS, TRNS, TRNS, |
| @@ -38,7 +38,7 @@ const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = { | |||
| 38 | TRNS, TRNS, TRNS, TRNS, TRNS, TRNS, TRNS, TRNS, TRNS, TRNS, TRNS), | 38 | TRNS, TRNS, TRNS, TRNS, TRNS, TRNS, TRNS, TRNS, TRNS, TRNS, TRNS), |
| 39 | 39 | ||
| 40 | //Game layer (fn + g) | 40 | //Game layer (fn + g) |
| 41 | [_GA] = KEYMAP( | 41 | [_GA] = LAYOUT( |
| 42 | TRNS, TRNS, TRNS, TRNS, TRNS, TRNS, TRNS, TRNS, TRNS, TRNS, TRNS, TRNS, TRNS, TRNS, TRNS, TRNS, | 42 | TRNS, TRNS, TRNS, TRNS, TRNS, TRNS, TRNS, TRNS, TRNS, TRNS, TRNS, TRNS, TRNS, TRNS, TRNS, TRNS, |
| 43 | TRNS, TRNS, TRNS, TRNS, TRNS, TRNS, TRNS, TRNS, TRNS, TRNS, TRNS, TRNS, TRNS, TRNS, TRNS, | 43 | TRNS, TRNS, TRNS, TRNS, TRNS, TRNS, TRNS, TRNS, TRNS, TRNS, TRNS, TRNS, TRNS, TRNS, TRNS, |
| 44 | TRNS, TRNS, TRNS, TRNS, TRNS, TRNS, TRNS, TRNS, TRNS, TRNS, TRNS, TRNS, TRNS, | 44 | TRNS, TRNS, TRNS, TRNS, TRNS, TRNS, TRNS, TRNS, TRNS, TRNS, TRNS, TRNS, TRNS, |
diff --git a/keyboards/rama/m6_a/info.json b/keyboards/rama/m6_a/info.json new file mode 100644 index 000000000..28dd733da --- /dev/null +++ b/keyboards/rama/m6_a/info.json | |||
| @@ -0,0 +1,19 @@ | |||
| 1 | { | ||
| 2 | "keyboard_name": "m6-a", | ||
| 3 | "url": "", | ||
| 4 | "maintainer": "qmk", | ||
| 5 | "width": 3, | ||
| 6 | "height": 2, | ||
| 7 | "layouts": { | ||
| 8 | "LAYOUT": { | ||
| 9 | "layout": [ | ||
| 10 | { "x": 0, "y": 0 }, | ||
| 11 | { "x": 1, "y": 0 }, | ||
| 12 | { "x": 2, "y": 0 }, | ||
| 13 | { "x": 0, "y": 1 }, | ||
| 14 | { "x": 1, "y": 1 }, | ||
| 15 | { "x": 2, "y": 1 } | ||
| 16 | ] | ||
| 17 | } | ||
| 18 | } | ||
| 19 | } | ||
diff --git a/keyboards/rama/m6_a/keymaps/default/keymap.c b/keyboards/rama/m6_a/keymaps/default/keymap.c index 1323ba6f2..6b15f3cd1 100644 --- a/keyboards/rama/m6_a/keymaps/default/keymap.c +++ b/keyboards/rama/m6_a/keymaps/default/keymap.c | |||
| @@ -1,298 +1,324 @@ | |||
| 1 | #include "../../m6_a.h" | 1 | #include QMK_KEYBOARD_H |
| 2 | 2 | ||
| 3 | const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = { | 3 | const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = { |
| 4 | 4 | ||
| 5 | KEYMAP( | 5 | LAYOUT( |
| 6 | TO(1), KC_A, KC_B, KC_C, KC_D, KC_E), | 6 | TO(1), KC_A, KC_B, KC_C, KC_D, KC_E), |
| 7 | 7 | ||
| 8 | KEYMAP( | 8 | LAYOUT( |
| 9 | TO(2), KC_F, KC_G, KC_H, KC_I, KC_J), | 9 | TO(2), KC_F, KC_G, KC_H, KC_I, KC_J), |
| 10 | 10 | ||
| 11 | KEYMAP( | 11 | LAYOUT( |
| 12 | TO(3), KC_K, KC_L, KC_M, KC_N, KC_O), | 12 | TO(3), KC_K, KC_L, KC_M, KC_N, KC_O), |
| 13 | 13 | ||
| 14 | KEYMAP( | 14 | LAYOUT( |
| 15 | TO(4), KC_P, KC_Q, KC_R, KC_S, KC_T), | 15 | TO(4), KC_P, KC_Q, KC_R, KC_S, KC_T), |
| 16 | 16 | ||
| 17 | KEYMAP( | 17 | LAYOUT( |
| 18 | TO(5), KC_U, KC_V, KC_W, KC_X, KC_Y), | 18 | TO(5), KC_U, KC_V, KC_W, KC_X, KC_Y), |
| 19 | 19 | ||
| 20 | KEYMAP( | 20 | LAYOUT( |
| 21 | TO(0), KC_Z, KC_1, KC_2, KC_3, KC_4) | 21 | TO(0), KC_Z, KC_1, KC_2, KC_3, KC_4)}; |
| 22 | }; | ||
| 23 | 22 | ||
| 24 | const macro_t *action_get_macro(keyrecord_t *record, uint8_t id, uint8_t opt) { | 23 | const macro_t *action_get_macro(keyrecord_t *record, uint8_t id, uint8_t opt) |
| 25 | //keyevent_t event = record->event; | 24 | { |
| 25 | //keyevent_t event = record->event; | ||
| 26 | 26 | ||
| 27 | switch (id) { | 27 | switch (id) |
| 28 | case 0: | 28 | { |
| 29 | if (record->event.pressed) { | 29 | case 0: |
| 30 | return MACRO( T(T), T(G), T(L), T(H), T(F), T(ENT), END ); | 30 | if (record->event.pressed) |
| 31 | } | 31 | { |
| 32 | break; | 32 | return MACRO(T(T), T(G), T(L), T(H), T(F), T(ENT), END); |
| 33 | case 1: | 33 | } |
| 34 | if (record->event.pressed) { | 34 | break; |
| 35 | return MACRO( T(T), T(G), T(G), T(ENT), END ); | 35 | case 1: |
| 36 | } | 36 | if (record->event.pressed) |
| 37 | break; | 37 | { |
| 38 | case 2: | 38 | return MACRO(T(T), T(G), T(G), T(ENT), END); |
| 39 | if (record->event.pressed) { | 39 | } |
| 40 | return MACRO( D(NO), T(L), U(NO), END ); | 40 | break; |
| 41 | } | 41 | case 2: |
| 42 | break; | 42 | if (record->event.pressed) |
| 43 | case 3: | 43 | { |
| 44 | if (record->event.pressed) { | 44 | return MACRO(D(NO), T(L), U(NO), END); |
| 45 | return MACRO( D(LCTL), T(Z), U(LCTL), END ); | 45 | } |
| 46 | } | 46 | break; |
| 47 | break; | 47 | case 3: |
| 48 | case 4: | 48 | if (record->event.pressed) |
| 49 | if (record->event.pressed) { | 49 | { |
| 50 | return MACRO( D(LCTL), D(LSFT), T(Z), U(LSFT), U(LCTL), END ); | 50 | return MACRO(D(LCTL), T(Z), U(LCTL), END); |
| 51 | } | 51 | } |
| 52 | break; | 52 | break; |
| 53 | case 5: | 53 | case 4: |
| 54 | if (record->event.pressed) { | 54 | if (record->event.pressed) |
| 55 | return MACRO( D(LCTL), T(X), U(LCTL), END ); | 55 | { |
| 56 | } | 56 | return MACRO(D(LCTL), D(LSFT), T(Z), U(LSFT), U(LCTL), END); |
| 57 | break; | 57 | } |
| 58 | case 6: | 58 | break; |
| 59 | if (record->event.pressed) { | 59 | case 5: |
| 60 | return MACRO( D(LCTL), T(C), U(LCTL), END ); | 60 | if (record->event.pressed) |
| 61 | } | 61 | { |
| 62 | break; | 62 | return MACRO(D(LCTL), T(X), U(LCTL), END); |
| 63 | case 7: | 63 | } |
| 64 | if (record->event.pressed) { | 64 | break; |
| 65 | return MACRO( D(LCTL), T(V), U(LCTL), END ); | 65 | case 6: |
| 66 | } | 66 | if (record->event.pressed) |
| 67 | break; | 67 | { |
| 68 | } | 68 | return MACRO(D(LCTL), T(C), U(LCTL), END); |
| 69 | return MACRO_NONE; | 69 | } |
| 70 | break; | ||
| 71 | case 7: | ||
| 72 | if (record->event.pressed) | ||
| 73 | { | ||
| 74 | return MACRO(D(LCTL), T(V), U(LCTL), END); | ||
| 75 | } | ||
| 76 | break; | ||
| 77 | } | ||
| 78 | return MACRO_NONE; | ||
| 70 | } | 79 | } |
| 71 | 80 | ||
| 72 | // M6-A LEDs are connected to D6, B6, F5, B4, C7, F7 | 81 | // M6-A LEDs are connected to D6, B6, F5, B4, C7, F7 |
| 73 | // This is 1-based because I copied it from Knops code. | 82 | // This is 1-based because I copied it from Knops code. |
| 74 | void set_switch_led(int ledId, bool state) { | 83 | void set_switch_led(int ledId, bool state) |
| 75 | if(state) { | 84 | { |
| 76 | switch(ledId) { | 85 | if (state) |
| 77 | case 1: | 86 | { |
| 78 | PORTD |= (1<<6); | 87 | switch (ledId) |
| 79 | break; | 88 | { |
| 80 | case 2: | 89 | case 1: |
| 81 | PORTB |= (1<<6); | 90 | PORTD |= (1 << 6); |
| 82 | break; | 91 | break; |
| 83 | case 3: | 92 | case 2: |
| 84 | PORTF |= (1<<5); | 93 | PORTB |= (1 << 6); |
| 85 | break; | 94 | break; |
| 86 | case 4: | 95 | case 3: |
| 87 | PORTB |= (1<<4); | 96 | PORTF |= (1 << 5); |
| 88 | break; | 97 | break; |
| 89 | case 5: | 98 | case 4: |
| 90 | PORTC |= (1<<7); | 99 | PORTB |= (1 << 4); |
| 91 | break; | 100 | break; |
| 92 | case 6: | 101 | case 5: |
| 93 | PORTF |= (1<<7); | 102 | PORTC |= (1 << 7); |
| 94 | break; | 103 | break; |
| 95 | } | 104 | case 6: |
| 96 | } else { | 105 | PORTF |= (1 << 7); |
| 97 | switch(ledId) { | 106 | break; |
| 98 | case 1: | 107 | } |
| 99 | PORTD &= ~(1<<6); | 108 | } |
| 100 | break; | 109 | else |
| 101 | case 2: | 110 | { |
| 102 | PORTB &= ~(1<<6); | 111 | switch (ledId) |
| 103 | break; | 112 | { |
| 104 | case 3: | 113 | case 1: |
| 105 | PORTF &= ~(1<<5); | 114 | PORTD &= ~(1 << 6); |
| 106 | break; | 115 | break; |
| 107 | case 4: | 116 | case 2: |
| 108 | PORTB &= ~(1<<4); | 117 | PORTB &= ~(1 << 6); |
| 109 | break; | 118 | break; |
| 110 | case 5: | 119 | case 3: |
| 111 | PORTC &= ~(1<<7); | 120 | PORTF &= ~(1 << 5); |
| 112 | break; | 121 | break; |
| 113 | case 6: | 122 | case 4: |
| 114 | PORTF &= ~(1<<7); | 123 | PORTB &= ~(1 << 4); |
| 115 | break; | 124 | break; |
| 116 | } | 125 | case 5: |
| 117 | } | 126 | PORTC &= ~(1 << 7); |
| 127 | break; | ||
| 128 | case 6: | ||
| 129 | PORTF &= ~(1 << 7); | ||
| 130 | break; | ||
| 131 | } | ||
| 132 | } | ||
| 118 | } | 133 | } |
| 119 | 134 | ||
| 120 | 135 | void set_layer_led(int layerId) | |
| 121 | void set_layer_led(int layerId) { | 136 | { |
| 122 | // UNUSED | 137 | // UNUSED |
| 123 | } | 138 | } |
| 124 | 139 | ||
| 125 | void led_set_layer(int layer); | 140 | void led_set_layer(int layer); |
| 126 | 141 | ||
| 127 | void matrix_init_user(void) { | 142 | void matrix_init_user(void) |
| 128 | led_init_ports(); | 143 | { |
| 129 | led_set_layer(0); | 144 | led_init_ports(); |
| 145 | led_set_layer(0); | ||
| 130 | } | 146 | } |
| 131 | 147 | ||
| 132 | void matrix_scan_user(void) { | 148 | void matrix_scan_user(void) |
| 149 | { | ||
| 133 | } | 150 | } |
| 134 | 151 | ||
| 135 | // M6-A LEDs are connected to D6, B6, F5, B4, C7, F7 | 152 | // M6-A LEDs are connected to D6, B6, F5, B4, C7, F7 |
| 136 | void led_init_ports() { | 153 | void led_init_ports() |
| 137 | // Switch #1 | 154 | { |
| 138 | DDRD |= (1<<6); | 155 | // Switch #1 |
| 139 | PORTD &= ~(1<<6); | 156 | DDRD |= (1 << 6); |
| 140 | 157 | PORTD &= ~(1 << 6); | |
| 141 | // Switch #2 | ||
| 142 | DDRB |= (1<<6); | ||
| 143 | PORTB &= ~(1<<6); | ||
| 144 | |||
| 145 | // Switch #3 | ||
| 146 | DDRF |= (1<<5); | ||
| 147 | PORTF &= ~(1<<5); | ||
| 148 | |||
| 149 | // Switch #4 | ||
| 150 | DDRB |= (1<<4); | ||
| 151 | PORTB &= ~(1<<4); | ||
| 152 | 158 | ||
| 153 | // Switch #5 | 159 | // Switch #2 |
| 154 | DDRC |= (1<<7); | 160 | DDRB |= (1 << 6); |
| 155 | PORTC &= ~(1<<7); | 161 | PORTB &= ~(1 << 6); |
| 156 | |||
| 157 | // Switch #6 | ||
| 158 | DDRF |= (1<<7); | ||
| 159 | PORTF &= ~(1<<7); | ||
| 160 | } | ||
| 161 | 162 | ||
| 162 | void led_set_user(uint8_t usb_led) { | 163 | // Switch #3 |
| 164 | DDRF |= (1 << 5); | ||
| 165 | PORTF &= ~(1 << 5); | ||
| 163 | 166 | ||
| 164 | if (usb_led & (1 << USB_LED_NUM_LOCK)) { | 167 | // Switch #4 |
| 165 | 168 | DDRB |= (1 << 4); | |
| 166 | } else { | 169 | PORTB &= ~(1 << 4); |
| 167 | |||
| 168 | } | ||
| 169 | 170 | ||
| 170 | if (usb_led & (1 << USB_LED_CAPS_LOCK)) { | 171 | // Switch #5 |
| 172 | DDRC |= (1 << 7); | ||
| 173 | PORTC &= ~(1 << 7); | ||
| 174 | |||
| 175 | // Switch #6 | ||
| 176 | DDRF |= (1 << 7); | ||
| 177 | PORTF &= ~(1 << 7); | ||
| 178 | } | ||
| 171 | 179 | ||
| 172 | } else { | 180 | void led_set_user(uint8_t usb_led) |
| 181 | { | ||
| 173 | 182 | ||
| 174 | } | 183 | if (usb_led & (1 << USB_LED_NUM_LOCK)) |
| 184 | { | ||
| 185 | } | ||
| 186 | else | ||
| 187 | { | ||
| 188 | } | ||
| 175 | 189 | ||
| 176 | if (usb_led & (1 << USB_LED_SCROLL_LOCK)) { | 190 | if (usb_led & (1 << USB_LED_CAPS_LOCK)) |
| 177 | 191 | { | |
| 178 | } else { | 192 | } |
| 179 | 193 | else | |
| 180 | } | 194 | { |
| 195 | } | ||
| 181 | 196 | ||
| 182 | if (usb_led & (1 << USB_LED_COMPOSE)) { | 197 | if (usb_led & (1 << USB_LED_SCROLL_LOCK)) |
| 183 | 198 | { | |
| 184 | } else { | 199 | } |
| 185 | 200 | else | |
| 186 | } | 201 | { |
| 202 | } | ||
| 187 | 203 | ||
| 188 | if (usb_led & (1 << USB_LED_KANA)) { | 204 | if (usb_led & (1 << USB_LED_COMPOSE)) |
| 189 | 205 | { | |
| 190 | } else { | 206 | } |
| 191 | 207 | else | |
| 192 | } | 208 | { |
| 209 | } | ||
| 193 | 210 | ||
| 211 | if (usb_led & (1 << USB_LED_KANA)) | ||
| 212 | { | ||
| 213 | } | ||
| 214 | else | ||
| 215 | { | ||
| 216 | } | ||
| 194 | } | 217 | } |
| 195 | 218 | ||
| 196 | void led_set_layer(int layer) { | 219 | void led_set_layer(int layer) |
| 197 | switch(layer) { | 220 | { |
| 198 | case 0: | 221 | switch (layer) |
| 199 | set_switch_led(1, true); | 222 | { |
| 200 | set_switch_led(2, false); | 223 | case 0: |
| 201 | set_switch_led(3, false); | 224 | set_switch_led(1, true); |
| 202 | set_switch_led(4, false); | 225 | set_switch_led(2, false); |
| 203 | set_switch_led(5, false); | 226 | set_switch_led(3, false); |
| 204 | set_switch_led(6, false); | 227 | set_switch_led(4, false); |
| 205 | break; | 228 | set_switch_led(5, false); |
| 206 | case 1: | 229 | set_switch_led(6, false); |
| 207 | set_switch_led(1, false); | 230 | break; |
| 208 | set_switch_led(2, true); | 231 | case 1: |
| 209 | set_switch_led(3, false); | 232 | set_switch_led(1, false); |
| 210 | set_switch_led(4, false); | 233 | set_switch_led(2, true); |
| 211 | set_switch_led(5, false); | 234 | set_switch_led(3, false); |
| 212 | set_switch_led(6, false); | 235 | set_switch_led(4, false); |
| 213 | break; | 236 | set_switch_led(5, false); |
| 214 | case 2: | 237 | set_switch_led(6, false); |
| 215 | set_switch_led(1, false); | 238 | break; |
| 216 | set_switch_led(2, false); | 239 | case 2: |
| 217 | set_switch_led(3, true); | 240 | set_switch_led(1, false); |
| 218 | set_switch_led(4, false); | 241 | set_switch_led(2, false); |
| 219 | set_switch_led(5, false); | 242 | set_switch_led(3, true); |
| 220 | set_switch_led(6, false); | 243 | set_switch_led(4, false); |
| 221 | break; | 244 | set_switch_led(5, false); |
| 222 | case 3: | 245 | set_switch_led(6, false); |
| 223 | set_switch_led(1, false); | 246 | break; |
| 224 | set_switch_led(2, false); | 247 | case 3: |
| 225 | set_switch_led(3, false); | 248 | set_switch_led(1, false); |
| 226 | set_switch_led(4, true); | 249 | set_switch_led(2, false); |
| 227 | set_switch_led(5, false); | 250 | set_switch_led(3, false); |
| 228 | set_switch_led(6, false); | 251 | set_switch_led(4, true); |
| 229 | break; | 252 | set_switch_led(5, false); |
| 230 | case 4: | 253 | set_switch_led(6, false); |
| 231 | set_switch_led(1, false); | 254 | break; |
| 232 | set_switch_led(2, false); | 255 | case 4: |
| 233 | set_switch_led(3, false); | 256 | set_switch_led(1, false); |
| 234 | set_switch_led(4, false); | 257 | set_switch_led(2, false); |
| 235 | set_switch_led(5, true); | 258 | set_switch_led(3, false); |
| 236 | set_switch_led(6, false); | 259 | set_switch_led(4, false); |
| 237 | break; | 260 | set_switch_led(5, true); |
| 238 | case 5: | 261 | set_switch_led(6, false); |
| 239 | set_switch_led(1, false); | 262 | break; |
| 240 | set_switch_led(2, false); | 263 | case 5: |
| 241 | set_switch_led(3, false); | 264 | set_switch_led(1, false); |
| 242 | set_switch_led(4, false); | 265 | set_switch_led(2, false); |
| 243 | set_switch_led(5, false); | 266 | set_switch_led(3, false); |
| 244 | set_switch_led(6, true); | 267 | set_switch_led(4, false); |
| 245 | break; | 268 | set_switch_led(5, false); |
| 246 | default: | 269 | set_switch_led(6, true); |
| 247 | set_switch_led(1, true); | 270 | break; |
| 248 | set_switch_led(2, true); | 271 | default: |
| 249 | set_switch_led(3, true); | 272 | set_switch_led(1, true); |
| 250 | set_switch_led(4, true); | 273 | set_switch_led(2, true); |
| 251 | set_switch_led(5, true); | 274 | set_switch_led(3, true); |
| 252 | set_switch_led(6, true); | 275 | set_switch_led(4, true); |
| 253 | break; | 276 | set_switch_led(5, true); |
| 254 | } | 277 | set_switch_led(6, true); |
| 278 | break; | ||
| 279 | } | ||
| 255 | } | 280 | } |
| 256 | 281 | ||
| 257 | bool process_record_user (uint16_t keycode, keyrecord_t *record) { | 282 | bool process_record_user(uint16_t keycode, keyrecord_t *record) |
| 258 | switch ( keycode ) | 283 | { |
| 259 | { | 284 | switch (keycode) |
| 260 | case TO( 0 ): | 285 | { |
| 261 | if ( record->event.pressed ) | 286 | case TO(0): |
| 262 | { | 287 | if (record->event.pressed) |
| 263 | led_set_layer( 0 ); | 288 | { |
| 264 | } | 289 | led_set_layer(0); |
| 265 | break; | 290 | } |
| 266 | case TO( 1 ): | 291 | break; |
| 267 | if ( record->event.pressed ) | 292 | case TO(1): |
| 268 | { | 293 | if (record->event.pressed) |
| 269 | led_set_layer( 1 ); | 294 | { |
| 270 | } | 295 | led_set_layer(1); |
| 271 | break; | 296 | } |
| 272 | case TO( 2 ): | 297 | break; |
| 273 | if ( record->event.pressed ) | 298 | case TO(2): |
| 274 | { | 299 | if (record->event.pressed) |
| 275 | led_set_layer( 2 ); | 300 | { |
| 276 | } | 301 | led_set_layer(2); |
| 277 | break; | 302 | } |
| 278 | case TO( 3 ): | 303 | break; |
| 279 | if ( record->event.pressed ) | 304 | case TO(3): |
| 280 | { | 305 | if (record->event.pressed) |
| 281 | led_set_layer( 3 ); | 306 | { |
| 282 | } | 307 | led_set_layer(3); |
| 283 | break; | 308 | } |
| 284 | case TO( 4 ): | 309 | break; |
| 285 | if ( record->event.pressed ) | 310 | case TO(4): |
| 286 | { | 311 | if (record->event.pressed) |
| 287 | led_set_layer( 4 ); | 312 | { |
| 288 | } | 313 | led_set_layer(4); |
| 289 | break; | 314 | } |
| 290 | case TO( 5 ): | 315 | break; |
| 291 | if ( record->event.pressed ) | 316 | case TO(5): |
| 292 | { | 317 | if (record->event.pressed) |
| 293 | led_set_layer( 5 ); | 318 | { |
| 294 | } | 319 | led_set_layer(5); |
| 295 | break; | 320 | } |
| 296 | } | 321 | break; |
| 297 | return true; | 322 | } |
| 323 | return true; | ||
| 298 | } | 324 | } |
diff --git a/keyboards/rama/m6_a/keymaps/knops/keymap.c b/keyboards/rama/m6_a/keymaps/knops/keymap.c index 912147f4b..d687fe851 100644 --- a/keyboards/rama/m6_a/keymaps/knops/keymap.c +++ b/keyboards/rama/m6_a/keymaps/knops/keymap.c | |||
| @@ -1,92 +1,100 @@ | |||
| 1 | #include "../../m6_a.h" | 1 | #include QMK_KEYBOARD_H |
| 2 | 2 | ||
| 3 | /*KNOPS_MISC*/ | 3 | /*KNOPS_MISC*/ |
| 4 | 4 | ||
| 5 | const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = { | 5 | const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = { |
| 6 | 6 | ||
| 7 | /*KNOPS_KEYMAP*/ | 7 | /*KNOPS_LAYOUT*/ |
| 8 | 8 | ||
| 9 | }; | 9 | }; |
| 10 | 10 | ||
| 11 | void set_led_state(int ledId, bool state) { | 11 | void set_led_state(int ledId, bool state) |
| 12 | if(state) { | 12 | { |
| 13 | switch(ledId) { | 13 | if (state) |
| 14 | case 0: | 14 | { |
| 15 | PORTD |= (1<<6); | 15 | switch (ledId) |
| 16 | break; | 16 | { |
| 17 | case 1: | 17 | case 0: |
| 18 | PORTB |= (1<<6); | 18 | PORTD |= (1 << 6); |
| 19 | break; | 19 | break; |
| 20 | case 2: | 20 | case 1: |
| 21 | PORTF |= (1<<5); | 21 | PORTB |= (1 << 6); |
| 22 | break; | 22 | break; |
| 23 | case 3: | 23 | case 2: |
| 24 | PORTB |= (1<<4); | 24 | PORTF |= (1 << 5); |
| 25 | break; | 25 | break; |
| 26 | case 4: | 26 | case 3: |
| 27 | PORTC |= (1<<7); | 27 | PORTB |= (1 << 4); |
| 28 | break; | 28 | break; |
| 29 | case 5: | 29 | case 4: |
| 30 | PORTF |= (1<<7); | 30 | PORTC |= (1 << 7); |
| 31 | break; | 31 | break; |
| 32 | } | 32 | case 5: |
| 33 | } else { | 33 | PORTF |= (1 << 7); |
| 34 | switch(ledId) { | 34 | break; |
| 35 | case 0: | 35 | } |
| 36 | PORTD &= ~(1<<6); | 36 | } |
| 37 | break; | 37 | else |
| 38 | case 1: | 38 | { |
| 39 | PORTB &= ~(1<<6); | 39 | switch (ledId) |
| 40 | break; | 40 | { |
| 41 | case 2: | 41 | case 0: |
| 42 | PORTF &= ~(1<<5); | 42 | PORTD &= ~(1 << 6); |
| 43 | break; | 43 | break; |
| 44 | case 3: | 44 | case 1: |
| 45 | PORTB &= ~(1<<4); | 45 | PORTB &= ~(1 << 6); |
| 46 | break; | 46 | break; |
| 47 | case 4: | 47 | case 2: |
| 48 | PORTC &= ~(1<<7); | 48 | PORTF &= ~(1 << 5); |
| 49 | break; | 49 | break; |
| 50 | case 5: | 50 | case 3: |
| 51 | PORTF &= ~(1<<7); | 51 | PORTB &= ~(1 << 4); |
| 52 | break; | 52 | break; |
| 53 | } | 53 | case 4: |
| 54 | } | 54 | PORTC &= ~(1 << 7); |
| 55 | break; | ||
| 56 | case 5: | ||
| 57 | PORTF &= ~(1 << 7); | ||
| 58 | break; | ||
| 59 | } | ||
| 60 | } | ||
| 55 | } | 61 | } |
| 56 | 62 | ||
| 57 | void led_init_ports() { | 63 | void led_init_ports() |
| 58 | // Switch #1 | 64 | { |
| 59 | DDRD |= (1<<6); | 65 | // Switch #1 |
| 60 | PORTD &= ~(1<<6); | 66 | DDRD |= (1 << 6); |
| 61 | 67 | PORTD &= ~(1 << 6); | |
| 62 | // Switch #2 | 68 | |
| 63 | DDRB |= (1<<6); | 69 | // Switch #2 |
| 64 | PORTB &= ~(1<<6); | 70 | DDRB |= (1 << 6); |
| 65 | 71 | PORTB &= ~(1 << 6); | |
| 66 | // Switch #3 | 72 | |
| 67 | DDRF |= (1<<5); | 73 | // Switch #3 |
| 68 | PORTF &= ~(1<<5); | 74 | DDRF |= (1 << 5); |
| 69 | 75 | PORTF &= ~(1 << 5); | |
| 70 | // Switch #4 | 76 | |
| 71 | DDRB |= (1<<4); | 77 | // Switch #4 |
| 72 | PORTB &= ~(1<<4); | 78 | DDRB |= (1 << 4); |
| 73 | 79 | PORTB &= ~(1 << 4); | |
| 74 | // Switch #5 | 80 | |
| 75 | DDRC |= (1<<7); | 81 | // Switch #5 |
| 76 | PORTC &= ~(1<<7); | 82 | DDRC |= (1 << 7); |
| 77 | 83 | PORTC &= ~(1 << 7); | |
| 78 | // Switch #6 | 84 | |
| 79 | DDRF |= (1<<7); | 85 | // Switch #6 |
| 80 | PORTF &= ~(1<<7); | 86 | DDRF |= (1 << 7); |
| 87 | PORTF &= ~(1 << 7); | ||
| 81 | } | 88 | } |
| 82 | 89 | ||
| 83 | void led_set_layer(int layer) { | 90 | void led_set_layer(int layer) |
| 91 | { | ||
| 84 | 92 | ||
| 85 | /*KNOPS_SIMPLELED_STATES*/ | 93 | /*KNOPS_SIMPLELED_STATES*/ |
| 86 | |||
| 87 | } | 94 | } |
| 88 | 95 | ||
| 89 | void matrix_init_user(void) { | 96 | void matrix_init_user(void) |
| 97 | { | ||
| 90 | led_init_ports(); | 98 | led_init_ports(); |
| 91 | 99 | ||
| 92 | led_set_layer(0); | 100 | led_set_layer(0); |
| @@ -94,27 +102,28 @@ void matrix_init_user(void) { | |||
| 94 | /*KNOPS_INIT*/ | 102 | /*KNOPS_INIT*/ |
| 95 | } | 103 | } |
| 96 | 104 | ||
| 97 | const macro_t *action_get_macro(keyrecord_t *record, uint8_t id, uint8_t opt) { | 105 | const macro_t *action_get_macro(keyrecord_t *record, uint8_t id, uint8_t opt) |
| 106 | { | ||
| 98 | //keyevent_t event = record->event; | 107 | //keyevent_t event = record->event; |
| 99 | 108 | ||
| 100 | /*KNOPS_MACRO*/ | 109 | /*KNOPS_MACRO*/ |
| 101 | return NULL; | 110 | return NULL; |
| 102 | } | 111 | } |
| 103 | 112 | ||
| 104 | void matrix_scan_user(void) { | 113 | void matrix_scan_user(void) |
| 114 | { | ||
| 105 | /*KNOPS_SCAN*/ | 115 | /*KNOPS_SCAN*/ |
| 106 | } | 116 | } |
| 107 | 117 | ||
| 108 | void led_set_user(uint8_t usb_led) { | 118 | void led_set_user(uint8_t usb_led) |
| 119 | { | ||
| 109 | 120 | ||
| 110 | /*KNOPS_FUNCTIONALLED_STATES*/ | 121 | /*KNOPS_FUNCTIONALLED_STATES*/ |
| 111 | |||
| 112 | } | 122 | } |
| 113 | 123 | ||
| 114 | bool process_record_user(uint16_t keycode, keyrecord_t *record) { | 124 | bool process_record_user(uint16_t keycode, keyrecord_t *record) |
| 125 | { | ||
| 115 | 126 | ||
| 116 | /*KNOPS_PROCESS_STATE*/ | 127 | /*KNOPS_PROCESS_STATE*/ |
| 117 | return NULL; | 128 | return NULL; |
| 118 | } | 129 | } |
| 119 | |||
| 120 | |||
diff --git a/keyboards/rama/m6_a/keymaps/krusli/README.md b/keyboards/rama/m6_a/keymaps/krusli/README.md index 771b47a47..7c1fa38fc 100644 --- a/keyboards/rama/m6_a/keymaps/krusli/README.md +++ b/keyboards/rama/m6_a/keymaps/krusli/README.md | |||
| @@ -6,12 +6,14 @@ Keymap was from my own port for the M6-A before official support was added, thus | |||
| 6 | 6 | ||
| 7 | Top-right button acts as a "toggle between layers" button. Layer 0 -> Layer 1 -> Layer 2 -> Layer 0 -> ... | 7 | Top-right button acts as a "toggle between layers" button. Layer 0 -> Layer 1 -> Layer 2 -> Layer 0 -> ... |
| 8 | 8 | ||
| 9 | - Layer 0: Git and Discord shortcuts | 9 | * Layer 0: Git and Discord shortcuts |
| 10 | - Layer 1: Media playback and volume controls | 10 | * Layer 1: Media playback and volume controls |
| 11 | - Layer 2: Osu! gamepad layer | 11 | * Layer 2: Osu! gamepad layer |
| 12 | 12 | ||
| 13 | ## Helpful alternative keymaps (WIP) | 13 | ## Helpful alternative keymaps (WIP) |
| 14 | |||
| 14 | ### Arrow cluster | 15 | ### Arrow cluster |
| 16 | |||
| 15 | Use [karabiner-elements](https://github.com/tekezo/Karabiner-Elements) on macOS so that the state of the modifiers (shift, caps lock) are synchronised between keyboards (for shift + arrow key text selection, for example). It's also a handy tool for customising keyboard behaviour on a Mac. | 17 | Use [karabiner-elements](https://github.com/tekezo/Karabiner-Elements) on macOS so that the state of the modifiers (shift, caps lock) are synchronised between keyboards (for shift + arrow key text selection, for example). It's also a handy tool for customising keyboard behaviour on a Mac. |
| 16 | 18 | ||
| 17 | On Windows/Linux modifier state should be shared between all keyboards by default. | 19 | On Windows/Linux modifier state should be shared between all keyboards by default. |
| @@ -19,7 +21,7 @@ On Windows/Linux modifier state should be shared between all keyboards by defaul | |||
| 19 | Installation: install [homebrew](https://brew.sh) and run `brew install Caskroom/cask/karabiner-elements`. | 21 | Installation: install [homebrew](https://brew.sh) and run `brew install Caskroom/cask/karabiner-elements`. |
| 20 | 22 | ||
| 21 | ```C | 23 | ```C |
| 22 | KEYMAP( | 24 | LAYOUT( |
| 23 | KC_ESC, KC_UP, TO(_LAYER0), | 25 | KC_ESC, KC_UP, TO(_LAYER0), |
| 24 | KC_LEFT, KC_DOWN, KC_RIGHT | 26 | KC_LEFT, KC_DOWN, KC_RIGHT |
| 25 | ) | 27 | ) |
diff --git a/keyboards/rama/m6_a/keymaps/krusli/keymap.c b/keyboards/rama/m6_a/keymaps/krusli/keymap.c index 679d0bc43..c8775f4ea 100644 --- a/keyboards/rama/m6_a/keymaps/krusli/keymap.c +++ b/keyboards/rama/m6_a/keymaps/krusli/keymap.c | |||
| @@ -1,4 +1,4 @@ | |||
| 1 | #include "../../m6_a.h" | 1 | #include QMK_KEYBOARD_H |
| 2 | #include "action_layer.h" | 2 | #include "action_layer.h" |
| 3 | #include "eeconfig.h" | 3 | #include "eeconfig.h" |
| 4 | 4 | ||
| @@ -9,64 +9,66 @@ extern keymap_config_t keymap_config; | |||
| 9 | // Layer names don't all need to be of the same length, obviously, and you can also skip them | 9 | // Layer names don't all need to be of the same length, obviously, and you can also skip them |
| 10 | // entirely and just use numbers. | 10 | // entirely and just use numbers. |
| 11 | 11 | ||
| 12 | enum layers { | 12 | enum layers |
| 13 | _LAYER0, | 13 | { |
| 14 | _LAYER1, | 14 | _LAYER0, |
| 15 | _LAYER2 | 15 | _LAYER1, |
| 16 | _LAYER2 | ||
| 16 | }; | 17 | }; |
| 17 | 18 | ||
| 18 | enum custom_keycodes { | 19 | enum custom_keycodes |
| 19 | GIT_ADD = SAFE_RANGE, | 20 | { |
| 20 | GIT_COMMIT, | 21 | GIT_ADD = SAFE_RANGE, |
| 21 | GIT_PUSH, | 22 | GIT_COMMIT, |
| 22 | MUTE, | 23 | GIT_PUSH, |
| 23 | DEAFEN | 24 | MUTE, |
| 25 | DEAFEN | ||
| 24 | }; | 26 | }; |
| 25 | 27 | ||
| 26 | bool process_record_user(uint16_t keycode, keyrecord_t *record) { | 28 | bool process_record_user(uint16_t keycode, keyrecord_t *record) |
| 27 | if (record->event.pressed) { | 29 | { |
| 28 | switch(keycode) { | 30 | if (record->event.pressed) |
| 29 | case GIT_ADD: | 31 | { |
| 30 | SEND_STRING("git add ."SS_TAP(X_ENTER)); | 32 | switch (keycode) |
| 31 | break; | 33 | { |
| 32 | case GIT_COMMIT: | 34 | case GIT_ADD: |
| 33 | SEND_STRING("git commit -m "SS_DOWN(X_LSHIFT)SS_TAP(X_QUOTE)SS_UP(X_LSHIFT)); | 35 | SEND_STRING("git add ." SS_TAP(X_ENTER)); |
| 34 | break; | 36 | break; |
| 35 | case GIT_PUSH: | 37 | case GIT_COMMIT: |
| 36 | SEND_STRING("git push"SS_TAP(X_ENTER)); | 38 | SEND_STRING("git commit -m " SS_DOWN(X_LSHIFT) SS_TAP(X_QUOTE) SS_UP(X_LSHIFT)); |
| 37 | break; | 39 | break; |
| 38 | case MUTE: | 40 | case GIT_PUSH: |
| 39 | SEND_STRING(SS_LGUI(SS_LSFT("M"))); | 41 | SEND_STRING("git push" SS_TAP(X_ENTER)); |
| 40 | break; | 42 | break; |
| 41 | case DEAFEN: | 43 | case MUTE: |
| 42 | SEND_STRING(SS_LGUI(SS_LSFT("D"))); | 44 | SEND_STRING(SS_LGUI(SS_LSFT("M"))); |
| 43 | break; | 45 | break; |
| 44 | return false; | 46 | case DEAFEN: |
| 45 | } | 47 | SEND_STRING(SS_LGUI(SS_LSFT("D"))); |
| 46 | } | 48 | break; |
| 47 | return true; | 49 | return false; |
| 50 | } | ||
| 51 | } | ||
| 52 | return true; | ||
| 48 | }; | 53 | }; |
| 49 | 54 | ||
| 50 | #define _______ KC_TRNS | 55 | #define _______ KC_TRNS |
| 51 | #define XXXXXXX KC_NO | 56 | #define XXXXXXX KC_NO |
| 52 | 57 | ||
| 53 | const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = { | 58 | const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = { |
| 54 | [_LAYER0] = KEYMAP( | 59 | [_LAYER0] = LAYOUT( |
| 55 | MUTE, DEAFEN, TO(_LAYER1), | 60 | MUTE, DEAFEN, TO(_LAYER1), |
| 56 | GIT_ADD, GIT_COMMIT, GIT_PUSH | 61 | GIT_ADD, GIT_COMMIT, GIT_PUSH), |
| 57 | ), | 62 | [_LAYER1] = LAYOUT( |
| 58 | [_LAYER1] = KEYMAP( | 63 | KC_VOLD, KC_VOLU, TO(_LAYER2), |
| 59 | KC_VOLD, KC_VOLU, TO(_LAYER2), | 64 | KC_MRWD, KC_MPLY, KC_MNXT), |
| 60 | KC_MRWD, KC_MPLY, KC_MNXT | 65 | [_LAYER2] = LAYOUT( |
| 61 | ), | 66 | KC_ESC, KC_UP, TO(_LAYER0), |
| 62 | [_LAYER2] = KEYMAP( | 67 | KC_Z, KC_X, KC_SPACE)}; |
| 63 | KC_ESC, KC_UP, TO(_LAYER0), | ||
| 64 | KC_Z, KC_X, KC_SPACE | ||
| 65 | ) | ||
| 66 | }; | ||
| 67 | 68 | ||
| 68 | void matrix_init_user(void) { | 69 | void matrix_init_user(void) |
| 69 | #ifdef BACKLIGHT_ENABLE | 70 | { |
| 71 | #ifdef BACKLIGHT_ENABLE | ||
| 70 | backlight_level(0); | 72 | backlight_level(0); |
| 71 | #endif | 73 | #endif |
| 72 | } | 74 | } |
diff --git a/keyboards/rama/m6_a/keymaps/naut/keymap.c b/keyboards/rama/m6_a/keymaps/naut/keymap.c index 6ef59e01a..df4cf9be3 100644 --- a/keyboards/rama/m6_a/keymaps/naut/keymap.c +++ b/keyboards/rama/m6_a/keymaps/naut/keymap.c | |||
| @@ -1,18 +1,17 @@ | |||
| 1 | #include "../../m6_a.h" | 1 | #include QMK_KEYBOARD_H |
| 2 | 2 | ||
| 3 | // Define Layers | 3 | // Define Layers |
| 4 | #define _BASE 0 | 4 | #define _BASE 0 |
| 5 | #define _FNX 1 | 5 | #define _FNX 1 |
| 6 | 6 | ||
| 7 | const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = { | 7 | const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = { |
| 8 | 8 | ||
| 9 | // Base Layer | 9 | // Base Layer |
| 10 | [_BASE] = KEYMAP( | 10 | [_BASE] = LAYOUT( |
| 11 | TO(1), KC_UP, KC_PGDN, | 11 | TO(1), KC_UP, KC_PGDN, |
| 12 | KC_LEFT,KC_DOWN,KC_RGHT), | 12 | KC_LEFT, KC_DOWN, KC_RGHT), |
| 13 | 13 | ||
| 14 | // Fn Layer | 14 | // Fn Layer |
| 15 | [_FNX] = KEYMAP( | 15 | [_FNX] = LAYOUT( |
| 16 | TO(0),KC_VOLU,KC_MPLY, | 16 | TO(0), KC_VOLU, KC_MPLY, |
| 17 | KC_MRWD,KC_VOLD,KC_MFFD) | 17 | KC_MRWD, KC_VOLD, KC_MFFD)}; \ No newline at end of file |
| 18 | }; \ No newline at end of file | ||
diff --git a/keyboards/rama/m6_a/m6_a.h b/keyboards/rama/m6_a/m6_a.h index 6809c2cc9..d3c7bad33 100644 --- a/keyboards/rama/m6_a/m6_a.h +++ b/keyboards/rama/m6_a/m6_a.h | |||
| @@ -21,9 +21,9 @@ | |||
| 21 | // This a shortcut to help you visually see your layout. | 21 | // This a shortcut to help you visually see your layout. |
| 22 | // The first section contains all of the arguments | 22 | // The first section contains all of the arguments |
| 23 | // The second converts the arguments into a two-dimensional array | 23 | // The second converts the arguments into a two-dimensional array |
| 24 | #define KEYMAP( \ | 24 | #define LAYOUT( \ |
| 25 | K00, K01, K02, K03, K04, K05 \ | 25 | K00, K01, K02, K03, K04, K05) \ |
| 26 | ) { \ | 26 | { \ |
| 27 | { K00, K01, K02, K03, K04, K05 }, \ | 27 | {K00, K01, K02, K03, K04, K05}, \ |
| 28 | } | 28 | } |
| 29 | #endif // RAMA_M6_A | 29 | #endif // RAMA_M6_A |
