|
|
|
@ -18,24 +18,153 @@ |
|
|
|
|
|
|
|
|
|
#include "quantum.h" |
|
|
|
|
|
|
|
|
|
/* This is a shortcut to help you visually see your layout.
|
|
|
|
|
* |
|
|
|
|
* The first section contains all of the arguments representing the physical |
|
|
|
|
* layout of the board and position of the keys. |
|
|
|
|
* |
|
|
|
|
* The second converts the arguments into a two-dimensional array which |
|
|
|
|
* represents the switch matrix. |
|
|
|
|
#define ___ KC_NO |
|
|
|
|
|
|
|
|
|
/*
|
|
|
|
|
* ┌───┬───┬───┬───┬───┬───┬───┬───┬───┬───┬───┬───┬───┬───┬───┬───┐ ┌───────┐ |
|
|
|
|
* │00 │01 │02 │03 │04 │05 │06 │07 │08 │09 │0A │0B │0C │0D │0E │1E │ │0E │ 2u Backspace |
|
|
|
|
* ├───┴─┬─┴─┬─┴─┬─┴─┬─┴─┬─┴─┬─┴─┬─┴─┬─┴─┬─┴─┬─┴─┬─┴─┬─┴─┬─┴───┼───┤ └─┬─────┤ |
|
|
|
|
* │10 │11 │12 │13 │14 │15 │16 │17 │18 │19 │1A │1B │1C │1D │2E │ │ │ |
|
|
|
|
* 2.25u ├─────┴┬──┴┬──┴┬──┴┬──┴┬──┴┬──┴┬──┴┬──┴┬──┴┬──┴┬──┴┬──┴─────┼───┤ ┌──┴┐2D │ ISO Enter |
|
|
|
|
* LShift │20 │21 │22 │23 │24 │25 │26 │27 │28 │29 │2A │2B │2D │3E │ │2C │ │ |
|
|
|
|
* ┌────────┐ ├────┬─┴─┬─┴─┬─┴─┬─┴─┬─┴─┬─┴─┬─┴─┬─┴─┬─┴─┬─┴─┬─┴─┬─┴────┬───┼───┤ └───┴────┘ |
|
|
|
|
* │30 │ │30 │31 │32 │33 │34 │35 │36 │37 │38 │39 │3A │3B │3C │3D │4E │ |
|
|
|
|
* └────────┘ ├────┼───┴┬──┴─┬─┴───┴───┴┬──┴─┬─┴───┴──┬┴───┼───┴┬─┬───┼───┼───┤ |
|
|
|
|
* │40 │41 │42 │43 │46 │48 │49 │4A │ │4B │4C │4D │ 2.75u/1.25u/2.25u Split Space |
|
|
|
|
* └────┴────┴────┴──────────┴────┴────────┴────┴────┘ └───┴───┴───┘ |
|
|
|
|
* ┌────┬────┬────┬────────┬────┬──────────┬────┬────┐ |
|
|
|
|
* │40 │41 │42 │43 │46 │48 │49 │4A │ 2.25u/1.25u/2.75u Split Space |
|
|
|
|
* └────┴────┴────┴────────┴────┴──────────┴────┴────┘ |
|
|
|
|
* ┌────┬────┬────┬────────────────────────┬────┬────┐ |
|
|
|
|
* │40 │41 │42 │46 │49 │4A │ Standard |
|
|
|
|
* └────┴────┴────┴────────────────────────┴────┴────┘ |
|
|
|
|
* ┌─────┬───┬─────┬───────────────────────────┬─────┐ |
|
|
|
|
* │40 │41 │42 │46 │4A │ Tsangan |
|
|
|
|
* └─────┴───┴─────┴───────────────────────────┴─────┘ |
|
|
|
|
*/ |
|
|
|
|
|
|
|
|
|
#define LAYOUT_all( \ |
|
|
|
|
k000, k001, k002, k003, k004, k005, k006, k007, k008, k009, k010, k011, k012, k013, k014, k114, \
|
|
|
|
|
k100, k101, k102, k103, k104, k105, k106, k107, k108, k109, k110, k111, k112, k113, k214, \
|
|
|
|
|
k200, k201, k202, k203, k204, k205, k206, k207, k208, k209, k210, k211, k212, k213, k314, \
|
|
|
|
|
k300, k301, k302, k303, k304, k305, k306, k307, k308, k309, k310, k311, k312, k313, k414, \
|
|
|
|
|
k400, k401, k402, k403, k406, k408, k409, k410, k411, k412, k413 \
|
|
|
|
|
) { \
|
|
|
|
|
{ k000, k001, k002, k003, k004, k005, k006, k007, k008, k009, k010, k011, k012, k013, k014 }, \
|
|
|
|
|
{ k100, k101, k102, k103, k104, k105, k106, k107, k108, k109, k110, k111, k112, k113, k114 }, \
|
|
|
|
|
{ k200, k201, k202, k203, k204, k205, k206, k207, k208, k209, k210, k211, k212, k213, k214 }, \
|
|
|
|
|
{ k300, k301, k302, k303, k304, k305, k306, k307, k308, k309, k310, k311, k312, k313, k314 }, \
|
|
|
|
|
{ k400, k401, k402, k403, KC_NO,KC_NO,k406,KC_NO, k408, k409, k410, k411, k412, k413, k414 } \
|
|
|
|
|
k00, k01, k02, k03, k04, k05, k06, k07, k08, k09, k0A, k0B, k0C, k0D, k0E, k1E, \
|
|
|
|
|
k10, k11, k12, k13, k14, k15, k16, k17, k18, k19, k1A, k1B, k1C, k1D, k2E, \
|
|
|
|
|
k20, k21, k22, k23, k24, k25, k26, k27, k28, k29, k2A, k2B, k2C, k2D, k3E, \
|
|
|
|
|
k30, k31, k32, k33, k34, k35, k36, k37, k38, k39, k3A, k3B, k3C, k3D, k4E, \
|
|
|
|
|
k40, k41, k42, k43, k46, k48, k49, k4A, k4B, k4C, k4D \
|
|
|
|
|
) { \
|
|
|
|
|
{ k00, k01, k02, k03, k04, k05, k06, k07, k08, k09, k0A, k0B, k0C, k0D, k0E }, \
|
|
|
|
|
{ k10, k11, k12, k13, k14, k15, k16, k17, k18, k19, k1A, k1B, k1C, k1D, k1E }, \
|
|
|
|
|
{ k20, k21, k22, k23, k24, k25, k26, k27, k28, k29, k2A, k2B, k2C, k2D, k2E }, \
|
|
|
|
|
{ k30, k31, k32, k33, k34, k35, k36, k37, k38, k39, k3A, k3B, k3C, k3D, k3E }, \
|
|
|
|
|
{ k40, k41, k42, k43, ___, ___, k46, ___, k48, k49, k4A, k4B, k4C, k4D, k4E } \
|
|
|
|
|
} |
|
|
|
|
|
|
|
|
|
#define LAYOUT_65_ansi_blocker( \ |
|
|
|
|
k00, k01, k02, k03, k04, k05, k06, k07, k08, k09, k0A, k0B, k0C, k0E, k1E, \
|
|
|
|
|
k10, k11, k12, k13, k14, k15, k16, k17, k18, k19, k1A, k1B, k1C, k1D, k2E, \
|
|
|
|
|
k20, k21, k22, k23, k24, k25, k26, k27, k28, k29, k2A, k2B, k2D, k3E, \
|
|
|
|
|
k30, k32, k33, k34, k35, k36, k37, k38, k39, k3A, k3B, k3C, k3D, k4E, \
|
|
|
|
|
k40, k41, k42, k46, k49, k4A, k4B, k4C, k4D \
|
|
|
|
|
) { \
|
|
|
|
|
{ k00, k01, k02, k03, k04, k05, k06, k07, k08, k09, k0A, k0B, k0C, ___, k0E }, \
|
|
|
|
|
{ k10, k11, k12, k13, k14, k15, k16, k17, k18, k19, k1A, k1B, k1C, k1D, k1E }, \
|
|
|
|
|
{ k20, k21, k22, k23, k24, k25, k26, k27, k28, k29, k2A, k2B, ___, k2D, k2E }, \
|
|
|
|
|
{ k30, ___, k32, k33, k34, k35, k36, k37, k38, k39, k3A, k3B, k3C, k3D, k3E }, \
|
|
|
|
|
{ k40, k41, k42, ___, ___, ___, k46, ___, ___, k49, k4A, k4B, k4C, k4D, k4E } \
|
|
|
|
|
} |
|
|
|
|
|
|
|
|
|
#define LAYOUT_65_ansi_blocker_split_bs( \ |
|
|
|
|
k00, k01, k02, k03, k04, k05, k06, k07, k08, k09, k0A, k0B, k0C, k0D, k0E, k1E, \
|
|
|
|
|
k10, k11, k12, k13, k14, k15, k16, k17, k18, k19, k1A, k1B, k1C, k1D, k2E, \
|
|
|
|
|
k20, k21, k22, k23, k24, k25, k26, k27, k28, k29, k2A, k2B, k2D, k3E, \
|
|
|
|
|
k30, k32, k33, k34, k35, k36, k37, k38, k39, k3A, k3B, k3C, k3D, k4E, \
|
|
|
|
|
k40, k41, k42, k46, k49, k4A, k4B, k4C, k4D \
|
|
|
|
|
) { \
|
|
|
|
|
{ k00, k01, k02, k03, k04, k05, k06, k07, k08, k09, k0A, k0B, k0C, k0D, k0E }, \
|
|
|
|
|
{ k10, k11, k12, k13, k14, k15, k16, k17, k18, k19, k1A, k1B, k1C, k1D, k1E }, \
|
|
|
|
|
{ k20, k21, k22, k23, k24, k25, k26, k27, k28, k29, k2A, k2B, ___, k2D, k2E }, \
|
|
|
|
|
{ k30, ___, k32, k33, k34, k35, k36, k37, k38, k39, k3A, k3B, k3C, k3D, k3E }, \
|
|
|
|
|
{ k40, k41, k42, ___, ___, ___, k46, ___, ___, k49, k4A, k4B, k4C, k4D, k4E } \
|
|
|
|
|
} |
|
|
|
|
|
|
|
|
|
#define LAYOUT_65_ansi_blocker_tsangan( \ |
|
|
|
|
k00, k01, k02, k03, k04, k05, k06, k07, k08, k09, k0A, k0B, k0C, k0E, k1E, \
|
|
|
|
|
k10, k11, k12, k13, k14, k15, k16, k17, k18, k19, k1A, k1B, k1C, k1D, k2E, \
|
|
|
|
|
k20, k21, k22, k23, k24, k25, k26, k27, k28, k29, k2A, k2B, k2D, k3E, \
|
|
|
|
|
k30, k32, k33, k34, k35, k36, k37, k38, k39, k3A, k3B, k3C, k3D, k4E, \
|
|
|
|
|
k40, k41, k42, k46, k4A, k4B, k4C, k4D \
|
|
|
|
|
) { \
|
|
|
|
|
{ k00, k01, k02, k03, k04, k05, k06, k07, k08, k09, k0A, k0B, k0C, ___, k0E }, \
|
|
|
|
|
{ k10, k11, k12, k13, k14, k15, k16, k17, k18, k19, k1A, k1B, k1C, k1D, k1E }, \
|
|
|
|
|
{ k20, k21, k22, k23, k24, k25, k26, k27, k28, k29, k2A, k2B, ___, k2D, k2E }, \
|
|
|
|
|
{ k30, ___, k32, k33, k34, k35, k36, k37, k38, k39, k3A, k3B, k3C, k3D, k3E }, \
|
|
|
|
|
{ k40, k41, k42, ___, ___, ___, k46, ___, ___, ___, k4A, k4B, k4C, k4D, k4E } \
|
|
|
|
|
} |
|
|
|
|
|
|
|
|
|
#define LAYOUT_65_ansi_blocker_tsangan_split_bs( \ |
|
|
|
|
k00, k01, k02, k03, k04, k05, k06, k07, k08, k09, k0A, k0B, k0C, k0D, k0E, k1E, \
|
|
|
|
|
k10, k11, k12, k13, k14, k15, k16, k17, k18, k19, k1A, k1B, k1C, k1D, k2E, \
|
|
|
|
|
k20, k21, k22, k23, k24, k25, k26, k27, k28, k29, k2A, k2B, k2D, k3E, \
|
|
|
|
|
k30, k32, k33, k34, k35, k36, k37, k38, k39, k3A, k3B, k3C, k3D, k4E, \
|
|
|
|
|
k40, k41, k42, k46, k4A, k4B, k4C, k4D \
|
|
|
|
|
) { \
|
|
|
|
|
{ k00, k01, k02, k03, k04, k05, k06, k07, k08, k09, k0A, k0B, k0C, k0D, k0E }, \
|
|
|
|
|
{ k10, k11, k12, k13, k14, k15, k16, k17, k18, k19, k1A, k1B, k1C, k1D, k1E }, \
|
|
|
|
|
{ k20, k21, k22, k23, k24, k25, k26, k27, k28, k29, k2A, k2B, ___, k2D, k2E }, \
|
|
|
|
|
{ k30, ___, k32, k33, k34, k35, k36, k37, k38, k39, k3A, k3B, k3C, k3D, k3E }, \
|
|
|
|
|
{ k40, k41, k42, ___, ___, ___, k46, ___, ___, ___, k4A, k4B, k4C, k4D, k4E } \
|
|
|
|
|
} |
|
|
|
|
|
|
|
|
|
#define LAYOUT_65_iso_blocker( \ |
|
|
|
|
k00, k01, k02, k03, k04, k05, k06, k07, k08, k09, k0A, k0B, k0C, k0E, k1E, \
|
|
|
|
|
k10, k11, k12, k13, k14, k15, k16, k17, k18, k19, k1A, k1B, k1C, k2E, \
|
|
|
|
|
k20, k21, k22, k23, k24, k25, k26, k27, k28, k29, k2A, k2B, k2C, k2D, k3E, \
|
|
|
|
|
k30, k31, k32, k33, k34, k35, k36, k37, k38, k39, k3A, k3B, k3C, k3D, k4E, \
|
|
|
|
|
k40, k41, k42, k46, k49, k4A, k4B, k4C, k4D \
|
|
|
|
|
) { \
|
|
|
|
|
{ k00, k01, k02, k03, k04, k05, k06, k07, k08, k09, k0A, k0B, k0C, ___, k0E }, \
|
|
|
|
|
{ k10, k11, k12, k13, k14, k15, k16, k17, k18, k19, k1A, k1B, k1C, ___, k1E }, \
|
|
|
|
|
{ k20, k21, k22, k23, k24, k25, k26, k27, k28, k29, k2A, k2B, k2C, k2D, k2E }, \
|
|
|
|
|
{ k30, k31, k32, k33, k34, k35, k36, k37, k38, k39, k3A, k3B, k3C, k3D, k3E }, \
|
|
|
|
|
{ k40, k41, k42, ___, ___, ___, k46, ___, ___, k49, k4A, k4B, k4C, k4D, k4E } \
|
|
|
|
|
} |
|
|
|
|
|
|
|
|
|
#define LAYOUT_65_iso_blocker_split_bs( \ |
|
|
|
|
k00, k01, k02, k03, k04, k05, k06, k07, k08, k09, k0A, k0B, k0C, k0D, k0E, k1E, \
|
|
|
|
|
k10, k11, k12, k13, k14, k15, k16, k17, k18, k19, k1A, k1B, k1C, k2E, \
|
|
|
|
|
k20, k21, k22, k23, k24, k25, k26, k27, k28, k29, k2A, k2B, k2C, k2D, k3E, \
|
|
|
|
|
k30, k31, k32, k33, k34, k35, k36, k37, k38, k39, k3A, k3B, k3C, k3D, k4E, \
|
|
|
|
|
k40, k41, k42, k46, k49, k4A, k4B, k4C, k4D \
|
|
|
|
|
) { \
|
|
|
|
|
{ k00, k01, k02, k03, k04, k05, k06, k07, k08, k09, k0A, k0B, k0C, k0D, k0E }, \
|
|
|
|
|
{ k10, k11, k12, k13, k14, k15, k16, k17, k18, k19, k1A, k1B, k1C, ___, k1E }, \
|
|
|
|
|
{ k20, k21, k22, k23, k24, k25, k26, k27, k28, k29, k2A, k2B, k2C, k2D, k2E }, \
|
|
|
|
|
{ k30, k31, k32, k33, k34, k35, k36, k37, k38, k39, k3A, k3B, k3C, k3D, k3E }, \
|
|
|
|
|
{ k40, k41, k42, ___, ___, ___, k46, ___, ___, k49, k4A, k4B, k4C, k4D, k4E } \
|
|
|
|
|
} |
|
|
|
|
|
|
|
|
|
#define LAYOUT_65_iso_blocker_tsangan( \ |
|
|
|
|
k00, k01, k02, k03, k04, k05, k06, k07, k08, k09, k0A, k0B, k0C, k0E, k1E, \
|
|
|
|
|
k10, k11, k12, k13, k14, k15, k16, k17, k18, k19, k1A, k1B, k1C, k2E, \
|
|
|
|
|
k20, k21, k22, k23, k24, k25, k26, k27, k28, k29, k2A, k2B, k2C, k2D, k3E, \
|
|
|
|
|
k30, k31, k32, k33, k34, k35, k36, k37, k38, k39, k3A, k3B, k3C, k3D, k4E, \
|
|
|
|
|
k40, k41, k42, k46, k4A, k4B, k4C, k4D \
|
|
|
|
|
) { \
|
|
|
|
|
{ k00, k01, k02, k03, k04, k05, k06, k07, k08, k09, k0A, k0B, k0C, ___, k0E }, \
|
|
|
|
|
{ k10, k11, k12, k13, k14, k15, k16, k17, k18, k19, k1A, k1B, k1C, ___, k1E }, \
|
|
|
|
|
{ k20, k21, k22, k23, k24, k25, k26, k27, k28, k29, k2A, k2B, k2C, k2D, k2E }, \
|
|
|
|
|
{ k30, k31, k32, k33, k34, k35, k36, k37, k38, k39, k3A, k3B, k3C, k3D, k3E }, \
|
|
|
|
|
{ k40, k41, k42, ___, ___, ___, k46, ___, ___, ___, k4A, k4B, k4C, k4D, k4E } \
|
|
|
|
|
} |
|
|
|
|
|
|
|
|
|
#define LAYOUT_65_iso_blocker_tsangan_split_bs( \ |
|
|
|
|
k00, k01, k02, k03, k04, k05, k06, k07, k08, k09, k0A, k0B, k0C, k0D, k0E, k1E, \
|
|
|
|
|
k10, k11, k12, k13, k14, k15, k16, k17, k18, k19, k1A, k1B, k1C, k2E, \
|
|
|
|
|
k20, k21, k22, k23, k24, k25, k26, k27, k28, k29, k2A, k2B, k2C, k2D, k3E, \
|
|
|
|
|
k30, k31, k32, k33, k34, k35, k36, k37, k38, k39, k3A, k3B, k3C, k3D, k4E, \
|
|
|
|
|
k40, k41, k42, k46, k4A, k4B, k4C, k4D \
|
|
|
|
|
) { \
|
|
|
|
|
{ k00, k01, k02, k03, k04, k05, k06, k07, k08, k09, k0A, k0B, k0C, k0D, k0E }, \
|
|
|
|
|
{ k10, k11, k12, k13, k14, k15, k16, k17, k18, k19, k1A, k1B, k1C, ___, k1E }, \
|
|
|
|
|
{ k20, k21, k22, k23, k24, k25, k26, k27, k28, k29, k2A, k2B, k2C, k2D, k2E }, \
|
|
|
|
|
{ k30, k31, k32, k33, k34, k35, k36, k37, k38, k39, k3A, k3B, k3C, k3D, k3E }, \
|
|
|
|
|
{ k40, k41, k42, ___, ___, ___, k46, ___, ___, ___, k4A, k4B, k4C, k4D, k4E } \
|
|
|
|
|
} |
|
|
|
|