PlatformIO package of the Teensy core framework compatible with GCC 10 & C++20
Vous ne pouvez pas sélectionner plus de 25 sujets Les noms de sujets doivent commencer par une lettre ou un nombre, peuvent contenir des tirets ('-') et peuvent comporter jusqu'à 35 caractères.

keylayouts.c 3.6KB

il y a 3 ans
123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566
  1. #include <avr/pgmspace.h>
  2. #include <stdint.h>
  3. #include "keylayouts.h"
  4. #ifdef M
  5. #undef M
  6. #endif
  7. #define M(n) ((n) & KEYCODE_MASK)
  8. const KEYCODE_TYPE PROGMEM keycodes_ascii[] = {
  9. M(ASCII_20), M(ASCII_21), M(ASCII_22), M(ASCII_23),
  10. M(ASCII_24), M(ASCII_25), M(ASCII_26), M(ASCII_27),
  11. M(ASCII_28), M(ASCII_29), M(ASCII_2A), M(ASCII_2B),
  12. M(ASCII_2C), M(ASCII_2D), M(ASCII_2E), M(ASCII_2F),
  13. M(ASCII_30), M(ASCII_31), M(ASCII_32), M(ASCII_33),
  14. M(ASCII_34), M(ASCII_35), M(ASCII_36), M(ASCII_37),
  15. M(ASCII_38), M(ASCII_39), M(ASCII_3A), M(ASCII_3B),
  16. M(ASCII_3C), M(ASCII_3D), M(ASCII_3E), M(ASCII_3F),
  17. M(ASCII_40), M(ASCII_41), M(ASCII_42), M(ASCII_43),
  18. M(ASCII_44), M(ASCII_45), M(ASCII_46), M(ASCII_47),
  19. M(ASCII_48), M(ASCII_49), M(ASCII_4A), M(ASCII_4B),
  20. M(ASCII_4C), M(ASCII_4D), M(ASCII_4E), M(ASCII_4F),
  21. M(ASCII_50), M(ASCII_51), M(ASCII_52), M(ASCII_53),
  22. M(ASCII_54), M(ASCII_55), M(ASCII_56), M(ASCII_57),
  23. M(ASCII_58), M(ASCII_59), M(ASCII_5A), M(ASCII_5B),
  24. M(ASCII_5C), M(ASCII_5D), M(ASCII_5E), M(ASCII_5F),
  25. M(ASCII_60), M(ASCII_61), M(ASCII_62), M(ASCII_63),
  26. M(ASCII_64), M(ASCII_65), M(ASCII_66), M(ASCII_67),
  27. M(ASCII_68), M(ASCII_69), M(ASCII_6A), M(ASCII_6B),
  28. M(ASCII_6C), M(ASCII_6D), M(ASCII_6E), M(ASCII_6F),
  29. M(ASCII_70), M(ASCII_71), M(ASCII_72), M(ASCII_73),
  30. M(ASCII_74), M(ASCII_75), M(ASCII_76), M(ASCII_77),
  31. M(ASCII_78), M(ASCII_79), M(ASCII_7A), M(ASCII_7B),
  32. M(ASCII_7C), M(ASCII_7D), M(ASCII_7E), M(ASCII_7F)
  33. };
  34. #ifdef ISO_8859_1_A0
  35. const KEYCODE_TYPE PROGMEM keycodes_iso_8859_1[] = {
  36. M(ISO_8859_1_A0), M(ISO_8859_1_A1), M(ISO_8859_1_A2), M(ISO_8859_1_A3),
  37. M(ISO_8859_1_A4), M(ISO_8859_1_A5), M(ISO_8859_1_A6), M(ISO_8859_1_A7),
  38. M(ISO_8859_1_A8), M(ISO_8859_1_A9), M(ISO_8859_1_AA), M(ISO_8859_1_AB),
  39. M(ISO_8859_1_AC), M(ISO_8859_1_AD), M(ISO_8859_1_AE), M(ISO_8859_1_AF),
  40. M(ISO_8859_1_B0), M(ISO_8859_1_B1), M(ISO_8859_1_B2), M(ISO_8859_1_B3),
  41. M(ISO_8859_1_B4), M(ISO_8859_1_B5), M(ISO_8859_1_B6), M(ISO_8859_1_B7),
  42. M(ISO_8859_1_B8), M(ISO_8859_1_B9), M(ISO_8859_1_BA), M(ISO_8859_1_BB),
  43. M(ISO_8859_1_BC), M(ISO_8859_1_BD), M(ISO_8859_1_BE), M(ISO_8859_1_BF),
  44. M(ISO_8859_1_C0), M(ISO_8859_1_C1), M(ISO_8859_1_C2), M(ISO_8859_1_C3),
  45. M(ISO_8859_1_C4), M(ISO_8859_1_C5), M(ISO_8859_1_C6), M(ISO_8859_1_C7),
  46. M(ISO_8859_1_C8), M(ISO_8859_1_C9), M(ISO_8859_1_CA), M(ISO_8859_1_CB),
  47. M(ISO_8859_1_CC), M(ISO_8859_1_CD), M(ISO_8859_1_CE), M(ISO_8859_1_CF),
  48. M(ISO_8859_1_D0), M(ISO_8859_1_D1), M(ISO_8859_1_D2), M(ISO_8859_1_D3),
  49. M(ISO_8859_1_D4), M(ISO_8859_1_D5), M(ISO_8859_1_D6), M(ISO_8859_1_D7),
  50. M(ISO_8859_1_D8), M(ISO_8859_1_D9), M(ISO_8859_1_DA), M(ISO_8859_1_DB),
  51. M(ISO_8859_1_DC), M(ISO_8859_1_DD), M(ISO_8859_1_DE), M(ISO_8859_1_DF),
  52. M(ISO_8859_1_E0), M(ISO_8859_1_E1), M(ISO_8859_1_E2), M(ISO_8859_1_E3),
  53. M(ISO_8859_1_E4), M(ISO_8859_1_E5), M(ISO_8859_1_E6), M(ISO_8859_1_E7),
  54. M(ISO_8859_1_E8), M(ISO_8859_1_E9), M(ISO_8859_1_EA), M(ISO_8859_1_EB),
  55. M(ISO_8859_1_EC), M(ISO_8859_1_ED), M(ISO_8859_1_EE), M(ISO_8859_1_EF),
  56. M(ISO_8859_1_F0), M(ISO_8859_1_F1), M(ISO_8859_1_F2), M(ISO_8859_1_F3),
  57. M(ISO_8859_1_F4), M(ISO_8859_1_F5), M(ISO_8859_1_F6), M(ISO_8859_1_F7),
  58. M(ISO_8859_1_F8), M(ISO_8859_1_F9), M(ISO_8859_1_FA), M(ISO_8859_1_FB),
  59. M(ISO_8859_1_FC), M(ISO_8859_1_FD), M(ISO_8859_1_FE), M(ISO_8859_1_FF)
  60. };
  61. #endif // ISO_8859_1_A0