aboutsummaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorQMK Bot <hello@qmk.fm>2021-05-27 05:22:29 +0000
committerQMK Bot <hello@qmk.fm>2021-05-27 05:22:29 +0000
commit69604e175033a7b6eaf8d3fcaab6b3aa4c077b95 (patch)
tree3f8930bf62d8b120ac48dd9afd07612a745f47cb
parent06aea834c420d5c11bbcf64d37596cb0cee9af98 (diff)
parent7e14f85dd50e3d0ec04fd6a7a5dc6549b79c0767 (diff)
downloadqmk_firmware-69604e175033a7b6eaf8d3fcaab6b3aa4c077b95.tar.gz
qmk_firmware-69604e175033a7b6eaf8d3fcaab6b3aa4c077b95.zip
Merge remote-tracking branch 'origin/master' into develop
-rw-r--r--keyboards/nopunin10did/jabberwocky/config.h52
-rw-r--r--keyboards/nopunin10did/jabberwocky/info.json127
-rw-r--r--keyboards/nopunin10did/jabberwocky/jabberwocky.c17
-rw-r--r--keyboards/nopunin10did/jabberwocky/jabberwocky.h65
-rw-r--r--keyboards/nopunin10did/jabberwocky/keymaps/default/keymap.c38
-rw-r--r--keyboards/nopunin10did/jabberwocky/keymaps/nopunin10did/keymap.c48
-rw-r--r--keyboards/nopunin10did/jabberwocky/readme.md27
-rw-r--r--keyboards/nopunin10did/jabberwocky/rules.mk22
8 files changed, 396 insertions, 0 deletions
diff --git a/keyboards/nopunin10did/jabberwocky/config.h b/keyboards/nopunin10did/jabberwocky/config.h
new file mode 100644
index 000000000..0aa141c1a
--- /dev/null
+++ b/keyboards/nopunin10did/jabberwocky/config.h
@@ -0,0 +1,52 @@
1/* Copyright 2021 W. Alex Ronke, a.k.a. NoPunIn10Did (w.alex.ronke@gmail.com)
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 "config_common.h"
20
21/* USB Device descriptor parameter */
22#define VENDOR_ID 0x4E50 // "NP"
23#define PRODUCT_ID 0x4A57 // "JW"
24#define DEVICE_VER 0x0001
25#define MANUFACTURER NoPunIn10Did
26#define PRODUCT Jabberwocky
27
28/* key matrix size */
29#define MATRIX_ROWS 12
30#define MATRIX_COLS 10
31
32/* key matrix pins */
33#define MATRIX_ROW_PINS { E6, B4, B5, B7, D5, C7, F1, F0, B1, B3, B2, B6 }
34#define MATRIX_COL_PINS { F4, F5, F6, F7, D7, C6, D4, D0, D2, D3 }
35#define UNUSED_PINS
36
37/* Indicator LEDs */
38#define LED_NUM_LOCK_PIN D1
39#define LED_CAPS_LOCK_PIN B0
40
41/* COL2ROW or ROW2COL */
42#define DIODE_DIRECTION COL2ROW
43
44/* Set 0 if debouncing isn't needed */
45#define DEBOUNCE 5
46
47/* Mechanical locking support. Use KC_LCAP, KC_LNUM or KC_LSCR instead in keymap */
48#define LOCKING_SUPPORT_ENABLE
49
50/* Locking resynchronize hack */
51#define LOCKING_RESYNC_ENABLE
52
diff --git a/keyboards/nopunin10did/jabberwocky/info.json b/keyboards/nopunin10did/jabberwocky/info.json
new file mode 100644
index 000000000..5282a591f
--- /dev/null
+++ b/keyboards/nopunin10did/jabberwocky/info.json
@@ -0,0 +1,127 @@
1{
2 "keyboard_name": "Jabberwocky",
3 "url": "https://github.com/qmk/qmk_firmware/tree/master/keyboards/nopunin10did/railroad",
4 "maintainer": "NoPunIn10Did",
5 "manufacturer": "NoPunIn10Did",
6 "width": 23.5,
7 "height": 7.75,
8 "layouts": {
9 "LAYOUT_rh_any": {
10 "layout": [
11 {"x":0.75, "y":0.25, "label":"Esc"},
12 {"x":2.25, "y":0.25, "label":"F1"},
13 {"x":3.25, "y":0.25, "label":"F2"},
14 {"x":4, "y":0.25, "r":14, "rx":4, "ry":2.5, "label":"F3"},
15 {"x":5, "y":0.125, "r":14, "rx":4, "ry":2.5, "label":"F4"},
16 {"x":6, "y":0.25, "r":14, "rx":4, "ry":2.5, "label":"F5"},
17 {"x":7, "y":0.375, "r":14, "rx":4, "ry":2.5, "label":"F6"},
18 {"x":9.25, "y":0.375, "r":-14, "rx":13.25, "ry":2.5, "label":"F7"},
19 {"x":10.25, "y":0.25, "r":-14, "rx":13.25, "ry":2.5, "label":"F8"},
20 {"x":11.25, "y":0.125, "r":-14, "rx":13.25, "ry":2.5, "label":"F9"},
21 {"x":12.25, "y":0.25, "r":-14, "rx":13.25, "ry":2.5, "label":"F10"},
22 {"x":13, "y":0.25, "label":"F11"},
23 {"x":14, "y":0.25, "label":"F12"},
24 {"x":15.125,"y":0.25, "label":"Print"},
25 {"x":16.125,"y":0.25, "label":"Scroll"},
26 {"x":17.25, "y":0.25, "label":"Ins"},
27 {"x":18.25, "y":0.25, "label":"Del"},
28 {"x":19.5, "y":0.25, "label":"Home"},
29 {"x":20.5, "y":0.25, "label":"End"},
30 {"x":21.5, "y":0.25, "label":"PgUp"},
31 {"x":22.5, "y":0.25, "label":"PgDn"},
32 {"x":2, "y":1.5, "label":"Grave"},
33 {"x":3, "y":1.5, "label":"1"},
34 {"x":4, "y":1.5, "r":14, "rx":4, "ry":2.5, "label":"2"},
35 {"x":5, "y":1.375, "r":14, "rx":4, "ry":2.5, "label":"3"},
36 {"x":6, "y":1.5, "r":14, "rx":4, "ry":2.5, "label":"4"},
37 {"x":7, "y":1.625, "r":14, "rx":4, "ry":2.5, "label":"5"},
38 {"x":9.25, "y":1.625, "r":-14, "rx":13.25, "ry":2.5, "label":"6"},
39 {"x":10.25, "y":1.5, "r":-14, "rx":13.25, "ry":2.5, "label":"7"},
40 {"x":11.25, "y":1.375, "r":-14, "rx":13.25, "ry":2.5, "label":"8"},
41 {"x":12.25, "y":1.5, "r":-14, "rx":13.25, "ry":2.5, "label":"9"},
42 {"x":13.25, "y":1.5, "label":"0"},
43 {"x":14.25, "y":1.5, "label":"Dash"},
44 {"x":15.25, "y":1.5, "label":"Equals"},
45 {"x":16.25, "y":1.5, "label":"Backspace"},
46 {"x":17.25, "y":1.5, "label":"Split BS"},
47 {"x":19.5, "y":1.5, "label":"NumLock"},
48 {"x":20.5, "y":1.5, "label":"P-Div"},
49 {"x":21.5, "y":1.5, "label":"P-Mult"},
50 {"x":22.5, "y":1.5, "label":"Pause"},
51 {"x":1.25, "y":2.5, "w":1.5, "label":"Tab"},
52 {"x":2.75, "y":2.5, "label":"Q"},
53 {"x":4, "y":2.5, "r":14, "rx":4, "ry":2.5, "label":"W"},
54 {"x":5, "y":2.375, "r":14, "rx":4, "ry":2.5, "label":"E"},
55 {"x":6, "y":2.5, "r":14, "rx":4, "ry":2.5, "label":"R"},
56 {"x":7, "y":2.625, "r":14, "rx":4, "ry":2.5, "label":"T"},
57 {"x":9.25, "y":2.625, "r":-14, "rx":13.25, "ry":2.5, "label":"Y"},
58 {"x":10.25, "y":2.5, "r":-14, "rx":13.25, "ry":2.5, "label":"U"},
59 {"x":11.25, "y":2.375, "r":-14, "rx":13.25, "ry":2.5, "label":"I"},
60 {"x":12.25, "y":2.5, "r":-14, "rx":13.25, "ry":2.5, "label":"O"},
61 {"x":13.5, "y":2.5, "label":"P"},
62 {"x":14.5, "y":2.5, "label":"L bracket"},
63 {"x":15.5, "y":2.5, "label":"R bracket"},
64 {"x":16.5, "y":2.5, "w":1.5, "label":"ANSI Backslash"},
65 {"x":19.5, "y":2.5, "label":"P-7"},
66 {"x":20.5, "y":2.5, "label":"P-8"},
67 {"x":21.5, "y":2.5, "label":"P-9"},
68 {"x":22.5, "y":2.5, "label":"P-Minus"},
69 {"x":0.75, "y":3.5, "w":1.75, "label":"Caps Lock"},
70 {"x":2.5, "y":3.5, "label":"A"},
71 {"x":4, "y":3.5, "r":14, "rx":4, "ry":2.5, "label":"S"},
72 {"x":5, "y":3.375, "r":14, "rx":4, "ry":2.5, "label":"D"},
73 {"x":6, "y":3.5, "r":14, "rx":4, "ry":2.5, "label":"F"},
74 {"x":7, "y":3.625, "r":14, "rx":4, "ry":2.5, "label":"G"},
75 {"x":9.25, "y":3.625, "r":-14, "rx":13.25, "ry":2.5, "label":"H"},
76 {"x":10.25, "y":3.5, "r":-14, "rx":13.25, "ry":2.5, "label":"J"},
77 {"x":11.25, "y":3.375, "r":-14, "rx":13.25, "ry":2.5, "label":"K"},
78 {"x":12.25, "y":3.5, "r":-14, "rx":13.25, "ry":2.5, "label":"L"},
79 {"x":13.75, "y":3.5, "label":"Semicolon"},
80 {"x":14.75, "y":3.5, "label":"Quote"},
81 {"x":15.75, "y":3.5, "label":"Non-US Hash"},
82 {"x":16.75, "y":3.5, "w":1.25, "label":"Enter"},
83 {"x":19.5, "y":3.5, "label":"P-4"},
84 {"x":20.5, "y":3.5, "label":"P-5"},
85 {"x":21.5, "y":3.5, "label":"P-6"},
86 {"x":22.5, "y":3.5, "label":"P-Plus"},
87 {"x":0, "y":4.5, "w":1.25, "label":"Left Shift"},
88 {"x":1.25, "y":4.5, "label":"Non-US Backslash"},
89 {"x":2.25, "y":4.5, "label":"Z"},
90 {"x":4, "y":4.5, "r":14, "rx":4, "ry":2.5, "label":"X"},
91 {"x":5, "y":4.375, "r":14, "rx":4, "ry":2.5, "label":"C"},
92 {"x":6, "y":4.5, "r":14, "rx":4, "ry":2.5, "label":"V"},
93 {"x":7, "y":4.625, "r":14, "rx":4, "ry":2.5, "label":"B"},
94 {"x":8, "y":4.625, "r":14, "rx":4, "ry":2.5, "label":"Layer"},
95 {"x":8.25, "y":4.625, "r":-14, "rx":13.25, "ry":2.5, "label":"Layer"},
96 {"x":9.25, "y":4.625, "r":-14, "rx":13.25, "ry":2.5, "label":"N"},
97 {"x":10.25, "y":4.5, "r":-14, "rx":13.25, "ry":2.5, "label":"M"},
98 {"x":11.25, "y":4.375, "r":-14, "rx":13.25, "ry":2.5, "label":"Comma"},
99 {"x":12.25, "y":4.5, "r":-14, "rx":13.25, "ry":2.5, "label":"Period"},
100 {"x":14, "y":4.5, "label":"Slash"},
101 {"x":15, "y":4.5, "label":"JIS Backslash"},
102 {"x":16, "y":4.5, "w":1.25, "label":"Right Shift"},
103 {"x":17.25, "y":4.5, "label":"Up"},
104 {"x":19.5, "y":4.5, "label":"P-1"},
105 {"x":20.5, "y":4.5, "label":"P-2"},
106 {"x":21.5, "y":4.5, "label":"P-3"},
107 {"x":22.5, "y":4.5, "label":"P-Enter"},
108 {"x":0.5, "y":5.5, "w":1.25, "label":"Left Ctrl"},
109 {"x":1.75, "y":5.5, "w":1.25, "label":"Left GUI"},
110 {"x":4.5, "y":5.5, "w":1.25, "r":14, "rx":4, "ry":2.5, "label":"Left Alt"},
111 {"x":5.75, "y":5.5, "w":1.25, "r":14, "rx":4, "ry":2.5, "label":"Menu"},
112 {"x":7, "y":5.625, "w":2, "r":14, "rx":4, "ry":2.5, "label":"Space"},
113 {"x":8.25, "y":5.625, "w":2.75, "r":-14, "rx":13.25, "ry":2.5, "label":"Space"},
114 {"x":11, "y":5.5, "w":1.25, "r":-14, "rx":13.25, "ry":2.5, "label":"Right Alt"},
115 {"x":13.75, "y":5.5, "w":1.25, "label":"Right GUI"},
116 {"x":15, "y":5.5, "w":1.25, "label":"Right Ctrl"},
117 {"x":16.25, "y":5.5, "label":"Left"},
118 {"x":17.25, "y":5.5, "label":"Down"},
119 {"x":18.25, "y":5.5, "label":"Right"},
120 {"x":19.5, "y":5.5, "label":"P-0"},
121 {"x":20.5, "y":5.5, "label":"P-00"},
122 {"x":21.5, "y":5.5, "label":"P-Decimal"},
123 {"x":22.5, "y":5.5, "label":"P-Enter"}
124 ]
125 }
126 }
127}
diff --git a/keyboards/nopunin10did/jabberwocky/jabberwocky.c b/keyboards/nopunin10did/jabberwocky/jabberwocky.c
new file mode 100644
index 000000000..daf85248c
--- /dev/null
+++ b/keyboards/nopunin10did/jabberwocky/jabberwocky.c
@@ -0,0 +1,17 @@
1/* Copyright 2021 W. Alex Ronke, a.k.a. NoPunIn10Did (w.alex.ronke@gmail.com)
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 "jabberwocky.h"
diff --git a/keyboards/nopunin10did/jabberwocky/jabberwocky.h b/keyboards/nopunin10did/jabberwocky/jabberwocky.h
new file mode 100644
index 000000000..901b1e23a
--- /dev/null
+++ b/keyboards/nopunin10did/jabberwocky/jabberwocky.h
@@ -0,0 +1,65 @@
1/* Copyright 2021 W. Alex Ronke, a.k.a. NoPunIn10Did (w.alex.ronke@gmail.com)
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_rh_any( \
22 K0007, K0101, K0100, K0201, K0200, K0301, K0300, K0400, K0401, K0500, K0501, K0600, K0601, K0700, K0701, K0000, K0001, K0800, K0801, K0900, K0901, \
23 K0004, K0102, K0103, K0202, K0203, K0302, K0402, K0403, K0502, K0503, K0602, K0603, K0702, K0703, K0002, K0802, K0803, K0902, K0903, \
24 K0006, K0104, K0105, K0204, K0205, K0304, K0404, K0405, K0504, K0505, K0604, K0605, K0704, K0705, K0804, K0805, K0904, K0905, \
25 K0107, K0106, K0207, K0206, K0307, K0306, K0406, K0407, K0506, K0507, K0606, K0607, K0706, K0707, K0806, K0807, K0906, K0907, \
26 K0008, K0009, K0108, K0109, K0208, K0209, K0308, K0309, K0410, K0408, K0409, K0508, K0509, K0608, K0609, K0708, K0709, K0808, K0809, K0908, K0909, \
27 K0010, K0110, K0210, K0310, K0311, K0411, K0510, K0511, K0610, K0611, K0710, K0711, K0810, K0811, K0910, K0911 \
28) \
29{ \
30 { K0000, K0100, K0200, K0300, K0400, K0500, K0600, K0700, K0800, K0900 }, \
31 { K0001, K0101, K0201, K0301, K0401, K0501, K0601, K0701, K0801, K0901 }, \
32 { K0002, K0102, K0202, K0302, K0402, K0502, K0602, K0702, K0802, K0902 }, \
33 { KC_NO, K0103, K0203, KC_NO, K0403, K0503, K0603, K0703, K0803, K0903 }, \
34 { K0004, K0104, K0204, K0304, K0404, K0504, K0604, K0704, K0804, K0904 }, \
35 { KC_NO, K0105, K0205, KC_NO, K0405, K0505, K0605, K0705, K0805, K0905 }, \
36 { K0006, K0106, K0206, K0306, K0406, K0506, K0606, K0706, K0806, K0906 }, \
37 { K0007, K0107, K0207, K0307, K0407, K0507, K0607, K0707, K0807, K0907 }, \
38 { K0008, K0108, K0208, K0308, K0408, K0508, K0608, K0708, K0808, K0908 }, \
39 { K0009, K0109, K0209, K0309, K0409, K0509, K0609, K0709, K0809, K0909 }, \
40 { K0010, K0110, K0210, K0310, K0410, K0510, K0610, K0710, K0810, K0910 }, \
41 { KC_NO, KC_NO, KC_NO, K0311, K0411, K0511, K0611, K0711, K0811, K0911 } \
42}
43
44#define LAYOUT_lh_any( \
45 K0800, K0801, K0900, K0901, K0007, K0101, K0100, K0201, K0200, K0301, K0300, K0400, K0401, K0500, K0501, K0600, K0601, K0700, K0701, K0000, K0001, \
46 K0802, K0803, K0902, K0903, K0004, K0102, K0103, K0202, K0203, K0302, K0402, K0403, K0502, K0503, K0602, K0603, K0702, K0703, K0002, \
47 K0804, K0805, K0904, K0905, K0006, K0104, K0105, K0204, K0205, K0304, K0404, K0405, K0504, K0505, K0604, K0605, K0704, K0705, \
48 K0806, K0807, K0906, K0907, K0107, K0106, K0207, K0206, K0307, K0306, K0406, K0407, K0506, K0507, K0606, K0607, K0706, K0707, \
49 K0808, K0809, K0908, K0909, K0008, K0009, K0108, K0109, K0208, K0209, K0308, K0309, K0410, K0408, K0409, K0508, K0509, K0608, K0609, K0708, K0709, \
50 K0810, K0811, K0910, K0911, K0010, K0110, K0210, K0310, K0311, K0411, K0510, K0511, K0610, K0611, K0710, K0711 \
51) \
52{ \
53 { K0000, K0100, K0200, K0300, K0400, K0500, K0600, K0700, K0800, K0900 }, \
54 { K0001, K0101, K0201, K0301, K0401, K0501, K0601, K0701, K0801, K0901 }, \
55 { K0002, K0102, K0202, K0302, K0402, K0502, K0602, K0702, K0802, K0902 }, \
56 { KC_NO, K0103, K0203, KC_NO, K0403, K0503, K0603, K0703, K0803, K0903 }, \
57 { K0004, K0104, K0204, K0304, K0404, K0504, K0604, K0704, K0804, K0904 }, \
58 { KC_NO, K0105, K0205, KC_NO, K0405, K0505, K0605, K0705, K0805, K0905 }, \
59 { K0006, K0106, K0206, K0306, K0406, K0506, K0606, K0706, K0806, K0906 }, \
60 { K0007, K0107, K0207, K0307, K0407, K0507, K0607, K0707, K0807, K0907 }, \
61 { K0008, K0108, K0208, K0308, K0408, K0508, K0608, K0708, K0808, K0908 }, \
62 { K0009, K0109, K0209, K0309, K0409, K0509, K0609, K0709, K0809, K0909 }, \
63 { K0010, K0110, K0210, K0310, K0410, K0510, K0610, K0710, K0810, K0910 }, \
64 { KC_NO, KC_NO, KC_NO, K0311, K0411, K0511, K0611, K0711, K0811, K0911 } \
65}
diff --git a/keyboards/nopunin10did/jabberwocky/keymaps/default/keymap.c b/keyboards/nopunin10did/jabberwocky/keymaps/default/keymap.c
new file mode 100644
index 000000000..1f26ae3e9
--- /dev/null
+++ b/keyboards/nopunin10did/jabberwocky/keymaps/default/keymap.c
@@ -0,0 +1,38 @@
1/* Copyright 2021 W. Alex Ronke, a.k.a. NoPunIn10Did (w.alex.ronke@gmail.com)
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_rh_any(
22
23KC_ESC ,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_PSCR,KC_SLCK,KC_INS ,KC_DEL ,KC_HOME,KC_END ,KC_PGUP,KC_PGDN,
24 KC_GRV ,KC_1 ,KC_2 ,KC_3 ,KC_4 ,KC_5 , KC_6 ,KC_7 ,KC_8 ,KC_9 ,KC_0 ,KC_MINS,KC_EQL ,KC_BSPC,KC_BSPC, KC_NLCK,KC_PSLS,KC_PAST,KC_PMNS,
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_P7 ,KC_P8 ,KC_P9 ,KC_PPLS,
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_ENT , KC_P4 ,KC_P5 ,KC_P6 ,KC_PPLS,
27KC_LSFT,KC_LSFT,KC_Z ,KC_X ,KC_C ,KC_V ,KC_B ,MO(1), MO(1), KC_N ,KC_M ,KC_COMM,KC_DOT ,KC_SLSH,KC_RSFT,KC_RSFT,KC_UP , KC_P1 ,KC_P2 ,KC_P3 ,KC_PENT,
28 KC_LCTL,KC_LGUI, KC_LALT,KC_MENU,KC_SPC , KC_SPC , KC_ALGR, KC_RGUI,KC_RCTL,KC_LEFT,KC_DOWN,KC_RGHT, KC_P0 ,KC_P0 ,KC_PDOT,KC_PENT),
29
30
31[1] = LAYOUT_rh_any(
32RESET ,XXXXXXX,XXXXXXX,XXXXXXX,XXXXXXX,XXXXXXX,XXXXXXX, XXXXXXX,XXXXXXX,XXXXXXX,XXXXXXX,XXXXXXX,XXXXXXX,XXXXXXX,XXXXXXX,XXXXXXX,XXXXXXX,XXXXXXX,XXXXXXX,XXXXXXX,XXXXXXX,
33 XXXXXXX,XXXXXXX,XXXXXXX,XXXXXXX,XXXXXXX,XXXXXXX, XXXXXXX,XXXXXXX,XXXXXXX,XXXXXXX,XXXXXXX,XXXXXXX,XXXXXXX,XXXXXXX,XXXXXXX, XXXXXXX,XXXXXXX,XXXXXXX,XXXXXXX,
34 XXXXXXX,XXXXXXX,XXXXXXX,XXXXXXX,RESET ,XXXXXXX, XXXXXXX,XXXXXXX,XXXXXXX,XXXXXXX,XXXXXXX,XXXXXXX,XXXXXXX,XXXXXXX, XXXXXXX,XXXXXXX,XXXXXXX,XXXXXXX,
35 XXXXXXX,XXXXXXX,XXXXXXX,XXXXXXX,XXXXXXX,XXXXXXX, XXXXXXX,XXXXXXX,XXXXXXX,XXXXXXX,XXXXXXX,XXXXXXX,XXXXXXX,XXXXXXX, XXXXXXX,XXXXXXX,XXXXXXX,XXXXXXX,
36_______,_______,XXXXXXX,XXXXXXX,XXXXXXX,XXXXXXX,KC_PAUS,_______,_______,XXXXXXX,XXXXXXX,XXXXXXX,XXXXXXX,XXXXXXX,_______,_______,XXXXXXX, XXXXXXX,XXXXXXX,XXXXXXX,XXXXXXX,
37 _______,_______, _______,XXXXXXX,XXXXXXX, XXXXXXX, _______, _______,_______,XXXXXXX,XXXXXXX,XXXXXXX, XXXXXXX,XXXXXXX,XXXXXXX,XXXXXXX)
38};
diff --git a/keyboards/nopunin10did/jabberwocky/keymaps/nopunin10did/keymap.c b/keyboards/nopunin10did/jabberwocky/keymaps/nopunin10did/keymap.c
new file mode 100644
index 000000000..970cfb30f
--- /dev/null
+++ b/keyboards/nopunin10did/jabberwocky/keymaps/nopunin10did/keymap.c
@@ -0,0 +1,48 @@
1/* Copyright 2021 W. Alex Ronke, a.k.a. NoPunIn10Did (w.alex.ronke@gmail.com)
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
19#define LSA_DEL LSA_T(KC_DEL)
20#define RALTHOM RALT_T(KC_HOME)
21#define RWINEND RGUI_T(KC_END)
22#define RCTLEND RCTL_T(KC_END)
23#define LSHNUBS LSFT_T(KC_NUBS)
24#define RSHF_RO RSFT_T(KC_RO)
25#define FN_CALC LT(1,KC_CALC)
26#define FN_MENU LT(1,KC_MENU)
27#define FN_PENT LT(1,KC_PENT)
28
29const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = {
30
31[0] = LAYOUT_rh_any(
32
33KC_ESC ,KC_F1 ,KC_F2 ,KC_F3 ,KC_F4 ,KC_F5 ,KC_F6 , KC_F7 ,KC_F8 ,KC_F9 ,KC_F10 ,KC_F11 ,KC_F12 ,KC_HOME,KC_END ,KC_PGUP,KC_PGDN,KC_DEL ,KC_INS ,KC_PSCR,KC_BSPC,
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,KC_BSPC, KC_EQL ,KC_PSLS,KC_PAST,KC_PMNS,
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, KC_P7 ,KC_P8 ,KC_P9 ,KC_PPLS,
36 KC_LCTL,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_ENT , KC_P4 ,KC_P5 ,KC_P6 ,KC_PPLS,
37KC_LSFT,KC_LSFT,KC_Z ,KC_X ,KC_C ,KC_V ,KC_B ,LSA_DEL,FN_CALC,KC_N ,KC_M ,KC_COMM,KC_DOT ,KC_SLSH,KC_RSFT,KC_RSFT,KC_UP , KC_P1 ,KC_P2 ,KC_P3 ,FN_PENT,
38 KC_LCTL,KC_LGUI, KC_LALT,FN_MENU,KC_SPC , RALTHOM, RALTHOM, RWINEND,RCTLEND,KC_LEFT,KC_DOWN,KC_RGHT, KC_P0 ,KC_P0 ,KC_PDOT,FN_PENT),
39
40
41[1] = LAYOUT_rh_any(
42RESET ,XXXXXXX,XXXXXXX,XXXXXXX,XXXXXXX,XXXXXXX,XXXXXXX, XXXXXXX,XXXXXXX,XXXXXXX,XXXXXXX,XXXXXXX,XXXXXXX,KC_F13 ,KC_F14 ,KC_F15 ,KC_F16 ,XXXXXXX,XXXXXXX,XXXXXXX,XXXXXXX,
43 XXXXXXX,XXXXXXX,XXXXXXX,XXXXXXX,XXXXXXX,XXXXXXX, XXXXXXX,XXXXXXX,XXXXXXX,XXXXXXX,XXXXXXX,XXXXXXX,XXXXXXX,XXXXXXX,XXXXXXX, KC_NLCK,XXXXXXX,XXXXXXX,XXXXXXX,
44 XXXXXXX,XXXXXXX,XXXXXXX,XXXXXXX,RESET ,XXXXXXX, XXXXXXX,XXXXXXX,XXXXXXX,XXXXXXX,XXXXXXX,XXXXXXX,XXXXXXX,KC_JYEN, XXXXXXX,XXXXXXX,XXXXXXX,XXXXXXX,
45 KC_CAPS,XXXXXXX,XXXXXXX,XXXXXXX,XXXXXXX,XXXXXXX, XXXXXXX,XXXXXXX,XXXXXXX,KC_SLCK,XXXXXXX,XXXXXXX,XXXXXXX,XXXXXXX, XXXXXXX,XXXXXXX,XXXXXXX,XXXXXXX,
46LSHNUBS,LSHNUBS,XXXXXXX,XXXXXXX,XXXXXXX,XXXXXXX,KC_BRK ,XXXXXXX,_______,XXXXXXX,XXXXXXX,XXXXXXX,XXXXXXX,XXXXXXX,RSHF_RO,RSHF_RO,XXXXXXX, XXXXXXX,XXXXXXX,XXXXXXX,_______,
47 _______,_______, _______,_______,XXXXXXX, _______, _______, _______,_______,XXXXXXX,XXXXXXX,XXXXXXX, XXXXXXX,XXXXXXX,KC_PCMM,_______)
48};
diff --git a/keyboards/nopunin10did/jabberwocky/readme.md b/keyboards/nopunin10did/jabberwocky/readme.md
new file mode 100644
index 000000000..216424902
--- /dev/null
+++ b/keyboards/nopunin10did/jabberwocky/readme.md
@@ -0,0 +1,27 @@
1# Jabberwocky
2
3![Jabberwocky](https://diplomacyvariants.files.wordpress.com/2021/03/dexterous_jabberwocky.jpg)
4
5A full-size, columnar-staggered, Alice-style keyboard. The Jabberwocky comes in two varieties currently:
6* Dexterous (with numpad on the right side, pictured above)
7* Sinister (with numpad on the left side)
8
9Both the Dexterous and Sinister use the same firmware. The numpad and the four keys above it are simply transposed from the right to the left side of the board.
10
11For more information, join the [NoPunIn10Key Discord](https://discord.gg/sku2Y6w).
12
13* Keyboard Maintainer: [Alex Ronke](diplomacyvariants.wordpress.com), also known as NoPunIn10Did.
14* Hardware Supported: Dexterous Jabberwocky and Sinister Jabberwocky (2021 March)
15* Hardware Availability: Currently by request only
16
17To jump the bootloader, either:
18# If loaded with the default layout, use Function-Escape or Function-R *(the function buttons are the 1u keys next to B and N)* **OR**
19# Use the physical reset switch near the USB port *(if provided for your version of the board)* **OR**
20# Use the physical reset switch on the Elite C **OR**
21# Briefly jump the Reset and Ground pins of the Elite C
22
23Make example for this keyboard (after setting up your build environment):
24
25 make nopunin10did/jabberwocky:default
26
27See 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).
diff --git a/keyboards/nopunin10did/jabberwocky/rules.mk b/keyboards/nopunin10did/jabberwocky/rules.mk
new file mode 100644
index 000000000..89f2be85b
--- /dev/null
+++ b/keyboards/nopunin10did/jabberwocky/rules.mk
@@ -0,0 +1,22 @@
1# MCU name
2MCU = atmega32u4
3
4# Bootloader
5BOOTLOADER = atmel-dfu
6
7# Build Options
8# change yes to no to disable
9#
10BOOTMAGIC_ENABLE = full # Virtual DIP switch configuration
11MOUSEKEY_ENABLE = yes # Mouse keys
12EXTRAKEY_ENABLE = yes # Audio control and System control
13CONSOLE_ENABLE = no # 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 = yes # USB Nkey Rollover
19BACKLIGHT_ENABLE = no # Enable keyboard backlight functionality
20RGBLIGHT_ENABLE = no # Enable keyboard RGB underglow
21BLUETOOTH_ENABLE = no # Enable Bluetooth
22AUDIO_ENABLE = no # Audio output