summaryrefslogtreecommitdiff
path: root/keyboards
diff options
context:
space:
mode:
Diffstat (limited to 'keyboards')
-rw-r--r--keyboards/ibm/model_m_4th_gen/info.json2561
-rw-r--r--keyboards/ibm/model_m_4th_gen/overnumpad_1xb/config.h35
-rw-r--r--keyboards/ibm/model_m_4th_gen/overnumpad_1xb/info.json28
-rw-r--r--keyboards/ibm/model_m_4th_gen/overnumpad_1xb/overnumpad_1xb.c24
-rw-r--r--keyboards/ibm/model_m_4th_gen/overnumpad_1xb/overnumpad_1xb.h91
-rw-r--r--keyboards/unicomp/classic_ultracl_post_2013/info.json2635
-rw-r--r--keyboards/unicomp/classic_ultracl_post_2013/overnumpad_1xb/config.h34
-rw-r--r--keyboards/unicomp/classic_ultracl_post_2013/overnumpad_1xb/info.json20
-rw-r--r--keyboards/unicomp/classic_ultracl_post_2013/overnumpad_1xb/overnumpad_1xb.c24
-rw-r--r--keyboards/unicomp/classic_ultracl_post_2013/overnumpad_1xb/overnumpad_1xb.h88
-rw-r--r--keyboards/unicomp/classic_ultracl_post_2013/overnumpad_1xb/readme.md2
-rw-r--r--keyboards/unicomp/classic_ultracl_pre_2013/info.json2646
-rw-r--r--keyboards/unicomp/classic_ultracl_pre_2013/overnumpad_1xb/config.h34
-rw-r--r--keyboards/unicomp/classic_ultracl_pre_2013/overnumpad_1xb/info.json20
-rw-r--r--keyboards/unicomp/classic_ultracl_pre_2013/overnumpad_1xb/overnumpad_1xb.c24
-rw-r--r--keyboards/unicomp/classic_ultracl_pre_2013/overnumpad_1xb/overnumpad_1xb.h88
-rw-r--r--keyboards/unicomp/classic_ultracl_pre_2013/overnumpad_1xb/readme.md2
-rw-r--r--keyboards/unicomp/pc122/info.json2001
-rw-r--r--keyboards/unicomp/pc122/overnumpad_1xb/config.h34
-rw-r--r--keyboards/unicomp/pc122/overnumpad_1xb/info.json20
-rw-r--r--keyboards/unicomp/pc122/overnumpad_1xb/overnumpad_1xb.c24
-rw-r--r--keyboards/unicomp/pc122/overnumpad_1xb/overnumpad_1xb.h49
-rw-r--r--keyboards/unicomp/spacesaver_m_post_2013/info.json2647
-rw-r--r--keyboards/unicomp/spacesaver_m_post_2013/overnumpad_1xb/config.h34
-rw-r--r--keyboards/unicomp/spacesaver_m_post_2013/overnumpad_1xb/info.json18
-rw-r--r--keyboards/unicomp/spacesaver_m_post_2013/overnumpad_1xb/overnumpad_1xb.c7
-rw-r--r--keyboards/unicomp/spacesaver_m_post_2013/overnumpad_1xb/overnumpad_1xb.h88
-rw-r--r--keyboards/unicomp/spacesaver_m_pre_2013/info.json2653
-rw-r--r--keyboards/unicomp/spacesaver_m_pre_2013/overnumpad_1xb/config.h34
-rw-r--r--keyboards/unicomp/spacesaver_m_pre_2013/overnumpad_1xb/info.json18
-rw-r--r--keyboards/unicomp/spacesaver_m_pre_2013/overnumpad_1xb/overnumpad_1xb.c7
-rw-r--r--keyboards/unicomp/spacesaver_m_pre_2013/overnumpad_1xb/overnumpad_1xb.h88
32 files changed, 15220 insertions, 858 deletions
diff --git a/keyboards/ibm/model_m_4th_gen/info.json b/keyboards/ibm/model_m_4th_gen/info.json
new file mode 100644
index 0000000000..5c8c658607
--- /dev/null
+++ b/keyboards/ibm/model_m_4th_gen/info.json
@@ -0,0 +1,2561 @@
+{
+ "matrix_pins": {
+ "ghost": true
+ },
+ "usb": {
+ "vid": "0x16C0",
+ "pid": "0x27DB",
+ "device_version": "0.0.1"
+ },
+ "layouts": {
+ "LAYOUT_all": {
+ "layout": [
+ {
+ "matrix": [
+ 0,
+ 0
+ ],
+ "x": 0,
+ "y": 0
+ },
+ {
+ "matrix": [
+ 2,
+ 15
+ ],
+ "x": 2,
+ "y": 0
+ },
+ {
+ "matrix": [
+ 2,
+ 14
+ ],
+ "x": 3,
+ "y": 0
+ },
+ {
+ "matrix": [
+ 1,
+ 14
+ ],
+ "x": 4,
+ "y": 0
+ },
+ {
+ "matrix": [
+ 0,
+ 14
+ ],
+ "x": 5,
+ "y": 0
+ },
+ {
+ "matrix": [
+ 0,
+ 6
+ ],
+ "x": 6.5,
+ "y": 0
+ },
+ {
+ "matrix": [
+ 0,
+ 3
+ ],
+ "x": 7.5,
+ "y": 0
+ },
+ {
+ "matrix": [
+ 1,
+ 4
+ ],
+ "x": 8.5,
+ "y": 0
+ },
+ {
+ "matrix": [
+ 2,
+ 4
+ ],
+ "x": 9.5,
+ "y": 0
+ },
+ {
+ "matrix": [
+ 2,
+ 6
+ ],
+ "x": 11,
+ "y": 0
+ },
+ {
+ "matrix": [
+ 3,
+ 6
+ ],
+ "x": 12,
+ "y": 0
+ },
+ {
+ "matrix": [
+ 3,
+ 8
+ ],
+ "x": 13,
+ "y": 0
+ },
+ {
+ "matrix": [
+ 3,
+ 9
+ ],
+ "x": 14,
+ "y": 0
+ },
+ {
+ "matrix": [
+ 3,
+ 12
+ ],
+ "x": 15.25,
+ "y": 0
+ },
+ {
+ "matrix": [
+ 4,
+ 12
+ ],
+ "x": 16.25,
+ "y": 0
+ },
+ {
+ "matrix": [
+ 6,
+ 11
+ ],
+ "x": 17.25,
+ "y": 0
+ },
+ {
+ "matrix": [
+ 2,
+ 0
+ ],
+ "x": 0,
+ "y": 1.5
+ },
+ {
+ "matrix": [
+ 3,
+ 0
+ ],
+ "x": 1,
+ "y": 1.5
+ },
+ {
+ "matrix": [
+ 3,
+ 15
+ ],
+ "x": 2,
+ "y": 1.5
+ },
+ {
+ "matrix": [
+ 3,
+ 14
+ ],
+ "x": 3,
+ "y": 1.5
+ },
+ {
+ "matrix": [
+ 3,
+ 1
+ ],
+ "x": 4,
+ "y": 1.5
+ },
+ {
+ "matrix": [
+ 2,
+ 1
+ ],
+ "x": 5,
+ "y": 1.5
+ },
+ {
+ "matrix": [
+ 2,
+ 2
+ ],
+ "x": 6,
+ "y": 1.5
+ },
+ {
+ "matrix": [
+ 3,
+ 2
+ ],
+ "x": 7,
+ "y": 1.5
+ },
+ {
+ "matrix": [
+ 3,
+ 3
+ ],
+ "x": 8,
+ "y": 1.5
+ },
+ {
+ "matrix": [
+ 3,
+ 4
+ ],
+ "x": 9,
+ "y": 1.5
+ },
+ {
+ "matrix": [
+ 3,
+ 5
+ ],
+ "x": 10,
+ "y": 1.5
+ },
+ {
+ "matrix": [
+ 2,
+ 5
+ ],
+ "x": 11,
+ "y": 1.5
+ },
+ {
+ "matrix": [
+ 2,
+ 3
+ ],
+ "x": 12,
+ "y": 1.5
+ },
+ {
+ "matrix": [
+ 4,
+ 6
+ ],
+ "x": 13,
+ "y": 1.5
+ },
+ {
+ "matrix": [
+ 1,
+ 6
+ ],
+ "x": 14,
+ "y": 1.5
+ },
+ {
+ "matrix": [
+ 2,
+ 9
+ ],
+ "x": 15.25,
+ "y": 1.5
+ },
+ {
+ "matrix": [
+ 2,
+ 11
+ ],
+ "x": 16.25,
+ "y": 1.5
+ },
+ {
+ "matrix": [
+ 2,
+ 10
+ ],
+ "x": 17.25,
+ "y": 1.5
+ },
+ {
+ "matrix": [
+ 6,
+ 8
+ ],
+ "x": 18.5,
+ "y": 1.5
+ },
+ {
+ "matrix": [
+ 6,
+ 9
+ ],
+ "x": 19.5,
+ "y": 1.5
+ },
+ {
+ "matrix": [
+ 6,
+ 10
+ ],
+ "x": 20.5,
+ "y": 1.5
+ },
+ {
+ "matrix": [
+ 7,
+ 10
+ ],
+ "x": 21.5,
+ "y": 1.5
+ },
+ {
+ "matrix": [
+ 1,
+ 0
+ ],
+ "x": 0,
+ "y": 2.5,
+ "w": 1.5
+ },
+ {
+ "matrix": [
+ 4,
+ 0
+ ],
+ "x": 1.5,
+ "y": 2.5
+ },
+ {
+ "matrix": [
+ 4,
+ 15
+ ],
+ "x": 2.5,
+ "y": 2.5
+ },
+ {
+ "matrix": [
+ 4,
+ 14
+ ],
+ "x": 3.5,
+ "y": 2.5
+ },
+ {
+ "matrix": [
+ 4,
+ 1
+ ],
+ "x": 4.5,
+ "y": 2.5
+ },
+ {
+ "matrix": [
+ 1,
+ 1
+ ],
+ "x": 5.5,
+ "y": 2.5
+ },
+ {
+ "matrix": [
+ 1,
+ 2
+ ],
+ "x": 6.5,
+ "y": 2.5
+ },
+ {
+ "matrix": [
+ 4,
+ 2
+ ],
+ "x": 7.5,
+ "y": 2.5
+ },
+ {
+ "matrix": [
+ 4,
+ 3
+ ],
+ "x": 8.5,
+ "y": 2.5
+ },
+ {
+ "matrix": [
+ 4,
+ 4
+ ],
+ "x": 9.5,
+ "y": 2.5
+ },
+ {
+ "matrix": [
+ 4,
+ 5
+ ],
+ "x": 10.5,
+ "y": 2.5
+ },
+ {
+ "matrix": [
+ 1,
+ 5
+ ],
+ "x": 11.5,
+ "y": 2.5
+ },
+ {
+ "matrix": [
+ 1,
+ 3
+ ],
+ "x": 12.5,
+ "y": 2.5
+ },
+ {
+ "matrix": [
+ 5,
+ 6
+ ],
+ "x": 13.5,
+ "y": 2.5,
+ "w": 1.5
+ },
+ {
+ "matrix": [
+ 2,
+ 8
+ ],
+ "x": 15.25,
+ "y": 2.5
+ },
+ {
+ "matrix": [
+ 3,
+ 11
+ ],
+ "x": 16.25,
+ "y": 2.5
+ },
+ {
+ "matrix": [
+ 3,
+ 10
+ ],
+ "x": 17.25,
+ "y": 2.5
+ },
+ {
+ "matrix": [
+ 4,
+ 8
+ ],
+ "x": 18.5,
+ "y": 2.5
+ },
+ {
+ "matrix": [
+ 4,
+ 9
+ ],
+ "x": 19.5,
+ "y": 2.5
+ },
+ {
+ "matrix": [
+ 4,
+ 10
+ ],
+ "x": 20.5,
+ "y": 2.5
+ },
+ {
+ "matrix": [
+ 4,
+ 11
+ ],
+ "x": 21.5,
+ "y": 2.5
+ },
+ {
+ "matrix": [
+ 1,
+ 15
+ ],
+ "x": 0,
+ "y": 3.5,
+ "w": 1.75
+ },
+ {
+ "matrix": [
+ 5,
+ 0
+ ],
+ "x": 1.75,
+ "y": 3.5
+ },
+ {
+ "matrix": [
+ 5,
+ 15
+ ],
+ "x": 2.75,
+ "y": 3.5
+ },
+ {
+ "matrix": [
+ 5,
+ 14
+ ],
+ "x": 3.75,
+ "y": 3.5
+ },
+ {
+ "matrix": [
+ 5,
+ 1
+ ],
+ "x": 4.75,
+ "y": 3.5
+ },
+ {
+ "matrix": [
+ 0,
+ 1
+ ],
+ "x": 5.75,
+ "y": 3.5
+ },
+ {
+ "matrix": [
+ 0,
+ 2
+ ],
+ "x": 6.75,
+ "y": 3.5
+ },
+ {
+ "matrix": [
+ 5,
+ 2
+ ],
+ "x": 7.75,
+ "y": 3.5
+ },
+ {
+ "matrix": [
+ 5,
+ 3
+ ],
+ "x": 8.75,
+ "y": 3.5
+ },
+ {
+ "matrix": [
+ 5,
+ 4
+ ],
+ "x": 9.75,
+ "y": 3.5
+ },
+ {
+ "matrix": [
+ 5,
+ 5
+ ],
+ "x": 10.75,
+ "y": 3.5
+ },
+ {
+ "matrix": [
+ 0,
+ 5
+ ],
+ "x": 11.75,
+ "y": 3.5
+ },
+ {
+ "matrix": [
+ 6,
+ 5
+ ],
+ "x": 12.75,
+ "y": 3.5
+ },
+ {
+ "matrix": [
+ 6,
+ 6
+ ],
+ "x": 13.75,
+ "y": 3.5,
+ "w": 1.25
+ },
+ {
+ "matrix": [
+ 1,
+ 8
+ ],
+ "x": 18.5,
+ "y": 3.5
+ },
+ {
+ "matrix": [
+ 1,
+ 9
+ ],
+ "x": 19.5,
+ "y": 3.5
+ },
+ {
+ "matrix": [
+ 1,
+ 10
+ ],
+ "x": 20.5,
+ "y": 3.5
+ },
+ {
+ "matrix": [
+ 1,
+ 11
+ ],
+ "x": 21.5,
+ "y": 3.5
+ },
+ {
+ "matrix": [
+ 1,
+ 7
+ ],
+ "x": 0,
+ "y": 4.5,
+ "w": 1.25
+ },
+ {
+ "matrix": [
+ 0,
+ 15
+ ],
+ "x": 1.25,
+ "y": 4.5
+ },
+ {
+ "matrix": [
+ 6,
+ 0
+ ],
+ "x": 2.25,
+ "y": 4.5
+ },
+ {
+ "matrix": [
+ 6,
+ 15
+ ],
+ "x": 3.25,
+ "y": 4.5
+ },
+ {
+ "matrix": [
+ 6,
+ 14
+ ],
+ "x": 4.25,
+ "y": 4.5
+ },
+ {
+ "matrix": [
+ 6,
+ 1
+ ],
+ "x": 5.25,
+ "y": 4.5
+ },
+ {
+ "matrix": [
+ 7,
+ 1
+ ],
+ "x": 6.25,
+ "y": 4.5
+ },
+ {
+ "matrix": [
+ 7,
+ 2
+ ],
+ "x": 7.25,
+ "y": 4.5
+ },
+ {
+ "matrix": [
+ 6,
+ 2
+ ],
+ "x": 8.25,
+ "y": 4.5
+ },
+ {
+ "matrix": [
+ 6,
+ 3
+ ],
+ "x": 9.25,
+ "y": 4.5
+ },
+ {
+ "matrix": [
+ 6,
+ 4
+ ],
+ "x": 10.25,
+ "y": 4.5
+ },
+ {
+ "matrix": [
+ 7,
+ 5
+ ],
+ "x": 11.25,
+ "y": 4.5
+ },
+ {
+ "matrix": [
+ 7,
+ 3
+ ],
+ "x": 12.25,
+ "y": 4.5
+ },
+ {
+ "matrix": [
+ 6,
+ 7
+ ],
+ "x": 13.25,
+ "y": 4.5,
+ "w": 1.75
+ },
+ {
+ "matrix": [
+ 0,
+ 11
+ ],
+ "x": 16.25,
+ "y": 4.5
+ },
+ {
+ "matrix": [
+ 5,
+ 8
+ ],
+ "x": 18.5,
+ "y": 4.5
+ },
+ {
+ "matrix": [
+ 5,
+ 9
+ ],
+ "x": 19.5,
+ "y": 4.5
+ },
+ {
+ "matrix": [
+ 5,
+ 10
+ ],
+ "x": 20.5,
+ "y": 4.5
+ },
+ {
+ "matrix": [
+ 5,
+ 11
+ ],
+ "x": 21.5,
+ "y": 4.5
+ },
+ {
+ "matrix": [
+ 2,
+ 13
+ ],
+ "x": 0,
+ "y": 5.5,
+ "w": 1.5
+ },
+ {
+ "matrix": [
+ 0,
+ 12
+ ],
+ "x": 2.5,
+ "y": 5.5,
+ "w": 1.5
+ },
+ {
+ "matrix": [
+ 7,
+ 15
+ ],
+ "x": 4,
+ "y": 5.5
+ },
+ {
+ "matrix": [
+ 7,
+ 6
+ ],
+ "x": 5,
+ "y": 5.5,
+ "w": 6
+ },
+ {
+ "matrix": [
+ 7,
+ 12
+ ],
+ "x": 11,
+ "y": 5.5,
+ "w": 1.5
+ },
+ {
+ "matrix": [
+ 6,
+ 13
+ ],
+ "x": 13.5,
+ "y": 5.5,
+ "w": 1.5
+ },
+ {
+ "matrix": [
+ 7,
+ 11
+ ],
+ "x": 15.25,
+ "y": 5.5
+ },
+ {
+ "matrix": [
+ 7,
+ 8
+ ],
+ "x": 16.25,
+ "y": 5.5
+ },
+ {
+ "matrix": [
+ 7,
+ 9
+ ],
+ "x": 17.25,
+ "y": 5.5
+ },
+ {
+ "matrix": [
+ 0,
+ 8
+ ],
+ "x": 18.5,
+ "y": 5.5
+ },
+ {
+ "matrix": [
+ 0,
+ 9
+ ],
+ "x": 19.5,
+ "y": 5.5
+ },
+ {
+ "matrix": [
+ 0,
+ 10
+ ],
+ "x": 20.5,
+ "y": 5.5
+ },
+ {
+ "matrix": [
+ 5,
+ 12
+ ],
+ "x": 21.5,
+ "y": 5.5
+ }
+ ]
+ },
+ "LAYOUT_ansi": {
+ "layout": [
+ {
+ "matrix": [
+ 0,
+ 0
+ ],
+ "x": 0,
+ "y": 0
+ },
+ {
+ "matrix": [
+ 2,
+ 15
+ ],
+ "x": 2,
+ "y": 0
+ },
+ {
+ "matrix": [
+ 2,
+ 14
+ ],
+ "x": 3,
+ "y": 0
+ },
+ {
+ "matrix": [
+ 1,
+ 14
+ ],
+ "x": 4,
+ "y": 0
+ },
+ {
+ "matrix": [
+ 0,
+ 14
+ ],
+ "x": 5,
+ "y": 0
+ },
+ {
+ "matrix": [
+ 0,
+ 6
+ ],
+ "x": 6.5,
+ "y": 0
+ },
+ {
+ "matrix": [
+ 0,
+ 3
+ ],
+ "x": 7.5,
+ "y": 0
+ },
+ {
+ "matrix": [
+ 1,
+ 4
+ ],
+ "x": 8.5,
+ "y": 0
+ },
+ {
+ "matrix": [
+ 2,
+ 4
+ ],
+ "x": 9.5,
+ "y": 0
+ },
+ {
+ "matrix": [
+ 2,
+ 6
+ ],
+ "x": 11,
+ "y": 0
+ },
+ {
+ "matrix": [
+ 3,
+ 6
+ ],
+ "x": 12,
+ "y": 0
+ },
+ {
+ "matrix": [
+ 3,
+ 8
+ ],
+ "x": 13,
+ "y": 0
+ },
+ {
+ "matrix": [
+ 3,
+ 9
+ ],
+ "x": 14,
+ "y": 0
+ },
+ {
+ "matrix": [
+ 3,
+ 12
+ ],
+ "x": 15.25,
+ "y": 0
+ },
+ {
+ "matrix": [
+ 4,
+ 12
+ ],
+ "x": 16.25,
+ "y": 0
+ },
+ {
+ "matrix": [
+ 6,
+ 11
+ ],
+ "x": 17.25,
+ "y": 0
+ },
+ {
+ "matrix": [
+ 2,
+ 0
+ ],
+ "x": 0,
+ "y": 1.5
+ },
+ {
+ "matrix": [
+ 3,
+ 0
+ ],
+ "x": 1,
+ "y": 1.5
+ },
+ {
+ "matrix": [
+ 3,
+ 15
+ ],
+ "x": 2,
+ "y": 1.5
+ },
+ {
+ "matrix": [
+ 3,
+ 14
+ ],
+ "x": 3,
+ "y": 1.5
+ },
+ {
+ "matrix": [
+ 3,
+ 1
+ ],
+ "x": 4,
+ "y": 1.5
+ },
+ {
+ "matrix": [
+ 2,
+ 1
+ ],
+ "x": 5,
+ "y": 1.5
+ },
+ {
+ "matrix": [
+ 2,
+ 2
+ ],
+ "x": 6,
+ "y": 1.5
+ },
+ {
+ "matrix": [
+ 3,
+ 2
+ ],
+ "x": 7,
+ "y": 1.5
+ },
+ {
+ "matrix": [
+ 3,
+ 3
+ ],
+ "x": 8,
+ "y": 1.5
+ },
+ {
+ "matrix": [
+ 3,
+ 4
+ ],
+ "x": 9,
+ "y": 1.5
+ },
+ {
+ "matrix": [
+ 3,
+ 5
+ ],
+ "x": 10,
+ "y": 1.5
+ },
+ {
+ "matrix": [
+ 2,
+ 5
+ ],
+ "x": 11,
+ "y": 1.5
+ },
+ {
+ "matrix": [
+ 2,
+ 3
+ ],
+ "x": 12,
+ "y": 1.5
+ },
+ {
+ "matrix": [
+ 1,
+ 6
+ ],
+ "x": 13,
+ "y": 1.5,
+ "w": 2
+ },
+ {
+ "matrix": [
+ 2,
+ 9
+ ],
+ "x": 15.25,
+ "y": 1.5
+ },
+ {
+ "matrix": [
+ 2,
+ 11
+ ],
+ "x": 16.25,
+ "y": 1.5
+ },
+ {
+ "matrix": [
+ 2,
+ 10
+ ],
+ "x": 17.25,
+ "y": 1.5
+ },
+ {
+ "matrix": [
+ 6,
+ 8
+ ],
+ "x": 18.5,
+ "y": 1.5
+ },
+ {
+ "matrix": [
+ 6,
+ 9
+ ],
+ "x": 19.5,
+ "y": 1.5
+ },
+ {
+ "matrix": [
+ 6,
+ 10
+ ],
+ "x": 20.5,
+ "y": 1.5
+ },
+ {
+ "matrix": [
+ 7,
+ 10
+ ],
+ "x": 21.5,
+ "y": 1.5
+ },
+ {
+ "matrix": [
+ 1,
+ 0
+ ],
+ "x": 0,
+ "y": 2.5,
+ "w": 1.5
+ },
+ {
+ "matrix": [
+ 4,
+ 0
+ ],
+ "x": 1.5,
+ "y": 2.5
+ },
+ {
+ "matrix": [
+ 4,
+ 15
+ ],
+ "x": 2.5,
+ "y": 2.5
+ },
+ {
+ "matrix": [
+ 4,
+ 14
+ ],
+ "x": 3.5,
+ "y": 2.5
+ },
+ {
+ "matrix": [
+ 4,
+ 1
+ ],
+ "x": 4.5,
+ "y": 2.5
+ },
+ {
+ "matrix": [
+ 1,
+ 1
+ ],
+ "x": 5.5,
+ "y": 2.5
+ },
+ {
+ "matrix": [
+ 1,
+ 2
+ ],
+ "x": 6.5,
+ "y": 2.5
+ },
+ {
+ "matrix": [
+ 4,
+ 2
+ ],
+ "x": 7.5,
+ "y": 2.5
+ },
+ {
+ "matrix": [
+ 4,
+ 3
+ ],
+ "x": 8.5,
+ "y": 2.5
+ },
+ {
+ "matrix": [
+ 4,
+ 4
+ ],
+ "x": 9.5,
+ "y": 2.5
+ },
+ {
+ "matrix": [
+ 4,
+ 5
+ ],
+ "x": 10.5,
+ "y": 2.5
+ },
+ {
+ "matrix": [
+ 1,
+ 5
+ ],
+ "x": 11.5,
+ "y": 2.5
+ },
+ {
+ "matrix": [
+ 1,
+ 3
+ ],
+ "x": 12.5,
+ "y": 2.5
+ },
+ {
+ "matrix": [
+ 5,
+ 6
+ ],
+ "x": 13.5,
+ "y": 2.5,
+ "w": 1.5
+ },
+ {
+ "matrix": [
+ 2,
+ 8
+ ],
+ "x": 15.25,
+ "y": 2.5
+ },
+ {
+ "matrix": [
+ 3,
+ 11
+ ],
+ "x": 16.25,
+ "y": 2.5
+ },
+ {
+ "matrix": [
+ 3,
+ 10
+ ],
+ "x": 17.25,
+ "y": 2.5
+ },
+ {
+ "matrix": [
+ 4,
+ 8
+ ],
+ "x": 18.5,
+ "y": 2.5
+ },
+ {
+ "matrix": [
+ 4,
+ 9
+ ],
+ "x": 19.5,
+ "y": 2.5
+ },
+ {
+ "matrix": [
+ 4,
+ 10
+ ],
+ "x": 20.5,
+ "y": 2.5
+ },
+ {
+ "matrix": [
+ 4,
+ 11
+ ],
+ "x": 21.5,
+ "y": 2.5,
+ "h": 2
+ },
+ {
+ "matrix": [
+ 1,
+ 15
+ ],
+ "x": 0,
+ "y": 3.5,
+ "w": 1.75
+ },
+ {
+ "matrix": [
+ 5,
+ 0
+ ],
+ "x": 1.75,
+ "y": 3.5
+ },
+ {
+ "matrix": [
+ 5,
+ 15
+ ],
+ "x": 2.75,
+ "y": 3.5
+ },
+ {
+ "matrix": [
+ 5,
+ 14
+ ],
+ "x": 3.75,
+ "y": 3.5
+ },
+ {
+ "matrix": [
+ 5,
+ 1
+ ],
+ "x": 4.75,
+ "y": 3.5
+ },
+ {
+ "matrix": [
+ 0,
+ 1
+ ],
+ "x": 5.75,
+ "y": 3.5
+ },
+ {
+ "matrix": [
+ 0,
+ 2
+ ],
+ "x": 6.75,
+ "y": 3.5
+ },
+ {
+ "matrix": [
+ 5,
+ 2
+ ],
+ "x": 7.75,
+ "y": 3.5
+ },
+ {
+ "matrix": [
+ 5,
+ 3
+ ],
+ "x": 8.75,
+ "y": 3.5
+ },
+ {
+ "matrix": [
+ 5,
+ 4
+ ],
+ "x": 9.75,
+ "y": 3.5
+ },
+ {
+ "matrix": [
+ 5,
+ 5
+ ],
+ "x": 10.75,
+ "y": 3.5
+ },
+ {
+ "matrix": [
+ 0,
+ 5
+ ],
+ "x": 11.75,
+ "y": 3.5
+ },
+ {
+ "matrix": [
+ 6,
+ 6
+ ],
+ "x": 12.75,
+ "y": 3.5,
+ "w": 2.25
+ },
+ {
+ "matrix": [
+ 1,
+ 8
+ ],
+ "x": 18.5,
+ "y": 3.5
+ },
+ {
+ "matrix": [
+ 1,
+ 9
+ ],
+ "x": 19.5,
+ "y": 3.5
+ },
+ {
+ "matrix": [
+ 1,
+ 10
+ ],
+ "x": 20.5,
+ "y": 3.5
+ },
+ {
+ "matrix": [
+ 1,
+ 7
+ ],
+ "x": 0,
+ "y": 4.5,
+ "w": 2.25
+ },
+ {
+ "matrix": [
+ 6,
+ 0
+ ],
+ "x": 2.25,
+ "y": 4.5
+ },
+ {
+ "matrix": [
+ 6,
+ 15
+ ],
+ "x": 3.25,
+ "y": 4.5
+ },
+ {
+ "matrix": [
+ 6,
+ 14
+ ],
+ "x": 4.25,
+ "y": 4.5
+ },
+ {
+ "matrix": [
+ 6,
+ 1
+ ],
+ "x": 5.25,
+ "y": 4.5
+ },
+ {
+ "matrix": [
+ 7,
+ 1
+ ],
+ "x": 6.25,
+ "y": 4.5
+ },
+ {
+ "matrix": [
+ 7,
+ 2
+ ],
+ "x": 7.25,
+ "y": 4.5
+ },
+ {
+ "matrix": [
+ 6,
+ 2
+ ],
+ "x": 8.25,
+ "y": 4.5
+ },
+ {
+ "matrix": [
+ 6,
+ 3
+ ],
+ "x": 9.25,
+ "y": 4.5
+ },
+ {
+ "matrix": [
+ 6,
+ 4
+ ],
+ "x": 10.25,
+ "y": 4.5
+ },
+ {
+ "matrix": [
+ 7,
+ 5
+ ],
+ "x": 11.25,
+ "y": 4.5
+ },
+ {
+ "matrix": [
+ 6,
+ 7
+ ],
+ "x": 12.25,
+ "y": 4.5,
+ "w": 2.75
+ },
+ {
+ "matrix": [
+ 0,
+ 11
+ ],
+ "x": 16.25,
+ "y": 4.5
+ },
+ {
+ "matrix": [
+ 5,
+ 8
+ ],
+ "x": 18.5,
+ "y": 4.5
+ },
+ {
+ "matrix": [
+ 5,
+ 9
+ ],
+ "x": 19.5,
+ "y": 4.5
+ },
+ {
+ "matrix": [
+ 5,
+ 10
+ ],
+ "x": 20.5,
+ "y": 4.5
+ },
+ {
+ "matrix": [
+ 5,
+ 11
+ ],
+ "x": 21.5,
+ "y": 4.5,
+ "h": 2
+ },
+ {
+ "matrix": [
+ 2,
+ 13
+ ],
+ "x": 0,
+ "y": 5.5,
+ "w": 1.5
+ },
+ {
+ "matrix": [
+ 0,
+ 12
+ ],
+ "x": 2.5,
+ "y": 5.5,
+ "w": 1.5
+ },
+ {
+ "matrix": [
+ 7,
+ 6
+ ],
+ "x": 4,
+ "y": 5.5,
+ "w": 7
+ },
+ {
+ "matrix": [
+ 7,
+ 12
+ ],
+ "x": 11,
+ "y": 5.5,
+ "w": 1.5
+ },
+ {
+ "matrix": [
+ 6,
+ 13
+ ],
+ "x": 13.5,
+ "y": 5.5,
+ "w": 1.5
+ },
+ {
+ "matrix": [
+ 7,
+ 11
+ ],
+ "x": 15.25,
+ "y": 5.5
+ },
+ {
+ "matrix": [
+ 7,
+ 8
+ ],
+ "x": 16.25,
+ "y": 5.5
+ },
+ {
+ "matrix": [
+ 7,
+ 9
+ ],
+ "x": 17.25,
+ "y": 5.5
+ },
+ {
+ "matrix": [
+ 0,
+ 9
+ ],
+ "x": 18.5,
+ "y": 5.5,
+ "w": 2
+ },
+ {
+ "matrix": [
+ 0,
+ 10
+ ],
+ "x": 20.5,
+ "y": 5.5
+ }
+ ]
+ },
+ "LAYOUT_iso": {
+ "layout": [
+ {
+ "matrix": [
+ 0,
+ 0
+ ],
+ "x": 0,
+ "y": 0
+ },
+ {
+ "matrix": [
+ 2,
+ 15
+ ],
+ "x": 2,
+ "y": 0
+ },
+ {
+ "matrix": [
+ 2,
+ 14
+ ],
+ "x": 3,
+ "y": 0
+ },
+ {
+ "matrix": [
+ 1,
+ 14
+ ],
+ "x": 4,
+ "y": 0
+ },
+ {
+ "matrix": [
+ 0,
+ 14
+ ],
+ "x": 5,
+ "y": 0
+ },
+ {
+ "matrix": [
+ 0,
+ 6
+ ],
+ "x": 6.5,
+ "y": 0
+ },
+ {
+ "matrix": [
+ 0,
+ 3
+ ],
+ "x": 7.5,
+ "y": 0
+ },
+ {
+ "matrix": [
+ 1,
+ 4
+ ],
+ "x": 8.5,
+ "y": 0
+ },
+ {
+ "matrix": [
+ 2,
+ 4
+ ],
+ "x": 9.5,
+ "y": 0
+ },
+ {
+ "matrix": [
+ 2,
+ 6
+ ],
+ "x": 11,
+ "y": 0
+ },
+ {
+ "matrix": [
+ 3,
+ 6
+ ],
+ "x": 12,
+ "y": 0
+ },
+ {
+ "matrix": [
+ 3,
+ 8
+ ],
+ "x": 13,
+ "y": 0
+ },
+ {
+ "matrix": [
+ 3,
+ 9
+ ],
+ "x": 14,
+ "y": 0
+ },
+ {
+ "matrix": [
+ 3,
+ 12
+ ],
+ "x": 15.25,
+ "y": 0
+ },
+ {
+ "matrix": [
+ 4,
+ 12
+ ],
+ "x": 16.25,
+ "y": 0
+ },
+ {
+ "matrix": [
+ 6,
+ 11
+ ],
+ "x": 17.25,
+ "y": 0
+ },
+ {
+ "matrix": [
+ 2,
+ 0
+ ],
+ "x": 0,
+ "y": 1.5
+ },
+ {
+ "matrix": [
+ 3,
+ 0
+ ],
+ "x": 1,
+ "y": 1.5
+ },
+ {
+ "matrix": [
+ 3,
+ 15
+ ],
+ "x": 2,
+ "y": 1.5
+ },
+ {
+ "matrix": [
+ 3,
+ 14
+ ],
+ "x": 3,
+ "y": 1.5
+ },
+ {
+ "matrix": [
+ 3,
+ 1
+ ],
+ "x": 4,
+ "y": 1.5
+ },
+ {
+ "matrix": [
+ 2,
+ 1
+ ],
+ "x": 5,
+ "y": 1.5
+ },
+ {
+ "matrix": [
+ 2,
+ 2
+ ],
+ "x": 6,
+ "y": 1.5
+ },
+ {
+ "matrix": [
+ 3,
+ 2
+ ],
+ "x": 7,
+ "y": 1.5
+ },
+ {
+ "matrix": [
+ 3,
+ 3
+ ],
+ "x": 8,
+ "y": 1.5
+ },
+ {
+ "matrix": [
+ 3,
+ 4
+ ],
+ "x": 9,
+ "y": 1.5
+ },
+ {
+ "matrix": [
+ 3,
+ 5
+ ],
+ "x": 10,
+ "y": 1.5
+ },
+ {
+ "matrix": [
+ 2,
+ 5
+ ],
+ "x": 11,
+ "y": 1.5
+ },
+ {
+ "matrix": [
+ 2,
+ 3
+ ],
+ "x": 12,
+ "y": 1.5
+ },
+ {
+ "matrix": [
+ 1,
+ 6
+ ],
+ "x": 13,
+ "y": 1.5,
+ "w": 2
+ },
+ {
+ "matrix": [
+ 2,
+ 9
+ ],
+ "x": 15.25,
+ "y": 1.5
+ },
+ {
+ "matrix": [
+ 2,
+ 11
+ ],
+ "x": 16.25,
+ "y": 1.5
+ },
+ {
+ "matrix": [
+ 2,
+ 10
+ ],
+ "x": 17.25,
+ "y": 1.5
+ },
+ {
+ "matrix": [
+ 6,
+ 8
+ ],
+ "x": 18.5,
+ "y": 1.5
+ },
+ {
+ "matrix": [
+ 6,
+ 9
+ ],
+ "x": 19.5,
+ "y": 1.5
+ },
+ {
+ "matrix": [
+ 6,
+ 10
+ ],
+ "x": 20.5,
+ "y": 1.5
+ },
+ {
+ "matrix": [
+ 7,
+ 10
+ ],
+ "x": 21.5,
+ "y": 1.5
+ },
+ {
+ "matrix": [
+ 1,
+ 0
+ ],
+ "x": 0,
+ "y": 2.5,
+ "w": 1.5
+ },
+ {
+ "matrix": [
+ 4,
+ 0
+ ],
+ "x": 1.5,
+ "y": 2.5
+ },
+ {
+ "matrix": [
+ 4,
+ 15
+ ],
+ "x": 2.5,
+ "y": 2.5
+ },
+ {
+ "matrix": [
+ 4,
+ 14
+ ],
+ "x": 3.5,
+ "y": 2.5
+ },
+ {
+ "matrix": [
+ 4,
+ 1
+ ],
+ "x": 4.5,
+ "y": 2.5
+ },
+ {
+ "matrix": [
+ 1,
+ 1
+ ],
+ "x": 5.5,
+ "y": 2.5
+ },
+ {
+ "matrix": [
+ 1,
+ 2
+ ],
+ "x": 6.5,
+ "y": 2.5
+ },
+ {
+ "matrix": [
+ 4,
+ 2
+ ],
+ "x": 7.5,
+ "y": 2.5
+ },
+ {
+ "matrix": [
+ 4,
+ 3
+ ],
+ "x": 8.5,
+ "y": 2.5
+ },
+ {
+ "matrix": [
+ 4,
+ 4
+ ],
+ "x": 9.5,
+ "y": 2.5
+ },
+ {
+ "matrix": [
+ 4,
+ 5
+ ],
+ "x": 10.5,
+ "y": 2.5
+ },
+ {
+ "matrix": [
+ 1,
+ 5
+ ],
+ "x": 11.5,
+ "y": 2.5
+ },
+ {
+ "matrix": [
+ 1,
+ 3
+ ],
+ "x": 12.5,
+ "y": 2.5
+ },
+ {
+ "matrix": [
+ 6,
+ 6
+ ],
+ "x": 13.75,
+ "y": 2.5,
+ "w": 1.25,
+ "h": 2
+ },
+ {
+ "matrix": [
+ 2,
+ 8
+ ],
+ "x": 15.25,
+ "y": 2.5
+ },
+ {
+ "matrix": [
+ 3,
+ 11
+ ],
+ "x": 16.25,
+ "y": 2.5
+ },
+ {
+ "matrix": [
+ 3,
+ 10
+ ],
+ "x": 17.25,
+ "y": 2.5
+ },
+ {
+ "matrix": [
+ 4,
+ 8
+ ],
+ "x": 18.5,
+ "y": 2.5
+ },
+ {
+ "matrix": [
+ 4,
+ 9
+ ],
+ "x": 19.5,
+ "y": 2.5
+ },
+ {
+ "matrix": [
+ 4,
+ 10
+ ],
+ "x": 20.5,
+ "y": 2.5
+ },
+ {
+ "matrix": [
+ 4,
+ 11
+ ],
+ "x": 21.5,
+ "y": 2.5,
+ "h": 2
+ },
+ {
+ "matrix": [
+ 1,
+ 15
+ ],
+ "x": 0,
+ "y": 3.5,
+ "w": 1.75
+ },
+ {
+ "matrix": [
+ 5,
+ 0
+ ],
+ "x": 1.75,
+ "y": 3.5
+ },
+ {
+ "matrix": [
+ 5,
+ 15
+ ],
+ "x": 2.75,
+ "y": 3.5
+ },
+ {
+ "matrix": [
+ 5,
+ 14
+ ],
+ "x": 3.75,
+ "y": 3.5
+ },
+ {
+ "matrix": [
+ 5,
+ 1
+ ],
+ "x": 4.75,
+ "y": 3.5
+ },
+ {
+ "matrix": [
+ 0,
+ 1
+ ],
+ "x": 5.75,
+ "y": 3.5
+ },
+ {
+ "matrix": [
+ 0,
+ 2
+ ],
+ "x": 6.75,
+ "y": 3.5
+ },
+ {
+ "matrix": [
+ 5,
+ 2
+ ],
+ "x": 7.75,
+ "y": 3.5
+ },
+ {
+ "matrix": [
+ 5,
+ 3
+ ],
+ "x": 8.75,
+ "y": 3.5
+ },
+ {
+ "matrix": [
+ 5,
+ 4
+ ],
+ "x": 9.75,
+ "y": 3.5
+ },
+ {
+ "matrix": [
+ 5,
+ 5
+ ],
+ "x": 10.75,
+ "y": 3.5
+ },
+ {
+ "matrix": [
+ 0,
+ 5
+ ],
+ "x": 11.75,
+ "y": 3.5
+ },
+ {
+ "matrix": [
+ 6,
+ 5
+ ],
+ "x": 12.75,
+ "y": 3.5
+ },
+ {
+ "matrix": [
+ 1,
+ 8
+ ],
+ "x": 18.5,
+ "y": 3.5
+ },
+ {
+ "matrix": [
+ 1,
+ 9
+ ],
+ "x": 19.5,
+ "y": 3.5
+ },
+ {
+ "matrix": [
+ 1,
+ 10
+ ],
+ "x": 20.5,
+ "y": 3.5
+ },
+ {
+ "matrix": [
+ 1,
+ 7
+ ],
+ "x": 0,
+ "y": 4.5,
+ "w": 1.25
+ },
+ {
+ "matrix": [
+ 0,
+ 15
+ ],
+ "x": 1.25,
+ "y": 4.5
+ },
+ {
+ "matrix": [
+ 6,
+ 0
+ ],
+ "x": 2.25,
+ "y": 4.5
+ },
+ {
+ "matrix": [
+ 6,
+ 15
+ ],
+ "x": 3.25,
+ "y": 4.5
+ },
+ {
+ "matrix": [
+ 6,
+ 14
+ ],
+ "x": 4.25,
+ "y": 4.5
+ },
+ {
+ "matrix": [
+ 6,
+ 1
+ ],
+ "x": 5.25,
+ "y": 4.5
+ },
+ {
+ "matrix": [
+ 7,
+ 1
+ ],
+ "x": 6.25,
+ "y": 4.5
+ },
+ {
+ "matrix": [
+ 7,
+ 2
+ ],
+ "x": 7.25,
+ "y": 4.5
+ },
+ {
+ "matrix": [
+ 6,
+ 2
+ ],
+ "x": 8.25,
+ "y": 4.5
+ },
+ {
+ "matrix": [
+ 6,
+ 3
+ ],
+ "x": 9.25,
+ "y": 4.5
+ },
+ {
+ "matrix": [
+ 6,
+ 4
+ ],
+ "x": 10.25,
+ "y": 4.5
+ },
+ {
+ "matrix": [
+ 7,
+ 5
+ ],
+ "x": 11.25,
+ "y": 4.5
+ },
+ {
+ "matrix": [
+ 6,
+ 7
+ ],
+ "x": 12.25,
+ "y": 4.5,
+ "w": 2.75
+ },
+ {
+ "matrix": [
+ 0,
+ 11
+ ],
+ "x": 16.25,
+ "y": 4.5
+ },
+ {
+ "matrix": [
+ 5,
+ 8
+ ],
+ "x": 18.5,
+ "y": 4.5
+ },
+ {
+ "matrix": [
+ 5,
+ 9
+ ],
+ "x": 19.5,
+ "y": 4.5
+ },
+ {
+ "matrix": [
+ 5,
+ 10
+ ],
+ "x": 20.5,
+ "y": 4.5
+ },
+ {
+ "matrix": [
+ 5,
+ 11
+ ],
+ "x": 21.5,
+ "y": 4.5,
+ "h": 2
+ },
+ {
+ "matrix": [
+ 2,
+ 13
+ ],
+ "x": 0,
+ "y": 5.5,
+ "w": 1.5
+ },
+ {
+ "matrix": [
+ 0,
+ 12
+ ],
+ "x": 2.5,
+ "y": 5.5,
+ "w": 1.5
+ },
+ {
+ "matrix": [
+ 7,
+ 6
+ ],
+ "x": 4,
+ "y": 5.5,
+ "w": 7
+ },
+ {
+ "matrix": [
+ 7,
+ 12
+ ],
+ "x": 11,
+ "y": 5.5,
+ "w": 1.5
+ },
+ {
+ "matrix": [
+ 6,
+ 13
+ ],
+ "x": 13.5,
+ "y": 5.5,
+ "w": 1.5
+ },
+ {
+ "matrix": [
+ 7,
+ 11
+ ],
+ "x": 15.25,
+ "y": 5.5
+ },
+ {
+ "matrix": [
+ 7,
+ 8
+ ],
+ "x": 16.25,
+ "y": 5.5
+ },
+ {
+ "matrix": [
+ 7,
+ 9
+ ],
+ "x": 17.25,
+ "y": 5.5
+ },
+ {
+ "matrix": [
+ 0,
+ 9
+ ],
+ "x": 18.5,
+ "y": 5.5,
+ "w": 2
+ },
+ {
+ "matrix": [
+ 0,
+ 10
+ ],
+ "x": 20.5,
+ "y": 5.5
+ }
+ ]
+ }
+ }
+}
diff --git a/keyboards/ibm/model_m_4th_gen/overnumpad_1xb/config.h b/keyboards/ibm/model_m_4th_gen/overnumpad_1xb/config.h
index 37e578dfea..71e60e9cfe 100644
--- a/keyboards/ibm/model_m_4th_gen/overnumpad_1xb/config.h
+++ b/keyboards/ibm/model_m_4th_gen/overnumpad_1xb/config.h
@@ -15,42 +15,17 @@
*/
#pragma once
+#define DEF_SERIAL_NUMBER "purdea.ro:overnumpad_controller"
-#define SERIAL_NUMBER "purdea.ro:overnumpad_controller"
-
-/*
- * Keyboard Matrix Assignments
- *
- * Change this to how you wired your keyboard
- * COLS: AVR pins used for columns, left to right
- * ROWS: AVR pins used for rows, top to bottom
- * DIODE_DIRECTION: COL2ROW = COL = Anode (+), ROW = Cathode (-, marked on diode)
- * ROW2COL = ROW = Anode (+), COL = Cathode (-, marked on diode)
- *
- */
-
-// All pins in order from left-to-right, as seen on the keyboard:
-// C3, C2, C1, C0, A3, A4, A5, A6, A7, C4, C5, B0, B1, B10, B12, B13, B14, B15, C6, C7, C8, C9, A8, A9, A10,
-// On this chip A10, B10 have stronger pull-ups, so it's better to avoid them if possible.
-
-// On this keyboard the right-most pin is not used, A10 can be ignored.
-// On this keyboard the pins are ordered in the following way: (top/bottom meaning where the trace is routed on the membranes)
-// top, top, top, top, top, top, top, top, bottom, top, bottom, top, bottom, top, bottom, top, bottom, bottom, top, top, top, top, bottom, bottom
-
-#define MATRIX_COL_PINS { C3, C2, C1, C0, A3, A4, A5, A6, C4, B0, B10, B13, C6, C7, C8, C9 }
-#define MATRIX_ROW_PINS { A7, C5, B1, B12, B14, B15, A8, A9 }
-
-/* COL2ROW, ROW2COL*/
-#define DIODE_DIRECTION ROW2COL
-
-/* define if matrix has ghost (lacks anti-ghosting diodes) */
-#define MATRIX_HAS_GHOST
+#ifndef SERIAL_NUMBER
+#define SERIAL_NUMBER DEF_SERIAL_NUMBER
+#endif
#define STM32_HSECLK 16000000
#define SOLENOID_PIN B5
#define HAPTIC_ENABLE_PIN C13
-#define SOLENOID_DEFAULT_DWELL 4
+#define SOLENOID_DEFAULT_DWELL 20
#define SOLENOID_MIN_DWELL 4
#define HAPTIC_OFF_IN_LOW_POWER 1
#define NO_HAPTIC_MOD
diff --git a/keyboards/ibm/model_m_4th_gen/overnumpad_1xb/info.json b/keyboards/ibm/model_m_4th_gen/overnumpad_1xb/info.json
index 2aebd925ee..e87eb4f3c3 100644
--- a/keyboards/ibm/model_m_4th_gen/overnumpad_1xb/info.json
+++ b/keyboards/ibm/model_m_4th_gen/overnumpad_1xb/info.json
@@ -1,13 +1,8 @@
{
- "keyboard_name": "IBM Model M (4th generation)",
+ "keyboard_name": "IBM Model M (4th generation)",
"manufacturer": "IBM/Purdea Andrei",
- "url": "https://github.com/purdeaandrei/overnumpad_controller_1xb",
- "maintainer": "purdeaandrei",
- "usb": {
- "vid": "0x16C0",
- "pid": "0x27DB",
- "device_version": "0.0.1"
- },
+ "url": "https://github.com/purdeaandrei/overnumpad_controller_1xb",
+ "maintainer": "purdeaandrei",
"indicators": {
"caps_lock": "C11",
"num_lock": "C12",
@@ -15,15 +10,12 @@
},
"processor": "STM32F446", // RET6
"bootloader": "stm32-dfu",
- "layouts": {
- "LAYOUT_all": {
- "layout": [{"x":0, "y":0}, {"x":2, "y":0}, {"x":3, "y":0}, {"x":4, "y":0}, {"x":5, "y":0}, {"x":6.5, "y":0}, {"x":7.5, "y":0}, {"x":8.5, "y":0}, {"x":9.5, "y":0}, {"x":11, "y":0}, {"x":12, "y":0}, {"x":13, "y":0}, {"x":14, "y":0}, {"x":15.25, "y":0}, {"x":16.25, "y":0}, {"x":17.25, "y":0}, {"x":0, "y":1.5}, {"x":1, "y":1.5}, {"x":2, "y":1.5}, {"x":3, "y":1.5}, {"x":4, "y":1.5}, {"x":5, "y":1.5}, {"x":6, "y":1.5}, {"x":7, "y":1.5}, {"x":8, "y":1.5}, {"x":9, "y":1.5}, {"x":10, "y":1.5}, {"x":11, "y":1.5}, {"x":12, "y":1.5}, {"x":13, "y":1.5}, {"x":14, "y":1.5}, {"x":15.25, "y":1.5}, {"x":16.25, "y":1.5}, {"x":17.25, "y":1.5}, {"x":18.5, "y":1.5}, {"x":19.5, "y":1.5}, {"x":20.5, "y":1.5}, {"x":21.5, "y":1.5}, {"x":0, "y":2.5, "w":1.5}, {"x":1.5, "y":2.5}, {"x":2.5, "y":2.5}, {"x":3.5, "y":2.5}, {"x":4.5, "y":2.5}, {"x":5.5, "y":2.5}, {"x":6.5, "y":2.5}, {"x":7.5, "y":2.5}, {"x":8.5, "y":2.5}, {"x":9.5, "y":2.5}, {"x":10.5, "y":2.5}, {"x":11.5, "y":2.5}, {"x":12.5, "y":2.5}, {"x":13.5, "y":2.5, "w":1.5}, {"x":15.25, "y":2.5}, {"x":16.25, "y":2.5}, {"x":17.25, "y":2.5}, {"x":18.5, "y":2.5}, {"x":19.5, "y":2.5}, {"x":20.5, "y":2.5}, {"x":21.5, "y":2.5}, {"x":0, "y":3.5, "w":1.75}, {"x":1.75, "y":3.5}, {"x":2.75, "y":3.5}, {"x":3.75, "y":3.5}, {"x":4.75, "y":3.5}, {"x":5.75, "y":3.5}, {"x":6.75, "y":3.5}, {"x":7.75, "y":3.5}, {"x":8.75, "y":3.5}, {"x":9.75, "y":3.5}, {"x":10.75, "y":3.5}, {"x":11.75, "y":3.5}, {"x":12.75, "y":3.5}, {"x":13.75, "y":3.5, "w":1.25}, {"x":18.5, "y":3.5}, {"x":19.5, "y":3.5}, {"x":20.5, "y":3.5}, {"x":21.5, "y":3.5}, {"x":0, "y":4.5, "w":1.25}, {"x":1.25, "y":4.5}, {"x":2.25, "y":4.5}, {"x":3.25, "y":4.5}, {"x":4.25, "y":4.5}, {"x":5.25, "y":4.5}, {"x":6.25, "y":4.5}, {"x":7.25, "y":4.5}, {"x":8.25, "y":4.5}, {"x":9.25, "y":4.5}, {"x":10.25, "y":4.5}, {"x":11.25, "y":4.5}, {"x":12.25, "y":4.5}, {"x":13.25, "y":4.5, "w":1.75}, {"x":16.25, "y":4.5}, {"x":18.5, "y":4.5}, {"x":19.5, "y":4.5}, {"x":20.5, "y":4.5}, {"x":21.5, "y":4.5}, {"x":0, "y":5.5, "w":1.5}, {"x":2.5, "y":5.5, "w":1.5}, {"x":4, "y":5.5}, {"x":5, "y":5.5, "w":6}, {"x":11, "y":5.5, "w":1.5}, {"x":13.5, "y":5.5, "w":1.5}, {"x":15.25, "y":5.5}, {"x":16.25, "y":5.5}, {"x":17.25, "y":5.5}, {"x":18.5, "y":5.5}, {"x":19.5, "y":5.5}, {"x":20.5, "y":5.5}, {"x":21.5, "y":5.5}]
- },
- "LAYOUT_ansi": {
- "layout": [{"x":0, "y":0}, {"x":2, "y":0}, {"x":3, "y":0}, {"x":4, "y":0}, {"x":5, "y":0}, {"x":6.5, "y":0}, {"x":7.5, "y":0}, {"x":8.5, "y":0}, {"x":9.5, "y":0}, {"x":11, "y":0}, {"x":12, "y":0}, {"x":13, "y":0}, {"x":14, "y":0}, {"x":15.25, "y":0}, {"x":16.25, "y":0}, {"x":17.25, "y":0}, {"x":0, "y":1.5}, {"x":1, "y":1.5}, {"x":2, "y":1.5}, {"x":3, "y":1.5}, {"x":4, "y":1.5}, {"x":5, "y":1.5}, {"x":6, "y":1.5}, {"x":7, "y":1.5}, {"x":8, "y":1.5}, {"x":9, "y":1.5}, {"x":10, "y":1.5}, {"x":11, "y":1.5}, {"x":12, "y":1.5}, {"x":13, "y":1.5, "w":2}, {"x":15.25, "y":1.5}, {"x":16.25, "y":1.5}, {"x":17.25, "y":1.5}, {"x":18.5, "y":1.5}, {"x":19.5, "y":1.5}, {"x":20.5, "y":1.5}, {"x":21.5, "y":1.5}, {"x":0, "y":2.5, "w":1.5}, {"x":1.5, "y":2.5}, {"x":2.5, "y":2.5}, {"x":3.5, "y":2.5}, {"x":4.5, "y":2.5}, {"x":5.5, "y":2.5}, {"x":6.5, "y":2.5}, {"x":7.5, "y":2.5}, {"x":8.5, "y":2.5}, {"x":9.5, "y":2.5}, {"x":10.5, "y":2.5}, {"x":11.5, "y":2.5}, {"x":12.5, "y":2.5}, {"x":13.5, "y":2.5, "w":1.5}, {"x":15.25, "y":2.5}, {"x":16.25, "y":2.5}, {"x":17.25, "y":2.5}, {"x":18.5, "y":2.5}, {"x":19.5, "y":2.5}, {"x":20.5, "y":2.5}, {"x":21.5, "y":2.5, "h":2}, {"x":0, "y":3.5, "w":1.75}, {"x":1.75, "y":3.5}, {"x":2.75, "y":3.5}, {"x":3.75, "y":3.5}, {"x":4.75, "y":3.5}, {"x":5.75, "y":3.5}, {"x":6.75, "y":3.5}, {"x":7.75, "y":3.5}, {"x":8.75, "y":3.5}, {"x":9.75, "y":3.5}, {"x":10.75, "y":3.5}, {"x":11.75, "y":3.5}, {"x":12.75, "y":3.5, "w":2.25}, {"x":18.5, "y":3.5}, {"x":19.5, "y":3.5}, {"x":20.5, "y":3.5}, {"x":0, "y":4.5, "w":2.25}, {"x":2.25, "y":4.5}, {"x":3.25, "y":4.5}, {"x":4.25, "y":4.5}, {"x":5.25, "y":4.5}, {"x":6.25, "y":4.5}, {"x":7.25, "y":4.5}, {"x":8.25, "y":4.5}, {"x":9.25, "y":4.5}, {"x":10.25, "y":4.5}, {"x":11.25, "y":4.5}, {"x":12.25, "y":4.5, "w":2.75}, {"x":16.25, "y":4.5}, {"x":18.5, "y":4.5}, {"x":19.5, "y":4.5}, {"x":20.5, "y":4.5}, {"x":21.5, "y":4.5, "h":2}, {"x":0, "y":5.5, "w":1.5}, {"x":2.5, "y":5.5, "w":1.5}, {"x":4, "y":5.5, "w":7}, {"x":11, "y":5.5, "w":1.5}, {"x":13.5, "y":5.5, "w":1.5}, {"x":15.25, "y":5.5}, {"x":16.25, "y":5.5}, {"x":17.25, "y":5.5}, {"x":18.5, "y":5.5, "w":2}, {"x":20.5, "y":5.5}]
- },
- "LAYOUT_iso": {
- "layout": [{"x":0, "y":0}, {"x":2, "y":0}, {"x":3, "y":0}, {"x":4, "y":0}, {"x":5, "y":0}, {"x":6.5, "y":0}, {"x":7.5, "y":0}, {"x":8.5, "y":0}, {"x":9.5, "y":0}, {"x":11, "y":0}, {"x":12, "y":0}, {"x":13, "y":0}, {"x":14, "y":0}, {"x":15.25, "y":0}, {"x":16.25, "y":0}, {"x":17.25, "y":0}, {"x":0, "y":1.5}, {"x":1, "y":1.5}, {"x":2, "y":1.5}, {"x":3, "y":1.5}, {"x":4, "y":1.5}, {"x":5, "y":1.5}, {"x":6, "y":1.5}, {"x":7, "y":1.5}, {"x":8, "y":1.5}, {"x":9, "y":1.5}, {"x":10, "y":1.5}, {"x":11, "y":1.5}, {"x":12, "y":1.5}, {"x":13, "y":1.5, "w":2}, {"x":15.25, "y":1.5}, {"x":16.25, "y":1.5}, {"x":17.25, "y":1.5}, {"x":18.5, "y":1.5}, {"x":19.5, "y":1.5}, {"x":20.5, "y":1.5}, {"x":21.5, "y":1.5}, {"x":0, "y":2.5, "w":1.5}, {"x":1.5, "y":2.5}, {"x":2.5, "y":2.5}, {"x":3.5, "y":2.5}, {"x":4.5, "y":2.5}, {"x":5.5, "y":2.5}, {"x":6.5, "y":2.5}, {"x":7.5, "y":2.5}, {"x":8.5, "y":2.5}, {"x":9.5, "y":2.5}, {"x":10.5, "y":2.5}, {"x":11.5, "y":2.5}, {"x":12.5, "y":2.5}, {"x":13.75, "y":2.5, "w":1.25, "h":2}, {"x":15.25, "y":2.5}, {"x":16.25, "y":2.5}, {"x":17.25, "y":2.5}, {"x":18.5, "y":2.5}, {"x":19.5, "y":2.5}, {"x":20.5, "y":2.5}, {"x":21.5, "y":2.5, "h":2}, {"x":0, "y":3.5, "w":1.75}, {"x":1.75, "y":3.5}, {"x":2.75, "y":3.5}, {"x":3.75, "y":3.5}, {"x":4.75, "y":3.5}, {"x":5.75, "y":3.5}, {"x":6.75, "y":3.5}, {"x":7.75, "y":3.5}, {"x":8.75, "y":3.5}, {"x":9.75, "y":3.5}, {"x":10.75, "y":3.5}, {"x":11.75, "y":3.5}, {"x":12.75, "y":3.5}, {"x":18.5, "y":3.5}, {"x":19.5, "y":3.5}, {"x":20.5, "y":3.5}, {"x":0, "y":4.5, "w":1.25}, {"x":1.25, "y":4.5}, {"x":2.25, "y":4.5}, {"x":3.25, "y":4.5}, {"x":4.25, "y":4.5}, {"x":5.25, "y":4.5}, {"x":6.25, "y":4.5}, {"x":7.25, "y":4.5}, {"x":8.25, "y":4.5}, {"x":9.25, "y":4.5}, {"x":10.25, "y":4.5}, {"x":11.25, "y":4.5}, {"x":12.25, "y":4.5, "w":2.75}, {"x":16.25, "y":4.5}, {"x":18.5, "y":4.5}, {"x":19.5, "y":4.5}, {"x":20.5, "y":4.5}, {"x":21.5, "y":4.5, "h":2}, {"x":0, "y":5.5, "w":1.5}, {"x":2.5, "y":5.5, "w":1.5}, {"x":4, "y":5.5, "w":7}, {"x":11, "y":5.5, "w":1.5}, {"x":13.5, "y":5.5, "w":1.5}, {"x":15.25, "y":5.5}, {"x":16.25, "y":5.5}, {"x":17.25, "y":5.5}, {"x":18.5, "y":5.5, "w":2}, {"x":20.5, "y":5.5}]
- }
+ "diode_direction": "ROW2COL",
+ "matrix_pins": {
+ // All pins in order from left-to-right, as seen on the keyboard:
+ // C3, C2, C1, C0, A3, A4, A5, A6, A7, C4, C5, B0, B1, B10, B12, B13, B14, B15, C6, C7, C8, C9, A8, A9, A10,
+ // On this keyboard columns and rows are staggered:
+ "cols": ["C3", "C2", "C1", "C0", "A3", "A4", "A5", "A6", "C4", "B0", "B10", "B13", "C6", "C7", "C8", "C9"],
+ "rows": ["A7", "C5", "B1", "B12", "B14", "B15", "A8", "A9"]
}
}
diff --git a/keyboards/ibm/model_m_4th_gen/overnumpad_1xb/overnumpad_1xb.c b/keyboards/ibm/model_m_4th_gen/overnumpad_1xb/overnumpad_1xb.c
deleted file mode 100644
index cb5ec3dc12..0000000000
--- a/keyboards/ibm/model_m_4th_gen/overnumpad_1xb/overnumpad_1xb.c
+++ /dev/null
@@ -1,24 +0,0 @@
-/* Copyright 2020 Purdea Andrei
- *
- * 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/>.
- */
-
-#include "overnumpad_1xb.h"
-
-void keyboard_post_init_kb(void)
-{
- //debug_enable=true;
- //debug_matrix=true;
-}
-
diff --git a/keyboards/ibm/model_m_4th_gen/overnumpad_1xb/overnumpad_1xb.h b/keyboards/ibm/model_m_4th_gen/overnumpad_1xb/overnumpad_1xb.h
deleted file mode 100644
index 4e210c53ac..0000000000
--- a/keyboards/ibm/model_m_4th_gen/overnumpad_1xb/overnumpad_1xb.h
+++ /dev/null
@@ -1,91 +0,0 @@
-/* Copyright 2020 Purdea Andrei
- *
- * 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"
-
-/* This is a shortcut to help you visually see your layout.
- *
- * The first section contains all of the arguments representing the physical
- * layout of the board and position of the keys.
- *
- * The second converts the arguments into a two-dimensional array which
- * represents the switch matrix.
- */
-
-
-#define LAYOUT_all( \
- k_esc, k_f1, k_f2, k_f3, k_f4, k_f5, k_f6, k_f7, k_f8, k_f9, k_f10, k_f11, k_f12, k_prscr, k_scrl, k_pause, \
- k_tild, k_1, k_2, k_3, k_4, k_5, k_6, k_7, k_8, k_9, k_0, k_minus, k_equals, k_bsp_hidden, k_backspace, k_ins, k_home, k_pgup, kp_nl, kp_div, kp_mult, kp_minus, \
- k_tab, k_q, k_w, k_e, k_r, k_t, k_y, k_u, k_i, k_o, k_p, k_squarebrop, k_squarebrcl, k_backsl, k_del, k_end, k_pgdn, kp_7, kp_8, kp_9, kp_plus, \
- k_caps, k_a, k_s, k_d, k_f, k_g, k_h, k_j, k_k, k_l, k_semicolon, k_singlequote, k_nuhs,k_return, kp_4, kp_5, kp_6, kp_plus_hidden, \
- k_lshift,k_nubs,k_z, k_x, k_c, k_v, k_b, k_n, k_m, k_cm,k_period, k_fwslash, k_rshift_hidden, k_rshift, k_up, kp_1, kp_2, kp_3, kp_enter, \
- k_lctrl, k_lalt, k_code, k_space, k_ralt, k_rctrl, k_left, k_down, k_right, kp_0_hidden, kp_0, kp_dot, kp_enter_hidden \
-) \
-{ \
- /* 0 1 2 3 4 5 6 7 8 9 A B C D E F */ \
- /* 0 */ { k_esc, k_g, k_h, k_f6, KC_NO, k_singlequote, k_f5, KC_NO, kp_0_hidden, kp_0, kp_dot, k_up, k_lalt, KC_NO, k_f4, k_nubs }, \
- /* 1 */ { k_tab, k_t, k_y, k_squarebrcl, k_f7, k_squarebrop, k_backspace, k_lshift, kp_4, kp_5, kp_6, kp_plus_hidden, KC_NO, KC_NO, k_f3, k_caps }, \
- /* 2 */ { k_tild, k_5, k_6, k_equals, k_f8, k_minus, k_f9, KC_NO, k_del, k_ins, k_pgup, k_home, KC_NO, k_lctrl, k_f2, k_f1 }, \
- /* 3 */ { k_1, k_4, k_7, k_8, k_9, k_0, k_f10, KC_NO, k_f11, k_f12, k_pgdn, k_end, k_prscr, KC_NO, k_3, k_2 }, \
- /* 4 */ { k_q, k_r, k_u, k_i, k_o, k_p, k_bsp_hidden, KC_NO, kp_7, kp_8, kp_9, kp_plus, k_scrl, KC_NO, k_e, k_w }, \
- /* 5 */ { k_a, k_f, k_j, k_k, k_l, k_semicolon, k_backsl, KC_NO, kp_1, kp_2, kp_3, kp_enter, kp_enter_hidden, KC_NO, k_d, k_s }, \
- /* 6 */ { k_z, k_v, k_m, k_cm, k_period, k_nuhs, k_return, k_rshift, kp_nl, kp_div, kp_mult, k_pause, KC_NO, k_rctrl, k_c, k_x }, \
- /* 7 */ { KC_NO, k_b, k_n, k_rshift_hidden, KC_NO, k_fwslash, k_space, KC_NO, k_down, k_right, kp_minus, k_left, k_ralt, KC_NO, KC_NO, k_code } \
-}
-
-// the following three key mappings are informed guesses, based on similarity of the gen4 membrane to previous-gen membranes: kp_plus, k_ins, kp_0_hidden
-
-#define LAYOUT_ansi( \
- k_esc, k_f1, k_f2, k_f3, k_f4, k_f5, k_f6, k_f7, k_f8, k_f9, k_f10, k_f11, k_f12, k_prscr, k_scrl, k_pause, \
- k_tild, k_1, k_2, k_3, k_4, k_5, k_6, k_7, k_8, k_9, k_0, k_minus, k_equals, k_backspace, k_ins, k_home, k_pgup, kp_nl, kp_div, kp_mult, kp_minus, \
- k_tab, k_q, k_w, k_e, k_r, k_t, k_y, k_u, k_i, k_o, k_p, k_squarebrop, k_squarebrcl, k_backsl, k_del, k_end, k_pgdn, kp_7, kp_8, kp_9, kp_plus, \
- k_caps, k_a, k_s, k_d, k_f, k_g, k_h, k_j, k_k, k_l, k_semicolon, k_singlequote, k_return, kp_4, kp_5, kp_6, \
- k_lshift, k_z, k_x, k_c, k_v, k_b, k_n, k_m, k_cm,k_period, k_fwslash, k_rshift, k_up, kp_1, kp_2, kp_3, kp_enter, \
- k_lctrl, k_lalt, k_space, k_ralt, k_rctrl, k_left, k_down, k_right, kp_0, kp_dot \
-) \
-{ \
- /* 0 1 2 3 4 5 6 7 8 9 A B C D E F */ \
- /* 0 */ { k_esc, k_g, k_h, k_f6, KC_NO, k_singlequote, k_f5, KC_NO, KC_NO, kp_0, kp_dot, k_up, k_lalt, KC_NO, k_f4, KC_NO }, \
- /* 1 */ { k_tab, k_t, k_y, k_squarebrcl, k_f7, k_squarebrop, k_backspace, k_lshift, kp_4, kp_5, kp_6, KC_NO, KC_NO, KC_NO, k_f3, k_caps }, \
- /* 2 */ { k_tild, k_5, k_6, k_equals, k_f8, k_minus, k_f9, KC_NO, k_del, k_ins, k_pgup, k_home, KC_NO, k_lctrl, k_f2, k_f1 }, \
- /* 3 */ { k_1, k_4, k_7, k_8, k_9, k_0, k_f10, KC_NO, k_f11, k_f12, k_pgdn, k_end, k_prscr, KC_NO, k_3, k_2 }, \
- /* 4 */ { k_q, k_r, k_u, k_i, k_o, k_p, KC_NO, KC_NO, kp_7, kp_8, kp_9, kp_plus, k_scrl, KC_NO, k_e, k_w }, \
- /* 5 */ { k_a, k_f, k_j, k_k, k_l, k_semicolon, k_backsl, KC_NO, kp_1, kp_2, kp_3, kp_enter, KC_NO, KC_NO, k_d, k_s }, \
- /* 6 */ { k_z, k_v, k_m, k_cm, k_period, KC_NO, k_return, k_rshift, kp_nl, kp_div, kp_mult, k_pause, KC_NO, k_rctrl, k_c, k_x }, \
- /* 7 */ { KC_NO, k_b, k_n, KC_NO, KC_NO, k_fwslash, k_space, KC_NO, k_down, k_right, kp_minus, k_left, k_ralt, KC_NO, KC_NO, KC_NO } \
-}
-
-#define LAYOUT_iso( \
- k_esc, k_f1, k_f2, k_f3, k_f4, k_f5, k_f6, k_f7, k_f8, k_f9, k_f10, k_f11, k_f12, k_prscr, k_scrl, k_pause, \
- k_tild, k_1, k_2, k_3, k_4, k_5, k_6, k_7, k_8, k_9, k_0, k_minus, k_equals, k_backspace, k_ins, k_home, k_pgup, kp_nl, kp_div, kp_mult, kp_minus, \
- k_tab, k_q, k_w, k_e, k_r, k_t, k_y, k_u, k_i, k_o, k_p, k_squarebrop, k_squarebrcl, k_return, k_del, k_end, k_pgdn, kp_7, kp_8, kp_9, kp_plus, \
- k_caps, k_a, k_s, k_d, k_f, k_g, k_h, k_j, k_k, k_l, k_semicolon, k_singlequote, k_nuhs, kp_4, kp_5, kp_6, \
- k_lshift,k_nubs,k_z, k_x, k_c, k_v, k_b, k_n, k_m, k_cm,k_period, k_fwslash, k_rshift, k_up, kp_1, kp_2, kp_3, kp_enter, \
- k_lctrl, k_lalt, k_space, k_ralt, k_rctrl, k_left, k_down, k_right, kp_0, kp_dot \
-) \
-{ \
- /* 0 1 2 3 4 5 6 7 8 9 A B C D E F */ \
- /* 0 */ { k_esc, k_g, k_h, k_f6, KC_NO, k_singlequote, k_f5, KC_NO, KC_NO, kp_0, kp_dot, k_up, k_lalt, KC_NO, k_f4, k_nubs }, \
- /* 1 */ { k_tab, k_t, k_y, k_squarebrcl, k_f7, k_squarebrop, k_backspace, k_lshift, kp_4, kp_5, kp_6, KC_NO, KC_NO, KC_NO, k_f3, k_caps }, \
- /* 2 */ { k_tild, k_5, k_6, k_equals, k_f8, k_minus, k_f9, KC_NO, k_del, k_ins, k_pgup, k_home, KC_NO, k_lctrl, k_f2, k_f1 }, \
- /* 3 */ { k_1, k_4, k_7, k_8, k_9, k_0, k_f10, KC_NO, k_f11, k_f12, k_pgdn, k_end, k_prscr, KC_NO, k_3, k_2 }, \
- /* 4 */ { k_q, k_r, k_u, k_i, k_o, k_p, KC_NO, KC_NO, kp_7, kp_8, kp_9, kp_plus, k_scrl, KC_NO, k_e, k_w }, \
- /* 5 */ { k_a, k_f, k_j, k_k, k_l, k_semicolon, KC_NO, KC_NO, kp_1, kp_2, kp_3, kp_enter, KC_NO, KC_NO, k_d, k_s }, \
- /* 6 */ { k_z, k_v, k_m, k_cm, k_period, k_nuhs, k_return, k_rshift, kp_nl, kp_div, kp_mult, k_pause, KC_NO, k_rctrl, k_c, k_x }, \
- /* 7 */ { KC_NO, k_b, k_n, KC_NO, KC_NO, k_fwslash, k_space, KC_NO, k_down, k_right, kp_minus, k_left, k_ralt, KC_NO, KC_NO, KC_NO } \
-}
diff --git a/keyboards/unicomp/classic_ultracl_post_2013/info.json b/keyboards/unicomp/classic_ultracl_post_2013/info.json
index dee9f85acc..693250310d 100644
--- a/keyboards/unicomp/classic_ultracl_post_2013/info.json
+++ b/keyboards/unicomp/classic_ultracl_post_2013/info.json
@@ -1,29 +1,2636 @@
{
- "keyboard_name": "Unicomp Classic / Ultra Classic (post-2013)",
- "manufacturer": "Unicomp/Purdea Andrei",
- "url": "https://github.com/purdeaandrei/overnumpad_controller_1xb",
- "maintainer": "purdeaandrei",
+ "matrix_pins": {
+ "ghost": true
+ },
"usb": {
"vid": "0x16C0",
"pid": "0x27DB",
"device_version": "0.0.1"
},
- "indicators": {
- "caps_lock": "C11",
- "num_lock": "C12",
- "scroll_lock": "C10"
- },
- "processor": "STM32F446",
- "bootloader": "stm32-dfu",
"layouts": {
"LAYOUT_all": {
- "layout": [{"x":0, "y":0}, {"x":2, "y":0}, {"x":3, "y":0}, {"x":4, "y":0}, {"x":5, "y":0}, {"x":6.5, "y":0}, {"x":7.5, "y":0}, {"x":8.5, "y":0}, {"x":9.5, "y":0}, {"x":11, "y":0}, {"x":12, "y":0}, {"x":13, "y":0}, {"x":14, "y":0}, {"x":15.25, "y":0}, {"x":16.25, "y":0}, {"x":17.25, "y":0}, {"x":0, "y":1.5}, {"x":1, "y":1.5}, {"x":2, "y":1.5}, {"x":3, "y":1.5}, {"x":4, "y":1.5}, {"x":5, "y":1.5}, {"x":6, "y":1.5}, {"x":7, "y":1.5}, {"x":8, "y":1.5}, {"x":9, "y":1.5}, {"x":10, "y":1.5}, {"x":11, "y":1.5}, {"x":12, "y":1.5}, {"x":13, "y":1.5}, {"x":14, "y":1.5}, {"x":15.25, "y":1.5}, {"x":16.25, "y":1.5}, {"x":17.25, "y":1.5}, {"x":18.5, "y":1.5}, {"x":19.5, "y":1.5}, {"x":20.5, "y":1.5}, {"x":21.5, "y":1.5}, {"x":0, "y":2.5, "w":1.5}, {"x":1.5, "y":2.5}, {"x":2.5, "y":2.5}, {"x":3.5, "y":2.5}, {"x":4.5, "y":2.5}, {"x":5.5, "y":2.5}, {"x":6.5, "y":2.5}, {"x":7.5, "y":2.5}, {"x":8.5, "y":2.5}, {"x":9.5, "y":2.5}, {"x":10.5, "y":2.5}, {"x":11.5, "y":2.5}, {"x":12.5, "y":2.5}, {"x":13.5, "y":2.5, "w":1.5}, {"x":15.25, "y":2.5}, {"x":16.25, "y":2.5}, {"x":17.25, "y":2.5}, {"x":18.5, "y":2.5}, {"x":19.5, "y":2.5}, {"x":20.5, "y":2.5}, {"x":21.5, "y":2.5}, {"x":0, "y":3.5, "w":1.75}, {"x":1.75, "y":3.5}, {"x":2.75, "y":3.5}, {"x":3.75, "y":3.5}, {"x":4.75, "y":3.5}, {"x":5.75, "y":3.5}, {"x":6.75, "y":3.5}, {"x":7.75, "y":3.5}, {"x":8.75, "y":3.5}, {"x":9.75, "y":3.5}, {"x":10.75, "y":3.5}, {"x":11.75, "y":3.5}, {"x":12.75, "y":3.5}, {"x":13.75, "y":3.5, "w":1.25}, {"x":18.5, "y":3.5}, {"x":19.5, "y":3.5}, {"x":20.5, "y":3.5}, {"x":21.5, "y":3.5}, {"x":0, "y":4.5, "w":1.25}, {"x":1.25, "y":4.5}, {"x":2.25, "y":4.5}, {"x":3.25, "y":4.5}, {"x":4.25, "y":4.5}, {"x":5.25, "y":4.5}, {"x":6.25, "y":4.5}, {"x":7.25, "y":4.5}, {"x":8.25, "y":4.5}, {"x":9.25, "y":4.5}, {"x":10.25, "y":4.5}, {"x":11.25, "y":4.5}, {"x":12.25, "y":4.5}, {"x":13.25, "y":4.5, "w":1.75}, {"x":16.25, "y":4.5}, {"x":18.5, "y":4.5}, {"x":19.5, "y":4.5}, {"x":20.5, "y":4.5}, {"x":21.5, "y":4.5}, {"x":0, "y":5.5, "w":1.5}, {"x":1.5, "y":5.5}, {"x":2.5, "y":5.5, "w":1.5}, {"x":4, "y":5.5}, {"x":5, "y":5.5, "w":4.75}, {"x":9.75, "y":5.5, "w":1.25}, {"x":11, "y":5.5, "w":1.5}, {"x":12.5, "y":5.5}, {"x":13.5, "y":5.5, "w":1.5}, {"x":15.25, "y":5.5}, {"x":16.25, "y":5.5}, {"x":17.25, "y":5.5}, {"x":18.5, "y":5.5}, {"x":19.5, "y":5.5}, {"x":20.5, "y":5.5}, {"x":21.5, "y":5.5}]
+ "layout": [
+ {
+ "matrix": [
+ 0,
+ 0
+ ],
+ "x": 0,
+ "y": 0
+ },
+ {
+ "matrix": [
+ 0,
+ 3
+ ],
+ "x": 2,
+ "y": 0
+ },
+ {
+ "matrix": [
+ 7,
+ 3
+ ],
+ "x": 3,
+ "y": 0
+ },
+ {
+ "matrix": [
+ 0,
+ 2
+ ],
+ "x": 4,
+ "y": 0
+ },
+ {
+ "matrix": [
+ 7,
+ 4
+ ],
+ "x": 5,
+ "y": 0
+ },
+ {
+ "matrix": [
+ 0,
+ 8
+ ],
+ "x": 6.5,
+ "y": 0
+ },
+ {
+ "matrix": [
+ 7,
+ 8
+ ],
+ "x": 7.5,
+ "y": 0
+ },
+ {
+ "matrix": [
+ 0,
+ 9
+ ],
+ "x": 8.5,
+ "y": 0
+ },
+ {
+ "matrix": [
+ 7,
+ 9
+ ],
+ "x": 9.5,
+ "y": 0
+ },
+ {
+ "matrix": [
+ 0,
+ 10
+ ],
+ "x": 11,
+ "y": 0
+ },
+ {
+ "matrix": [
+ 7,
+ 10
+ ],
+ "x": 12,
+ "y": 0
+ },
+ {
+ "matrix": [
+ 0,
+ 11
+ ],
+ "x": 13,
+ "y": 0
+ },
+ {
+ "matrix": [
+ 7,
+ 11
+ ],
+ "x": 14,
+ "y": 0
+ },
+ {
+ "matrix": [
+ 0,
+ 12
+ ],
+ "x": 15.25,
+ "y": 0
+ },
+ {
+ "matrix": [
+ 0,
+ 14
+ ],
+ "x": 16.25,
+ "y": 0
+ },
+ {
+ "matrix": [
+ 0,
+ 1
+ ],
+ "x": 17.25,
+ "y": 0
+ },
+ {
+ "matrix": [
+ 7,
+ 0
+ ],
+ "x": 0,
+ "y": 1.5
+ },
+ {
+ "matrix": [
+ 2,
+ 0
+ ],
+ "x": 1,
+ "y": 1.5
+ },
+ {
+ "matrix": [
+ 3,
+ 3
+ ],
+ "x": 2,
+ "y": 1.5
+ },
+ {
+ "matrix": [
+ 0,
+ 5
+ ],
+ "x": 3,
+ "y": 1.5
+ },
+ {
+ "matrix": [
+ 0,
+ 6
+ ],
+ "x": 4,
+ "y": 1.5
+ },
+ {
+ "matrix": [
+ 7,
+ 6
+ ],
+ "x": 5,
+ "y": 1.5
+ },
+ {
+ "matrix": [
+ 0,
+ 7
+ ],
+ "x": 6,
+ "y": 1.5
+ },
+ {
+ "matrix": [
+ 7,
+ 7
+ ],
+ "x": 7,
+ "y": 1.5
+ },
+ {
+ "matrix": [
+ 7,
+ 5
+ ],
+ "x": 8,
+ "y": 1.5
+ },
+ {
+ "matrix": [
+ 2,
+ 9
+ ],
+ "x": 9,
+ "y": 1.5
+ },
+ {
+ "matrix": [
+ 2,
+ 10
+ ],
+ "x": 10,
+ "y": 1.5
+ },
+ {
+ "matrix": [
+ 1,
+ 9
+ ],
+ "x": 11,
+ "y": 1.5
+ },
+ {
+ "matrix": [
+ 2,
+ 8
+ ],
+ "x": 12,
+ "y": 1.5
+ },
+ {
+ "matrix": [
+ 2,
+ 1
+ ],
+ "x": 13,
+ "y": 1.5
+ },
+ {
+ "matrix": [
+ 1,
+ 8
+ ],
+ "x": 14,
+ "y": 1.5
+ },
+ {
+ "matrix": [
+ 0,
+ 4
+ ],
+ "x": 15.25,
+ "y": 1.5
+ },
+ {
+ "matrix": [
+ 1,
+ 12
+ ],
+ "x": 16.25,
+ "y": 1.5
+ },
+ {
+ "matrix": [
+ 2,
+ 3
+ ],
+ "x": 17.25,
+ "y": 1.5
+ },
+ {
+ "matrix": [
+ 2,
+ 2
+ ],
+ "x": 18.5,
+ "y": 1.5
+ },
+ {
+ "matrix": [
+ 2,
+ 12
+ ],
+ "x": 19.5,
+ "y": 1.5
+ },
+ {
+ "matrix": [
+ 2,
+ 11
+ ],
+ "x": 20.5,
+ "y": 1.5
+ },
+ {
+ "matrix": [
+ 7,
+ 2
+ ],
+ "x": 21.5,
+ "y": 1.5
+ },
+ {
+ "matrix": [
+ 1,
+ 0
+ ],
+ "x": 0,
+ "y": 2.5,
+ "w": 1.5
+ },
+ {
+ "matrix": [
+ 3,
+ 0
+ ],
+ "x": 1.5,
+ "y": 2.5
+ },
+ {
+ "matrix": [
+ 4,
+ 3
+ ],
+ "x": 2.5,
+ "y": 2.5
+ },
+ {
+ "matrix": [
+ 1,
+ 5
+ ],
+ "x": 3.5,
+ "y": 2.5
+ },
+ {
+ "matrix": [
+ 2,
+ 6
+ ],
+ "x": 4.5,
+ "y": 2.5
+ },
+ {
+ "matrix": [
+ 1,
+ 6
+ ],
+ "x": 5.5,
+ "y": 2.5
+ },
+ {
+ "matrix": [
+ 2,
+ 7
+ ],
+ "x": 6.5,
+ "y": 2.5
+ },
+ {
+ "matrix": [
+ 1,
+ 7
+ ],
+ "x": 7.5,
+ "y": 2.5
+ },
+ {
+ "matrix": [
+ 2,
+ 5
+ ],
+ "x": 8.5,
+ "y": 2.5
+ },
+ {
+ "matrix": [
+ 3,
+ 9
+ ],
+ "x": 9.5,
+ "y": 2.5
+ },
+ {
+ "matrix": [
+ 5,
+ 10
+ ],
+ "x": 10.5,
+ "y": 2.5
+ },
+ {
+ "matrix": [
+ 4,
+ 9
+ ],
+ "x": 11.5,
+ "y": 2.5
+ },
+ {
+ "matrix": [
+ 3,
+ 8
+ ],
+ "x": 12.5,
+ "y": 2.5
+ },
+ {
+ "matrix": [
+ 4,
+ 8
+ ],
+ "x": 13.5,
+ "y": 2.5,
+ "w": 1.5
+ },
+ {
+ "matrix": [
+ 1,
+ 2
+ ],
+ "x": 15.25,
+ "y": 2.5
+ },
+ {
+ "matrix": [
+ 1,
+ 11
+ ],
+ "x": 16.25,
+ "y": 2.5
+ },
+ {
+ "matrix": [
+ 1,
+ 3
+ ],
+ "x": 17.25,
+ "y": 2.5
+ },
+ {
+ "matrix": [
+ 3,
+ 12
+ ],
+ "x": 18.5,
+ "y": 2.5
+ },
+ {
+ "matrix": [
+ 3,
+ 11
+ ],
+ "x": 19.5,
+ "y": 2.5
+ },
+ {
+ "matrix": [
+ 3,
+ 2
+ ],
+ "x": 20.5,
+ "y": 2.5
+ },
+ {
+ "matrix": [
+ 6,
+ 12
+ ],
+ "x": 21.5,
+ "y": 2.5
+ },
+ {
+ "matrix": [
+ 1,
+ 15
+ ],
+ "x": 0,
+ "y": 3.5,
+ "w": 1.75
+ },
+ {
+ "matrix": [
+ 4,
+ 0
+ ],
+ "x": 1.75,
+ "y": 3.5
+ },
+ {
+ "matrix": [
+ 6,
+ 3
+ ],
+ "x": 2.75,
+ "y": 3.5
+ },
+ {
+ "matrix": [
+ 4,
+ 5
+ ],
+ "x": 3.75,
+ "y": 3.5
+ },
+ {
+ "matrix": [
+ 3,
+ 6
+ ],
+ "x": 4.75,
+ "y": 3.5
+ },
+ {
+ "matrix": [
+ 4,
+ 6
+ ],
+ "x": 5.75,
+ "y": 3.5
+ },
+ {
+ "matrix": [
+ 3,
+ 7
+ ],
+ "x": 6.75,
+ "y": 3.5
+ },
+ {
+ "matrix": [
+ 4,
+ 7
+ ],
+ "x": 7.75,
+ "y": 3.5
+ },
+ {
+ "matrix": [
+ 3,
+ 5
+ ],
+ "x": 8.75,
+ "y": 3.5
+ },
+ {
+ "matrix": [
+ 6,
+ 9
+ ],
+ "x": 9.75,
+ "y": 3.5
+ },
+ {
+ "matrix": [
+ 3,
+ 10
+ ],
+ "x": 10.75,
+ "y": 3.5
+ },
+ {
+ "matrix": [
+ 4,
+ 10
+ ],
+ "x": 11.75,
+ "y": 3.5
+ },
+ {
+ "matrix": [
+ 6,
+ 13
+ ],
+ "x": 12.75,
+ "y": 3.5
+ },
+ {
+ "matrix": [
+ 5,
+ 8
+ ],
+ "x": 13.75,
+ "y": 3.5,
+ "w": 1.25
+ },
+ {
+ "matrix": [
+ 4,
+ 12
+ ],
+ "x": 18.5,
+ "y": 3.5
+ },
+ {
+ "matrix": [
+ 4,
+ 11
+ ],
+ "x": 19.5,
+ "y": 3.5
+ },
+ {
+ "matrix": [
+ 4,
+ 2
+ ],
+ "x": 20.5,
+ "y": 3.5
+ },
+ {
+ "matrix": [
+ 4,
+ 14
+ ],
+ "x": 21.5,
+ "y": 3.5
+ },
+ {
+ "matrix": [
+ 3,
+ 1
+ ],
+ "x": 0,
+ "y": 4.5,
+ "w": 1.25
+ },
+ {
+ "matrix": [
+ 6,
+ 0
+ ],
+ "x": 1.25,
+ "y": 4.5
+ },
+ {
+ "matrix": [
+ 5,
+ 0
+ ],
+ "x": 2.25,
+ "y": 4.5
+ },
+ {
+ "matrix": [
+ 5,
+ 3
+ ],
+ "x": 3.25,
+ "y": 4.5
+ },
+ {
+ "matrix": [
+ 6,
+ 5
+ ],
+ "x": 4.25,
+ "y": 4.5
+ },
+ {
+ "matrix": [
+ 6,
+ 6
+ ],
+ "x": 5.25,
+ "y": 4.5
+ },
+ {
+ "matrix": [
+ 5,
+ 6
+ ],
+ "x": 6.25,
+ "y": 4.5
+ },
+ {
+ "matrix": [
+ 6,
+ 7
+ ],
+ "x": 7.25,
+ "y": 4.5
+ },
+ {
+ "matrix": [
+ 5,
+ 7
+ ],
+ "x": 8.25,
+ "y": 4.5
+ },
+ {
+ "matrix": [
+ 5,
+ 5
+ ],
+ "x": 9.25,
+ "y": 4.5
+ },
+ {
+ "matrix": [
+ 5,
+ 9
+ ],
+ "x": 10.25,
+ "y": 4.5
+ },
+ {
+ "matrix": [
+ 6,
+ 10
+ ],
+ "x": 11.25,
+ "y": 4.5
+ },
+ {
+ "matrix": [
+ 4,
+ 13
+ ],
+ "x": 12.25,
+ "y": 4.5
+ },
+ {
+ "matrix": [
+ 5,
+ 1
+ ],
+ "x": 13.25,
+ "y": 4.5,
+ "w": 1.75
+ },
+ {
+ "matrix": [
+ 2,
+ 13
+ ],
+ "x": 16.25,
+ "y": 4.5
+ },
+ {
+ "matrix": [
+ 5,
+ 12
+ ],
+ "x": 18.5,
+ "y": 4.5
+ },
+ {
+ "matrix": [
+ 6,
+ 11
+ ],
+ "x": 19.5,
+ "y": 4.5
+ },
+ {
+ "matrix": [
+ 6,
+ 2
+ ],
+ "x": 20.5,
+ "y": 4.5
+ },
+ {
+ "matrix": [
+ 7,
+ 14
+ ],
+ "x": 21.5,
+ "y": 4.5
+ },
+ {
+ "matrix": [
+ 3,
+ 15
+ ],
+ "x": 0,
+ "y": 5.5,
+ "w": 1.5
+ },
+ {
+ "matrix": [
+ 2,
+ 14
+ ],
+ "x": 1.5,
+ "y": 5.5
+ },
+ {
+ "matrix": [
+ 4,
+ 4
+ ],
+ "x": 2.5,
+ "y": 5.5,
+ "w": 1.5
+ },
+ {
+ "matrix": [
+ 2,
+ 4
+ ],
+ "x": 4,
+ "y": 5.5
+ },
+ {
+ "matrix": [
+ 7,
+ 13
+ ],
+ "x": 5,
+ "y": 5.5,
+ "w": 4.75
+ },
+ {
+ "matrix": [
+ 1,
+ 13
+ ],
+ "x": 9.75,
+ "y": 5.5,
+ "w": 1.25
+ },
+ {
+ "matrix": [
+ 6,
+ 4
+ ],
+ "x": 11,
+ "y": 5.5,
+ "w": 1.5
+ },
+ {
+ "matrix": [
+ 7,
+ 12
+ ],
+ "x": 12.5,
+ "y": 5.5
+ },
+ {
+ "matrix": [
+ 5,
+ 15
+ ],
+ "x": 13.5,
+ "y": 5.5,
+ "w": 1.5
+ },
+ {
+ "matrix": [
+ 6,
+ 8
+ ],
+ "x": 15.25,
+ "y": 5.5
+ },
+ {
+ "matrix": [
+ 1,
+ 10
+ ],
+ "x": 16.25,
+ "y": 5.5
+ },
+ {
+ "matrix": [
+ 0,
+ 13
+ ],
+ "x": 17.25,
+ "y": 5.5
+ },
+ {
+ "matrix": [
+ 5,
+ 14
+ ],
+ "x": 18.5,
+ "y": 5.5
+ },
+ {
+ "matrix": [
+ 5,
+ 11
+ ],
+ "x": 19.5,
+ "y": 5.5
+ },
+ {
+ "matrix": [
+ 5,
+ 2
+ ],
+ "x": 20.5,
+ "y": 5.5
+ },
+ {
+ "matrix": [
+ 6,
+ 14
+ ],
+ "x": 21.5,
+ "y": 5.5
+ }
+ ]
},
"LAYOUT_ansi": {
- "layout": [{"x":0, "y":0}, {"x":2, "y":0}, {"x":3, "y":0}, {"x":4, "y":0}, {"x":5, "y":0}, {"x":6.5, "y":0}, {"x":7.5, "y":0}, {"x":8.5, "y":0}, {"x":9.5, "y":0}, {"x":11, "y":0}, {"x":12, "y":0}, {"x":13, "y":0}, {"x":14, "y":0}, {"x":15.25, "y":0}, {"x":16.25, "y":0}, {"x":17.25, "y":0}, {"x":0, "y":1.5}, {"x":1, "y":1.5}, {"x":2, "y":1.5}, {"x":3, "y":1.5}, {"x":4, "y":1.5}, {"x":5, "y":1.5}, {"x":6, "y":1.5}, {"x":7, "y":1.5}, {"x":8, "y":1.5}, {"x":9, "y":1.5}, {"x":10, "y":1.5}, {"x":11, "y":1.5}, {"x":12, "y":1.5}, {"x":13, "y":1.5, "w":2}, {"x":15.25, "y":1.5}, {"x":16.25, "y":1.5}, {"x":17.25, "y":1.5}, {"x":18.5, "y":1.5}, {"x":19.5, "y":1.5}, {"x":20.5, "y":1.5}, {"x":21.5, "y":1.5}, {"x":0, "y":2.5, "w":1.5}, {"x":1.5, "y":2.5}, {"x":2.5, "y":2.5}, {"x":3.5, "y":2.5}, {"x":4.5, "y":2.5}, {"x":5.5, "y":2.5}, {"x":6.5, "y":2.5}, {"x":7.5, "y":2.5}, {"x":8.5, "y":2.5}, {"x":9.5, "y":2.5}, {"x":10.5, "y":2.5}, {"x":11.5, "y":2.5}, {"x":12.5, "y":2.5}, {"x":13.5, "y":2.5, "w":1.5}, {"x":15.25, "y":2.5}, {"x":16.25, "y":2.5}, {"x":17.25, "y":2.5}, {"x":18.5, "y":2.5}, {"x":19.5, "y":2.5}, {"x":20.5, "y":2.5}, {"x":21.5, "y":2.5, "h":2}, {"x":0, "y":3.5, "w":1.75}, {"x":1.75, "y":3.5}, {"x":2.75, "y":3.5}, {"x":3.75, "y":3.5}, {"x":4.75, "y":3.5}, {"x":5.75, "y":3.5}, {"x":6.75, "y":3.5}, {"x":7.75, "y":3.5}, {"x":8.75, "y":3.5}, {"x":9.75, "y":3.5}, {"x":10.75, "y":3.5}, {"x":11.75, "y":3.5}, {"x":12.75, "y":3.5, "w":2.25}, {"x":18.5, "y":3.5}, {"x":19.5, "y":3.5}, {"x":20.5, "y":3.5}, {"x":0, "y":4.5, "w":2.25}, {"x":2.25, "y":4.5}, {"x":3.25, "y":4.5}, {"x":4.25, "y":4.5}, {"x":5.25, "y":4.5}, {"x":6.25, "y":4.5}, {"x":7.25, "y":4.5}, {"x":8.25, "y":4.5}, {"x":9.25, "y":4.5}, {"x":10.25, "y":4.5}, {"x":11.25, "y":4.5}, {"x":12.25, "y":4.5, "w":2.75}, {"x":16.25, "y":4.5}, {"x":18.5, "y":4.5}, {"x":19.5, "y":4.5}, {"x":20.5, "y":4.5}, {"x":21.5, "y":4.5, "h":2}, {"x":0, "y":5.5, "w":1.5}, {"x":1.5, "y":5.5}, {"x":2.5, "y":5.5, "w":1.5}, {"x":4, "y":5.5, "w":5.75}, {"x":9.75, "y":5.5, "w":1.25}, {"x":11, "y":5.5, "w":1.5}, {"x":12.5, "y":5.5}, {"x":13.5, "y":5.5, "w":1.5}, {"x":15.25, "y":5.5}, {"x":16.25, "y":5.5}, {"x":17.25, "y":5.5}, {"x":18.5, "y":5.5, "w":2}, {"x":20.5, "y":5.5}]
+ "layout": [
+ {
+ "matrix": [
+ 0,
+ 0
+ ],
+ "x": 0,
+ "y": 0
+ },
+ {
+ "matrix": [
+ 0,
+ 3
+ ],
+ "x": 2,
+ "y": 0
+ },
+ {
+ "matrix": [
+ 7,
+ 3
+ ],
+ "x": 3,
+ "y": 0
+ },
+ {
+ "matrix": [
+ 0,
+ 2
+ ],
+ "x": 4,
+ "y": 0
+ },
+ {
+ "matrix": [
+ 7,
+ 4
+ ],
+ "x": 5,
+ "y": 0
+ },
+ {
+ "matrix": [
+ 0,
+ 8
+ ],
+ "x": 6.5,
+ "y": 0
+ },
+ {
+ "matrix": [
+ 7,
+ 8
+ ],
+ "x": 7.5,
+ "y": 0
+ },
+ {
+ "matrix": [
+ 0,
+ 9
+ ],
+ "x": 8.5,
+ "y": 0
+ },
+ {
+ "matrix": [
+ 7,
+ 9
+ ],
+ "x": 9.5,
+ "y": 0
+ },
+ {
+ "matrix": [
+ 0,
+ 10
+ ],
+ "x": 11,
+ "y": 0
+ },
+ {
+ "matrix": [
+ 7,
+ 10
+ ],
+ "x": 12,
+ "y": 0
+ },
+ {
+ "matrix": [
+ 0,
+ 11
+ ],
+ "x": 13,
+ "y": 0
+ },
+ {
+ "matrix": [
+ 7,
+ 11
+ ],
+ "x": 14,
+ "y": 0
+ },
+ {
+ "matrix": [
+ 0,
+ 12
+ ],
+ "x": 15.25,
+ "y": 0
+ },
+ {
+ "matrix": [
+ 0,
+ 14
+ ],
+ "x": 16.25,
+ "y": 0
+ },
+ {
+ "matrix": [
+ 0,
+ 1
+ ],
+ "x": 17.25,
+ "y": 0
+ },
+ {
+ "matrix": [
+ 7,
+ 0
+ ],
+ "x": 0,
+ "y": 1.5
+ },
+ {
+ "matrix": [
+ 2,
+ 0
+ ],
+ "x": 1,
+ "y": 1.5
+ },
+ {
+ "matrix": [
+ 3,
+ 3
+ ],
+ "x": 2,
+ "y": 1.5
+ },
+ {
+ "matrix": [
+ 0,
+ 5
+ ],
+ "x": 3,
+ "y": 1.5
+ },
+ {
+ "matrix": [
+ 0,
+ 6
+ ],
+ "x": 4,
+ "y": 1.5
+ },
+ {
+ "matrix": [
+ 7,
+ 6
+ ],
+ "x": 5,
+ "y": 1.5
+ },
+ {
+ "matrix": [
+ 0,
+ 7
+ ],
+ "x": 6,
+ "y": 1.5
+ },
+ {
+ "matrix": [
+ 7,
+ 7
+ ],
+ "x": 7,
+ "y": 1.5
+ },
+ {
+ "matrix": [
+ 7,
+ 5
+ ],
+ "x": 8,
+ "y": 1.5
+ },
+ {
+ "matrix": [
+ 2,
+ 9
+ ],
+ "x": 9,
+ "y": 1.5
+ },
+ {
+ "matrix": [
+ 2,
+ 10
+ ],
+ "x": 10,
+ "y": 1.5
+ },
+ {
+ "matrix": [
+ 1,
+ 9
+ ],
+ "x": 11,
+ "y": 1.5
+ },
+ {
+ "matrix": [
+ 2,
+ 8
+ ],
+ "x": 12,
+ "y": 1.5
+ },
+ {
+ "matrix": [
+ 1,
+ 8
+ ],
+ "x": 13,
+ "y": 1.5,
+ "w": 2
+ },
+ {
+ "matrix": [
+ 0,
+ 4
+ ],
+ "x": 15.25,
+ "y": 1.5
+ },
+ {
+ "matrix": [
+ 1,
+ 12
+ ],
+ "x": 16.25,
+ "y": 1.5
+ },
+ {
+ "matrix": [
+ 2,
+ 3
+ ],
+ "x": 17.25,
+ "y": 1.5
+ },
+ {
+ "matrix": [
+ 2,
+ 2
+ ],
+ "x": 18.5,
+ "y": 1.5
+ },
+ {
+ "matrix": [
+ 2,
+ 12
+ ],
+ "x": 19.5,
+ "y": 1.5
+ },
+ {
+ "matrix": [
+ 2,
+ 11
+ ],
+ "x": 20.5,
+ "y": 1.5
+ },
+ {
+ "matrix": [
+ 7,
+ 2
+ ],
+ "x": 21.5,
+ "y": 1.5
+ },
+ {
+ "matrix": [
+ 1,
+ 0
+ ],
+ "x": 0,
+ "y": 2.5,
+ "w": 1.5
+ },
+ {
+ "matrix": [
+ 3,
+ 0
+ ],
+ "x": 1.5,
+ "y": 2.5
+ },
+ {
+ "matrix": [
+ 4,
+ 3
+ ],
+ "x": 2.5,
+ "y": 2.5
+ },
+ {
+ "matrix": [
+ 1,
+ 5
+ ],
+ "x": 3.5,
+ "y": 2.5
+ },
+ {
+ "matrix": [
+ 2,
+ 6
+ ],
+ "x": 4.5,
+ "y": 2.5
+ },
+ {
+ "matrix": [
+ 1,
+ 6
+ ],
+ "x": 5.5,
+ "y": 2.5
+ },
+ {
+ "matrix": [
+ 2,
+ 7
+ ],
+ "x": 6.5,
+ "y": 2.5
+ },
+ {
+ "matrix": [
+ 1,
+ 7
+ ],
+ "x": 7.5,
+ "y": 2.5
+ },
+ {
+ "matrix": [
+ 2,
+ 5
+ ],
+ "x": 8.5,
+ "y": 2.5
+ },
+ {
+ "matrix": [
+ 3,
+ 9
+ ],
+ "x": 9.5,
+ "y": 2.5
+ },
+ {
+ "matrix": [
+ 5,
+ 10
+ ],
+ "x": 10.5,
+ "y": 2.5
+ },
+ {
+ "matrix": [
+ 4,
+ 9
+ ],
+ "x": 11.5,
+ "y": 2.5
+ },
+ {
+ "matrix": [
+ 3,
+ 8
+ ],
+ "x": 12.5,
+ "y": 2.5
+ },
+ {
+ "matrix": [
+ 4,
+ 8
+ ],
+ "x": 13.5,
+ "y": 2.5,
+ "w": 1.5
+ },
+ {
+ "matrix": [
+ 1,
+ 2
+ ],
+ "x": 15.25,
+ "y": 2.5
+ },
+ {
+ "matrix": [
+ 1,
+ 11
+ ],
+ "x": 16.25,
+ "y": 2.5
+ },
+ {
+ "matrix": [
+ 1,
+ 3
+ ],
+ "x": 17.25,
+ "y": 2.5
+ },
+ {
+ "matrix": [
+ 3,
+ 12
+ ],
+ "x": 18.5,
+ "y": 2.5
+ },
+ {
+ "matrix": [
+ 3,
+ 11
+ ],
+ "x": 19.5,
+ "y": 2.5
+ },
+ {
+ "matrix": [
+ 3,
+ 2
+ ],
+ "x": 20.5,
+ "y": 2.5
+ },
+ {
+ "matrix": [
+ 6,
+ 12
+ ],
+ "x": 21.5,
+ "y": 2.5,
+ "h": 2
+ },
+ {
+ "matrix": [
+ 1,
+ 15
+ ],
+ "x": 0,
+ "y": 3.5,
+ "w": 1.75
+ },
+ {
+ "matrix": [
+ 4,
+ 0
+ ],
+ "x": 1.75,
+ "y": 3.5
+ },
+ {
+ "matrix": [
+ 6,
+ 3
+ ],
+ "x": 2.75,
+ "y": 3.5
+ },
+ {
+ "matrix": [
+ 4,
+ 5
+ ],
+ "x": 3.75,
+ "y": 3.5
+ },
+ {
+ "matrix": [
+ 3,
+ 6
+ ],
+ "x": 4.75,
+ "y": 3.5
+ },
+ {
+ "matrix": [
+ 4,
+ 6
+ ],
+ "x": 5.75,
+ "y": 3.5
+ },
+ {
+ "matrix": [
+ 3,
+ 7
+ ],
+ "x": 6.75,
+ "y": 3.5
+ },
+ {
+ "matrix": [
+ 4,
+ 7
+ ],
+ "x": 7.75,
+ "y": 3.5
+ },
+ {
+ "matrix": [
+ 3,
+ 5
+ ],
+ "x": 8.75,
+ "y": 3.5
+ },
+ {
+ "matrix": [
+ 6,
+ 9
+ ],
+ "x": 9.75,
+ "y": 3.5
+ },
+ {
+ "matrix": [
+ 3,
+ 10
+ ],
+ "x": 10.75,
+ "y": 3.5
+ },
+ {
+ "matrix": [
+ 4,
+ 10
+ ],
+ "x": 11.75,
+ "y": 3.5
+ },
+ {
+ "matrix": [
+ 5,
+ 8
+ ],
+ "x": 12.75,
+ "y": 3.5,
+ "w": 2.25
+ },
+ {
+ "matrix": [
+ 4,
+ 12
+ ],
+ "x": 18.5,
+ "y": 3.5
+ },
+ {
+ "matrix": [
+ 4,
+ 11
+ ],
+ "x": 19.5,
+ "y": 3.5
+ },
+ {
+ "matrix": [
+ 4,
+ 2
+ ],
+ "x": 20.5,
+ "y": 3.5
+ },
+ {
+ "matrix": [
+ 3,
+ 1
+ ],
+ "x": 0,
+ "y": 4.5,
+ "w": 2.25
+ },
+ {
+ "matrix": [
+ 5,
+ 0
+ ],
+ "x": 2.25,
+ "y": 4.5
+ },
+ {
+ "matrix": [
+ 5,
+ 3
+ ],
+ "x": 3.25,
+ "y": 4.5
+ },
+ {
+ "matrix": [
+ 6,
+ 5
+ ],
+ "x": 4.25,
+ "y": 4.5
+ },
+ {
+ "matrix": [
+ 6,
+ 6
+ ],
+ "x": 5.25,
+ "y": 4.5
+ },
+ {
+ "matrix": [
+ 5,
+ 6
+ ],
+ "x": 6.25,
+ "y": 4.5
+ },
+ {
+ "matrix": [
+ 6,
+ 7
+ ],
+ "x": 7.25,
+ "y": 4.5
+ },
+ {
+ "matrix": [
+ 5,
+ 7
+ ],
+ "x": 8.25,
+ "y": 4.5
+ },
+ {
+ "matrix": [
+ 5,
+ 5
+ ],
+ "x": 9.25,
+ "y": 4.5
+ },
+ {
+ "matrix": [
+ 5,
+ 9
+ ],
+ "x": 10.25,
+ "y": 4.5
+ },
+ {
+ "matrix": [
+ 6,
+ 10
+ ],
+ "x": 11.25,
+ "y": 4.5
+ },
+ {
+ "matrix": [
+ 5,
+ 1
+ ],
+ "x": 12.25,
+ "y": 4.5,
+ "w": 2.75
+ },
+ {
+ "matrix": [
+ 2,
+ 13
+ ],
+ "x": 16.25,
+ "y": 4.5
+ },
+ {
+ "matrix": [
+ 5,
+ 12
+ ],
+ "x": 18.5,
+ "y": 4.5
+ },
+ {
+ "matrix": [
+ 6,
+ 11
+ ],
+ "x": 19.5,
+ "y": 4.5
+ },
+ {
+ "matrix": [
+ 6,
+ 2
+ ],
+ "x": 20.5,
+ "y": 4.5
+ },
+ {
+ "matrix": [
+ 7,
+ 14
+ ],
+ "x": 21.5,
+ "y": 4.5,
+ "h": 2
+ },
+ {
+ "matrix": [
+ 3,
+ 15
+ ],
+ "x": 0,
+ "y": 5.5,
+ "w": 1.5
+ },
+ {
+ "matrix": [
+ 2,
+ 14
+ ],
+ "x": 1.5,
+ "y": 5.5
+ },
+ {
+ "matrix": [
+ 4,
+ 4
+ ],
+ "x": 2.5,
+ "y": 5.5,
+ "w": 1.5
+ },
+ {
+ "matrix": [
+ 7,
+ 13
+ ],
+ "x": 4,
+ "y": 5.5,
+ "w": 5.75
+ },
+ {
+ "matrix": [
+ 1,
+ 13
+ ],
+ "x": 9.75,
+ "y": 5.5,
+ "w": 1.25
+ },
+ {
+ "matrix": [
+ 6,
+ 4
+ ],
+ "x": 11,
+ "y": 5.5,
+ "w": 1.5
+ },
+ {
+ "matrix": [
+ 7,
+ 12
+ ],
+ "x": 12.5,
+ "y": 5.5
+ },
+ {
+ "matrix": [
+ 5,
+ 15
+ ],
+ "x": 13.5,
+ "y": 5.5,
+ "w": 1.5
+ },
+ {
+ "matrix": [
+ 6,
+ 8
+ ],
+ "x": 15.25,
+ "y": 5.5
+ },
+ {
+ "matrix": [
+ 1,
+ 10
+ ],
+ "x": 16.25,
+ "y": 5.5
+ },
+ {
+ "matrix": [
+ 0,
+ 13
+ ],
+ "x": 17.25,
+ "y": 5.5
+ },
+ {
+ "matrix": [
+ 5,
+ 11
+ ],
+ "x": 18.5,
+ "y": 5.5,
+ "w": 2
+ },
+ {
+ "matrix": [
+ 5,
+ 2
+ ],
+ "x": 20.5,
+ "y": 5.5
+ }
+ ]
},
"LAYOUT_iso": {
- "layout": [{"x":0, "y":0}, {"x":2, "y":0}, {"x":3, "y":0}, {"x":4, "y":0}, {"x":5, "y":0}, {"x":6.5, "y":0}, {"x":7.5, "y":0}, {"x":8.5, "y":0}, {"x":9.5, "y":0}, {"x":11, "y":0}, {"x":12, "y":0}, {"x":13, "y":0}, {"x":14, "y":0}, {"x":15.25, "y":0}, {"x":16.25, "y":0}, {"x":17.25, "y":0}, {"x":0, "y":1.5}, {"x":1, "y":1.5}, {"x":2, "y":1.5}, {"x":3, "y":1.5}, {"x":4, "y":1.5}, {"x":5, "y":1.5}, {"x":6, "y":1.5}, {"x":7, "y":1.5}, {"x":8, "y":1.5}, {"x":9, "y":1.5}, {"x":10, "y":1.5}, {"x":11, "y":1.5}, {"x":12, "y":1.5}, {"x":13, "y":1.5, "w":2}, {"x":15.25, "y":1.5}, {"x":16.25, "y":1.5}, {"x":17.25, "y":1.5}, {"x":18.5, "y":1.5}, {"x":19.5, "y":1.5}, {"x":20.5, "y":1.5}, {"x":21.5, "y":1.5}, {"x":0, "y":2.5, "w":1.5}, {"x":1.5, "y":2.5}, {"x":2.5, "y":2.5}, {"x":3.5, "y":2.5}, {"x":4.5, "y":2.5}, {"x":5.5, "y":2.5}, {"x":6.5, "y":2.5}, {"x":7.5, "y":2.5}, {"x":8.5, "y":2.5}, {"x":9.5, "y":2.5}, {"x":10.5, "y":2.5}, {"x":11.5, "y":2.5}, {"x":12.5, "y":2.5}, {"x":13.75, "y":2.5, "w":1.25, "h":2}, {"x":15.25, "y":2.5}, {"x":16.25, "y":2.5}, {"x":17.25, "y":2.5}, {"x":18.5, "y":2.5}, {"x":19.5, "y":2.5}, {"x":20.5, "y":2.5}, {"x":21.5, "y":2.5, "h":2}, {"x":0, "y":3.5, "w":1.75}, {"x":1.75, "y":3.5}, {"x":2.75, "y":3.5}, {"x":3.75, "y":3.5}, {"x":4.75, "y":3.5}, {"x":5.75, "y":3.5}, {"x":6.75, "y":3.5}, {"x":7.75, "y":3.5}, {"x":8.75, "y":3.5}, {"x":9.75, "y":3.5}, {"x":10.75, "y":3.5}, {"x":11.75, "y":3.5}, {"x":12.75, "y":3.5}, {"x":18.5, "y":3.5}, {"x":19.5, "y":3.5}, {"x":20.5, "y":3.5}, {"x":0, "y":4.5, "w":1.25}, {"x":1.25, "y":4.5}, {"x":2.25, "y":4.5}, {"x":3.25, "y":4.5}, {"x":4.25, "y":4.5}, {"x":5.25, "y":4.5}, {"x":6.25, "y":4.5}, {"x":7.25, "y":4.5}, {"x":8.25, "y":4.5}, {"x":9.25, "y":4.5}, {"x":10.25, "y":4.5}, {"x":11.25, "y":4.5}, {"x":12.25, "y":4.5, "w":2.75}, {"x":16.25, "y":4.5}, {"x":18.5, "y":4.5}, {"x":19.5, "y":4.5}, {"x":20.5, "y":4.5}, {"x":21.5, "y":4.5, "h":2}, {"x":0, "y":5.5, "w":1.5}, {"x":1.5, "y":5.5}, {"x":2.5, "y":5.5, "w":1.5}, {"x":4, "y":5.5, "w":5.75}, {"x":9.75, "y":5.5, "w":1.25}, {"x":11, "y":5.5, "w":1.5}, {"x":12.5, "y":5.5}, {"x":13.5, "y":5.5, "w":1.5}, {"x":15.25, "y":5.5}, {"x":16.25, "y":5.5}, {"x":17.25, "y":5.5}, {"x":18.5, "y":5.5, "w":2}, {"x":20.5, "y":5.5}]
+ "layout": [
+ {
+ "matrix": [
+ 0,
+ 0
+ ],
+ "x": 0,
+ "y": 0
+ },
+ {
+ "matrix": [
+ 0,
+ 3
+ ],
+ "x": 2,
+ "y": 0
+ },
+ {
+ "matrix": [
+ 7,
+ 3
+ ],
+ "x": 3,
+ "y": 0
+ },
+ {
+ "matrix": [
+ 0,
+ 2
+ ],
+ "x": 4,
+ "y": 0
+ },
+ {
+ "matrix": [
+ 7,
+ 4
+ ],
+ "x": 5,
+ "y": 0
+ },
+ {
+ "matrix": [
+ 0,
+ 8
+ ],
+ "x": 6.5,
+ "y": 0
+ },
+ {
+ "matrix": [
+ 7,
+ 8
+ ],
+ "x": 7.5,
+ "y": 0
+ },
+ {
+ "matrix": [
+ 0,
+ 9
+ ],
+ "x": 8.5,
+ "y": 0
+ },
+ {
+ "matrix": [
+ 7,
+ 9
+ ],
+ "x": 9.5,
+ "y": 0
+ },
+ {
+ "matrix": [
+ 0,
+ 10
+ ],
+ "x": 11,
+ "y": 0
+ },
+ {
+ "matrix": [
+ 7,
+ 10
+ ],
+ "x": 12,
+ "y": 0
+ },
+ {
+ "matrix": [
+ 0,
+ 11
+ ],
+ "x": 13,
+ "y": 0
+ },
+ {
+ "matrix": [
+ 7,
+ 11
+ ],
+ "x": 14,
+ "y": 0
+ },
+ {
+ "matrix": [
+ 0,
+ 12
+ ],
+ "x": 15.25,
+ "y": 0
+ },
+ {
+ "matrix": [
+ 0,
+ 14
+ ],
+ "x": 16.25,
+ "y": 0
+ },
+ {
+ "matrix": [
+ 0,
+ 1
+ ],
+ "x": 17.25,
+ "y": 0
+ },
+ {
+ "matrix": [
+ 7,
+ 0
+ ],
+ "x": 0,
+ "y": 1.5
+ },
+ {
+ "matrix": [
+ 2,
+ 0
+ ],
+ "x": 1,
+ "y": 1.5
+ },
+ {
+ "matrix": [
+ 3,
+ 3
+ ],
+ "x": 2,
+ "y": 1.5
+ },
+ {
+ "matrix": [
+ 0,
+ 5
+ ],
+ "x": 3,
+ "y": 1.5
+ },
+ {
+ "matrix": [
+ 0,
+ 6
+ ],
+ "x": 4,
+ "y": 1.5
+ },
+ {
+ "matrix": [
+ 7,
+ 6
+ ],
+ "x": 5,
+ "y": 1.5
+ },
+ {
+ "matrix": [
+ 0,
+ 7
+ ],
+ "x": 6,
+ "y": 1.5
+ },
+ {
+ "matrix": [
+ 7,
+ 7
+ ],
+ "x": 7,
+ "y": 1.5
+ },
+ {
+ "matrix": [
+ 7,
+ 5
+ ],
+ "x": 8,
+ "y": 1.5
+ },
+ {
+ "matrix": [
+ 2,
+ 9
+ ],
+ "x": 9,
+ "y": 1.5
+ },
+ {
+ "matrix": [
+ 2,
+ 10
+ ],
+ "x": 10,
+ "y": 1.5
+ },
+ {
+ "matrix": [
+ 1,
+ 9
+ ],
+ "x": 11,
+ "y": 1.5
+ },
+ {
+ "matrix": [
+ 2,
+ 8
+ ],
+ "x": 12,
+ "y": 1.5
+ },
+ {
+ "matrix": [
+ 1,
+ 8
+ ],
+ "x": 13,
+ "y": 1.5,
+ "w": 2
+ },
+ {
+ "matrix": [
+ 0,
+ 4
+ ],
+ "x": 15.25,
+ "y": 1.5
+ },
+ {
+ "matrix": [
+ 1,
+ 12
+ ],
+ "x": 16.25,
+ "y": 1.5
+ },
+ {
+ "matrix": [
+ 2,
+ 3
+ ],
+ "x": 17.25,
+ "y": 1.5
+ },
+ {
+ "matrix": [
+ 2,
+ 2
+ ],
+ "x": 18.5,
+ "y": 1.5
+ },
+ {
+ "matrix": [
+ 2,
+ 12
+ ],
+ "x": 19.5,
+ "y": 1.5
+ },
+ {
+ "matrix": [
+ 2,
+ 11
+ ],
+ "x": 20.5,
+ "y": 1.5
+ },
+ {
+ "matrix": [
+ 7,
+ 2
+ ],
+ "x": 21.5,
+ "y": 1.5
+ },
+ {
+ "matrix": [
+ 1,
+ 0
+ ],
+ "x": 0,
+ "y": 2.5,
+ "w": 1.5
+ },
+ {
+ "matrix": [
+ 3,
+ 0
+ ],
+ "x": 1.5,
+ "y": 2.5
+ },
+ {
+ "matrix": [
+ 4,
+ 3
+ ],
+ "x": 2.5,
+ "y": 2.5
+ },
+ {
+ "matrix": [
+ 1,
+ 5
+ ],
+ "x": 3.5,
+ "y": 2.5
+ },
+ {
+ "matrix": [
+ 2,
+ 6
+ ],
+ "x": 4.5,
+ "y": 2.5
+ },
+ {
+ "matrix": [
+ 1,
+ 6
+ ],
+ "x": 5.5,
+ "y": 2.5
+ },
+ {
+ "matrix": [
+ 2,
+ 7
+ ],
+ "x": 6.5,
+ "y": 2.5
+ },
+ {
+ "matrix": [
+ 1,
+ 7
+ ],
+ "x": 7.5,
+ "y": 2.5
+ },
+ {
+ "matrix": [
+ 2,
+ 5
+ ],
+ "x": 8.5,
+ "y": 2.5
+ },
+ {
+ "matrix": [
+ 3,
+ 9
+ ],
+ "x": 9.5,
+ "y": 2.5
+ },
+ {
+ "matrix": [
+ 5,
+ 10
+ ],
+ "x": 10.5,
+ "y": 2.5
+ },
+ {
+ "matrix": [
+ 4,
+ 9
+ ],
+ "x": 11.5,
+ "y": 2.5
+ },
+ {
+ "matrix": [
+ 3,
+ 8
+ ],
+ "x": 12.5,
+ "y": 2.5
+ },
+ {
+ "matrix": [
+ 5,
+ 8
+ ],
+ "x": 13.75,
+ "y": 2.5,
+ "w": 1.25,
+ "h": 2
+ },
+ {
+ "matrix": [
+ 1,
+ 2
+ ],
+ "x": 15.25,
+ "y": 2.5
+ },
+ {
+ "matrix": [
+ 1,
+ 11
+ ],
+ "x": 16.25,
+ "y": 2.5
+ },
+ {
+ "matrix": [
+ 1,
+ 3
+ ],
+ "x": 17.25,
+ "y": 2.5
+ },
+ {
+ "matrix": [
+ 3,
+ 12
+ ],
+ "x": 18.5,
+ "y": 2.5
+ },
+ {
+ "matrix": [
+ 3,
+ 11
+ ],
+ "x": 19.5,
+ "y": 2.5
+ },
+ {
+ "matrix": [
+ 3,
+ 2
+ ],
+ "x": 20.5,
+ "y": 2.5
+ },
+ {
+ "matrix": [
+ 6,
+ 12
+ ],
+ "x": 21.5,
+ "y": 2.5,
+ "h": 2
+ },
+ {
+ "matrix": [
+ 1,
+ 15
+ ],
+ "x": 0,
+ "y": 3.5,
+ "w": 1.75
+ },
+ {
+ "matrix": [
+ 4,
+ 0
+ ],
+ "x": 1.75,
+ "y": 3.5
+ },
+ {
+ "matrix": [
+ 6,
+ 3
+ ],
+ "x": 2.75,
+ "y": 3.5
+ },
+ {
+ "matrix": [
+ 4,
+ 5
+ ],
+ "x": 3.75,
+ "y": 3.5
+ },
+ {
+ "matrix": [
+ 3,
+ 6
+ ],
+ "x": 4.75,
+ "y": 3.5
+ },
+ {
+ "matrix": [
+ 4,
+ 6
+ ],
+ "x": 5.75,
+ "y": 3.5
+ },
+ {
+ "matrix": [
+ 3,
+ 7
+ ],
+ "x": 6.75,
+ "y": 3.5
+ },
+ {
+ "matrix": [
+ 4,
+ 7
+ ],
+ "x": 7.75,
+ "y": 3.5
+ },
+ {
+ "matrix": [
+ 3,
+ 5
+ ],
+ "x": 8.75,
+ "y": 3.5
+ },
+ {
+ "matrix": [
+ 6,
+ 9
+ ],
+ "x": 9.75,
+ "y": 3.5
+ },
+ {
+ "matrix": [
+ 3,
+ 10
+ ],
+ "x": 10.75,
+ "y": 3.5
+ },
+ {
+ "matrix": [
+ 4,
+ 10
+ ],
+ "x": 11.75,
+ "y": 3.5
+ },
+ {
+ "matrix": [
+ 6,
+ 13
+ ],
+ "x": 12.75,
+ "y": 3.5
+ },
+ {
+ "matrix": [
+ 4,
+ 12
+ ],
+ "x": 18.5,
+ "y": 3.5
+ },
+ {
+ "matrix": [
+ 4,
+ 11
+ ],
+ "x": 19.5,
+ "y": 3.5
+ },
+ {
+ "matrix": [
+ 4,
+ 2
+ ],
+ "x": 20.5,
+ "y": 3.5
+ },
+ {
+ "matrix": [
+ 3,
+ 1
+ ],
+ "x": 0,
+ "y": 4.5,
+ "w": 1.25
+ },
+ {
+ "matrix": [
+ 6,
+ 0
+ ],
+ "x": 1.25,
+ "y": 4.5
+ },
+ {
+ "matrix": [
+ 5,
+ 0
+ ],
+ "x": 2.25,
+ "y": 4.5
+ },
+ {
+ "matrix": [
+ 5,
+ 3
+ ],
+ "x": 3.25,
+ "y": 4.5
+ },
+ {
+ "matrix": [
+ 6,
+ 5
+ ],
+ "x": 4.25,
+ "y": 4.5
+ },
+ {
+ "matrix": [
+ 6,
+ 6
+ ],
+ "x": 5.25,
+ "y": 4.5
+ },
+ {
+ "matrix": [
+ 5,
+ 6
+ ],
+ "x": 6.25,
+ "y": 4.5
+ },
+ {
+ "matrix": [
+ 6,
+ 7
+ ],
+ "x": 7.25,
+ "y": 4.5
+ },
+ {
+ "matrix": [
+ 5,
+ 7
+ ],
+ "x": 8.25,
+ "y": 4.5
+ },
+ {
+ "matrix": [
+ 5,
+ 5
+ ],
+ "x": 9.25,
+ "y": 4.5
+ },
+ {
+ "matrix": [
+ 5,
+ 9
+ ],
+ "x": 10.25,
+ "y": 4.5
+ },
+ {
+ "matrix": [
+ 6,
+ 10
+ ],
+ "x": 11.25,
+ "y": 4.5
+ },
+ {
+ "matrix": [
+ 5,
+ 1
+ ],
+ "x": 12.25,
+ "y": 4.5,
+ "w": 2.75
+ },
+ {
+ "matrix": [
+ 2,
+ 13
+ ],
+ "x": 16.25,
+ "y": 4.5
+ },
+ {
+ "matrix": [
+ 5,
+ 12
+ ],
+ "x": 18.5,
+ "y": 4.5
+ },
+ {
+ "matrix": [
+ 6,
+ 11
+ ],
+ "x": 19.5,
+ "y": 4.5
+ },
+ {
+ "matrix": [
+ 6,
+ 2
+ ],
+ "x": 20.5,
+ "y": 4.5
+ },
+ {
+ "matrix": [
+ 7,
+ 14
+ ],
+ "x": 21.5,
+ "y": 4.5,
+ "h": 2
+ },
+ {
+ "matrix": [
+ 3,
+ 15
+ ],
+ "x": 0,
+ "y": 5.5,
+ "w": 1.5
+ },
+ {
+ "matrix": [
+ 2,
+ 14
+ ],
+ "x": 1.5,
+ "y": 5.5
+ },
+ {
+ "matrix": [
+ 4,
+ 4
+ ],
+ "x": 2.5,
+ "y": 5.5,
+ "w": 1.5
+ },
+ {
+ "matrix": [
+ 7,
+ 13
+ ],
+ "x": 4,
+ "y": 5.5,
+ "w": 5.75
+ },
+ {
+ "matrix": [
+ 1,
+ 13
+ ],
+ "x": 9.75,
+ "y": 5.5,
+ "w": 1.25
+ },
+ {
+ "matrix": [
+ 6,
+ 4
+ ],
+ "x": 11,
+ "y": 5.5,
+ "w": 1.5
+ },
+ {
+ "matrix": [
+ 7,
+ 12
+ ],
+ "x": 12.5,
+ "y": 5.5
+ },
+ {
+ "matrix": [
+ 5,
+ 15
+ ],
+ "x": 13.5,
+ "y": 5.5,
+ "w": 1.5
+ },
+ {
+ "matrix": [
+ 6,
+ 8
+ ],
+ "x": 15.25,
+ "y": 5.5
+ },
+ {
+ "matrix": [
+ 1,
+ 10
+ ],
+ "x": 16.25,
+ "y": 5.5
+ },
+ {
+ "matrix": [
+ 0,
+ 13
+ ],
+ "x": 17.25,
+ "y": 5.5
+ },
+ {
+ "matrix": [
+ 5,
+ 11
+ ],
+ "x": 18.5,
+ "y": 5.5,
+ "w": 2
+ },
+ {
+ "matrix": [
+ 5,
+ 2
+ ],
+ "x": 20.5,
+ "y": 5.5
+ }
+ ]
}
}
}
diff --git a/keyboards/unicomp/classic_ultracl_post_2013/overnumpad_1xb/config.h b/keyboards/unicomp/classic_ultracl_post_2013/overnumpad_1xb/config.h
index 88eb8c2c51..71e60e9cfe 100644
--- a/keyboards/unicomp/classic_ultracl_post_2013/overnumpad_1xb/config.h
+++ b/keyboards/unicomp/classic_ultracl_post_2013/overnumpad_1xb/config.h
@@ -15,41 +15,17 @@
*/
#pragma once
+#define DEF_SERIAL_NUMBER "purdea.ro:overnumpad_controller"
-#define SERIAL_NUMBER "purdea.ro:overnumpad_controller"
-
-/*
- * Keyboard Matrix Assignments
- *
- * Change this to how you wired your keyboard
- * COLS: AVR pins used for columns, left to right
- * ROWS: AVR pins used for rows, top to bottom
- * DIODE_DIRECTION: COL2ROW = COL = Anode (+), ROW = Cathode (-, marked on diode)
- * ROW2COL = ROW = Anode (+), COL = Cathode (-, marked on diode)
- *
- */
-
-// All pins in order from left-to-right, as seen on the keyboard:
-// C3, C2, C1, C0, A3, A4, A5, A6, A7, C4, C5, B0, B1, B10, B12, B13, B14, B15, C6, C7, C8, C9, A8, A9, A10,
-// On this chip A10, B10 have stronger pull-ups, so it's better to avoid them if possible.
-
-// On this keyboard the right-most pin is not used, so that is A10.
-// On this keyboard the right-most 8 pins (excluding the unused pin) are routed on the bottom.
-
-#define MATRIX_COL_PINS { C3, C2, C1, C0, A3, A4, A5, A6, A7, C4, C5, B0, B1, B10, B12, B13 }
-#define MATRIX_ROW_PINS { B14, B15, C6, C7, C8, C9, A8, A9 }
-
-/* COL2ROW, ROW2COL*/
-#define DIODE_DIRECTION ROW2COL
-
-/* define if matrix has ghost (lacks anti-ghosting diodes) */
-#define MATRIX_HAS_GHOST
+#ifndef SERIAL_NUMBER
+#define SERIAL_NUMBER DEF_SERIAL_NUMBER
+#endif
#define STM32_HSECLK 16000000
#define SOLENOID_PIN B5
#define HAPTIC_ENABLE_PIN C13
-#define SOLENOID_DEFAULT_DWELL 4
+#define SOLENOID_DEFAULT_DWELL 20
#define SOLENOID_MIN_DWELL 4
#define HAPTIC_OFF_IN_LOW_POWER 1
#define NO_HAPTIC_MOD
diff --git a/keyboards/unicomp/classic_ultracl_post_2013/overnumpad_1xb/info.json b/keyboards/unicomp/classic_ultracl_post_2013/overnumpad_1xb/info.json
new file mode 100644
index 0000000000..13615db22d
--- /dev/null
+++ b/keyboards/unicomp/classic_ultracl_post_2013/overnumpad_1xb/info.json
@@ -0,0 +1,20 @@
+{
+ "keyboard_name": "Unicomp Classic / Ultra Classic / New M (post-2013)",
+ "manufacturer": "Unicomp/Purdea Andrei",
+ "maintainer": "purdeaandrei",
+ "url": "https://github.com/purdeaandrei/overnumpad_controller_1xb",
+ "indicators": {
+ "caps_lock": "C11",
+ "num_lock": "C12",
+ "scroll_lock": "C10"
+ },
+ "processor": "STM32F446",
+ "bootloader": "stm32-dfu",
+ "diode_direction": "ROW2COL",
+ "matrix_pins": {
+ // The controller to membrane interface has pads left-to-right, as seen on the keyboard, matching
+ // the order listed below: all columns followed by all rows, (also followed by unused gpio "A10"):
+ "cols": ["C3", "C2", "C1", "C0", "A3", "A4", "A5", "A6", "A7", "C4", "C5", "B0", "B1", "B10", "B12", "B13"],
+ "rows": ["B14", "B15", "C6", "C7", "C8", "C9", "A8", "A9"]
+ }
+}
diff --git a/keyboards/unicomp/classic_ultracl_post_2013/overnumpad_1xb/overnumpad_1xb.c b/keyboards/unicomp/classic_ultracl_post_2013/overnumpad_1xb/overnumpad_1xb.c
deleted file mode 100644
index cb5ec3dc12..0000000000
--- a/keyboards/unicomp/classic_ultracl_post_2013/overnumpad_1xb/overnumpad_1xb.c
+++ /dev/null
@@ -1,24 +0,0 @@
-/* Copyright 2020 Purdea Andrei
- *
- * 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/>.
- */
-
-#include "overnumpad_1xb.h"
-
-void keyboard_post_init_kb(void)
-{
- //debug_enable=true;
- //debug_matrix=true;
-}
-
diff --git a/keyboards/unicomp/classic_ultracl_post_2013/overnumpad_1xb/overnumpad_1xb.h b/keyboards/unicomp/classic_ultracl_post_2013/overnumpad_1xb/overnumpad_1xb.h
deleted file mode 100644
index a62e8cfbab..0000000000
--- a/keyboards/unicomp/classic_ultracl_post_2013/overnumpad_1xb/overnumpad_1xb.h
+++ /dev/null
@@ -1,88 +0,0 @@
-/* Copyright 2020 Purdea Andrei
- *
- * 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"
-
-/* This is a shortcut to help you visually see your layout.
- *
- * The first section contains all of the arguments representing the physical
- * layout of the board and position of the keys.
- *
- * The second converts the arguments into a two-dimensional array which
- * represents the switch matrix.
- */
-
-#define LAYOUT_all( \
- k_esc, k_f1, k_f2, k_f3, k_f4, k_f5, k_f6, k_f7, k_f8, k_f9, k_f10, k_f11, k_f12, k_prscr, k_scrl, k_pause, \
- k_tild, k_1, k_2, k_3, k_4, k_5, k_6, k_7, k_8, k_9, k_0, k_minus, k_equals, k_bsp_hidden, k_backspace, k_ins, k_home, k_pgup, kp_nl, kp_div, kp_mult, kp_minus, \
- k_tab, k_q, k_w, k_e, k_r, k_t, k_y, k_u, k_i, k_o, k_p, k_squarebrop, k_squarebrcl, k_backsl, k_del, k_end, k_pgdn, kp_7, kp_8, kp_9, kp_plus, \
- k_caps, k_a, k_s, k_d, k_f, k_g, k_h, k_j, k_k, k_l, k_semicolon, k_singlequote, k_nuhs,k_return, kp_4, kp_5, kp_6, kp_plus_hidden, \
- k_lshift,k_nubs,k_z, k_x, k_c, k_v, k_b, k_n, k_m, k_cm,k_period, k_fwslash, k_rshift_hidden, k_rshift, k_up, kp_1, kp_2, kp_3, kp_enter, \
- k_lctrl, k_lwin, k_lalt, k_code, k_space, k_1_d, k_6_4, k_rmenu, k_rctrl, k_left, k_down, k_right, kp_0_hidden, kp_0, kp_dot, kp_enter_hidden \
-) \
-{ \
- /* 0 1 2 3 4 5 6 7 8 9 A B C D E F */ \
- /* 0 */ { k_esc, k_pause, k_f3, k_f1, k_ins, k_3, k_4, k_6, k_f5, k_f7, k_f9, k_f11, k_prscr, k_right, k_scrl, KC_NO }, \
- /* 1 */ { k_tab, KC_NO, k_del, k_pgdn, KC_NO, k_e, k_t, k_u, k_backspace, k_minus, k_down, k_end, k_home, k_1_d, KC_NO, k_caps }, \
- /* 2 */ { k_1, k_bsp_hidden, kp_nl, k_pgup, k_code, k_i, k_r, k_y, k_equals, k_9, k_0, kp_mult, kp_div, k_up, k_lwin, KC_NO }, \
- /* 3 */ { k_q, k_lshift, kp_9, k_2, KC_NO, k_k, k_f, k_h, k_squarebrcl, k_o, k_semicolon, kp_8, kp_7, KC_NO, KC_NO, k_lctrl }, \
- /* 4 */ { k_a, KC_NO, kp_6, k_w, k_lalt, k_d, k_g, k_j, k_backsl, k_squarebrop, k_singlequote, kp_5, kp_4, k_rshift_hidden, kp_plus_hidden, KC_NO }, \
- /* 5 */ { k_z, k_rshift, kp_dot, k_x, KC_NO, k_cm, k_b, k_m, k_return, k_period, k_p, kp_0, kp_1, KC_NO, kp_0_hidden, k_rctrl }, \
- /* 6 */ { k_nubs, KC_NO, kp_3, k_s, k_6_4, k_c, k_v, k_n, k_left, k_l, k_fwslash, kp_2, kp_plus, k_nuhs, kp_enter_hidden, KC_NO }, \
- /* 7 */ { k_tild, KC_NO, kp_minus, k_f2, k_f4, k_8, k_5, k_7, k_f6, k_f8, k_f10, k_f12, k_rmenu, k_space, kp_enter, KC_NO } \
-}
-
-#define LAYOUT_ansi( \
- k_esc, k_f1, k_f2, k_f3, k_f4, k_f5, k_f6, k_f7, k_f8, k_f9, k_f10, k_f11, k_f12, k_prscr, k_scrl, k_pause, \
- k_tild, k_1, k_2, k_3, k_4, k_5, k_6, k_7, k_8, k_9, k_0, k_minus, k_equals, k_backspace, k_ins, k_home, k_pgup, kp_nl, kp_div, kp_mult, kp_minus, \
- k_tab, k_q, k_w, k_e, k_r, k_t, k_y, k_u, k_i, k_o, k_p, k_squarebrop, k_squarebrcl, k_backsl, k_del, k_end, k_pgdn, kp_7, kp_8, kp_9, kp_plus, \
- k_caps, k_a, k_s, k_d, k_f, k_g, k_h, k_j, k_k, k_l, k_semicolon, k_singlequote, k_return, kp_4, kp_5, kp_6, \
- k_lshift, k_z, k_x, k_c, k_v, k_b, k_n, k_m, k_cm,k_period, k_fwslash, k_rshift, k_up, kp_1, kp_2, kp_3, kp_enter, \
- k_lctrl, k_lwin, k_lalt, k_space, k_1_d, k_6_4, k_rmenu, k_rctrl, k_left, k_down, k_right, kp_0, kp_dot \
-) \
-{ \
- /* 0 1 2 3 4 5 6 7 8 9 A B C D E F */ \
- /* 0 */ { k_esc, k_pause, k_f3, k_f1, k_ins, k_3, k_4, k_6, k_f5, k_f7, k_f9, k_f11, k_prscr, k_right, k_scrl, KC_NO }, \
- /* 1 */ { k_tab, KC_NO, k_del, k_pgdn, KC_NO, k_e, k_t, k_u, k_backspace, k_minus, k_down, k_end, k_home, k_1_d, KC_NO, k_caps }, \
- /* 2 */ { k_1, KC_NO, kp_nl, k_pgup, KC_NO, k_i, k_r, k_y, k_equals, k_9, k_0, kp_mult, kp_div, k_up, k_lwin, KC_NO }, \
- /* 3 */ { k_q, k_lshift, kp_9, k_2, KC_NO, k_k, k_f, k_h, k_squarebrcl, k_o, k_semicolon, kp_8, kp_7, KC_NO, KC_NO, k_lctrl }, \
- /* 4 */ { k_a, KC_NO, kp_6, k_w, k_lalt, k_d, k_g, k_j, k_backsl, k_squarebrop, k_singlequote, kp_5, kp_4, KC_NO, KC_NO, KC_NO }, \
- /* 5 */ { k_z, k_rshift, kp_dot, k_x, KC_NO, k_cm, k_b, k_m, k_return, k_period, k_p, kp_0, kp_1, KC_NO, KC_NO, k_rctrl }, \
- /* 6 */ { KC_NO, KC_NO, kp_3, k_s, k_6_4, k_c, k_v, k_n, k_left, k_l, k_fwslash, kp_2, kp_plus, KC_NO, KC_NO, KC_NO }, \
- /* 7 */ { k_tild, KC_NO, kp_minus, k_f2, k_f4, k_8, k_5, k_7, k_f6, k_f8, k_f10, k_f12, k_rmenu, k_space, kp_enter, KC_NO } \
-}
-
-#define LAYOUT_iso( \
- k_esc, k_f1, k_f2, k_f3, k_f4, k_f5, k_f6, k_f7, k_f8, k_f9, k_f10, k_f11, k_f12, k_prscr, k_scrl, k_pause, \
- k_tild, k_1, k_2, k_3, k_4, k_5, k_6, k_7, k_8, k_9, k_0, k_minus, k_equals, k_backspace, k_ins, k_home, k_pgup, kp_nl, kp_div, kp_mult, kp_minus, \
- k_tab, k_q, k_w, k_e, k_r, k_t, k_y, k_u, k_i, k_o, k_p, k_squarebrop, k_squarebrcl, k_return, k_del, k_end, k_pgdn, kp_7, kp_8, kp_9, kp_plus, \
- k_caps, k_a, k_s, k_d, k_f, k_g, k_h, k_j, k_k, k_l, k_semicolon, k_singlequote, k_nuhs, kp_4, kp_5, kp_6, \
- k_lshift,k_nubs,k_z, k_x, k_c, k_v, k_b, k_n, k_m, k_cm,k_period, k_fwslash, k_rshift, k_up, kp_1, kp_2, kp_3, kp_enter, \
- k_lctrl, k_lwin, k_lalt, k_space, k_1_d, k_6_4, k_rmenu, k_rctrl, k_left, k_down, k_right, kp_0, kp_dot \
-) \
-{ \
- /* 0 1 2 3 4 5 6 7 8 9 A B C D E F */ \
- /* 0 */ { k_esc, k_pause, k_f3, k_f1, k_ins, k_3, k_4, k_6, k_f5, k_f7, k_f9, k_f11, k_prscr, k_right, k_scrl, KC_NO }, \
- /* 1 */ { k_tab, KC_NO, k_del, k_pgdn, KC_NO, k_e, k_t, k_u, k_backspace, k_minus, k_down, k_end, k_home, k_1_d, KC_NO, k_caps }, \
- /* 2 */ { k_1, KC_NO, kp_nl, k_pgup, KC_NO, k_i, k_r, k_y, k_equals, k_9, k_0, kp_mult, kp_div, k_up, k_lwin, KC_NO }, \
- /* 3 */ { k_q, k_lshift, kp_9, k_2, KC_NO, k_k, k_f, k_h, k_squarebrcl, k_o, k_semicolon, kp_8, kp_7, KC_NO, KC_NO, k_lctrl }, \
- /* 4 */ { k_a, KC_NO, kp_6, k_w, k_lalt, k_d, k_g, k_j, KC_NO, k_squarebrop, k_singlequote, kp_5, kp_4, KC_NO, KC_NO, KC_NO }, \
- /* 5 */ { k_z, k_rshift, kp_dot, k_x, KC_NO, k_cm, k_b, k_m, k_return, k_period, k_p, kp_0, kp_1, KC_NO, KC_NO, k_rctrl }, \
- /* 6 */ { k_nubs, KC_NO, kp_3, k_s, k_6_4, k_c, k_v, k_n, k_left, k_l, k_fwslash, kp_2, kp_plus, k_nuhs, KC_NO, KC_NO }, \
- /* 7 */ { k_tild, KC_NO, kp_minus, k_f2, k_f4, k_8, k_5, k_7, k_f6, k_f8, k_f10, k_f12, k_rmenu, k_space, kp_enter, KC_NO } \
-}
diff --git a/keyboards/unicomp/classic_ultracl_post_2013/overnumpad_1xb/readme.md b/keyboards/unicomp/classic_ultracl_post_2013/overnumpad_1xb/readme.md
index fe8fc769e4..7889bf6d82 100644
--- a/keyboards/unicomp/classic_ultracl_post_2013/overnumpad_1xb/readme.md
+++ b/keyboards/unicomp/classic_ultracl_post_2013/overnumpad_1xb/readme.md
@@ -2,7 +2,7 @@
![unicomp/classic_ultracl_post_2013/overnumpad_1xb](https://www.pckeyboard.com/mm5/graphics/00000001/UB4ZPHA_800x343.jpg)
-Will support the following Unicomp Classic and Ultra Classic keyboards:
+Will support the following Unicomp Classic, Ultra Classic, and New Model M keyboards:
* 104-key ANSI and 105-key ISO keyboards with post-2013 bottom row are supported.
* It will likely also support 103-key ANSI or 104-key ISO keyboard variants (not tested) (these are the keyboards with no menu key)
* At this point in time it's unclear if it supports 101-key keyboard variants built after 2013.
diff --git a/keyboards/unicomp/classic_ultracl_pre_2013/info.json b/keyboards/unicomp/classic_ultracl_pre_2013/info.json
index aa28ce85c8..3230af6024 100644
--- a/keyboards/unicomp/classic_ultracl_pre_2013/info.json
+++ b/keyboards/unicomp/classic_ultracl_pre_2013/info.json
@@ -1,30 +1,2646 @@
{
- "keyboard_name": "Unicomp Classic / Ultra Classic (pre-2013)",
- "manufacturer": "Unicomp/Purdea Andrei",
- "url": "https://github.com/purdeaandrei/overnumpad_controller_1xb",
- "maintainer": "purdeaandrei",
+ "matrix_pins": {
+ "ghost": true
+ },
"usb": {
"vid": "0x16C0",
"pid": "0x27DB",
"device_version": "0.0.1"
},
- "indicators": {
- "caps_lock": "C11",
- "num_lock": "C12",
- "scroll_lock": "C10"
- },
- "processor": "STM32F446", // RET6
- "bootloader": "stm32-dfu",
- "community_layouts": ["fullsize_ansi", "fullsize_iso"],
+ "community_layouts": [
+ "fullsize_ansi",
+ "fullsize_iso"
+ ],
"layouts": {
"LAYOUT_all": {
- "layout": [{"x":0, "y":0}, {"x":2, "y":0}, {"x":3, "y":0}, {"x":4, "y":0}, {"x":5, "y":0}, {"x":6.5, "y":0}, {"x":7.5, "y":0}, {"x":8.5, "y":0}, {"x":9.5, "y":0}, {"x":11, "y":0}, {"x":12, "y":0}, {"x":13, "y":0}, {"x":14, "y":0}, {"x":15.25, "y":0}, {"x":16.25, "y":0}, {"x":17.25, "y":0}, {"x":0, "y":1.5}, {"x":1, "y":1.5}, {"x":2, "y":1.5}, {"x":3, "y":1.5}, {"x":4, "y":1.5}, {"x":5, "y":1.5}, {"x":6, "y":1.5}, {"x":7, "y":1.5}, {"x":8, "y":1.5}, {"x":9, "y":1.5}, {"x":10, "y":1.5}, {"x":11, "y":1.5}, {"x":12, "y":1.5}, {"x":13, "y":1.5}, {"x":14, "y":1.5}, {"x":15.25, "y":1.5}, {"x":16.25, "y":1.5}, {"x":17.25, "y":1.5}, {"x":18.5, "y":1.5}, {"x":19.5, "y":1.5}, {"x":20.5, "y":1.5}, {"x":21.5, "y":1.5}, {"x":0, "y":2.5, "w":1.5}, {"x":1.5, "y":2.5}, {"x":2.5, "y":2.5}, {"x":3.5, "y":2.5}, {"x":4.5, "y":2.5}, {"x":5.5, "y":2.5}, {"x":6.5, "y":2.5}, {"x":7.5, "y":2.5}, {"x":8.5, "y":2.5}, {"x":9.5, "y":2.5}, {"x":10.5, "y":2.5}, {"x":11.5, "y":2.5}, {"x":12.5, "y":2.5}, {"x":13.5, "y":2.5, "w":1.5}, {"x":15.25, "y":2.5}, {"x":16.25, "y":2.5}, {"x":17.25, "y":2.5}, {"x":18.5, "y":2.5}, {"x":19.5, "y":2.5}, {"x":20.5, "y":2.5}, {"x":21.5, "y":2.5}, {"x":0, "y":3.5, "w":1.75}, {"x":1.75, "y":3.5}, {"x":2.75, "y":3.5}, {"x":3.75, "y":3.5}, {"x":4.75, "y":3.5}, {"x":5.75, "y":3.5}, {"x":6.75, "y":3.5}, {"x":7.75, "y":3.5}, {"x":8.75, "y":3.5}, {"x":9.75, "y":3.5}, {"x":10.75, "y":3.5}, {"x":11.75, "y":3.5}, {"x":12.75, "y":3.5}, {"x":13.75, "y":3.5, "w":1.25}, {"x":18.5, "y":3.5}, {"x":19.5, "y":3.5}, {"x":20.5, "y":3.5}, {"x":21.5, "y":3.5}, {"x":0, "y":4.5, "w":1.25}, {"x":1.25, "y":4.5}, {"x":2.25, "y":4.5}, {"x":3.25, "y":4.5}, {"x":4.25, "y":4.5}, {"x":5.25, "y":4.5}, {"x":6.25, "y":4.5}, {"x":7.25, "y":4.5}, {"x":8.25, "y":4.5}, {"x":9.25, "y":4.5}, {"x":10.25, "y":4.5}, {"x":11.25, "y":4.5}, {"x":12.25, "y":4.5}, {"x":13.25, "y":4.5, "w":1.75}, {"x":16.25, "y":4.5}, {"x":18.5, "y":4.5}, {"x":19.5, "y":4.5}, {"x":20.5, "y":4.5}, {"x":21.5, "y":4.5}, {"x":0, "y":5.5, "w":1.5}, {"x":1.5, "y":5.5, "w":1.25}, {"x":2.75, "y":5.5, "w":1.25}, {"x":4, "y":5.5}, {"x":5, "y":5.5, "w":4.75}, {"x":9.75, "y":5.5, "w":1.25}, {"x":11, "y":5.5, "w":1.25}, {"x":12.25, "y":5.5, "w":1.25}, {"x":13.5, "y":5.5, "w":1.5}, {"x":15.25, "y":5.5}, {"x":16.25, "y":5.5}, {"x":17.25, "y":5.5}, {"x":18.5, "y":5.5}, {"x":19.5, "y":5.5}, {"x":20.5, "y":5.5}, {"x":21.5, "y":5.5}]
+ "layout": [
+ {
+ "matrix": [
+ 0,
+ 0
+ ],
+ "x": 0,
+ "y": 0
+ },
+ {
+ "matrix": [
+ 0,
+ 3
+ ],
+ "x": 2,
+ "y": 0
+ },
+ {
+ "matrix": [
+ 7,
+ 3
+ ],
+ "x": 3,
+ "y": 0
+ },
+ {
+ "matrix": [
+ 0,
+ 2
+ ],
+ "x": 4,
+ "y": 0
+ },
+ {
+ "matrix": [
+ 7,
+ 4
+ ],
+ "x": 5,
+ "y": 0
+ },
+ {
+ "matrix": [
+ 0,
+ 8
+ ],
+ "x": 6.5,
+ "y": 0
+ },
+ {
+ "matrix": [
+ 7,
+ 8
+ ],
+ "x": 7.5,
+ "y": 0
+ },
+ {
+ "matrix": [
+ 0,
+ 9
+ ],
+ "x": 8.5,
+ "y": 0
+ },
+ {
+ "matrix": [
+ 7,
+ 9
+ ],
+ "x": 9.5,
+ "y": 0
+ },
+ {
+ "matrix": [
+ 0,
+ 10
+ ],
+ "x": 11,
+ "y": 0
+ },
+ {
+ "matrix": [
+ 7,
+ 10
+ ],
+ "x": 12,
+ "y": 0
+ },
+ {
+ "matrix": [
+ 0,
+ 11
+ ],
+ "x": 13,
+ "y": 0
+ },
+ {
+ "matrix": [
+ 7,
+ 11
+ ],
+ "x": 14,
+ "y": 0
+ },
+ {
+ "matrix": [
+ 0,
+ 12
+ ],
+ "x": 15.25,
+ "y": 0
+ },
+ {
+ "matrix": [
+ 0,
+ 14
+ ],
+ "x": 16.25,
+ "y": 0
+ },
+ {
+ "matrix": [
+ 0,
+ 1
+ ],
+ "x": 17.25,
+ "y": 0
+ },
+ {
+ "matrix": [
+ 7,
+ 0
+ ],
+ "x": 0,
+ "y": 1.5
+ },
+ {
+ "matrix": [
+ 2,
+ 0
+ ],
+ "x": 1,
+ "y": 1.5
+ },
+ {
+ "matrix": [
+ 3,
+ 3
+ ],
+ "x": 2,
+ "y": 1.5
+ },
+ {
+ "matrix": [
+ 0,
+ 5
+ ],
+ "x": 3,
+ "y": 1.5
+ },
+ {
+ "matrix": [
+ 0,
+ 6
+ ],
+ "x": 4,
+ "y": 1.5
+ },
+ {
+ "matrix": [
+ 7,
+ 6
+ ],
+ "x": 5,
+ "y": 1.5
+ },
+ {
+ "matrix": [
+ 0,
+ 7
+ ],
+ "x": 6,
+ "y": 1.5
+ },
+ {
+ "matrix": [
+ 7,
+ 7
+ ],
+ "x": 7,
+ "y": 1.5
+ },
+ {
+ "matrix": [
+ 7,
+ 5
+ ],
+ "x": 8,
+ "y": 1.5
+ },
+ {
+ "matrix": [
+ 2,
+ 9
+ ],
+ "x": 9,
+ "y": 1.5
+ },
+ {
+ "matrix": [
+ 2,
+ 10
+ ],
+ "x": 10,
+ "y": 1.5
+ },
+ {
+ "matrix": [
+ 1,
+ 9
+ ],
+ "x": 11,
+ "y": 1.5
+ },
+ {
+ "matrix": [
+ 2,
+ 8
+ ],
+ "x": 12,
+ "y": 1.5
+ },
+ {
+ "matrix": [
+ 2,
+ 1
+ ],
+ "x": 13,
+ "y": 1.5
+ },
+ {
+ "matrix": [
+ 1,
+ 8
+ ],
+ "x": 14,
+ "y": 1.5
+ },
+ {
+ "matrix": [
+ 0,
+ 4
+ ],
+ "x": 15.25,
+ "y": 1.5
+ },
+ {
+ "matrix": [
+ 1,
+ 12
+ ],
+ "x": 16.25,
+ "y": 1.5
+ },
+ {
+ "matrix": [
+ 2,
+ 3
+ ],
+ "x": 17.25,
+ "y": 1.5
+ },
+ {
+ "matrix": [
+ 2,
+ 2
+ ],
+ "x": 18.5,
+ "y": 1.5
+ },
+ {
+ "matrix": [
+ 2,
+ 12
+ ],
+ "x": 19.5,
+ "y": 1.5
+ },
+ {
+ "matrix": [
+ 2,
+ 11
+ ],
+ "x": 20.5,
+ "y": 1.5
+ },
+ {
+ "matrix": [
+ 7,
+ 2
+ ],
+ "x": 21.5,
+ "y": 1.5
+ },
+ {
+ "matrix": [
+ 1,
+ 0
+ ],
+ "x": 0,
+ "y": 2.5,
+ "w": 1.5
+ },
+ {
+ "matrix": [
+ 3,
+ 0
+ ],
+ "x": 1.5,
+ "y": 2.5
+ },
+ {
+ "matrix": [
+ 4,
+ 3
+ ],
+ "x": 2.5,
+ "y": 2.5
+ },
+ {
+ "matrix": [
+ 1,
+ 5
+ ],
+ "x": 3.5,
+ "y": 2.5
+ },
+ {
+ "matrix": [
+ 2,
+ 6
+ ],
+ "x": 4.5,
+ "y": 2.5
+ },
+ {
+ "matrix": [
+ 1,
+ 6
+ ],
+ "x": 5.5,
+ "y": 2.5
+ },
+ {
+ "matrix": [
+ 2,
+ 7
+ ],
+ "x": 6.5,
+ "y": 2.5
+ },
+ {
+ "matrix": [
+ 1,
+ 7
+ ],
+ "x": 7.5,
+ "y": 2.5
+ },
+ {
+ "matrix": [
+ 2,
+ 5
+ ],
+ "x": 8.5,
+ "y": 2.5
+ },
+ {
+ "matrix": [
+ 3,
+ 9
+ ],
+ "x": 9.5,
+ "y": 2.5
+ },
+ {
+ "matrix": [
+ 5,
+ 10
+ ],
+ "x": 10.5,
+ "y": 2.5
+ },
+ {
+ "matrix": [
+ 4,
+ 9
+ ],
+ "x": 11.5,
+ "y": 2.5
+ },
+ {
+ "matrix": [
+ 3,
+ 8
+ ],
+ "x": 12.5,
+ "y": 2.5
+ },
+ {
+ "matrix": [
+ 4,
+ 8
+ ],
+ "x": 13.5,
+ "y": 2.5,
+ "w": 1.5
+ },
+ {
+ "matrix": [
+ 1,
+ 2
+ ],
+ "x": 15.25,
+ "y": 2.5
+ },
+ {
+ "matrix": [
+ 1,
+ 11
+ ],
+ "x": 16.25,
+ "y": 2.5
+ },
+ {
+ "matrix": [
+ 1,
+ 3
+ ],
+ "x": 17.25,
+ "y": 2.5
+ },
+ {
+ "matrix": [
+ 3,
+ 12
+ ],
+ "x": 18.5,
+ "y": 2.5
+ },
+ {
+ "matrix": [
+ 3,
+ 11
+ ],
+ "x": 19.5,
+ "y": 2.5
+ },
+ {
+ "matrix": [
+ 3,
+ 2
+ ],
+ "x": 20.5,
+ "y": 2.5
+ },
+ {
+ "matrix": [
+ 6,
+ 12
+ ],
+ "x": 21.5,
+ "y": 2.5
+ },
+ {
+ "matrix": [
+ 1,
+ 15
+ ],
+ "x": 0,
+ "y": 3.5,
+ "w": 1.75
+ },
+ {
+ "matrix": [
+ 4,
+ 0
+ ],
+ "x": 1.75,
+ "y": 3.5
+ },
+ {
+ "matrix": [
+ 6,
+ 3
+ ],
+ "x": 2.75,
+ "y": 3.5
+ },
+ {
+ "matrix": [
+ 4,
+ 5
+ ],
+ "x": 3.75,
+ "y": 3.5
+ },
+ {
+ "matrix": [
+ 3,
+ 6
+ ],
+ "x": 4.75,
+ "y": 3.5
+ },
+ {
+ "matrix": [
+ 4,
+ 6
+ ],
+ "x": 5.75,
+ "y": 3.5
+ },
+ {
+ "matrix": [
+ 3,
+ 7
+ ],
+ "x": 6.75,
+ "y": 3.5
+ },
+ {
+ "matrix": [
+ 4,
+ 7
+ ],
+ "x": 7.75,
+ "y": 3.5
+ },
+ {
+ "matrix": [
+ 3,
+ 5
+ ],
+ "x": 8.75,
+ "y": 3.5
+ },
+ {
+ "matrix": [
+ 6,
+ 9
+ ],
+ "x": 9.75,
+ "y": 3.5
+ },
+ {
+ "matrix": [
+ 3,
+ 10
+ ],
+ "x": 10.75,
+ "y": 3.5
+ },
+ {
+ "matrix": [
+ 4,
+ 10
+ ],
+ "x": 11.75,
+ "y": 3.5
+ },
+ {
+ "matrix": [
+ 6,
+ 13
+ ],
+ "x": 12.75,
+ "y": 3.5
+ },
+ {
+ "matrix": [
+ 5,
+ 8
+ ],
+ "x": 13.75,
+ "y": 3.5,
+ "w": 1.25
+ },
+ {
+ "matrix": [
+ 4,
+ 12
+ ],
+ "x": 18.5,
+ "y": 3.5
+ },
+ {
+ "matrix": [
+ 4,
+ 11
+ ],
+ "x": 19.5,
+ "y": 3.5
+ },
+ {
+ "matrix": [
+ 4,
+ 2
+ ],
+ "x": 20.5,
+ "y": 3.5
+ },
+ {
+ "matrix": [
+ 4,
+ 14
+ ],
+ "x": 21.5,
+ "y": 3.5
+ },
+ {
+ "matrix": [
+ 3,
+ 1
+ ],
+ "x": 0,
+ "y": 4.5,
+ "w": 1.25
+ },
+ {
+ "matrix": [
+ 6,
+ 0
+ ],
+ "x": 1.25,
+ "y": 4.5
+ },
+ {
+ "matrix": [
+ 5,
+ 0
+ ],
+ "x": 2.25,
+ "y": 4.5
+ },
+ {
+ "matrix": [
+ 5,
+ 3
+ ],
+ "x": 3.25,
+ "y": 4.5
+ },
+ {
+ "matrix": [
+ 6,
+ 5
+ ],
+ "x": 4.25,
+ "y": 4.5
+ },
+ {
+ "matrix": [
+ 6,
+ 6
+ ],
+ "x": 5.25,
+ "y": 4.5
+ },
+ {
+ "matrix": [
+ 5,
+ 6
+ ],
+ "x": 6.25,
+ "y": 4.5
+ },
+ {
+ "matrix": [
+ 6,
+ 7
+ ],
+ "x": 7.25,
+ "y": 4.5
+ },
+ {
+ "matrix": [
+ 5,
+ 7
+ ],
+ "x": 8.25,
+ "y": 4.5
+ },
+ {
+ "matrix": [
+ 5,
+ 5
+ ],
+ "x": 9.25,
+ "y": 4.5
+ },
+ {
+ "matrix": [
+ 5,
+ 9
+ ],
+ "x": 10.25,
+ "y": 4.5
+ },
+ {
+ "matrix": [
+ 6,
+ 10
+ ],
+ "x": 11.25,
+ "y": 4.5
+ },
+ {
+ "matrix": [
+ 4,
+ 13
+ ],
+ "x": 12.25,
+ "y": 4.5
+ },
+ {
+ "matrix": [
+ 5,
+ 1
+ ],
+ "x": 13.25,
+ "y": 4.5,
+ "w": 1.75
+ },
+ {
+ "matrix": [
+ 2,
+ 13
+ ],
+ "x": 16.25,
+ "y": 4.5
+ },
+ {
+ "matrix": [
+ 5,
+ 12
+ ],
+ "x": 18.5,
+ "y": 4.5
+ },
+ {
+ "matrix": [
+ 6,
+ 11
+ ],
+ "x": 19.5,
+ "y": 4.5
+ },
+ {
+ "matrix": [
+ 6,
+ 2
+ ],
+ "x": 20.5,
+ "y": 4.5
+ },
+ {
+ "matrix": [
+ 7,
+ 14
+ ],
+ "x": 21.5,
+ "y": 4.5
+ },
+ {
+ "matrix": [
+ 3,
+ 15
+ ],
+ "x": 0,
+ "y": 5.5,
+ "w": 1.5
+ },
+ {
+ "matrix": [
+ 2,
+ 14
+ ],
+ "x": 1.5,
+ "y": 5.5,
+ "w": 1.25
+ },
+ {
+ "matrix": [
+ 4,
+ 4
+ ],
+ "x": 2.75,
+ "y": 5.5,
+ "w": 1.25
+ },
+ {
+ "matrix": [
+ 2,
+ 4
+ ],
+ "x": 4,
+ "y": 5.5
+ },
+ {
+ "matrix": [
+ 7,
+ 13
+ ],
+ "x": 5,
+ "y": 5.5,
+ "w": 4.75
+ },
+ {
+ "matrix": [
+ 6,
+ 4
+ ],
+ "x": 9.75,
+ "y": 5.5,
+ "w": 1.25
+ },
+ {
+ "matrix": [
+ 1,
+ 13
+ ],
+ "x": 11,
+ "y": 5.5,
+ "w": 1.25
+ },
+ {
+ "matrix": [
+ 7,
+ 12
+ ],
+ "x": 12.25,
+ "y": 5.5,
+ "w": 1.25
+ },
+ {
+ "matrix": [
+ 5,
+ 15
+ ],
+ "x": 13.5,
+ "y": 5.5,
+ "w": 1.5
+ },
+ {
+ "matrix": [
+ 6,
+ 8
+ ],
+ "x": 15.25,
+ "y": 5.5
+ },
+ {
+ "matrix": [
+ 1,
+ 10
+ ],
+ "x": 16.25,
+ "y": 5.5
+ },
+ {
+ "matrix": [
+ 0,
+ 13
+ ],
+ "x": 17.25,
+ "y": 5.5
+ },
+ {
+ "matrix": [
+ 5,
+ 14
+ ],
+ "x": 18.5,
+ "y": 5.5
+ },
+ {
+ "matrix": [
+ 5,
+ 11
+ ],
+ "x": 19.5,
+ "y": 5.5
+ },
+ {
+ "matrix": [
+ 5,
+ 2
+ ],
+ "x": 20.5,
+ "y": 5.5
+ },
+ {
+ "matrix": [
+ 6,
+ 14
+ ],
+ "x": 21.5,
+ "y": 5.5
+ }
+ ]
},
"LAYOUT_fullsize_ansi": {
- "layout": [{"x":0, "y":0}, {"x":2, "y":0}, {"x":3, "y":0}, {"x":4, "y":0}, {"x":5, "y":0}, {"x":6.5, "y":0}, {"x":7.5, "y":0}, {"x":8.5, "y":0}, {"x":9.5, "y":0}, {"x":11, "y":0}, {"x":12, "y":0}, {"x":13, "y":0}, {"x":14, "y":0}, {"x":15.25, "y":0}, {"x":16.25, "y":0}, {"x":17.25, "y":0}, {"x":0, "y":1.5}, {"x":1, "y":1.5}, {"x":2, "y":1.5}, {"x":3, "y":1.5}, {"x":4, "y":1.5}, {"x":5, "y":1.5}, {"x":6, "y":1.5}, {"x":7, "y":1.5}, {"x":8, "y":1.5}, {"x":9, "y":1.5}, {"x":10, "y":1.5}, {"x":11, "y":1.5}, {"x":12, "y":1.5}, {"x":13, "y":1.5, "w":2}, {"x":15.25, "y":1.5}, {"x":16.25, "y":1.5}, {"x":17.25, "y":1.5}, {"x":18.5, "y":1.5}, {"x":19.5, "y":1.5}, {"x":20.5, "y":1.5}, {"x":21.5, "y":1.5}, {"x":0, "y":2.5, "w":1.5}, {"x":1.5, "y":2.5}, {"x":2.5, "y":2.5}, {"x":3.5, "y":2.5}, {"x":4.5, "y":2.5}, {"x":5.5, "y":2.5}, {"x":6.5, "y":2.5}, {"x":7.5, "y":2.5}, {"x":8.5, "y":2.5}, {"x":9.5, "y":2.5}, {"x":10.5, "y":2.5}, {"x":11.5, "y":2.5}, {"x":12.5, "y":2.5}, {"x":13.5, "y":2.5, "w":1.5}, {"x":15.25, "y":2.5}, {"x":16.25, "y":2.5}, {"x":17.25, "y":2.5}, {"x":18.5, "y":2.5}, {"x":19.5, "y":2.5}, {"x":20.5, "y":2.5}, {"x":21.5, "y":2.5, "h":2}, {"x":0, "y":3.5, "w":1.75}, {"x":1.75, "y":3.5}, {"x":2.75, "y":3.5}, {"x":3.75, "y":3.5}, {"x":4.75, "y":3.5}, {"x":5.75, "y":3.5}, {"x":6.75, "y":3.5}, {"x":7.75, "y":3.5}, {"x":8.75, "y":3.5}, {"x":9.75, "y":3.5}, {"x":10.75, "y":3.5}, {"x":11.75, "y":3.5}, {"x":12.75, "y":3.5, "w":2.25}, {"x":18.5, "y":3.5}, {"x":19.5, "y":3.5}, {"x":20.5, "y":3.5}, {"x":0, "y":4.5, "w":2.25}, {"x":2.25, "y":4.5}, {"x":3.25, "y":4.5}, {"x":4.25, "y":4.5}, {"x":5.25, "y":4.5}, {"x":6.25, "y":4.5}, {"x":7.25, "y":4.5}, {"x":8.25, "y":4.5}, {"x":9.25, "y":4.5}, {"x":10.25, "y":4.5}, {"x":11.25, "y":4.5}, {"x":12.25, "y":4.5, "w":2.75}, {"x":16.25, "y":4.5}, {"x":18.5, "y":4.5}, {"x":19.5, "y":4.5}, {"x":20.5, "y":4.5}, {"x":21.5, "y":4.5, "h":2}, {"x":0, "y":5.5, "w":1.5}, {"x":1.5, "y":5.5, "w":1.25}, {"x":2.75, "y":5.5, "w":1.25}, {"x":4, "y":5.5, "w":5.75}, {"x":9.75, "y":5.5, "w":1.25}, {"x":11, "y":5.5, "w":1.25}, {"x":12.25, "y":5.5, "w":1.25}, {"x":13.5, "y":5.5, "w":1.5}, {"x":15.25, "y":5.5}, {"x":16.25, "y":5.5}, {"x":17.25, "y":5.5}, {"x":18.5, "y":5.5, "w":2}, {"x":20.5, "y":5.5}]
+ "layout": [
+ {
+ "matrix": [
+ 0,
+ 0
+ ],
+ "x": 0,
+ "y": 0
+ },
+ {
+ "matrix": [
+ 0,
+ 3
+ ],
+ "x": 2,
+ "y": 0
+ },
+ {
+ "matrix": [
+ 7,
+ 3
+ ],
+ "x": 3,
+ "y": 0
+ },
+ {
+ "matrix": [
+ 0,
+ 2
+ ],
+ "x": 4,
+ "y": 0
+ },
+ {
+ "matrix": [
+ 7,
+ 4
+ ],
+ "x": 5,
+ "y": 0
+ },
+ {
+ "matrix": [
+ 0,
+ 8
+ ],
+ "x": 6.5,
+ "y": 0
+ },
+ {
+ "matrix": [
+ 7,
+ 8
+ ],
+ "x": 7.5,
+ "y": 0
+ },
+ {
+ "matrix": [
+ 0,
+ 9
+ ],
+ "x": 8.5,
+ "y": 0
+ },
+ {
+ "matrix": [
+ 7,
+ 9
+ ],
+ "x": 9.5,
+ "y": 0
+ },
+ {
+ "matrix": [
+ 0,
+ 10
+ ],
+ "x": 11,
+ "y": 0
+ },
+ {
+ "matrix": [
+ 7,
+ 10
+ ],
+ "x": 12,
+ "y": 0
+ },
+ {
+ "matrix": [
+ 0,
+ 11
+ ],
+ "x": 13,
+ "y": 0
+ },
+ {
+ "matrix": [
+ 7,
+ 11
+ ],
+ "x": 14,
+ "y": 0
+ },
+ {
+ "matrix": [
+ 0,
+ 12
+ ],
+ "x": 15.25,
+ "y": 0
+ },
+ {
+ "matrix": [
+ 0,
+ 14
+ ],
+ "x": 16.25,
+ "y": 0
+ },
+ {
+ "matrix": [
+ 0,
+ 1
+ ],
+ "x": 17.25,
+ "y": 0
+ },
+ {
+ "matrix": [
+ 7,
+ 0
+ ],
+ "x": 0,
+ "y": 1.5
+ },
+ {
+ "matrix": [
+ 2,
+ 0
+ ],
+ "x": 1,
+ "y": 1.5
+ },
+ {
+ "matrix": [
+ 3,
+ 3
+ ],
+ "x": 2,
+ "y": 1.5
+ },
+ {
+ "matrix": [
+ 0,
+ 5
+ ],
+ "x": 3,
+ "y": 1.5
+ },
+ {
+ "matrix": [
+ 0,
+ 6
+ ],
+ "x": 4,
+ "y": 1.5
+ },
+ {
+ "matrix": [
+ 7,
+ 6
+ ],
+ "x": 5,
+ "y": 1.5
+ },
+ {
+ "matrix": [
+ 0,
+ 7
+ ],
+ "x": 6,
+ "y": 1.5
+ },
+ {
+ "matrix": [
+ 7,
+ 7
+ ],
+ "x": 7,
+ "y": 1.5
+ },
+ {
+ "matrix": [
+ 7,
+ 5
+ ],
+ "x": 8,
+ "y": 1.5
+ },
+ {
+ "matrix": [
+ 2,
+ 9
+ ],
+ "x": 9,
+ "y": 1.5
+ },
+ {
+ "matrix": [
+ 2,
+ 10
+ ],
+ "x": 10,
+ "y": 1.5
+ },
+ {
+ "matrix": [
+ 1,
+ 9
+ ],
+ "x": 11,
+ "y": 1.5
+ },
+ {
+ "matrix": [
+ 2,
+ 8
+ ],
+ "x": 12,
+ "y": 1.5
+ },
+ {
+ "matrix": [
+ 1,
+ 8
+ ],
+ "x": 13,
+ "y": 1.5,
+ "w": 2
+ },
+ {
+ "matrix": [
+ 0,
+ 4
+ ],
+ "x": 15.25,
+ "y": 1.5
+ },
+ {
+ "matrix": [
+ 1,
+ 12
+ ],
+ "x": 16.25,
+ "y": 1.5
+ },
+ {
+ "matrix": [
+ 2,
+ 3
+ ],
+ "x": 17.25,
+ "y": 1.5
+ },
+ {
+ "matrix": [
+ 2,
+ 2
+ ],
+ "x": 18.5,
+ "y": 1.5
+ },
+ {
+ "matrix": [
+ 2,
+ 12
+ ],
+ "x": 19.5,
+ "y": 1.5
+ },
+ {
+ "matrix": [
+ 2,
+ 11
+ ],
+ "x": 20.5,
+ "y": 1.5
+ },
+ {
+ "matrix": [
+ 7,
+ 2
+ ],
+ "x": 21.5,
+ "y": 1.5
+ },
+ {
+ "matrix": [
+ 1,
+ 0
+ ],
+ "x": 0,
+ "y": 2.5,
+ "w": 1.5
+ },
+ {
+ "matrix": [
+ 3,
+ 0
+ ],
+ "x": 1.5,
+ "y": 2.5
+ },
+ {
+ "matrix": [
+ 4,
+ 3
+ ],
+ "x": 2.5,
+ "y": 2.5
+ },
+ {
+ "matrix": [
+ 1,
+ 5
+ ],
+ "x": 3.5,
+ "y": 2.5
+ },
+ {
+ "matrix": [
+ 2,
+ 6
+ ],
+ "x": 4.5,
+ "y": 2.5
+ },
+ {
+ "matrix": [
+ 1,
+ 6
+ ],
+ "x": 5.5,
+ "y": 2.5
+ },
+ {
+ "matrix": [
+ 2,
+ 7
+ ],
+ "x": 6.5,
+ "y": 2.5
+ },
+ {
+ "matrix": [
+ 1,
+ 7
+ ],
+ "x": 7.5,
+ "y": 2.5
+ },
+ {
+ "matrix": [
+ 2,
+ 5
+ ],
+ "x": 8.5,
+ "y": 2.5
+ },
+ {
+ "matrix": [
+ 3,
+ 9
+ ],
+ "x": 9.5,
+ "y": 2.5
+ },
+ {
+ "matrix": [
+ 5,
+ 10
+ ],
+ "x": 10.5,
+ "y": 2.5
+ },
+ {
+ "matrix": [
+ 4,
+ 9
+ ],
+ "x": 11.5,
+ "y": 2.5
+ },
+ {
+ "matrix": [
+ 3,
+ 8
+ ],
+ "x": 12.5,
+ "y": 2.5
+ },
+ {
+ "matrix": [
+ 4,
+ 8
+ ],
+ "x": 13.5,
+ "y": 2.5,
+ "w": 1.5
+ },
+ {
+ "matrix": [
+ 1,
+ 2
+ ],
+ "x": 15.25,
+ "y": 2.5
+ },
+ {
+ "matrix": [
+ 1,
+ 11
+ ],
+ "x": 16.25,
+ "y": 2.5
+ },
+ {
+ "matrix": [
+ 1,
+ 3
+ ],
+ "x": 17.25,
+ "y": 2.5
+ },
+ {
+ "matrix": [
+ 3,
+ 12
+ ],
+ "x": 18.5,
+ "y": 2.5
+ },
+ {
+ "matrix": [
+ 3,
+ 11
+ ],
+ "x": 19.5,
+ "y": 2.5
+ },
+ {
+ "matrix": [
+ 3,
+ 2
+ ],
+ "x": 20.5,
+ "y": 2.5
+ },
+ {
+ "matrix": [
+ 6,
+ 12
+ ],
+ "x": 21.5,
+ "y": 2.5,
+ "h": 2
+ },
+ {
+ "matrix": [
+ 1,
+ 15
+ ],
+ "x": 0,
+ "y": 3.5,
+ "w": 1.75
+ },
+ {
+ "matrix": [
+ 4,
+ 0
+ ],
+ "x": 1.75,
+ "y": 3.5
+ },
+ {
+ "matrix": [
+ 6,
+ 3
+ ],
+ "x": 2.75,
+ "y": 3.5
+ },
+ {
+ "matrix": [
+ 4,
+ 5
+ ],
+ "x": 3.75,
+ "y": 3.5
+ },
+ {
+ "matrix": [
+ 3,
+ 6
+ ],
+ "x": 4.75,
+ "y": 3.5
+ },
+ {
+ "matrix": [
+ 4,
+ 6
+ ],
+ "x": 5.75,
+ "y": 3.5
+ },
+ {
+ "matrix": [
+ 3,
+ 7
+ ],
+ "x": 6.75,
+ "y": 3.5
+ },
+ {
+ "matrix": [
+ 4,
+ 7
+ ],
+ "x": 7.75,
+ "y": 3.5
+ },
+ {
+ "matrix": [
+ 3,
+ 5
+ ],
+ "x": 8.75,
+ "y": 3.5
+ },
+ {
+ "matrix": [
+ 6,
+ 9
+ ],
+ "x": 9.75,
+ "y": 3.5
+ },
+ {
+ "matrix": [
+ 3,
+ 10
+ ],
+ "x": 10.75,
+ "y": 3.5
+ },
+ {
+ "matrix": [
+ 4,
+ 10
+ ],
+ "x": 11.75,
+ "y": 3.5
+ },
+ {
+ "matrix": [
+ 5,
+ 8
+ ],
+ "x": 12.75,
+ "y": 3.5,
+ "w": 2.25
+ },
+ {
+ "matrix": [
+ 4,
+ 12
+ ],
+ "x": 18.5,
+ "y": 3.5
+ },
+ {
+ "matrix": [
+ 4,
+ 11
+ ],
+ "x": 19.5,
+ "y": 3.5
+ },
+ {
+ "matrix": [
+ 4,
+ 2
+ ],
+ "x": 20.5,
+ "y": 3.5
+ },
+ {
+ "matrix": [
+ 3,
+ 1
+ ],
+ "x": 0,
+ "y": 4.5,
+ "w": 2.25
+ },
+ {
+ "matrix": [
+ 5,
+ 0
+ ],
+ "x": 2.25,
+ "y": 4.5
+ },
+ {
+ "matrix": [
+ 5,
+ 3
+ ],
+ "x": 3.25,
+ "y": 4.5
+ },
+ {
+ "matrix": [
+ 6,
+ 5
+ ],
+ "x": 4.25,
+ "y": 4.5
+ },
+ {
+ "matrix": [
+ 6,
+ 6
+ ],
+ "x": 5.25,
+ "y": 4.5
+ },
+ {
+ "matrix": [
+ 5,
+ 6
+ ],
+ "x": 6.25,
+ "y": 4.5
+ },
+ {
+ "matrix": [
+ 6,
+ 7
+ ],
+ "x": 7.25,
+ "y": 4.5
+ },
+ {
+ "matrix": [
+ 5,
+ 7
+ ],
+ "x": 8.25,
+ "y": 4.5
+ },
+ {
+ "matrix": [
+ 5,
+ 5
+ ],
+ "x": 9.25,
+ "y": 4.5
+ },
+ {
+ "matrix": [
+ 5,
+ 9
+ ],
+ "x": 10.25,
+ "y": 4.5
+ },
+ {
+ "matrix": [
+ 6,
+ 10
+ ],
+ "x": 11.25,
+ "y": 4.5
+ },
+ {
+ "matrix": [
+ 5,
+ 1
+ ],
+ "x": 12.25,
+ "y": 4.5,
+ "w": 2.75
+ },
+ {
+ "matrix": [
+ 2,
+ 13
+ ],
+ "x": 16.25,
+ "y": 4.5
+ },
+ {
+ "matrix": [
+ 5,
+ 12
+ ],
+ "x": 18.5,
+ "y": 4.5
+ },
+ {
+ "matrix": [
+ 6,
+ 11
+ ],
+ "x": 19.5,
+ "y": 4.5
+ },
+ {
+ "matrix": [
+ 6,
+ 2
+ ],
+ "x": 20.5,
+ "y": 4.5
+ },
+ {
+ "matrix": [
+ 7,
+ 14
+ ],
+ "x": 21.5,
+ "y": 4.5,
+ "h": 2
+ },
+ {
+ "matrix": [
+ 3,
+ 15
+ ],
+ "x": 0,
+ "y": 5.5,
+ "w": 1.5
+ },
+ {
+ "matrix": [
+ 2,
+ 14
+ ],
+ "x": 1.5,
+ "y": 5.5,
+ "w": 1.25
+ },
+ {
+ "matrix": [
+ 4,
+ 4
+ ],
+ "x": 2.75,
+ "y": 5.5,
+ "w": 1.25
+ },
+ {
+ "matrix": [
+ 7,
+ 13
+ ],
+ "x": 4,
+ "y": 5.5,
+ "w": 5.75
+ },
+ {
+ "matrix": [
+ 6,
+ 4
+ ],
+ "x": 9.75,
+ "y": 5.5,
+ "w": 1.25
+ },
+ {
+ "matrix": [
+ 1,
+ 13
+ ],
+ "x": 11,
+ "y": 5.5,
+ "w": 1.25
+ },
+ {
+ "matrix": [
+ 7,
+ 12
+ ],
+ "x": 12.25,
+ "y": 5.5,
+ "w": 1.25
+ },
+ {
+ "matrix": [
+ 5,
+ 15
+ ],
+ "x": 13.5,
+ "y": 5.5,
+ "w": 1.5
+ },
+ {
+ "matrix": [
+ 6,
+ 8
+ ],
+ "x": 15.25,
+ "y": 5.5
+ },
+ {
+ "matrix": [
+ 1,
+ 10
+ ],
+ "x": 16.25,
+ "y": 5.5
+ },
+ {
+ "matrix": [
+ 0,
+ 13
+ ],
+ "x": 17.25,
+ "y": 5.5
+ },
+ {
+ "matrix": [
+ 5,
+ 11
+ ],
+ "x": 18.5,
+ "y": 5.5,
+ "w": 2
+ },
+ {
+ "matrix": [
+ 5,
+ 2
+ ],
+ "x": 20.5,
+ "y": 5.5
+ }
+ ]
},
"LAYOUT_fullsize_iso": {
- "layout": [{"x":0, "y":0}, {"x":2, "y":0}, {"x":3, "y":0}, {"x":4, "y":0}, {"x":5, "y":0}, {"x":6.5, "y":0}, {"x":7.5, "y":0}, {"x":8.5, "y":0}, {"x":9.5, "y":0}, {"x":11, "y":0}, {"x":12, "y":0}, {"x":13, "y":0}, {"x":14, "y":0}, {"x":15.25, "y":0}, {"x":16.25, "y":0}, {"x":17.25, "y":0}, {"x":0, "y":1.5}, {"x":1, "y":1.5}, {"x":2, "y":1.5}, {"x":3, "y":1.5}, {"x":4, "y":1.5}, {"x":5, "y":1.5}, {"x":6, "y":1.5}, {"x":7, "y":1.5}, {"x":8, "y":1.5}, {"x":9, "y":1.5}, {"x":10, "y":1.5}, {"x":11, "y":1.5}, {"x":12, "y":1.5}, {"x":13, "y":1.5, "w":2}, {"x":15.25, "y":1.5}, {"x":16.25, "y":1.5}, {"x":17.25, "y":1.5}, {"x":18.5, "y":1.5}, {"x":19.5, "y":1.5}, {"x":20.5, "y":1.5}, {"x":21.5, "y":1.5}, {"x":0, "y":2.5, "w":1.5}, {"x":1.5, "y":2.5}, {"x":2.5, "y":2.5}, {"x":3.5, "y":2.5}, {"x":4.5, "y":2.5}, {"x":5.5, "y":2.5}, {"x":6.5, "y":2.5}, {"x":7.5, "y":2.5}, {"x":8.5, "y":2.5}, {"x":9.5, "y":2.5}, {"x":10.5, "y":2.5}, {"x":11.5, "y":2.5}, {"x":12.5, "y":2.5}, {"x":15.25, "y":2.5}, {"x":16.25, "y":2.5}, {"x":17.25, "y":2.5}, {"x":18.5, "y":2.5}, {"x":19.5, "y":2.5}, {"x":20.5, "y":2.5}, {"x":21.5, "y":2.5, "h":2}, {"x":0, "y":3.5, "w":1.75}, {"x":1.75, "y":3.5}, {"x":2.75, "y":3.5}, {"x":3.75, "y":3.5}, {"x":4.75, "y":3.5}, {"x":5.75, "y":3.5}, {"x":6.75, "y":3.5}, {"x":7.75, "y":3.5}, {"x":8.75, "y":3.5}, {"x":9.75, "y":3.5}, {"x":10.75, "y":3.5}, {"x":11.75, "y":3.5}, {"x":12.75, "y":3.5}, {"x":13.75, "y":2.5, "w":1.25, "h":2}, {"x":18.5, "y":3.5}, {"x":19.5, "y":3.5}, {"x":20.5, "y":3.5}, {"x":0, "y":4.5, "w":1.25}, {"x":1.25, "y":4.5}, {"x":2.25, "y":4.5}, {"x":3.25, "y":4.5}, {"x":4.25, "y":4.5}, {"x":5.25, "y":4.5}, {"x":6.25, "y":4.5}, {"x":7.25, "y":4.5}, {"x":8.25, "y":4.5}, {"x":9.25, "y":4.5}, {"x":10.25, "y":4.5}, {"x":11.25, "y":4.5}, {"x":12.25, "y":4.5, "w":2.75}, {"x":16.25, "y":4.5}, {"x":18.5, "y":4.5}, {"x":19.5, "y":4.5}, {"x":20.5, "y":4.5}, {"x":21.5, "y":4.5, "h":2}, {"x":0, "y":5.5, "w":1.5}, {"x":1.5, "y":5.5, "w":1.25}, {"x":2.75, "y":5.5, "w":1.25}, {"x":4, "y":5.5, "w":5.75}, {"x":9.75, "y":5.5, "w":1.25}, {"x":11, "y":5.5, "w":1.25}, {"x":12.25, "y":5.5, "w":1.25}, {"x":13.5, "y":5.5, "w":1.5}, {"x":15.25, "y":5.5}, {"x":16.25, "y":5.5}, {"x":17.25, "y":5.5}, {"x":18.5, "y":5.5, "w":2}, {"x":20.5, "y":5.5}]
+ "layout": [
+ {
+ "matrix": [
+ 0,
+ 0
+ ],
+ "x": 0,
+ "y": 0
+ },
+ {
+ "matrix": [
+ 0,
+ 3
+ ],
+ "x": 2,
+ "y": 0
+ },
+ {
+ "matrix": [
+ 7,
+ 3
+ ],
+ "x": 3,
+ "y": 0
+ },
+ {
+ "matrix": [
+ 0,
+ 2
+ ],
+ "x": 4,
+ "y": 0
+ },
+ {
+ "matrix": [
+ 7,
+ 4
+ ],
+ "x": 5,
+ "y": 0
+ },
+ {
+ "matrix": [
+ 0,
+ 8
+ ],
+ "x": 6.5,
+ "y": 0
+ },
+ {
+ "matrix": [
+ 7,
+ 8
+ ],
+ "x": 7.5,
+ "y": 0
+ },
+ {
+ "matrix": [
+ 0,
+ 9
+ ],
+ "x": 8.5,
+ "y": 0
+ },
+ {
+ "matrix": [
+ 7,
+ 9
+ ],
+ "x": 9.5,
+ "y": 0
+ },
+ {
+ "matrix": [
+ 0,
+ 10
+ ],
+ "x": 11,
+ "y": 0
+ },
+ {
+ "matrix": [
+ 7,
+ 10
+ ],
+ "x": 12,
+ "y": 0
+ },
+ {
+ "matrix": [
+ 0,
+ 11
+ ],
+ "x": 13,
+ "y": 0
+ },
+ {
+ "matrix": [
+ 7,
+ 11
+ ],
+ "x": 14,
+ "y": 0
+ },
+ {
+ "matrix": [
+ 0,
+ 12
+ ],
+ "x": 15.25,
+ "y": 0
+ },
+ {
+ "matrix": [
+ 0,
+ 14
+ ],
+ "x": 16.25,
+ "y": 0
+ },
+ {
+ "matrix": [
+ 0,
+ 1
+ ],
+ "x": 17.25,
+ "y": 0
+ },
+ {
+ "matrix": [
+ 7,
+ 0
+ ],
+ "x": 0,
+ "y": 1.5
+ },
+ {
+ "matrix": [
+ 2,
+ 0
+ ],
+ "x": 1,
+ "y": 1.5
+ },
+ {
+ "matrix": [
+ 3,
+ 3
+ ],
+ "x": 2,
+ "y": 1.5
+ },
+ {
+ "matrix": [
+ 0,
+ 5
+ ],
+ "x": 3,
+ "y": 1.5
+ },
+ {
+ "matrix": [
+ 0,
+ 6
+ ],
+ "x": 4,
+ "y": 1.5
+ },
+ {
+ "matrix": [
+ 7,
+ 6
+ ],
+ "x": 5,
+ "y": 1.5
+ },
+ {
+ "matrix": [
+ 0,
+ 7
+ ],
+ "x": 6,
+ "y": 1.5
+ },
+ {
+ "matrix": [
+ 7,
+ 7
+ ],
+ "x": 7,
+ "y": 1.5
+ },
+ {
+ "matrix": [
+ 7,
+ 5
+ ],
+ "x": 8,
+ "y": 1.5
+ },
+ {
+ "matrix": [
+ 2,
+ 9
+ ],
+ "x": 9,
+ "y": 1.5
+ },
+ {
+ "matrix": [
+ 2,
+ 10
+ ],
+ "x": 10,
+ "y": 1.5
+ },
+ {
+ "matrix": [
+ 1,
+ 9
+ ],
+ "x": 11,
+ "y": 1.5
+ },
+ {
+ "matrix": [
+ 2,
+ 8
+ ],
+ "x": 12,
+ "y": 1.5
+ },
+ {
+ "matrix": [
+ 1,
+ 8
+ ],
+ "x": 13,
+ "y": 1.5,
+ "w": 2
+ },
+ {
+ "matrix": [
+ 0,
+ 4
+ ],
+ "x": 15.25,
+ "y": 1.5
+ },
+ {
+ "matrix": [
+ 1,
+ 12
+ ],
+ "x": 16.25,
+ "y": 1.5
+ },
+ {
+ "matrix": [
+ 2,
+ 3
+ ],
+ "x": 17.25,
+ "y": 1.5
+ },
+ {
+ "matrix": [
+ 2,
+ 2
+ ],
+ "x": 18.5,
+ "y": 1.5
+ },
+ {
+ "matrix": [
+ 2,
+ 12
+ ],
+ "x": 19.5,
+ "y": 1.5
+ },
+ {
+ "matrix": [
+ 2,
+ 11
+ ],
+ "x": 20.5,
+ "y": 1.5
+ },
+ {
+ "matrix": [
+ 7,
+ 2
+ ],
+ "x": 21.5,
+ "y": 1.5
+ },
+ {
+ "matrix": [
+ 1,
+ 0
+ ],
+ "x": 0,
+ "y": 2.5,
+ "w": 1.5
+ },
+ {
+ "matrix": [
+ 3,
+ 0
+ ],
+ "x": 1.5,
+ "y": 2.5
+ },
+ {
+ "matrix": [
+ 4,
+ 3
+ ],
+ "x": 2.5,
+ "y": 2.5
+ },
+ {
+ "matrix": [
+ 1,
+ 5
+ ],
+ "x": 3.5,
+ "y": 2.5
+ },
+ {
+ "matrix": [
+ 2,
+ 6
+ ],
+ "x": 4.5,
+ "y": 2.5
+ },
+ {
+ "matrix": [
+ 1,
+ 6
+ ],
+ "x": 5.5,
+ "y": 2.5
+ },
+ {
+ "matrix": [
+ 2,
+ 7
+ ],
+ "x": 6.5,
+ "y": 2.5
+ },
+ {
+ "matrix": [
+ 1,
+ 7
+ ],
+ "x": 7.5,
+ "y": 2.5
+ },
+ {
+ "matrix": [
+ 2,
+ 5
+ ],
+ "x": 8.5,
+ "y": 2.5
+ },
+ {
+ "matrix": [
+ 3,
+ 9
+ ],
+ "x": 9.5,
+ "y": 2.5
+ },
+ {
+ "matrix": [
+ 5,
+ 10
+ ],
+ "x": 10.5,
+ "y": 2.5
+ },
+ {
+ "matrix": [
+ 4,
+ 9
+ ],
+ "x": 11.5,
+ "y": 2.5
+ },
+ {
+ "matrix": [
+ 3,
+ 8
+ ],
+ "x": 12.5,
+ "y": 2.5
+ },
+ {
+ "matrix": [
+ 1,
+ 2
+ ],
+ "x": 15.25,
+ "y": 2.5
+ },
+ {
+ "matrix": [
+ 1,
+ 11
+ ],
+ "x": 16.25,
+ "y": 2.5
+ },
+ {
+ "matrix": [
+ 1,
+ 3
+ ],
+ "x": 17.25,
+ "y": 2.5
+ },
+ {
+ "matrix": [
+ 3,
+ 12
+ ],
+ "x": 18.5,
+ "y": 2.5
+ },
+ {
+ "matrix": [
+ 3,
+ 11
+ ],
+ "x": 19.5,
+ "y": 2.5
+ },
+ {
+ "matrix": [
+ 3,
+ 2
+ ],
+ "x": 20.5,
+ "y": 2.5
+ },
+ {
+ "matrix": [
+ 6,
+ 12
+ ],
+ "x": 21.5,
+ "y": 2.5,
+ "h": 2
+ },
+ {
+ "matrix": [
+ 1,
+ 15
+ ],
+ "x": 0,
+ "y": 3.5,
+ "w": 1.75
+ },
+ {
+ "matrix": [
+ 4,
+ 0
+ ],
+ "x": 1.75,
+ "y": 3.5
+ },
+ {
+ "matrix": [
+ 6,
+ 3
+ ],
+ "x": 2.75,
+ "y": 3.5
+ },
+ {
+ "matrix": [
+ 4,
+ 5
+ ],
+ "x": 3.75,
+ "y": 3.5
+ },
+ {
+ "matrix": [
+ 3,
+ 6
+ ],
+ "x": 4.75,
+ "y": 3.5
+ },
+ {
+ "matrix": [
+ 4,
+ 6
+ ],
+ "x": 5.75,
+ "y": 3.5
+ },
+ {
+ "matrix": [
+ 3,
+ 7
+ ],
+ "x": 6.75,
+ "y": 3.5
+ },
+ {
+ "matrix": [
+ 4,
+ 7
+ ],
+ "x": 7.75,
+ "y": 3.5
+ },
+ {
+ "matrix": [
+ 3,
+ 5
+ ],
+ "x": 8.75,
+ "y": 3.5
+ },
+ {
+ "matrix": [
+ 6,
+ 9
+ ],
+ "x": 9.75,
+ "y": 3.5
+ },
+ {
+ "matrix": [
+ 3,
+ 10
+ ],
+ "x": 10.75,
+ "y": 3.5
+ },
+ {
+ "matrix": [
+ 4,
+ 10
+ ],
+ "x": 11.75,
+ "y": 3.5
+ },
+ {
+ "matrix": [
+ 6,
+ 13
+ ],
+ "x": 12.75,
+ "y": 3.5
+ },
+ {
+ "matrix": [
+ 5,
+ 8
+ ],
+ "x": 13.75,
+ "y": 2.5,
+ "w": 1.25,
+ "h": 2
+ },
+ {
+ "matrix": [
+ 4,
+ 12
+ ],
+ "x": 18.5,
+ "y": 3.5
+ },
+ {
+ "matrix": [
+ 4,
+ 11
+ ],
+ "x": 19.5,
+ "y": 3.5
+ },
+ {
+ "matrix": [
+ 4,
+ 2
+ ],
+ "x": 20.5,
+ "y": 3.5
+ },
+ {
+ "matrix": [
+ 3,
+ 1
+ ],
+ "x": 0,
+ "y": 4.5,
+ "w": 1.25
+ },
+ {
+ "matrix": [
+ 6,
+ 0
+ ],
+ "x": 1.25,
+ "y": 4.5
+ },
+ {
+ "matrix": [
+ 5,
+ 0
+ ],
+ "x": 2.25,
+ "y": 4.5
+ },
+ {
+ "matrix": [
+ 5,
+ 3
+ ],
+ "x": 3.25,
+ "y": 4.5
+ },
+ {
+ "matrix": [
+ 6,
+ 5
+ ],
+ "x": 4.25,
+ "y": 4.5
+ },
+ {
+ "matrix": [
+ 6,
+ 6
+ ],
+ "x": 5.25,
+ "y": 4.5
+ },
+ {
+ "matrix": [
+ 5,
+ 6
+ ],
+ "x": 6.25,
+ "y": 4.5
+ },
+ {
+ "matrix": [
+ 6,
+ 7
+ ],
+ "x": 7.25,
+ "y": 4.5
+ },
+ {
+ "matrix": [
+ 5,
+ 7
+ ],
+ "x": 8.25,
+ "y": 4.5
+ },
+ {
+ "matrix": [
+ 5,
+ 5
+ ],
+ "x": 9.25,
+ "y": 4.5
+ },
+ {
+ "matrix": [
+ 5,
+ 9
+ ],
+ "x": 10.25,
+ "y": 4.5
+ },
+ {
+ "matrix": [
+ 6,
+ 10
+ ],
+ "x": 11.25,
+ "y": 4.5
+ },
+ {
+ "matrix": [
+ 5,
+ 1
+ ],
+ "x": 12.25,
+ "y": 4.5,
+ "w": 2.75
+ },
+ {
+ "matrix": [
+ 2,
+ 13
+ ],
+ "x": 16.25,
+ "y": 4.5
+ },
+ {
+ "matrix": [
+ 5,
+ 12
+ ],
+ "x": 18.5,
+ "y": 4.5
+ },
+ {
+ "matrix": [
+ 6,
+ 11
+ ],
+ "x": 19.5,
+ "y": 4.5
+ },
+ {
+ "matrix": [
+ 6,
+ 2
+ ],
+ "x": 20.5,
+ "y": 4.5
+ },
+ {
+ "matrix": [
+ 7,
+ 14
+ ],
+ "x": 21.5,
+ "y": 4.5,
+ "h": 2
+ },
+ {
+ "matrix": [
+ 3,
+ 15
+ ],
+ "x": 0,
+ "y": 5.5,
+ "w": 1.5
+ },
+ {
+ "matrix": [
+ 2,
+ 14
+ ],
+ "x": 1.5,
+ "y": 5.5,
+ "w": 1.25
+ },
+ {
+ "matrix": [
+ 4,
+ 4
+ ],
+ "x": 2.75,
+ "y": 5.5,
+ "w": 1.25
+ },
+ {
+ "matrix": [
+ 7,
+ 13
+ ],
+ "x": 4,
+ "y": 5.5,
+ "w": 5.75
+ },
+ {
+ "matrix": [
+ 6,
+ 4
+ ],
+ "x": 9.75,
+ "y": 5.5,
+ "w": 1.25
+ },
+ {
+ "matrix": [
+ 1,
+ 13
+ ],
+ "x": 11,
+ "y": 5.5,
+ "w": 1.25
+ },
+ {
+ "matrix": [
+ 7,
+ 12
+ ],
+ "x": 12.25,
+ "y": 5.5,
+ "w": 1.25
+ },
+ {
+ "matrix": [
+ 5,
+ 15
+ ],
+ "x": 13.5,
+ "y": 5.5,
+ "w": 1.5
+ },
+ {
+ "matrix": [
+ 6,
+ 8
+ ],
+ "x": 15.25,
+ "y": 5.5
+ },
+ {
+ "matrix": [
+ 1,
+ 10
+ ],
+ "x": 16.25,
+ "y": 5.5
+ },
+ {
+ "matrix": [
+ 0,
+ 13
+ ],
+ "x": 17.25,
+ "y": 5.5
+ },
+ {
+ "matrix": [
+ 5,
+ 11
+ ],
+ "x": 18.5,
+ "y": 5.5,
+ "w": 2
+ },
+ {
+ "matrix": [
+ 5,
+ 2
+ ],
+ "x": 20.5,
+ "y": 5.5
+ }
+ ]
}
}
}
diff --git a/keyboards/unicomp/classic_ultracl_pre_2013/overnumpad_1xb/config.h b/keyboards/unicomp/classic_ultracl_pre_2013/overnumpad_1xb/config.h
index 88eb8c2c51..71e60e9cfe 100644
--- a/keyboards/unicomp/classic_ultracl_pre_2013/overnumpad_1xb/config.h
+++ b/keyboards/unicomp/classic_ultracl_pre_2013/overnumpad_1xb/config.h
@@ -15,41 +15,17 @@
*/
#pragma once
+#define DEF_SERIAL_NUMBER "purdea.ro:overnumpad_controller"
-#define SERIAL_NUMBER "purdea.ro:overnumpad_controller"
-
-/*
- * Keyboard Matrix Assignments
- *
- * Change this to how you wired your keyboard
- * COLS: AVR pins used for columns, left to right
- * ROWS: AVR pins used for rows, top to bottom
- * DIODE_DIRECTION: COL2ROW = COL = Anode (+), ROW = Cathode (-, marked on diode)
- * ROW2COL = ROW = Anode (+), COL = Cathode (-, marked on diode)
- *
- */
-
-// All pins in order from left-to-right, as seen on the keyboard:
-// C3, C2, C1, C0, A3, A4, A5, A6, A7, C4, C5, B0, B1, B10, B12, B13, B14, B15, C6, C7, C8, C9, A8, A9, A10,
-// On this chip A10, B10 have stronger pull-ups, so it's better to avoid them if possible.
-
-// On this keyboard the right-most pin is not used, so that is A10.
-// On this keyboard the right-most 8 pins (excluding the unused pin) are routed on the bottom.
-
-#define MATRIX_COL_PINS { C3, C2, C1, C0, A3, A4, A5, A6, A7, C4, C5, B0, B1, B10, B12, B13 }
-#define MATRIX_ROW_PINS { B14, B15, C6, C7, C8, C9, A8, A9 }
-
-/* COL2ROW, ROW2COL*/
-#define DIODE_DIRECTION ROW2COL
-
-/* define if matrix has ghost (lacks anti-ghosting diodes) */
-#define MATRIX_HAS_GHOST
+#ifndef SERIAL_NUMBER
+#define SERIAL_NUMBER DEF_SERIAL_NUMBER
+#endif
#define STM32_HSECLK 16000000
#define SOLENOID_PIN B5
#define HAPTIC_ENABLE_PIN C13
-#define SOLENOID_DEFAULT_DWELL 4
+#define SOLENOID_DEFAULT_DWELL 20
#define SOLENOID_MIN_DWELL 4
#define HAPTIC_OFF_IN_LOW_POWER 1
#define NO_HAPTIC_MOD
diff --git a/keyboards/unicomp/classic_ultracl_pre_2013/overnumpad_1xb/info.json b/keyboards/unicomp/classic_ultracl_pre_2013/overnumpad_1xb/info.json
new file mode 100644
index 0000000000..1c2f5b300b
--- /dev/null
+++ b/keyboards/unicomp/classic_ultracl_pre_2013/overnumpad_1xb/info.json
@@ -0,0 +1,20 @@
+{
+ "keyboard_name": "Unicomp Classic / Ultra Classic (pre-2013)",
+ "manufacturer": "Unicomp/Purdea Andrei",
+ "url": "https://github.com/purdeaandrei/overnumpad_controller_1xb",
+ "maintainer": "purdeaandrei",
+ "indicators": {
+ "caps_lock": "C11",
+ "num_lock": "C12",
+ "scroll_lock": "C10"
+ },
+ "processor": "STM32F446", // RET6
+ "bootloader": "stm32-dfu",
+ "diode_direction": "ROW2COL",
+ "matrix_pins": {
+ // The controller to membrane interface has pads left-to-right, as seen on the keyboard, matching
+ // the order listed below: all columns followed by all rows, (also followed by unused gpio "A10"):
+ "cols": ["C3", "C2", "C1", "C0", "A3", "A4", "A5", "A6", "A7", "C4", "C5", "B0", "B1", "B10", "B12", "B13"],
+ "rows": ["B14", "B15", "C6", "C7", "C8", "C9", "A8", "A9"]
+ }
+}
diff --git a/keyboards/unicomp/classic_ultracl_pre_2013/overnumpad_1xb/overnumpad_1xb.c b/keyboards/unicomp/classic_ultracl_pre_2013/overnumpad_1xb/overnumpad_1xb.c
deleted file mode 100644
index cb5ec3dc12..0000000000
--- a/keyboards/unicomp/classic_ultracl_pre_2013/overnumpad_1xb/overnumpad_1xb.c
+++ /dev/null
@@ -1,24 +0,0 @@
-/* Copyright 2020 Purdea Andrei
- *
- * 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/>.
- */
-
-#include "overnumpad_1xb.h"
-
-void keyboard_post_init_kb(void)
-{
- //debug_enable=true;
- //debug_matrix=true;
-}
-
diff --git a/keyboards/unicomp/classic_ultracl_pre_2013/overnumpad_1xb/overnumpad_1xb.h b/keyboards/unicomp/classic_ultracl_pre_2013/overnumpad_1xb/overnumpad_1xb.h
deleted file mode 100644
index a939e986dd..0000000000
--- a/keyboards/unicomp/classic_ultracl_pre_2013/overnumpad_1xb/overnumpad_1xb.h
+++ /dev/null
@@ -1,88 +0,0 @@
-/* Copyright 2020 Purdea Andrei
- *
- * 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"
-
-/* This is a shortcut to help you visually see your layout.
- *
- * The first section contains all of the arguments representing the physical
- * layout of the board and position of the keys.
- *
- * The second converts the arguments into a two-dimensional array which
- * represents the switch matrix.
- */
-
-#define LAYOUT_all( \
- k_esc, k_f1, k_f2, k_f3, k_f4, k_f5, k_f6, k_f7, k_f8, k_f9, k_f10, k_f11, k_f12, k_prscr, k_scrl, k_pause, \
- k_tild, k_1, k_2, k_3, k_4, k_5, k_6, k_7, k_8, k_9, k_0, k_minus, k_equals, k_bsp_hidden, k_backspace, k_ins, k_home, k_pgup, kp_nl, kp_div, kp_mult, kp_minus, \
- k_tab, k_q, k_w, k_e, k_r, k_t, k_y, k_u, k_i, k_o, k_p, k_squarebrop, k_squarebrcl, k_backsl, k_del, k_end, k_pgdn, kp_7, kp_8, kp_9, kp_plus, \
- k_caps, k_a, k_s, k_d, k_f, k_g, k_h, k_j, k_k, k_l, k_semicolon, k_singlequote, k_nuhs,k_return, kp_4, kp_5, kp_6, kp_plus_hidden, \
- k_lshift,k_nubs,k_z, k_x, k_c, k_v, k_b, k_n, k_m, k_cm,k_period, k_fwslash, k_rshift_hidden, k_rshift, k_up, kp_1, kp_2, kp_3, kp_enter, \
- k_lctrl, k_lwin, k_lalt, k_code, k_space, k_6_4, k_1_d, k_rmenu, k_rctrl, k_left, k_down, k_right, kp_0_hidden, kp_0, kp_dot, kp_enter_hidden \
-) \
-{ \
- /* 0 1 2 3 4 5 6 7 8 9 A B C D E F */ \
- /* 0 */ { k_esc, k_pause, k_f3, k_f1, k_ins, k_3, k_4, k_6, k_f5, k_f7, k_f9, k_f11, k_prscr, k_right, k_scrl, KC_NO }, \
- /* 1 */ { k_tab, KC_NO, k_del, k_pgdn, KC_NO, k_e, k_t, k_u, k_backspace, k_minus, k_down, k_end, k_home, k_1_d, KC_NO, k_caps }, \
- /* 2 */ { k_1, k_bsp_hidden, kp_nl, k_pgup, k_code, k_i, k_r, k_y, k_equals, k_9, k_0, kp_mult, kp_div, k_up, k_lwin, KC_NO }, \
- /* 3 */ { k_q, k_lshift, kp_9, k_2, KC_NO, k_k, k_f, k_h, k_squarebrcl, k_o, k_semicolon, kp_8, kp_7, KC_NO, KC_NO, k_lctrl }, \
- /* 4 */ { k_a, KC_NO, kp_6, k_w, k_lalt, k_d, k_g, k_j, k_backsl, k_squarebrop, k_singlequote, kp_5, kp_4, k_rshift_hidden, kp_plus_hidden, KC_NO }, \
- /* 5 */ { k_z, k_rshift, kp_dot, k_x, KC_NO, k_cm, k_b, k_m, k_return, k_period, k_p, kp_0, kp_1, KC_NO, kp_0_hidden, k_rctrl }, \
- /* 6 */ { k_nubs, KC_NO, kp_3, k_s, k_6_4, k_c, k_v, k_n, k_left, k_l, k_fwslash, kp_2, kp_plus, k_nuhs, kp_enter_hidden, KC_NO }, \
- /* 7 */ { k_tild, KC_NO, kp_minus, k_f2, k_f4, k_8, k_5, k_7, k_f6, k_f8, k_f10, k_f12, k_rmenu, k_space, kp_enter, KC_NO } \
-}
-
-#define LAYOUT_fullsize_ansi( \
- k_esc, k_f1, k_f2, k_f3, k_f4, k_f5, k_f6, k_f7, k_f8, k_f9, k_f10, k_f11, k_f12, k_prscr, k_scrl, k_pause, \
- k_tild, k_1, k_2, k_3, k_4, k_5, k_6, k_7, k_8, k_9, k_0, k_minus, k_equals, k_backspace, k_ins, k_home, k_pgup, kp_nl, kp_div, kp_mult, kp_minus, \
- k_tab, k_q, k_w, k_e, k_r, k_t, k_y, k_u, k_i, k_o, k_p, k_squarebrop, k_squarebrcl, k_backsl, k_del, k_end, k_pgdn, kp_7, kp_8, kp_9, kp_plus, \
- k_caps, k_a, k_s, k_d, k_f, k_g, k_h, k_j, k_k, k_l, k_semicolon, k_singlequote, k_return, kp_4, kp_5, kp_6, \
- k_lshift, k_z, k_x, k_c, k_v, k_b, k_n, k_m, k_cm,k_period, k_fwslash, k_rshift, k_up, kp_1, kp_2, kp_3, kp_enter, \
- k_lctrl, k_lwin, k_lalt, k_space, k_6_4, k_1_d, k_rmenu, k_rctrl, k_left, k_down, k_right, kp_0, kp_dot \
-) \
-{ \
- /* 0 1 2 3 4 5 6 7 8 9 A B C D E F */ \
- /* 0 */ { k_esc, k_pause, k_f3, k_f1, k_ins, k_3, k_4, k_6, k_f5, k_f7, k_f9, k_f11, k_prscr, k_right, k_scrl, KC_NO }, \
- /* 1 */ { k_tab, KC_NO, k_del, k_pgdn, KC_NO, k_e, k_t, k_u, k_backspace, k_minus, k_down, k_end, k_home, k_1_d, KC_NO, k_caps }, \
- /* 2 */ { k_1, KC_NO, kp_nl, k_pgup, KC_NO, k_i, k_r, k_y, k_equals, k_9, k_0, kp_mult, kp_div, k_up, k_lwin, KC_NO }, \
- /* 3 */ { k_q, k_lshift, kp_9, k_2, KC_NO, k_k, k_f, k_h, k_squarebrcl, k_o, k_semicolon, kp_8, kp_7, KC_NO, KC_NO, k_lctrl }, \
- /* 4 */ { k_a, KC_NO, kp_6, k_w, k_lalt, k_d, k_g, k_j, k_backsl, k_squarebrop, k_singlequote, kp_5, kp_4, KC_NO, KC_NO, KC_NO }, \
- /* 5 */ { k_z, k_rshift, kp_dot, k_x, KC_NO, k_cm, k_b, k_m, k_return, k_period, k_p, kp_0, kp_1, KC_NO, KC_NO, k_rctrl }, \
- /* 6 */ { KC_NO, KC_NO, kp_3, k_s, k_6_4, k_c, k_v, k_n, k_left, k_l, k_fwslash, kp_2, kp_plus, KC_NO, KC_NO, KC_NO }, \
- /* 7 */ { k_tild, KC_NO, kp_minus, k_f2, k_f4, k_8, k_5, k_7, k_f6, k_f8, k_f10, k_f12, k_rmenu, k_space, kp_enter, KC_NO } \
-}
-
-#define LAYOUT_fullsize_iso( \
- k_esc, k_f1, k_f2, k_f3, k_f4, k_f5, k_f6, k_f7, k_f8, k_f9, k_f10, k_f11, k_f12, k_prscr, k_scrl, k_pause, \
- k_tild, k_1, k_2, k_3, k_4, k_5, k_6, k_7, k_8, k_9, k_0, k_minus, k_equals, k_backspace, k_ins, k_home, k_pgup, kp_nl, kp_div, kp_mult, kp_minus, \
- k_tab, k_q, k_w, k_e, k_r, k_t, k_y, k_u, k_i, k_o, k_p, k_squarebrop, k_squarebrcl, k_del, k_end, k_pgdn, kp_7, kp_8, kp_9, kp_plus, \
- k_caps, k_a, k_s, k_d, k_f, k_g, k_h, k_j, k_k, k_l, k_semicolon, k_singlequote, k_nuhs,k_return, kp_4, kp_5, kp_6, \
- k_lshift,k_nubs,k_z, k_x, k_c, k_v, k_b, k_n, k_m, k_cm,k_period, k_fwslash, k_rshift, k_up, kp_1, kp_2, kp_3, kp_enter, \
- k_lctrl, k_lwin, k_lalt, k_space, k_6_4, k_1_d, k_rmenu, k_rctrl, k_left, k_down, k_right, kp_0, kp_dot \
-) \
-{ \
- /* 0 1 2 3 4 5 6 7 8 9 A B C D E F */ \
- /* 0 */ { k_esc, k_pause, k_f3, k_f1, k_ins, k_3, k_4, k_6, k_f5, k_f7, k_f9, k_f11, k_prscr, k_right, k_scrl, KC_NO }, \
- /* 1 */ { k_tab, KC_NO, k_del, k_pgdn, KC_NO, k_e, k_t, k_u, k_backspace, k_minus, k_down, k_end, k_home, k_1_d, KC_NO, k_caps }, \
- /* 2 */ { k_1, KC_NO, kp_nl, k_pgup, KC_NO, k_i, k_r, k_y, k_equals, k_9, k_0, kp_mult, kp_div, k_up, k_lwin, KC_NO }, \
- /* 3 */ { k_q, k_lshift, kp_9, k_2, KC_NO, k_k, k_f, k_h, k_squarebrcl, k_o, k_semicolon, kp_8, kp_7, KC_NO, KC_NO, k_lctrl }, \
- /* 4 */ { k_a, KC_NO, kp_6, k_w, k_lalt, k_d, k_g, k_j, KC_NO, k_squarebrop, k_singlequote, kp_5, kp_4, KC_NO, KC_NO, KC_NO }, \
- /* 5 */ { k_z, k_rshift, kp_dot, k_x, KC_NO, k_cm, k_b, k_m, k_return, k_period, k_p, kp_0, kp_1, KC_NO, KC_NO, k_rctrl }, \
- /* 6 */ { k_nubs, KC_NO, kp_3, k_s, k_6_4, k_c, k_v, k_n, k_left, k_l, k_fwslash, kp_2, kp_plus, k_nuhs, KC_NO, KC_NO }, \
- /* 7 */ { k_tild, KC_NO, kp_minus, k_f2, k_f4, k_8, k_5, k_7, k_f6, k_f8, k_f10, k_f12, k_rmenu, k_space, kp_enter, KC_NO } \
-}
diff --git a/keyboards/unicomp/classic_ultracl_pre_2013/overnumpad_1xb/readme.md b/keyboards/unicomp/classic_ultracl_pre_2013/overnumpad_1xb/readme.md
index c25024b477..b972de3074 100644
--- a/keyboards/unicomp/classic_ultracl_pre_2013/overnumpad_1xb/readme.md
+++ b/keyboards/unicomp/classic_ultracl_pre_2013/overnumpad_1xb/readme.md
@@ -3,7 +3,7 @@
![unicomp/classic_ultracl_pre_2013/overnumpad_1xb](https://www.pckeyboard.com/mm5/graphics/00000001/UB4ZPHA_800x343.jpg)
Will support the following Unicomp Classic and Ultra Classic keyboards:
- * 104-key ANSI and 105-key ISO keyboards with post-2013 bottom row are supported.
+ * 104-key ANSI and 105-key ISO keyboards with pre-2013 bottom row are supported.
* Keyboard Maintainer: [Purdea Andrei](https://github.com/purdeaandrei)
* Hardware Supported: OverNumpad controller v1.Xb
diff --git a/keyboards/unicomp/pc122/info.json b/keyboards/unicomp/pc122/info.json
index f1d47ef1b0..0c580e729f 100644
--- a/keyboards/unicomp/pc122/info.json
+++ b/keyboards/unicomp/pc122/info.json
@@ -1,23 +1,2000 @@
{
- "keyboard_name": "Unicomp PC122",
- "manufacturer": "Unicomp/Purdea Andrei",
- "url": "https://github.com/purdeaandrei/overnumpad_controller_1xb",
- "maintainer": "purdeaandrei",
+ "matrix_pins": {
+ "ghost": true
+ },
"usb": {
"vid": "0x16C0",
"pid": "0x27DB",
"device_version": "0.0.1"
},
- "indicators": {
- "caps_lock": "C11",
- "num_lock": "C12",
- "scroll_lock": "C10"
- },
- "processor": "STM32F446", // RET6
- "bootloader": "stm32-dfu",
"layouts": {
"LAYOUT_all": {
- "layout": [{"x":3.25, "y":0}, {"x":4.25, "y":0}, {"x":5.25, "y":0}, {"x":6.25, "y":0}, {"x":7.25, "y":0}, {"x":8.25, "y":0}, {"x":9.25, "y":0}, {"x":10.25, "y":0}, {"x":11.25, "y":0}, {"x":12.25, "y":0}, {"x":13.25, "y":0}, {"x":14.25, "y":0}, {"x":3.25, "y":1}, {"x":4.25, "y":1}, {"x":5.25, "y":1}, {"x":6.25, "y":1}, {"x":7.25, "y":1}, {"x":8.25, "y":1}, {"x":9.25, "y":1}, {"x":10.25, "y":1}, {"x":11.25, "y":1}, {"x":12.25, "y":1}, {"x":13.25, "y":1}, {"x":14.25, "y":1}, {"x":0, "y":2.5}, {"x":1, "y":2.5}, {"x":2.25, "y":2.5}, {"x":3.25, "y":2.5}, {"x":4.25, "y":2.5}, {"x":5.25, "y":2.5}, {"x":6.25, "y":2.5}, {"x":7.25, "y":2.5}, {"x":8.25, "y":2.5}, {"x":9.25, "y":2.5}, {"x":10.25, "y":2.5}, {"x":11.25, "y":2.5}, {"x":12.25, "y":2.5}, {"x":13.25, "y":2.5}, {"x":14.25, "y":2.5}, {"x":15.25, "y":2.5, "w":2}, {"x":17.75, "y":2.5}, {"x":18.75, "y":2.5}, {"x":19.75, "y":2.5}, {"x":21.25, "y":2.5}, {"x":22.25, "y":2.5}, {"x":23.25, "y":2.5}, {"x":24.25, "y":2.5}, {"x":0, "y":3.5}, {"x":1, "y":3.5}, {"x":2.25, "y":3.5, "w":1.5}, {"x":3.75, "y":3.5}, {"x":4.75, "y":3.5}, {"x":5.75, "y":3.5}, {"x":6.75, "y":3.5}, {"x":7.75, "y":3.5}, {"x":8.75, "y":3.5}, {"x":9.75, "y":3.5}, {"x":10.75, "y":3.5}, {"x":11.75, "y":3.5}, {"x":12.75, "y":3.5}, {"x":13.75, "y":3.5}, {"x":14.75, "y":3.5}, {"x":15.75, "y":3.5, "w":1.5}, {"x":17.75, "y":3.5}, {"x":18.75, "y":3.5}, {"x":19.75, "y":3.5}, {"x":21.25, "y":3.5}, {"x":22.25, "y":3.5}, {"x":23.25, "y":3.5}, {"x":24.25, "y":3.5}, {"x":0, "y":4.5}, {"x":1, "y":4.5}, {"x":2.25, "y":4.5, "w":1.75}, {"x":4, "y":4.5}, {"x":5, "y":4.5}, {"x":6, "y":4.5}, {"x":7, "y":4.5}, {"x":8, "y":4.5}, {"x":9, "y":4.5}, {"x":10, "y":4.5}, {"x":11, "y":4.5}, {"x":12, "y":4.5}, {"x":13, "y":4.5}, {"x":14, "y":4.5}, {"x":15, "y":4.5}, {"x":16, "y":4.5, "w":1.25}, {"x":18.75, "y":4.5}, {"x":21.25, "y":4.5}, {"x":22.25, "y":4.5}, {"x":23.25, "y":4.5}, {"x":24.25, "y":4.5}, {"x":0, "y":5.5}, {"x":1, "y":5.5}, {"x":2.25, "y":5.5, "w":1.25}, {"x":3.5, "y":5.5}, {"x":4.5, "y":5.5}, {"x":5.5, "y":5.5}, {"x":6.5, "y":5.5}, {"x":7.5, "y":5.5}, {"x":8.5, "y":5.5}, {"x":9.5, "y":5.5}, {"x":10.5, "y":5.5}, {"x":11.5, "y":5.5}, {"x":12.5, "y":5.5}, {"x":13.5, "y":5.5}, {"x":14.5, "y":5.5, "w":2.75}, {"x":17.75, "y":5.5}, {"x":18.75, "y":5.5}, {"x":19.75, "y":5.5}, {"x":21.25, "y":5.5}, {"x":22.25, "y":5.5}, {"x":23.25, "y":5.5}, {"x":24.25, "y":5.5, "h":2}, {"x":0, "y":6.5}, {"x":1, "y":6.5}, {"x":2.25, "y":6.5, "w":1.5}, {"x":4.75, "y":6.5, "w":1.5}, {"x":6.25, "y":6.5, "w":7}, {"x":13.25, "y":6.5, "w":1.5}, {"x":15.75, "y":6.5, "w":1.5}, {"x":18.75, "y":6.5}, {"x":21.25, "y":6.5, "w":2}, {"x":23.25, "y":6.5}]
+ "layout": [
+ {
+ "matrix": [
+ 3,
+ 14
+ ],
+ "x": 3.25,
+ "y": 0
+ },
+ {
+ "matrix": [
+ 1,
+ 14
+ ],
+ "x": 4.25,
+ "y": 0
+ },
+ {
+ "matrix": [
+ 4,
+ 14
+ ],
+ "x": 5.25,
+ "y": 0
+ },
+ {
+ "matrix": [
+ 2,
+ 15
+ ],
+ "x": 6.25,
+ "y": 0
+ },
+ {
+ "matrix": [
+ 2,
+ 4
+ ],
+ "x": 7.25,
+ "y": 0
+ },
+ {
+ "matrix": [
+ 7,
+ 1
+ ],
+ "x": 8.25,
+ "y": 0
+ },
+ {
+ "matrix": [
+ 2,
+ 1
+ ],
+ "x": 9.25,
+ "y": 0
+ },
+ {
+ "matrix": [
+ 4,
+ 13
+ ],
+ "x": 10.25,
+ "y": 0
+ },
+ {
+ "matrix": [
+ 1,
+ 1
+ ],
+ "x": 11.25,
+ "y": 0
+ },
+ {
+ "matrix": [
+ 1,
+ 4
+ ],
+ "x": 12.25,
+ "y": 0
+ },
+ {
+ "matrix": [
+ 1,
+ 13
+ ],
+ "x": 13.25,
+ "y": 0
+ },
+ {
+ "matrix": [
+ 3,
+ 13
+ ],
+ "x": 14.25,
+ "y": 0
+ },
+ {
+ "matrix": [
+ 0,
+ 3
+ ],
+ "x": 3.25,
+ "y": 1
+ },
+ {
+ "matrix": [
+ 7,
+ 3
+ ],
+ "x": 4.25,
+ "y": 1
+ },
+ {
+ "matrix": [
+ 0,
+ 2
+ ],
+ "x": 5.25,
+ "y": 1
+ },
+ {
+ "matrix": [
+ 7,
+ 4
+ ],
+ "x": 6.25,
+ "y": 1
+ },
+ {
+ "matrix": [
+ 0,
+ 8
+ ],
+ "x": 7.25,
+ "y": 1
+ },
+ {
+ "matrix": [
+ 7,
+ 8
+ ],
+ "x": 8.25,
+ "y": 1
+ },
+ {
+ "matrix": [
+ 0,
+ 9
+ ],
+ "x": 9.25,
+ "y": 1
+ },
+ {
+ "matrix": [
+ 7,
+ 9
+ ],
+ "x": 10.25,
+ "y": 1
+ },
+ {
+ "matrix": [
+ 0,
+ 10
+ ],
+ "x": 11.25,
+ "y": 1
+ },
+ {
+ "matrix": [
+ 7,
+ 10
+ ],
+ "x": 12.25,
+ "y": 1
+ },
+ {
+ "matrix": [
+ 0,
+ 11
+ ],
+ "x": 13.25,
+ "y": 1
+ },
+ {
+ "matrix": [
+ 7,
+ 11
+ ],
+ "x": 14.25,
+ "y": 1
+ },
+ {
+ "matrix": [
+ 0,
+ 0
+ ],
+ "x": 0,
+ "y": 2.5
+ },
+ {
+ "matrix": [
+ 0,
+ 14
+ ],
+ "x": 1,
+ "y": 2.5
+ },
+ {
+ "matrix": [
+ 7,
+ 0
+ ],
+ "x": 2.25,
+ "y": 2.5
+ },
+ {
+ "matrix": [
+ 2,
+ 0
+ ],
+ "x": 3.25,
+ "y": 2.5
+ },
+ {
+ "matrix": [
+ 3,
+ 3
+ ],
+ "x": 4.25,
+ "y": 2.5
+ },
+ {
+ "matrix": [
+ 0,
+ 5
+ ],
+ "x": 5.25,
+ "y": 2.5
+ },
+ {
+ "matrix": [
+ 0,
+ 6
+ ],
+ "x": 6.25,
+ "y": 2.5
+ },
+ {
+ "matrix": [
+ 7,
+ 6
+ ],
+ "x": 7.25,
+ "y": 2.5
+ },
+ {
+ "matrix": [
+ 0,
+ 7
+ ],
+ "x": 8.25,
+ "y": 2.5
+ },
+ {
+ "matrix": [
+ 7,
+ 7
+ ],
+ "x": 9.25,
+ "y": 2.5
+ },
+ {
+ "matrix": [
+ 7,
+ 5
+ ],
+ "x": 10.25,
+ "y": 2.5
+ },
+ {
+ "matrix": [
+ 2,
+ 9
+ ],
+ "x": 11.25,
+ "y": 2.5
+ },
+ {
+ "matrix": [
+ 2,
+ 10
+ ],
+ "x": 12.25,
+ "y": 2.5
+ },
+ {
+ "matrix": [
+ 1,
+ 9
+ ],
+ "x": 13.25,
+ "y": 2.5
+ },
+ {
+ "matrix": [
+ 2,
+ 8
+ ],
+ "x": 14.25,
+ "y": 2.5
+ },
+ {
+ "matrix": [
+ 1,
+ 8
+ ],
+ "x": 15.25,
+ "y": 2.5,
+ "w": 2
+ },
+ {
+ "matrix": [
+ 0,
+ 4
+ ],
+ "x": 17.75,
+ "y": 2.5
+ },
+ {
+ "matrix": [
+ 1,
+ 12
+ ],
+ "x": 18.75,
+ "y": 2.5
+ },
+ {
+ "matrix": [
+ 2,
+ 3
+ ],
+ "x": 19.75,
+ "y": 2.5
+ },
+ {
+ "matrix": [
+ 2,
+ 2
+ ],
+ "x": 21.25,
+ "y": 2.5
+ },
+ {
+ "matrix": [
+ 2,
+ 12
+ ],
+ "x": 22.25,
+ "y": 2.5
+ },
+ {
+ "matrix": [
+ 2,
+ 11
+ ],
+ "x": 23.25,
+ "y": 2.5
+ },
+ {
+ "matrix": [
+ 7,
+ 2
+ ],
+ "x": 24.25,
+ "y": 2.5
+ },
+ {
+ "matrix": [
+ 0,
+ 12
+ ],
+ "x": 0,
+ "y": 3.5
+ },
+ {
+ "matrix": [
+ 0,
+ 1
+ ],
+ "x": 1,
+ "y": 3.5
+ },
+ {
+ "matrix": [
+ 1,
+ 0
+ ],
+ "x": 2.25,
+ "y": 3.5,
+ "w": 1.5
+ },
+ {
+ "matrix": [
+ 3,
+ 0
+ ],
+ "x": 3.75,
+ "y": 3.5
+ },
+ {
+ "matrix": [
+ 4,
+ 3
+ ],
+ "x": 4.75,
+ "y": 3.5
+ },
+ {
+ "matrix": [
+ 1,
+ 5
+ ],
+ "x": 5.75,
+ "y": 3.5
+ },
+ {
+ "matrix": [
+ 2,
+ 6
+ ],
+ "x": 6.75,
+ "y": 3.5
+ },
+ {
+ "matrix": [
+ 1,
+ 6
+ ],
+ "x": 7.75,
+ "y": 3.5
+ },
+ {
+ "matrix": [
+ 2,
+ 7
+ ],
+ "x": 8.75,
+ "y": 3.5
+ },
+ {
+ "matrix": [
+ 1,
+ 7
+ ],
+ "x": 9.75,
+ "y": 3.5
+ },
+ {
+ "matrix": [
+ 2,
+ 5
+ ],
+ "x": 10.75,
+ "y": 3.5
+ },
+ {
+ "matrix": [
+ 3,
+ 9
+ ],
+ "x": 11.75,
+ "y": 3.5
+ },
+ {
+ "matrix": [
+ 5,
+ 10
+ ],
+ "x": 12.75,
+ "y": 3.5
+ },
+ {
+ "matrix": [
+ 4,
+ 9
+ ],
+ "x": 13.75,
+ "y": 3.5
+ },
+ {
+ "matrix": [
+ 3,
+ 8
+ ],
+ "x": 14.75,
+ "y": 3.5
+ },
+ {
+ "matrix": [
+ 4,
+ 8
+ ],
+ "x": 15.75,
+ "y": 3.5,
+ "w": 1.5
+ },
+ {
+ "matrix": [
+ 1,
+ 2
+ ],
+ "x": 17.75,
+ "y": 3.5
+ },
+ {
+ "matrix": [
+ 1,
+ 11
+ ],
+ "x": 18.75,
+ "y": 3.5
+ },
+ {
+ "matrix": [
+ 1,
+ 3
+ ],
+ "x": 19.75,
+ "y": 3.5
+ },
+ {
+ "matrix": [
+ 3,
+ 12
+ ],
+ "x": 21.25,
+ "y": 3.5
+ },
+ {
+ "matrix": [
+ 3,
+ 11
+ ],
+ "x": 22.25,
+ "y": 3.5
+ },
+ {
+ "matrix": [
+ 3,
+ 2
+ ],
+ "x": 23.25,
+ "y": 3.5
+ },
+ {
+ "matrix": [
+ 6,
+ 12
+ ],
+ "x": 24.25,
+ "y": 3.5
+ },
+ {
+ "matrix": [
+ 7,
+ 15
+ ],
+ "x": 0,
+ "y": 4.5
+ },
+ {
+ "matrix": [
+ 0,
+ 15
+ ],
+ "x": 1,
+ "y": 4.5
+ },
+ {
+ "matrix": [
+ 1,
+ 15
+ ],
+ "x": 2.25,
+ "y": 4.5,
+ "w": 1.75
+ },
+ {
+ "matrix": [
+ 4,
+ 0
+ ],
+ "x": 4,
+ "y": 4.5
+ },
+ {
+ "matrix": [
+ 6,
+ 3
+ ],
+ "x": 5,
+ "y": 4.5
+ },
+ {
+ "matrix": [
+ 4,
+ 5
+ ],
+ "x": 6,
+ "y": 4.5
+ },
+ {
+ "matrix": [
+ 3,
+ 6
+ ],
+ "x": 7,
+ "y": 4.5
+ },
+ {
+ "matrix": [
+ 4,
+ 6
+ ],
+ "x": 8,
+ "y": 4.5
+ },
+ {
+ "matrix": [
+ 3,
+ 7
+ ],
+ "x": 9,
+ "y": 4.5
+ },
+ {
+ "matrix": [
+ 4,
+ 7
+ ],
+ "x": 10,
+ "y": 4.5
+ },
+ {
+ "matrix": [
+ 3,
+ 5
+ ],
+ "x": 11,
+ "y": 4.5
+ },
+ {
+ "matrix": [
+ 6,
+ 9
+ ],
+ "x": 12,
+ "y": 4.5
+ },
+ {
+ "matrix": [
+ 3,
+ 10
+ ],
+ "x": 13,
+ "y": 4.5
+ },
+ {
+ "matrix": [
+ 4,
+ 10
+ ],
+ "x": 14,
+ "y": 4.5
+ },
+ {
+ "matrix": [
+ 6,
+ 13
+ ],
+ "x": 15,
+ "y": 4.5
+ },
+ {
+ "matrix": [
+ 5,
+ 8
+ ],
+ "x": 16,
+ "y": 4.5,
+ "w": 1.25
+ },
+ {
+ "matrix": [
+ 2,
+ 13
+ ],
+ "x": 18.75,
+ "y": 4.5
+ },
+ {
+ "matrix": [
+ 4,
+ 12
+ ],
+ "x": 21.25,
+ "y": 4.5
+ },
+ {
+ "matrix": [
+ 4,
+ 11
+ ],
+ "x": 22.25,
+ "y": 4.5
+ },
+ {
+ "matrix": [
+ 4,
+ 2
+ ],
+ "x": 23.25,
+ "y": 4.5
+ },
+ {
+ "matrix": [
+ 5,
+ 14
+ ],
+ "x": 24.25,
+ "y": 4.5
+ },
+ {
+ "matrix": [
+ 6,
+ 14
+ ],
+ "x": 0,
+ "y": 5.5
+ },
+ {
+ "matrix": [
+ 7,
+ 12
+ ],
+ "x": 1,
+ "y": 5.5
+ },
+ {
+ "matrix": [
+ 5,
+ 1
+ ],
+ "x": 2.25,
+ "y": 5.5,
+ "w": 1.25
+ },
+ {
+ "matrix": [
+ 6,
+ 0
+ ],
+ "x": 3.5,
+ "y": 5.5
+ },
+ {
+ "matrix": [
+ 5,
+ 0
+ ],
+ "x": 4.5,
+ "y": 5.5
+ },
+ {
+ "matrix": [
+ 5,
+ 3
+ ],
+ "x": 5.5,
+ "y": 5.5
+ },
+ {
+ "matrix": [
+ 6,
+ 5
+ ],
+ "x": 6.5,
+ "y": 5.5
+ },
+ {
+ "matrix": [
+ 6,
+ 6
+ ],
+ "x": 7.5,
+ "y": 5.5
+ },
+ {
+ "matrix": [
+ 5,
+ 6
+ ],
+ "x": 8.5,
+ "y": 5.5
+ },
+ {
+ "matrix": [
+ 6,
+ 7
+ ],
+ "x": 9.5,
+ "y": 5.5
+ },
+ {
+ "matrix": [
+ 5,
+ 7
+ ],
+ "x": 10.5,
+ "y": 5.5
+ },
+ {
+ "matrix": [
+ 5,
+ 5
+ ],
+ "x": 11.5,
+ "y": 5.5
+ },
+ {
+ "matrix": [
+ 5,
+ 9
+ ],
+ "x": 12.5,
+ "y": 5.5
+ },
+ {
+ "matrix": [
+ 6,
+ 10
+ ],
+ "x": 13.5,
+ "y": 5.5
+ },
+ {
+ "matrix": [
+ 3,
+ 1
+ ],
+ "x": 14.5,
+ "y": 5.5,
+ "w": 2.75
+ },
+ {
+ "matrix": [
+ 6,
+ 8
+ ],
+ "x": 17.75,
+ "y": 5.5
+ },
+ {
+ "matrix": [
+ 5,
+ 13
+ ],
+ "x": 18.75,
+ "y": 5.5
+ },
+ {
+ "matrix": [
+ 0,
+ 13
+ ],
+ "x": 19.75,
+ "y": 5.5
+ },
+ {
+ "matrix": [
+ 5,
+ 12
+ ],
+ "x": 21.25,
+ "y": 5.5
+ },
+ {
+ "matrix": [
+ 6,
+ 11
+ ],
+ "x": 22.25,
+ "y": 5.5
+ },
+ {
+ "matrix": [
+ 6,
+ 2
+ ],
+ "x": 23.25,
+ "y": 5.5
+ },
+ {
+ "matrix": [
+ 7,
+ 14
+ ],
+ "x": 24.25,
+ "y": 5.5,
+ "h": 2
+ },
+ {
+ "matrix": [
+ 2,
+ 14
+ ],
+ "x": 0,
+ "y": 6.5
+ },
+ {
+ "matrix": [
+ 4,
+ 15
+ ],
+ "x": 1,
+ "y": 6.5
+ },
+ {
+ "matrix": [
+ 3,
+ 15
+ ],
+ "x": 2.25,
+ "y": 6.5,
+ "w": 1.5
+ },
+ {
+ "matrix": [
+ 4,
+ 4
+ ],
+ "x": 4.75,
+ "y": 6.5,
+ "w": 1.5
+ },
+ {
+ "matrix": [
+ 7,
+ 13
+ ],
+ "x": 6.25,
+ "y": 6.5,
+ "w": 7
+ },
+ {
+ "matrix": [
+ 6,
+ 4
+ ],
+ "x": 13.25,
+ "y": 6.5,
+ "w": 1.5
+ },
+ {
+ "matrix": [
+ 5,
+ 15
+ ],
+ "x": 15.75,
+ "y": 6.5,
+ "w": 1.5
+ },
+ {
+ "matrix": [
+ 1,
+ 10
+ ],
+ "x": 18.75,
+ "y": 6.5
+ },
+ {
+ "matrix": [
+ 5,
+ 11
+ ],
+ "x": 21.25,
+ "y": 6.5,
+ "w": 2
+ },
+ {
+ "matrix": [
+ 5,
+ 2
+ ],
+ "x": 23.25,
+ "y": 6.5
+ }
+ ]
+ },
+ "LAYOUT_ansi": {
+ "layout": [
+ {
+ "matrix": [
+ 3,
+ 14
+ ],
+ "x": 3.25,
+ "y": 0
+ },
+ {
+ "matrix": [
+ 1,
+ 14
+ ],
+ "x": 4.25,
+ "y": 0
+ },
+ {
+ "matrix": [
+ 4,
+ 14
+ ],
+ "x": 5.25,
+ "y": 0
+ },
+ {
+ "matrix": [
+ 2,
+ 15
+ ],
+ "x": 6.25,
+ "y": 0
+ },
+ {
+ "matrix": [
+ 2,
+ 4
+ ],
+ "x": 7.25,
+ "y": 0
+ },
+ {
+ "matrix": [
+ 7,
+ 1
+ ],
+ "x": 8.25,
+ "y": 0
+ },
+ {
+ "matrix": [
+ 2,
+ 1
+ ],
+ "x": 9.25,
+ "y": 0
+ },
+ {
+ "matrix": [
+ 4,
+ 13
+ ],
+ "x": 10.25,
+ "y": 0
+ },
+ {
+ "matrix": [
+ 1,
+ 1
+ ],
+ "x": 11.25,
+ "y": 0
+ },
+ {
+ "matrix": [
+ 1,
+ 4
+ ],
+ "x": 12.25,
+ "y": 0
+ },
+ {
+ "matrix": [
+ 1,
+ 13
+ ],
+ "x": 13.25,
+ "y": 0
+ },
+ {
+ "matrix": [
+ 3,
+ 13
+ ],
+ "x": 14.25,
+ "y": 0
+ },
+ {
+ "matrix": [
+ 0,
+ 3
+ ],
+ "x": 3.25,
+ "y": 1
+ },
+ {
+ "matrix": [
+ 7,
+ 3
+ ],
+ "x": 4.25,
+ "y": 1
+ },
+ {
+ "matrix": [
+ 0,
+ 2
+ ],
+ "x": 5.25,
+ "y": 1
+ },
+ {
+ "matrix": [
+ 7,
+ 4
+ ],
+ "x": 6.25,
+ "y": 1
+ },
+ {
+ "matrix": [
+ 0,
+ 8
+ ],
+ "x": 7.25,
+ "y": 1
+ },
+ {
+ "matrix": [
+ 7,
+ 8
+ ],
+ "x": 8.25,
+ "y": 1
+ },
+ {
+ "matrix": [
+ 0,
+ 9
+ ],
+ "x": 9.25,
+ "y": 1
+ },
+ {
+ "matrix": [
+ 7,
+ 9
+ ],
+ "x": 10.25,
+ "y": 1
+ },
+ {
+ "matrix": [
+ 0,
+ 10
+ ],
+ "x": 11.25,
+ "y": 1
+ },
+ {
+ "matrix": [
+ 7,
+ 10
+ ],
+ "x": 12.25,
+ "y": 1
+ },
+ {
+ "matrix": [
+ 0,
+ 11
+ ],
+ "x": 13.25,
+ "y": 1
+ },
+ {
+ "matrix": [
+ 7,
+ 11
+ ],
+ "x": 14.25,
+ "y": 1
+ },
+ {
+ "matrix": [
+ 0,
+ 0
+ ],
+ "x": 0,
+ "y": 2.5
+ },
+ {
+ "matrix": [
+ 0,
+ 14
+ ],
+ "x": 1,
+ "y": 2.5
+ },
+ {
+ "matrix": [
+ 7,
+ 0
+ ],
+ "x": 2.25,
+ "y": 2.5
+ },
+ {
+ "matrix": [
+ 2,
+ 0
+ ],
+ "x": 3.25,
+ "y": 2.5
+ },
+ {
+ "matrix": [
+ 3,
+ 3
+ ],
+ "x": 4.25,
+ "y": 2.5
+ },
+ {
+ "matrix": [
+ 0,
+ 5
+ ],
+ "x": 5.25,
+ "y": 2.5
+ },
+ {
+ "matrix": [
+ 0,
+ 6
+ ],
+ "x": 6.25,
+ "y": 2.5
+ },
+ {
+ "matrix": [
+ 7,
+ 6
+ ],
+ "x": 7.25,
+ "y": 2.5
+ },
+ {
+ "matrix": [
+ 0,
+ 7
+ ],
+ "x": 8.25,
+ "y": 2.5
+ },
+ {
+ "matrix": [
+ 7,
+ 7
+ ],
+ "x": 9.25,
+ "y": 2.5
+ },
+ {
+ "matrix": [
+ 7,
+ 5
+ ],
+ "x": 10.25,
+ "y": 2.5
+ },
+ {
+ "matrix": [
+ 2,
+ 9
+ ],
+ "x": 11.25,
+ "y": 2.5
+ },
+ {
+ "matrix": [
+ 2,
+ 10
+ ],
+ "x": 12.25,
+ "y": 2.5
+ },
+ {
+ "matrix": [
+ 1,
+ 9
+ ],
+ "x": 13.25,
+ "y": 2.5
+ },
+ {
+ "matrix": [
+ 2,
+ 8
+ ],
+ "x": 14.25,
+ "y": 2.5
+ },
+ {
+ "matrix": [
+ 1,
+ 8
+ ],
+ "x": 15.25,
+ "y": 2.5,
+ "w": 2
+ },
+ {
+ "matrix": [
+ 0,
+ 4
+ ],
+ "x": 17.75,
+ "y": 2.5
+ },
+ {
+ "matrix": [
+ 1,
+ 12
+ ],
+ "x": 18.75,
+ "y": 2.5
+ },
+ {
+ "matrix": [
+ 2,
+ 3
+ ],
+ "x": 19.75,
+ "y": 2.5
+ },
+ {
+ "matrix": [
+ 2,
+ 2
+ ],
+ "x": 21.25,
+ "y": 2.5
+ },
+ {
+ "matrix": [
+ 2,
+ 12
+ ],
+ "x": 22.25,
+ "y": 2.5
+ },
+ {
+ "matrix": [
+ 2,
+ 11
+ ],
+ "x": 23.25,
+ "y": 2.5
+ },
+ {
+ "matrix": [
+ 7,
+ 2
+ ],
+ "x": 24.25,
+ "y": 2.5
+ },
+ {
+ "matrix": [
+ 0,
+ 12
+ ],
+ "x": 0,
+ "y": 3.5
+ },
+ {
+ "matrix": [
+ 0,
+ 1
+ ],
+ "x": 1,
+ "y": 3.5
+ },
+ {
+ "matrix": [
+ 1,
+ 0
+ ],
+ "x": 2.25,
+ "y": 3.5,
+ "w": 1.5
+ },
+ {
+ "matrix": [
+ 3,
+ 0
+ ],
+ "x": 3.75,
+ "y": 3.5
+ },
+ {
+ "matrix": [
+ 4,
+ 3
+ ],
+ "x": 4.75,
+ "y": 3.5
+ },
+ {
+ "matrix": [
+ 1,
+ 5
+ ],
+ "x": 5.75,
+ "y": 3.5
+ },
+ {
+ "matrix": [
+ 2,
+ 6
+ ],
+ "x": 6.75,
+ "y": 3.5
+ },
+ {
+ "matrix": [
+ 1,
+ 6
+ ],
+ "x": 7.75,
+ "y": 3.5
+ },
+ {
+ "matrix": [
+ 2,
+ 7
+ ],
+ "x": 8.75,
+ "y": 3.5
+ },
+ {
+ "matrix": [
+ 1,
+ 7
+ ],
+ "x": 9.75,
+ "y": 3.5
+ },
+ {
+ "matrix": [
+ 2,
+ 5
+ ],
+ "x": 10.75,
+ "y": 3.5
+ },
+ {
+ "matrix": [
+ 3,
+ 9
+ ],
+ "x": 11.75,
+ "y": 3.5
+ },
+ {
+ "matrix": [
+ 5,
+ 10
+ ],
+ "x": 12.75,
+ "y": 3.5
+ },
+ {
+ "matrix": [
+ 4,
+ 9
+ ],
+ "x": 13.75,
+ "y": 3.5
+ },
+ {
+ "matrix": [
+ 3,
+ 8
+ ],
+ "x": 14.75,
+ "y": 3.5
+ },
+ {
+ "matrix": [
+ 4,
+ 8
+ ],
+ "x": 15.75,
+ "y": 3.5,
+ "w": 1.5
+ },
+ {
+ "matrix": [
+ 1,
+ 2
+ ],
+ "x": 17.75,
+ "y": 3.5
+ },
+ {
+ "matrix": [
+ 1,
+ 11
+ ],
+ "x": 18.75,
+ "y": 3.5
+ },
+ {
+ "matrix": [
+ 1,
+ 3
+ ],
+ "x": 19.75,
+ "y": 3.5
+ },
+ {
+ "matrix": [
+ 3,
+ 12
+ ],
+ "x": 21.25,
+ "y": 3.5
+ },
+ {
+ "matrix": [
+ 3,
+ 11
+ ],
+ "x": 22.25,
+ "y": 3.5
+ },
+ {
+ "matrix": [
+ 3,
+ 2
+ ],
+ "x": 23.25,
+ "y": 3.5
+ },
+ {
+ "matrix": [
+ 6,
+ 12
+ ],
+ "x": 24.25,
+ "y": 3.5
+ },
+ {
+ "matrix": [
+ 7,
+ 15
+ ],
+ "x": 0,
+ "y": 4.5
+ },
+ {
+ "matrix": [
+ 0,
+ 15
+ ],
+ "x": 1,
+ "y": 4.5
+ },
+ {
+ "matrix": [
+ 1,
+ 15
+ ],
+ "x": 2.25,
+ "y": 4.5,
+ "w": 1.75
+ },
+ {
+ "matrix": [
+ 4,
+ 0
+ ],
+ "x": 4,
+ "y": 4.5
+ },
+ {
+ "matrix": [
+ 6,
+ 3
+ ],
+ "x": 5,
+ "y": 4.5
+ },
+ {
+ "matrix": [
+ 4,
+ 5
+ ],
+ "x": 6,
+ "y": 4.5
+ },
+ {
+ "matrix": [
+ 3,
+ 6
+ ],
+ "x": 7,
+ "y": 4.5
+ },
+ {
+ "matrix": [
+ 4,
+ 6
+ ],
+ "x": 8,
+ "y": 4.5
+ },
+ {
+ "matrix": [
+ 3,
+ 7
+ ],
+ "x": 9,
+ "y": 4.5
+ },
+ {
+ "matrix": [
+ 4,
+ 7
+ ],
+ "x": 10,
+ "y": 4.5
+ },
+ {
+ "matrix": [
+ 3,
+ 5
+ ],
+ "x": 11,
+ "y": 4.5
+ },
+ {
+ "matrix": [
+ 6,
+ 9
+ ],
+ "x": 12,
+ "y": 4.5
+ },
+ {
+ "matrix": [
+ 3,
+ 10
+ ],
+ "x": 13,
+ "y": 4.5
+ },
+ {
+ "matrix": [
+ 4,
+ 10
+ ],
+ "x": 14,
+ "y": 4.5
+ },
+ {
+ "matrix": [
+ 5,
+ 8
+ ],
+ "x": 15,
+ "y": 4.5,
+ "w": 2.25
+ },
+ {
+ "matrix": [
+ 2,
+ 13
+ ],
+ "x": 18.75,
+ "y": 4.5
+ },
+ {
+ "matrix": [
+ 4,
+ 12
+ ],
+ "x": 21.25,
+ "y": 4.5
+ },
+ {
+ "matrix": [
+ 4,
+ 11
+ ],
+ "x": 22.25,
+ "y": 4.5
+ },
+ {
+ "matrix": [
+ 4,
+ 2
+ ],
+ "x": 23.25,
+ "y": 4.5
+ },
+ {
+ "matrix": [
+ 5,
+ 14
+ ],
+ "x": 24.25,
+ "y": 4.5
+ },
+ {
+ "matrix": [
+ 6,
+ 14
+ ],
+ "x": 0,
+ "y": 5.5
+ },
+ {
+ "matrix": [
+ 7,
+ 12
+ ],
+ "x": 1,
+ "y": 5.5
+ },
+ {
+ "matrix": [
+ 5,
+ 1
+ ],
+ "x": 2.25,
+ "y": 5.5,
+ "w": 2.25
+ },
+ {
+ "matrix": [
+ 5,
+ 0
+ ],
+ "x": 4.5,
+ "y": 5.5
+ },
+ {
+ "matrix": [
+ 5,
+ 3
+ ],
+ "x": 5.5,
+ "y": 5.5
+ },
+ {
+ "matrix": [
+ 6,
+ 5
+ ],
+ "x": 6.5,
+ "y": 5.5
+ },
+ {
+ "matrix": [
+ 6,
+ 6
+ ],
+ "x": 7.5,
+ "y": 5.5
+ },
+ {
+ "matrix": [
+ 5,
+ 6
+ ],
+ "x": 8.5,
+ "y": 5.5
+ },
+ {
+ "matrix": [
+ 6,
+ 7
+ ],
+ "x": 9.5,
+ "y": 5.5
+ },
+ {
+ "matrix": [
+ 5,
+ 7
+ ],
+ "x": 10.5,
+ "y": 5.5
+ },
+ {
+ "matrix": [
+ 5,
+ 5
+ ],
+ "x": 11.5,
+ "y": 5.5
+ },
+ {
+ "matrix": [
+ 5,
+ 9
+ ],
+ "x": 12.5,
+ "y": 5.5
+ },
+ {
+ "matrix": [
+ 6,
+ 10
+ ],
+ "x": 13.5,
+ "y": 5.5
+ },
+ {
+ "matrix": [
+ 3,
+ 1
+ ],
+ "x": 14.5,
+ "y": 5.5,
+ "w": 2.75
+ },
+ {
+ "matrix": [
+ 6,
+ 8
+ ],
+ "x": 17.75,
+ "y": 5.5
+ },
+ {
+ "matrix": [
+ 5,
+ 13
+ ],
+ "x": 18.75,
+ "y": 5.5
+ },
+ {
+ "matrix": [
+ 0,
+ 13
+ ],
+ "x": 19.75,
+ "y": 5.5
+ },
+ {
+ "matrix": [
+ 5,
+ 12
+ ],
+ "x": 21.25,
+ "y": 5.5
+ },
+ {
+ "matrix": [
+ 6,
+ 11
+ ],
+ "x": 22.25,
+ "y": 5.5
+ },
+ {
+ "matrix": [
+ 6,
+ 2
+ ],
+ "x": 23.25,
+ "y": 5.5
+ },
+ {
+ "matrix": [
+ 7,
+ 14
+ ],
+ "x": 24.25,
+ "y": 5.5,
+ "h": 2
+ },
+ {
+ "matrix": [
+ 2,
+ 14
+ ],
+ "x": 0,
+ "y": 6.5
+ },
+ {
+ "matrix": [
+ 4,
+ 15
+ ],
+ "x": 1,
+ "y": 6.5
+ },
+ {
+ "matrix": [
+ 3,
+ 15
+ ],
+ "x": 2.25,
+ "y": 6.5,
+ "w": 1.5
+ },
+ {
+ "matrix": [
+ 4,
+ 4
+ ],
+ "x": 4.75,
+ "y": 6.5,
+ "w": 1.5
+ },
+ {
+ "matrix": [
+ 7,
+ 13
+ ],
+ "x": 6.25,
+ "y": 6.5,
+ "w": 7
+ },
+ {
+ "matrix": [
+ 6,
+ 4
+ ],
+ "x": 13.25,
+ "y": 6.5,
+ "w": 1.5
+ },
+ {
+ "matrix": [
+ 5,
+ 15
+ ],
+ "x": 15.75,
+ "y": 6.5,
+ "w": 1.5
+ },
+ {
+ "matrix": [
+ 1,
+ 10
+ ],
+ "x": 18.75,
+ "y": 6.5
+ },
+ {
+ "matrix": [
+ 5,
+ 11
+ ],
+ "x": 21.25,
+ "y": 6.5,
+ "w": 2
+ },
+ {
+ "matrix": [
+ 5,
+ 2
+ ],
+ "x": 23.25,
+ "y": 6.5
+ }
+ ]
}
}
}
diff --git a/keyboards/unicomp/pc122/overnumpad_1xb/config.h b/keyboards/unicomp/pc122/overnumpad_1xb/config.h
index 88eb8c2c51..71e60e9cfe 100644
--- a/keyboards/unicomp/pc122/overnumpad_1xb/config.h
+++ b/keyboards/unicomp/pc122/overnumpad_1xb/config.h
@@ -15,41 +15,17 @@
*/
#pragma once
+#define DEF_SERIAL_NUMBER "purdea.ro:overnumpad_controller"
-#define SERIAL_NUMBER "purdea.ro:overnumpad_controller"
-
-/*
- * Keyboard Matrix Assignments
- *
- * Change this to how you wired your keyboard
- * COLS: AVR pins used for columns, left to right
- * ROWS: AVR pins used for rows, top to bottom
- * DIODE_DIRECTION: COL2ROW = COL = Anode (+), ROW = Cathode (-, marked on diode)
- * ROW2COL = ROW = Anode (+), COL = Cathode (-, marked on diode)
- *
- */
-
-// All pins in order from left-to-right, as seen on the keyboard:
-// C3, C2, C1, C0, A3, A4, A5, A6, A7, C4, C5, B0, B1, B10, B12, B13, B14, B15, C6, C7, C8, C9, A8, A9, A10,
-// On this chip A10, B10 have stronger pull-ups, so it's better to avoid them if possible.
-
-// On this keyboard the right-most pin is not used, so that is A10.
-// On this keyboard the right-most 8 pins (excluding the unused pin) are routed on the bottom.
-
-#define MATRIX_COL_PINS { C3, C2, C1, C0, A3, A4, A5, A6, A7, C4, C5, B0, B1, B10, B12, B13 }
-#define MATRIX_ROW_PINS { B14, B15, C6, C7, C8, C9, A8, A9 }
-
-/* COL2ROW, ROW2COL*/
-#define DIODE_DIRECTION ROW2COL
-
-/* define if matrix has ghost (lacks anti-ghosting diodes) */
-#define MATRIX_HAS_GHOST
+#ifndef SERIAL_NUMBER
+#define SERIAL_NUMBER DEF_SERIAL_NUMBER
+#endif
#define STM32_HSECLK 16000000
#define SOLENOID_PIN B5
#define HAPTIC_ENABLE_PIN C13
-#define SOLENOID_DEFAULT_DWELL 4
+#define SOLENOID_DEFAULT_DWELL 20
#define SOLENOID_MIN_DWELL 4
#define HAPTIC_OFF_IN_LOW_POWER 1
#define NO_HAPTIC_MOD
diff --git a/keyboards/unicomp/pc122/overnumpad_1xb/info.json b/keyboards/unicomp/pc122/overnumpad_1xb/info.json
new file mode 100644
index 0000000000..16e3916823
--- /dev/null
+++ b/keyboards/unicomp/pc122/overnumpad_1xb/info.json
@@ -0,0 +1,20 @@
+{
+ "keyboard_name": "Unicomp PC122",
+ "manufacturer": "Unicomp/Purdea Andrei",
+ "url": "https://github.com/purdeaandrei/overnumpad_controller_1xb",
+ "maintainer": "purdeaandrei",
+ "indicators": {
+ "caps_lock": "C11",
+ "num_lock": "C12",
+ "scroll_lock": "C10"
+ },
+ "processor": "STM32F446", // RET6
+ "bootloader": "stm32-dfu",
+ "diode_direction": "ROW2COL",
+ "matrix_pins": {
+ // The controller to membrane interface has pads left-to-right, as seen on the keyboard, matching
+ // the order listed below: all columns followed by all rows, (also followed by unused gpio "A10"):
+ "cols": ["C3", "C2", "C1", "C0", "A3", "A4", "A5", "A6", "A7", "C4", "C5", "B0", "B1", "B10", "B12", "B13"],
+ "rows": ["B14", "B15", "C6", "C7", "C8", "C9", "A8", "A9"]
+ }
+}
diff --git a/keyboards/unicomp/pc122/overnumpad_1xb/overnumpad_1xb.c b/keyboards/unicomp/pc122/overnumpad_1xb/overnumpad_1xb.c
deleted file mode 100644
index cb5ec3dc12..0000000000
--- a/keyboards/unicomp/pc122/overnumpad_1xb/overnumpad_1xb.c
+++ /dev/null
@@ -1,24 +0,0 @@
-/* Copyright 2020 Purdea Andrei
- *
- * 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/>.
- */
-
-#include "overnumpad_1xb.h"
-
-void keyboard_post_init_kb(void)
-{
- //debug_enable=true;
- //debug_matrix=true;
-}
-
diff --git a/keyboards/unicomp/pc122/overnumpad_1xb/overnumpad_1xb.h b/keyboards/unicomp/pc122/overnumpad_1xb/overnumpad_1xb.h
deleted file mode 100644
index e0dc0d8f33..0000000000
--- a/keyboards/unicomp/pc122/overnumpad_1xb/overnumpad_1xb.h
+++ /dev/null
@@ -1,49 +0,0 @@
-/* Copyright 2020 Purdea Andrei
- *
- * 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"
-
-/* This is a shortcut to help you visually see your layout.
- *
- * The first section contains all of the arguments representing the physical
- * layout of the board and position of the keys.
- *
- * The second converts the arguments into a two-dimensional array which
- * represents the switch matrix.
- */
-
-#define LAYOUT_all( \
- k_f13, k_f14, k_f15, k_f16, k_f17, k_f18, k_f19, k_f20, k_f21, k_f22, k_f23, k_f24, \
- k_f1, k_f2, k_f3, k_f4, k_f5, k_f6, k_f7, k_f8, k_f9, k_f10, k_f11, k_f12, \
-k_lb1, k_lb2, k_tild, k_1, k_2, k_3, k_4, k_5, k_6, k_7, k_8, k_9, k_0, k_minus, k_equals, k_backspace, k_ins, k_home, k_pgup, kp_nl, kp_div, kp_mult, kp_minus, \
-k_lb3, k_lb4, k_tab, k_q, k_w, k_e, k_r, k_t, k_y, k_u, k_i, k_o, k_p, k_squarebrop, k_squarebrcl, k_backsl, k_del, k_end, k_pgdn, kp_7, kp_8, kp_9, kp_plus, \
-k_lb5, k_lb6, k_caps, k_a, k_s, k_d, k_f, k_g, k_h, k_j, k_k, k_l, k_semicolon, k_singlequote, k_nuhs,k_return, k_up, kp_4, kp_5, kp_6, kp_plus_hidden, \
-k_lb7, k_lb8, k_lshift,k_nubs,k_z, k_x, k_c, k_v, k_b, k_n, k_m, k_cm,k_period, k_fwslash, k_rshift, k_left, k_navmid, k_right, kp_1, kp_2, kp_3, kp_enter, \
-k_lb9, k_lb10, k_lctrl, k_lalt, k_space, k_ralt, k_rctrl, k_down, kp_0, kp_dot \
-) \
-{ \
- /* 0 1 2 3 4 5 6 7 8 9 A B C D E F */ \
- /* 0 */ { k_lb1, k_lb4, k_f3, k_f1, k_ins, k_3, k_4, k_6, k_f5, k_f7, k_f9, k_f11, k_lb3, k_right, k_lb2, k_lb6 }, \
- /* 1 */ { k_tab, k_f21, k_del, k_pgdn, k_f22, k_e, k_t, k_u, k_backspace, k_minus, k_down, k_end, k_home, k_f23, k_f14, k_caps }, \
- /* 2 */ { k_1, k_f19, kp_nl, k_pgup, k_f17, k_i, k_r, k_y, k_equals, k_9, k_0, kp_mult, kp_div, k_up, k_lb9, k_f16 }, \
- /* 3 */ { k_q, k_rshift, kp_9, k_2, KC_NO, k_k, k_f, k_h, k_squarebrcl, k_o, k_semicolon, kp_8, kp_7, k_f24, k_f13, k_lctrl }, \
- /* 4 */ { k_a, KC_NO, kp_6, k_w, k_lalt, k_d, k_g, k_j, k_backsl, k_squarebrop, k_singlequote, kp_5, kp_4, k_f20, k_f15, k_lb10 }, \
- /* 5 */ { k_z, k_lshift, kp_dot, k_x, KC_NO, k_cm, k_b, k_m, k_return, k_period, k_p, kp_0, kp_1, k_navmid, kp_plus_hidden, k_rctrl }, \
- /* 6 */ { k_nubs, KC_NO, kp_3, k_s, k_ralt, k_c, k_v, k_n, k_left, k_l, k_fwslash, kp_2, kp_plus, k_nuhs, k_lb7, KC_NO }, \
- /* 7 */ { k_tild, k_f18, kp_minus, k_f2, k_f4, k_8, k_5, k_7, k_f6, k_f8, k_f10, k_f12, k_lb8, k_space, kp_enter, k_lb5 } \
-}
diff --git a/keyboards/unicomp/spacesaver_m_post_2013/info.json b/keyboards/unicomp/spacesaver_m_post_2013/info.json
index c484553e89..fc91057391 100644
--- a/keyboards/unicomp/spacesaver_m_post_2013/info.json
+++ b/keyboards/unicomp/spacesaver_m_post_2013/info.json
@@ -1,27 +1,2650 @@
{
- "keyboard_name": "Unicomp Spacesaver M",
- "manufacturer": "Unicomp/Purdea Andrei",
- "url": "https://github.com/purdeaandrei/overnumpad_controller_1xb",
- "maintainer": "purdeaandrei",
+ "matrix_pins": {
+ "ghost": true
+ },
"usb": {
"vid": "0x16C0",
"pid": "0x27DB",
"device_version": "0.0.1"
},
- "indicators": {
- "caps_lock": "C12"
- },
- "processor": "STM32F446", // RET6
- "bootloader": "stm32-dfu",
"layouts": {
"LAYOUT_all": {
- "layout": [{"x":0, "y":0}, {"x":2, "y":0}, {"x":3, "y":0}, {"x":4, "y":0}, {"x":5, "y":0}, {"x":6.5, "y":0}, {"x":7.5, "y":0}, {"x":8.5, "y":0}, {"x":9.5, "y":0}, {"x":11, "y":0}, {"x":12, "y":0}, {"x":13, "y":0}, {"x":14, "y":0}, {"x":15.25, "y":0}, {"x":16.25, "y":0}, {"x":17.25, "y":0}, {"x":0, "y":1.5}, {"x":1, "y":1.5}, {"x":2, "y":1.5}, {"x":3, "y":1.5}, {"x":4, "y":1.5}, {"x":5, "y":1.5}, {"x":6, "y":1.5}, {"x":7, "y":1.5}, {"x":8, "y":1.5}, {"x":9, "y":1.5}, {"x":10, "y":1.5}, {"x":11, "y":1.5}, {"x":12, "y":1.5}, {"x":13, "y":1.5}, {"x":14, "y":1.5}, {"x":15.25, "y":1.5}, {"x":16.25, "y":1.5}, {"x":17.25, "y":1.5}, {"x":18.5, "y":1.5}, {"x":19.5, "y":1.5}, {"x":20.5, "y":1.5}, {"x":21.5, "y":1.5}, {"x":0, "y":2.5, "w":1.5}, {"x":1.5, "y":2.5}, {"x":2.5, "y":2.5}, {"x":3.5, "y":2.5}, {"x":4.5, "y":2.5}, {"x":5.5, "y":2.5}, {"x":6.5, "y":2.5}, {"x":7.5, "y":2.5}, {"x":8.5, "y":2.5}, {"x":9.5, "y":2.5}, {"x":10.5, "y":2.5}, {"x":11.5, "y":2.5}, {"x":12.5, "y":2.5}, {"x":13.5, "y":2.5, "w":1.5}, {"x":15.25, "y":2.5}, {"x":16.25, "y":2.5}, {"x":17.25, "y":2.5}, {"x":18.5, "y":2.5}, {"x":19.5, "y":2.5}, {"x":20.5, "y":2.5}, {"x":21.5, "y":2.5}, {"x":0, "y":3.5, "w":1.75}, {"x":1.75, "y":3.5}, {"x":2.75, "y":3.5}, {"x":3.75, "y":3.5}, {"x":4.75, "y":3.5}, {"x":5.75, "y":3.5}, {"x":6.75, "y":3.5}, {"x":7.75, "y":3.5}, {"x":8.75, "y":3.5}, {"x":9.75, "y":3.5}, {"x":10.75, "y":3.5}, {"x":11.75, "y":3.5}, {"x":12.75, "y":3.5}, {"x":13.75, "y":3.5, "w":1.25}, {"x":18.5, "y":3.5}, {"x":19.5, "y":3.5}, {"x":20.5, "y":3.5}, {"x":21.5, "y":3.5}, {"x":0, "y":4.5, "w":1.25}, {"x":1.25, "y":4.5}, {"x":2.25, "y":4.5}, {"x":3.25, "y":4.5}, {"x":4.25, "y":4.5}, {"x":5.25, "y":4.5}, {"x":6.25, "y":4.5}, {"x":7.25, "y":4.5}, {"x":8.25, "y":4.5}, {"x":9.25, "y":4.5}, {"x":10.25, "y":4.5}, {"x":11.25, "y":4.5}, {"x":12.25, "y":4.5}, {"x":13.25, "y":4.5, "w":1.75}, {"x":16.25, "y":4.5}, {"x":18.5, "y":4.5}, {"x":19.5, "y":4.5}, {"x":20.5, "y":4.5}, {"x":21.5, "y":4.5}, {"x":0, "y":5.5, "w":1.5}, {"x":1.5, "y":5.5}, {"x":2.5, "y":5.5, "w":1.5}, {"x":4, "y":5.5}, {"x":5, "y":5.5, "w":4.75}, {"x":9.75, "y":5.5, "w":1.25}, {"x":11, "y":5.5, "w":1.5}, {"x":12.5, "y":5.5}, {"x":13.5, "y":5.5, "w":1.5}, {"x":15.25, "y":5.5}, {"x":16.25, "y":5.5}, {"x":17.25, "y":5.5}, {"x":18.5, "y":5.5}, {"x":19.5, "y":5.5}, {"x":20.5, "y":5.5}, {"x":21.5, "y":5.5}]
+ "layout": [
+ {
+ "matrix": [
+ 0,
+ 0
+ ],
+ "x": 0,
+ "y": 0
+ },
+ {
+ "matrix": [
+ 0,
+ 3
+ ],
+ "x": 2,
+ "y": 0
+ },
+ {
+ "matrix": [
+ 7,
+ 3
+ ],
+ "x": 3,
+ "y": 0
+ },
+ {
+ "matrix": [
+ 0,
+ 2
+ ],
+ "x": 4,
+ "y": 0
+ },
+ {
+ "matrix": [
+ 7,
+ 4
+ ],
+ "x": 5,
+ "y": 0
+ },
+ {
+ "matrix": [
+ 0,
+ 8
+ ],
+ "x": 6.5,
+ "y": 0
+ },
+ {
+ "matrix": [
+ 7,
+ 8
+ ],
+ "x": 7.5,
+ "y": 0
+ },
+ {
+ "matrix": [
+ 0,
+ 9
+ ],
+ "x": 8.5,
+ "y": 0
+ },
+ {
+ "matrix": [
+ 7,
+ 9
+ ],
+ "x": 9.5,
+ "y": 0
+ },
+ {
+ "matrix": [
+ 0,
+ 10
+ ],
+ "x": 11,
+ "y": 0
+ },
+ {
+ "matrix": [
+ 7,
+ 10
+ ],
+ "x": 12,
+ "y": 0
+ },
+ {
+ "matrix": [
+ 0,
+ 11
+ ],
+ "x": 13,
+ "y": 0
+ },
+ {
+ "matrix": [
+ 7,
+ 11
+ ],
+ "x": 14,
+ "y": 0
+ },
+ {
+ "matrix": [
+ 0,
+ 12
+ ],
+ "x": 15.25,
+ "y": 0
+ },
+ {
+ "matrix": [
+ 0,
+ 14
+ ],
+ "x": 16.25,
+ "y": 0
+ },
+ {
+ "matrix": [
+ 0,
+ 1
+ ],
+ "x": 17.25,
+ "y": 0
+ },
+ {
+ "matrix": [
+ 7,
+ 0
+ ],
+ "x": 0,
+ "y": 1.5
+ },
+ {
+ "matrix": [
+ 2,
+ 0
+ ],
+ "x": 1,
+ "y": 1.5
+ },
+ {
+ "matrix": [
+ 3,
+ 3
+ ],
+ "x": 2,
+ "y": 1.5
+ },
+ {
+ "matrix": [
+ 0,
+ 5
+ ],
+ "x": 3,
+ "y": 1.5
+ },
+ {
+ "matrix": [
+ 0,
+ 6
+ ],
+ "x": 4,
+ "y": 1.5
+ },
+ {
+ "matrix": [
+ 7,
+ 6
+ ],
+ "x": 5,
+ "y": 1.5
+ },
+ {
+ "matrix": [
+ 0,
+ 7
+ ],
+ "x": 6,
+ "y": 1.5
+ },
+ {
+ "matrix": [
+ 7,
+ 7
+ ],
+ "x": 7,
+ "y": 1.5
+ },
+ {
+ "matrix": [
+ 7,
+ 5
+ ],
+ "x": 8,
+ "y": 1.5
+ },
+ {
+ "matrix": [
+ 2,
+ 9
+ ],
+ "x": 9,
+ "y": 1.5
+ },
+ {
+ "matrix": [
+ 2,
+ 10
+ ],
+ "x": 10,
+ "y": 1.5
+ },
+ {
+ "matrix": [
+ 1,
+ 9
+ ],
+ "x": 11,
+ "y": 1.5
+ },
+ {
+ "matrix": [
+ 2,
+ 8
+ ],
+ "x": 12,
+ "y": 1.5
+ },
+ {
+ "matrix": [
+ 2,
+ 1
+ ],
+ "x": 13,
+ "y": 1.5
+ },
+ {
+ "matrix": [
+ 1,
+ 8
+ ],
+ "x": 14,
+ "y": 1.5
+ },
+ {
+ "matrix": [
+ 0,
+ 4
+ ],
+ "x": 15.25,
+ "y": 1.5
+ },
+ {
+ "matrix": [
+ 1,
+ 12
+ ],
+ "x": 16.25,
+ "y": 1.5
+ },
+ {
+ "matrix": [
+ 2,
+ 3
+ ],
+ "x": 17.25,
+ "y": 1.5
+ },
+ {
+ "matrix": [
+ 2,
+ 2
+ ],
+ "x": 18.5,
+ "y": 1.5
+ },
+ {
+ "matrix": [
+ 2,
+ 12
+ ],
+ "x": 19.5,
+ "y": 1.5
+ },
+ {
+ "matrix": [
+ 2,
+ 11
+ ],
+ "x": 20.5,
+ "y": 1.5
+ },
+ {
+ "matrix": [
+ 7,
+ 2
+ ],
+ "x": 21.5,
+ "y": 1.5
+ },
+ {
+ "matrix": [
+ 1,
+ 0
+ ],
+ "x": 0,
+ "y": 2.5,
+ "w": 1.5
+ },
+ {
+ "matrix": [
+ 3,
+ 0
+ ],
+ "x": 1.5,
+ "y": 2.5
+ },
+ {
+ "matrix": [
+ 4,
+ 3
+ ],
+ "x": 2.5,
+ "y": 2.5
+ },
+ {
+ "matrix": [
+ 1,
+ 5
+ ],
+ "x": 3.5,
+ "y": 2.5
+ },
+ {
+ "matrix": [
+ 2,
+ 6
+ ],
+ "x": 4.5,
+ "y": 2.5
+ },
+ {
+ "matrix": [
+ 1,
+ 6
+ ],
+ "x": 5.5,
+ "y": 2.5
+ },
+ {
+ "matrix": [
+ 2,
+ 7
+ ],
+ "x": 6.5,
+ "y": 2.5
+ },
+ {
+ "matrix": [
+ 1,
+ 7
+ ],
+ "x": 7.5,
+ "y": 2.5
+ },
+ {
+ "matrix": [
+ 2,
+ 5
+ ],
+ "x": 8.5,
+ "y": 2.5
+ },
+ {
+ "matrix": [
+ 3,
+ 9
+ ],
+ "x": 9.5,
+ "y": 2.5
+ },
+ {
+ "matrix": [
+ 5,
+ 10
+ ],
+ "x": 10.5,
+ "y": 2.5
+ },
+ {
+ "matrix": [
+ 4,
+ 9
+ ],
+ "x": 11.5,
+ "y": 2.5
+ },
+ {
+ "matrix": [
+ 3,
+ 8
+ ],
+ "x": 12.5,
+ "y": 2.5
+ },
+ {
+ "matrix": [
+ 4,
+ 8
+ ],
+ "x": 13.5,
+ "y": 2.5,
+ "w": 1.5
+ },
+ {
+ "matrix": [
+ 1,
+ 2
+ ],
+ "x": 15.25,
+ "y": 2.5
+ },
+ {
+ "matrix": [
+ 1,
+ 11
+ ],
+ "x": 16.25,
+ "y": 2.5
+ },
+ {
+ "matrix": [
+ 1,
+ 3
+ ],
+ "x": 17.25,
+ "y": 2.5
+ },
+ {
+ "matrix": [
+ 3,
+ 12
+ ],
+ "x": 18.5,
+ "y": 2.5
+ },
+ {
+ "matrix": [
+ 3,
+ 11
+ ],
+ "x": 19.5,
+ "y": 2.5
+ },
+ {
+ "matrix": [
+ 3,
+ 2
+ ],
+ "x": 20.5,
+ "y": 2.5
+ },
+ {
+ "matrix": [
+ 6,
+ 12
+ ],
+ "x": 21.5,
+ "y": 2.5
+ },
+ {
+ "matrix": [
+ 1,
+ 15
+ ],
+ "x": 0,
+ "y": 3.5,
+ "w": 1.75
+ },
+ {
+ "matrix": [
+ 4,
+ 0
+ ],
+ "x": 1.75,
+ "y": 3.5
+ },
+ {
+ "matrix": [
+ 6,
+ 3
+ ],
+ "x": 2.75,
+ "y": 3.5
+ },
+ {
+ "matrix": [
+ 4,
+ 5
+ ],
+ "x": 3.75,
+ "y": 3.5
+ },
+ {
+ "matrix": [
+ 3,
+ 6
+ ],
+ "x": 4.75,
+ "y": 3.5
+ },
+ {
+ "matrix": [
+ 4,
+ 6
+ ],
+ "x": 5.75,
+ "y": 3.5
+ },
+ {
+ "matrix": [
+ 3,
+ 7
+ ],
+ "x": 6.75,
+ "y": 3.5
+ },
+ {
+ "matrix": [
+ 4,
+ 7
+ ],
+ "x": 7.75,
+ "y": 3.5
+ },
+ {
+ "matrix": [
+ 3,
+ 5
+ ],
+ "x": 8.75,
+ "y": 3.5
+ },
+ {
+ "matrix": [
+ 6,
+ 9
+ ],
+ "x": 9.75,
+ "y": 3.5
+ },
+ {
+ "matrix": [
+ 3,
+ 10
+ ],
+ "x": 10.75,
+ "y": 3.5
+ },
+ {
+ "matrix": [
+ 4,
+ 10
+ ],
+ "x": 11.75,
+ "y": 3.5
+ },
+ {
+ "matrix": [
+ 6,
+ 13
+ ],
+ "x": 12.75,
+ "y": 3.5
+ },
+ {
+ "matrix": [
+ 5,
+ 8
+ ],
+ "x": 13.75,
+ "y": 3.5,
+ "w": 1.25
+ },
+ {
+ "matrix": [
+ 4,
+ 12
+ ],
+ "x": 18.5,
+ "y": 3.5
+ },
+ {
+ "matrix": [
+ 4,
+ 11
+ ],
+ "x": 19.5,
+ "y": 3.5
+ },
+ {
+ "matrix": [
+ 4,
+ 2
+ ],
+ "x": 20.5,
+ "y": 3.5
+ },
+ {
+ "matrix": [
+ 4,
+ 14
+ ],
+ "x": 21.5,
+ "y": 3.5
+ },
+ {
+ "matrix": [
+ 3,
+ 1
+ ],
+ "x": 0,
+ "y": 4.5,
+ "w": 1.25
+ },
+ {
+ "matrix": [
+ 6,
+ 0
+ ],
+ "x": 1.25,
+ "y": 4.5
+ },
+ {
+ "matrix": [
+ 5,
+ 0
+ ],
+ "x": 2.25,
+ "y": 4.5
+ },
+ {
+ "matrix": [
+ 5,
+ 3
+ ],
+ "x": 3.25,
+ "y": 4.5
+ },
+ {
+ "matrix": [
+ 6,
+ 5
+ ],
+ "x": 4.25,
+ "y": 4.5
+ },
+ {
+ "matrix": [
+ 6,
+ 6
+ ],
+ "x": 5.25,
+ "y": 4.5
+ },
+ {
+ "matrix": [
+ 5,
+ 6
+ ],
+ "x": 6.25,
+ "y": 4.5
+ },
+ {
+ "matrix": [
+ 6,
+ 7
+ ],
+ "x": 7.25,
+ "y": 4.5
+ },
+ {
+ "matrix": [
+ 5,
+ 7
+ ],
+ "x": 8.25,
+ "y": 4.5
+ },
+ {
+ "matrix": [
+ 5,
+ 5
+ ],
+ "x": 9.25,
+ "y": 4.5
+ },
+ {
+ "matrix": [
+ 5,
+ 9
+ ],
+ "x": 10.25,
+ "y": 4.5
+ },
+ {
+ "matrix": [
+ 6,
+ 10
+ ],
+ "x": 11.25,
+ "y": 4.5
+ },
+ {
+ "matrix": [
+ 4,
+ 13
+ ],
+ "x": 12.25,
+ "y": 4.5
+ },
+ {
+ "matrix": [
+ 5,
+ 1
+ ],
+ "x": 13.25,
+ "y": 4.5,
+ "w": 1.75
+ },
+ {
+ "matrix": [
+ 2,
+ 13
+ ],
+ "x": 16.25,
+ "y": 4.5
+ },
+ {
+ "matrix": [
+ 5,
+ 12
+ ],
+ "x": 18.5,
+ "y": 4.5
+ },
+ {
+ "matrix": [
+ 6,
+ 11
+ ],
+ "x": 19.5,
+ "y": 4.5
+ },
+ {
+ "matrix": [
+ 6,
+ 2
+ ],
+ "x": 20.5,
+ "y": 4.5
+ },
+ {
+ "matrix": [
+ 7,
+ 14
+ ],
+ "x": 21.5,
+ "y": 4.5
+ },
+ {
+ "matrix": [
+ 3,
+ 15
+ ],
+ "x": 0,
+ "y": 5.5,
+ "w": 1.5
+ },
+ {
+ "matrix": [
+ 2,
+ 14
+ ],
+ "x": 1.5,
+ "y": 5.5
+ },
+ {
+ "matrix": [
+ 4,
+ 4
+ ],
+ "x": 2.5,
+ "y": 5.5,
+ "w": 1.5
+ },
+ {
+ "matrix": [
+ 2,
+ 4
+ ],
+ "x": 4,
+ "y": 5.5
+ },
+ {
+ "matrix": [
+ 7,
+ 13
+ ],
+ "x": 5,
+ "y": 5.5,
+ "w": 4.75
+ },
+ {
+ "matrix": [
+ 1,
+ 13
+ ],
+ "x": 9.75,
+ "y": 5.5,
+ "w": 1.25
+ },
+ {
+ "matrix": [
+ 6,
+ 4
+ ],
+ "x": 11,
+ "y": 5.5,
+ "w": 1.5
+ },
+ {
+ "matrix": [
+ 7,
+ 12
+ ],
+ "x": 12.5,
+ "y": 5.5
+ },
+ {
+ "matrix": [
+ 5,
+ 15
+ ],
+ "x": 13.5,
+ "y": 5.5,
+ "w": 1.5
+ },
+ {
+ "matrix": [
+ 6,
+ 8
+ ],
+ "x": 15.25,
+ "y": 5.5
+ },
+ {
+ "matrix": [
+ 1,
+ 10
+ ],
+ "x": 16.25,
+ "y": 5.5
+ },
+ {
+ "matrix": [
+ 0,
+ 13
+ ],
+ "x": 17.25,
+ "y": 5.5
+ },
+ {
+ "matrix": [
+ 5,
+ 14
+ ],
+ "x": 18.5,
+ "y": 5.5
+ },
+ {
+ "matrix": [
+ 5,
+ 11
+ ],
+ "x": 19.5,
+ "y": 5.5
+ },
+ {
+ "matrix": [
+ 5,
+ 2
+ ],
+ "x": 20.5,
+ "y": 5.5
+ },
+ {
+ "matrix": [
+ 6,
+ 14
+ ],
+ "x": 21.5,
+ "y": 5.5
+ }
+ ]
},
"LAYOUT_ansi": {
- "layout": [{"x":0, "y":0}, {"x":2, "y":0}, {"x":3, "y":0}, {"x":4, "y":0}, {"x":5, "y":0}, {"x":6.5, "y":0}, {"x":7.5, "y":0}, {"x":8.5, "y":0}, {"x":9.5, "y":0}, {"x":11, "y":0}, {"x":12, "y":0}, {"x":13, "y":0}, {"x":14, "y":0}, {"x":15.25, "y":0}, {"x":16.25, "y":0}, {"x":17.25, "y":0}, {"x":0, "y":1.5}, {"x":1, "y":1.5}, {"x":2, "y":1.5}, {"x":3, "y":1.5}, {"x":4, "y":1.5}, {"x":5, "y":1.5}, {"x":6, "y":1.5}, {"x":7, "y":1.5}, {"x":8, "y":1.5}, {"x":9, "y":1.5}, {"x":10, "y":1.5}, {"x":11, "y":1.5}, {"x":12, "y":1.5}, {"x":13, "y":1.5, "w":2}, {"x":15.25, "y":1.5}, {"x":16.25, "y":1.5}, {"x":17.25, "y":1.5}, {"x":18.5, "y":1.5}, {"x":19.5, "y":1.5}, {"x":20.5, "y":1.5}, {"x":21.5, "y":1.5}, {"x":0, "y":2.5, "w":1.5}, {"x":1.5, "y":2.5}, {"x":2.5, "y":2.5}, {"x":3.5, "y":2.5}, {"x":4.5, "y":2.5}, {"x":5.5, "y":2.5}, {"x":6.5, "y":2.5}, {"x":7.5, "y":2.5}, {"x":8.5, "y":2.5}, {"x":9.5, "y":2.5}, {"x":10.5, "y":2.5}, {"x":11.5, "y":2.5}, {"x":12.5, "y":2.5}, {"x":13.5, "y":2.5, "w":1.5}, {"x":15.25, "y":2.5}, {"x":16.25, "y":2.5}, {"x":17.25, "y":2.5}, {"x":18.5, "y":2.5}, {"x":19.5, "y":2.5}, {"x":20.5, "y":2.5}, {"x":21.5, "y":2.5}, {"x":0, "y":3.5, "w":1.75}, {"x":1.75, "y":3.5}, {"x":2.75, "y":3.5}, {"x":3.75, "y":3.5}, {"x":4.75, "y":3.5}, {"x":5.75, "y":3.5}, {"x":6.75, "y":3.5}, {"x":7.75, "y":3.5}, {"x":8.75, "y":3.5}, {"x":9.75, "y":3.5}, {"x":10.75, "y":3.5}, {"x":11.75, "y":3.5}, {"x":12.75, "y":3.5, "w":2.25}, {"x":18.5, "y":3.5}, {"x":19.5, "y":3.5}, {"x":20.5, "y":3.5}, {"x":21.5, "y":3.5}, {"x":0, "y":4.5, "w":2.25}, {"x":2.25, "y":4.5}, {"x":3.25, "y":4.5}, {"x":4.25, "y":4.5}, {"x":5.25, "y":4.5}, {"x":6.25, "y":4.5}, {"x":7.25, "y":4.5}, {"x":8.25, "y":4.5}, {"x":9.25, "y":4.5}, {"x":10.25, "y":4.5}, {"x":11.25, "y":4.5}, {"x":12.25, "y":4.5, "w":2.75}, {"x":16.25, "y":4.5}, {"x":18.5, "y":4.5}, {"x":19.5, "y":4.5}, {"x":20.5, "y":4.5}, {"x":21.5, "y":4.5, "h":2}, {"x":0, "y":5.5, "w":1.5}, {"x":1.5, "y":5.5}, {"x":2.5, "y":5.5, "w":1.5}, {"x":4, "y":5.5, "w":5.75}, {"x":9.75, "y":5.5, "w":1.25}, {"x":11, "y":5.5, "w":1.5}, {"x":12.5, "y":5.5}, {"x":13.5, "y":5.5, "w":1.5}, {"x":15.25, "y":5.5}, {"x":16.25, "y":5.5}, {"x":17.25, "y":5.5}, {"x":18.5, "y":5.5, "w":2}, {"x":20.5, "y":5.5}]
+ "layout": [
+ {
+ "matrix": [
+ 0,
+ 0
+ ],
+ "x": 0,
+ "y": 0
+ },
+ {
+ "matrix": [
+ 0,
+ 3
+ ],
+ "x": 2,
+ "y": 0
+ },
+ {
+ "matrix": [
+ 7,
+ 3
+ ],
+ "x": 3,
+ "y": 0
+ },
+ {
+ "matrix": [
+ 0,
+ 2
+ ],
+ "x": 4,
+ "y": 0
+ },
+ {
+ "matrix": [
+ 7,
+ 4
+ ],
+ "x": 5,
+ "y": 0
+ },
+ {
+ "matrix": [
+ 0,
+ 8
+ ],
+ "x": 6.5,
+ "y": 0
+ },
+ {
+ "matrix": [
+ 7,
+ 8
+ ],
+ "x": 7.5,
+ "y": 0
+ },
+ {
+ "matrix": [
+ 0,
+ 9
+ ],
+ "x": 8.5,
+ "y": 0
+ },
+ {
+ "matrix": [
+ 7,
+ 9
+ ],
+ "x": 9.5,
+ "y": 0
+ },
+ {
+ "matrix": [
+ 0,
+ 10
+ ],
+ "x": 11,
+ "y": 0
+ },
+ {
+ "matrix": [
+ 7,
+ 10
+ ],
+ "x": 12,
+ "y": 0
+ },
+ {
+ "matrix": [
+ 0,
+ 11
+ ],
+ "x": 13,
+ "y": 0
+ },
+ {
+ "matrix": [
+ 7,
+ 11
+ ],
+ "x": 14,
+ "y": 0
+ },
+ {
+ "matrix": [
+ 0,
+ 12
+ ],
+ "x": 15.25,
+ "y": 0
+ },
+ {
+ "matrix": [
+ 0,
+ 14
+ ],
+ "x": 16.25,
+ "y": 0
+ },
+ {
+ "matrix": [
+ 0,
+ 1
+ ],
+ "x": 17.25,
+ "y": 0
+ },
+ {
+ "matrix": [
+ 7,
+ 0
+ ],
+ "x": 0,
+ "y": 1.5
+ },
+ {
+ "matrix": [
+ 2,
+ 0
+ ],
+ "x": 1,
+ "y": 1.5
+ },
+ {
+ "matrix": [
+ 3,
+ 3
+ ],
+ "x": 2,
+ "y": 1.5
+ },
+ {
+ "matrix": [
+ 0,
+ 5
+ ],
+ "x": 3,
+ "y": 1.5
+ },
+ {
+ "matrix": [
+ 0,
+ 6
+ ],
+ "x": 4,
+ "y": 1.5
+ },
+ {
+ "matrix": [
+ 7,
+ 6
+ ],
+ "x": 5,
+ "y": 1.5
+ },
+ {
+ "matrix": [
+ 0,
+ 7
+ ],
+ "x": 6,
+ "y": 1.5
+ },
+ {
+ "matrix": [
+ 7,
+ 7
+ ],
+ "x": 7,
+ "y": 1.5
+ },
+ {
+ "matrix": [
+ 7,
+ 5
+ ],
+ "x": 8,
+ "y": 1.5
+ },
+ {
+ "matrix": [
+ 2,
+ 9
+ ],
+ "x": 9,
+ "y": 1.5
+ },
+ {
+ "matrix": [
+ 2,
+ 10
+ ],
+ "x": 10,
+ "y": 1.5
+ },
+ {
+ "matrix": [
+ 1,
+ 9
+ ],
+ "x": 11,
+ "y": 1.5
+ },
+ {
+ "matrix": [
+ 2,
+ 8
+ ],
+ "x": 12,
+ "y": 1.5
+ },
+ {
+ "matrix": [
+ 1,
+ 8
+ ],
+ "x": 13,
+ "y": 1.5,
+ "w": 2
+ },
+ {
+ "matrix": [
+ 0,
+ 4
+ ],
+ "x": 15.25,
+ "y": 1.5
+ },
+ {
+ "matrix": [
+ 1,
+ 12
+ ],
+ "x": 16.25,
+ "y": 1.5
+ },
+ {
+ "matrix": [
+ 2,
+ 3
+ ],
+ "x": 17.25,
+ "y": 1.5
+ },
+ {
+ "matrix": [
+ 2,
+ 2
+ ],
+ "x": 18.5,
+ "y": 1.5
+ },
+ {
+ "matrix": [
+ 2,
+ 12
+ ],
+ "x": 19.5,
+ "y": 1.5
+ },
+ {
+ "matrix": [
+ 2,
+ 11
+ ],
+ "x": 20.5,
+ "y": 1.5
+ },
+ {
+ "matrix": [
+ 7,
+ 2
+ ],
+ "x": 21.5,
+ "y": 1.5
+ },
+ {
+ "matrix": [
+ 1,
+ 0
+ ],
+ "x": 0,
+ "y": 2.5,
+ "w": 1.5
+ },
+ {
+ "matrix": [
+ 3,
+ 0
+ ],
+ "x": 1.5,
+ "y": 2.5
+ },
+ {
+ "matrix": [
+ 4,
+ 3
+ ],
+ "x": 2.5,
+ "y": 2.5
+ },
+ {
+ "matrix": [
+ 1,
+ 5
+ ],
+ "x": 3.5,
+ "y": 2.5
+ },
+ {
+ "matrix": [
+ 2,
+ 6
+ ],
+ "x": 4.5,
+ "y": 2.5
+ },
+ {
+ "matrix": [
+ 1,
+ 6
+ ],
+ "x": 5.5,
+ "y": 2.5
+ },
+ {
+ "matrix": [
+ 2,
+ 7
+ ],
+ "x": 6.5,
+ "y": 2.5
+ },
+ {
+ "matrix": [
+ 1,
+ 7
+ ],
+ "x": 7.5,
+ "y": 2.5
+ },
+ {
+ "matrix": [
+ 2,
+ 5
+ ],
+ "x": 8.5,
+ "y": 2.5
+ },
+ {
+ "matrix": [
+ 3,
+ 9
+ ],
+ "x": 9.5,
+ "y": 2.5
+ },
+ {
+ "matrix": [
+ 5,
+ 10
+ ],
+ "x": 10.5,
+ "y": 2.5
+ },
+ {
+ "matrix": [
+ 4,
+ 9
+ ],
+ "x": 11.5,
+ "y": 2.5
+ },
+ {
+ "matrix": [
+ 3,
+ 8
+ ],
+ "x": 12.5,
+ "y": 2.5
+ },
+ {
+ "matrix": [
+ 4,
+ 8
+ ],
+ "x": 13.5,
+ "y": 2.5,
+ "w": 1.5
+ },
+ {
+ "matrix": [
+ 1,
+ 2
+ ],
+ "x": 15.25,
+ "y": 2.5
+ },
+ {
+ "matrix": [
+ 1,
+ 11
+ ],
+ "x": 16.25,
+ "y": 2.5
+ },
+ {
+ "matrix": [
+ 1,
+ 3
+ ],
+ "x": 17.25,
+ "y": 2.5
+ },
+ {
+ "matrix": [
+ 3,
+ 12
+ ],
+ "x": 18.5,
+ "y": 2.5
+ },
+ {
+ "matrix": [
+ 3,
+ 11
+ ],
+ "x": 19.5,
+ "y": 2.5
+ },
+ {
+ "matrix": [
+ 3,
+ 2
+ ],
+ "x": 20.5,
+ "y": 2.5
+ },
+ {
+ "matrix": [
+ 6,
+ 12
+ ],
+ "x": 21.5,
+ "y": 2.5
+ },
+ {
+ "matrix": [
+ 1,
+ 15
+ ],
+ "x": 0,
+ "y": 3.5,
+ "w": 1.75
+ },
+ {
+ "matrix": [
+ 4,
+ 0
+ ],
+ "x": 1.75,
+ "y": 3.5
+ },
+ {
+ "matrix": [
+ 6,
+ 3
+ ],
+ "x": 2.75,
+ "y": 3.5
+ },
+ {
+ "matrix": [
+ 4,
+ 5
+ ],
+ "x": 3.75,
+ "y": 3.5
+ },
+ {
+ "matrix": [
+ 3,
+ 6
+ ],
+ "x": 4.75,
+ "y": 3.5
+ },
+ {
+ "matrix": [
+ 4,
+ 6
+ ],
+ "x": 5.75,
+ "y": 3.5
+ },
+ {
+ "matrix": [
+ 3,
+ 7
+ ],
+ "x": 6.75,
+ "y": 3.5
+ },
+ {
+ "matrix": [
+ 4,
+ 7
+ ],
+ "x": 7.75,
+ "y": 3.5
+ },
+ {
+ "matrix": [
+ 3,
+ 5
+ ],
+ "x": 8.75,
+ "y": 3.5
+ },
+ {
+ "matrix": [
+ 6,
+ 9
+ ],
+ "x": 9.75,
+ "y": 3.5
+ },
+ {
+ "matrix": [
+ 3,
+ 10
+ ],
+ "x": 10.75,
+ "y": 3.5
+ },
+ {
+ "matrix": [
+ 4,
+ 10
+ ],
+ "x": 11.75,
+ "y": 3.5
+ },
+ {
+ "matrix": [
+ 5,
+ 8
+ ],
+ "x": 12.75,
+ "y": 3.5,
+ "w": 2.25
+ },
+ {
+ "matrix": [
+ 4,
+ 12
+ ],
+ "x": 18.5,
+ "y": 3.5
+ },
+ {
+ "matrix": [
+ 4,
+ 11
+ ],
+ "x": 19.5,
+ "y": 3.5
+ },
+ {
+ "matrix": [
+ 4,
+ 2
+ ],
+ "x": 20.5,
+ "y": 3.5
+ },
+ {
+ "matrix": [
+ 4,
+ 14
+ ],
+ "x": 21.5,
+ "y": 3.5
+ },
+ {
+ "matrix": [
+ 3,
+ 1
+ ],
+ "x": 0,
+ "y": 4.5,
+ "w": 2.25
+ },
+ {
+ "matrix": [
+ 5,
+ 0
+ ],
+ "x": 2.25,
+ "y": 4.5
+ },
+ {
+ "matrix": [
+ 5,
+ 3
+ ],
+ "x": 3.25,
+ "y": 4.5
+ },
+ {
+ "matrix": [
+ 6,
+ 5
+ ],
+ "x": 4.25,
+ "y": 4.5
+ },
+ {
+ "matrix": [
+ 6,
+ 6
+ ],
+ "x": 5.25,
+ "y": 4.5
+ },
+ {
+ "matrix": [
+ 5,
+ 6
+ ],
+ "x": 6.25,
+ "y": 4.5
+ },
+ {
+ "matrix": [
+ 6,
+ 7
+ ],
+ "x": 7.25,
+ "y": 4.5
+ },
+ {
+ "matrix": [
+ 5,
+ 7
+ ],
+ "x": 8.25,
+ "y": 4.5
+ },
+ {
+ "matrix": [
+ 5,
+ 5
+ ],
+ "x": 9.25,
+ "y": 4.5
+ },
+ {
+ "matrix": [
+ 5,
+ 9
+ ],
+ "x": 10.25,
+ "y": 4.5
+ },
+ {
+ "matrix": [
+ 6,
+ 10
+ ],
+ "x": 11.25,
+ "y": 4.5
+ },
+ {
+ "matrix": [
+ 5,
+ 1
+ ],
+ "x": 12.25,
+ "y": 4.5,
+ "w": 2.75
+ },
+ {
+ "matrix": [
+ 2,
+ 13
+ ],
+ "x": 16.25,
+ "y": 4.5
+ },
+ {
+ "matrix": [
+ 5,
+ 12
+ ],
+ "x": 18.5,
+ "y": 4.5
+ },
+ {
+ "matrix": [
+ 6,
+ 11
+ ],
+ "x": 19.5,
+ "y": 4.5
+ },
+ {
+ "matrix": [
+ 6,
+ 2
+ ],
+ "x": 20.5,
+ "y": 4.5
+ },
+ {
+ "matrix": [
+ 7,
+ 14
+ ],
+ "x": 21.5,
+ "y": 4.5,
+ "h": 2
+ },
+ {
+ "matrix": [
+ 3,
+ 15
+ ],
+ "x": 0,
+ "y": 5.5,
+ "w": 1.5
+ },
+ {
+ "matrix": [
+ 2,
+ 14
+ ],
+ "x": 1.5,
+ "y": 5.5
+ },
+ {
+ "matrix": [
+ 4,
+ 4
+ ],
+ "x": 2.5,
+ "y": 5.5,
+ "w": 1.5
+ },
+ {
+ "matrix": [
+ 7,
+ 13
+ ],
+ "x": 4,
+ "y": 5.5,
+ "w": 5.75
+ },
+ {
+ "matrix": [
+ 1,
+ 13
+ ],
+ "x": 9.75,
+ "y": 5.5,
+ "w": 1.25
+ },
+ {
+ "matrix": [
+ 6,
+ 4
+ ],
+ "x": 11,
+ "y": 5.5,
+ "w": 1.5
+ },
+ {
+ "matrix": [
+ 7,
+ 12
+ ],
+ "x": 12.5,
+ "y": 5.5
+ },
+ {
+ "matrix": [
+ 5,
+ 15
+ ],
+ "x": 13.5,
+ "y": 5.5,
+ "w": 1.5
+ },
+ {
+ "matrix": [
+ 6,
+ 8
+ ],
+ "x": 15.25,
+ "y": 5.5
+ },
+ {
+ "matrix": [
+ 1,
+ 10
+ ],
+ "x": 16.25,
+ "y": 5.5
+ },
+ {
+ "matrix": [
+ 0,
+ 13
+ ],
+ "x": 17.25,
+ "y": 5.5
+ },
+ {
+ "matrix": [
+ 5,
+ 11
+ ],
+ "x": 18.5,
+ "y": 5.5,
+ "w": 2
+ },
+ {
+ "matrix": [
+ 5,
+ 2
+ ],
+ "x": 20.5,
+ "y": 5.5
+ }
+ ]
},
"LAYOUT_iso": {
- "layout": [{"x":0, "y":0}, {"x":2, "y":0}, {"x":3, "y":0}, {"x":4, "y":0}, {"x":5, "y":0}, {"x":6.5, "y":0}, {"x":7.5, "y":0}, {"x":8.5, "y":0}, {"x":9.5, "y":0}, {"x":11, "y":0}, {"x":12, "y":0}, {"x":13, "y":0}, {"x":14, "y":0}, {"x":15.25, "y":0}, {"x":16.25, "y":0}, {"x":17.25, "y":0}, {"x":0, "y":1.5}, {"x":1, "y":1.5}, {"x":2, "y":1.5}, {"x":3, "y":1.5}, {"x":4, "y":1.5}, {"x":5, "y":1.5}, {"x":6, "y":1.5}, {"x":7, "y":1.5}, {"x":8, "y":1.5}, {"x":9, "y":1.5}, {"x":10, "y":1.5}, {"x":11, "y":1.5}, {"x":12, "y":1.5}, {"x":13, "y":1.5, "w":2}, {"x":15.25, "y":1.5}, {"x":16.25, "y":1.5}, {"x":17.25, "y":1.5}, {"x":18.5, "y":1.5}, {"x":19.5, "y":1.5}, {"x":20.5, "y":1.5}, {"x":21.5, "y":1.5}, {"x":0, "y":2.5, "w":1.5}, {"x":1.5, "y":2.5}, {"x":2.5, "y":2.5}, {"x":3.5, "y":2.5}, {"x":4.5, "y":2.5}, {"x":5.5, "y":2.5}, {"x":6.5, "y":2.5}, {"x":7.5, "y":2.5}, {"x":8.5, "y":2.5}, {"x":9.5, "y":2.5}, {"x":10.5, "y":2.5}, {"x":11.5, "y":2.5}, {"x":12.5, "y":2.5}, {"x":13.75, "y":2.5, "w":1.25, "h":2}, {"x":15.25, "y":2.5}, {"x":16.25, "y":2.5}, {"x":17.25, "y":2.5}, {"x":18.5, "y":2.5}, {"x":19.5, "y":2.5}, {"x":20.5, "y":2.5}, {"x":21.5, "y":2.5}, {"x":0, "y":3.5, "w":1.75}, {"x":1.75, "y":3.5}, {"x":2.75, "y":3.5}, {"x":3.75, "y":3.5}, {"x":4.75, "y":3.5}, {"x":5.75, "y":3.5}, {"x":6.75, "y":3.5}, {"x":7.75, "y":3.5}, {"x":8.75, "y":3.5}, {"x":9.75, "y":3.5}, {"x":10.75, "y":3.5}, {"x":11.75, "y":3.5}, {"x":12.75, "y":3.5}, {"x":18.5, "y":3.5}, {"x":19.5, "y":3.5}, {"x":20.5, "y":3.5}, {"x":21.5, "y":3.5}, {"x":0, "y":4.5, "w":1.25}, {"x":1.25, "y":4.5}, {"x":2.25, "y":4.5}, {"x":3.25, "y":4.5}, {"x":4.25, "y":4.5}, {"x":5.25, "y":4.5}, {"x":6.25, "y":4.5}, {"x":7.25, "y":4.5}, {"x":8.25, "y":4.5}, {"x":9.25, "y":4.5}, {"x":10.25, "y":4.5}, {"x":11.25, "y":4.5}, {"x":12.25, "y":4.5, "w":2.75}, {"x":16.25, "y":4.5}, {"x":18.5, "y":4.5}, {"x":19.5, "y":4.5}, {"x":20.5, "y":4.5}, {"x":21.5, "y":4.5, "h":2}, {"x":0, "y":5.5, "w":1.5}, {"x":1.5, "y":5.5}, {"x":2.5, "y":5.5, "w":1.5}, {"x":4, "y":5.5, "w":5.75}, {"x":9.75, "y":5.5, "w":1.25}, {"x":11, "y":5.5, "w":1.5}, {"x":12.5, "y":5.5}, {"x":13.5, "y":5.5, "w":1.5}, {"x":15.25, "y":5.5}, {"x":16.25, "y":5.5}, {"x":17.25, "y":5.5}, {"x":18.5, "y":5.5, "w":2}, {"x":20.5, "y":5.5}]
+ "layout": [
+ {
+ "matrix": [
+ 0,
+ 0
+ ],
+ "x": 0,
+ "y": 0
+ },
+ {
+ "matrix": [
+ 0,
+ 3
+ ],
+ "x": 2,
+ "y": 0
+ },
+ {
+ "matrix": [
+ 7,
+ 3
+ ],
+ "x": 3,
+ "y": 0
+ },
+ {
+ "matrix": [
+ 0,
+ 2
+ ],
+ "x": 4,
+ "y": 0
+ },
+ {
+ "matrix": [
+ 7,
+ 4
+ ],
+ "x": 5,
+ "y": 0
+ },
+ {
+ "matrix": [
+ 0,
+ 8
+ ],
+ "x": 6.5,
+ "y": 0
+ },
+ {
+ "matrix": [
+ 7,
+ 8
+ ],
+ "x": 7.5,
+ "y": 0
+ },
+ {
+ "matrix": [
+ 0,
+ 9
+ ],
+ "x": 8.5,
+ "y": 0
+ },
+ {
+ "matrix": [
+ 7,
+ 9
+ ],
+ "x": 9.5,
+ "y": 0
+ },
+ {
+ "matrix": [
+ 0,
+ 10
+ ],
+ "x": 11,
+ "y": 0
+ },
+ {
+ "matrix": [
+ 7,
+ 10
+ ],
+ "x": 12,
+ "y": 0
+ },
+ {
+ "matrix": [
+ 0,
+ 11
+ ],
+ "x": 13,
+ "y": 0
+ },
+ {
+ "matrix": [
+ 7,
+ 11
+ ],
+ "x": 14,
+ "y": 0
+ },
+ {
+ "matrix": [
+ 0,
+ 12
+ ],
+ "x": 15.25,
+ "y": 0
+ },
+ {
+ "matrix": [
+ 0,
+ 14
+ ],
+ "x": 16.25,
+ "y": 0
+ },
+ {
+ "matrix": [
+ 0,
+ 1
+ ],
+ "x": 17.25,
+ "y": 0
+ },
+ {
+ "matrix": [
+ 7,
+ 0
+ ],
+ "x": 0,
+ "y": 1.5
+ },
+ {
+ "matrix": [
+ 2,
+ 0
+ ],
+ "x": 1,
+ "y": 1.5
+ },
+ {
+ "matrix": [
+ 3,
+ 3
+ ],
+ "x": 2,
+ "y": 1.5
+ },
+ {
+ "matrix": [
+ 0,
+ 5
+ ],
+ "x": 3,
+ "y": 1.5
+ },
+ {
+ "matrix": [
+ 0,
+ 6
+ ],
+ "x": 4,
+ "y": 1.5
+ },
+ {
+ "matrix": [
+ 7,
+ 6
+ ],
+ "x": 5,
+ "y": 1.5
+ },
+ {
+ "matrix": [
+ 0,
+ 7
+ ],
+ "x": 6,
+ "y": 1.5
+ },
+ {
+ "matrix": [
+ 7,
+ 7
+ ],
+ "x": 7,
+ "y": 1.5
+ },
+ {
+ "matrix": [
+ 7,
+ 5
+ ],
+ "x": 8,
+ "y": 1.5
+ },
+ {
+ "matrix": [
+ 2,
+ 9
+ ],
+ "x": 9,
+ "y": 1.5
+ },
+ {
+ "matrix": [
+ 2,
+ 10
+ ],
+ "x": 10,
+ "y": 1.5
+ },
+ {
+ "matrix": [
+ 1,
+ 9
+ ],
+ "x": 11,
+ "y": 1.5
+ },
+ {
+ "matrix": [
+ 2,
+ 8
+ ],
+ "x": 12,
+ "y": 1.5
+ },
+ {
+ "matrix": [
+ 1,
+ 8
+ ],
+ "x": 13,
+ "y": 1.5,
+ "w": 2
+ },
+ {
+ "matrix": [
+ 0,
+ 4
+ ],
+ "x": 15.25,
+ "y": 1.5
+ },
+ {
+ "matrix": [
+ 1,
+ 12
+ ],
+ "x": 16.25,
+ "y": 1.5
+ },
+ {
+ "matrix": [
+ 2,
+ 3
+ ],
+ "x": 17.25,
+ "y": 1.5
+ },
+ {
+ "matrix": [
+ 2,
+ 2
+ ],
+ "x": 18.5,
+ "y": 1.5
+ },
+ {
+ "matrix": [
+ 2,
+ 12
+ ],
+ "x": 19.5,
+ "y": 1.5
+ },
+ {
+ "matrix": [
+ 2,
+ 11
+ ],
+ "x": 20.5,
+ "y": 1.5
+ },
+ {
+ "matrix": [
+ 7,
+ 2
+ ],
+ "x": 21.5,
+ "y": 1.5
+ },
+ {
+ "matrix": [
+ 1,
+ 0
+ ],
+ "x": 0,
+ "y": 2.5,
+ "w": 1.5
+ },
+ {
+ "matrix": [
+ 3,
+ 0
+ ],
+ "x": 1.5,
+ "y": 2.5
+ },
+ {
+ "matrix": [
+ 4,
+ 3
+ ],
+ "x": 2.5,
+ "y": 2.5
+ },
+ {
+ "matrix": [
+ 1,
+ 5
+ ],
+ "x": 3.5,
+ "y": 2.5
+ },
+ {
+ "matrix": [
+ 2,
+ 6
+ ],
+ "x": 4.5,
+ "y": 2.5
+ },
+ {
+ "matrix": [
+ 1,
+ 6
+ ],
+ "x": 5.5,
+ "y": 2.5
+ },
+ {
+ "matrix": [
+ 2,
+ 7
+ ],
+ "x": 6.5,
+ "y": 2.5
+ },
+ {
+ "matrix": [
+ 1,
+ 7
+ ],
+ "x": 7.5,
+ "y": 2.5
+ },
+ {
+ "matrix": [
+ 2,
+ 5
+ ],
+ "x": 8.5,
+ "y": 2.5
+ },
+ {
+ "matrix": [
+ 3,
+ 9
+ ],
+ "x": 9.5,
+ "y": 2.5
+ },
+ {
+ "matrix": [
+ 5,
+ 10
+ ],
+ "x": 10.5,
+ "y": 2.5
+ },
+ {
+ "matrix": [
+ 4,
+ 9
+ ],
+ "x": 11.5,
+ "y": 2.5
+ },
+ {
+ "matrix": [
+ 3,
+ 8
+ ],
+ "x": 12.5,
+ "y": 2.5
+ },
+ {
+ "matrix": [
+ 5,
+ 8
+ ],
+ "x": 13.75,
+ "y": 2.5,
+ "w": 1.25,
+ "h": 2
+ },
+ {
+ "matrix": [
+ 1,
+ 2
+ ],
+ "x": 15.25,
+ "y": 2.5
+ },
+ {
+ "matrix": [
+ 1,
+ 11
+ ],
+ "x": 16.25,
+ "y": 2.5
+ },
+ {
+ "matrix": [
+ 1,
+ 3
+ ],
+ "x": 17.25,
+ "y": 2.5
+ },
+ {
+ "matrix": [
+ 3,
+ 12
+ ],
+ "x": 18.5,
+ "y": 2.5
+ },
+ {
+ "matrix": [
+ 3,
+ 11
+ ],
+ "x": 19.5,
+ "y": 2.5
+ },
+ {
+ "matrix": [
+ 3,
+ 2
+ ],
+ "x": 20.5,
+ "y": 2.5
+ },
+ {
+ "matrix": [
+ 6,
+ 12
+ ],
+ "x": 21.5,
+ "y": 2.5
+ },
+ {
+ "matrix": [
+ 1,
+ 15
+ ],
+ "x": 0,
+ "y": 3.5,
+ "w": 1.75
+ },
+ {
+ "matrix": [
+ 4,
+ 0
+ ],
+ "x": 1.75,
+ "y": 3.5
+ },
+ {
+ "matrix": [
+ 6,
+ 3
+ ],
+ "x": 2.75,
+ "y": 3.5
+ },
+ {
+ "matrix": [
+ 4,
+ 5
+ ],
+ "x": 3.75,
+ "y": 3.5
+ },
+ {
+ "matrix": [
+ 3,
+ 6
+ ],
+ "x": 4.75,
+ "y": 3.5
+ },
+ {
+ "matrix": [
+ 4,
+ 6
+ ],
+ "x": 5.75,
+ "y": 3.5
+ },
+ {
+ "matrix": [
+ 3,
+ 7
+ ],
+ "x": 6.75,
+ "y": 3.5
+ },
+ {
+ "matrix": [
+ 4,
+ 7
+ ],
+ "x": 7.75,
+ "y": 3.5
+ },
+ {
+ "matrix": [
+ 3,
+ 5
+ ],
+ "x": 8.75,
+ "y": 3.5
+ },
+ {
+ "matrix": [
+ 6,
+ 9
+ ],
+ "x": 9.75,
+ "y": 3.5
+ },
+ {
+ "matrix": [
+ 3,
+ 10
+ ],
+ "x": 10.75,
+ "y": 3.5
+ },
+ {
+ "matrix": [
+ 4,
+ 10
+ ],
+ "x": 11.75,
+ "y": 3.5
+ },
+ {
+ "matrix": [
+ 6,
+ 13
+ ],
+ "x": 12.75,
+ "y": 3.5
+ },
+ {
+ "matrix": [
+ 4,
+ 12
+ ],
+ "x": 18.5,
+ "y": 3.5
+ },
+ {
+ "matrix": [
+ 4,
+ 11
+ ],
+ "x": 19.5,
+ "y": 3.5
+ },
+ {
+ "matrix": [
+ 4,
+ 2
+ ],
+ "x": 20.5,
+ "y": 3.5
+ },
+ {
+ "matrix": [
+ 4,
+ 14
+ ],
+ "x": 21.5,
+ "y": 3.5
+ },
+ {
+ "matrix": [
+ 3,
+ 1
+ ],
+ "x": 0,
+ "y": 4.5,
+ "w": 1.25
+ },
+ {
+ "matrix": [
+ 6,
+ 0
+ ],
+ "x": 1.25,
+ "y": 4.5
+ },
+ {
+ "matrix": [
+ 5,
+ 0
+ ],
+ "x": 2.25,
+ "y": 4.5
+ },
+ {
+ "matrix": [
+ 5,
+ 3
+ ],
+ "x": 3.25,
+ "y": 4.5
+ },
+ {
+ "matrix": [
+ 6,
+ 5
+ ],
+ "x": 4.25,
+ "y": 4.5
+ },
+ {
+ "matrix": [
+ 6,
+ 6
+ ],
+ "x": 5.25,
+ "y": 4.5
+ },
+ {
+ "matrix": [
+ 5,
+ 6
+ ],
+ "x": 6.25,
+ "y": 4.5
+ },
+ {
+ "matrix": [
+ 6,
+ 7
+ ],
+ "x": 7.25,
+ "y": 4.5
+ },
+ {
+ "matrix": [
+ 5,
+ 7
+ ],
+ "x": 8.25,
+ "y": 4.5
+ },
+ {
+ "matrix": [
+ 5,
+ 5
+ ],
+ "x": 9.25,
+ "y": 4.5
+ },
+ {
+ "matrix": [
+ 5,
+ 9
+ ],
+ "x": 10.25,
+ "y": 4.5
+ },
+ {
+ "matrix": [
+ 6,
+ 10
+ ],
+ "x": 11.25,
+ "y": 4.5
+ },
+ {
+ "matrix": [
+ 5,
+ 1
+ ],
+ "x": 12.25,
+ "y": 4.5,
+ "w": 2.75
+ },
+ {
+ "matrix": [
+ 2,
+ 13
+ ],
+ "x": 16.25,
+ "y": 4.5
+ },
+ {
+ "matrix": [
+ 5,
+ 12
+ ],
+ "x": 18.5,
+ "y": 4.5
+ },
+ {
+ "matrix": [
+ 6,
+ 11
+ ],
+ "x": 19.5,
+ "y": 4.5
+ },
+ {
+ "matrix": [
+ 6,
+ 2
+ ],
+ "x": 20.5,
+ "y": 4.5
+ },
+ {
+ "matrix": [
+ 7,
+ 14
+ ],
+ "x": 21.5,
+ "y": 4.5,
+ "h": 2
+ },
+ {
+ "matrix": [
+ 3,
+ 15
+ ],
+ "x": 0,
+ "y": 5.5,
+ "w": 1.5
+ },
+ {
+ "matrix": [
+ 2,
+ 14
+ ],
+ "x": 1.5,
+ "y": 5.5
+ },
+ {
+ "matrix": [
+ 4,
+ 4
+ ],
+ "x": 2.5,
+ "y": 5.5,
+ "w": 1.5
+ },
+ {
+ "matrix": [
+ 7,
+ 13
+ ],
+ "x": 4,
+ "y": 5.5,
+ "w": 5.75
+ },
+ {
+ "matrix": [
+ 1,
+ 13
+ ],
+ "x": 9.75,
+ "y": 5.5,
+ "w": 1.25
+ },
+ {
+ "matrix": [
+ 6,
+ 4
+ ],
+ "x": 11,
+ "y": 5.5,
+ "w": 1.5
+ },
+ {
+ "matrix": [
+ 7,
+ 12
+ ],
+ "x": 12.5,
+ "y": 5.5
+ },
+ {
+ "matrix": [
+ 5,
+ 15
+ ],
+ "x": 13.5,
+ "y": 5.5,
+ "w": 1.5
+ },
+ {
+ "matrix": [
+ 6,
+ 8
+ ],
+ "x": 15.25,
+ "y": 5.5
+ },
+ {
+ "matrix": [
+ 1,
+ 10
+ ],
+ "x": 16.25,
+ "y": 5.5
+ },
+ {
+ "matrix": [
+ 0,
+ 13
+ ],
+ "x": 17.25,
+ "y": 5.5
+ },
+ {
+ "matrix": [
+ 5,
+ 11
+ ],
+ "x": 18.5,
+ "y": 5.5,
+ "w": 2
+ },
+ {
+ "matrix": [
+ 5,
+ 2
+ ],
+ "x": 20.5,
+ "y": 5.5
+ }
+ ]
}
}
}
diff --git a/keyboards/unicomp/spacesaver_m_post_2013/overnumpad_1xb/config.h b/keyboards/unicomp/spacesaver_m_post_2013/overnumpad_1xb/config.h
index 88eb8c2c51..71e60e9cfe 100644
--- a/keyboards/unicomp/spacesaver_m_post_2013/overnumpad_1xb/config.h
+++ b/keyboards/unicomp/spacesaver_m_post_2013/overnumpad_1xb/config.h
@@ -15,41 +15,17 @@
*/
#pragma once
+#define DEF_SERIAL_NUMBER "purdea.ro:overnumpad_controller"
-#define SERIAL_NUMBER "purdea.ro:overnumpad_controller"
-
-/*
- * Keyboard Matrix Assignments
- *
- * Change this to how you wired your keyboard
- * COLS: AVR pins used for columns, left to right
- * ROWS: AVR pins used for rows, top to bottom
- * DIODE_DIRECTION: COL2ROW = COL = Anode (+), ROW = Cathode (-, marked on diode)
- * ROW2COL = ROW = Anode (+), COL = Cathode (-, marked on diode)
- *
- */
-
-// All pins in order from left-to-right, as seen on the keyboard:
-// C3, C2, C1, C0, A3, A4, A5, A6, A7, C4, C5, B0, B1, B10, B12, B13, B14, B15, C6, C7, C8, C9, A8, A9, A10,
-// On this chip A10, B10 have stronger pull-ups, so it's better to avoid them if possible.
-
-// On this keyboard the right-most pin is not used, so that is A10.
-// On this keyboard the right-most 8 pins (excluding the unused pin) are routed on the bottom.
-
-#define MATRIX_COL_PINS { C3, C2, C1, C0, A3, A4, A5, A6, A7, C4, C5, B0, B1, B10, B12, B13 }
-#define MATRIX_ROW_PINS { B14, B15, C6, C7, C8, C9, A8, A9 }
-
-/* COL2ROW, ROW2COL*/
-#define DIODE_DIRECTION ROW2COL
-
-/* define if matrix has ghost (lacks anti-ghosting diodes) */
-#define MATRIX_HAS_GHOST
+#ifndef SERIAL_NUMBER
+#define SERIAL_NUMBER DEF_SERIAL_NUMBER
+#endif
#define STM32_HSECLK 16000000
#define SOLENOID_PIN B5
#define HAPTIC_ENABLE_PIN C13
-#define SOLENOID_DEFAULT_DWELL 4
+#define SOLENOID_DEFAULT_DWELL 20
#define SOLENOID_MIN_DWELL 4
#define HAPTIC_OFF_IN_LOW_POWER 1
#define NO_HAPTIC_MOD
diff --git a/keyboards/unicomp/spacesaver_m_post_2013/overnumpad_1xb/info.json b/keyboards/unicomp/spacesaver_m_post_2013/overnumpad_1xb/info.json
new file mode 100644
index 0000000000..cf25addc9e
--- /dev/null
+++ b/keyboards/unicomp/spacesaver_m_post_2013/overnumpad_1xb/info.json
@@ -0,0 +1,18 @@
+{
+ "keyboard_name": "Unicomp Spacesaver M (post-2013)",
+ "manufacturer": "Unicomp/Purdea Andrei",
+ "url": "https://github.com/purdeaandrei/overnumpad_controller_1xb",
+ "maintainer": "purdeaandrei",
+ "indicators": {
+ "caps_lock": "C12"
+ },
+ "processor": "STM32F446", // RET6
+ "bootloader": "stm32-dfu",
+ "diode_direction": "ROW2COL",
+ "matrix_pins": {
+ // The controller to membrane interface has pads left-to-right, as seen on the keyboard, matching
+ // the order listed below: all columns followed by all rows, (also followed by unused gpio "A10"):
+ "cols": ["C3", "C2", "C1", "C0", "A3", "A4", "A5", "A6", "A7", "C4", "C5", "B0", "B1", "B10", "B12", "B13"],
+ "rows": ["B14", "B15", "C6", "C7", "C8", "C9", "A8", "A9"]
+ }
+}
diff --git a/keyboards/unicomp/spacesaver_m_post_2013/overnumpad_1xb/overnumpad_1xb.c b/keyboards/unicomp/spacesaver_m_post_2013/overnumpad_1xb/overnumpad_1xb.c
index eda367804d..f0c1161cfe 100644
--- a/keyboards/unicomp/spacesaver_m_post_2013/overnumpad_1xb/overnumpad_1xb.c
+++ b/keyboards/unicomp/spacesaver_m_post_2013/overnumpad_1xb/overnumpad_1xb.c
@@ -14,18 +14,15 @@
* along with this program. If not, see <http://www.gnu.org/licenses/>.
*/
-#include "overnumpad_1xb.h"
+#include "quantum.h"
void keyboard_post_init_kb(void)
{
// Led pins:
- // C12 is the left-most led, normally Num Lock, but on Spacesaver M it's Caps Lock. Configured in config.h
+ // C12 is the left-most led, normally Num Lock, but on Spacesaver M it's Caps Lock. Configured in info.json
setPinOutput(C11); // middle led, always off on Spacesaver M
writePin(C11, 0);
setPinOutput(C10); // right-most led, normally Scroll Lock, but on Spacesaver M indicates function layer
-
- //debug_enable=true;
- //debug_matrix=true;
}
diff --git a/keyboards/unicomp/spacesaver_m_post_2013/overnumpad_1xb/overnumpad_1xb.h b/keyboards/unicomp/spacesaver_m_post_2013/overnumpad_1xb/overnumpad_1xb.h
deleted file mode 100644
index faffbcd4ec..0000000000
--- a/keyboards/unicomp/spacesaver_m_post_2013/overnumpad_1xb/overnumpad_1xb.h
+++ /dev/null
@@ -1,88 +0,0 @@
-/* Copyright 2020 Purdea Andrei
- *
- * 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"
-
-/* This is a shortcut to help you visually see your layout.
- *
- * The first section contains all of the arguments representing the physical
- * layout of the board and position of the keys.
- *
- * The second converts the arguments into a two-dimensional array which
- * represents the switch matrix.
- */
-
-#define LAYOUT_all( \
- k_esc, k_f1, k_f2, k_f3, k_f4, k_f5, k_f6, k_f7, k_f8, k_f9, k_f10, k_f11, k_f12, k_prscr, k_scrl, k_pause, \
- k_tild, k_1, k_2, k_3, k_4, k_5, k_6, k_7, k_8, k_9, k_0, k_minus, k_equals, k_bsp_hidden, k_backspace, k_ins, k_home, k_pgup, kp_nl, kp_div, kp_mult, kp_minus, \
- k_tab, k_q, k_w, k_e, k_r, k_t, k_y, k_u, k_i, k_o, k_p, k_squarebrop, k_squarebrcl, k_backsl, k_del, k_end, k_pgdn, kp_7, kp_8, kp_9, kp_plus, \
- k_caps, k_a, k_s, k_d, k_f, k_g, k_h, k_j, k_k, k_l, k_semicolon, k_singlequote, k_nuhs,k_return, kp_4, kp_5, kp_6, kp_plus_hidden, \
- k_lshift,k_nubs,k_z, k_x, k_c, k_v, k_b, k_n, k_m, k_cm,k_period, k_fwslash, k_rshift_hidden, k_rshift, k_up, kp_1, kp_2, kp_3, kp_enter, \
- k_lctrl, k_lwin, k_lalt, k_code, k_space, k_1_d, k_6_4, k_rmenu, k_rctrl, k_left, k_down, k_right, kp_0_hidden, kp_0, kp_dot, kp_enter_hidden \
-) \
-{ \
- /* 0 1 2 3 4 5 6 7 8 9 A B C D E F */ \
- /* 0 */ { k_esc, k_pause, k_f3, k_f1, k_ins, k_3, k_4, k_6, k_f5, k_f7, k_f9, k_f11, k_prscr, k_right, k_scrl, KC_NO }, \
- /* 1 */ { k_tab, KC_NO, k_del, k_pgdn, KC_NO, k_e, k_t, k_u, k_backspace, k_minus, k_down, k_end, k_home, k_1_d, KC_NO, k_caps }, \
- /* 2 */ { k_1, k_bsp_hidden, kp_nl, k_pgup, k_code, k_i, k_r, k_y, k_equals, k_9, k_0, kp_mult, kp_div, k_up, k_lwin, KC_NO }, \
- /* 3 */ { k_q, k_lshift, kp_9, k_2, KC_NO, k_k, k_f, k_h, k_squarebrcl, k_o, k_semicolon, kp_8, kp_7, KC_NO, KC_NO, k_lctrl }, \
- /* 4 */ { k_a, KC_NO, kp_6, k_w, k_lalt, k_d, k_g, k_j, k_backsl, k_squarebrop, k_singlequote, kp_5, kp_4, k_rshift_hidden, kp_plus_hidden, KC_NO }, \
- /* 5 */ { k_z, k_rshift, kp_dot, k_x, KC_NO, k_cm, k_b, k_m, k_return, k_period, k_p, kp_0, kp_1, KC_NO, kp_0_hidden, k_rctrl }, \
- /* 6 */ { k_nubs, KC_NO, kp_3, k_s, k_6_4, k_c, k_v, k_n, k_left, k_l, k_fwslash, kp_2, kp_plus, k_nuhs, kp_enter_hidden, KC_NO }, \
- /* 7 */ { k_tild, KC_NO, kp_minus, k_f2, k_f4, k_8, k_5, k_7, k_f6, k_f8, k_f10, k_f12, k_rmenu, k_space, kp_enter, KC_NO } \
-}
-
-#define LAYOUT_ansi( \
- k_esc, k_f1, k_f2, k_f3, k_f4, k_f5, k_f6, k_f7, k_f8, k_f9, k_f10, k_f11, k_f12, k_prscr, k_scrl, k_pause, \
- k_tild, k_1, k_2, k_3, k_4, k_5, k_6, k_7, k_8, k_9, k_0, k_minus, k_equals, k_backspace, k_ins, k_home, k_pgup, kp_nl, kp_div, kp_mult, kp_minus, \
- k_tab, k_q, k_w, k_e, k_r, k_t, k_y, k_u, k_i, k_o, k_p, k_squarebrop, k_squarebrcl, k_backsl, k_del, k_end, k_pgdn, kp_7, kp_8, kp_9, kp_plus, \
- k_caps, k_a, k_s, k_d, k_f, k_g, k_h, k_j, k_k, k_l, k_semicolon, k_singlequote, k_return, kp_4, kp_5, kp_6, kp_plus_hidden, \
- k_lshift, k_z, k_x, k_c, k_v, k_b, k_n, k_m, k_cm,k_period, k_fwslash, k_rshift, k_up, kp_1, kp_2, kp_3, kp_enter, \
- k_lctrl, k_lwin, k_lalt, k_space, k_1_d, k_6_4, k_rmenu, k_rctrl, k_left, k_down, k_right, kp_0, kp_dot \
-) \
-{ \
- /* 0 1 2 3 4 5 6 7 8 9 A B C D E F */ \
- /* 0 */ { k_esc, k_pause, k_f3, k_f1, k_ins, k_3, k_4, k_6, k_f5, k_f7, k_f9, k_f11, k_prscr, k_right, k_scrl, KC_NO }, \
- /* 1 */ { k_tab, KC_NO, k_del, k_pgdn, KC_NO, k_e, k_t, k_u, k_backspace, k_minus, k_down, k_end, k_home, k_1_d, KC_NO, k_caps }, \
- /* 2 */ { k_1, KC_NO, kp_nl, k_pgup, KC_NO, k_i, k_r, k_y, k_equals, k_9, k_0, kp_mult, kp_div, k_up, k_lwin, KC_NO }, \
- /* 3 */ { k_q, k_lshift, kp_9, k_2, KC_NO, k_k, k_f, k_h, k_squarebrcl, k_o, k_semicolon, kp_8, kp_7, KC_NO, KC_NO, k_lctrl }, \
- /* 4 */ { k_a, KC_NO, kp_6, k_w, k_lalt, k_d, k_g, k_j, k_backsl, k_squarebrop, k_singlequote, kp_5, kp_4, KC_NO, kp_plus_hidden, KC_NO }, \
- /* 5 */ { k_z, k_rshift, kp_dot, k_x, KC_NO, k_cm, k_b, k_m, k_return, k_period, k_p, kp_0, kp_1, KC_NO, KC_NO, k_rctrl }, \
- /* 6 */ { KC_NO, KC_NO, kp_3, k_s, k_6_4, k_c, k_v, k_n, k_left, k_l, k_fwslash, kp_2, kp_plus, KC_NO, KC_NO, KC_NO }, \
- /* 7 */ { k_tild, KC_NO, kp_minus, k_f2, k_f4, k_8, k_5, k_7, k_f6, k_f8, k_f10, k_f12, k_rmenu, k_space, kp_enter, KC_NO } \
-}
-
-#define LAYOUT_iso( \
- k_esc, k_f1, k_f2, k_f3, k_f4, k_f5, k_f6, k_f7, k_f8, k_f9, k_f10, k_f11, k_f12, k_prscr, k_scrl, k_pause, \
- k_tild, k_1, k_2, k_3, k_4, k_5, k_6, k_7, k_8, k_9, k_0, k_minus, k_equals, k_backspace, k_ins, k_home, k_pgup, kp_nl, kp_div, kp_mult, kp_minus, \
- k_tab, k_q, k_w, k_e, k_r, k_t, k_y, k_u, k_i, k_o, k_p, k_squarebrop, k_squarebrcl, k_return, k_del, k_end, k_pgdn, kp_7, kp_8, kp_9, kp_plus, \
- k_caps, k_a, k_s, k_d, k_f, k_g, k_h, k_j, k_k, k_l, k_semicolon, k_singlequote, k_nuhs, kp_4, kp_5, kp_6, kp_plus_hidden, \
- k_lshift,k_nubs,k_z, k_x, k_c, k_v, k_b, k_n, k_m, k_cm,k_period, k_fwslash, k_rshift, k_up, kp_1, kp_2, kp_3, kp_enter, \
- k_lctrl, k_lwin, k_lalt, k_space, k_1_d, k_6_4, k_rmenu, k_rctrl, k_left, k_down, k_right, kp_0, kp_dot \
-) \
-{ \
- /* 0 1 2 3 4 5 6 7 8 9 A B C D E F */ \
- /* 0 */ { k_esc, k_pause, k_f3, k_f1, k_ins, k_3, k_4, k_6, k_f5, k_f7, k_f9, k_f11, k_prscr, k_right, k_scrl, KC_NO }, \
- /* 1 */ { k_tab, KC_NO, k_del, k_pgdn, KC_NO, k_e, k_t, k_u, k_backspace, k_minus, k_down, k_end, k_home, k_1_d, KC_NO, k_caps }, \
- /* 2 */ { k_1, KC_NO, kp_nl, k_pgup, KC_NO, k_i, k_r, k_y, k_equals, k_9, k_0, kp_mult, kp_div, k_up, k_lwin, KC_NO }, \
- /* 3 */ { k_q, k_lshift, kp_9, k_2, KC_NO, k_k, k_f, k_h, k_squarebrcl, k_o, k_semicolon, kp_8, kp_7, KC_NO, KC_NO, k_lctrl }, \
- /* 4 */ { k_a, KC_NO, kp_6, k_w, k_lalt, k_d, k_g, k_j, KC_NO, k_squarebrop, k_singlequote, kp_5, kp_4, KC_NO, kp_plus_hidden, KC_NO }, \
- /* 5 */ { k_z, k_rshift, kp_dot, k_x, KC_NO, k_cm, k_b, k_m, k_return, k_period, k_p, kp_0, kp_1, KC_NO, KC_NO, k_rctrl }, \
- /* 6 */ { k_nubs, KC_NO, kp_3, k_s, k_6_4, k_c, k_v, k_n, k_left, k_l, k_fwslash, kp_2, kp_plus, k_nuhs, KC_NO, KC_NO }, \
- /* 7 */ { k_tild, KC_NO, kp_minus, k_f2, k_f4, k_8, k_5, k_7, k_f6, k_f8, k_f10, k_f12, k_rmenu, k_space, kp_enter, KC_NO } \
-}
diff --git a/keyboards/unicomp/spacesaver_m_pre_2013/info.json b/keyboards/unicomp/spacesaver_m_pre_2013/info.json
index 249b33fdd2..57ac811dd9 100644
--- a/keyboards/unicomp/spacesaver_m_pre_2013/info.json
+++ b/keyboards/unicomp/spacesaver_m_pre_2013/info.json
@@ -1,27 +1,2656 @@
{
- "keyboard_name": "Unicomp Spacesaver M",
- "manufacturer": "Unicomp/Purdea Andrei",
- "url": "https://github.com/purdeaandrei/overnumpad_controller_1xb",
- "maintainer": "purdeaandrei",
+ "matrix_pins": {
+ "ghost": true
+ },
"usb": {
"vid": "0x16C0",
"pid": "0x27DB",
"device_version": "0.0.1"
},
- "indicators": {
- "caps_lock": "C12"
- },
- "processor": "STM32F446", // RET6
- "bootloader": "stm32-dfu",
"layouts": {
"LAYOUT_all": {
- "layout": [{"x":0, "y":0}, {"x":2, "y":0}, {"x":3, "y":0}, {"x":4, "y":0}, {"x":5, "y":0}, {"x":6.5, "y":0}, {"x":7.5, "y":0}, {"x":8.5, "y":0}, {"x":9.5, "y":0}, {"x":11, "y":0}, {"x":12, "y":0}, {"x":13, "y":0}, {"x":14, "y":0}, {"x":15.25, "y":0}, {"x":16.25, "y":0}, {"x":17.25, "y":0}, {"x":0, "y":1.5}, {"x":1, "y":1.5}, {"x":2, "y":1.5}, {"x":3, "y":1.5}, {"x":4, "y":1.5}, {"x":5, "y":1.5}, {"x":6, "y":1.5}, {"x":7, "y":1.5}, {"x":8, "y":1.5}, {"x":9, "y":1.5}, {"x":10, "y":1.5}, {"x":11, "y":1.5}, {"x":12, "y":1.5}, {"x":13, "y":1.5}, {"x":14, "y":1.5}, {"x":15.25, "y":1.5}, {"x":16.25, "y":1.5}, {"x":17.25, "y":1.5}, {"x":18.5, "y":1.5}, {"x":19.5, "y":1.5}, {"x":20.5, "y":1.5}, {"x":21.5, "y":1.5}, {"x":0, "y":2.5, "w":1.5}, {"x":1.5, "y":2.5}, {"x":2.5, "y":2.5}, {"x":3.5, "y":2.5}, {"x":4.5, "y":2.5}, {"x":5.5, "y":2.5}, {"x":6.5, "y":2.5}, {"x":7.5, "y":2.5}, {"x":8.5, "y":2.5}, {"x":9.5, "y":2.5}, {"x":10.5, "y":2.5}, {"x":11.5, "y":2.5}, {"x":12.5, "y":2.5}, {"x":13.5, "y":2.5, "w":1.5}, {"x":15.25, "y":2.5}, {"x":16.25, "y":2.5}, {"x":17.25, "y":2.5}, {"x":18.5, "y":2.5}, {"x":19.5, "y":2.5}, {"x":20.5, "y":2.5}, {"x":21.5, "y":2.5}, {"x":0, "y":3.5, "w":1.75}, {"x":1.75, "y":3.5}, {"x":2.75, "y":3.5}, {"x":3.75, "y":3.5}, {"x":4.75, "y":3.5}, {"x":5.75, "y":3.5}, {"x":6.75, "y":3.5}, {"x":7.75, "y":3.5}, {"x":8.75, "y":3.5}, {"x":9.75, "y":3.5}, {"x":10.75, "y":3.5}, {"x":11.75, "y":3.5}, {"x":12.75, "y":3.5}, {"x":13.75, "y":3.5, "w":1.25}, {"x":18.5, "y":3.5}, {"x":19.5, "y":3.5}, {"x":20.5, "y":3.5}, {"x":21.5, "y":3.5}, {"x":0, "y":4.5, "w":1.25}, {"x":1.25, "y":4.5}, {"x":2.25, "y":4.5}, {"x":3.25, "y":4.5}, {"x":4.25, "y":4.5}, {"x":5.25, "y":4.5}, {"x":6.25, "y":4.5}, {"x":7.25, "y":4.5}, {"x":8.25, "y":4.5}, {"x":9.25, "y":4.5}, {"x":10.25, "y":4.5}, {"x":11.25, "y":4.5}, {"x":12.25, "y":4.5}, {"x":13.25, "y":4.5, "w":1.75}, {"x":16.25, "y":4.5}, {"x":18.5, "y":4.5}, {"x":19.5, "y":4.5}, {"x":20.5, "y":4.5}, {"x":21.5, "y":4.5}, {"x":0, "y":5.5, "w":1.5}, {"x":1.5, "y":5.5, "w":1.25}, {"x":2.75, "y":5.5, "w":1.25}, {"x":4, "y":5.5}, {"x":5, "y":5.5, "w":4.75}, {"x":9.75, "y":5.5, "w":1.25}, {"x":11, "y":5.5, "w":1.25}, {"x":12.25, "y":5.5, "w":1.25}, {"x":13.5, "y":5.5, "w":1.5}, {"x":15.25, "y":5.5}, {"x":16.25, "y":5.5}, {"x":17.25, "y":5.5}, {"x":18.5, "y":5.5}, {"x":19.5, "y":5.5}, {"x":20.5, "y":5.5}, {"x":21.5, "y":5.5}]
+ "layout": [
+ {
+ "matrix": [
+ 0,
+ 0
+ ],
+ "x": 0,
+ "y": 0
+ },
+ {
+ "matrix": [
+ 0,
+ 3
+ ],
+ "x": 2,
+ "y": 0
+ },
+ {
+ "matrix": [
+ 7,
+ 3
+ ],
+ "x": 3,
+ "y": 0
+ },
+ {
+ "matrix": [
+ 0,
+ 2
+ ],
+ "x": 4,
+ "y": 0
+ },
+ {
+ "matrix": [
+ 7,
+ 4
+ ],
+ "x": 5,
+ "y": 0
+ },
+ {
+ "matrix": [
+ 0,
+ 8
+ ],
+ "x": 6.5,
+ "y": 0
+ },
+ {
+ "matrix": [
+ 7,
+ 8
+ ],
+ "x": 7.5,
+ "y": 0
+ },
+ {
+ "matrix": [
+ 0,
+ 9
+ ],
+ "x": 8.5,
+ "y": 0
+ },
+ {
+ "matrix": [
+ 7,
+ 9
+ ],
+ "x": 9.5,
+ "y": 0
+ },
+ {
+ "matrix": [
+ 0,
+ 10
+ ],
+ "x": 11,
+ "y": 0
+ },
+ {
+ "matrix": [
+ 7,
+ 10
+ ],
+ "x": 12,
+ "y": 0
+ },
+ {
+ "matrix": [
+ 0,
+ 11
+ ],
+ "x": 13,
+ "y": 0
+ },
+ {
+ "matrix": [
+ 7,
+ 11
+ ],
+ "x": 14,
+ "y": 0
+ },
+ {
+ "matrix": [
+ 0,
+ 12
+ ],
+ "x": 15.25,
+ "y": 0
+ },
+ {
+ "matrix": [
+ 0,
+ 14
+ ],
+ "x": 16.25,
+ "y": 0
+ },
+ {
+ "matrix": [
+ 0,
+ 1
+ ],
+ "x": 17.25,
+ "y": 0
+ },
+ {
+ "matrix": [
+ 7,
+ 0
+ ],
+ "x": 0,
+ "y": 1.5
+ },
+ {
+ "matrix": [
+ 2,
+ 0
+ ],
+ "x": 1,
+ "y": 1.5
+ },
+ {
+ "matrix": [
+ 3,
+ 3
+ ],
+ "x": 2,
+ "y": 1.5
+ },
+ {
+ "matrix": [
+ 0,
+ 5
+ ],
+ "x": 3,
+ "y": 1.5
+ },
+ {
+ "matrix": [
+ 0,
+ 6
+ ],
+ "x": 4,
+ "y": 1.5
+ },
+ {
+ "matrix": [
+ 7,
+ 6
+ ],
+ "x": 5,
+ "y": 1.5
+ },
+ {
+ "matrix": [
+ 0,
+ 7
+ ],
+ "x": 6,
+ "y": 1.5
+ },
+ {
+ "matrix": [
+ 7,
+ 7
+ ],
+ "x": 7,
+ "y": 1.5
+ },
+ {
+ "matrix": [
+ 7,
+ 5
+ ],
+ "x": 8,
+ "y": 1.5
+ },
+ {
+ "matrix": [
+ 2,
+ 9
+ ],
+ "x": 9,
+ "y": 1.5
+ },
+ {
+ "matrix": [
+ 2,
+ 10
+ ],
+ "x": 10,
+ "y": 1.5
+ },
+ {
+ "matrix": [
+ 1,
+ 9
+ ],
+ "x": 11,
+ "y": 1.5
+ },
+ {
+ "matrix": [
+ 2,
+ 8
+ ],
+ "x": 12,
+ "y": 1.5
+ },
+ {
+ "matrix": [
+ 2,
+ 1
+ ],
+ "x": 13,
+ "y": 1.5
+ },
+ {
+ "matrix": [
+ 1,
+ 8
+ ],
+ "x": 14,
+ "y": 1.5
+ },
+ {
+ "matrix": [
+ 0,
+ 4
+ ],
+ "x": 15.25,
+ "y": 1.5
+ },
+ {
+ "matrix": [
+ 1,
+ 12
+ ],
+ "x": 16.25,
+ "y": 1.5
+ },
+ {
+ "matrix": [
+ 2,
+ 3
+ ],
+ "x": 17.25,
+ "y": 1.5
+ },
+ {
+ "matrix": [
+ 2,
+ 2
+ ],
+ "x": 18.5,
+ "y": 1.5
+ },
+ {
+ "matrix": [
+ 2,
+ 12
+ ],
+ "x": 19.5,
+ "y": 1.5
+ },
+ {
+ "matrix": [
+ 2,
+ 11
+ ],
+ "x": 20.5,
+ "y": 1.5
+ },
+ {
+ "matrix": [
+ 7,
+ 2
+ ],
+ "x": 21.5,
+ "y": 1.5
+ },
+ {
+ "matrix": [
+ 1,
+ 0
+ ],
+ "x": 0,
+ "y": 2.5,
+ "w": 1.5
+ },
+ {
+ "matrix": [
+ 3,
+ 0
+ ],
+ "x": 1.5,
+ "y": 2.5
+ },
+ {
+ "matrix": [
+ 4,
+ 3
+ ],
+ "x": 2.5,
+ "y": 2.5
+ },
+ {
+ "matrix": [
+ 1,
+ 5
+ ],
+ "x": 3.5,
+ "y": 2.5
+ },
+ {
+ "matrix": [
+ 2,
+ 6
+ ],
+ "x": 4.5,
+ "y": 2.5
+ },
+ {
+ "matrix": [
+ 1,
+ 6
+ ],
+ "x": 5.5,
+ "y": 2.5
+ },
+ {
+ "matrix": [
+ 2,
+ 7
+ ],
+ "x": 6.5,
+ "y": 2.5
+ },
+ {
+ "matrix": [
+ 1,
+ 7
+ ],
+ "x": 7.5,
+ "y": 2.5
+ },
+ {
+ "matrix": [
+ 2,
+ 5
+ ],
+ "x": 8.5,
+ "y": 2.5
+ },
+ {
+ "matrix": [
+ 3,
+ 9
+ ],
+ "x": 9.5,
+ "y": 2.5
+ },
+ {
+ "matrix": [
+ 5,
+ 10
+ ],
+ "x": 10.5,
+ "y": 2.5
+ },
+ {
+ "matrix": [
+ 4,
+ 9
+ ],
+ "x": 11.5,
+ "y": 2.5
+ },
+ {
+ "matrix": [
+ 3,
+ 8
+ ],
+ "x": 12.5,
+ "y": 2.5
+ },
+ {
+ "matrix": [
+ 4,
+ 8
+ ],
+ "x": 13.5,
+ "y": 2.5,
+ "w": 1.5
+ },
+ {
+ "matrix": [
+ 1,
+ 2
+ ],
+ "x": 15.25,
+ "y": 2.5
+ },
+ {
+ "matrix": [
+ 1,
+ 11
+ ],
+ "x": 16.25,
+ "y": 2.5
+ },
+ {
+ "matrix": [
+ 1,
+ 3
+ ],
+ "x": 17.25,
+ "y": 2.5
+ },
+ {
+ "matrix": [
+ 3,
+ 12
+ ],
+ "x": 18.5,
+ "y": 2.5
+ },
+ {
+ "matrix": [
+ 3,
+ 11
+ ],
+ "x": 19.5,
+ "y": 2.5
+ },
+ {
+ "matrix": [
+ 3,
+ 2
+ ],
+ "x": 20.5,
+ "y": 2.5
+ },
+ {
+ "matrix": [
+ 6,
+ 12
+ ],
+ "x": 21.5,
+ "y": 2.5
+ },
+ {
+ "matrix": [
+ 1,
+ 15
+ ],
+ "x": 0,
+ "y": 3.5,
+ "w": 1.75
+ },
+ {
+ "matrix": [
+ 4,
+ 0
+ ],
+ "x": 1.75,
+ "y": 3.5
+ },
+ {
+ "matrix": [
+ 6,
+ 3
+ ],
+ "x": 2.75,
+ "y": 3.5
+ },
+ {
+ "matrix": [
+ 4,
+ 5
+ ],
+ "x": 3.75,
+ "y": 3.5
+ },
+ {
+ "matrix": [
+ 3,
+ 6
+ ],
+ "x": 4.75,
+ "y": 3.5
+ },
+ {
+ "matrix": [
+ 4,
+ 6
+ ],
+ "x": 5.75,
+ "y": 3.5
+ },
+ {
+ "matrix": [
+ 3,
+ 7
+ ],
+ "x": 6.75,
+ "y": 3.5
+ },
+ {
+ "matrix": [
+ 4,
+ 7
+ ],
+ "x": 7.75,
+ "y": 3.5
+ },
+ {
+ "matrix": [
+ 3,
+ 5
+ ],
+ "x": 8.75,
+ "y": 3.5
+ },
+ {
+ "matrix": [
+ 6,
+ 9
+ ],
+ "x": 9.75,
+ "y": 3.5
+ },
+ {
+ "matrix": [
+ 3,
+ 10
+ ],
+ "x": 10.75,
+ "y": 3.5
+ },
+ {
+ "matrix": [
+ 4,
+ 10
+ ],
+ "x": 11.75,
+ "y": 3.5
+ },
+ {
+ "matrix": [
+ 6,
+ 13
+ ],
+ "x": 12.75,
+ "y": 3.5
+ },
+ {
+ "matrix": [
+ 5,
+ 8
+ ],
+ "x": 13.75,
+ "y": 3.5,
+ "w": 1.25
+ },
+ {
+ "matrix": [
+ 4,
+ 12
+ ],
+ "x": 18.5,
+ "y": 3.5
+ },
+ {
+ "matrix": [
+ 4,
+ 11
+ ],
+ "x": 19.5,
+ "y": 3.5
+ },
+ {
+ "matrix": [
+ 4,
+ 2
+ ],
+ "x": 20.5,
+ "y": 3.5
+ },
+ {
+ "matrix": [
+ 4,
+ 14
+ ],
+ "x": 21.5,
+ "y": 3.5
+ },
+ {
+ "matrix": [
+ 3,
+ 1
+ ],
+ "x": 0,
+ "y": 4.5,
+ "w": 1.25
+ },
+ {
+ "matrix": [
+ 6,
+ 0
+ ],
+ "x": 1.25,
+ "y": 4.5
+ },
+ {
+ "matrix": [
+ 5,
+ 0
+ ],
+ "x": 2.25,
+ "y": 4.5
+ },
+ {
+ "matrix": [
+ 5,
+ 3
+ ],
+ "x": 3.25,
+ "y": 4.5
+ },
+ {
+ "matrix": [
+ 6,
+ 5
+ ],
+ "x": 4.25,
+ "y": 4.5
+ },
+ {
+ "matrix": [
+ 6,
+ 6
+ ],
+ "x": 5.25,
+ "y": 4.5
+ },
+ {
+ "matrix": [
+ 5,
+ 6
+ ],
+ "x": 6.25,
+ "y": 4.5
+ },
+ {
+ "matrix": [
+ 6,
+ 7
+ ],
+ "x": 7.25,
+ "y": 4.5
+ },
+ {
+ "matrix": [
+ 5,
+ 7
+ ],
+ "x": 8.25,
+ "y": 4.5
+ },
+ {
+ "matrix": [
+ 5,
+ 5
+ ],
+ "x": 9.25,
+ "y": 4.5
+ },
+ {
+ "matrix": [
+ 5,
+ 9
+ ],
+ "x": 10.25,
+ "y": 4.5
+ },
+ {
+ "matrix": [
+ 6,
+ 10
+ ],
+ "x": 11.25,
+ "y": 4.5
+ },
+ {
+ "matrix": [
+ 4,
+ 13
+ ],
+ "x": 12.25,
+ "y": 4.5
+ },
+ {
+ "matrix": [
+ 5,
+ 1
+ ],
+ "x": 13.25,
+ "y": 4.5,
+ "w": 1.75
+ },
+ {
+ "matrix": [
+ 2,
+ 13
+ ],
+ "x": 16.25,
+ "y": 4.5
+ },
+ {
+ "matrix": [
+ 5,
+ 12
+ ],
+ "x": 18.5,
+ "y": 4.5
+ },
+ {
+ "matrix": [
+ 6,
+ 11
+ ],
+ "x": 19.5,
+ "y": 4.5
+ },
+ {
+ "matrix": [
+ 6,
+ 2
+ ],
+ "x": 20.5,
+ "y": 4.5
+ },
+ {
+ "matrix": [
+ 7,
+ 14
+ ],
+ "x": 21.5,
+ "y": 4.5
+ },
+ {
+ "matrix": [
+ 3,
+ 15
+ ],
+ "x": 0,
+ "y": 5.5,
+ "w": 1.5
+ },
+ {
+ "matrix": [
+ 2,
+ 14
+ ],
+ "x": 1.5,
+ "y": 5.5,
+ "w": 1.25
+ },
+ {
+ "matrix": [
+ 4,
+ 4
+ ],
+ "x": 2.75,
+ "y": 5.5,
+ "w": 1.25
+ },
+ {
+ "matrix": [
+ 2,
+ 4
+ ],
+ "x": 4,
+ "y": 5.5
+ },
+ {
+ "matrix": [
+ 7,
+ 13
+ ],
+ "x": 5,
+ "y": 5.5,
+ "w": 4.75
+ },
+ {
+ "matrix": [
+ 6,
+ 4
+ ],
+ "x": 9.75,
+ "y": 5.5,
+ "w": 1.25
+ },
+ {
+ "matrix": [
+ 1,
+ 13
+ ],
+ "x": 11,
+ "y": 5.5,
+ "w": 1.25
+ },
+ {
+ "matrix": [
+ 7,
+ 12
+ ],
+ "x": 12.25,
+ "y": 5.5,
+ "w": 1.25
+ },
+ {
+ "matrix": [
+ 5,
+ 15
+ ],
+ "x": 13.5,
+ "y": 5.5,
+ "w": 1.5
+ },
+ {
+ "matrix": [
+ 6,
+ 8
+ ],
+ "x": 15.25,
+ "y": 5.5
+ },
+ {
+ "matrix": [
+ 1,
+ 10
+ ],
+ "x": 16.25,
+ "y": 5.5
+ },
+ {
+ "matrix": [
+ 0,
+ 13
+ ],
+ "x": 17.25,
+ "y": 5.5
+ },
+ {
+ "matrix": [
+ 5,
+ 14
+ ],
+ "x": 18.5,
+ "y": 5.5
+ },
+ {
+ "matrix": [
+ 5,
+ 11
+ ],
+ "x": 19.5,
+ "y": 5.5
+ },
+ {
+ "matrix": [
+ 5,
+ 2
+ ],
+ "x": 20.5,
+ "y": 5.5
+ },
+ {
+ "matrix": [
+ 6,
+ 14
+ ],
+ "x": 21.5,
+ "y": 5.5
+ }
+ ]
},
"LAYOUT_ansi": {
- "layout": [{"x":0, "y":0}, {"x":2, "y":0}, {"x":3, "y":0}, {"x":4, "y":0}, {"x":5, "y":0}, {"x":6.5, "y":0}, {"x":7.5, "y":0}, {"x":8.5, "y":0}, {"x":9.5, "y":0}, {"x":11, "y":0}, {"x":12, "y":0}, {"x":13, "y":0}, {"x":14, "y":0}, {"x":15.25, "y":0}, {"x":16.25, "y":0}, {"x":17.25, "y":0}, {"x":0, "y":1.5}, {"x":1, "y":1.5}, {"x":2, "y":1.5}, {"x":3, "y":1.5}, {"x":4, "y":1.5}, {"x":5, "y":1.5}, {"x":6, "y":1.5}, {"x":7, "y":1.5}, {"x":8, "y":1.5}, {"x":9, "y":1.5}, {"x":10, "y":1.5}, {"x":11, "y":1.5}, {"x":12, "y":1.5}, {"x":13, "y":1.5, "w":2}, {"x":15.25, "y":1.5}, {"x":16.25, "y":1.5}, {"x":17.25, "y":1.5}, {"x":18.5, "y":1.5}, {"x":19.5, "y":1.5}, {"x":20.5, "y":1.5}, {"x":21.5, "y":1.5}, {"x":0, "y":2.5, "w":1.5}, {"x":1.5, "y":2.5}, {"x":2.5, "y":2.5}, {"x":3.5, "y":2.5}, {"x":4.5, "y":2.5}, {"x":5.5, "y":2.5}, {"x":6.5, "y":2.5}, {"x":7.5, "y":2.5}, {"x":8.5, "y":2.5}, {"x":9.5, "y":2.5}, {"x":10.5, "y":2.5}, {"x":11.5, "y":2.5}, {"x":12.5, "y":2.5}, {"x":13.5, "y":2.5, "w":1.5}, {"x":15.25, "y":2.5}, {"x":16.25, "y":2.5}, {"x":17.25, "y":2.5}, {"x":18.5, "y":2.5}, {"x":19.5, "y":2.5}, {"x":20.5, "y":2.5}, {"x":21.5, "y":2.5}, {"x":0, "y":3.5, "w":1.75}, {"x":1.75, "y":3.5}, {"x":2.75, "y":3.5}, {"x":3.75, "y":3.5}, {"x":4.75, "y":3.5}, {"x":5.75, "y":3.5}, {"x":6.75, "y":3.5}, {"x":7.75, "y":3.5}, {"x":8.75, "y":3.5}, {"x":9.75, "y":3.5}, {"x":10.75, "y":3.5}, {"x":11.75, "y":3.5}, {"x":12.75, "y":3.5, "w":2.25}, {"x":18.5, "y":3.5}, {"x":19.5, "y":3.5}, {"x":20.5, "y":3.5}, {"x":21.5, "y":3.5}, {"x":0, "y":4.5, "w":2.25}, {"x":2.25, "y":4.5}, {"x":3.25, "y":4.5}, {"x":4.25, "y":4.5}, {"x":5.25, "y":4.5}, {"x":6.25, "y":4.5}, {"x":7.25, "y":4.5}, {"x":8.25, "y":4.5}, {"x":9.25, "y":4.5}, {"x":10.25, "y":4.5}, {"x":11.25, "y":4.5}, {"x":12.25, "y":4.5, "w":2.75}, {"x":16.25, "y":4.5}, {"x":18.5, "y":4.5}, {"x":19.5, "y":4.5}, {"x":20.5, "y":4.5}, {"x":21.5, "y":4.5, "h":2}, {"x":0, "y":5.5, "w":1.5}, {"x":1.5, "y":5.5, "w":1.25}, {"x":2.75, "y":5.5, "w":1.25}, {"x":4, "y":5.5, "w":5.75}, {"x":9.75, "y":5.5, "w":1.25}, {"x":11, "y":5.5, "w":1.25}, {"x":12.25, "y":5.5, "w":1.25}, {"x":13.5, "y":5.5, "w":1.5}, {"x":15.25, "y":5.5}, {"x":16.25, "y":5.5}, {"x":17.25, "y":5.5}, {"x":18.5, "y":5.5, "w":2}, {"x":20.5, "y":5.5}]
+ "layout": [
+ {
+ "matrix": [
+ 0,
+ 0
+ ],
+ "x": 0,
+ "y": 0
+ },
+ {
+ "matrix": [
+ 0,
+ 3
+ ],
+ "x": 2,
+ "y": 0
+ },
+ {
+ "matrix": [
+ 7,
+ 3
+ ],
+ "x": 3,
+ "y": 0
+ },
+ {
+ "matrix": [
+ 0,
+ 2
+ ],
+ "x": 4,
+ "y": 0
+ },
+ {
+ "matrix": [
+ 7,
+ 4
+ ],
+ "x": 5,
+ "y": 0
+ },
+ {
+ "matrix": [
+ 0,
+ 8
+ ],
+ "x": 6.5,
+ "y": 0
+ },
+ {
+ "matrix": [
+ 7,
+ 8
+ ],
+ "x": 7.5,
+ "y": 0
+ },
+ {
+ "matrix": [
+ 0,
+ 9
+ ],
+ "x": 8.5,
+ "y": 0
+ },
+ {
+ "matrix": [
+ 7,
+ 9
+ ],
+ "x": 9.5,
+ "y": 0
+ },
+ {
+ "matrix": [
+ 0,
+ 10
+ ],
+ "x": 11,
+ "y": 0
+ },
+ {
+ "matrix": [
+ 7,
+ 10
+ ],
+ "x": 12,
+ "y": 0
+ },
+ {
+ "matrix": [
+ 0,
+ 11
+ ],
+ "x": 13,
+ "y": 0
+ },
+ {
+ "matrix": [
+ 7,
+ 11
+ ],
+ "x": 14,
+ "y": 0
+ },
+ {
+ "matrix": [
+ 0,
+ 12
+ ],
+ "x": 15.25,
+ "y": 0
+ },
+ {
+ "matrix": [
+ 0,
+ 14
+ ],
+ "x": 16.25,
+ "y": 0
+ },
+ {
+ "matrix": [
+ 0,
+ 1
+ ],
+ "x": 17.25,
+ "y": 0
+ },
+ {
+ "matrix": [
+ 7,
+ 0
+ ],
+ "x": 0,
+ "y": 1.5
+ },
+ {
+ "matrix": [
+ 2,
+ 0
+ ],
+ "x": 1,
+ "y": 1.5
+ },
+ {
+ "matrix": [
+ 3,
+ 3
+ ],
+ "x": 2,
+ "y": 1.5
+ },
+ {
+ "matrix": [
+ 0,
+ 5
+ ],
+ "x": 3,
+ "y": 1.5
+ },
+ {
+ "matrix": [
+ 0,
+ 6
+ ],
+ "x": 4,
+ "y": 1.5
+ },
+ {
+ "matrix": [
+ 7,
+ 6
+ ],
+ "x": 5,
+ "y": 1.5
+ },
+ {
+ "matrix": [
+ 0,
+ 7
+ ],
+ "x": 6,
+ "y": 1.5
+ },
+ {
+ "matrix": [
+ 7,
+ 7
+ ],
+ "x": 7,
+ "y": 1.5
+ },
+ {
+ "matrix": [
+ 7,
+ 5
+ ],
+ "x": 8,
+ "y": 1.5
+ },
+ {
+ "matrix": [
+ 2,
+ 9
+ ],
+ "x": 9,
+ "y": 1.5
+ },
+ {
+ "matrix": [
+ 2,
+ 10
+ ],
+ "x": 10,
+ "y": 1.5
+ },
+ {
+ "matrix": [
+ 1,
+ 9
+ ],
+ "x": 11,
+ "y": 1.5
+ },
+ {
+ "matrix": [
+ 2,
+ 8
+ ],
+ "x": 12,
+ "y": 1.5
+ },
+ {
+ "matrix": [
+ 1,
+ 8
+ ],
+ "x": 13,
+ "y": 1.5,
+ "w": 2
+ },
+ {
+ "matrix": [
+ 0,
+ 4
+ ],
+ "x": 15.25,
+ "y": 1.5
+ },
+ {
+ "matrix": [
+ 1,
+ 12
+ ],
+ "x": 16.25,
+ "y": 1.5
+ },
+ {
+ "matrix": [
+ 2,
+ 3
+ ],
+ "x": 17.25,
+ "y": 1.5
+ },
+ {
+ "matrix": [
+ 2,
+ 2
+ ],
+ "x": 18.5,
+ "y": 1.5
+ },
+ {
+ "matrix": [
+ 2,
+ 12
+ ],
+ "x": 19.5,
+ "y": 1.5
+ },
+ {
+ "matrix": [
+ 2,
+ 11
+ ],
+ "x": 20.5,
+ "y": 1.5
+ },
+ {
+ "matrix": [
+ 7,
+ 2
+ ],
+ "x": 21.5,
+ "y": 1.5
+ },
+ {
+ "matrix": [
+ 1,
+ 0
+ ],
+ "x": 0,
+ "y": 2.5,
+ "w": 1.5
+ },
+ {
+ "matrix": [
+ 3,
+ 0
+ ],
+ "x": 1.5,
+ "y": 2.5
+ },
+ {
+ "matrix": [
+ 4,
+ 3
+ ],
+ "x": 2.5,
+ "y": 2.5
+ },
+ {
+ "matrix": [
+ 1,
+ 5
+ ],
+ "x": 3.5,
+ "y": 2.5
+ },
+ {
+ "matrix": [
+ 2,
+ 6
+ ],
+ "x": 4.5,
+ "y": 2.5
+ },
+ {
+ "matrix": [
+ 1,
+ 6
+ ],
+ "x": 5.5,
+ "y": 2.5
+ },
+ {
+ "matrix": [
+ 2,
+ 7
+ ],
+ "x": 6.5,
+ "y": 2.5
+ },
+ {
+ "matrix": [
+ 1,
+ 7
+ ],
+ "x": 7.5,
+ "y": 2.5
+ },
+ {
+ "matrix": [
+ 2,
+ 5
+ ],
+ "x": 8.5,
+ "y": 2.5
+ },
+ {
+ "matrix": [
+ 3,
+ 9
+ ],
+ "x": 9.5,
+ "y": 2.5
+ },
+ {
+ "matrix": [
+ 5,
+ 10
+ ],
+ "x": 10.5,
+ "y": 2.5
+ },
+ {
+ "matrix": [
+ 4,
+ 9
+ ],
+ "x": 11.5,
+ "y": 2.5
+ },
+ {
+ "matrix": [
+ 3,
+ 8
+ ],
+ "x": 12.5,
+ "y": 2.5
+ },
+ {
+ "matrix": [
+ 4,
+ 8
+ ],
+ "x": 13.5,
+ "y": 2.5,
+ "w": 1.5
+ },
+ {
+ "matrix": [
+ 1,
+ 2
+ ],
+ "x": 15.25,
+ "y": 2.5
+ },
+ {
+ "matrix": [
+ 1,
+ 11
+ ],
+ "x": 16.25,
+ "y": 2.5
+ },
+ {
+ "matrix": [
+ 1,
+ 3
+ ],
+ "x": 17.25,
+ "y": 2.5
+ },
+ {
+ "matrix": [
+ 3,
+ 12
+ ],
+ "x": 18.5,
+ "y": 2.5
+ },
+ {
+ "matrix": [
+ 3,
+ 11
+ ],
+ "x": 19.5,
+ "y": 2.5
+ },
+ {
+ "matrix": [
+ 3,
+ 2
+ ],
+ "x": 20.5,
+ "y": 2.5
+ },
+ {
+ "matrix": [
+ 6,
+ 12
+ ],
+ "x": 21.5,
+ "y": 2.5
+ },
+ {
+ "matrix": [
+ 1,
+ 15
+ ],
+ "x": 0,
+ "y": 3.5,
+ "w": 1.75
+ },
+ {
+ "matrix": [
+ 4,
+ 0
+ ],
+ "x": 1.75,
+ "y": 3.5
+ },
+ {
+ "matrix": [
+ 6,
+ 3
+ ],
+ "x": 2.75,
+ "y": 3.5
+ },
+ {
+ "matrix": [
+ 4,
+ 5
+ ],
+ "x": 3.75,
+ "y": 3.5
+ },
+ {
+ "matrix": [
+ 3,
+ 6
+ ],
+ "x": 4.75,
+ "y": 3.5
+ },
+ {
+ "matrix": [
+ 4,
+ 6
+ ],
+ "x": 5.75,
+ "y": 3.5
+ },
+ {
+ "matrix": [
+ 3,
+ 7
+ ],
+ "x": 6.75,
+ "y": 3.5
+ },
+ {
+ "matrix": [
+ 4,
+ 7
+ ],
+ "x": 7.75,
+ "y": 3.5
+ },
+ {
+ "matrix": [
+ 3,
+ 5
+ ],
+ "x": 8.75,
+ "y": 3.5
+ },
+ {
+ "matrix": [
+ 6,
+ 9
+ ],
+ "x": 9.75,
+ "y": 3.5
+ },
+ {
+ "matrix": [
+ 3,
+ 10
+ ],
+ "x": 10.75,
+ "y": 3.5
+ },
+ {
+ "matrix": [
+ 4,
+ 10
+ ],
+ "x": 11.75,
+ "y": 3.5
+ },
+ {
+ "matrix": [
+ 5,
+ 8
+ ],
+ "x": 12.75,
+ "y": 3.5,
+ "w": 2.25
+ },
+ {
+ "matrix": [
+ 4,
+ 12
+ ],
+ "x": 18.5,
+ "y": 3.5
+ },
+ {
+ "matrix": [
+ 4,
+ 11
+ ],
+ "x": 19.5,
+ "y": 3.5
+ },
+ {
+ "matrix": [
+ 4,
+ 2
+ ],
+ "x": 20.5,
+ "y": 3.5
+ },
+ {
+ "matrix": [
+ 4,
+ 14
+ ],
+ "x": 21.5,
+ "y": 3.5
+ },
+ {
+ "matrix": [
+ 3,
+ 1
+ ],
+ "x": 0,
+ "y": 4.5,
+ "w": 2.25
+ },
+ {
+ "matrix": [
+ 5,
+ 0
+ ],
+ "x": 2.25,
+ "y": 4.5
+ },
+ {
+ "matrix": [
+ 5,
+ 3
+ ],
+ "x": 3.25,
+ "y": 4.5
+ },
+ {
+ "matrix": [
+ 6,
+ 5
+ ],
+ "x": 4.25,
+ "y": 4.5
+ },
+ {
+ "matrix": [
+ 6,
+ 6
+ ],
+ "x": 5.25,
+ "y": 4.5
+ },
+ {
+ "matrix": [
+ 5,
+ 6
+ ],
+ "x": 6.25,
+ "y": 4.5
+ },
+ {
+ "matrix": [
+ 6,
+ 7
+ ],
+ "x": 7.25,
+ "y": 4.5
+ },
+ {
+ "matrix": [
+ 5,
+ 7
+ ],
+ "x": 8.25,
+ "y": 4.5
+ },
+ {
+ "matrix": [
+ 5,
+ 5
+ ],
+ "x": 9.25,
+ "y": 4.5
+ },
+ {
+ "matrix": [
+ 5,
+ 9
+ ],
+ "x": 10.25,
+ "y": 4.5
+ },
+ {
+ "matrix": [
+ 6,
+ 10
+ ],
+ "x": 11.25,
+ "y": 4.5
+ },
+ {
+ "matrix": [
+ 5,
+ 1
+ ],
+ "x": 12.25,
+ "y": 4.5,
+ "w": 2.75
+ },
+ {
+ "matrix": [
+ 2,
+ 13
+ ],
+ "x": 16.25,
+ "y": 4.5
+ },
+ {
+ "matrix": [
+ 5,
+ 12
+ ],
+ "x": 18.5,
+ "y": 4.5
+ },
+ {
+ "matrix": [
+ 6,
+ 11
+ ],
+ "x": 19.5,
+ "y": 4.5
+ },
+ {
+ "matrix": [
+ 6,
+ 2
+ ],
+ "x": 20.5,
+ "y": 4.5
+ },
+ {
+ "matrix": [
+ 7,
+ 14
+ ],
+ "x": 21.5,
+ "y": 4.5,
+ "h": 2
+ },
+ {
+ "matrix": [
+ 3,
+ 15
+ ],
+ "x": 0,
+ "y": 5.5,
+ "w": 1.5
+ },
+ {
+ "matrix": [
+ 2,
+ 14
+ ],
+ "x": 1.5,
+ "y": 5.5,
+ "w": 1.25
+ },
+ {
+ "matrix": [
+ 4,
+ 4
+ ],
+ "x": 2.75,
+ "y": 5.5,
+ "w": 1.25
+ },
+ {
+ "matrix": [
+ 7,
+ 13
+ ],
+ "x": 4,
+ "y": 5.5,
+ "w": 5.75
+ },
+ {
+ "matrix": [
+ 6,
+ 4
+ ],
+ "x": 9.75,
+ "y": 5.5,
+ "w": 1.25
+ },
+ {
+ "matrix": [
+ 1,
+ 13
+ ],
+ "x": 11,
+ "y": 5.5,
+ "w": 1.25
+ },
+ {
+ "matrix": [
+ 7,
+ 12
+ ],
+ "x": 12.25,
+ "y": 5.5,
+ "w": 1.25
+ },
+ {
+ "matrix": [
+ 5,
+ 15
+ ],
+ "x": 13.5,
+ "y": 5.5,
+ "w": 1.5
+ },
+ {
+ "matrix": [
+ 6,
+ 8
+ ],
+ "x": 15.25,
+ "y": 5.5
+ },
+ {
+ "matrix": [
+ 1,
+ 10
+ ],
+ "x": 16.25,
+ "y": 5.5
+ },
+ {
+ "matrix": [
+ 0,
+ 13
+ ],
+ "x": 17.25,
+ "y": 5.5
+ },
+ {
+ "matrix": [
+ 5,
+ 11
+ ],
+ "x": 18.5,
+ "y": 5.5,
+ "w": 2
+ },
+ {
+ "matrix": [
+ 5,
+ 2
+ ],
+ "x": 20.5,
+ "y": 5.5
+ }
+ ]
},
"LAYOUT_iso": {
- "layout": [{"x":0, "y":0}, {"x":2, "y":0}, {"x":3, "y":0}, {"x":4, "y":0}, {"x":5, "y":0}, {"x":6.5, "y":0}, {"x":7.5, "y":0}, {"x":8.5, "y":0}, {"x":9.5, "y":0}, {"x":11, "y":0}, {"x":12, "y":0}, {"x":13, "y":0}, {"x":14, "y":0}, {"x":15.25, "y":0}, {"x":16.25, "y":0}, {"x":17.25, "y":0}, {"x":0, "y":1.5}, {"x":1, "y":1.5}, {"x":2, "y":1.5}, {"x":3, "y":1.5}, {"x":4, "y":1.5}, {"x":5, "y":1.5}, {"x":6, "y":1.5}, {"x":7, "y":1.5}, {"x":8, "y":1.5}, {"x":9, "y":1.5}, {"x":10, "y":1.5}, {"x":11, "y":1.5}, {"x":12, "y":1.5}, {"x":13, "y":1.5, "w":2}, {"x":15.25, "y":1.5}, {"x":16.25, "y":1.5}, {"x":17.25, "y":1.5}, {"x":18.5, "y":1.5}, {"x":19.5, "y":1.5}, {"x":20.5, "y":1.5}, {"x":21.5, "y":1.5}, {"x":0, "y":2.5, "w":1.5}, {"x":1.5, "y":2.5}, {"x":2.5, "y":2.5}, {"x":3.5, "y":2.5}, {"x":4.5, "y":2.5}, {"x":5.5, "y":2.5}, {"x":6.5, "y":2.5}, {"x":7.5, "y":2.5}, {"x":8.5, "y":2.5}, {"x":9.5, "y":2.5}, {"x":10.5, "y":2.5}, {"x":11.5, "y":2.5}, {"x":12.5, "y":2.5}, {"x":13.75, "y":2.5, "w":1.25, "h":2}, {"x":15.25, "y":2.5}, {"x":16.25, "y":2.5}, {"x":17.25, "y":2.5}, {"x":18.5, "y":2.5}, {"x":19.5, "y":2.5}, {"x":20.5, "y":2.5}, {"x":21.5, "y":2.5}, {"x":0, "y":3.5, "w":1.75}, {"x":1.75, "y":3.5}, {"x":2.75, "y":3.5}, {"x":3.75, "y":3.5}, {"x":4.75, "y":3.5}, {"x":5.75, "y":3.5}, {"x":6.75, "y":3.5}, {"x":7.75, "y":3.5}, {"x":8.75, "y":3.5}, {"x":9.75, "y":3.5}, {"x":10.75, "y":3.5}, {"x":11.75, "y":3.5}, {"x":12.75, "y":3.5}, {"x":18.5, "y":3.5}, {"x":19.5, "y":3.5}, {"x":20.5, "y":3.5}, {"x":21.5, "y":3.5}, {"x":0, "y":4.5, "w":1.25}, {"x":1.25, "y":4.5}, {"x":2.25, "y":4.5}, {"x":3.25, "y":4.5}, {"x":4.25, "y":4.5}, {"x":5.25, "y":4.5}, {"x":6.25, "y":4.5}, {"x":7.25, "y":4.5}, {"x":8.25, "y":4.5}, {"x":9.25, "y":4.5}, {"x":10.25, "y":4.5}, {"x":11.25, "y":4.5}, {"x":12.25, "y":4.5, "w":2.75}, {"x":16.25, "y":4.5}, {"x":18.5, "y":4.5}, {"x":19.5, "y":4.5}, {"x":20.5, "y":4.5}, {"x":21.5, "y":4.5, "h":2}, {"x":0, "y":5.5, "w":1.5}, {"x":1.5, "y":5.5, "w":1.25}, {"x":2.75, "y":5.5, "w":1.25}, {"x":4, "y":5.5, "w":5.75}, {"x":9.75, "y":5.5, "w":1.25}, {"x":11, "y":5.5, "w":1.25}, {"x":12.25, "y":5.5, "w":1.25}, {"x":13.5, "y":5.5, "w":1.5}, {"x":15.25, "y":5.5}, {"x":16.25, "y":5.5}, {"x":17.25, "y":5.5}, {"x":18.5, "y":5.5, "w":2}, {"x":20.5, "y":5.5}]
+ "layout": [
+ {
+ "matrix": [
+ 0,
+ 0
+ ],
+ "x": 0,
+ "y": 0
+ },
+ {
+ "matrix": [
+ 0,
+ 3
+ ],
+ "x": 2,
+ "y": 0
+ },
+ {
+ "matrix": [
+ 7,
+ 3
+ ],
+ "x": 3,
+ "y": 0
+ },
+ {
+ "matrix": [
+ 0,
+ 2
+ ],
+ "x": 4,
+ "y": 0
+ },
+ {
+ "matrix": [
+ 7,
+ 4
+ ],
+ "x": 5,
+ "y": 0
+ },
+ {
+ "matrix": [
+ 0,
+ 8
+ ],
+ "x": 6.5,
+ "y": 0
+ },
+ {
+ "matrix": [
+ 7,
+ 8
+ ],
+ "x": 7.5,
+ "y": 0
+ },
+ {
+ "matrix": [
+ 0,
+ 9
+ ],
+ "x": 8.5,
+ "y": 0
+ },
+ {
+ "matrix": [
+ 7,
+ 9
+ ],
+ "x": 9.5,
+ "y": 0
+ },
+ {
+ "matrix": [
+ 0,
+ 10
+ ],
+ "x": 11,
+ "y": 0
+ },
+ {
+ "matrix": [
+ 7,
+ 10
+ ],
+ "x": 12,
+ "y": 0
+ },
+ {
+ "matrix": [
+ 0,
+ 11
+ ],
+ "x": 13,
+ "y": 0
+ },
+ {
+ "matrix": [
+ 7,
+ 11
+ ],
+ "x": 14,
+ "y": 0
+ },
+ {
+ "matrix": [
+ 0,
+ 12
+ ],
+ "x": 15.25,
+ "y": 0
+ },
+ {
+ "matrix": [
+ 0,
+ 14
+ ],
+ "x": 16.25,
+ "y": 0
+ },
+ {
+ "matrix": [
+ 0,
+ 1
+ ],
+ "x": 17.25,
+ "y": 0
+ },
+ {
+ "matrix": [
+ 7,
+ 0
+ ],
+ "x": 0,
+ "y": 1.5
+ },
+ {
+ "matrix": [
+ 2,
+ 0
+ ],
+ "x": 1,
+ "y": 1.5
+ },
+ {
+ "matrix": [
+ 3,
+ 3
+ ],
+ "x": 2,
+ "y": 1.5
+ },
+ {
+ "matrix": [
+ 0,
+ 5
+ ],
+ "x": 3,
+ "y": 1.5
+ },
+ {
+ "matrix": [
+ 0,
+ 6
+ ],
+ "x": 4,
+ "y": 1.5
+ },
+ {
+ "matrix": [
+ 7,
+ 6
+ ],
+ "x": 5,
+ "y": 1.5
+ },
+ {
+ "matrix": [
+ 0,
+ 7
+ ],
+ "x": 6,
+ "y": 1.5
+ },
+ {
+ "matrix": [
+ 7,
+ 7
+ ],
+ "x": 7,
+ "y": 1.5
+ },
+ {
+ "matrix": [
+ 7,
+ 5
+ ],
+ "x": 8,
+ "y": 1.5
+ },
+ {
+ "matrix": [
+ 2,
+ 9
+ ],
+ "x": 9,
+ "y": 1.5
+ },
+ {
+ "matrix": [
+ 2,
+ 10
+ ],
+ "x": 10,
+ "y": 1.5
+ },
+ {
+ "matrix": [
+ 1,
+ 9
+ ],
+ "x": 11,
+ "y": 1.5
+ },
+ {
+ "matrix": [
+ 2,
+ 8
+ ],
+ "x": 12,
+ "y": 1.5
+ },
+ {
+ "matrix": [
+ 1,
+ 8
+ ],
+ "x": 13,
+ "y": 1.5,
+ "w": 2
+ },
+ {
+ "matrix": [
+ 0,
+ 4
+ ],
+ "x": 15.25,
+ "y": 1.5
+ },
+ {
+ "matrix": [
+ 1,
+ 12
+ ],
+ "x": 16.25,
+ "y": 1.5
+ },
+ {
+ "matrix": [
+ 2,
+ 3
+ ],
+ "x": 17.25,
+ "y": 1.5
+ },
+ {
+ "matrix": [
+ 2,
+ 2
+ ],
+ "x": 18.5,
+ "y": 1.5
+ },
+ {
+ "matrix": [
+ 2,
+ 12
+ ],
+ "x": 19.5,
+ "y": 1.5
+ },
+ {
+ "matrix": [
+ 2,
+ 11
+ ],
+ "x": 20.5,
+ "y": 1.5
+ },
+ {
+ "matrix": [
+ 7,
+ 2
+ ],
+ "x": 21.5,
+ "y": 1.5
+ },
+ {
+ "matrix": [
+ 1,
+ 0
+ ],
+ "x": 0,
+ "y": 2.5,
+ "w": 1.5
+ },
+ {
+ "matrix": [
+ 3,
+ 0
+ ],
+ "x": 1.5,
+ "y": 2.5
+ },
+ {
+ "matrix": [
+ 4,
+ 3
+ ],
+ "x": 2.5,
+ "y": 2.5
+ },
+ {
+ "matrix": [
+ 1,
+ 5
+ ],
+ "x": 3.5,
+ "y": 2.5
+ },
+ {
+ "matrix": [
+ 2,
+ 6
+ ],
+ "x": 4.5,
+ "y": 2.5
+ },
+ {
+ "matrix": [
+ 1,
+ 6
+ ],
+ "x": 5.5,
+ "y": 2.5
+ },
+ {
+ "matrix": [
+ 2,
+ 7
+ ],
+ "x": 6.5,
+ "y": 2.5
+ },
+ {
+ "matrix": [
+ 1,
+ 7
+ ],
+ "x": 7.5,
+ "y": 2.5
+ },
+ {
+ "matrix": [
+ 2,
+ 5
+ ],
+ "x": 8.5,
+ "y": 2.5
+ },
+ {
+ "matrix": [
+ 3,
+ 9
+ ],
+ "x": 9.5,
+ "y": 2.5
+ },
+ {
+ "matrix": [
+ 5,
+ 10
+ ],
+ "x": 10.5,
+ "y": 2.5
+ },
+ {
+ "matrix": [
+ 4,
+ 9
+ ],
+ "x": 11.5,
+ "y": 2.5
+ },
+ {
+ "matrix": [
+ 3,
+ 8
+ ],
+ "x": 12.5,
+ "y": 2.5
+ },
+ {
+ "matrix": [
+ 5,
+ 8
+ ],
+ "x": 13.75,
+ "y": 2.5,
+ "w": 1.25,
+ "h": 2
+ },
+ {
+ "matrix": [
+ 1,
+ 2
+ ],
+ "x": 15.25,
+ "y": 2.5
+ },
+ {
+ "matrix": [
+ 1,
+ 11
+ ],
+ "x": 16.25,
+ "y": 2.5
+ },
+ {
+ "matrix": [
+ 1,
+ 3
+ ],
+ "x": 17.25,
+ "y": 2.5
+ },
+ {
+ "matrix": [
+ 3,
+ 12
+ ],
+ "x": 18.5,
+ "y": 2.5
+ },
+ {
+ "matrix": [
+ 3,
+ 11
+ ],
+ "x": 19.5,
+ "y": 2.5
+ },
+ {
+ "matrix": [
+ 3,
+ 2
+ ],
+ "x": 20.5,
+ "y": 2.5
+ },
+ {
+ "matrix": [
+ 6,
+ 12
+ ],
+ "x": 21.5,
+ "y": 2.5
+ },
+ {
+ "matrix": [
+ 1,
+ 15
+ ],
+ "x": 0,
+ "y": 3.5,
+ "w": 1.75
+ },
+ {
+ "matrix": [
+ 4,
+ 0
+ ],
+ "x": 1.75,
+ "y": 3.5
+ },
+ {
+ "matrix": [
+ 6,
+ 3
+ ],
+ "x": 2.75,
+ "y": 3.5
+ },
+ {
+ "matrix": [
+ 4,
+ 5
+ ],
+ "x": 3.75,
+ "y": 3.5
+ },
+ {
+ "matrix": [
+ 3,
+ 6
+ ],
+ "x": 4.75,
+ "y": 3.5
+ },
+ {
+ "matrix": [
+ 4,
+ 6
+ ],
+ "x": 5.75,
+ "y": 3.5
+ },
+ {
+ "matrix": [
+ 3,
+ 7
+ ],
+ "x": 6.75,
+ "y": 3.5
+ },
+ {
+ "matrix": [
+ 4,
+ 7
+ ],
+ "x": 7.75,
+ "y": 3.5
+ },
+ {
+ "matrix": [
+ 3,
+ 5
+ ],
+ "x": 8.75,
+ "y": 3.5
+ },
+ {
+ "matrix": [
+ 6,
+ 9
+ ],
+ "x": 9.75,
+ "y": 3.5
+ },
+ {
+ "matrix": [
+ 3,
+ 10
+ ],
+ "x": 10.75,
+ "y": 3.5
+ },
+ {
+ "matrix": [
+ 4,
+ 10
+ ],
+ "x": 11.75,
+ "y": 3.5
+ },
+ {
+ "matrix": [
+ 6,
+ 13
+ ],
+ "x": 12.75,
+ "y": 3.5
+ },
+ {
+ "matrix": [
+ 4,
+ 12
+ ],
+ "x": 18.5,
+ "y": 3.5
+ },
+ {
+ "matrix": [
+ 4,
+ 11
+ ],
+ "x": 19.5,
+ "y": 3.5
+ },
+ {
+ "matrix": [
+ 4,
+ 2
+ ],
+ "x": 20.5,
+ "y": 3.5
+ },
+ {
+ "matrix": [
+ 4,
+ 14
+ ],
+ "x": 21.5,
+ "y": 3.5
+ },
+ {
+ "matrix": [
+ 3,
+ 1
+ ],
+ "x": 0,
+ "y": 4.5,
+ "w": 1.25
+ },
+ {
+ "matrix": [
+ 6,
+ 0
+ ],
+ "x": 1.25,
+ "y": 4.5
+ },
+ {
+ "matrix": [
+ 5,
+ 0
+ ],
+ "x": 2.25,
+ "y": 4.5
+ },
+ {
+ "matrix": [
+ 5,
+ 3
+ ],
+ "x": 3.25,
+ "y": 4.5
+ },
+ {
+ "matrix": [
+ 6,
+ 5
+ ],
+ "x": 4.25,
+ "y": 4.5
+ },
+ {
+ "matrix": [
+ 6,
+ 6
+ ],
+ "x": 5.25,
+ "y": 4.5
+ },
+ {
+ "matrix": [
+ 5,
+ 6
+ ],
+ "x": 6.25,
+ "y": 4.5
+ },
+ {
+ "matrix": [
+ 6,
+ 7
+ ],
+ "x": 7.25,
+ "y": 4.5
+ },
+ {
+ "matrix": [
+ 5,
+ 7
+ ],
+ "x": 8.25,
+ "y": 4.5
+ },
+ {
+ "matrix": [
+ 5,
+ 5
+ ],
+ "x": 9.25,
+ "y": 4.5
+ },
+ {
+ "matrix": [
+ 5,
+ 9
+ ],
+ "x": 10.25,
+ "y": 4.5
+ },
+ {
+ "matrix": [
+ 6,
+ 10
+ ],
+ "x": 11.25,
+ "y": 4.5
+ },
+ {
+ "matrix": [
+ 5,
+ 1
+ ],
+ "x": 12.25,
+ "y": 4.5,
+ "w": 2.75
+ },
+ {
+ "matrix": [
+ 2,
+ 13
+ ],
+ "x": 16.25,
+ "y": 4.5
+ },
+ {
+ "matrix": [
+ 5,
+ 12
+ ],
+ "x": 18.5,
+ "y": 4.5
+ },
+ {
+ "matrix": [
+ 6,
+ 11
+ ],
+ "x": 19.5,
+ "y": 4.5
+ },
+ {
+ "matrix": [
+ 6,
+ 2
+ ],
+ "x": 20.5,
+ "y": 4.5
+ },
+ {
+ "matrix": [
+ 7,
+ 14
+ ],
+ "x": 21.5,
+ "y": 4.5,
+ "h": 2
+ },
+ {
+ "matrix": [
+ 3,
+ 15
+ ],
+ "x": 0,
+ "y": 5.5,
+ "w": 1.5
+ },
+ {
+ "matrix": [
+ 2,
+ 14
+ ],
+ "x": 1.5,
+ "y": 5.5,
+ "w": 1.25
+ },
+ {
+ "matrix": [
+ 4,
+ 4
+ ],
+ "x": 2.75,
+ "y": 5.5,
+ "w": 1.25
+ },
+ {
+ "matrix": [
+ 7,
+ 13
+ ],
+ "x": 4,
+ "y": 5.5,
+ "w": 5.75
+ },
+ {
+ "matrix": [
+ 6,
+ 4
+ ],
+ "x": 9.75,
+ "y": 5.5,
+ "w": 1.25
+ },
+ {
+ "matrix": [
+ 1,
+ 13
+ ],
+ "x": 11,
+ "y": 5.5,
+ "w": 1.25
+ },
+ {
+ "matrix": [
+ 7,
+ 12
+ ],
+ "x": 12.25,
+ "y": 5.5,
+ "w": 1.25
+ },
+ {
+ "matrix": [
+ 5,
+ 15
+ ],
+ "x": 13.5,
+ "y": 5.5,
+ "w": 1.5
+ },
+ {
+ "matrix": [
+ 6,
+ 8
+ ],
+ "x": 15.25,
+ "y": 5.5
+ },
+ {
+ "matrix": [
+ 1,
+ 10
+ ],
+ "x": 16.25,
+ "y": 5.5
+ },
+ {
+ "matrix": [
+ 0,
+ 13
+ ],
+ "x": 17.25,
+ "y": 5.5
+ },
+ {
+ "matrix": [
+ 5,
+ 11
+ ],
+ "x": 18.5,
+ "y": 5.5,
+ "w": 2
+ },
+ {
+ "matrix": [
+ 5,
+ 2
+ ],
+ "x": 20.5,
+ "y": 5.5
+ }
+ ]
}
}
}
diff --git a/keyboards/unicomp/spacesaver_m_pre_2013/overnumpad_1xb/config.h b/keyboards/unicomp/spacesaver_m_pre_2013/overnumpad_1xb/config.h
index 88eb8c2c51..71e60e9cfe 100644
--- a/keyboards/unicomp/spacesaver_m_pre_2013/overnumpad_1xb/config.h
+++ b/keyboards/unicomp/spacesaver_m_pre_2013/overnumpad_1xb/config.h
@@ -15,41 +15,17 @@
*/
#pragma once
+#define DEF_SERIAL_NUMBER "purdea.ro:overnumpad_controller"
-#define SERIAL_NUMBER "purdea.ro:overnumpad_controller"
-
-/*
- * Keyboard Matrix Assignments
- *
- * Change this to how you wired your keyboard
- * COLS: AVR pins used for columns, left to right
- * ROWS: AVR pins used for rows, top to bottom
- * DIODE_DIRECTION: COL2ROW = COL = Anode (+), ROW = Cathode (-, marked on diode)
- * ROW2COL = ROW = Anode (+), COL = Cathode (-, marked on diode)
- *
- */
-
-// All pins in order from left-to-right, as seen on the keyboard:
-// C3, C2, C1, C0, A3, A4, A5, A6, A7, C4, C5, B0, B1, B10, B12, B13, B14, B15, C6, C7, C8, C9, A8, A9, A10,
-// On this chip A10, B10 have stronger pull-ups, so it's better to avoid them if possible.
-
-// On this keyboard the right-most pin is not used, so that is A10.
-// On this keyboard the right-most 8 pins (excluding the unused pin) are routed on the bottom.
-
-#define MATRIX_COL_PINS { C3, C2, C1, C0, A3, A4, A5, A6, A7, C4, C5, B0, B1, B10, B12, B13 }
-#define MATRIX_ROW_PINS { B14, B15, C6, C7, C8, C9, A8, A9 }
-
-/* COL2ROW, ROW2COL*/
-#define DIODE_DIRECTION ROW2COL
-
-/* define if matrix has ghost (lacks anti-ghosting diodes) */
-#define MATRIX_HAS_GHOST
+#ifndef SERIAL_NUMBER
+#define SERIAL_NUMBER DEF_SERIAL_NUMBER
+#endif
#define STM32_HSECLK 16000000
#define SOLENOID_PIN B5
#define HAPTIC_ENABLE_PIN C13
-#define SOLENOID_DEFAULT_DWELL 4
+#define SOLENOID_DEFAULT_DWELL 20
#define SOLENOID_MIN_DWELL 4
#define HAPTIC_OFF_IN_LOW_POWER 1
#define NO_HAPTIC_MOD
diff --git a/keyboards/unicomp/spacesaver_m_pre_2013/overnumpad_1xb/info.json b/keyboards/unicomp/spacesaver_m_pre_2013/overnumpad_1xb/info.json
new file mode 100644
index 0000000000..31fc97a527
--- /dev/null
+++ b/keyboards/unicomp/spacesaver_m_pre_2013/overnumpad_1xb/info.json
@@ -0,0 +1,18 @@
+{
+ "keyboard_name": "Unicomp Spacesaver M (pre-2013)",
+ "manufacturer": "Unicomp/Purdea Andrei",
+ "url": "https://github.com/purdeaandrei/overnumpad_controller_1xb",
+ "maintainer": "purdeaandrei",
+ "indicators": {
+ "caps_lock": "C12"
+ },
+ "processor": "STM32F446", // RET6
+ "bootloader": "stm32-dfu",
+ "diode_direction": "ROW2COL",
+ "matrix_pins": {
+ // The controller to membrane interface has pads left-to-right, as seen on the keyboard, matching
+ // the order listed below: all columns followed by all rows, (also followed by unused gpio "A10"):
+ "cols": ["C3", "C2", "C1", "C0", "A3", "A4", "A5", "A6", "A7", "C4", "C5", "B0", "B1", "B10", "B12", "B13"],
+ "rows": ["B14", "B15", "C6", "C7", "C8", "C9", "A8", "A9"]
+ }
+}
diff --git a/keyboards/unicomp/spacesaver_m_pre_2013/overnumpad_1xb/overnumpad_1xb.c b/keyboards/unicomp/spacesaver_m_pre_2013/overnumpad_1xb/overnumpad_1xb.c
index b7e3fd9632..517df0035a 100644
--- a/keyboards/unicomp/spacesaver_m_pre_2013/overnumpad_1xb/overnumpad_1xb.c
+++ b/keyboards/unicomp/spacesaver_m_pre_2013/overnumpad_1xb/overnumpad_1xb.c
@@ -14,18 +14,15 @@
* along with this program. If not, see <http://www.gnu.org/licenses/>.
*/
-#include "overnumpad_1xb.h"
+#include "quantum.h"
void keyboard_post_init_kb(void)
{
// Led pins:
- // C12 is the left-most led, normally Num Lock, but on Spacesaver M it's Caps Lock. Configured in config.h
+ // C12 is the left-most led, normally Num Lock, but on Spacesaver M it's Caps Lock. Configured in info.json
setPinOutput(C11); // middle led, always off on Spacesaver M
writePin(C11, 0);
setPinOutput(C10); // right-most led, normally Scroll Lock, but on Spacesaver M indicates function layer
-
- //debug_enable=true;
- //debug_matrix=true;
}
layer_state_t layer_state_set_kb(layer_state_t state) {
diff --git a/keyboards/unicomp/spacesaver_m_pre_2013/overnumpad_1xb/overnumpad_1xb.h b/keyboards/unicomp/spacesaver_m_pre_2013/overnumpad_1xb/overnumpad_1xb.h
deleted file mode 100644
index 0938d456d1..0000000000
--- a/keyboards/unicomp/spacesaver_m_pre_2013/overnumpad_1xb/overnumpad_1xb.h
+++ /dev/null
@@ -1,88 +0,0 @@
-/* Copyright 2020 Purdea Andrei
- *
- * 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"
-
-/* This is a shortcut to help you visually see your layout.
- *
- * The first section contains all of the arguments representing the physical
- * layout of the board and position of the keys.
- *
- * The second converts the arguments into a two-dimensional array which
- * represents the switch matrix.
- */
-
-#define LAYOUT_all( \
- k_esc, k_f1, k_f2, k_f3, k_f4, k_f5, k_f6, k_f7, k_f8, k_f9, k_f10, k_f11, k_f12, k_prscr, k_scrl, k_pause, \
- k_tild, k_1, k_2, k_3, k_4, k_5, k_6, k_7, k_8, k_9, k_0, k_minus, k_equals, k_bsp_hidden, k_backspace, k_ins, k_home, k_pgup, kp_nl, kp_div, kp_mult, kp_minus, \
- k_tab, k_q, k_w, k_e, k_r, k_t, k_y, k_u, k_i, k_o, k_p, k_squarebrop, k_squarebrcl, k_backsl, k_del, k_end, k_pgdn, kp_7, kp_8, kp_9, kp_plus, \
- k_caps, k_a, k_s, k_d, k_f, k_g, k_h, k_j, k_k, k_l, k_semicolon, k_singlequote, k_nuhs,k_return, kp_4, kp_5, kp_6, kp_plus_hidden, \
- k_lshift,k_nubs,k_z, k_x, k_c, k_v, k_b, k_n, k_m, k_cm,k_period, k_fwslash, k_rshift_hidden, k_rshift, k_up, kp_1, kp_2, kp_3, kp_enter, \
- k_lctrl, k_lwin, k_lalt, k_code, k_space, k_6_4, k_1_d, k_rmenu, k_rctrl, k_left, k_down, k_right, kp_0_hidden, kp_0, kp_dot, kp_enter_hidden \
-) \
-{ \
- /* 0 1 2 3 4 5 6 7 8 9 A B C D E F */ \
- /* 0 */ { k_esc, k_pause, k_f3, k_f1, k_ins, k_3, k_4, k_6, k_f5, k_f7, k_f9, k_f11, k_prscr, k_right, k_scrl, KC_NO }, \
- /* 1 */ { k_tab, KC_NO, k_del, k_pgdn, KC_NO, k_e, k_t, k_u, k_backspace, k_minus, k_down, k_end, k_home, k_1_d, KC_NO, k_caps }, \
- /* 2 */ { k_1, k_bsp_hidden, kp_nl, k_pgup, k_code, k_i, k_r, k_y, k_equals, k_9, k_0, kp_mult, kp_div, k_up, k_lwin, KC_NO }, \
- /* 3 */ { k_q, k_lshift, kp_9, k_2, KC_NO, k_k, k_f, k_h, k_squarebrcl, k_o, k_semicolon, kp_8, kp_7, KC_NO, KC_NO, k_lctrl }, \
- /* 4 */ { k_a, KC_NO, kp_6, k_w, k_lalt, k_d, k_g, k_j, k_backsl, k_squarebrop, k_singlequote, kp_5, kp_4, k_rshift_hidden, kp_plus_hidden, KC_NO }, \
- /* 5 */ { k_z, k_rshift, kp_dot, k_x, KC_NO, k_cm, k_b, k_m, k_return, k_period, k_p, kp_0, kp_1, KC_NO, kp_0_hidden, k_rctrl }, \
- /* 6 */ { k_nubs, KC_NO, kp_3, k_s, k_6_4, k_c, k_v, k_n, k_left, k_l, k_fwslash, kp_2, kp_plus, k_nuhs, kp_enter_hidden, KC_NO }, \
- /* 7 */ { k_tild, KC_NO, kp_minus, k_f2, k_f4, k_8, k_5, k_7, k_f6, k_f8, k_f10, k_f12, k_rmenu, k_space, kp_enter, KC_NO } \
-}
-
-#define LAYOUT_ansi( \
- k_esc, k_f1, k_f2, k_f3, k_f4, k_f5, k_f6, k_f7, k_f8, k_f9, k_f10, k_f11, k_f12, k_prscr, k_scrl, k_pause, \
- k_tild, k_1, k_2, k_3, k_4, k_5, k_6, k_7, k_8, k_9, k_0, k_minus, k_equals, k_backspace, k_ins, k_home, k_pgup, kp_nl, kp_div, kp_mult, kp_minus, \
- k_tab, k_q, k_w, k_e, k_r, k_t, k_y, k_u, k_i, k_o, k_p, k_squarebrop, k_squarebrcl, k_backsl, k_del, k_end, k_pgdn, kp_7, kp_8, kp_9, kp_plus, \
- k_caps, k_a, k_s, k_d, k_f, k_g, k_h, k_j, k_k, k_l, k_semicolon, k_singlequote, k_return, kp_4, kp_5, kp_6, kp_plus_hidden, \
- k_lshift, k_z, k_x, k_c, k_v, k_b, k_n, k_m, k_cm,k_period, k_fwslash, k_rshift, k_up, kp_1, kp_2, kp_3, kp_enter, \
- k_lctrl, k_lwin, k_lalt, k_space, k_6_4, k_1_d, k_rmenu, k_rctrl, k_left, k_down, k_right, kp_0, kp_dot \
-) \
-{ \
- /* 0 1 2 3 4 5 6 7 8 9 A B C D E F */ \
- /* 0 */ { k_esc, k_pause, k_f3, k_f1, k_ins, k_3, k_4, k_6, k_f5, k_f7, k_f9, k_f11, k_prscr, k_right, k_scrl, KC_NO }, \
- /* 1 */ { k_tab, KC_NO, k_del, k_pgdn, KC_NO, k_e, k_t, k_u, k_backspace, k_minus, k_down, k_end, k_home, k_1_d, KC_NO, k_caps }, \
- /* 2 */ { k_1, KC_NO, kp_nl, k_pgup, KC_NO, k_i, k_r, k_y, k_equals, k_9, k_0, kp_mult, kp_div, k_up, k_lwin, KC_NO }, \
- /* 3 */ { k_q, k_lshift, kp_9, k_2, KC_NO, k_k, k_f, k_h, k_squarebrcl, k_o, k_semicolon, kp_8, kp_7, KC_NO, KC_NO, k_lctrl }, \
- /* 4 */ { k_a, KC_NO, kp_6, k_w, k_lalt, k_d, k_g, k_j, k_backsl, k_squarebrop, k_singlequote, kp_5, kp_4, KC_NO, kp_plus_hidden, KC_NO }, \
- /* 5 */ { k_z, k_rshift, kp_dot, k_x, KC_NO, k_cm, k_b, k_m, k_return, k_period, k_p, kp_0, kp_1, KC_NO, KC_NO, k_rctrl }, \
- /* 6 */ { KC_NO, KC_NO, kp_3, k_s, k_6_4, k_c, k_v, k_n, k_left, k_l, k_fwslash, kp_2, kp_plus, KC_NO, KC_NO, KC_NO }, \
- /* 7 */ { k_tild, KC_NO, kp_minus, k_f2, k_f4, k_8, k_5, k_7, k_f6, k_f8, k_f10, k_f12, k_rmenu, k_space, kp_enter, KC_NO } \
-}
-
-#define LAYOUT_iso( \
- k_esc, k_f1, k_f2, k_f3, k_f4, k_f5, k_f6, k_f7, k_f8, k_f9, k_f10, k_f11, k_f12, k_prscr, k_scrl, k_pause, \
- k_tild, k_1, k_2, k_3, k_4, k_5, k_6, k_7, k_8, k_9, k_0, k_minus, k_equals, k_backspace, k_ins, k_home, k_pgup, kp_nl, kp_div, kp_mult, kp_minus, \
- k_tab, k_q, k_w, k_e, k_r, k_t, k_y, k_u, k_i, k_o, k_p, k_squarebrop, k_squarebrcl, k_return, k_del, k_end, k_pgdn, kp_7, kp_8, kp_9, kp_plus, \
- k_caps, k_a, k_s, k_d, k_f, k_g, k_h, k_j, k_k, k_l, k_semicolon, k_singlequote, k_nuhs, kp_4, kp_5, kp_6, kp_plus_hidden, \
- k_lshift,k_nubs,k_z, k_x, k_c, k_v, k_b, k_n, k_m, k_cm,k_period, k_fwslash, k_rshift, k_up, kp_1, kp_2, kp_3, kp_enter, \
- k_lctrl, k_lwin, k_lalt, k_space, k_6_4, k_1_d, k_rmenu, k_rctrl, k_left, k_down, k_right, kp_0, kp_dot \
-) \
-{ \
- /* 0 1 2 3 4 5 6 7 8 9 A B C D E F */ \
- /* 0 */ { k_esc, k_pause, k_f3, k_f1, k_ins, k_3, k_4, k_6, k_f5, k_f7, k_f9, k_f11, k_prscr, k_right, k_scrl, KC_NO }, \
- /* 1 */ { k_tab, KC_NO, k_del, k_pgdn, KC_NO, k_e, k_t, k_u, k_backspace, k_minus, k_down, k_end, k_home, k_1_d, KC_NO, k_caps }, \
- /* 2 */ { k_1, KC_NO, kp_nl, k_pgup, KC_NO, k_i, k_r, k_y, k_equals, k_9, k_0, kp_mult, kp_div, k_up, k_lwin, KC_NO }, \
- /* 3 */ { k_q, k_lshift, kp_9, k_2, KC_NO, k_k, k_f, k_h, k_squarebrcl, k_o, k_semicolon, kp_8, kp_7, KC_NO, KC_NO, k_lctrl }, \
- /* 4 */ { k_a, KC_NO, kp_6, k_w, k_lalt, k_d, k_g, k_j, KC_NO, k_squarebrop, k_singlequote, kp_5, kp_4, KC_NO, kp_plus_hidden, KC_NO }, \
- /* 5 */ { k_z, k_rshift, kp_dot, k_x, KC_NO, k_cm, k_b, k_m, k_return, k_period, k_p, kp_0, kp_1, KC_NO, KC_NO, k_rctrl }, \
- /* 6 */ { k_nubs, KC_NO, kp_3, k_s, k_6_4, k_c, k_v, k_n, k_left, k_l, k_fwslash, kp_2, kp_plus, k_nuhs, KC_NO, KC_NO }, \
- /* 7 */ { k_tild, KC_NO, kp_minus, k_f2, k_f4, k_8, k_5, k_7, k_f6, k_f8, k_f10, k_f12, k_rmenu, k_space, kp_enter, KC_NO } \
-}