Move layouts for direct_pins boards to data driven (#19872)

This commit is contained in:
Ryan
2023-02-19 18:55:12 +11:00
committed by GitHub
parent 2222836f09
commit e837a32b2b
231 changed files with 965 additions and 3523 deletions

View File

@@ -13,7 +13,7 @@
* 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 "4pack.h"
#include "quantum.h"
// Optional override functions below.
// You can leave any or all of these undefined.

View File

@@ -1,33 +0,0 @@
/* Copyright 2019 Arda Kilicdagi
*
* 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 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( \
k00, k01, k02, k03 \
) \
{ \
{ k00, k01, k02, k03 }, \
}

View File

@@ -17,7 +17,12 @@
},
"layouts": {
"LAYOUT": {
"layout": [{"x":0, "y":0}, {"x":1, "y":0}, {"x":2, "y":0}, {"x":3, "y":0}]
"layout": [
{"x":0, "y":0, "matrix": [0, 0]},
{"x":1, "y":0, "matrix": [0, 1]},
{"x":2, "y":0, "matrix": [0, 2]},
{"x":3, "y":0, "matrix": [0, 3]}
]
}
}
}

View File

@@ -16,9 +16,21 @@
["D1", "D0", "D4", "C6"]
]
},
"layout_aliases": {
"LAYOUT": "LAYOUT_ortho_2x4"
},
"layouts": {
"LAYOUT_ortho_2x4": {
"layout": [{"x":0, "y":0}, {"x":1, "y":0}, {"x":2, "y":0}, {"x":3, "y":0}, {"x":0, "y":1}, {"x":1, "y":1}, {"x":2, "y":1}, {"x":3, "y":1}]
"layout": [
{"x":0, "y":0, "matrix": [0, 0]},
{"x":1, "y":0, "matrix": [0, 1]},
{"x":2, "y":0, "matrix": [0, 2]},
{"x":3, "y":0, "matrix": [0, 3]},
{"x":0, "y":1, "matrix": [1, 0]},
{"x":1, "y":1, "matrix": [1, 1]},
{"x":2, "y":1, "matrix": [1, 2]},
{"x":3, "y":1, "matrix": [1, 3]}
]
}
}
}

View File

@@ -1 +0,0 @@
#include "nano.h"

View File

@@ -1,13 +0,0 @@
#pragma once
#include "quantum.h"
#define LAYOUT_ortho_2x4( \
k01, k02, k03, k04, \
k05, k06, k07, k08 \
) { \
{ k01, k02, k03, k04 }, \
{ k05, k06, k07, k08 } \
}
#define LAYOUT LAYOUT_ortho_2x4

View File

@@ -20,15 +20,15 @@
"layouts": {
"LAYOUT_ortho_3x3": {
"layout": [
{"x":0, "y":0},
{"x":1, "y":0},
{"x":2, "y":0},
{"x":0, "y":1},
{"x":1, "y":1},
{"x":2, "y":1},
{"x":0, "y":2},
{"x":1, "y":2},
{"x":2, "y":2}
{"x":0, "y":0, "matrix": [0, 0]},
{"x":1, "y":0, "matrix": [0, 1]},
{"x":2, "y":0, "matrix": [0, 2]},
{"x":0, "y":1, "matrix": [1, 0]},
{"x":1, "y":1, "matrix": [1, 1]},
{"x":2, "y":1, "matrix": [1, 2]},
{"x":0, "y":2, "matrix": [2, 0]},
{"x":1, "y":2, "matrix": [2, 1]},
{"x":2, "y":2, "matrix": [2, 2]}
]
}
}

View File

@@ -1,16 +0,0 @@
/* Copyright 2019
*
* 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 "nein.h"

View File

@@ -1,37 +0,0 @@
/* Copyright 2019
*
* 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 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_ortho_3x3( \
k00, k01, k02, \
k10, k11, k12, \
k20, k21, k22 \
) \
{ \
{ k00, k01, k02 }, \
{ k10, k11, k12 }, \
{ k20, k21, k22 } \
}

View File

@@ -25,8 +25,12 @@
"layouts": {
"LAYOUT_ortho_2x3": {
"layout": [
{"x":0, "y":0}, {"x":1, "y":0}, {"x":2, "y":0},
{"x":0, "y":1}, {"x":1, "y":1}, {"x":2, "y":1}
{"x":0, "y":0, "matrix": [0, 0]},
{"x":1, "y":0, "matrix": [0, 1]},
{"x":2, "y":0, "matrix": [0, 2]},
{"x":0, "y":1, "matrix": [1, 0]},
{"x":1, "y":1, "matrix": [1, 1]},
{"x":2, "y":1, "matrix": [1, 2]}
]
}
}

View File

@@ -13,7 +13,7 @@
* 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 "sixpack.h"
#include "quantum.h"
void matrix_init_kb(void) {
setPinOutput(B6); // Backlight cathodes Col.3

View File

@@ -1,34 +0,0 @@
/* Copyright 2020
*
* 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 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_ortho_2x3( \
k00, k01, k02, \
k10, k11, k12 \
) { \
{ k00, k01, k02 }, \
{ k10, k11, k12 } \
}