aboutsummaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorPriyadi Iman Nurcahyo <priyadi@priyadi.net>2017-02-15 19:22:58 +0700
committerPriyadi Iman Nurcahyo <priyadi@priyadi.net>2017-02-15 19:22:58 +0700
commit3882f97d2e779899c202111e46cf2cf2926b9212 (patch)
tree02ebb6394df289674fca926241276149e233fbec
parent1eac297a2fa4da7c5799bff80a112cd9bff6cf2a (diff)
downloadqmk_firmware-3882f97d2e779899c202111e46cf2cf2926b9212.tar.gz
qmk_firmware-3882f97d2e779899c202111e46cf2cf2926b9212.zip
Move keyboard specific stuff to keyboard specific files, and vice versa
-rw-r--r--keyboards/handwired/promethium/config.h104
-rw-r--r--keyboards/handwired/promethium/keymaps/priyadi/config.h2
-rw-r--r--keyboards/handwired/promethium/keymaps/priyadi/keymap.c69
-rw-r--r--keyboards/handwired/promethium/promethium.c4
-rw-r--r--keyboards/handwired/promethium/promethium.h105
5 files changed, 168 insertions, 116 deletions
diff --git a/keyboards/handwired/promethium/config.h b/keyboards/handwired/promethium/config.h
index fd45c2bfe..24f02993f 100644
--- a/keyboards/handwired/promethium/config.h
+++ b/keyboards/handwired/promethium/config.h
@@ -152,6 +152,110 @@ along with this program. If not, see <http://www.gnu.org/licenses/>.
152//#define NO_ACTION_MACRO 152//#define NO_ACTION_MACRO
153//#define NO_ACTION_FUNCTION 153//#define NO_ACTION_FUNCTION
154 154
155#define PS2_INIT_DELAY 2000
156#define BATTERY_PIN 9
157#define BATTERY_POLL 30000
158#define MAX_VOLTAGE 4.2
159#define MIN_VOLTAGE 3.2
160
161#define KEYMAP( \
162 k11, k12, k13, k14, k15, k16, k17, k18, k19, k1a, k1b, k1c, \
163 k21, k22, k23, k24, k25, k26, k27, k28, k29, k2a, k2b, k2c, \
164 k31, k32, k33, k34, k35, k36, k37, k38, k39, k3a, k3b, k3c, \
165 k41, k42, k43, k44, k45, k46, k47, k48, k49, k4a, k4b, k4c \
166) \
167{ \
168 {k11, k12, k13, k14, k15, k16}, \
169 {k21, k22, k23, k24, k25, k26}, \
170 {k31, k32, k33, k34, k35, k36}, \
171 {k41, k42, k43, k44, k45, k46}, \
172 {k17, k18, k19, k1a, k1b, k1c}, \
173 {k27, k28, k29, k2a, k2b, k2c}, \
174 {k37, k38, k39, k3a, k3b, k3c}, \
175 {k47, k48, k49, k4a, k4b, k4c} \
176}
177
178#ifndef __ASSEMBLER__ // assembler doesn't like enum in .h file
179enum led_sequence {
180 LED_IND_BLUETOOTH,
181 LED_IND_USB,
182 LED_IND_BATTERY,
183
184 LED_IND_FUN,
185 LED_IND_NUM,
186 LED_IND_EMOJI,
187
188 LED_BKSP,
189 LED_ENT,
190 LED_RSFT,
191 LED_RCTL,
192
193 LED_RGUI,
194 LED_SLSH,
195 LED_SCLN,
196 LED_P,
197
198 LED_O,
199 LED_L,
200 LED_DOT,
201 LED_RALT,
202
203 LED_EMOJI,
204 LED_COMM,
205 LED_K,
206 LED_I,
207
208 LED_U,
209 LED_J,
210 LED_M,
211 LED_FUN,
212
213 LED_RSPC,
214 LED_N,
215 LED_HH,
216 LED_Y,
217
218 LED_TRACKPOINT3,
219 LED_TRACKPOINT2,
220 LED_TRACKPOINT1,
221
222 LED_LSPC,
223 LED_B,
224 LED_G,
225 LED_T,
226
227 LED_R,
228 LED_F,
229 LED_V,
230 LED_NUM,
231
232 LED_PUNC,
233 LED_C,
234 LED_D,
235 LED_E,
236
237 LED_W,
238 LED_S,
239 LED_X,
240 LED_LALT,
241
242 LED_LGUI,
243 LED_Z,
244 LED_A,
245 LED_Q,
246
247 LED_TAB,
248 LED_ESC,
249 LED_LSFT,
250 LED_LCTL,
251
252 LED_TOTAL
253};
254
255#define RGB_DI_PIN B5
256#define RGBSPS_NUM LED_TOTAL
257#endif
258
155/* PS/2 mouse */ 259/* PS/2 mouse */
156#ifdef PS2_USE_BUSYWAIT 260#ifdef PS2_USE_BUSYWAIT
157# define PS2_CLOCK_PORT PORTD 261# define PS2_CLOCK_PORT PORTD
diff --git a/keyboards/handwired/promethium/keymaps/priyadi/config.h b/keyboards/handwired/promethium/keymaps/priyadi/config.h
index 00f9fed31..3f5dd5817 100644
--- a/keyboards/handwired/promethium/keymaps/priyadi/config.h
+++ b/keyboards/handwired/promethium/keymaps/priyadi/config.h
@@ -14,8 +14,6 @@
14#define PREVENT_STUCK_MODIFIERS 14#define PREVENT_STUCK_MODIFIERS
15 15
16#define RGBSPS_ENABLE 16#define RGBSPS_ENABLE
17#define RGB_DI_PIN B5
18#define RGBSPS_NUM 57
19 17
20#define UNICODE_TYPE_DELAY 0 18#define UNICODE_TYPE_DELAY 0
21 19
diff --git a/keyboards/handwired/promethium/keymaps/priyadi/keymap.c b/keyboards/handwired/promethium/keymaps/priyadi/keymap.c
index cdec187ee..2c43f9884 100644
--- a/keyboards/handwired/promethium/keymaps/priyadi/keymap.c
+++ b/keyboards/handwired/promethium/keymaps/priyadi/keymap.c
@@ -74,6 +74,7 @@ uint8_t glow_mode = GLOW_MIN;
74void turn_off_capslock(void); 74void turn_off_capslock(void);
75extern keymap_config_t keymap_config; 75extern keymap_config_t keymap_config;
76 76
77// layers, ordering is important!
77enum layers { 78enum layers {
78 _QWERTY, 79 _QWERTY,
79 _DVORAK, 80 _DVORAK,
@@ -89,9 +90,10 @@ enum layers {
89 _FUN, 90 _FUN,
90 _PUNC, 91 _PUNC,
91 92
93 _EMPTY,
92 _EMOJI, 94 _EMOJI,
93 _GUI, 95 _GUI,
94 _SYS, 96 _SYS
95}; 97};
96 98
97// double-space layer 99// double-space layer
@@ -130,6 +132,7 @@ enum planck_keycodes {
130 KEYCODE_END 132 KEYCODE_END
131}; 133};
132 134
135#define EMPTY MO(_EMPTY)
133#define NUM MO(_NUM) 136#define NUM MO(_NUM)
134#define FUN MO(_FUN) 137#define FUN MO(_FUN)
135#define FUN0 LT(_FUN, KC_0) 138#define FUN0 LT(_FUN, KC_0)
@@ -237,6 +240,11 @@ enum unicode_name {
237 LOMEG, 240 LOMEG,
238 241
239 FSIGM, 242 FSIGM,
243
244 LTEQ,
245 GTEQ,
246 NOTEQ,
247 PLMIN,
240}; 248};
241 249
242const uint32_t PROGMEM unicode_map[] = { 250const uint32_t PROGMEM unicode_map[] = {
@@ -338,6 +346,12 @@ const uint32_t PROGMEM unicode_map[] = {
338 [LPSI] = 0x03C8, 346 [LPSI] = 0x03C8,
339 [LOMEG] = 0x03C9, 347 [LOMEG] = 0x03C9,
340 [FSIGM] = 0x03C2, 348 [FSIGM] = 0x03C2,
349
350 // other
351 [LTEQ] = 0x2264, // less than or equal
352 [GTEQ] = 0x2265, // greater than or equal
353 [NOTEQ] = 0x2260, // not equal
354 [PLMIN] = 0xB1, // plus minus
341}; 355};
342 356
343// RGBSPS 357// RGBSPS
@@ -551,14 +565,14 @@ const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = {
551 * |------+------+------+------+------+------|------+------+------+------+------+------| 565 * |------+------+------+------+------+------|------+------+------+------+------+------|
552 * | Shift| Z | X | C | V | B | N | M | , | . | / |Shift | 566 * | Shift| Z | X | C | V | B | N | M | , | . | / |Shift |
553 * |------+------+------+------+------+------+------+------+------+------+------+------| 567 * |------+------+------+------+------+------+------+------+------+------+------+------|
554 * | Ctrl | Alt | GUI | Punc | Num | Space | Func |Greek | GUI |AltGr | Ctrl | 568 * | Ctrl | Alt | GUI | Punc | Num | Space | Fun |Greek | GUI |AltGr | Ctrl |
555 * `-----------------------------------------------------------------------------------' 569 * `-----------------------------------------------------------------------------------'
556 */ 570 */
557[_QWERTY] = KEYMAP( 571[_QWERTY] = KEYMAP(
558 KC_TAB, KC_Q, KC_W, KC_E, KC_R, KC_T, KC_Y, KC_U, KC_I, KC_O, KC_P, KC_BSPC, 572 KC_TAB, KC_Q, KC_W, KC_E, KC_R, KC_T, KC_Y, KC_U, KC_I, KC_O, KC_P, KC_BSPC,
559 KC_ESC, KC_A, KC_S, KC_D, KC_F, KC_G, KC_H, KC_J, KC_K, KC_L, KC_QUOT, KC_ENT , 573 KC_ESC, KC_A, KC_S, KC_D, KC_F, KC_G, KC_H, KC_J, KC_K, KC_L, KC_QUOT, KC_ENT ,
560 KC_LSFT, KC_Z, KC_X, KC_C, KC_V, KC_B, KC_N, KC_M, KC_COMM, KC_DOT, KC_SLSH, KC_RSFT, 574 KC_LSFT, KC_Z, KC_X, KC_C, KC_V, KC_B, KC_N, KC_M, KC_COMM, KC_DOT, KC_SLSH, KC_RSFT,
561 KC_LCTL, KC_LALT, KC_LGUI, XXXXXXX, NUM, LSPACE, RSPACE, FUN, GREEK, KC_RGUI, KC_RALT, KC_RCTL 575 KC_LCTL, KC_LALT, KC_LGUI, EMPTY, NUM, LSPACE, RSPACE, FUN, GREEK, KC_RGUI, KC_RALT, KC_RCTL
562), 576),
563 577
564/* Dvorak 578/* Dvorak
@@ -646,31 +660,31 @@ const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = {
646 660
647/* Punc 661/* Punc
648 * ,-----------------------------------------------------------------------------------. 662 * ,-----------------------------------------------------------------------------------.
649 * | ~ | ! | @ | # | $ | % | ^ | & | * | ( | ) | ` | 663 * | ~ | ! | @ | # | $ | % | ^ | & | * | ≤ | ≥ | ` |
650 * |------+------+------+------+------+-------------+------+------+------+------+------| 664 * |------+------+------+------+------+-------------+------+------+------+------+------|
651 * | | * | \ | - | = | / | | ( | ) | < | > | | 665 * | | * | \ | - | = | / | ≠ | ( | ) | < | > | |
652 * |------+------+------+------+------+------|------+------+------+------+------+------| 666 * |------+------+------+------+------+------|------+------+------+------+------+------|
653 * | & | ^ | | | _ | + | ? | | [ | ] | { | } | : | 667 * | & | ^ | | | _ | + | ? | ± | [ | ] | { | } | : |
654 * |------+------+------+------+------+------+------+------+------+------+------+------| 668 * |------+------+------+------+------+------+------+------+------+------+------+------|
655 * | | | | | | | | | | | | 669 * | | | | | | | | | | | |
656 * `-----------------------------------------------------------------------------------' 670 * `-----------------------------------------------------------------------------------'
657 */ 671 */
658[_PUNC] = KEYMAP( 672[_PUNC] = KEYMAP(
659 KC_TILD, KC_EXLM, KC_AT, KC_HASH, KC_DLR, KC_PERC, KC_CIRC, KC_AMPR, KC_ASTR, KC_LPRN, KC_RPRN, _______, 673 KC_TILD, KC_EXLM, KC_AT, KC_HASH, KC_DLR, KC_PERC, KC_CIRC, KC_AMPR, KC_ASTR, X(LTEQ), X(GTEQ), _______,
660 KC_GRV, KC_ASTR, KC_BSLS, KC_MINS, KC_EQL, KC_SLSH, XXXXXXX, KC_LPRN, KC_RPRN, KC_LABK, KC_RABK, _______, 674 KC_GRV, KC_ASTR, KC_BSLS, KC_MINS, KC_EQL, KC_SLSH, X(NOTEQ),KC_LPRN, KC_RPRN, KC_LABK, KC_RABK, _______,
661 KC_AMPR, KC_CIRC, KC_PIPE, KC_UNDS, KC_PLUS, KC_QUES, XXXXXXX, KC_LBRC, KC_RBRC, KC_LCBR, KC_RCBR, KC_COLN, 675 KC_AMPR, KC_CIRC, KC_PIPE, KC_UNDS, KC_PLUS, KC_QUES, X(PLMIN),KC_LBRC, KC_RBRC, KC_LCBR, KC_RCBR, KC_COLN,
662 _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______ 676 _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______
663), 677),
664 678
665/* Num 679/* Num
666 * ,-----------------------------------------------------------------------------------. 680 * ,-----------------------------------------------------------------------------------.
667 * | ~ | ! | @ | # | $ | % | A | 7 | 8 | 9 | D | ` | 681 * | ~ | ! | @ | # | $ | % | A | 7 | 8 | 9 | D | |
668 * |------+------+------+------+------+-------------+------+------+------+------+------| 682 * |------+------+------+------+------+-------------+------+------+------+------+------|
669 * | | * | \ | - | = | / | B | 4 | 5 | 6 | E | | 683 * | ` | * | \ | - | = | / | B | 4 | 5 | 6 | E | |
670 * |------+------+------+------+------+------|------+------+------+------+------+------| 684 * |------+------+------+------+------+------|------+------+------+------+------+------|
671 * | & | ^ | | | _ | + | ? | C | 1 | 2 | 3 | F | : | 685 * | & | ^ | | | _ | + | ? | C | 1 | 2 | 3 | F | : |
672 * |------+------+------+------+------+------+------+------+------+------+------+------| 686 * |------+------+------+------+------+------+------+------+------+------+------+------|
673 * | | | | | | | x | 0 | , | . | | | 687 * | | | | | | | | 0 | , | . | x | |
674 * `-----------------------------------------------------------------------------------' 688 * `-----------------------------------------------------------------------------------'
675 */ 689 */
676[_NUM] = KEYMAP( 690[_NUM] = KEYMAP(
@@ -734,6 +748,24 @@ const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = {
734 _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______ 748 _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______
735), 749),
736 750
751/* Empty
752 * ,-----------------------------------------------------------------------------------.
753 * | | | | | | | | | | | | |
754 * |------+------+------+------+------+-------------+------+------+------+------+------|
755 * | | | | | | | | | | | | |
756 * |------+------+------+------+------+------+------+------+------+------+------+------|
757 * | | | | | | | | | | | | |
758 * |------+------+------+------+------+------+------+------+------+------+------+------|
759 * | | | | | | | | | | | | |
760 * `-----------------------------------------------------------------------------------'
761 */
762[_EMPTY] = KEYMAP(
763 XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX,
764 XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX,
765 XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX,
766 _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______
767),
768
737/* Emoji 769/* Emoji
738 * ,-----------------------------------------------------------------------------------. 770 * ,-----------------------------------------------------------------------------------.
739 * | | | | | | | | | | | | | 771 * | | | | | | | | | | | | |
@@ -749,7 +781,7 @@ const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = {
749 X(HART2), X(CRY2),X(WEARY),X(EYERT),X(SMIRK), X(TJOY),X(RECYC),X(UNAMU),X(MUSIC),X(OKHND),X(PENSV), X(PHEW), 781 X(HART2), X(CRY2),X(WEARY),X(EYERT),X(SMIRK), X(TJOY),X(RECYC),X(UNAMU),X(MUSIC),X(OKHND),X(PENSV), X(PHEW),
750 X(THMUP), X(PRAY),X(SMILE),X(SMIL2),X(FLUSH), X(GRIN),X(HEART), X(BYE), X(KISS),X(CELEB), X(COOL),X(NOEVS), 782 X(THMUP), X(PRAY),X(SMILE),X(SMIL2),X(FLUSH), X(GRIN),X(HEART), X(BYE), X(KISS),X(CELEB), X(COOL),X(NOEVS),
751 X(THMDN),X(SLEEP), X(CLAP), X(CRY), X(VIC),X(BHART), X(SUN),X(SMEYE), X(WINK), X(MOON),X(CONFU),X(NOEVH), 783 X(THMDN),X(SLEEP), X(CLAP), X(CRY), X(VIC),X(BHART), X(SUN),X(SMEYE), X(WINK), X(MOON),X(CONFU),X(NOEVH),
752 X(POO), X(EYES), _______,X(HUNRD), X(SKULL),X(HORNS), X(HALO), X(FEAR),X(YUMMY),_______,X(DISAP),X(NOEVK) 784 X(POO), X(EYES), X(HUNRD),_______, X(SKULL),X(HORNS), X(HALO), X(FEAR),_______,X(YUMMY),X(DISAP),X(NOEVK)
753), 785),
754 786
755/* GUI 787/* GUI
@@ -788,6 +820,7 @@ const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = {
788 _______, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, _______ 820 _______, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, _______
789), 821),
790 822
823
791}; 824};
792 825
793void persistant_default_layer_set(uint16_t default_layer) { 826void persistant_default_layer_set(uint16_t default_layer) {
@@ -831,6 +864,16 @@ uint32_t layer_state_set_kb(uint32_t state)
831 } else { 864 } else {
832 state &= ~(1UL<<_PUNC); 865 state &= ~(1UL<<_PUNC);
833 } 866 }
867
868 // turn on emoji layer if empty and greek layer are on
869 if (
870 (state & ((1UL<<_EMPTY) | (1UL<<_GREEKU))) == ((1UL<<_EMPTY) | (1UL<<_GREEKU))
871 || (state & ((1UL<<_EMPTY) | (1UL<<_GREEKL))) == ((1UL<<_EMPTY) | (1UL<<_GREEKL))
872 ) {
873 state |= (1UL<<_EMOJI);
874 } else {
875 state &= ~(1UL<<_EMOJI);
876 }
834 return state; 877 return state;
835} 878}
836 879
diff --git a/keyboards/handwired/promethium/promethium.c b/keyboards/handwired/promethium/promethium.c
index 62e2281fa..4943f8c9f 100644
--- a/keyboards/handwired/promethium/promethium.c
+++ b/keyboards/handwired/promethium/promethium.c
@@ -36,3 +36,7 @@ void led_set_kb(uint8_t usb_led) {
36 led_set_user(usb_led); 36 led_set_user(usb_led);
37} 37}
38 38
39__attribute__ ((weak))
40void led_set_user(uint8_t usb_led) {
41}
42
diff --git a/keyboards/handwired/promethium/promethium.h b/keyboards/handwired/promethium/promethium.h
index caad5258e..260f140c5 100644
--- a/keyboards/handwired/promethium/promethium.h
+++ b/keyboards/handwired/promethium/promethium.h
@@ -1,107 +1,10 @@
1#ifndef PROMETHIUM_H 1#ifndef PROMETHIUM_H
2#define PROMETHIUM_H 2#define PROMETHIUM_H
3 3
4#include "quantum.h" 4#include "stdint.h"
5 5
6#define PS2_INIT_DELAY 2000 6void battery_poll(uint8_t level);
7#define BATTERY_PIN 9 7void led_set_kb(uint8_t usb_led);
8#define BATTERY_POLL 30000 8void led_set_user(uint8_t usb_led);
9#define MAX_VOLTAGE 4.2
10#define MIN_VOLTAGE 3.2
11
12#define KEYMAP( \
13 k11, k12, k13, k14, k15, k16, k17, k18, k19, k1a, k1b, k1c, \
14 k21, k22, k23, k24, k25, k26, k27, k28, k29, k2a, k2b, k2c, \
15 k31, k32, k33, k34, k35, k36, k37, k38, k39, k3a, k3b, k3c, \
16 k41, k42, k43, k44, k45, k46, k47, k48, k49, k4a, k4b, k4c \
17) \
18{ \
19 {k11, k12, k13, k14, k15, k16}, \
20 {k21, k22, k23, k24, k25, k26}, \
21 {k31, k32, k33, k34, k35, k36}, \
22 {k41, k42, k43, k44, k45, k46}, \
23 {k17, k18, k19, k1a, k1b, k1c}, \
24 {k27, k28, k29, k2a, k2b, k2c}, \
25 {k37, k38, k39, k3a, k3b, k3c}, \
26 {k47, k48, k49, k4a, k4b, k4c} \
27}
28
29
30
31enum led_sequence {
32 LED_IND_BLUETOOTH,
33 LED_IND_USB,
34 LED_IND_BATTERY,
35
36 LED_IND_FUN,
37 LED_IND_NUM,
38 LED_IND_EMOJI,
39
40 LED_BKSP,
41 LED_ENT,
42 LED_RSFT,
43 LED_RCTL,
44
45 LED_RGUI,
46 LED_SLSH,
47 LED_SCLN,
48 LED_P,
49
50 LED_O,
51 LED_L,
52 LED_DOT,
53 LED_RALT,
54
55 LED_EMOJI,
56 LED_COMM,
57 LED_K,
58 LED_I,
59
60 LED_U,
61 LED_J,
62 LED_M,
63 LED_FUN,
64
65 LED_RSPC,
66 LED_N,
67 LED_HH,
68 LED_Y,
69
70 LED_TRACKPOINT3,
71 LED_TRACKPOINT2,
72 LED_TRACKPOINT1,
73
74 LED_LSPC,
75 LED_B,
76 LED_G,
77 LED_T,
78
79 LED_R,
80 LED_F,
81 LED_V,
82 LED_NUM,
83
84 LED_PUNC,
85 LED_C,
86 LED_D,
87 LED_E,
88
89 LED_W,
90 LED_S,
91 LED_X,
92 LED_LALT,
93
94 LED_LGUI,
95 LED_Z,
96 LED_A,
97 LED_Q,
98
99 LED_TAB,
100 LED_ESC,
101 LED_LSFT,
102 LED_LCTL,
103};
104 9
105#endif 10#endif
106
107void battery_poll(uint8_t level); \ No newline at end of file