aboutsummaryrefslogtreecommitdiff
diff options
context:
space:
mode:
-rw-r--r--keyboards/0xcb/1337/config.h13
-rw-r--r--keyboards/0xcb/1337/gfxfont.c276
-rw-r--r--keyboards/0xcb/1337/keymaps/default/keymap.c131
-rw-r--r--keyboards/0xcb/1337/keymaps/jakob/keymap.c168
-rw-r--r--keyboards/0xcb/1337/keymaps/jakob/rules.mk1
-rw-r--r--keyboards/0xcb/1337/keymaps/via/keymap.c131
6 files changed, 565 insertions, 155 deletions
diff --git a/keyboards/0xcb/1337/config.h b/keyboards/0xcb/1337/config.h
index 25b1eadd9..6d25e49cc 100644
--- a/keyboards/0xcb/1337/config.h
+++ b/keyboards/0xcb/1337/config.h
@@ -36,12 +36,13 @@ along with this program. If not, see <http://www.gnu.org/licenses/>.
36 { E6, B4, B2 } \ 36 { E6, B4, B2 } \
37} 37}
38#define TAP_CODE_DELAY 10 38#define TAP_CODE_DELAY 10
39#define ENCODER_DIRECTION_FLIP
39#define ENCODER_RESOLUTION 4 40#define ENCODER_RESOLUTION 4
40#define ENCODERS_PAD_A { F5 } 41#define ENCODERS_PAD_A { F5 }
41#define ENCODERS_PAD_B { F6 } 42#define ENCODERS_PAD_B { F6 }
42 43
43#define BACKLIGHT_PIN B5 44#define BACKLIGHT_PIN B5
44// #define BACKLIGHT_BREATHING 45#define BACKLIGHT_BREATHING
45#define BACKLIGHT_LEVELS 7 46#define BACKLIGHT_LEVELS 7
46 47
47#define RGB_DI_PIN D3 48#define RGB_DI_PIN D3
@@ -52,8 +53,12 @@ along with this program. If not, see <http://www.gnu.org/licenses/>.
52 #define RGBLIGHT_VAL_STEP 8 53 #define RGBLIGHT_VAL_STEP 8
53 #define RGBLIGHT_LIMIT_VAL 255 /* The maximum brightness level */ 54 #define RGBLIGHT_LIMIT_VAL 255 /* The maximum brightness level */
54 #define RGBLIGHT_SLEEP /* If defined, the RGB lighting will be switched off when the host goes to sleep */ 55 #define RGBLIGHT_SLEEP /* If defined, the RGB lighting will be switched off when the host goes to sleep */
55 /*== all animations enable ==*/ 56 // #define RGBLIGHT_ANIMATIONS
56 #define RGBLIGHT_ANIMATIONS 57 #define RGBLIGHT_EFFECT_BREATHING
58 #define RGBLIGHT_EFFECT_SNAKE
59 #define RGBLIGHT_EFFECT_STATIC_GRADIENT
60 #define RGBLIGHT_EFFECT_RAINBOW_SWIRL
61 #define RGBLIGHT_EFFECT_RAINBOW_MOOD
57#endif 62#endif
58 63
59/* Debounce reduces chatter (unintended double-presses) - set 0 if debouncing is not needed */ 64/* Debounce reduces chatter (unintended double-presses) - set 0 if debouncing is not needed */
@@ -65,6 +70,8 @@ along with this program. If not, see <http://www.gnu.org/licenses/>.
65#define LOCKING_RESYNC_ENABLE 70#define LOCKING_RESYNC_ENABLE
66/* Oled Size */ 71/* Oled Size */
67#define OLED_DISPLAY_128X64 72#define OLED_DISPLAY_128X64
73#define OLED_FONT_END 255
74#define OLED_FONT_H "gfxfont.c"
68 75
69/* QMK DFU */ 76/* QMK DFU */
70#define QMK_LED B0 77#define QMK_LED B0
diff --git a/keyboards/0xcb/1337/gfxfont.c b/keyboards/0xcb/1337/gfxfont.c
new file mode 100644
index 000000000..4e7940b64
--- /dev/null
+++ b/keyboards/0xcb/1337/gfxfont.c
@@ -0,0 +1,276 @@
1/*
2Copyright 2021 0xCB - Conor Burns
3
4This program is free software: you can redistribute it and/or modify
5it under the terms of the GNU General Public License as published by
6the Free Software Foundation, either version 2 of the License, or
7(at your option) any later version.
8
9This program is distributed in the hope that it will be useful,
10but WITHOUT ANY WARRANTY; without even the implied warranty of
11MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
12GNU General Public License for more details.
13
14You should have received a copy of the GNU General Public License
15along with this program. If not, see <http://www.gnu.org/licenses/>.
16*/
17#include "progmem.h"
18
19static const unsigned char font[] PROGMEM = {
20 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
21 0x3E, 0x5B, 0x4F, 0x5B, 0x3E, 0x00,
22 0x3E, 0x6B, 0x4F, 0x6B, 0x3E, 0x00,
23 0x1C, 0x3E, 0x7C, 0x3E, 0x1C, 0x00,
24 0x18, 0x3C, 0x7E, 0x3C, 0x18, 0x00,
25 0x1C, 0x57, 0x7D, 0x57, 0x1C, 0x00,
26 0x1C, 0x5E, 0x7F, 0x5E, 0x1C, 0x00,
27 0x00, 0x18, 0x3C, 0x18, 0x00, 0x00,
28 0xFF, 0xE7, 0xC3, 0xE7, 0xFF, 0x00,
29 0x00, 0x18, 0x24, 0x18, 0x00, 0x00,
30 0xFF, 0xE7, 0xDB, 0xE7, 0xFF, 0x00,
31 0x30, 0x48, 0x3A, 0x06, 0x0E, 0x00,
32 0x26, 0x29, 0x79, 0x29, 0x26, 0x00,
33 0x40, 0x7F, 0x05, 0x05, 0x07, 0x00,
34 0x40, 0x7F, 0x05, 0x25, 0x3F, 0x00,
35 0x5A, 0x3C, 0xE7, 0x3C, 0x5A, 0x00,
36 0x7F, 0x3E, 0x1C, 0x1C, 0x08, 0x00,
37 0x08, 0x1C, 0x1C, 0x3E, 0x7F, 0x00,
38 0x14, 0x22, 0x7F, 0x22, 0x14, 0x00,
39 0x5F, 0x5F, 0x00, 0x5F, 0x5F, 0x00,
40 0x06, 0x09, 0x7F, 0x01, 0x7F, 0x00,
41 0x00, 0x66, 0x89, 0x95, 0x6A, 0x00,
42 0x60, 0x60, 0x60, 0x60, 0x60, 0x00,
43 0x94, 0xA2, 0xFF, 0xA2, 0x94, 0x00,
44 0x08, 0x04, 0x7E, 0x04, 0x08, 0x00,
45 0x10, 0x20, 0x7E, 0x20, 0x10, 0x00,
46 0x08, 0x08, 0x2A, 0x1C, 0x08, 0x00,
47 0x08, 0x1C, 0x2A, 0x08, 0x08, 0x00,
48 0x1E, 0x10, 0x10, 0x10, 0x10, 0x00,
49 0x0C, 0x1E, 0x0C, 0x1E, 0x0C, 0x00,
50 0x30, 0x38, 0x3E, 0x38, 0x30, 0x00,
51 0x06, 0x0E, 0x3E, 0x0E, 0x06, 0x00,
52 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
53 0x00, 0x00, 0x5F, 0x00, 0x00, 0x00,
54 0x00, 0x07, 0x00, 0x07, 0x00, 0x00,
55 0x14, 0x7F, 0x14, 0x7F, 0x14, 0x00,
56 0x24, 0x2A, 0x7F, 0x2A, 0x12, 0x00,
57 0x23, 0x13, 0x08, 0x64, 0x62, 0x00,
58 0x36, 0x49, 0x56, 0x20, 0x50, 0x00,
59 0x00, 0x08, 0x07, 0x03, 0x00, 0x00,
60 0x00, 0x1C, 0x22, 0x41, 0x00, 0x00,
61 0x00, 0x41, 0x22, 0x1C, 0x00, 0x00,
62 0x2A, 0x1C, 0x7F, 0x1C, 0x2A, 0x00,
63 0x08, 0x08, 0x3E, 0x08, 0x08, 0x00,
64 0x00, 0x80, 0x70, 0x30, 0x00, 0x00,
65 0x08, 0x08, 0x08, 0x08, 0x08, 0x00,
66 0x00, 0x00, 0x60, 0x60, 0x00, 0x00,
67 0x20, 0x10, 0x08, 0x04, 0x02, 0x00,
68 0x3E, 0x51, 0x49, 0x45, 0x3E, 0x00,
69 0x00, 0x42, 0x7F, 0x40, 0x00, 0x00,
70 0x72, 0x49, 0x49, 0x49, 0x46, 0x00,
71 0x21, 0x41, 0x49, 0x4D, 0x33, 0x00,
72 0x18, 0x14, 0x12, 0x7F, 0x10, 0x00,
73 0x27, 0x45, 0x45, 0x45, 0x39, 0x00,
74 0x3C, 0x4A, 0x49, 0x49, 0x31, 0x00,
75 0x41, 0x21, 0x11, 0x09, 0x07, 0x00,
76 0x36, 0x49, 0x49, 0x49, 0x36, 0x00,
77 0x46, 0x49, 0x49, 0x29, 0x1E, 0x00,
78 0x00, 0x00, 0x14, 0x00, 0x00, 0x00,
79 0x00, 0x40, 0x34, 0x00, 0x00, 0x00,
80 0x00, 0x08, 0x14, 0x22, 0x41, 0x00,
81 0x14, 0x14, 0x14, 0x14, 0x14, 0x00,
82 0x00, 0x41, 0x22, 0x14, 0x08, 0x00,
83 0x02, 0x01, 0x59, 0x09, 0x06, 0x00,
84 0x3E, 0x41, 0x5D, 0x59, 0x4E, 0x00,
85 0x7C, 0x12, 0x11, 0x12, 0x7C, 0x00,
86 0x7F, 0x49, 0x49, 0x49, 0x36, 0x00,
87 0x3E, 0x41, 0x41, 0x41, 0x22, 0x00,
88 0x7F, 0x41, 0x41, 0x41, 0x3E, 0x00,
89 0x7F, 0x49, 0x49, 0x49, 0x41, 0x00,
90 0x7F, 0x09, 0x09, 0x09, 0x01, 0x00,
91 0x3E, 0x41, 0x41, 0x51, 0x73, 0x00,
92 0x7F, 0x08, 0x08, 0x08, 0x7F, 0x00,
93 0x00, 0x41, 0x7F, 0x41, 0x00, 0x00,
94 0x20, 0x40, 0x41, 0x3F, 0x01, 0x00,
95 0x7F, 0x08, 0x14, 0x22, 0x41, 0x00,
96 0x7F, 0x40, 0x40, 0x40, 0x40, 0x00,
97 0x7F, 0x02, 0x1C, 0x02, 0x7F, 0x00,
98 0x7F, 0x04, 0x08, 0x10, 0x7F, 0x00,
99 0x3E, 0x41, 0x41, 0x41, 0x3E, 0x00,
100 0x7F, 0x09, 0x09, 0x09, 0x06, 0x00,
101 0x3E, 0x41, 0x51, 0x21, 0x5E, 0x00,
102 0x7F, 0x09, 0x19, 0x29, 0x46, 0x00,
103 0x26, 0x49, 0x49, 0x49, 0x32, 0x00,
104 0x03, 0x01, 0x7F, 0x01, 0x03, 0x00,
105 0x3F, 0x40, 0x40, 0x40, 0x3F, 0x00,
106 0x1F, 0x20, 0x40, 0x20, 0x1F, 0x00,
107 0x3F, 0x40, 0x38, 0x40, 0x3F, 0x00,
108 0x63, 0x14, 0x08, 0x14, 0x63, 0x00,
109 0x03, 0x04, 0x78, 0x04, 0x03, 0x00,
110 0x61, 0x59, 0x49, 0x4D, 0x43, 0x00,
111 0x00, 0x7F, 0x41, 0x41, 0x41, 0x00,
112 0x02, 0x04, 0x08, 0x10, 0x20, 0x00,
113 0x00, 0x41, 0x41, 0x41, 0x7F, 0x00,
114 0x04, 0x02, 0x01, 0x02, 0x04, 0x00,
115 0x40, 0x40, 0x40, 0x40, 0x40, 0x00,
116 0x00, 0x03, 0x07, 0x08, 0x00, 0x00,
117 0x20, 0x54, 0x54, 0x78, 0x40, 0x00,
118 0x7F, 0x28, 0x44, 0x44, 0x38, 0x00,
119 0x38, 0x44, 0x44, 0x44, 0x28, 0x00,
120 0x38, 0x44, 0x44, 0x28, 0x7F, 0x00,
121 0x38, 0x54, 0x54, 0x54, 0x18, 0x00,
122 0x00, 0x08, 0x7E, 0x09, 0x02, 0x00,
123 0x18, 0x24, 0x24, 0x1C, 0x78, 0x00,
124 0x7F, 0x08, 0x04, 0x04, 0x78, 0x00,
125 0x00, 0x44, 0x7D, 0x40, 0x00, 0x00,
126 0x20, 0x40, 0x40, 0x3D, 0x00, 0x00,
127 0x7F, 0x10, 0x28, 0x44, 0x00, 0x00,
128 0x00, 0x41, 0x7F, 0x40, 0x00, 0x00,
129 0x7C, 0x04, 0x78, 0x04, 0x78, 0x00,
130 0x7C, 0x08, 0x04, 0x04, 0x78, 0x00,
131 0x38, 0x44, 0x44, 0x44, 0x38, 0x00,
132 0xFC, 0x18, 0x24, 0x24, 0x18, 0x00,
133 0x18, 0x24, 0x24, 0x18, 0xFC, 0x00,
134 0x7C, 0x08, 0x04, 0x04, 0x08, 0x00,
135 0x48, 0x54, 0x54, 0x54, 0x24, 0x00,
136 0x04, 0x04, 0x3F, 0x44, 0x24, 0x00,
137 0x3C, 0x40, 0x40, 0x20, 0x7C, 0x00,
138 0x1C, 0x20, 0x40, 0x20, 0x1C, 0x00,
139 0x3C, 0x40, 0x30, 0x40, 0x3C, 0x00,
140 0x44, 0x28, 0x10, 0x28, 0x44, 0x00,
141 0x4C, 0x10, 0x10, 0x10, 0x7C, 0x00,
142 0x44, 0x64, 0x54, 0x4C, 0x44, 0x00,
143 0x00, 0x08, 0x36, 0x41, 0x00, 0x00,
144 0x00, 0x00, 0x77, 0x00, 0x00, 0x00,
145 0x00, 0x41, 0x36, 0x08, 0x00, 0x00,
146 0x02, 0x01, 0x02, 0x04, 0x02, 0x00,
147 0x3C, 0x26, 0x23, 0x26, 0x3C, 0x00,
148 0x00, 0xE0, 0xFC, 0x1E, 0x06, 0xC6,
149 0xC6, 0x06, 0x1E, 0xFC, 0xE0, 0x00,
150 0x00, 0x00, 0x60, 0xE0, 0x80, 0x00,
151 0x00, 0x80, 0xE0, 0x60, 0x00, 0x00,
152 0x00, 0x00, 0xE0, 0xF8, 0x3C, 0x0E,
153 0x06, 0x06, 0x06, 0x0E, 0x0C, 0x00,
154 0x00, 0x00, 0xFE, 0xFE, 0x86, 0x86,
155 0x86, 0x86, 0x8C, 0x78, 0x70, 0x00,
156 0x00, 0x0E, 0x0E, 0x06, 0x06, 0xFE,
157 0xFE, 0x00, 0x00, 0x00, 0x00, 0x00,
158 0x00, 0x0C, 0x8E, 0x86, 0x86, 0x86,
159 0x86, 0x86, 0xCE, 0xFE, 0x7C, 0x00,
160 0x00, 0x06, 0x06, 0x06, 0x06, 0x06,
161 0x06, 0xE6, 0xE6, 0x3E, 0x3E, 0x00,
162 0x01, 0x01, 0x01, 0x01, 0x01, 0x01,
163 0x01, 0x01, 0x06, 0x78, 0x80, 0x00,
164 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
165 0xE0, 0x1C, 0x02, 0x01, 0x04, 0x18,
166 0x00, 0x00, 0x00, 0x02, 0x0C, 0x00,
167 0x80, 0x80, 0x71, 0x02, 0x1C, 0xE0,
168 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
169 0x00, 0x80, 0x78, 0x06, 0x01, 0x01,
170 0x01, 0x01, 0x01, 0x01, 0x01, 0x01,
171 0xF0, 0xF8, 0xF8, 0xF8, 0xF8, 0xF8,
172 0x00, 0x00, 0xFC, 0xFC, 0xFC, 0xFC,
173 0xFC, 0xFE, 0xFE, 0xFE, 0xFF, 0xFF,
174 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0x00,
175 0xE0, 0xE0, 0xE0, 0xE0, 0xF0, 0xF0,
176 0x00, 0x00, 0x40, 0xF0, 0xFC, 0xFF,
177 0xFF, 0xFC, 0xF0, 0xC0, 0x00, 0x00,
178 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0x00,
179 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
180 0x00, 0x07, 0x3F, 0x78, 0x60, 0x63,
181 0x63, 0x60, 0x78, 0x3F, 0x07, 0x00,
182 0x00, 0x00, 0x60, 0x79, 0x19, 0x06,
183 0x06, 0x19, 0x79, 0x60, 0x00, 0x00,
184 0x00, 0x00, 0x07, 0x1F, 0x3C, 0x70,
185 0x60, 0x60, 0x60, 0x70, 0x30, 0x00,
186 0x00, 0x00, 0x7F, 0x7F, 0x61, 0x61,
187 0x61, 0x61, 0x31, 0x1E, 0x0E, 0x00,
188 0x00, 0x60, 0x60, 0x60, 0x60, 0x7F,
189 0x7F, 0x60, 0x60, 0x60, 0x60, 0x00,
190 0x00, 0x30, 0x71, 0x61, 0x61, 0x61,
191 0x61, 0x61, 0x73, 0x7F, 0x3E, 0x00,
192 0x00, 0x00, 0x00, 0x00, 0x00, 0x7F,
193 0x7F, 0x01, 0x01, 0x00, 0x00, 0x00,
194 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
195 0x00, 0x00, 0x00, 0x00, 0x03, 0xBC,
196 0x80, 0x80, 0x80, 0x80, 0x80, 0x80,
197 0x87, 0x38, 0x40, 0x80, 0x08, 0x08,
198 0x08, 0x04, 0x04, 0x02, 0x02, 0x01,
199 0x00, 0x00, 0x80, 0x40, 0x38, 0x87,
200 0x80, 0x80, 0x80, 0x80, 0x80, 0x80,
201 0xBC, 0x03, 0x00, 0x00, 0x00, 0x00,
202 0x7F, 0x7F, 0x7F, 0x7F, 0x7F, 0x7F,
203 0x7F, 0x7F, 0x7F, 0x7F, 0x7F, 0x7F,
204 0x00, 0x00, 0x7F, 0x7F, 0x7F, 0x7F,
205 0x7F, 0x7F, 0x7F, 0x7F, 0x7F, 0x7F,
206 0x7F, 0x7F, 0x7F, 0x7F, 0x7F, 0x00,
207 0x00, 0x00, 0x00, 0x00, 0xC0, 0xF0,
208 0xFC, 0xFE, 0xFC, 0xF8, 0xF9, 0xF3,
209 0xF7, 0xFF, 0xFF, 0xFF, 0xFF, 0xFC,
210 0xF0, 0xC0, 0x00, 0x00, 0x00, 0x00,
211 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
212 0x70, 0xD0, 0x70, 0x00, 0x07, 0x05,
213 0x07, 0x02, 0x02, 0x82, 0xC2, 0x42,
214 0x7E, 0xC0, 0xC0, 0xC0, 0x40, 0x7E,
215 0x42, 0xC2, 0x82, 0x02, 0x02, 0x07,
216 0x05, 0x07, 0x00, 0x70, 0xD0, 0x70,
217 0x00, 0x00, 0x00, 0x80, 0x40, 0x20,
218 0x10, 0xC8, 0xC8, 0x84, 0x04, 0x02,
219 0x02, 0x02, 0x02, 0xC2, 0xC2, 0xC2,
220 0xC2, 0xC4, 0xC4, 0xC8, 0x88, 0x90,
221 0x20, 0x40, 0x80, 0x00, 0x00, 0x00,
222 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
223 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
224 0x01, 0xFD, 0x05, 0x04, 0x04, 0x04,
225 0x1F, 0x30, 0x40, 0x87, 0x9F, 0x1F,
226 0x01, 0x81, 0xFF, 0xFF, 0x00, 0x00,
227 0x1E, 0x9E, 0x86, 0x40, 0x30, 0x1F,
228 0x04, 0x04, 0x04, 0x05, 0xFD, 0x01,
229 0x00, 0x0F, 0x70, 0x80, 0x00, 0x00,
230 0x00, 0x00, 0x80, 0xE0, 0xF8, 0x3E,
231 0x0F, 0x03, 0x00, 0xFF, 0xFF, 0x01,
232 0x01, 0x01, 0x01, 0x01, 0x00, 0x00,
233 0x00, 0x00, 0x80, 0x70, 0x0F, 0x00,
234 0xFE, 0xFE, 0xFE, 0xFE, 0xFE, 0xFE,
235 0xFE, 0xFE, 0xFE, 0xFE, 0xFE, 0xFE,
236 0x00, 0x00, 0xFE, 0xFE, 0xFE, 0xFE,
237 0xFE, 0xFE, 0xFE, 0xFE, 0xFE, 0xFE,
238 0xFE, 0xFE, 0xFE, 0xFE, 0xFE, 0x00,
239 0xC0, 0xF0, 0xFC, 0xFF, 0xFF, 0xFF,
240 0xFF, 0xFF, 0xFF, 0x07, 0x03, 0x03,
241 0x03, 0x03, 0x07, 0xFF, 0xFF, 0xFF,
242 0xDF, 0x9F, 0x3F, 0x3C, 0x70, 0x40,
243 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
244 0xC0, 0x5F, 0xD0, 0x90, 0x90, 0x90,
245 0xFC, 0x06, 0x01, 0xF8, 0xFC, 0xFC,
246 0xC0, 0xC0, 0xFF, 0xFF, 0x00, 0x00,
247 0x3C, 0x3C, 0x30, 0x01, 0x06, 0xFC,
248 0x90, 0x90, 0x90, 0xD0, 0x5F, 0xC0,
249 0x00, 0xF0, 0x0E, 0x01, 0x00, 0x00,
250 0x00, 0x00, 0x01, 0x03, 0x07, 0x1E,
251 0x3C, 0xF0, 0xE0, 0xFF, 0xFF, 0x80,
252 0x80, 0x80, 0x80, 0xC1, 0xC1, 0xFF,
253 0x3E, 0x00, 0x01, 0x0E, 0xF0, 0x00,
254 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
255 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
256 0x07, 0x05, 0x07, 0x00, 0x70, 0x50,
257 0x70, 0x20, 0x20, 0x20, 0x21, 0x3F,
258 0x01, 0x61, 0x9F, 0x9F, 0x61, 0x01,
259 0x3F, 0x21, 0x20, 0x20, 0x20, 0x70,
260 0x50, 0x70, 0x00, 0x07, 0x05, 0x07,
261 0x00, 0x00, 0x00, 0x01, 0x02, 0x04,
262 0x08, 0x10, 0x13, 0x23, 0x20, 0x40,
263 0x40, 0x40, 0x40, 0x43, 0x43, 0x40,
264 0x40, 0x20, 0x20, 0x10, 0x10, 0x08,
265 0x04, 0x02, 0x01, 0x00, 0x00, 0x00,
266 0x07, 0x07, 0x07, 0x07, 0x0F, 0x0F,
267 0x0F, 0x1F, 0x1F, 0x1F, 0x1F, 0x1F,
268 0x00, 0x00, 0x3F, 0x3F, 0x3F, 0x3F,
269 0x3F, 0x7F, 0x7F, 0x7F, 0xFF, 0xFF,
270 0x00, 0x80, 0xC0, 0x70, 0x7C, 0x3F,
271 0x3F, 0x1F, 0x0F, 0x0F, 0x07, 0x07,
272 0x07, 0x03, 0x03, 0x02, 0x00, 0x00,
273 0x00, 0x00, 0x02, 0x03, 0x03, 0x07,
274 0x07, 0x07, 0x0F, 0x0F, 0x1E, 0x3E,
275 0x3C, 0x7C, 0x70, 0xC0, 0x80, 0x00,
276};
diff --git a/keyboards/0xcb/1337/keymaps/default/keymap.c b/keyboards/0xcb/1337/keymaps/default/keymap.c
index c711bdae9..5089117d8 100644
--- a/keyboards/0xcb/1337/keymaps/default/keymap.c
+++ b/keyboards/0xcb/1337/keymaps/default/keymap.c
@@ -15,6 +15,7 @@ You should have received a copy of the GNU General Public License
15along with this program. If not, see <http://www.gnu.org/licenses/>. 15along with this program. If not, see <http://www.gnu.org/licenses/>.
16*/ 16*/
17#include QMK_KEYBOARD_H 17#include QMK_KEYBOARD_H
18#include <stdio.h>
18 19
19enum layer_names { 20enum layer_names {
20 _HOME, 21 _HOME,
@@ -51,11 +52,13 @@ const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = {
51#ifdef ENCODER_ENABLE 52#ifdef ENCODER_ENABLE
52void encoder_update_user(uint8_t index, bool clockwise) { 53void encoder_update_user(uint8_t index, bool clockwise) {
53 if (IS_LAYER_ON(_RGB)) { 54 if (IS_LAYER_ON(_RGB)) {
54 if (clockwise) { 55 #ifdef RGBLIGHT_ENABLE
55 rgblight_increase_val(); 56 if (clockwise) {
56 } else { 57 rgblight_increase_val();
57 rgblight_decrease_val(); 58 } else {
58 } 59 rgblight_decrease_val();
60 }
61 #endif
59 } else if (IS_LAYER_ON(_BLED)) { 62 } else if (IS_LAYER_ON(_BLED)) {
60 if (clockwise) { 63 if (clockwise) {
61 backlight_increase(); 64 backlight_increase();
@@ -82,74 +85,27 @@ oled_rotation_t oled_init_user(oled_rotation_t rotation) {
82} 85}
83 86
84static void render_logo(void) { 87static void render_logo(void) {
85 static const char PROGMEM logo[] = { 88 static const char PROGMEM raw_logo[] = {
86 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 89 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
87 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 90 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,128, 64,128, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,128, 64,128, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
88 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 91 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,128, 0, 0, 0, 0, 0, 0, 1, 2, 4, 2, 1, 1, 1, 1, 1, 1,255, 0, 0, 0, 0, 0, 0, 0, 0, 0,255, 1, 1, 1, 1, 1, 1, 2, 4, 2, 1, 0, 0, 0, 0, 0, 0,128, 0, 0, 0,
89 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 92 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 2, 5,248, 5, 2, 0, 0, 0, 0, 0, 0,128,192,192,224,224,112,120, 56, 63, 28, 14, 14, 14,254, 14, 14, 30, 28, 63, 56,120,112,224,224,192,128, 0, 0, 0, 0, 0, 0, 0, 2, 5,248, 5, 2, 0,
90 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 93 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 64,160, 19,162, 66, 66, 66, 66, 66, 66, 66,255,255,255, 0, 0, 0,252,254,254,192,192,192,192,255, 0, 0, 0, 62, 62, 60, 60, 0, 0, 1,255,255,255, 66, 66, 66, 66, 66, 66, 66,162, 19,160, 64, 0,
91 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 94 0, 0, 0,128, 64, 64, 64,128, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,128,192, 64, 64,192,128, 0, 0,192, 64, 64,192,128, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,192, 64,192, 0, 0, 0, 0, 0,128,192, 64, 64,192,128, 0, 0,128,192, 64, 64,192,128, 0, 0, 64, 64, 64, 64, 64,192, 0, 0, 0, 0, 0,249, 8, 8, 8, 8, 8, 8, 8, 8,127,255,255,192,128,128, 15, 31, 31, 1, 1, 1, 1,255, 0, 0, 0, 30, 30, 14, 14,128,192,192,255,255,127, 8, 8, 8, 8, 8, 8, 8, 8,249, 0, 0, 0,
92 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 95 0, 0, 31, 49, 64, 78, 64, 49, 31, 0, 0, 97, 22, 8, 22, 97, 0, 0, 31, 49, 96, 64, 64, 96, 32, 0, 0,127, 68, 68,100, 59, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 64, 64,127, 64, 64, 0, 0, 0, 32,100, 68, 68,110, 59, 0, 0, 32,100, 68, 68,110, 59, 0, 0, 0, 0, 0,126, 3, 1, 0, 0, 0, 8, 20, 35, 20, 8, 0, 0, 0, 0, 0, 0, 0, 0, 1, 1, 3, 7, 7, 15,254, 30, 28, 28, 28,255, 28, 28, 28, 30,254, 15, 7, 3, 3, 1, 1, 0, 0, 0, 0, 0, 0, 0, 0, 4, 10, 17, 10, 4, 0,
93 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 96 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 16, 40, 68, 40, 16, 16, 16, 16, 16, 16, 31, 0, 0, 16, 40, 71, 40, 16, 0, 0, 31, 16, 16, 16, 16, 16, 16, 40, 68, 40, 16, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
94 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 97 };
95 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 98 oled_write_raw_P(raw_logo, sizeof(raw_logo));
96 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 99}
97 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 100static void render_logo_font(void) {
98 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 101 static const char PROGMEM qmk_logo[] = {
99 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x80, 0x40, 0x80, 0x00, 0x00, 0x00, 0x00, 0x00, 102 0xC0, 0xC1, 0xC2, 0xC3, 0xC4, 0xCB, 0x80, 0x81, 0x82, 0x83, 0x84, 0x85, 0x86, 0x87, 0xCB, 0xCB, 0xC5, 0xC6, 0xC7, 0xC8, 0xC9,
100 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 103 0xE0, 0xE1, 0xE2, 0xE3, 0xE4, 0xCB, 0xA0, 0xA1, 0xA2, 0xA3, 0xA4, 0xA5, 0xA6, 0xA7, 0xCB, 0xCB, 0xE5, 0xE6, 0xE7, 0xE8, 0xE9,
101 0x00, 0x00, 0x80, 0x40, 0x80, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 104 0xCC, 0xCD, 0xCE, 0xCF, 0xD0, 0xCB, 0x88, 0x89, 0x8A, 0x8B, 0x8A, 0x8B, 0x8C, 0x8D, 0xCB, 0xCB, 0xD1, 0xD2, 0xD3, 0xD4, 0xD5,
102 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 105 0xEC, 0xED, 0xEE, 0xEF, 0xF0, 0xCB, 0xA8, 0xA9, 0xAA, 0xAB, 0xAA, 0xAB, 0xAC, 0xAD, 0xCB, 0xCB, 0xF1, 0xF2, 0xF3, 0xF4, 0xF5, 0x00
103 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 106 };
104 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
105 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
106 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
107 0x80, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x01, 0x02, 0x04, 0x02, 0x01, 0x01, 0x01, 0x01, 0x01,
108 0x01, 0xff, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0xff, 0x01, 0x01, 0x01, 0x01,
109 0x01, 0x01, 0x02, 0x04, 0x02, 0x01, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x80, 0x00, 0x00, 0x00,
110 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
111 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
112 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
113 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
114 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x02, 0x05,
115 0xf8, 0x05, 0x02, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x80, 0xc0, 0xc0, 0xe0, 0xe0, 0x70, 0x78,
116 0x38, 0x3f, 0x1c, 0x0e, 0x0e, 0x0e, 0xfe, 0x0e, 0x0e, 0x1e, 0x1c, 0x3f, 0x38, 0x78, 0x70, 0xe0,
117 0xe0, 0xc0, 0x80, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x02, 0x05, 0xf8, 0x05, 0x02, 0x00,
118 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
119 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
120 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
121 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
122 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x40, 0xa0,
123 0x13, 0xa2, 0x42, 0x42, 0x42, 0x42, 0x42, 0x42, 0x42, 0xff, 0xff, 0xff, 0x00, 0x00, 0x00, 0xfc,
124 0xfe, 0xfe, 0xc0, 0xc0, 0xc0, 0xc0, 0xff, 0x00, 0x00, 0x00, 0x3e, 0x3e, 0x3c, 0x3c, 0x00, 0x00,
125 0x01, 0xff, 0xff, 0xff, 0x42, 0x42, 0x42, 0x42, 0x42, 0x42, 0x42, 0xa2, 0x13, 0xa0, 0x40, 0x00,
126 0x00, 0x00, 0x00, 0x80, 0x40, 0x40, 0x40, 0x80, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
127 0x00, 0x00, 0x00, 0x80, 0xc0, 0x40, 0x40, 0xc0, 0x80, 0x00, 0x00, 0xc0, 0x40, 0x40, 0xc0, 0x80,
128 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0xc0, 0x40, 0xc0,
129 0x00, 0x00, 0x00, 0x00, 0x00, 0x80, 0xc0, 0x40, 0x40, 0xc0, 0x80, 0x00, 0x00, 0x80, 0xc0, 0x40,
130 0x40, 0xc0, 0x80, 0x00, 0x00, 0x40, 0x40, 0x40, 0x40, 0x40, 0xc0, 0x00, 0x00, 0x00, 0x00, 0x00,
131 0xf9, 0x08, 0x08, 0x08, 0x08, 0x08, 0x08, 0x08, 0x08, 0x7f, 0xff, 0xff, 0xc0, 0x80, 0x80, 0x0f,
132 0x1f, 0x1f, 0x01, 0x01, 0x01, 0x01, 0xff, 0x00, 0x00, 0x00, 0x1e, 0x1e, 0x0e, 0x0e, 0x80, 0xc0,
133 0xc0, 0xff, 0xff, 0x7f, 0x08, 0x08, 0x08, 0x08, 0x08, 0x08, 0x08, 0x08, 0xf9, 0x00, 0x00, 0x00,
134 0x00, 0x00, 0x1f, 0x31, 0x40, 0x4e, 0x40, 0x31, 0x1f, 0x00, 0x00, 0x61, 0x16, 0x08, 0x16, 0x61,
135 0x00, 0x00, 0x1f, 0x31, 0x60, 0x40, 0x40, 0x60, 0x20, 0x00, 0x00, 0x7f, 0x44, 0x44, 0x64, 0x3b,
136 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x40, 0x40, 0x7f,
137 0x40, 0x40, 0x00, 0x00, 0x00, 0x20, 0x64, 0x44, 0x44, 0x6e, 0x3b, 0x00, 0x00, 0x20, 0x64, 0x44,
138 0x44, 0x6e, 0x3b, 0x00, 0x00, 0x00, 0x00, 0x00, 0x7e, 0x03, 0x01, 0x00, 0x00, 0x00, 0x08, 0x14,
139 0x23, 0x14, 0x08, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x01, 0x01, 0x03, 0x07, 0x07,
140 0x0f, 0xfe, 0x1e, 0x1c, 0x1c, 0x1c, 0xff, 0x1c, 0x1c, 0x1c, 0x1e, 0xfe, 0x0f, 0x07, 0x03, 0x03,
141 0x01, 0x01, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x04, 0x0a, 0x11, 0x0a, 0x04, 0x00,
142 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
143 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
144 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
145 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
146 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
147 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x10, 0x28, 0x44, 0x28, 0x10, 0x10, 0x10, 0x10, 0x10,
148 0x10, 0x1f, 0x00, 0x00, 0x10, 0x28, 0x47, 0x28, 0x10, 0x00, 0x00, 0x1f, 0x10, 0x10, 0x10, 0x10,
149 0x10, 0x10, 0x28, 0x44, 0x28, 0x10, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00
150 };
151 107
152 oled_write_raw_P(logo, sizeof(logo)); 108 oled_write_P(qmk_logo, false);
153} 109}
154/* Shows the name of the current layer and locks for the host (CAPS etc.) */ 110/* Shows the name of the current layer and locks for the host (CAPS etc.) */
155static void render_info(void) { 111static void render_info(void) {
@@ -174,16 +130,39 @@ static void render_info(void) {
174 led_t led_state = host_keyboard_led_state(); 130 led_t led_state = host_keyboard_led_state();
175 oled_write_P(led_state.num_lock ? PSTR("NUM ") : PSTR(" "), false); 131 oled_write_P(led_state.num_lock ? PSTR("NUM ") : PSTR(" "), false);
176 oled_write_P(led_state.caps_lock ? PSTR("CAP ") : PSTR(" "), false); 132 oled_write_P(led_state.caps_lock ? PSTR("CAP ") : PSTR(" "), false);
177 oled_write_P(led_state.scroll_lock ? PSTR("SCR ") : PSTR(" "), false); 133 oled_write_ln_P(led_state.scroll_lock ? PSTR("SCR ") : PSTR(" "), false);
134}
135static void render_rgbled_status(bool full) {
136#ifdef RGBLIGHT_ENABLE
137 char buf[30];
138 if (RGBLIGHT_MODES > 1 && rgblight_is_enabled() && get_highest_layer(layer_state) == _RGB) {
139 if (full) {
140 snprintf(buf, sizeof(buf), "RGB mode %2d: %d,%d,%d \n",
141 rgblight_get_mode(),
142 rgblight_get_hue()/RGBLIGHT_HUE_STEP,
143 rgblight_get_sat()/RGBLIGHT_SAT_STEP,
144 rgblight_get_val()/RGBLIGHT_VAL_STEP);
145 } else {
146 snprintf(buf, sizeof(buf), "[%2d] ", rgblight_get_mode());
147 }
148 oled_write(buf, false);
149 } else {
150 oled_write_ln_P(PSTR("\n"), false);
151 }
152#endif
178} 153}
179
180void oled_task_user(void) { 154void oled_task_user(void) {
181 static bool finished_timer = false; 155 static bool finished_timer = false;
182 if ((timer_elapsed(startup_timer) < 3000) && !finished_timer) { 156 if (!finished_timer && (timer_elapsed(startup_timer) < 1000)) {
183 render_logo(); 157 render_logo();
184 } else { 158 } else {
185 finished_timer = true; 159 if (!finished_timer) {
160 oled_clear();
161 finished_timer = true;
162 }
186 render_info(); 163 render_info();
164 render_rgbled_status(true);
165 render_logo_font();
187 } 166 }
188} 167}
189#endif 168#endif
diff --git a/keyboards/0xcb/1337/keymaps/jakob/keymap.c b/keyboards/0xcb/1337/keymaps/jakob/keymap.c
new file mode 100644
index 000000000..dc5ba6025
--- /dev/null
+++ b/keyboards/0xcb/1337/keymaps/jakob/keymap.c
@@ -0,0 +1,168 @@
1/*
2Copyright 2021 0xCB - Conor Burns
3
4This program is free software: you can redistribute it and/or modify
5it under the terms of the GNU General Public License as published by
6the Free Software Foundation, either version 2 of the License, or
7(at your option) any later version.
8
9This program is distributed in the hope that it will be useful,
10but WITHOUT ANY WARRANTY; without even the implied warranty of
11MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
12GNU General Public License for more details.
13
14You should have received a copy of the GNU General Public License
15along with this program. If not, see <http://www.gnu.org/licenses/>.
16*/
17#include QMK_KEYBOARD_H
18#include <stdio.h>
19
20enum layer_names {
21 _HOME,
22 _MISC,
23 _RGB,
24 _BLED
25};
26
27const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = {
28[_HOME] = LAYOUT(
29 KC_MPRV, KC_MNXT, KC_MPLY,
30 KC_PGUP, KC_PGDN, TO(3),
31 KC_HOME, KC_END, TO(1)
32),
33[_MISC] = LAYOUT(
34 _______, _______, _______,
35 _______, _______, TO(0),
36 _______, _______, TO(2)
37),
38[_RGB] = LAYOUT(
39 RGB_HUI, RGB_HUD, RGB_MOD,
40 RGB_SAI, RGB_SAD, TO(1),
41 RGB_SPI, RGB_SPD, TO(3)
42),
43[_BLED] = LAYOUT(
44 BL_STEP, BL_BRTG, BL_TOGG,
45 BL_ON, BL_OFF, TO(2),
46 BL_INC, BL_DEC, TO(0)
47)
48};
49
50
51/* rotary encoder (SW3) - add more else if blocks for more granular layer control */
52#ifdef ENCODER_ENABLE
53void encoder_update_user(uint8_t index, bool clockwise) {
54 if (IS_LAYER_ON(_RGB)) {
55 #ifdef RGBLIGHT_ENABLE
56 if (clockwise) {
57 rgblight_increase_val();
58 } else {
59 rgblight_decrease_val();
60 }
61 #endif
62 } else if (IS_LAYER_ON(_BLED)) {
63 if (clockwise) {
64 backlight_increase();
65 } else {
66 backlight_decrease();
67 }
68 } else {
69 if (clockwise) {
70 tap_code16(C(A(KC_UP)));
71 } else {
72 tap_code16(C(A(KC_DOWN)));
73 }
74 }
75}
76#endif
77
78/* oled stuff :) */
79#ifdef OLED_DRIVER_ENABLE
80uint16_t startup_timer;
81
82oled_rotation_t oled_init_user(oled_rotation_t rotation) {
83 startup_timer = timer_read();
84 return rotation;
85}
86
87static void render_logo(void) {
88 static const char PROGMEM raw_logo[] = {
89 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
90 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,128, 64,128, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,128, 64,128, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
91 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,128, 0, 0, 0, 0, 0, 0, 1, 2, 4, 2, 1, 1, 1, 1, 1, 1,255, 0, 0, 0, 0, 0, 0, 0, 0, 0,255, 1, 1, 1, 1, 1, 1, 2, 4, 2, 1, 0, 0, 0, 0, 0, 0,128, 0, 0, 0,
92 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 2, 5,248, 5, 2, 0, 0, 0, 0, 0, 0,128,192,192,224,224,112,120, 56, 63, 28, 14, 14, 14,254, 14, 14, 30, 28, 63, 56,120,112,224,224,192,128, 0, 0, 0, 0, 0, 0, 0, 2, 5,248, 5, 2, 0,
93 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 64,160, 19,162, 66, 66, 66, 66, 66, 66, 66,255,255,255, 0, 0, 0,252,254,254,192,192,192,192,255, 0, 0, 0, 62, 62, 60, 60, 0, 0, 1,255,255,255, 66, 66, 66, 66, 66, 66, 66,162, 19,160, 64, 0,
94 0, 0, 0,128, 64, 64, 64,128, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,128,192, 64, 64,192,128, 0, 0,192, 64, 64,192,128, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,192, 64,192, 0, 0, 0, 0, 0,128,192, 64, 64,192,128, 0, 0,128,192, 64, 64,192,128, 0, 0, 64, 64, 64, 64, 64,192, 0, 0, 0, 0, 0,249, 8, 8, 8, 8, 8, 8, 8, 8,127,255,255,192,128,128, 15, 31, 31, 1, 1, 1, 1,255, 0, 0, 0, 30, 30, 14, 14,128,192,192,255,255,127, 8, 8, 8, 8, 8, 8, 8, 8,249, 0, 0, 0,
95 0, 0, 31, 49, 64, 78, 64, 49, 31, 0, 0, 97, 22, 8, 22, 97, 0, 0, 31, 49, 96, 64, 64, 96, 32, 0, 0,127, 68, 68,100, 59, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 64, 64,127, 64, 64, 0, 0, 0, 32,100, 68, 68,110, 59, 0, 0, 32,100, 68, 68,110, 59, 0, 0, 0, 0, 0,126, 3, 1, 0, 0, 0, 8, 20, 35, 20, 8, 0, 0, 0, 0, 0, 0, 0, 0, 1, 1, 3, 7, 7, 15,254, 30, 28, 28, 28,255, 28, 28, 28, 30,254, 15, 7, 3, 3, 1, 1, 0, 0, 0, 0, 0, 0, 0, 0, 4, 10, 17, 10, 4, 0,
96 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 16, 40, 68, 40, 16, 16, 16, 16, 16, 16, 31, 0, 0, 16, 40, 71, 40, 16, 0, 0, 31, 16, 16, 16, 16, 16, 16, 40, 68, 40, 16, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
97 };
98 oled_write_raw_P(raw_logo, sizeof(raw_logo));
99}
100static void render_logo_font(void) {
101 static const char PROGMEM qmk_logo[] = {
102 0xC0, 0xC1, 0xC2, 0xC3, 0xC4, 0xCB, 0x80, 0x81, 0x82, 0x83, 0x84, 0x85, 0x86, 0x87, 0xCB, 0xCB, 0xC5, 0xC6, 0xC7, 0xC8, 0xC9,
103 0xE0, 0xE1, 0xE2, 0xE3, 0xE4, 0xCB, 0xA0, 0xA1, 0xA2, 0xA3, 0xA4, 0xA5, 0xA6, 0xA7, 0xCB, 0xCB, 0xE5, 0xE6, 0xE7, 0xE8, 0xE9,
104 0xCC, 0xCD, 0xCE, 0xCF, 0xD0, 0xCB, 0x88, 0x89, 0x8A, 0x8B, 0x8A, 0x8B, 0x8C, 0x8D, 0xCB, 0xCB, 0xD1, 0xD2, 0xD3, 0xD4, 0xD5,
105 0xEC, 0xED, 0xEE, 0xEF, 0xF0, 0xCB, 0xA8, 0xA9, 0xAA, 0xAB, 0xAA, 0xAB, 0xAC, 0xAD, 0xCB, 0xCB, 0xF1, 0xF2, 0xF3, 0xF4, 0xF5, 0x00
106 };
107
108 oled_write_P(qmk_logo, false);
109}
110/* Shows the name of the current layer and locks for the host (CAPS etc.) */
111static void render_info(void) {
112 oled_write_P(PSTR("Layer: "), false);
113
114 switch (get_highest_layer(layer_state)) {
115 case _HOME:
116 oled_write_ln_P(PSTR("HOME"), false);
117 break;
118 case _MISC:
119 oled_write_ln_P(PSTR("MISC"), false);
120 break;
121 case _RGB:
122 oled_write_ln_P(PSTR("RGB"), false);
123 break;
124 case _BLED:
125 oled_write_ln_P(PSTR("Backlight"), false);
126 break;
127 default:
128 oled_write_ln_P(PSTR("Undefined"), false);
129 }
130 led_t led_state = host_keyboard_led_state();
131 oled_write_P(led_state.num_lock ? PSTR("NUM ") : PSTR(" "), false);
132 oled_write_P(led_state.caps_lock ? PSTR("CAP ") : PSTR(" "), false);
133 oled_write_ln_P(led_state.scroll_lock ? PSTR("SCR ") : PSTR(" "), false);
134}
135static void render_rgbled_status(bool full) {
136#ifdef RGBLIGHT_ENABLE
137 char buf[30];
138 if (RGBLIGHT_MODES > 1 && rgblight_is_enabled() && get_highest_layer(layer_state) == _RGB) {
139 if (full) {
140 snprintf(buf, sizeof(buf), "RGB mode %2d: %d,%d,%d \n",
141 rgblight_get_mode(),
142 rgblight_get_hue()/RGBLIGHT_HUE_STEP,
143 rgblight_get_sat()/RGBLIGHT_SAT_STEP,
144 rgblight_get_val()/RGBLIGHT_VAL_STEP);
145 } else {
146 snprintf(buf, sizeof(buf), "[%2d] ", rgblight_get_mode());
147 }
148 oled_write(buf, false);
149 } else {
150 oled_write_ln_P(PSTR("\n"), false);
151 }
152#endif
153}
154void oled_task_user(void) {
155 static bool finished_timer = false;
156 if (!finished_timer && (timer_elapsed(startup_timer) < 1000)) {
157 render_logo();
158 } else {
159 if (!finished_timer) {
160 oled_clear();
161 finished_timer = true;
162 }
163 render_info();
164 render_rgbled_status(true);
165 render_logo_font();
166 }
167}
168#endif
diff --git a/keyboards/0xcb/1337/keymaps/jakob/rules.mk b/keyboards/0xcb/1337/keymaps/jakob/rules.mk
new file mode 100644
index 000000000..1e5b99807
--- /dev/null
+++ b/keyboards/0xcb/1337/keymaps/jakob/rules.mk
@@ -0,0 +1 @@
VIA_ENABLE = yes
diff --git a/keyboards/0xcb/1337/keymaps/via/keymap.c b/keyboards/0xcb/1337/keymaps/via/keymap.c
index c711bdae9..5089117d8 100644
--- a/keyboards/0xcb/1337/keymaps/via/keymap.c
+++ b/keyboards/0xcb/1337/keymaps/via/keymap.c
@@ -15,6 +15,7 @@ You should have received a copy of the GNU General Public License
15along with this program. If not, see <http://www.gnu.org/licenses/>. 15along with this program. If not, see <http://www.gnu.org/licenses/>.
16*/ 16*/
17#include QMK_KEYBOARD_H 17#include QMK_KEYBOARD_H
18#include <stdio.h>
18 19
19enum layer_names { 20enum layer_names {
20 _HOME, 21 _HOME,
@@ -51,11 +52,13 @@ const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = {
51#ifdef ENCODER_ENABLE 52#ifdef ENCODER_ENABLE
52void encoder_update_user(uint8_t index, bool clockwise) { 53void encoder_update_user(uint8_t index, bool clockwise) {
53 if (IS_LAYER_ON(_RGB)) { 54 if (IS_LAYER_ON(_RGB)) {
54 if (clockwise) { 55 #ifdef RGBLIGHT_ENABLE
55 rgblight_increase_val(); 56 if (clockwise) {
56 } else { 57 rgblight_increase_val();
57 rgblight_decrease_val(); 58 } else {
58 } 59 rgblight_decrease_val();
60 }
61 #endif
59 } else if (IS_LAYER_ON(_BLED)) { 62 } else if (IS_LAYER_ON(_BLED)) {
60 if (clockwise) { 63 if (clockwise) {
61 backlight_increase(); 64 backlight_increase();
@@ -82,74 +85,27 @@ oled_rotation_t oled_init_user(oled_rotation_t rotation) {
82} 85}
83 86
84static void render_logo(void) { 87static void render_logo(void) {
85 static const char PROGMEM logo[] = { 88 static const char PROGMEM raw_logo[] = {
86 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 89 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
87 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 90 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,128, 64,128, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,128, 64,128, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
88 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 91 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,128, 0, 0, 0, 0, 0, 0, 1, 2, 4, 2, 1, 1, 1, 1, 1, 1,255, 0, 0, 0, 0, 0, 0, 0, 0, 0,255, 1, 1, 1, 1, 1, 1, 2, 4, 2, 1, 0, 0, 0, 0, 0, 0,128, 0, 0, 0,
89 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 92 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 2, 5,248, 5, 2, 0, 0, 0, 0, 0, 0,128,192,192,224,224,112,120, 56, 63, 28, 14, 14, 14,254, 14, 14, 30, 28, 63, 56,120,112,224,224,192,128, 0, 0, 0, 0, 0, 0, 0, 2, 5,248, 5, 2, 0,
90 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 93 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 64,160, 19,162, 66, 66, 66, 66, 66, 66, 66,255,255,255, 0, 0, 0,252,254,254,192,192,192,192,255, 0, 0, 0, 62, 62, 60, 60, 0, 0, 1,255,255,255, 66, 66, 66, 66, 66, 66, 66,162, 19,160, 64, 0,
91 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 94 0, 0, 0,128, 64, 64, 64,128, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,128,192, 64, 64,192,128, 0, 0,192, 64, 64,192,128, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,192, 64,192, 0, 0, 0, 0, 0,128,192, 64, 64,192,128, 0, 0,128,192, 64, 64,192,128, 0, 0, 64, 64, 64, 64, 64,192, 0, 0, 0, 0, 0,249, 8, 8, 8, 8, 8, 8, 8, 8,127,255,255,192,128,128, 15, 31, 31, 1, 1, 1, 1,255, 0, 0, 0, 30, 30, 14, 14,128,192,192,255,255,127, 8, 8, 8, 8, 8, 8, 8, 8,249, 0, 0, 0,
92 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 95 0, 0, 31, 49, 64, 78, 64, 49, 31, 0, 0, 97, 22, 8, 22, 97, 0, 0, 31, 49, 96, 64, 64, 96, 32, 0, 0,127, 68, 68,100, 59, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 64, 64,127, 64, 64, 0, 0, 0, 32,100, 68, 68,110, 59, 0, 0, 32,100, 68, 68,110, 59, 0, 0, 0, 0, 0,126, 3, 1, 0, 0, 0, 8, 20, 35, 20, 8, 0, 0, 0, 0, 0, 0, 0, 0, 1, 1, 3, 7, 7, 15,254, 30, 28, 28, 28,255, 28, 28, 28, 30,254, 15, 7, 3, 3, 1, 1, 0, 0, 0, 0, 0, 0, 0, 0, 4, 10, 17, 10, 4, 0,
93 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 96 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 16, 40, 68, 40, 16, 16, 16, 16, 16, 16, 31, 0, 0, 16, 40, 71, 40, 16, 0, 0, 31, 16, 16, 16, 16, 16, 16, 40, 68, 40, 16, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
94 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 97 };
95 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 98 oled_write_raw_P(raw_logo, sizeof(raw_logo));
96 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 99}
97 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 100static void render_logo_font(void) {
98 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 101 static const char PROGMEM qmk_logo[] = {
99 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x80, 0x40, 0x80, 0x00, 0x00, 0x00, 0x00, 0x00, 102 0xC0, 0xC1, 0xC2, 0xC3, 0xC4, 0xCB, 0x80, 0x81, 0x82, 0x83, 0x84, 0x85, 0x86, 0x87, 0xCB, 0xCB, 0xC5, 0xC6, 0xC7, 0xC8, 0xC9,
100 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 103 0xE0, 0xE1, 0xE2, 0xE3, 0xE4, 0xCB, 0xA0, 0xA1, 0xA2, 0xA3, 0xA4, 0xA5, 0xA6, 0xA7, 0xCB, 0xCB, 0xE5, 0xE6, 0xE7, 0xE8, 0xE9,
101 0x00, 0x00, 0x80, 0x40, 0x80, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 104 0xCC, 0xCD, 0xCE, 0xCF, 0xD0, 0xCB, 0x88, 0x89, 0x8A, 0x8B, 0x8A, 0x8B, 0x8C, 0x8D, 0xCB, 0xCB, 0xD1, 0xD2, 0xD3, 0xD4, 0xD5,
102 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 105 0xEC, 0xED, 0xEE, 0xEF, 0xF0, 0xCB, 0xA8, 0xA9, 0xAA, 0xAB, 0xAA, 0xAB, 0xAC, 0xAD, 0xCB, 0xCB, 0xF1, 0xF2, 0xF3, 0xF4, 0xF5, 0x00
103 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 106 };
104 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
105 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
106 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
107 0x80, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x01, 0x02, 0x04, 0x02, 0x01, 0x01, 0x01, 0x01, 0x01,
108 0x01, 0xff, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0xff, 0x01, 0x01, 0x01, 0x01,
109 0x01, 0x01, 0x02, 0x04, 0x02, 0x01, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x80, 0x00, 0x00, 0x00,
110 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
111 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
112 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
113 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
114 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x02, 0x05,
115 0xf8, 0x05, 0x02, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x80, 0xc0, 0xc0, 0xe0, 0xe0, 0x70, 0x78,
116 0x38, 0x3f, 0x1c, 0x0e, 0x0e, 0x0e, 0xfe, 0x0e, 0x0e, 0x1e, 0x1c, 0x3f, 0x38, 0x78, 0x70, 0xe0,
117 0xe0, 0xc0, 0x80, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x02, 0x05, 0xf8, 0x05, 0x02, 0x00,
118 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
119 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
120 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
121 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
122 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x40, 0xa0,
123 0x13, 0xa2, 0x42, 0x42, 0x42, 0x42, 0x42, 0x42, 0x42, 0xff, 0xff, 0xff, 0x00, 0x00, 0x00, 0xfc,
124 0xfe, 0xfe, 0xc0, 0xc0, 0xc0, 0xc0, 0xff, 0x00, 0x00, 0x00, 0x3e, 0x3e, 0x3c, 0x3c, 0x00, 0x00,
125 0x01, 0xff, 0xff, 0xff, 0x42, 0x42, 0x42, 0x42, 0x42, 0x42, 0x42, 0xa2, 0x13, 0xa0, 0x40, 0x00,
126 0x00, 0x00, 0x00, 0x80, 0x40, 0x40, 0x40, 0x80, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
127 0x00, 0x00, 0x00, 0x80, 0xc0, 0x40, 0x40, 0xc0, 0x80, 0x00, 0x00, 0xc0, 0x40, 0x40, 0xc0, 0x80,
128 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0xc0, 0x40, 0xc0,
129 0x00, 0x00, 0x00, 0x00, 0x00, 0x80, 0xc0, 0x40, 0x40, 0xc0, 0x80, 0x00, 0x00, 0x80, 0xc0, 0x40,
130 0x40, 0xc0, 0x80, 0x00, 0x00, 0x40, 0x40, 0x40, 0x40, 0x40, 0xc0, 0x00, 0x00, 0x00, 0x00, 0x00,
131 0xf9, 0x08, 0x08, 0x08, 0x08, 0x08, 0x08, 0x08, 0x08, 0x7f, 0xff, 0xff, 0xc0, 0x80, 0x80, 0x0f,
132 0x1f, 0x1f, 0x01, 0x01, 0x01, 0x01, 0xff, 0x00, 0x00, 0x00, 0x1e, 0x1e, 0x0e, 0x0e, 0x80, 0xc0,
133 0xc0, 0xff, 0xff, 0x7f, 0x08, 0x08, 0x08, 0x08, 0x08, 0x08, 0x08, 0x08, 0xf9, 0x00, 0x00, 0x00,
134 0x00, 0x00, 0x1f, 0x31, 0x40, 0x4e, 0x40, 0x31, 0x1f, 0x00, 0x00, 0x61, 0x16, 0x08, 0x16, 0x61,
135 0x00, 0x00, 0x1f, 0x31, 0x60, 0x40, 0x40, 0x60, 0x20, 0x00, 0x00, 0x7f, 0x44, 0x44, 0x64, 0x3b,
136 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x40, 0x40, 0x7f,
137 0x40, 0x40, 0x00, 0x00, 0x00, 0x20, 0x64, 0x44, 0x44, 0x6e, 0x3b, 0x00, 0x00, 0x20, 0x64, 0x44,
138 0x44, 0x6e, 0x3b, 0x00, 0x00, 0x00, 0x00, 0x00, 0x7e, 0x03, 0x01, 0x00, 0x00, 0x00, 0x08, 0x14,
139 0x23, 0x14, 0x08, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x01, 0x01, 0x03, 0x07, 0x07,
140 0x0f, 0xfe, 0x1e, 0x1c, 0x1c, 0x1c, 0xff, 0x1c, 0x1c, 0x1c, 0x1e, 0xfe, 0x0f, 0x07, 0x03, 0x03,
141 0x01, 0x01, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x04, 0x0a, 0x11, 0x0a, 0x04, 0x00,
142 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
143 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
144 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
145 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
146 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
147 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x10, 0x28, 0x44, 0x28, 0x10, 0x10, 0x10, 0x10, 0x10,
148 0x10, 0x1f, 0x00, 0x00, 0x10, 0x28, 0x47, 0x28, 0x10, 0x00, 0x00, 0x1f, 0x10, 0x10, 0x10, 0x10,
149 0x10, 0x10, 0x28, 0x44, 0x28, 0x10, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00
150 };
151 107
152 oled_write_raw_P(logo, sizeof(logo)); 108 oled_write_P(qmk_logo, false);
153} 109}
154/* Shows the name of the current layer and locks for the host (CAPS etc.) */ 110/* Shows the name of the current layer and locks for the host (CAPS etc.) */
155static void render_info(void) { 111static void render_info(void) {
@@ -174,16 +130,39 @@ static void render_info(void) {
174 led_t led_state = host_keyboard_led_state(); 130 led_t led_state = host_keyboard_led_state();
175 oled_write_P(led_state.num_lock ? PSTR("NUM ") : PSTR(" "), false); 131 oled_write_P(led_state.num_lock ? PSTR("NUM ") : PSTR(" "), false);
176 oled_write_P(led_state.caps_lock ? PSTR("CAP ") : PSTR(" "), false); 132 oled_write_P(led_state.caps_lock ? PSTR("CAP ") : PSTR(" "), false);
177 oled_write_P(led_state.scroll_lock ? PSTR("SCR ") : PSTR(" "), false); 133 oled_write_ln_P(led_state.scroll_lock ? PSTR("SCR ") : PSTR(" "), false);
134}
135static void render_rgbled_status(bool full) {
136#ifdef RGBLIGHT_ENABLE
137 char buf[30];
138 if (RGBLIGHT_MODES > 1 && rgblight_is_enabled() && get_highest_layer(layer_state) == _RGB) {
139 if (full) {
140 snprintf(buf, sizeof(buf), "RGB mode %2d: %d,%d,%d \n",
141 rgblight_get_mode(),
142 rgblight_get_hue()/RGBLIGHT_HUE_STEP,
143 rgblight_get_sat()/RGBLIGHT_SAT_STEP,
144 rgblight_get_val()/RGBLIGHT_VAL_STEP);
145 } else {
146 snprintf(buf, sizeof(buf), "[%2d] ", rgblight_get_mode());
147 }
148 oled_write(buf, false);
149 } else {
150 oled_write_ln_P(PSTR("\n"), false);
151 }
152#endif
178} 153}
179
180void oled_task_user(void) { 154void oled_task_user(void) {
181 static bool finished_timer = false; 155 static bool finished_timer = false;
182 if ((timer_elapsed(startup_timer) < 3000) && !finished_timer) { 156 if (!finished_timer && (timer_elapsed(startup_timer) < 1000)) {
183 render_logo(); 157 render_logo();
184 } else { 158 } else {
185 finished_timer = true; 159 if (!finished_timer) {
160 oled_clear();
161 finished_timer = true;
162 }
186 render_info(); 163 render_info();
164 render_rgbled_status(true);
165 render_logo_font();
187 } 166 }
188} 167}
189#endif 168#endif