1
0
Fork 0

Move remaining LAYOUTs to data driven (#20422)

This commit is contained in:
Ryan 2023-04-15 21:07:32 +10:00 committed by GitHub
parent 54634e9263
commit a84528f853
No known key found for this signature in database
GPG key ID: 4AEE18F83AFDEB23
181 changed files with 17568 additions and 14711 deletions

View file

@ -18,11 +18,249 @@
"bootloader": "atmel-dfu",
"layouts": {
"LAYOUT_all": {
"layout": [{"x":0, "y":0}, {"x":1, "y":0}, {"x":2.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.75, "y":0}, {"x":9.75, "y":0}, {"x":10.75, "y":0}, {"x":11.75, "y":0}, {"x":13.25, "y":0}, {"x":14.25, "y":0}, {"x":15.25, "y":0}, {"x":16.25, "y":0}, {"x":17.5, "y":0}, {"x":18.5, "y":0}, {"x":0, "y":1.25}, {"x":1, "y":1.25}, {"x":2.25, "y":1.25}, {"x":3.25, "y":1.25}, {"x":4.25, "y":1.25}, {"x":5.25, "y":1.25}, {"x":6.25, "y":1.25}, {"x":7.25, "y":1.25}, {"x":8.25, "y":1.25}, {"x":9.25, "y":1.25}, {"x":10.25, "y":1.25}, {"x":11.25, "y":1.25}, {"x":12.25, "y":1.25}, {"x":13.25, "y":1.25}, {"x":14.25, "y":1.25}, {"x":15.25, "y":1.25}, {"x":16.25, "y":1.25}, {"x":17.5, "y":1.25}, {"x":18.5, "y":1.25}, {"x":0, "y":2.25}, {"x":1, "y":2.25}, {"x":2.25, "y":2.25, "w":1.5}, {"x":3.75, "y":2.25}, {"x":4.75, "y":2.25}, {"x":5.75, "y":2.25}, {"x":6.75, "y":2.25}, {"x":7.75, "y":2.25}, {"x":8.75, "y":2.25}, {"x":9.75, "y":2.25}, {"x":10.75, "y":2.25}, {"x":11.75, "y":2.25}, {"x":12.75, "y":2.25}, {"x":13.75, "y":2.25}, {"x":14.75, "y":2.25}, {"x":15.75, "y":2.25, "w":1.5}, {"x":17.5, "y":2.25}, {"x":18.5, "y":2.25}, {"x":0, "y":3.25}, {"x":1, "y":3.25}, {"x":2.25, "y":3.25, "w":1.75}, {"x":4, "y":3.25}, {"x":5, "y":3.25}, {"x":6, "y":3.25}, {"x":7, "y":3.25}, {"x":8, "y":3.25}, {"x":9, "y":3.25}, {"x":10, "y":3.25}, {"x":11, "y":3.25}, {"x":12, "y":3.25}, {"x":13, "y":3.25}, {"x":14, "y":3.25}, {"x":15, "y":3.25}, {"x":16, "y":3.25, "w":1.25}, {"x":17.5, "y":3.25}, {"x":18.5, "y":3.25}, {"x":0, "y":4.25}, {"x":1, "y":4.25}, {"x":2.25, "y":4.25, "w":1.25}, {"x":3.5, "y":4.25}, {"x":4.5, "y":4.25}, {"x":5.5, "y":4.25}, {"x":6.5, "y":4.25}, {"x":7.5, "y":4.25}, {"x":8.5, "y":4.25}, {"x":9.5, "y":4.25}, {"x":10.5, "y":4.25}, {"x":11.5, "y":4.25}, {"x":12.5, "y":4.25}, {"x":13.5, "y":4.25}, {"x":14.5, "y":4.25, "w":1.75}, {"x":16.25, "y":4.25}, {"x":17.5, "y":4.5}, {"x":0, "y":5.25}, {"x":1, "y":5.25}, {"x":2.25, "y":5.25, "w":1.5}, {"x":3.75, "y":5.25}, {"x":4.75, "y":5.25, "w":1.5}, {"x":6.25, "y":5.25, "w":6}, {"x":12.25, "y":5.25, "w":1.5}, {"x":13.75, "y":5.25}, {"x":14.75, "y":5.25, "w":1.5}, {"x":16.5, "y":5.5}, {"x":17.5, "y":5.5}, {"x":18.5, "y":5.5}]
},
"layout": [
{"matrix": [0, 0], "x": 0, "y": 0},
{"matrix": [0, 1], "x": 1, "y": 0},
{"matrix": [0, 2], "x": 2.25, "y": 0},
{"matrix": [0, 4], "x": 4.25, "y": 0},
{"matrix": [0, 5], "x": 5.25, "y": 0},
{"matrix": [0, 6], "x": 6.25, "y": 0},
{"matrix": [0, 7], "x": 7.25, "y": 0},
{"matrix": [0, 9], "x": 8.75, "y": 0},
{"matrix": [0, 10], "x": 9.75, "y": 0},
{"matrix": [0, 11], "x": 10.75, "y": 0},
{"matrix": [0, 12], "x": 11.75, "y": 0},
{"matrix": [0, 13], "x": 13.25, "y": 0},
{"matrix": [0, 14], "x": 14.25, "y": 0},
{"matrix": [0, 15], "x": 15.25, "y": 0},
{"matrix": [0, 16], "x": 16.25, "y": 0},
{"matrix": [0, 19], "x": 17.5, "y": 0},
{"matrix": [0, 18], "x": 18.5, "y": 0},
{"matrix": [1, 0], "x": 0, "y": 1.25},
{"matrix": [1, 1], "x": 1, "y": 1.25},
{"matrix": [1, 2], "x": 2.25, "y": 1.25},
{"matrix": [1, 3], "x": 3.25, "y": 1.25},
{"matrix": [1, 4], "x": 4.25, "y": 1.25},
{"matrix": [1, 5], "x": 5.25, "y": 1.25},
{"matrix": [1, 6], "x": 6.25, "y": 1.25},
{"matrix": [1, 7], "x": 7.25, "y": 1.25},
{"matrix": [1, 8], "x": 8.25, "y": 1.25},
{"matrix": [1, 9], "x": 9.25, "y": 1.25},
{"matrix": [1, 10], "x": 10.25, "y": 1.25},
{"matrix": [1, 11], "x": 11.25, "y": 1.25},
{"matrix": [1, 12], "x": 12.25, "y": 1.25},
{"matrix": [1, 13], "x": 13.25, "y": 1.25},
{"matrix": [1, 14], "x": 14.25, "y": 1.25},
{"matrix": [1, 15], "x": 15.25, "y": 1.25},
{"matrix": [1, 16], "x": 16.25, "y": 1.25},
{"matrix": [1, 17], "x": 17.5, "y": 1.25},
{"matrix": [1, 18], "x": 18.5, "y": 1.25},
{"matrix": [2, 0], "x": 0, "y": 2.25},
{"matrix": [2, 1], "x": 1, "y": 2.25},
{"matrix": [2, 2], "x": 2.25, "y": 2.25, "w": 1.5},
{"matrix": [2, 3], "x": 3.75, "y": 2.25},
{"matrix": [2, 4], "x": 4.75, "y": 2.25},
{"matrix": [2, 5], "x": 5.75, "y": 2.25},
{"matrix": [2, 6], "x": 6.75, "y": 2.25},
{"matrix": [2, 7], "x": 7.75, "y": 2.25},
{"matrix": [2, 8], "x": 8.75, "y": 2.25},
{"matrix": [2, 9], "x": 9.75, "y": 2.25},
{"matrix": [2, 10], "x": 10.75, "y": 2.25},
{"matrix": [2, 11], "x": 11.75, "y": 2.25},
{"matrix": [2, 12], "x": 12.75, "y": 2.25},
{"matrix": [2, 13], "x": 13.75, "y": 2.25},
{"matrix": [2, 14], "x": 14.75, "y": 2.25},
{"matrix": [2, 16], "x": 15.75, "y": 2.25, "w": 1.5},
{"matrix": [2, 17], "x": 17.5, "y": 2.25},
{"matrix": [2, 18], "x": 18.5, "y": 2.25},
{"matrix": [3, 0], "x": 0, "y": 3.25},
{"matrix": [3, 1], "x": 1, "y": 3.25},
{"matrix": [3, 2], "x": 2.25, "y": 3.25, "w": 1.75},
{"matrix": [3, 3], "x": 4, "y": 3.25},
{"matrix": [3, 4], "x": 5, "y": 3.25},
{"matrix": [3, 5], "x": 6, "y": 3.25},
{"matrix": [3, 6], "x": 7, "y": 3.25},
{"matrix": [3, 7], "x": 8, "y": 3.25},
{"matrix": [3, 8], "x": 9, "y": 3.25},
{"matrix": [3, 9], "x": 10, "y": 3.25},
{"matrix": [3, 10], "x": 11, "y": 3.25},
{"matrix": [3, 11], "x": 12, "y": 3.25},
{"matrix": [3, 12], "x": 13, "y": 3.25},
{"matrix": [3, 13], "x": 14, "y": 3.25},
{"matrix": [3, 14], "x": 15, "y": 3.25},
{"matrix": [3, 16], "x": 16, "y": 3.25, "w": 1.25},
{"matrix": [3, 17], "x": 17.5, "y": 3.25},
{"matrix": [3, 18], "x": 18.5, "y": 3.25},
{"matrix": [4, 0], "x": 0, "y": 4.25},
{"matrix": [4, 1], "x": 1, "y": 4.25},
{"matrix": [4, 2], "x": 2.25, "y": 4.25, "w": 1.25},
{"matrix": [4, 3], "x": 3.5, "y": 4.25},
{"matrix": [4, 4], "x": 4.5, "y": 4.25},
{"matrix": [4, 5], "x": 5.5, "y": 4.25},
{"matrix": [4, 6], "x": 6.5, "y": 4.25},
{"matrix": [4, 7], "x": 7.5, "y": 4.25},
{"matrix": [4, 8], "x": 8.5, "y": 4.25},
{"matrix": [4, 9], "x": 9.5, "y": 4.25},
{"matrix": [4, 10], "x": 10.5, "y": 4.25},
{"matrix": [4, 11], "x": 11.5, "y": 4.25},
{"matrix": [4, 12], "x": 12.5, "y": 4.25},
{"matrix": [4, 14], "x": 13.5, "y": 4.25},
{"matrix": [4, 15], "x": 14.5, "y": 4.25, "w": 1.75},
{"matrix": [4, 16], "x": 16.25, "y": 4.25},
{"matrix": [4, 17], "x": 17.5, "y": 4.5},
{"matrix": [5, 0], "x": 0, "y": 5.25},
{"matrix": [5, 1], "x": 1, "y": 5.25},
{"matrix": [5, 2], "x": 2.25, "y": 5.25, "w": 1.5},
{"matrix": [5, 3], "x": 3.75, "y": 5.25},
{"matrix": [5, 4], "x": 4.75, "y": 5.25, "w": 1.5},
{"matrix": [5, 10], "x": 6.25, "y": 5.25, "w": 6},
{"matrix": [5, 12], "x": 12.25, "y": 5.25, "w": 1.5},
{"matrix": [5, 14], "x": 13.75, "y": 5.25},
{"matrix": [5, 15], "x": 14.75, "y": 5.25, "w": 1.5},
{"matrix": [5, 16], "x": 16.5, "y": 5.5},
{"matrix": [5, 17], "x": 17.5, "y": 5.5},
{"matrix": [5, 18], "x": 18.5, "y": 5.5}
]
},
"LAYOUT": {
"layout": [{"x":0, "y":0}, {"x":1, "y":0}, {"x":2.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.75, "y":0}, {"x":9.75, "y":0}, {"x":10.75, "y":0}, {"x":11.75, "y":0}, {"x":13.25, "y":0}, {"x":14.25, "y":0}, {"x":15.25, "y":0}, {"x":16.25, "y":0}, {"x":17.5, "y":0}, {"x":18.5, "y":0}, {"x":0, "y":1.25}, {"x":1, "y":1.25}, {"x":2.25, "y":1.25}, {"x":3.25, "y":1.25}, {"x":4.25, "y":1.25}, {"x":5.25, "y":1.25}, {"x":6.25, "y":1.25}, {"x":7.25, "y":1.25}, {"x":8.25, "y":1.25}, {"x":9.25, "y":1.25}, {"x":10.25, "y":1.25}, {"x":11.25, "y":1.25}, {"x":12.25, "y":1.25}, {"x":13.25, "y":1.25}, {"x":14.25, "y":1.25}, {"x":15.25, "y":1.25, "w":2}, {"x":17.5, "y":1.25}, {"x":18.5, "y":1.25}, {"x":0, "y":2.25}, {"x":1, "y":2.25}, {"x":2.25, "y":2.25, "w":1.5}, {"x":3.75, "y":2.25}, {"x":4.75, "y":2.25}, {"x":5.75, "y":2.25}, {"x":6.75, "y":2.25}, {"x":7.75, "y":2.25}, {"x":8.75, "y":2.25}, {"x":9.75, "y":2.25}, {"x":10.75, "y":2.25}, {"x":11.75, "y":2.25}, {"x":12.75, "y":2.25}, {"x":13.75, "y":2.25}, {"x":14.75, "y":2.25}, {"x":15.75, "y":2.25, "w":1.5}, {"x":17.5, "y":2.25}, {"x":18.5, "y":2.25}, {"x":0, "y":3.25}, {"x":1, "y":3.25}, {"x":2.25, "y":3.25, "w":1.75}, {"x":4, "y":3.25}, {"x":5, "y":3.25}, {"x":6, "y":3.25}, {"x":7, "y":3.25}, {"x":8, "y":3.25}, {"x":9, "y":3.25}, {"x":10, "y":3.25}, {"x":11, "y":3.25}, {"x":12, "y":3.25}, {"x":13, "y":3.25}, {"x":14, "y":3.25}, {"x":15, "y":3.25, "w":2.25}, {"x":17.5, "y":3.25}, {"x":18.5, "y":3.25}, {"x":0, "y":4.25}, {"x":1, "y":4.25}, {"x":2.25, "y":4.25, "w":2.25}, {"x":4.5, "y":4.25}, {"x":5.5, "y":4.25}, {"x":6.5, "y":4.25}, {"x":7.5, "y":4.25}, {"x":8.5, "y":4.25}, {"x":9.5, "y":4.25}, {"x":10.5, "y":4.25}, {"x":11.5, "y":4.25}, {"x":12.5, "y":4.25}, {"x":13.5, "y":4.25}, {"x":14.5, "y":4.25, "w":2.75}, {"x":17.5, "y":4.5}, {"x":0, "y":5.25}, {"x":1, "y":5.25}, {"x":2.25, "y":5.25, "w":1.5}, {"x":3.75, "y":5.25}, {"x":4.75, "y":5.25, "w":1.5}, {"x":6.25, "y":5.25, "w":6}, {"x":12.25, "y":5.25, "w":1.5}, {"x":13.75, "y":5.25}, {"x":14.75, "y":5.25, "w":1.5}, {"x":16.5, "y":5.5}, {"x":17.5, "y":5.5}, {"x":18.5, "y":5.5}]
"layout": [
{"matrix": [0, 0], "x": 0, "y": 0},
{"matrix": [0, 1], "x": 1, "y": 0},
{"matrix": [0, 2], "x": 2.25, "y": 0},
{"matrix": [0, 4], "x": 4.25, "y": 0},
{"matrix": [0, 5], "x": 5.25, "y": 0},
{"matrix": [0, 6], "x": 6.25, "y": 0},
{"matrix": [0, 7], "x": 7.25, "y": 0},
{"matrix": [0, 9], "x": 8.75, "y": 0},
{"matrix": [0, 10], "x": 9.75, "y": 0},
{"matrix": [0, 11], "x": 10.75, "y": 0},
{"matrix": [0, 12], "x": 11.75, "y": 0},
{"matrix": [0, 13], "x": 13.25, "y": 0},
{"matrix": [0, 14], "x": 14.25, "y": 0},
{"matrix": [0, 15], "x": 15.25, "y": 0},
{"matrix": [0, 16], "x": 16.25, "y": 0},
{"matrix": [0, 19], "x": 17.5, "y": 0},
{"matrix": [0, 18], "x": 18.5, "y": 0},
{"matrix": [1, 0], "x": 0, "y": 1.25},
{"matrix": [1, 1], "x": 1, "y": 1.25},
{"matrix": [1, 2], "x": 2.25, "y": 1.25},
{"matrix": [1, 3], "x": 3.25, "y": 1.25},
{"matrix": [1, 4], "x": 4.25, "y": 1.25},
{"matrix": [1, 5], "x": 5.25, "y": 1.25},
{"matrix": [1, 6], "x": 6.25, "y": 1.25},
{"matrix": [1, 7], "x": 7.25, "y": 1.25},
{"matrix": [1, 8], "x": 8.25, "y": 1.25},
{"matrix": [1, 9], "x": 9.25, "y": 1.25},
{"matrix": [1, 10], "x": 10.25, "y": 1.25},
{"matrix": [1, 11], "x": 11.25, "y": 1.25},
{"matrix": [1, 12], "x": 12.25, "y": 1.25},
{"matrix": [1, 13], "x": 13.25, "y": 1.25},
{"matrix": [1, 14], "x": 14.25, "y": 1.25},
{"matrix": [1, 16], "x": 15.25, "y": 1.25, "w": 2},
{"matrix": [1, 17], "x": 17.5, "y": 1.25},
{"matrix": [1, 18], "x": 18.5, "y": 1.25},
{"matrix": [2, 0], "x": 0, "y": 2.25},
{"matrix": [2, 1], "x": 1, "y": 2.25},
{"matrix": [2, 2], "x": 2.25, "y": 2.25, "w": 1.5},
{"matrix": [2, 3], "x": 3.75, "y": 2.25},
{"matrix": [2, 4], "x": 4.75, "y": 2.25},
{"matrix": [2, 5], "x": 5.75, "y": 2.25},
{"matrix": [2, 6], "x": 6.75, "y": 2.25},
{"matrix": [2, 7], "x": 7.75, "y": 2.25},
{"matrix": [2, 8], "x": 8.75, "y": 2.25},
{"matrix": [2, 9], "x": 9.75, "y": 2.25},
{"matrix": [2, 10], "x": 10.75, "y": 2.25},
{"matrix": [2, 11], "x": 11.75, "y": 2.25},
{"matrix": [2, 12], "x": 12.75, "y": 2.25},
{"matrix": [2, 13], "x": 13.75, "y": 2.25},
{"matrix": [2, 14], "x": 14.75, "y": 2.25},
{"matrix": [2, 16], "x": 15.75, "y": 2.25, "w": 1.5},
{"matrix": [2, 17], "x": 17.5, "y": 2.25},
{"matrix": [2, 18], "x": 18.5, "y": 2.25},
{"matrix": [3, 0], "x": 0, "y": 3.25},
{"matrix": [3, 1], "x": 1, "y": 3.25},
{"matrix": [3, 2], "x": 2.25, "y": 3.25, "w": 1.75},
{"matrix": [3, 3], "x": 4, "y": 3.25},
{"matrix": [3, 4], "x": 5, "y": 3.25},
{"matrix": [3, 5], "x": 6, "y": 3.25},
{"matrix": [3, 6], "x": 7, "y": 3.25},
{"matrix": [3, 7], "x": 8, "y": 3.25},
{"matrix": [3, 8], "x": 9, "y": 3.25},
{"matrix": [3, 9], "x": 10, "y": 3.25},
{"matrix": [3, 10], "x": 11, "y": 3.25},
{"matrix": [3, 11], "x": 12, "y": 3.25},
{"matrix": [3, 12], "x": 13, "y": 3.25},
{"matrix": [3, 13], "x": 14, "y": 3.25},
{"matrix": [3, 16], "x": 15, "y": 3.25, "w": 2.25},
{"matrix": [3, 17], "x": 17.5, "y": 3.25},
{"matrix": [3, 18], "x": 18.5, "y": 3.25},
{"matrix": [4, 0], "x": 0, "y": 4.25},
{"matrix": [4, 1], "x": 1, "y": 4.25},
{"matrix": [4, 2], "x": 2.25, "y": 4.25, "w": 2.25},
{"matrix": [4, 4], "x": 4.5, "y": 4.25},
{"matrix": [4, 5], "x": 5.5, "y": 4.25},
{"matrix": [4, 6], "x": 6.5, "y": 4.25},
{"matrix": [4, 7], "x": 7.5, "y": 4.25},
{"matrix": [4, 8], "x": 8.5, "y": 4.25},
{"matrix": [4, 9], "x": 9.5, "y": 4.25},
{"matrix": [4, 10], "x": 10.5, "y": 4.25},
{"matrix": [4, 11], "x": 11.5, "y": 4.25},
{"matrix": [4, 12], "x": 12.5, "y": 4.25},
{"matrix": [4, 14], "x": 13.5, "y": 4.25},
{"matrix": [4, 15], "x": 14.5, "y": 4.25, "w": 2.75},
{"matrix": [4, 17], "x": 17.5, "y": 4.5},
{"matrix": [5, 0], "x": 0, "y": 5.25},
{"matrix": [5, 1], "x": 1, "y": 5.25},
{"matrix": [5, 2], "x": 2.25, "y": 5.25, "w": 1.5},
{"matrix": [5, 3], "x": 3.75, "y": 5.25},
{"matrix": [5, 4], "x": 4.75, "y": 5.25, "w": 1.5},
{"matrix": [5, 10], "x": 6.25, "y": 5.25, "w": 6},
{"matrix": [5, 12], "x": 12.25, "y": 5.25, "w": 1.5},
{"matrix": [5, 14], "x": 13.75, "y": 5.25},
{"matrix": [5, 15], "x": 14.75, "y": 5.25, "w": 1.5},
{"matrix": [5, 16], "x": 16.5, "y": 5.5},
{"matrix": [5, 17], "x": 17.5, "y": 5.5},
{"matrix": [5, 18], "x": 18.5, "y": 5.5}
]
}
}
}

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 "tcv3.h"
#include "quantum.h"
#include "indicator_leds.h"
enum BACKLIGHT_AREAS {

View file

@ -1,53 +0,0 @@
/* Copyright 2019 MechMerlin <mechmerlin@gmail.com>
*
* This program is free software: you can redistribute it and/or modify
* it under the terms of the GNU General Public License as published by
* the Free Software Foundation, either version 2 of the License, or
* (at your option) any later version.
*
* This program is distributed in the hope that it will be useful,
* but WITHOUT ANY WARRANTY; without even the implied warranty of
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
* GNU General Public License for more details.
*
* You should have received a copy of the GNU General Public License
* along with this program. If not, see <http://www.gnu.org/licenses/>.
*/
#pragma once
#include "quantum.h"
#define XXX KC_NO
#define LAYOUT_all( \
K00, K01, K02, K04, K05, K06, K07, K09, K0A, K0B, K0C, K0D, K0E, K0F, K0G, K0J, K0I, \
K10, K11, K12, K13, K14, K15, K16, K17, K18, K19, K1A, K1B, K1C, K1D, K1E, K1F, K1G, K1H, K1I, \
K20, K21, K22, K23, K24, K25, K26, K27, K28, K29, K2A, K2B, K2C, K2D, K2E, K2G, K2H, K2I, \
K30, K31, K32, K33, K34, K35, K36, K37, K38, K39, K3A, K3B, K3C, K3D, K3E, K3G, K3H, K3I, \
K40, K41, K42, K43, K44, K45, K46, K47, K48, K49, K4A, K4B, K4C, K4E, K4F, K4G, K4H, \
K50, K51, K52, K53, K54, K5A, K5C, K5E, K5F, K5G, K5H, K5I \
) { \
{ K00, K01, K02, XXX, K04, K05, K06, K07, XXX, K09, K0A, K0B, K0C, K0D, K0E, K0F, K0G, XXX, K0I, K0J }, \
{ K10, K11, K12, K13, K14, K15, K16, K17, K18, K19, K1A, K1B, K1C, K1D, K1E, K1F, K1G, K1H, K1I, XXX }, \
{ K20, K21, K22, K23, K24, K25, K26, K27, K28, K29, K2A, K2B, K2C, K2D, K2E, XXX, K2G, K2H, K2I, XXX }, \
{ K30, K31, K32, K33, K34, K35, K36, K37, K38, K39, K3A, K3B, K3C, K3D, K3E, XXX, K3G, K3H, K3I, XXX }, \
{ K40, K41, K42, K43, K44, K45, K46, K47, K48, K49, K4A, K4B, K4C, XXX, K4E, K4F, K4G, K4H, XXX, XXX }, \
{ K50, K51, K52, K53, K54, XXX, XXX, XXX, XXX, XXX, K5A, XXX, K5C, XXX, K5E, K5F, K5G, K5H, K5I, XXX }, \
}
#define LAYOUT( \
K00, K01, K02, K04, K05, K06, K07, K09, K0A, K0B, K0C, K0D, K0E, K0F, K0G, K0J, K0I, \
K10, K11, K12, K13, K14, K15, K16, K17, K18, K19, K1A, K1B, K1C, K1D, K1E, K1G, K1H, K1I, \
K20, K21, K22, K23, K24, K25, K26, K27, K28, K29, K2A, K2B, K2C, K2D, K2E, K2G, K2H, K2I, \
K30, K31, K32, K33, K34, K35, K36, K37, K38, K39, K3A, K3B, K3C, K3D, K3G, K3H, K3I, \
K40, K41, K42, K44, K45, K46, K47, K48, K49, K4A, K4B, K4C, K4E, K4F, K4H, \
K50, K51, K52, K53, K54, K5A, K5C, K5E, K5F, K5G, K5H, K5I \
) { \
{ K00, K01, K02, XXX, K04, K05, K06, K07, XXX, K09, K0A, K0B, K0C, K0D, K0E, K0F, K0G, XXX, K0I, K0J }, \
{ K10, K11, K12, K13, K14, K15, K16, K17, K18, K19, K1A, K1B, K1C, K1D, K1E, XXX, K1G, K1H, K1I, XXX }, \
{ K20, K21, K22, K23, K24, K25, K26, K27, K28, K29, K2A, K2B, K2C, K2D, K2E, XXX, K2G, K2H, K2I, XXX }, \
{ K30, K31, K32, K33, K34, K35, K36, K37, K38, K39, K3A, K3B, K3C, K3D, XXX, XXX, K3G, K3H, K3I, XXX }, \
{ K40, K41, K42, XXX, K44, K45, K46, K47, K48, K49, K4A, K4B, K4C, XXX, K4E, K4F, XXX, K4H, XXX, XXX }, \
{ K50, K51, K52, K53, K54, XXX, XXX, XXX, XXX, XXX, K5A, XXX, K5C, XXX, K5E, K5F, K5G, K5H, K5I, XXX }, \
}