logo

qmk_firmware

custom branch of QMK firmware git clone https://anongit.hacktivis.me/git/qmk_firmware.git

ansi.c (8704B)


  1. /* Copyright 2021 Glorious, LLC <salman@pcgamingrace.com>
  2. *
  3. * This program is free software: you can redistribute it and/or modify
  4. * it under the terms of the GNU General Public License as published by
  5. * the Free Software Foundation, either version 2 of the License, or
  6. * (at your option) any later version.
  7. *
  8. * This program is distributed in the hope that it will be useful,
  9. * but WITHOUT ANY WARRANTY; without even the implied warranty of
  10. * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
  11. * GNU General Public License for more details.
  12. *
  13. * You should have received a copy of the GNU General Public License
  14. * along with this program. If not, see <http://www.gnu.org/licenses/>.
  15. */
  16. #include "quantum.h"
  17. #ifdef RGB_MATRIX_ENABLE
  18. const aw20216s_led_t PROGMEM g_aw20216s_leds[AW20216S_LED_COUNT] = {
  19. /* Refer to AW20216S manual for these locations
  20. * driver
  21. * | R location
  22. * | | G location
  23. * | | | B location
  24. * | | | | */
  25. {0, SW1_CS1, SW1_CS2, SW1_CS3 }, // 0 Esc
  26. {0, SW2_CS4, SW2_CS5, SW2_CS6 }, // 1 1
  27. {0, SW3_CS4, SW3_CS5, SW3_CS6 }, // 2 2
  28. {0, SW4_CS4, SW4_CS5, SW4_CS6 }, // 3 3
  29. {0, SW5_CS4, SW5_CS5, SW5_CS6 }, // 4 4
  30. {0, SW6_CS4, SW6_CS5, SW6_CS6 }, // 5 5
  31. {0, SW7_CS4, SW7_CS5, SW7_CS6 }, // 6 6
  32. {0, SW8_CS4, SW8_CS5, SW8_CS6 }, // 7 7
  33. {0, SW9_CS4, SW9_CS5, SW9_CS6 }, // 8 8
  34. {0, SW10_CS4, SW10_CS5, SW10_CS6 }, // 9 9
  35. {0, SW11_CS4, SW11_CS5, SW11_CS6 }, // 10 0
  36. {0, SW12_CS4, SW12_CS5, SW12_CS6 }, // 11 -
  37. {1, SW5_CS1, SW5_CS2, SW5_CS3 }, // 12 =
  38. {1, SW7_CS1, SW7_CS2, SW7_CS3 }, // 13 Backspace
  39. {1, SW4_CS4, SW4_CS5, SW4_CS6 }, // 14 Del
  40. {0, SW1_CS7, SW1_CS8, SW1_CS9 }, // 15 Tab
  41. {0, SW2_CS7, SW2_CS8, SW2_CS9 }, // 16 Q
  42. {0, SW3_CS7, SW3_CS8, SW3_CS9 }, // 17 W
  43. {0, SW4_CS7, SW4_CS8, SW4_CS9 }, // 18 E
  44. {0, SW5_CS7, SW5_CS8, SW5_CS9 }, // 19 R
  45. {0, SW6_CS7, SW6_CS8, SW6_CS9 }, // 20 T
  46. {0, SW7_CS7, SW7_CS8, SW7_CS9 }, // 21 Y
  47. {0, SW8_CS7, SW8_CS8, SW8_CS9 }, // 22 U
  48. {0, SW9_CS7, SW9_CS8, SW9_CS9 }, // 23 I
  49. {0, SW10_CS7, SW10_CS8, SW10_CS9 }, // 24 O
  50. {0, SW11_CS7, SW11_CS8, SW11_CS9 }, // 25 P
  51. {0, SW12_CS7, SW12_CS8, SW12_CS9 }, // 26 [
  52. {1, SW8_CS1, SW8_CS2, SW8_CS3 }, // 27 ]
  53. {1, SW9_CS1, SW9_CS2, SW9_CS3 }, // 28 \|
  54. {1, SW7_CS4, SW7_CS5, SW7_CS6 }, // 29 PgUp
  55. {0, SW1_CS10, SW1_CS11, SW1_CS12 }, // 30 Caps Lock
  56. {0, SW2_CS10, SW2_CS11, SW2_CS12 }, // 31 A
  57. {0, SW3_CS10, SW3_CS11, SW3_CS12 }, // 32 S
  58. {0, SW4_CS10, SW4_CS11, SW4_CS12 }, // 33 D
  59. {0, SW5_CS10, SW5_CS11, SW5_CS12 }, // 34 F
  60. {0, SW6_CS10, SW6_CS11, SW6_CS12 }, // 35 G
  61. {0, SW7_CS10, SW7_CS11, SW7_CS12 }, // 36 H
  62. {0, SW8_CS10, SW8_CS11, SW8_CS12 }, // 37 J
  63. {0, SW9_CS10, SW9_CS11, SW9_CS12 }, // 38 K
  64. {0, SW10_CS10, SW10_CS11, SW10_CS12}, // 39 L
  65. {0, SW11_CS10, SW11_CS11, SW11_CS12}, // 40 ;
  66. {0, SW12_CS10, SW12_CS11, SW12_CS12}, // 41 '
  67. {1, SW11_CS1, SW11_CS2, SW11_CS3 }, // 42 Enter
  68. {1, SW5_CS4, SW5_CS5, SW5_CS6 }, // 43 PgDn
  69. {0, SW1_CS13, SW1_CS14, SW1_CS15 }, // 44 Shift_L
  70. {0, SW3_CS13, SW3_CS14, SW3_CS15 }, // 45 Z
  71. {0, SW4_CS13, SW4_CS14, SW4_CS15 }, // 46 X
  72. {0, SW5_CS13, SW5_CS14, SW5_CS15 }, // 47 C
  73. {0, SW6_CS13, SW6_CS14, SW6_CS15 }, // 48 V
  74. {0, SW7_CS13, SW7_CS14, SW7_CS15 }, // 49 B
  75. {0, SW8_CS13, SW8_CS14, SW8_CS15 }, // 50 N
  76. {0, SW9_CS13, SW9_CS14, SW9_CS15 }, // 51 M
  77. {0, SW10_CS13, SW10_CS14, SW10_CS15}, // 52 ,
  78. {0, SW11_CS13, SW11_CS14, SW11_CS15}, // 53 .
  79. {0, SW12_CS13, SW12_CS14, SW12_CS15}, // 54 /
  80. {1, SW8_CS4, SW8_CS5, SW8_CS6 }, // 55 Shift_R
  81. {1, SW9_CS4, SW9_CS5, SW9_CS6 }, // 56 Up
  82. {1, SW6_CS4, SW6_CS5, SW6_CS6 }, // 57 END
  83. {0, SW1_CS16, SW1_CS17, SW1_CS18 }, // 58 Ctrl_L
  84. {0, SW2_CS16, SW2_CS17, SW2_CS18 }, // 59 Win_L
  85. {0, SW3_CS16, SW3_CS17, SW3_CS18 }, // 60 Alt_L
  86. {0, SW6_CS16, SW6_CS17, SW6_CS18 }, // 61 Space
  87. {0, SW9_CS16, SW9_CS17, SW9_CS18 }, // 62 Alt_R
  88. {0, SW10_CS16, SW10_CS17, SW10_CS18}, // 63 FN
  89. {1, SW10_CS4, SW10_CS5, SW10_CS6 }, // 64 Left
  90. {1, SW11_CS4, SW11_CS5, SW11_CS6 }, // 65 Down
  91. {1, SW12_CS4, SW12_CS5, SW12_CS6 }, // 66 Right
  92. {1, SW1_CS13, SW1_CS14, SW1_CS15 }, // 69 LED 1
  93. {1, SW2_CS13, SW2_CS14, SW2_CS15 }, // 70 LED 2
  94. {1, SW3_CS13, SW3_CS14, SW3_CS15 }, // 71 LED 3
  95. {1, SW4_CS13, SW4_CS14, SW4_CS15 }, // 72 LED 4
  96. {1, SW5_CS13, SW5_CS14, SW5_CS15 }, // 73 LED 5
  97. {1, SW6_CS13, SW6_CS14, SW6_CS15 }, // 74 LED 6
  98. {1, SW7_CS13, SW7_CS14, SW7_CS15 }, // 75 LED 7
  99. {1, SW8_CS13, SW8_CS14, SW8_CS15 }, // 76 LED 8
  100. {1, SW9_CS13, SW9_CS14, SW9_CS15 }, // 77 LED 9
  101. {1, SW10_CS13, SW10_CS14, SW10_CS15}, // 78 LED 10
  102. {1, SW1_CS16, SW1_CS17, SW1_CS18 }, // 79 LED 11
  103. {1, SW2_CS16, SW2_CS17, SW2_CS18 }, // 80 LED 12
  104. {1, SW3_CS16, SW3_CS17, SW3_CS18 }, // 81 LED 13
  105. {1, SW4_CS16, SW4_CS17, SW4_CS18 }, // 82 LED 14
  106. {1, SW5_CS16, SW5_CS17, SW5_CS18 }, // 83 LED 15
  107. {1, SW6_CS16, SW6_CS17, SW6_CS18 }, // 84 LED 16
  108. {1, SW7_CS16, SW7_CS17, SW7_CS18 }, // 85 LED 17
  109. {1, SW8_CS16, SW8_CS17, SW8_CS18 }, // 86 LED 18
  110. {1, SW9_CS16, SW9_CS17, SW9_CS18 }, // 87 LED 19
  111. {1, SW10_CS16, SW10_CS17, SW10_CS18} // 88 LED 20
  112. };
  113. #define __ NO_LED
  114. led_config_t g_led_config = {{
  115. { 44, 57, __, 64, __, 66, 58, 55},
  116. { 16, 15, 31, 0, 45, 59, __, 1},
  117. { 17, 30, 32, 60, 46, 14, 29, 2},
  118. { 18, 61, 33, 63, 47, 56, 62, 3},
  119. { 19, 20, 34, 35, 48, 49, 5, 4},
  120. { 22, 21, 37, 36, 51, 50, 6, 7},
  121. { 23, 27, 38, __, 52, 43, 12, 8},
  122. { 24, 13, 39, 65, 53, __, 28, 9},
  123. { 25, 26, 40, 41, 42, 54, 11, 10}
  124. }, {
  125. {14, 0 }, // 0 Esc
  126. {28, 0 }, // 1 1
  127. {42, 0 }, // 2 2
  128. {56, 0 }, // 3 3
  129. {70, 0 }, // 4 4
  130. {84, 0 }, // 5 5
  131. {98, 0 }, // 6 6
  132. {112, 0 }, // 7 7
  133. {126, 0 }, // 8 8
  134. {140, 0 }, // 9 9
  135. {154, 0 }, // 10 0
  136. {168, 0 }, // 11 -
  137. {182, 0 }, // 12 =
  138. {196, 0 }, // 13 Backspace
  139. {210, 0 }, // 14 Del
  140. {14, 16}, // 15 Tab
  141. {28, 16}, // 16 Q
  142. {42, 16}, // 17 W
  143. {56, 16}, // 18 E
  144. {70, 16}, // 19 R
  145. {84, 16}, // 20 T
  146. {98, 16}, // 21 Y
  147. {112, 16}, // 22 U
  148. {126, 16}, // 23 I
  149. {140, 16}, // 24 O
  150. {154, 16}, // 25 P
  151. {168, 16}, // 26 [
  152. {182, 16}, // 27 ]
  153. {196, 16}, // 28 \|
  154. {210, 16}, // 29 PgUp
  155. {14, 32}, // 30 Caps Lock
  156. {28, 32}, // 31 A
  157. {42, 32}, // 32 S
  158. {56, 32}, // 33 D
  159. {70, 32}, // 34 F
  160. {84, 32}, // 35 G
  161. {98, 32}, // 36 H
  162. {112, 32}, // 37 J
  163. {126, 32}, // 38 K
  164. {140, 32}, // 39 L
  165. {154, 32}, // 40 ;
  166. {168, 32}, // 41 '
  167. {196, 32}, // 42 Enter
  168. {210, 32}, // 43 PgDn
  169. {14, 48}, // 44 Shift_L
  170. {42, 48}, // 45 Z
  171. {56, 48}, // 46 X
  172. {70, 48}, // 47 C
  173. {84, 48}, // 48 V
  174. {98, 48}, // 49 B
  175. {112, 48}, // 50 N
  176. {126, 48}, // 51 M
  177. {140, 48}, // 52 ,
  178. {154, 48}, // 53 .
  179. {168, 48}, // 54 /
  180. {182, 48}, // 55 Shift_R
  181. {196, 48}, // 56 Up
  182. {210, 48}, // 57 END
  183. {14, 64}, // 58 Ctrl_L
  184. {28, 64}, // 59 Win_L
  185. {42, 64}, // 60 Alt_L
  186. {84, 64}, // 61 Space
  187. {126, 64}, // 62 Alt_R
  188. {140, 64}, // 63 FN
  189. {182, 64}, // 64 Left
  190. {196, 64}, // 65 Down
  191. {210, 64}, // 66 Right
  192. {224, 0 }, // 69 LED 1
  193. {224, 7 }, // 70 LED 2
  194. {224, 14}, // 71 LED 3
  195. {224, 21}, // 72 LED 4
  196. {224, 28}, // 73 LED 5
  197. {224, 35}, // 74 LED 6
  198. {224, 42}, // 75 LED 7
  199. {224, 49}, // 76 LED 8
  200. {224, 56}, // 77 LED 9
  201. {224, 64}, // 78 LED 10
  202. {0, 0 }, // 79 LED 11
  203. {0, 7 }, // 80 LED 12
  204. {0, 14}, // 81 LED 13
  205. {0, 21}, // 82 LED 14
  206. {0, 28}, // 83 LED 15
  207. {0, 35}, // 84 LED 16
  208. {0, 42}, // 85 LED 17
  209. {0, 49}, // 86 LED 18
  210. {0, 56}, // 87 LED 19
  211. {0, 64}, // 88 LED 20
  212. }, {
  213. 4, 4, 4, 4, 4, 4, 4, 4, 4, 4, 4, 4, 4, 4, 4,
  214. 4, 4, 4, 4, 4, 4, 4, 4, 4, 4, 4, 4, 4, 4, 4,
  215. 4, 4, 4, 4, 4, 4, 4, 4, 4, 4, 4, 4, 4, 4,
  216. 4, 4, 4, 4, 4, 4, 4, 4, 4, 4, 4, 4, 4, 4,
  217. 4, 4, 4, 4, 4, 4, 4, 4, 4,
  218. 2, 2, 2, 2, 2, 2, 2, 2, 2, 2,
  219. 2, 2, 2, 2, 2, 2, 2, 2, 2, 2
  220. } };
  221. #endif