diff options
author | Alex Johnstone <alexjj@gmail.com> | 2016-03-25 11:16:33 -0700 |
---|---|---|
committer | Alex Johnstone <alexjj@gmail.com> | 2016-03-25 11:16:33 -0700 |
commit | 2d9037491271677f6642ec162b6a8be3ebb47e78 (patch) | |
tree | d3847db7e2b68c11f704e9635bc832ac7ec7a1e9 /keyboard/retro_refit/retro_refit.c | |
parent | fb6dc7499f51688ec245826842300780273203c6 (diff) | |
parent | c9aec8bc246fe45a6486a5ef7a9ef1302e4e16ad (diff) |
Merge pull request #3 from jackhumbert/master
Pull upstream
Diffstat (limited to 'keyboard/retro_refit/retro_refit.c')
-rw-r--r-- | keyboard/retro_refit/retro_refit.c | 68 |
1 files changed, 68 insertions, 0 deletions
diff --git a/keyboard/retro_refit/retro_refit.c b/keyboard/retro_refit/retro_refit.c new file mode 100644 index 0000000000..0b13eb8301 --- /dev/null +++ b/keyboard/retro_refit/retro_refit.c @@ -0,0 +1,68 @@ +#include "retro_refit.h" + +__attribute__ ((weak)) +void matrix_init_user(void) { + // leave this function blank - it can be defined in a keymap file +}; + +__attribute__ ((weak)) +void matrix_scan_user(void) { + // leave this function blank - it can be defined in a keymap file +}; + +__attribute__ ((weak)) +void led_set_user(uint8_t usb_led) { + // leave this function blank - it can be defined in a keymap file +}; + +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); + + matrix_init_user(); +}; + +void amatrix_scan_kb(void) { + // put your looping keyboard code here + // runs every cycle (a lot) + + matrix_scan_user(); +}; + +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); + } + + led_set_user(usb_led); +};
\ No newline at end of file |