v3.h 2.4 KB

1234567891011121314151617181920212223242526272829303132333435363738394041424344454647484950515253545556575859606162636465
  1. #pragma once
  2. #include "sk.h"
  3. #include "quantum.h"
  4. #define LAYOUT_all( \
  5. L00, L01, L02, L03, L04, L05, L06, L46, R46, R06, R05, R04, R03, R02, R01, R00, \
  6. L10, L11, L12, L13, L14, L15, L16, R16, R15, R14, R13, R12, R11, R10, \
  7. L20, L21, L22, L23, L24, L25, L26, R26, R25, R24, R23, R22, R21, R20, \
  8. L30, L31, L32, L33, L34, L35, L36, R36, R35, R34, R33, R32, R31, R30, \
  9. L40, L41, L42, L43, L44, L45, R45, R44, R43, R42, R41, R40, \
  10. L51, L52, R52, R51, \
  11. L50, L53, L54, R54, R53, R50, \
  12. L55, L56, R56, R55 \
  13. ) { \
  14. {L00, L01, L02, L03, L04, L05, L06, }, \
  15. {L10, L11, L12, L13, L14, L15, L16, }, \
  16. {L20, L21, L22, L23, L24, L25, L26, }, \
  17. {L30, L31, L32, L33, L34, L35, L36, }, \
  18. {L40, L41, L42, L43, L44, L45, L46, }, \
  19. {L50, L51, L52, L53, L54, L55, L56, }, \
  20. {R00, R01, R02, R03, R04, R05, R06, }, \
  21. {R10, R11, R12, R13, R14, R15, R16, }, \
  22. {R20, R21, R22, R23, R24, R25, R26, }, \
  23. {R30, R31, R32, R33, R34, R35, R36, }, \
  24. {R40, R41, R42, R43, R44, R45, R46, }, \
  25. {R50, R51, R52, R53, R54, R55, R56 } \
  26. }
  27. #define LAYOUT_left_half_only(\
  28. L00, L01, L02, L03, L04, L05, L06, L46, \
  29. L10, L11, L12, L13, L14, L15, L16, \
  30. L20, L21, L22, L23, L24, L25, L26, \
  31. L30, L31, L32, L33, L34, L35, L36, \
  32. L40, L41, L42, L43, L44, L45, \
  33. L51, L52, \
  34. L50, L53, L54, \
  35. L55, L56 \
  36. ) { \
  37. {L00, L01, L02, L03, L04, L05, L06, }, \
  38. {L10, L11, L12, L13, L14, L15, L16, }, \
  39. {L20, L21, L22, L23, L24, L25, L26, }, \
  40. {L30, L31, L32, L33, L34, L35, L36, }, \
  41. {L40, L41, L42, L43, L44, L45, L46, }, \
  42. {L50, L51, L52, L53, L54, L55, L56 } \
  43. }
  44. #define LAYOUT_right_half_only( \
  45. R46, R06, R05, R04, R03, R02, R01, R00, \
  46. R16, R15, R14, R13, R12, R11, R10, \
  47. R26, R25, R24, R23, R22, R21, R20, \
  48. R36, R35, R34, R33, R32, R31, R30, \
  49. R45, R44, R43, R42, R41, R40, \
  50. R52, R51, \
  51. R54, R53, R50, \
  52. R56, R55 \
  53. ) { \
  54. {R00, R01, R02, R03, R04, R05, R06, }, \
  55. {R10, R11, R12, R13, R14, R15, R16, }, \
  56. {R20, R21, R22, R23, R24, R25, R26, }, \
  57. {R30, R31, R32, R33, R34, R35, R36, }, \
  58. {R40, R41, R42, R43, R44, R45, R46, }, \
  59. {R50, R51, R52, R53, R54, R55, R56 } \
  60. }