aboutsummaryrefslogtreecommitdiff
path: root/keyboards/knobgoblin
diff options
context:
space:
mode:
authorZac Moulton <moulton.zac@gmail.com>2021-09-10 18:56:50 -0700
committerGitHub <noreply@github.com>2021-09-10 18:56:50 -0700
commitd7747a2d700eec08679011d79dc6192fe43ca402 (patch)
treebb714979ee6522af754c6deba60cd174fec0fdaf /keyboards/knobgoblin
parent759d1927f099ba319ad09c69a2cc71026d775713 (diff)
downloadqmk_firmware-d7747a2d700eec08679011d79dc6192fe43ca402.tar.gz
qmk_firmware-d7747a2d700eec08679011d79dc6192fe43ca402.zip
[Keymap] moults31 userspace and keymaps (#12025)
Diffstat (limited to 'keyboards/knobgoblin')
-rw-r--r--keyboards/knobgoblin/keymaps/moults31/keymap.c170
-rw-r--r--keyboards/knobgoblin/keymaps/moults31/readme.md3
-rw-r--r--keyboards/knobgoblin/keymaps/moults31/rules.mk3
-rw-r--r--keyboards/knobgoblin/keymaps/via/keymap.c8
4 files changed, 180 insertions, 4 deletions
diff --git a/keyboards/knobgoblin/keymaps/moults31/keymap.c b/keyboards/knobgoblin/keymaps/moults31/keymap.c
new file mode 100644
index 000000000..16830bc98
--- /dev/null
+++ b/keyboards/knobgoblin/keymaps/moults31/keymap.c
@@ -0,0 +1,170 @@
1/* Copyright 2020 MrT1ddl3s
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#include "moults31.h"
20
21const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = {
22
23 [0] = LAYOUT_ortho(
24 KC_NLCK, KC_PSLS, KC_PAST, KC_PMNS,
25 KC_P7, KC_P8, KC_P9, KC_PPLS,
26 KC_P4, KC_P5, KC_P6, KC_PPLS,
27 KC_MPLY, KC_P1, KC_P2, KC_P3, KC_PENT,
28 KC_MUTE, MO(10), KC_P0, KC_PDOT, KC_PENT
29 ),
30
31 [1] = LAYOUT_ortho(
32 KC_ESC, KC_TRNS, KC_TRNS, KC_TRNS,
33 KC_HOME, KC_TRNS, KC_PGUP, KC_TRNS,
34 KC_END , KC_UP, KC_PGDN, KC_TRNS,
35 KC_TRNS, KC_LEFT, KC_DOWN, KC_RIGHT, KC_SPC,
36 KC_TRNS, MO(10), KC_BSPC, KC_DEL, KC_TRNS
37 ),
38
39 [2] = LAYOUT_ortho(
40 KC_2, KC_TRNS, KC_TRNS, KC_TRNS,
41 M_VSC_MVEDTRPRVGRP, M_VSC_MVEDTRNXTGRP, KC_TRNS, KC_TRNS,
42 M_VSC_EDGRPPRV, M_VSC_EDGRPNXT, KC_TRNS, KC_TRNS,
43 KC_TRNS, M_VSC_SIDEBARFOCUS, M_VSC_SIDEBARCLOSE, M_VSC_TERMFOCUS, KC_TRNS,
44 M_VSC_FILECLOSE, MO(10), KC_TRNS, KC_TRNS, KC_TRNS
45 ),
46
47 [3] = LAYOUT_ortho(
48 KC_3, KC_TRNS, KC_TRNS, KC_TRNS,
49 KC_TRNS, KC_TRNS, KC_TRNS, M_GDB_PAUSE,
50 M_GDB_RESTART, M_GDB_STOP, KC_TRNS, M_GDB_PAUSE,
51 M_VSC_DBGCNSLFOCUS, M_GDB_STEPOVER, M_GDB_STEPIN, M_GDB_STEPOUT, M_GDB_PLAY,
52 KC_TRNS, MO(10), KC_TRNS, KC_TRNS, M_GDB_PLAY
53 ),
54
55 [4] = LAYOUT_ortho(
56 KC_4, KC_TRNS, KC_TRNS, KC_TRNS,
57 M_OBS_VOICE_UNMUTE, M_OBS_MOOSIC_MUTE, M_OBS_MOOSIC_UNMUTE, KC_TRNS,
58 M_OBS_DSKT_MUTE, M_OBS_DSKT_UNMUTE, M_OBS_VOICE_MUTE, KC_TRNS,
59 KC_TRNS, M_OBS_BRB, M_OBS_GAME, M_OBS_JSTCHT, KC_TRNS,
60 KC_TRNS, MO(10), KC_TRNS, KC_TRNS, KC_TRNS
61 ),
62
63 [5] = LAYOUT_ortho(
64 KC_5, KC_TRNS, KC_TRNS, KC_TRNS,
65 KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS,
66 KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS,
67 KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS,
68 KC_TRNS, MO(10), KC_TRNS, KC_TRNS, KC_TRNS
69 ),
70
71 [6] = LAYOUT_ortho(
72 KC_6, KC_TRNS, KC_TRNS, KC_TRNS,
73 KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS,
74 KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS,
75 KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS,
76 KC_TRNS, MO(10), KC_TRNS, KC_TRNS, KC_TRNS
77 ),
78
79 [7] = LAYOUT_ortho(
80 KC_7, KC_TRNS, KC_TRNS, KC_TRNS,
81 KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS,
82 KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS,
83 KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS,
84 KC_TRNS, MO(10), KC_TRNS, KC_TRNS, KC_TRNS
85 ),
86
87 [8] = LAYOUT_ortho(
88 KC_8, KC_TRNS, KC_TRNS, KC_TRNS,
89 KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS,
90 KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS,
91 KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS,
92 KC_TRNS, MO(10), KC_TRNS, KC_TRNS, KC_TRNS
93 ),
94
95 [9] = LAYOUT_ortho(
96 KC_9, KC_TRNS, KC_TRNS, KC_TRNS,
97 KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS,
98 KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS,
99 KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS,
100 KC_TRNS, MO(10), KC_TRNS, KC_TRNS, KC_TRNS
101 ),
102
103 [10] = LAYOUT_ortho(
104 RESET, KC_TRNS, KC_TRNS, KC_TRNS,
105 TO(7), TO(8), TO(9), KC_TRNS,
106 TO(4), TO(5), TO(6), KC_TRNS,
107 KC_TRNS, TO(1), TO(2), TO(3), KC_TRNS,
108 KC_TRNS, KC_TRNS, TO(0), KC_TRNS, KC_TRNS
109 ),
110
111
112
113};
114
115/* byte map for the goblin logo, knob goblin text, and level text */
116static void render_goblin_logo(void) {
117 static const char PROGMEM my_logo[] = {
118 0x00, 0xe0, 0x40, 0x80, 0x80, 0x00, 0x00, 0x80, 0x80, 0xc0, 0x60, 0x20, 0x10, 0x08, 0x08, 0x08,
119 0x08, 0x08, 0x08, 0x10, 0x20, 0x60, 0xc0, 0x80, 0x80, 0x00, 0x00, 0x80, 0x80, 0x40, 0xe0, 0x00,
120 0x00, 0x03, 0x06, 0x3c, 0x49, 0x91, 0x21, 0x00, 0x40, 0x80, 0x80, 0x80, 0x80, 0x00, 0x60, 0x00,
121 0x00, 0x60, 0x00, 0x80, 0x80, 0x80, 0x80, 0x40, 0x00, 0x21, 0x91, 0x49, 0x3c, 0x06, 0x03, 0x00,
122 0x00, 0x00, 0x00, 0x00, 0x00, 0x01, 0x1f, 0x60, 0x40, 0xc0, 0x06, 0x0e, 0x0f, 0x67, 0x50, 0xc0,
123 0xc0, 0x50, 0x67, 0x0f, 0x0e, 0x06, 0xc0, 0x40, 0x60, 0x1f, 0x01, 0x00, 0x00, 0x00, 0x00, 0x00,
124 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x07, 0x7b, 0xc7, 0x8e, 0x1e, 0x3e, 0x3e,
125 0x3e, 0x3e, 0x1e, 0x8e, 0xc7, 0x7b, 0x07, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
126 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x01, 0x03, 0x06, 0x04,
127 0x04, 0x06, 0x03, 0x01, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
128 0x03, 0x03, 0x03, 0x03, 0x03, 0x83, 0x03, 0x03, 0x03, 0x83, 0x03, 0x83, 0x03, 0x03, 0x03, 0x83,
129 0x03, 0x03, 0x83, 0x83, 0x83, 0x03, 0x03, 0x83, 0x83, 0x83, 0x03, 0x03, 0x03, 0x03, 0x03, 0x03,
130 0x00, 0x00, 0x00, 0x00, 0x00, 0x1f, 0x04, 0x06, 0x09, 0x10, 0x00, 0x1f, 0x03, 0x06, 0x0c, 0x1f,
131 0x00, 0x0f, 0x10, 0x10, 0x10, 0x0f, 0x00, 0x1f, 0x12, 0x12, 0x0d, 0x00, 0x00, 0x00, 0x00, 0x00,
132 0x00, 0x78, 0xfc, 0x84, 0xa4, 0xa4, 0x68, 0x00, 0x78, 0x84, 0x84, 0x84, 0x78, 0x00, 0xfc, 0x94,
133 0x94, 0x68, 0x00, 0xfc, 0x80, 0x80, 0x80, 0x00, 0xfc, 0x00, 0xfc, 0x18, 0x30, 0x60, 0xfc, 0x00,
134 0x60, 0x60, 0x60, 0x60, 0x60, 0x60, 0x60, 0x60, 0x60, 0x60, 0x60, 0x60, 0x60, 0x60, 0x60, 0x60,
135 0x60, 0x60, 0x60, 0x60, 0x60, 0x60, 0x60, 0x60, 0x60, 0x60, 0x60, 0x60, 0x60, 0x60, 0x60, 0x60,
136 0x00, 0x00, 0x00, 0xf0, 0x00, 0x00, 0x00, 0x00, 0xf0, 0x50, 0x50, 0x50, 0x00, 0xf0, 0x00, 0x00,
137 0x00, 0xf0, 0x00, 0xf0, 0x50, 0x50, 0x50, 0x00, 0xf0, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
138 0x00, 0x00, 0x00, 0x03, 0x02, 0x02, 0x02, 0x00, 0x03, 0x02, 0x02, 0x02, 0x00, 0x00, 0x01, 0x02,
139 0x01, 0x00, 0x00, 0x03, 0x02, 0x02, 0x02, 0x00, 0x03, 0x02, 0x02, 0x02, 0x00, 0x00, 0x00, 0x00
140 };
141 oled_write_raw_P(my_logo, sizeof(my_logo));
142}
143
144void oled_task_user(void) {
145
146 render_goblin_logo();
147
148 oled_set_cursor(0,11);
149
150 switch (get_highest_layer(layer_state)) {
151 case 0:
152 oled_write_P(PSTR(" NUM\n"), false);
153 break;
154 case 1:
155 oled_write_P(PSTR(" NAV\n"), false);
156 break;
157 case 2:
158 oled_write_P(PSTR(" CODE\n"), false);
159 break;
160 case 3:
161 oled_write_P(PSTR(" GDB\n"), false);
162 break;
163 case 4:
164 oled_write_P(PSTR(" OBS\n"), false);
165 break;
166 default:
167 oled_write_P(PSTR(" NONE\n"), false);
168 break;
169 }
170}
diff --git a/keyboards/knobgoblin/keymaps/moults31/readme.md b/keyboards/knobgoblin/keymaps/moults31/readme.md
new file mode 100644
index 000000000..f137c78c3
--- /dev/null
+++ b/keyboards/knobgoblin/keymaps/moults31/readme.md
@@ -0,0 +1,3 @@
1# Ortho Knob Goblin Layout
2
3Via functionality for the Knob Goblin. Ortho layout. \ No newline at end of file
diff --git a/keyboards/knobgoblin/keymaps/moults31/rules.mk b/keyboards/knobgoblin/keymaps/moults31/rules.mk
new file mode 100644
index 000000000..533af592e
--- /dev/null
+++ b/keyboards/knobgoblin/keymaps/moults31/rules.mk
@@ -0,0 +1,3 @@
1VIA_ENABLE = YES
2LTO_ENABLE = YES
3BOOTLOADER = atmel-dfu
diff --git a/keyboards/knobgoblin/keymaps/via/keymap.c b/keyboards/knobgoblin/keymaps/via/keymap.c
index afe3226bb..4631dccd0 100644
--- a/keyboards/knobgoblin/keymaps/via/keymap.c
+++ b/keyboards/knobgoblin/keymaps/via/keymap.c
@@ -25,7 +25,7 @@ const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = {
25 KC_MPLY, KC_P1, KC_P2, KC_P3, KC_PENT, 25 KC_MPLY, KC_P1, KC_P2, KC_P3, KC_PENT,
26 KC_MUTE, MO(1), KC_P0, KC_PDOT, KC_PENT 26 KC_MUTE, MO(1), KC_P0, KC_PDOT, KC_PENT
27 ), 27 ),
28 28
29 [1] = LAYOUT_ortho( 29 [1] = LAYOUT_ortho(
30 KC_ESC, KC_TRNS, KC_TRNS, KC_TRNS, 30 KC_ESC, KC_TRNS, KC_TRNS, KC_TRNS,
31 KC_HOME, KC_TRNS, KC_PGUP, KC_TRNS, 31 KC_HOME, KC_TRNS, KC_PGUP, KC_TRNS,
@@ -33,7 +33,7 @@ const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = {
33 KC_TRNS, KC_LEFT, KC_DOWN, KC_RIGHT, KC_SPC, 33 KC_TRNS, KC_LEFT, KC_DOWN, KC_RIGHT, KC_SPC,
34 KC_TRNS, KC_TRNS, KC_BSPC, KC_DEL, KC_TRNS 34 KC_TRNS, KC_TRNS, KC_BSPC, KC_DEL, KC_TRNS
35 ), 35 ),
36 36
37 [2] = LAYOUT_ortho( 37 [2] = LAYOUT_ortho(
38 KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, 38 KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS,
39 KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, 39 KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS,
@@ -41,7 +41,7 @@ const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = {
41 KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, 41 KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS,
42 KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS 42 KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS
43 ), 43 ),
44 44
45 [3] = LAYOUT_ortho( 45 [3] = LAYOUT_ortho(
46 KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, 46 KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS,
47 KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, 47 KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS,
@@ -50,4 +50,4 @@ const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = {
50 KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS 50 KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS
51 ) 51 )
52 52
53}; \ No newline at end of file 53};