You can not select more than 25 topics Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.

97 lines
5.7 KiB

  1. #ifndef DO60_H
  2. #define DO60_H
  3. #include "quantum.h"
  4. #include "led.h"
  5. /* DO60 LEDs
  6. * GPIO pads
  7. * 0 F7 not connected
  8. * 1 F6 not connected
  9. * 2 F5 RGB PWM Underglow
  10. * 3 F4 Backlight LED
  11. * B2 Capslock LED
  12. * B0 not connected
  13. */
  14. /*
  15. inline void do60_caps_led_on(void) { DDRB |= (1<<2); PORTB &= ~(1<<2); }
  16. inline void do60_bl_led_on(void) { DDRF |= (1<<4); PORTF &= ~(1<<4); }
  17. inline void do60_caps_led_off(void) { DDRB &= ~(1<<2); PORTB &= ~(1<<2); }
  18. inline void do60_bl_led_off(void) { DDRF &= ~(1<<4); PORTF &= ~(1<<4); }
  19. */
  20. inline void setdefaultrgb(void){ rgblight_sethsv(100,100,100); }
  21. /* Do60 Keymap Definition Macro */
  22. #define LAYOUT_all( \
  23. K00, K01, K02, K03, K04, K05, K06, K07, K08, K09, K0A, K0B, K0C, K0D, K0E, \
  24. K10, K11, K12, K13, K14, K15, K16, K17, K18, K19, K1A, K1B, K1C, K1E, \
  25. K20, K21, K22, K23, K24, K25, K26, K27, K28, K29, K2A, K2B, K2C, K2E, \
  26. K30, K31, K32, K33, K34, K35, K36, K37, K38, K39, K3A, K3B, K3C, K3D, K3E, \
  27. K40, K41, K42, K45, K46, K47, K4A, K4B, K4C, K4D, K4E \
  28. ) { \
  29. { K00, K01, K02, K03, K04, K05, K06, K07, K08, K09, K0A, K0B, K0C, K0D, K0E }, \
  30. { K10, K11, K12, K13, K14, K15, K16, K17, K18, K19, K1A, K1B, K1C, KC_NO, K1E }, \
  31. { K20, K21, K22, K23, K24, K25, K26, K27, K28, K29, K2A, K2B, K2C, KC_NO, K2E }, \
  32. { K30, K31, K32, K33, K34, K35, K36, K37, K38, K39, K3A, K3B, K3C, K3D, K3E }, \
  33. { K40, K41, K42, KC_NO,KC_NO,K45, K46, K47, KC_NO,KC_NO,K4A, K4B, K4C, K4D, K4E } \
  34. }
  35. #define LAYOUT_60_hhkb( \
  36. K00, K01, K02, K03, K04, K05, K06, K07, K08, K09, K0A, K0B, K0C, K0D, K0E, \
  37. K10, K11, K12, K13, K14, K15, K16, K17, K18, K19, K1A, K1B, K1C, K1E, \
  38. K20, K21, K22, K23, K24, K25, K26, K27, K28, K29, K2A, K2B, K2E, \
  39. K30, K32, K33, K34, K35, K36, K37, K38, K39, K3A, K3B, K3D, K3E, \
  40. K41, K42, K46, K4A, K4B \
  41. ) { \
  42. { K00, K01, K02, K03, K04, K05, K06, K07, K08, K09, K0A, K0B, K0C, K0D, K0E }, \
  43. { K10, K11, K12, K13, K14, K15, K16, K17, K18, K19, K1A, K1B, K1C, KC_NO, K1E }, \
  44. { K20, K21, K22, K23, K24, K25, K26, K27, K28, K29, K2A, K2B, KC_NO, KC_NO, K2E }, \
  45. { K30, KC_NO, K32, K33, K34, K35, K36, K37, K38, K39, K3A, K3B, KC_NO, K3D, K3E }, \
  46. { KC_NO, K41, K42, KC_NO, KC_NO, KC_NO, K46, KC_NO, KC_NO, KC_NO, K4A, K4B, KC_NO, KC_NO, KC_NO } \
  47. }
  48. #define LAYOUT_60_ansi( \
  49. K00, K01, K02, K03, K04, K05, K06, K07, K08, K09, K0A, K0B, K0C, K0E, \
  50. K10, K11, K12, K13, K14, K15, K16, K17, K18, K19, K1A, K1B, K1C, K1E, \
  51. K20, K21, K22, K23, K24, K25, K26, K27, K28, K29, K2A, K2B, K2E, \
  52. K30, K32, K33, K34, K35, K36, K37, K38, K39, K3A, K3B, K3D, \
  53. K40, K41, K42, K46, K4A, K4B, K4C, K4E \
  54. ) { \
  55. { K00, K01, K02, K03, K04, K05, K06, K07, K08, K09, K0A, K0B, K0C, KC_NO, K0E }, \
  56. { K10, K11, K12, K13, K14, K15, K16, K17, K18, K19, K1A, K1B, K1C, KC_NO, K1E }, \
  57. { K20, K21, K22, K23, K24, K25, K26, K27, K28, K29, K2A, K2B, KC_NO, KC_NO, K2E }, \
  58. { K30, KC_NO, K32, K33, K34, K35, K36, K37, K38, K39, K3A, K3B, KC_NO, K3D, KC_NO }, \
  59. { K40, K41, K42, KC_NO, KC_NO, KC_NO, K46, KC_NO, KC_NO, KC_NO, K4A, K4B, K4C, KC_NO, K4E } \
  60. }
  61. #define LAYOUT_60_ansi_split_bs_rshift( \
  62. K00, K01, K02, K03, K04, K05, K06, K07, K08, K09, K0A, K0B, K0C, K0D, K0E, \
  63. K10, K11, K12, K13, K14, K15, K16, K17, K18, K19, K1A, K1B, K1C, K1E, \
  64. K20, K21, K22, K23, K24, K25, K26, K27, K28, K29, K2A, K2B, K2E, \
  65. K30, K32, K33, K34, K35, K36, K37, K38, K39, K3A, K3B, K3D, K3E, \
  66. K40, K41, K42, K46, K4A, K4B, K4C, K4E \
  67. ) { \
  68. { K00, K01, K02, K03, K04, K05, K06, K07, K08, K09, K0A, K0B, K0C, K0D, K0E }, \
  69. { K10, K11, K12, K13, K14, K15, K16, K17, K18, K19, K1A, K1B, K1C, KC_NO, K1E }, \
  70. { K20, K21, K22, K23, K24, K25, K26, K27, K28, K29, K2A, K2B, KC_NO, KC_NO, K2E }, \
  71. { K30, KC_NO, K32, K33, K34, K35, K36, K37, K38, K39, K3A, K3B, KC_NO, K3D, K3E }, \
  72. { K40, K41, K42, KC_NO, KC_NO, KC_NO, K46, KC_NO, KC_NO, KC_NO, K4A, K4B, K4C, KC_NO, K4E } \
  73. }
  74. #define LAYOUT_chiwi60_default( \
  75. K00, K01, K02, K03, K04, K05, K06, K07, K08, K09, K0A, K0B, K0C, K0D, K0E, \
  76. K10, K11, K12, K13, K14, K15, K16, K17, K18, K19, K1A, K1B, K1C, K1E, \
  77. K20, K21, K22, K23, K24, K25, K26, K27, K28, K29, K2A, K2B, K2E, \
  78. K30, K32, K33, K34, K35, K36, K37, K38, K39, K3A, K3B, K3D, K3E, \
  79. K40, K41, K42, K45, K47, K4A, K4B, K4C, K4D, K4E \
  80. ) { \
  81. { K00, K01, K02, K03, K04, K05, K06, K07, K08, K09, K0A, K0B, K0C, K0D, K0E }, \
  82. { K10, K11, K12, K13, K14, K15, K16, K17, K18, K19, K1A, K1B, K1C, KC_NO, K1E }, \
  83. { K20, K21, K22, K23, K24, K25, K26, K27, K28, K29, K2A, K2B, KC_NO, KC_NO, K2E }, \
  84. { K30, KC_NO, K32, K33, K34, K35, K36, K37, K38, K39, K3A, K3B, KC_NO, K3D, K3E }, \
  85. { K40, K41, K42, KC_NO, KC_NO, K45, KC_NO, K47, KC_NO, KC_NO, K4A, K4B, K4C, K4D, K4E } \
  86. }
  87. #endif