summaryrefslogtreecommitdiffstats
path: root/keyboards/tiger_lily/tiger_lily.c
diff options
context:
space:
mode:
authorTerryMathews <terry@terrymathews.net>2017-05-07 23:23:19 +0200
committerTerryMathews <terry@terrymathews.net>2017-05-07 23:23:19 +0200
commit3381254c65375c7da451973c7d843bf257a0d4a7 (patch)
tree518851f5642e89e3f91904e82414f537a6ffb2e3 /keyboards/tiger_lily/tiger_lily.c
parent3899bec4b603a0880055c60df534c5a86ad44a52 (diff)
downloadqmk_firmware-3381254c65375c7da451973c7d843bf257a0d4a7.tar.gz
qmk_firmware-3381254c65375c7da451973c7d843bf257a0d4a7.tar.xz
Establish support for Bathroom Epiphanies Tiger Lily controller
Replacement controller for Filco Majestouch 2 104 key keyboard. BE advises code will also work with the Black Petal controller - I don't have one to test with. Tests working perfectly on my Filco.
Diffstat (limited to 'keyboards/tiger_lily/tiger_lily.c')
-rw-r--r--keyboards/tiger_lily/tiger_lily.c63
1 files changed, 63 insertions, 0 deletions
diff --git a/keyboards/tiger_lily/tiger_lily.c b/keyboards/tiger_lily/tiger_lily.c
new file mode 100644
index 000000000..d2e7ba709
--- /dev/null
+++ b/keyboards/tiger_lily/tiger_lily.c
@@ -0,0 +1,63 @@
+#include "tiger_lily.h"
+
+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) {
+ DDRB |= (1<<7);
+ DDRC |= (1<<5) | (1<<6);
+
+ print_dec(usb_led);
+
+ if (usb_led & (1<<USB_LED_NUM_LOCK))
+ PORTC &= ~(1<<5);
+ else
+ PORTC |= (1<<5);
+
+ if (usb_led & (1<<USB_LED_SCROLL_LOCK))
+ PORTB &= ~(1<<7);
+ else
+ PORTB |= (1<<7);
+
+ if (usb_led & (1<<USB_LED_CAPS_LOCK))
+ PORTC &= ~(1<<6);
+ else
+ PORTC |= (1<<6);
+
+ led_set_user(usb_led);
+}
+
+__attribute__ ((weak))
+void matrix_init_user(void) {
+}
+
+__attribute__ ((weak))
+void matrix_scan_user(void) {
+}
+
+__attribute__ ((weak))
+bool process_record_user(uint16_t keycode, keyrecord_t *record) {
+ return true;
+}
+
+__attribute__ ((weak))
+void led_set_user(uint8_t usb_led) {
+} \ No newline at end of file