Move miscellaneous layouts to data driven (#20516)
This commit is contained in:
		
							parent
							
								
									72d2be24f9
								
							
						
					
					
						commit
						f111bea3cd
					
				
					 288 changed files with 19592 additions and 21083 deletions
				
			
		| 
						 | 
				
			
			@ -17,103 +17,104 @@
 | 
			
		|||
    "layouts": {
 | 
			
		||||
        "LAYOUT_ext65": {
 | 
			
		||||
            "layout": [
 | 
			
		||||
                {"x": 0, "y": 0},
 | 
			
		||||
                {"x": 1, "y": 0},
 | 
			
		||||
                {"x": 2, "y": 0},
 | 
			
		||||
                {"x": 3, "y": 0},
 | 
			
		||||
                {"matrix": [0, 0], "x": 0, "y": 0},
 | 
			
		||||
                {"matrix": [1, 0], "x": 1, "y": 0},
 | 
			
		||||
                {"matrix": [0, 1], "x": 2, "y": 0},
 | 
			
		||||
                {"matrix": [1, 1], "x": 3, "y": 0},
 | 
			
		||||
 | 
			
		||||
                {"x": 4.5, "y": 0},
 | 
			
		||||
                {"x": 5.5, "y": 0},
 | 
			
		||||
                {"x": 6.5, "y": 0},
 | 
			
		||||
                {"x": 7.5, "y": 0},
 | 
			
		||||
                {"x": 8.5, "y": 0},
 | 
			
		||||
                {"x": 9.5, "y": 0},
 | 
			
		||||
                {"x": 10.5, "y": 0},
 | 
			
		||||
                {"x": 11.5, "y": 0},
 | 
			
		||||
                {"x": 12.5, "y": 0},
 | 
			
		||||
                {"x": 13.5, "y": 0},
 | 
			
		||||
                {"x": 14.5, "y": 0},
 | 
			
		||||
                {"x": 15.5, "y": 0},
 | 
			
		||||
                {"x": 16.5, "y": 0},
 | 
			
		||||
                {"x": 17.5, "y": 0},
 | 
			
		||||
                {"x": 18.5, "y": 0},
 | 
			
		||||
                {"x": 19.5, "y": 0},
 | 
			
		||||
                {"matrix": [0, 2], "x": 4.5, "y": 0},
 | 
			
		||||
                {"matrix": [1, 2], "x": 5.5, "y": 0},
 | 
			
		||||
                {"matrix": [0, 3], "x": 6.5, "y": 0},
 | 
			
		||||
                {"matrix": [1, 3], "x": 7.5, "y": 0},
 | 
			
		||||
                {"matrix": [0, 4], "x": 8.5, "y": 0},
 | 
			
		||||
                {"matrix": [1, 4], "x": 9.5, "y": 0},
 | 
			
		||||
                {"matrix": [0, 5], "x": 10.5, "y": 0},
 | 
			
		||||
                {"matrix": [1, 5], "x": 11.5, "y": 0},
 | 
			
		||||
                {"matrix": [0, 6], "x": 12.5, "y": 0},
 | 
			
		||||
                {"matrix": [1, 6], "x": 13.5, "y": 0},
 | 
			
		||||
                {"matrix": [0, 7], "x": 14.5, "y": 0},
 | 
			
		||||
                {"matrix": [1, 7], "x": 15.5, "y": 0},
 | 
			
		||||
                {"matrix": [0, 8], "x": 16.5, "y": 0},
 | 
			
		||||
                {"matrix": [1, 8], "x": 17.5, "y": 0},
 | 
			
		||||
                {"matrix": [5, 8], "x": 18.5, "y": 0},
 | 
			
		||||
                {"matrix": [0, 9], "x": 19.5, "y": 0},
 | 
			
		||||
 | 
			
		||||
                {"x": 0, "y": 1},
 | 
			
		||||
                {"x": 1, "y": 1},
 | 
			
		||||
                {"x": 2, "y": 1},
 | 
			
		||||
                {"x": 3, "y": 1},
 | 
			
		||||
                {"matrix": [2, 0], "x": 0, "y": 1},
 | 
			
		||||
                {"matrix": [3, 0], "x": 1, "y": 1},
 | 
			
		||||
                {"matrix": [2, 1], "x": 2, "y": 1},
 | 
			
		||||
                {"matrix": [3, 1], "x": 3, "y": 1},
 | 
			
		||||
 | 
			
		||||
                {"x": 4.5, "y": 1, "w": 1.5},
 | 
			
		||||
                {"x": 6, "y": 1},
 | 
			
		||||
                {"x": 7, "y": 1},
 | 
			
		||||
                {"x": 8, "y": 1},
 | 
			
		||||
                {"x": 9, "y": 1},
 | 
			
		||||
                {"x": 10, "y": 1},
 | 
			
		||||
                {"x": 11, "y": 1},
 | 
			
		||||
                {"x": 12, "y": 1},
 | 
			
		||||
                {"x": 13, "y": 1},
 | 
			
		||||
                {"x": 14, "y": 1},
 | 
			
		||||
                {"x": 15, "y": 1},
 | 
			
		||||
                {"x": 16, "y": 1},
 | 
			
		||||
                {"x": 17, "y": 1},
 | 
			
		||||
                {"x": 18, "y": 1, "w": 1.5},
 | 
			
		||||
                {"x": 19.5, "y": 1},
 | 
			
		||||
                {"matrix": [2, 2], "x": 4.5, "y": 1, "w": 1.5},
 | 
			
		||||
                {"matrix": [3, 2], "x": 6, "y": 1},
 | 
			
		||||
                {"matrix": [2, 3], "x": 7, "y": 1},
 | 
			
		||||
                {"matrix": [3, 3], "x": 8, "y": 1},
 | 
			
		||||
                {"matrix": [2, 4], "x": 9, "y": 1},
 | 
			
		||||
                {"matrix": [3, 4], "x": 10, "y": 1},
 | 
			
		||||
                {"matrix": [2, 5], "x": 11, "y": 1},
 | 
			
		||||
                {"matrix": [3, 5], "x": 12, "y": 1},
 | 
			
		||||
                {"matrix": [2, 6], "x": 13, "y": 1},
 | 
			
		||||
                {"matrix": [3, 6], "x": 14, "y": 1},
 | 
			
		||||
                {"matrix": [2, 7], "x": 15, "y": 1},
 | 
			
		||||
                {"matrix": [3, 7], "x": 16, "y": 1},
 | 
			
		||||
                {"matrix": [2, 8], "x": 17, "y": 1},
 | 
			
		||||
                {"matrix": [3, 8], "x": 18, "y": 1, "w": 1.5},
 | 
			
		||||
                {"matrix": [2, 9], "x": 19.5, "y": 1},
 | 
			
		||||
 | 
			
		||||
                {"x": 0, "y": 2},
 | 
			
		||||
                {"x": 1, "y": 2},
 | 
			
		||||
                {"x": 2, "y": 2},
 | 
			
		||||
                {"x": 3, "y": 2},
 | 
			
		||||
                {"matrix": [4, 0], "x": 0, "y": 2},
 | 
			
		||||
                {"matrix": [5, 0], "x": 1, "y": 2},
 | 
			
		||||
                {"matrix": [4, 1], "x": 2, "y": 2},
 | 
			
		||||
                {"matrix": [5, 1], "x": 3, "y": 2},
 | 
			
		||||
 | 
			
		||||
                {"x": 4.5, "y": 2, "w": 1.75},
 | 
			
		||||
                {"x": 6.25, "y": 2},
 | 
			
		||||
                {"x": 7.25, "y": 2},
 | 
			
		||||
                {"x": 8.25, "y": 2},
 | 
			
		||||
                {"x": 9.25, "y": 2},
 | 
			
		||||
                {"x": 10.25, "y": 2},
 | 
			
		||||
                {"x": 11.25, "y": 2},
 | 
			
		||||
                {"x": 12.25, "y": 2},
 | 
			
		||||
                {"x": 13.25, "y": 2},
 | 
			
		||||
                {"x": 14.25, "y": 2},
 | 
			
		||||
                {"x": 15.25, "y": 2},
 | 
			
		||||
                {"x": 16.25, "y": 2},
 | 
			
		||||
                {"x": 17.25, "y": 2, "w": 2.25},
 | 
			
		||||
                {"x": 19.5, "y": 2},
 | 
			
		||||
                {"matrix": [4, 2], "x": 4.5, "y": 2, "w": 1.75},
 | 
			
		||||
                {"matrix": [5, 2], "x": 6.25, "y": 2},
 | 
			
		||||
                {"matrix": [4, 3], "x": 7.25, "y": 2},
 | 
			
		||||
                {"matrix": [5, 3], "x": 8.25, "y": 2},
 | 
			
		||||
                {"matrix": [4, 4], "x": 9.25, "y": 2},
 | 
			
		||||
                {"matrix": [5, 4], "x": 10.25, "y": 2},
 | 
			
		||||
                {"matrix": [4, 5], "x": 11.25, "y": 2},
 | 
			
		||||
                {"matrix": [5, 5], "x": 12.25, "y": 2},
 | 
			
		||||
                {"matrix": [4, 6], "x": 13.25, "y": 2},
 | 
			
		||||
                {"matrix": [5, 6], "x": 14.25, "y": 2},
 | 
			
		||||
                {"matrix": [4, 7], "x": 15.25, "y": 2},
 | 
			
		||||
                {"matrix": [5, 7], "x": 16.25, "y": 2},
 | 
			
		||||
                {"matrix": [4, 8], "x": 17.25, "y": 2, "w": 2.25},
 | 
			
		||||
                {"matrix": [4, 9], "x": 19.5, "y": 2},
 | 
			
		||||
 | 
			
		||||
                {"x": 0, "y": 3},
 | 
			
		||||
                {"x": 1, "y": 3},
 | 
			
		||||
                {"x": 2, "y": 3},
 | 
			
		||||
                {"x": 3, "y": 3},
 | 
			
		||||
                {"matrix": [6, 0], "x": 0, "y": 3},
 | 
			
		||||
                {"matrix": [7, 0], "x": 1, "y": 3},
 | 
			
		||||
                {"matrix": [6, 1], "x": 2, "y": 3},
 | 
			
		||||
                {"matrix": [7, 1], "x": 3, "y": 3},
 | 
			
		||||
 | 
			
		||||
                {"x": 4.5, "y": 3, "w": 2.25},
 | 
			
		||||
                {"x": 6.75, "y": 3},
 | 
			
		||||
                {"x": 7.75, "y": 3},
 | 
			
		||||
                {"x": 8.75, "y": 3},
 | 
			
		||||
                {"x": 9.75, "y": 3},
 | 
			
		||||
                {"x": 10.75, "y": 3},
 | 
			
		||||
                {"x": 11.75, "y": 3},
 | 
			
		||||
                {"x": 12.75, "y": 3},
 | 
			
		||||
                {"x": 13.75, "y": 3},
 | 
			
		||||
                {"x": 14.75, "y": 3},
 | 
			
		||||
                {"x": 15.75, "y": 3},
 | 
			
		||||
                {"x": 16.75, "y": 3, "w": 1.75},
 | 
			
		||||
                {"x": 18.5, "y": 3},
 | 
			
		||||
                {"x": 19.5, "y": 3},
 | 
			
		||||
                {"matrix": [6, 2], "x": 4.5, "y": 3, "w": 2.25},
 | 
			
		||||
                {"matrix": [7, 2], "x": 6.75, "y": 3},
 | 
			
		||||
                {"matrix": [6, 3], "x": 7.75, "y": 3},
 | 
			
		||||
                {"matrix": [7, 3], "x": 8.75, "y": 3},
 | 
			
		||||
                {"matrix": [6, 4], "x": 9.75, "y": 3},
 | 
			
		||||
                {"matrix": [7, 4], "x": 10.75, "y": 3},
 | 
			
		||||
                {"matrix": [6, 5], "x": 11.75, "y": 3},
 | 
			
		||||
                {"matrix": [7, 5], "x": 12.75, "y": 3},
 | 
			
		||||
                {"matrix": [6, 6], "x": 13.75, "y": 3},
 | 
			
		||||
                {"matrix": [7, 6], "x": 14.75, "y": 3},
 | 
			
		||||
                {"matrix": [6, 7], "x": 15.75, "y": 3},
 | 
			
		||||
                {"matrix": [7, 8], "x": 16.75, "y": 3, "w": 1.75},
 | 
			
		||||
                {"matrix": [6, 8], "x": 18.5, "y": 3},
 | 
			
		||||
                {"matrix": [7, 9], "x": 19.5, "y": 3},
 | 
			
		||||
 | 
			
		||||
                {"x": 0, "y": 4},
 | 
			
		||||
                {"x": 1, "y": 4},
 | 
			
		||||
                {"x": 2, "y": 4},
 | 
			
		||||
                {"x": 3, "y": 4},
 | 
			
		||||
                {"x": 4.5, "y": 4, "w": 1.5},
 | 
			
		||||
                {"x": 6, "y": 4},
 | 
			
		||||
                {"x": 7, "y": 4, "w": 1.5},
 | 
			
		||||
                {"x": 8.5, "y": 4, "w": 6.25},
 | 
			
		||||
                {"x": 14.75, "y": 4, "w": 1.25},
 | 
			
		||||
                {"x": 16, "y": 4},
 | 
			
		||||
                {"matrix": [8, 0], "x": 0, "y": 4},
 | 
			
		||||
                {"matrix": [9, 0], "x": 1, "y": 4},
 | 
			
		||||
                {"matrix": [8, 1], "x": 2, "y": 4},
 | 
			
		||||
                {"matrix": [9, 1], "x": 3, "y": 4},
 | 
			
		||||
 | 
			
		||||
                {"x": 17.5, "y": 4},
 | 
			
		||||
                {"x": 18.5, "y": 4},
 | 
			
		||||
                {"x": 19.5, "y": 4}
 | 
			
		||||
                {"matrix": [8, 2], "x": 4.5, "y": 4, "w": 1.5},
 | 
			
		||||
                {"matrix": [9, 2], "x": 6, "y": 4},
 | 
			
		||||
                {"matrix": [8, 3], "x": 7, "y": 4, "w": 1.5},
 | 
			
		||||
                {"matrix": [8, 5], "x": 8.5, "y": 4, "w": 6.25},
 | 
			
		||||
                {"matrix": [9, 6], "x": 14.75, "y": 4, "w": 1.25},
 | 
			
		||||
                {"matrix": [8, 7], "x": 16, "y": 4},
 | 
			
		||||
 | 
			
		||||
                {"matrix": [9, 8], "x": 17.5, "y": 4},
 | 
			
		||||
                {"matrix": [8, 8], "x": 18.5, "y": 4},
 | 
			
		||||
                {"matrix": [9, 9], "x": 19.5, "y": 4}
 | 
			
		||||
            ]
 | 
			
		||||
        }
 | 
			
		||||
    }
 | 
			
		||||
| 
						 | 
				
			
			
 | 
			
		|||
| 
						 | 
				
			
			@ -14,7 +14,7 @@
 | 
			
		|||
 * along with this program.  If not, see <http://www.gnu.org/licenses/>.
 | 
			
		||||
 */
 | 
			
		||||
 | 
			
		||||
#include "rev1.h"
 | 
			
		||||
#include "quantum.h"
 | 
			
		||||
 | 
			
		||||
void keyboard_pre_init_user(void) {
 | 
			
		||||
  // Call the keyboard pre init code.
 | 
			
		||||
| 
						 | 
				
			
			
 | 
			
		|||
| 
						 | 
				
			
			@ -1,40 +0,0 @@
 | 
			
		|||
/* Copyright 2020 Harrison Chan (Xelus)
 | 
			
		||||
 *
 | 
			
		||||
 * 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 ____ KC_NO
 | 
			
		||||
 | 
			
		||||
#define LAYOUT_ext65( \
 | 
			
		||||
  K000, K100, K001, K101,  K002, K102, K003, K103, K004, K104, K005, K105, K006, K106, K007, K107, K008, K108, K508, K009, \
 | 
			
		||||
  K200, K300, K201, K301,  K202, K302, K203, K303, K204, K304, K205, K305, K206, K306, K207, K307, K208, K308,       K209, \
 | 
			
		||||
  K400, K500, K401, K501,  K402, K502, K403, K503, K404, K504, K405, K505, K406, K506, K407, K507, K408,             K409, \
 | 
			
		||||
  K600, K700, K601, K701,  K602, K702, K603, K703, K604, K704, K605, K705, K606, K706, K607, K708,             K608, K709, \
 | 
			
		||||
  K800, K900, K801, K901,  K802, K902, K803,                   K805,             K906, K807,             K908, K808, K909  \
 | 
			
		||||
) { \
 | 
			
		||||
  { K000, K001, K002, K003, K004, K005, K006, K007, K008, K009 }, \
 | 
			
		||||
  { K100, K101, K102, K103, K104, K105, K106, K107, K108, ____ }, \
 | 
			
		||||
  { K200, K201, K202, K203, K204, K205, K206, K207, K208, K209 }, \
 | 
			
		||||
  { K300, K301, K302, K303, K304, K305, K306, K307, K308, ____ }, \
 | 
			
		||||
  { K400, K401, K402, K403, K404, K405, K406, K407, K408, K409 }, \
 | 
			
		||||
  { K500, K501, K502, K503, K504, K505, K506, K507, K508, ____ }, \
 | 
			
		||||
  { K600, K601, K602, K603, K604, K605, K606, K607, K608, ____ }, \
 | 
			
		||||
  { K700, K701, K702, K703, K704, K705, K706, ____, K708, K709 }, \
 | 
			
		||||
  { K800, K801, K802, K803, ____, K805, ____, K807, K808, ____ }, \
 | 
			
		||||
  { K900, K901, K902, ____, ____, ____, K906, ____, K908, K909 } \
 | 
			
		||||
}
 | 
			
		||||
| 
						 | 
				
			
			@ -26,103 +26,104 @@
 | 
			
		|||
    "layouts": {
 | 
			
		||||
        "LAYOUT_ext65": {
 | 
			
		||||
            "layout": [
 | 
			
		||||
                {"x": 0, "y": 0},
 | 
			
		||||
                {"x": 1, "y": 0},
 | 
			
		||||
                {"x": 2, "y": 0},
 | 
			
		||||
                {"x": 3, "y": 0},
 | 
			
		||||
                {"matrix": [0, 0], "x": 0, "y": 0},
 | 
			
		||||
                {"matrix": [1, 0], "x": 1, "y": 0},
 | 
			
		||||
                {"matrix": [0, 1], "x": 2, "y": 0},
 | 
			
		||||
                {"matrix": [1, 1], "x": 3, "y": 0},
 | 
			
		||||
 | 
			
		||||
                {"x": 4.5, "y": 0},
 | 
			
		||||
                {"x": 5.5, "y": 0},
 | 
			
		||||
                {"x": 6.5, "y": 0},
 | 
			
		||||
                {"x": 7.5, "y": 0},
 | 
			
		||||
                {"x": 8.5, "y": 0},
 | 
			
		||||
                {"x": 9.5, "y": 0},
 | 
			
		||||
                {"x": 10.5, "y": 0},
 | 
			
		||||
                {"x": 11.5, "y": 0},
 | 
			
		||||
                {"x": 12.5, "y": 0},
 | 
			
		||||
                {"x": 13.5, "y": 0},
 | 
			
		||||
                {"x": 14.5, "y": 0},
 | 
			
		||||
                {"x": 15.5, "y": 0},
 | 
			
		||||
                {"x": 16.5, "y": 0},
 | 
			
		||||
                {"x": 17.5, "y": 0},
 | 
			
		||||
                {"x": 18.5, "y": 0},
 | 
			
		||||
                {"x": 19.5, "y": 0},
 | 
			
		||||
                {"matrix": [0, 2], "x": 4.5, "y": 0},
 | 
			
		||||
                {"matrix": [1, 2], "x": 5.5, "y": 0},
 | 
			
		||||
                {"matrix": [0, 3], "x": 6.5, "y": 0},
 | 
			
		||||
                {"matrix": [1, 3], "x": 7.5, "y": 0},
 | 
			
		||||
                {"matrix": [0, 4], "x": 8.5, "y": 0},
 | 
			
		||||
                {"matrix": [1, 4], "x": 9.5, "y": 0},
 | 
			
		||||
                {"matrix": [0, 5], "x": 10.5, "y": 0},
 | 
			
		||||
                {"matrix": [1, 5], "x": 11.5, "y": 0},
 | 
			
		||||
                {"matrix": [0, 6], "x": 12.5, "y": 0},
 | 
			
		||||
                {"matrix": [1, 6], "x": 13.5, "y": 0},
 | 
			
		||||
                {"matrix": [0, 7], "x": 14.5, "y": 0},
 | 
			
		||||
                {"matrix": [1, 7], "x": 15.5, "y": 0},
 | 
			
		||||
                {"matrix": [0, 8], "x": 16.5, "y": 0},
 | 
			
		||||
                {"matrix": [1, 8], "x": 17.5, "y": 0},
 | 
			
		||||
                {"matrix": [5, 8], "x": 18.5, "y": 0},
 | 
			
		||||
                {"matrix": [0, 9], "x": 19.5, "y": 0},
 | 
			
		||||
 | 
			
		||||
                {"x": 0, "y": 1},
 | 
			
		||||
                {"x": 1, "y": 1},
 | 
			
		||||
                {"x": 2, "y": 1},
 | 
			
		||||
                {"x": 3, "y": 1},
 | 
			
		||||
                {"matrix": [2, 0], "x": 0, "y": 1},
 | 
			
		||||
                {"matrix": [3, 0], "x": 1, "y": 1},
 | 
			
		||||
                {"matrix": [2, 1], "x": 2, "y": 1},
 | 
			
		||||
                {"matrix": [3, 1], "x": 3, "y": 1},
 | 
			
		||||
 | 
			
		||||
                {"x": 4.5, "y": 1, "w": 1.5},
 | 
			
		||||
                {"x": 6, "y": 1},
 | 
			
		||||
                {"x": 7, "y": 1},
 | 
			
		||||
                {"x": 8, "y": 1},
 | 
			
		||||
                {"x": 9, "y": 1},
 | 
			
		||||
                {"x": 10, "y": 1},
 | 
			
		||||
                {"x": 11, "y": 1},
 | 
			
		||||
                {"x": 12, "y": 1},
 | 
			
		||||
                {"x": 13, "y": 1},
 | 
			
		||||
                {"x": 14, "y": 1},
 | 
			
		||||
                {"x": 15, "y": 1},
 | 
			
		||||
                {"x": 16, "y": 1},
 | 
			
		||||
                {"x": 17, "y": 1},
 | 
			
		||||
                {"x": 18, "y": 1, "w": 1.5},
 | 
			
		||||
                {"x": 19.5, "y": 1},
 | 
			
		||||
                {"matrix": [2, 2], "x": 4.5, "y": 1, "w": 1.5},
 | 
			
		||||
                {"matrix": [3, 2], "x": 6, "y": 1},
 | 
			
		||||
                {"matrix": [2, 3], "x": 7, "y": 1},
 | 
			
		||||
                {"matrix": [3, 3], "x": 8, "y": 1},
 | 
			
		||||
                {"matrix": [2, 4], "x": 9, "y": 1},
 | 
			
		||||
                {"matrix": [3, 4], "x": 10, "y": 1},
 | 
			
		||||
                {"matrix": [2, 5], "x": 11, "y": 1},
 | 
			
		||||
                {"matrix": [3, 5], "x": 12, "y": 1},
 | 
			
		||||
                {"matrix": [2, 6], "x": 13, "y": 1},
 | 
			
		||||
                {"matrix": [3, 6], "x": 14, "y": 1},
 | 
			
		||||
                {"matrix": [2, 7], "x": 15, "y": 1},
 | 
			
		||||
                {"matrix": [3, 7], "x": 16, "y": 1},
 | 
			
		||||
                {"matrix": [2, 8], "x": 17, "y": 1},
 | 
			
		||||
                {"matrix": [3, 8], "x": 18, "y": 1, "w": 1.5},
 | 
			
		||||
                {"matrix": [2, 9], "x": 19.5, "y": 1},
 | 
			
		||||
 | 
			
		||||
                {"x": 0, "y": 2},
 | 
			
		||||
                {"x": 1, "y": 2},
 | 
			
		||||
                {"x": 2, "y": 2},
 | 
			
		||||
                {"x": 3, "y": 2},
 | 
			
		||||
                {"matrix": [4, 0], "x": 0, "y": 2},
 | 
			
		||||
                {"matrix": [5, 0], "x": 1, "y": 2},
 | 
			
		||||
                {"matrix": [4, 1], "x": 2, "y": 2},
 | 
			
		||||
                {"matrix": [5, 1], "x": 3, "y": 2},
 | 
			
		||||
 | 
			
		||||
                {"x": 4.5, "y": 2, "w": 1.75},
 | 
			
		||||
                {"x": 6.25, "y": 2},
 | 
			
		||||
                {"x": 7.25, "y": 2},
 | 
			
		||||
                {"x": 8.25, "y": 2},
 | 
			
		||||
                {"x": 9.25, "y": 2},
 | 
			
		||||
                {"x": 10.25, "y": 2},
 | 
			
		||||
                {"x": 11.25, "y": 2},
 | 
			
		||||
                {"x": 12.25, "y": 2},
 | 
			
		||||
                {"x": 13.25, "y": 2},
 | 
			
		||||
                {"x": 14.25, "y": 2},
 | 
			
		||||
                {"x": 15.25, "y": 2},
 | 
			
		||||
                {"x": 16.25, "y": 2},
 | 
			
		||||
                {"x": 17.25, "y": 2, "w": 2.25},
 | 
			
		||||
                {"x": 19.5, "y": 2},
 | 
			
		||||
                {"matrix": [4, 2], "x": 4.5, "y": 2, "w": 1.75},
 | 
			
		||||
                {"matrix": [5, 2], "x": 6.25, "y": 2},
 | 
			
		||||
                {"matrix": [4, 3], "x": 7.25, "y": 2},
 | 
			
		||||
                {"matrix": [5, 3], "x": 8.25, "y": 2},
 | 
			
		||||
                {"matrix": [4, 4], "x": 9.25, "y": 2},
 | 
			
		||||
                {"matrix": [5, 4], "x": 10.25, "y": 2},
 | 
			
		||||
                {"matrix": [4, 5], "x": 11.25, "y": 2},
 | 
			
		||||
                {"matrix": [5, 5], "x": 12.25, "y": 2},
 | 
			
		||||
                {"matrix": [4, 6], "x": 13.25, "y": 2},
 | 
			
		||||
                {"matrix": [5, 6], "x": 14.25, "y": 2},
 | 
			
		||||
                {"matrix": [4, 7], "x": 15.25, "y": 2},
 | 
			
		||||
                {"matrix": [5, 7], "x": 16.25, "y": 2},
 | 
			
		||||
                {"matrix": [4, 8], "x": 17.25, "y": 2, "w": 2.25},
 | 
			
		||||
                {"matrix": [4, 9], "x": 19.5, "y": 2},
 | 
			
		||||
 | 
			
		||||
                {"x": 0, "y": 3},
 | 
			
		||||
                {"x": 1, "y": 3},
 | 
			
		||||
                {"x": 2, "y": 3},
 | 
			
		||||
                {"x": 3, "y": 3},
 | 
			
		||||
                {"matrix": [6, 0], "x": 0, "y": 3},
 | 
			
		||||
                {"matrix": [7, 0], "x": 1, "y": 3},
 | 
			
		||||
                {"matrix": [6, 1], "x": 2, "y": 3},
 | 
			
		||||
                {"matrix": [7, 1], "x": 3, "y": 3},
 | 
			
		||||
 | 
			
		||||
                {"x": 4.5, "y": 3, "w": 2.25},
 | 
			
		||||
                {"x": 6.75, "y": 3},
 | 
			
		||||
                {"x": 7.75, "y": 3},
 | 
			
		||||
                {"x": 8.75, "y": 3},
 | 
			
		||||
                {"x": 9.75, "y": 3},
 | 
			
		||||
                {"x": 10.75, "y": 3},
 | 
			
		||||
                {"x": 11.75, "y": 3},
 | 
			
		||||
                {"x": 12.75, "y": 3},
 | 
			
		||||
                {"x": 13.75, "y": 3},
 | 
			
		||||
                {"x": 14.75, "y": 3},
 | 
			
		||||
                {"x": 15.75, "y": 3},
 | 
			
		||||
                {"x": 16.75, "y": 3, "w": 1.75},
 | 
			
		||||
                {"x": 18.5, "y": 3},
 | 
			
		||||
                {"x": 19.5, "y": 3},
 | 
			
		||||
                {"matrix": [6, 2], "x": 4.5, "y": 3, "w": 2.25},
 | 
			
		||||
                {"matrix": [7, 2], "x": 6.75, "y": 3},
 | 
			
		||||
                {"matrix": [6, 3], "x": 7.75, "y": 3},
 | 
			
		||||
                {"matrix": [7, 3], "x": 8.75, "y": 3},
 | 
			
		||||
                {"matrix": [6, 4], "x": 9.75, "y": 3},
 | 
			
		||||
                {"matrix": [7, 4], "x": 10.75, "y": 3},
 | 
			
		||||
                {"matrix": [6, 5], "x": 11.75, "y": 3},
 | 
			
		||||
                {"matrix": [7, 5], "x": 12.75, "y": 3},
 | 
			
		||||
                {"matrix": [6, 6], "x": 13.75, "y": 3},
 | 
			
		||||
                {"matrix": [7, 6], "x": 14.75, "y": 3},
 | 
			
		||||
                {"matrix": [6, 7], "x": 15.75, "y": 3},
 | 
			
		||||
                {"matrix": [7, 8], "x": 16.75, "y": 3, "w": 1.75},
 | 
			
		||||
                {"matrix": [6, 8], "x": 18.5, "y": 3},
 | 
			
		||||
                {"matrix": [7, 9], "x": 19.5, "y": 3},
 | 
			
		||||
 | 
			
		||||
                {"x": 0, "y": 4},
 | 
			
		||||
                {"x": 1, "y": 4},
 | 
			
		||||
                {"x": 2, "y": 4},
 | 
			
		||||
                {"x": 3, "y": 4},
 | 
			
		||||
                {"x": 4.5, "y": 4, "w": 1.5},
 | 
			
		||||
                {"x": 6, "y": 4},
 | 
			
		||||
                {"x": 7, "y": 4, "w": 1.5},
 | 
			
		||||
                {"x": 8.5, "y": 4, "w": 6.25},
 | 
			
		||||
                {"x": 14.75, "y": 4, "w": 1.25},
 | 
			
		||||
                {"x": 16, "y": 4},
 | 
			
		||||
                {"matrix": [8, 0], "x": 0, "y": 4},
 | 
			
		||||
                {"matrix": [9, 0], "x": 1, "y": 4},
 | 
			
		||||
                {"matrix": [8, 1], "x": 2, "y": 4},
 | 
			
		||||
                {"matrix": [9, 1], "x": 3, "y": 4},
 | 
			
		||||
 | 
			
		||||
                {"x": 17.5, "y": 4},
 | 
			
		||||
                {"x": 18.5, "y": 4},
 | 
			
		||||
                {"x": 19.5, "y": 4}
 | 
			
		||||
                {"matrix": [8, 2], "x": 4.5, "y": 4, "w": 1.5},
 | 
			
		||||
                {"matrix": [9, 2], "x": 6, "y": 4},
 | 
			
		||||
                {"matrix": [8, 3], "x": 7, "y": 4, "w": 1.5},
 | 
			
		||||
                {"matrix": [8, 5], "x": 8.5, "y": 4, "w": 6.25},
 | 
			
		||||
                {"matrix": [9, 6], "x": 14.75, "y": 4, "w": 1.25},
 | 
			
		||||
                {"matrix": [8, 7], "x": 16, "y": 4},
 | 
			
		||||
 | 
			
		||||
                {"matrix": [9, 8], "x": 17.5, "y": 4},
 | 
			
		||||
                {"matrix": [8, 8], "x": 18.5, "y": 4},
 | 
			
		||||
                {"matrix": [9, 9], "x": 19.5, "y": 4}
 | 
			
		||||
            ]
 | 
			
		||||
        }
 | 
			
		||||
    }
 | 
			
		||||
| 
						 | 
				
			
			
 | 
			
		|||
| 
						 | 
				
			
			@ -14,7 +14,7 @@
 | 
			
		|||
 * along with this program.  If not, see <http://www.gnu.org/licenses/>.
 | 
			
		||||
 */
 | 
			
		||||
 | 
			
		||||
#include "rev2.h"
 | 
			
		||||
#include "quantum.h"
 | 
			
		||||
 | 
			
		||||
// Tested and verified working on ext65rev2
 | 
			
		||||
void matrix_io_delay(void) { __asm__ volatile("nop\nnop\nnop\n"); }
 | 
			
		||||
| 
						 | 
				
			
			
 | 
			
		|||
| 
						 | 
				
			
			@ -1,40 +0,0 @@
 | 
			
		|||
/* Copyright 2020 Harrison Chan (Xelus)
 | 
			
		||||
 *
 | 
			
		||||
 * 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 ____ KC_NO
 | 
			
		||||
 | 
			
		||||
#define LAYOUT_ext65( \
 | 
			
		||||
  K000, K100, K001, K101,  K002, K102, K003, K103, K004, K104, K005, K105, K006, K106, K007, K107, K008, K108, K508, K009, \
 | 
			
		||||
  K200, K300, K201, K301,  K202, K302, K203, K303, K204, K304, K205, K305, K206, K306, K207, K307, K208, K308,       K209, \
 | 
			
		||||
  K400, K500, K401, K501,  K402, K502, K403, K503, K404, K504, K405, K505, K406, K506, K407, K507, K408,             K409, \
 | 
			
		||||
  K600, K700, K601, K701,  K602, K702, K603, K703, K604, K704, K605, K705, K606, K706, K607, K708,             K608, K709, \
 | 
			
		||||
  K800, K900, K801, K901,  K802, K902, K803,                   K805,             K906, K807,             K908, K808, K909  \
 | 
			
		||||
) { \
 | 
			
		||||
  { K000, K001, K002, K003, K004, K005, K006, K007, K008, K009 }, \
 | 
			
		||||
  { K100, K101, K102, K103, K104, K105, K106, K107, K108, ____ }, \
 | 
			
		||||
  { K200, K201, K202, K203, K204, K205, K206, K207, K208, K209 }, \
 | 
			
		||||
  { K300, K301, K302, K303, K304, K305, K306, K307, K308, ____ }, \
 | 
			
		||||
  { K400, K401, K402, K403, K404, K405, K406, K407, K408, K409 }, \
 | 
			
		||||
  { K500, K501, K502, K503, K504, K505, K506, K507, K508, ____ }, \
 | 
			
		||||
  { K600, K601, K602, K603, K604, K605, K606, K607, K608, ____ }, \
 | 
			
		||||
  { K700, K701, K702, K703, K704, K705, K706, ____, K708, K709 }, \
 | 
			
		||||
  { K800, K801, K802, K803, ____, K805, ____, K807, K808, ____ }, \
 | 
			
		||||
  { K900, K901, K902, ____, ____, ____, K906, ____, K908, K909 } \
 | 
			
		||||
}
 | 
			
		||||
| 
						 | 
				
			
			@ -22,425 +22,99 @@
 | 
			
		|||
    "layouts": {
 | 
			
		||||
        "LAYOUT_ext65_hotswap": {
 | 
			
		||||
            "layout": [
 | 
			
		||||
                {
 | 
			
		||||
                    "x": 0,
 | 
			
		||||
                    "y": 0
 | 
			
		||||
                },
 | 
			
		||||
                {
 | 
			
		||||
                    "x": 1,
 | 
			
		||||
                    "y": 0
 | 
			
		||||
                },
 | 
			
		||||
                {
 | 
			
		||||
                    "x": 2,
 | 
			
		||||
                    "y": 0
 | 
			
		||||
                },
 | 
			
		||||
                {
 | 
			
		||||
                    "x": 3,
 | 
			
		||||
                    "y": 0
 | 
			
		||||
                },
 | 
			
		||||
                {
 | 
			
		||||
                    "label": "Esc",
 | 
			
		||||
                    "x": 4.5,
 | 
			
		||||
                    "y": 0
 | 
			
		||||
                },
 | 
			
		||||
                {
 | 
			
		||||
                    "label": "!",
 | 
			
		||||
                    "x": 5.5,
 | 
			
		||||
                    "y": 0
 | 
			
		||||
                },
 | 
			
		||||
                {
 | 
			
		||||
                    "label": "@",
 | 
			
		||||
                    "x": 6.5,
 | 
			
		||||
                    "y": 0
 | 
			
		||||
                },
 | 
			
		||||
                {
 | 
			
		||||
                    "label": "#",
 | 
			
		||||
                    "x": 7.5,
 | 
			
		||||
                    "y": 0
 | 
			
		||||
                },
 | 
			
		||||
                {
 | 
			
		||||
                    "label": "$",
 | 
			
		||||
                    "x": 8.5,
 | 
			
		||||
                    "y": 0
 | 
			
		||||
                },
 | 
			
		||||
                {
 | 
			
		||||
                    "label": "%",
 | 
			
		||||
                    "x": 9.5,
 | 
			
		||||
                    "y": 0
 | 
			
		||||
                },
 | 
			
		||||
                {
 | 
			
		||||
                    "label": "^",
 | 
			
		||||
                    "x": 10.5,
 | 
			
		||||
                    "y": 0
 | 
			
		||||
                },
 | 
			
		||||
                {
 | 
			
		||||
                    "label": "&",
 | 
			
		||||
                    "x": 11.5,
 | 
			
		||||
                    "y": 0
 | 
			
		||||
                },
 | 
			
		||||
                {
 | 
			
		||||
                    "label": "*",
 | 
			
		||||
                    "x": 12.5,
 | 
			
		||||
                    "y": 0
 | 
			
		||||
                },
 | 
			
		||||
                {
 | 
			
		||||
                    "label": "(",
 | 
			
		||||
                    "x": 13.5,
 | 
			
		||||
                    "y": 0
 | 
			
		||||
                },
 | 
			
		||||
                {
 | 
			
		||||
                    "label": ")",
 | 
			
		||||
                    "x": 14.5,
 | 
			
		||||
                    "y": 0
 | 
			
		||||
                },
 | 
			
		||||
                {
 | 
			
		||||
                    "label": "_",
 | 
			
		||||
                    "x": 15.5,
 | 
			
		||||
                    "y": 0
 | 
			
		||||
                },
 | 
			
		||||
                {
 | 
			
		||||
                    "label": "+",
 | 
			
		||||
                    "x": 16.5,
 | 
			
		||||
                    "y": 0
 | 
			
		||||
                },
 | 
			
		||||
                {
 | 
			
		||||
                    "label": "Backspace",
 | 
			
		||||
                    "x": 17.5,
 | 
			
		||||
                    "y": 0,
 | 
			
		||||
                    "w": 2
 | 
			
		||||
                },
 | 
			
		||||
                {
 | 
			
		||||
                    "label": "Home",
 | 
			
		||||
                    "x": 19.5,
 | 
			
		||||
                    "y": 0
 | 
			
		||||
                },
 | 
			
		||||
                {
 | 
			
		||||
                    "x": 0,
 | 
			
		||||
                    "y": 1,
 | 
			
		||||
                    "h": 2
 | 
			
		||||
                },
 | 
			
		||||
                {
 | 
			
		||||
                    "x": 1,
 | 
			
		||||
                    "y": 1
 | 
			
		||||
                },
 | 
			
		||||
                {
 | 
			
		||||
                    "x": 2,
 | 
			
		||||
                    "y": 1
 | 
			
		||||
                },
 | 
			
		||||
                {
 | 
			
		||||
                    "x": 3,
 | 
			
		||||
                    "y": 1
 | 
			
		||||
                },
 | 
			
		||||
                {
 | 
			
		||||
                    "label": "Tab",
 | 
			
		||||
                    "x": 4.5,
 | 
			
		||||
                    "y": 1,
 | 
			
		||||
                    "w": 1.5
 | 
			
		||||
                },
 | 
			
		||||
                {
 | 
			
		||||
                    "label": "Q",
 | 
			
		||||
                    "x": 6,
 | 
			
		||||
                    "y": 1
 | 
			
		||||
                },
 | 
			
		||||
                {
 | 
			
		||||
                    "label": "W",
 | 
			
		||||
                    "x": 7,
 | 
			
		||||
                    "y": 1
 | 
			
		||||
                },
 | 
			
		||||
                {
 | 
			
		||||
                    "label": "E",
 | 
			
		||||
                    "x": 8,
 | 
			
		||||
                    "y": 1
 | 
			
		||||
                },
 | 
			
		||||
                {
 | 
			
		||||
                    "label": "R",
 | 
			
		||||
                    "x": 9,
 | 
			
		||||
                    "y": 1
 | 
			
		||||
                },
 | 
			
		||||
                {
 | 
			
		||||
                    "label": "T",
 | 
			
		||||
                    "x": 10,
 | 
			
		||||
                    "y": 1
 | 
			
		||||
                },
 | 
			
		||||
                {
 | 
			
		||||
                    "label": "Y",
 | 
			
		||||
                    "x": 11,
 | 
			
		||||
                    "y": 1
 | 
			
		||||
                },
 | 
			
		||||
                {
 | 
			
		||||
                    "label": "U",
 | 
			
		||||
                    "x": 12,
 | 
			
		||||
                    "y": 1
 | 
			
		||||
                },
 | 
			
		||||
                {
 | 
			
		||||
                    "label": "I",
 | 
			
		||||
                    "x": 13,
 | 
			
		||||
                    "y": 1
 | 
			
		||||
                },
 | 
			
		||||
                {
 | 
			
		||||
                    "label": "O",
 | 
			
		||||
                    "x": 14,
 | 
			
		||||
                    "y": 1
 | 
			
		||||
                },
 | 
			
		||||
                {
 | 
			
		||||
                    "label": "P",
 | 
			
		||||
                    "x": 15,
 | 
			
		||||
                    "y": 1
 | 
			
		||||
                },
 | 
			
		||||
                {
 | 
			
		||||
                    "label": "{",
 | 
			
		||||
                    "x": 16,
 | 
			
		||||
                    "y": 1
 | 
			
		||||
                },
 | 
			
		||||
                {
 | 
			
		||||
                    "label": "}",
 | 
			
		||||
                    "x": 17,
 | 
			
		||||
                    "y": 1
 | 
			
		||||
                },
 | 
			
		||||
                {
 | 
			
		||||
                    "label": "|",
 | 
			
		||||
                    "x": 18,
 | 
			
		||||
                    "y": 1,
 | 
			
		||||
                    "w": 1.5
 | 
			
		||||
                },
 | 
			
		||||
                {
 | 
			
		||||
                    "label": "PgUp",
 | 
			
		||||
                    "x": 19.5,
 | 
			
		||||
                    "y": 1
 | 
			
		||||
                },
 | 
			
		||||
                {
 | 
			
		||||
                    "x": 1,
 | 
			
		||||
                    "y": 2
 | 
			
		||||
                },
 | 
			
		||||
                {
 | 
			
		||||
                    "x": 2,
 | 
			
		||||
                    "y": 2
 | 
			
		||||
                },
 | 
			
		||||
                {
 | 
			
		||||
                    "x": 3,
 | 
			
		||||
                    "y": 2
 | 
			
		||||
                },
 | 
			
		||||
                {
 | 
			
		||||
                    "label": "Caps Lock",
 | 
			
		||||
                    "x": 4.5,
 | 
			
		||||
                    "y": 2,
 | 
			
		||||
                    "w": 1.75
 | 
			
		||||
                },
 | 
			
		||||
                {
 | 
			
		||||
                    "label": "A",
 | 
			
		||||
                    "x": 6.25,
 | 
			
		||||
                    "y": 2
 | 
			
		||||
                },
 | 
			
		||||
                {
 | 
			
		||||
                    "label": "S",
 | 
			
		||||
                    "x": 7.25,
 | 
			
		||||
                    "y": 2
 | 
			
		||||
                },
 | 
			
		||||
                {
 | 
			
		||||
                    "label": "D",
 | 
			
		||||
                    "x": 8.25,
 | 
			
		||||
                    "y": 2
 | 
			
		||||
                },
 | 
			
		||||
                {
 | 
			
		||||
                    "label": "F",
 | 
			
		||||
                    "x": 9.25,
 | 
			
		||||
                    "y": 2
 | 
			
		||||
                },
 | 
			
		||||
                {
 | 
			
		||||
                    "label": "G",
 | 
			
		||||
                    "x": 10.25,
 | 
			
		||||
                    "y": 2
 | 
			
		||||
                },
 | 
			
		||||
                {
 | 
			
		||||
                    "label": "H",
 | 
			
		||||
                    "x": 11.25,
 | 
			
		||||
                    "y": 2
 | 
			
		||||
                },
 | 
			
		||||
                {
 | 
			
		||||
                    "label": "J",
 | 
			
		||||
                    "x": 12.25,
 | 
			
		||||
                    "y": 2
 | 
			
		||||
                },
 | 
			
		||||
                {
 | 
			
		||||
                    "label": "K",
 | 
			
		||||
                    "x": 13.25,
 | 
			
		||||
                    "y": 2
 | 
			
		||||
                },
 | 
			
		||||
                {
 | 
			
		||||
                    "label": "L",
 | 
			
		||||
                    "x": 14.25,
 | 
			
		||||
                    "y": 2
 | 
			
		||||
                },
 | 
			
		||||
                {
 | 
			
		||||
                    "label": ":",
 | 
			
		||||
                    "x": 15.25,
 | 
			
		||||
                    "y": 2
 | 
			
		||||
                },
 | 
			
		||||
                {
 | 
			
		||||
                    "label": "\"",
 | 
			
		||||
                    "x": 16.25,
 | 
			
		||||
                    "y": 2
 | 
			
		||||
                },
 | 
			
		||||
                {
 | 
			
		||||
                    "label": "Enter",
 | 
			
		||||
                    "x": 17.25,
 | 
			
		||||
                    "y": 2,
 | 
			
		||||
                    "w": 2.25
 | 
			
		||||
                },
 | 
			
		||||
                {
 | 
			
		||||
                    "label": "PgDn",
 | 
			
		||||
                    "x": 19.5,
 | 
			
		||||
                    "y": 2
 | 
			
		||||
                },
 | 
			
		||||
                {
 | 
			
		||||
                    "x": 0,
 | 
			
		||||
                    "y": 3,
 | 
			
		||||
                    "h": 2
 | 
			
		||||
                },
 | 
			
		||||
                {
 | 
			
		||||
                    "x": 1,
 | 
			
		||||
                    "y": 3
 | 
			
		||||
                },
 | 
			
		||||
                {
 | 
			
		||||
                    "x": 2,
 | 
			
		||||
                    "y": 3
 | 
			
		||||
                },
 | 
			
		||||
                {
 | 
			
		||||
                    "x": 3,
 | 
			
		||||
                    "y": 3
 | 
			
		||||
                },
 | 
			
		||||
                {
 | 
			
		||||
                    "label": "Shift",
 | 
			
		||||
                    "x": 4.5,
 | 
			
		||||
                    "y": 3,
 | 
			
		||||
                    "w": 2.25
 | 
			
		||||
                },
 | 
			
		||||
                {
 | 
			
		||||
                    "label": "Z",
 | 
			
		||||
                    "x": 6.75,
 | 
			
		||||
                    "y": 3
 | 
			
		||||
                },
 | 
			
		||||
                {
 | 
			
		||||
                    "label": "X",
 | 
			
		||||
                    "x": 7.75,
 | 
			
		||||
                    "y": 3
 | 
			
		||||
                },
 | 
			
		||||
                {
 | 
			
		||||
                    "label": "C",
 | 
			
		||||
                    "x": 8.75,
 | 
			
		||||
                    "y": 3
 | 
			
		||||
                },
 | 
			
		||||
                {
 | 
			
		||||
                    "label": "V",
 | 
			
		||||
                    "x": 9.75,
 | 
			
		||||
                    "y": 3
 | 
			
		||||
                },
 | 
			
		||||
                {
 | 
			
		||||
                    "label": "B",
 | 
			
		||||
                    "x": 10.75,
 | 
			
		||||
                    "y": 3
 | 
			
		||||
                },
 | 
			
		||||
                {
 | 
			
		||||
                    "label": "N",
 | 
			
		||||
                    "x": 11.75,
 | 
			
		||||
                    "y": 3
 | 
			
		||||
                },
 | 
			
		||||
                {
 | 
			
		||||
                    "label": "M",
 | 
			
		||||
                    "x": 12.75,
 | 
			
		||||
                    "y": 3
 | 
			
		||||
                },
 | 
			
		||||
                {
 | 
			
		||||
                    "label": "<",
 | 
			
		||||
                    "x": 13.75,
 | 
			
		||||
                    "y": 3
 | 
			
		||||
                },
 | 
			
		||||
                {
 | 
			
		||||
                    "label": ">",
 | 
			
		||||
                    "x": 14.75,
 | 
			
		||||
                    "y": 3
 | 
			
		||||
                },
 | 
			
		||||
                {
 | 
			
		||||
                    "label": "?",
 | 
			
		||||
                    "x": 15.75,
 | 
			
		||||
                    "y": 3
 | 
			
		||||
                },
 | 
			
		||||
                {
 | 
			
		||||
                    "label": "Shift",
 | 
			
		||||
                    "x": 16.75,
 | 
			
		||||
                    "y": 3,
 | 
			
		||||
                    "w": 1.75
 | 
			
		||||
                },
 | 
			
		||||
                {
 | 
			
		||||
                    "label": "\u2191",
 | 
			
		||||
                    "x": 18.5,
 | 
			
		||||
                    "y": 3
 | 
			
		||||
                },
 | 
			
		||||
                {
 | 
			
		||||
                    "label": "End",
 | 
			
		||||
                    "x": 19.5,
 | 
			
		||||
                    "y": 3
 | 
			
		||||
                },
 | 
			
		||||
                {
 | 
			
		||||
                    "x": 1,
 | 
			
		||||
                    "y": 4
 | 
			
		||||
                },
 | 
			
		||||
                {
 | 
			
		||||
                    "x": 2,
 | 
			
		||||
                    "y": 4,
 | 
			
		||||
                    "w": 2
 | 
			
		||||
                },
 | 
			
		||||
                {
 | 
			
		||||
                    "label": "Ctrl",
 | 
			
		||||
                    "x": 4.5,
 | 
			
		||||
                    "y": 4,
 | 
			
		||||
                    "w": 1.25
 | 
			
		||||
                },
 | 
			
		||||
                {
 | 
			
		||||
                    "label": "Win",
 | 
			
		||||
                    "x": 5.75,
 | 
			
		||||
                    "y": 4,
 | 
			
		||||
                    "w": 1.25
 | 
			
		||||
                },
 | 
			
		||||
                {
 | 
			
		||||
                    "label": "Alt",
 | 
			
		||||
                    "x": 7,
 | 
			
		||||
                    "y": 4,
 | 
			
		||||
                    "w": 1.25
 | 
			
		||||
                },
 | 
			
		||||
                {
 | 
			
		||||
                    "label": "Space",
 | 
			
		||||
                    "x": 8.25,
 | 
			
		||||
                    "y": 4,
 | 
			
		||||
                    "w": 6.25
 | 
			
		||||
                },
 | 
			
		||||
                {
 | 
			
		||||
                    "label": "Alt",
 | 
			
		||||
                    "x": 14.5,
 | 
			
		||||
                    "y": 4,
 | 
			
		||||
                    "w": 1.5
 | 
			
		||||
                },
 | 
			
		||||
                {
 | 
			
		||||
                    "label": "Fn",
 | 
			
		||||
                    "x": 16,
 | 
			
		||||
                    "y": 4,
 | 
			
		||||
                    "w": 1.5
 | 
			
		||||
                },
 | 
			
		||||
                {
 | 
			
		||||
                    "label": "\u2190",
 | 
			
		||||
                    "x": 17.5,
 | 
			
		||||
                    "y": 4
 | 
			
		||||
                },
 | 
			
		||||
                {
 | 
			
		||||
                    "label": "\u2193",
 | 
			
		||||
                    "x": 18.5,
 | 
			
		||||
                    "y": 4
 | 
			
		||||
                },
 | 
			
		||||
                {
 | 
			
		||||
                    "label": "\u2192",
 | 
			
		||||
                    "x": 19.5,
 | 
			
		||||
                    "y": 4
 | 
			
		||||
                }
 | 
			
		||||
                {"matrix": [0, 0], "x": 0, "y": 0},
 | 
			
		||||
                {"matrix": [1, 0], "x": 1, "y": 0},
 | 
			
		||||
                {"matrix": [0, 1], "x": 2, "y": 0},
 | 
			
		||||
                {"matrix": [1, 1], "x": 3, "y": 0},
 | 
			
		||||
 | 
			
		||||
                {"matrix": [0, 2], "x": 4.5, "y": 0},
 | 
			
		||||
                {"matrix": [1, 2], "x": 5.5, "y": 0},
 | 
			
		||||
                {"matrix": [0, 3], "x": 6.5, "y": 0},
 | 
			
		||||
                {"matrix": [1, 3], "x": 7.5, "y": 0},
 | 
			
		||||
                {"matrix": [0, 4], "x": 8.5, "y": 0},
 | 
			
		||||
                {"matrix": [1, 4], "x": 9.5, "y": 0},
 | 
			
		||||
                {"matrix": [0, 5], "x": 10.5, "y": 0},
 | 
			
		||||
                {"matrix": [1, 5], "x": 11.5, "y": 0},
 | 
			
		||||
                {"matrix": [0, 6], "x": 12.5, "y": 0},
 | 
			
		||||
                {"matrix": [1, 6], "x": 13.5, "y": 0},
 | 
			
		||||
                {"matrix": [0, 7], "x": 14.5, "y": 0},
 | 
			
		||||
                {"matrix": [1, 7], "x": 15.5, "y": 0},
 | 
			
		||||
                {"matrix": [0, 8], "x": 16.5, "y": 0},
 | 
			
		||||
                {"matrix": [1, 8], "x": 17.5, "y": 0, "w": 2},
 | 
			
		||||
                {"matrix": [0, 9], "x": 19.5, "y": 0},
 | 
			
		||||
 | 
			
		||||
                {"matrix": [2, 0], "x": 0, "y": 1, "h": 2},
 | 
			
		||||
                {"matrix": [3, 0], "x": 1, "y": 1},
 | 
			
		||||
                {"matrix": [2, 1], "x": 2, "y": 1},
 | 
			
		||||
                {"matrix": [3, 1], "x": 3, "y": 1},
 | 
			
		||||
 | 
			
		||||
                {"matrix": [2, 2], "x": 4.5, "y": 1, "w": 1.5},
 | 
			
		||||
                {"matrix": [3, 2], "x": 6, "y": 1},
 | 
			
		||||
                {"matrix": [2, 3], "x": 7, "y": 1},
 | 
			
		||||
                {"matrix": [3, 3], "x": 8, "y": 1},
 | 
			
		||||
                {"matrix": [2, 4], "x": 9, "y": 1},
 | 
			
		||||
                {"matrix": [3, 4], "x": 10, "y": 1},
 | 
			
		||||
                {"matrix": [2, 5], "x": 11, "y": 1},
 | 
			
		||||
                {"matrix": [3, 5], "x": 12, "y": 1},
 | 
			
		||||
                {"matrix": [2, 6], "x": 13, "y": 1},
 | 
			
		||||
                {"matrix": [3, 6], "x": 14, "y": 1},
 | 
			
		||||
                {"matrix": [2, 7], "x": 15, "y": 1},
 | 
			
		||||
                {"matrix": [3, 7], "x": 16, "y": 1},
 | 
			
		||||
                {"matrix": [2, 8], "x": 17, "y": 1},
 | 
			
		||||
                {"matrix": [3, 8], "x": 18, "y": 1, "w": 1.5},
 | 
			
		||||
                {"matrix": [2, 9], "x": 19.5, "y": 1},
 | 
			
		||||
 | 
			
		||||
                {"matrix": [5, 0], "x": 1, "y": 2},
 | 
			
		||||
                {"matrix": [4, 1], "x": 2, "y": 2},
 | 
			
		||||
                {"matrix": [5, 1], "x": 3, "y": 2},
 | 
			
		||||
 | 
			
		||||
                {"matrix": [4, 2], "x": 4.5, "y": 2, "w": 1.75},
 | 
			
		||||
                {"matrix": [5, 2], "x": 6.25, "y": 2},
 | 
			
		||||
                {"matrix": [4, 3], "x": 7.25, "y": 2},
 | 
			
		||||
                {"matrix": [5, 3], "x": 8.25, "y": 2},
 | 
			
		||||
                {"matrix": [4, 4], "x": 9.25, "y": 2},
 | 
			
		||||
                {"matrix": [5, 4], "x": 10.25, "y": 2},
 | 
			
		||||
                {"matrix": [4, 5], "x": 11.25, "y": 2},
 | 
			
		||||
                {"matrix": [5, 5], "x": 12.25, "y": 2},
 | 
			
		||||
                {"matrix": [4, 6], "x": 13.25, "y": 2},
 | 
			
		||||
                {"matrix": [5, 6], "x": 14.25, "y": 2},
 | 
			
		||||
                {"matrix": [4, 7], "x": 15.25, "y": 2},
 | 
			
		||||
                {"matrix": [5, 7], "x": 16.25, "y": 2},
 | 
			
		||||
                {"matrix": [4, 8], "x": 17.25, "y": 2, "w": 2.25},
 | 
			
		||||
                {"matrix": [4, 9], "x": 19.5, "y": 2},
 | 
			
		||||
 | 
			
		||||
                {"matrix": [6, 0], "x": 0, "y": 3, "h": 2},
 | 
			
		||||
                {"matrix": [7, 0], "x": 1, "y": 3},
 | 
			
		||||
                {"matrix": [6, 1], "x": 2, "y": 3},
 | 
			
		||||
                {"matrix": [7, 1], "x": 3, "y": 3},
 | 
			
		||||
 | 
			
		||||
                {"matrix": [6, 2], "x": 4.5, "y": 3, "w": 2.25},
 | 
			
		||||
                {"matrix": [7, 2], "x": 6.75, "y": 3},
 | 
			
		||||
                {"matrix": [6, 3], "x": 7.75, "y": 3},
 | 
			
		||||
                {"matrix": [7, 3], "x": 8.75, "y": 3},
 | 
			
		||||
                {"matrix": [6, 4], "x": 9.75, "y": 3},
 | 
			
		||||
                {"matrix": [7, 4], "x": 10.75, "y": 3},
 | 
			
		||||
                {"matrix": [6, 5], "x": 11.75, "y": 3},
 | 
			
		||||
                {"matrix": [7, 5], "x": 12.75, "y": 3},
 | 
			
		||||
                {"matrix": [6, 6], "x": 13.75, "y": 3},
 | 
			
		||||
                {"matrix": [7, 6], "x": 14.75, "y": 3},
 | 
			
		||||
                {"matrix": [6, 7], "x": 15.75, "y": 3},
 | 
			
		||||
                {"matrix": [7, 8], "x": 16.75, "y": 3, "w": 1.75},
 | 
			
		||||
                {"matrix": [6, 8], "x": 18.5, "y": 3},
 | 
			
		||||
                {"matrix": [7, 9], "x": 19.5, "y": 3},
 | 
			
		||||
 | 
			
		||||
                {"matrix": [9, 0], "x": 1, "y": 4},
 | 
			
		||||
                {"matrix": [8, 1], "x": 2, "y": 4, "w": 2},
 | 
			
		||||
 | 
			
		||||
                {"matrix": [8, 2], "x": 4.5, "y": 4, "w": 1.25},
 | 
			
		||||
                {"matrix": [9, 2], "x": 5.75, "y": 4, "w": 1.25},
 | 
			
		||||
                {"matrix": [8, 3], "x": 7, "y": 4, "w": 1.25},
 | 
			
		||||
                {"matrix": [8, 5], "x": 8.25, "y": 4, "w": 6.25},
 | 
			
		||||
                {"matrix": [9, 6], "x": 14.5, "y": 4, "w": 1.5},
 | 
			
		||||
                {"matrix": [8, 7], "x": 16, "y": 4, "w": 1.5},
 | 
			
		||||
                {"matrix": [9, 8], "x": 17.5, "y": 4},
 | 
			
		||||
                {"matrix": [8, 8], "x": 18.5, "y": 4},
 | 
			
		||||
                {"matrix": [9, 9], "x": 19.5, "y": 4}
 | 
			
		||||
            ]
 | 
			
		||||
        }
 | 
			
		||||
    }
 | 
			
		||||
| 
						 | 
				
			
			
 | 
			
		|||
| 
						 | 
				
			
			@ -14,7 +14,7 @@
 | 
			
		|||
 * along with this program.  If not, see <http://www.gnu.org/licenses/>.
 | 
			
		||||
 */
 | 
			
		||||
 | 
			
		||||
#include "rev3.h"
 | 
			
		||||
#include "quantum.h"
 | 
			
		||||
 | 
			
		||||
// Tested and verified working on EXT65 Rev3
 | 
			
		||||
void matrix_io_delay(void) { __asm__ volatile("nop\nnop\nnop\n"); }
 | 
			
		||||
| 
						 | 
				
			
			
 | 
			
		|||
| 
						 | 
				
			
			@ -1,40 +0,0 @@
 | 
			
		|||
/* Copyright 2022 Harrison Chan (Xelus)
 | 
			
		||||
 *
 | 
			
		||||
 * 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 ____ KC_NO
 | 
			
		||||
 | 
			
		||||
#define LAYOUT_ext65_hotswap( \
 | 
			
		||||
  K000, K100, K001, K101,  K002, K102, K003, K103, K004, K104, K005, K105, K006, K106, K007, K107, K008, K108, K009, \
 | 
			
		||||
  K200, K300, K201, K301,  K202, K302, K203, K303, K204, K304, K205, K305, K206, K306, K207, K307, K208, K308, K209, \
 | 
			
		||||
        K500, K401, K501,  K402, K502, K403, K503, K404, K504, K405, K505, K406, K506, K407, K507, K408,       K409, \
 | 
			
		||||
  K600, K700, K601, K701,  K602, K702, K603, K703, K604, K704, K605, K705, K606, K706, K607, K708,       K608, K709, \
 | 
			
		||||
        K900, K801,        K802, K902, K803,                   K805,             K906, K807,       K908, K808, K909  \
 | 
			
		||||
) { \
 | 
			
		||||
  { K000, K001, K002, K003, K004, K005, K006, K007, K008, K009 }, \
 | 
			
		||||
  { K100, K101, K102, K103, K104, K105, K106, K107, K108, ____ }, \
 | 
			
		||||
  { K200, K201, K202, K203, K204, K205, K206, K207, K208, K209 }, \
 | 
			
		||||
  { K300, K301, K302, K303, K304, K305, K306, K307, K308, ____ }, \
 | 
			
		||||
  { ____, K401, K402, K403, K404, K405, K406, K407, K408, K409 }, \
 | 
			
		||||
  { K500, K501, K502, K503, K504, K505, K506, K507, ____, ____ }, \
 | 
			
		||||
  { K600, K601, K602, K603, K604, K605, K606, K607, K608, ____ }, \
 | 
			
		||||
  { K700, K701, K702, K703, K704, K705, K706, ____, K708, K709 }, \
 | 
			
		||||
  { ____, K801, K802, K803, ____, K805, ____, K807, K808, ____ }, \
 | 
			
		||||
  { K900, ____, K902, ____, ____, ____, K906, ____, K908, K909 } \
 | 
			
		||||
}
 | 
			
		||||
		Loading…
	
	Add table
		Add a link
		
	
		Reference in a new issue