sohotcall

VirtualChicken32 -- 32-Key Keyboard

Mar 4th, 2021 (edited)
75
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
  1. FUNCTION 1 (Rearranging...)
  2. |Cap| F1| F2| F3| F4| 7 | 8 | 9 | - | % |
  3. |Esc| F5| F6| F7| F8| 4 | 5 | 6 | + | * |
  4. |Prt| F9|F10|F11|F12| 1 | 2 | 3 | . | = |
  5. |Fn1| 0 |
  6. FUNCTION 2 (Rearranging...)
  7. | ! |PgU| | | & | [ | ] | ~ | Up|Ins|Del|
  8. |Hom|PgD|End| _ | ( | ) |Lft|Dwn|Rgt|Ent|
  9. | ` | @ | ^ | $ | { | } | " | ' | # | \ |
  10. |Tab|Fn2|
  11. QWERTY
  12. | Q | W | E | R | T | Y | U | I | O | P |
  13. | A | S | D | F | G | H | J | K | L | ;:|
  14. | Z | X | C | V | B | N | M | ,<| .>| /?|
  15. |Bsp|Spc|
  16. WORKMAN
  17. | Q | D | R | W | B | J | F | U | P | ;:|
  18. | A | S | H | T | G | Y | N | E | O | I |
  19. | Z | X | M | C | V | K | L | ,<| .>| /?|
  20. |Bsp|Spc|
  21. DVORAK
  22. | /?| ,<| .>| P | Y | F | G | C | R | L |
  23. | A | O | E | U | I | D | H | T | N | S |
  24. | ;:| Q | J | K | X | B | M | W | V | Z |
  25. |Bsp|Spc|
  26. COLEMAK
  27. | Q | W | F | P | G | J | L | U | Y | ;:|
  28. | A | R | S | T | D | H | N | E | I | O |
  29. | Z | X | C | V | B | K | M | ,<| .>| /?|
  30. |Bsp|Spc|
  31. MOD-DH
  32. | Q | W | F | P | B | J | L | U | Y | ;:|
  33. | A | R | S | T | G | K | N | E | I | O |
  34. | Z | X | C | D | V | M | H | ,<| .>| /?|
  35. |Bsp|Spc|
  36. HALMAK
  37. | W | L | R | B | Z | ;:| Q | U | D | J |
  38. | S | H | N | T | ,<| .>| A | E | O | I |
  39. | F | M | V | C | /?| G | P | X | K | Y |
  40. |Bsp|Spc|
  41. RSTHD
  42. | J | C | Y | F | K | Z | L | ,<| U | Q |
  43. | R | S | T | H | D | M | N | A | I | O |
  44. | /?| V | G | P | B | X | W | .>| ;:|Bsp|
  45. | E |Spc|
  46. QGMLW
  47. | Q | G | M | L | W | Y | F | U | B | ;:|
  48. | D | S | T | N | R | I | A | E | O | H |
  49. | Z | X | C | V | J | K | P | ,<| .>| /?|
  50. |Bsp|Spc|
  51. MALTRON
  52. | Q | P | Y | C | B | V | M | U | Z | L |
  53. | A | N | I | S | F | D | T | H | O | R |
  54. | ,<| .>| J | G | /?| ;:| W | K |Bsp| X |
  55. | E |Spc|
  56. CAPEWELL
  57. | .>| Y | W | D | F | J | P | L | U | Q |
  58. | A | E | R | S | G | B | T | N | I | O |
  59. | X | Z | C | V | ;:| K | W | H | ,<| /?|
  60. |Bsp|Spc|
  61. FUNCTION 3 (Mouse + Settings)
  62. | 7 | 6 | 5 | 4 | | |MSU|MUp|MSD|RMB|
  63. | 3 | 2 | 1 | 0 | | |MLf|MDn|MRg|LMB|
  64. |Alt|Shf|Ctr| |Gui| | | | |MMB|
  65. |Fn3|Fn3|
  66. 40:Qwerty
  67. 41:Workman
  68. 42:Dvorak
  69. 43:Colemak
  70. 440:Mod D-H
  71. 441:Halmak
  72. 442:Maltron
  73. 443:RSTHD
  74. 450:QGMLW
  75. 451:Capewell
  76. 50:Qwerty shortcut OFF
  77. 51:Qwerty shortcut ON
  78. 52:NKRO ON (Game mode)
  79. 53:NKRO OFF (Modifier mode)
  80. 540:Save Settings
  81. 541:Load Settings
  82. 542:Load Factory Settings
  83. 60:Backlight OFF
  84. 61:Backlight 1
  85. 62:Backlight 2
  86. 63:Backlight 3
  87. 640:Sound OFF
  88. 641:Sound ON
  89.  
  90.  
  91. #define KBD_NIL 0x00
  92. #define KBD_A 0x04
  93. #define KBD_B 0x05
  94. #define KBD_C 0x06
  95. #define KBD_D 0x07
  96. #define KBD_E 0x08
  97. #define KBD_F 0x09
  98. #define KBD_G 0x0A
  99. #define KBD_H 0x0B
  100. #define KBD_I 0x0C
  101. #define KBD_J 0x0D
  102. #define KBD_K 0x0E
  103. #define KBD_L 0x0F
  104. #define KBD_M 0x10
  105. #define KBD_N 0x11
  106. #define KBD_O 0x12
  107. #define KBD_P 0x13
  108. #define KBD_Q 0x14
  109. #define KBD_R 0x15
  110. #define KBD_S 0x16
  111. #define KBD_T 0x17
  112. #define KBD_U 0x18
  113. #define KBD_V 0x19
  114. #define KBD_W 0x1A
  115. #define KBD_X 0x1B
  116. #define KBD_Y 0x1C
  117. #define KBD_Z 0x1D
  118. #define KBD_1 0x1E
  119. #define KBD_EXC 0x9E
  120. #define KBD_2 0x1F
  121. #define KBD_ATS 0x9F
  122. #define KBD_3 0x20
  123. #define KBD_HSH 0xA0
  124. #define KBD_4 0x21
  125. #define KBD_DOL 0xA1
  126. #define KBD_5 0x22
  127. #define KBD_PCN 0xA2
  128. #define KBD_6 0x23
  129. #define KBD_HAT 0xA3
  130. #define KBD_7 0x24
  131. #define KBD_AMP 0xA4
  132. #define KBD_8 0x25
  133. #define KBD_AST 0xA5
  134. #define KBD_9 0x26
  135. #define KBD_OPA 0xA6
  136. #define KBD_0 0x27
  137. #define KBD_CPA 0xA7
  138. #define KBD_RET 0x28
  139. #define KBD_ESC 0x29
  140. #define KBD_BSP 0x2A
  141. #define KBD_TAB 0x2B
  142. #define KBD_SPC 0x2C
  143. #define KBD_HYP 0x2D
  144. #define KBD_UND 0xAD
  145. #define KBD_EQU 0x2E
  146. #define KBD_PLS 0xAE
  147. #define KBD_OSQ 0x2F
  148. #define KBD OCU 0xAF
  149. #define KBD_CSQ 0x30
  150. #define KBD CCU 0xB0
  151. #define KBD_BSL 0x31
  152. #define KBD_VBR 0xB1
  153. #define KBD_SEM 0x33
  154. #define KBD_QUO 0x34
  155. #define KBD_DQU 0xB4
  156. #define KBD_BTK 0x35
  157. #define KBD_TIL 0xB5
  158. #define KBD_COM 0x36
  159. #define KBD_DOT 0x37
  160. #define KBD_SLA 0x38
  161. #define KBD_CAP 0x39
  162. #define KBD_F1 0x3A
  163. #define KBD_F2 0x3B
  164. #define KBD_F3 0x3C
  165. #define KBD_F4 0x3D
  166. #define KBD_F5 0x3E
  167. #define KBD_F6 0x3F
  168. #define KBD_F7 0x40
  169. #define KBD_F8 0x41
  170. #define KBD_F9 0x42
  171. #define KBD_F10 0x43
  172. #define KBD_F11 0x44
  173. #define KBD_F12 0x45
  174. #define KBD_PRT 0x46
  175. #define KBD_INS 0x49
  176. #define KBD_HOM 0x4A
  177. #define KBD_PGU 0x4B
  178. #define KBD_DEL 0x4C
  179. #define KBD_END 0x4D
  180. #define KBD_PGD 0x4E
  181. #define KBD_RGT 0x4F
  182. #define KBD_LFT 0x50
  183. #define KBD_DWN 0x51
  184. #define KBD_UP 0x52
  185.  
  186. #define KBD_LCTR 0x01
  187. #define KBD_LSHF 0x02
  188. #define KBD_LALT 0x04
  189. #define KBD_LWIN 0x08
  190. #define KBD_RCTR 0x10
  191. #define KBD_RSHF 0x20
  192. #define KBD_RALT 0x40
  193. #define KBD_RWIN 0x80
  194. /*
  195. Key Index
  196. | 6 | 3 | 0 |24 | 9 |21 |27 |12 |15 |18 |
  197. | 7 | 4 | 1 |25 |10 |22 |28 |13 |16 |19 |
  198. | 8 | 5 | 2 |26 |11 |23 |29 |14 |17 |20 |
  199. |30 |31 |
  200. */
  201. const uint8_t LAYER1[768] PROGMEM = {
  202. // 00 FUNCTION 1
  203. KBD_F2, KBD_F6, KBD_F10, KBD_F1, KBD_F5, KBD_F9, KBD_ESC, KBD_CAP,
  204. KBD_INS, KBD_F4, KBD_F8, KBD_F12, KBD_9, KBD_6, KBD_3, KBD_MIN,
  205. KBD_PLS, KBD_DOT, KBD_EQU, KBD_AST, KBD_PCN, KBD_7, KBD_4, KBD_1,
  206. KBD_F3, KBD_F7, KBD_F11, KBD_8, KBD_5, KBD_2, KBD_NIL, KBD_0,
  207. // 01 FUNCTION 2
  208. KBD_BTK, KBD_END, KBD_HAT, KBD_PGU, KBD_PGD, KBD_ATS, KBD_TAB, KBD_HOM,
  209. KBD_PRT, KBD_OSQ, KBD_OPA, KBD_OCU, KBD_UP, KBD_DWN, KBD_QUO, KBD_UND,
  210. KBD_RGH, KBD_HSH, KBD_DEL, KBD_RET, KBD_BSL, KBD_CSQ, KBD_CPA, KBD_CCU,
  211. KBD_AMP, KBD_EXC, KBD_TIL, KBD_VBR, KBD_LFT, KBD_DQU, DKBD_OL, KBD_NIL,
  212. // 02 QWERTY
  213. KBD_E, KBD_D, KBD_C, KBD_W, KBD_S, KBD_X, KBD_Q, KBD_A,
  214. KBD_Z, KBD_T, KBD_G, KBD_B, KBD_I, KBD_K, KBD_COM, KBD_O,
  215. KBD_L, KBD_DOT, KBD_P, KBD_SEM, KBD_SLA, KBD_Y, KBD_H, KBD_N,
  216. KBD_R, KBD_F, KBD_V, KBD_U, KBD_J, KBD_M, KBD_BSP, KBD_SPC,
  217. // 03 WORKMAN
  218. KBD_R, KBD_H, KBD_M, KBD_D, KBD_S, KBD_X, KBD_Q, KBD_A,
  219. KBD_Z, KBD_B, KBD_G, KBD_V, KBD_U, KBD_E, KBD_COM, KBD_P,
  220. KBD_O, KBD_DOT, KBD_SEM, KBD_I, KBD_SLA, KBD_J, KBD_Y, KBD_K,
  221. KBD_W, KBD_T, KBD_C, KBD_F, KBD_N, KBD_L, KBD_BSP, KBD_SPC,
  222. // 04 DVORAK
  223. KBD_DOT, KBD_E, KBD_J, KBD_COM, KBD_O, KBD_Q, KBD_SLA, KBD_A,
  224. KBD_SEM, KBD_Y, KBD_I, KBD_X, KBD_C, KBD_T, KBD_W, KBD_R,
  225. KBD_N, KBD_V, KBD_L, KBD_S, KBD_Z, KBD_F, KBD_D, KBD_B,
  226. KBD_P, KBD_U, KBD_K, KBD_G, KBD_H, KBD_M, KBD_BSP, KBD_SPC,
  227. // 05 COLEMAK
  228. KBD_F, KBD_S, KBD_C, KBD_W, KBD_R, KBD_X, KBD_Q, KBD_A,
  229. KBD_Z, KBD_G, KBD_D, KBD_B, KBD_U, KBD_E, KBD_COM, KBD_Y,
  230. KBD_I, KBD_DOT, KBD_SEM, KBD_O, KBD_SLA, KBD_J, KBD_H, KBD_K,
  231. KBD_P, KBD_T, KBD_V, KBD_L, KBD_N, KBD_M, KBD_BSP, KBD_SPC,
  232. // 06 MODDH
  233. KBD_F, KBD_S, KBD_C, KBD_W, KBD_R, KBD_X, KBD_Q, KBD_A,
  234. KBD_Z, KBD_B, KBD_G, KBD_V, KBD_U, KBD_E, KBD_COM, KBD_Y,
  235. KBD_I, KBD_DOT, KBD_SEM, KBD_O, KBD_SLA, KBD_J, KBD_K, KBD_M,
  236. KBD_P, KBD_T, KBD_D, KBD_L, KBD_N, KBD_H, KBD_BSP, KBD_SPC,
  237. // 07 HALMAK
  238. KBD_R, KBD_N, KBD_V, KBD_L, KBD_H, KBD_M, KBD_W, KBD_S,
  239. KBD_F, KBD_Z, KBD_COM, KBD_SLA, KBD_U, KBD_E, KBD_X, KBD_D,
  240. KBD_O, KBD_K, KBD_J, KBD_I, KBD_Y, KBD_SEM, KBD_DOT, KBD_G,
  241. KBD_B, KBD_T, KBD_C, KBD_Q, KBD_A, KBD_P, KBD_BSP, KBD_SPC
  242. // 08 RSTHD
  243. KBD_Y, KBD_T, KBD_G, KBD_C, KBD_S, KBD_V, KBD_J, KBD_R,
  244. KBD_SLA, KBD_K, KBD_D, KBD_B, KBD_COM, KBD_A, KBD_DOT, KBD_U,
  245. KBD_I, KBD_SEM, KBD_Q, KBD_O, KBD_BSP, KBD_Z, KBD_M, KBD_X,
  246. KBD_F, KBD_H, KBD_P, KBD_L, KBD_N, KBD_W, KBD_E, KBD_SPC,
  247. // 09 QGMLW
  248. KBD_M, KBD_T, KBD_C, KBD_G, KBD_S, KBD_X, KBD_Q, KBD_D,
  249. KBD_Z, KBD_W, KBD_R, KBD_J, KBD_U, KBD_E, KBD_COM, KBD_B,
  250. KBD_O, KBD_DOT, KBD_SEM, KBD_H, KBD_SLA, KBD_Y, KBD_I, KBD_K,
  251. KBD_L, KBD_N, KBD_V, KBD_F, KBD_A, KBD_P, KBD_BSP, KBD_SPC,
  252. // 10 MALTRON
  253. KBD_Y, KBD_I, KBD_J, KBD_P, KBD_N, KBD_DOT, KBD_Q, KBD_A,
  254. KBD_COM, KBD_B, KBD_F, KBD_SLA, KBD_U, KBD_H, KBD_K, KBD_Z,
  255. KBD_O, KBD_BSP, KBD_L, KBD_R, KBD_X, KBD_V, KBD_D, KBD_SEM,
  256. KBD_C, KBD_S, KBD_G, KBD_M, KBD_T, KBD_W, KBD_E, KBD_SPC,
  257. // 11 CAPEWELL
  258. KBD_W, KBD_R, KBD_C, KBD_Y, KBD_E, KBD_Z, KBD_DOT, KBD_A,
  259. KBD_X, KBD_F, KBD_G, KBD_SEM, KBD_L, KBD_N, KBD_H, KBD_U,
  260. KBD_I, KBD_COM, KBD_Q, KBD_O, KBD_SLA, KBD_J, KBD_B, KBD_K,
  261. KBD_D, KBD_S, KBD_V, KBD_P, KBD_T, KBD_W, KBD_BSP, KBD_SPC
  262. }
  263.  
  264.  
RAW Paste Data