summaryrefslogtreecommitdiff
path: root/keyboards/bpiphany/frosty_flake/frosty_flake.c
diff options
context:
space:
mode:
Diffstat (limited to 'keyboards/bpiphany/frosty_flake/frosty_flake.c')
-rw-r--r--keyboards/bpiphany/frosty_flake/frosty_flake.c73
1 files changed, 17 insertions, 56 deletions
diff --git a/keyboards/bpiphany/frosty_flake/frosty_flake.c b/keyboards/bpiphany/frosty_flake/frosty_flake.c
index 1cd4760389..be4e1a3124 100644
--- a/keyboards/bpiphany/frosty_flake/frosty_flake.c
+++ b/keyboards/bpiphany/frosty_flake/frosty_flake.c
@@ -1,63 +1,24 @@
#include "frosty_flake.h"
-void matrix_init_kb(void) {
- // put your keyboard start-up code here
- // runs once when the firmware starts up
-
- matrix_init_user();
+void keyboard_pre_init_kb() {
+ setPinOutput(B7); // num lock
+ writePinHigh(B7);
+ setPinOutput(C5); // caps lock
+ writePinHigh(C7);
+ setPinOutput(C6); // scroll lock
+ writePinHigh(C6);
+
+ keyboard_pre_init_user();
}
-void matrix_scan_kb(void) {
- // put your looping keyboard code here
- // runs every cycle (a lot)
-
- matrix_scan_user();
-}
+bool led_update_kb(led_t usb_led) {
+ // user requests no further processing
+ if (!led_update_user(usb_led))
+ return true;
-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
+ writePin(C5, !usb_led.caps_lock);
+ writePin(B7, !usb_led.num_lock);
+ writePin(C6, !usb_led.scroll_lock);
- return process_record_user(keycode, record);
+ return true;
}
-
-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_CAPS_LOCK))
- PORTC &= ~(1<<5);
- else
- PORTC |= (1<<5);
-
- if (usb_led & (1<<USB_LED_NUM_LOCK))
- PORTB &= ~(1<<7);
- else
- PORTB |= (1<<7);
-
- if (usb_led & (1<<USB_LED_SCROLL_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