summaryrefslogtreecommitdiffstats
path: root/keyboards/lm_keyboard/lm60n/lm60n.h
diff options
context:
space:
mode:
Diffstat (limited to 'keyboards/lm_keyboard/lm60n/lm60n.h')
-rw-r--r--keyboards/lm_keyboard/lm60n/lm60n.h204
1 files changed, 204 insertions, 0 deletions
diff --git a/keyboards/lm_keyboard/lm60n/lm60n.h b/keyboards/lm_keyboard/lm60n/lm60n.h
new file mode 100644
index 0000000000..31ac7b177a
--- /dev/null
+++ b/keyboards/lm_keyboard/lm60n/lm60n.h
@@ -0,0 +1,204 @@
+/* Copyright 2021 gkeyboard
+ *
+ * This program is free software: you can redistribute it and/or modify
+ * it under the terms of the GNU General Public License as published by
+ * the Free Software Foundation, either version 2 of the License, or
+ * (at your option) any later version.
+ *
+ * This program is distributed in the hope that it will be useful,
+ * but WITHOUT ANY WARRANTY; without even the implied warranty of
+ * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
+ * GNU General Public License for more details.
+ *
+ * You should have received a copy of the GNU General Public License
+ * along with this program. If not, see <http://www.gnu.org/licenses/>.
+ */
+
+#pragma once
+
+#include "quantum.h"
+
+#define XXX KC_NO
+
+/* 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.
+ */
+
+/* LAYOUT_ansi
+ * ┌───┬───┬───┬───┬───┬───┬───┬───┬───┬───┬───┬───┬───┬───────┐ ┌───┬───┬───┬───┐
+ * │00 │01 │02 │03 │04 │05 │06 │07 │08 │09 │0a │0b │0c │0e │ |68 |69 |6a |6b |
+ * ├───┴─┬─┴─┬─┴─┬─┴─┬─┴─┬─┴─┬─┴─┬─┴─┬─┴─┬─┴─┬─┴─┬─┴─┬─┴─┬─────┤ ├───┼───┼───┼───┤
+ * │10 │11 │12 │13 │14 │15 │16 │17 │18 │19 │1a │1b │1c │1d │ |58 |59 |5a |5b |
+ * ├─────┴┬──┴┬──┴┬──┴┬──┴┬──┴┬──┴┬──┴┬──┴┬──┴┬──┴┬──┴┬──┴─────┤ ├───┼───┼───┤ |
+ * │20 │21 │22 │23 │24 │25 │26 │27 │28 │29 │2a │2b │2d │ |5c |5d |5e | |
+ * ├──────┴─┬─┴─┬─┴─┬─┴─┬─┴─┬─┴─┬─┴─┬─┴─┬─┴─┬─┴─┬─┴─┬─┴────────┤ ├───┼───┼───┼───┤
+ * │30 │32 │33 │34 │35 │36 │37 │38 │39 │3a │3b │3d | |48 |49 |4a |4b |
+ * ├────┬───┴┬──┴─┬─┴───┴───┴───┴───┴───┴──┬┴───┼───┴┬────┬────┤ ├───┴───┼───┤ |
+ * │40 │41 │42 │43 │44 │45 │46 │47 │ |4c |4d | |
+ * └────┴────┴────┴────────────────────────┴────┴────┴────┴────┘ └───────┴───┴───┘
+*/
+#define LAYOUT_ansi( \
+ k00, k01, k02, k03, k04, k05, k06, k07, k08, k09, k0a, k0b, k0c, k0e, k68, k69, k6a, k6b, \
+ k10, k11, k12, k13, k14, k15, k16, k17, k18, k19, k1a, k1b, k1c, k1d, k58, k59, k5a, k5b, \
+ k20, k21, k22, k23, k24, k25, k26, k27, k28, k29, k2a, k2b, k2d, k5c, k5d, k5e, \
+ k30, k32, k33, k34, k35, k36, k37, k38, k39, k3a, k3b, k3d, k48, k49, k4a, k4b, \
+ k40, k41, k42, k43, k44, k45, k46, k47, k4c, k4d \
+) { \
+ { k00, k01, k02, k03, k04, k05, k06, k07, k08, k09, k0a, k0b, k0c, XXX, k0e }, \
+ { k10, k11, k12, k13, k14, k15, k16, k17, k18, k19, k1a, k1b, k1c, k1d, XXX }, \
+ { k20, k21, k22, k23, k24, k25, k26, k27, k28, k29, k2a, k2b, XXX, k2d, XXX }, \
+ { k30, XXX, k32, k33, k34, k35, k36, k37, k38, k39, k3a, k3b, XXX, k3d, XXX }, \
+ { k40, k41, k42, k43, k44, k45, k46, k47, k48, k49, k4a, k4b, k4c, k4d, XXX }, \
+ { XXX, XXX, XXX, XXX, XXX, XXX, XXX, XXX, k58, k59, k5a, k5b, k5c, k5d, k5e }, \
+ { XXX, XXX, XXX, XXX, XXX, XXX, XXX, XXX, k68, k69, k6a, k6b, XXX, XXX, XXX } \
+}
+
+/* LAYOUT_tsangan
+ * ┌───┬───┬───┬───┬───┬───┬───┬───┬───┬───┬───┬───┬───┬───────┐ ┌───┬───┬───┬───┐
+ * │00 │01 │02 │03 │04 │05 │06 │07 │08 │09 │0a │0b │0c │0e │ |68 |69 |6a |6b |
+ * ├───┴─┬─┴─┬─┴─┬─┴─┬─┴─┬─┴─┬─┴─┬─┴─┬─┴─┬─┴─┬─┴─┬─┴─┬─┴─┬─────┤ ├───┼───┼───┼───┤
+ * │10 │11 │12 │13 │14 │15 │16 │17 │18 │19 │1a │1b │1c │1d │ |58 |59 |5a |5b |
+ * ├─────┴┬──┴┬──┴┬──┴┬──┴┬──┴┬──┴┬──┴┬──┴┬──┴┬──┴┬──┴┬──┴─────┤ ├───┼───┼───┤ |
+ * │20 │21 │22 │23 │24 │25 │26 │27 │28 │29 │2a │2b │2d │ |5c |5d |5e | |
+ * ├──────┴─┬─┴─┬─┴─┬─┴─┬─┴─┬─┴─┬─┴─┬─┴─┬─┴─┬─┴─┬─┴─┬─┴─┬──────┤ ├───┼───┼───┼───┤
+ * │30 │32 │33 │34 │35 │36 │37 │38 │39 │3a │3b │3c |3d │ |48 |49 |4a |4b |
+ * ├─────┬──┴┬──┴──┬┴───┴───┴───┴───┴───┴───┴──┬┴───┴┬──┴┬─────┤ ├───┴───┼───┤ |
+ * │40 │41 │42 │43 (7u) │45 │46 │47 │ |4c |4d | |
+ * └─────┴───┴─────┴───────────────────────────┴─────┴───┴─────┘ └───────┴───┴───┘
+*/
+#define LAYOUT_tsangan( \
+ k00, k01, k02, k03, k04, k05, k06, k07, k08, k09, k0a, k0b, k0c, k0e, k68, k69, k6a, k6b, \
+ k10, k11, k12, k13, k14, k15, k16, k17, k18, k19, k1a, k1b, k1c, k1d, k58, k59, k5a, k5b, \
+ k20, k21, k22, k23, k24, k25, k26, k27, k28, k29, k2a, k2b, k2d, k5c, k5d, k5e, \
+ k30, k32, k33, k34, k35, k36, k37, k38, k39, k3a, k3b, k3c, k3d, k48, k49, k4a, k4b, \
+ k40, k41, k42, k43, k45, k46, k47, k4c, k4d \
+) { \
+ { k00, k01, k02, k03, k04, k05, k06, k07, k08, k09, k0a, k0b, k0c, XXX, k0e }, \
+ { k10, k11, k12, k13, k14, k15, k16, k17, k18, k19, k1a, k1b, k1c, k1d, XXX }, \
+ { k20, k21, k22, k23, k24, k25, k26, k27, k28, k29, k2a, k2b, XXX, k2d, XXX }, \
+ { k30, XXX, k32, k33, k34, k35, k36, k37, k38, k39, k3a, k3b, k3c, k3d, XXX }, \
+ { k40, k41, k42, k43, XXX, k45, k46, k47, k48, k49, k4a, k4b, k4c, k4d, XXX }, \
+ { XXX, XXX, XXX, XXX, XXX, XXX, XXX, XXX, k58, k59, k5a, k5b, k5c, k5d, k5e }, \
+ { XXX, XXX, XXX, XXX, XXX, XXX, XXX, XXX, k68, k69, k6a, k6b, XXX, XXX, XXX } \
+}
+
+/* LAYOUT_all_ansi
+ * ┌───┬───┬───┬───┬───┬───┬───┬───┬───┬───┬───┬───┬───┬───┬───┐ ┌───┬───┬───┬───┐
+ * │00 │01 │02 │03 │04 │05 │06 │07 │08 │09 │0a │0b │0c │0d │0e │ |68 |69 |6a |6b |
+ * ├───┴─┬─┴─┬─┴─┬─┴─┬─┴─┬─┴─┬─┴─┬─┴─┬─┴─┬─┴─┬─┴─┬─┴─┬─┴─┬─┴───┤ ├───┼───┼───┼───┤
+ * │10 │11 │12 │13 │14 │15 │16 │17 │18 │19 │1a │1b │1c │1d │ |58 |59 |5a |5b │
+ * ├─────┴┬──┴┬──┴┬──┴┬──┴┬──┴┬──┴┬──┴┬──┴┬──┴┬──┴┬──┴┬──┴┬────┤ ├───┼───┼───┤ |
+ * │20 │21 │22 │23 │24 │25 │26 │27 │28 │29 │2a │2b │2c |2d │ |5c |5d |5e | |
+ * ├────┬─┴─┬─┴─┬─┴─┬─┴─┬─┴─┬─┴─┬─┴─┬─┴─┬─┴─┬─┴─┬─┴─┬─┴─┬─┴────┤ ├───┼───┼───┼───┤
+ * │30 |31 │32 │33 │34 │35 │36 │37 │38 │39 │3a │3b │3c |3d │ |48 |49 |4a |4b |
+ * ├────┼───┴┬──┴─┬─┴───┴───┴───┴───┴───┴──┬┴───┼───┴┬──┴─┬────┤ ├───┴───┼───┤ |
+ * │40 │41 │42 │43 │44 │45 │46 │47 │ |4c |4d | |
+ * └────┴────┴────┴────────────────────────┴────┴────┴────┴────┘ └───────┴───┴───┘
+*/
+#define LAYOUT_all_ansi( \
+ k00, k01, k02, k03, k04, k05, k06, k07, k08, k09, k0a, k0b, k0c, k0d, k0e, k68, k69, k6a, k6b, \
+ k10, k11, k12, k13, k14, k15, k16, k17, k18, k19, k1a, k1b, k1c, k1d, k58, k59, k5a, k5b, \
+ k20, k21, k22, k23, k24, k25, k26, k27, k28, k29, k2a, k2b, k2c, k2d, k5c, k5d, k5e, \
+ k30, k31, k32, k33, k34, k35, k36, k37, k38, k39, k3a, k3b, k3c, k3d, k48, k49, k4a, k4b, \
+ k40, k41, k42, k43, k44, k45, k46, k47, 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, XXX }, \
+ { k20, k21, k22, k23, k24, k25, k26, k27, k28, k29, k2a, k2b, k2c, k2d, XXX }, \
+ { k30, k31, k32, k33, k34, k35, k36, k37, k38, k39, k3a, k3b, k3c, k3d, XXX }, \
+ { k40, k41, k42, k43, k44, k45, k46, k47, k48, k49, k4a, k4b, k4c, k4d, XXX }, \
+ { XXX, XXX, XXX, XXX, XXX, XXX, XXX, XXX, k58, k59, k5a, k5b, k5c, k5d, k5e }, \
+ { XXX, XXX, XXX, XXX, XXX, XXX, XXX, XXX, k68, k69, k6a, k6b, XXX, XXX, XXX } \
+}
+
+/* LAYOUT_all_tsangan
+ * ┌───┬───┬───┬───┬───┬───┬───┬───┬───┬───┬───┬───┬───┬───┬───┐ ┌───┬───┬───┬───┐
+ * │00 │01 │02 │03 │04 │05 │06 │07 │08 │09 │0a │0b │0c │0d |0e │ |68 |69 |6a |6b |
+ * ├───┴─┬─┴─┬─┴─┬─┴─┬─┴─┬─┴─┬─┴─┬─┴─┬─┴─┬─┴─┬─┴─┬─┴─┬─┴─┬─┴───┤ ├───┼───┼───┼───┤
+ * │10 │11 │12 │13 │14 │15 │16 │17 │18 │19 │1a │1b │1c │1d │ |58 |59 |5a |5b |
+ * ├─────┴┬──┴┬──┴┬──┴┬──┴┬──┴┬──┴┬──┴┬──┴┬──┴┬──┴┬──┴┬──┴┬────┤ ├───┼───┼───┤ |
+ * │20 │21 │22 │23 │24 │25 │26 │27 │28 │29 │2a │2b │2c |2d │ |5c |5d |5e | |
+ * ├────┬─┴─┬─┴─┬─┴─┬─┴─┬─┴─┬─┴─┬─┴─┬─┴─┬─┴─┬─┴─┬─┴─┬─┴─┬─┴────┤ ├───┼───┼───┼───┤
+ * │30 |31 │32 │33 │34 │35 │36 │37 │38 │39 │3a │3b │3c |3d │ |48 |49 |4a |4b |
+ * ├────┴┬──┴┬──┴──┬┴───┴───┴───┴───┴───┴───┴──┬┴───┴┬──┴┬─────┤ ├───┴───┼───┤ |
+ * │40 │41 │42 │43 (7u) │45 │46 │47 │ |4c |4d | |
+ * └─────┴───┴─────┴───────────────────────────┴─────┴───┴─────┘ └───────┴───┴───┘
+*/
+#define LAYOUT_all_tsangan( \
+ k00, k01, k02, k03, k04, k05, k06, k07, k08, k09, k0a, k0b, k0c, k0d, k0e, k68, k69, k6a, k6b, \
+ k10, k11, k12, k13, k14, k15, k16, k17, k18, k19, k1a, k1b, k1c, k1d, k58, k59, k5a, k5b, \
+ k20, k21, k22, k23, k24, k25, k26, k27, k28, k29, k2a, k2b, k2c, k2d, k5c, k5d, k5e, \
+ k30, k31, k32, k33, k34, k35, k36, k37, k38, k39, k3a, k3b, k3c, k3d, k48, k49, k4a, k4b, \
+ k40, k41, k42, k43, k45, k46, k47, 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, XXX }, \
+ { k20, k21, k22, k23, k24, k25, k26, k27, k28, k29, k2a, k2b, k2c, k2d, XXX }, \
+ { k30, k31, k32, k33, k34, k35, k36, k37, k38, k39, k3a, k3b, k3c, k3d, XXX }, \
+ { k40, k41, k42, k43, XXX, k45, k46, k47, k48, k49, k4a, k4b, k4c, k4d, XXX }, \
+ { XXX, XXX, XXX, XXX, XXX, XXX, XXX, XXX, k58, k59, k5a, k5b, k5c, k5d, k5e }, \
+ { XXX, XXX, XXX, XXX, XXX, XXX, XXX, XXX, k68, k69, k6a, k6b, XXX, XXX, XXX } \
+}
+
+/* LAYOUT_all__iso_6_25
+ * ┌───┬───┬───┬───┬───┬───┬───┬───┬───┬───┬───┬───┬───┬───┬───┐ ┌───┬───┬───┬───┐
+ * │00 │01 │02 │03 │04 │05 │06 │07 │08 │09 │0a │0b │0c │0d │0e │ |68 |69 |6a |6b |
+ * ├───┴─┬─┴─┬─┴─┬─┴─┬─┴─┬─┴─┬─┴─┬─┴─┬─┴─┬─┴─┬─┴─┬─┴─┬─┴─┬─┴───┤ ├───┼───┼───┼───┤
+ * │10 │11 │12 │13 │14 │15 │16 │17 │18 │19 │1a │1b │1c │ │ |58 |59 |5a |5b |
+ * ├─────┴┬──┴┬──┴┬──┴┬──┴┬──┴┬──┴┬──┴┬──┴┬──┴┬──┴┬──┴┬──┴┐ | ├───┼───┼───┤ |
+ * │20 │21 │22 │23 │24 │25 │26 │27 │28 │29 │2a │2b │2c |2d │ |5c |5d |5e | |
+ * ├────┬─┴─┬─┴─┬─┴─┬─┴─┬─┴─┬─┴─┬─┴─┬─┴─┬─┴─┬─┴─┬─┴─┬─┴─┬─┴────┤ ├───┼───┼───┼───┤
+ * │30 |31 │32 │33 │34 │35 │36 │37 │38 │39 │3a │3b │3c |3d │ |48 |49 |4a |4b |
+ * ├────┼───┴┬──┴─┬─┴───┴───┴───┴───┴───┴──┬┴───┼───┴┬──┴─┬────┤ ├───┴───┼───┤ |
+ * │40 │41 │42 │43 │44 │45 │46 │47 │ |4c |4d | |
+ * └────┴────┴────┴────────────────────────┴────┴────┴────┴────┘ └───────┴───┴───┘
+*/
+#define LAYOUT_all_iso_6_25( \
+ k00, k01, k02, k03, k04, k05, k06, k07, k08, k09, k0a, k0b, k0c, k0d, k0e, k68, k69, k6a, k6b, \
+ k10, k11, k12, k13, k14, k15, k16, k17, k18, k19, k1a, k1b, k1c, k58, k59, k5a, k5b, \
+ k20, k21, k22, k23, k24, k25, k26, k27, k28, k29, k2a, k2b, k2c, k2d, k5c, k5d, k5e, \
+ k30, k31, k32, k33, k34, k35, k36, k37, k38, k39, k3a, k3b, k3c, k3d, k48, k49, k4a, k4b, \
+ k40, k41, k42, k43, k44, k45, k46, k47, 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, XXX, XXX }, \
+ { k20, k21, k22, k23, k24, k25, k26, k27, k28, k29, k2a, k2b, k2c, k2d, XXX }, \
+ { k30, k31, k32, k33, k34, k35, k36, k37, k38, k39, k3a, k3b, k3c, k3d, XXX }, \
+ { k40, k41, k42, k43, k44, k45, k46, k47, k48, k49, k4a, k4b, k4c, k4d, XXX }, \
+ { XXX, XXX, XXX, XXX, XXX, XXX, XXX, XXX, k58, k59, k5a, k5b, k5c, k5d, k5e }, \
+ { XXX, XXX, XXX, XXX, XXX, XXX, XXX, XXX, k68, k69, k6a, k6b, XXX, XXX, XXX } \
+}
+
+/* LAYOUT_all__iso_7
+ * ┌───┬───┬───┬───┬───┬───┬───┬───┬───┬───┬───┬───┬───┬───┬───┐ ┌───┬───┬───┬───┐
+ * │00 │01 │02 │03 │04 │05 │06 │07 │08 │09 │0a │0b │0c │0d |0e │ |68 |69 |6a |6b |
+ * ├───┴─┬─┴─┬─┴─┬─┴─┬─┴─┬─┴─┬─┴─┬─┴─┬─┴─┬─┴─┬─┴─┬─┴─┬─┴─┬─┴───┤ ├───┼───┼───┼───┤
+ * │10 │11 │12 │13 │14 │15 │16 │17 │18 │19 │1a │1b │1c │ │ |58 |59 |5a |5b |
+ * ├─────┴┬──┴┬──┴┬──┴┬──┴┬──┴┬──┴┬──┴┬──┴┬──┴┬──┴┬──┴┬──┴┐ | ├───┼───┼───┤ |
+ * │20 │21 │22 │23 │24 │25 │26 │27 │28 │29 │2a │2b │2c |2d │ |5c |5d |5e | |
+ * ├────┬─┴─┬─┴─┬─┴─┬─┴─┬─┴─┬─┴─┬─┴─┬─┴─┬─┴─┬─┴─┬─┴─┬─┴─┬─┴────┤ ├───┼───┼───┼───┤
+ * │30 |31 │32 │33 │34 │35 │36 │37 │38 │39 │3a │3b │3c |3d │ |48 |49 |4a |4b |
+ * ├────┴┬──┴┬──┴──┬┴───┴───┴───┴───┴───┴───┴──┬┴───┴┬──┴┬─────┤ ├───┴───┼───┤ |
+ * │40 │41 │42 │43 (7u) │45 │46 │47 │ |4c |4d | |
+ * └─────┴───┴─────┴───────────────────────────┴─────┴───┴─────┘ └───────┴───┴───┘
+*/
+#define LAYOUT_all_iso_7( \
+ k00, k01, k02, k03, k04, k05, k06, k07, k08, k09, k0a, k0b, k0c, k0d, k0e, k68, k69, k6a, k6b, \
+ k10, k11, k12, k13, k14, k15, k16, k17, k18, k19, k1a, k1b, k1c, k58, k59, k5a, k5b, \
+ k20, k21, k22, k23, k24, k25, k26, k27, k28, k29, k2a, k2b, k2c, k2d, k5c, k5d, k5e, \
+ k30, k31, k32, k33, k34, k35, k36, k37, k38, k39, k3a, k3b, k3c, k3d, k48, k49, k4a, k4b, \
+ k40, k41, k42, k43, k45, k46, k47, 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, XXX, XXX }, \
+ { k20, k21, k22, k23, k24, k25, k26, k27, k28, k29, k2a, k2b, k2c, k2d, XXX }, \
+ { k30, k31, k32, k33, k34, k35, k36, k37, k38, k39, k3a, k3b, k3c, k3d, XXX }, \
+ { k40, k41, k42, k43, XXX, k45, k46, k47, k48, k49, k4a, k4b, k4c, k4d, XXX }, \
+ { XXX, XXX, XXX, XXX, XXX, XXX, XXX, XXX, k58, k59, k5a, k5b, k5c, k5d, k5e }, \
+ { XXX, XXX, XXX, XXX, XXX, XXX, XXX, XXX, k68, k69, k6a, k6b, XXX, XXX, XXX } \
+}