]> git.donarmstrong.com Git - qmk_firmware.git/blob - keyboards/kbdfans/kbd19x/kbd19x.c
[Keyboard] KBDFans Minor Fixes (#5238)
[qmk_firmware.git] / keyboards / kbdfans / kbd19x / kbd19x.c
1 /*
2 Copyright 2018 Jeff Shufelt <jshuf@puppyfish.com> @jshuf
3
4 This program is free software: you can redistribute it and/or modify
5 it under the terms of the GNU General Public License as published by
6 the Free Software Foundation, either version 2 of the License, or
7 (at your option) any later version.
8
9 This program is distributed in the hope that it will be useful,
10 but WITHOUT ANY WARRANTY; without even the implied warranty of
11 MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
12 GNU General Public License for more details.
13
14 You should have received a copy of the GNU General Public License
15 along with this program.  If not, see <http://www.gnu.org/licenses/>.
16 */
17
18 #include "kbd19x.h"
19
20 extern inline void kbd19x_caps_led_on(void);
21 extern inline void kbd19x_caps_led_off(void);
22
23 extern inline void kbd19x_sclk_led_on(void);
24 extern inline void kbd19x_sclk_led_off(void);
25
26 extern inline void kbd19x_nmlk_led_on(void);
27 extern inline void kbd19x_nmlk_led_off(void);
28
29 void matrix_init_kb(void) {
30         // put your keyboard start-up code here
31         // runs once when the firmware starts up
32
33         matrix_init_user();
34 }
35
36 void matrix_scan_kb(void) {
37         // put your looping keyboard code here
38         // runs every cycle (a lot)
39
40         matrix_scan_user();
41 }
42
43 bool process_record_kb(uint16_t keycode, keyrecord_t *record) {
44         // put your per-action keyboard code here
45         // runs for every action, just before processing by the firmware
46
47         return process_record_user(keycode, record);
48 }
49
50 void led_set_kb(uint8_t usb_led) {
51         // put your keyboard LED indicator (ex: Caps Lock LED) toggling code here
52
53   if (usb_led & (1<<USB_LED_NUM_LOCK)) {
54     kbd19x_nmlk_led_on();
55   } else {
56     kbd19x_nmlk_led_off();
57   }
58
59   if (usb_led & (1<<USB_LED_CAPS_LOCK)) {
60     kbd19x_caps_led_on();
61   } else {
62     kbd19x_caps_led_off();
63   }
64
65   if (usb_led & (1<<USB_LED_SCROLL_LOCK)) {
66     kbd19x_sclk_led_on();
67   } else {
68     kbd19x_sclk_led_off();
69   }
70
71   led_set_user(usb_led);
72 }