aboutsummaryrefslogtreecommitdiff
path: root/keyboards
diff options
context:
space:
mode:
authorSắn <59417802+MaiTheSan@users.noreply.github.com>2021-11-11 11:30:27 +0700
committerGitHub <noreply@github.com>2021-11-10 20:30:27 -0800
commita4eb73eef03ef33bab85703f04c71985d43785e8 (patch)
tree0aa40384747ad5bf8b12494d3a786c1adc01a3fc /keyboards
parent1989eb17ec391d4f9e8c1c1ea3fc746f96d43942 (diff)
downloadqmk_firmware-a4eb73eef03ef33bab85703f04c71985d43785e8.tar.gz
qmk_firmware-a4eb73eef03ef33bab85703f04c71985d43785e8.zip
[Keyboard] Added Krush Solder (60% & 65%) (#15074)
Diffstat (limited to 'keyboards')
-rw-r--r--keyboards/sawnsprojects/krush/krush60/readme.md25
-rw-r--r--keyboards/sawnsprojects/krush/krush60/solder/config.h60
-rw-r--r--keyboards/sawnsprojects/krush/krush60/solder/info.json1274
-rw-r--r--keyboards/sawnsprojects/krush/krush60/solder/keymaps/60_all/keymap.c35
-rw-r--r--keyboards/sawnsprojects/krush/krush60/solder/keymaps/60_all/readme.md1
-rw-r--r--keyboards/sawnsprojects/krush/krush60/solder/keymaps/60_ansi_7u/keymap.c37
-rw-r--r--keyboards/sawnsprojects/krush/krush60/solder/keymaps/60_ansi_7u/readme.md1
-rw-r--r--keyboards/sawnsprojects/krush/krush60/solder/keymaps/60_ansi_arrow/keymap.c35
-rw-r--r--keyboards/sawnsprojects/krush/krush60/solder/keymaps/60_ansi_arrow/readme.md1
-rw-r--r--keyboards/sawnsprojects/krush/krush60/solder/keymaps/60_ansi_arrow_7u/keymap.c35
-rw-r--r--keyboards/sawnsprojects/krush/krush60/solder/keymaps/60_ansi_arrow_7u/readme.md1
-rw-r--r--keyboards/sawnsprojects/krush/krush60/solder/keymaps/60_ansi_arrow_splt_bs/keymap.c35
-rw-r--r--keyboards/sawnsprojects/krush/krush60/solder/keymaps/60_ansi_arrow_splt_bs/readme.md1
-rw-r--r--keyboards/sawnsprojects/krush/krush60/solder/keymaps/60_ansi_arrow_splt_bs_7u/keymap.c35
-rw-r--r--keyboards/sawnsprojects/krush/krush60/solder/keymaps/60_ansi_arrow_splt_bs_7u/readme.md1
-rw-r--r--keyboards/sawnsprojects/krush/krush60/solder/keymaps/60_ansi_arrow_splt_bs_spc/keymap.c35
-rw-r--r--keyboards/sawnsprojects/krush/krush60/solder/keymaps/60_ansi_arrow_splt_bs_spc/readme.md1
-rw-r--r--keyboards/sawnsprojects/krush/krush60/solder/keymaps/60_ansi_arrow_splt_spc/keymap.c37
-rw-r--r--keyboards/sawnsprojects/krush/krush60/solder/keymaps/60_ansi_arrow_splt_spc/readme.md1
-rw-r--r--keyboards/sawnsprojects/krush/krush60/solder/keymaps/60_ansi_splt_bs/keymap.c35
-rw-r--r--keyboards/sawnsprojects/krush/krush60/solder/keymaps/60_ansi_splt_bs/readme.md1
-rw-r--r--keyboards/sawnsprojects/krush/krush60/solder/keymaps/60_ansi_splt_bs_7u/keymap.c35
-rw-r--r--keyboards/sawnsprojects/krush/krush60/solder/keymaps/60_ansi_splt_bs_7u/readme.md1
-rw-r--r--keyboards/sawnsprojects/krush/krush60/solder/keymaps/60_ansi_splt_bs_spc/keymap.c35
-rw-r--r--keyboards/sawnsprojects/krush/krush60/solder/keymaps/60_ansi_splt_bs_spc/readme.md1
-rw-r--r--keyboards/sawnsprojects/krush/krush60/solder/keymaps/60_ansi_splt_spc/keymap.c35
-rw-r--r--keyboards/sawnsprojects/krush/krush60/solder/keymaps/60_ansi_splt_spc/readme.md1
-rw-r--r--keyboards/sawnsprojects/krush/krush60/solder/keymaps/60_tsangan/keymap.c36
-rw-r--r--keyboards/sawnsprojects/krush/krush60/solder/keymaps/60_tsangan/readme.md1
-rw-r--r--keyboards/sawnsprojects/krush/krush60/solder/keymaps/60_tsangan_splt_bs/keymap.c35
-rw-r--r--keyboards/sawnsprojects/krush/krush60/solder/keymaps/60_tsangan_splt_bs/readme.md1
-rw-r--r--keyboards/sawnsprojects/krush/krush60/solder/keymaps/default/keymap.c40
-rw-r--r--keyboards/sawnsprojects/krush/krush60/solder/keymaps/default/readme.md1
-rw-r--r--keyboards/sawnsprojects/krush/krush60/solder/keymaps/via/keymap.c49
-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.mk22
-rw-r--r--keyboards/sawnsprojects/krush/krush60/solder/solder.c17
-rw-r--r--keyboards/sawnsprojects/krush/krush60/solder/solder.h335
-rw-r--r--keyboards/sawnsprojects/krush/krush65/readme.md25
-rw-r--r--keyboards/sawnsprojects/krush/krush65/solder/config.h68
-rw-r--r--keyboards/sawnsprojects/krush/krush65/solder/encoder_actions.c58
-rw-r--r--keyboards/sawnsprojects/krush/krush65/solder/encoder_actions.h21
-rw-r--r--keyboards/sawnsprojects/krush/krush65/solder/info.json299
-rw-r--r--keyboards/sawnsprojects/krush/krush65/solder/keymaps/ansi_blocker/keymap.c39
-rw-r--r--keyboards/sawnsprojects/krush/krush65/solder/keymaps/ansi_blocker/readme.md1
-rw-r--r--keyboards/sawnsprojects/krush/krush65/solder/keymaps/ansi_blocker_split_all/keymap.c38
-rw-r--r--keyboards/sawnsprojects/krush/krush65/solder/keymaps/ansi_blocker_split_all/readme.md1
-rw-r--r--keyboards/sawnsprojects/krush/krush65/solder/keymaps/ansi_blocker_split_bs/keymap.c39
-rw-r--r--keyboards/sawnsprojects/krush/krush65/solder/keymaps/ansi_blocker_split_bs/readme.md1
-rw-r--r--keyboards/sawnsprojects/krush/krush65/solder/keymaps/default/keymap.c39
-rw-r--r--keyboards/sawnsprojects/krush/krush65/solder/keymaps/default/readme.md1
-rw-r--r--keyboards/sawnsprojects/krush/krush65/solder/keymaps/sawns/keymap.c75
-rw-r--r--keyboards/sawnsprojects/krush/krush65/solder/keymaps/sawns/readme.md1
-rw-r--r--keyboards/sawnsprojects/krush/krush65/solder/keymaps/sawns/rules.mk1
-rw-r--r--keyboards/sawnsprojects/krush/krush65/solder/keymaps/via/keymap.c51
-rw-r--r--keyboards/sawnsprojects/krush/krush65/solder/keymaps/via/readme.md1
-rw-r--r--keyboards/sawnsprojects/krush/krush65/solder/keymaps/via/rules.mk1
-rw-r--r--keyboards/sawnsprojects/krush/krush65/solder/readme.md15
-rw-r--r--keyboards/sawnsprojects/krush/krush65/solder/rules.mk23
-rw-r--r--keyboards/sawnsprojects/krush/krush65/solder/solder.c53
-rw-r--r--keyboards/sawnsprojects/krush/krush65/solder/solder.h93
63 files changed, 3293 insertions, 0 deletions
diff --git a/keyboards/sawnsprojects/krush/krush60/readme.md b/keyboards/sawnsprojects/krush/krush60/readme.md
new file mode 100644
index 000000000..515040f90
--- /dev/null
+++ b/keyboards/sawnsprojects/krush/krush60/readme.md
@@ -0,0 +1,25 @@
1# Krush60
2
3A 60% keyboard sold in several variants.
4
51. [Solder](solder/): 06/2021. Atmega32u4 soldered keyboard. Sold under the name "Krush60" with krush keyboard case. Compatible with some 60% case, Singa, Bakeneko.
6
7 **Firmware files are SPECIFIC to each board. Firmware files from one, will not work on the other.** Please use the `.hex` or `.bin` appropriate for your board.
8
9* Keyboard Maintainer: [SawnsProjects](https://github.com/MaiTheSan)
10* Hardware Supported: Krush60, SINGA, Bakeneko, 60% traymount case
11* Hardware Availability: [Mechkey.store](https://mechkey.store/)
12
13Make examples for this keyboard (after setting up your build environment):
14
15 make sawnsprojects/krush/krush60/solder:default
16
17## Bootloader
18
19Enter the bootloader in 3 ways:
20
21* **Bootmagic reset**: Hold down the key at (0,0) in the matrix (usually the top left key or Escape) and plug in the keyboard
22* **Physical reset button**: Briefly press the button on the back of the PCB - some may have pads you must short instead
23* **Keycode in layout**: Press the key mapped to `RESET` if it is available
24
25See 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/config.h b/keyboards/sawnsprojects/krush/krush60/solder/config.h
new file mode 100644
index 000000000..b15361ed1
--- /dev/null
+++ b/keyboards/sawnsprojects/krush/krush60/solder/config.h
@@ -0,0 +1,60 @@
1/* Copyright 2021 SawnsProjects
2 *
3 * This program is free software: you can redistribute it and/or modify
4 * it under the terms of the GNU General Public License as published by
5 * the Free Software Foundation, either version 2 of the License, or
6 * (at your option) any later version.
7 *
8 * This program is distributed in the hope that it will be useful,
9 * but WITHOUT ANY WARRANTY; without even the implied warranty of
10 * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
11 * GNU General Public License for more details.
12 *
13 * You should have received a copy of the GNU General Public License
14 * along with this program. If not, see <http://www.gnu.org/licenses/>.
15 */
16
17#pragma once
18#include "config_common.h"
19
20/* USB Device descriptor parameter */
21#define VENDOR_ID 0x5350
22#define PRODUCT_ID 0x6B32
23#define DEVICE_VER 0x0001
24#define MANUFACTURER SawnsProjects
25#define PRODUCT Krush60 - Solder
26
27/* key matrix size */
28#define MATRIX_ROWS 10
29#define MATRIX_COLS 8
30
31/* key matrix pins */
32#define MATRIX_ROW_PINS { B1, B2, D1, D2, D4, D6, F6, F7, F5, F4 }
33#define MATRIX_COL_PINS { C7, C6, B6, B5, B4, D7, D5, D3 }
34#define UNUSED_PINS
35
36/* COL2ROW or ROW2COL */
37#define DIODE_DIRECTION COL2ROW
38/* Caps Lock */
39#define LED_CAPS_LOCK_PIN F0
40
41#define RGB_DI_PIN F1
42#ifdef RGB_DI_PIN
43 #define RGBLED_NUM 20
44 #define RGBLIGHT_HUE_STEP 8
45 #define RGBLIGHT_SAT_STEP 8
46 #define RGBLIGHT_VAL_STEP 8
47 #define RGBLIGHT_LIMIT_VAL 200 /* The maximum brightness level */
48 #define RGBLIGHT_SLEEP /* If defined, the RGB lighting will be switched off when the host goes to sleep */
49/*== all animations enable ==*/
50#define RGBLIGHT_EFFECT_BREATHING
51#define RGBLIGHT_EFFECT_RAINBOW_MOOD
52#define RGBLIGHT_EFFECT_RAINBOW_SWIRL
53#define RGBLIGHT_EFFECT_SNAKE
54#define RGBLIGHT_EFFECT_KNIGHT
55#define RGBLIGHT_EFFECT_CHRISTMAS
56#define RGBLIGHT_EFFECT_STATIC_GRADIENT
57#define RGBLIGHT_EFFECT_RGB_TEST
58#define RGBLIGHT_EFFECT_ALTERNATING
59#define RGBLIGHT_EFFECT_TWINKLE
60#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 000000000..884b768eb
--- /dev/null
+++ b/keyboards/sawnsprojects/krush/krush60/solder/info.json
@@ -0,0 +1,1274 @@
1{
2 "keyboard_name": "Krush60 Solder",
3 "url": "",
4 "maintainer": "MaiTheSan",
5 "layouts": {
6 "LAYOUT_60_ansi": {
7 "layout": [
8 {"x":0, "y":0},
9 {"x":1, "y":0},
10 {"x":2, "y":0},
11 {"x":3, "y":0},
12 {"x":4, "y":0},
13 {"x":5, "y":0},
14 {"x":6, "y":0},
15 {"x":7, "y":0},
16 {"x":8, "y":0},
17 {"x":9, "y":0},
18 {"x":10, "y":0},
19 {"x":11, "y":0},
20 {"x":12, "y":0},
21 {"x":13, "y":0, "w":2},
22
23 {"x":0, "y":1, "w":1.5},
24 {"x":1.5, "y":1},
25 {"x":2.5, "y":1},
26 {"x":3.5, "y":1},
27 {"x":4.5, "y":1},
28 {"x":5.5, "y":1},
29 {"x":6.5, "y":1},
30 {"x":7.5, "y":1},
31 {"x":8.5, "y":1},
32 {"x":9.5, "y":1},
33 {"x":10.5, "y":1},
34 {"x":11.5, "y":1},
35 {"x":12.5, "y":1},
36 {"x":13.5, "y":1, "w":1.5},
37
38 {"x":0, "y":2, "w":1.75},
39 {"x":1.75, "y":2},
40 {"x":2.75, "y":2},
41 {"x":3.75, "y":2},
42 {"x":4.75, "y":2},
43 {"x":5.75, "y":2},
44 {"x":6.75, "y":2},
45 {"x":7.75, "y":2},
46 {"x":8.75, "y":2},
47 {"x":9.75, "y":2},
48 {"x":10.75, "y":2},
49 {"x":11.75, "y":2},
50 {"x":12.75, "y":2, "w":2.25},
51
52 {"x":0, "y":3, "w":2.25},
53 {"x":2.25, "y":3},
54 {"x":3.25, "y":3},
55 {"x":4.25, "y":3},
56 {"x":5.25, "y":3},
57 {"x":6.25, "y":3},
58 {"x":7.25, "y":3},
59 {"x":8.25, "y":3},
60 {"x":9.25, "y":3},
61 {"x":10.25, "y":3},
62 {"x":11.25, "y":3},
63 {"x":12.25, "y":3, "w":2.75},
64
65 {"x":0, "y":4, "w":1.25},
66 {"x":1.25, "y":4, "w":1.25},
67 {"x":2.5, "y":4, "w":1.25},
68 {"x":3.75, "y":4, "w":6.25},
69 {"x":10, "y":4, "w":1.25},
70 {"x":11.25, "y":4, "w":1.25},
71 {"x":12.5, "y":4, "w":1.25},
72 {"x":13.75, "y":4, "w":1.25}
73 ]
74 },
75 "LAYOUT_60_ansi_arrow": {
76 "layout": [
77 {"x":0, "y":0},
78 {"x":1, "y":0},
79 {"x":2, "y":0},
80 {"x":3, "y":0},
81 {"x":4, "y":0},
82 {"x":5, "y":0},
83 {"x":6, "y":0},
84 {"x":7, "y":0},
85 {"x":8, "y":0},
86 {"x":9, "y":0},
87 {"x":10, "y":0},
88 {"x":11, "y":0},
89 {"x":12, "y":0},
90 {"x":13, "y":0, "w":2},
91
92 {"x":0, "y":1, "w":1.5},
93 {"x":1.5, "y":1},
94 {"x":2.5, "y":1},
95 {"x":3.5, "y":1},
96 {"x":4.5, "y":1},
97 {"x":5.5, "y":1},
98 {"x":6.5, "y":1},
99 {"x":7.5, "y":1},
100 {"x":8.5, "y":1},
101 {"x":9.5, "y":1},
102 {"x":10.5, "y":1},
103 {"x":11.5, "y":1},
104 {"x":12.5, "y":1},
105 {"x":13.5, "y":1, "w":1.5},
106
107 {"x":0, "y":2, "w":1.75},
108 {"x":1.75, "y":2},
109 {"x":2.75, "y":2},
110 {"x":3.75, "y":2},
111 {"x":4.75, "y":2},
112 {"x":5.75, "y":2},
113 {"x":6.75, "y":2},
114 {"x":7.75, "y":2},
115 {"x":8.75, "y":2},
116 {"x":9.75, "y":2},
117 {"x":10.75, "y":2},
118 {"x":11.75, "y":2},
119 {"x":12.75, "y":2, "w":2.25},
120
121 {"x":0, "y":3, "w":2.25},
122 {"x":2.25, "y":3},
123 {"x":3.25, "y":3},
124 {"x":4.25, "y":3},
125 {"x":5.25, "y":3},
126 {"x":6.25, "y":3},
127 {"x":7.25, "y":3},
128 {"x":8.25, "y":3},
129 {"x":9.25, "y":3},
130 {"x":10.25, "y":3},
131 {"x":11.25, "y":3, "w":1.75},
132 {"x":13, "y":3},
133 {"x":14, "y":3},
134
135 {"x":0, "y": 4, "w": 1.25},
136 {"x":1.25, "y": 4, "w": 1.25},
137 {"x":2.5, "y": 4, "w": 1.25},
138 {"x":3.75, "y": 4, "w": 6.25},
139 {"x":10, "y": 4},
140 {"x":11, "y": 4},
141 {"x":12, "y": 4},
142 {"x":13, "y": 4},
143 {"x":14, "y": 4}
144 ]
145 },
146 "LAYOUT_60_ansi_arrow_split_bs_7u_spc": {
147 "layout": [
148 {"x":0, "y":0},
149 {"x":1, "y":0},
150 {"x":2, "y":0},
151 {"x":3, "y":0},
152 {"x":4, "y":0},
153 {"x":5, "y":0},
154 {"x":6, "y":0},
155 {"x":7, "y":0},
156 {"x":8, "y":0},
157 {"x":9, "y":0},
158 {"x":10, "y":0},
159 {"x":11, "y":0},
160 {"x":12, "y":0},
161 {"x":13, "y":0},
162 {"x":14, "y":0},
163
164 {"x":0, "y":1, "w":1.5},
165 {"x":1.5, "y":1},
166 {"x":2.5, "y":1},
167 {"x":3.5, "y":1},
168 {"x":4.5, "y":1},
169 {"x":5.5, "y":1},
170 {"x":6.5, "y":1},
171 {"x":7.5, "y":1},
172 {"x":8.5, "y":1},
173 {"x":9.5, "y":1},
174 {"x":10.5, "y":1},
175 {"x":11.5, "y":1},
176 {"x":12.5, "y":1},
177 {"x":13.5, "y":1, "w":1.5},
178
179 {"x":0, "y":2, "w":1.75},
180 {"x":1.75, "y":2},
181 {"x":2.75, "y":2},
182 {"x":3.75, "y":2},
183 {"x":4.75, "y":2},
184 {"x":5.75, "y":2},
185 {"x":6.75, "y":2},
186 {"x":7.75, "y":2},
187 {"x":8.75, "y":2},
188 {"x":9.75, "y":2},
189 {"x":10.75, "y":2},
190 {"x":11.75, "y":2},
191 {"x":12.75, "y":2, "w":2.25},
192
193 {"x":0, "y":3, "w":2.25},
194 {"x":2.25, "y":3},
195 {"x":3.25, "y":3},
196 {"x":4.25, "y":3},
197 {"x":5.25, "y":3},
198 {"x":6.25, "y":3},
199 {"x":7.25, "y":3},
200 {"x":8.25, "y":3},
201 {"x":9.25, "y":3},
202 {"x":10.25, "y":3},
203 {"x":11.25, "y":3, "w":1.75},
204 {"x":13, "y":3},
205 {"x":14, "y":3},
206
207 {"x":0, "y": 4, "w": 1.5},
208 {"x":1.5, "y": 4},
209 {"x":2.5, "y": 4, "w": 1.5},
210 {"x":4, "y": 4, "w": 7},
211 {"x":11, "y": 4},
212 {"x":12, "y": 4},
213 {"x":13, "y": 4},
214 {"x":14, "y": 4}
215 ]
216 },
217 "LAYOUT_60_ansi_split_bs": {
218 "layout": [
219 {"x":0, "y": 0},
220 {"x":1, "y": 0},
221 {"x":2, "y": 0},
222 {"x":3, "y": 0},
223 {"x":4, "y": 0},
224 {"x":5, "y": 0},
225 {"x":6, "y": 0},
226 {"x":7, "y": 0},
227 {"x":8, "y": 0},
228 {"x":9, "y": 0},
229 {"x":10, "y": 0},
230 {"x":11, "y": 0},
231 {"x":12, "y": 0},
232 {"x":13, "y": 0},
233 {"x":14, "y": 0},
234
235 {"x":0, "y":1, "w":1.5},
236 {"x":1.5, "y":1},
237 {"x":2.5, "y":1},
238 {"x":3.5, "y":1},
239 {"x":4.5, "y":1},
240 {"x":5.5, "y":1},
241 {"x":6.5, "y":1},
242 {"x":7.5, "y":1},
243 {"x":8.5, "y":1},
244 {"x":9.5, "y":1},
245 {"x":10.5, "y":1},
246 {"x":11.5, "y":1},
247 {"x":12.5, "y":1},
248 {"x":13.5, "y":1, "w":1.5},
249
250 {"x":0, "y":2, "w":1.75},
251 {"x":1.75, "y":2},
252 {"x":2.75, "y":2},
253 {"x":3.75, "y":2},
254 {"x":4.75, "y":2},
255 {"x":5.75, "y":2},
256 {"x":6.75, "y":2},
257 {"x":7.75, "y":2},
258 {"x":8.75, "y":2},
259 {"x":9.75, "y":2},
260 {"x":10.75, "y":2},
261 {"x":11.75, "y":2},
262 {"x":12.75, "y":2, "w":2.25},
263
264 {"x":0, "y":3, "w":2.25},
265 {"x":2.25, "y":3},
266 {"x":3.25, "y":3},
267 {"x":4.25, "y":3},
268 {"x":5.25, "y":3},
269 {"x":6.25, "y":3},
270 {"x":7.25, "y":3},
271 {"x":8.25, "y":3},
272 {"x":9.25, "y":3},
273 {"x":10.25, "y":3},
274 {"x":11.25, "y":3},
275 {"x":12.25, "y":3, "w":2.75},
276
277 {"x":0, "y":4, "w":1.25},
278 {"x":1.25, "y":4, "w":1.25},
279 {"x":2.5, "y":4, "w":1.25},
280 {"x":3.75, "y":4, "w":6.25},
281 {"x":10, "y":4, "w":1.25},
282 {"x":11.25, "y":4, "w":1.25},
283 {"x":12.5, "y":4, "w":1.25},
284 {"x":13.75, "y":4, "w":1.25}
285 ]
286 },
287 "LAYOUT_60_ansi_split_spc": {
288 "layout": [
289 {"x":0, "y":0},
290 {"x":1, "y":0},
291 {"x":2, "y":0},
292 {"x":3, "y":0},
293 {"x":4, "y":0},
294 {"x":5, "y":0},
295 {"x":6, "y":0},
296 {"x":7, "y":0},
297 {"x":8, "y":0},
298 {"x":9, "y":0},
299 {"x":10, "y":0},
300 {"x":11, "y":0},
301 {"x":12, "y":0},
302 {"x":13, "y":0, "w":2},
303
304 {"x":0, "y":1, "w":1.5},
305 {"x":1.5, "y":1},
306 {"x":2.5, "y":1},
307 {"x":3.5, "y":1},
308 {"x":4.5, "y":1},
309 {"x":5.5, "y":1},
310 {"x":6.5, "y":1},
311 {"x":7.5, "y":1},
312 {"x":8.5, "y":1},
313 {"x":9.5, "y":1},
314 {"x":10.5, "y":1},
315 {"x":11.5, "y":1},
316 {"x":12.5, "y":1},
317 {"x":13.5, "y":1, "w":1.5},
318
319 {"x":0, "y":2, "w":1.75},
320 {"x":1.75, "y":2},
321 {"x":2.75, "y":2},
322 {"x":3.75, "y":2},
323 {"x":4.75, "y":2},
324 {"x":5.75, "y":2},
325 {"x":6.75, "y":2},
326 {"x":7.75, "y":2},
327 {"x":8.75, "y":2},
328 {"x":9.75, "y":2},
329 {"x":10.75, "y":2},
330 {"x":11.75, "y":2},
331 {"x":12.75, "y":2, "w":2.25},
332
333 {"x":0, "y":3, "w":2.25},
334 {"x":2.25, "y":3},
335 {"x":3.25, "y":3},
336 {"x":4.25, "y":3},
337 {"x":5.25, "y":3},
338 {"x":6.25, "y":3},
339 {"x":7.25, "y":3},
340 {"x":8.25, "y":3},
341 {"x":9.25, "y":3},
342 {"x":10.25, "y":3},
343 {"x":11.25, "y":3},
344 {"x":12.25, "y":3, "w":2.75},
345
346 {"x":0, "y":4, "w":1.25},
347 {"x":1.25, "y":4, "w":1.25},
348 {"x":2.5, "y":4, "w":1.25},
349 {"x":3.75, "y":4, "w":2.25},
350 {"x":6, "y":4, "w":1.25},
351 {"x":7.25, "y":4, "w":2.75},
352 {"x":10, "y":4, "w":1.25},
353 {"x":11.25, "y":4, "w":1.25},
354 {"x":12.5, "y":4, "w":1.25},
355 {"x":13.75, "y":4, "w":1.25}
356 ]
357 },
358 "LAYOUT_60_ansi_split_bs_spc": {
359 "layout": [
360 {"x":0, "y": 0},
361 {"x":1, "y": 0},
362 {"x":2, "y": 0},
363 {"x":3, "y": 0},
364 {"x":4, "y": 0},
365 {"x":5, "y": 0},
366 {"x":6, "y": 0},
367 {"x":7, "y": 0},
368 {"x":8, "y": 0},
369 {"x":9, "y": 0},
370 {"x":10, "y": 0},
371 {"x":11, "y": 0},
372 {"x":12, "y": 0},
373 {"x":13, "y": 0},
374 {"x":14, "y": 0},
375
376 {"x":0, "y":1, "w":1.5},
377 {"x":1.5, "y":1},
378 {"x":2.5, "y":1},
379 {"x":3.5, "y":1},
380 {"x":4.5, "y":1},
381 {"x":5.5, "y":1},
382 {"x":6.5, "y":1},
383 {"x":7.5, "y":1},
384 {"x":8.5, "y":1},
385 {"x":9.5, "y":1},
386 {"x":10.5, "y":1},
387 {"x":11.5, "y":1},
388 {"x":12.5, "y":1},
389 {"x":13.5, "y":1, "w":1.5},
390
391 {"x":0, "y":2, "w":1.75},
392 {"x":1.75, "y":2},
393 {"x":2.75, "y":2},
394 {"x":3.75, "y":2},
395 {"x":4.75, "y":2},
396 {"x":5.75, "y":2},
397 {"x":6.75, "y":2},
398 {"x":7.75, "y":2},
399 {"x":8.75, "y":2},
400 {"x":9.75, "y":2},
401 {"x":10.75, "y":2},
402 {"x":11.75, "y":2},
403 {"x":12.75, "y":2, "w":2.25},
404
405 {"x":0, "y":3, "w":2.25},
406 {"x":2.25, "y":3},
407 {"x":3.25, "y":3},
408 {"x":4.25, "y":3},
409 {"x":5.25, "y":3},
410 {"x":6.25, "y":3},
411 {"x":7.25, "y":3},
412 {"x":8.25, "y":3},
413 {"x":9.25, "y":3},
414 {"x":10.25, "y":3},
415 {"x":11.25, "y":3},
416 {"x":12.25, "y":3, "w":2.75},
417
418 {"x":0, "y":4, "w":1.25},
419 {"x":1.25, "y":4, "w":1.25},
420 {"x":2.5, "y":4, "w":1.25},
421 {"x":3.75, "y":4, "w":2.25},
422 {"x":6, "y":4, "w":1.25},
423 {"x":7.25, "y":4, "w":2.75},
424 {"x":10, "y":4, "w":1.25},
425 {"x":11.25, "y":4, "w":1.25},
426 {"x":12.5, "y":4, "w":1.25},
427 {"x":13.75, "y":4, "w":1.25}
428 ]
429 },
430 "LAYOUT_60_ansi_7u_spc": {
431 "layout": [
432 {"x":0, "y":0},
433 {"x":1, "y":0},
434 {"x":2, "y":0},
435 {"x":3, "y":0},
436 {"x":4, "y":0},
437 {"x":5, "y":0},
438 {"x":6, "y":0},
439 {"x":7, "y":0},
440 {"x":8, "y":0},
441 {"x":9, "y":0},
442 {"x":10, "y":0},
443 {"x":11, "y":0},
444 {"x":12, "y":0},
445 {"x":13, "y":0, "w":2},
446
447 {"x":0, "y":1, "w":1.5},
448 {"x":1.5, "y":1},
449 {"x":2.5, "y":1},
450 {"x":3.5, "y":1},
451 {"x":4.5, "y":1},
452 {"x":5.5, "y":1},
453 {"x":6.5, "y":1},
454 {"x":7.5, "y":1},
455 {"x":8.5, "y":1},
456 {"x":9.5, "y":1},
457 {"x":10.5, "y":1},
458 {"x":11.5, "y":1},
459 {"x":12.5, "y":1},
460 {"x":13.5, "y":1, "w":1.5},
461
462 {"x":0, "y":2, "w":1.75},
463 {"x":1.75, "y":2},
464 {"x":2.75, "y":2},
465 {"x":3.75, "y":2},
466 {"x":4.75, "y":2},
467 {"x":5.75, "y":2},
468 {"x":6.75, "y":2},
469 {"x":7.75, "y":2},
470 {"x":8.75, "y":2},
471 {"x":9.75, "y":2},
472 {"x":10.75, "y":2},
473 {"x":11.75, "y":2},
474 {"x":12.75, "y":2, "w":2.25},
475
476 {"x":0, "y":3, "w":2.25},
477 {"x":2.25, "y":3},
478 {"x":3.25, "y":3},
479 {"x":4.25, "y":3},
480 {"x":5.25, "y":3},
481 {"x":6.25, "y":3},
482 {"x":7.25, "y":3},
483 {"x":8.25, "y":3},
484 {"x":9.25, "y":3},
485 {"x":10.25, "y":3},
486 {"x":11.25, "y":3},
487 {"x":12.25, "y":3, "w":2.75},
488
489 {"x":0, "y": 4, "w": 1.5},
490 {"x":1.5, "y": 4},
491 {"x":2.5, "y": 4, "w": 1.5},
492 {"x":4, "y": 4, "w": 7},
493 {"x":11, "y": 4, "w": 1.5},
494 {"x":12.5, "y": 4},
495 {"x":13.5, "y": 4, "w": 1.5},
496 ]
497 },
498 "LAYOUT_60_ansi_split_bs_7u_spc": {
499 "layout": [
500 {"x":0, "y":0},
501 {"x":1, "y":0},
502 {"x":2, "y":0},
503 {"x":3, "y":0},
504 {"x":4, "y":0},
505 {"x":5, "y":0},
506 {"x":6, "y":0},
507 {"x":7, "y":0},
508 {"x":8, "y":0},
509 {"x":9, "y":0},
510 {"x":10, "y":0},
511 {"x":11, "y":0},
512 {"x":12, "y":0},
513 {"x":13, "y":0},
514 {"x":14, "y":0},
515
516 {"x":0, "y":1, "w":1.5},
517 {"x":1.5, "y":1},
518 {"x":2.5, "y":1},
519 {"x":3.5, "y":1},
520 {"x":4.5, "y":1},
521 {"x":5.5, "y":1},
522 {"x":6.5, "y":1},
523 {"x":7.5, "y":1},
524 {"x":8.5, "y":1},
525 {"x":9.5, "y":1},
526 {"x":10.5, "y":1},
527 {"x":11.5, "y":1},
528 {"x":12.5, "y":1},
529 {"x":13.5, "y":1, "w":1.5},
530
531 {"x":0, "y":2, "w":1.75},
532 {"x":1.75, "y":2},
533 {"x":2.75, "y":2},
534 {"x":3.75, "y":2},
535 {"x":4.75, "y":2},
536 {"x":5.75, "y":2},
537 {"x":6.75, "y":2},
538 {"x":7.75, "y":2},
539 {"x":8.75, "y":2},
540 {"x":9.75, "y":2},
541 {"x":10.75, "y":2},
542 {"x":11.75, "y":2},
543 {"x":12.75, "y":2, "w":2.25},
544
545 {"x":0, "y":3, "w":2.25},
546 {"x":2.25, "y":3},
547 {"x":3.25, "y":3},
548 {"x":4.25, "y":3},
549 {"x":5.25, "y":3},
550 {"x":6.25, "y":3},
551 {"x":7.25, "y":3},
552 {"x":8.25, "y":3},
553 {"x":9.25, "y":3},
554 {"x":10.25, "y":3},
555 {"x":11.25, "y":3},
556 {"x":12.25, "y":3, "w":2.75},
557
558 {"x": 0, "y": 4, "w": 1.5},
559 {"x": 1.5, "y": 4},
560 {"x": 2.5, "y": 4, "w": 1.5},
561 {"x": 4, "y": 4, "w": 7},
562 {"x": 11, "y": 4, "w": 1.5},
563 {"x": 12.5, "y": 4},
564 {"x": 13.5, "y": 4, "w": 1.5},
565 ]
566 },
567 "LAYOUT_60_ansi_arrow_split_bs": {
568 "layout": [
569 {"x":0, "y":0},
570 {"x":1, "y":0},
571 {"x":2, "y":0},
572 {"x":3, "y":0},
573 {"x":4, "y":0},
574 {"x":5, "y":0},
575 {"x":6, "y":0},
576 {"x":7, "y":0},
577 {"x":8, "y":0},
578 {"x":9, "y":0},
579 {"x":10, "y":0},
580 {"x":11, "y":0},
581 {"x":12, "y":0},
582 {"x":13, "y":0},
583 {"x":14, "y":0},
584
585 {"x":0, "y":1, "w":1.5},
586 {"x":1.5, "y":1},
587 {"x":2.5, "y":1},
588 {"x":3.5, "y":1},
589 {"x":4.5, "y":1},
590 {"x":5.5, "y":1},
591 {"x":6.5, "y":1},
592 {"x":7.5, "y":1},
593 {"x":8.5, "y":1},
594 {"x":9.5, "y":1},
595 {"x":10.5, "y":1},
596 {"x":11.5, "y":1},
597 {"x":12.5, "y":1},
598 {"x":13.5, "y":1, "w":1.5},
599
600 {"x":0, "y":2, "w":1.75},
601 {"x":1.75, "y":2},
602 {"x":2.75, "y":2},
603 {"x":3.75, "y":2},
604 {"x":4.75, "y":2},
605 {"x":5.75, "y":2},
606 {"x":6.75, "y":2},
607 {"x":7.75, "y":2},
608 {"x":8.75, "y":2},
609 {"x":9.75, "y":2},
610 {"x":10.75, "y":2},
611 {"x":11.75, "y":2},
612 {"x":12.75, "y":2, "w":2.25},
613
614 {"x":0, "y":3, "w":2.25},
615 {"x":2.25, "y":3},
616 {"x":3.25, "y":3},
617 {"x":4.25, "y":3},
618 {"x":5.25, "y":3},
619 {"x":6.25, "y":3},
620 {"x":7.25, "y":3},
621 {"x":8.25, "y":3},
622 {"x":9.25, "y":3},
623 {"x":10.25, "y":3},
624 {"x":11.25, "y":3, "w":1.75},
625 {"x":13, "y":3},
626 {"x":14, "y":3},
627
628 {"x":0, "y": 4, "w": 1.25},
629 {"x":1.25, "y": 4, "w": 1.25},
630 {"x":2.5, "y": 4, "w": 1.25},
631 {"x":3.75, "y": 4, "w": 6.25},
632 {"x":10, "y": 4},
633 {"x":11, "y": 4},
634 {"x":12, "y": 4},
635 {"x":13, "y": 4},
636 {"x":14, "y": 4}
637 ]
638 },
639 "LAYOUT_60_ansi_arrow_split_spc": {
640 "layout": [
641 {"x":0, "y":0},
642 {"x":1, "y":0},
643 {"x":2, "y":0},
644 {"x":3, "y":0},
645 {"x":4, "y":0},
646 {"x":5, "y":0},
647 {"x":6, "y":0},
648 {"x":7, "y":0},
649 {"x":8, "y":0},
650 {"x":9, "y":0},
651 {"x":10, "y":0},
652 {"x":11, "y":0},
653 {"x":12, "y":0},
654 {"x":13, "y":0, "w":2},
655
656 {"x":0, "y":1, "w":1.5},
657 {"x":1.5, "y":1},
658 {"x":2.5, "y":1},
659 {"x":3.5, "y":1},
660 {"x":4.5, "y":1},
661 {"x":5.5, "y":1},
662 {"x":6.5, "y":1},
663 {"x":7.5, "y":1},
664 {"x":8.5, "y":1},
665 {"x":9.5, "y":1},
666 {"x":10.5, "y":1},
667 {"x":11.5, "y":1},
668 {"x":12.5, "y":1},
669 {"x":13.5, "y":1, "w":1.5},
670
671 {"x":0, "y":2, "w":1.75},
672 {"x":1.75, "y":2},
673 {"x":2.75, "y":2},
674 {"x":3.75, "y":2},
675 {"x":4.75, "y":2},
676 {"x":5.75, "y":2},
677 {"x":6.75, "y":2},
678 {"x":7.75, "y":2},
679 {"x":8.75, "y":2},
680 {"x":9.75, "y":2},
681 {"x":10.75, "y":2},
682 {"x":11.75, "y":2},
683 {"x":12.75, "y":2, "w":2.25},
684
685 {"x":0, "y":3, "w":2.25},
686 {"x":2.25, "y":3},
687 {"x":3.25, "y":3},
688 {"x":4.25, "y":3},
689 {"x":5.25, "y":3},
690 {"x":6.25, "y":3},
691 {"x":7.25, "y":3},
692 {"x":8.25, "y":3},
693 {"x":9.25, "y":3},
694 {"x":10.25, "y":3},
695 {"x":11.25, "y":3, "w":1.75},
696 {"x":13, "y":3},
697 {"x":14, "y":3},
698
699 {"x":0, "y":4, "w":1.25},
700 {"x":1.25, "y":4, "w":1.25},
701 {"x":2.5, "y":4, "w":1.25},
702 {"x":3.75, "y":4, "w":2.25},
703 {"x":6, "y":4, "w":1.25},
704 {"x":7.25, "y":4, "w":2.75},
705 {"x":10, "y": 4},
706 {"x":11, "y": 4},
707 {"x":12, "y": 4},
708 {"x":13, "y": 4},
709 {"x":14, "y": 4}
710 ]
711 },
712 "LAYOUT_60_ansi_arrow_split_bs_spc": {
713 "layout": [
714 {"x":0, "y":0},
715 {"x":1, "y":0},
716 {"x":2, "y":0},
717 {"x":3, "y":0},
718 {"x":4, "y":0},
719 {"x":5, "y":0},
720 {"x":6, "y":0},
721 {"x":7, "y":0},
722 {"x":8, "y":0},
723 {"x":9, "y":0},
724 {"x":10, "y":0},
725 {"x":11, "y":0},
726 {"x":12, "y":0},
727 {"x":13, "y":0},
728 {"x":14, "y":0},
729
730 {"x":0, "y":1, "w":1.5},
731 {"x":1.5, "y":1},
732 {"x":2.5, "y":1},
733 {"x":3.5, "y":1},
734 {"x":4.5, "y":1},
735 {"x":5.5, "y":1},
736 {"x":6.5, "y":1},
737 {"x":7.5, "y":1},
738 {"x":8.5, "y":1},
739 {"x":9.5, "y":1},
740 {"x":10.5, "y":1},
741 {"x":11.5, "y":1},
742 {"x":12.5, "y":1},
743 {"x":13.5, "y":1, "w":1.5},
744
745 {"x":0, "y":2, "w":1.75},
746 {"x":1.75, "y":2},
747 {"x":2.75, "y":2},
748 {"x":3.75, "y":2},
749 {"x":4.75, "y":2},
750 {"x":5.75, "y":2},
751 {"x":6.75, "y":2},
752 {"x":7.75, "y":2},
753 {"x":8.75, "y":2},
754 {"x":9.75, "y":2},
755 {"x":10.75, "y":2},
756 {"x":11.75, "y":2},
757 {"x":12.75, "y":2, "w":2.25},
758
759 {"x":0, "y":3, "w":2.25},
760 {"x":2.25, "y":3},
761 {"x":3.25, "y":3},
762 {"x":4.25, "y":3},
763 {"x":5.25, "y":3},
764 {"x":6.25, "y":3},
765 {"x":7.25, "y":3},
766 {"x":8.25, "y":3},
767 {"x":9.25, "y":3},
768 {"x":10.25, "y":3},
769 {"x":11.25, "y":3, "w":1.75},
770 {"x":13, "y":3},
771 {"x":14, "y":3},
772
773 {"x":0, "y":4, "w":1.25},
774 {"x":1.25, "y":4, "w":1.25},
775 {"x":2.5, "y":4, "w":1.25},
776 {"x":3.75, "y":4, "w":2.25},
777 {"x":6, "y":4, "w":1.25},
778 {"x":7.25, "y":4, "w":2.75},
779 {"x":10, "y": 4},
780 {"x":11, "y": 4},
781 {"x":12, "y": 4},
782 {"x":13, "y": 4},
783 {"x":14, "y": 4}
784 ]
785 },
786 "LAYOUT_60_ansi_arrow_7u_spc": {
787 "layout": [
788 {"x": 0, "y": 0},
789 {"x": 1, "y": 0},
790 {"x": 2, "y": 0},
791 {"x": 3, "y": 0},
792 {"x": 4, "y": 0},
793 {"x": 5, "y": 0},
794 {"x": 6, "y": 0},
795 {"x": 7, "y": 0},
796 {"x": 8, "y": 0},
797 {"x": 9, "y": 0},
798 {"x": 10, "y": 0},
799 {"x": 11, "y": 0},
800 {"x": 12, "y": 0},
801 {"x": 13, "y": 0, "w": 2},
802
803 {"x":0, "y":1, "w":1.5},
804 {"x":1.5, "y":1},
805 {"x":2.5, "y":1},
806 {"x":3.5, "y":1},
807 {"x":4.5, "y":1},
808 {"x":5.5, "y":1},
809 {"x":6.5, "y":1},
810 {"x":7.5, "y":1},
811 {"x":8.5, "y":1},
812 {"x":9.5, "y":1},
813 {"x":10.5, "y":1},
814 {"x":11.5, "y":1},
815 {"x":12.5, "y":1},
816 {"x":13.5, "y":1, "w":1.5},
817
818 {"x":0, "y":2, "w":1.75},
819 {"x":1.75, "y":2},
820 {"x":2.75, "y":2},
821 {"x":3.75, "y":2},
822 {"x":4.75, "y":2},
823 {"x":5.75, "y":2},
824 {"x":6.75, "y":2},
825 {"x":7.75, "y":2},
826 {"x":8.75, "y":2},
827 {"x":9.75, "y":2},
828 {"x":10.75, "y":2},
829 {"x":11.75, "y":2},
830 {"x":12.75, "y":2, "w":2.25},
831
832 {"x":0, "y":3, "w":2.25},
833 {"x":2.25, "y":3},
834 {"x":3.25, "y":3},
835 {"x":4.25, "y":3},
836 {"x":5.25, "y":3},
837 {"x":6.25, "y":3},
838 {"x":7.25, "y":3},
839 {"x":8.25, "y":3},
840 {"x":9.25, "y":3},
841 {"x":10.25, "y":3},
842 {"x":11.25, "y":3, "w":1.75},
843 {"x":13, "y":3},
844 {"x":14, "y":3},
845
846 {"x":0, "y": 4, "w": 1.5},
847 {"x":1.5, "y": 4},
848 {"x":2.5, "y": 4, "w": 1.5},
849 {"x":4, "y": 4, "w": 7},
850 {"x":11, "y": 4},
851 {"x":12, "y": 4},
852 {"x":13, "y": 4},
853 {"x":14, "y": 4}
854 ]
855 },
856 "LAYOUT_60_ansi_tsangan": {
857 "layout": [
858 {"x": 0, "y": 0},
859 {"x": 1, "y": 0},
860 {"x": 2, "y": 0},
861 {"x": 3, "y": 0},
862 {"x": 4, "y": 0},
863 {"x": 5, "y": 0},
864 {"x": 6, "y": 0},
865 {"x": 7, "y": 0},
866 {"x": 8, "y": 0},
867 {"x": 9, "y": 0},
868 {"x": 10, "y": 0},
869 {"x": 11, "y": 0},
870 {"x": 12, "y": 0},
871 {"x": 13, "y": 0, "w": 2},
872
873 {"x": 0, "y": 1, "w": 1.5},
874 {"x": 1.5, "y": 1},
875 {"x": 2.5, "y": 1},
876 {"x": 3.5, "y": 1},
877 {"x": 4.5, "y": 1},
878 {"x": 5.5, "y": 1},
879 {"x": 6.5, "y": 1},
880 {"x": 7.5, "y": 1},
881 {"x": 8.5, "y": 1},
882 {"x": 9.5, "y": 1},
883 {"x": 10.5, "y": 1},
884 {"x": 11.5, "y": 1},
885 {"x": 12.5, "y": 1},
886 {"x": 13.5, "y": 1, "w": 1.5},
887
888 {"x": 0, "y": 2, "w": 1.75},
889 {"x": 1.75, "y": 2},
890 {"x": 2.75, "y": 2},
891 {"x": 3.75, "y": 2},
892 {"x": 4.75, "y": 2},
893 {"x": 5.75, "y": 2},
894 {"x": 6.75, "y": 2},
895 {"x": 7.75, "y": 2},
896 {"x": 8.75, "y": 2},
897 {"x": 9.75, "y": 2},
898 {"x": 10.75, "y": 2},
899 {"x": 11.75, "y": 2},
900 {"x": 12.75, "y": 2, "w": 2.25},
901
902 {"x": 0, "y": 3, "w": 2.25},
903 {"x": 2.25, "y": 3},
904 {"x": 3.25, "y": 3},
905 {"x": 4.25, "y": 3},
906 {"x": 5.25, "y": 3},
907 {"x": 6.25, "y": 3},
908 {"x": 7.25, "y": 3},
909 {"x": 8.25, "y": 3},
910 {"x": 9.25, "y": 3},
911 {"x": 10.25, "y": 3},
912 {"x": 11.25, "y": 3},
913 {"x": 12.25, "y": 3, "w": 1.75},
914 {"x": 14, "y": 3},
915
916 {"x": 0, "y": 4, "w": 1.5},
917 {"x": 1.5, "y": 4},
918 {"x": 2.5, "y": 4, "w": 1.5},
919 {"x": 4, "y": 4, "w": 7},
920 {"x": 11, "y": 4, "w": 1.5},
921 {"x": 12.5, "y": 4},
922 {"x": 13.5, "y": 4, "w": 1.5},
923 ]
924 },
925 "LAYOUT_60_ansi_tsangan_split_bs": {
926 "layout": [
927 {"x": 0, "y": 0},
928 {"x": 1, "y": 0},
929 {"x": 2, "y": 0},
930 {"x": 3, "y": 0},
931 {"x": 4, "y": 0},
932 {"x": 5, "y": 0},
933 {"x": 6, "y": 0},
934 {"x": 7, "y": 0},
935 {"x": 8, "y": 0},
936 {"x": 9, "y": 0},
937 {"x": 10, "y": 0},
938 {"x": 11, "y": 0},
939 {"x": 12, "y": 0},
940 {"x": 13, "y": 0},
941 {"x": 14, "y": 0},
942
943 {"x": 0, "y": 1, "w": 1.5},
944 {"x": 1.5, "y": 1},
945 {"x": 2.5, "y": 1},
946 {"x": 3.5, "y": 1},
947 {"x": 4.5, "y": 1},
948 {"x": 5.5, "y": 1},
949 {"x": 6.5, "y": 1},
950 {"x": 7.5, "y": 1},
951 {"x": 8.5, "y": 1},
952 {"x": 9.5, "y": 1},
953 {"x": 10.5, "y": 1},
954 {"x": 11.5, "y": 1},
955 {"x": 12.5, "y": 1},
956 {"x": 13.5, "y": 1, "w": 1.5},
957
958 {"x": 0, "y": 2, "w": 1.75},
959 {"x": 1.75, "y": 2},
960 {"x": 2.75, "y": 2},
961 {"x": 3.75, "y": 2},
962 {"x": 4.75, "y": 2},
963 {"x": 5.75, "y": 2},
964 {"x": 6.75, "y": 2},
965 {"x": 7.75, "y": 2},
966 {"x": 8.75, "y": 2},
967 {"x": 9.75, "y": 2},
968 {"x": 10.75, "y": 2},
969 {"x": 11.75, "y": 2},
970 {"x": 12.75, "y": 2, "w": 2.25},
971
972 {"x": 0, "y": 3, "w": 2.25},
973 {"x": 2.25, "y": 3},
974 {"x": 3.25, "y": 3},
975 {"x": 4.25, "y": 3},
976 {"x": 5.25, "y": 3},
977 {"x": 6.25, "y": 3},
978 {"x": 7.25, "y": 3},
979 {"x": 8.25, "y": 3},
980 {"x": 9.25, "y": 3},
981 {"x": 10.25, "y": 3},
982 {"x": 11.25, "y": 3},
983 {"x": 12.25, "y": 3, "w": 1.75},
984 {"x": 14, "y": 3},
985
986 {"x": 0, "y": 4, "w": 1.5},
987 {"x": 1.5, "y": 4},
988 {"x": 2.5, "y": 4, "w": 1.5},
989 {"x": 4, "y": 4, "w": 7},
990 {"x": 11, "y": 4, "w": 1.5},
991 {"x": 12.5, "y": 4},
992 {"x": 13.5, "y": 4, "w": 1.5},
993 ]
994 },
995 "LAYOUT_60_iso_tsangan": {
996 "layout": [
997 {"x":0, "y":0},
998 {"x":1, "y":0},
999 {"x":2, "y":0},
1000 {"x":3, "y":0},
1001 {"x":4, "y":0},
1002 {"x":5, "y":0},
1003 {"x":6, "y":0},
1004 {"x":7, "y":0},
1005 {"x":8, "y":0},
1006 {"x":9, "y":0},
1007 {"x":10, "y":0},
1008 {"x":11, "y":0},
1009 {"x":12, "y":0},
1010 {"x":13, "y":0, "w":2},
1011
1012 {"x":0, "y":1, "w":1.5},
1013 {"x":1.5, "y":1},
1014 {"x":2.5, "y":1},
1015 {"x":3.5, "y":1},
1016 {"x":4.5, "y":1},
1017 {"x":5.5, "y":1},
1018 {"x":6.5, "y":1},
1019 {"x":7.5, "y":1},
1020 {"x":8.5, "y":1},
1021 {"x":9.5, "y":1},
1022 {"x":10.5, "y":1},
1023 {"x":11.5, "y":1},
1024 {"x":12.5, "y":1},
1025
1026 {"x":0, "y":2, "w":1.75},
1027 {"x":1.75, "y":2},
1028 {"x":2.75, "y":2},
1029 {"x":3.75, "y":2},
1030 {"x":4.75, "y":2},
1031 {"x":5.75, "y":2},
1032 {"x":6.75, "y":2},
1033 {"x":7.75, "y":2},
1034 {"x":8.75, "y":2},
1035 {"x":9.75, "y":2},
1036 {"x":10.75, "y":2},
1037 {"x":11.75, "y":2},
1038 {"x":12.75, "y":2},
1039 {"x":13.75, "y":1, "w":1.25, "h":2},
1040
1041 {"x": 0, "y": 3, "w": 2.25},
1042 {"x": 2.25, "y": 3},
1043 {"x": 3.25, "y": 3},
1044 {"x": 4.25, "y": 3},
1045 {"x": 5.25, "y": 3},
1046 {"x": 6.25, "y": 3},
1047 {"x": 7.25, "y": 3},
1048 {"x": 8.25, "y": 3},
1049 {"x": 9.25, "y": 3},
1050 {"x": 10.25, "y": 3},
1051 {"x": 11.25, "y": 3},
1052 {"x": 12.25, "y": 3, "w": 1.75},
1053 {"x": 14, "y": 3},
1054
1055 {"x":0, "y": 4, "w": 1.5},
1056 {"x":1.5, "y": 4},
1057 {"x":2.5, "y": 4, "w": 1.5},
1058 {"x":4, "y": 4, "w": 7},
1059 {"x":11, "y": 4, "w": 1.5},
1060 {"x":12.5, "y": 4},
1061 {"x":13.5, "y": 4, "w": 1.5},
1062 ]
1063 },
1064 "LAYOUT_60_iso": {
1065 "layout": [
1066 {"x":0, "y":0},
1067 {"x":1, "y":0},
1068 {"x":2, "y":0},
1069 {"x":3, "y":0},
1070 {"x":4, "y":0},
1071 {"x":5, "y":0},
1072 {"x":6, "y":0},
1073 {"x":7, "y":0},
1074 {"x":8, "y":0},
1075 {"x":9, "y":0},
1076 {"x":10, "y":0},
1077 {"x":11, "y":0},
1078 {"x":12, "y":0},
1079 {"x":13, "y":0},
1080 {"x":14, "y":0},
1081
1082 {"x":0, "y":1, "w":1.5},
1083 {"x":1.5, "y":1},
1084 {"x":2.5, "y":1},
1085 {"x":3.5, "y":1},
1086 {"x":4.5, "y":1},
1087 {"x":5.5, "y":1},
1088 {"x":6.5, "y":1},
1089 {"x":7.5, "y":1},
1090 {"x":8.5, "y":1},
1091 {"x":9.5, "y":1},
1092 {"x":10.5, "y":1},
1093 {"x":11.5, "y":1},
1094 {"x":12.5, "y":1},
1095
1096 {"x":0, "y":2, "w":1.75},
1097 {"x":1.75, "y":2},
1098 {"x":2.75, "y":2},
1099 {"x":3.75, "y":2},
1100 {"x":4.75, "y":2},
1101 {"x":5.75, "y":2},
1102 {"x":6.75, "y":2},
1103 {"x":7.75, "y":2},
1104 {"x":8.75, "y":2},
1105 {"x":9.75, "y":2},
1106 {"x":10.75, "y":2},
1107 {"x":11.75, "y":2},
1108 {"x":12.75, "y":2},
1109 {"x":13.75, "y":1, "w":1.25, "h":2},
1110
1111 {"x":2.25, "y":3},
1112 {"x":3.25, "y":3},
1113 {"x":4.25, "y":3},
1114 {"x":5.25, "y":3},
1115 {"x":6.25, "y":3},
1116 {"x":7.25, "y":3},
1117 {"x":8.25, "y":3},
1118 {"x":9.25, "y":3},
1119 {"x":10.25, "y":3},
1120 {"x":11.25, "y":3},
1121 {"x":12.25, "y":3, "w":2.75},
1122
1123 {"x":0, "y":4, "w":1.25},
1124 {"x":1.25, "y":4, "w":1.25},
1125 {"x":2.5, "y":4, "w":1.25},
1126 {"x":3.75, "y":4, "w":6.25},
1127 {"x":10, "y":4, "w":1.25},
1128 {"x":11.25, "y":4, "w":1.25},
1129 {"x":12.5, "y":4, "w":1.25},
1130 {"x":13.75, "y":4, "w":1.25}
1131 ]
1132 },
1133 "LAYOUT_60_iso_tsangan": {
1134 "layout": [
1135 {"x":0, "y":0},
1136 {"x":1, "y":0},
1137 {"x":2, "y":0},
1138 {"x":3, "y":0},
1139 {"x":4, "y":0},
1140 {"x":5, "y":0},
1141 {"x":6, "y":0},
1142 {"x":7, "y":0},
1143 {"x":8, "y":0},
1144 {"x":9, "y":0},
1145 {"x":10, "y":0},
1146 {"x":11, "y":0},
1147 {"x":12, "y":0},
1148 {"x":13, "y":0},
1149 {"x":14, "y":0},
1150
1151 {"x":0, "y":1, "w":1.5},
1152 {"x":1.5, "y":1},
1153 {"x":2.5, "y":1},
1154 {"x":3.5, "y":1},
1155 {"x":4.5, "y":1},
1156 {"x":5.5, "y":1},
1157 {"x":6.5, "y":1},
1158 {"x":7.5, "y":1},
1159 {"x":8.5, "y":1},
1160 {"x":9.5, "y":1},
1161 {"x":10.5, "y":1},
1162 {"x":11.5, "y":1},
1163 {"x":12.5, "y":1},
1164
1165 {"x":0, "y":2, "w":1.75},
1166 {"x":1.75, "y":2},
1167 {"x":2.75, "y":2},
1168 {"x":3.75, "y":2},
1169 {"x":4.75, "y":2},
1170 {"x":5.75, "y":2},
1171 {"x":6.75, "y":2},
1172 {"x":7.75, "y":2},
1173 {"x":8.75, "y":2},
1174 {"x":9.75, "y":2},
1175 {"x":10.75, "y":2},
1176 {"x":11.75, "y":2},
1177 {"x":12.75, "y":2},
1178 {"x":13.75, "y":1, "w":1.25, "h":2},
1179
1180 {"x": 0, "y": 3, "w": 2.25},
1181 {"x": 2.25, "y": 3},
1182 {"x": 3.25, "y": 3},
1183 {"x": 4.25, "y": 3},
1184 {"x": 5.25, "y": 3},
1185 {"x": 6.25, "y": 3},
1186 {"x": 7.25, "y": 3},
1187 {"x": 8.25, "y": 3},
1188 {"x": 9.25, "y": 3},
1189 {"x": 10.25, "y": 3},
1190 {"x": 11.25, "y": 3},
1191 {"x": 12.25, "y": 3, "w": 1.75},
1192 {"x": 14, "y": 3},
1193
1194 {"x":0, "y": 4, "w": 1.5},
1195 {"x":1.5, "y": 4},
1196 {"x":2.5, "y": 4, "w": 1.5},
1197 {"x":4, "y": 4, "w": 7},
1198 {"x":11, "y": 4, "w": 1.5},
1199 {"x":12.5, "y": 4},
1200 {"x":13.5, "y": 4, "w": 1.5},
1201 ]
1202 },
1203 "LAYOUT_60_all": {
1204 "layout": [
1205 {"x":0, "y":0},
1206 {"x":1, "y":0},
1207 {"x":2, "y":0},
1208 {"x":3, "y":0},
1209 {"x":4, "y":0},
1210 {"x":5, "y":0},
1211 {"x":6, "y":0},
1212 {"x":7, "y":0},
1213 {"x":8, "y":0},
1214 {"x":9, "y":0},
1215 {"x":10, "y":0},
1216 {"x":11, "y":0},
1217 {"x":12, "y":0},
1218 {"x":13, "y":0, "w":2},
1219
1220 {"x":0, "y":1, "w":1.5},
1221 {"x":1.5, "y":1},
1222 {"x":2.5, "y":1},
1223 {"x":3.5, "y":1},
1224 {"x":4.5, "y":1},
1225 {"x":5.5, "y":1},
1226 {"x":6.5, "y":1},
1227 {"x":7.5, "y":1},
1228 {"x":8.5, "y":1},
1229 {"x":9.5, "y":1},
1230 {"x":10.5, "y":1},
1231 {"x":11.5, "y":1},
1232 {"x":12.5, "y":1},
1233
1234 {"x":0, "y":2, "w":1.75},
1235 {"x":1.75, "y":2},
1236 {"x":2.75, "y":2},
1237 {"x":3.75, "y":2},
1238 {"x":4.75, "y":2},
1239 {"x":5.75, "y":2},
1240 {"x":6.75, "y":2},
1241 {"x":7.75, "y":2},
1242 {"x":8.75, "y":2},
1243 {"x":9.75, "y":2},
1244 {"x":10.75, "y":2},
1245 {"x":11.75, "y":2},
1246 {"x":12.75, "y":2},
1247 {"x":13.75, "y":1, "w":1.25, "h":2},
1248
1249 {"x":0, "y":3, "w":2},
1250 {"x":2, "y":3},
1251 {"x":3, "y":3},
1252 {"x":4, "y":3},
1253 {"x":5, "y":3},
1254 {"x":6, "y":3},
1255 {"x":7, "y":3},
1256 {"x":8, "y":3},
1257 {"x":9, "y":3},
1258 {"x":10, "y":3},
1259 {"x":11, "y":3},
1260 {"x":12, "y":3},
1261 {"x":13, "y":3},
1262 {"x":14, "y":3},
1263
1264 {"x":0, "y": 4, "w": 1.5},
1265 {"x":1.5, "y": 4},
1266 {"x":2.5, "y": 4, "w": 1.5},
1267 {"x":4, "y": 4, "w": 7},
1268 {"x":11, "y": 4, "w": 1.5},
1269 {"x":12.5, "y": 4},
1270 {"x":13.5, "y": 4, "w": 1.5},
1271 ]
1272 }
1273 }
1274}
diff --git a/keyboards/sawnsprojects/krush/krush60/solder/keymaps/60_all/keymap.c b/keyboards/sawnsprojects/krush/krush60/solder/keymaps/60_all/keymap.c
new file mode 100644
index 000000000..b8b48194a
--- /dev/null
+++ b/keyboards/sawnsprojects/krush/krush60/solder/keymaps/60_all/keymap.c
@@ -0,0 +1,35 @@
1/* Copyright 2021 SawnsProjects
2 *
3 * This program is free software: you can redistribute it and/or modify
4 * it under the terms of the GNU General Public License as published by
5 * the Free Software Foundation, either version 2 of the License, or
6 * (at your option) any later version.
7 *
8 * This program is distributed in the hope that it will be useful,
9 * but WITHOUT ANY WARRANTY; without even the implied warranty of
10 * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
11 * GNU General Public License for more details.
12 *
13 * You should have received a copy of the GNU General Public License
14 * along with this program. If not, see <http://www.gnu.org/licenses/>.
15 */
16
17#include QMK_KEYBOARD_H
18
19const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = {
20
21 [0] = LAYOUT_all(
22 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,
23 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,
24 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,
25 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,
26 KC_LCTL, KC_LGUI, KC_LALT, KC_SPC, KC_SPC, KC_SPC, KC_RALT, MO(1), KC_LEFT, KC_DOWN, KC_RGHT
27 ),
28 [1] = LAYOUT_all(
29 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_TRNS, KC_TRNS,
30 KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS,
31 KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS,
32 KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS,
33 KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS
34 ),
35};
diff --git a/keyboards/sawnsprojects/krush/krush60/solder/keymaps/60_all/readme.md b/keyboards/sawnsprojects/krush/krush60/solder/keymaps/60_all/readme.md
new file mode 100644
index 000000000..e8ab0065f
--- /dev/null
+++ b/keyboards/sawnsprojects/krush/krush60/solder/keymaps/60_all/readme.md
@@ -0,0 +1 @@
# The keymap for krush60 solder full layout \ No newline at end of file
diff --git a/keyboards/sawnsprojects/krush/krush60/solder/keymaps/60_ansi_7u/keymap.c b/keyboards/sawnsprojects/krush/krush60/solder/keymaps/60_ansi_7u/keymap.c
new file mode 100644
index 000000000..3d454579c
--- /dev/null
+++ b/keyboards/sawnsprojects/krush/krush60/solder/keymaps/60_ansi_7u/keymap.c
@@ -0,0 +1,37 @@
1/* Copyright 2021 SawnsProjects
2 *
3 * This program is free software: you can redistribute it and/or modify
4 * it under the terms of the GNU General Public License as published by
5 * the Free Software Foundation, either version 2 of the License, or
6 * (at your option) any later version.
7 *
8 * This program is distributed in the hope that it will be useful,
9 * but WITHOUT ANY WARRANTY; without even the implied warranty of
10 * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
11 * GNU General Public License for more details.
12 *
13 * You should have received a copy of the GNU General Public License
14 * along with this program. If not, see <http://www.gnu.org/licenses/>.
15 */
16
17#include QMK_KEYBOARD_H
18
19const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = {
20
21 [0] = LAYOUT_60_ansi_7u_spc(
22 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,
23 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,
24 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,
25 KC_LSFT, KC_Z, KC_X, KC_C, KC_V, KC_B, KC_N, KC_M, KC_COMM, KC_DOT, KC_SLSH, KC_RSFT,
26 KC_LCTL, KC_LGUI, KC_LALT, KC_SPC, KC_RALT, MO(1), KC_RCTL
27 )
28 [1] = LAYOUT_60_ansi_7u_spc(
29 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,
30 KC_TRNS, RGB_TOG, RGB_MOD, RGB_HUI, RGB_HUD, RGB_SAI, RGB_SAD, RGB_VAI, RGB_VAD, KC_TRNS, KC_PSCR, KC_SLCK, KC_PAUS, KC_TRNS,
31 KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_INS, KC_HOME, KC_PGUP, KC_TRNS,
32 KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_END, KC_PGDN, KC_TRNS,
33 KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS
34 )
35};
36
37
diff --git a/keyboards/sawnsprojects/krush/krush60/solder/keymaps/60_ansi_7u/readme.md b/keyboards/sawnsprojects/krush/krush60/solder/keymaps/60_ansi_7u/readme.md
new file mode 100644
index 000000000..b7ec93ca7
--- /dev/null
+++ b/keyboards/sawnsprojects/krush/krush60/solder/keymaps/60_ansi_7u/readme.md
@@ -0,0 +1 @@
# The keymap for krush60 solder layout ansi 7U \ No newline at end of file
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 000000000..b6fb88bb8
--- /dev/null
+++ b/keyboards/sawnsprojects/krush/krush60/solder/keymaps/60_ansi_arrow/keymap.c
@@ -0,0 +1,35 @@
1/* Copyright 2021 SawnsProjects
2 *
3 * This program is free software: you can redistribute it and/or modify
4 * it under the terms of the GNU General Public License as published by
5 * the Free Software Foundation, either version 2 of the License, or
6 * (at your option) any later version.
7 *
8 * This program is distributed in the hope that it will be useful,
9 * but WITHOUT ANY WARRANTY; without even the implied warranty of
10 * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
11 * GNU General Public License for more details.
12 *
13 * You should have received a copy of the GNU General Public License
14 * along with this program. If not, see <http://www.gnu.org/licenses/>.
15 */
16
17#include QMK_KEYBOARD_H
18
19const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = {
20
21 [0] = LAYOUT_60_ansi_arrow(
22 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,
23 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,
24 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,
25 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,
26 KC_LCTL, KC_LGUI, KC_LALT, KC_SPC, KC_RALT, MO(1), KC_LEFT, KC_DOWN, KC_RGHT
27 )
28 [1] = LAYOUT_60_ansi_arrow(
29 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,
30 KC_TRNS, RGB_TOG, RGB_MOD, RGB_HUI, RGB_HUD, RGB_SAI, RGB_SAD, RGB_VAI, RGB_VAD, KC_TRNS, KC_PSCR, KC_SLCK, KC_PAUS, KC_TRNS,
31 KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_INS, KC_HOME, KC_PGUP, KC_TRNS,
32 KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_END, KC_PGDN, KC_TRNS, KC_TRNS,
33 KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS
34 )
35}; \ No newline at end of file
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 000000000..561b615d2
--- /dev/null
+++ b/keyboards/sawnsprojects/krush/krush60/solder/keymaps/60_ansi_arrow/readme.md
@@ -0,0 +1 @@
# The keymap for krush60 solder layout ansi arrow \ No newline at end of file
diff --git a/keyboards/sawnsprojects/krush/krush60/solder/keymaps/60_ansi_arrow_7u/keymap.c b/keyboards/sawnsprojects/krush/krush60/solder/keymaps/60_ansi_arrow_7u/keymap.c
new file mode 100644
index 000000000..f22e073bf
--- /dev/null
+++ b/keyboards/sawnsprojects/krush/krush60/solder/keymaps/60_ansi_arrow_7u/keymap.c
@@ -0,0 +1,35 @@
1/* Copyright 2021 SawnsProjects
2 *
3 * This program is free software: you can redistribute it and/or modify
4 * it under the terms of the GNU General Public License as published by
5 * the Free Software Foundation, either version 2 of the License, or
6 * (at your option) any later version.
7 *
8 * This program is distributed in the hope that it will be useful,
9 * but WITHOUT ANY WARRANTY; without even the implied warranty of
10 * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
11 * GNU General Public License for more details.
12 *
13 * You should have received a copy of the GNU General Public License
14 * along with this program. If not, see <http://www.gnu.org/licenses/>.
15 */
16
17#include QMK_KEYBOARD_H
18
19const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = {
20
21 [0] = LAYOUT_60_ansi_arrow_7u_spc(
22 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,
23 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,
24 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,
25 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,
26 KC_LCTL, KC_LGUI, KC_LALT, KC_SPC, MO(1), KC_LEFT, KC_DOWN, KC_RGHT
27 )
28 [1] = LAYOUT_60_ansi_arrow_7u_spc(
29 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,
30 KC_TRNS, RGB_TOG, RGB_MOD, RGB_HUI, RGB_HUD, RGB_SAI, RGB_SAD, RGB_VAI, RGB_VAD, KC_TRNS, KC_PSCR, KC_SLCK, KC_PAUS, KC_TRNS,
31 KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_INS, KC_HOME, KC_PGUP, KC_TRNS,
32 KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_END, KC_PGDN, KC_TRNS, KC_TRNS,
33 KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS
34 )
35}; \ No newline at end of file
diff --git a/keyboards/sawnsprojects/krush/krush60/solder/keymaps/60_ansi_arrow_7u/readme.md b/keyboards/sawnsprojects/krush/krush60/solder/keymaps/60_ansi_arrow_7u/readme.md
new file mode 100644
index 000000000..578753b3a
--- /dev/null
+++ b/keyboards/sawnsprojects/krush/krush60/solder/keymaps/60_ansi_arrow_7u/readme.md
@@ -0,0 +1 @@
# The keymap for krush60 solder layout ansi 7U arrow \ No newline at end of file
diff --git a/keyboards/sawnsprojects/krush/krush60/solder/keymaps/60_ansi_arrow_splt_bs/keymap.c b/keyboards/sawnsprojects/krush/krush60/solder/keymaps/60_ansi_arrow_splt_bs/keymap.c
new file mode 100644
index 000000000..8ba292cfd
--- /dev/null
+++ b/keyboards/sawnsprojects/krush/krush60/solder/keymaps/60_ansi_arrow_splt_bs/keymap.c
@@ -0,0 +1,35 @@
1/* Copyright 2021 SawnsProjects
2 *
3 * This program is free software: you can redistribute it and/or modify
4 * it under the terms of the GNU General Public License as published by
5 * the Free Software Foundation, either version 2 of the License, or
6 * (at your option) any later version.
7 *
8 * This program is distributed in the hope that it will be useful,
9 * but WITHOUT ANY WARRANTY; without even the implied warranty of
10 * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
11 * GNU General Public License for more details.
12 *
13 * You should have received a copy of the GNU General Public License
14 * along with this program. If not, see <http://www.gnu.org/licenses/>.
15 */
16
17#include QMK_KEYBOARD_H
18
19const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = {
20
21 [0] = LAYOUT_60_ansi_arrow_split_bs(
22 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,
23 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,
24 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,
25 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,
26 KC_LCTL, KC_LGUI, KC_LALT, KC_SPC, KC_RALT, MO(1), KC_LEFT, KC_DOWN, KC_RGHT
27 )
28 [1] = LAYOUT_60_ansi_arrow_split_bs(
29 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, KC_TRNS,
30 KC_TRNS, RGB_TOG, RGB_MOD, RGB_HUI, RGB_HUD, RGB_SAI, RGB_SAD, RGB_VAI, RGB_VAD, KC_TRNS, KC_PSCR, KC_SLCK, KC_PAUS, KC_TRNS,
31 KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_INS, KC_HOME, KC_PGUP, KC_TRNS,
32 KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_END, KC_PGDN, KC_TRNS, KC_TRNS,
33 KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS
34 )
35};
diff --git a/keyboards/sawnsprojects/krush/krush60/solder/keymaps/60_ansi_arrow_splt_bs/readme.md b/keyboards/sawnsprojects/krush/krush60/solder/keymaps/60_ansi_arrow_splt_bs/readme.md
new file mode 100644
index 000000000..505c1ec9b
--- /dev/null
+++ b/keyboards/sawnsprojects/krush/krush60/solder/keymaps/60_ansi_arrow_splt_bs/readme.md
@@ -0,0 +1 @@
# The keymap for krush60 solder layout ansi arrow split backspace \ No newline at end of file
diff --git a/keyboards/sawnsprojects/krush/krush60/solder/keymaps/60_ansi_arrow_splt_bs_7u/keymap.c b/keyboards/sawnsprojects/krush/krush60/solder/keymaps/60_ansi_arrow_splt_bs_7u/keymap.c
new file mode 100644
index 000000000..56a713d56
--- /dev/null
+++ b/keyboards/sawnsprojects/krush/krush60/solder/keymaps/60_ansi_arrow_splt_bs_7u/keymap.c
@@ -0,0 +1,35 @@
1/* Copyright 2021 SawnsProjects
2 *
3 * This program is free software: you can redistribute it and/or modify
4 * it under the terms of the GNU General Public License as published by
5 * the Free Software Foundation, either version 2 of the License, or
6 * (at your option) any later version.
7 *
8 * This program is distributed in the hope that it will be useful,
9 * but WITHOUT ANY WARRANTY; without even the implied warranty of
10 * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
11 * GNU General Public License for more details.
12 *
13 * You should have received a copy of the GNU General Public License
14 * along with this program. If not, see <http://www.gnu.org/licenses/>.
15 */
16
17#include QMK_KEYBOARD_H
18
19const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = {
20
21 [0] = LAYOUT_60_ansi_arrow_split_bs_7u_spc(
22 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,
23 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,
24 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,
25 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,
26 KC_LCTL, KC_LGUI, KC_LALT, KC_SPC, MO(1), KC_LEFT, KC_DOWN, KC_RGHT
27 )
28 [1] = LAYOUT_60_ansi_arrow_split_bs_7u_spc(
29 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, KC_TRNS,
30 KC_TRNS, RGB_TOG, RGB_MOD, RGB_HUI, RGB_HUD, RGB_SAI, RGB_SAD, RGB_VAI, RGB_VAD, KC_TRNS, KC_PSCR, KC_SLCK, KC_PAUS, KC_TRNS,
31 KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_INS, KC_HOME, KC_PGUP, KC_TRNS,
32 KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_END, KC_PGDN, KC_TRNS, KC_TRNS,
33 KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS
34 )
35}; \ No newline at end of file
diff --git a/keyboards/sawnsprojects/krush/krush60/solder/keymaps/60_ansi_arrow_splt_bs_7u/readme.md b/keyboards/sawnsprojects/krush/krush60/solder/keymaps/60_ansi_arrow_splt_bs_7u/readme.md
new file mode 100644
index 000000000..059534d5d
--- /dev/null
+++ b/keyboards/sawnsprojects/krush/krush60/solder/keymaps/60_ansi_arrow_splt_bs_7u/readme.md
@@ -0,0 +1 @@
# The keymap for krush60 solder layout ansi arrow, 7u spacebar & split backspace \ No newline at end of file
diff --git a/keyboards/sawnsprojects/krush/krush60/solder/keymaps/60_ansi_arrow_splt_bs_spc/keymap.c b/keyboards/sawnsprojects/krush/krush60/solder/keymaps/60_ansi_arrow_splt_bs_spc/keymap.c
new file mode 100644
index 000000000..8673ce02d
--- /dev/null
+++ b/keyboards/sawnsprojects/krush/krush60/solder/keymaps/60_ansi_arrow_splt_bs_spc/keymap.c
@@ -0,0 +1,35 @@
1/* Copyright 2021 SawnsProjects
2 *
3 * This program is free software: you can redistribute it and/or modify
4 * it under the terms of the GNU General Public License as published by
5 * the Free Software Foundation, either version 2 of the License, or
6 * (at your option) any later version.
7 *
8 * This program is distributed in the hope that it will be useful,
9 * but WITHOUT ANY WARRANTY; without even the implied warranty of
10 * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
11 * GNU General Public License for more details.
12 *
13 * You should have received a copy of the GNU General Public License
14 * along with this program. If not, see <http://www.gnu.org/licenses/>.
15 */
16
17#include QMK_KEYBOARD_H
18
19const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = {
20
21 [0] = LAYOUT_60_ansi_arrow_split_bs_spc(
22 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,
23 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,
24 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,
25 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,
26 KC_LCTL, KC_LGUI, KC_LALT, KC_SPC, KC_SPC, KC_SPC, MO(1), KC_LEFT, KC_DOWN, KC_RGHT
27 )
28 [1] = LAYOUT_60_ansi_arrow_split_bs_spc(
29 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, KC_TRNS,
30 KC_TRNS, RGB_TOG, RGB_MOD, RGB_HUI, RGB_HUD, RGB_SAI, RGB_SAD, RGB_VAI, RGB_VAD, KC_TRNS, KC_PSCR, KC_SLCK, KC_PAUS, KC_TRNS,
31 KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_INS, KC_HOME, KC_PGUP, KC_TRNS,
32 KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_END, KC_PGDN, KC_TRNS, KC_TRNS,
33 KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS
34 )
35};
diff --git a/keyboards/sawnsprojects/krush/krush60/solder/keymaps/60_ansi_arrow_splt_bs_spc/readme.md b/keyboards/sawnsprojects/krush/krush60/solder/keymaps/60_ansi_arrow_splt_bs_spc/readme.md
new file mode 100644
index 000000000..2355c409a
--- /dev/null
+++ b/keyboards/sawnsprojects/krush/krush60/solder/keymaps/60_ansi_arrow_splt_bs_spc/readme.md
@@ -0,0 +1 @@
# The keymap for krush60 solder layout ansi arrow, split spacebar & split backspace \ No newline at end of file
diff --git a/keyboards/sawnsprojects/krush/krush60/solder/keymaps/60_ansi_arrow_splt_spc/keymap.c b/keyboards/sawnsprojects/krush/krush60/solder/keymaps/60_ansi_arrow_splt_spc/keymap.c
new file mode 100644
index 000000000..1da11323e
--- /dev/null
+++ b/keyboards/sawnsprojects/krush/krush60/solder/keymaps/60_ansi_arrow_splt_spc/keymap.c
@@ -0,0 +1,37 @@
1/* Copyright 2021 SawnsProjects
2 *
3 * This program is free software: you can redistribute it and/or modify
4 * it under the terms of the GNU General Public License as published by
5 * the Free Software Foundation, either version 2 of the License, or
6 * (at your option) any later version.
7 *
8 * This program is distributed in the hope that it will be useful,
9 * but WITHOUT ANY WARRANTY; without even the implied warranty of
10 * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
11 * GNU General Public License for more details.
12 *
13 * You should have received a copy of the GNU General Public License
14 * along with this program. If not, see <http://www.gnu.org/licenses/>.
15 */
16
17#include QMK_KEYBOARD_H
18
19const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = {
20
21 [0] = LAYOUT_60_ansi_arrow_split_spc(
22 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,
23 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,
24 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,
25 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,
26 KC_LCTL, KC_LGUI, KC_LALT, KC_SPC, KC_SPC, KC_SPC, MO(1), KC_LEFT, KC_DOWN, KC_RGHT
27 )
28 [1] = LAYOUT_60_ansi_arrow_split_spc(
29 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,
30 KC_TRNS, RGB_TOG, RGB_MOD, RGB_HUI, RGB_HUD, RGB_SAI, RGB_SAD, RGB_VAI, RGB_VAD, KC_TRNS, KC_PSCR, KC_SLCK, KC_PAUS, KC_TRNS,
31 KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_INS, KC_HOME, KC_PGUP, KC_TRNS,
32 KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_END, KC_PGDN, KC_TRNS, KC_TRNS,
33 KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS
34 )
35};
36
37
diff --git a/keyboards/sawnsprojects/krush/krush60/solder/keymaps/60_ansi_arrow_splt_spc/readme.md b/keyboards/sawnsprojects/krush/krush60/solder/keymaps/60_ansi_arrow_splt_spc/readme.md
new file mode 100644
index 000000000..af2fce05c
--- /dev/null
+++ b/keyboards/sawnsprojects/krush/krush60/solder/keymaps/60_ansi_arrow_splt_spc/readme.md
@@ -0,0 +1 @@
# The keymap for krush60 solder layout ansi arrow & split spacebar \ No newline at end of file
diff --git a/keyboards/sawnsprojects/krush/krush60/solder/keymaps/60_ansi_splt_bs/keymap.c b/keyboards/sawnsprojects/krush/krush60/solder/keymaps/60_ansi_splt_bs/keymap.c
new file mode 100644
index 000000000..ff0fd21de
--- /dev/null
+++ b/keyboards/sawnsprojects/krush/krush60/solder/keymaps/60_ansi_splt_bs/keymap.c
@@ -0,0 +1,35 @@
1/* Copyright 2021 SawnsProjects
2 *
3 * This program is free software: you can redistribute it and/or modify
4 * it under the terms of the GNU General Public License as published by
5 * the Free Software Foundation, either version 2 of the License, or
6 * (at your option) any later version.
7 *
8 * This program is distributed in the hope that it will be useful,
9 * but WITHOUT ANY WARRANTY; without even the implied warranty of
10 * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
11 * GNU General Public License for more details.
12 *
13 * You should have received a copy of the GNU General Public License
14 * along with this program. If not, see <http://www.gnu.org/licenses/>.
15 */
16
17#include QMK_KEYBOARD_H
18
19const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = {
20
21 [0] = LAYOUT_60_ansi_split_bs(
22 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,
23 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,
24 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,
25 KC_LSFT, KC_Z, KC_X, KC_C, KC_V, KC_B, KC_N, KC_M, KC_COMM, KC_DOT, KC_SLSH, KC_RSFT,
26 KC_LCTL, KC_LGUI, KC_LALT, KC_SPC, KC_RALT, KC_RGUI, MO(1), KC_RCTL),
27
28 [0] = LAYOUT_60_ansi_split_bs(
29 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, KC_TRNS,
30 KC_TRNS, RGB_TOG, RGB_MOD, RGB_HUI, RGB_HUD, RGB_SAI, RGB_SAD, RGB_VAI, RGB_VAD, KC_TRNS, KC_PSCR, KC_SLCK, KC_PAUS, KC_TRNS,
31 KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_INS, KC_HOME, KC_PGUP, KC_TRNS,
32 KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_DEL, KC_END, KC_PGDN, KC_TRNS,
33 KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS)
34};
35
diff --git a/keyboards/sawnsprojects/krush/krush60/solder/keymaps/60_ansi_splt_bs/readme.md b/keyboards/sawnsprojects/krush/krush60/solder/keymaps/60_ansi_splt_bs/readme.md
new file mode 100644
index 000000000..80634c350
--- /dev/null
+++ b/keyboards/sawnsprojects/krush/krush60/solder/keymaps/60_ansi_splt_bs/readme.md
@@ -0,0 +1 @@
# The keymap for krush60 solder layout split backspace \ No newline at end of file
diff --git a/keyboards/sawnsprojects/krush/krush60/solder/keymaps/60_ansi_splt_bs_7u/keymap.c b/keyboards/sawnsprojects/krush/krush60/solder/keymaps/60_ansi_splt_bs_7u/keymap.c
new file mode 100644
index 000000000..431fb483f
--- /dev/null
+++ b/keyboards/sawnsprojects/krush/krush60/solder/keymaps/60_ansi_splt_bs_7u/keymap.c
@@ -0,0 +1,35 @@
1/* Copyright 2021 SawnsProjects
2 *
3 * This program is free software: you can redistribute it and/or modify
4 * it under the terms of the GNU General Public License as published by
5 * the Free Software Foundation, either version 2 of the License, or
6 * (at your option) any later version.
7 *
8 * This program is distributed in the hope that it will be useful,
9 * but WITHOUT ANY WARRANTY; without even the implied warranty of
10 * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
11 * GNU General Public License for more details.
12 *
13 * You should have received a copy of the GNU General Public License
14 * along with this program. If not, see <http://www.gnu.org/licenses/>.
15 */
16
17#include QMK_KEYBOARD_H
18
19const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = {
20
21 [0] = LAYOUT_60_ansi_split_bs_7u_spc(
22 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,
23 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,
24 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,
25 KC_LSFT, KC_Z, KC_X, KC_C, KC_V, KC_B, KC_N, KC_M, KC_COMM, KC_DOT, KC_SLSH, KC_RSFT,
26 KC_LCTL, KC_LGUI, KC_LALT, KC_SPC, KC_RALT, MO(1), KC_RCTL),
27
28 [0] = LAYOUT_60_ansi_split_bs_7u_spc(
29 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, KC_TRNS,
30 KC_TRNS, RGB_TOG, RGB_MOD, RGB_HUI, RGB_HUD, RGB_SAI, RGB_SAD, RGB_VAI, RGB_VAD, KC_TRNS, KC_PSCR, KC_SLCK, KC_PAUS, KC_TRNS,
31 KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_INS, KC_HOME, KC_PGUP, KC_TRNS,
32 KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS,KC_TRNS, KC_TRNS, KC_DEL, KC_END, KC_PGDN, KC_TRNS,
33 KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS)
34};
35
diff --git a/keyboards/sawnsprojects/krush/krush60/solder/keymaps/60_ansi_splt_bs_7u/readme.md b/keyboards/sawnsprojects/krush/krush60/solder/keymaps/60_ansi_splt_bs_7u/readme.md
new file mode 100644
index 000000000..70b3a8617
--- /dev/null
+++ b/keyboards/sawnsprojects/krush/krush60/solder/keymaps/60_ansi_splt_bs_7u/readme.md
@@ -0,0 +1 @@
# The keymap for krush60 solder layout 7u spacebar & split backspace \ No newline at end of file
diff --git a/keyboards/sawnsprojects/krush/krush60/solder/keymaps/60_ansi_splt_bs_spc/keymap.c b/keyboards/sawnsprojects/krush/krush60/solder/keymaps/60_ansi_splt_bs_spc/keymap.c
new file mode 100644
index 000000000..e3982e250
--- /dev/null
+++ b/keyboards/sawnsprojects/krush/krush60/solder/keymaps/60_ansi_splt_bs_spc/keymap.c
@@ -0,0 +1,35 @@
1/* Copyright 2021 SawnsProjects
2 *
3 * This program is free software: you can redistribute it and/or modify
4 * it under the terms of the GNU General Public License as published by
5 * the Free Software Foundation, either version 2 of the License, or
6 * (at your option) any later version.
7 *
8 * This program is distributed in the hope that it will be useful,
9 * but WITHOUT ANY WARRANTY; without even the implied warranty of
10 * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
11 * GNU General Public License for more details.
12 *
13 * You should have received a copy of the GNU General Public License
14 * along with this program. If not, see <http://www.gnu.org/licenses/>.
15 */
16
17#include QMK_KEYBOARD_H
18
19const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = {
20
21 [0] = LAYOUT_60_ansi_split_bs_spc(
22 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,
23 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,
24 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,
25 KC_LSFT, KC_Z, KC_X, KC_C, KC_V, KC_B, KC_N, KC_M, KC_COMM, KC_DOT, KC_SLSH, KC_RSFT,
26 KC_LCTL, KC_LGUI, KC_LALT, KC_SPC, KC_SPC, KC_SPC, KC_RALT, KC_RGUI, MO(1), KC_RCTL),
27
28 [1] = LAYOUT_60_ansi_split_bs_spc(
29 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, KC_TRNS,
30 KC_TRNS, RGB_TOG, RGB_MOD, RGB_HUI, RGB_HUD, RGB_SAI, RGB_SAD, RGB_VAI, RGB_VAD, KC_TRNS, KC_PSCR, KC_SLCK, KC_PAUS, KC_TRNS,
31 KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_INS, KC_HOME, KC_PGUP, KC_TRNS,
32 KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_DEL, KC_END, KC_PGDN, KC_TRNS,
33 KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS)
34};
35
diff --git a/keyboards/sawnsprojects/krush/krush60/solder/keymaps/60_ansi_splt_bs_spc/readme.md b/keyboards/sawnsprojects/krush/krush60/solder/keymaps/60_ansi_splt_bs_spc/readme.md
new file mode 100644
index 000000000..6e1981c3c
--- /dev/null
+++ b/keyboards/sawnsprojects/krush/krush60/solder/keymaps/60_ansi_splt_bs_spc/readme.md
@@ -0,0 +1 @@
# The keymap for krush60 solder layout split spacebar & split backspace \ No newline at end of file
diff --git a/keyboards/sawnsprojects/krush/krush60/solder/keymaps/60_ansi_splt_spc/keymap.c b/keyboards/sawnsprojects/krush/krush60/solder/keymaps/60_ansi_splt_spc/keymap.c
new file mode 100644
index 000000000..abcd186cc
--- /dev/null
+++ b/keyboards/sawnsprojects/krush/krush60/solder/keymaps/60_ansi_splt_spc/keymap.c
@@ -0,0 +1,35 @@
1/* Copyright 2021 SawnsProjects
2 *
3 * This program is free software: you can redistribute it and/or modify
4 * it under the terms of the GNU General Public License as published by
5 * the Free Software Foundation, either version 2 of the License, or
6 * (at your option) any later version.
7 *
8 * This program is distributed in the hope that it will be useful,
9 * but WITHOUT ANY WARRANTY; without even the implied warranty of
10 * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
11 * GNU General Public License for more details.
12 *
13 * You should have received a copy of the GNU General Public License
14 * along with this program. If not, see <http://www.gnu.org/licenses/>.
15 */
16
17#include QMK_KEYBOARD_H
18
19const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = {
20
21 [0] = LAYOUT_60_ansi_split_spc(
22 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,
23 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,
24 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,
25 KC_LSFT, KC_Z, KC_X, KC_C, KC_V, KC_B, KC_N, KC_M, KC_COMM, KC_DOT, KC_SLSH, KC_RSFT,
26 KC_LCTL, KC_LGUI, KC_LALT, KC_SPC, KC_SPC, KC_SPC, KC_RALT, KC_RGUI, MO(1), KC_RCTL),
27
28 [1] = LAYOUT_60_ansi_split_spc(
29 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,
30 KC_TRNS, RGB_TOG, RGB_MOD, RGB_HUI, RGB_HUD, RGB_SAI, RGB_SAD, RGB_VAI, RGB_VAD, KC_TRNS, KC_PSCR, KC_SLCK, KC_PAUS, KC_TRNS,
31 KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_INS, KC_HOME, KC_PGUP, KC_TRNS,
32 KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_DEL, KC_END, KC_PGDN, KC_TRNS,
33 KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS)
34};
35
diff --git a/keyboards/sawnsprojects/krush/krush60/solder/keymaps/60_ansi_splt_spc/readme.md b/keyboards/sawnsprojects/krush/krush60/solder/keymaps/60_ansi_splt_spc/readme.md
new file mode 100644
index 000000000..80634c350
--- /dev/null
+++ b/keyboards/sawnsprojects/krush/krush60/solder/keymaps/60_ansi_splt_spc/readme.md
@@ -0,0 +1 @@
# The keymap for krush60 solder layout split backspace \ No newline at end of file
diff --git a/keyboards/sawnsprojects/krush/krush60/solder/keymaps/60_tsangan/keymap.c b/keyboards/sawnsprojects/krush/krush60/solder/keymaps/60_tsangan/keymap.c
new file mode 100644
index 000000000..cc8067cc9
--- /dev/null
+++ b/keyboards/sawnsprojects/krush/krush60/solder/keymaps/60_tsangan/keymap.c
@@ -0,0 +1,36 @@
1/* Copyright 2021 SawnsProjects
2 *
3 * This program is free software: you can redistribute it and/or modify
4 * it under the terms of the GNU General Public License as published by
5 * the Free Software Foundation, either version 2 of the License, or
6 * (at your option) any later version.
7 *
8 * This program is distributed in the hope that it will be useful,
9 * but WITHOUT ANY WARRANTY; without even the implied warranty of
10 * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
11 * GNU General Public License for more details.
12 *
13 * You should have received a copy of the GNU General Public License
14 * along with this program. If not, see <http://www.gnu.org/licenses/>.
15 */
16
17#include QMK_KEYBOARD_H
18
19const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = {
20
21 [0] = LAYOUT_60_ansi_tsangan(
22 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,
23 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,
24 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,
25 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),
26 KC_LCTL, KC_LGUI, KC_LALT, KC_SPC, KC_RALT, KC_RGUI, KC_RCTL
27 )
28 [1] = LAYOUT_60_ansi_tsangan(
29 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,
30 KC_TRNS, RGB_TOG, RGB_MOD, RGB_HUI, RGB_HUD, RGB_SAI, RGB_SAD, RGB_VAI, RGB_VAD, KC_TRNS, KC_PSCR, KC_SLCK, KC_PAUS, KC_TRNS,
31 KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_INS, KC_HOME, KC_PGUP, KC_TRNS,
32 KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_END, KC_PGDN, KC_TRNS, KC_TRNS,
33 KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS
34 )
35};
36
diff --git a/keyboards/sawnsprojects/krush/krush60/solder/keymaps/60_tsangan/readme.md b/keyboards/sawnsprojects/krush/krush60/solder/keymaps/60_tsangan/readme.md
new file mode 100644
index 000000000..5bdb4a102
--- /dev/null
+++ b/keyboards/sawnsprojects/krush/krush60/solder/keymaps/60_tsangan/readme.md
@@ -0,0 +1 @@
# The keymap for krush60 solder Tsangan \ No newline at end of file
diff --git a/keyboards/sawnsprojects/krush/krush60/solder/keymaps/60_tsangan_splt_bs/keymap.c b/keyboards/sawnsprojects/krush/krush60/solder/keymaps/60_tsangan_splt_bs/keymap.c
new file mode 100644
index 000000000..9fba9e6bf
--- /dev/null
+++ b/keyboards/sawnsprojects/krush/krush60/solder/keymaps/60_tsangan_splt_bs/keymap.c
@@ -0,0 +1,35 @@
1/* Copyright 2021 REPLACE_WITH_YOUR_NAME
2 *
3 * This program is free software: you can redistribute it and/or modify
4 * it under the terms of the GNU General Public License as published by
5 * the Free Software Foundation, either version 2 of the License, or
6 * (at your option) any later version.
7 *
8 * This program is distributed in the hope that it will be useful,
9 * but WITHOUT ANY WARRANTY; without even the implied warranty of
10 * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
11 * GNU General Public License for more details.
12 *
13 * You should have received a copy of the GNU General Public License
14 * along with this program. If not, see <http://www.gnu.org/licenses/>.
15 */
16
17#include QMK_KEYBOARD_H
18
19const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = {
20
21 [0] = LAYOUT_60_ansi_tsangan_split_bs(
22 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,
23 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,
24 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,
25 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),
26 KC_LCTL, KC_LGUI, KC_LALT, KC_SPC, KC_RALT, KC_RGUI, KC_RCTL
27 )
28 [1] = LAYOUT_60_ansi_tsangan_split_bs(
29 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, KC_TRNS,
30 KC_TRNS, RGB_TOG, RGB_MOD, RGB_HUI, RGB_HUD, RGB_SAI, RGB_SAD, RGB_VAI, RGB_VAD, KC_TRNS, KC_PSCR, KC_SLCK, KC_PAUS, KC_TRNS,
31 KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_INS, KC_HOME, KC_PGUP, KC_TRNS,
32 KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_END, KC_PGDN, KC_TRNS, KC_TRNS,
33 KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS
34 )
35};
diff --git a/keyboards/sawnsprojects/krush/krush60/solder/keymaps/60_tsangan_splt_bs/readme.md b/keyboards/sawnsprojects/krush/krush60/solder/keymaps/60_tsangan_splt_bs/readme.md
new file mode 100644
index 000000000..03c0444cc
--- /dev/null
+++ b/keyboards/sawnsprojects/krush/krush60/solder/keymaps/60_tsangan_splt_bs/readme.md
@@ -0,0 +1 @@
# The keymap for krush60 solder Tsangan & split backspace \ No newline at end of file
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 000000000..f1ef9911d
--- /dev/null
+++ b/keyboards/sawnsprojects/krush/krush60/solder/keymaps/default/keymap.c
@@ -0,0 +1,40 @@
1/* Copyright 2021 REPLACE_WITH_YOUR_NAME
2 *
3 * This program is free software: you can redistribute it and/or modify
4 * it under the terms of the GNU General Public License as published by
5 * the Free Software Foundation, either version 2 of the License, or
6 * (at your option) any later version.
7 *
8 * This program is distributed in the hope that it will be useful,
9 * but WITHOUT ANY WARRANTY; without even the implied warranty of
10 * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
11 * GNU General Public License for more details.
12 *
13 * You should have received a copy of the GNU General Public License
14 * along with this program. If not, see <http://www.gnu.org/licenses/>.
15 */
16
17#include QMK_KEYBOARD_H
18
19const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = {
20 /*
21 * ┌───┬───┬───┬───┬───┬───┬───┬───┬───┬───┬───┬───┬───┬───────┐
22 * │ ` │ 1 │ 2 │ 3 │ 4 │ 5 │ 6 │ 7 │ 8 │ 9 │ 0 │ - │ = │ Backsp│
23 * ├───┴─┬─┴─┬─┴─┬─┴─┬─┴─┬─┴─┬─┴─┬─┴─┬─┴─┬─┴─┬─┴─┬─┴─┬─┴─┬─────┤
24 * │ Tab │ Q │ W │ E │ R │ T │ Y │ U │ I │ O │ P │ [ │ ] │  \  │
25 * ├─────┴┬──┴┬──┴┬──┴┬──┴┬──┴┬──┴┬──┴┬──┴┬──┴┬──┴┬──┴┬──┴─────┤
26 * │ Caps │ A │ S │ D │ F │ G │ H │ J │ K │ L │ ; │ ' │  Enter │
27 * ├──────┴─┬─┴─┬─┴─┬─┴─┬─┴─┬─┴─┬─┴─┬─┴─┬─┴─┬─┴─┬─┴─┬─┴────────┤
28 * │ Shift  │ Z │ X │ C │ V │ B │ N │ M │ , │ . │ / │    Shift │
29 * ├────┬───┴┬──┴─┬─┴───┴───┴───┴───┴───┴──┬┴───┼───┴┬────┬────┤
30 * │Ctrl│GUI │Alt │                        │ Alt│ GUI│Menu│Ctrl│
31 * └────┴────┴────┴────────────────────────┴────┴────┴────┴────┘
32 */
33 [0] = LAYOUT_60_ansi(
34 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,
35 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,
36 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,
37 KC_LSFT, KC_Z, KC_X, KC_C, KC_V, KC_B, KC_N, KC_M, KC_COMM, KC_DOT, KC_SLSH, KC_RSFT,
38 KC_LCTL, KC_LGUI, KC_LALT, KC_SPC, KC_RALT, KC_RGUI, KC_APP, KC_RCTL
39 )
40};
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 000000000..88157e507
--- /dev/null
+++ b/keyboards/sawnsprojects/krush/krush60/solder/keymaps/default/readme.md
@@ -0,0 +1 @@
# The keymap default for krush60 \ No newline at end of file
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 000000000..a6e005bbb
--- /dev/null
+++ b/keyboards/sawnsprojects/krush/krush60/solder/keymaps/via/keymap.c
@@ -0,0 +1,49 @@
1/* Copyright 2021 REPLACE_WITH_YOUR_NAME
2 *
3 * This program is free software: you can redistribute it and/or modify
4 * it under the terms of the GNU General Public License as published by
5 * the Free Software Foundation, either version 2 of the License, or
6 * (at your option) any later version.
7 *
8 * This program is distributed in the hope that it will be useful,
9 * but WITHOUT ANY WARRANTY; without even the implied warranty of
10 * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
11 * GNU General Public License for more details.
12 *
13 * You should have received a copy of the GNU General Public License
14 * along with this program. If not, see <http://www.gnu.org/licenses/>.
15 */
16
17#include QMK_KEYBOARD_H
18
19const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = {
20
21 [0] = LAYOUT_all(
22 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,
23 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,
24 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,
25 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_RSFT, KC_SLSH,
26 KC_LCTL, KC_LGUI, KC_LALT, KC_SPC, KC_SPC, KC_SPC, KC_RALT, MO(0), KC_LEFT, KC_LALT, KC_LCTL
27 ),
28 [1] = LAYOUT_all(
29 _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______,
30 _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______,
31 _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______,
32 _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______,
33 _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______
34 ),
35 [2] = LAYOUT_all(
36 _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______,
37 _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______,
38 _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______,
39 _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______,
40 _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______
41 ),
42 [3] = LAYOUT_all(
43 _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______,
44 _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______,
45 _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______,
46 _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______,
47 _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______
48 ),
49};
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 000000000..8f8d7a19b
--- /dev/null
+++ b/keyboards/sawnsprojects/krush/krush60/solder/keymaps/via/readme.md
@@ -0,0 +1 @@
# The keymap VIA for krush60 \ No newline at end of file
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 000000000..036bd6d1c
--- /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 000000000..36da34d37
--- /dev/null
+++ b/keyboards/sawnsprojects/krush/krush60/solder/readme.md
@@ -0,0 +1,15 @@
1# Krush60 solder
2
3![Krush60](https://cdn.discordapp.com/attachments/898507964942536715/906171092916391956/252763374_2899749087003964_8763371038132517512_n.png)
4
5A 60% keyboard PCB made and sold by SawnsProjects with Nuxros in [Facebook](https://www.facebook.com/groups/vnmkmarket/posts/1412997345762674).
6
7* Keyboard Maintainer: [Mai The San](https://github.com/MaiTheSan)
8* Hardware Supported: 60% keyboard case
9* Hardware Availability: [Facebook](https://www.facebook.com/groups/vnmkmarket/posts/1412997345762674)
10
11Make example for this keyboard (after setting up your build environment):
12
13 make sawnsprojects/krush60/solder:default
14
15See 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 000000000..439db87a5
--- /dev/null
+++ b/keyboards/sawnsprojects/krush/krush60/solder/rules.mk
@@ -0,0 +1,22 @@
1# MCU name
2MCU = atmega32u4
3
4# Bootloader selection
5BOOTLOADER = atmel-dfu
6
7# Build Options
8# change yes to no to disable
9#
10BOOTMAGIC_ENABLE = yes # Enable Bootmagic Lite
11MOUSEKEY_ENABLE = yes # Mouse keys
12EXTRAKEY_ENABLE = yes # Audio control and System control
13CONSOLE_ENABLE = yes # Console for debug
14COMMAND_ENABLE = no # Commands for debug and configuration
15# Do not enable SLEEP_LED_ENABLE. it uses the same timer as BACKLIGHT_ENABLE
16SLEEP_LED_ENABLE = no # Breathing sleep LED during USB suspend
17# if this doesn't work, see here: https://github.com/tmk/tmk_keyboard/wiki/FAQ#nkro-doesnt-work
18NKRO_ENABLE = no # USB Nkey Rollover
19BACKLIGHT_ENABLE = no # Enable keyboard backlight functionality
20RGBLIGHT_ENABLE = yes # Enable keyboard RGB underglow
21
22LAYOUTS = 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 000000000..2fb9b24f8
--- /dev/null
+++ b/keyboards/sawnsprojects/krush/krush60/solder/solder.c
@@ -0,0 +1,17 @@
1/* Copyright 2021 SawnsProjects
2 *
3 * This program is free software: you can redistribute it and/or modify
4 * it under the terms of the GNU General Public License as published by
5 * the Free Software Foundation, either version 2 of the License, or
6 * (at your option) any later version.
7 *
8 * This program is distributed in the hope that it will be useful,
9 * but WITHOUT ANY WARRANTY; without even the implied warranty of
10 * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
11 * GNU General Public License for more details.
12 *
13 * You should have received a copy of the GNU General Public License
14 * along with this program. If not, see <http://www.gnu.org/licenses/>.
15 */
16
17#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 000000000..d4847b912
--- /dev/null
+++ b/keyboards/sawnsprojects/krush/krush60/solder/solder.h
@@ -0,0 +1,335 @@
1/* Copyright 2021 SawnsProjects
2 *
3 * This program is free software: you can redistribute it and/or modify
4 * it under the terms of the GNU General Public License as published by
5 * the Free Software Foundation, either version 2 of the License, or
6 * (at your option) any later version.
7 *
8 * This program is distributed in the hope that it will be useful,
9 * but WITHOUT ANY WARRANTY; without even the implied warranty of
10 * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
11 * GNU General Public License for more details.
12 *
13 * You should have received a copy of the GNU General Public License
14 * along with this program. If not, see <http://www.gnu.org/licenses/>.
15 */
16
17#pragma once
18
19#include "quantum.h"
20#define XXX KC_NO
21//x
22#define LAYOUT_all( \
23 K00, K10, K01, K11, K02, K12, K03, K13, K04, K14, K05, K15, K06, K26, K17, \
24 K20, K30, K21, K31, K22, K32, K23, K33, K24, K34, K25, K35, K36, K46, \
25 K40, K50, K41, K51, K42, K52, K43, K53, K44, K54, K45, K55, K47, \
26 K60, K70, K61, K71, K62, K72, K63, K73, K64, K74, K65, K75, K66, K77, \
27 K80, K90, K81, K82, K92, K84, K94, K85, K86, K95, K97 \
28) { \
29 { K00, K01, K02, K03, K04, K05, K06, XXX }, \
30 { K10, K11, K12, K13, K14, K15, XXX, K17 }, \
31 { K20, K21, K22, K23, K24, K25, K26, XXX }, \
32 { K30, K31, K32, K33, K34, K35, K36, XXX }, \
33 { K40, K41, K42, K43, K44, K45, K46, K47 }, \
34 { K50, K51, K52, K53, K54, K55, XXX, XXX }, \
35 { K60, K61, K62, K63, K64, K65, K66, XXX }, \
36 { K70, K71, K72, K73, K74, K75, XXX, K77 }, \
37 { K80, K81, K82, XXX, K84, K85, K86, XXX }, \
38 { K90, XXX, K92, XXX, K94, K95, XXX, K97 }, \
39}
40
41//LAYOUT_60_ansi
42//x
43#define LAYOUT_60_ansi( \
44 K00, K10, K01, K11, K02, K12, K03, K13, K04, K14, K05, K15, K06, K26, \
45 K20, K30, K21, K31, K22, K32, K23, K33, K24, K34, K25, K35, K36, K46, \
46 K40, K50, K41, K51, K42, K52, K43, K53, K44, K54, K45, K55, K47, \
47 K60, K70, K61, K71, K62, K72, K63, K73, K64, K74, K65, K66, \
48 K80, K90, K81, K92, K94, K85, K95, K97 \
49) { \
50 { K00, K01, K02, K03, K04, K05, K06, XXX }, \
51 { K10, K11, K12, K13, K14, K15, XXX, xxx }, \
52 { K20, K21, K22, K23, K24, K25, K26, XXX }, \
53 { K30, K31, K32, K33, K34, K35, K36, XXX }, \
54 { K40, K41, K42, K43, K44, K45, K46, K47 }, \
55 { K50, K51, K52, K53, K54, K55, XXX, XXX }, \
56 { K60, K61, K62, K63, K64, K65, K66, XXX }, \
57 { K70, K71, K72, K73, K74, xxx, XXX, xxx }, \
58 { K80, K81, xxx, XXX, xxx, K85, xxx, XXX }, \
59 { K90, XXX, K92, XXX, K94, K95, XXX, K97 }, \
60}
61//LAYOUT_60_iso
62//x
63#define LAYOUT_60_iso(\
64 K00, K10, K01, K11, K02, K12, K03, K13, K04, K14, K05, K15, K06, K26, \
65 K20, K30, K21, K31, K22, K32, K23, K33, K24, K34, K25, K35, K36, K46, \
66 K40, K50, K41, K51, K42, K52, K43, K53, K44, K54, K45, K55, K47, \
67 K60, K70, K61, K71, K62, K72, K63, K73, K64, K74, K65, K66, \
68 K80, K90, K81, K92, K94, K85, K95, K97 \
69) { \
70 { K00, K01, K02, K03, K04, K05, K06, XXX }, \
71 { K10, K11, K12, K13, K14, K15, XXX, xxx }, \
72 { K20, K21, K22, K23, K24, K25, K26, XXX }, \
73 { K30, K31, K32, K33, K34, K35, K36, XXX }, \
74 { K40, K41, K42, K43, K44, K45, K46, K47 }, \
75 { K50, K51, K52, K53, K54, K55, XXX, XXX }, \
76 { K60, K61, K62, K63, K64, K65, K66, XXX }, \
77 { K70, K71, K72, K73, K74, xxx, XXX, xxx }, \
78 { K80, K81, xxx, XXX, xxx, K85, xxx, XXX }, \
79 { K90, XXX, K92, XXX, K94, K95, XXX, K97 }, \
80}
81//LAYOUT_60_ansi_split_bs
82#define LAYOUT_60_ansi_split_bs( \
83 K00, K10, K01, K11, K02, K12, K03, K13, K04, K14, K05, K15, K06, K26, K17, \
84 K20, K30, K21, K31, K22, K32, K23, K33, K24, K34, K25, K35, K36, K46, \
85 K40, K50, K41, K51, K42, K52, K43, K53, K44, K54, K45, K55, K47, \
86 K60, K70, K61, K71, K62, K72, K63, K73, K64, K74, K65, K66, \
87 K80, K90, K81, K92, K94, K85, K95, K97 \
88) { \
89 { K00, K01, K02, K03, K04, K05, K06, XXX }, \
90 { K10, K11, K12, K13, K14, K15, XXX, K17 }, \
91 { K20, K21, K22, K23, K24, K25, K26, XXX }, \
92 { K30, K31, K32, K33, K34, K35, K36, XXX }, \
93 { K40, K41, K42, K43, K44, K45, K46, K47 }, \
94 { K50, K51, K52, K53, K54, K55, XXX, XXX }, \
95 { K60, K61, K62, K63, K64, K65, K66, XXX }, \
96 { K70, K71, K72, K73, K74, xxx, XXX, xxx }, \
97 { K80, K81, xxx, XXX, xxx, K85, xxx, XXX }, \
98 { K90, XXX, K92, XXX, K94, K95, XXX, K97 }, \
99}
100//LAYOUT_60_ansi_split_spc
101#define LAYOUT_60_ansi_split_spc( \
102 K00, K10, K01, K11, K02, K12, K03, K13, K04, K14, K05, K15, K06, K26, \
103 K20, K30, K21, K31, K22, K32, K23, K33, K24, K34, K25, K35, K36, K46, \
104 K40, K50, K41, K51, K42, K52, K43, K53, K44, K54, K45, K55, K47, \
105 K60, K70, K61, K71, K62, K72, K63, K73, K64, K74, K65, K66, \
106 K80, K90, K81, K82, K92, K84, K94, K85, K95, K97 \
107) { \
108 { K00, K01, K02, K03, K04, K05, K06, XXX }, \
109 { K10, K11, K12, K13, K14, K15, XXX, xxx }, \
110 { K20, K21, K22, K23, K24, K25, K26, XXX }, \
111 { K30, K31, K32, K33, K34, K35, K36, XXX }, \
112 { K40, K41, K42, K43, K44, K45, K46, K47 }, \
113 { K50, K51, K52, K53, K54, K55, XXX, XXX }, \
114 { K60, K61, K62, K63, K64, K65, K66, XXX }, \
115 { K70, K71, K72, K73, K74, xxx, XXX, xxx }, \
116 { K80, K81, K82, XXX, K84, K85, xxx, XXX }, \
117 { K90, XXX, K92, XXX, K94, K95, XXX, K97 }, \
118}
119//LAYOUT_60_ansi_split_bs_spc
120#define LAYOUT_60_ansi_split_bs_spc( \
121 K00, K10, K01, K11, K02, K12, K03, K13, K04, K14, K05, K15, K06, K26, K17, \
122 K20, K30, K21, K31, K22, K32, K23, K33, K24, K34, K25, K35, K36, K46, \
123 K40, K50, K41, K51, K42, K52, K43, K53, K44, K54, K45, K55, K47, \
124 K60, K70, K61, K71, K62, K72, K63, K73, K64, K74, K65, K66, \
125 K80, K90, K81, K82, K92, K84, K94, K85, K95, K97 \
126) { \
127 { K00, K01, K02, K03, K04, K05, K06, XXX }, \
128 { K10, K11, K12, K13, K14, K15, XXX, K17 }, \
129 { K20, K21, K22, K23, K24, K25, K26, XXX }, \
130 { K30, K31, K32, K33, K34, K35, K36, XXX }, \
131 { K40, K41, K42, K43, K44, K45, K46, K47 }, \
132 { K50, K51, K52, K53, K54, K55, XXX, XXX }, \
133 { K60, K61, K62, K63, K64, K65, K66, XXX }, \
134 { K70, K71, K72, K73, K74, xxx, XXX, xxx }, \
135 { K80, K81, K82, XXX, K84, K85, xxx, XXX }, \
136 { K90, XXX, K92, XXX, K94, K95, XXX, K97 }, \
137}
138//LAYOUT_60_ansi_7u_spc
139#define LAYOUT_60_ansi_7u_spc( \
140 K00, K10, K01, K11, K02, K12, K03, K13, K04, K14, K05, K15, K06, K26, \
141 K20, K30, K21, K31, K22, K32, K23, K33, K24, K34, K25, K35, K36, K46, \
142 K40, K50, K41, K51, K42, K52, K43, K53, K44, K54, K45, K55, K47, \
143 K60, K70, K61, K71, K62, K72, K63, K73, K64, K74, K65, K66, \
144 K80, K90, K81, K92, K85, K95, K97 \
145) { \
146 { K00, K01, K02, K03, K04, K05, K06, XXX }, \
147 { K10, K11, K12, K13, K14, K15, XXX, xxx }, \
148 { K20, K21, K22, K23, K24, K25, K26, XXX }, \
149 { K30, K31, K32, K33, K34, K35, K36, XXX }, \
150 { K40, K41, K42, K43, K44, K45, K46, K47 }, \
151 { K50, K51, K52, K53, K54, K55, XXX, XXX }, \
152 { K60, K61, K62, K63, K64, K65, K66, XXX }, \
153 { K70, K71, K72, K73, K74, xxx, XXX, xxx }, \
154 { K80, K81, xxx, XXX, xxx, K85, xxx, XXX }, \
155 { K90, XXX, K92, XXX, xxx, K95, XXX, K97 }, \
156}
157//LAYOUT_60_ansi_split_7u_spc
158#define LAYOUT_60_ansi_split_bs_7u_spc( \
159 K00, K10, K01, K11, K02, K12, K03, K13, K04, K14, K05, K15, K06, K26, K17, \
160 K20, K30, K21, K31, K22, K32, K23, K33, K24, K34, K25, K35, K36, K46, \
161 K40, K50, K41, K51, K42, K52, K43, K53, K44, K54, K45, K55, K47, \
162 K60, K70, K61, K71, K62, K72, K63, K73, K64, K74, K65, K66, \
163 K80, K90, K81, K92, K85, K95, K97 \
164) { \
165 { K00, K01, K02, K03, K04, K05, K06, XXX }, \
166 { K10, K11, K12, K13, K14, K15, XXX, K17 }, \
167 { K20, K21, K22, K23, K24, K25, K26, XXX }, \
168 { K30, K31, K32, K33, K34, K35, K36, XXX }, \
169 { K40, K41, K42, K43, K44, K45, K46, K47 }, \
170 { K50, K51, K52, K53, K54, K55, XXX, XXX }, \
171 { K60, K61, K62, K63, K64, K65, K66, XXX }, \
172 { K70, K71, K72, K73, K74, xxx, XXX, xxx }, \
173 { K80, K81, xxx, XXX, xxx, K85, xxx, XXX }, \
174 { K90, XXX, K92, XXX, xxx, K95, XXX, K97 }, \
175}
176//LAYOUT_60_ansi_arrow_split_bs
177#define LAYOUT_60_ansi_arrow_split_bs( \
178 K00, K10, K01, K11, K02, K12, K03, K13, K04, K14, K05, K15, K06, K26, K17, \
179 K20, K30, K21, K31, K22, K32, K23, K33, K24, K34, K25, K35, K36, K46, \
180 K40, K50, K41, K51, K42, K52, K43, K53, K44, K54, K45, K55, K47, \
181 K60, K70, K61, K71, K62, K72, K63, K73, K64, K74, K75, K66, K77, \
182 K80, K90, K81, K92, K94, K85, K86, K95, K97 \
183) { \
184 { K00, K01, K02, K03, K04, K05, K06, XXX }, \
185 { K10, K11, K12, K13, K14, K15, XXX, K17 }, \
186 { K20, K21, K22, K23, K24, K25, K26, XXX }, \
187 { K30, K31, K32, K33, K34, K35, K36, XXX }, \
188 { K40, K41, K42, K43, K44, K45, K46, K47 }, \
189 { K50, K51, K52, K53, K54, K55, XXX, XXX }, \
190 { K60, K61, K62, K63, K64, xxx, K66, XXX }, \
191 { K70, K71, K72, K73, K74, K75, XXX, K77 }, \
192 { K80, K81, xxx, XXX, xxx, K85, K86, XXX }, \
193 { K90, XXX, K92, XXX, K94, K95, XXX, K97 }, \
194}
195//LAYOUT_60_ansi_arrow_split_spc
196#define LAYOUT_60_ansi_arrow_split_spc( \
197 K00, K10, K01, K11, K02, K12, K03, K13, K04, K14, K05, K15, K06, K26, \
198 K20, K30, K21, K31, K22, K32, K23, K33, K24, K34, K25, K35, K36, K46, \
199 K40, K50, K41, K51, K42, K52, K43, K53, K44, K54, K45, K55, K47, \
200 K60, K70, K61, K71, K62, K72, K63, K73, K64, K74, K75, K66, K77, \
201 K80, K90, K81, K82, K92, K84, K94, K85, K86, K95, K97 \
202) { \
203 { K00, K01, K02, K03, K04, K05, K06, XXX }, \
204 { K10, K11, K12, K13, K14, K15, XXX, xxx }, \
205 { K20, K21, K22, K23, K24, K25, K26, XXX }, \
206 { K30, K31, K32, K33, K34, K35, K36, XXX }, \
207 { K40, K41, K42, K43, K44, K45, K46, K47 }, \
208 { K50, K51, K52, K53, K54, K55, XXX, XXX }, \
209 { K60, K61, K62, K63, K64, xxx, K66, XXX }, \
210 { K70, K71, K72, K73, K74, K75, XXX, K77 }, \
211 { K80, K81, K82, XXX, K84, K85, K86, XXX }, \
212 { K90, XXX, K92, XXX, K94, K95, XXX, K97 }, \
213}
214//LAYOUT_60_ansi_arrow_split_bs_spc
215#define LAYOUT_60_ansi_arrow_split_bs_spc( \
216 K00, K10, K01, K11, K02, K12, K03, K13, K04, K14, K05, K15, K06, K26, K17, \
217 K20, K30, K21, K31, K22, K32, K23, K33, K24, K34, K25, K35, K36, K46, \
218 K40, K50, K41, K51, K42, K52, K43, K53, K44, K54, K45, K55, K47, \
219 K60, K70, K61, K71, K62, K72, K63, K73, K64, K74, K75, K66, K77, \
220 K80, K90, K81, K82, K92, K84, K94, K85, K86, K95, K97 \
221) { \
222 { K00, K01, K02, K03, K04, K05, K06, XXX }, \
223 { K10, K11, K12, K13, K14, K15, XXX, K17 }, \
224 { K20, K21, K22, K23, K24, K25, K26, XXX }, \
225 { K30, K31, K32, K33, K34, K35, K36, XXX }, \
226 { K40, K41, K42, K43, K44, K45, K46, K47 }, \
227 { K50, K51, K52, K53, K54, K55, XXX, XXX }, \
228 { K60, K61, K62, K63, K64, xxx, K66, XXX }, \
229 { K70, K71, K72, K73, K74, K75, XXX, K77 }, \
230 { K80, K81, K82, XXX, K84, K85, K86, XXX }, \
231 { K90, XXX, K92, XXX, K94, K95, XXX, K97 }, \
232}
233//LAYOUT_60_ansi_arrow_7u_spc
234#define LAYOUT_60_ansi_arrow_7u_spc( \
235 K00, K10, K01, K11, K02, K12, K03, K13, K04, K14, K05, K15, K06, K26, \
236 K20, K30, K21, K31, K22, K32, K23, K33, K24, K34, K25, K35, K36, K46, \
237 K40, K50, K41, K51, K42, K52, K43, K53, K44, K54, K45, K55, K47, \
238 K60, K70, K61, K71, K62, K72, K63, K73, K64, K74, K75, K66, K77, \
239 K80, K90, K81, K92, K85, K86, K95, K97 \
240) { \
241 { K00, K01, K02, K03, K04, K05, K06, XXX }, \
242 { K10, K11, K12, K13, K14, K15, XXX, xxx }, \
243 { K20, K21, K22, K23, K24, K25, K26, XXX }, \
244 { K30, K31, K32, K33, K34, K35, K36, XXX }, \
245 { K40, K41, K42, K43, K44, K45, K46, K47 }, \
246 { K50, K51, K52, K53, K54, K55, XXX, XXX }, \
247 { K60, K61, K62, K63, K64, xxx, K66, XXX }, \
248 { K70, K71, K72, K73, K74, K75, XXX, K77 }, \
249 { K80, K81, xxx, XXX, xxx, K85, K86, XXX }, \
250 { K90, XXX, K92, XXX, xxx, K95, XXX, K97 }, \
251}
252//LAYOUT_60_ansi_arrow
253//x
254#define LAYOUT_60_ansi_arrow( \
255 K00, K10, K01, K11, K02, K12, K03, K13, K04, K14, K05, K15, K06, K26, \
256 K20, K30, K21, K31, K22, K32, K23, K33, K24, K34, K25, K35, K36, K46, \
257 K40, K50, K41, K51, K42, K52, K43, K53, K44, K54, K45, K55, K47, \
258 K60, K70, K61, K71, K62, K72, K63, K73, K64, K74, K75, K66, K77, \
259 K80, K90, K81, K92, K94, K85, K86, K95, K97 \
260) { \
261 { K00, K01, K02, K03, K04, K05, K06, XXX }, \
262 { K10, K11, K12, K13, K14, K15, XXX, xxx }, \
263 { K20, K21, K22, K23, K24, K25, K26, XXX }, \
264 { K30, K31, K32, K33, K34, K35, K36, XXX }, \
265 { K40, K41, K42, K43, K44, K45, K46, K47 }, \
266 { K50, K51, K52, K53, K54, K55, XXX, XXX }, \
267 { K60, K61, K62, K63, K64, xxx, K66, XXX }, \
268 { K70, K71, K72, K73, K74, K75, XXX, K77 }, \
269 { K80, K81, xxx, XXX, xxx, K85, K86, XXX }, \
270 { K90, XXX, K92, XXX, K94, K95, XXX, K97 }, \
271}
272//x
273//LAYOUT_60_ansi_arrow_split_bs_7u_spc
274#define LAYOUT_60_ansi_arrow_split_bs_7u_spc( \
275 K00, K10, K01, K11, K02, K12, K03, K13, K04, K14, K05, K15, K06, K26, K17, \
276 K20, K30, K21, K31, K22, K32, K23, K33, K24, K34, K25, K35, K36, K46, \
277 K40, K50, K41, K51, K42, K52, K43, K53, K44, K54, K45, K55, K47, \
278 K60, K70, K61, K71, K62, K72, K63, K73, K64, K74, K75, K66, K77, \
279 K80, K90, K81, K92, K85, K86, K95, K97 \
280) { \
281 { K00, K01, K02, K03, K04, K05, K06, XXX }, \
282 { K10, K11, K12, K13, K14, K15, XXX, K17 }, \
283 { K20, K21, K22, K23, K24, K25, K26, XXX }, \
284 { K30, K31, K32, K33, K34, K35, K36, XXX }, \
285 { K40, K41, K42, K43, K44, K45, K46, K47 }, \
286 { K50, K51, K52, K53, K54, K55, XXX, XXX }, \
287 { K60, K61, K62, K63, K64, xxx, K66, XXX }, \
288 { K70, K71, K72, K73, K74, K75, XXX, K77 }, \
289 { K80, K81, xxx, XXX, xxx, K85, K86, XXX }, \
290 { K90, XXX, K92, XXX, xxx, K95, XXX, K97 }, \
291}
292//LAYOUT_60_ansi_tsangan
293#define LAYOUT_60_ansi_tsangan( \
294 K00, K10, K01, K11, K02, K12, K03, K13, K04, K14, K05, K15, K06, K26, \
295 K20, K30, K21, K31, K22, K32, K23, K33, K24, K34, K25, K35, K36, K46, \
296 K40, K50, K41, K51, K42, K52, K43, K53, K44, K54, K45, K55, K47, \
297 K60, K70, K61, K71, K62, K72, K63, K73, K64, K74, K65, K66, K77, \
298 K80, K90, K81, K92, K85, K95, K97 \
299) { \
300 { K00, K01, K02, K03, K04, K05, K06, XXX }, \
301 { K10, K11, K12, K13, K14, K15, XXX, xxx }, \
302 { K20, K21, K22, K23, K24, K25, K26, XXX }, \
303 { K30, K31, K32, K33, K34, K35, K36, XXX }, \
304 { K40, K41, K42, K43, K44, K45, K46, K47 }, \
305 { K50, K51, K52, K53, K54, K55, XXX, XXX }, \
306 { K60, K61, K62, K63, K64, K65, K66, XXX }, \
307 { K70, K71, K72, K73, K74, xxx, XXX, K77 }, \
308 { K80, K81, xxx, XXX, xxx, K85, xxx, XXX }, \
309 { K90, XXX, K92, XXX, xxx, K95, XXX, K97 }, \
310}
311//LAYOUT_60_ansi_tsangan_split_bs
312#define LAYOUT_60_ansi_tsangan_split_bs( \
313 K00, K10, K01, K11, K02, K12, K03, K13, K04, K14, K05, K15, K06, K26, K17, \
314 K20, K30, K21, K31, K22, K32, K23, K33, K24, K34, K25, K35, K36, K46, \
315 K40, K50, K41, K51, K42, K52, K43, K53, K44, K54, K45, K55, K47, \
316 K60, K70, K61, K71, K62, K72, K63, K73, K64, K74, K65, K66, K77, \
317 K80, K90, K81, K92, K85, K95, K97 \
318) { \
319 { K00, K01, K02, K03, K04, K05, K06, XXX }, \
320 { K10, K11, K12, K13, K14, K15, XXX, K17 }, \
321 { K20, K21, K22, K23, K24, K25, K26, XXX }, \
322 { K30, K31, K32, K33, K34, K35, K36, XXX }, \
323 { K40, K41, K42, K43, K44, K45, K46, K47 }, \
324 { K50, K51, K52, K53, K54, K55, XXX, XXX }, \
325 { K60, K61, K62, K63, K64, K65, K66, XXX }, \
326 { K70, K71, K72, K73, K74, xxx, XXX, K77 }, \
327 { K80, K81, xxx, XXX, xxx, K85, xxx, XXX }, \
328 { K90, XXX, K92, XXX, xxx, K95, XXX, K97 }, \
329}
330//LAYOUT_60_iso_tsangan
331#define LAYOUT_60_iso_tsangan LAYOUT_60_ansi_tsangan
332//LAYOUT_60_iso_tsangan_split_bs
333#define LAYOUT_60_iso_tsangan_split_bs LAYOUT_60_ansi_tsangan_split_bs
334
335
diff --git a/keyboards/sawnsprojects/krush/krush65/readme.md b/keyboards/sawnsprojects/krush/krush65/readme.md
new file mode 100644
index 000000000..34e996f0b
--- /dev/null
+++ b/keyboards/sawnsprojects/krush/krush65/readme.md
@@ -0,0 +1,25 @@
1# Krush65
2
3A 65% keyboard sold in several variants.
4
51. [Solder](solder/): 06/2021. Atmega32u4 soldered keyboard. Sold under the name "Krush65" with krush keyboard case. Compatible with some KBD67 case.
6
7 **Firmware files are SPECIFIC to each board. Firmware files from one, will not work on the other.** Please use the `.hex` or `.bin` appropriate for your board.
8
9* Keyboard Maintainer: [SawnsProjects](https://github.com/MaiTheSan)
10* Hardware Supported: Krush65
11* Hardware Availability: [Mechkey.store](https://mechkey.store/)
12
13Make examples for this keyboard (after setting up your build environment):
14
15 make sawnsprojects/krush/krush65/solder:default
16
17## Bootloader
18
19Enter the bootloader in 3 ways:
20
21* **Bootmagic reset**: Hold down the key at (0,0) in the matrix (usually the top left key or Escape) and plug in the keyboard
22* **Physical reset button**: Briefly press the button on the back of the PCB - some may have pads you must short instead
23* **Keycode in layout**: Press the key mapped to `RESET` if it is available
24
25See 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/krush65/solder/config.h b/keyboards/sawnsprojects/krush/krush65/solder/config.h
new file mode 100644
index 000000000..9356e6cfb
--- /dev/null
+++ b/keyboards/sawnsprojects/krush/krush65/solder/config.h
@@ -0,0 +1,68 @@
1/* Copyright 2021 SawnsProjects
2 *
3 * This program is free software: you can redistribute it and/or modify
4 * it under the terms of the GNU General Public License as published by
5 * the Free Software Foundation, either version 2 of the License, or
6 * (at your option) any later version.
7 *
8 * This program is distributed in the hope that it will be useful,
9 * but WITHOUT ANY WARRANTY; without even the implied warranty of
10 * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
11 * GNU General Public License for more details.
12 *
13 * You should have received a copy of the GNU General Public License
14 * along with this program. If not, see <http://www.gnu.org/licenses/>.
15 */
16
17#pragma once
18#include "config_common.h"
19
20/* USB Device descriptor parameter */
21#define VENDOR_ID 0x5350
22#define PRODUCT_ID 0x6B31
23#define DEVICE_VER 0x0001
24#define MANUFACTURER SawnsProjects
25#define PRODUCT Krush65 - Solder
26
27/* key matrix size */
28#define MATRIX_ROWS 10
29#define MATRIX_COLS 8
30
31/* key matrix pins */
32#define MATRIX_ROW_PINS { B1, B2, D1, D2, D4, D6, F6, F7, F5, F4 }
33#define MATRIX_COL_PINS { C7, C6, B6, B5, B4, D7, D5, D3 }
34#define UNUSED_PINS
35
36/* indicator */
37// #define LED_CAPS_LOCK_PIN F0
38
39/* COL2ROW or ROW2COL */
40#define DIODE_DIRECTION COL2ROW
41/* Caps Lock */
42#define LED_CAPS_LOCK_PIN F0
43
44/* rotary */
45#define ENCODERS_PAD_A { D0 }
46#define ENCODERS_PAD_B { B3 }
47#define ENCODER_RESOLUTION 4
48
49#define RGB_DI_PIN F1
50#ifdef RGB_DI_PIN
51 #define RGBLED_NUM 20
52 #define RGBLIGHT_HUE_STEP 8
53 #define RGBLIGHT_SAT_STEP 8
54 #define RGBLIGHT_VAL_STEP 8
55 #define RGBLIGHT_LIMIT_VAL 200 /* The maximum brightness level */
56 #define RGBLIGHT_SLEEP /* If defined, the RGB lighting will be switched off when the host goes to sleep */
57/*== all animations enable ==*/
58#define RGBLIGHT_EFFECT_BREATHING
59#define RGBLIGHT_EFFECT_RAINBOW_MOOD
60#define RGBLIGHT_EFFECT_RAINBOW_SWIRL
61#define RGBLIGHT_EFFECT_SNAKE
62#define RGBLIGHT_EFFECT_KNIGHT
63#define RGBLIGHT_EFFECT_CHRISTMAS
64#define RGBLIGHT_EFFECT_STATIC_GRADIENT
65#define RGBLIGHT_EFFECT_RGB_TEST
66#define RGBLIGHT_EFFECT_ALTERNATING
67#define RGBLIGHT_EFFECT_TWINKLE
68#endif \ No newline at end of file
diff --git a/keyboards/sawnsprojects/krush/krush65/solder/encoder_actions.c b/keyboards/sawnsprojects/krush/krush65/solder/encoder_actions.c
new file mode 100644
index 000000000..039f8739b
--- /dev/null
+++ b/keyboards/sawnsprojects/krush/krush65/solder/encoder_actions.c
@@ -0,0 +1,58 @@
1/* Copyright 2020 Neil Brian Ramirez
2 * Copyright 2021 drashna jael're (@drashna)
3 * Copyright 2021 uybv
4 * Copyright 2021 SawnsProjects
5 *
6 * This program is free software: you can redistribute it and/or modify
7 * it under the terms of the GNU General Public License as published by
8 * the Free Software Foundation, either version 3 of the License, or
9 * (at your option) any later version.
10 *
11 * This program is distributed in the hope that it will be useful,
12 * but WITHOUT ANY WARRANTY; without even the implied warranty of
13 * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
14 * GNU General Public License for more details.
15 *
16 * You should have received a copy of the GNU General Public License
17 * along with this program. If not, see <http://www.gnu.org/licenses/>.
18 */
19
20#include "encoder_actions.h"
21
22#ifdef ENCODER_ENABLE
23
24# ifdef ENCODERS
25static uint8_t encoder_state[ENCODERS] = {0};
26static keypos_t encoder_cw[ENCODERS] = ENCODERS_CW_KEY;
27static keypos_t encoder_ccw[ENCODERS] = ENCODERS_CCW_KEY;
28# endif
29
30void encoder_action_unregister(void) {
31# ifdef ENCODERS
32 for (int index = 0; index < ENCODERS; ++index) {
33 if (encoder_state[index]) {
34 keyevent_t encoder_event = (keyevent_t) {
35 .key = encoder_state[index] >> 1 ? encoder_cw[index] : encoder_ccw[index],
36 .pressed = false,
37 .time = (timer_read() | 1)
38 };
39 encoder_state[index] = 0;
40 action_exec(encoder_event);
41 }
42 }
43# endif
44}
45
46void encoder_action_register(uint8_t index, bool clockwise) {
47# ifdef ENCODERS
48 keyevent_t encoder_event = (keyevent_t) {
49 .key = clockwise ? encoder_cw[index] : encoder_ccw[index],
50 .pressed = true,
51 .time = (timer_read() | 1)
52 };
53 encoder_state[index] = (clockwise ^ 1) | (clockwise << 1);
54 action_exec(encoder_event);
55# endif
56}
57
58#endif \ No newline at end of file
diff --git a/keyboards/sawnsprojects/krush/krush65/solder/encoder_actions.h b/keyboards/sawnsprojects/krush/krush65/solder/encoder_actions.h
new file mode 100644
index 000000000..098210d40
--- /dev/null
+++ b/keyboards/sawnsprojects/krush/krush65/solder/encoder_actions.h
@@ -0,0 +1,21 @@
1/* Copyright 2020 Neil Brian Ramirez
2 *
3 * This program is free software: you can redistribute it and/or modify
4 * it under the terms of the GNU General Public License as published by
5 * the Free Software Foundation, either version 3 of the License, or
6 * (at your option) any later version.
7 *
8 * This program is distributed in the hope that it will be useful,
9 * but WITHOUT ANY WARRANTY; without even the implied warranty of
10 * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
11 * GNU General Public License for more details.
12 *
13 * You should have received a copy of the GNU General Public License
14 * along with this program. If not, see <http://www.gnu.org/licenses/>.
15 */
16
17#include "quantum.h"
18
19void encoder_action_unregister(void);
20
21void encoder_action_register(uint8_t index, bool clockwise); \ No newline at end of file
diff --git a/keyboards/sawnsprojects/krush/krush65/solder/info.json b/keyboards/sawnsprojects/krush/krush65/solder/info.json
new file mode 100644
index 000000000..6c10d660e
--- /dev/null
+++ b/keyboards/sawnsprojects/krush/krush65/solder/info.json
@@ -0,0 +1,299 @@
1{
2 "keyboard_name": "Krush65 Solder",
3 "url": "",
4 "maintainer": "MaiTheSan",
5 "layouts": {
6 "LAYOUT_all": {
7 "layout": [
8 { "label": "K00 (B1,C7)", "x": 0, "y": 0 },
9 { "label": "K10 (B2,C7)", "x": 1, "y": 0 },
10 { "label": "K01 (B1,C6)", "x": 2, "y": 0 },
11 { "label": "K11 (B2,C6)", "x": 3, "y": 0 },
12 { "label": "K02 (B1,B6)", "x": 4, "y": 0 },
13 { "label": "K12 (B2,B6)", "x": 5, "y": 0 },
14 { "label": "K03 (B1,B5)", "x": 6, "y": 0 },
15 { "label": "K13 (B2,B5)", "x": 7, "y": 0 },
16 { "label": "K04 (B1,B4)", "x": 8, "y": 0 },
17 { "label": "K14 (B2,B4)", "x": 9, "y": 0 },
18 { "label": "K05 (B1,D7)", "x": 10, "y": 0 },
19 { "label": "K15 (B2,D7)", "x": 11, "y": 0 },
20 { "label": "K06 (B1,D5)", "x": 12, "y": 0 },
21 { "label": "K26 (D1,D5)", "x": 13, "y": 0 },
22 { "label": "K17 (B2,D3)", "x": 14, "y": 0 },
23 { "label": "K07 (B1,D3)", "x": 15, "y": 0 },
24 { "label": "K20 (D1,C7)", "x": 0, "y": 1, "w": 1.5 },
25 { "label": "K30 (D2,C7)", "x": 1.5, "y": 1 },
26 { "label": "K21 (D1,C6)", "x": 2.5, "y": 1 },
27 { "label": "K31 (D2,C6)", "x": 3.5, "y": 1 },
28 { "label": "K22 (D1,B6)", "x": 4.5, "y": 1 },
29 { "label": "K32 (D2,B6)", "x": 5.5, "y": 1 },
30 { "label": "K23 (D1,B5)", "x": 6.5, "y": 1 },
31 { "label": "K33 (D2,B5)", "x": 7.5, "y": 1 },
32 { "label": "K24 (D1,B4)", "x": 8.5, "y": 1 },
33 { "label": "K34 (D2,B4)", "x": 9.5, "y": 1 },
34 { "label": "K25 (D1,D7)", "x": 10.5, "y": 1 },
35 { "label": "K35 (D2,D7)", "x": 11.5, "y": 1 },
36 { "label": "K36 (D2,D5)", "x": 12.5, "y": 1 },
37 { "label": "K46 (D4,D5)", "x": 13.5, "y": 1, "w": 1.5 },
38 { "label": "K37 (D2,D3)", "x": 15, "y": 1 },
39 { "label": "K40 (D4,C7)", "x": 0, "y": 2, "w": 1.75 },
40 { "label": "K50 (D6,C7)", "x": 1.75, "y": 2 },
41 { "label": "K41 (D4,C6)", "x": 2.75, "y": 2 },
42 { "label": "K51 (D6,C6)", "x": 3.75, "y": 2 },
43 { "label": "K42 (D4,B6)", "x": 4.75, "y": 2 },
44 { "label": "K52 (D6,B6)", "x": 5.75, "y": 2 },
45 { "label": "K43 (D4,B5)", "x": 6.75, "y": 2 },
46 { "label": "K53 (D6,B5)", "x": 7.75, "y": 2 },
47 { "label": "K44 (D4,B4)", "x": 8.75, "y": 2 },
48 { "label": "K54 (D6,B4)", "x": 9.75, "y": 2 },
49 { "label": "K45 (D4,D7)", "x": 10.75, "y": 2 },
50 { "label": "K55 (D6,D7)", "x": 11.75, "y": 2 },
51 { "label": "K47 (D4,D3)", "x": 12.75, "y": 2, "w": 2.25 },
52 { "label": "K57 (D6,D3)", "x": 15, "y": 2 },
53 { "label": "K60 (F6,C7)", "x": 0, "y": 3, "w": 2.25 },
54 { "label": "K70 (F7,C7)", "x": 2.25, "y": 3 },
55 { "label": "K61 (F6,C6)", "x": 3.25, "y": 3 },
56 { "label": "K71 (F7,C6)", "x": 4.25, "y": 3 },
57 { "label": "K62 (F6,B6)", "x": 5.25, "y": 3 },
58 { "label": "K72 (F7,B6)", "x": 6.25, "y": 3 },
59 { "label": "K63 (F6,B5)", "x": 7.25, "y": 3 },
60 { "label": "K73 (F7,B5)", "x": 8.25, "y": 3 },
61 { "label": "K64 (F6,B4)", "x": 9.25, "y": 3 },
62 { "label": "K74 (F7,B4)", "x": 10.25, "y": 3 },
63 { "label": "K65 (F6,D7)", "x": 11.25, "y": 3 },
64 { "label": "K75 (F7,D7)", "x": 12.25, "y": 3, "w": 1.75 },
65 { "label": "K77 (F7,D3)", "x": 14, "y": 3 },
66 { "label": "K67 (F6,D3)", "x": 15, "y": 3 },
67 { "label": "K80 (F5,C7)", "x": 0, "y": 4, "w": 1.25 },
68 { "label": "K90 (F4,C7)", "x": 1.25, "y": 4, "w": 1.25 },
69 { "label": "K81 (F5,C6)", "x": 2.5, "y": 4, "w": 1.25 },
70 { "label": "K82 (F5,B6)", "x": 3.75, "y": 4, "w": 2.25 },
71 { "label": "K92 (F4,B6)", "x": 6, "y": 4, "w": 1.25 },
72 { "label": "K93 (F4,B5)", "x": 7.25, "y": 4, "w": 2.75 },
73 { "label": "K94 (F4,B4)", "x": 10, "y": 4, "w": 1.25 },
74 { "label": "K85 (F5,D7)", "x": 11.25, "y": 4, "w": 1.25 },
75 { "label": "K95 (F4,D7)", "x": 13, "y": 4 },
76 { "label": "K97 (F4,D3)", "x": 14, "y": 4 },
77 { "label": "K87 (F5,D3)", "x": 15, "y": 4 }
78 ]
79 },
80 "LAYOUT_65_ansi_blocker_split_bs_sp": {
81 "layout": [
82 { "label": "K00 (B1,C7)", "x": 0, "y": 0 },
83 { "label": "K10 (B2,C7)", "x": 1, "y": 0 },
84 { "label": "K01 (B1,C6)", "x": 2, "y": 0 },
85 { "label": "K11 (B2,C6)", "x": 3, "y": 0 },
86 { "label": "K02 (B1,B6)", "x": 4, "y": 0 },
87 { "label": "K12 (B2,B6)", "x": 5, "y": 0 },
88 { "label": "K03 (B1,B5)", "x": 6, "y": 0 },
89 { "label": "K13 (B2,B5)", "x": 7, "y": 0 },
90 { "label": "K04 (B1,B4)", "x": 8, "y": 0 },
91 { "label": "K14 (B2,B4)", "x": 9, "y": 0 },
92 { "label": "K05 (B1,D7)", "x": 10, "y": 0 },
93 { "label": "K15 (B2,D7)", "x": 11, "y": 0 },
94 { "label": "K06 (B1,D5)", "x": 12, "y": 0 },
95 { "label": "K26 (D1,D5)", "x": 13, "y": 0 },
96 { "label": "K17 (B2,D3)", "x": 14, "y": 0 },
97 { "label": "K07 (B1,D3)", "x": 15, "y": 0 },
98 { "label": "K20 (D1,C7)", "x": 0, "y": 1, "w": 1.5 },
99 { "label": "K30 (D2,C7)", "x": 1.5, "y": 1 },
100 { "label": "K21 (D1,C6)", "x": 2.5, "y": 1 },
101 { "label": "K31 (D2,C6)", "x": 3.5, "y": 1 },
102 { "label": "K22 (D1,B6)", "x": 4.5, "y": 1 },
103 { "label": "K32 (D2,B6)", "x": 5.5, "y": 1 },
104 { "label": "K23 (D1,B5)", "x": 6.5, "y": 1 },
105 { "label": "K33 (D2,B5)", "x": 7.5, "y": 1 },
106 { "label": "K24 (D1,B4)", "x": 8.5, "y": 1 },
107 { "label": "K34 (D2,B4)", "x": 9.5, "y": 1 },
108 { "label": "K25 (D1,D7)", "x": 10.5, "y": 1 },
109 { "label": "K35 (D2,D7)", "x": 11.5, "y": 1 },
110 { "label": "K36 (D2,D5)", "x": 12.5, "y": 1 },
111 { "label": "K46 (D4,D5)", "x": 13.5, "y": 1, "w": 1.5 },
112 { "label": "K37 (D2,D3)", "x": 15, "y": 1 },
113 { "label": "K40 (D4,C7)", "x": 0, "y": 2, "w": 1.75 },
114 { "label": "K50 (D6,C7)", "x": 1.75, "y": 2 },
115 { "label": "K41 (D4,C6)", "x": 2.75, "y": 2 },
116 { "label": "K51 (D6,C6)", "x": 3.75, "y": 2 },
117 { "label": "K42 (D4,B6)", "x": 4.75, "y": 2 },
118 { "label": "K52 (D6,B6)", "x": 5.75, "y": 2 },
119 { "label": "K43 (D4,B5)", "x": 6.75, "y": 2 },
120 { "label": "K53 (D6,B5)", "x": 7.75, "y": 2 },
121 { "label": "K44 (D4,B4)", "x": 8.75, "y": 2 },
122 { "label": "K54 (D6,B4)", "x": 9.75, "y": 2 },
123 { "label": "K45 (D4,D7)", "x": 10.75, "y": 2 },
124 { "label": "K55 (D6,D7)", "x": 11.75, "y": 2 },
125 { "label": "K47 (D4,D3)", "x": 12.75, "y": 2, "w": 2.25 },
126 { "label": "K57 (D6,D3)", "x": 15, "y": 2 },
127 { "label": "K60 (F6,C7)", "x": 0, "y": 3, "w": 2.25 },
128 { "label": "K70 (F7,C7)", "x": 2.25, "y": 3 },
129 { "label": "K61 (F6,C6)", "x": 3.25, "y": 3 },
130 { "label": "K71 (F7,C6)", "x": 4.25, "y": 3 },
131 { "label": "K62 (F6,B6)", "x": 5.25, "y": 3 },
132 { "label": "K72 (F7,B6)", "x": 6.25, "y": 3 },
133 { "label": "K63 (F6,B5)", "x": 7.25, "y": 3 },
134 { "label": "K73 (F7,B5)", "x": 8.25, "y": 3 },
135 { "label": "K64 (F6,B4)", "x": 9.25, "y": 3 },
136 { "label": "K74 (F7,B4)", "x": 10.25, "y": 3 },
137 { "label": "K65 (F6,D7)", "x": 11.25, "y": 3 },
138 { "label": "K75 (F7,D7)", "x": 12.25, "y": 3, "w": 1.75 },
139 { "label": "K77 (F7,D3)", "x": 14, "y": 3 },
140 { "label": "K67 (F6,D3)", "x": 15, "y": 3 },
141 { "label": "K80 (F5,C7)", "x": 0, "y": 4, "w": 1.25 },
142 { "label": "K90 (F4,C7)", "x": 1.25, "y": 4, "w": 1.25 },
143 { "label": "K81 (F5,C6)", "x": 2.5, "y": 4, "w": 1.25 },
144 { "label": "K82 (F5,B6)", "x": 3.75, "y": 4, "w": 2.25 },
145 { "label": "K92 (F4,B6)", "x": 6, "y": 4, "w": 1.25 },
146 { "label": "K93 (F4,B5)", "x": 7.25, "y": 4, "w": 2.75 },
147 { "label": "K94 (F4,B4)", "x": 10, "y": 4, "w": 1.25 },
148 { "label": "K85 (F5,D7)", "x": 11.25, "y": 4, "w": 1.25 },
149 { "label": "K95 (F4,D7)", "x": 13, "y": 4 },
150 { "label": "K97 (F4,D3)", "x": 14, "y": 4 },
151 { "label": "K87 (F5,D3)", "x": 15, "y": 4 }
152 ]
153 },
154
155 "LAYOUT_65_ansi_blocker": {
156 "layout": [
157 { "label": "K00 (B1,C7)", "x": 0, "y": 0 },
158 { "label": "K10 (B2,C7)", "x": 1, "y": 0 },
159 { "label": "K01 (B1,C6)", "x": 2, "y": 0 },
160 { "label": "K11 (B2,C6)", "x": 3, "y": 0 },
161 { "label": "K02 (B1,B6)", "x": 4, "y": 0 },
162 { "label": "K12 (B2,B6)", "x": 5, "y": 0 },
163 { "label": "K03 (B1,B5)", "x": 6, "y": 0 },
164 { "label": "K13 (B2,B5)", "x": 7, "y": 0 },
165 { "label": "K04 (B1,B4)", "x": 8, "y": 0 },
166 { "label": "K14 (B2,B4)", "x": 9, "y": 0 },
167 { "label": "K05 (B1,D7)", "x": 10, "y": 0 },
168 { "label": "K15 (B2,D7)", "x": 11, "y": 0 },
169 { "label": "K06 (B1,D5)", "x": 12, "y": 0 },
170 { "label": "K26 (D1,D5)", "x": 13, "y": 0, "w": 2 },
171 { "label": "K07 (B1,D3)", "x": 15, "y": 0 },
172 { "label": "K20 (D1,C7)", "x": 0, "y": 1, "w": 1.5 },
173 { "label": "K30 (D2,C7)", "x": 1.5, "y": 1 },
174 { "label": "K21 (D1,C6)", "x": 2.5, "y": 1 },
175 { "label": "K31 (D2,C6)", "x": 3.5, "y": 1 },
176 { "label": "K22 (D1,B6)", "x": 4.5, "y": 1 },
177 { "label": "K32 (D2,B6)", "x": 5.5, "y": 1 },
178 { "label": "K23 (D1,B5)", "x": 6.5, "y": 1 },
179 { "label": "K33 (D2,B5)", "x": 7.5, "y": 1 },
180 { "label": "K24 (D1,B4)", "x": 8.5, "y": 1 },
181 { "label": "K34 (D2,B4)", "x": 9.5, "y": 1 },
182 { "label": "K25 (D1,D7)", "x": 10.5, "y": 1 },
183 { "label": "K35 (D2,D7)", "x": 11.5, "y": 1 },
184 { "label": "K36 (D2,D5)", "x": 12.5, "y": 1 },
185 { "label": "K46 (D4,D5)", "x": 13.5, "y": 1, "w": 1.5 },
186 { "label": "K37 (D2,D3)", "x": 15, "y": 1 },
187 { "label": "K40 (D4,C7)", "x": 0, "y": 2, "w": 1.75 },
188 { "label": "K50 (D6,C7)", "x": 1.75, "y": 2 },
189 { "label": "K41 (D4,C6)", "x": 2.75, "y": 2 },
190 { "label": "K51 (D6,C6)", "x": 3.75, "y": 2 },
191 { "label": "K42 (D4,B6)", "x": 4.75, "y": 2 },
192 { "label": "K52 (D6,B6)", "x": 5.75, "y": 2 },
193 { "label": "K43 (D4,B5)", "x": 6.75, "y": 2 },
194 { "label": "K53 (D6,B5)", "x": 7.75, "y": 2 },
195 { "label": "K44 (D4,B4)", "x": 8.75, "y": 2 },
196 { "label": "K54 (D6,B4)", "x": 9.75, "y": 2 },
197 { "label": "K45 (D4,D7)", "x": 10.75, "y": 2 },
198 { "label": "K55 (D6,D7)", "x": 11.75, "y": 2 },
199 { "label": "K47 (D4,D3)", "x": 12.75, "y": 2, "w": 2.25 },
200 { "label": "K57 (D6,D3)", "x": 15, "y": 2 },
201 { "label": "K60 (F6,C7)", "x": 0, "y": 3, "w": 2.25 },
202 { "label": "K70 (F7,C7)", "x": 2.25, "y": 3 },
203 { "label": "K61 (F6,C6)", "x": 3.25, "y": 3 },
204 { "label": "K71 (F7,C6)", "x": 4.25, "y": 3 },
205 { "label": "K62 (F6,B6)", "x": 5.25, "y": 3 },
206 { "label": "K72 (F7,B6)", "x": 6.25, "y": 3 },
207 { "label": "K63 (F6,B5)", "x": 7.25, "y": 3 },
208 { "label": "K73 (F7,B5)", "x": 8.25, "y": 3 },
209 { "label": "K64 (F6,B4)", "x": 9.25, "y": 3 },
210 { "label": "K74 (F7,B4)", "x": 10.25, "y": 3 },
211 { "label": "K65 (F6,D7)", "x": 11.25, "y": 3 },
212 { "label": "K75 (F7,D7)", "x": 12.25, "y": 3, "w": 1.75 },
213 { "label": "K77 (F7,D3)", "x": 14, "y": 3 },
214 { "label": "K67 (F6,D3)", "x": 15, "y": 3 },
215 { "label": "K80 (F5,C7)", "x": 0, "y": 4, "w": 1.25 },
216 { "label": "K90 (F4,C7)", "x": 1.25, "y": 4, "w": 1.25 },
217 { "label": "K81 (F5,C6)", "x": 2.5, "y": 4, "w": 1.25 },
218 { "label": "K92 (F4,B6)", "x": 3.75, "y": 4, "w": 6.25 },
219 { "label": "K94 (F4,B4)", "x": 10, "y": 4, "w": 1.25 },
220 { "label": "K85 (F5,D7)", "x": 11.25, "y": 4, "w": 1.25 },
221 { "label": "K95 (F4,D7)", "x": 13, "y": 4 },
222 { "label": "K97 (F4,D3)", "x": 14, "y": 4 },
223 { "label": "K87 (F5,D3)", "x": 15, "y": 4 }
224 ]
225 },
226 "LAYOUT_65_ansi_blocker_split_bs": {
227 "layout": [
228 { "label": "K00 (B1,C7)", "x": 0, "y": 0 },
229 { "label": "K10 (B2,C7)", "x": 1, "y": 0 },
230 { "label": "K01 (B1,C6)", "x": 2, "y": 0 },
231 { "label": "K11 (B2,C6)", "x": 3, "y": 0 },
232 { "label": "K02 (B1,B6)", "x": 4, "y": 0 },
233 { "label": "K12 (B2,B6)", "x": 5, "y": 0 },
234 { "label": "K03 (B1,B5)", "x": 6, "y": 0 },
235 { "label": "K13 (B2,B5)", "x": 7, "y": 0 },
236 { "label": "K04 (B1,B4)", "x": 8, "y": 0 },
237 { "label": "K14 (B2,B4)", "x": 9, "y": 0 },
238 { "label": "K05 (B1,D7)", "x": 10, "y": 0 },
239 { "label": "K15 (B2,D7)", "x": 11, "y": 0 },
240 { "label": "K06 (B1,D5)", "x": 12, "y": 0 },
241 { "label": "K26 (D1,D5)", "x": 13, "y": 0 },
242 { "label": "K17 (B2,D3)", "x": 14, "y": 0 },
243 { "label": "K07 (B1,D3)", "x": 15, "y": 0 },
244 { "label": "K20 (D1,C7)", "x": 0, "y": 1, "w": 1.5 },
245 { "label": "K30 (D2,C7)", "x": 1.5, "y": 1 },
246 { "label": "K21 (D1,C6)", "x": 2.5, "y": 1 },
247 { "label": "K31 (D2,C6)", "x": 3.5, "y": 1 },
248 { "label": "K22 (D1,B6)", "x": 4.5, "y": 1 },
249 { "label": "K32 (D2,B6)", "x": 5.5, "y": 1 },
250 { "label": "K23 (D1,B5)", "x": 6.5, "y": 1 },
251 { "label": "K33 (D2,B5)", "x": 7.5, "y": 1 },
252 { "label": "K24 (D1,B4)", "x": 8.5, "y": 1 },
253 { "label": "K34 (D2,B4)", "x": 9.5, "y": 1 },
254 { "label": "K25 (D1,D7)", "x": 10.5, "y": 1 },
255 { "label": "K35 (D2,D7)", "x": 11.5, "y": 1 },
256 { "label": "K36 (D2,D5)", "x": 12.5, "y": 1 },
257 { "label": "K46 (D4,D5)", "x": 13.5, "y": 1, "w": 1.5 },
258 { "label": "K37 (D2,D3)", "x": 15, "y": 1 },
259 { "label": "K40 (D4,C7)", "x": 0, "y": 2, "w": 1.75 },
260 { "label": "K50 (D6,C7)", "x": 1.75, "y": 2 },
261 { "label": "K41 (D4,C6)", "x": 2.75, "y": 2 },
262 { "label": "K51 (D6,C6)", "x": 3.75, "y": 2 },
263 { "label": "K42 (D4,B6)", "x": 4.75, "y": 2 },
264 { "label": "K52 (D6,B6)", "x": 5.75, "y": 2 },
265 { "label": "K43 (D4,B5)", "x": 6.75, "y": 2 },
266 { "label": "K53 (D6,B5)", "x": 7.75, "y": 2 },
267 { "label": "K44 (D4,B4)", "x": 8.75, "y": 2 },
268 { "label": "K54 (D6,B4)", "x": 9.75, "y": 2 },
269 { "label": "K45 (D4,D7)", "x": 10.75, "y": 2 },
270 { "label": "K55 (D6,D7)", "x": 11.75, "y": 2 },
271 { "label": "K47 (D4,D3)", "x": 12.75, "y": 2, "w": 2.25 },
272 { "label": "K57 (D6,D3)", "x": 15, "y": 2 },
273 { "label": "K60 (F6,C7)", "x": 0, "y": 3, "w": 2.25 },
274 { "label": "K70 (F7,C7)", "x": 2.25, "y": 3 },
275 { "label": "K61 (F6,C6)", "x": 3.25, "y": 3 },
276 { "label": "K71 (F7,C6)", "x": 4.25, "y": 3 },
277 { "label": "K62 (F6,B6)", "x": 5.25, "y": 3 },
278 { "label": "K72 (F7,B6)", "x": 6.25, "y": 3 },
279 { "label": "K63 (F6,B5)", "x": 7.25, "y": 3 },
280 { "label": "K73 (F7,B5)", "x": 8.25, "y": 3 },
281 { "label": "K64 (F6,B4)", "x": 9.25, "y": 3 },
282 { "label": "K74 (F7,B4)", "x": 10.25, "y": 3 },
283 { "label": "K65 (F6,D7)", "x": 11.25, "y": 3 },
284 { "label": "K75 (F7,D7)", "x": 12.25, "y": 3, "w": 1.75 },
285 { "label": "K77 (F7,D3)", "x": 14, "y": 3 },
286 { "label": "K67 (F6,D3)", "x": 15, "y": 3 },
287 { "label": "K80 (F5,C7)", "x": 0, "y": 4, "w": 1.25 },
288 { "label": "K90 (F4,C7)", "x": 1.25, "y": 4, "w": 1.25 },
289 { "label": "K81 (F5,C6)", "x": 2.5, "y": 4, "w": 1.25 },
290 { "label": "K92 (F4,B6)", "x": 3.75, "y": 4, "w": 6.25 },
291 { "label": "K94 (F4,B4)", "x": 10, "y": 4, "w": 1.25 },
292 { "label": "K85 (F5,D7)", "x": 11.25, "y": 4, "w": 1.25 },
293 { "label": "K95 (F4,D7)", "x": 13, "y": 4 },
294 { "label": "K97 (F4,D3)", "x": 14, "y": 4 },
295 { "label": "K87 (F5,D3)", "x": 15, "y": 4 }
296 ]
297 }
298 }
299}
diff --git a/keyboards/sawnsprojects/krush/krush65/solder/keymaps/ansi_blocker/keymap.c b/keyboards/sawnsprojects/krush/krush65/solder/keymaps/ansi_blocker/keymap.c
new file mode 100644
index 000000000..99c42be95
--- /dev/null
+++ b/keyboards/sawnsprojects/krush/krush65/solder/keymaps/ansi_blocker/keymap.c
@@ -0,0 +1,39 @@
1/* Copyright 2021 SawnsProjects
2 *
3 * This program is free software: you can redistribute it and/or modify
4 * it under the terms of the GNU General Public License as published by
5 * the Free Software Foundation, either version 2 of the License, or
6 * (at your option) any later version.
7 *
8 * This program is distributed in the hope that it will be useful,
9 * but WITHOUT ANY WARRANTY; without even the implied warranty of
10 * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
11 * GNU General Public License for more details.
12 *
13 * You should have received a copy of the GNU General Public License
14 * along with this program. If not, see <http://www.gnu.org/licenses/>.
15 */
16
17#include QMK_KEYBOARD_H
18
19const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = {
20
21
22 [0] = LAYOUT_65_ansi_blocker(
23 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_GRV,
24 KC_TAB, KC_Q, KC_W, KC_E, KC_R, KC_T, KC_Y, KC_U, KC_I, KC_O, KC_P, KC_LBRC, KC_RBRC, KC_BSLS, KC_DEL,
25 KC_CAPS, KC_A, KC_S, KC_D, KC_F, KC_G, KC_H, KC_J, KC_K, KC_L, KC_SCLN, KC_QUOT, KC_ENT, KC_PGUP,
26 KC_LSFT, KC_Z, KC_X, KC_C, KC_V, KC_B, KC_N, KC_M, KC_COMM, KC_DOT, KC_SLSH, KC_SPC, KC_UP, KC_PGDN,
27 KC_LCTL, KC_LGUI, KC_LALT, KC_SPC, KC_RALT, MO(1), KC_LEFT, KC_DOWN, KC_RGHT
28 ),
29
30 [1] = LAYOUT_65_ansi_blocker(
31 KC_TRNS, 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_TRNS, KC_TRNS,
32 KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS,
33 KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS,
34 KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS,
35 KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS
36 ),
37
38};
39
diff --git a/keyboards/sawnsprojects/krush/krush65/solder/keymaps/ansi_blocker/readme.md b/keyboards/sawnsprojects/krush/krush65/solder/keymaps/ansi_blocker/readme.md
new file mode 100644
index 000000000..181cc9a01
--- /dev/null
+++ b/keyboards/sawnsprojects/krush/krush65/solder/keymaps/ansi_blocker/readme.md
@@ -0,0 +1 @@
# The keymap for krush65 solder layout ansi blocker \ No newline at end of file
diff --git a/keyboards/sawnsprojects/krush/krush65/solder/keymaps/ansi_blocker_split_all/keymap.c b/keyboards/sawnsprojects/krush/krush65/solder/keymaps/ansi_blocker_split_all/keymap.c
new file mode 100644
index 000000000..b2019e5ec
--- /dev/null
+++ b/keyboards/sawnsprojects/krush/krush65/solder/keymaps/ansi_blocker_split_all/keymap.c
@@ -0,0 +1,38 @@
1/* Copyright 2021 SawnsProjects
2 *
3 * This program is free software: you can redistribute it and/or modify
4 * it under the terms of the GNU General Public License as published by
5 * the Free Software Foundation, either version 2 of the License, or
6 * (at your option) any later version.
7 *
8 * This program is distributed in the hope that it will be useful,
9 * but WITHOUT ANY WARRANTY; without even the implied warranty of
10 * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
11 * GNU General Public License for more details.
12 *
13 * You should have received a copy of the GNU General Public License
14 * along with this program. If not, see <http://www.gnu.org/licenses/>.
15 */
16
17#include QMK_KEYBOARD_H
18
19const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = {
20
21
22 [0] = LAYOUT_65_ansi_blocker_split_bs_sp(
23 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_GRV, KC_PSCR,
24 KC_TAB, KC_Q, KC_W, KC_E, KC_R, KC_T, KC_Y, KC_U, KC_I, KC_O, KC_P, KC_LBRC, KC_RBRC, KC_BSLS, KC_DEL,
25 KC_CAPS, KC_A, KC_S, KC_D, KC_F, KC_G, KC_H, KC_J, KC_K, KC_L, KC_SCLN, KC_QUOT, KC_ENT, KC_PGUP,
26 KC_LSFT, KC_Z, KC_X, KC_C, KC_V, KC_B, KC_N, KC_M, KC_COMM, KC_DOT, KC_SLSH, KC_LSFT, KC_UP, KC_PGDN,
27 KC_LCTL, KC_LGUI, KC_LALT, KC_SPC, KC_SPC, KC_SPC, KC_LALT, KC_LCTL, KC_LEFT, KC_DOWN, KC_RGHT
28 ),
29
30 [1] = LAYOUT_65_ansi_blocker_split_bs_sp(
31 KC_TRNS, 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_TRNS, KC_TRNS, KC_TRNS,
32 KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS,
33 KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS,
34 KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS,
35 KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS
36 ),
37
38};
diff --git a/keyboards/sawnsprojects/krush/krush65/solder/keymaps/ansi_blocker_split_all/readme.md b/keyboards/sawnsprojects/krush/krush65/solder/keymaps/ansi_blocker_split_all/readme.md
new file mode 100644
index 000000000..b6d1da89a
--- /dev/null
+++ b/keyboards/sawnsprojects/krush/krush65/solder/keymaps/ansi_blocker_split_all/readme.md
@@ -0,0 +1 @@
# The keymap for krush65 solder layout ansi blocker with split backspace and split spacebar \ No newline at end of file
diff --git a/keyboards/sawnsprojects/krush/krush65/solder/keymaps/ansi_blocker_split_bs/keymap.c b/keyboards/sawnsprojects/krush/krush65/solder/keymaps/ansi_blocker_split_bs/keymap.c
new file mode 100644
index 000000000..6cd8dd4ba
--- /dev/null
+++ b/keyboards/sawnsprojects/krush/krush65/solder/keymaps/ansi_blocker_split_bs/keymap.c
@@ -0,0 +1,39 @@
1/* Copyright 2021 SawnsProjects
2 *
3 * This program is free software: you can redistribute it and/or modify
4 * it under the terms of the GNU General Public License as published by
5 * the Free Software Foundation, either version 2 of the License, or
6 * (at your option) any later version.
7 *
8 * This program is distributed in the hope that it will be useful,
9 * but WITHOUT ANY WARRANTY; without even the implied warranty of
10 * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
11 * GNU General Public License for more details.
12 *
13 * You should have received a copy of the GNU General Public License
14 * along with this program. If not, see <http://www.gnu.org/licenses/>.
15 */
16
17#include QMK_KEYBOARD_H
18
19const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = {
20
21
22
23 [0] = LAYOUT_65_ansi_blocker_split_bs(
24 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_GRV, KC_PSCR,
25 KC_TAB, KC_Q, KC_W, KC_E, KC_R, KC_T, KC_Y, KC_U, KC_I, KC_O, KC_P, KC_LBRC, KC_RBRC, KC_BSLS, KC_DEL,
26 KC_CAPS, KC_A, KC_S, KC_D, KC_F, KC_G, KC_H, KC_J, KC_K, KC_L, KC_SCLN, KC_QUOT, KC_ENT, KC_PGUP,
27 KC_LSFT, KC_Z, KC_X, KC_C, KC_V, KC_B, KC_N, KC_M, KC_COMM, KC_DOT, KC_SLSH, KC_RSFT, KC_UP, KC_PGDN,
28 KC_LCTL, KC_LGUI, KC_LALT, KC_SPC, KC_RALT, MO(1), KC_LEFT, KC_DOWN, KC_RGHT
29 ),
30
31 [1] = LAYOUT_65_ansi_blocker_split_bs(
32 KC_TRNS, 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_TRNS, KC_TRNS, KC_TRNS,
33 KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS,
34 KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS,
35 KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS,
36 KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS
37 ),
38
39};
diff --git a/keyboards/sawnsprojects/krush/krush65/solder/keymaps/ansi_blocker_split_bs/readme.md b/keyboards/sawnsprojects/krush/krush65/solder/keymaps/ansi_blocker_split_bs/readme.md
new file mode 100644
index 000000000..162da7a90
--- /dev/null
+++ b/keyboards/sawnsprojects/krush/krush65/solder/keymaps/ansi_blocker_split_bs/readme.md
@@ -0,0 +1 @@
# The keymap for krush65 solder layout ansi blocker with split backspace \ No newline at end of file
diff --git a/keyboards/sawnsprojects/krush/krush65/solder/keymaps/default/keymap.c b/keyboards/sawnsprojects/krush/krush65/solder/keymaps/default/keymap.c
new file mode 100644
index 000000000..eecb1e5f8
--- /dev/null
+++ b/keyboards/sawnsprojects/krush/krush65/solder/keymaps/default/keymap.c
@@ -0,0 +1,39 @@
1/* Copyright 2021 SawnsProjects
2 *
3 * This program is free software: you can redistribute it and/or modify
4 * it under the terms of the GNU General Public License as published by
5 * the Free Software Foundation, either version 2 of the License, or
6 * (at your option) any later version.
7 *
8 * This program is distributed in the hope that it will be useful,
9 * but WITHOUT ANY WARRANTY; without even the implied warranty of
10 * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
11 * GNU General Public License for more details.
12 *
13 * You should have received a copy of the GNU General Public License
14 * along with this program. If not, see <http://www.gnu.org/licenses/>.
15 */
16
17#include QMK_KEYBOARD_H
18
19const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = {
20
21
22 [0] = LAYOUT_all(
23 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_GRV, KC_PSCR,
24 KC_TAB, KC_Q, KC_W, KC_E, KC_R, KC_T, KC_Y, KC_U, KC_I, KC_O, KC_P, KC_LBRC, KC_RBRC, KC_BSLS, KC_DEL,
25 KC_CAPS, KC_A, KC_S, KC_D, KC_F, KC_G, KC_H, KC_J, KC_K, KC_L, KC_SCLN, KC_QUOT, KC_ENT, KC_PGUP,
26 KC_LSFT, KC_Z, KC_X, KC_C, KC_V, KC_B, KC_N, KC_M, KC_COMM, KC_DOT, KC_SLSH, KC_LSFT, KC_UP, KC_PGDN,
27 KC_LCTL, KC_LGUI, KC_LALT, KC_SPC, KC_SPC, KC_SPC, KC_LALT, KC_LCTL, KC_LEFT, KC_DOWN, KC_RGHT
28 ),
29
30 [1] = LAYOUT_all(
31 KC_TRNS, 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_TRNS, KC_TRNS, KC_TRNS,
32 KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS,
33 KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS,
34 KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS,
35 KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS
36 ),
37
38};
39
diff --git a/keyboards/sawnsprojects/krush/krush65/solder/keymaps/default/readme.md b/keyboards/sawnsprojects/krush/krush65/solder/keymaps/default/readme.md
new file mode 100644
index 000000000..1f98b857c
--- /dev/null
+++ b/keyboards/sawnsprojects/krush/krush65/solder/keymaps/default/readme.md
@@ -0,0 +1 @@
# The default keymap for krush65 solder \ No newline at end of file
diff --git a/keyboards/sawnsprojects/krush/krush65/solder/keymaps/sawns/keymap.c b/keyboards/sawnsprojects/krush/krush65/solder/keymaps/sawns/keymap.c
new file mode 100644
index 000000000..3a7fa10cf
--- /dev/null
+++ b/keyboards/sawnsprojects/krush/krush65/solder/keymaps/sawns/keymap.c
@@ -0,0 +1,75 @@
1/* Copyright 2021 SawnsProjects
2 *
3 * This program is free software: you can redistribute it and/or modify
4 * it under the terms of the GNU General Public License as published by
5 * the Free Software Foundation, either version 2 of the License, or
6 * (at your option) any later version.
7 *
8 * This program is distributed in the hope that it will be useful,
9 * but WITHOUT ANY WARRANTY; without even the implied warranty of
10 * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
11 * GNU General Public License for more details.
12 *
13 * You should have received a copy of the GNU General Public License
14 * along with this program. If not, see <http://www.gnu.org/licenses/>.
15 */
16
17
18#include QMK_KEYBOARD_H
19const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = {
20
21 [0] = LAYOUT_all(
22 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_GRV, KC_PSCR,
23 KC_TAB, KC_Q, KC_W, KC_E, KC_R, KC_T, KC_Y, KC_U, KC_I, KC_O, KC_P, KC_LBRC, KC_RBRC, KC_BSLS, KC_DEL,
24 KC_CAPS, KC_A, KC_S, KC_D, KC_F, KC_G, KC_H, KC_J, KC_K, KC_L, KC_SCLN, KC_QUOT, KC_ENT, KC_PGUP,
25 KC_LSFT, KC_Z, KC_X, KC_C, KC_V, KC_B, KC_N, KC_M, KC_COMM, KC_DOT, KC_SLSH, KC_LSFT, KC_UP, KC_PGDN,
26 KC_LCTL, KC_LGUI, KC_LALT, KC_SPC, KC_SPC, KC_SPC, KC_LALT, KC_LCTL, KC_LEFT, KC_DOWN, KC_RGHT
27 ),
28
29 [1] = LAYOUT_all(
30 KC_TRNS, 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_TRNS, KC_TRNS, KC_TRNS,
31 KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS,
32 KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS,
33 KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS,
34 KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS
35 ),
36 [2] = LAYOUT_all(
37 KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS,
38 KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS,
39 KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS,
40 KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS,
41 KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS
42 ),
43 [3] = LAYOUT_all(
44 KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS,
45 KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS,
46 KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS,
47 KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS,
48 KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS
49 ),
50};
51
52
53bool encoder_update_user(uint8_t index, bool clockwise) {
54 if (index == 0) {
55 switch (get_highest_layer(layer_state)) {
56 case 0:
57 // main layer - move mouse right (CW) and left (CCW)
58 if (clockwise) {
59 tap_code_delay(KC_VOLU, 10);
60 } else {
61 tap_code_delay(KC_VOLD, 10);
62 }
63 break;
64 default:
65 // other layers - =/+ (quals/plus) (CW) and -/_ (minus/underscore) (CCW)
66 if (clockwise) {
67 tap_code16(C(KC_EQL));
68 } else {
69 tap_code16(C(KC_MINS));
70 }
71 break;
72 }
73 }
74 return false;
75} \ No newline at end of file
diff --git a/keyboards/sawnsprojects/krush/krush65/solder/keymaps/sawns/readme.md b/keyboards/sawnsprojects/krush/krush65/solder/keymaps/sawns/readme.md
new file mode 100644
index 000000000..ff710c521
--- /dev/null
+++ b/keyboards/sawnsprojects/krush/krush65/solder/keymaps/sawns/readme.md
@@ -0,0 +1 @@
#custom keymap for MikeTheSan \ No newline at end of file
diff --git a/keyboards/sawnsprojects/krush/krush65/solder/keymaps/sawns/rules.mk b/keyboards/sawnsprojects/krush/krush65/solder/keymaps/sawns/rules.mk
new file mode 100644
index 000000000..036bd6d1c
--- /dev/null
+++ b/keyboards/sawnsprojects/krush/krush65/solder/keymaps/sawns/rules.mk
@@ -0,0 +1 @@
VIA_ENABLE = yes \ No newline at end of file
diff --git a/keyboards/sawnsprojects/krush/krush65/solder/keymaps/via/keymap.c b/keyboards/sawnsprojects/krush/krush65/solder/keymaps/via/keymap.c
new file mode 100644
index 000000000..8036529c9
--- /dev/null
+++ b/keyboards/sawnsprojects/krush/krush65/solder/keymaps/via/keymap.c
@@ -0,0 +1,51 @@
1/* Copyright 2021 SawnsProjects
2 *
3 * This program is free software: you can redistribute it and/or modify
4 * it under the terms of the GNU General Public License as published by
5 * the Free Software Foundation, either version 2 of the License, or
6 * (at your option) any later version.
7 *
8 * This program is distributed in the hope that it will be useful,
9 * but WITHOUT ANY WARRANTY; without even the implied warranty of
10 * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
11 * GNU General Public License for more details.
12 *
13 * You should have received a copy of the GNU General Public License
14 * along with this program. If not, see <http://www.gnu.org/licenses/>.
15 */
16
17#include QMK_KEYBOARD_H
18
19const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = {
20
21
22 [0] = LAYOUT_all(
23 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_GRV, KC_PSCR,
24 KC_TAB, KC_Q, KC_W, KC_E, KC_R, KC_T, KC_Y, KC_U, KC_I, KC_O, KC_P, KC_LBRC, KC_RBRC, KC_BSLS, KC_DEL,
25 KC_CAPS, KC_A, KC_S, KC_D, KC_F, KC_G, KC_H, KC_J, KC_K, KC_L, KC_SCLN, KC_QUOT, KC_ENT, KC_PGUP,
26 KC_LSFT, KC_Z, KC_X, KC_C, KC_V, KC_B, KC_N, KC_M, KC_COMM, KC_DOT, KC_SLSH, KC_LSFT, KC_UP, KC_PGDN,
27 KC_LCTL, KC_LGUI, KC_LALT, KC_SPC, KC_SPC, KC_SPC, KC_LALT, KC_LCTL, KC_LEFT, KC_DOWN, KC_RGHT
28 ),
29
30 [1] = LAYOUT_all(
31 KC_TRNS, 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_TRNS, KC_TRNS, KC_TRNS,
32 KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS,
33 KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS,
34 KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS,
35 KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS
36 ),
37 [2] = LAYOUT_all(
38 KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS,
39 KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS,
40 KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS,
41 KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS,
42 KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS
43 ),
44 [3] = LAYOUT_all(
45 KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS,
46 KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS,
47 KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS,
48 KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS,
49 KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS
50 ),
51};
diff --git a/keyboards/sawnsprojects/krush/krush65/solder/keymaps/via/readme.md b/keyboards/sawnsprojects/krush/krush65/solder/keymaps/via/readme.md
new file mode 100644
index 000000000..2c8805006
--- /dev/null
+++ b/keyboards/sawnsprojects/krush/krush65/solder/keymaps/via/readme.md
@@ -0,0 +1 @@
# The VIA keymap for krush65 solder \ No newline at end of file
diff --git a/keyboards/sawnsprojects/krush/krush65/solder/keymaps/via/rules.mk b/keyboards/sawnsprojects/krush/krush65/solder/keymaps/via/rules.mk
new file mode 100644
index 000000000..036bd6d1c
--- /dev/null
+++ b/keyboards/sawnsprojects/krush/krush65/solder/keymaps/via/rules.mk
@@ -0,0 +1 @@
VIA_ENABLE = yes \ No newline at end of file
diff --git a/keyboards/sawnsprojects/krush/krush65/solder/readme.md b/keyboards/sawnsprojects/krush/krush65/solder/readme.md
new file mode 100644
index 000000000..27af715ed
--- /dev/null
+++ b/keyboards/sawnsprojects/krush/krush65/solder/readme.md
@@ -0,0 +1,15 @@
1# Krush65 solder
2
3![Krush65](https://cdn.shopify.com/s/files/1/0299/9497/5365/files/4_-_2BS9fH2_2048x2048.jpg)
4
5A 65% keyboard PCB made and sold by SawnsProjects with Nuxros in [mechkey.store](https://mechkey.store/blogs/store-updates/introducing-krush-65).
6
7* Keyboard Maintainer: [Mai The San](https://github.com/MaiTheSan)
8* Hardware Supported: Krush65
9* Hardware Availability: [Facebook](https://www.facebook.com/groups/vnmkmarket/posts/1410794482649627)
10
11Make example for this keyboard (after setting up your build environment):
12
13 make sawnsprojects/krush65/solder:default
14
15See 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/krush65/solder/rules.mk b/keyboards/sawnsprojects/krush/krush65/solder/rules.mk
new file mode 100644
index 000000000..1adb99650
--- /dev/null
+++ b/keyboards/sawnsprojects/krush/krush65/solder/rules.mk
@@ -0,0 +1,23 @@
1# MCU name
2MCU = atmega32u4
3
4# Bootloader selection
5BOOTLOADER = atmel-dfu
6
7# Build Options
8# change yes to no to disable
9#
10BOOTMAGIC_ENABLE = yes # Enable Bootmagic Lite
11MOUSEKEY_ENABLE = yes # Mouse keys
12EXTRAKEY_ENABLE = yes # Audio control and System control
13CONSOLE_ENABLE = yes # Console for debug
14COMMAND_ENABLE = no # Commands for debug and configuration
15# Do not enable SLEEP_LED_ENABLE. it uses the same timer as BACKLIGHT_ENABLE
16SLEEP_LED_ENABLE = no # Breathing sleep LED during USB suspend
17# if this doesn't work, see here: https://github.com/tmk/tmk_keyboard/wiki/FAQ#nkro-doesnt-work
18NKRO_ENABLE = no # USB Nkey Rollover
19BACKLIGHT_ENABLE = no # Enable keyboard backlight functionality
20RGBLIGHT_ENABLE = yes # Enable keyboard RGB underglow
21ENCODER_ENABLE = yes
22
23LAYOUTS = 65_ansi_blocker 65_ansi_blocker_split_bs \ No newline at end of file
diff --git a/keyboards/sawnsprojects/krush/krush65/solder/solder.c b/keyboards/sawnsprojects/krush/krush65/solder/solder.c
new file mode 100644
index 000000000..b8a772972
--- /dev/null
+++ b/keyboards/sawnsprojects/krush/krush65/solder/solder.c
@@ -0,0 +1,53 @@
1/* Copyright 2021 SawnsProjects
2 *
3 * This program is free software: you can redistribute it and/or modify
4 * it under the terms of the GNU General Public License as published by
5 * the Free Software Foundation, either version 2 of the License, or
6 * (at your option) any later version.
7 *
8 * This program is distributed in the hope that it will be useful,
9 * but WITHOUT ANY WARRANTY; without even the implied warranty of
10 * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
11 * GNU General Public License for more details.
12 *
13 * You should have received a copy of the GNU General Public License
14 * along with this program. If not, see <http://www.gnu.org/licenses/>.
15 */
16
17#include "solder.h"
18#include "encoder_actions.h"
19
20 /* Custom encoder control - handles CW/CCW turning of encoder
21 * Default behavior:
22 * main layer:
23 * CW: move mouse right
24 * CCW: move mouse left
25 * other layers:
26 * CW: = (equals/plus - increase slider in Adobe products)
27 * CCW: - (minus/underscore - decrease slider in adobe products)
28 */
29bool encoder_update_kb(uint8_t index, bool clockwise) {
30 if (!encoder_update_user(index, clockwise)) { return false; }
31 if (index == 0) {
32 switch (get_highest_layer(layer_state)) {
33
34 case 0:
35 // main layer - move mouse right (CW) and left (CCW)
36 if (clockwise) {
37 tap_code_delay(KC_VOLU, 10);
38 } else {
39 tap_code_delay(KC_VOLD, 10);
40 }
41 break;
42 default:
43 // other layers - =/+ (quals/plus) (CW) and -/_ (minus/underscore) (CCW)
44 if (clockwise) {
45 tap_code16(C(KC_EQL));
46 } else {
47 tap_code16(C(KC_MINS));
48 }
49 break;
50 }
51 }
52 return true;
53} \ No newline at end of file
diff --git a/keyboards/sawnsprojects/krush/krush65/solder/solder.h b/keyboards/sawnsprojects/krush/krush65/solder/solder.h
new file mode 100644
index 000000000..58f6bed57
--- /dev/null
+++ b/keyboards/sawnsprojects/krush/krush65/solder/solder.h
@@ -0,0 +1,93 @@
1/* Copyright 2021 SawnsProjects
2 *
3 * This program is free software: you can redistribute it and/or modify
4 * it under the terms of the GNU General Public License as published by
5 * the Free Software Foundation, either version 2 of the License, or
6 * (at your option) any later version.
7 *
8 * This program is distributed in the hope that it will be useful,
9 * but WITHOUT ANY WARRANTY; without even the implied warranty of
10 * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
11 * GNU General Public License for more details.
12 *
13 * You should have received a copy of the GNU General Public License
14 * along with this program. If not, see <http://www.gnu.org/licenses/>.
15 */
16
17#pragma once
18
19#include "quantum.h"
20
21#define LAYOUT_all( \
22 K00, K10, K01, K11, K02, K12, K03, K13, K04, K14, K05, K15, K06, K26, K17, K07, \
23 K20, K30, K21, K31, K22, K32, K23, K33, K24, K34, K25, K35, K36, K46, K37, \
24 K40, K50, K41, K51, K42, K52, K43, K53, K44, K54, K45, K55, K47, K57, \
25 K60, K70, K61, K71, K62, K72, K63, K73, K64, K74, K65, K75, K77, K67, \
26 K80, K90, K81, K82, K92, K93, K94, K85, K95, K97, K87 \
27) { \
28 { K00, K01, K02, K03, K04, K05, K06, K07 }, \
29 { K10, K11, K12, K13, K14, K15, KC_NO, K17 }, \
30 { K20, K21, K22, K23, K24, K25, K26, KC_NO }, \
31 { K30, K31, K32, K33, K34, K35, K36, K37 }, \
32 { K40, K41, K42, K43, K44, K45, K46, K47 }, \
33 { K50, K51, K52, K53, K54, K55, KC_NO, K57 }, \
34 { K60, K61, K62, K63, K64, K65, KC_NO, K67 }, \
35 { K70, K71, K72, K73, K74, K75, KC_NO, K77 }, \
36 { K80, K81, K82, KC_NO, KC_NO, K85, KC_NO, K87 }, \
37 { K90, KC_NO, K92, K93, K94, K95, KC_NO, K97 }, \
38}
39#define LAYOUT_65_ansi_blocker( \
40 K00, K10, K01, K11, K02, K12, K03, K13, K04, K14, K05, K15, K06, K26, K07, \
41 K20, K30, K21, K31, K22, K32, K23, K33, K24, K34, K25, K35, K36, K46, K37, \
42 K40, K50, K41, K51, K42, K52, K43, K53, K44, K54, K45, K55, K47, K57, \
43 K60, K70, K61, K71, K62, K72, K63, K73, K64, K74, K65, K75, K77, K67, \
44 K80, K90, K81, K92, K94, K85, K95, K97, K87 \
45) { \
46 { K00, K01, K02, K03, K04, K05, K06, K07 }, \
47 { K10, K11, K12, K13, K14, K15, KC_NO, KC_NO }, \
48 { K20, K21, K22, K23, K24, K25, K26, KC_NO }, \
49 { K30, K31, K32, K33, K34, K35, K36, K37 }, \
50 { K40, K41, K42, K43, K44, K45, K46, K47 }, \
51 { K50, K51, K52, K53, K54, K55, KC_NO, K57 }, \
52 { K60, K61, K62, K63, K64, K65, KC_NO, K67 }, \
53 { K70, K71, K72, K73, K74, K75, KC_NO, K77 }, \
54 { K80, K81, KC_NO, KC_NO, KC_NO, K85, KC_NO, K87 }, \
55 { K90, KC_NO, K92, KC_NO, K94, K95, KC_NO, K97 }, \
56}
57#define LAYOUT_65_ansi_blocker_split_bs( \
58 K00, K10, K01, K11, K02, K12, K03, K13, K04, K14, K05, K15, K06, K26, K17, K07, \
59 K20, K30, K21, K31, K22, K32, K23, K33, K24, K34, K25, K35, K36, K46, K37, \
60 K40, K50, K41, K51, K42, K52, K43, K53, K44, K54, K45, K55, K47, K57, \
61 K60, K70, K61, K71, K62, K72, K63, K73, K64, K74, K65, K75, K77, K67, \
62 K80, K90, K81, K92, K94, K85, K95, K97, K87 \
63) { \
64 { K00, K01, K02, K03, K04, K05, K06, K07 }, \
65 { K10, K11, K12, K13, K14, K15, KC_NO, K17 }, \
66 { K20, K21, K22, K23, K24, K25, K26, KC_NO }, \
67 { K30, K31, K32, K33, K34, K35, K36, K37 }, \
68 { K40, K41, K42, K43, K44, K45, K46, K47 }, \
69 { K50, K51, K52, K53, K54, K55, KC_NO, K57 }, \
70 { K60, K61, K62, K63, K64, K65, KC_NO, K67 }, \
71 { K70, K71, K72, K73, K74, K75, KC_NO, K77 }, \
72 { K80, K81, KC_NO, KC_NO, KC_NO, K85, KC_NO, K87 }, \
73 { K90, KC_NO, K92, KC_NO, K94, K95, KC_NO, K97 }, \
74}
75#define LAYOUT_65_ansi_blocker_split_bs_sp( \
76 K00, K10, K01, K11, K02, K12, K03, K13, K04, K14, K05, K15, K06, K26, K17, K07, \
77 K20, K30, K21, K31, K22, K32, K23, K33, K24, K34, K25, K35, K36, K46, K37, \
78 K40, K50, K41, K51, K42, K52, K43, K53, K44, K54, K45, K55, K47, K57, \
79 K60, K70, K61, K71, K62, K72, K63, K73, K64, K74, K65, K75, K77, K67, \
80 K80, K90, K81, K82, K92, K93, K94, K85, K95, K97, K87 \
81) { \
82 { K00, K01, K02, K03, K04, K05, K06, K07 }, \
83 { K10, K11, K12, K13, K14, K15, KC_NO, K17 }, \
84 { K20, K21, K22, K23, K24, K25, K26, KC_NO }, \
85 { K30, K31, K32, K33, K34, K35, K36, K37 }, \
86 { K40, K41, K42, K43, K44, K45, K46, K47 }, \
87 { K50, K51, K52, K53, K54, K55, KC_NO, K57 }, \
88 { K60, K61, K62, K63, K64, K65, KC_NO, K67 }, \
89 { K70, K71, K72, K73, K74, K75, KC_NO, K77 }, \
90 { K80, K81, K82, KC_NO, KC_NO, K85, KC_NO, K87 }, \
91 { K90, KC_NO, K92, K93, K94, K95, KC_NO, K97 }, \
92}
93