mt980.c 1.2 KB

1234567891011121314151617181920212223242526272829303132333435363738394041424344454647484950515253545556575859606162636465
  1. #include "mt980.h"
  2. __attribute__ ((weak))
  3. void matrix_init_keymap(void) {}
  4. __attribute__ ((weak))
  5. void matrix_scan_keymap(void) {}
  6. __attribute__ ((weak))
  7. bool process_record_keymap(uint16_t keycode, keyrecord_t *record) {
  8. return true;
  9. }
  10. __attribute__ ((weak))
  11. uint32_t layer_state_set_keymap (uint32_t state) {
  12. return state;
  13. }
  14. __attribute__ ((weak))
  15. void led_set_keymap(uint8_t usb_led) {}
  16. void matrix_init_user(void) {
  17. matrix_init_keymap();
  18. }
  19. void matrix_scan_user(void) {
  20. matrix_scan_keymap();
  21. }
  22. void keyboard_pre_init_user(void) {
  23. /* Set NUMLOCK indicator pin as output */
  24. setPinOutput(C6);
  25. /* Set CAPSLOCK indicator pin as output */
  26. setPinOutput(C7);
  27. /* Set SCROLLOCK indicator pin as output */
  28. setPinOutput(B5);
  29. }
  30. bool process_record_user(uint16_t keycode, keyrecord_t *record) {
  31. return process_record_keymap(keycode, record);
  32. }
  33. void led_set_user(uint8_t usb_led) {
  34. if (IS_LED_ON(usb_led, USB_LED_NUM_LOCK)) {
  35. writePinLow(C6);
  36. }
  37. else {
  38. writePinHigh(C6);
  39. }
  40. if (IS_LED_ON(usb_led, USB_LED_CAPS_LOCK)) {
  41. writePinLow(C7);
  42. }
  43. else {
  44. writePinHigh(C7);
  45. }
  46. if (IS_LED_ON(usb_led, USB_LED_SCROLL_LOCK)) {
  47. writePinLow(B5);
  48. }
  49. else {
  50. writePinHigh(B5);
  51. }
  52. led_set_keymap(usb_led);
  53. }