* Make sure your code change actually compiles.
* Keymaps: Make sure that `make keyboard:your_new_keymap` does not return an error
* Keyboards: Make sure that `make keyboard:all` does not return any errors
- * Core: Make sure that `make allkb` does not return any errors.
+ * Core: Make sure that `make all` does not return any errors.
* Make sure commit messages are understandable on their own. You should put a short description (no more than 70 characters) on the first line, the second line should be empty, and on the 3rd and later lines you should describe your commit in detail, if required. Example:
```
--- /dev/null
+#include "17.h"
+
+int pwm_level;
+
+void matrix_init_kb(void) {
+ // put your keyboard start-up code here
+ // runs once when the firmware starts up
+ matrix_init_user();
+
+ // JTAG disable for PORT F. write JTD bit twice within four cycles.
+ MCUCR |= (1<<JTD);
+ MCUCR |= (1<<JTD);
+};
+
+void led_set_kb(uint8_t usb_led)
+{
+ print("led_set\n");
+}
+
+void backlight_init_ports(void)
+{
+ // Set C7 to output
+ DDRC |= (1<<7);
+
+ // Initialize the timer
+ TC4H = 0x03;
+ OCR4C = 0xFF;
+ TCCR4A = 0b10000010;
+ TCCR4B = 0b00000001;
+}
+
+void backlight_set(uint8_t level)
+{
+ // Determine the PWM level
+ switch (level)
+ {
+ case 0:
+ // 33%
+ pwm_level = 0x54;
+ break;
+ case 1:
+ // 66%
+ pwm_level = 0xA8;
+ break;
+ case 2:
+ // 100%
+ pwm_level = 0xFF;
+ break;
+ case 3:
+ // 0%
+ pwm_level = 0x00;
+ break;
+ default:
+ xprintf("Unknown level: %d\n", level);
+ }
+
+ // Write the PWM level to the timer
+ TC4H = pwm_level >> 8;
+ OCR4A = 0xFF & pwm_level;
+}
--- /dev/null
+#ifndef CLUEPAD_H
+#define CLUEPAD_H
+
+#include "quantum.h"
+
+
+/* Cluepad matrix layout
+ * .-------------------.
+ * |NLCK| /| *| -|
+ * |-------------------|
+ * | 7| 8| 9| |
+ * |--------------| |
+ * | 4| 5| 6| +|
+ * |-------------------|
+ * | 1| 2| 3| |
+ * |--------------| |
+ * | 0| .| Ent|
+ * '-------------------'
+ */
+// The first section contains all of the arguments
+// The second converts the arguments into a two-dimensional array
+#define KEYMAP( \
+ k00, k01, k02, k03, \
+ k10, k11, k12, k13, \
+ k20, k21, k22, \
+ k30, k31, k32, k33, \
+ k40, k42 \
+) { \
+ { k00, k01, k02, k03, }, \
+ { k10, k11, k12, k13, }, \
+ { k20, k21, k22, KC_NO, }, \
+ { k30, k31, k32, k33, }, \
+ { k40, KC_NO, k42, KC_NO } \
+}
+
+#endif
+++ /dev/null
-#include "clueboard_17.h"
-
-int pwm_level;
-
-void matrix_init_kb(void) {
- // put your keyboard start-up code here
- // runs once when the firmware starts up
- matrix_init_user();
-
- // JTAG disable for PORT F. write JTD bit twice within four cycles.
- MCUCR |= (1<<JTD);
- MCUCR |= (1<<JTD);
-};
-
-void led_set_kb(uint8_t usb_led)
-{
- print("led_set\n");
-}
-
-void backlight_init_ports(void)
-{
- // Set C7 to output
- DDRC |= (1<<7);
-
- // Initialize the timer
- TC4H = 0x03;
- OCR4C = 0xFF;
- TCCR4A = 0b10000010;
- TCCR4B = 0b00000001;
-}
-
-void backlight_set(uint8_t level)
-{
- // Determine the PWM level
- switch (level)
- {
- case 0:
- // 33%
- pwm_level = 0x54;
- break;
- case 1:
- // 66%
- pwm_level = 0xA8;
- break;
- case 2:
- // 100%
- pwm_level = 0xFF;
- break;
- case 3:
- // 0%
- pwm_level = 0x00;
- break;
- default:
- xprintf("Unknown level: %d\n", level);
- }
-
- // Write the PWM level to the timer
- TC4H = pwm_level >> 8;
- OCR4A = 0xFF & pwm_level;
-}
+++ /dev/null
-#ifndef CLUEPAD_H
-#define CLUEPAD_H
-
-#include "quantum.h"
-
-
-/* Cluepad matrix layout
- * .-------------------.
- * |NLCK| /| *| -|
- * |-------------------|
- * | 7| 8| 9| |
- * |--------------| |
- * | 4| 5| 6| +|
- * |-------------------|
- * | 1| 2| 3| |
- * |--------------| |
- * | 0| .| Ent|
- * '-------------------'
- */
-// The first section contains all of the arguments
-// The second converts the arguments into a two-dimensional array
-#define KEYMAP( \
- k00, k01, k02, k03, \
- k10, k11, k12, k13, \
- k20, k21, k22, \
- k30, k31, k32, k33, \
- k40, k42 \
-) { \
- { k00, k01, k02, k03, }, \
- { k10, k11, k12, k13, }, \
- { k20, k21, k22, KC_NO, }, \
- { k30, k31, k32, k33, }, \
- { k40, KC_NO, k42, KC_NO } \
-}
-
-#endif
-#include "clueboard_17.h"
+#include "17.h"
#include "backlight.h"
--- /dev/null
+/* Copyright 2017 skully <skullydazed@gmail.com>
+ *
+ * This program is free software: you can redistribute it and/or modify
+ * it under the terms of the GNU General Public License as published by
+ * the Free Software Foundation, either version 2 of the License, or
+ * (at your option) any later version.
+ *
+ * This program is distributed in the hope that it will be useful,
+ * but WITHOUT ANY WARRANTY; without even the implied warranty of
+ * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
+ * GNU General Public License for more details.
+ *
+ * You should have received a copy of the GNU General Public License
+ * along with this program. If not, see <http://www.gnu.org/licenses/>.
+ */
+#include "60.h"
+
+void matrix_init_kb(void) {
+
+}
+
+void matrix_scan_kb(void) {
+
+}
--- /dev/null
+/* Copyright 2017 skully <skullydazed@gmail.com>
+ *
+ * This program is free software: you can redistribute it and/or modify
+ * it under the terms of the GNU General Public License as published by
+ * the Free Software Foundation, either version 2 of the License, or
+ * (at your option) any later version.
+ *
+ * This program is distributed in the hope that it will be useful,
+ * but WITHOUT ANY WARRANTY; without even the implied warranty of
+ * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
+ * GNU General Public License for more details.
+ *
+ * You should have received a copy of the GNU General Public License
+ * along with this program. If not, see <http://www.gnu.org/licenses/>.
+ */
+#ifndef CLUEBOARD60_H
+#define CLUEBOARD60_H
+
+#include "quantum.h"
+
+/*
+ * These are shortcuts to help you work with the various layout options. If your
+ * keymap works with one of the LAYOUT_...() macros you are encouraged to use that
+ * and to contribute your keymap to the corresponding layout in
+ * `qmk_firmware/layouts/community`.
+ */
+
+/* The fully-featured KEYMAP() that has every single key available in the matrix.
+ */
+#define KEYMAP(\
+ k00, k01, k02, k03, k04, k05, k06, k07, k08, k09, k0a, k0b, k0c, k0d, k0e, \
+ k10, k11, k12, k13, k14, k15, k16, k17, k18, k19, k1a, k1b, k1c, k1e, \
+ k20, k21, k22, k23, k24, k25, k26, k27, k28, k29, k2a, k2b, k2c, k2e, \
+ k30, k31, k32, k33, k34, k35, k36, k37, k38, k39, k3a, k3b, k3c, k3e, \
+ k40, k41, k42, k47, k4a, k4b, k4c, k4e \
+) { \
+ { k00, k01, k02, k03, k04, k05, k06, k07, k08, k09, k0a, k0b, k0c, k0d, k0e, }, \
+ { k10, k11, k12, k13, k14, k15, k16, k17, k18, k19, k1a, k1b, k1c, KC_NO, k1e, }, \
+ { k20, k21, k22, k23, k24, k25, k26, k27, k28, k29, k2a, k2b, k2c, KC_NO, k2e, }, \
+ { k30, k31, k32, k33, k34, k35, k36, k37, k38, k39, k3a, k3b, k3c, KC_NO, k3e, }, \
+ { k40, k41, k42, KC_NO, KC_NO, KC_NO, KC_NO, k47, KC_NO, KC_NO, k4a, k4b, k4c, KC_NO, k4e, }, \
+}
+
+/* A layout that matches the Apple Extended Keyboard's main area. No split keys,
+ * 3 mods on either side of the spacebar.
+ */
+#define KEYMAP_AEK(\
+ k00, k01, k02, k03, k04, k05, k06, k07, k08, k09, k0a, k0b, k0c, k0e, \
+ k10, k11, k12, k13, k14, k15, k16, k17, k18, k19, k1a, k1b, k1c, k1e, \
+ k20, k21, k22, k23, k24, k25, k26, k27, k28, k29, k2a, k2b, k2e, \
+ k30, k32, k33, k34, k35, k36, k37, k38, k39, k3a, k3b, k3c, \
+ k40, k41, k42, k47, k4b, k4c, k4e \
+) { \
+ { k00, k01, k02, k03, k04, k05, k06, k07, k08, k09, k0a, k0b, k0c, KC_NO, k0e, }, \
+ { k10, k11, k12, k13, k14, k15, k16, k17, k18, k19, k1a, k1b, k1c, KC_NO, k1e, }, \
+ { k20, k21, k22, k23, k24, k25, k26, k27, k28, k29, k2a, k2b, KC_NO, KC_NO, k2e, }, \
+ { k30, KC_NO, k32, k33, k34, k35, k36, k37, k38, k39, k3a, k3b, k3c, KC_NO, KC_NO, }, \
+ { k40, k41, k42, KC_NO, KC_NO, KC_NO, KC_NO, k47, KC_NO, KC_NO, KC_NO, k4b, k4c, KC_NO, k4e, }, \
+}
+
+/* Standard 60% ANSI layout */
+#define LAYOUT_60_ansi(\
+ k00, k01, k02, k03, k04, k05, k06, k07, k08, k09, k0a, k0b, k0c, k0e, \
+ k10, k11, k12, k13, k14, k15, k16, k17, k18, k19, k1a, k1b, k1c, k1e, \
+ k20, k21, k22, k23, k24, k25, k26, k27, k28, k29, k2a, k2b, k2e, \
+ k30, k32, k33, k34, k35, k36, k37, k38, k39, k3a, k3b, k3c, \
+ k40, k41, k42, k47, k4a, k4b, k4c, k4e \
+) { \
+ { k00, k01, k02, k03, k04, k05, k06, k07, k08, k09, k0a, k0b, k0c, KC_NO, k0e, }, \
+ { k10, k11, k12, k13, k14, k15, k16, k17, k18, k19, k1a, k1b, k1c, KC_NO, k1e, }, \
+ { k20, k21, k22, k23, k24, k25, k26, k27, k28, k29, k2a, k2b, KC_NO, KC_NO, k2e, }, \
+ { k30, KC_NO, k32, k33, k34, k35, k36, k37, k38, k39, k3a, k3b, k3c, KC_NO, KC_NO, }, \
+ { k40, k41, k42, KC_NO, KC_NO, KC_NO, KC_NO, k47, KC_NO, KC_NO, k4a, k4b, k4c, KC_NO, k4e, }, \
+}
+
+/* Standard 60% ISO layout */
+#define LAYOUT_60_iso(\
+ k00, k01, k02, k03, k04, k05, k06, k07, k08, k09, k0a, k0b, k0c, k0e, \
+ k10, k11, k12, k13, k14, k15, k16, k17, k18, k19, k1a, k1b, k1c, \
+ k20, k21, k22, k23, k24, k25, k26, k27, k28, k29, k2a, k2b, k2c, k2e, \
+ k30, k31, k32, k33, k34, k35, k36, k37, k38, k39, k3a, k3b, k3c, \
+ k40, k41, k42, k47, k4a, k4b, k4c, k4e \
+) { \
+ { k00, k01, k02, k03, k04, k05, k06, k07, k08, k09, k0a, k0b, k0c, KC_NO, k0e, }, \
+ { k10, k11, k12, k13, k14, k15, k16, k17, k18, k19, k1a, k1b, k1c, KC_NO, KC_NO, }, \
+ { k20, k21, k22, k23, k24, k25, k26, k27, k28, k29, k2a, k2b, k2c, KC_NO, k2e, }, \
+ { k30, k31, k32, k33, k34, k35, k36, k37, k38, k39, k3a, k3b, k3c, KC_NO, KC_NO, }, \
+ { k40, k41, k42, KC_NO, KC_NO, KC_NO, KC_NO, k47, KC_NO, KC_NO, k4a, k4b, k4c, KC_NO, k4e, }, \
+}
+
+/* Split Backspace and Right Shift ANSI layout. */
+#define LAYOUT_60_ansi_split_bs_rshift(\
+ k00, k01, k02, k03, k04, k05, k06, k07, k08, k09, k0a, k0b, k0c, k0d, k0e, \
+ k10, k11, k12, k13, k14, k15, k16, k17, k18, k19, k1a, k1b, k1c, k1e, \
+ k20, k21, k22, k23, k24, k25, k26, k27, k28, k29, k2a, k2b, k2e, \
+ k30, k32, k33, k34, k35, k36, k37, k38, k39, k3a, k3b, k3c, k3e, \
+ k40, k41, k42, k47, k4a, k4b, k4c, k4e \
+) { \
+ { k00, k01, k02, k03, k04, k05, k06, k07, k08, k09, k0a, k0b, k0c, k0d, k0e, }, \
+ { k10, k11, k12, k13, k14, k15, k16, k17, k18, k19, k1a, k1b, k1c, KC_NO, k1e, }, \
+ { k20, k21, k22, k23, k24, k25, k26, k27, k28, k29, k2a, k2b, KC_NO, KC_NO, k2e, }, \
+ { k30, KC_NO, k32, k33, k34, k35, k36, k37, k38, k39, k3a, k3b, k3c, KC_NO, k3e, }, \
+ { k40, k41, k42, KC_NO, KC_NO, KC_NO, KC_NO, k47, KC_NO, KC_NO, k4a, k4b, k4c, KC_NO, k4e, }, \
+}
+#endif
+++ /dev/null
-/* Copyright 2017 skully <skullydazed@gmail.com>
- *
- * This program is free software: you can redistribute it and/or modify
- * it under the terms of the GNU General Public License as published by
- * the Free Software Foundation, either version 2 of the License, or
- * (at your option) any later version.
- *
- * This program is distributed in the hope that it will be useful,
- * but WITHOUT ANY WARRANTY; without even the implied warranty of
- * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
- * GNU General Public License for more details.
- *
- * You should have received a copy of the GNU General Public License
- * along with this program. If not, see <http://www.gnu.org/licenses/>.
- */
-#include "clueboard_60.h"
-
-void matrix_init_kb(void) {
-
-}
-
-void matrix_scan_kb(void) {
-
-}
+++ /dev/null
-/* Copyright 2017 skully <skullydazed@gmail.com>
- *
- * This program is free software: you can redistribute it and/or modify
- * it under the terms of the GNU General Public License as published by
- * the Free Software Foundation, either version 2 of the License, or
- * (at your option) any later version.
- *
- * This program is distributed in the hope that it will be useful,
- * but WITHOUT ANY WARRANTY; without even the implied warranty of
- * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
- * GNU General Public License for more details.
- *
- * You should have received a copy of the GNU General Public License
- * along with this program. If not, see <http://www.gnu.org/licenses/>.
- */
-#ifndef CLUEBOARD60_H
-#define CLUEBOARD60_H
-
-#include "quantum.h"
-
-/*
- * These are shortcuts to help you work with the various layout options. If your
- * keymap works with one of the LAYOUT_...() macros you are encouraged to use that
- * and to contribute your keymap to the corresponding layout in
- * `qmk_firmware/layouts/community`.
- */
-
-/* The fully-featured KEYMAP() that has every single key available in the matrix.
- */
-#define KEYMAP(\
- k00, k01, k02, k03, k04, k05, k06, k07, k08, k09, k0a, k0b, k0c, k0d, k0e, \
- k10, k11, k12, k13, k14, k15, k16, k17, k18, k19, k1a, k1b, k1c, k1e, \
- k20, k21, k22, k23, k24, k25, k26, k27, k28, k29, k2a, k2b, k2c, k2e, \
- k30, k31, k32, k33, k34, k35, k36, k37, k38, k39, k3a, k3b, k3c, k3e, \
- k40, k41, k42, k47, k4a, k4b, k4c, k4e \
-) { \
- { k00, k01, k02, k03, k04, k05, k06, k07, k08, k09, k0a, k0b, k0c, k0d, k0e, }, \
- { k10, k11, k12, k13, k14, k15, k16, k17, k18, k19, k1a, k1b, k1c, KC_NO, k1e, }, \
- { k20, k21, k22, k23, k24, k25, k26, k27, k28, k29, k2a, k2b, k2c, KC_NO, k2e, }, \
- { k30, k31, k32, k33, k34, k35, k36, k37, k38, k39, k3a, k3b, k3c, KC_NO, k3e, }, \
- { k40, k41, k42, KC_NO, KC_NO, KC_NO, KC_NO, k47, KC_NO, KC_NO, k4a, k4b, k4c, KC_NO, k4e, }, \
-}
-
-/* A layout that matches the Apple Extended Keyboard's main area. No split keys,
- * 3 mods on either side of the spacebar.
- */
-#define KEYMAP_AEK(\
- k00, k01, k02, k03, k04, k05, k06, k07, k08, k09, k0a, k0b, k0c, k0e, \
- k10, k11, k12, k13, k14, k15, k16, k17, k18, k19, k1a, k1b, k1c, k1e, \
- k20, k21, k22, k23, k24, k25, k26, k27, k28, k29, k2a, k2b, k2e, \
- k30, k32, k33, k34, k35, k36, k37, k38, k39, k3a, k3b, k3c, \
- k40, k41, k42, k47, k4b, k4c, k4e \
-) { \
- { k00, k01, k02, k03, k04, k05, k06, k07, k08, k09, k0a, k0b, k0c, KC_NO, k0e, }, \
- { k10, k11, k12, k13, k14, k15, k16, k17, k18, k19, k1a, k1b, k1c, KC_NO, k1e, }, \
- { k20, k21, k22, k23, k24, k25, k26, k27, k28, k29, k2a, k2b, KC_NO, KC_NO, k2e, }, \
- { k30, KC_NO, k32, k33, k34, k35, k36, k37, k38, k39, k3a, k3b, k3c, KC_NO, KC_NO, }, \
- { k40, k41, k42, KC_NO, KC_NO, KC_NO, KC_NO, k47, KC_NO, KC_NO, KC_NO, k4b, k4c, KC_NO, k4e, }, \
-}
-
-/* Standard 60% ANSI layout */
-#define LAYOUT_60_ansi(\
- k00, k01, k02, k03, k04, k05, k06, k07, k08, k09, k0a, k0b, k0c, k0e, \
- k10, k11, k12, k13, k14, k15, k16, k17, k18, k19, k1a, k1b, k1c, k1e, \
- k20, k21, k22, k23, k24, k25, k26, k27, k28, k29, k2a, k2b, k2e, \
- k30, k32, k33, k34, k35, k36, k37, k38, k39, k3a, k3b, k3c, \
- k40, k41, k42, k47, k4a, k4b, k4c, k4e \
-) { \
- { k00, k01, k02, k03, k04, k05, k06, k07, k08, k09, k0a, k0b, k0c, KC_NO, k0e, }, \
- { k10, k11, k12, k13, k14, k15, k16, k17, k18, k19, k1a, k1b, k1c, KC_NO, k1e, }, \
- { k20, k21, k22, k23, k24, k25, k26, k27, k28, k29, k2a, k2b, KC_NO, KC_NO, k2e, }, \
- { k30, KC_NO, k32, k33, k34, k35, k36, k37, k38, k39, k3a, k3b, k3c, KC_NO, KC_NO, }, \
- { k40, k41, k42, KC_NO, KC_NO, KC_NO, KC_NO, k47, KC_NO, KC_NO, k4a, k4b, k4c, KC_NO, k4e, }, \
-}
-
-/* Standard 60% ISO layout */
-#define LAYOUT_60_iso(\
- k00, k01, k02, k03, k04, k05, k06, k07, k08, k09, k0a, k0b, k0c, k0e, \
- k10, k11, k12, k13, k14, k15, k16, k17, k18, k19, k1a, k1b, k1c, \
- k20, k21, k22, k23, k24, k25, k26, k27, k28, k29, k2a, k2b, k2c, k2e, \
- k30, k31, k32, k33, k34, k35, k36, k37, k38, k39, k3a, k3b, k3c, \
- k40, k41, k42, k47, k4a, k4b, k4c, k4e \
-) { \
- { k00, k01, k02, k03, k04, k05, k06, k07, k08, k09, k0a, k0b, k0c, KC_NO, k0e, }, \
- { k10, k11, k12, k13, k14, k15, k16, k17, k18, k19, k1a, k1b, k1c, KC_NO, KC_NO, }, \
- { k20, k21, k22, k23, k24, k25, k26, k27, k28, k29, k2a, k2b, k2c, KC_NO, k2e, }, \
- { k30, k31, k32, k33, k34, k35, k36, k37, k38, k39, k3a, k3b, k3c, KC_NO, KC_NO, }, \
- { k40, k41, k42, KC_NO, KC_NO, KC_NO, KC_NO, k47, KC_NO, KC_NO, k4a, k4b, k4c, KC_NO, k4e, }, \
-}
-
-/* Split Backspace and Right Shift ANSI layout. */
-#define LAYOUT_60_ansi_split_bs_rshift(\
- k00, k01, k02, k03, k04, k05, k06, k07, k08, k09, k0a, k0b, k0c, k0d, k0e, \
- k10, k11, k12, k13, k14, k15, k16, k17, k18, k19, k1a, k1b, k1c, k1e, \
- k20, k21, k22, k23, k24, k25, k26, k27, k28, k29, k2a, k2b, k2e, \
- k30, k32, k33, k34, k35, k36, k37, k38, k39, k3a, k3b, k3c, k3e, \
- k40, k41, k42, k47, k4a, k4b, k4c, k4e \
-) { \
- { k00, k01, k02, k03, k04, k05, k06, k07, k08, k09, k0a, k0b, k0c, k0d, k0e, }, \
- { k10, k11, k12, k13, k14, k15, k16, k17, k18, k19, k1a, k1b, k1c, KC_NO, k1e, }, \
- { k20, k21, k22, k23, k24, k25, k26, k27, k28, k29, k2a, k2b, KC_NO, KC_NO, k2e, }, \
- { k30, KC_NO, k32, k33, k34, k35, k36, k37, k38, k39, k3a, k3b, k3c, KC_NO, k3e, }, \
- { k40, k41, k42, KC_NO, KC_NO, KC_NO, KC_NO, k47, KC_NO, KC_NO, k4a, k4b, k4c, KC_NO, k4e, }, \
-}
-#endif
-#include "clueboard_60.h"
+#include "60.h"
#define _______ KC_TRNS
-#include "clueboard_60.h"
+#include "60.h"
#define _______ KC_TRNS
--- /dev/null
+#include "66.h"
--- /dev/null
+#ifndef CLUEBOARD_H
+#define CLUEBOARD_H
+
+#include "quantum.h"
+
+#ifdef KEYBOARD_clueboard_66_rev1
+ #include "rev1.h"
+#endif
+#ifdef KEYBOARD_clueboard_66_rev2
+ #include "rev2.h"
+#endif
+#ifdef KEYBOARD_clueboard_66_rev3
+ #include "rev3.h"
+#endif
+
+#endif
+++ /dev/null
-#include "clueboard_66.h"
+++ /dev/null
-#ifndef CLUEBOARD_H
-#define CLUEBOARD_H
-
-#include "quantum.h"
-
-#ifdef KEYBOARD_clueboard_66_rev1
- #include "rev1.h"
-#endif
-#ifdef KEYBOARD_clueboard_66_rev2
- #include "rev2.h"
-#endif
-#ifdef KEYBOARD_clueboard_66_rev3
- #include "rev3.h"
-#endif
-
-#endif
-#include "clueboard_66.h"
+#include "66.h"
// Helpful defines
#define _______ KC_TRNS
-#include "clueboard_66.h"
+#include "66.h"
// Helpful defines
#define _______ KC_TRNS
-#include "clueboard_66.h"
+#include "66.h"
// Helpful defines
#define _______ KC_TRNS
-#include "clueboard_66.h"
+#include "66.h"
// Helpful defines
#define _______ KC_TRNS
-#include "clueboard_66.h"
+#include "66.h"
// Helpful defines
#define _______ KC_TRNS
-#include "clueboard_66.h"
+#include "66.h"
// Helpful defines
#define _______ KC_TRNS
-#include "clueboard_66.h"
+#include "66.h"
// Helpful defines
#define _______ KC_TRNS
-#include "clueboard_66.h"
+#include "66.h"
// Helpful defines
#define _______ KC_TRNS
-#include "clueboard_66.h"
+#include "66.h"
// Helpful defines
#define _______ KC_TRNS
-#include "clueboard_66.h"
+#include "66.h"
// Helpful defines
#define _______ KC_TRNS
-#include "clueboard_66.h"
+#include "66.h"
// Helpful defines
#define _______ KC_TRNS
-#include "clueboard_66.h"
+#include "66.h"
// Helpful defines
#define _______ KC_TRNS
-#include "clueboard_66.h"
+#include "66.h"
// Each layer gets a name for readability, which is then used in the keymap matrix below.
// The underscores don't mean anything - you can have a layer called STUFF or any other name.
-#include "clueboard_66.h"
+#include "66.h"
#include "tetris_text.h"
// Helpful defines
-#include "clueboard_66.h"
+#include "66.h"
// Helpful defines
#define _______ KC_TRNS
-#include "clueboard_66.h"
+#include "66.h"
// Helpful defines
#define _______ KC_TRNS
// Xyverz' keymap.
// It's based on the default keymap, but Dvorak!
-#include "clueboard_66.h"
+#include "66.h"
// Used for SHIFT_ESC
#define MODS_CTRL_MASK (MOD_BIT(KC_LSHIFT)|MOD_BIT(KC_RSHIFT))
#ifndef REV1_H
#define REV1_H
-#include "../clueboard_66.h"
+#include "../66.h"
/* Clueboard matrix layout
* ,-----------------------------------------------------------. ,---.
#ifndef REV2_H
#define REV2_H
-#include "clueboard_66.h"
+#include "66.h"
/* Clueboard matrix layout
* ,-----------------------------------------------------------. ,---.
#ifndef REV3_H
#define REV3_H
-#include "clueboard_66.h"
+#include "66.h"
/* Clueboard matrix layout
* ,-----------------------------------------------------------. ,---.
--- /dev/null
+#include "card.h"
+#define BL_RED OCR1B
+#define BL_GREEN OCR1A
+#define BL_BLUE OCR1C
+
+void matrix_init_kb(void) {
+ // put your keyboard start-up code here
+ // runs once when the firmware starts up
+
+ matrix_init_user();
+}
+
+void matrix_scan_kb(void) {
+ // put your looping keyboard code here
+ // runs every cycle (a lot)
+
+ matrix_scan_user();
+}
+
+bool process_record_kb(uint16_t keycode, keyrecord_t *record) {
+ // put your per-action keyboard code here
+ // runs for every action, just before processing by the firmware
+
+ return process_record_user(keycode, record);
+}
+
+void led_set_kb(uint8_t usb_led) {
+ // put your keyboard LED indicator (ex: Caps Lock LED) toggling code here
+
+ led_set_user(usb_led);
+}
+
+void backlight_init_ports(void)
+{
+ // Set B5, B6, and B7 as output
+ DDRB |= (1<<7)|(1<<6)|(1<<5);
+
+ // Setup PWM
+ ICR1 = 0xFFFF;
+ TCCR1A = 0b10101010;
+ TCCR1B = 0b00011001;
+
+ BL_RED = 0xFFFF;
+ BL_GREEN = 0xFFFF;
+ BL_BLUE = 0xFFFF;
+}
+
+void backlight_set(uint8_t level)
+{
+ // Set the RGB color
+ switch (level)
+ {
+ case 0:
+ // Off
+ BL_RED = 0xFFFF;
+ BL_GREEN = 0xFFFF;
+ BL_BLUE = 0xFFFF;
+ break;
+ case 1:
+ // Red
+ BL_RED = 0x0000;
+ BL_GREEN = 0xFFFF;
+ BL_BLUE = 0xFFFF;
+ break;
+ case 2:
+ // Green
+ BL_RED = 0xFFFF;
+ BL_GREEN = 0x0000;
+ BL_BLUE = 0xFFFF;
+ break;
+ case 3:
+ // Blue
+ BL_RED = 0xFFFF;
+ BL_GREEN = 0xFFFF;
+ BL_BLUE = 0x0000;
+ break;
+ case 4:
+ // Magenta
+ BL_RED = 0x4000;
+ BL_GREEN = 0x4000;
+ BL_BLUE = 0x4000;
+ break;
+ case 5:
+ // Purple
+ BL_RED = 0x0000;
+ BL_GREEN = 0xFFFF;
+ BL_BLUE = 0x0000;
+ break;
+ case 6:
+ // Yellow
+ BL_RED = 0x0000;
+ BL_GREEN = 0x0000;
+ BL_BLUE = 0xFFFF;
+ break;
+ default:
+ xprintf("Unknown level: %d\n", level);
+ }
+}
--- /dev/null
+#ifndef CLUECARD_H
+#define CLUECARD_H
+
+#include "quantum.h"
+
+// This a shortcut to help you visually see your layout.
+// The first section contains all of the arguements
+// The second converts the arguments into a two-dimensional array
+#define KEYMAP( \
+ k00, k01, k02, \
+ k10, k12, \
+ k20, k21, k22, \
+ k11, \
+ k30, k31, k32 \
+) { \
+ { k00, k01, k02, }, \
+ { k10, k11, k12, }, \
+ { k20, k21, k22, }, \
+ { k30, k31, k32, } \
+}
+
+#endif
+++ /dev/null
-#include "cluecard.h"
-#define BL_RED OCR1B
-#define BL_GREEN OCR1A
-#define BL_BLUE OCR1C
-
-void matrix_init_kb(void) {
- // put your keyboard start-up code here
- // runs once when the firmware starts up
-
- matrix_init_user();
-}
-
-void matrix_scan_kb(void) {
- // put your looping keyboard code here
- // runs every cycle (a lot)
-
- matrix_scan_user();
-}
-
-bool process_record_kb(uint16_t keycode, keyrecord_t *record) {
- // put your per-action keyboard code here
- // runs for every action, just before processing by the firmware
-
- return process_record_user(keycode, record);
-}
-
-void led_set_kb(uint8_t usb_led) {
- // put your keyboard LED indicator (ex: Caps Lock LED) toggling code here
-
- led_set_user(usb_led);
-}
-
-void backlight_init_ports(void)
-{
- // Set B5, B6, and B7 as output
- DDRB |= (1<<7)|(1<<6)|(1<<5);
-
- // Setup PWM
- ICR1 = 0xFFFF;
- TCCR1A = 0b10101010;
- TCCR1B = 0b00011001;
-
- BL_RED = 0xFFFF;
- BL_GREEN = 0xFFFF;
- BL_BLUE = 0xFFFF;
-}
-
-void backlight_set(uint8_t level)
-{
- // Set the RGB color
- switch (level)
- {
- case 0:
- // Off
- BL_RED = 0xFFFF;
- BL_GREEN = 0xFFFF;
- BL_BLUE = 0xFFFF;
- break;
- case 1:
- // Red
- BL_RED = 0x0000;
- BL_GREEN = 0xFFFF;
- BL_BLUE = 0xFFFF;
- break;
- case 2:
- // Green
- BL_RED = 0xFFFF;
- BL_GREEN = 0x0000;
- BL_BLUE = 0xFFFF;
- break;
- case 3:
- // Blue
- BL_RED = 0xFFFF;
- BL_GREEN = 0xFFFF;
- BL_BLUE = 0x0000;
- break;
- case 4:
- // Magenta
- BL_RED = 0x4000;
- BL_GREEN = 0x4000;
- BL_BLUE = 0x4000;
- break;
- case 5:
- // Purple
- BL_RED = 0x0000;
- BL_GREEN = 0xFFFF;
- BL_BLUE = 0x0000;
- break;
- case 6:
- // Yellow
- BL_RED = 0x0000;
- BL_GREEN = 0x0000;
- BL_BLUE = 0xFFFF;
- break;
- default:
- xprintf("Unknown level: %d\n", level);
- }
-}
+++ /dev/null
-#ifndef CLUECARD_H
-#define CLUECARD_H
-
-#include "quantum.h"
-
-// This a shortcut to help you visually see your layout.
-// The first section contains all of the arguements
-// The second converts the arguments into a two-dimensional array
-#define KEYMAP( \
- k00, k01, k02, \
- k10, k12, \
- k20, k21, k22, \
- k11, \
- k30, k31, k32 \
-) { \
- { k00, k01, k02, }, \
- { k10, k11, k12, }, \
- { k20, k21, k22, }, \
- { k30, k31, k32, } \
-}
-
-#endif
-#include "cluecard.h"
+#include "card.h"
#ifdef AUDIO_ENABLE
#include "audio.h"
#endif
-#include "cluecard.h"
+#include "card.h"
const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = {
[0] = KEYMAP(