rev1.h 9.8 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118
  1. #ifndef REV1_H
  2. #define REV1_H
  3. #include "quantum.h"
  4. #include "../kbd75.h"
  5. /* LAYOUT
  6. * ┌───┬───┬───┬───┬───┬───┬───┬───┬───┬───┬───┬───┬───┬───┬───┬───┐
  7. * │ │ │ │ │ │ │ │ │ │ │ │ │ │ │ │ │
  8. * ├───┼───┼───┼───┼───┼───┼───┼───┼───┼───┼───┼───┼───┼───┼───┼───┤
  9. * │ │ │ │ │ │ │ │ │ │ │ │ │ │ │ │ │
  10. * ├───┴─┬─┴─┬─┴─┬─┴─┬─┴─┬─┴─┬─┴─┬─┴─┬─┴─┬─┴─┬─┴─┬─┴─┬─┴─┬─┴───┼───┤
  11. * │1.5U │ │ │ │ │ │ │ │ │ │ │ │ │1.5U │ │
  12. * ├─────┴┬──┴┬──┴┬──┴┬──┴┬──┴┬──┴┬──┴┬──┴┬──┴┬──┴┬──┴┬──┴─────┼───┤
  13. * │1.75U │ │ │ │ │ │ │ │ │ │ │ │2.25U │ │
  14. * ├──────┴─┬─┴─┬─┴─┬─┴─┬─┴─┬─┴─┬─┴─┬─┴─┬─┴─┬─┴─┬─┴─┬─┴────┬───┼───┤
  15. * │2.25U │ │ │ │ │ │ │ │ │ │ │1.75U │ │ │
  16. * ├────┬───┴┬──┴─┬─┴───┴──┬┴───┼───┴───┴──┬┴──┬┴──┬┴──┬───┼───┼───┤
  17. * │1.25│1.25│1.25│2.25U │1.25│2.75U │ │ │ │ │ │ │
  18. * └────┴────┴────┴────────┴────┴──────────┴───┴───┴───┴───┴───┴───┘
  19. */
  20. // LAYOUT for all possible switch positions on a KBD75
  21. #define LAYOUT( \
  22. K000, K001, K002, K003, K004, K005, K006, K007, K008, K009, K010, K011, K012, K013, K014, K015, \
  23. K100, K101, K102, K103, K104, K105, K106, K107, K108, K109, K110, K111, K112, K113, K114, K115, \
  24. K200, K202, K203, K204, K205, K206, K207, K208, K209, K210, K211, K212, K213, K214, K215, \
  25. K300, K302, K303, K304, K305, K306, K307, K308, K309, K310, K311, K312, K313, K315, \
  26. K400, K401, K402, K403, K404, K405, K406, K407, K408, K409, K410, K411, K413, K414, K415, \
  27. K500, K501, K503, K504, K506, K508, K510, K511, K512, K513, K514, K515 \
  28. ) { \
  29. { K000, K001, K002, K003, K004, K005, K006, K007, K008, K009, K010, K011, K012, K013, K014, K015 }, \
  30. { K100, K101, K102, K103, K104, K105, K106, K107, K108, K109, K110, K111, K112, K113, K114, K115 }, \
  31. { K200, KC_NO, K202, K203, K204, K205, K206, K207, K208, K209, K210, K211, K212, K213, K214, K215 }, \
  32. { K300, KC_NO, K302, K303, K304, K305, K306, K307, K308, K309, K310, K311, K312, K313, KC_NO, K315 }, \
  33. { K400, K401, K402, K403, K404, K405, K406, K407, K408, K409, K410, K411, KC_NO, K413, K414, K415 }, \
  34. { K500, K501, KC_NO, K503, K504, KC_NO, K506, KC_NO, K508, KC_NO, K510, K511, K512, K513, K514, K515 } \
  35. }
  36. /* 1U bottom row ─────────────────────────── ↓ ─ ↓ ─ ↓
  37. * ┌────┬────┬────┬────────────────────────┬───┬───┬───┬───┬───┬───┐
  38. * │1.25│1.25│1.25│6.25U │1U │1U │1U │1U │1U │1U │
  39. * └────┴────┴────┴────────────────────────┴───┴───┴───┴───┴───┴───┘
  40. */
  41. #define LAYOUT_ansi_1u( \
  42. K000, K001, K002, K003, K004, K005, K006, K007, K008, K009, K010, K011, K012, K013, K014, K015, \
  43. K100, K101, K102, K103, K104, K105, K106, K107, K108, K109, K110, K111, K112, K114, K115, \
  44. K200, K202, K203, K204, K205, K206, K207, K208, K209, K210, K211, K212, K213, K214, K215, \
  45. K300, K302, K303, K304, K305, K306, K307, K308, K309, K310, K311, K312, K313, K315, \
  46. K400, K402, K403, K404, K405, K406, K407, K408, K409, K410, K411, K413, K414, K415, \
  47. K500, K501, K503, K506, K510, K511, K512, K513, K514, K515 \
  48. ) { \
  49. { K000, K001, K002, K003, K004, K005, K006, K007, K008, K009, K010, K011, K012, K013, K014, K015 }, \
  50. { K100, K101, K102, K103, K104, K105, K106, K107, K108, K109, K110, K111, K112, K113, K114, K115 }, \
  51. { K200, KC_NO, K202, K203, K204, K205, K206, K207, K208, K209, K210, K211, K212, K213, K214, K215 }, \
  52. { K300, KC_NO, K302, K303, K304, K305, K306, K307, K308, K309, K310, K311, K312, K313, KC_NO, K315 }, \
  53. { K400, KC_NO, K402, K403, K404, K405, K406, K407, K408, K409, K410, K411, KC_NO, K413, K414, K415 }, \
  54. { K500, K501, KC_NO, K503, KC_NO, KC_NO, K506, KC_NO, KC_NO, KC_NO, K510, K511, K512, K513, K514, K515 } \
  55. }
  56. #define LAYOUT_iso_1u( \
  57. K000, K001, K002, K003, K004, K005, K006, K007, K008, K009, K010, K011, K012, K013, K014, K015, \
  58. K100, K101, K102, K103, K104, K105, K106, K107, K108, K109, K110, K111, K112, K114, K115, \
  59. K200, K202, K203, K204, K205, K206, K207, K208, K209, K210, K211, K212, K213, K313, K215, \
  60. K300, K302, K303, K304, K305, K306, K307, K308, K309, K310, K311, K312, K214, K315, \
  61. K400, K401, K402, K403, K404, K405, K406, K407, K408, K409, K410, K411, K413, K414, K415, \
  62. K500, K501, K503, K506, K510, K511, K512, K513, K514, K515 \
  63. ) { \
  64. { K000, K001, K002, K003, K004, K005, K006, K007, K008, K009, K010, K011, K012, K013, K014, K015 }, \
  65. { K100, K101, K102, K103, K104, K105, K106, K107, K108, K109, K110, K111, K112, KC_NO, K114, K115 }, \
  66. { K200, KC_NO, K202, K203, K204, K205, K206, K207, K208, K209, K210, K211, K212, K213, K214, K215 }, \
  67. { K300, KC_NO, K302, K303, K304, K305, K306, K307, K308, K309, K310, K311, K312, K313, KC_NO, K315 }, \
  68. { K400, K401, K402, K403, K404, K405, K406, K407, K408, K409, K410, K411, KC_NO, K413, K414, K415 }, \
  69. { K500, K501, KC_NO, K503, KC_NO, KC_NO, K506, KC_NO, KC_NO, KC_NO, K510, K511, K512, K513, K514, K515 } \
  70. }
  71. /* normal bottom row ──────────────────────── ↓ ─── ↓
  72. * ┌────┬────┬────┬────────────────────────┬─────┬─────┬───┬───┬───┐
  73. * │1.25│1.25│1.25│6.25U │1.5U │1.5U │1U │1U │1U │
  74. * └────┴────┴────┴────────────────────────┴─────┴─────┴───┴───┴───┘
  75. */
  76. #define LAYOUT_ansi( \
  77. K000, K001, K002, K003, K004, K005, K006, K007, K008, K009, K010, K011, K012, K013, K014, K015, \
  78. K100, K101, K102, K103, K104, K105, K106, K107, K108, K109, K110, K111, K112, K114, K115, \
  79. K200, K202, K203, K204, K205, K206, K207, K208, K209, K210, K211, K212, K213, K214, K215, \
  80. K300, K302, K303, K304, K305, K306, K307, K308, K309, K310, K311, K312, K313, K315, \
  81. K400, K402, K403, K404, K405, K406, K407, K408, K409, K410, K411, K413, K414, K415, \
  82. K500, K501, K503, K506, K510, K512, K513, K514, K515 \
  83. ) { \
  84. { K000, K001, K002, K003, K004, K005, K006, K007, K008, K009, K010, K011, K012, K013, K014, K015 }, \
  85. { K100, K101, K102, K103, K104, K105, K106, K107, K108, K109, K110, K111, K112, KC_NO, K114, K115 }, \
  86. { K200, KC_NO, K202, K203, K204, K205, K206, K207, K208, K209, K210, K211, K212, K213, K214, K215 }, \
  87. { K300, KC_NO, K302, K303, K304, K305, K306, K307, K308, K309, K310, K311, K312, K313, KC_NO, K315 }, \
  88. { K400, KC_NO, K402, K403, K404, K405, K406, K407, K408, K409, K410, K411, KC_NO, K413, K414, K415 }, \
  89. { K500, K501, KC_NO, K503, KC_NO, KC_NO, K506, KC_NO, KC_NO, KC_NO, K510, KC_NO, K512, K513, K514, K515 } \
  90. }
  91. #define LAYOUT_iso( \
  92. K000, K001, K002, K003, K004, K005, K006, K007, K008, K009, K010, K011, K012, K013, K014, K015, \
  93. K100, K101, K102, K103, K104, K105, K106, K107, K108, K109, K110, K111, K112, K114, K115, \
  94. K200, K202, K203, K204, K205, K206, K207, K208, K209, K210, K211, K212, K213, K313, K215, \
  95. K300, K302, K303, K304, K305, K306, K307, K308, K309, K310, K311, K312, K214, K315, \
  96. K400, K401, K402, K403, K404, K405, K406, K407, K408, K409, K410, K411, K413, K414, K415, \
  97. K500, K501, K503, K506, K510, K512, K513, K514, K515 \
  98. ) { \
  99. { K000, K001, K002, K003, K004, K005, K006, K007, K008, K009, K010, K011, K012, K013, K014, K015 }, \
  100. { K100, K101, K102, K103, K104, K105, K106, K107, K108, K109, K110, K111, K112, KC_NO, K114, K115 }, \
  101. { K200, KC_NO, K202, K203, K204, K205, K206, K207, K208, K209, K210, K211, K212, K213, K214, K215 }, \
  102. { K300, KC_NO, K302, K303, K304, K305, K306, K307, K308, K309, K310, K311, K312, K313, KC_NO, K315 }, \
  103. { K400, K401, K402, K403, K404, K405, K406, K407, K408, K409, K410, K411, KC_NO, K413, K414, K415 }, \
  104. { K500, K501, KC_NO, K503, KC_NO, KC_NO, K506, KC_NO, KC_NO, KC_NO, K510, KC_NO, K512, K513, K514, K515 } \
  105. }
  106. #endif