| 1234567891011121314151617181920212223242526272829303132333435363738394041424344454647484950515253545556575859606162636465666768697071727374757677787980 |
- #include "retro_refit.h"
- __attribute__ ((weak))
- void * matrix_init_user(void) {
- // leave this function blank - it can be defined in a keymap file
- return NULL;
- };
- __attribute__ ((weak))
- void * matrix_scan_user(void) {
- // leave this function blank - it can be defined in a keymap file
- return NULL;
- };
- __attribute__ ((weak))
- void * led_set_user(uint8_t usb_led) {
- // leave this function blank - it can be defined in a keymap file
- return NULL;
- };
- void * matrix_init_kb(void) {
- // put your keyboard start-up code here
- // runs once when the firmware starts up
-
- // Disable status LED on KB, enable status LED on Teensy (KB_STATUS = !TEENSY_STATUS)
- DDRD |= (1<<6);
- PORTD |= (1<<6);
-
- if (matrix_init_user) {
- (*matrix_init_user)();
- }
- return NULL;
- };
- void * matrix_scan_kb(void) {
- // put your looping keyboard code here
- // runs every cycle (a lot)
- if (matrix_scan_user) {
- (*matrix_scan_user)();
- }
- return NULL;
- };
- void * led_set_kb(uint8_t usb_led) {
- // put your keyboard LED indicator (ex: Caps Lock LED) toggling code here
- if (usb_led & (1<<USB_LED_CAPS_LOCK)) {
- // output low
- DDRD |= (1<<0);
- PORTD &= ~(1<<0);
- } else {
- // Hi-Z
- DDRD &= ~(1<<0);
- PORTD &= ~(1<<0);
- }
- if (usb_led & (1<<USB_LED_NUM_LOCK)) {
- // output low
- DDRD |= (1<<1);
- PORTD &= ~(1<<1);
- } else {
- // Hi-Z
- DDRD &= ~(1<<1);
- PORTD &= ~(1<<1);
- }
- if (usb_led & (1<<USB_LED_SCROLL_LOCK)) {
- // output low
- DDRC |= (1<<6);
- PORTC &= ~(1<<6);
- } else {
- // Hi-Z
- DDRC &= ~(1<<6);
- PORTC &= ~(1<<6);
- }
-
- if (led_set_user) {
- (*led_set_user)(usb_led);
- }
- return NULL;
- };
|