]> git.donarmstrong.com Git - qmk_firmware.git/blob - keyboards/kinesis/alvicstep/alvicstep.c
Merge pull request #981 from jonasoberschweiber/osx-surrogate-pairs
[qmk_firmware.git] / keyboards / kinesis / alvicstep / alvicstep.c
1 #include "kinesis.h"
2
3 // begin section origin  https://github.com/alvicstep/tmk_keyboard 
4
5 void all_led_off(void)
6 {
7         PORTD = 0b11111111;
8 }
9
10 void all_led_on(void)
11 {
12         PORTD = 0b00000000;
13 }
14 void num_lock_led_on(void)
15 {
16         PORTD = 0b11101111;
17 }
18
19 void caps_lock_led_on(void)
20 {
21         PORTD = 0b01111111;
22 }
23
24 void scroll_lock_led_on(void)
25 {
26         PORTD = 0b11011111;
27 }
28 void keypad_led_on(void)
29 {
30         PORTD = 0b10111111;
31 }
32 void blink_all_leds(void)
33 {
34         all_led_on();
35         _delay_ms(500);
36
37         all_led_off();
38         _delay_ms(100);
39
40         caps_lock_led_on();
41         _delay_ms(100);
42
43          num_lock_led_on();
44         _delay_ms(100);
45
46         scroll_lock_led_on();
47         _delay_ms(100);
48
49          keypad_led_on();
50         _delay_ms(100);
51
52         //back
53
54         scroll_lock_led_on();
55         _delay_ms(100);
56
57         num_lock_led_on();
58         _delay_ms(100);
59
60         caps_lock_led_on();
61         _delay_ms(100);
62
63         all_led_off();
64 }
65
66 // End section origin  https://github.com/alvicstep/tmk_keyboard 
67
68  void matrix_init_kb(void) {
69           blink_all_leds();
70           matrix_init_user();
71 }
72
73
74 void matrix_scan_kb(void) {
75         // put your looping keyboard code here
76         // runs every cycle (a lot)
77         
78         matrix_scan_user();
79 }
80
81 bool process_record_kb(uint16_t keycode, keyrecord_t *record) {
82         // put your per-action keyboard code here
83         // runs for every action, just before processing by the firmware
84
85         return process_record_user(keycode, record);
86 }
87
88 void led_set_kb(uint8_t usb_led) {
89         // put your keyboard LED indicator (ex: Caps Lock LED) toggling code here
90
91 //Copyright 2014 Warren Janssens <warren.janssens@gmail.com>
92    uint8_t leds = 0xF0;
93     if (usb_led & 1 << USB_LED_NUM_LOCK)
94         leds &= ~0x10;
95     if (usb_led & 1 << USB_LED_CAPS_LOCK)
96         leds &= ~0x80;
97     if (usb_led & 1 << USB_LED_SCROLL_LOCK)
98         leds &= ~0x20;
99     PORTD = (PORTD & 0x0F) | leds;
100
101         led_set_user(usb_led);
102
103 }
104
105