summary refs log tree commit diff
path: root/keyboards/ymdk
diff options
context:
space:
mode:
authorRyan <fauxpark@gmail.com>2023-03-29 15:54:34 +1100
committerGitHub <noreply@github.com>2023-03-29 15:54:34 +1100
commit4869b8061c187f6476f8f14b839dd2c2c9f74dd2 (patch)
tree085ba6c614b0cc649a664b6e9e8829ee6f1fe593 /keyboards/ymdk
parent06664e8a94116b5d40b2348ec89ba2fc6248ec16 (diff)
Move ortho & numpad layouts to data driven (#20183)
Co-authored-by: Nick Brassel <nick@tzarc.org>
Diffstat (limited to 'keyboards/ymdk')
-rw-r--r--keyboards/ymdk/np21/info.json141
-rw-r--r--keyboards/ymdk/np21/np21.h64
-rw-r--r--keyboards/ymdk/np24/u4rgb6/info.json218
-rw-r--r--keyboards/ymdk/np24/u4rgb6/u4rgb6.h81
-rw-r--r--keyboards/ymdk/ymd21/v2/info.json48
-rw-r--r--keyboards/ymdk/ymd21/v2/v2.h58
-rw-r--r--keyboards/ymdk/ymd40/air40/air40.c2
-rw-r--r--keyboards/ymdk/ymd40/air40/air40.h79
-rw-r--r--keyboards/ymdk/ymd40/air40/info.json470
-rw-r--r--keyboards/ymdk/ymd40/v2/info.json470
-rw-r--r--keyboards/ymdk/ymd40/v2/v2.h79
11 files changed, 676 insertions, 1034 deletions
diff --git a/keyboards/ymdk/np21/info.json b/keyboards/ymdk/np21/info.json
index 7f2ddf4680..1c4651c94c 100644
--- a/keyboards/ymdk/np21/info.json
+++ b/keyboards/ymdk/np21/info.json
@@ -26,99 +26,102 @@
     "processor": "atmega32a",
     "bootloader": "bootloadhid",
     "community_layouts": ["ortho_6x4", "numpad_6x4"],
+    "layout_aliases": {
+        "LAYOUT": "LAYOUT_ortho_4x6"
+    },
     "layouts": {
         "LAYOUT_ortho_6x4": {
             "layout": [
-                {"x": 0, "y": 0},
-                {"x": 1, "y": 0},
-                {"x": 2, "y": 0},
-                {"x": 3, "y": 0},
+                {"matrix": [0, 0], "x": 0, "y": 0},
+                {"matrix": [1, 0], "x": 1, "y": 0},
+                {"matrix": [2, 0], "x": 2, "y": 0},
+                {"matrix": [3, 0], "x": 3, "y": 0},
 
-                {"x": 0, "y": 1.25},
-                {"x": 1, "y": 1.25},
-                {"x": 2, "y": 1.25},
-                {"x": 3, "y": 1.25},
+                {"matrix": [0, 1], "x": 0, "y": 1.25},
+                {"matrix": [1, 1], "x": 1, "y": 1.25},
+                {"matrix": [2, 1], "x": 2, "y": 1.25},
+                {"matrix": [3, 1], "x": 3, "y": 1.25},
 
-                {"x": 0, "y": 2.25},
-                {"x": 1, "y": 2.25},
-                {"x": 2, "y": 2.25},
-                {"x": 3, "y": 2.25},
+                {"matrix": [0, 2], "x": 0, "y": 2.25},
+                {"matrix": [1, 2], "x": 1, "y": 2.25},
+                {"matrix": [2, 2], "x": 2, "y": 2.25},
+                {"matrix": [3, 2], "x": 3, "y": 2.25},
 
-                {"x": 0, "y": 3.25},
-                {"x": 1, "y": 3.25},
-                {"x": 2, "y": 3.25},
-                {"x": 3, "y": 3.25},
+                {"matrix": [0, 3], "x": 0, "y": 3.25},
+                {"matrix": [1, 3], "x": 1, "y": 3.25},
+                {"matrix": [2, 3], "x": 2, "y": 3.25},
+                {"matrix": [3, 3], "x": 3, "y": 3.25},
 
-                {"x": 0, "y": 4.25},
-                {"x": 1, "y": 4.25},
-                {"x": 2, "y": 4.25},
-                {"x": 3, "y": 4.25},
+                {"matrix": [0, 4], "x": 0, "y": 4.25},
+                {"matrix": [1, 4], "x": 1, "y": 4.25},
+                {"matrix": [2, 4], "x": 2, "y": 4.25},
+                {"matrix": [3, 4], "x": 3, "y": 4.25},
 
-                {"x": 0, "y": 5.25},
-                {"x": 1, "y": 5.25},
-                {"x": 2, "y": 5.25},
-                {"x": 3, "y": 5.25}
+                {"matrix": [0, 5], "x": 0, "y": 5.25},
+                {"matrix": [1, 5], "x": 1, "y": 5.25},
+                {"matrix": [2, 5], "x": 2, "y": 5.25},
+                {"matrix": [3, 5], "x": 3, "y": 5.25}
             ]
         },
         "LAYOUT_ortho_4x6": {
             "layout": [
-                {"x": 0, "y": 0},
-                {"x": 1, "y": 0},
-                {"x": 2, "y": 0},
-                {"x": 3, "y": 0},
-                {"x": 4, "y": 0},
-                {"x": 5.25, "y": 0},
+                {"matrix": [0, 5], "x": 0, "y": 0},
+                {"matrix": [0, 4], "x": 1, "y": 0},
+                {"matrix": [0, 3], "x": 2, "y": 0},
+                {"matrix": [0, 2], "x": 3, "y": 0},
+                {"matrix": [0, 1], "x": 4, "y": 0},
+                {"matrix": [0, 0], "x": 5.25, "y": 0},
 
-                {"x": 0, "y": 1},
-                {"x": 1, "y": 1},
-                {"x": 2, "y": 1},
-                {"x": 3, "y": 1},
-                {"x": 4, "y": 1},
-                {"x": 5.25, "y": 1},
+                {"matrix": [1, 5], "x": 0, "y": 1},
+                {"matrix": [1, 4], "x": 1, "y": 1},
+                {"matrix": [1, 3], "x": 2, "y": 1},
+                {"matrix": [1, 2], "x": 3, "y": 1},
+                {"matrix": [1, 1], "x": 4, "y": 1},
+                {"matrix": [1, 0], "x": 5.25, "y": 1},
 
-                {"x": 0, "y": 2},
-                {"x": 1, "y": 2},
-                {"x": 2, "y": 2},
-                {"x": 3, "y": 2},
-                {"x": 4, "y": 2},
-                {"x": 5.25, "y": 2},
+                {"matrix": [2, 5], "x": 0, "y": 2},
+                {"matrix": [2, 4], "x": 1, "y": 2},
+                {"matrix": [2, 3], "x": 2, "y": 2},
+                {"matrix": [2, 2], "x": 3, "y": 2},
+                {"matrix": [2, 1], "x": 4, "y": 2},
+                {"matrix": [2, 0], "x": 5.25, "y": 2},
 
-                {"x": 0, "y": 3},
-                {"x": 1, "y": 3},
-                {"x": 2, "y": 3},
-                {"x": 3, "y": 3},
-                {"x": 4, "y": 3},
-                {"x": 5.25, "y": 3}
+                {"matrix": [3, 5], "x": 0, "y": 3},
+                {"matrix": [3, 4], "x": 1, "y": 3},
+                {"matrix": [3, 3], "x": 2, "y": 3},
+                {"matrix": [3, 2], "x": 3, "y": 3},
+                {"matrix": [3, 1], "x": 4, "y": 3},
+                {"matrix": [3, 0], "x": 5.25, "y": 3}
             ]
         },
         "LAYOUT_numpad_6x4": {
             "layout": [
-                {"x": 0, "y": 0},
-                {"x": 1, "y": 0},
-                {"x": 2, "y": 0},
-                {"x": 3, "y": 0},
+                {"matrix": [0, 0], "x": 0, "y": 0},
+                {"matrix": [1, 0], "x": 1, "y": 0},
+                {"matrix": [2, 0], "x": 2, "y": 0},
+                {"matrix": [3, 0], "x": 3, "y": 0},
 
-                {"x": 0, "y": 1.25},
-                {"x": 1, "y": 1.25},
-                {"x": 2, "y": 1.25},
-                {"x": 3, "y": 1.25},
+                {"matrix": [0, 1], "x": 0, "y": 1.25},
+                {"matrix": [1, 1], "x": 1, "y": 1.25},
+                {"matrix": [2, 1], "x": 2, "y": 1.25},
+                {"matrix": [3, 1], "x": 3, "y": 1.25},
 
-                {"x": 0, "y": 2.25},
-                {"x": 1, "y": 2.25},
-                {"x": 2, "y": 2.25},
+                {"matrix": [0, 2], "x": 0, "y": 2.25},
+                {"matrix": [1, 2], "x": 1, "y": 2.25},
+                {"matrix": [2, 2], "x": 2, "y": 2.25},
 
-                {"x": 0, "y": 3.25},
-                {"x": 1, "y": 3.25},
-                {"x": 2, "y": 3.25},
-                {"x": 3, "y": 2.25, "h": 2},
+                {"matrix": [0, 3], "x": 0, "y": 3.25},
+                {"matrix": [1, 3], "x": 1, "y": 3.25},
+                {"matrix": [2, 3], "x": 2, "y": 3.25},
+                {"matrix": [3, 2], "x": 3, "y": 2.25, "h": 2},
 
-                {"x": 0, "y": 4.25},
-                {"x": 1, "y": 4.25},
-                {"x": 2, "y": 4.25},
+                {"matrix": [0, 4], "x": 0, "y": 4.25},
+                {"matrix": [1, 4], "x": 1, "y": 4.25},
+                {"matrix": [2, 4], "x": 2, "y": 4.25},
 
-                {"x": 0, "y": 5.25, "w": 2},
-                {"x": 2, "y": 5.25},
-                {"x": 3, "y": 4.25, "h": 2}
+                {"matrix": [0, 5], "x": 0, "y": 5.25, "w": 2},
+                {"matrix": [2, 5], "x": 2, "y": 5.25},
+                {"matrix": [3, 4], "x": 3, "y": 4.25, "h": 2}
             ]
         }
     }
diff --git a/keyboards/ymdk/np21/np21.h b/keyboards/ymdk/np21/np21.h
deleted file mode 100644
index 7434cf016d..0000000000
--- a/keyboards/ymdk/np21/np21.h
+++ /dev/null
@@ -1,64 +0,0 @@
-/*
-Copyright 2017 Luiz Ribeiro <luizribeiro@gmail.com>
-
-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
-
-#define LAYOUT_ortho_6x4( \
-    k00,  k10,  k20,  k30, \
-    k01,  k11,  k21,  k31, \
-    k02,  k12,  k22,  k32, \
-    k03,  k13,  k23,  k33, \
-    k04,  k14,  k24,  k34, \
-    k05,  k15,  k25,  k35 \
-) { \
-    { k00, k01, k02, k03, k04, k05 }, \
-    { k10, k11, k12, k13, k14, k15 }, \
-    { k20, k21, k22, k23, k24, k25 }, \
-    { k30, k31, k32, k33, k34, k35 } \
-}
-
-#define LAYOUT_ortho_4x6( \
-    k05, k04, k03, k02, k01, k00, \
-    k15, k14, k13, k12, k11, k10, \
-    k25, k24, k23, k22, k21, k20, \
-    k35, k34, k33, k32, k31, k30 \
-) { \
-    { k00, k01, k02, k03, k04, k05 }, \
-    { k10, k11, k12, k13, k14, k15 }, \
-    { k20, k21, k22, k23, k24, k25 }, \
-    { k30, k31, k32, k33, k34, k35 } \
-}
-
-#define LAYOUT_numpad_6x4( \
-    k00,  k10,  k20,  k30, \
-    k01,  k11,  k21,  k31, \
-    k02,  k12,  k22, \
-    k03,  k13,  k23,  k32, \
-    k04,  k14,  k24, \
-    k05,        k25,  k34 \
-) { \
-    { k00, k01, k02, k03, k04, k05 }, \
-    { k10, k11, k12, k13, k14, XXX }, \
-    { k20, k21, k22, k23, k24, k25 }, \
-    { k30, k31, k32, XXX, k34, XXX } \
-}
-
-#define LAYOUT LAYOUT_ortho_4x6
diff --git a/keyboards/ymdk/np24/u4rgb6/info.json b/keyboards/ymdk/np24/u4rgb6/info.json
index 98d881cd4d..927496efa6 100644
--- a/keyboards/ymdk/np24/u4rgb6/info.json
+++ b/keyboards/ymdk/np24/u4rgb6/info.json
@@ -26,129 +26,129 @@
     "layouts": {
         "LAYOUT_ortho_6x4": {
             "layout": [
-                {"x": 0, "y": 0},
-                {"x": 1, "y": 0},
-                {"x": 2, "y": 0},
-                {"x": 3, "y": 0},
-
-                {"x": 0, "y": 1.25},
-                {"x": 1, "y": 1.25},
-                {"x": 2, "y": 1.25},
-                {"x": 3, "y": 1.25},
-
-                {"x": 0, "y": 2.25},
-                {"x": 1, "y": 2.25},
-                {"x": 2, "y": 2.25},
-                {"x": 3, "y": 2.25},
-
-                {"x": 0, "y": 3.25},
-                {"x": 1, "y": 3.25},
-                {"x": 2, "y": 3.25},
-                {"x": 3, "y": 3.25},
-
-                {"x": 0, "y": 4.25},
-                {"x": 1, "y": 4.25},
-                {"x": 2, "y": 4.25},
-                {"x": 3, "y": 4.25},
-
-                {"x": 0, "y": 5.25},
-                {"x": 1, "y": 5.25},
-                {"x": 2, "y": 5.25},
-                {"x": 3, "y": 5.25}
+                {"matrix": [0, 0], "x": 0, "y": 0},
+                {"matrix": [0, 1], "x": 1, "y": 0},
+                {"matrix": [0, 2], "x": 2, "y": 0},
+                {"matrix": [0, 3], "x": 3, "y": 0},
+
+                {"matrix": [1, 0], "x": 0, "y": 1.25},
+                {"matrix": [1, 1], "x": 1, "y": 1.25},
+                {"matrix": [1, 2], "x": 2, "y": 1.25},
+                {"matrix": [1, 3], "x": 3, "y": 1.25},
+
+                {"matrix": [2, 0], "x": 0, "y": 2.25},
+                {"matrix": [2, 1], "x": 1, "y": 2.25},
+                {"matrix": [2, 2], "x": 2, "y": 2.25},
+                {"matrix": [2, 3], "x": 3, "y": 2.25},
+
+                {"matrix": [3, 0], "x": 0, "y": 3.25},
+                {"matrix": [3, 1], "x": 1, "y": 3.25},
+                {"matrix": [3, 2], "x": 2, "y": 3.25},
+                {"matrix": [3, 3], "x": 3, "y": 3.25},
+
+                {"matrix": [4, 0], "x": 0, "y": 4.25},
+                {"matrix": [4, 1], "x": 1, "y": 4.25},
+                {"matrix": [4, 2], "x": 2, "y": 4.25},
+                {"matrix": [4, 3], "x": 3, "y": 4.25},
+
+                {"matrix": [5, 0], "x": 0, "y": 5.25},
+                {"matrix": [5, 1], "x": 1, "y": 5.25},
+                {"matrix": [5, 2], "x": 2, "y": 5.25},
+                {"matrix": [5, 3], "x": 3, "y": 5.25}
             ]
         },
         "LAYOUT_ortho_4x6_right": {
             "layout": [
-                {"x": 0, "y": 0},
-                {"x": 1, "y": 0},
-                {"x": 2, "y": 0},
-                {"x": 3, "y": 0},
-                {"x": 4, "y": 0},
-                {"x": 5, "y": 0, "w": 1.5},
-
-                {"x": 0, "y": 1},
-                {"x": 1, "y": 1},
-                {"x": 2, "y": 1},
-                {"x": 3, "y": 1},
-                {"x": 4, "y": 1},
-                {"x": 5, "y": 1, "w": 1.5},
-
-                {"x": 0, "y": 2},
-                {"x": 1, "y": 2},
-                {"x": 2, "y": 2},
-                {"x": 3, "y": 2},
-                {"x": 4, "y": 2},
-                {"x": 5, "y": 2, "w": 1.5},
-
-                {"x": 0, "y": 3},
-                {"x": 1, "y": 3},
-                {"x": 2, "y": 3},
-                {"x": 3, "y": 3},
-                {"x": 4, "y": 3},
-                {"x": 5, "y": 3, "w": 1.5}
+                {"matrix": [5, 0], "x": 0, "y": 0},
+                {"matrix": [4, 0], "x": 1, "y": 0},
+                {"matrix": [3, 0], "x": 2, "y": 0},
+                {"matrix": [2, 0], "x": 3, "y": 0},
+                {"matrix": [1, 0], "x": 4, "y": 0},
+                {"matrix": [0, 0], "x": 5, "y": 0, "w": 1.5},
+
+                {"matrix": [5, 1], "x": 0, "y": 1},
+                {"matrix": [4, 1], "x": 1, "y": 1},
+                {"matrix": [3, 1], "x": 2, "y": 1},
+                {"matrix": [2, 1], "x": 3, "y": 1},
+                {"matrix": [1, 1], "x": 4, "y": 1},
+                {"matrix": [0, 1], "x": 5, "y": 1, "w": 1.5},
+
+                {"matrix": [5, 2], "x": 0, "y": 2},
+                {"matrix": [4, 2], "x": 1, "y": 2},
+                {"matrix": [3, 2], "x": 2, "y": 2},
+                {"matrix": [2, 2], "x": 3, "y": 2},
+                {"matrix": [1, 2], "x": 4, "y": 2},
+                {"matrix": [0, 2], "x": 5, "y": 2, "w": 1.5},
+
+                {"matrix": [5, 3], "x": 0, "y": 3},
+                {"matrix": [4, 3], "x": 1, "y": 3},
+                {"matrix": [3, 3], "x": 2, "y": 3},
+                {"matrix": [2, 3], "x": 3, "y": 3},
+                {"matrix": [1, 3], "x": 4, "y": 3},
+                {"matrix": [0, 3], "x": 5, "y": 3, "w": 1.5}
             ]
         },
 
         "LAYOUT_ortho_4x6_left": {
             "layout": [
-                {"x": 0, "y": 0, "w": 1.5},
-                {"x": 1.5, "y": 0},
-                {"x": 2.5, "y": 0},
-                {"x": 3.5, "y": 0},
-                {"x": 4.5, "y": 0},
-                {"x": 5.5, "y": 0},
-
-                {"x": 0, "y": 1, "w": 1.5},
-                {"x": 1.5, "y": 1},
-                {"x": 2.5, "y": 1},
-                {"x": 3.5, "y": 1},
-                {"x": 4.5, "y": 1},
-                {"x": 5.5, "y": 1},
-
-                {"x": 0, "y": 2, "w": 1.5},
-                {"x": 1.5, "y": 2},
-                {"x": 2.5, "y": 2},
-                {"x": 3.5, "y": 2},
-                {"x": 4.5, "y": 2},
-                {"x": 5.5, "y": 2},
-
-                {"x": 0, "y": 3, "w": 1.5},
-                {"x": 1.5, "y": 3},
-                {"x": 2.5, "y": 3},
-                {"x": 3.5, "y": 3},
-                {"x": 4.5, "y": 3},
-                {"x": 5.5, "y": 3}
+                {"matrix": [0, 3], "x": 0, "y": 0, "w": 1.5},
+                {"matrix": [1, 3], "x": 1.5, "y": 0},
+                {"matrix": [2, 3], "x": 2.5, "y": 0},
+                {"matrix": [3, 3], "x": 3.5, "y": 0},
+                {"matrix": [4, 3], "x": 4.5, "y": 0},
+                {"matrix": [5, 3], "x": 5.5, "y": 0},
+
+                {"matrix": [0, 2], "x": 0, "y": 1, "w": 1.5},
+                {"matrix": [1, 2], "x": 1.5, "y": 1},
+                {"matrix": [2, 2], "x": 2.5, "y": 1},
+                {"matrix": [3, 2], "x": 3.5, "y": 1},
+                {"matrix": [4, 2], "x": 4.5, "y": 1},
+                {"matrix": [5, 2], "x": 5.5, "y": 1},
+
+                {"matrix": [0, 1], "x": 0, "y": 2, "w": 1.5},
+                {"matrix": [1, 1], "x": 1.5, "y": 2},
+                {"matrix": [2, 1], "x": 2.5, "y": 2},
+                {"matrix": [3, 1], "x": 3.5, "y": 2},
+                {"matrix": [4, 1], "x": 4.5, "y": 2},
+                {"matrix": [5, 1], "x": 5.5, "y": 2},
+
+                {"matrix": [0, 0], "x": 0, "y": 3, "w": 1.5},
+                {"matrix": [1, 0], "x": 1.5, "y": 3},
+                {"matrix": [2, 0], "x": 2.5, "y": 3},
+                {"matrix": [3, 0], "x": 3.5, "y": 3},
+                {"matrix": [4, 0], "x": 4.5, "y": 3},
+                {"matrix": [5, 0], "x": 5.5, "y": 3}
             ]
         },
 
         "LAYOUT_numpad_6x4": {
             "layout": [
-                {"x": 0, "y": 0},
-                {"x": 1, "y": 0},
-                {"x": 2, "y": 0},
-                {"x": 3, "y": 0},
-
-                {"x": 0, "y": 1.25},
-                {"x": 1, "y": 1.25},
-                {"x": 2, "y": 1.25},
-                {"x": 3, "y": 1.25},
-
-                {"x": 0, "y": 2.25},
-                {"x": 1, "y": 2.25},
-                {"x": 2, "y": 2.25},
-
-                {"x": 0, "y": 3.25},
-                {"x": 1, "y": 3.25},
-                {"x": 2, "y": 3.25},
-                {"x": 3, "y": 2.25, "h": 2},
-
-                {"x": 0, "y": 4.25},
-                {"x": 1, "y": 4.25},
-                {"x": 2, "y": 4.25},
-
-                {"x": 0, "y": 5.25, "w": 2},
-                {"x": 2, "y": 5.25},
-                {"x": 3, "y": 4.25, "h": 2}
+                {"matrix": [0, 0], "x": 0, "y": 0},
+                {"matrix": [0, 1], "x": 1, "y": 0},
+                {"matrix": [0, 2], "x": 2, "y": 0},
+                {"matrix": [0, 3], "x": 3, "y": 0},
+
+                {"matrix": [1, 0], "x": 0, "y": 1.25},
+                {"matrix": [1, 1], "x": 1, "y": 1.25},
+                {"matrix": [1, 2], "x": 2, "y": 1.25},
+                {"matrix": [1, 3], "x": 3, "y": 1.25},
+
+                {"matrix": [2, 0], "x": 0, "y": 2.25},
+                {"matrix": [2, 1], "x": 1, "y": 2.25},
+                {"matrix": [2, 2], "x": 2, "y": 2.25},
+
+                {"matrix": [3, 0], "x": 0, "y": 3.25},
+                {"matrix": [3, 1], "x": 1, "y": 3.25},
+                {"matrix": [3, 2], "x": 2, "y": 3.25},
+                {"matrix": [3, 3], "x": 3, "y": 2.25, "h": 2},
+
+                {"matrix": [4, 0], "x": 0, "y": 4.25},
+                {"matrix": [4, 1], "x": 1, "y": 4.25},
+                {"matrix": [4, 2], "x": 2, "y": 4.25},
+
+                {"matrix": [5, 1], "x": 0, "y": 5.25, "w": 2},
+                {"matrix": [5, 2], "x": 2, "y": 5.25},
+                {"matrix": [5, 3], "x": 3, "y": 4.25, "h": 2}
             ]
         }
     }
diff --git a/keyboards/ymdk/np24/u4rgb6/u4rgb6.h b/keyboards/ymdk/np24/u4rgb6/u4rgb6.h
deleted file mode 100644
index 7615cf2bed..0000000000
--- a/keyboards/ymdk/np24/u4rgb6/u4rgb6.h
+++ /dev/null
@@ -1,81 +0,0 @@
-/* Copyright 2017 Luiz Ribeiro <luizribeiro@gmail.com>
- * Copyright 2021 Simon Arlott
- *
- * 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
-
-#define LAYOUT_ortho_6x4( \
-    k00,  k10,  k20,  k30, \
-    k01,  k11,  k21,  k31, \
-    k02,  k12,  k22,  k32, \
-    k03,  k13,  k23,  k33, \
-    k04,  k14,  k24,  k34, \
-    k05,  k15,  k25,  k35  \
-) { \
-    { k00, k10, k20, k30 }, \
-    { k01, k11, k21, k31 }, \
-    { k02, k12, k22, k32 }, \
-    { k03, k13, k23, k33 }, \
-    { k04, k14, k24, k34 }, \
-    { k05, k15, k25, k35 }  \
-}
-
-#define LAYOUT_ortho_4x6_right( \
-    k00, k01, k02, k03, k04, k05, \
-    k10, k11, k12, k13, k14, k15, \
-    k20, k21, k22, k23, k24, k25, \
-    k30, k31, k32, k33, k34, k35  \
-) { \
-    { k05, k15, k25, k35 }, \
-    { k04, k14, k24, k34 }, \
-    { k03, k13, k23, k33 }, \
-    { k02, k12, k22, k32 }, \
-    { k01, k11, k21, k31 }, \
-    { k00, k10, k20, k30 }  \
-}
-
-#define LAYOUT_ortho_4x6_left( \
-    k00, k01, k02, k03, k04, k05, \
-    k10, k11, k12, k13, k14, k15, \
-    k20, k21, k22, k23, k24, k25, \
-    k30, k31, k32, k33, k34, k35  \
-) { \
-    { k30, k20, k10, k00 }, \
-    { k31, k21, k11, k01 }, \
-    { k32, k22, k12, k02 }, \
-    { k33, k23, k13, k03 }, \
-    { k34, k24, k14, k04 }, \
-    { k35, k25, k15, k05 }  \
-}
-
-#define LAYOUT_numpad_6x4( \
-    k00, k10, k20, k30, \
-    k01, k11, k21, k31, \
-    k02, k12, k22,      \
-    k03, k13, k23, k33, \
-    k04, k14, k24,      \
-    k15,      k25, k35  \
-) { \
-    { k00, k10, k20, k30 }, \
-    { k01, k11, k21, k31 }, \
-    { k02, k12, k22, XXX }, \
-    { k03, k13, k23, k33 }, \
-    { k04, k14, k24, XXX }, \
-    { XXX, k15, k25, k35 }  \
-}
diff --git a/keyboards/ymdk/ymd21/v2/info.json b/keyboards/ymdk/ymd21/v2/info.json
index 11e85c1e2b..af1906a5fc 100644
--- a/keyboards/ymdk/ymd21/v2/info.json
+++ b/keyboards/ymdk/ymd21/v2/info.json
@@ -23,35 +23,35 @@
     "layouts": {
         "LAYOUT_ortho_6x4": {
             "layout": [
-                {"label":"F1", "x":0, "y":0},
-                {"label":"F2", "x":1, "y":0},
-                {"label":"F3", "x":2, "y":0},
-                {"label":"F4", "x":3, "y":0},
+                {"matrix": [0, 0], "x": 0, "y": 0},
+                {"matrix": [0, 1], "x": 1, "y": 0},
+                {"matrix": [0, 2], "x": 2, "y": 0},
+                {"matrix": [0, 3], "x": 3, "y": 0},
 
-                {"label":"Num Lock", "x":0, "y":1.25},
-                {"label":"/", "x":1, "y":1.25},
-                {"label":"*", "x":2, "y":1.25},
-                {"label":"-", "x":3, "y":1.25},
+                {"matrix": [1, 0], "x": 0, "y": 1.25},
+                {"matrix": [1, 1], "x": 1, "y": 1.25},
+                {"matrix": [1, 2], "x": 2, "y": 1.25},
+                {"matrix": [1, 3], "x": 3, "y": 1.25},
 
-                {"label":"7", "x":0, "y":2.25},
-                {"label":"8", "x":1, "y":2.25},
-                {"label":"9", "x":2, "y":2.25},
-                {"label":"=", "x":3, "y":2.25},
+                {"matrix": [2, 0], "x": 0, "y": 2.25},
+                {"matrix": [2, 1], "x": 1, "y": 2.25},
+                {"matrix": [2, 2], "x": 2, "y": 2.25},
+                {"matrix": [2, 3], "x": 3, "y": 2.25},
 
-                {"label":"4", "x":0, "y":3.25},
-                {"label":"5", "x":1, "y":3.25},
-                {"label":"6", "x":2, "y":3.25},
-                {"label":"+", "x":3, "y":3.25},
+                {"matrix": [3, 0], "x": 0, "y": 3.25},
+                {"matrix": [3, 1], "x": 1, "y": 3.25},
+                {"matrix": [3, 2], "x": 2, "y": 3.25},
+                {"matrix": [3, 3], "x": 3, "y": 3.25},
 
-                {"label":"1", "x":0, "y":4.25},
-                {"label":"2", "x":1, "y":4.25},
-                {"label":"3", "x":2, "y":4.25},
-                {"label":"Space", "x":3, "y":4.25},
+                {"matrix": [4, 0], "x": 0, "y": 4.25},
+                {"matrix": [4, 1], "x": 1, "y": 4.25},
+                {"matrix": [4, 2], "x": 2, "y": 4.25},
+                {"matrix": [4, 3], "x": 3, "y": 4.25},
 
-                {"label":"Fn", "x":0, "y":5.25},
-                {"label":"0", "x":1, "y":5.25},
-                {"label":".", "x":2, "y":5.25},
-                {"label":"Enter", "x":3, "y":5.25}
+                {"matrix": [5, 0], "x": 0, "y": 5.25},
+                {"matrix": [5, 1], "x": 1, "y": 5.25},
+                {"matrix": [5, 2], "x": 2, "y": 5.25},
+                {"matrix": [5, 3], "x": 3, "y": 5.25}
             ]
         }
     }
diff --git a/keyboards/ymdk/ymd21/v2/v2.h b/keyboards/ymdk/ymd21/v2/v2.h
deleted file mode 100644
index a234b60508..0000000000
--- a/keyboards/ymdk/ymd21/v2/v2.h
+++ /dev/null
@@ -1,58 +0,0 @@
-/* Copyright 2022 QMK / James Young (@noroadsleft)
- *
- * 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
-
-/*
- * ┌───┬───┬───┬───┐
- * │00 │01 │02 │03 │
- * └───┴───┴───┴───┘
- * ┌───┬───┬───┬───┐
- * │10 │11 │12 │13 │
- * ├───┼───┼───┼───┤   ┌───┐
- * │20 │21 │22 │23 │   │   │
- * ├───┼───┼───┼───┤   │?? │ 2u Plus
- * │30 │31 │32 │33 │   │   │
- * ├───┼───┼───┼───┤   ├───┤
- * │40 │41 │42 │43 │   │   │
- * ├───┼───┼───┼───┤   │?? │ 2u Enter
- * │50 │51 │52 │53 │   │   │
- * └───┴───┴───┴───┘   └───┘
- * ┌───────┐
- * │??     │ 2u 0
- * └───────┘
- */
-
-
-#define LAYOUT_ortho_6x4( \
-    K00, K01, K02, K03, \
-    K10, K11, K12, K13, \
-    K20, K21, K22, K23, \
-    K30, K31, K32, K33, \
-    K40, K41, K42, K43, \
-    K50, K51, K52, K53  \
-) { \
-    { K00, K01, K02, K03 }, \
-    { K10, K11, K12, K13 }, \
-    { K20, K21, K22, K23 }, \
-    { K30, K31, K32, K33 }, \
-    { K40, K41, K42, K43 }, \
-    { K50, K51, K52, K53 }, \
-}
diff --git a/keyboards/ymdk/ymd40/air40/air40.c b/keyboards/ymdk/ymd40/air40/air40.c
index 50e7ad9106..633b4943ff 100644
--- a/keyboards/ymdk/ymd40/air40/air40.c
+++ b/keyboards/ymdk/ymd40/air40/air40.c
@@ -14,7 +14,7 @@
  * along with this program.  If not, see <http://www.gnu.org/licenses/>.
  */
 
-#include "air40.h"
+#include "quantum.h"
 
 #if defined(RGB_MATRIX_ENABLE)
 led_config_t g_led_config = {
diff --git a/keyboards/ymdk/ymd40/air40/air40.h b/keyboards/ymdk/ymd40/air40/air40.h
deleted file mode 100644
index d28f6d591a..0000000000
--- a/keyboards/ymdk/ymd40/air40/air40.h
+++ /dev/null
@@ -1,79 +0,0 @@
-/* Copyright 2021 James Young (@noroadsleft)
- *
- * 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 LAYOUT_ortho_4x12( \
-    K00, K01, K02, K03, K04, K05, K06, K07, K08, K09, K0A, K0B,   \
-    K10, K11, K12, K13, K14, K15, K16, K17, K18, K19, K1A, K1B,   \
-    K20, K21, K22, K23, K24, K25, K26, K27, K28, K29, K2A, K2B,   \
-    K30, K31, K32, K33, K34, K35, K36, K37, K38, K39, K3A, K3B    \
-) { \
-    { K00,   K01,   K02,   K03,   K04,   K05,   K06,   K07,   K08,   K09,   K0A,   K0B   }, \
-    { K10,   K11,   K12,   K13,   K14,   K15,   K16,   K17,   K18,   K19,   K1A,   K1B   }, \
-    { K20,   K21,   K22,   K23,   K24,   K25,   K26,   K27,   K28,   K29,   K2A,   K2B   }, \
-    { K30,   K31,   K32,   K33,   K34,   K35,   K36,   K37,   K38,   K39,   K3A,   K3B   }, \
-}
-
-#define LAYOUT_ortho_4x12_2x2u( \
-    K00, K01, K02, K03, K04, K05, K06, K07, K08, K09, K0A, K0B,   \
-    K10, K11, K12, K13, K14, K15, K16, K17, K18, K19, K1A, K1B,   \
-    K20, K21, K22, K23, K24, K25, K26, K27, K28, K29, K2A, K2B,   \
-    K30, K31, K32, K33,   K34,      K37,    K38, K39, K3A, K3B    \
-) { \
-    { K00,   K01,   K02,   K03,   K04,   K05,   K06,   K07,   K08,   K09,   K0A,   K0B   }, \
-    { K10,   K11,   K12,   K13,   K14,   K15,   K16,   K17,   K18,   K19,   K1A,   K1B   }, \
-    { K20,   K21,   K22,   K23,   K24,   K25,   K26,   K27,   K28,   K29,   K2A,   K2B   }, \
-    { K30,   K31,   K32,   K33,   K34,   KC_NO, KC_NO, K37,   K38,   K39,   K3A,   K3B   }, \
-}
-
-#define LAYOUT_ortho_4x12_1x2uR( \
-    K00, K01, K02, K03, K04, K05, K06, K07, K08, K09, K0A, K0B,   \
-    K10, K11, K12, K13, K14, K15, K16, K17, K18, K19, K1A, K1B,   \
-    K20, K21, K22, K23, K24, K25, K26, K27, K28, K29, K2A, K2B,   \
-    K30, K31, K32, K33, K34, K35,    K37,   K38, K39, K3A, K3B    \
-) { \
-    { K00,   K01,   K02,   K03,   K04,   K05,   K06,   K07,   K08,   K09,   K0A,   K0B   }, \
-    { K10,   K11,   K12,   K13,   K14,   K15,   K16,   K17,   K18,   K19,   K1A,   K1B   }, \
-    { K20,   K21,   K22,   K23,   K24,   K25,   K26,   K27,   K28,   K29,   K2A,   K2B   }, \
-    { K30,   K31,   K32,   K33,   K34,   K35,   KC_NO, K37,   K38,   K39,   K3A,   K3B   }, \
-}
-
-#define LAYOUT_ortho_4x12_1x2uL( \
-    K00, K01, K02, K03, K04, K05, K06, K07, K08, K09, K0A, K0B,   \
-    K10, K11, K12, K13, K14, K15, K16, K17, K18, K19, K1A, K1B,   \
-    K20, K21, K22, K23, K24, K25, K26, K27, K28, K29, K2A, K2B,   \
-    K30, K31, K32, K33,    K34,   K36, K37, K38, K39, K3A, K3B    \
-) { \
-    { K00,   K01,   K02,   K03,   K04,   K05,   K06,   K07,   K08,   K09,   K0A,   K0B   }, \
-    { K10,   K11,   K12,   K13,   K14,   K15,   K16,   K17,   K18,   K19,   K1A,   K1B   }, \
-    { K20,   K21,   K22,   K23,   K24,   K25,   K26,   K27,   K28,   K29,   K2A,   K2B   }, \
-    { K30,   K31,   K32,   K33,   K34,   KC_NO, K36,   K37,   K38,   K39,   K3A,   K3B   }, \
-}
-
-#define LAYOUT_ortho_4x12_1x2uC( \
-    K00, K01, K02, K03, K04, K05, K06, K07, K08, K09, K0A, K0B,   \
-    K10, K11, K12, K13, K14, K15, K16, K17, K18, K19, K1A, K1B,   \
-    K20, K21, K22, K23, K24, K25, K26, K27, K28, K29, K2A, K2B,   \
-    K30, K31, K32, K33, K34,    K35,   K37, K38, K39, K3A, K3B    \
-) { \
-    { K00,   K01,   K02,   K03,   K04,   K05,   K06,   K07,   K08,   K09,   K0A,   K0B   }, \
-    { K10,   K11,   K12,   K13,   K14,   K15,   K16,   K17,   K18,   K19,   K1A,   K1B   }, \
-    { K20,   K21,   K22,   K23,   K24,   K25,   K26,   K27,   K28,   K29,   K2A,   K2B   }, \
-    { K30,   K31,   K32,   K33,   K34,   K35,   KC_NO, K37,   K38,   K39,   K3A,   K3B   }, \
-}
diff --git a/keyboards/ymdk/ymd40/air40/info.json b/keyboards/ymdk/ymd40/air40/info.json
index b334b81717..273c5e4a7a 100644
--- a/keyboards/ymdk/ymd40/air40/info.json
+++ b/keyboards/ymdk/ymd40/air40/info.json
@@ -18,272 +18,272 @@
     "layouts": {
         "LAYOUT_ortho_4x12": {
             "layout": [
-                {"label":"K00 (D0,F1)", "x":0, "y":0},
-                {"label":"K01 (D0,F0)", "x":1, "y":0},
-                {"label":"K02 (D0,B0)", "x":2, "y":0},
-                {"label":"K03 (D0,C7)", "x":3, "y":0},
-                {"label":"K04 (D0,F4)", "x":4, "y":0},
-                {"label":"K05 (D0,F5)", "x":5, "y":0},
-                {"label":"K06 (D0,F6)", "x":6, "y":0},
-                {"label":"K07 (D0,F7)", "x":7, "y":0},
-                {"label":"K08 (D0,D4)", "x":8, "y":0},
-                {"label":"K09 (D0,D6)", "x":9, "y":0},
-                {"label":"K0A (D0,B4)", "x":10, "y":0},
-                {"label":"K0B (D0,D7)", "x":11, "y":0},
+                {"matrix": [0, 0], "x": 0, "y": 0},
+                {"matrix": [0, 1], "x": 1, "y": 0},
+                {"matrix": [0, 2], "x": 2, "y": 0},
+                {"matrix": [0, 3], "x": 3, "y": 0},
+                {"matrix": [0, 4], "x": 4, "y": 0},
+                {"matrix": [0, 5], "x": 5, "y": 0},
+                {"matrix": [0, 6], "x": 6, "y": 0},
+                {"matrix": [0, 7], "x": 7, "y": 0},
+                {"matrix": [0, 8], "x": 8, "y": 0},
+                {"matrix": [0, 9], "x": 9, "y": 0},
+                {"matrix": [0, 10], "x": 10, "y": 0},
+                {"matrix": [0, 11], "x": 11, "y": 0},
 
-                {"label":"K10 (B3,F1)", "x":0, "y":1},
-                {"label":"K11 (B3,F0)", "x":1, "y":1},
-                {"label":"K12 (B3,B0)", "x":2, "y":1},
-                {"label":"K13 (B3,C7)", "x":3, "y":1},
-                {"label":"K14 (B3,F4)", "x":4, "y":1},
-                {"label":"K15 (B3,F5)", "x":5, "y":1},
-                {"label":"K16 (B3,F6)", "x":6, "y":1},
-                {"label":"K17 (B3,F7)", "x":7, "y":1},
-                {"label":"K18 (B3,D4)", "x":8, "y":1},
-                {"label":"K19 (B3,D6)", "x":9, "y":1},
-                {"label":"K1A (B3,B4)", "x":10, "y":1},
-                {"label":"K1B (B3,D7)", "x":11, "y":1},
+                {"matrix": [1, 0], "x": 0, "y": 1},
+                {"matrix": [1, 1], "x": 1, "y": 1},
+                {"matrix": [1, 2], "x": 2, "y": 1},
+                {"matrix": [1, 3], "x": 3, "y": 1},
+                {"matrix": [1, 4], "x": 4, "y": 1},
+                {"matrix": [1, 5], "x": 5, "y": 1},
+                {"matrix": [1, 6], "x": 6, "y": 1},
+                {"matrix": [1, 7], "x": 7, "y": 1},
+                {"matrix": [1, 8], "x": 8, "y": 1},
+                {"matrix": [1, 9], "x": 9, "y": 1},
+                {"matrix": [1, 10], "x": 10, "y": 1},
+                {"matrix": [1, 11], "x": 11, "y": 1},
 
-                {"label":"K20 (B2,F1)", "x":0, "y":2},
-                {"label":"K21 (B2,F0)", "x":1, "y":2},
-                {"label":"K22 (B2,B0)", "x":2, "y":2},
-                {"label":"K23 (B2,C7)", "x":3, "y":2},
-                {"label":"K24 (B2,F4)", "x":4, "y":2},
-                {"label":"K25 (B2,F5)", "x":5, "y":2},
-                {"label":"K26 (B2,F6)", "x":6, "y":2},
-                {"label":"K27 (B2,F7)", "x":7, "y":2},
-                {"label":"K28 (B2,D4)", "x":8, "y":2},
-                {"label":"K29 (B2,D6)", "x":9, "y":2},
-                {"label":"K2A (B2,B4)", "x":10, "y":2},
-                {"label":"K2B (B2,D7)", "x":11, "y":2},
+                {"matrix": [2, 0], "x": 0, "y": 2},
+                {"matrix": [2, 1], "x": 1, "y": 2},
+                {"matrix": [2, 2], "x": 2, "y": 2},
+                {"matrix": [2, 3], "x": 3, "y": 2},
+                {"matrix": [2, 4], "x": 4, "y": 2},
+                {"matrix": [2, 5], "x": 5, "y": 2},
+                {"matrix": [2, 6], "x": 6, "y": 2},
+                {"matrix": [2, 7], "x": 7, "y": 2},
+                {"matrix": [2, 8], "x": 8, "y": 2},
+                {"matrix": [2, 9], "x": 9, "y": 2},
+                {"matrix": [2, 10], "x": 10, "y": 2},
+                {"matrix": [2, 11], "x": 11, "y": 2},
 
-                {"label":"K30 (B1,F1)", "x":0, "y":3},
-                {"label":"K31 (B1,F0)", "x":1, "y":3},
-                {"label":"K32 (B1,B0)", "x":2, "y":3},
-                {"label":"K33 (B1,C7)", "x":3, "y":3},
-                {"label":"K34 (B1,F4)", "x":4, "y":3},
-                {"label":"K35 (B1,F5)", "x":5, "y":3},
-                {"label":"K36 (B1,F6)", "x":6, "y":3},
-                {"label":"K37 (B1,F7)", "x":7, "y":3},
-                {"label":"K38 (B1,D4)", "x":8, "y":3},
-                {"label":"K39 (B1,D6)", "x":9, "y":3},
-                {"label":"K3A (B1,B4)", "x":10, "y":3},
-                {"label":"K3B (B1,D7)", "x":11, "y":3}
+                {"matrix": [3, 0], "x": 0, "y": 3},
+                {"matrix": [3, 1], "x": 1, "y": 3},
+                {"matrix": [3, 2], "x": 2, "y": 3},
+                {"matrix": [3, 3], "x": 3, "y": 3},
+                {"matrix": [3, 4], "x": 4, "y": 3},
+                {"matrix": [3, 5], "x": 5, "y": 3},
+                {"matrix": [3, 6], "x": 6, "y": 3},
+                {"matrix": [3, 7], "x": 7, "y": 3},
+                {"matrix": [3, 8], "x": 8, "y": 3},
+                {"matrix": [3, 9], "x": 9, "y": 3},
+                {"matrix": [3, 10], "x": 10, "y": 3},
+                {"matrix": [3, 11], "x": 11, "y": 3}
             ]
         },
         "LAYOUT_ortho_4x12_2x2u": {
             "layout": [
-                {"label":"K00 (D0,F1)", "x":0, "y":0},
-                {"label":"K01 (D0,F0)", "x":1, "y":0},
-                {"label":"K02 (D0,B0)", "x":2, "y":0},
-                {"label":"K03 (D0,C7)", "x":3, "y":0},
-                {"label":"K04 (D0,F4)", "x":4, "y":0},
-                {"label":"K05 (D0,F5)", "x":5, "y":0},
-                {"label":"K06 (D0,F6)", "x":6, "y":0},
-                {"label":"K07 (D0,F7)", "x":7, "y":0},
-                {"label":"K08 (D0,D4)", "x":8, "y":0},
-                {"label":"K09 (D0,D6)", "x":9, "y":0},
-                {"label":"K0A (D0,B4)", "x":10, "y":0},
-                {"label":"K0B (D0,D7)", "x":11, "y":0},
+                {"matrix": [0, 0], "x": 0, "y": 0},
+                {"matrix": [0, 1], "x": 1, "y": 0},
+                {"matrix": [0, 2], "x": 2, "y": 0},
+                {"matrix": [0, 3], "x": 3, "y": 0},
+                {"matrix": [0, 4], "x": 4, "y": 0},
+                {"matrix": [0, 5], "x": 5, "y": 0},
+                {"matrix": [0, 6], "x": 6, "y": 0},
+                {"matrix": [0, 7], "x": 7, "y": 0},
+                {"matrix": [0, 8], "x": 8, "y": 0},
+                {"matrix": [0, 9], "x": 9, "y": 0},
+                {"matrix": [0, 10], "x": 10, "y": 0},
+                {"matrix": [0, 11], "x": 11, "y": 0},
 
-                {"label":"K10 (B3,F1)", "x":0, "y":1},
-                {"label":"K11 (B3,F0)", "x":1, "y":1},
-                {"label":"K12 (B3,B0)", "x":2, "y":1},
-                {"label":"K13 (B3,C7)", "x":3, "y":1},
-                {"label":"K14 (B3,F4)", "x":4, "y":1},
-                {"label":"K15 (B3,F5)", "x":5, "y":1},
-                {"label":"K16 (B3,F6)", "x":6, "y":1},
-                {"label":"K17 (B3,F7)", "x":7, "y":1},
-                {"label":"K18 (B3,D4)", "x":8, "y":1},
-                {"label":"K19 (B3,D6)", "x":9, "y":1},
-                {"label":"K1A (B3,B4)", "x":10, "y":1},
-                {"label":"K1B (B3,D7)", "x":11, "y":1},
+                {"matrix": [1, 0], "x": 0, "y": 1},
+                {"matrix": [1, 1], "x": 1, "y": 1},
+                {"matrix": [1, 2], "x": 2, "y": 1},
+                {"matrix": [1, 3], "x": 3, "y": 1},
+                {"matrix": [1, 4], "x": 4, "y": 1},
+                {"matrix": [1, 5], "x": 5, "y": 1},
+                {"matrix": [1, 6], "x": 6, "y": 1},
+                {"matrix": [1, 7], "x": 7, "y": 1},
+                {"matrix": [1, 8], "x": 8, "y": 1},
+                {"matrix": [1, 9], "x": 9, "y": 1},
+                {"matrix": [1, 10], "x": 10, "y": 1},
+                {"matrix": [1, 11], "x": 11, "y": 1},
 
-                {"label":"K20 (B2,F1)", "x":0, "y":2},
-                {"label":"K21 (B2,F0)", "x":1, "y":2},
-                {"label":"K22 (B2,B0)", "x":2, "y":2},
-                {"label":"K23 (B2,C7)", "x":3, "y":2},
-                {"label":"K24 (B2,F4)", "x":4, "y":2},
-                {"label":"K25 (B2,F5)", "x":5, "y":2},
-                {"label":"K26 (B2,F6)", "x":6, "y":2},
-                {"label":"K27 (B2,F7)", "x":7, "y":2},
-                {"label":"K28 (B2,D4)", "x":8, "y":2},
-                {"label":"K29 (B2,D6)", "x":9, "y":2},
-                {"label":"K2A (B2,B4)", "x":10, "y":2},
-                {"label":"K2B (B2,D7)", "x":11, "y":2},
+                {"matrix": [2, 0], "x": 0, "y": 2},
+                {"matrix": [2, 1], "x": 1, "y": 2},
+                {"matrix": [2, 2], "x": 2, "y": 2},
+                {"matrix": [2, 3], "x": 3, "y": 2},
+                {"matrix": [2, 4], "x": 4, "y": 2},
+                {"matrix": [2, 5], "x": 5, "y": 2},
+                {"matrix": [2, 6], "x": 6, "y": 2},
+                {"matrix": [2, 7], "x": 7, "y": 2},
+                {"matrix": [2, 8], "x": 8, "y": 2},
+                {"matrix": [2, 9], "x": 9, "y": 2},
+                {"matrix": [2, 10], "x": 10, "y": 2},
+                {"matrix": [2, 11], "x": 11, "y": 2},
 
-                {"label":"K30 (B1,F1)", "x":0, "y":3},
-                {"label":"K31 (B1,F0)", "x":1, "y":3},
-                {"label":"K32 (B1,B0)", "x":2, "y":3},
-                {"label":"K33 (B1,C7)", "x":3, "y":3},
-                {"label":"K34 (B1,F4)", "x":4, "y":3, "w":2},
-                {"label":"K37 (B1,F7)", "x":6, "y":3, "w":2},
-                {"label":"K38 (B1,D4)", "x":8, "y":3},
-                {"label":"K39 (B1,D6)", "x":9, "y":3},
-                {"label":"K3A (B1,B4)", "x":10, "y":3},
-                {"label":"K3B (B1,D7)", "x":11, "y":3}
+                {"matrix": [3, 0], "x": 0, "y": 3},
+                {"matrix": [3, 1], "x": 1, "y": 3},
+                {"matrix": [3, 2], "x": 2, "y": 3},
+                {"matrix": [3, 3], "x": 3, "y": 3},
+                {"matrix": [3, 4], "x": 4, "y": 3, "w": 2},
+                {"matrix": [3, 7], "x": 6, "y": 3, "w": 2},
+                {"matrix": [3, 8], "x": 8, "y": 3},
+                {"matrix": [3, 9], "x": 9, "y": 3},
+                {"matrix": [3, 10], "x": 10, "y": 3},
+                {"matrix": [3, 11], "x": 11, "y": 3}
             ]
         },
         "LAYOUT_ortho_4x12_1x2uR": {
             "layout": [
-                {"label":"K00 (D0,F1)", "x":0, "y":0},
-                {"label":"K01 (D0,F0)", "x":1, "y":0},
-                {"label":"K02 (D0,B0)", "x":2, "y":0},
-                {"label":"K03 (D0,C7)", "x":3, "y":0},
-                {"label":"K04 (D0,F4)", "x":4, "y":0},
-                {"label":"K05 (D0,F5)", "x":5, "y":0},
-                {"label":"K06 (D0,F6)", "x":6, "y":0},
-                {"label":"K07 (D0,F7)", "x":7, "y":0},
-                {"label":"K08 (D0,D4)", "x":8, "y":0},
-                {"label":"K09 (D0,D6)", "x":9, "y":0},
-                {"label":"K0A (D0,B4)", "x":10, "y":0},
-                {"label":"K0B (D0,D7)", "x":11, "y":0},
+                {"matrix": [0, 0], "x": 0, "y": 0},
+                {"matrix": [0, 1], "x": 1, "y": 0},
+                {"matrix": [0, 2], "x": 2, "y": 0},
+                {"matrix": [0, 3], "x": 3, "y": 0},
+                {"matrix": [0, 4], "x": 4, "y": 0},
+                {"matrix": [0, 5], "x": 5, "y": 0},
+                {"matrix": [0, 6], "x": 6, "y": 0},
+                {"matrix": [0, 7], "x": 7, "y": 0},
+                {"matrix": [0, 8], "x": 8, "y": 0},
+                {"matrix": [0, 9], "x": 9, "y": 0},
+                {"matrix": [0, 10], "x": 10, "y": 0},
+                {"matrix": [0, 11], "x": 11, "y": 0},
 
-                {"label":"K10 (B3,F1)", "x":0, "y":1},
-                {"label":"K11 (B3,F0)", "x":1, "y":1},
-                {"label":"K12 (B3,B0)", "x":2, "y":1},
-                {"label":"K13 (B3,C7)", "x":3, "y":1},
-                {"label":"K14 (B3,F4)", "x":4, "y":1},
-                {"label":"K15 (B3,F5)", "x":5, "y":1},
-                {"label":"K16 (B3,F6)", "x":6, "y":1},
-                {"label":"K17 (B3,F7)", "x":7, "y":1},
-                {"label":"K18 (B3,D4)", "x":8, "y":1},
-                {"label":"K19 (B3,D6)", "x":9, "y":1},
-                {"label":"K1A (B3,B4)", "x":10, "y":1},
-                {"label":"K1B (B3,D7)", "x":11, "y":1},
+                {"matrix": [1, 0], "x": 0, "y": 1},
+                {"matrix": [1, 1], "x": 1, "y": 1},
+                {"matrix": [1, 2], "x": 2, "y": 1},
+                {"matrix": [1, 3], "x": 3, "y": 1},
+                {"matrix": [1, 4], "x": 4, "y": 1},
+                {"matrix": [1, 5], "x": 5, "y": 1},
+                {"matrix": [1, 6], "x": 6, "y": 1},
+                {"matrix": [1, 7], "x": 7, "y": 1},
+                {"matrix": [1, 8], "x": 8, "y": 1},
+                {"matrix": [1, 9], "x": 9, "y": 1},
+                {"matrix": [1, 10], "x": 10, "y": 1},
+                {"matrix": [1, 11], "x": 11, "y": 1},
 
-                {"label":"K20 (B2,F1)", "x":0, "y":2},
-                {"label":"K21 (B2,F0)", "x":1, "y":2},
-                {"label":"K22 (B2,B0)", "x":2, "y":2},
-                {"label":"K23 (B2,C7)", "x":3, "y":2},
-                {"label":"K24 (B2,F4)", "x":4, "y":2},
-                {"label":"K25 (B2,F5)", "x":5, "y":2},
-                {"label":"K26 (B2,F6)", "x":6, "y":2},
-                {"label":"K27 (B2,F7)", "x":7, "y":2},
-                {"label":"K28 (B2,D4)", "x":8, "y":2},
-                {"label":"K29 (B2,D6)", "x":9, "y":2},
-                {"label":"K2A (B2,B4)", "x":10, "y":2},
-                {"label":"K2B (B2,D7)", "x":11, "y":2},
+                {"matrix": [2, 0], "x": 0, "y": 2},
+                {"matrix": [2, 1], "x": 1, "y": 2},
+                {"matrix": [2, 2], "x": 2, "y": 2},
+                {"matrix": [2, 3], "x": 3, "y": 2},
+                {"matrix": [2, 4], "x": 4, "y": 2},
+                {"matrix": [2, 5], "x": 5, "y": 2},
+                {"matrix": [2, 6], "x": 6, "y": 2},
+                {"matrix": [2, 7], "x": 7, "y": 2},
+                {"matrix": [2, 8], "x": 8, "y": 2},
+                {"matrix": [2, 9], "x": 9, "y": 2},
+                {"matrix": [2, 10], "x": 10, "y": 2},
+                {"matrix": [2, 11], "x": 11, "y": 2},
 
-                {"label":"K30 (B1,F1)", "x":0, "y":3},
-                {"label":"K31 (B1,F0)", "x":1, "y":3},
-                {"label":"K32 (B1,B0)", "x":2, "y":3},
-                {"label":"K33 (B1,C7)", "x":3, "y":3},
-                {"label":"K34 (B1,F4)", "x":4, "y":3},
-                {"label":"K35 (B1,F5)", "x":5, "y":3},
-                {"label":"K37 (B1,F7)", "x":6, "y":3, "w":2},
-                {"label":"K38 (B1,D4)", "x":8, "y":3},
-                {"label":"K39 (B1,D6)", "x":9, "y":3},
-                {"label":"K3A (B1,B4)", "x":10, "y":3},
-                {"label":"K3B (B1,D7)", "x":11, "y":3}
+                {"matrix": [3, 0], "x": 0, "y": 3},
+                {"matrix": [3, 1], "x": 1, "y": 3},
+                {"matrix": [3, 2], "x": 2, "y": 3},
+                {"matrix": [3, 3], "x": 3, "y": 3},
+                {"matrix": [3, 4], "x": 4, "y": 3},
+                {"matrix": [3, 5], "x": 5, "y": 3},
+                {"matrix": [3, 7], "x": 6, "y": 3, "w": 2},
+                {"matrix": [3, 8], "x": 8, "y": 3},
+                {"matrix": [3, 9], "x": 9, "y": 3},
+                {"matrix": [3, 10], "x": 10, "y": 3},
+                {"matrix": [3, 11], "x": 11, "y": 3}
             ]
         },
         "LAYOUT_ortho_4x12_1x2uL": {
             "layout": [
-                {"label":"K00 (D0,F1)", "x":0, "y":0},
-                {"label":"K01 (D0,F0)", "x":1, "y":0},
-                {"label":"K02 (D0,B0)", "x":2, "y":0},
-                {"label":"K03 (D0,C7)", "x":3, "y":0},
-                {"label":"K04 (D0,F4)", "x":4, "y":0},
-                {"label":"K05 (D0,F5)", "x":5, "y":0},
-                {"label":"K06 (D0,F6)", "x":6, "y":0},
-                {"label":"K07 (D0,F7)", "x":7, "y":0},
-                {"label":"K08 (D0,D4)", "x":8, "y":0},
-                {"label":"K09 (D0,D6)", "x":9, "y":0},
-                {"label":"K0A (D0,B4)", "x":10, "y":0},
-                {"label":"K0B (D0,D7)", "x":11, "y":0},
+                {"matrix": [0, 0], "x": 0, "y": 0},
+                {"matrix": [0, 1], "x": 1, "y": 0},
+                {"matrix": [0, 2], "x": 2, "y": 0},
+                {"matrix": [0, 3], "x": 3, "y": 0},
+                {"matrix": [0, 4], "x": 4, "y": 0},
+                {"matrix": [0, 5], "x": 5, "y": 0},
+                {"matrix": [0, 6], "x": 6, "y": 0},
+                {"matrix": [0, 7], "x": 7, "y": 0},
+                {"matrix": [0, 8], "x": 8, "y": 0},
+                {"matrix": [0, 9], "x": 9, "y": 0},
+                {"matrix": [0, 10], "x": 10, "y": 0},
+                {"matrix": [0, 11], "x": 11, "y": 0},
 
-                {"label":"K10 (B3,F1)", "x":0, "y":1},
-                {"label":"K11 (B3,F0)", "x":1, "y":1},
-                {"label":"K12 (B3,B0)", "x":2, "y":1},
-                {"label":"K13 (B3,C7)", "x":3, "y":1},
-                {"label":"K14 (B3,F4)", "x":4, "y":1},
-                {"label":"K15 (B3,F5)", "x":5, "y":1},
-                {"label":"K16 (B3,F6)", "x":6, "y":1},
-                {"label":"K17 (B3,F7)", "x":7, "y":1},
-                {"label":"K18 (B3,D4)", "x":8, "y":1},
-                {"label":"K19 (B3,D6)", "x":9, "y":1},
-                {"label":"K1A (B3,B4)", "x":10, "y":1},
-                {"label":"K1B (B3,D7)", "x":11, "y":1},
+                {"matrix": [1, 0], "x": 0, "y": 1},
+                {"matrix": [1, 1], "x": 1, "y": 1},
+                {"matrix": [1, 2], "x": 2, "y": 1},
+                {"matrix": [1, 3], "x": 3, "y": 1},
+                {"matrix": [1, 4], "x": 4, "y": 1},
+                {"matrix": [1, 5], "x": 5, "y": 1},
+                {"matrix": [1, 6], "x": 6, "y": 1},
+                {"matrix": [1, 7], "x": 7, "y": 1},
+                {"matrix": [1, 8], "x": 8, "y": 1},
+                {"matrix": [1, 9], "x": 9, "y": 1},
+                {"matrix": [1, 10], "x": 10, "y": 1},
+                {"matrix": [1, 11], "x": 11, "y": 1},
 
-                {"label":"K20 (B2,F1)", "x":0, "y":2},
-                {"label":"K21 (B2,F0)", "x":1, "y":2},
-                {"label":"K22 (B2,B0)", "x":2, "y":2},
-                {"label":"K23 (B2,C7)", "x":3, "y":2},
-                {"label":"K24 (B2,F4)", "x":4, "y":2},
-                {"label":"K25 (B2,F5)", "x":5, "y":2},
-                {"label":"K26 (B2,F6)", "x":6, "y":2},
-                {"label":"K27 (B2,F7)", "x":7, "y":2},
-                {"label":"K28 (B2,D4)", "x":8, "y":2},
-                {"label":"K29 (B2,D6)", "x":9, "y":2},
-                {"label":"K2A (B2,B4)", "x":10, "y":2},
-                {"label":"K2B (B2,D7)", "x":11, "y":2},
+                {"matrix": [2, 0], "x": 0, "y": 2},
+                {"matrix": [2, 1], "x": 1, "y": 2},
+                {"matrix": [2, 2], "x": 2, "y": 2},
+                {"matrix": [2, 3], "x": 3, "y": 2},
+                {"matrix": [2, 4], "x": 4, "y": 2},
+                {"matrix": [2, 5], "x": 5, "y": 2},
+                {"matrix": [2, 6], "x": 6, "y": 2},
+                {"matrix": [2, 7], "x": 7, "y": 2},
+                {"matrix": [2, 8], "x": 8, "y": 2},
+                {"matrix": [2, 9], "x": 9, "y": 2},
+                {"matrix": [2, 10], "x": 10, "y": 2},
+                {"matrix": [2, 11], "x": 11, "y": 2},
 
-                {"label":"K30 (B1,F1)", "x":0, "y":3},
-                {"label":"K31 (B1,F0)", "x":1, "y":3},
-                {"label":"K32 (B1,B0)", "x":2, "y":3},
-                {"label":"K33 (B1,C7)", "x":3, "y":3},
-                {"label":"K34 (B1,F4)", "x":4, "y":3, "w":2},
-                {"label":"K36 (B1,F6)", "x":6, "y":3},
-                {"label":"K37 (B1,F7)", "x":7, "y":3},
-                {"label":"K38 (B1,D4)", "x":8, "y":3},
-                {"label":"K39 (B1,D6)", "x":9, "y":3},
-                {"label":"K3A (B1,B4)", "x":10, "y":3},
-                {"label":"K3B (B1,D7)", "x":11, "y":3}
+                {"matrix": [3, 0], "x": 0, "y": 3},
+                {"matrix": [3, 1], "x": 1, "y": 3},
+                {"matrix": [3, 2], "x": 2, "y": 3},
+                {"matrix": [3, 3], "x": 3, "y": 3},
+                {"matrix": [3, 4], "x": 4, "y": 3, "w": 2},
+                {"matrix": [3, 6], "x": 6, "y": 3},
+                {"matrix": [3, 7], "x": 7, "y": 3},
+                {"matrix": [3, 8], "x": 8, "y": 3},
+                {"matrix": [3, 9], "x": 9, "y": 3},
+                {"matrix": [3, 10], "x": 10, "y": 3},
+                {"matrix": [3, 11], "x": 11, "y": 3}
             ]
         },
         "LAYOUT_ortho_4x12_1x2uC": {
             "layout": [
-                {"label":"K00 (D0,F1)", "x":0, "y":0},
-                {"label":"K01 (D0,F0)", "x":1, "y":0},
-                {"label":"K02 (D0,B0)", "x":2, "y":0},
-                {"label":"K03 (D0,C7)", "x":3, "y":0},
-                {"label":"K04 (D0,F4)", "x":4, "y":0},
-                {"label":"K05 (D0,F5)", "x":5, "y":0},
-                {"label":"K06 (D0,F6)", "x":6, "y":0},
-                {"label":"K07 (D0,F7)", "x":7, "y":0},
-                {"label":"K08 (D0,D4)", "x":8, "y":0},
-                {"label":"K09 (D0,D6)", "x":9, "y":0},
-                {"label":"K0A (D0,B4)", "x":10, "y":0},
-                {"label":"K0B (D0,D7)", "x":11, "y":0},
+                {"matrix": [0, 0], "x": 0, "y": 0},
+                {"matrix": [0, 1], "x": 1, "y": 0},
+                {"matrix": [0, 2], "x": 2, "y": 0},
+                {"matrix": [0, 3], "x": 3, "y": 0},
+                {"matrix": [0, 4], "x": 4, "y": 0},
+                {"matrix": [0, 5], "x": 5, "y": 0},
+                {"matrix": [0, 6], "x": 6, "y": 0},
+                {"matrix": [0, 7], "x": 7, "y": 0},
+                {"matrix": [0, 8], "x": 8, "y": 0},
+                {"matrix": [0, 9], "x": 9, "y": 0},
+                {"matrix": [0, 10], "x": 10, "y": 0},
+                {"matrix": [0, 11], "x": 11, "y": 0},
 
-                {"label":"K10 (B3,F1)", "x":0, "y":1},
-                {"label":"K11 (B3,F0)", "x":1, "y":1},
-                {"label":"K12 (B3,B0)", "x":2, "y":1},
-                {"label":"K13 (B3,C7)", "x":3, "y":1},
-                {"label":"K14 (B3,F4)", "x":4, "y":1},
-                {"label":"K15 (B3,F5)", "x":5, "y":1},
-                {"label":"K16 (B3,F6)", "x":6, "y":1},
-                {"label":"K17 (B3,F7)", "x":7, "y":1},
-                {"label":"K18 (B3,D4)", "x":8, "y":1},
-                {"label":"K19 (B3,D6)", "x":9, "y":1},
-                {"label":"K1A (B3,B4)", "x":10, "y":1},
-                {"label":"K1B (B3,D7)", "x":11, "y":1},
+                {"matrix": [1, 0], "x": 0, "y": 1},
+                {"matrix": [1, 1], "x": 1, "y": 1},
+                {"matrix": [1, 2], "x": 2, "y": 1},
+                {"matrix": [1, 3], "x": 3, "y": 1},
+                {"matrix": [1, 4], "x": 4, "y": 1},
+                {"matrix": [1, 5], "x": 5, "y": 1},
+                {"matrix": [1, 6], "x": 6, "y": 1},
+                {"matrix": [1, 7], "x": 7, "y": 1},
+                {"matrix": [1, 8], "x": 8, "y": 1},
+                {"matrix": [1, 9], "x": 9, "y": 1},
+                {"matrix": [1, 10], "x": 10, "y": 1},
+                {"matrix": [1, 11], "x": 11, "y": 1},
 
-                {"label":"K20 (B2,F1)", "x":0, "y":2},
-                {"label":"K21 (B2,F0)", "x":1, "y":2},
-                {"label":"K22 (B2,B0)", "x":2, "y":2},
-                {"label":"K23 (B2,C7)", "x":3, "y":2},
-                {"label":"K24 (B2,F4)", "x":4, "y":2},
-                {"label":"K25 (B2,F5)", "x":5, "y":2},
-                {"label":"K26 (B2,F6)", "x":6, "y":2},
-                {"label":"K27 (B2,F7)", "x":7, "y":2},
-                {"label":"K28 (B2,D4)", "x":8, "y":2},
-                {"label":"K29 (B2,D6)", "x":9, "y":2},
-                {"label":"K2A (B2,B4)", "x":10, "y":2},
-                {"label":"K2B (B2,D7)", "x":11, "y":2},
+                {"matrix": [2, 0], "x": 0, "y": 2},
+                {"matrix": [2, 1], "x": 1, "y": 2},
+                {"matrix": [2, 2], "x": 2, "y": 2},
+                {"matrix": [2, 3], "x": 3, "y": 2},
+                {"matrix": [2, 4], "x": 4, "y": 2},
+                {"matrix": [2, 5], "x": 5, "y": 2},
+                {"matrix": [2, 6], "x": 6, "y": 2},
+                {"matrix": [2, 7], "x": 7, "y": 2},
+                {"matrix": [2, 8], "x": 8, "y": 2},
+                {"matrix": [2, 9], "x": 9, "y": 2},
+                {"matrix": [2, 10], "x": 10, "y": 2},
+                {"matrix": [2, 11], "x": 11, "y": 2},
 
-                {"label":"K30 (B1,F1)", "x":0, "y":3},
-                {"label":"K31 (B1,F0)", "x":1, "y":3},
-                {"label":"K32 (B1,B0)", "x":2, "y":3},
-                {"label":"K33 (B1,C7)", "x":3, "y":3},
-                {"label":"K34 (B1,F4)", "x":4, "y":3},
-                {"label":"K35 (B1,F5)", "x":5, "y":3, "w":2},
-                {"label":"K37 (B1,F7)", "x":7, "y":3},
-                {"label":"K38 (B1,D4)", "x":8, "y":3},
-                {"label":"K39 (B1,D6)", "x":9, "y":3},
-                {"label":"K3A (B1,B4)", "x":10, "y":3},
-                {"label":"K3B (B1,D7)", "x":11, "y":3}
+                {"matrix": [3, 0], "x": 0, "y": 3},
+                {"matrix": [3, 1], "x": 1, "y": 3},
+                {"matrix": [3, 2], "x": 2, "y": 3},
+                {"matrix": [3, 3], "x": 3, "y": 3},
+                {"matrix": [3, 4], "x": 4, "y": 3},
+                {"matrix": [3, 5], "x": 5, "y": 3, "w": 2},
+                {"matrix": [3, 7], "x": 7, "y": 3},
+                {"matrix": [3, 8], "x": 8, "y": 3},
+                {"matrix": [3, 9], "x": 9, "y": 3},
+                {"matrix": [3, 10], "x": 10, "y": 3},
+                {"matrix": [3, 11], "x": 11, "y": 3}
             ]
         }
 
diff --git a/keyboards/ymdk/ymd40/v2/info.json b/keyboards/ymdk/ymd40/v2/info.json
index 37c51da1a5..7d28fcacaf 100644
--- a/keyboards/ymdk/ymd40/v2/info.json
+++ b/keyboards/ymdk/ymd40/v2/info.json
@@ -23,272 +23,272 @@
     "layouts": {
         "LAYOUT_ortho_4x12": {
             "layout": [
-                {"label":"K00 (D0,F1)", "x":0, "y":0},
-                {"label":"K01 (D0,F0)", "x":1, "y":0},
-                {"label":"K02 (D0,B0)", "x":2, "y":0},
-                {"label":"K03 (D0,C7)", "x":3, "y":0},
-                {"label":"K04 (D0,F4)", "x":4, "y":0},
-                {"label":"K05 (D0,F5)", "x":5, "y":0},
-                {"label":"K06 (D0,F6)", "x":6, "y":0},
-                {"label":"K07 (D0,F7)", "x":7, "y":0},
-                {"label":"K08 (D0,D4)", "x":8, "y":0},
-                {"label":"K09 (D0,D6)", "x":9, "y":0},
-                {"label":"K0A (D0,B4)", "x":10, "y":0},
-                {"label":"K0B (D0,D7)", "x":11, "y":0},
+                {"matrix": [0, 0], "x": 0, "y": 0},
+                {"matrix": [0, 1], "x": 1, "y": 0},
+                {"matrix": [0, 2], "x": 2, "y": 0},
+                {"matrix": [0, 3], "x": 3, "y": 0},
+                {"matrix": [0, 4], "x": 4, "y": 0},
+                {"matrix": [0, 5], "x": 5, "y": 0},
+                {"matrix": [0, 6], "x": 6, "y": 0},
+                {"matrix": [0, 7], "x": 7, "y": 0},
+                {"matrix": [0, 8], "x": 8, "y": 0},
+                {"matrix": [0, 9], "x": 9, "y": 0},
+                {"matrix": [0, 10], "x": 10, "y": 0},
+                {"matrix": [0, 11], "x": 11, "y": 0},
 
-                {"label":"K10 (B3,F1)", "x":0, "y":1},
-                {"label":"K11 (B3,F0)", "x":1, "y":1},
-                {"label":"K12 (B3,B0)", "x":2, "y":1},
-                {"label":"K13 (B3,C7)", "x":3, "y":1},
-                {"label":"K14 (B3,F4)", "x":4, "y":1},
-                {"label":"K15 (B3,F5)", "x":5, "y":1},
-                {"label":"K16 (B3,F6)", "x":6, "y":1},
-                {"label":"K17 (B3,F7)", "x":7, "y":1},
-                {"label":"K18 (B3,D4)", "x":8, "y":1},
-                {"label":"K19 (B3,D6)", "x":9, "y":1},
-                {"label":"K1A (B3,B4)", "x":10, "y":1},
-                {"label":"K1B (B3,D7)", "x":11, "y":1},
+                {"matrix": [1, 0], "x": 0, "y": 1},
+                {"matrix": [1, 1], "x": 1, "y": 1},
+                {"matrix": [1, 2], "x": 2, "y": 1},
+                {"matrix": [1, 3], "x": 3, "y": 1},
+                {"matrix": [1, 4], "x": 4, "y": 1},
+                {"matrix": [1, 5], "x": 5, "y": 1},
+                {"matrix": [1, 6], "x": 6, "y": 1},
+                {"matrix": [1, 7], "x": 7, "y": 1},
+                {"matrix": [1, 8], "x": 8, "y": 1},
+                {"matrix": [1, 9], "x": 9, "y": 1},
+                {"matrix": [1, 10], "x": 10, "y": 1},
+                {"matrix": [1, 11], "x": 11, "y": 1},
 
-                {"label":"K20 (B2,F1)", "x":0, "y":2},
-                {"label":"K21 (B2,F0)", "x":1, "y":2},
-                {"label":"K22 (B2,B0)", "x":2, "y":2},
-                {"label":"K23 (B2,C7)", "x":3, "y":2},
-                {"label":"K24 (B2,F4)", "x":4, "y":2},
-                {"label":"K25 (B2,F5)", "x":5, "y":2},
-                {"label":"K26 (B2,F6)", "x":6, "y":2},
-                {"label":"K27 (B2,F7)", "x":7, "y":2},
-                {"label":"K28 (B2,D4)", "x":8, "y":2},
-                {"label":"K29 (B2,D6)", "x":9, "y":2},
-                {"label":"K2A (B2,B4)", "x":10, "y":2},
-                {"label":"K2B (B2,D7)", "x":11, "y":2},
+                {"matrix": [2, 0], "x": 0, "y": 2},
+                {"matrix": [2, 1], "x": 1, "y": 2},
+                {"matrix": [2, 2], "x": 2, "y": 2},
+                {"matrix": [2, 3], "x": 3, "y": 2},
+                {"matrix": [2, 4], "x": 4, "y": 2},
+                {"matrix": [2, 5], "x": 5, "y": 2},
+                {"matrix": [2, 6], "x": 6, "y": 2},
+                {"matrix": [2, 7], "x": 7, "y": 2},
+                {"matrix": [2, 8], "x": 8, "y": 2},
+                {"matrix": [2, 9], "x": 9, "y": 2},
+                {"matrix": [2, 10], "x": 10, "y": 2},
+                {"matrix": [2, 11], "x": 11, "y": 2},
 
-                {"label":"K30 (B1,F1)", "x":0, "y":3},
-                {"label":"K31 (B1,F0)", "x":1, "y":3},
-                {"label":"K32 (B1,B0)", "x":2, "y":3},
-                {"label":"K33 (B1,C7)", "x":3, "y":3},
-                {"label":"K34 (B1,F4)", "x":4, "y":3},
-                {"label":"K35 (B1,F5)", "x":5, "y":3},
-                {"label":"K36 (B1,F6)", "x":6, "y":3},
-                {"label":"K37 (B1,F7)", "x":7, "y":3},
-                {"label":"K38 (B1,D4)", "x":8, "y":3},
-                {"label":"K39 (B1,D6)", "x":9, "y":3},
-                {"label":"K3A (B1,B4)", "x":10, "y":3},
-                {"label":"K3B (B1,D7)", "x":11, "y":3}
+                {"matrix": [3, 0], "x": 0, "y": 3},
+                {"matrix": [3, 1], "x": 1, "y": 3},
+                {"matrix": [3, 2], "x": 2, "y": 3},
+                {"matrix": [3, 3], "x": 3, "y": 3},
+                {"matrix": [3, 4], "x": 4, "y": 3},
+                {"matrix": [3, 5], "x": 5, "y": 3},
+                {"matrix": [3, 6], "x": 6, "y": 3},
+                {"matrix": [3, 7], "x": 7, "y": 3},
+                {"matrix": [3, 8], "x": 8, "y": 3},
+                {"matrix": [3, 9], "x": 9, "y": 3},
+                {"matrix": [3, 10], "x": 10, "y": 3},
+                {"matrix": [3, 11], "x": 11, "y": 3}
             ]
         },
         "LAYOUT_ortho_4x12_2x2u": {
             "layout": [
-                {"label":"K00 (D0,F1)", "x":0, "y":0},
-                {"label":"K01 (D0,F0)", "x":1, "y":0},
-                {"label":"K02 (D0,B0)", "x":2, "y":0},
-                {"label":"K03 (D0,C7)", "x":3, "y":0},
-                {"label":"K04 (D0,F4)", "x":4, "y":0},
-                {"label":"K05 (D0,F5)", "x":5, "y":0},
-                {"label":"K06 (D0,F6)", "x":6, "y":0},
-                {"label":"K07 (D0,F7)", "x":7, "y":0},
-                {"label":"K08 (D0,D4)", "x":8, "y":0},
-                {"label":"K09 (D0,D6)", "x":9, "y":0},
-                {"label":"K0A (D0,B4)", "x":10, "y":0},
-                {"label":"K0B (D0,D7)", "x":11, "y":0},
+                {"matrix": [0, 0], "x": 0, "y": 0},
+                {"matrix": [0, 1], "x": 1, "y": 0},
+                {"matrix": [0, 2], "x": 2, "y": 0},
+                {"matrix": [0, 3], "x": 3, "y": 0},
+                {"matrix": [0, 4], "x": 4, "y": 0},
+                {"matrix": [0, 5], "x": 5, "y": 0},
+                {"matrix": [0, 6], "x": 6, "y": 0},
+                {"matrix": [0, 7], "x": 7, "y": 0},
+                {"matrix": [0, 8], "x": 8, "y": 0},
+                {"matrix": [0, 9], "x": 9, "y": 0},
+                {"matrix": [0, 10], "x": 10, "y": 0},
+                {"matrix": [0, 11], "x": 11, "y": 0},
 
-                {"label":"K10 (B3,F1)", "x":0, "y":1},
-                {"label":"K11 (B3,F0)", "x":1, "y":1},
-                {"label":"K12 (B3,B0)", "x":2, "y":1},
-                {"label":"K13 (B3,C7)", "x":3, "y":1},
-                {"label":"K14 (B3,F4)", "x":4, "y":1},
-                {"label":"K15 (B3,F5)", "x":5, "y":1},
-                {"label":"K16 (B3,F6)", "x":6, "y":1},
-                {"label":"K17 (B3,F7)", "x":7, "y":1},
-                {"label":"K18 (B3,D4)", "x":8, "y":1},
-                {"label":"K19 (B3,D6)", "x":9, "y":1},
-                {"label":"K1A (B3,B4)", "x":10, "y":1},
-                {"label":"K1B (B3,D7)", "x":11, "y":1},
+                {"matrix": [1, 0], "x": 0, "y": 1},
+                {"matrix": [1, 1], "x": 1, "y": 1},
+                {"matrix": [1, 2], "x": 2, "y": 1},
+                {"matrix": [1, 3], "x": 3, "y": 1},
+                {"matrix": [1, 4], "x": 4, "y": 1},
+                {"matrix": [1, 5], "x": 5, "y": 1},
+                {"matrix": [1, 6], "x": 6, "y": 1},
+                {"matrix": [1, 7], "x": 7, "y": 1},
+                {"matrix": [1, 8], "x": 8, "y": 1},
+                {"matrix": [1, 9], "x": 9, "y": 1},
+                {"matrix": [1, 10], "x": 10, "y": 1},
+                {"matrix": [1, 11], "x": 11, "y": 1},
 
-                {"label":"K20 (B2,F1)", "x":0, "y":2},
-                {"label":"K21 (B2,F0)", "x":1, "y":2},
-                {"label":"K22 (B2,B0)", "x":2, "y":2},
-                {"label":"K23 (B2,C7)", "x":3, "y":2},
-                {"label":"K24 (B2,F4)", "x":4, "y":2},
-                {"label":"K25 (B2,F5)", "x":5, "y":2},
-                {"label":"K26 (B2,F6)", "x":6, "y":2},
-                {"label":"K27 (B2,F7)", "x":7, "y":2},
-                {"label":"K28 (B2,D4)", "x":8, "y":2},
-                {"label":"K29 (B2,D6)", "x":9, "y":2},
-                {"label":"K2A (B2,B4)", "x":10, "y":2},
-                {"label":"K2B (B2,D7)", "x":11, "y":2},
+                {"matrix": [2, 0], "x": 0, "y": 2},
+                {"matrix": [2, 1], "x": 1, "y": 2},
+                {"matrix": [2, 2], "x": 2, "y": 2},
+                {"matrix": [2, 3], "x": 3, "y": 2},
+                {"matrix": [2, 4], "x": 4, "y": 2},
+                {"matrix": [2, 5], "x": 5, "y": 2},
+                {"matrix": [2, 6], "x": 6, "y": 2},
+                {"matrix": [2, 7], "x": 7, "y": 2},
+                {"matrix": [2, 8], "x": 8, "y": 2},
+                {"matrix": [2, 9], "x": 9, "y": 2},
+                {"matrix": [2, 10], "x": 10, "y": 2},
+                {"matrix": [2, 11], "x": 11, "y": 2},
 
-                {"label":"K30 (B1,F1)", "x":0, "y":3},
-                {"label":"K31 (B1,F0)", "x":1, "y":3},
-                {"label":"K32 (B1,B0)", "x":2, "y":3},
-                {"label":"K33 (B1,C7)", "x":3, "y":3},
-                {"label":"K34 (B1,F4)", "x":4, "y":3, "w":2},
-                {"label":"K37 (B1,F7)", "x":6, "y":3, "w":2},
-                {"label":"K38 (B1,D4)", "x":8, "y":3},
-                {"label":"K39 (B1,D6)", "x":9, "y":3},
-                {"label":"K3A (B1,B4)", "x":10, "y":3},
-                {"label":"K3B (B1,D7)", "x":11, "y":3}
+                {"matrix": [3, 0], "x": 0, "y": 3},
+                {"matrix": [3, 1], "x": 1, "y": 3},
+                {"matrix": [3, 2], "x": 2, "y": 3},
+                {"matrix": [3, 3], "x": 3, "y": 3},
+                {"matrix": [3, 4], "x": 4, "y": 3, "w": 2},
+                {"matrix": [3, 7], "x": 6, "y": 3, "w": 2},
+                {"matrix": [3, 8], "x": 8, "y": 3},
+                {"matrix": [3, 9], "x": 9, "y": 3},
+                {"matrix": [3, 10], "x": 10, "y": 3},
+                {"matrix": [3, 11], "x": 11, "y": 3}
             ]
         },
         "LAYOUT_ortho_4x12_1x2uR": {
             "layout": [
-                {"label":"K00 (D0,F1)", "x":0, "y":0},
-                {"label":"K01 (D0,F0)", "x":1, "y":0},
-                {"label":"K02 (D0,B0)", "x":2, "y":0},
-                {"label":"K03 (D0,C7)", "x":3, "y":0},
-                {"label":"K04 (D0,F4)", "x":4, "y":0},
-                {"label":"K05 (D0,F5)", "x":5, "y":0},
-                {"label":"K06 (D0,F6)", "x":6, "y":0},
-                {"label":"K07 (D0,F7)", "x":7, "y":0},
-                {"label":"K08 (D0,D4)", "x":8, "y":0},
-                {"label":"K09 (D0,D6)", "x":9, "y":0},
-                {"label":"K0A (D0,B4)", "x":10, "y":0},
-                {"label":"K0B (D0,D7)", "x":11, "y":0},
+                {"matrix": [0, 0], "x": 0, "y": 0},
+                {"matrix": [0, 1], "x": 1, "y": 0},
+                {"matrix": [0, 2], "x": 2, "y": 0},
+                {"matrix": [0, 3], "x": 3, "y": 0},
+                {"matrix": [0, 4], "x": 4, "y": 0},
+                {"matrix": [0, 5], "x": 5, "y": 0},
+                {"matrix": [0, 6], "x": 6, "y": 0},
+                {"matrix": [0, 7], "x": 7, "y": 0},
+                {"matrix": [0, 8], "x": 8, "y": 0},
+                {"matrix": [0, 9], "x": 9, "y": 0},
+                {"matrix": [0, 10], "x": 10, "y": 0},
+                {"matrix": [0, 11], "x": 11, "y": 0},
 
-                {"label":"K10 (B3,F1)", "x":0, "y":1},
-                {"label":"K11 (B3,F0)", "x":1, "y":1},
-                {"label":"K12 (B3,B0)", "x":2, "y":1},
-                {"label":"K13 (B3,C7)", "x":3, "y":1},
-                {"label":"K14 (B3,F4)", "x":4, "y":1},
-                {"label":"K15 (B3,F5)", "x":5, "y":1},
-                {"label":"K16 (B3,F6)", "x":6, "y":1},
-                {"label":"K17 (B3,F7)", "x":7, "y":1},
-                {"label":"K18 (B3,D4)", "x":8, "y":1},
-                {"label":"K19 (B3,D6)", "x":9, "y":1},
-                {"label":"K1A (B3,B4)", "x":10, "y":1},
-                {"label":"K1B (B3,D7)", "x":11, "y":1},
+                {"matrix": [1, 0], "x": 0, "y": 1},
+                {"matrix": [1, 1], "x": 1, "y": 1},
+                {"matrix": [1, 2], "x": 2, "y": 1},
+                {"matrix": [1, 3], "x": 3, "y": 1},
+                {"matrix": [1, 4], "x": 4, "y": 1},
+                {"matrix": [1, 5], "x": 5, "y": 1},
+                {"matrix": [1, 6], "x": 6, "y": 1},
+                {"matrix": [1, 7], "x": 7, "y": 1},
+                {"matrix": [1, 8], "x": 8, "y": 1},
+                {"matrix": [1, 9], "x": 9, "y": 1},
+                {"matrix": [1, 10], "x": 10, "y": 1},
+                {"matrix": [1, 11], "x": 11, "y": 1},
 
-                {"label":"K20 (B2,F1)", "x":0, "y":2},
-                {"label":"K21 (B2,F0)", "x":1, "y":2},
-                {"label":"K22 (B2,B0)", "x":2, "y":2},
-                {"label":"K23 (B2,C7)", "x":3, "y":2},
-                {"label":"K24 (B2,F4)", "x":4, "y":2},
-                {"label":"K25 (B2,F5)", "x":5, "y":2},
-                {"label":"K26 (B2,F6)", "x":6, "y":2},
-                {"label":"K27 (B2,F7)", "x":7, "y":2},
-                {"label":"K28 (B2,D4)", "x":8, "y":2},
-                {"label":"K29 (B2,D6)", "x":9, "y":2},
-                {"label":"K2A (B2,B4)", "x":10, "y":2},
-                {"label":"K2B (B2,D7)", "x":11, "y":2},
+                {"matrix": [2, 0], "x": 0, "y": 2},
+                {"matrix": [2, 1], "x": 1, "y": 2},
+                {"matrix": [2, 2], "x": 2, "y": 2},
+                {"matrix": [2, 3], "x": 3, "y": 2},
+                {"matrix": [2, 4], "x": 4, "y": 2},
+                {"matrix": [2, 5], "x": 5, "y": 2},
+                {"matrix": [2, 6], "x": 6, "y": 2},
+                {"matrix": [2, 7], "x": 7, "y": 2},
+                {"matrix": [2, 8], "x": 8, "y": 2},
+                {"matrix": [2, 9], "x": 9, "y": 2},
+                {"matrix": [2, 10], "x": 10, "y": 2},
+                {"matrix": [2, 11], "x": 11, "y": 2},
 
-                {"label":"K30 (B1,F1)", "x":0, "y":3},
-                {"label":"K31 (B1,F0)", "x":1, "y":3},
-                {"label":"K32 (B1,B0)", "x":2, "y":3},
-                {"label":"K33 (B1,C7)", "x":3, "y":3},
-                {"label":"K34 (B1,F4)", "x":4, "y":3},
-                {"label":"K35 (B1,F5)", "x":5, "y":3},
-                {"label":"K37 (B1,F7)", "x":6, "y":3, "w":2},
-                {"label":"K38 (B1,D4)", "x":8, "y":3},
-                {"label":"K39 (B1,D6)", "x":9, "y":3},
-                {"label":"K3A (B1,B4)", "x":10, "y":3},
-                {"label":"K3B (B1,D7)", "x":11, "y":3}
+                {"matrix": [3, 0], "x": 0, "y": 3},
+                {"matrix": [3, 1], "x": 1, "y": 3},
+                {"matrix": [3, 2], "x": 2, "y": 3},
+                {"matrix": [3, 3], "x": 3, "y": 3},
+                {"matrix": [3, 4], "x": 4, "y": 3},
+                {"matrix": [3, 5], "x": 5, "y": 3},
+                {"matrix": [3, 7], "x": 6, "y": 3, "w": 2},
+                {"matrix": [3, 8], "x": 8, "y": 3},
+                {"matrix": [3, 9], "x": 9, "y": 3},
+                {"matrix": [3, 10], "x": 10, "y": 3},
+                {"matrix": [3, 11], "x": 11, "y": 3}
             ]
         },
         "LAYOUT_ortho_4x12_1x2uL": {
             "layout": [
-                {"label":"K00 (D0,F1)", "x":0, "y":0},
-                {"label":"K01 (D0,F0)", "x":1, "y":0},
-                {"label":"K02 (D0,B0)", "x":2, "y":0},
-                {"label":"K03 (D0,C7)", "x":3, "y":0},
-                {"label":"K04 (D0,F4)", "x":4, "y":0},
-                {"label":"K05 (D0,F5)", "x":5, "y":0},
-                {"label":"K06 (D0,F6)", "x":6, "y":0},
-                {"label":"K07 (D0,F7)", "x":7, "y":0},
-                {"label":"K08 (D0,D4)", "x":8, "y":0},
-                {"label":"K09 (D0,D6)", "x":9, "y":0},
-                {"label":"K0A (D0,B4)", "x":10, "y":0},
-                {"label":"K0B (D0,D7)", "x":11, "y":0},
+                {"matrix": [0, 0], "x": 0, "y": 0},
+                {"matrix": [0, 1], "x": 1, "y": 0},
+                {"matrix": [0, 2], "x": 2, "y": 0},
+                {"matrix": [0, 3], "x": 3, "y": 0},
+                {"matrix": [0, 4], "x": 4, "y": 0},
+                {"matrix": [0, 5], "x": 5, "y": 0},
+                {"matrix": [0, 6], "x": 6, "y": 0},
+                {"matrix": [0, 7], "x": 7, "y": 0},
+                {"matrix": [0, 8], "x": 8, "y": 0},
+                {"matrix": [0, 9], "x": 9, "y": 0},
+                {"matrix": [0, 10], "x": 10, "y": 0},
+                {"matrix": [0, 11], "x": 11, "y": 0},
 
-                {"label":"K10 (B3,F1)", "x":0, "y":1},
-                {"label":"K11 (B3,F0)", "x":1, "y":1},
-                {"label":"K12 (B3,B0)", "x":2, "y":1},
-                {"label":"K13 (B3,C7)", "x":3, "y":1},
-                {"label":"K14 (B3,F4)", "x":4, "y":1},
-                {"label":"K15 (B3,F5)", "x":5, "y":1},
-                {"label":"K16 (B3,F6)", "x":6, "y":1},
-                {"label":"K17 (B3,F7)", "x":7, "y":1},
-                {"label":"K18 (B3,D4)", "x":8, "y":1},
-                {"label":"K19 (B3,D6)", "x":9, "y":1},
-                {"label":"K1A (B3,B4)", "x":10, "y":1},
-                {"label":"K1B (B3,D7)", "x":11, "y":1},
+                {"matrix": [1, 0], "x": 0, "y": 1},
+                {"matrix": [1, 1], "x": 1, "y": 1},
+                {"matrix": [1, 2], "x": 2, "y": 1},
+                {"matrix": [1, 3], "x": 3, "y": 1},
+                {"matrix": [1, 4], "x": 4, "y": 1},
+                {"matrix": [1, 5], "x": 5, "y": 1},
+                {"matrix": [1, 6], "x": 6, "y": 1},
+                {"matrix": [1, 7], "x": 7, "y": 1},
+                {"matrix": [1, 8], "x": 8, "y": 1},
+                {"matrix": [1, 9], "x": 9, "y": 1},
+                {"matrix": [1, 10], "x": 10, "y": 1},
+                {"matrix": [1, 11], "x": 11, "y": 1},
 
-                {"label":"K20 (B2,F1)", "x":0, "y":2},
-                {"label":"K21 (B2,F0)", "x":1, "y":2},
-                {"label":"K22 (B2,B0)", "x":2, "y":2},
-                {"label":"K23 (B2,C7)", "x":3, "y":2},
-                {"label":"K24 (B2,F4)", "x":4, "y":2},
-                {"label":"K25 (B2,F5)", "x":5, "y":2},
-                {"label":"K26 (B2,F6)", "x":6, "y":2},
-                {"label":"K27 (B2,F7)", "x":7, "y":2},
-                {"label":"K28 (B2,D4)", "x":8, "y":2},
-                {"label":"K29 (B2,D6)", "x":9, "y":2},
-                {"label":"K2A (B2,B4)", "x":10, "y":2},
-                {"label":"K2B (B2,D7)", "x":11, "y":2},
+                {"matrix": [2, 0], "x": 0, "y": 2},
+                {"matrix": [2, 1], "x": 1, "y": 2},
+                {"matrix": [2, 2], "x": 2, "y": 2},
+                {"matrix": [2, 3], "x": 3, "y": 2},
+                {"matrix": [2, 4], "x": 4, "y": 2},
+                {"matrix": [2, 5], "x": 5, "y": 2},
+                {"matrix": [2, 6], "x": 6, "y": 2},
+                {"matrix": [2, 7], "x": 7, "y": 2},
+                {"matrix": [2, 8], "x": 8, "y": 2},
+                {"matrix": [2, 9], "x": 9, "y": 2},
+                {"matrix": [2, 10], "x": 10, "y": 2},
+                {"matrix": [2, 11], "x": 11, "y": 2},
 
-                {"label":"K30 (B1,F1)", "x":0, "y":3},
-                {"label":"K31 (B1,F0)", "x":1, "y":3},
-                {"label":"K32 (B1,B0)", "x":2, "y":3},
-                {"label":"K33 (B1,C7)", "x":3, "y":3},
-                {"label":"K34 (B1,F4)", "x":4, "y":3, "w":2},
-                {"label":"K36 (B1,F6)", "x":6, "y":3},
-                {"label":"K37 (B1,F7)", "x":7, "y":3},
-                {"label":"K38 (B1,D4)", "x":8, "y":3},
-                {"label":"K39 (B1,D6)", "x":9, "y":3},
-                {"label":"K3A (B1,B4)", "x":10, "y":3},
-                {"label":"K3B (B1,D7)", "x":11, "y":3}
+                {"matrix": [3, 0], "x": 0, "y": 3},
+                {"matrix": [3, 1], "x": 1, "y": 3},
+                {"matrix": [3, 2], "x": 2, "y": 3},
+                {"matrix": [3, 3], "x": 3, "y": 3},
+                {"matrix": [3, 4], "x": 4, "y": 3, "w": 2},
+                {"matrix": [3, 6], "x": 6, "y": 3},
+                {"matrix": [3, 7], "x": 7, "y": 3},
+                {"matrix": [3, 8], "x": 8, "y": 3},
+                {"matrix": [3, 9], "x": 9, "y": 3},
+                {"matrix": [3, 10], "x": 10, "y": 3},
+                {"matrix": [3, 11], "x": 11, "y": 3}
             ]
         },
         "LAYOUT_ortho_4x12_1x2uC": {
             "layout": [
-                {"label":"K00 (D0,F1)", "x":0, "y":0},
-                {"label":"K01 (D0,F0)", "x":1, "y":0},
-                {"label":"K02 (D0,B0)", "x":2, "y":0},
-                {"label":"K03 (D0,C7)", "x":3, "y":0},
-                {"label":"K04 (D0,F4)", "x":4, "y":0},
-                {"label":"K05 (D0,F5)", "x":5, "y":0},
-                {"label":"K06 (D0,F6)", "x":6, "y":0},
-                {"label":"K07 (D0,F7)", "x":7, "y":0},
-                {"label":"K08 (D0,D4)", "x":8, "y":0},
-                {"label":"K09 (D0,D6)", "x":9, "y":0},
-                {"label":"K0A (D0,B4)", "x":10, "y":0},
-                {"label":"K0B (D0,D7)", "x":11, "y":0},
+                {"matrix": [0, 0], "x": 0, "y": 0},
+                {"matrix": [0, 1], "x": 1, "y": 0},
+                {"matrix": [0, 2], "x": 2, "y": 0},
+                {"matrix": [0, 3], "x": 3, "y": 0},
+                {"matrix": [0, 4], "x": 4, "y": 0},
+                {"matrix": [0, 5], "x": 5, "y": 0},
+                {"matrix": [0, 6], "x": 6, "y": 0},
+                {"matrix": [0, 7], "x": 7, "y": 0},
+                {"matrix": [0, 8], "x": 8, "y": 0},
+                {"matrix": [0, 9], "x": 9, "y": 0},
+                {"matrix": [0, 10], "x": 10, "y": 0},
+                {"matrix": [0, 11], "x": 11, "y": 0},
 
-                {"label":"K10 (B3,F1)", "x":0, "y":1},
-                {"label":"K11 (B3,F0)", "x":1, "y":1},
-                {"label":"K12 (B3,B0)", "x":2, "y":1},
-                {"label":"K13 (B3,C7)", "x":3, "y":1},
-                {"label":"K14 (B3,F4)", "x":4, "y":1},
-                {"label":"K15 (B3,F5)", "x":5, "y":1},
-                {"label":"K16 (B3,F6)", "x":6, "y":1},
-                {"label":"K17 (B3,F7)", "x":7, "y":1},
-                {"label":"K18 (B3,D4)", "x":8, "y":1},
-                {"label":"K19 (B3,D6)", "x":9, "y":1},
-                {"label":"K1A (B3,B4)", "x":10, "y":1},
-                {"label":"K1B (B3,D7)", "x":11, "y":1},
+                {"matrix": [1, 0], "x": 0, "y": 1},
+                {"matrix": [1, 1], "x": 1, "y": 1},
+                {"matrix": [1, 2], "x": 2, "y": 1},
+                {"matrix": [1, 3], "x": 3, "y": 1},
+                {"matrix": [1, 4], "x": 4, "y": 1},
+                {"matrix": [1, 5], "x": 5, "y": 1},
+                {"matrix": [1, 6], "x": 6, "y": 1},
+                {"matrix": [1, 7], "x": 7, "y": 1},
+                {"matrix": [1, 8], "x": 8, "y": 1},
+                {"matrix": [1, 9], "x": 9, "y": 1},
+                {"matrix": [1, 10], "x": 10, "y": 1},
+                {"matrix": [1, 11], "x": 11, "y": 1},
 
-                {"label":"K20 (B2,F1)", "x":0, "y":2},
-                {"label":"K21 (B2,F0)", "x":1, "y":2},
-                {"label":"K22 (B2,B0)", "x":2, "y":2},
-                {"label":"K23 (B2,C7)", "x":3, "y":2},
-                {"label":"K24 (B2,F4)", "x":4, "y":2},
-                {"label":"K25 (B2,F5)", "x":5, "y":2},
-                {"label":"K26 (B2,F6)", "x":6, "y":2},
-                {"label":"K27 (B2,F7)", "x":7, "y":2},
-                {"label":"K28 (B2,D4)", "x":8, "y":2},
-                {"label":"K29 (B2,D6)", "x":9, "y":2},
-                {"label":"K2A (B2,B4)", "x":10, "y":2},
-                {"label":"K2B (B2,D7)", "x":11, "y":2},
+                {"matrix": [2, 0], "x": 0, "y": 2},
+                {"matrix": [2, 1], "x": 1, "y": 2},
+                {"matrix": [2, 2], "x": 2, "y": 2},
+                {"matrix": [2, 3], "x": 3, "y": 2},
+                {"matrix": [2, 4], "x": 4, "y": 2},
+                {"matrix": [2, 5], "x": 5, "y": 2},
+                {"matrix": [2, 6], "x": 6, "y": 2},
+                {"matrix": [2, 7], "x": 7, "y": 2},
+                {"matrix": [2, 8], "x": 8, "y": 2},
+                {"matrix": [2, 9], "x": 9, "y": 2},
+                {"matrix": [2, 10], "x": 10, "y": 2},
+                {"matrix": [2, 11], "x": 11, "y": 2},
 
-                {"label":"K30 (B1,F1)", "x":0, "y":3},
-                {"label":"K31 (B1,F0)", "x":1, "y":3},
-                {"label":"K32 (B1,B0)", "x":2, "y":3},
-                {"label":"K33 (B1,C7)", "x":3, "y":3},
-                {"label":"K34 (B1,F4)", "x":4, "y":3},
-                {"label":"K35 (B1,F5)", "x":5, "y":3, "w":2},
-                {"label":"K37 (B1,F7)", "x":7, "y":3},
-                {"label":"K38 (B1,D4)", "x":8, "y":3},
-                {"label":"K39 (B1,D6)", "x":9, "y":3},
-                {"label":"K3A (B1,B4)", "x":10, "y":3},
-                {"label":"K3B (B1,D7)", "x":11, "y":3}
+                {"matrix": [3, 0], "x": 0, "y": 3},
+                {"matrix": [3, 1], "x": 1, "y": 3},
+                {"matrix": [3, 2], "x": 2, "y": 3},
+                {"matrix": [3, 3], "x": 3, "y": 3},
+                {"matrix": [3, 4], "x": 4, "y": 3},
+                {"matrix": [3, 5], "x": 5, "y": 3, "w": 2},
+                {"matrix": [3, 7], "x": 7, "y": 3},
+                {"matrix": [3, 8], "x": 8, "y": 3},
+                {"matrix": [3, 9], "x": 9, "y": 3},
+                {"matrix": [3, 10], "x": 10, "y": 3},
+                {"matrix": [3, 11], "x": 11, "y": 3}
             ]
         }
 
diff --git a/keyboards/ymdk/ymd40/v2/v2.h b/keyboards/ymdk/ymd40/v2/v2.h
deleted file mode 100644
index d28f6d591a..0000000000
--- a/keyboards/ymdk/ymd40/v2/v2.h
+++ /dev/null
@@ -1,79 +0,0 @@
-/* Copyright 2021 James Young (@noroadsleft)
- *
- * 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 LAYOUT_ortho_4x12( \
-    K00, K01, K02, K03, K04, K05, K06, K07, K08, K09, K0A, K0B,   \
-    K10, K11, K12, K13, K14, K15, K16, K17, K18, K19, K1A, K1B,   \
-    K20, K21, K22, K23, K24, K25, K26, K27, K28, K29, K2A, K2B,   \
-    K30, K31, K32, K33, K34, K35, K36, K37, K38, K39, K3A, K3B    \
-) { \
-    { K00,   K01,   K02,   K03,   K04,   K05,   K06,   K07,   K08,   K09,   K0A,   K0B   }, \
-    { K10,   K11,   K12,   K13,   K14,   K15,   K16,   K17,   K18,   K19,   K1A,   K1B   }, \
-    { K20,   K21,   K22,   K23,   K24,   K25,   K26,   K27,   K28,   K29,   K2A,   K2B   }, \
-    { K30,   K31,   K32,   K33,   K34,   K35,   K36,   K37,   K38,   K39,   K3A,   K3B   }, \
-}
-
-#define LAYOUT_ortho_4x12_2x2u( \
-    K00, K01, K02, K03, K04, K05, K06, K07, K08, K09, K0A, K0B,   \
-    K10, K11, K12, K13, K14, K15, K16, K17, K18, K19, K1A, K1B,   \
-    K20, K21, K22, K23, K24, K25, K26, K27, K28, K29, K2A, K2B,   \
-    K30, K31, K32, K33,   K34,      K37,    K38, K39, K3A, K3B    \
-) { \
-    { K00,   K01,   K02,   K03,   K04,   K05,   K06,   K07,   K08,   K09,   K0A,   K0B   }, \
-    { K10,   K11,   K12,   K13,   K14,   K15,   K16,   K17,   K18,   K19,   K1A,   K1B   }, \
-    { K20,   K21,   K22,   K23,   K24,   K25,   K26,   K27,   K28,   K29,   K2A,   K2B   }, \
-    { K30,   K31,   K32,   K33,   K34,   KC_NO, KC_NO, K37,   K38,   K39,   K3A,   K3B   }, \
-}
-
-#define LAYOUT_ortho_4x12_1x2uR( \
-    K00, K01, K02, K03, K04, K05, K06, K07, K08, K09, K0A, K0B,   \
-    K10, K11, K12, K13, K14, K15, K16, K17, K18, K19, K1A, K1B,   \
-    K20, K21, K22, K23, K24, K25, K26, K27, K28, K29, K2A, K2B,   \
-    K30, K31, K32, K33, K34, K35,    K37,   K38, K39, K3A, K3B    \
-) { \
-    { K00,   K01,   K02,   K03,   K04,   K05,   K06,   K07,   K08,   K09,   K0A,   K0B   }, \
-    { K10,   K11,   K12,   K13,   K14,   K15,   K16,   K17,   K18,   K19,   K1A,   K1B   }, \
-    { K20,   K21,   K22,   K23,   K24,   K25,   K26,   K27,   K28,   K29,   K2A,   K2B   }, \
-    { K30,   K31,   K32,   K33,   K34,   K35,   KC_NO, K37,   K38,   K39,   K3A,   K3B   }, \
-}
-
-#define LAYOUT_ortho_4x12_1x2uL( \
-    K00, K01, K02, K03, K04, K05, K06, K07, K08, K09, K0A, K0B,   \
-    K10, K11, K12, K13, K14, K15, K16, K17, K18, K19, K1A, K1B,   \
-    K20, K21, K22, K23, K24, K25, K26, K27, K28, K29, K2A, K2B,   \
-    K30, K31, K32, K33,    K34,   K36, K37, K38, K39, K3A, K3B    \
-) { \
-    { K00,   K01,   K02,   K03,   K04,   K05,   K06,   K07,   K08,   K09,   K0A,   K0B   }, \
-    { K10,   K11,   K12,   K13,   K14,   K15,   K16,   K17,   K18,   K19,   K1A,   K1B   }, \
-    { K20,   K21,   K22,   K23,   K24,   K25,   K26,   K27,   K28,   K29,   K2A,   K2B   }, \
-    { K30,   K31,   K32,   K33,   K34,   KC_NO, K36,   K37,   K38,   K39,   K3A,   K3B   }, \
-}
-
-#define LAYOUT_ortho_4x12_1x2uC( \
-    K00, K01, K02, K03, K04, K05, K06, K07, K08, K09, K0A, K0B,   \
-    K10, K11, K12, K13, K14, K15, K16, K17, K18, K19, K1A, K1B,   \
-    K20, K21, K22, K23, K24, K25, K26, K27, K28, K29, K2A, K2B,   \
-    K30, K31, K32, K33, K34,    K35,   K37, K38, K39, K3A, K3B    \
-) { \
-    { K00,   K01,   K02,   K03,   K04,   K05,   K06,   K07,   K08,   K09,   K0A,   K0B   }, \
-    { K10,   K11,   K12,   K13,   K14,   K15,   K16,   K17,   K18,   K19,   K1A,   K1B   }, \
-    { K20,   K21,   K22,   K23,   K24,   K25,   K26,   K27,   K28,   K29,   K2A,   K2B   }, \
-    { K30,   K31,   K32,   K33,   K34,   K35,   KC_NO, K37,   K38,   K39,   K3A,   K3B   }, \
-}