ergodox_infinity.h 4.3 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142143144145146147148149150151152153154155
  1. #pragma once
  2. #include "quantum.h"
  3. void ergodox_board_led_on(void);
  4. void ergodox_right_led_1_on(void);
  5. void ergodox_right_led_2_on(void);
  6. void ergodox_right_led_3_on(void);
  7. inline void ergodox_right_led_on(uint8_t led) {
  8. switch (led) {
  9. case 0:
  10. ergodox_right_led_1_on();
  11. break;
  12. case 1:
  13. ergodox_right_led_2_on();
  14. break;
  15. case 2:
  16. ergodox_right_led_3_on();
  17. break;
  18. }
  19. }
  20. void ergodox_board_led_off(void);
  21. void ergodox_right_led_1_off(void);
  22. void ergodox_right_led_2_off(void);
  23. void ergodox_right_led_3_off(void);
  24. inline void ergodox_right_led_off(uint8_t led) {
  25. switch (led) {
  26. case 0:
  27. ergodox_right_led_1_off();
  28. break;
  29. case 1:
  30. ergodox_right_led_2_off();
  31. break;
  32. case 2:
  33. ergodox_right_led_3_off();
  34. break;
  35. }
  36. }
  37. inline void ergodox_led_all_on(void)
  38. {
  39. ergodox_board_led_on();
  40. ergodox_right_led_1_on();
  41. ergodox_right_led_2_on();
  42. ergodox_right_led_3_on();
  43. }
  44. inline void ergodox_led_all_off(void)
  45. {
  46. ergodox_board_led_off();
  47. ergodox_right_led_1_off();
  48. ergodox_right_led_2_off();
  49. ergodox_right_led_3_off();
  50. }
  51. void ergodox_right_led_1_set(uint8_t n);
  52. void ergodox_right_led_2_set(uint8_t n);
  53. void ergodox_right_led_3_set(uint8_t n);
  54. inline void ergodox_right_led_set(uint8_t led, uint8_t n){
  55. switch (led) {
  56. case 0:
  57. ergodox_right_led_1_set(n);
  58. break;
  59. case 1:
  60. ergodox_right_led_2_set(n);
  61. break;
  62. case 2:
  63. ergodox_right_led_3_set(n);
  64. break;
  65. }
  66. }
  67. inline void ergodox_led_all_set(uint8_t n) {
  68. ergodox_right_led_1_set(n);
  69. ergodox_right_led_2_set(n);
  70. ergodox_right_led_3_set(n);
  71. }
  72. #ifndef VISUALIZER_ENABLE
  73. void ergodox_infinity_lcd_color(uint16_t r, uint16_t g, uint16_t b);
  74. #endif
  75. #define XXX KC_NO
  76. #define LAYOUT_ergodox( \
  77. A80, A70, A60, A50, A40, A30, A20, \
  78. A81, A71, A61, A51, A41, A31, A21, \
  79. A82, A72, A62, A52, A42, A32, \
  80. A83, A73, A63, A53, A43, A33, A23, \
  81. A84, A74, A64, A54, A44, \
  82. A13, A03, \
  83. A04, \
  84. A34, A24, A14, \
  85. \
  86. B20, B30, B40, B50, B60, B70, B80, \
  87. B21, B31, B41, B51, B61, B71, B81, \
  88. B32, B42, B52, B62, B72, B82, \
  89. B23, B33, B43, B53, B63, B73, B83, \
  90. B44, B54, B64, B74, B84, \
  91. B03, B13, \
  92. B04, \
  93. B14, B24, B34 \
  94. ) { \
  95. { XXX, XXX, XXX, A03, A04 }, \
  96. { XXX, XXX, XXX, A13, A14 }, \
  97. { A20, A21, XXX, A23, A24 }, \
  98. { A30, A31, A32, A33, A34 }, \
  99. { A40, A41, A42, A43, A44 }, \
  100. { A50, A51, A52, A53, A54 }, \
  101. { A60, A61, A62, A63, A64 }, \
  102. { A70, A71, A72, A73, A74 }, \
  103. { A80, A81, A82, A83, A84 }, \
  104. { XXX, XXX, XXX, B03, B04 }, \
  105. { XXX, XXX, XXX, B13, B14 }, \
  106. { B20, B21, XXX, B23, B24 }, \
  107. { B30, B31, B32, B33, B34 }, \
  108. { B40, B41, B42, B43, B44 }, \
  109. { B50, B51, B52, B53, B54 }, \
  110. { B60, B61, B62, B63, B64 }, \
  111. { B70, B71, B72, B73, B74 }, \
  112. { B80, B81, B82, B83, B84 } \
  113. }
  114. #define LAYOUT_ergodox_pretty( \
  115. A80, A70, A60, A50, A40, A30, A20, B20, B30, B40, B50, B60, B70, B80, \
  116. A81, A71, A61, A51, A41, A31, A21, B21, B31, B41, B51, B61, B71, B81, \
  117. A82, A72, A62, A52, A42, A32, B32, B42, B52, B62, B72, B82, \
  118. A83, A73, A63, A53, A43, A33, A23, B23, B33, B43, B53, B63, B73, B83, \
  119. A84, A74, A64, A54, A44, B44, B54, B64, B74, B84, \
  120. A13, A03, B03, B13, \
  121. A04, B04, \
  122. A34, A24, A14, B14, B24, B34 \
  123. ) { \
  124. { XXX, XXX, XXX, A03, A04 }, \
  125. { XXX, XXX, XXX, A13, A14 }, \
  126. { A20, A21, XXX, A23, A24 }, \
  127. { A30, A31, A32, A33, A34 }, \
  128. { A40, A41, A42, A43, A44 }, \
  129. { A50, A51, A52, A53, A54 }, \
  130. { A60, A61, A62, A63, A64 }, \
  131. { A70, A71, A72, A73, A74 }, \
  132. { A80, A81, A82, A83, A84 }, \
  133. { XXX, XXX, XXX, B03, B04 }, \
  134. { XXX, XXX, XXX, B13, B14 }, \
  135. { B20, B21, XXX, B23, B24 }, \
  136. { B30, B31, B32, B33, B34 }, \
  137. { B40, B41, B42, B43, B44 }, \
  138. { B50, B51, B52, B53, B54 }, \
  139. { B60, B61, B62, B63, B64 }, \
  140. { B70, B71, B72, B73, B74 }, \
  141. { B80, B81, B82, B83, B84 } \
  142. }