summary refs log tree commit diff
path: root/quantum
diff options
context:
space:
mode:
authorStephan Bösebeck <stephan.boesebeck@holidayinsider.com>2016-03-24 08:22:21 +0100
committerStephan Bösebeck <stephan.boesebeck@holidayinsider.com>2016-03-24 08:22:21 +0100
commit8b883c797fc043def3abe5c367cb9d9a6f11f8fb (patch)
treefa0d91fd40de1db1ab744bce880a4cbe2bbc8b5e /quantum
parent55fa66428ca9b75106b8a296ea6095f7b80cc109 (diff)
parentba058f8b81132bf64b1aa263779629b8a6c18c23 (diff)
Merge branch 'master' of https://github.com/jackhumbert/qmk_firmware
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 2c05746607..9cdb8a5c20 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 95bf4c0973..2dab6ae941 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 7be7dfc3d1..58e73cb09f 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 a15061b267..ba91abac3e 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