summaryrefslogtreecommitdiff
path: root/keyboards/sawnsprojects/krush/krush60/solder
diff options
context:
space:
mode:
authorInigoGutierrez <inigogf.95@gmail.com>2022-06-27 16:38:28 +0200
committerInigoGutierrez <inigogf.95@gmail.com>2022-06-27 16:38:28 +0200
commit98b9909429aea0869f7a6f2f44ab386a4a3ff094 (patch)
treee1080a61bb89a75edc70818489f8044adf597c48 /keyboards/sawnsprojects/krush/krush60/solder
parentb610965fd6d851484025166fb255078b1c809261 (diff)
parentfa3dd373b4925734d9843ae6014349069ffec353 (diff)
downloadqmk_firmware-98b9909429aea0869f7a6f2f44ab386a4a3ff094.tar.gz
qmk_firmware-98b9909429aea0869f7a6f2f44ab386a4a3ff094.zip
Merge branch 'master' into taamas
Diffstat (limited to 'keyboards/sawnsprojects/krush/krush60/solder')
-rw-r--r--keyboards/sawnsprojects/krush/krush60/solder/config.h61
-rw-r--r--keyboards/sawnsprojects/krush/krush60/solder/info.json1145
-rw-r--r--keyboards/sawnsprojects/krush/krush60/solder/keymaps/60_ansi/keymap.c37
-rw-r--r--keyboards/sawnsprojects/krush/krush60/solder/keymaps/60_ansi/readme.md3
-rw-r--r--keyboards/sawnsprojects/krush/krush60/solder/keymaps/60_ansi_arrow/keymap.c37
-rw-r--r--keyboards/sawnsprojects/krush/krush60/solder/keymaps/60_ansi_arrow/readme.md3
-rw-r--r--keyboards/sawnsprojects/krush/krush60/solder/keymaps/60_ansi_arrow_split_bs/keymap.c37
-rw-r--r--keyboards/sawnsprojects/krush/krush60/solder/keymaps/60_ansi_arrow_split_bs/readme.md4
-rw-r--r--keyboards/sawnsprojects/krush/krush60/solder/keymaps/60_ansi_arrow_split_bs_spc/keymap.c37
-rw-r--r--keyboards/sawnsprojects/krush/krush60/solder/keymaps/60_ansi_arrow_split_bs_spc/readme.md5
-rw-r--r--keyboards/sawnsprojects/krush/krush60/solder/keymaps/60_ansi_arrow_split_spc/keymap.c37
-rw-r--r--keyboards/sawnsprojects/krush/krush60/solder/keymaps/60_ansi_arrow_split_spc/readme.md4
-rw-r--r--keyboards/sawnsprojects/krush/krush60/solder/keymaps/60_ansi_arrow_tsangan/keymap.c37
-rw-r--r--keyboards/sawnsprojects/krush/krush60/solder/keymaps/60_ansi_arrow_tsangan/readme.md4
-rw-r--r--keyboards/sawnsprojects/krush/krush60/solder/keymaps/60_ansi_arrow_tsangan_split_bs/keymap.c37
-rw-r--r--keyboards/sawnsprojects/krush/krush60/solder/keymaps/60_ansi_arrow_tsangan_split_bs/readme.md5
-rw-r--r--keyboards/sawnsprojects/krush/krush60/solder/keymaps/60_ansi_split_bs/keymap.c37
-rw-r--r--keyboards/sawnsprojects/krush/krush60/solder/keymaps/60_ansi_split_bs/readme.md4
-rw-r--r--keyboards/sawnsprojects/krush/krush60/solder/keymaps/60_ansi_split_bs_spc/keymap.c35
-rw-r--r--keyboards/sawnsprojects/krush/krush60/solder/keymaps/60_ansi_split_bs_spc/readme.md5
-rw-r--r--keyboards/sawnsprojects/krush/krush60/solder/keymaps/60_ansi_split_spc/keymap.c35
-rw-r--r--keyboards/sawnsprojects/krush/krush60/solder/keymaps/60_ansi_split_spc/readme.md4
-rw-r--r--keyboards/sawnsprojects/krush/krush60/solder/keymaps/60_ansi_tsangan/keymap.c37
-rw-r--r--keyboards/sawnsprojects/krush/krush60/solder/keymaps/60_ansi_tsangan/readme.md4
-rw-r--r--keyboards/sawnsprojects/krush/krush60/solder/keymaps/60_ansi_tsangan_split_bs/keymap.c37
-rw-r--r--keyboards/sawnsprojects/krush/krush60/solder/keymaps/60_ansi_tsangan_split_bs/readme.md5
-rw-r--r--keyboards/sawnsprojects/krush/krush60/solder/keymaps/60_ansi_tsangan_split_rshift/keymap.c37
-rw-r--r--keyboards/sawnsprojects/krush/krush60/solder/keymaps/60_ansi_tsangan_split_rshift/readme.md5
-rw-r--r--keyboards/sawnsprojects/krush/krush60/solder/keymaps/60_isoenter_split_bs/keymap.c38
-rw-r--r--keyboards/sawnsprojects/krush/krush60/solder/keymaps/60_isoenter_split_bs/readme.md5
-rw-r--r--keyboards/sawnsprojects/krush/krush60/solder/keymaps/60_tsangan_hhkb/keymap.c37
-rw-r--r--keyboards/sawnsprojects/krush/krush60/solder/keymaps/60_tsangan_hhkb/readme.md6
-rw-r--r--keyboards/sawnsprojects/krush/krush60/solder/keymaps/default/keymap.c37
-rw-r--r--keyboards/sawnsprojects/krush/krush60/solder/keymaps/default/readme.md3
-rw-r--r--keyboards/sawnsprojects/krush/krush60/solder/keymaps/via/keymap.c53
-rw-r--r--keyboards/sawnsprojects/krush/krush60/solder/keymaps/via/readme.md1
-rw-r--r--keyboards/sawnsprojects/krush/krush60/solder/keymaps/via/rules.mk1
-rw-r--r--keyboards/sawnsprojects/krush/krush60/solder/readme.md15
-rw-r--r--keyboards/sawnsprojects/krush/krush60/solder/rules.mk19
-rw-r--r--keyboards/sawnsprojects/krush/krush60/solder/solder.c17
-rw-r--r--keyboards/sawnsprojects/krush/krush60/solder/solder.h354
41 files changed, 2324 insertions, 0 deletions
diff --git a/keyboards/sawnsprojects/krush/krush60/solder/config.h b/keyboards/sawnsprojects/krush/krush60/solder/config.h
new file mode 100644
index 0000000000..4cd1a1b39c
--- /dev/null
+++ b/keyboards/sawnsprojects/krush/krush60/solder/config.h
@@ -0,0 +1,61 @@
+/* Copyright 2021 SawnsProjects
+ *
+ * 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 "config_common.h"
+
+/* USB Device descriptor parameter */
+#define VENDOR_ID 0x5350
+#define PRODUCT_ID 0x6B32
+#define DEVICE_VER 0x0001
+#define MANUFACTURER SawnsProjects
+#define PRODUCT Krush60 - Solder
+
+/* key matrix size */
+#define MATRIX_ROWS 10
+#define MATRIX_COLS 8
+
+/* key matrix pins */
+#define MATRIX_ROW_PINS { B1, B2, D1, D2, D4, D6, F6, F7, F5, F4 }
+#define MATRIX_COL_PINS { C7, C6, B6, B5, B4, D7, D5, D3 }
+#define UNUSED_PINS
+
+/* COL2ROW or ROW2COL */
+#define DIODE_DIRECTION COL2ROW
+/* Caps Lock */
+#define LED_CAPS_LOCK_PIN F0
+#define LED_PIN_ON_STATE 0
+
+#define RGB_DI_PIN F1
+#ifdef RGB_DI_PIN
+ #define RGBLED_NUM 20
+ #define RGBLIGHT_HUE_STEP 8
+ #define RGBLIGHT_SAT_STEP 8
+ #define RGBLIGHT_VAL_STEP 8
+ #define RGBLIGHT_LIMIT_VAL 200 /* The maximum brightness level */
+ #define RGBLIGHT_SLEEP /* If defined, the RGB lighting will be switched off when the host goes to sleep */
+/*== all animations enable ==*/
+#define RGBLIGHT_EFFECT_BREATHING
+#define RGBLIGHT_EFFECT_RAINBOW_MOOD
+#define RGBLIGHT_EFFECT_RAINBOW_SWIRL
+#define RGBLIGHT_EFFECT_SNAKE
+#define RGBLIGHT_EFFECT_KNIGHT
+#define RGBLIGHT_EFFECT_CHRISTMAS
+#define RGBLIGHT_EFFECT_STATIC_GRADIENT
+#define RGBLIGHT_EFFECT_RGB_TEST
+#define RGBLIGHT_EFFECT_ALTERNATING
+#define RGBLIGHT_EFFECT_TWINKLE
+#endif \ No newline at end of file
diff --git a/keyboards/sawnsprojects/krush/krush60/solder/info.json b/keyboards/sawnsprojects/krush/krush60/solder/info.json
new file mode 100644
index 0000000000..d95c475509
--- /dev/null
+++ b/keyboards/sawnsprojects/krush/krush60/solder/info.json
@@ -0,0 +1,1145 @@
+{
+ "keyboard_name": "Krush60 Solder",
+ "url": "",
+ "maintainer": "MaiTheSan",
+ "layout_aliases": {
+ "LAYOUT_60_ansi_arrow_split_bs_7u_spc": "LAYOUT_60_ansi_arrow_tsangan_split_bs",
+ "LAYOUT_60_ansi_arrow_7u_spc": "LAYOUT_60_ansi_arrow_tsangan"
+ },
+ "layouts": {
+ "LAYOUT_all": {
+ "layout": [
+ {"x":0, "y":0},
+ {"x":1, "y":0},
+ {"x":2, "y":0},
+ {"x":3, "y":0},
+ {"x":4, "y":0},
+ {"x":5, "y":0},
+ {"x":6, "y":0},
+ {"x":7, "y":0},
+ {"x":8, "y":0},
+ {"x":9, "y":0},
+ {"x":10, "y":0},
+ {"x":11, "y":0},
+ {"x":12, "y":0},
+ {"x":13, "y":0},
+ {"x":14, "y":0},
+
+ {"x":0, "y":1, "w":1.5},
+ {"x":1.5, "y":1},
+ {"x":2.5, "y":1},
+ {"x":3.5, "y":1},
+ {"x":4.5, "y":1},
+ {"x":5.5, "y":1},
+ {"x":6.5, "y":1},
+ {"x":7.5, "y":1},
+ {"x":8.5, "y":1},
+ {"x":9.5, "y":1},
+ {"x":10.5, "y":1},
+ {"x":11.5, "y":1},
+ {"x":12.5, "y":1},
+ {"x":13.5, "y":1, "w":1.5},
+
+ {"x":0, "y":2, "w":1.75},
+ {"x":1.75, "y":2},
+ {"x":2.75, "y":2},
+ {"x":3.75, "y":2},
+ {"x":4.75, "y":2},
+ {"x":5.75, "y":2},
+ {"x":6.75, "y":2},
+ {"x":7.75, "y":2},
+ {"x":8.75, "y":2},
+ {"x":9.75, "y":2},
+ {"x":10.75, "y":2},
+ {"x":11.75, "y":2},
+ {"x":12.75, "y":2, "w":2.25},
+
+ {"x":0, "y":3, "w":2},
+ {"x":2, "y":3},
+ {"x":3, "y":3},
+ {"x":4, "y":3},
+ {"x":5, "y":3},
+ {"x":6, "y":3},
+ {"x":7, "y":3},
+ {"x":8, "y":3},
+ {"x":9, "y":3},
+ {"x":10, "y":3},
+ {"x":11, "y":3},
+ {"x":12, "y":3},
+ {"x":13, "y":3},
+ {"x":14, "y":3},
+
+ {"x":0, "y":4, "w":1.25},
+ {"x":1.25, "y":4, "w":1.25},
+ {"x":2.5, "y":4, "w":1.25},
+ {"x":3.75, "y":4, "w":2.25},
+ {"x":6, "y":4, "w":1.25},
+ {"x":7.25, "y":4, "w":2.75},
+ {"x":10, "y": 4},
+ {"x":11, "y": 4},
+ {"x":12, "y": 4},
+ {"x":13, "y": 4},
+ {"x":14, "y": 4}
+ ]
+ },
+ "LAYOUT_60_ansi": {
+ "layout": [
+ {"x":0, "y":0},
+ {"x":1, "y":0},
+ {"x":2, "y":0},
+ {"x":3, "y":0},
+ {"x":4, "y":0},
+ {"x":5, "y":0},
+ {"x":6, "y":0},
+ {"x":7, "y":0},
+ {"x":8, "y":0},
+ {"x":9, "y":0},
+ {"x":10, "y":0},
+ {"x":11, "y":0},
+ {"x":12, "y":0},
+ {"x":13, "y":0, "w":2},
+
+ {"x":0, "y":1, "w":1.5},
+ {"x":1.5, "y":1},
+ {"x":2.5, "y":1},
+ {"x":3.5, "y":1},
+ {"x":4.5, "y":1},
+ {"x":5.5, "y":1},
+ {"x":6.5, "y":1},
+ {"x":7.5, "y":1},
+ {"x":8.5, "y":1},
+ {"x":9.5, "y":1},
+ {"x":10.5, "y":1},
+ {"x":11.5, "y":1},
+ {"x":12.5, "y":1},
+ {"x":13.5, "y":1, "w":1.5},
+
+ {"x":0, "y":2, "w":1.75},
+ {"x":1.75, "y":2},
+ {"x":2.75, "y":2},
+ {"x":3.75, "y":2},
+ {"x":4.75, "y":2},
+ {"x":5.75, "y":2},
+ {"x":6.75, "y":2},
+ {"x":7.75, "y":2},
+ {"x":8.75, "y":2},
+ {"x":9.75, "y":2},
+ {"x":10.75, "y":2},
+ {"x":11.75, "y":2},
+ {"x":12.75, "y":2, "w":2.25},
+
+ {"x":0, "y":3, "w":2.25},
+ {"x":2.25, "y":3},
+ {"x":3.25, "y":3},
+ {"x":4.25, "y":3},
+ {"x":5.25, "y":3},
+ {"x":6.25, "y":3},
+ {"x":7.25, "y":3},
+ {"x":8.25, "y":3},
+ {"x":9.25, "y":3},
+ {"x":10.25, "y":3},
+ {"x":11.25, "y":3},
+ {"x":12.25, "y":3, "w":2.75},
+
+ {"x":0, "y":4, "w":1.25},
+ {"x":1.25, "y":4, "w":1.25},
+ {"x":2.5, "y":4, "w":1.25},
+ {"x":3.75, "y":4, "w":6.25},
+ {"x":10, "y":4, "w":1.25},
+ {"x":11.25, "y":4, "w":1.25},
+ {"x":12.5, "y":4, "w":1.25},
+ {"x":13.75, "y":4, "w":1.25}
+ ]
+ },
+ "LAYOUT_60_isoenter_split_bs": {
+ "layout": [
+ {"x":0, "y":0},
+ {"x":1, "y":0},
+ {"x":2, "y":0},
+ {"x":3, "y":0},
+ {"x":4, "y":0},
+ {"x":5, "y":0},
+ {"x":6, "y":0},
+ {"x":7, "y":0},
+ {"x":8, "y":0},
+ {"x":9, "y":0},
+ {"x":10, "y":0},
+ {"x":11, "y":0},
+ {"x":12, "y":0},
+ {"x":13, "y":0},
+ {"x":14, "y":0},
+
+ {"x":0, "y":1, "w":1.5},
+ {"x":1.5, "y":1},
+ {"x":2.5, "y":1},
+ {"x":3.5, "y":1},
+ {"x":4.5, "y":1},
+ {"x":5.5, "y":1},
+ {"x":6.5, "y":1},
+ {"x":7.5, "y":1},
+ {"x":8.5, "y":1},
+ {"x":9.5, "y":1},
+ {"x":10.5, "y":1},
+ {"x":11.5, "y":1},
+ {"x":12.5, "y":1},
+
+ {"x":0, "y":2, "w":1.75},
+ {"x":1.75, "y":2},
+ {"x":2.75, "y":2},
+ {"x":3.75, "y":2},
+ {"x":4.75, "y":2},
+ {"x":5.75, "y":2},
+ {"x":6.75, "y":2},
+ {"x":7.75, "y":2},
+ {"x":8.75, "y":2},
+ {"x":9.75, "y":2},
+ {"x":10.75, "y":2},
+ {"x":11.75, "y":2},
+ {"x":12.75, "y":2},
+ {"x":13.75, "y":1, "w":1.25, "h":2},
+
+ {"x": 0, "y": 3, "w": 2.25},
+ {"x":2.25, "y":3},
+ {"x":3.25, "y":3},
+ {"x":4.25, "y":3},
+ {"x":5.25, "y":3},
+ {"x":6.25, "y":3},
+ {"x":7.25, "y":3},
+ {"x":8.25, "y":3},
+ {"x":9.25, "y":3},
+ {"x":10.25, "y":3},
+ {"x":11.25, "y":3},
+ {"x":12.25, "y":3, "w":2.75},
+
+ {"x":0, "y":4, "w":1.25},
+ {"x":1.25, "y":4, "w":1.25},
+ {"x":2.5, "y":4, "w":1.25},
+ {"x":3.75, "y":4, "w":6.25},
+ {"x":10, "y":4, "w":1.25},
+ {"x":11.25, "y":4, "w":1.25},
+ {"x":12.5, "y":4, "w":1.25},
+ {"x":13.75, "y":4, "w":1.25}
+ ]
+ },
+ "LAYOUT_60_ansi_split_bs": {
+ "layout": [
+ {"x":0, "y": 0},
+ {"x":1, "y": 0},
+ {"x":2, "y": 0},
+ {"x":3, "y": 0},
+ {"x":4, "y": 0},
+ {"x":5, "y": 0},
+ {"x":6, "y": 0},
+ {"x":7, "y": 0},
+ {"x":8, "y": 0},
+ {"x":9, "y": 0},
+ {"x":10, "y": 0},
+ {"x":11, "y": 0},
+ {"x":12, "y": 0},
+ {"x":13, "y": 0},
+ {"x":14, "y": 0},
+
+ {"x":0, "y":1, "w":1.5},
+ {"x":1.5, "y":1},
+ {"x":2.5, "y":1},
+ {"x":3.5, "y":1},
+ {"x":4.5, "y":1},
+ {"x":5.5, "y":1},
+ {"x":6.5, "y":1},
+ {"x":7.5, "y":1},
+ {"x":8.5, "y":1},
+ {"x":9.5, "y":1},
+ {"x":10.5, "y":1},
+ {"x":11.5, "y":1},
+ {"x":12.5, "y":1},
+ {"x":13.5, "y":1, "w":1.5},
+
+ {"x":0, "y":2, "w":1.75},
+ {"x":1.75, "y":2},
+ {"x":2.75, "y":2},
+ {"x":3.75, "y":2},
+ {"x":4.75, "y":2},
+ {"x":5.75, "y":2},
+ {"x":6.75, "y":2},
+ {"x":7.75, "y":2},
+ {"x":8.75, "y":2},
+ {"x":9.75, "y":2},
+ {"x":10.75, "y":2},
+ {"x":11.75, "y":2},
+ {"x":12.75, "y":2, "w":2.25},
+
+ {"x":0, "y":3, "w":2.25},
+ {"x":2.25, "y":3},
+ {"x":3.25, "y":3},
+ {"x":4.25, "y":3},
+ {"x":5.25, "y":3},
+ {"x":6.25, "y":3},
+ {"x":7.25, "y":3},
+ {"x":8.25, "y":3},
+ {"x":9.25, "y":3},
+ {"x":10.25, "y":3},
+ {"x":11.25, "y":3},
+ {"x":12.25, "y":3, "w":2.75},
+
+ {"x":0, "y":4, "w":1.25},
+ {"x":1.25, "y":4, "w":1.25},
+ {"x":2.5, "y":4, "w":1.25},
+ {"x":3.75, "y":4, "w":6.25},
+ {"x":10, "y":4, "w":1.25},
+ {"x":11.25, "y":4, "w":1.25},
+ {"x":12.5, "y":4, "w":1.25},
+ {"x":13.75, "y":4, "w":1.25}
+ ]
+ },
+ "LAYOUT_60_ansi_split_spc": {
+ "layout": [
+ {"x":0, "y":0},
+ {"x":1, "y":0},
+ {"x":2, "y":0},
+ {"x":3, "y":0},
+ {"x":4, "y":0},
+ {"x":5, "y":0},
+ {"x":6, "y":0},
+ {"x":7, "y":0},
+ {"x":8, "y":0},
+ {"x":9, "y":0},
+ {"x":10, "y":0},
+ {"x":11, "y":0},
+ {"x":12, "y":0},
+ {"x":13, "y":0, "w":2},
+
+ {"x":0, "y":1, "w":1.5},
+ {"x":1.5, "y":1},
+ {"x":2.5, "y":1},
+ {"x":3.5, "y":1},
+ {"x":4.5, "y":1},
+ {"x":5.5, "y":1},
+ {"x":6.5, "y":1},
+ {"x":7.5, "y":1},
+ {"x":8.5, "y":1},
+ {"x":9.5, "y":1},
+ {"x":10.5, "y":1},
+ {"x":11.5, "y":1},
+ {"x":12.5, "y":1},
+ {"x":13.5, "y":1, "w":1.5},
+
+ {"x":0, "y":2, "w":1.75},
+ {"x":1.75, "y":2},
+ {"x":2.75, "y":2},
+ {"x":3.75, "y":2},
+ {"x":4.75, "y":2},
+ {"x":5.75, "y":2},
+ {"x":6.75, "y":2},
+ {"x":7.75, "y":2},
+ {"x":8.75, "y":2},
+ {"x":9.75, "y":2},
+ {"x":10.75, "y":2},
+ {"x":11.75, "y":2},
+ {"x":12.75, "y":2, "w":2.25},
+
+ {"x":0, "y":3, "w":2.25},
+ {"x":2.25, "y":3},
+ {"x":3.25, "y":3},
+ {"x":4.25, "y":3},
+ {"x":5.25, "y":3},
+ {"x":6.25, "y":3},
+ {"x":7.25, "y":3},
+ {"x":8.25, "y":3},
+ {"x":9.25, "y":3},
+ {"x":10.25, "y":3},
+ {"x":11.25, "y":3},
+ {"x":12.25, "y":3, "w":2.75},
+
+ {"x":0, "y":4, "w":1.25},
+ {"x":1.25, "y":4, "w":1.25},
+ {"x":2.5, "y":4, "w":1.25},
+ {"x":3.75, "y":4, "w":2.25},
+ {"x":6, "y":4, "w":1.25},
+ {"x":7.25, "y":4, "w":2.75},
+ {"x":10, "y":4, "w":1.25},
+ {"x":11.25, "y":4, "w":1.25},
+ {"x":12.5, "y":4, "w":1.25},
+ {"x":13.75, "y":4, "w":1.25}
+ ]
+ },
+ "LAYOUT_60_ansi_split_bs_spc": {
+ "layout": [
+ {"x":0, "y": 0},
+ {"x":1, "y": 0},
+ {"x":2, "y": 0},
+ {"x":3, "y": 0},
+ {"x":4, "y": 0},
+ {"x":5, "y": 0},
+ {"x":6, "y": 0},
+ {"x":7, "y": 0},
+ {"x":8, "y": 0},
+ {"x":9, "y": 0},
+ {"x":10, "y": 0},
+ {"x":11, "y": 0},
+ {"x":12, "y": 0},
+ {"x":13, "y": 0},
+ {"x":14, "y": 0},
+
+ {"x":0, "y":1, "w":1.5},
+ {"x":1.5, "y":1},
+ {"x":2.5, "y":1},
+ {"x":3.5, "y":1},
+ {"x":4.5, "y":1},
+ {"x":5.5, "y":1},
+ {"x":6.5, "y":1},
+ {"x":7.5, "y":1},
+ {"x":8.5, "y":1},
+ {"x":9.5, "y":1},
+ {"x":10.5, "y":1},
+ {"x":11.5, "y":1},
+ {"x":12.5, "y":1},
+ {"x":13.5, "y":1, "w":1.5},
+
+ {"x":0, "y":2, "w":1.75},
+ {"x":1.75, "y":2},
+ {"x":2.75, "y":2},
+ {"x":3.75, "y":2},
+ {"x":4.75, "y":2},
+ {"x":5.75, "y":2},
+ {"x":6.75, "y":2},
+ {"x":7.75, "y":2},
+ {"x":8.75, "y":2},
+ {"x":9.75, "y":2},
+ {"x":10.75, "y":2},
+ {"x":11.75, "y":2},
+ {"x":12.75, "y":2, "w":2.25},
+
+ {"x":0, "y":3, "w":2.25},
+ {"x":2.25, "y":3},
+ {"x":3.25, "y":3},
+ {"x":4.25, "y":3},
+ {"x":5.25, "y":3},
+ {"x":6.25, "y":3},
+ {"x":7.25, "y":3},
+ {"x":8.25, "y":3},
+ {"x":9.25, "y":3},
+ {"x":10.25, "y":3},
+ {"x":11.25, "y":3},
+ {"x":12.25, "y":3, "w":2.75},
+
+ {"x":0, "y":4, "w":1.25},
+ {"x":1.25, "y":4, "w":1.25},
+ {"x":2.5, "y":4, "w":1.25},
+ {"x":3.75, "y":4, "w":2.25},
+ {"x":6, "y":4, "w":1.25},
+ {"x":7.25, "y":4, "w":2.75},
+ {"x":10, "y":4, "w":1.25},
+ {"x":11.25, "y":4, "w":1.25},
+ {"x":12.5, "y":4, "w":1.25},
+ {"x":13.75, "y":4, "w":1.25}
+ ]
+ },
+ "LAYOUT_60_ansi_tsangan": {
+ "layout": [
+ {"x":0, "y":0},
+ {"x":1, "y":0},
+ {"x":2, "y":0},
+ {"x":3, "y":0},
+ {"x":4, "y":0},
+ {"x":5, "y":0},
+ {"x":6, "y":0},
+ {"x":7, "y":0},
+ {"x":8, "y":0},
+ {"x":9, "y":0},
+ {"x":10, "y":0},
+ {"x":11, "y":0},
+ {"x":12, "y":0},
+ {"x":13, "y":0, "w":2},
+
+ {"x":0, "y":1, "w":1.5},
+ {"x":1.5, "y":1},
+ {"x":2.5, "y":1},
+ {"x":3.5, "y":1},
+ {"x":4.5, "y":1},
+ {"x":5.5, "y":1},
+ {"x":6.5, "y":1},
+ {"x":7.5, "y":1},
+ {"x":8.5, "y":1},
+ {"x":9.5, "y":1},
+ {"x":10.5, "y":1},
+ {"x":11.5, "y":1},
+ {"x":12.5, "y":1},
+ {"x":13.5, "y":1, "w":1.5},
+
+ {"x":0, "y":2, "w":1.75},
+ {"x":1.75, "y":2},
+ {"x":2.75, "y":2},
+ {"x":3.75, "y":2},
+ {"x":4.75, "y":2},
+ {"x":5.75, "y":2},
+ {"x":6.75, "y":2},
+ {"x":7.75, "y":2},
+ {"x":8.75, "y":2},
+ {"x":9.75, "y":2},
+ {"x":10.75, "y":2},
+ {"x":11.75, "y":2},
+ {"x":12.75, "y":2, "w":2.25},
+
+ {"x":0, "y":3, "w":2.25},
+ {"x":2.25, "y":3},
+ {"x":3.25, "y":3},
+ {"x":4.25, "y":3},
+ {"x":5.25, "y":3},
+ {"x":6.25, "y":3},
+ {"x":7.25, "y":3},
+ {"x":8.25, "y":3},
+ {"x":9.25, "y":3},
+ {"x":10.25, "y":3},
+ {"x":11.25, "y":3},
+ {"x":12.25, "y":3, "w":2.75},
+
+ {"x":0, "y": 4, "w": 1.5},
+ {"x":1.5, "y": 4},
+ {"x":2.5, "y": 4, "w": 1.5},
+ {"x":4, "y": 4, "w": 7},
+ {"x":11, "y": 4, "w": 1.5},
+ {"x":12.5, "y": 4},
+ {"x":13.5, "y": 4, "w": 1.5}
+ ]
+ },
+ "LAYOUT_60_ansi_tsangan_split_bs": {
+ "layout": [
+ {"x":0, "y":0},
+ {"x":1, "y":0},
+ {"x":2, "y":0},
+ {"x":3, "y":0},
+ {"x":4, "y":0},
+ {"x":5, "y":0},
+ {"x":6, "y":0},
+ {"x":7, "y":0},
+ {"x":8, "y":0},
+ {"x":9, "y":0},
+ {"x":10, "y":0},
+ {"x":11, "y":0},
+ {"x":12, "y":0},
+ {"x":13, "y":0},
+ {"x":14, "y":0},
+
+ {"x":0, "y":1, "w":1.5},
+ {"x":1.5, "y":1},
+ {"x":2.5, "y":1},
+ {"x":3.5, "y":1},
+ {"x":4.5, "y":1},
+ {"x":5.5, "y":1},
+ {"x":6.5, "y":1},
+ {"x":7.5, "y":1},
+ {"x":8.5, "y":1},
+ {"x":9.5, "y":1},
+ {"x":10.5, "y":1},
+ {"x":11.5, "y":1},
+ {"x":12.5, "y":1},
+ {"x":13.5, "y":1, "w":1.5},
+
+ {"x":0, "y":2, "w":1.75},
+ {"x":1.75, "y":2},
+ {"x":2.75, "y":2},
+ {"x":3.75, "y":2},
+ {"x":4.75, "y":2},
+ {"x":5.75, "y":2},
+ {"x":6.75, "y":2},
+ {"x":7.75, "y":2},
+ {"x":8.75, "y":2},
+ {"x":9.75, "y":2},
+ {"x":10.75, "y":2},
+ {"x":11.75, "y":2},
+ {"x":12.75, "y":2, "w":2.25},
+
+ {"x":0, "y":3, "w":2.25},
+ {"x":2.25, "y":3},
+ {"x":3.25, "y":3},
+ {"x":4.25, "y":3},
+ {"x":5.25, "y":3},
+ {"x":6.25, "y":3},
+ {"x":7.25, "y":3},
+ {"x":8.25, "y":3},
+ {"x":9.25, "y":3},
+ {"x":10.25, "y":3},
+ {"x":11.25, "y":3},
+ {"x":12.25, "y":3, "w":2.75},
+
+ {"x": 0, "y": 4, "w": 1.5},
+ {"x": 1.5, "y": 4},
+ {"x": 2.5, "y": 4, "w": 1.5},
+ {"x": 4, "y": 4, "w": 7},
+ {"x": 11, "y": 4, "w": 1.5},
+ {"x": 12.5, "y": 4},
+ {"x": 13.5, "y": 4, "w": 1.5}
+ ]
+ },
+ "LAYOUT_60_ansi_arrow_split_bs": {
+ "layout": [
+ {"x":0, "y":0},
+ {"x":1, "y":0},
+ {"x":2, "y":0},
+ {"x":3, "y":0},
+ {"x":4, "y":0},
+ {"x":5, "y":0},
+ {"x":6, "y":0},
+ {"x":7, "y":0},
+ {"x":8, "y":0},
+ {"x":9, "y":0},
+ {"x":10, "y":0},
+ {"x":11, "y":0},
+ {"x":12, "y":0},
+ {"x":13, "y":0},
+ {"x":14, "y":0},
+
+ {"x":0, "y":1, "w":1.5},
+ {"x":1.5, "y":1},
+ {"x":2.5, "y":1},
+ {"x":3.5, "y":1},
+ {"x":4.5, "y":1},
+ {"x":5.5, "y":1},
+ {"x":6.5, "y":1},
+ {"x":7.5, "y":1},
+ {"x":8.5, "y":1},
+ {"x":9.5, "y":1},
+ {"x":10.5, "y":1},
+ {"x":11.5, "y":1},
+ {"x":12.5, "y":1},
+ {"x":13.5, "y":1, "w":1.5},
+
+ {"x":0, "y":2, "w":1.75},
+ {"x":1.75, "y":2},
+ {"x":2.75, "y":2},
+ {"x":3.75, "y":2},
+ {"x":4.75, "y":2},
+ {"x":5.75, "y":2},
+ {"x":6.75, "y":2},
+ {"x":7.75, "y":2},
+ {"x":8.75, "y":2},
+ {"x":9.75, "y":2},
+ {"x":10.75, "y":2},
+ {"x":11.75, "y":2},
+ {"x":12.75, "y":2, "w":2.25},
+
+ {"x":0, "y":3, "w":2.25},
+ {"x":2.25, "y":3},
+ {"x":3.25, "y":3},
+ {"x":4.25, "y":3},
+ {"x":5.25, "y":3},
+ {"x":6.25, "y":3},
+ {"x":7.25, "y":3},
+ {"x":8.25, "y":3},
+ {"x":9.25, "y":3},
+ {"x":10.25, "y":3},
+ {"x":11.25, "y":3, "w":1.75},
+ {"x":13, "y":3},
+ {"x":14, "y":3},
+
+ {"x":0, "y": 4, "w": 1.25},
+ {"x":1.25, "y": 4, "w": 1.25},
+ {"x":2.5, "y": 4, "w": 1.25},
+ {"x":3.75, "y": 4, "w": 6.25},
+ {"x":10, "y": 4},
+ {"x":11, "y": 4},
+ {"x":12, "y": 4},
+ {"x":13, "y": 4},
+ {"x":14, "y": 4}
+ ]
+ },
+ "LAYOUT_60_ansi_arrow_split_spc": {
+ "layout": [
+ {"x":0, "y":0},
+ {"x":1, "y":0},
+ {"x":2, "y":0},
+ {"x":3, "y":0},
+ {"x":4, "y":0},
+ {"x":5, "y":0},
+ {"x":6, "y":0},
+ {"x":7, "y":0},
+ {"x":8, "y":0},
+ {"x":9, "y":0},
+ {"x":10, "y":0},
+ {"x":11, "y":0},
+ {"x":12, "y":0},
+ {"x":13, "y":0, "w":2},
+
+ {"x":0, "y":1, "w":1.5},
+ {"x":1.5, "y":1},
+ {"x":2.5, "y":1},
+ {"x":3.5, "y":1},
+ {"x":4.5, "y":1},
+ {"x":5.5, "y":1},
+ {"x":6.5, "y":1},
+ {"x":7.5, "y":1},
+ {"x":8.5, "y":1},
+ {"x":9.5, "y":1},
+ {"x":10.5, "y":1},
+ {"x":11.5, "y":1},
+ {"x":12.5, "y":1},
+ {"x":13.5, "y":1, "w":1.5},
+
+ {"x":0, "y":2, "w":1.75},
+ {"x":1.75, "y":2},
+ {"x":2.75, "y":2},
+ {"x":3.75, "y":2},
+ {"x":4.75, "y":2},
+ {"x":5.75, "y":2},
+ {"x":6.75, "y":2},
+ {"x":7.75, "y":2},
+ {"x":8.75, "y":2},
+ {"x":9.75, "y":2},
+ {"x":10.75, "y":2},
+ {"x":11.75, "y":2},
+ {"x":12.75, "y":2, "w":2.25},
+
+ {"x":0, "y":3, "w":2.25},
+ {"x":2.25, "y":3},
+ {"x":3.25, "y":3},
+ {"x":4.25, "y":3},
+ {"x":5.25, "y":3},
+ {"x":6.25, "y":3},
+ {"x":7.25, "y":3},
+ {"x":8.25, "y":3},
+ {"x":9.25, "y":3},
+ {"x":10.25, "y":3},
+ {"x":11.25, "y":3, "w":1.75},
+ {"x":13, "y":3},
+ {"x":14, "y":3},
+
+ {"x":0, "y":4, "w":1.25},
+ {"x":1.25, "y":4, "w":1.25},
+ {"x":2.5, "y":4, "w":1.25},
+ {"x":3.75, "y":4, "w":2.25},
+ {"x":6, "y":4, "w":1.25},
+ {"x":7.25, "y":4, "w":2.75},
+ {"x":10, "y": 4},
+ {"x":11, "y": 4},
+ {"x":12, "y": 4},
+ {"x":13, "y": 4},
+ {"x":14, "y": 4}
+ ]
+ },
+ "LAYOUT_60_ansi_arrow_split_bs_spc": {
+ "layout": [
+ {"x":0, "y":0},
+ {"x":1, "y":0},
+ {"x":2, "y":0},
+ {"x":3, "y":0},
+ {"x":4, "y":0},
+ {"x":5, "y":0},
+ {"x":6, "y":0},
+ {"x":7, "y":0},
+ {"x":8, "y":0},
+ {"x":9, "y":0},
+ {"x":10, "y":0},
+ {"x":11, "y":0},
+ {"x":12, "y":0},
+ {"x":13, "y":0},
+ {"x":14, "y":0},
+
+ {"x":0, "y":1, "w":1.5},
+ {"x":1.5, "y":1},
+ {"x":2.5, "y":1},
+ {"x":3.5, "y":1},
+ {"x":4.5, "y":1},
+ {"x":5.5, "y":1},
+ {"x":6.5, "y":1},
+ {"x":7.5, "y":1},
+ {"x":8.5, "y":1},
+ {"x":9.5, "y":1},
+ {"x":10.5, "y":1},
+ {"x":11.5, "y":1},
+ {"x":12.5, "y":1},
+ {"x":13.5, "y":1, "w":1.5},
+
+ {"x":0, "y":2, "w":1.75},
+ {"x":1.75, "y":2},
+ {"x":2.75, "y":2},
+ {"x":3.75, "y":2},
+ {"x":4.75, "y":2},
+ {"x":5.75, "y":2},
+ {"x":6.75, "y":2},
+ {"x":7.75, "y":2},
+ {"x":8.75, "y":2},
+ {"x":9.75, "y":2},
+ {"x":10.75, "y":2},
+ {"x":11.75, "y":2},
+ {"x":12.75, "y":2, "w":2.25},
+
+ {"x":0, "y":3, "w":2.25},
+ {"x":2.25, "y":3},
+ {"x":3.25, "y":3},
+ {"x":4.25, "y":3},
+ {"x":5.25, "y":3},
+ {"x":6.25, "y":3},
+ {"x":7.25, "y":3},
+ {"x":8.25, "y":3},
+ {"x":9.25, "y":3},
+ {"x":10.25, "y":3},
+ {"x":11.25, "y":3, "w":1.75},
+ {"x":13, "y":3},
+ {"x":14, "y":3},
+
+ {"x":0, "y":4, "w":1.25},
+ {"x":1.25, "y":4, "w":1.25},
+ {"x":2.5, "y":4, "w":1.25},
+ {"x":3.75, "y":4, "w":2.25},
+ {"x":6, "y":4, "w":1.25},
+ {"x":7.25, "y":4, "w":2.75},
+ {"x":10, "y": 4},
+ {"x":11, "y": 4},
+ {"x":12, "y": 4},
+ {"x":13, "y": 4},
+ {"x":14, "y": 4}
+ ]
+ },
+ "LAYOUT_60_ansi_arrow_tsangan": {
+ "layout": [
+ {"x": 0, "y": 0},
+ {"x": 1, "y": 0},
+ {"x": 2, "y": 0},
+ {"x": 3, "y": 0},
+ {"x": 4, "y": 0},
+ {"x": 5, "y": 0},
+ {"x": 6, "y": 0},
+ {"x": 7, "y": 0},
+ {"x": 8, "y": 0},
+ {"x": 9, "y": 0},
+ {"x": 10, "y": 0},
+ {"x": 11, "y": 0},
+ {"x": 12, "y": 0},
+ {"x": 13, "y": 0, "w": 2},
+
+ {"x":0, "y":1, "w":1.5},
+ {"x":1.5, "y":1},
+ {"x":2.5, "y":1},
+ {"x":3.5, "y":1},
+ {"x":4.5, "y":1},
+ {"x":5.5, "y":1},
+ {"x":6.5, "y":1},
+ {"x":7.5, "y":1},
+ {"x":8.5, "y":1},
+ {"x":9.5, "y":1},
+ {"x":10.5, "y":1},
+ {"x":11.5, "y":1},
+ {"x":12.5, "y":1},
+ {"x":13.5, "y":1, "w":1.5},
+
+ {"x":0, "y":2, "w":1.75},
+ {"x":1.75, "y":2},
+ {"x":2.75, "y":2},
+ {"x":3.75, "y":2},
+ {"x":4.75, "y":2},
+ {"x":5.75, "y":2},
+ {"x":6.75, "y":2},
+ {"x":7.75, "y":2},
+ {"x":8.75, "y":2},
+ {"x":9.75, "y":2},
+ {"x":10.75, "y":2},
+ {"x":11.75, "y":2},
+ {"x":12.75, "y":2, "w":2.25},
+
+ {"x":0, "y":3, "w":2.25},
+ {"x":2.25, "y":3},
+ {"x":3.25, "y":3},
+ {"x":4.25, "y":3},
+ {"x":5.25, "y":3},
+ {"x":6.25, "y":3},
+ {"x":7.25, "y":3},
+ {"x":8.25, "y":3},
+ {"x":9.25, "y":3},
+ {"x":10.25, "y":3},
+ {"x":11.25, "y":3, "w":1.75},
+ {"x":13, "y":3},
+ {"x":14, "y":3},
+
+ {"x":0, "y": 4, "w": 1.5},
+ {"x":1.5, "y": 4},
+ {"x":2.5, "y": 4, "w": 1.5},
+ {"x":4, "y": 4, "w": 7},
+ {"x":11, "y": 4},
+ {"x":12, "y": 4},
+ {"x":13, "y": 4},
+ {"x":14, "y": 4}
+ ]
+ },
+ "LAYOUT_60_ansi_arrow": {
+ "layout": [
+ {"x":0, "y":0},
+ {"x":1, "y":0},
+ {"x":2, "y":0},
+ {"x":3, "y":0},
+ {"x":4, "y":0},
+ {"x":5, "y":0},
+ {"x":6, "y":0},
+ {"x":7, "y":0},
+ {"x":8, "y":0},
+ {"x":9, "y":0},
+ {"x":10, "y":0},
+ {"x":11, "y":0},
+ {"x":12, "y":0},
+ {"x":13, "y":0, "w":2},
+
+ {"x":0, "y":1, "w":1.5},
+ {"x":1.5, "y":1},
+ {"x":2.5, "y":1},
+ {"x":3.5, "y":1},
+ {"x":4.5, "y":1},
+ {"x":5.5, "y":1},
+ {"x":6.5, "y":1},
+ {"x":7.5, "y":1},
+ {"x":8.5, "y":1},
+ {"x":9.5, "y":1},
+ {"x":10.5, "y":1},
+ {"x":11.5, "y":1},
+ {"x":12.5, "y":1},
+ {"x":13.5, "y":1, "w":1.5},
+
+ {"x":0, "y":2, "w":1.75},
+ {"x":1.75, "y":2},
+ {"x":2.75, "y":2},
+ {"x":3.75, "y":2},
+ {"x":4.75, "y":2},
+ {"x":5.75, "y":2},
+ {"x":6.75, "y":2},
+ {"x":7.75, "y":2},
+ {"x":8.75, "y":2},
+ {"x":9.75, "y":2},
+ {"x":10.75, "y":2},
+ {"x":11.75, "y":2},
+ {"x":12.75, "y":2, "w":2.25},
+
+ {"x":0, "y":3, "w":2.25},
+ {"x":2.25, "y":3},
+ {"x":3.25, "y":3},
+ {"x":4.25, "y":3},
+ {"x":5.25, "y":3},
+ {"x":6.25, "y":3},
+ {"x":7.25, "y":3},
+ {"x":8.25, "y":3},
+ {"x":9.25, "y":3},
+ {"x":10.25, "y":3},
+ {"x":11.25, "y":3, "w":1.75},
+ {"x":13, "y":3},
+ {"x":14, "y":3},
+
+ {"x":0, "y": 4, "w": 1.25},
+ {"x":1.25, "y": 4, "w": 1.25},
+ {"x":2.5, "y": 4, "w": 1.25},
+ {"x":3.75, "y": 4, "w": 6.25},
+ {"x":10, "y": 4},
+ {"x":11, "y": 4},
+ {"x":12, "y": 4},
+ {"x":13, "y": 4},
+ {"x":14, "y": 4}
+ ]
+ },
+ "LAYOUT_60_ansi_arrow_tsangan_split_bs": {
+ "layout": [
+ {"x":0, "y":0},
+ {"x":1, "y":0},
+ {"x":2, "y":0},
+ {"x":3, "y":0},
+ {"x":4, "y":0},
+ {"x":5, "y":0},
+ {"x":6, "y":0},
+ {"x":7, "y":0},
+ {"x":8, "y":0},
+ {"x":9, "y":0},
+ {"x":10, "y":0},
+ {"x":11, "y":0},
+ {"x":12, "y":0},
+ {"x":13, "y":0},
+ {"x":14, "y":0},
+
+ {"x":0, "y":1, "w":1.5},
+ {"x":1.5, "y":1},
+ {"x":2.5, "y":1},
+ {"x":3.5, "y":1},
+ {"x":4.5, "y":1},
+ {"x":5.5, "y":1},
+ {"x":6.5, "y":1},
+ {"x":7.5, "y":1},
+ {"x":8.5, "y":1},
+ {"x":9.5, "y":1},
+ {"x":10.5, "y":1},
+ {"x":11.5, "y":1},
+ {"x":12.5, "y":1},
+ {"x":13.5, "y":1, "w":1.5},
+
+ {"x":0, "y":2, "w":1.75},
+ {"x":1.75, "y":2},
+ {"x":2.75, "y":2},
+ {"x":3.75, "y":2},
+ {"x":4.75, "y":2},
+ {"x":5.75, "y":2},
+ {"x":6.75, "y":2},
+ {"x":7.75, "y":2},
+ {"x":8.75, "y":2},
+ {"x":9.75, "y":2},
+ {"x":10.75, "y":2},
+ {"x":11.75, "y":2},
+ {"x":12.75, "y":2, "w":2.25},
+
+ {"x":0, "y":3, "w":2.25},
+ {"x":2.25, "y":3},
+ {"x":3.25, "y":3},
+ {"x":4.25, "y":3},
+ {"x":5.25, "y":3},
+ {"x":6.25, "y":3},
+ {"x":7.25, "y":3},
+ {"x":8.25, "y":3},
+ {"x":9.25, "y":3},
+ {"x":10.25, "y":3},
+ {"x":11.25, "y":3, "w":1.75},
+ {"x":13, "y":3},
+ {"x":14, "y":3},
+
+ {"x":0, "y": 4, "w": 1.5},
+ {"x":1.5, "y": 4},
+ {"x":2.5, "y": 4, "w": 1.5},
+ {"x":4, "y": 4, "w": 7},
+ {"x":11, "y": 4},
+ {"x":12, "y": 4},
+ {"x":13, "y": 4},
+ {"x":14, "y": 4}
+ ]
+ },
+ "LAYOUT_60_ansi_tsangan_split_rshift": {
+ "layout": [
+ {"x": 0, "y": 0},
+ {"x": 1, "y": 0},
+ {"x": 2, "y": 0},
+ {"x": 3, "y": 0},
+ {"x": 4, "y": 0},
+ {"x": 5, "y": 0},
+ {"x": 6, "y": 0},
+ {"x": 7, "y": 0},
+ {"x": 8, "y": 0},
+ {"x": 9, "y": 0},
+ {"x": 10, "y": 0},
+ {"x": 11, "y": 0},
+ {"x": 12, "y": 0},
+ {"x": 13, "y": 0, "w": 2},
+
+ {"x": 0, "y": 1, "w": 1.5},
+ {"x": 1.5, "y": 1},
+ {"x": 2.5, "y": 1},
+ {"x": 3.5, "y": 1},
+ {"x": 4.5, "y": 1},
+ {"x": 5.5, "y": 1},
+ {"x": 6.5, "y": 1},
+ {"x": 7.5, "y": 1},
+ {"x": 8.5, "y": 1},
+ {"x": 9.5, "y": 1},
+ {"x": 10.5, "y": 1},
+ {"x": 11.5, "y": 1},
+ {"x": 12.5, "y": 1},
+ {"x": 13.5, "y": 1, "w": 1.5},
+
+ {"x": 0, "y": 2, "w": 1.75},
+ {"x": 1.75, "y": 2},
+ {"x": 2.75, "y": 2},
+ {"x": 3.75, "y": 2},
+ {"x": 4.75, "y": 2},
+ {"x": 5.75, "y": 2},
+ {"x": 6.75, "y": 2},
+ {"x": 7.75, "y": 2},
+ {"x": 8.75, "y": 2},
+ {"x": 9.75, "y": 2},
+ {"x": 10.75, "y": 2},
+ {"x": 11.75, "y": 2},
+ {"x": 12.75, "y": 2, "w": 2.25},
+
+ {"x": 0, "y": 3, "w": 2.25},
+ {"x": 2.25, "y": 3},
+ {"x": 3.25, "y": 3},
+ {"x": 4.25, "y": 3},
+ {"x": 5.25, "y": 3},
+ {"x": 6.25, "y": 3},
+ {"x": 7.25, "y": 3},
+ {"x": 8.25, "y": 3},
+ {"x": 9.25, "y": 3},
+ {"x": 10.25, "y": 3},
+ {"x": 11.25, "y": 3},
+ {"x": 12.25, "y": 3, "w": 1.75},
+ {"x": 14, "y": 3},
+
+ {"x": 0, "y": 4, "w": 1.5},
+ {"x": 1.5, "y": 4},
+ {"x": 2.5, "y": 4, "w": 1.5},
+ {"x": 4, "y": 4, "w": 7},
+ {"x": 11, "y": 4, "w": 1.5},
+ {"x": 12.5, "y": 4},
+ {"x": 13.5, "y": 4, "w": 1.5}
+ ]
+ },
+ "LAYOUT_60_tsangan_hhkb": {
+ "layout": [
+ {"x": 0, "y": 0},
+ {"x": 1, "y": 0},
+ {"x": 2, "y": 0},
+ {"x": 3, "y": 0},
+ {"x": 4, "y": 0},
+ {"x": 5, "y": 0},
+ {"x": 6, "y": 0},
+ {"x": 7, "y": 0},
+ {"x": 8, "y": 0},
+ {"x": 9, "y": 0},
+ {"x": 10, "y": 0},
+ {"x": 11, "y": 0},
+ {"x": 12, "y": 0},
+ {"x": 13, "y": 0},
+ {"x": 14, "y": 0},
+
+ {"x": 0, "y": 1, "w": 1.5},
+ {"x": 1.5, "y": 1},
+ {"x": 2.5, "y": 1},
+ {"x": 3.5, "y": 1},
+ {"x": 4.5, "y": 1},
+ {"x": 5.5, "y": 1},
+ {"x": 6.5, "y": 1},
+ {"x": 7.5, "y": 1},
+ {"x": 8.5, "y": 1},
+ {"x": 9.5, "y": 1},
+ {"x": 10.5, "y": 1},
+ {"x": 11.5, "y": 1},
+ {"x": 12.5, "y": 1},
+ {"x": 13.5, "y": 1, "w": 1.5},
+
+ {"x": 0, "y": 2, "w": 1.75},
+ {"x": 1.75, "y": 2},
+ {"x": 2.75, "y": 2},
+ {"x": 3.75, "y": 2},
+ {"x": 4.75, "y": 2},
+ {"x": 5.75, "y": 2},
+ {"x": 6.75, "y": 2},
+ {"x": 7.75, "y": 2},
+ {"x": 8.75, "y": 2},
+ {"x": 9.75, "y": 2},
+ {"x": 10.75, "y": 2},
+ {"x": 11.75, "y": 2},
+ {"x": 12.75, "y": 2, "w": 2.25},
+
+ {"x": 0, "y": 3, "w": 2.25},
+ {"x": 2.25, "y": 3},
+ {"x": 3.25, "y": 3},
+ {"x": 4.25, "y": 3},
+ {"x": 5.25, "y": 3},
+ {"x": 6.25, "y": 3},
+ {"x": 7.25, "y": 3},
+ {"x": 8.25, "y": 3},
+ {"x": 9.25, "y": 3},
+ {"x": 10.25, "y": 3},
+ {"x": 11.25, "y": 3},
+ {"x": 12.25, "y": 3, "w": 1.75},
+ {"x": 14, "y": 3},
+
+ {"x": 0, "y": 4, "w": 1.5},
+ {"x": 1.5, "y": 4},
+ {"x": 2.5, "y": 4, "w": 1.5},
+ {"x": 4, "y": 4, "w": 7},
+ {"x": 11, "y": 4, "w": 1.5},
+ {"x": 12.5, "y": 4},
+ {"x": 13.5, "y": 4, "w": 1.5}
+ ]
+ }
+ }
+}
diff --git a/keyboards/sawnsprojects/krush/krush60/solder/keymaps/60_ansi/keymap.c b/keyboards/sawnsprojects/krush/krush60/solder/keymaps/60_ansi/keymap.c
new file mode 100644
index 0000000000..922ed190f6
--- /dev/null
+++ b/keyboards/sawnsprojects/krush/krush60/solder/keymaps/60_ansi/keymap.c
@@ -0,0 +1,37 @@
+/* Copyright 2021 REPLACE_WITH_YOUR_NAME
+ *
+ * This program is free software: you can redistribute it and/or modify
+ * it under the terms of the GNU General Public License as published by
+ * the Free Software Foundation, either version 2 of the License, or
+ * (at your option) any later version.
+ *
+ * This program is distributed in the hope that it will be useful,
+ * but WITHOUT ANY WARRANTY; without even the implied warranty of
+ * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
+ * GNU General Public License for more details.
+ *
+ * You should have received a copy of the GNU General Public License
+ * along with this program. If not, see <http://www.gnu.org/licenses/>.
+ */
+
+#include QMK_KEYBOARD_H
+
+const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = {
+
+ [0] = LAYOUT_60_ansi(
+ KC_GRV, KC_1, KC_2, KC_3, KC_4, KC_5, KC_6, KC_7, KC_8, KC_9, KC_0, KC_MINS, KC_EQL, KC_BSPC,
+ KC_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_CAPS, KC_A, KC_S, KC_D, KC_F, KC_G, KC_H, KC_J, KC_K, KC_L, KC_SCLN, KC_QUOT, KC_ENT,
+ KC_LSFT, KC_Z, KC_X, KC_C, KC_V, KC_B, KC_N, KC_M, KC_COMM, KC_DOT, KC_SLSH, KC_RSFT,
+ KC_LCTL, KC_LGUI, KC_LALT, KC_SPC, KC_RALT, KC_RGUI, MO(1), KC_RCTL
+ ),
+
+ [1] = LAYOUT_60_ansi(
+ 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_DEL,
+ _______, RGB_TOG, RGB_MOD, RGB_HUI, RGB_HUD, RGB_SAI, RGB_SAD, RGB_VAI, RGB_VAD, _______, KC_PSCR, KC_SLCK, KC_PAUS, _______,
+ _______, _______, _______, _______, _______, _______, _______, _______, _______, KC_INS, KC_HOME, KC_PGUP, _______,
+ _______, _______, _______, _______, _______, _______, _______, _______, _______, KC_END, KC_PGDN, _______,
+ _______, _______, _______, _______, _______, _______, _______, _______
+ ),
+
+};
diff --git a/keyboards/sawnsprojects/krush/krush60/solder/keymaps/60_ansi/readme.md b/keyboards/sawnsprojects/krush/krush60/solder/keymaps/60_ansi/readme.md
new file mode 100644
index 0000000000..56cc403367
--- /dev/null
+++ b/keyboards/sawnsprojects/krush/krush60/solder/keymaps/60_ansi/readme.md
@@ -0,0 +1,3 @@
+# The 60_ansi keymap for krush60 solder
+
+* Standard 60% ANSI layout
diff --git a/keyboards/sawnsprojects/krush/krush60/solder/keymaps/60_ansi_arrow/keymap.c b/keyboards/sawnsprojects/krush/krush60/solder/keymaps/60_ansi_arrow/keymap.c
new file mode 100644
index 0000000000..b198c248bb
--- /dev/null
+++ b/keyboards/sawnsprojects/krush/krush60/solder/keymaps/60_ansi_arrow/keymap.c
@@ -0,0 +1,37 @@
+/* Copyright 2021 SawnsProjects
+ *
+ * This program is free software: you can redistribute it and/or modify
+ * it under the terms of the GNU General Public License as published by
+ * the Free Software Foundation, either version 2 of the License, or
+ * (at your option) any later version.
+ *
+ * This program is distributed in the hope that it will be useful,
+ * but WITHOUT ANY WARRANTY; without even the implied warranty of
+ * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
+ * GNU General Public License for more details.
+ *
+ * You should have received a copy of the GNU General Public License
+ * along with this program. If not, see <http://www.gnu.org/licenses/>.
+ */
+
+#include QMK_KEYBOARD_H
+
+const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = {
+
+ [0] = LAYOUT_60_ansi_arrow(
+ KC_GRV, KC_1, KC_2, KC_3, KC_4, KC_5, KC_6, KC_7, KC_8, KC_9, KC_0, KC_MINS, KC_EQL, KC_BSPC,
+ KC_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_CAPS, KC_A, KC_S, KC_D, KC_F, KC_G, KC_H, KC_J, KC_K, KC_L, KC_SCLN, KC_QUOT, KC_ENT,
+ KC_LSFT, KC_Z, KC_X, KC_C, KC_V, KC_B, KC_N, KC_M, KC_COMM, KC_DOT, KC_RSFT, KC_UP, KC_SLSH,
+ KC_LCTL, KC_LGUI, KC_LALT, KC_SPC, KC_RALT, MO(1), KC_LEFT, KC_DOWN, KC_RGHT
+ ),
+
+ [1] = LAYOUT_60_ansi_arrow(
+ 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_DEL,
+ _______, RGB_TOG, RGB_MOD, RGB_HUI, RGB_HUD, RGB_SAI, RGB_SAD, RGB_VAI, RGB_VAD, _______, KC_PSCR, KC_SLCK, KC_PAUS, _______,
+ _______, _______, _______, _______, _______, _______, _______, _______, _______, KC_INS, KC_HOME, KC_PGUP, _______,
+ _______, _______, _______, _______, _______, _______, _______, _______, _______, KC_END, KC_PGDN, _______, _______,
+ _______, _______, _______, _______, _______, _______, _______, _______, _______
+ ),
+
+};
diff --git a/keyboards/sawnsprojects/krush/krush60/solder/keymaps/60_ansi_arrow/readme.md b/keyboards/sawnsprojects/krush/krush60/solder/keymaps/60_ansi_arrow/readme.md
new file mode 100644
index 0000000000..d601194a07
--- /dev/null
+++ b/keyboards/sawnsprojects/krush/krush60/solder/keymaps/60_ansi_arrow/readme.md
@@ -0,0 +1,3 @@
+# The 60_ansi_arrow keymap for krush60 solder
+
+* 60% ANSI with Arrows layout
diff --git a/keyboards/sawnsprojects/krush/krush60/solder/keymaps/60_ansi_arrow_split_bs/keymap.c b/keyboards/sawnsprojects/krush/krush60/solder/keymaps/60_ansi_arrow_split_bs/keymap.c
new file mode 100644
index 0000000000..7d31b685d3
--- /dev/null
+++ b/keyboards/sawnsprojects/krush/krush60/solder/keymaps/60_ansi_arrow_split_bs/keymap.c
@@ -0,0 +1,37 @@
+/* Copyright 2021 SawnsProjects
+ *
+ * This program is free software: you can redistribute it and/or modify
+ * it under the terms of the GNU General Public License as published by
+ * the Free Software Foundation, either version 2 of the License, or
+ * (at your option) any later version.
+ *
+ * This program is distributed in the hope that it will be useful,
+ * but WITHOUT ANY WARRANTY; without even the implied warranty of
+ * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
+ * GNU General Public License for more details.
+ *
+ * You should have received a copy of the GNU General Public License
+ * along with this program. If not, see <http://www.gnu.org/licenses/>.
+ */
+
+#include QMK_KEYBOARD_H
+
+const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = {
+
+ [0] = LAYOUT_60_ansi_arrow_split_bs(
+ KC_GRV, KC_1, KC_2, KC_3, KC_4, KC_5, KC_6, KC_7, KC_8, KC_9, KC_0, KC_MINS, KC_EQL, KC_BSPC, KC_BSPC,
+ 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_CAPS, KC_A, KC_S, KC_D, KC_F, KC_G, KC_H, KC_J, KC_K, KC_L, KC_SCLN, KC_QUOT, KC_ENT,
+ KC_LSFT, KC_Z, KC_X, KC_C, KC_V, KC_B, KC_N, KC_M, KC_COMM, KC_DOT, KC_RSFT, KC_UP, KC_SLSH,
+ KC_LCTL, KC_LGUI, KC_LALT, KC_SPC, KC_RALT, MO(1), KC_LEFT, KC_DOWN, KC_RGHT
+ ),
+
+ [1] = LAYOUT_60_ansi_arrow_split_bs(
+ 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_DEL, _______,
+ _______, RGB_TOG, RGB_MOD, RGB_HUI, RGB_HUD, RGB_SAI, RGB_SAD, RGB_VAI, RGB_VAD, _______, KC_PSCR, KC_SLCK, KC_PAUS, _______,
+ _______, _______, _______, _______, _______, _______, _______, _______, _______, KC_INS, KC_HOME, KC_PGUP, _______,
+ _______, _______, _______, _______, _______, _______, _______, _______, _______, KC_END, KC_PGDN, _______, _______,
+ _______, _______, _______, _______, _______, _______, _______, _______, _______
+ ),
+
+};
diff --git a/keyboards/sawnsprojects/krush/krush60/solder/keymaps/60_ansi_arrow_split_bs/readme.md b/keyboards/sawnsprojects/krush/krush60/solder/keymaps/60_ansi_arrow_split_bs/readme.md
new file mode 100644
index 0000000000..618b721d22
--- /dev/null
+++ b/keyboards/sawnsprojects/krush/krush60/solder/keymaps/60_ansi_arrow_split_bs/readme.md
@@ -0,0 +1,4 @@
+# The 60_ansi_arrow_split_bs keymap for krush60 solder
+
+* 60% ANSI with Arrows layout
+ * split Backspace
diff --git a/keyboards/sawnsprojects/krush/krush60/solder/keymaps/60_ansi_arrow_split_bs_spc/keymap.c b/keyboards/sawnsprojects/krush/krush60/solder/keymaps/60_ansi_arrow_split_bs_spc/keymap.c
new file mode 100644
index 0000000000..ff75a4903f
--- /dev/null
+++ b/keyboards/sawnsprojects/krush/krush60/solder/keymaps/60_ansi_arrow_split_bs_spc/keymap.c
@@ -0,0 +1,37 @@
+/* Copyright 2021 SawnsProjects
+ *
+ * This program is free software: you can redistribute it and/or modify
+ * it under the terms of the GNU General Public License as published by
+ * the Free Software Foundation, either version 2 of the License, or
+ * (at your option) any later version.
+ *
+ * This program is distributed in the hope that it will be useful,
+ * but WITHOUT ANY WARRANTY; without even the implied warranty of
+ * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
+ * GNU General Public License for more details.
+ *
+ * You should have received a copy of the GNU General Public License
+ * along with this program. If not, see <http://www.gnu.org/licenses/>.
+ */
+
+#include QMK_KEYBOARD_H
+
+const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = {
+
+ [0] = LAYOUT_60_ansi_arrow_split_bs_spc(
+ KC_GRV, KC_1, KC_2, KC_3, KC_4, KC_5, KC_6, KC_7, KC_8, KC_9, KC_0, KC_MINS, KC_EQL, KC_BSPC, KC_BSPC,
+ 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_CAPS, KC_A, KC_S, KC_D, KC_F, KC_G, KC_H, KC_J, KC_K, KC_L, KC_SCLN, KC_QUOT, KC_ENT,
+ KC_LSFT, KC_Z, KC_X, KC_C, KC_V, KC_B, KC_N, KC_M, KC_COMM, KC_DOT, KC_RSFT, KC_UP, KC_SLSH,
+ KC_LCTL, KC_LGUI, KC_LALT, KC_SPC, KC_SPC, KC_SPC, KC_RALT, MO(1), KC_LEFT, KC_DOWN, KC_RGHT
+ ),
+
+ [1] = LAYOUT_60_ansi_arrow_split_bs_spc(
+ 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_DEL, _______,
+ _______, RGB_TOG, RGB_MOD, RGB_HUI, RGB_HUD, RGB_SAI, RGB_SAD, RGB_VAI, RGB_VAD, _______, KC_PSCR, KC_SLCK, KC_PAUS, _______,
+ _______, _______, _______, _______, _______, _______, _______, _______, _______, KC_INS, KC_HOME, KC_PGUP, _______,
+ _______, _______, _______, _______, _______, _______, _______, _______, _______, KC_END, KC_PGDN, _______, _______,
+ _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______
+ ),
+
+};
diff --git a/keyboards/sawnsprojects/krush/krush60/solder/keymaps/60_ansi_arrow_split_bs_spc/readme.md b/keyboards/sawnsprojects/krush/krush60/solder/keymaps/60_ansi_arrow_split_bs_spc/readme.md
new file mode 100644
index 0000000000..db21ea0871
--- /dev/null
+++ b/keyboards/sawnsprojects/krush/krush60/solder/keymaps/60_ansi_arrow_split_bs_spc/readme.md
@@ -0,0 +1,5 @@
+# The 60_ansi_arrow_split_bs_spc keymap for krush60 solder
+
+* 60% ANSI with Arrows layout
+ * split Backspace
+ * split Spacebar
diff --git a/keyboards/sawnsprojects/krush/krush60/solder/keymaps/60_ansi_arrow_split_spc/keymap.c b/keyboards/sawnsprojects/krush/krush60/solder/keymaps/60_ansi_arrow_split_spc/keymap.c
new file mode 100644
index 0000000000..95ad0386a5
--- /dev/null
+++ b/keyboards/sawnsprojects/krush/krush60/solder/keymaps/60_ansi_arrow_split_spc/keymap.c
@@ -0,0 +1,37 @@
+/* Copyright 2021 SawnsProjects
+ *
+ * This program is free software: you can redistribute it and/or modify
+ * it under the terms of the GNU General Public License as published by
+ * the Free Software Foundation, either version 2 of the License, or
+ * (at your option) any later version.
+ *
+ * This program is distributed in the hope that it will be useful,
+ * but WITHOUT ANY WARRANTY; without even the implied warranty of
+ * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
+ * GNU General Public License for more details.
+ *
+ * You should have received a copy of the GNU General Public License
+ * along with this program. If not, see <http://www.gnu.org/licenses/>.
+ */
+
+#include QMK_KEYBOARD_H
+
+const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = {
+
+ [0] = LAYOUT_60_ansi_arrow_split_spc(
+ KC_GRV, KC_1, KC_2, KC_3, KC_4, KC_5, KC_6, KC_7, KC_8, KC_9, KC_0, KC_MINS, KC_EQL, KC_BSPC,
+ KC_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_CAPS, KC_A, KC_S, KC_D, KC_F, KC_G, KC_H, KC_J, KC_K, KC_L, KC_SCLN, KC_QUOT, KC_ENT,
+ KC_LSFT, KC_Z, KC_X, KC_C, KC_V, KC_B, KC_N, KC_M, KC_COMM, KC_DOT, KC_RSFT, KC_UP, KC_SLSH,
+ KC_LCTL, KC_LGUI, KC_LALT, KC_SPC, KC_SPC, KC_SPC, KC_RALT, MO(1), KC_LEFT, KC_DOWN, KC_RGHT
+ ),
+
+ [1] = LAYOUT_60_ansi_arrow_split_spc(
+ 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_DEL,
+ _______, RGB_TOG, RGB_MOD, RGB_HUI, RGB_HUD, RGB_SAI, RGB_SAD, RGB_VAI, RGB_VAD, _______, KC_PSCR, KC_SLCK, KC_PAUS, _______,
+ _______, _______, _______, _______, _______, _______, _______, _______, _______, KC_INS, KC_HOME, KC_PGUP, _______,
+ _______, _______, _______, _______, _______, _______, _______, _______, _______, KC_END, KC_PGDN, _______, _______,
+ _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______
+ ),
+
+};
diff --git a/keyboards/sawnsprojects/krush/krush60/solder/keymaps/60_ansi_arrow_split_spc/readme.md b/keyboards/sawnsprojects/krush/krush60/solder/keymaps/60_ansi_arrow_split_spc/readme.md
new file mode 100644
index 0000000000..68409cf47a
--- /dev/null
+++ b/keyboards/sawnsprojects/krush/krush60/solder/keymaps/60_ansi_arrow_split_spc/readme.md
@@ -0,0 +1,4 @@
+# The 60_ansi_arrow_split_spc keymap for krush60 solder
+
+* 60% ANSI with Arrows layout
+ * split Spacebar
diff --git a/keyboards/sawnsprojects/krush/krush60/solder/keymaps/60_ansi_arrow_tsangan/keymap.c b/keyboards/sawnsprojects/krush/krush60/solder/keymaps/60_ansi_arrow_tsangan/keymap.c
new file mode 100644
index 0000000000..9e3ad13073
--- /dev/null
+++ b/keyboards/sawnsprojects/krush/krush60/solder/keymaps/60_ansi_arrow_tsangan/keymap.c
@@ -0,0 +1,37 @@
+/* Copyright 2021 SawnsProjects
+ *
+ * This program is free software: you can redistribute it and/or modify
+ * it under the terms of the GNU General Public License as published by
+ * the Free Software Foundation, either version 2 of the License, or
+ * (at your option) any later version.
+ *
+ * This program is distributed in the hope that it will be useful,
+ * but WITHOUT ANY WARRANTY; without even the implied warranty of
+ * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
+ * GNU General Public License for more details.
+ *
+ * You should have received a copy of the GNU General Public License
+ * along with this program. If not, see <http://www.gnu.org/licenses/>.
+ */
+
+#include QMK_KEYBOARD_H
+
+const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = {
+
+ [0] = LAYOUT_60_ansi_arrow_tsangan(
+ KC_GRV, KC_1, KC_2, KC_3, KC_4, KC_5, KC_6, KC_7, KC_8, KC_9, KC_0, KC_MINS, KC_EQL, KC_BSPC,
+ KC_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_CAPS, KC_A, KC_S, KC_D, KC_F, KC_G, KC_H, KC_J, KC_K, KC_L, KC_SCLN, KC_QUOT, KC_ENT,
+ KC_LSFT, KC_Z, KC_X, KC_C, KC_V, KC_B, KC_N, KC_M, KC_COMM, KC_DOT, KC_RSFT, KC_UP, KC_SLSH,
+ KC_LCTL, KC_LGUI, KC_LALT, KC_SPC, MO(1), KC_LEFT, KC_DOWN, KC_RGHT
+ ),
+
+ [1] = LAYOUT_60_ansi_arrow_tsangan(
+ 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_DEL,
+ _______, RGB_TOG, RGB_MOD, RGB_HUI, RGB_HUD, RGB_SAI, RGB_SAD, RGB_VAI, RGB_VAD, _______, KC_PSCR, KC_SLCK, KC_PAUS, _______,
+ _______, _______, _______, _______, _______, _______, _______, _______, _______, KC_INS, KC_HOME, KC_PGUP, _______,
+ _______, _______, _______, _______, _______, _______, _______, _______, _______, KC_END, KC_PGDN, _______, _______,
+ _______, _______, _______, _______, _______, _______, _______, _______
+ ),
+
+};
diff --git a/keyboards/sawnsprojects/krush/krush60/solder/keymaps/60_ansi_arrow_tsangan/readme.md b/keyboards/sawnsprojects/krush/krush60/solder/keymaps/60_ansi_arrow_tsangan/readme.md
new file mode 100644
index 0000000000..6590eb3034
--- /dev/null
+++ b/keyboards/sawnsprojects/krush/krush60/solder/keymaps/60_ansi_arrow_tsangan/readme.md
@@ -0,0 +1,4 @@
+# The 60_ansi_arrow_tsangan keymap for krush60 solder
+
+* 60% ANSI with Arrows layout
+ * 7u Spacebar
diff --git a/keyboards/sawnsprojects/krush/krush60/solder/keymaps/60_ansi_arrow_tsangan_split_bs/keymap.c b/keyboards/sawnsprojects/krush/krush60/solder/keymaps/60_ansi_arrow_tsangan_split_bs/keymap.c
new file mode 100644
index 0000000000..e5723c0807
--- /dev/null
+++ b/keyboards/sawnsprojects/krush/krush60/solder/keymaps/60_ansi_arrow_tsangan_split_bs/keymap.c
@@ -0,0 +1,37 @@
+/* Copyright 2021 SawnsProjects
+ *
+ * This program is free software: you can redistribute it and/or modify
+ * it under the terms of the GNU General Public License as published by
+ * the Free Software Foundation, either version 2 of the License, or
+ * (at your option) any later version.
+ *
+ * This program is distributed in the hope that it will be useful,
+ * but WITHOUT ANY WARRANTY; without even the implied warranty of
+ * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
+ * GNU General Public License for more details.
+ *
+ * You should have received a copy of the GNU General Public License
+ * along with this program. If not, see <http://www.gnu.org/licenses/>.
+ */
+
+#include QMK_KEYBOARD_H
+
+const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = {
+
+ [0] = LAYOUT_60_ansi_arrow_tsangan_split_bs(
+ KC_GRV, KC_1, KC_2, KC_3, KC_4, KC_5, KC_6, KC_7, KC_8, KC_9, KC_0, KC_MINS, KC_EQL, KC_BSPC, KC_BSPC,
+ 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_CAPS, KC_A, KC_S, KC_D, KC_F, KC_G, KC_H, KC_J, KC_K, KC_L, KC_SCLN, KC_QUOT, KC_ENT,
+ KC_LSFT, KC_Z, KC_X, KC_C, KC_V, KC_B, KC_N, KC_M, KC_COMM, KC_DOT, KC_RSFT, KC_UP, KC_SLSH,
+ KC_LCTL, KC_LGUI, KC_LALT, KC_SPC, MO(1), KC_LEFT, KC_DOWN, KC_RGHT
+ ),
+
+ [1] = LAYOUT_60_ansi_arrow_tsangan_split_bs(
+ 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_DEL, _______,
+ _______, RGB_TOG, RGB_MOD, RGB_HUI, RGB_HUD, RGB_SAI, RGB_SAD, RGB_VAI, RGB_VAD, _______, KC_PSCR, KC_SLCK, KC_PAUS, _______,
+ _______, _______, _______, _______, _______, _______, _______, _______, _______, KC_INS, KC_HOME, KC_PGUP, _______,
+ _______, _______, _______, _______, _______, _______, _______, _______, _______, KC_END, KC_PGDN, _______, _______,
+ _______, _______, _______, _______, _______, _______, _______, _______
+ ),
+
+};
diff --git a/keyboards/sawnsprojects/krush/krush60/solder/keymaps/60_ansi_arrow_tsangan_split_bs/readme.md b/keyboards/sawnsprojects/krush/krush60/solder/keymaps/60_ansi_arrow_tsangan_split_bs/readme.md
new file mode 100644
index 0000000000..b48a892a23
--- /dev/null
+++ b/keyboards/sawnsprojects/krush/krush60/solder/keymaps/60_ansi_arrow_tsangan_split_bs/readme.md
@@ -0,0 +1,5 @@
+# The 60_ansi_arrow_tsangan_split_bs keymap for krush60 solder
+
+* 60% ANSI with Arrows layout
+ * 7u Spacebar
+ * split Backspace
diff --git a/keyboards/sawnsprojects/krush/krush60/solder/keymaps/60_ansi_split_bs/keymap.c b/keyboards/sawnsprojects/krush/krush60/solder/keymaps/60_ansi_split_bs/keymap.c
new file mode 100644
index 0000000000..1e9d26d20d
--- /dev/null
+++ b/keyboards/sawnsprojects/krush/krush60/solder/keymaps/60_ansi_split_bs/keymap.c
@@ -0,0 +1,37 @@
+/* Copyright 2021 SawnsProjects
+ *
+ * This program is free software: you can redistribute it and/or modify
+ * it under the terms of the GNU General Public License as published by
+ * the Free Software Foundation, either version 2 of the License, or
+ * (at your option) any later version.
+ *
+ * This program is distributed in the hope that it will be useful,
+ * but WITHOUT ANY WARRANTY; without even the implied warranty of
+ * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
+ * GNU General Public License for more details.
+ *
+ * You should have received a copy of the GNU General Public License
+ * along with this program. If not, see <http://www.gnu.org/licenses/>.
+ */
+
+#include QMK_KEYBOARD_H
+
+const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = {
+
+ [0] = LAYOUT_60_ansi_split_bs(
+ 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_BSPC,
+ 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_CAPS, KC_A, KC_S, KC_D, KC_F, KC_G, KC_H, KC_J, KC_K, KC_L, KC_SCLN, KC_QUOT, KC_ENT,
+ KC_LSFT, KC_Z, KC_X, KC_C, KC_V, KC_B, KC_N, KC_M, KC_COMM, KC_DOT, KC_SLSH, KC_RSFT,
+ KC_LCTL, KC_LGUI, KC_LALT, KC_SPC, KC_RALT, KC_RGUI, MO(1), KC_RCTL
+ ),
+
+ [1] = LAYOUT_60_ansi_split_bs(
+ 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_DEL, _______,
+ _______, RGB_TOG, RGB_MOD, RGB_HUI, RGB_HUD, RGB_SAI, RGB_SAD, RGB_VAI, RGB_VAD, _______, KC_PSCR, KC_SLCK, KC_PAUS, _______,
+ _______, _______, _______, _______, _______, _______, _______, _______, _______, KC_INS, KC_HOME, KC_PGUP, _______,
+ _______, _______, _______, _______, _______, _______, _______, _______, KC_DEL, KC_END, KC_PGDN, _______,
+ _______, _______, _______, _______, _______, _______, _______, _______
+ ),
+
+};
diff --git a/keyboards/sawnsprojects/krush/krush60/solder/keymaps/60_ansi_split_bs/readme.md b/keyboards/sawnsprojects/krush/krush60/solder/keymaps/60_ansi_split_bs/readme.md
new file mode 100644
index 0000000000..b0075b8c7b
--- /dev/null
+++ b/keyboards/sawnsprojects/krush/krush60/solder/keymaps/60_ansi_split_bs/readme.md
@@ -0,0 +1,4 @@
+# The 60_ansi_split_bs keymap for krush60 solder
+
+* 60% ANSI layout
+ * split Backspace
diff --git a/keyboards/sawnsprojects/krush/krush60/solder/keymaps/60_ansi_split_bs_spc/keymap.c b/keyboards/sawnsprojects/krush/krush60/solder/keymaps/60_ansi_split_bs_spc/keymap.c
new file mode 100644
index 0000000000..88a87b3f0d
--- /dev/null
+++ b/keyboards/sawnsprojects/krush/krush60/solder/keymaps/60_ansi_split_bs_spc/keymap.c
@@ -0,0 +1,35 @@
+/* Copyright 2021 SawnsProjects
+ *
+ * This program is free software: you can redistribute it and/or modify
+ * it under the terms of the GNU General Public License as published by
+ * the Free Software Foundation, either version 2 of the License, or
+ * (at your option) any later version.
+ *
+ * This program is distributed in the hope that it will be useful,
+ * but WITHOUT ANY WARRANTY; without even the implied warranty of
+ * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
+ * GNU General Public License for more details.
+ *
+ * You should have received a copy of the GNU General Public License
+ * along with this program. If not, see <http://www.gnu.org/licenses/>.
+ */
+
+#include QMK_KEYBOARD_H
+
+const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = {
+
+ [0] = LAYOUT_60_ansi_split_bs_spc(
+ 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_BSPC,
+ 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_CAPS, KC_A, KC_S, KC_D, KC_F, KC_G, KC_H, KC_J, KC_K, KC_L, KC_SCLN, KC_QUOT, KC_ENT,
+ KC_LSFT, KC_Z, KC_X, KC_C, KC_V, KC_B, KC_N, KC_M, KC_COMM, KC_DOT, KC_SLSH, KC_RSFT,
+ KC_LCTL, KC_LGUI, KC_LALT, KC_SPC, KC_SPC, KC_SPC, KC_RALT, KC_RGUI, MO(1), KC_RCTL),
+
+ [1] = LAYOUT_60_ansi_split_bs_spc(
+ 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_DEL, _______,
+ _______, RGB_TOG, RGB_MOD, RGB_HUI, RGB_HUD, RGB_SAI, RGB_SAD, RGB_VAI, RGB_VAD, _______, KC_PSCR, KC_SLCK, KC_PAUS, _______,
+ _______, _______, _______, _______, _______, _______, _______, _______, _______, KC_INS, KC_HOME, KC_PGUP, _______,
+ _______, _______, _______, _______, _______, _______, _______, _______, KC_DEL, KC_END, KC_PGDN, _______,
+ _______, _______, _______, _______, _______, _______, _______, _______, _______, _______)
+};
+
diff --git a/keyboards/sawnsprojects/krush/krush60/solder/keymaps/60_ansi_split_bs_spc/readme.md b/keyboards/sawnsprojects/krush/krush60/solder/keymaps/60_ansi_split_bs_spc/readme.md
new file mode 100644
index 0000000000..922e791c40
--- /dev/null
+++ b/keyboards/sawnsprojects/krush/krush60/solder/keymaps/60_ansi_split_bs_spc/readme.md
@@ -0,0 +1,5 @@
+# The 60_ansi_split_bs_spc keymap for krush60 solder
+
+* 60% ANSI layout
+ * split Backspace
+ * split Spacebar
diff --git a/keyboards/sawnsprojects/krush/krush60/solder/keymaps/60_ansi_split_spc/keymap.c b/keyboards/sawnsprojects/krush/krush60/solder/keymaps/60_ansi_split_spc/keymap.c
new file mode 100644
index 0000000000..f180ac68b1
--- /dev/null
+++ b/keyboards/sawnsprojects/krush/krush60/solder/keymaps/60_ansi_split_spc/keymap.c
@@ -0,0 +1,35 @@
+/* Copyright 2021 SawnsProjects
+ *
+ * This program is free software: you can redistribute it and/or modify
+ * it under the terms of the GNU General Public License as published by
+ * the Free Software Foundation, either version 2 of the License, or
+ * (at your option) any later version.
+ *
+ * This program is distributed in the hope that it will be useful,
+ * but WITHOUT ANY WARRANTY; without even the implied warranty of
+ * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
+ * GNU General Public License for more details.
+ *
+ * You should have received a copy of the GNU General Public License
+ * along with this program. If not, see <http://www.gnu.org/licenses/>.
+ */
+
+#include QMK_KEYBOARD_H
+
+const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = {
+
+ [0] = LAYOUT_60_ansi_split_spc(
+ 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_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_CAPS, KC_A, KC_S, KC_D, KC_F, KC_G, KC_H, KC_J, KC_K, KC_L, KC_SCLN, KC_QUOT, KC_ENT,
+ KC_LSFT, KC_Z, KC_X, KC_C, KC_V, KC_B, KC_N, KC_M, KC_COMM, KC_DOT, KC_SLSH, KC_RSFT,
+ KC_LCTL, KC_LGUI, KC_LALT, KC_SPC, KC_SPC, KC_SPC, KC_RALT, KC_RGUI, MO(1), KC_RCTL),
+
+ [1] = LAYOUT_60_ansi_split_spc(
+ 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_DEL,
+ _______, RGB_TOG, RGB_MOD, RGB_HUI, RGB_HUD, RGB_SAI, RGB_SAD, RGB_VAI, RGB_VAD, _______, KC_PSCR, KC_SLCK, KC_PAUS, _______,
+ _______, _______, _______, _______, _______, _______, _______, _______, _______, KC_INS, KC_HOME, KC_PGUP, _______,
+ _______, _______, _______, _______, _______, _______, _______, _______, KC_DEL, KC_END, KC_PGDN, _______,
+ _______, _______, _______, _______, _______, _______, _______, _______, _______, _______)
+};
+
diff --git a/keyboards/sawnsprojects/krush/krush60/solder/keymaps/60_ansi_split_spc/readme.md b/keyboards/sawnsprojects/krush/krush60/solder/keymaps/60_ansi_split_spc/readme.md
new file mode 100644
index 0000000000..d98e08c875
--- /dev/null
+++ b/keyboards/sawnsprojects/krush/krush60/solder/keymaps/60_ansi_split_spc/readme.md
@@ -0,0 +1,4 @@
+# The 60_ansi_split_spc keymap for krush60 solder
+
+* 60% ANSI layout
+ * split Spacebar
diff --git a/keyboards/sawnsprojects/krush/krush60/solder/keymaps/60_ansi_tsangan/keymap.c b/keyboards/sawnsprojects/krush/krush60/solder/keymaps/60_ansi_tsangan/keymap.c
new file mode 100644
index 0000000000..17a06223eb
--- /dev/null
+++ b/keyboards/sawnsprojects/krush/krush60/solder/keymaps/60_ansi_tsangan/keymap.c
@@ -0,0 +1,37 @@
+/* Copyright 2021 SawnsProjects
+ *
+ * This program is free software: you can redistribute it and/or modify
+ * it under the terms of the GNU General Public License as published by
+ * the Free Software Foundation, either version 2 of the License, or
+ * (at your option) any later version.
+ *
+ * This program is distributed in the hope that it will be useful,
+ * but WITHOUT ANY WARRANTY; without even the implied warranty of
+ * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
+ * GNU General Public License for more details.
+ *
+ * You should have received a copy of the GNU General Public License
+ * along with this program. If not, see <http://www.gnu.org/licenses/>.
+ */
+
+#include QMK_KEYBOARD_H
+
+const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = {
+
+ [0] = LAYOUT_60_ansi_tsangan(
+ 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_BSPC,
+ 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_CAPS, KC_A, KC_S, KC_D, KC_F, KC_G, KC_H, KC_J, KC_K, KC_L, KC_SCLN, KC_QUOT, KC_ENT,
+ KC_LSFT, KC_Z, KC_X, KC_C, KC_V, KC_B, KC_N, KC_M, KC_COMM, KC_DOT, KC_SLSH, KC_RSFT,
+ KC_LCTL, KC_LGUI, KC_LALT, KC_SPC, KC_RALT, MO(1), KC_RCTL
+ ),
+
+ [1] = LAYOUT_60_ansi_tsangan(
+ 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_DEL,
+ _______, RGB_TOG, RGB_MOD, RGB_HUI, RGB_HUD, RGB_SAI, RGB_SAD, RGB_VAI, RGB_VAD, _______, KC_PSCR, KC_SLCK, KC_PAUS, _______,
+ _______, _______, _______, _______, _______, _______, _______, _______, _______, KC_INS, KC_HOME, KC_PGUP, _______,
+ _______, _______, _______, _______, _______, _______, _______, _______, _______, KC_END, KC_PGDN, _______,
+ _______, _______, _______, _______, _______, _______, _______
+ ),
+
+};
diff --git a/keyboards/sawnsprojects/krush/krush60/solder/keymaps/60_ansi_tsangan/readme.md b/keyboards/sawnsprojects/krush/krush60/solder/keymaps/60_ansi_tsangan/readme.md
new file mode 100644
index 0000000000..11453644ea
--- /dev/null
+++ b/keyboards/sawnsprojects/krush/krush60/solder/keymaps/60_ansi_tsangan/readme.md
@@ -0,0 +1,4 @@
+# The 60_ansi_tsangan keymap for krush60 solder
+
+* 60% ANSI layout
+ * Tsangan bottom row
diff --git a/keyboards/sawnsprojects/krush/krush60/solder/keymaps/60_ansi_tsangan_split_bs/keymap.c b/keyboards/sawnsprojects/krush/krush60/solder/keymaps/60_ansi_tsangan_split_bs/keymap.c
new file mode 100644
index 0000000000..e749252274
--- /dev/null
+++ b/keyboards/sawnsprojects/krush/krush60/solder/keymaps/60_ansi_tsangan_split_bs/keymap.c
@@ -0,0 +1,37 @@
+/* Copyright 2021 SawnsProjects
+ *
+ * This program is free software: you can redistribute it and/or modify
+ * it under the terms of the GNU General Public License as published by
+ * the Free Software Foundation, either version 2 of the License, or
+ * (at your option) any later version.
+ *
+ * This program is distributed in the hope that it will be useful,
+ * but WITHOUT ANY WARRANTY; without even the implied warranty of
+ * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
+ * GNU General Public License for more details.
+ *
+ * You should have received a copy of the GNU General Public License
+ * along with this program. If not, see <http://www.gnu.org/licenses/>.
+ */
+
+#include QMK_KEYBOARD_H
+
+const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = {
+
+ [0] = LAYOUT_60_ansi_tsangan_split_bs(
+ 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_BSPC,
+ 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_CAPS, KC_A, KC_S, KC_D, KC_F, KC_G, KC_H, KC_J, KC_K, KC_L, KC_SCLN, KC_QUOT, KC_ENT,
+ KC_LSFT, KC_Z, KC_X, KC_C, KC_V, KC_B, KC_N, KC_M, KC_COMM, KC_DOT, KC_SLSH, KC_RSFT,
+ KC_LCTL, KC_LGUI, KC_LALT, KC_SPC, KC_RALT, MO(1), KC_RCTL
+ ),
+
+ [1] = LAYOUT_60_ansi_tsangan_split_bs(
+ 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_DEL, _______,
+ _______, RGB_TOG, RGB_MOD, RGB_HUI, RGB_HUD, RGB_SAI, RGB_SAD, RGB_VAI, RGB_VAD, _______, KC_PSCR, KC_SLCK, KC_PAUS, _______,
+ _______, _______, _______, _______, _______, _______, _______, _______, _______, KC_INS, KC_HOME, KC_PGUP, _______,
+ _______, _______, _______, _______, _______, _______,_______, _______, KC_DEL, KC_END, KC_PGDN, _______,
+ _______, _______, _______, _______, _______, _______, _______
+ ),
+
+};
diff --git a/keyboards/sawnsprojects/krush/krush60/solder/keymaps/60_ansi_tsangan_split_bs/readme.md b/keyboards/sawnsprojects/krush/krush60/solder/keymaps/60_ansi_tsangan_split_bs/readme.md
new file mode 100644
index 0000000000..5bc89c6b26
--- /dev/null
+++ b/keyboards/sawnsprojects/krush/krush60/solder/keymaps/60_ansi_tsangan_split_bs/readme.md
@@ -0,0 +1,5 @@
+# The 60_ansi_tsangan_split_bs keymap for krush60 solder
+
+* 60% ANSI layout
+ * Tsangan bottom row
+ * split Backspace
diff --git a/keyboards/sawnsprojects/krush/krush60/solder/keymaps/60_ansi_tsangan_split_rshift/keymap.c b/keyboards/sawnsprojects/krush/krush60/solder/keymaps/60_ansi_tsangan_split_rshift/keymap.c
new file mode 100644
index 0000000000..71bec072c6
--- /dev/null
+++ b/keyboards/sawnsprojects/krush/krush60/solder/keymaps/60_ansi_tsangan_split_rshift/keymap.c
@@ -0,0 +1,37 @@
+/* Copyright 2021 SawnsProjects
+ *
+ * This program is free software: you can redistribute it and/or modify
+ * it under the terms of the GNU General Public License as published by
+ * the Free Software Foundation, either version 2 of the License, or
+ * (at your option) any later version.
+ *
+ * This program is distributed in the hope that it will be useful,
+ * but WITHOUT ANY WARRANTY; without even the implied warranty of
+ * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
+ * GNU General Public License for more details.
+ *
+ * You should have received a copy of the GNU General Public License
+ * along with this program. If not, see <http://www.gnu.org/licenses/>.
+ */
+
+#include QMK_KEYBOARD_H
+
+const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = {
+
+ [0] = LAYOUT_60_ansi_tsangan_split_rshift(
+ 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_BSPC,
+ 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_CAPS, KC_A, KC_S, KC_D, KC_F, KC_G, KC_H, KC_J, KC_K, KC_L, KC_SCLN, KC_QUOT, KC_ENT,
+ KC_LSFT, KC_Z, KC_X, KC_C, KC_V, KC_B, KC_N, KC_M, KC_COMM, KC_DOT, KC_SLSH, KC_RSFT, MO(1),
+ KC_LCTL, KC_LGUI, KC_LALT, KC_SPC, KC_RALT, KC_RGUI, KC_RCTL
+ ),
+
+ [1] = LAYOUT_60_ansi_tsangan_split_rshift(
+ 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_DEL,
+ _______, RGB_TOG, RGB_MOD, RGB_HUI, RGB_HUD, RGB_SAI, RGB_SAD, RGB_VAI, RGB_VAD, _______, KC_PSCR, KC_SLCK, KC_PAUS, _______,
+ _______, _______, _______, _______, _______, _______, _______, _______, _______, KC_INS, KC_HOME, KC_PGUP, _______,
+ _______, _______, _______, _______, _______, _______, _______, _______, _______, KC_END, KC_PGDN, _______, _______,
+ _______, _______, _______, _______, _______, _______, _______
+ ),
+
+};
diff --git a/keyboards/sawnsprojects/krush/krush60/solder/keymaps/60_ansi_tsangan_split_rshift/readme.md b/keyboards/sawnsprojects/krush/krush60/solder/keymaps/60_ansi_tsangan_split_rshift/readme.md
new file mode 100644
index 0000000000..63bfb36224
--- /dev/null
+++ b/keyboards/sawnsprojects/krush/krush60/solder/keymaps/60_ansi_tsangan_split_rshift/readme.md
@@ -0,0 +1,5 @@
+# The 60_ansi_tsangan_split_rshift keymap for krush60 solder
+
+* 60% ANSI layout
+ * Tsangan bottom row
+ * split Right Shift
diff --git a/keyboards/sawnsprojects/krush/krush60/solder/keymaps/60_isoenter_split_bs/keymap.c b/keyboards/sawnsprojects/krush/krush60/solder/keymaps/60_isoenter_split_bs/keymap.c
new file mode 100644
index 0000000000..3a4e0d4ab9
--- /dev/null
+++ b/keyboards/sawnsprojects/krush/krush60/solder/keymaps/60_isoenter_split_bs/keymap.c
@@ -0,0 +1,38 @@
+/* Copyright 2021 SawnsProjects
+ * 2022 QMK / James Young (@noroadsleft)
+*
+ * This program is free software: you can redistribute it and/or modify
+ * it under the terms of the GNU General Public License as published by
+ * the Free Software Foundation, either version 2 of the License, or
+ * (at your option) any later version.
+ *
+ * This program is distributed in the hope that it will be useful,
+ * but WITHOUT ANY WARRANTY; without even the implied warranty of
+ * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
+ * GNU General Public License for more details.
+ *
+ * You should have received a copy of the GNU General Public License
+ * along with this program. If not, see <http://www.gnu.org/licenses/>.
+ */
+
+#include QMK_KEYBOARD_H
+
+const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = {
+
+ [0] = LAYOUT_60_isoenter_split_bs(
+ KC_GRV, KC_1, KC_2, KC_3, KC_4, KC_5, KC_6, KC_7, KC_8, KC_9, KC_0, KC_MINS, KC_EQL, KC_BSPC, KC_BSPC,
+ 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_CAPS, KC_A, KC_S, KC_D, KC_F, KC_G, KC_H, KC_J, KC_K, KC_L, KC_SCLN, KC_QUOT, KC_BSLS, KC_ENT,
+ KC_LSFT, KC_Z, KC_X, KC_C, KC_V, KC_B, KC_N, KC_M, KC_COMM, KC_DOT, KC_SLSH, KC_RSFT,
+ KC_LCTL, KC_LGUI, KC_LALT, KC_SPC, KC_RALT, KC_RGUI, KC_APP, KC_RCTL
+ ),
+
+ [1] = LAYOUT_60_isoenter_split_bs(
+ 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, _______, _______,
+ _______, RGB_TOG, RGB_MOD, RGB_HUI, RGB_HUD, RGB_SAI, RGB_SAD, RGB_VAI, RGB_VAD, _______, KC_PSCR, KC_SLCK, KC_PAUS,
+ _______, _______, _______, _______, _______, _______, _______, _______, _______, KC_INS, KC_HOME, KC_PGUP, _______, _______,
+ _______, _______, _______, _______, _______, _______, _______, _______, _______, KC_END, KC_PGDN, _______,
+ _______, _______, _______, _______, _______, _______, _______, _______
+ ),
+
+};
diff --git a/keyboards/sawnsprojects/krush/krush60/solder/keymaps/60_isoenter_split_bs/readme.md b/keyboards/sawnsprojects/krush/krush60/solder/keymaps/60_isoenter_split_bs/readme.md
new file mode 100644
index 0000000000..1a837607e9
--- /dev/null
+++ b/keyboards/sawnsprojects/krush/krush60/solder/keymaps/60_isoenter_split_bs/readme.md
@@ -0,0 +1,5 @@
+# The 60_isoenter_split_bs keymap for krush60
+
+* 60% ANSI layout
+ * ISO Enter with 2.25u Left Shift
+ * split Backspace
diff --git a/keyboards/sawnsprojects/krush/krush60/solder/keymaps/60_tsangan_hhkb/keymap.c b/keyboards/sawnsprojects/krush/krush60/solder/keymaps/60_tsangan_hhkb/keymap.c
new file mode 100644
index 0000000000..e557c078aa
--- /dev/null
+++ b/keyboards/sawnsprojects/krush/krush60/solder/keymaps/60_tsangan_hhkb/keymap.c
@@ -0,0 +1,37 @@
+/* Copyright 2021 REPLACE_WITH_YOUR_NAME
+ *
+ * This program is free software: you can redistribute it and/or modify
+ * it under the terms of the GNU General Public License as published by
+ * the Free Software Foundation, either version 2 of the License, or
+ * (at your option) any later version.
+ *
+ * This program is distributed in the hope that it will be useful,
+ * but WITHOUT ANY WARRANTY; without even the implied warranty of
+ * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
+ * GNU General Public License for more details.
+ *
+ * You should have received a copy of the GNU General Public License
+ * along with this program. If not, see <http://www.gnu.org/licenses/>.
+ */
+
+#include QMK_KEYBOARD_H
+
+const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = {
+
+ [0] = LAYOUT_60_tsangan_hhkb(
+ 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_BSPC, KC_BSPC,
+ 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_CAPS, KC_A, KC_S, KC_D, KC_F, KC_G, KC_H, KC_J, KC_K, KC_L, KC_SCLN, KC_QUOT, KC_ENT,
+ KC_LSFT, KC_Z, KC_X, KC_C, KC_V, KC_B, KC_N, KC_M, KC_COMM, KC_DOT, KC_SLSH, KC_RSFT, MO(1),
+ KC_LCTL, KC_LGUI, KC_LALT, KC_SPC, KC_RALT, KC_RGUI, KC_RCTL
+ ),
+
+ [1] = LAYOUT_60_tsangan_hhkb(
+ 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_DEL, _______,
+ _______, RGB_TOG, RGB_MOD, RGB_HUI, RGB_HUD, RGB_SAI, RGB_SAD, RGB_VAI, RGB_VAD, _______, KC_PSCR, KC_SLCK, KC_PAUS, _______,
+ _______, _______, _______, _______, _______, _______, _______, _______, _______, KC_INS, KC_HOME, KC_PGUP, _______,
+ _______, _______, _______, _______, _______, _______, _______, _______, _______, KC_END, KC_PGDN, _______, _______,
+ _______, _______, _______, _______, _______, _______, _______
+ ),
+
+};
diff --git a/keyboards/sawnsprojects/krush/krush60/solder/keymaps/60_tsangan_hhkb/readme.md b/keyboards/sawnsprojects/krush/krush60/solder/keymaps/60_tsangan_hhkb/readme.md
new file mode 100644
index 0000000000..3d98346483
--- /dev/null
+++ b/keyboards/sawnsprojects/krush/krush60/solder/keymaps/60_tsangan_hhkb/readme.md
@@ -0,0 +1,6 @@
+# The 60_tsangan_hhkb keymap for krush60 solder
+
+* 60% ANSI layout
+ * Tsangan bottom row
+ * split Backspace
+ * split Right Shift
diff --git a/keyboards/sawnsprojects/krush/krush60/solder/keymaps/default/keymap.c b/keyboards/sawnsprojects/krush/krush60/solder/keymaps/default/keymap.c
new file mode 100644
index 0000000000..6e194461c4
--- /dev/null
+++ b/keyboards/sawnsprojects/krush/krush60/solder/keymaps/default/keymap.c
@@ -0,0 +1,37 @@
+/* Copyright 2021 SawnsProjects
+ *
+ * This program is free software: you can redistribute it and/or modify
+ * it under the terms of the GNU General Public License as published by
+ * the Free Software Foundation, either version 2 of the License, or
+ * (at your option) any later version.
+ *
+ * This program is distributed in the hope that it will be useful,
+ * but WITHOUT ANY WARRANTY; without even the implied warranty of
+ * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
+ * GNU General Public License for more details.
+ *
+ * You should have received a copy of the GNU General Public License
+ * along with this program. If not, see <http://www.gnu.org/licenses/>.
+ */
+
+#include QMK_KEYBOARD_H
+
+const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = {
+
+ [0] = LAYOUT_all(
+ 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_BSPC, KC_BSPC,
+ 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_CAPS, KC_A, KC_S, KC_D, KC_F, KC_G, KC_H, KC_J, KC_K, KC_L, KC_SCLN, KC_QUOT, KC_ENT,
+ KC_LSFT, KC_Z, KC_X, KC_C, KC_V, KC_B, KC_N, KC_M, KC_COMM, KC_DOT, KC_SLSH, KC_RSFT, KC_UP, KC_SLSH,
+ KC_LCTL, KC_LGUI, KC_LALT, KC_SPC, KC_SPC, KC_SPC, KC_RALT, MO(1), KC_LEFT, KC_DOWN, KC_RGHT
+ ),
+
+ [1] = LAYOUT_all(
+ 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, _______, _______,
+ _______, RGB_TOG, RGB_MOD, RGB_HUI, RGB_HUD, RGB_SAI, RGB_SAD, RGB_VAI, RGB_VAD, _______, KC_PSCR, KC_SLCK, KC_PAUS, _______,
+ _______, _______, _______, _______, _______, _______, _______, _______, _______, KC_INS, KC_HOME, KC_PGUP, _______,
+ _______, _______, _______, _______, _______, _______, _______, _______, _______, KC_END, KC_PGDN, _______, _______, _______,
+ _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______
+ ),
+
+};
diff --git a/keyboards/sawnsprojects/krush/krush60/solder/keymaps/default/readme.md b/keyboards/sawnsprojects/krush/krush60/solder/keymaps/default/readme.md
new file mode 100644
index 0000000000..1f6a41724d
--- /dev/null
+++ b/keyboards/sawnsprojects/krush/krush60/solder/keymaps/default/readme.md
@@ -0,0 +1,3 @@
+# The default keymap for krush60 solder
+
+Assigns a keycode to every possible switch location.
diff --git a/keyboards/sawnsprojects/krush/krush60/solder/keymaps/via/keymap.c b/keyboards/sawnsprojects/krush/krush60/solder/keymaps/via/keymap.c
new file mode 100644
index 0000000000..f9a62db7d3
--- /dev/null
+++ b/keyboards/sawnsprojects/krush/krush60/solder/keymaps/via/keymap.c
@@ -0,0 +1,53 @@
+/* Copyright 2021 REPLACE_WITH_YOUR_NAME
+ *
+ * This program is free software: you can redistribute it and/or modify
+ * it under the terms of the GNU General Public License as published by
+ * the Free Software Foundation, either version 2 of the License, or
+ * (at your option) any later version.
+ *
+ * This program is distributed in the hope that it will be useful,
+ * but WITHOUT ANY WARRANTY; without even the implied warranty of
+ * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
+ * GNU General Public License for more details.
+ *
+ * You should have received a copy of the GNU General Public License
+ * along with this program. If not, see <http://www.gnu.org/licenses/>.
+ */
+
+#include QMK_KEYBOARD_H
+
+const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = {
+
+ [0] = LAYOUT_all(
+ 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_BSPC, KC_BSPC,
+ 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_CAPS, KC_A, KC_S, KC_D, KC_F, KC_G, KC_H, KC_J, KC_K, KC_L, KC_SCLN, KC_QUOT, KC_ENT,
+ KC_LSFT, KC_Z, KC_X, KC_C, KC_V, KC_B, KC_N, KC_M, KC_COMM, KC_DOT, KC_SLSH, KC_RSFT, KC_UP, KC_SLSH,
+ KC_LCTL, KC_LGUI, KC_LALT, KC_SPC, KC_SPC, KC_SPC, KC_RALT, MO(1), KC_LEFT, KC_DOWN, KC_RGHT
+ ),
+
+ [1] = LAYOUT_all(
+ 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, _______, _______,
+ _______, RGB_TOG, RGB_MOD, RGB_HUI, RGB_HUD, RGB_SAI, RGB_SAD, RGB_VAI, RGB_VAD, _______, KC_PSCR, KC_SLCK, KC_PAUS, _______,
+ _______, _______, _______, _______, _______, _______, _______, _______, _______, KC_INS, KC_HOME, KC_PGUP, _______,
+ _______, _______, _______, _______, _______, _______, _______, _______, _______, KC_END, KC_PGDN, _______, _______, _______,
+ _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______
+ ),
+
+ [2] = LAYOUT_all(
+ _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______,
+ _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______,
+ _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______,
+ _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______,
+ _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______
+ ),
+
+ [3] = LAYOUT_all(
+ _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______,
+ _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______,
+ _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______,
+ _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______,
+ _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______
+ ),
+
+};
diff --git a/keyboards/sawnsprojects/krush/krush60/solder/keymaps/via/readme.md b/keyboards/sawnsprojects/krush/krush60/solder/keymaps/via/readme.md
new file mode 100644
index 0000000000..a7ca3b9c27
--- /dev/null
+++ b/keyboards/sawnsprojects/krush/krush60/solder/keymaps/via/readme.md
@@ -0,0 +1 @@
+# The VIA keymap for krush60 solder
diff --git a/keyboards/sawnsprojects/krush/krush60/solder/keymaps/via/rules.mk b/keyboards/sawnsprojects/krush/krush60/solder/keymaps/via/rules.mk
new file mode 100644
index 0000000000..036bd6d1c3
--- /dev/null
+++ b/keyboards/sawnsprojects/krush/krush60/solder/keymaps/via/rules.mk
@@ -0,0 +1 @@
+VIA_ENABLE = yes \ No newline at end of file
diff --git a/keyboards/sawnsprojects/krush/krush60/solder/readme.md b/keyboards/sawnsprojects/krush/krush60/solder/readme.md
new file mode 100644
index 0000000000..36da34d372
--- /dev/null
+++ b/keyboards/sawnsprojects/krush/krush60/solder/readme.md
@@ -0,0 +1,15 @@
+# Krush60 solder
+
+![Krush60](https://cdn.discordapp.com/attachments/898507964942536715/906171092916391956/252763374_2899749087003964_8763371038132517512_n.png)
+
+A 60% keyboard PCB made and sold by SawnsProjects with Nuxros in [Facebook](https://www.facebook.com/groups/vnmkmarket/posts/1412997345762674).
+
+* Keyboard Maintainer: [Mai The San](https://github.com/MaiTheSan)
+* Hardware Supported: 60% keyboard case
+* Hardware Availability: [Facebook](https://www.facebook.com/groups/vnmkmarket/posts/1412997345762674)
+
+Make example for this keyboard (after setting up your build environment):
+
+ make sawnsprojects/krush60/solder:default
+
+See the [build environment setup](https://docs.qmk.fm/#/getting_started_build_tools) and the [make instructions](https://docs.qmk.fm/#/getting_started_make_guide) for more information. Brand new to QMK? Start with our [Complete Newbs Guide](https://docs.qmk.fm/#/newbs). \ No newline at end of file
diff --git a/keyboards/sawnsprojects/krush/krush60/solder/rules.mk b/keyboards/sawnsprojects/krush/krush60/solder/rules.mk
new file mode 100644
index 0000000000..841e5bc1a2
--- /dev/null
+++ b/keyboards/sawnsprojects/krush/krush60/solder/rules.mk
@@ -0,0 +1,19 @@
+# MCU name
+MCU = atmega32u4
+
+# Bootloader selection
+BOOTLOADER = atmel-dfu
+
+# Build Options
+# change yes to no to disable
+#
+BOOTMAGIC_ENABLE = yes # Enable Bootmagic Lite
+MOUSEKEY_ENABLE = yes # Mouse keys
+EXTRAKEY_ENABLE = yes # Audio control and System control
+CONSOLE_ENABLE = yes # Console for debug
+COMMAND_ENABLE = no # Commands for debug and configuration
+NKRO_ENABLE = no # Enable N-Key Rollover
+BACKLIGHT_ENABLE = no # Enable keyboard backlight functionality
+RGBLIGHT_ENABLE = yes # Enable keyboard RGB underglow
+
+LAYOUTS = 60_ansi 60_ansi_arrow 60_ansi_arrow_split_bs_7u_spc
diff --git a/keyboards/sawnsprojects/krush/krush60/solder/solder.c b/keyboards/sawnsprojects/krush/krush60/solder/solder.c
new file mode 100644
index 0000000000..2fb9b24f8c
--- /dev/null
+++ b/keyboards/sawnsprojects/krush/krush60/solder/solder.c
@@ -0,0 +1,17 @@
+/* Copyright 2021 SawnsProjects
+ *
+ * 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 "solder.h" \ No newline at end of file
diff --git a/keyboards/sawnsprojects/krush/krush60/solder/solder.h b/keyboards/sawnsprojects/krush/krush60/solder/solder.h
new file mode 100644
index 0000000000..9fb7f834f2
--- /dev/null
+++ b/keyboards/sawnsprojects/krush/krush60/solder/solder.h
@@ -0,0 +1,354 @@
+/* Copyright 2021 SawnsProjects
+ *
+ * This program is free software: you can redistribute it and/or modify
+ * it under the terms of the GNU General Public License as published by
+ * the Free Software Foundation, either version 2 of the License, or
+ * (at your option) any later version.
+ *
+ * This program is distributed in the hope that it will be useful,
+ * but WITHOUT ANY WARRANTY; without even the implied warranty of
+ * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
+ * GNU General Public License for more details.
+ *
+ * You should have received a copy of the GNU General Public License
+ * along with this program. If not, see <http://www.gnu.org/licenses/>.
+ */
+
+#pragma once
+
+#include "quantum.h"
+
+#define XXX KC_NO
+
+/*
+ * ┌───┬───┬───┬───┬───┬───┬───┬───┬───┬───┬───┬───┬───┬───┬───┐ ┌───────┐
+ * │00 │10 │01 │11 │02 │12 │03 │13 │04 │14 │05 │15 │06 │26 │17 │ │26 │ 2u Backspace
+ * ├───┴─┬─┴─┬─┴─┬─┴─┬─┴─┬─┴─┬─┴─┬─┴─┬─┴─┬─┴─┬─┴─┬─┴─┬─┴─┬─┴───┤ └─┬─────┤
+ * │20 │30 │21 │31 │22 │32 │23 │33 │24 │34 │25 │35 │36 │46 │ │ │
+ * ├─────┴┬──┴┬──┴┬──┴┬──┴┬──┴┬──┴┬──┴┬──┴┬──┴┬──┴┬──┴┬──┴─────┤ ┌──┴┐47 │ ISO Enter
+ * │40 │50 │41 │51 │42 │52 │43 │53 │44 │54 │45 │55 │47 │ │46 │ │
+ * ├──────┴─┬─┴─┬─┴─┬─┴─┬─┴─┬─┴─┬─┴─┬─┴─┬─┴─┬─┴─┬─┴─┬─┴────┬───┤ ┌─┴───┴────┤ ┌──────┬───┬───┐
+ * │60 │70 │61 │71 │62 │72 │63 │73 │64 │74 │65 │66 │77 │ │66 │ 2.75u RShift │75 │66 │77 │ 1.75/1/1u RShift
+ * ├────┬───┴┬──┴─┬─┴───┴──┬┴───┼───┴───┴──┬┴──┬┴──┬┴──┬───┼───┤ └──────────┘ └──────┴───┴───┘
+ * │80 │90 │81 │82 │92 │84 │94 │85 │86 │95 │97 │ Split Space Arrow
+ * └────┴────┴────┴────────┴────┴──────────┴───┴───┴───┴───┴───┘
+ * ┌────┬────┬────┬────────┬────┬──────────┬────┬────┬────┬────┐
+ * │80 │90 │81 │82 │92 │84 │94 │85 │95 │97 │ Split Space
+ * └────┴────┴────┴────────┴────┴──────────┴────┴────┴────┴────┘
+ * ┌────┬────┬────┬────────────────────────┬───┬───┬───┬───┬───┐
+ * │80 │90 │81 │92 │94 │85 │86 │95 │97 │ 6.25u Arrow
+ * └────┴────┴────┴────────────────────────┴───┴───┴───┴───┴───┘
+ * ┌────┬────┬────┬────────────────────────┬────┬────┬────┬────┐
+ * │80 │90 │81 │92 │94 │85 │95 │97 │ Standard
+ * └────┴────┴────┴────────────────────────┴────┴────┴────┴────┘
+ * ┌─────┬───┬─────┬───────────────────────────┬───┬───┬───┬───┐
+ * │80 │90 │81 │92 │85 │86 │95 │97 │ 7u Arrow
+ * └─────┴───┴─────┴───────────────────────────┴───┴───┴───┴───┘
+ * ┌─────┬───┬─────┬───────────────────────────┬─────┬───┬─────┐
+ * │80 │90 │81 │92 │85 │95 │97 │ 7u Tsangan/WKL/HHKB
+ * └─────┴───┴─────┴───────────────────────────┴─────┴───┴─────┘
+ */
+
+#define LAYOUT_all( \
+ K00, K10, K01, K11, K02, K12, K03, K13, K04, K14, K05, K15, K06, K26, K17, \
+ K20, K30, K21, K31, K22, K32, K23, K33, K24, K34, K25, K35, K36, K46, \
+ K40, K50, K41, K51, K42, K52, K43, K53, K44, K54, K45, K55, K47, \
+ K60, K70, K61, K71, K62, K72, K63, K73, K64, K74, K65, K75, K66, K77, \
+ K80, K90, K81, K82, K92, K84, K94, K85, K86, K95, K97 \
+) { \
+ { K00, K01, K02, K03, K04, K05, K06, XXX }, \
+ { K10, K11, K12, K13, K14, K15, XXX, K17 }, \
+ { K20, K21, K22, K23, K24, K25, K26, XXX }, \
+ { K30, K31, K32, K33, K34, K35, K36, XXX }, \
+ { K40, K41, K42, K43, K44, K45, K46, K47 }, \
+ { K50, K51, K52, K53, K54, K55, XXX, XXX }, \
+ { K60, K61, K62, K63, K64, K65, K66, XXX }, \
+ { K70, K71, K72, K73, K74, K75, XXX, K77 }, \
+ { K80, K81, K82, XXX, K84, K85, K86, XXX }, \
+ { K90, XXX, K92, XXX, K94, K95, XXX, K97 }, \
+}
+
+#define LAYOUT_60_ansi( \
+ K00, K10, K01, K11, K02, K12, K03, K13, K04, K14, K05, K15, K06, K26, \
+ K20, K30, K21, K31, K22, K32, K23, K33, K24, K34, K25, K35, K36, K46, \
+ K40, K50, K41, K51, K42, K52, K43, K53, K44, K54, K45, K55, K47, \
+ K60, K70, K61, K71, K62, K72, K63, K73, K64, K74, K65, K66, \
+ K80, K90, K81, K92, K94, K85, K95, K97 \
+) { \
+ { K00, K01, K02, K03, K04, K05, K06, XXX }, \
+ { K10, K11, K12, K13, K14, K15, XXX, XXX }, \
+ { K20, K21, K22, K23, K24, K25, K26, XXX }, \
+ { K30, K31, K32, K33, K34, K35, K36, XXX }, \
+ { K40, K41, K42, K43, K44, K45, K46, K47 }, \
+ { K50, K51, K52, K53, K54, K55, XXX, XXX }, \
+ { K60, K61, K62, K63, K64, K65, K66, XXX }, \
+ { K70, K71, K72, K73, K74, XXX, XXX, XXX }, \
+ { K80, K81, XXX, XXX, XXX, K85, XXX, XXX }, \
+ { K90, XXX, K92, XXX, K94, K95, XXX, K97 }, \
+}
+
+#define LAYOUT_60_isoenter_split_bs(\
+ K00, K10, K01, K11, K02, K12, K03, K13, K04, K14, K05, K15, K06, K26, K17, \
+ K20, K30, K21, K31, K22, K32, K23, K33, K24, K34, K25, K35, K36, \
+ K40, K50, K41, K51, K42, K52, K43, K53, K44, K54, K45, K55, K46, K47, \
+ K60, K70, K61, K71, K62, K72, K63, K73, K64, K74, K65, K66, \
+ K80, K90, K81, K92, K94, K85, K95, K97 \
+) { \
+ { K00, K01, K02, K03, K04, K05, K06, XXX }, \
+ { K10, K11, K12, K13, K14, K15, XXX, K17 }, \
+ { K20, K21, K22, K23, K24, K25, K26, XXX }, \
+ { K30, K31, K32, K33, K34, K35, K36, XXX }, \
+ { K40, K41, K42, K43, K44, K45, K46, K47 }, \
+ { K50, K51, K52, K53, K54, K55, XXX, XXX }, \
+ { K60, K61, K62, K63, K64, K65, K66, XXX }, \
+ { K70, K71, K72, K73, K74, XXX, XXX, XXX }, \
+ { K80, K81, XXX, XXX, XXX, K85, XXX, XXX }, \
+ { K90, XXX, K92, XXX, K94, K95, XXX, K97 }, \
+}
+
+#define LAYOUT_60_ansi_split_bs( \
+ K00, K10, K01, K11, K02, K12, K03, K13, K04, K14, K05, K15, K06, K26, K17, \
+ K20, K30, K21, K31, K22, K32, K23, K33, K24, K34, K25, K35, K36, K46, \
+ K40, K50, K41, K51, K42, K52, K43, K53, K44, K54, K45, K55, K47, \
+ K60, K70, K61, K71, K62, K72, K63, K73, K64, K74, K65, K66, \
+ K80, K90, K81, K92, K94, K85, K95, K97 \
+) { \
+ { K00, K01, K02, K03, K04, K05, K06, XXX }, \
+ { K10, K11, K12, K13, K14, K15, XXX, K17 }, \
+ { K20, K21, K22, K23, K24, K25, K26, XXX }, \
+ { K30, K31, K32, K33, K34, K35, K36, XXX }, \
+ { K40, K41, K42, K43, K44, K45, K46, K47 }, \
+ { K50, K51, K52, K53, K54, K55, XXX, XXX }, \
+ { K60, K61, K62, K63, K64, K65, K66, XXX }, \
+ { K70, K71, K72, K73, K74, XXX, XXX, XXX }, \
+ { K80, K81, XXX, XXX, XXX, K85, XXX, XXX }, \
+ { K90, XXX, K92, XXX, K94, K95, XXX, K97 }, \
+}
+
+#define LAYOUT_60_ansi_split_spc( \
+ K00, K10, K01, K11, K02, K12, K03, K13, K04, K14, K05, K15, K06, K26, \
+ K20, K30, K21, K31, K22, K32, K23, K33, K24, K34, K25, K35, K36, K46, \
+ K40, K50, K41, K51, K42, K52, K43, K53, K44, K54, K45, K55, K47, \
+ K60, K70, K61, K71, K62, K72, K63, K73, K64, K74, K65, K66, \
+ K80, K90, K81, K82, K92, K84, K94, K85, K95, K97 \
+) { \
+ { K00, K01, K02, K03, K04, K05, K06, XXX }, \
+ { K10, K11, K12, K13, K14, K15, XXX, XXX }, \
+ { K20, K21, K22, K23, K24, K25, K26, XXX }, \
+ { K30, K31, K32, K33, K34, K35, K36, XXX }, \
+ { K40, K41, K42, K43, K44, K45, K46, K47 }, \
+ { K50, K51, K52, K53, K54, K55, XXX, XXX }, \
+ { K60, K61, K62, K63, K64, K65, K66, XXX }, \
+ { K70, K71, K72, K73, K74, XXX, XXX, XXX }, \
+ { K80, K81, K82, XXX, K84, K85, XXX, XXX }, \
+ { K90, XXX, K92, XXX, K94, K95, XXX, K97 }, \
+}
+
+#define LAYOUT_60_ansi_split_bs_spc( \
+ K00, K10, K01, K11, K02, K12, K03, K13, K04, K14, K05, K15, K06, K26, K17, \
+ K20, K30, K21, K31, K22, K32, K23, K33, K24, K34, K25, K35, K36, K46, \
+ K40, K50, K41, K51, K42, K52, K43, K53, K44, K54, K45, K55, K47, \
+ K60, K70, K61, K71, K62, K72, K63, K73, K64, K74, K65, K66, \
+ K80, K90, K81, K82, K92, K84, K94, K85, K95, K97 \
+) { \
+ { K00, K01, K02, K03, K04, K05, K06, XXX }, \
+ { K10, K11, K12, K13, K14, K15, XXX, K17 }, \
+ { K20, K21, K22, K23, K24, K25, K26, XXX }, \
+ { K30, K31, K32, K33, K34, K35, K36, XXX }, \
+ { K40, K41, K42, K43, K44, K45, K46, K47 }, \
+ { K50, K51, K52, K53, K54, K55, XXX, XXX }, \
+ { K60, K61, K62, K63, K64, K65, K66, XXX }, \
+ { K70, K71, K72, K73, K74, XXX, XXX, XXX }, \
+ { K80, K81, K82, XXX, K84, K85, XXX, XXX }, \
+ { K90, XXX, K92, XXX, K94, K95, XXX, K97 }, \
+}
+
+#define LAYOUT_60_ansi_tsangan( \
+ K00, K10, K01, K11, K02, K12, K03, K13, K04, K14, K05, K15, K06, K26, \
+ K20, K30, K21, K31, K22, K32, K23, K33, K24, K34, K25, K35, K36, K46, \
+ K40, K50, K41, K51, K42, K52, K43, K53, K44, K54, K45, K55, K47, \
+ K60, K70, K61, K71, K62, K72, K63, K73, K64, K74, K65, K66, \
+ K80, K90, K81, K92, K85, K95, K97 \
+) { \
+ { K00, K01, K02, K03, K04, K05, K06, XXX }, \
+ { K10, K11, K12, K13, K14, K15, XXX, XXX }, \
+ { K20, K21, K22, K23, K24, K25, K26, XXX }, \
+ { K30, K31, K32, K33, K34, K35, K36, XXX }, \
+ { K40, K41, K42, K43, K44, K45, K46, K47 }, \
+ { K50, K51, K52, K53, K54, K55, XXX, XXX }, \
+ { K60, K61, K62, K63, K64, K65, K66, XXX }, \
+ { K70, K71, K72, K73, K74, XXX, XXX, XXX }, \
+ { K80, K81, XXX, XXX, XXX, K85, XXX, XXX }, \
+ { K90, XXX, K92, XXX, XXX, K95, XXX, K97 }, \
+}
+
+#define LAYOUT_60_ansi_tsangan_split_bs( \
+ K00, K10, K01, K11, K02, K12, K03, K13, K04, K14, K05, K15, K06, K26, K17, \
+ K20, K30, K21, K31, K22, K32, K23, K33, K24, K34, K25, K35, K36, K46, \
+ K40, K50, K41, K51, K42, K52, K43, K53, K44, K54, K45, K55, K47, \
+ K60, K70, K61, K71, K62, K72, K63, K73, K64, K74, K65, K66, \
+ K80, K90, K81, K92, K85, K95, K97 \
+) { \
+ { K00, K01, K02, K03, K04, K05, K06, XXX }, \
+ { K10, K11, K12, K13, K14, K15, XXX, K17 }, \
+ { K20, K21, K22, K23, K24, K25, K26, XXX }, \
+ { K30, K31, K32, K33, K34, K35, K36, XXX }, \
+ { K40, K41, K42, K43, K44, K45, K46, K47 }, \
+ { K50, K51, K52, K53, K54, K55, XXX, XXX }, \
+ { K60, K61, K62, K63, K64, K65, K66, XXX }, \
+ { K70, K71, K72, K73, K74, XXX, XXX, XXX }, \
+ { K80, K81, XXX, XXX, XXX, K85, XXX, XXX }, \
+ { K90, XXX, K92, XXX, XXX, K95, XXX, K97 }, \
+}
+
+#define LAYOUT_60_ansi_arrow_split_bs( \
+ K00, K10, K01, K11, K02, K12, K03, K13, K04, K14, K05, K15, K06, K26, K17, \
+ K20, K30, K21, K31, K22, K32, K23, K33, K24, K34, K25, K35, K36, K46, \
+ K40, K50, K41, K51, K42, K52, K43, K53, K44, K54, K45, K55, K47, \
+ K60, K70, K61, K71, K62, K72, K63, K73, K64, K74, K75, K66, K77, \
+ K80, K90, K81, K92, K94, K85, K86, K95, K97 \
+) { \
+ { K00, K01, K02, K03, K04, K05, K06, XXX }, \
+ { K10, K11, K12, K13, K14, K15, XXX, K17 }, \
+ { K20, K21, K22, K23, K24, K25, K26, XXX }, \
+ { K30, K31, K32, K33, K34, K35, K36, XXX }, \
+ { K40, K41, K42, K43, K44, K45, K46, K47 }, \
+ { K50, K51, K52, K53, K54, K55, XXX, XXX }, \
+ { K60, K61, K62, K63, K64, XXX, K66, XXX }, \
+ { K70, K71, K72, K73, K74, K75, XXX, K77 }, \
+ { K80, K81, XXX, XXX, XXX, K85, K86, XXX }, \
+ { K90, XXX, K92, XXX, K94, K95, XXX, K97 }, \
+}
+
+#define LAYOUT_60_ansi_arrow_split_spc( \
+ K00, K10, K01, K11, K02, K12, K03, K13, K04, K14, K05, K15, K06, K26, \
+ K20, K30, K21, K31, K22, K32, K23, K33, K24, K34, K25, K35, K36, K46, \
+ K40, K50, K41, K51, K42, K52, K43, K53, K44, K54, K45, K55, K47, \
+ K60, K70, K61, K71, K62, K72, K63, K73, K64, K74, K75, K66, K77, \
+ K80, K90, K81, K82, K92, K84, K94, K85, K86, K95, K97 \
+) { \
+ { K00, K01, K02, K03, K04, K05, K06, XXX }, \
+ { K10, K11, K12, K13, K14, K15, XXX, XXX }, \
+ { K20, K21, K22, K23, K24, K25, K26, XXX }, \
+ { K30, K31, K32, K33, K34, K35, K36, XXX }, \
+ { K40, K41, K42, K43, K44, K45, K46, K47 }, \
+ { K50, K51, K52, K53, K54, K55, XXX, XXX }, \
+ { K60, K61, K62, K63, K64, XXX, K66, XXX }, \
+ { K70, K71, K72, K73, K74, K75, XXX, K77 }, \
+ { K80, K81, K82, XXX, K84, K85, K86, XXX }, \
+ { K90, XXX, K92, XXX, K94, K95, XXX, K97 }, \
+}
+
+#define LAYOUT_60_ansi_arrow_split_bs_spc( \
+ K00, K10, K01, K11, K02, K12, K03, K13, K04, K14, K05, K15, K06, K26, K17, \
+ K20, K30, K21, K31, K22, K32, K23, K33, K24, K34, K25, K35, K36, K46, \
+ K40, K50, K41, K51, K42, K52, K43, K53, K44, K54, K45, K55, K47, \
+ K60, K70, K61, K71, K62, K72, K63, K73, K64, K74, K75, K66, K77, \
+ K80, K90, K81, K82, K92, K84, K94, K85, K86, K95, K97 \
+) { \
+ { K00, K01, K02, K03, K04, K05, K06, XXX }, \
+ { K10, K11, K12, K13, K14, K15, XXX, K17 }, \
+ { K20, K21, K22, K23, K24, K25, K26, XXX }, \
+ { K30, K31, K32, K33, K34, K35, K36, XXX }, \
+ { K40, K41, K42, K43, K44, K45, K46, K47 }, \
+ { K50, K51, K52, K53, K54, K55, XXX, XXX }, \
+ { K60, K61, K62, K63, K64, XXX, K66, XXX }, \
+ { K70, K71, K72, K73, K74, K75, XXX, K77 }, \
+ { K80, K81, K82, XXX, K84, K85, K86, XXX }, \
+ { K90, XXX, K92, XXX, K94, K95, XXX, K97 }, \
+}
+
+#define LAYOUT_60_ansi_arrow_tsangan( \
+ K00, K10, K01, K11, K02, K12, K03, K13, K04, K14, K05, K15, K06, K26, \
+ K20, K30, K21, K31, K22, K32, K23, K33, K24, K34, K25, K35, K36, K46, \
+ K40, K50, K41, K51, K42, K52, K43, K53, K44, K54, K45, K55, K47, \
+ K60, K70, K61, K71, K62, K72, K63, K73, K64, K74, K75, K66, K77, \
+ K80, K90, K81, K92, K85, K86, K95, K97 \
+) { \
+ { K00, K01, K02, K03, K04, K05, K06, XXX }, \
+ { K10, K11, K12, K13, K14, K15, XXX, XXX }, \
+ { K20, K21, K22, K23, K24, K25, K26, XXX }, \
+ { K30, K31, K32, K33, K34, K35, K36, XXX }, \
+ { K40, K41, K42, K43, K44, K45, K46, K47 }, \
+ { K50, K51, K52, K53, K54, K55, XXX, XXX }, \
+ { K60, K61, K62, K63, K64, XXX, K66, XXX }, \
+ { K70, K71, K72, K73, K74, K75, XXX, K77 }, \
+ { K80, K81, XXX, XXX, XXX, K85, K86, XXX }, \
+ { K90, XXX, K92, XXX, XXX, K95, XXX, K97 }, \
+}
+
+#define LAYOUT_60_ansi_arrow( \
+ K00, K10, K01, K11, K02, K12, K03, K13, K04, K14, K05, K15, K06, K26, \
+ K20, K30, K21, K31, K22, K32, K23, K33, K24, K34, K25, K35, K36, K46, \
+ K40, K50, K41, K51, K42, K52, K43, K53, K44, K54, K45, K55, K47, \
+ K60, K70, K61, K71, K62, K72, K63, K73, K64, K74, K75, K66, K77, \
+ K80, K90, K81, K92, K94, K85, K86, K95, K97 \
+) { \
+ { K00, K01, K02, K03, K04, K05, K06, XXX }, \
+ { K10, K11, K12, K13, K14, K15, XXX, XXX }, \
+ { K20, K21, K22, K23, K24, K25, K26, XXX }, \
+ { K30, K31, K32, K33, K34, K35, K36, XXX }, \
+ { K40, K41, K42, K43, K44, K45, K46, K47 }, \
+ { K50, K51, K52, K53, K54, K55, XXX, XXX }, \
+ { K60, K61, K62, K63, K64, XXX, K66, XXX }, \
+ { K70, K71, K72, K73, K74, K75, XXX, K77 }, \
+ { K80, K81, XXX, XXX, XXX, K85, K86, XXX }, \
+ { K90, XXX, K92, XXX, K94, K95, XXX, K97 }, \
+}
+
+#define LAYOUT_60_ansi_arrow_tsangan_split_bs( \
+ K00, K10, K01, K11, K02, K12, K03, K13, K04, K14, K05, K15, K06, K26, K17, \
+ K20, K30, K21, K31, K22, K32, K23, K33, K24, K34, K25, K35, K36, K46, \
+ K40, K50, K41, K51, K42, K52, K43, K53, K44, K54, K45, K55, K47, \
+ K60, K70, K61, K71, K62, K72, K63, K73, K64, K74, K75, K66, K77, \
+ K80, K90, K81, K92, K85, K86, K95, K97 \
+) { \
+ { K00, K01, K02, K03, K04, K05, K06, XXX }, \
+ { K10, K11, K12, K13, K14, K15, XXX, K17 }, \
+ { K20, K21, K22, K23, K24, K25, K26, XXX }, \
+ { K30, K31, K32, K33, K34, K35, K36, XXX }, \
+ { K40, K41, K42, K43, K44, K45, K46, K47 }, \
+ { K50, K51, K52, K53, K54, K55, XXX, XXX }, \
+ { K60, K61, K62, K63, K64, XXX, K66, XXX }, \
+ { K70, K71, K72, K73, K74, K75, XXX, K77 }, \
+ { K80, K81, XXX, XXX, XXX, K85, K86, XXX }, \
+ { K90, XXX, K92, XXX, XXX, K95, XXX, K97 }, \
+}
+
+#define LAYOUT_60_ansi_tsangan_split_rshift( \
+ K00, K10, K01, K11, K02, K12, K03, K13, K04, K14, K05, K15, K06, K26, \
+ K20, K30, K21, K31, K22, K32, K23, K33, K24, K34, K25, K35, K36, K46, \
+ K40, K50, K41, K51, K42, K52, K43, K53, K44, K54, K45, K55, K47, \
+ K60, K70, K61, K71, K62, K72, K63, K73, K64, K74, K65, K66, K77, \
+ K80, K90, K81, K92, K85, K95, K97 \
+) { \
+ { K00, K01, K02, K03, K04, K05, K06, XXX }, \
+ { K10, K11, K12, K13, K14, K15, XXX, XXX }, \
+ { K20, K21, K22, K23, K24, K25, K26, XXX }, \
+ { K30, K31, K32, K33, K34, K35, K36, XXX }, \
+ { K40, K41, K42, K43, K44, K45, K46, K47 }, \
+ { K50, K51, K52, K53, K54, K55, XXX, XXX }, \
+ { K60, K61, K62, K63, K64, K65, K66, XXX }, \
+ { K70, K71, K72, K73, K74, XXX, XXX, K77 }, \
+ { K80, K81, XXX, XXX, XXX, K85, XXX, XXX }, \
+ { K90, XXX, K92, XXX, XXX, K95, XXX, K97 }, \
+}
+
+#define LAYOUT_60_tsangan_hhkb( \
+ K00, K10, K01, K11, K02, K12, K03, K13, K04, K14, K05, K15, K06, K26, K17, \
+ K20, K30, K21, K31, K22, K32, K23, K33, K24, K34, K25, K35, K36, K46, \
+ K40, K50, K41, K51, K42, K52, K43, K53, K44, K54, K45, K55, K47, \
+ K60, K70, K61, K71, K62, K72, K63, K73, K64, K74, K65, K66, K77, \
+ K80, K90, K81, K92, K85, K95, K97 \
+) { \
+ { K00, K01, K02, K03, K04, K05, K06, XXX }, \
+ { K10, K11, K12, K13, K14, K15, XXX, K17 }, \
+ { K20, K21, K22, K23, K24, K25, K26, XXX }, \
+ { K30, K31, K32, K33, K34, K35, K36, XXX }, \
+ { K40, K41, K42, K43, K44, K45, K46, K47 }, \
+ { K50, K51, K52, K53, K54, K55, XXX, XXX }, \
+ { K60, K61, K62, K63, K64, K65, K66, XXX }, \
+ { K70, K71, K72, K73, K74, XXX, XXX, K77 }, \
+ { K80, K81, XXX, XXX, XXX, K85, XXX, XXX }, \
+ { K90, XXX, K92, XXX, XXX, K95, XXX, K97 }, \
+}