summaryrefslogtreecommitdiff
path: root/quantum
diff options
context:
space:
mode:
Diffstat (limited to 'quantum')
-rw-r--r--quantum/led.c9
-rw-r--r--quantum/matrix.c16
-rw-r--r--quantum/template/template.c41
-rw-r--r--quantum/template/template.h5
4 files changed, 42 insertions, 29 deletions
diff --git a/quantum/led.c b/quantum/led.c
index 2c0574660..9cdb8a5c2 100644
--- a/quantum/led.c
+++ b/quantum/led.c
@@ -19,9 +19,16 @@ along with this program. If not, see <http://www.gnu.org/licenses/>.
#include "stdint.h"
#include "led.h"
+__attribute__ ((weak))
+void led_set_kb(uint8_t usb_led) {
+
+}
void led_set(uint8_t usb_led)
{
+
+ // Example LED Code
+ //
// // Using PE6 Caps Lock LED
// if (usb_led & (1<<USB_LED_CAPS_LOCK))
// {
@@ -35,4 +42,6 @@ void led_set(uint8_t usb_led)
// DDRE &= ~(1<<6);
// PORTE &= ~(1<<6);
// }
+
+ led_set_kb(usb_led);
}
diff --git a/quantum/matrix.c b/quantum/matrix.c
index 95bf4c097..2dab6ae94 100644
--- a/quantum/matrix.c
+++ b/quantum/matrix.c
@@ -48,14 +48,14 @@ static void unselect_rows(void);
static void select_row(uint8_t row);
__attribute__ ((weak))
-void * matrix_init_kb(void) {
+void matrix_init_kb(void) {
-};
+}
__attribute__ ((weak))
-void * matrix_scan_kb(void) {
+void matrix_scan_kb(void) {
-};
+}
inline
uint8_t matrix_rows(void)
@@ -86,9 +86,7 @@ void matrix_init(void)
matrix_debouncing[i] = 0;
}
- if (matrix_init_kb) {
- (*matrix_init_kb)();
- }
+ matrix_init_kb();
}
@@ -152,9 +150,7 @@ uint8_t matrix_scan(void)
}
#endif
- if (matrix_scan_kb) {
- (*matrix_scan_kb)();
- }
+ matrix_scan_kb();
return 1;
}
diff --git a/quantum/template/template.c b/quantum/template/template.c
index 7be7dfc3d..58e73cb09 100644
--- a/quantum/template/template.c
+++ b/quantum/template/template.c
@@ -1,29 +1,36 @@
#include "%KEYBOARD%.h"
__attribute__ ((weak))
-void * matrix_init_user(void) {
- // leave these blank
+void matrix_init_user(void) {
+ // leave this function blank - it can be defined in a keymap file
};
__attribute__ ((weak))
-void * matrix_scan_user(void) {
- // leave these blank
-};
+void matrix_scan_user(void) {
+ // leave this function blank - it can be defined in a keymap file
+}
+
+__attribute__ ((weak))
+void led_set_user(uint8_t usb_led) {
+ // leave this function blank - it can be defined in a keymap file
+}
-void * matrix_init_kb(void) {
+void matrix_init_kb(void) {
// put your keyboard start-up code here
// runs once when the firmware starts up
+
+ matrix_init_user();
+}
- if (matrix_init_user) {
- (*matrix_init_user)();
- }
-};
+void matrix_scan_kb(void) {
+ // put your looping keyboard code here
+ // runs every cycle (a lot)
+
+ matrix_scan_user();
+}
-void * matrix_scan_kb(void) {
- // put your looping keyboard code here
- // runs every cycle (a lot)
+void led_set_kb(uint8_t usb_led) {
+ // put your keyboard LED indicator (ex: Caps Lock LED) toggling code here
- if (matrix_scan_user) {
- (*matrix_scan_user)();
- }
-}; \ No newline at end of file
+ led_set_user(usb_led);
+} \ No newline at end of file
diff --git a/quantum/template/template.h b/quantum/template/template.h
index a15061b26..ba91abac3 100644
--- a/quantum/template/template.h
+++ b/quantum/template/template.h
@@ -19,7 +19,8 @@
{ k10, KC_NO, k11 }, \
}
-void * matrix_init_user(void);
-void * matrix_scan_user(void);
+void matrix_init_user(void);
+void matrix_scan_user(void);
+void led_set_user(uint8_t usb_led);
#endif \ No newline at end of file