mirror of
https://github.com/qmk/qmk_firmware.git
synced 2025-07-23 08:02:03 +00:00
Compare commits
3 Commits
01593501e3
...
34bc896cf9
Author | SHA1 | Date | |
---|---|---|---|
|
34bc896cf9 | ||
|
11d49d00e7 | ||
|
9991894514 |
@ -21,6 +21,20 @@
|
|||||||
"items": {"type": "string"}
|
"items": {"type": "string"}
|
||||||
}
|
}
|
||||||
},
|
},
|
||||||
|
"encoders": {
|
||||||
|
"type": "array",
|
||||||
|
"items": {
|
||||||
|
"type": "array",
|
||||||
|
"items": {
|
||||||
|
"type": "object",
|
||||||
|
"required": ["ccw", "cw"],
|
||||||
|
"properties": {
|
||||||
|
"ccw": {"type": "string"},
|
||||||
|
"cw": {"type": "string"}
|
||||||
|
}
|
||||||
|
}
|
||||||
|
}
|
||||||
|
},
|
||||||
"macros": {
|
"macros": {
|
||||||
"type": "array",
|
"type": "array",
|
||||||
"items": {
|
"items": {
|
||||||
|
@ -77,7 +77,7 @@ void matrix_init(void) {
|
|||||||
debounce_init(MATRIX_ROWS);
|
debounce_init(MATRIX_ROWS);
|
||||||
|
|
||||||
// This *must* be called for correct keyboard behavior
|
// This *must* be called for correct keyboard behavior
|
||||||
matrix_init_quantum();
|
matrix_init_kb();
|
||||||
}
|
}
|
||||||
|
|
||||||
uint8_t matrix_scan(void) {
|
uint8_t matrix_scan(void) {
|
||||||
@ -89,7 +89,7 @@ uint8_t matrix_scan(void) {
|
|||||||
changed = debounce(raw_matrix, matrix, MATRIX_ROWS, changed);
|
changed = debounce(raw_matrix, matrix, MATRIX_ROWS, changed);
|
||||||
|
|
||||||
// This *must* be called for correct keyboard behavior
|
// This *must* be called for correct keyboard behavior
|
||||||
matrix_scan_quantum();
|
matrix_scan_kb();
|
||||||
|
|
||||||
return changed;
|
return changed;
|
||||||
}
|
}
|
||||||
|
@ -83,7 +83,7 @@ void matrix_init(void) {
|
|||||||
debounce_init(MATRIX_ROWS);
|
debounce_init(MATRIX_ROWS);
|
||||||
|
|
||||||
// 正しいキーボード動作のためにこれを呼び出す*必要があります*
|
// 正しいキーボード動作のためにこれを呼び出す*必要があります*
|
||||||
matrix_init_quantum();
|
matrix_init_kb();
|
||||||
}
|
}
|
||||||
|
|
||||||
uint8_t matrix_scan(void) {
|
uint8_t matrix_scan(void) {
|
||||||
@ -95,7 +95,7 @@ uint8_t matrix_scan(void) {
|
|||||||
changed = debounce(raw_matrix, matrix, MATRIX_ROWS, changed);
|
changed = debounce(raw_matrix, matrix, MATRIX_ROWS, changed);
|
||||||
|
|
||||||
// 正しいキーボード動作のためにこれを呼び出す*必要があります*
|
// 正しいキーボード動作のためにこれを呼び出す*必要があります*
|
||||||
matrix_scan_quantum();
|
matrix_scan_kb();
|
||||||
|
|
||||||
return changed;
|
return changed;
|
||||||
}
|
}
|
||||||
|
@ -182,7 +182,7 @@ void matrix_init(void)
|
|||||||
matrix_debouncing[i] = 0;
|
matrix_debouncing[i] = 0;
|
||||||
}
|
}
|
||||||
|
|
||||||
matrix_init_quantum();
|
matrix_init_kb();
|
||||||
}
|
}
|
||||||
|
|
||||||
uint8_t matrix_scan(void)
|
uint8_t matrix_scan(void)
|
||||||
@ -214,7 +214,7 @@ uint8_t matrix_scan(void)
|
|||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
matrix_scan_quantum();
|
matrix_scan_kb();
|
||||||
return 1;
|
return 1;
|
||||||
}
|
}
|
||||||
|
|
||||||
|
@ -85,7 +85,7 @@ void matrix_init(void) {
|
|||||||
matrix[i] = 0;
|
matrix[i] = 0;
|
||||||
matrix_debouncing[i] = 0;
|
matrix_debouncing[i] = 0;
|
||||||
}
|
}
|
||||||
matrix_init_quantum();
|
matrix_init_kb();
|
||||||
}
|
}
|
||||||
|
|
||||||
uint8_t matrix_scan(void) {
|
uint8_t matrix_scan(void) {
|
||||||
@ -113,7 +113,7 @@ uint8_t matrix_scan(void) {
|
|||||||
}
|
}
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
matrix_scan_quantum();
|
matrix_scan_kb();
|
||||||
return 1;
|
return 1;
|
||||||
}
|
}
|
||||||
|
|
||||||
|
@ -80,7 +80,7 @@ void matrix_init(void)
|
|||||||
matrix_debouncing[i] = 0;
|
matrix_debouncing[i] = 0;
|
||||||
}
|
}
|
||||||
|
|
||||||
matrix_init_quantum();
|
matrix_init_kb();
|
||||||
}
|
}
|
||||||
|
|
||||||
uint8_t matrix_scan(void)
|
uint8_t matrix_scan(void)
|
||||||
@ -109,7 +109,7 @@ uint8_t matrix_scan(void)
|
|||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
matrix_scan_quantum();
|
matrix_scan_kb();
|
||||||
|
|
||||||
return 1;
|
return 1;
|
||||||
}
|
}
|
||||||
|
@ -70,7 +70,7 @@ void matrix_init(void)
|
|||||||
matrix_debouncing[i] = 0;
|
matrix_debouncing[i] = 0;
|
||||||
}
|
}
|
||||||
|
|
||||||
matrix_init_quantum();
|
matrix_init_kb();
|
||||||
}
|
}
|
||||||
|
|
||||||
uint8_t matrix_scan(void)
|
uint8_t matrix_scan(void)
|
||||||
@ -90,7 +90,7 @@ uint8_t matrix_scan(void)
|
|||||||
}
|
}
|
||||||
|
|
||||||
debounce(matrix_debouncing, matrix, matrix_rows(), changed);
|
debounce(matrix_debouncing, matrix, matrix_rows(), changed);
|
||||||
matrix_scan_quantum();
|
matrix_scan_kb();
|
||||||
|
|
||||||
return (uint8_t)changed;
|
return (uint8_t)changed;
|
||||||
}
|
}
|
||||||
|
@ -98,7 +98,7 @@ void matrix_init(void) {
|
|||||||
for (uint8_t i=0; i < MATRIX_ROWS; i++)
|
for (uint8_t i=0; i < MATRIX_ROWS; i++)
|
||||||
matrix[i] = matrix_debouncing[i] = 0;
|
matrix[i] = matrix_debouncing[i] = 0;
|
||||||
|
|
||||||
matrix_init_quantum();
|
matrix_init_kb();
|
||||||
}
|
}
|
||||||
|
|
||||||
uint8_t matrix_scan(void) {
|
uint8_t matrix_scan(void) {
|
||||||
@ -124,7 +124,7 @@ uint8_t matrix_scan(void) {
|
|||||||
matrix[i] = matrix_debouncing[i];
|
matrix[i] = matrix_debouncing[i];
|
||||||
}
|
}
|
||||||
|
|
||||||
matrix_scan_quantum();
|
matrix_scan_kb();
|
||||||
return 1;
|
return 1;
|
||||||
}
|
}
|
||||||
|
|
||||||
|
@ -99,7 +99,7 @@ void matrix_init(void) {
|
|||||||
for (uint8_t i=0; i < MATRIX_ROWS; i++)
|
for (uint8_t i=0; i < MATRIX_ROWS; i++)
|
||||||
matrix[i] = matrix_debouncing[i] = 0;
|
matrix[i] = matrix_debouncing[i] = 0;
|
||||||
|
|
||||||
matrix_init_quantum();
|
matrix_init_kb();
|
||||||
}
|
}
|
||||||
|
|
||||||
uint8_t matrix_scan(void) {
|
uint8_t matrix_scan(void) {
|
||||||
@ -125,7 +125,7 @@ uint8_t matrix_scan(void) {
|
|||||||
matrix[i] = matrix_debouncing[i];
|
matrix[i] = matrix_debouncing[i];
|
||||||
}
|
}
|
||||||
|
|
||||||
matrix_scan_quantum();
|
matrix_scan_kb();
|
||||||
return 1;
|
return 1;
|
||||||
}
|
}
|
||||||
|
|
||||||
|
@ -76,7 +76,7 @@ void matrix_init(void)
|
|||||||
// debug_mouse = true;
|
// debug_mouse = true;
|
||||||
// print("debug enabled.\n");
|
// print("debug enabled.\n");
|
||||||
|
|
||||||
matrix_init_quantum();
|
matrix_init_kb();
|
||||||
}
|
}
|
||||||
|
|
||||||
#ifdef ADB_MOUSE_ENABLE
|
#ifdef ADB_MOUSE_ENABLE
|
||||||
@ -241,7 +241,7 @@ uint8_t matrix_scan(void)
|
|||||||
extra_key = key1<<8 | 0xFF; // process in a separate call
|
extra_key = key1<<8 | 0xFF; // process in a separate call
|
||||||
}
|
}
|
||||||
|
|
||||||
matrix_scan_quantum();
|
matrix_scan_kb();
|
||||||
return 1;
|
return 1;
|
||||||
}
|
}
|
||||||
|
|
||||||
|
@ -50,16 +50,6 @@ static uint8_t matrix_debounce_old [MATRIX_ROWS] = {0};
|
|||||||
static uint8_t matrix_debounce_new [MATRIX_ROWS] = {0};
|
static uint8_t matrix_debounce_new [MATRIX_ROWS] = {0};
|
||||||
#endif
|
#endif
|
||||||
|
|
||||||
__attribute__ ((weak))
|
|
||||||
void matrix_init_quantum(void) {
|
|
||||||
matrix_init_kb();
|
|
||||||
}
|
|
||||||
|
|
||||||
__attribute__ ((weak))
|
|
||||||
void matrix_scan_quantum(void) {
|
|
||||||
matrix_scan_kb();
|
|
||||||
}
|
|
||||||
|
|
||||||
__attribute__ ((weak))
|
__attribute__ ((weak))
|
||||||
void matrix_init_kb(void) {
|
void matrix_init_kb(void) {
|
||||||
matrix_init_user();
|
matrix_init_user();
|
||||||
@ -161,7 +151,7 @@ void matrix_init (void) {
|
|||||||
DDRD |= LED ;
|
DDRD |= LED ;
|
||||||
PORTD &= ~LED ;
|
PORTD &= ~LED ;
|
||||||
|
|
||||||
matrix_init_quantum();
|
matrix_init_kb();
|
||||||
|
|
||||||
//toggle reset, to put the keyboard logic into a known state
|
//toggle reset, to put the keyboard logic into a known state
|
||||||
Matrix_Reset() ;
|
Matrix_Reset() ;
|
||||||
@ -206,7 +196,7 @@ uint8_t matrix_scan(void) {
|
|||||||
#endif
|
#endif
|
||||||
Matrix_Reset() ;
|
Matrix_Reset() ;
|
||||||
|
|
||||||
matrix_scan_quantum() ;
|
matrix_scan_kb() ;
|
||||||
return 1;
|
return 1;
|
||||||
}
|
}
|
||||||
|
|
||||||
|
@ -72,7 +72,7 @@ void matrix_init(void)
|
|||||||
for (uint8_t i=0; i < MATRIX_ROWS; i++) _matrix0[i] = 0x00;
|
for (uint8_t i=0; i < MATRIX_ROWS; i++) _matrix0[i] = 0x00;
|
||||||
matrix = _matrix0;
|
matrix = _matrix0;
|
||||||
|
|
||||||
matrix_init_quantum();
|
matrix_init_kb();
|
||||||
return;
|
return;
|
||||||
}
|
}
|
||||||
|
|
||||||
@ -96,7 +96,7 @@ uint8_t matrix_scan(void)
|
|||||||
print("["); print_hex8(key); print("]\n");
|
print("["); print_hex8(key); print("]\n");
|
||||||
}
|
}
|
||||||
|
|
||||||
matrix_scan_quantum();
|
matrix_scan_kb();
|
||||||
return 1;
|
return 1;
|
||||||
}
|
}
|
||||||
|
|
||||||
|
@ -280,7 +280,7 @@ void matrix_init(void)
|
|||||||
// initialize matrix state: all keys off
|
// initialize matrix state: all keys off
|
||||||
for (uint8_t i=0; i < MATRIX_ROWS; i++) matrix[i] = 0x00;
|
for (uint8_t i=0; i < MATRIX_ROWS; i++) matrix[i] = 0x00;
|
||||||
|
|
||||||
matrix_init_quantum();
|
matrix_init_kb();
|
||||||
return;
|
return;
|
||||||
|
|
||||||
|
|
||||||
@ -348,7 +348,7 @@ uint8_t matrix_scan(void)
|
|||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
matrix_scan_quantum();
|
matrix_scan_kb();
|
||||||
return code;
|
return code;
|
||||||
}
|
}
|
||||||
|
|
||||||
|
@ -109,7 +109,7 @@ void matrix_init(void) {
|
|||||||
memset(matrix, 0, MATRIX_ROWS * sizeof(matrix_row_t));
|
memset(matrix, 0, MATRIX_ROWS * sizeof(matrix_row_t));
|
||||||
memset(matrix_debouncing, 0, MATRIX_ROWS * sizeof(matrix_row_t));
|
memset(matrix_debouncing, 0, MATRIX_ROWS * sizeof(matrix_row_t));
|
||||||
|
|
||||||
matrix_init_quantum();
|
matrix_init_kb();
|
||||||
|
|
||||||
osalSysLock();
|
osalSysLock();
|
||||||
enable_input_events();
|
enable_input_events();
|
||||||
@ -215,7 +215,7 @@ uint8_t matrix_scan(void) {
|
|||||||
porta_buffer = 65535;
|
porta_buffer = 65535;
|
||||||
portb_buffer = 65535;
|
portb_buffer = 65535;
|
||||||
|
|
||||||
matrix_scan_quantum();
|
matrix_scan_kb();
|
||||||
return 1;
|
return 1;
|
||||||
}
|
}
|
||||||
|
|
||||||
|
@ -97,7 +97,7 @@ void matrix_init(void)
|
|||||||
|
|
||||||
/* PORTD &= ~(1<<6); */
|
/* PORTD &= ~(1<<6); */
|
||||||
|
|
||||||
matrix_init_quantum();
|
matrix_init_kb();
|
||||||
return;
|
return;
|
||||||
}
|
}
|
||||||
|
|
||||||
@ -148,7 +148,7 @@ uint8_t matrix_scan(void)
|
|||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
matrix_scan_quantum();
|
matrix_scan_kb();
|
||||||
return code;
|
return code;
|
||||||
}
|
}
|
||||||
|
|
||||||
|
@ -93,7 +93,7 @@ extern "C" {
|
|||||||
kbd2.SetReportParser(0, (HIDReportParser*)&kbd_parser2);
|
kbd2.SetReportParser(0, (HIDReportParser*)&kbd_parser2);
|
||||||
kbd3.SetReportParser(0, (HIDReportParser*)&kbd_parser3);
|
kbd3.SetReportParser(0, (HIDReportParser*)&kbd_parser3);
|
||||||
kbd4.SetReportParser(0, (HIDReportParser*)&kbd_parser4);
|
kbd4.SetReportParser(0, (HIDReportParser*)&kbd_parser4);
|
||||||
matrix_init_quantum();
|
matrix_init_kb();
|
||||||
}
|
}
|
||||||
|
|
||||||
static void or_report(report_keyboard_t report) {
|
static void or_report(report_keyboard_t report) {
|
||||||
@ -182,7 +182,7 @@ extern "C" {
|
|||||||
led_set(host_keyboard_leds());
|
led_set(host_keyboard_leds());
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
matrix_scan_quantum();
|
matrix_scan_kb();
|
||||||
return changed;
|
return changed;
|
||||||
}
|
}
|
||||||
|
|
||||||
|
@ -59,7 +59,7 @@ void matrix_init(void) {
|
|||||||
matrix[i] = 0x00;
|
matrix[i] = 0x00;
|
||||||
}
|
}
|
||||||
|
|
||||||
matrix_init_quantum();
|
matrix_init_kb();
|
||||||
}
|
}
|
||||||
|
|
||||||
// convert E0-escaped codes into unused area
|
// convert E0-escaped codes into unused area
|
||||||
@ -188,7 +188,7 @@ uint8_t matrix_scan(void) {
|
|||||||
state = XT_STATE_INIT;
|
state = XT_STATE_INIT;
|
||||||
}
|
}
|
||||||
|
|
||||||
matrix_scan_quantum();
|
matrix_scan_kb();
|
||||||
|
|
||||||
return 1;
|
return 1;
|
||||||
}
|
}
|
||||||
|
@ -88,16 +88,6 @@ static matrix_row_t matrix_debouncing[MATRIX_ROWS];
|
|||||||
static void select_col(uint8_t col);
|
static void select_col(uint8_t col);
|
||||||
#endif
|
#endif
|
||||||
|
|
||||||
__attribute__ ((weak))
|
|
||||||
void matrix_init_quantum(void) {
|
|
||||||
matrix_init_kb();
|
|
||||||
}
|
|
||||||
|
|
||||||
__attribute__ ((weak))
|
|
||||||
void matrix_scan_quantum(void) {
|
|
||||||
matrix_scan_kb();
|
|
||||||
}
|
|
||||||
|
|
||||||
__attribute__ ((weak))
|
__attribute__ ((weak))
|
||||||
void matrix_init_kb(void) {
|
void matrix_init_kb(void) {
|
||||||
matrix_init_user();
|
matrix_init_user();
|
||||||
@ -143,7 +133,7 @@ void matrix_init(void) {
|
|||||||
matrix_debouncing[i] = 0;
|
matrix_debouncing[i] = 0;
|
||||||
}
|
}
|
||||||
|
|
||||||
matrix_init_quantum();
|
matrix_init_kb();
|
||||||
}
|
}
|
||||||
|
|
||||||
uint8_t matrix_scan(void)
|
uint8_t matrix_scan(void)
|
||||||
@ -198,7 +188,7 @@ uint8_t matrix_scan(void)
|
|||||||
i2c_slave_reg[i+2] = matrix[i]; //send matrix over i2c
|
i2c_slave_reg[i+2] = matrix[i]; //send matrix over i2c
|
||||||
}
|
}
|
||||||
|
|
||||||
matrix_scan_quantum();
|
matrix_scan_kb();
|
||||||
return 1;
|
return 1;
|
||||||
}
|
}
|
||||||
|
|
||||||
|
@ -92,16 +92,6 @@ static matrix_row_t matrix_debouncing[MATRIX_ROWS];
|
|||||||
static void select_col(uint8_t col);
|
static void select_col(uint8_t col);
|
||||||
#endif
|
#endif
|
||||||
|
|
||||||
__attribute__ ((weak))
|
|
||||||
void matrix_init_quantum(void) {
|
|
||||||
matrix_init_kb();
|
|
||||||
}
|
|
||||||
|
|
||||||
__attribute__ ((weak))
|
|
||||||
void matrix_scan_quantum(void) {
|
|
||||||
matrix_scan_kb();
|
|
||||||
}
|
|
||||||
|
|
||||||
__attribute__ ((weak))
|
__attribute__ ((weak))
|
||||||
void matrix_init_kb(void) {
|
void matrix_init_kb(void) {
|
||||||
matrix_init_user();
|
matrix_init_user();
|
||||||
@ -154,7 +144,7 @@ void matrix_init(void) {
|
|||||||
matrix_debouncing[i] = 0;
|
matrix_debouncing[i] = 0;
|
||||||
}
|
}
|
||||||
|
|
||||||
matrix_init_quantum();
|
matrix_init_kb();
|
||||||
}
|
}
|
||||||
|
|
||||||
uint8_t matrix_scan(void)
|
uint8_t matrix_scan(void)
|
||||||
@ -223,7 +213,7 @@ if (i2c_transaction(SLAVE_I2C_ADDRESS_NUMPAD, 0x1FFFF, 11)) {
|
|||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
matrix_scan_quantum();
|
matrix_scan_kb();
|
||||||
return 1;
|
return 1;
|
||||||
}
|
}
|
||||||
|
|
||||||
|
@ -88,16 +88,6 @@ static matrix_row_t matrix_debouncing[MATRIX_ROWS];
|
|||||||
static void select_col(uint8_t col);
|
static void select_col(uint8_t col);
|
||||||
#endif
|
#endif
|
||||||
|
|
||||||
__attribute__ ((weak))
|
|
||||||
void matrix_init_quantum(void) {
|
|
||||||
matrix_init_kb();
|
|
||||||
}
|
|
||||||
|
|
||||||
__attribute__ ((weak))
|
|
||||||
void matrix_scan_quantum(void) {
|
|
||||||
matrix_scan_kb();
|
|
||||||
}
|
|
||||||
|
|
||||||
__attribute__ ((weak))
|
__attribute__ ((weak))
|
||||||
void matrix_init_kb(void) {
|
void matrix_init_kb(void) {
|
||||||
matrix_init_user();
|
matrix_init_user();
|
||||||
@ -143,7 +133,7 @@ void matrix_init(void) {
|
|||||||
matrix_debouncing[i] = 0;
|
matrix_debouncing[i] = 0;
|
||||||
}
|
}
|
||||||
|
|
||||||
matrix_init_quantum();
|
matrix_init_kb();
|
||||||
}
|
}
|
||||||
|
|
||||||
uint8_t matrix_scan(void)
|
uint8_t matrix_scan(void)
|
||||||
@ -198,7 +188,7 @@ uint8_t matrix_scan(void)
|
|||||||
i2c_slave_reg[i+2] = matrix[i]; //send matrix over i2c
|
i2c_slave_reg[i+2] = matrix[i]; //send matrix over i2c
|
||||||
}
|
}
|
||||||
|
|
||||||
matrix_scan_quantum();
|
matrix_scan_kb();
|
||||||
return 1;
|
return 1;
|
||||||
}
|
}
|
||||||
|
|
||||||
|
@ -89,16 +89,6 @@ static matrix_row_t matrix_debouncing[MATRIX_ROWS];
|
|||||||
static void select_col(uint8_t col);
|
static void select_col(uint8_t col);
|
||||||
#endif
|
#endif
|
||||||
|
|
||||||
__attribute__ ((weak))
|
|
||||||
void matrix_init_quantum(void) {
|
|
||||||
matrix_init_kb();
|
|
||||||
}
|
|
||||||
|
|
||||||
__attribute__ ((weak))
|
|
||||||
void matrix_scan_quantum(void) {
|
|
||||||
matrix_scan_kb();
|
|
||||||
}
|
|
||||||
|
|
||||||
__attribute__ ((weak))
|
__attribute__ ((weak))
|
||||||
void matrix_init_kb(void) {
|
void matrix_init_kb(void) {
|
||||||
matrix_init_user();
|
matrix_init_user();
|
||||||
@ -144,7 +134,7 @@ void matrix_init(void) {
|
|||||||
matrix_debouncing[i] = 0;
|
matrix_debouncing[i] = 0;
|
||||||
}
|
}
|
||||||
|
|
||||||
matrix_init_quantum();
|
matrix_init_kb();
|
||||||
}
|
}
|
||||||
|
|
||||||
uint8_t matrix_scan(void)
|
uint8_t matrix_scan(void)
|
||||||
@ -199,7 +189,7 @@ uint8_t matrix_scan(void)
|
|||||||
i2c_slave_reg[i+2] = matrix[i]; //send matrix over i2c
|
i2c_slave_reg[i+2] = matrix[i]; //send matrix over i2c
|
||||||
}
|
}
|
||||||
|
|
||||||
matrix_scan_quantum();
|
matrix_scan_kb();
|
||||||
return 1;
|
return 1;
|
||||||
}
|
}
|
||||||
|
|
||||||
|
@ -53,16 +53,6 @@ along with this program. If not, see <http://www.gnu.org/licenses/>.
|
|||||||
/* matrix state(1:on, 0:off) */
|
/* matrix state(1:on, 0:off) */
|
||||||
static matrix_row_t matrix[MATRIX_ROWS];
|
static matrix_row_t matrix[MATRIX_ROWS];
|
||||||
|
|
||||||
__attribute__ ((weak))
|
|
||||||
void matrix_init_quantum(void) {
|
|
||||||
matrix_init_kb();
|
|
||||||
}
|
|
||||||
|
|
||||||
__attribute__ ((weak))
|
|
||||||
void matrix_scan_quantum(void) {
|
|
||||||
matrix_scan_kb();
|
|
||||||
}
|
|
||||||
|
|
||||||
__attribute__ ((weak))
|
__attribute__ ((weak))
|
||||||
void matrix_init_kb(void) {
|
void matrix_init_kb(void) {
|
||||||
matrix_init_user();
|
matrix_init_user();
|
||||||
@ -92,7 +82,7 @@ uint8_t matrix_cols(void) {
|
|||||||
}
|
}
|
||||||
|
|
||||||
void matrix_init(void) {
|
void matrix_init(void) {
|
||||||
matrix_init_quantum();
|
matrix_init_kb();
|
||||||
uart_init(1000000);
|
uart_init(1000000);
|
||||||
}
|
}
|
||||||
|
|
||||||
@ -190,7 +180,7 @@ uint8_t matrix_scan(void)
|
|||||||
}
|
}
|
||||||
//matrix_print();
|
//matrix_print();
|
||||||
|
|
||||||
matrix_scan_quantum();
|
matrix_scan_kb();
|
||||||
return 1;
|
return 1;
|
||||||
}
|
}
|
||||||
|
|
||||||
|
@ -64,7 +64,7 @@ void matrix_init(void)
|
|||||||
matrix_debouncing[i] = 0;
|
matrix_debouncing[i] = 0;
|
||||||
}
|
}
|
||||||
|
|
||||||
matrix_init_quantum();
|
matrix_init_kb();
|
||||||
}
|
}
|
||||||
|
|
||||||
uint8_t matrix_scan(void)
|
uint8_t matrix_scan(void)
|
||||||
@ -96,7 +96,7 @@ uint8_t matrix_scan(void)
|
|||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
matrix_scan_quantum();
|
matrix_scan_kb();
|
||||||
return 1;
|
return 1;
|
||||||
}
|
}
|
||||||
|
|
||||||
|
@ -78,7 +78,7 @@ void matrix_init(void) {
|
|||||||
matrix_debouncing[i] = 0;
|
matrix_debouncing[i] = 0;
|
||||||
}
|
}
|
||||||
|
|
||||||
matrix_init_quantum();
|
matrix_init_kb();
|
||||||
}
|
}
|
||||||
|
|
||||||
uint8_t matrix_scan(void) {
|
uint8_t matrix_scan(void) {
|
||||||
@ -112,7 +112,7 @@ uint8_t matrix_scan(void) {
|
|||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
matrix_scan_quantum();
|
matrix_scan_kb();
|
||||||
return 1;
|
return 1;
|
||||||
}
|
}
|
||||||
|
|
||||||
|
@ -74,7 +74,7 @@ void matrix_init(void) {
|
|||||||
matrix_debouncing[i] = 0;
|
matrix_debouncing[i] = 0;
|
||||||
}
|
}
|
||||||
|
|
||||||
matrix_init_quantum();
|
matrix_init_kb();
|
||||||
}
|
}
|
||||||
|
|
||||||
uint8_t matrix_scan(void) {
|
uint8_t matrix_scan(void) {
|
||||||
@ -110,7 +110,7 @@ uint8_t matrix_scan(void) {
|
|||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
matrix_scan_quantum();
|
matrix_scan_kb();
|
||||||
return 1;
|
return 1;
|
||||||
}
|
}
|
||||||
|
|
||||||
|
@ -73,7 +73,7 @@ void matrix_init(void) {
|
|||||||
matrix_debouncing[i] = 0;
|
matrix_debouncing[i] = 0;
|
||||||
}
|
}
|
||||||
|
|
||||||
matrix_init_quantum();
|
matrix_init_kb();
|
||||||
}
|
}
|
||||||
|
|
||||||
uint8_t matrix_scan(void) {
|
uint8_t matrix_scan(void) {
|
||||||
@ -107,7 +107,7 @@ uint8_t matrix_scan(void) {
|
|||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
matrix_scan_quantum();
|
matrix_scan_kb();
|
||||||
return 1;
|
return 1;
|
||||||
}
|
}
|
||||||
|
|
||||||
|
@ -78,7 +78,7 @@ void matrix_init(void) {
|
|||||||
matrix_debouncing[i] = 0;
|
matrix_debouncing[i] = 0;
|
||||||
}
|
}
|
||||||
|
|
||||||
matrix_init_quantum();
|
matrix_init_kb();
|
||||||
}
|
}
|
||||||
|
|
||||||
uint8_t matrix_scan(void) {
|
uint8_t matrix_scan(void) {
|
||||||
@ -112,7 +112,7 @@ uint8_t matrix_scan(void) {
|
|||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
matrix_scan_quantum();
|
matrix_scan_kb();
|
||||||
return 1;
|
return 1;
|
||||||
}
|
}
|
||||||
|
|
||||||
|
@ -72,7 +72,7 @@ void matrix_init(void) {
|
|||||||
matrix_debouncing[i] = 0;
|
matrix_debouncing[i] = 0;
|
||||||
}
|
}
|
||||||
|
|
||||||
matrix_init_quantum();
|
matrix_init_kb();
|
||||||
}
|
}
|
||||||
|
|
||||||
uint8_t matrix_scan(void) {
|
uint8_t matrix_scan(void) {
|
||||||
@ -106,7 +106,7 @@ uint8_t matrix_scan(void) {
|
|||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
matrix_scan_quantum();
|
matrix_scan_kb();
|
||||||
return 1;
|
return 1;
|
||||||
}
|
}
|
||||||
|
|
||||||
|
@ -78,7 +78,7 @@ void matrix_init(void) {
|
|||||||
matrix_debouncing[i] = 0;
|
matrix_debouncing[i] = 0;
|
||||||
}
|
}
|
||||||
|
|
||||||
matrix_init_quantum();
|
matrix_init_kb();
|
||||||
}
|
}
|
||||||
|
|
||||||
uint8_t matrix_scan(void) {
|
uint8_t matrix_scan(void) {
|
||||||
@ -112,7 +112,7 @@ uint8_t matrix_scan(void) {
|
|||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
matrix_scan_quantum();
|
matrix_scan_kb();
|
||||||
return 1;
|
return 1;
|
||||||
}
|
}
|
||||||
|
|
||||||
|
@ -56,7 +56,7 @@ void matrix_init(void) {
|
|||||||
debounce_matrix[i * MATRIX_COLS + j] = 0;
|
debounce_matrix[i * MATRIX_COLS + j] = 0;
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
matrix_init_quantum();
|
matrix_init_kb();
|
||||||
}
|
}
|
||||||
|
|
||||||
void matrix_power_up(void) {
|
void matrix_power_up(void) {
|
||||||
@ -115,7 +115,7 @@ uint8_t matrix_scan(void) {
|
|||||||
|
|
||||||
unselect_rows();
|
unselect_rows();
|
||||||
}
|
}
|
||||||
matrix_scan_quantum();
|
matrix_scan_kb();
|
||||||
return 0;
|
return 0;
|
||||||
}
|
}
|
||||||
|
|
||||||
|
@ -120,7 +120,7 @@ void matrix_init(void)
|
|||||||
for (uint8_t i=0; i < MATRIX_ROWS; i++) _matrix1[i] = 0x00;
|
for (uint8_t i=0; i < MATRIX_ROWS; i++) _matrix1[i] = 0x00;
|
||||||
matrix = _matrix0;
|
matrix = _matrix0;
|
||||||
matrix_prev = _matrix1;
|
matrix_prev = _matrix1;
|
||||||
matrix_init_quantum();
|
matrix_init_kb();
|
||||||
}
|
}
|
||||||
|
|
||||||
uint8_t matrix_scan(void)
|
uint8_t matrix_scan(void)
|
||||||
@ -180,7 +180,7 @@ uint8_t matrix_scan(void)
|
|||||||
matrix_last_modified = timer_read32();
|
matrix_last_modified = timer_read32();
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
matrix_scan_quantum();
|
matrix_scan_kb();
|
||||||
return 1;
|
return 1;
|
||||||
}
|
}
|
||||||
|
|
||||||
|
@ -122,7 +122,7 @@ void matrix_init(void)
|
|||||||
for (uint8_t i=0; i < MATRIX_ROWS; i++) _matrix1[i] = 0x00;
|
for (uint8_t i=0; i < MATRIX_ROWS; i++) _matrix1[i] = 0x00;
|
||||||
matrix = _matrix0;
|
matrix = _matrix0;
|
||||||
matrix_prev = _matrix1;
|
matrix_prev = _matrix1;
|
||||||
matrix_init_quantum();
|
matrix_init_kb();
|
||||||
}
|
}
|
||||||
|
|
||||||
uint8_t matrix_scan(void)
|
uint8_t matrix_scan(void)
|
||||||
@ -182,7 +182,7 @@ uint8_t matrix_scan(void)
|
|||||||
matrix_last_modified = timer_read32();
|
matrix_last_modified = timer_read32();
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
matrix_scan_quantum();
|
matrix_scan_kb();
|
||||||
return 1;
|
return 1;
|
||||||
}
|
}
|
||||||
|
|
||||||
|
@ -112,7 +112,7 @@ void matrix_init(void)
|
|||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
matrix_init_quantum();
|
matrix_init_kb();
|
||||||
}
|
}
|
||||||
|
|
||||||
void matrix_power_up(void) {
|
void matrix_power_up(void) {
|
||||||
@ -188,7 +188,7 @@ uint8_t matrix_scan(void)
|
|||||||
unselect_rows();
|
unselect_rows();
|
||||||
}
|
}
|
||||||
|
|
||||||
matrix_scan_quantum();
|
matrix_scan_kb();
|
||||||
|
|
||||||
#ifdef DEBUG_MATRIX
|
#ifdef DEBUG_MATRIX
|
||||||
for (uint8_t c = 0; c < MATRIX_COLS; c++)
|
for (uint8_t c = 0; c < MATRIX_COLS; c++)
|
||||||
|
@ -133,7 +133,7 @@ void matrix_init(void)
|
|||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
matrix_init_quantum();
|
matrix_init_kb();
|
||||||
}
|
}
|
||||||
|
|
||||||
void matrix_power_up(void) {
|
void matrix_power_up(void) {
|
||||||
@ -209,7 +209,7 @@ uint8_t matrix_scan(void)
|
|||||||
unselect_rows();
|
unselect_rows();
|
||||||
}
|
}
|
||||||
|
|
||||||
matrix_scan_quantum();
|
matrix_scan_kb();
|
||||||
|
|
||||||
#ifdef DEBUG_MATRIX
|
#ifdef DEBUG_MATRIX
|
||||||
for (uint8_t c = 0; c < MATRIX_COLS; c++)
|
for (uint8_t c = 0; c < MATRIX_COLS; c++)
|
||||||
|
@ -153,7 +153,7 @@ void matrix_init(void) {
|
|||||||
}
|
}
|
||||||
|
|
||||||
debounce_init(MATRIX_ROWS);
|
debounce_init(MATRIX_ROWS);
|
||||||
matrix_init_quantum();
|
matrix_init_kb();
|
||||||
}
|
}
|
||||||
|
|
||||||
void matrix_power_up(void) {
|
void matrix_power_up(void) {
|
||||||
@ -260,7 +260,7 @@ uint8_t matrix_scan(void) {
|
|||||||
}
|
}
|
||||||
|
|
||||||
debounce(raw_matrix, matrix, MATRIX_ROWS, changed);
|
debounce(raw_matrix, matrix, MATRIX_ROWS, changed);
|
||||||
matrix_scan_quantum();
|
matrix_scan_kb();
|
||||||
|
|
||||||
enableInterrupts();
|
enableInterrupts();
|
||||||
|
|
||||||
|
@ -83,7 +83,7 @@ void matrix_init(void) {
|
|||||||
}
|
}
|
||||||
|
|
||||||
debounce_init(MATRIX_ROWS);
|
debounce_init(MATRIX_ROWS);
|
||||||
matrix_init_quantum();
|
matrix_init_kb();
|
||||||
}
|
}
|
||||||
void matrix_power_up(void) {
|
void matrix_power_up(void) {
|
||||||
mcp23018_status = init_mcp23018();
|
mcp23018_status = init_mcp23018();
|
||||||
@ -141,7 +141,7 @@ uint8_t matrix_scan(void) {
|
|||||||
}
|
}
|
||||||
|
|
||||||
debounce(raw_matrix, matrix, MATRIX_ROWS, changed);
|
debounce(raw_matrix, matrix, MATRIX_ROWS, changed);
|
||||||
matrix_scan_quantum();
|
matrix_scan_kb();
|
||||||
|
|
||||||
#ifdef DEBUG_MATRIX
|
#ifdef DEBUG_MATRIX
|
||||||
for (uint8_t c = 0; c < MATRIX_COLS; c++)
|
for (uint8_t c = 0; c < MATRIX_COLS; c++)
|
||||||
|
@ -206,7 +206,7 @@ void matrix_init(void) {
|
|||||||
|
|
||||||
debounce_init(ROWS_PER_HAND);
|
debounce_init(ROWS_PER_HAND);
|
||||||
|
|
||||||
matrix_init_quantum();
|
matrix_init_kb();
|
||||||
|
|
||||||
split_post_init();
|
split_post_init();
|
||||||
}
|
}
|
||||||
@ -240,7 +240,7 @@ bool matrix_post_scan(void) {
|
|||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
matrix_scan_quantum();
|
matrix_scan_kb();
|
||||||
} else {
|
} else {
|
||||||
transport_slave(matrix + thatHand, matrix + thisHand);
|
transport_slave(matrix + thatHand, matrix + thisHand);
|
||||||
|
|
||||||
|
@ -124,7 +124,7 @@ void matrix_init(void)
|
|||||||
matrix_debouncing[i] = 0;
|
matrix_debouncing[i] = 0;
|
||||||
}
|
}
|
||||||
|
|
||||||
matrix_init_quantum();
|
matrix_init_kb();
|
||||||
}
|
}
|
||||||
|
|
||||||
void init_expander(void) {
|
void init_expander(void) {
|
||||||
@ -277,7 +277,7 @@ uint8_t matrix_scan(void)
|
|||||||
}
|
}
|
||||||
# endif
|
# endif
|
||||||
|
|
||||||
matrix_scan_quantum();
|
matrix_scan_kb();
|
||||||
return 1;
|
return 1;
|
||||||
}
|
}
|
||||||
|
|
||||||
|
@ -59,7 +59,7 @@ void matrix_init(void) {
|
|||||||
/* Turn off the lock LEDs. */
|
/* Turn off the lock LEDs. */
|
||||||
PORTF |= LED_CAPS_LOCK | LED_NUM_LOCK | LED_SCROLL_LOCK | LED_MOUSE_LOCK;
|
PORTF |= LED_CAPS_LOCK | LED_NUM_LOCK | LED_SCROLL_LOCK | LED_MOUSE_LOCK;
|
||||||
|
|
||||||
matrix_init_quantum();
|
matrix_init_kb();
|
||||||
}
|
}
|
||||||
|
|
||||||
uint8_t matrix_scan(void) {
|
uint8_t matrix_scan(void) {
|
||||||
@ -73,7 +73,7 @@ uint8_t matrix_scan(void) {
|
|||||||
matrix[row] = read_cols();
|
matrix[row] = read_cols();
|
||||||
}
|
}
|
||||||
|
|
||||||
matrix_scan_quantum();
|
matrix_scan_kb();
|
||||||
|
|
||||||
return 1;
|
return 1;
|
||||||
}
|
}
|
||||||
|
@ -111,7 +111,7 @@ void matrix_init(void)
|
|||||||
matrix_debouncing[i] = 0;
|
matrix_debouncing[i] = 0;
|
||||||
}
|
}
|
||||||
|
|
||||||
matrix_init_quantum();
|
matrix_init_kb();
|
||||||
}
|
}
|
||||||
|
|
||||||
void matrix_power_up(void) {
|
void matrix_power_up(void) {
|
||||||
@ -169,7 +169,7 @@ uint8_t matrix_scan(void)
|
|||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
matrix_scan_quantum();
|
matrix_scan_kb();
|
||||||
|
|
||||||
return 1;
|
return 1;
|
||||||
}
|
}
|
||||||
|
@ -200,7 +200,7 @@ void matrix_init(void) {
|
|||||||
|
|
||||||
debounce_init(MATRIX_ROWS);
|
debounce_init(MATRIX_ROWS);
|
||||||
|
|
||||||
matrix_init_quantum();
|
matrix_init_kb();
|
||||||
|
|
||||||
setPinInput(D5);
|
setPinInput(D5);
|
||||||
setPinInput(B0);
|
setPinInput(B0);
|
||||||
@ -217,7 +217,7 @@ uint8_t matrix_scan(void)
|
|||||||
|
|
||||||
debounce(raw_matrix, matrix, MATRIX_ROWS, changed);
|
debounce(raw_matrix, matrix, MATRIX_ROWS, changed);
|
||||||
|
|
||||||
matrix_scan_quantum();
|
matrix_scan_kb();
|
||||||
return (uint8_t)changed;
|
return (uint8_t)changed;
|
||||||
}
|
}
|
||||||
|
|
||||||
@ -235,7 +235,7 @@ uint8_t matrix_scan(void)
|
|||||||
|
|
||||||
debounce(raw_matrix, matrix, MATRIX_ROWS, changed);
|
debounce(raw_matrix, matrix, MATRIX_ROWS, changed);
|
||||||
|
|
||||||
matrix_scan_quantum();
|
matrix_scan_kb();
|
||||||
return (uint8_t)changed;
|
return (uint8_t)changed;
|
||||||
}
|
}
|
||||||
*/
|
*/
|
||||||
|
@ -111,7 +111,7 @@ void matrix_init(void) {
|
|||||||
matrix_debouncing[i] = 0;
|
matrix_debouncing[i] = 0;
|
||||||
}
|
}
|
||||||
|
|
||||||
matrix_init_quantum();
|
matrix_init_kb();
|
||||||
}
|
}
|
||||||
|
|
||||||
uint8_t matrix_scan(void)
|
uint8_t matrix_scan(void)
|
||||||
@ -141,7 +141,7 @@ uint8_t matrix_scan(void)
|
|||||||
}
|
}
|
||||||
# endif
|
# endif
|
||||||
|
|
||||||
matrix_scan_quantum();
|
matrix_scan_kb();
|
||||||
return 1;
|
return 1;
|
||||||
}
|
}
|
||||||
|
|
||||||
|
@ -137,7 +137,7 @@ void matrix_init(void)
|
|||||||
matrix_debouncing[i] = 0;
|
matrix_debouncing[i] = 0;
|
||||||
}
|
}
|
||||||
|
|
||||||
matrix_init_quantum();
|
matrix_init_kb();
|
||||||
}
|
}
|
||||||
|
|
||||||
void init_expander(void) {
|
void init_expander(void) {
|
||||||
@ -278,7 +278,7 @@ uint8_t matrix_scan(void)
|
|||||||
}
|
}
|
||||||
# endif
|
# endif
|
||||||
|
|
||||||
matrix_scan_quantum();
|
matrix_scan_kb();
|
||||||
return 1;
|
return 1;
|
||||||
}
|
}
|
||||||
|
|
||||||
|
@ -295,7 +295,7 @@ void matrix_init(void) {
|
|||||||
|
|
||||||
debounce_init(MATRIX_ROWS);
|
debounce_init(MATRIX_ROWS);
|
||||||
|
|
||||||
matrix_init_quantum();
|
matrix_init_kb();
|
||||||
}
|
}
|
||||||
|
|
||||||
uint8_t matrix_scan(void) {
|
uint8_t matrix_scan(void) {
|
||||||
@ -323,7 +323,7 @@ uint8_t matrix_scan(void) {
|
|||||||
MATRIX_DEBUG_GAP();
|
MATRIX_DEBUG_GAP();
|
||||||
|
|
||||||
MATRIX_DEBUG_SCAN_START();
|
MATRIX_DEBUG_SCAN_START();
|
||||||
matrix_scan_quantum();
|
matrix_scan_kb();
|
||||||
MATRIX_DEBUG_SCAN_END();
|
MATRIX_DEBUG_SCAN_END();
|
||||||
return (uint8_t)changed;
|
return (uint8_t)changed;
|
||||||
}
|
}
|
||||||
|
@ -171,7 +171,7 @@ void matrix_init(void) {
|
|||||||
|
|
||||||
debounce_init(MATRIX_ROWS);
|
debounce_init(MATRIX_ROWS);
|
||||||
|
|
||||||
matrix_init_quantum();
|
matrix_init_kb();
|
||||||
}
|
}
|
||||||
|
|
||||||
uint8_t matrix_scan(void) {
|
uint8_t matrix_scan(void) {
|
||||||
@ -228,7 +228,7 @@ uint8_t matrix_scan(void) {
|
|||||||
MATRIX_DEBUG_SCAN_END(); MATRIX_DEBUG_GAP();
|
MATRIX_DEBUG_SCAN_END(); MATRIX_DEBUG_GAP();
|
||||||
|
|
||||||
MATRIX_DEBUG_SCAN_START();
|
MATRIX_DEBUG_SCAN_START();
|
||||||
matrix_scan_quantum();
|
matrix_scan_kb();
|
||||||
MATRIX_DEBUG_SCAN_END();
|
MATRIX_DEBUG_SCAN_END();
|
||||||
return (uint8_t)changed;
|
return (uint8_t)changed;
|
||||||
}
|
}
|
||||||
|
@ -71,7 +71,7 @@ void matrix_init(void)
|
|||||||
matrix = _matrix0;
|
matrix = _matrix0;
|
||||||
matrix_prev = _matrix1;
|
matrix_prev = _matrix1;
|
||||||
|
|
||||||
matrix_init_quantum();
|
matrix_init_kb();
|
||||||
}
|
}
|
||||||
|
|
||||||
__attribute__((weak)) void matrix_init_kb(void) { matrix_init_user(); }
|
__attribute__((weak)) void matrix_init_kb(void) { matrix_init_user(); }
|
||||||
@ -158,7 +158,7 @@ uint8_t matrix_scan(void)
|
|||||||
suspend_power_down();
|
suspend_power_down();
|
||||||
}
|
}
|
||||||
|
|
||||||
matrix_scan_quantum();
|
matrix_scan_kb();
|
||||||
|
|
||||||
return 1;
|
return 1;
|
||||||
}
|
}
|
||||||
|
@ -71,7 +71,7 @@ void matrix_init(void)
|
|||||||
matrix = _matrix0;
|
matrix = _matrix0;
|
||||||
matrix_prev = _matrix1;
|
matrix_prev = _matrix1;
|
||||||
|
|
||||||
matrix_init_quantum();
|
matrix_init_kb();
|
||||||
}
|
}
|
||||||
|
|
||||||
__attribute__((weak)) void matrix_init_kb(void) { matrix_init_user(); }
|
__attribute__((weak)) void matrix_init_kb(void) { matrix_init_user(); }
|
||||||
@ -159,7 +159,7 @@ uint8_t matrix_scan(void)
|
|||||||
suspend_power_down();
|
suspend_power_down();
|
||||||
}
|
}
|
||||||
|
|
||||||
matrix_scan_quantum();
|
matrix_scan_kb();
|
||||||
|
|
||||||
return 1;
|
return 1;
|
||||||
}
|
}
|
||||||
|
@ -81,7 +81,7 @@ void matrix_init(void)
|
|||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
matrix_init_quantum();
|
matrix_init_kb();
|
||||||
}
|
}
|
||||||
|
|
||||||
void matrix_power_up(void) {
|
void matrix_power_up(void) {
|
||||||
@ -133,7 +133,7 @@ uint8_t matrix_scan(void)
|
|||||||
unselect_rows();
|
unselect_rows();
|
||||||
}
|
}
|
||||||
|
|
||||||
matrix_scan_quantum();
|
matrix_scan_kb();
|
||||||
|
|
||||||
return 1;
|
return 1;
|
||||||
}
|
}
|
||||||
|
@ -83,7 +83,7 @@ void matrix_init_custom(void) {
|
|||||||
// initialize key pins
|
// initialize key pins
|
||||||
init_pins();
|
init_pins();
|
||||||
|
|
||||||
matrix_init_quantum();
|
matrix_init_kb();
|
||||||
}
|
}
|
||||||
|
|
||||||
bool matrix_scan_custom(matrix_row_t current_matrix[]) {
|
bool matrix_scan_custom(matrix_row_t current_matrix[]) {
|
||||||
@ -94,6 +94,6 @@ bool matrix_scan_custom(matrix_row_t current_matrix[]) {
|
|||||||
changed |= read_cols_on_row(current_matrix, current_row);
|
changed |= read_cols_on_row(current_matrix, current_row);
|
||||||
}
|
}
|
||||||
|
|
||||||
matrix_scan_quantum();
|
matrix_scan_kb();
|
||||||
return changed;
|
return changed;
|
||||||
}
|
}
|
||||||
|
@ -83,7 +83,7 @@ void matrix_init_custom(void) {
|
|||||||
// initialize key pins
|
// initialize key pins
|
||||||
init_pins();
|
init_pins();
|
||||||
|
|
||||||
matrix_init_quantum();
|
matrix_init_kb();
|
||||||
}
|
}
|
||||||
|
|
||||||
bool matrix_scan_custom(matrix_row_t current_matrix[]) {
|
bool matrix_scan_custom(matrix_row_t current_matrix[]) {
|
||||||
@ -94,6 +94,6 @@ bool matrix_scan_custom(matrix_row_t current_matrix[]) {
|
|||||||
changed |= read_cols_on_row(current_matrix, current_row);
|
changed |= read_cols_on_row(current_matrix, current_row);
|
||||||
}
|
}
|
||||||
|
|
||||||
matrix_scan_quantum();
|
matrix_scan_kb();
|
||||||
return changed;
|
return changed;
|
||||||
}
|
}
|
||||||
|
@ -49,16 +49,6 @@ static const pin_t col_pins[MATRIX_COLS] = MATRIX_COL_PINS;
|
|||||||
static matrix_row_t raw_matrix[MATRIX_ROWS]; //raw values
|
static matrix_row_t raw_matrix[MATRIX_ROWS]; //raw values
|
||||||
static matrix_row_t matrix[MATRIX_ROWS]; //debounced values
|
static matrix_row_t matrix[MATRIX_ROWS]; //debounced values
|
||||||
|
|
||||||
__attribute__ ((weak))
|
|
||||||
void matrix_init_quantum(void) {
|
|
||||||
matrix_init_kb();
|
|
||||||
}
|
|
||||||
|
|
||||||
__attribute__ ((weak))
|
|
||||||
void matrix_scan_quantum(void) {
|
|
||||||
matrix_scan_kb();
|
|
||||||
}
|
|
||||||
|
|
||||||
__attribute__ ((weak))
|
__attribute__ ((weak))
|
||||||
void matrix_init_kb(void) {
|
void matrix_init_kb(void) {
|
||||||
matrix_init_user();
|
matrix_init_user();
|
||||||
@ -244,7 +234,7 @@ void matrix_init(void) {
|
|||||||
|
|
||||||
debounce_init(MATRIX_ROWS);
|
debounce_init(MATRIX_ROWS);
|
||||||
|
|
||||||
matrix_init_quantum();
|
matrix_init_kb();
|
||||||
}
|
}
|
||||||
|
|
||||||
uint8_t matrix_scan(void)
|
uint8_t matrix_scan(void)
|
||||||
@ -263,6 +253,6 @@ uint8_t matrix_scan(void)
|
|||||||
|
|
||||||
debounce(raw_matrix, matrix, MATRIX_ROWS, changed);
|
debounce(raw_matrix, matrix, MATRIX_ROWS, changed);
|
||||||
|
|
||||||
matrix_scan_quantum();
|
matrix_scan_kb();
|
||||||
return (uint8_t)changed;
|
return (uint8_t)changed;
|
||||||
}
|
}
|
||||||
|
@ -49,16 +49,6 @@ static const pin_t col_pins[MATRIX_COLS] = MATRIX_COL_PINS;
|
|||||||
static matrix_row_t raw_matrix[MATRIX_ROWS]; //raw values
|
static matrix_row_t raw_matrix[MATRIX_ROWS]; //raw values
|
||||||
static matrix_row_t matrix[MATRIX_ROWS]; //debounced values
|
static matrix_row_t matrix[MATRIX_ROWS]; //debounced values
|
||||||
|
|
||||||
__attribute__ ((weak))
|
|
||||||
void matrix_init_quantum(void) {
|
|
||||||
matrix_init_kb();
|
|
||||||
}
|
|
||||||
|
|
||||||
__attribute__ ((weak))
|
|
||||||
void matrix_scan_quantum(void) {
|
|
||||||
matrix_scan_kb();
|
|
||||||
}
|
|
||||||
|
|
||||||
__attribute__ ((weak))
|
__attribute__ ((weak))
|
||||||
void matrix_init_kb(void) {
|
void matrix_init_kb(void) {
|
||||||
matrix_init_user();
|
matrix_init_user();
|
||||||
@ -244,7 +234,7 @@ void matrix_init(void) {
|
|||||||
|
|
||||||
debounce_init(MATRIX_ROWS);
|
debounce_init(MATRIX_ROWS);
|
||||||
|
|
||||||
matrix_init_quantum();
|
matrix_init_kb();
|
||||||
}
|
}
|
||||||
|
|
||||||
uint8_t matrix_scan(void)
|
uint8_t matrix_scan(void)
|
||||||
@ -263,6 +253,6 @@ uint8_t matrix_scan(void)
|
|||||||
|
|
||||||
debounce(raw_matrix, matrix, MATRIX_ROWS, changed);
|
debounce(raw_matrix, matrix, MATRIX_ROWS, changed);
|
||||||
|
|
||||||
matrix_scan_quantum();
|
matrix_scan_kb();
|
||||||
return (uint8_t)changed;
|
return (uint8_t)changed;
|
||||||
}
|
}
|
||||||
|
@ -49,16 +49,6 @@ static const pin_t col_pins[MATRIX_COLS] = MATRIX_COL_PINS;
|
|||||||
static matrix_row_t raw_matrix[MATRIX_ROWS]; //raw values
|
static matrix_row_t raw_matrix[MATRIX_ROWS]; //raw values
|
||||||
static matrix_row_t matrix[MATRIX_ROWS]; //debounced values
|
static matrix_row_t matrix[MATRIX_ROWS]; //debounced values
|
||||||
|
|
||||||
__attribute__ ((weak))
|
|
||||||
void matrix_init_quantum(void) {
|
|
||||||
matrix_init_kb();
|
|
||||||
}
|
|
||||||
|
|
||||||
__attribute__ ((weak))
|
|
||||||
void matrix_scan_quantum(void) {
|
|
||||||
matrix_scan_kb();
|
|
||||||
}
|
|
||||||
|
|
||||||
__attribute__ ((weak))
|
__attribute__ ((weak))
|
||||||
void matrix_init_kb(void) {
|
void matrix_init_kb(void) {
|
||||||
matrix_init_user();
|
matrix_init_user();
|
||||||
@ -244,7 +234,7 @@ void matrix_init(void) {
|
|||||||
|
|
||||||
debounce_init(MATRIX_ROWS);
|
debounce_init(MATRIX_ROWS);
|
||||||
|
|
||||||
matrix_init_quantum();
|
matrix_init_kb();
|
||||||
}
|
}
|
||||||
|
|
||||||
uint8_t matrix_scan(void)
|
uint8_t matrix_scan(void)
|
||||||
@ -263,6 +253,6 @@ uint8_t matrix_scan(void)
|
|||||||
|
|
||||||
debounce(raw_matrix, matrix, MATRIX_ROWS, changed);
|
debounce(raw_matrix, matrix, MATRIX_ROWS, changed);
|
||||||
|
|
||||||
matrix_scan_quantum();
|
matrix_scan_kb();
|
||||||
return (uint8_t)changed;
|
return (uint8_t)changed;
|
||||||
}
|
}
|
||||||
|
@ -77,14 +77,14 @@ void matrix_init(void) {
|
|||||||
i2c_set_keyscan_interval(RIGHT, 2);
|
i2c_set_keyscan_interval(RIGHT, 2);
|
||||||
memset(rows, 0, sizeof(rows));
|
memset(rows, 0, sizeof(rows));
|
||||||
|
|
||||||
matrix_init_quantum();
|
matrix_init_kb();
|
||||||
}
|
}
|
||||||
|
|
||||||
uint8_t matrix_scan(void) {
|
uint8_t matrix_scan(void) {
|
||||||
uint8_t ret = 0;
|
uint8_t ret = 0;
|
||||||
ret |= i2c_read_hand(LEFT);
|
ret |= i2c_read_hand(LEFT);
|
||||||
ret |= i2c_read_hand(RIGHT);
|
ret |= i2c_read_hand(RIGHT);
|
||||||
matrix_scan_quantum();
|
matrix_scan_kb();
|
||||||
return ret;
|
return ret;
|
||||||
}
|
}
|
||||||
|
|
||||||
|
@ -53,16 +53,6 @@ static matrix_row_t matrix[MATRIX_ROWS];
|
|||||||
//extern int8_t encoderValue;
|
//extern int8_t encoderValue;
|
||||||
int8_t encoderValue = 0;
|
int8_t encoderValue = 0;
|
||||||
|
|
||||||
__attribute__ ((weak))
|
|
||||||
void matrix_init_quantum(void) {
|
|
||||||
matrix_init_kb();
|
|
||||||
}
|
|
||||||
|
|
||||||
__attribute__ ((weak))
|
|
||||||
void matrix_scan_quantum(void) {
|
|
||||||
matrix_scan_kb();
|
|
||||||
}
|
|
||||||
|
|
||||||
__attribute__ ((weak))
|
__attribute__ ((weak))
|
||||||
void matrix_init_kb(void) {
|
void matrix_init_kb(void) {
|
||||||
matrix_init_user();
|
matrix_init_user();
|
||||||
@ -93,7 +83,7 @@ uint8_t matrix_cols(void) {
|
|||||||
|
|
||||||
void matrix_init(void) {
|
void matrix_init(void) {
|
||||||
|
|
||||||
matrix_init_quantum();
|
matrix_init_kb();
|
||||||
uart_init(1000000);
|
uart_init(1000000);
|
||||||
}
|
}
|
||||||
|
|
||||||
@ -168,7 +158,7 @@ uint8_t matrix_scan(void)
|
|||||||
xprintf("\r\nRequested packet, data 3 was %d",uart_data[3]);
|
xprintf("\r\nRequested packet, data 3 was %d",uart_data[3]);
|
||||||
}
|
}
|
||||||
|
|
||||||
matrix_scan_quantum();
|
matrix_scan_kb();
|
||||||
return 1;
|
return 1;
|
||||||
}
|
}
|
||||||
|
|
||||||
|
@ -132,7 +132,7 @@ uint8_t matrix_scan(void)
|
|||||||
}
|
}
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
matrix_scan_quantum();
|
matrix_scan_kb();
|
||||||
return 1;
|
return 1;
|
||||||
}
|
}
|
||||||
|
|
||||||
|
@ -45,10 +45,6 @@ static const pin_t col_pins[MATRIX_COLS] = MATRIX_COL_PINS;
|
|||||||
static matrix_row_t raw_matrix[MATRIX_ROWS]; // raw values
|
static matrix_row_t raw_matrix[MATRIX_ROWS]; // raw values
|
||||||
static matrix_row_t matrix[MATRIX_ROWS]; // debounced values
|
static matrix_row_t matrix[MATRIX_ROWS]; // debounced values
|
||||||
|
|
||||||
__attribute__((weak)) void matrix_init_quantum(void) { matrix_init_kb(); }
|
|
||||||
|
|
||||||
__attribute__((weak)) void matrix_scan_quantum(void) { matrix_scan_kb(); }
|
|
||||||
|
|
||||||
__attribute__((weak)) void matrix_init_kb(void) { matrix_init_user(); }
|
__attribute__((weak)) void matrix_init_kb(void) { matrix_init_user(); }
|
||||||
|
|
||||||
__attribute__((weak)) void matrix_scan_kb(void) { matrix_scan_user(); }
|
__attribute__((weak)) void matrix_scan_kb(void) { matrix_scan_user(); }
|
||||||
@ -191,7 +187,7 @@ void matrix_init(void) {
|
|||||||
|
|
||||||
debounce_init(MATRIX_ROWS);
|
debounce_init(MATRIX_ROWS);
|
||||||
|
|
||||||
matrix_init_quantum();
|
matrix_init_kb();
|
||||||
}
|
}
|
||||||
|
|
||||||
uint8_t matrix_scan(void) {
|
uint8_t matrix_scan(void) {
|
||||||
@ -203,7 +199,7 @@ uint8_t matrix_scan(void) {
|
|||||||
|
|
||||||
debounce(raw_matrix, matrix, MATRIX_ROWS, changed);
|
debounce(raw_matrix, matrix, MATRIX_ROWS, changed);
|
||||||
|
|
||||||
matrix_scan_quantum();
|
matrix_scan_kb();
|
||||||
|
|
||||||
return (uint8_t)changed;
|
return (uint8_t)changed;
|
||||||
}
|
}
|
||||||
|
@ -84,7 +84,7 @@ void matrix_init(void) {
|
|||||||
matrix_debouncing[i] = 0;
|
matrix_debouncing[i] = 0;
|
||||||
}
|
}
|
||||||
|
|
||||||
matrix_init_quantum();
|
matrix_init_kb();
|
||||||
}
|
}
|
||||||
|
|
||||||
uint8_t matrix_scan(void)
|
uint8_t matrix_scan(void)
|
||||||
@ -105,7 +105,7 @@ uint8_t matrix_scan(void)
|
|||||||
debouncing = false;
|
debouncing = false;
|
||||||
}
|
}
|
||||||
|
|
||||||
matrix_scan_quantum();
|
matrix_scan_kb();
|
||||||
return 1;
|
return 1;
|
||||||
}
|
}
|
||||||
|
|
||||||
|
@ -2,6 +2,7 @@
|
|||||||
"manufacturer": "Lx3",
|
"manufacturer": "Lx3",
|
||||||
"keyboard_name": "FAve 84H",
|
"keyboard_name": "FAve 84H",
|
||||||
"maintainer": "ToastyStoemp",
|
"maintainer": "ToastyStoemp",
|
||||||
|
"processor": "atmega32u4",
|
||||||
"bootloader": "atmel-dfu",
|
"bootloader": "atmel-dfu",
|
||||||
"diode_direction": "COL2ROW",
|
"diode_direction": "COL2ROW",
|
||||||
"features": {
|
"features": {
|
||||||
@ -18,7 +19,6 @@
|
|||||||
"cols": ["F0", "F1", "F4", "F5", "F6", "F7", "C7", "C6", "B6", "B5", "B4", "D7", "D6", "D4", "B0", "B7", "E6"],
|
"cols": ["F0", "F1", "F4", "F5", "F6", "F7", "C7", "C6", "B6", "B5", "B4", "D7", "D6", "D4", "B0", "B7", "E6"],
|
||||||
"rows": ["B1", "B2", "B3", "D3", "D1", "D0"]
|
"rows": ["B1", "B2", "B3", "D3", "D1", "D0"]
|
||||||
},
|
},
|
||||||
"processor": "atmega32u4",
|
|
||||||
"rgb_matrix": {
|
"rgb_matrix": {
|
||||||
"driver": "WS2812",
|
"driver": "WS2812",
|
||||||
"layout": [
|
"layout": [
|
||||||
@ -156,8 +156,6 @@
|
|||||||
"pid": "0x0004",
|
"pid": "0x0004",
|
||||||
"vid": "0x4C58"
|
"vid": "0x4C58"
|
||||||
},
|
},
|
||||||
"processor": "atmega32u4",
|
|
||||||
"bootloader": "atmel-dfu",
|
|
||||||
"community_layouts": [
|
"community_layouts": [
|
||||||
"tkl_ansi_tsangan"
|
"tkl_ansi_tsangan"
|
||||||
],
|
],
|
||||||
@ -180,7 +178,7 @@
|
|||||||
{ "matrix": [0, 14], "x": 15.25, "y": 0 },
|
{ "matrix": [0, 14], "x": 15.25, "y": 0 },
|
||||||
{ "matrix": [0, 15], "x": 16.25, "y": 0 },
|
{ "matrix": [0, 15], "x": 16.25, "y": 0 },
|
||||||
{ "matrix": [0, 16], "x": 17.25, "y": 0 },
|
{ "matrix": [0, 16], "x": 17.25, "y": 0 },
|
||||||
|
|
||||||
{ "matrix": [1, 0], "x": 0, "y": 1.25 },
|
{ "matrix": [1, 0], "x": 0, "y": 1.25 },
|
||||||
{ "matrix": [1, 1], "x": 1, "y": 1.25 },
|
{ "matrix": [1, 1], "x": 1, "y": 1.25 },
|
||||||
{ "matrix": [1, 2], "x": 2, "y": 1.25 },
|
{ "matrix": [1, 2], "x": 2, "y": 1.25 },
|
||||||
@ -276,7 +274,7 @@
|
|||||||
{ "matrix": [0, 14], "x": 15.25, "y": 0 },
|
{ "matrix": [0, 14], "x": 15.25, "y": 0 },
|
||||||
{ "matrix": [0, 15], "x": 16.25, "y": 0 },
|
{ "matrix": [0, 15], "x": 16.25, "y": 0 },
|
||||||
{ "matrix": [0, 16], "x": 17.25, "y": 0 },
|
{ "matrix": [0, 16], "x": 17.25, "y": 0 },
|
||||||
|
|
||||||
{ "matrix": [1, 0], "x": 0, "y": 1.25 },
|
{ "matrix": [1, 0], "x": 0, "y": 1.25 },
|
||||||
{ "matrix": [1, 1], "x": 1, "y": 1.25 },
|
{ "matrix": [1, 1], "x": 1, "y": 1.25 },
|
||||||
{ "matrix": [1, 2], "x": 2, "y": 1.25 },
|
{ "matrix": [1, 2], "x": 2, "y": 1.25 },
|
||||||
@ -340,7 +338,7 @@
|
|||||||
{ "matrix": [4, 10], "x": 11.25, "y": 4.25 },
|
{ "matrix": [4, 10], "x": 11.25, "y": 4.25 },
|
||||||
{ "matrix": [4, 12], "w": 2.75, "x": 12.25, "y": 4.25 },
|
{ "matrix": [4, 12], "w": 2.75, "x": 12.25, "y": 4.25 },
|
||||||
{ "matrix": [4, 15], "x": 16.25, "y": 4.25 },
|
{ "matrix": [4, 15], "x": 16.25, "y": 4.25 },
|
||||||
|
|
||||||
{ "matrix": [5, 0], "w": 1.5, "x": 0, "y": 5.25 },
|
{ "matrix": [5, 0], "w": 1.5, "x": 0, "y": 5.25 },
|
||||||
{ "matrix": [5, 1], "x": 1.5, "y": 5.25 },
|
{ "matrix": [5, 1], "x": 1.5, "y": 5.25 },
|
||||||
{ "matrix": [5, 2], "w": 1.5, "x": 2.5, "y": 5.25 },
|
{ "matrix": [5, 2], "w": 1.5, "x": 2.5, "y": 5.25 },
|
||||||
@ -354,4 +352,4 @@
|
|||||||
]
|
]
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
@ -85,7 +85,7 @@ void matrix_init(void)
|
|||||||
memset(matrix, 0, MATRIX_ROWS * sizeof(matrix_row_t));
|
memset(matrix, 0, MATRIX_ROWS * sizeof(matrix_row_t));
|
||||||
memset(matrix_debouncing, 0, MATRIX_COLS * sizeof(matrix_row_t));
|
memset(matrix_debouncing, 0, MATRIX_COLS * sizeof(matrix_row_t));
|
||||||
|
|
||||||
matrix_init_quantum();
|
matrix_init_kb();
|
||||||
}
|
}
|
||||||
|
|
||||||
uint8_t matrix_scan(void)
|
uint8_t matrix_scan(void)
|
||||||
@ -156,7 +156,7 @@ uint8_t matrix_scan(void)
|
|||||||
debouncing = false;
|
debouncing = false;
|
||||||
}
|
}
|
||||||
|
|
||||||
matrix_scan_quantum();
|
matrix_scan_kb();
|
||||||
|
|
||||||
return 1;
|
return 1;
|
||||||
}
|
}
|
||||||
|
@ -91,10 +91,6 @@ along with this program. If not, see <http://www.gnu.org/licenses/>.
|
|||||||
static matrix_row_t raw_matrix[MATRIX_ROWS]; // raw values
|
static matrix_row_t raw_matrix[MATRIX_ROWS]; // raw values
|
||||||
static matrix_row_t matrix[MATRIX_ROWS]; // debounced values
|
static matrix_row_t matrix[MATRIX_ROWS]; // debounced values
|
||||||
|
|
||||||
__attribute__((weak)) void matrix_init_quantum(void) { matrix_init_kb(); }
|
|
||||||
|
|
||||||
__attribute__((weak)) void matrix_scan_quantum(void) { matrix_scan_kb(); }
|
|
||||||
|
|
||||||
__attribute__((weak)) void matrix_init_kb(void) { matrix_init_user(); }
|
__attribute__((weak)) void matrix_init_kb(void) { matrix_init_user(); }
|
||||||
|
|
||||||
__attribute__((weak)) void matrix_scan_kb(void) { matrix_scan_user(); }
|
__attribute__((weak)) void matrix_scan_kb(void) { matrix_scan_user(); }
|
||||||
@ -191,7 +187,7 @@ void matrix_init(void) {
|
|||||||
|
|
||||||
debounce_init(MATRIX_ROWS);
|
debounce_init(MATRIX_ROWS);
|
||||||
|
|
||||||
matrix_init_quantum();
|
matrix_init_kb();
|
||||||
}
|
}
|
||||||
|
|
||||||
uint8_t matrix_scan(void) {
|
uint8_t matrix_scan(void) {
|
||||||
@ -203,7 +199,7 @@ uint8_t matrix_scan(void) {
|
|||||||
|
|
||||||
debounce(raw_matrix, matrix, MATRIX_ROWS, changed);
|
debounce(raw_matrix, matrix, MATRIX_ROWS, changed);
|
||||||
|
|
||||||
matrix_scan_quantum();
|
matrix_scan_kb();
|
||||||
|
|
||||||
return (uint8_t)changed;
|
return (uint8_t)changed;
|
||||||
}
|
}
|
||||||
|
@ -91,17 +91,6 @@ static matrix_row_t matrix_debouncing[MATRIX_ROWS];
|
|||||||
static void select_col(uint8_t col);
|
static void select_col(uint8_t col);
|
||||||
#endif
|
#endif
|
||||||
|
|
||||||
__attribute__ ((weak))
|
|
||||||
void matrix_init_quantum(void) {
|
|
||||||
expander_init();
|
|
||||||
matrix_init_kb();
|
|
||||||
}
|
|
||||||
|
|
||||||
__attribute__ ((weak))
|
|
||||||
void matrix_scan_quantum(void) {
|
|
||||||
matrix_scan_kb();
|
|
||||||
}
|
|
||||||
|
|
||||||
__attribute__ ((weak))
|
__attribute__ ((weak))
|
||||||
void matrix_init_kb(void) {
|
void matrix_init_kb(void) {
|
||||||
matrix_init_user();
|
matrix_init_user();
|
||||||
@ -146,7 +135,7 @@ void matrix_init(void) {
|
|||||||
matrix_debouncing[i] = 0;
|
matrix_debouncing[i] = 0;
|
||||||
}
|
}
|
||||||
|
|
||||||
matrix_init_quantum();
|
matrix_init_kb();
|
||||||
set_output(OUTPUT_AUTO);
|
set_output(OUTPUT_AUTO);
|
||||||
}
|
}
|
||||||
|
|
||||||
@ -198,7 +187,7 @@ uint8_t matrix_scan(void)
|
|||||||
}
|
}
|
||||||
# endif
|
# endif
|
||||||
|
|
||||||
matrix_scan_quantum();
|
matrix_scan_kb();
|
||||||
return 1;
|
return 1;
|
||||||
}
|
}
|
||||||
|
|
||||||
|
@ -67,7 +67,7 @@ void matrix_init(void) {
|
|||||||
memset(matrix, 0, MATRIX_ROWS * sizeof(matrix_row_t));
|
memset(matrix, 0, MATRIX_ROWS * sizeof(matrix_row_t));
|
||||||
memset(matrix_debouncing, 0, MATRIX_COLS * sizeof(matrix_row_t));
|
memset(matrix_debouncing, 0, MATRIX_COLS * sizeof(matrix_row_t));
|
||||||
|
|
||||||
matrix_init_quantum();
|
matrix_init_kb();
|
||||||
}
|
}
|
||||||
|
|
||||||
uint8_t matrix_scan(void) {
|
uint8_t matrix_scan(void) {
|
||||||
@ -142,7 +142,7 @@ uint8_t matrix_scan(void) {
|
|||||||
debouncing = false;
|
debouncing = false;
|
||||||
}
|
}
|
||||||
|
|
||||||
matrix_scan_quantum();
|
matrix_scan_kb();
|
||||||
|
|
||||||
return 1;
|
return 1;
|
||||||
}
|
}
|
||||||
|
@ -71,7 +71,7 @@ void matrix_init(void) {
|
|||||||
memset(matrix, 0, MATRIX_ROWS * sizeof(matrix_row_t));
|
memset(matrix, 0, MATRIX_ROWS * sizeof(matrix_row_t));
|
||||||
memset(matrix_debouncing, 0, MATRIX_COLS * sizeof(matrix_col_t));
|
memset(matrix_debouncing, 0, MATRIX_COLS * sizeof(matrix_col_t));
|
||||||
|
|
||||||
matrix_init_quantum();
|
matrix_init_kb();
|
||||||
}
|
}
|
||||||
|
|
||||||
uint8_t matrix_scan(void) {
|
uint8_t matrix_scan(void) {
|
||||||
@ -146,7 +146,7 @@ uint8_t matrix_scan(void) {
|
|||||||
debouncing = false;
|
debouncing = false;
|
||||||
}
|
}
|
||||||
|
|
||||||
matrix_scan_quantum();
|
matrix_scan_kb();
|
||||||
|
|
||||||
return 1;
|
return 1;
|
||||||
}
|
}
|
||||||
|
@ -53,16 +53,6 @@ static const pin_t col_pins[MATRIX_COLS] = MATRIX_COL_PINS;
|
|||||||
static matrix_row_t raw_matrix[MATRIX_ROWS]; //raw values
|
static matrix_row_t raw_matrix[MATRIX_ROWS]; //raw values
|
||||||
static matrix_row_t matrix[MATRIX_ROWS]; //debounced values
|
static matrix_row_t matrix[MATRIX_ROWS]; //debounced values
|
||||||
|
|
||||||
__attribute__ ((weak))
|
|
||||||
void matrix_init_quantum(void) {
|
|
||||||
matrix_init_kb();
|
|
||||||
}
|
|
||||||
|
|
||||||
__attribute__ ((weak))
|
|
||||||
void matrix_scan_quantum(void) {
|
|
||||||
matrix_scan_kb();
|
|
||||||
}
|
|
||||||
|
|
||||||
__attribute__ ((weak))
|
__attribute__ ((weak))
|
||||||
void matrix_init_kb(void) {
|
void matrix_init_kb(void) {
|
||||||
matrix_init_user();
|
matrix_init_user();
|
||||||
@ -345,7 +335,7 @@ void matrix_init(void) {
|
|||||||
|
|
||||||
debounce_init(MATRIX_ROWS);
|
debounce_init(MATRIX_ROWS);
|
||||||
|
|
||||||
matrix_init_quantum();
|
matrix_init_kb();
|
||||||
}
|
}
|
||||||
|
|
||||||
uint8_t matrix_scan(void)
|
uint8_t matrix_scan(void)
|
||||||
@ -366,6 +356,6 @@ uint8_t matrix_scan(void)
|
|||||||
|
|
||||||
debounce(raw_matrix, matrix, MATRIX_ROWS, changed);
|
debounce(raw_matrix, matrix, MATRIX_ROWS, changed);
|
||||||
|
|
||||||
matrix_scan_quantum();
|
matrix_scan_kb();
|
||||||
return 1;
|
return 1;
|
||||||
}
|
}
|
||||||
|
@ -53,16 +53,6 @@ static const pin_t col_pins[MATRIX_COLS] = MATRIX_COL_PINS;
|
|||||||
static matrix_row_t raw_matrix[MATRIX_ROWS]; //raw values
|
static matrix_row_t raw_matrix[MATRIX_ROWS]; //raw values
|
||||||
static matrix_row_t matrix[MATRIX_ROWS]; //debounced values
|
static matrix_row_t matrix[MATRIX_ROWS]; //debounced values
|
||||||
|
|
||||||
__attribute__ ((weak))
|
|
||||||
void matrix_init_quantum(void) {
|
|
||||||
matrix_init_kb();
|
|
||||||
}
|
|
||||||
|
|
||||||
__attribute__ ((weak))
|
|
||||||
void matrix_scan_quantum(void) {
|
|
||||||
matrix_scan_kb();
|
|
||||||
}
|
|
||||||
|
|
||||||
__attribute__ ((weak))
|
__attribute__ ((weak))
|
||||||
void matrix_init_kb(void) {
|
void matrix_init_kb(void) {
|
||||||
matrix_init_user();
|
matrix_init_user();
|
||||||
@ -345,7 +335,7 @@ void matrix_init(void) {
|
|||||||
|
|
||||||
debounce_init(MATRIX_ROWS);
|
debounce_init(MATRIX_ROWS);
|
||||||
|
|
||||||
matrix_init_quantum();
|
matrix_init_kb();
|
||||||
}
|
}
|
||||||
|
|
||||||
uint8_t matrix_scan(void)
|
uint8_t matrix_scan(void)
|
||||||
@ -366,6 +356,6 @@ uint8_t matrix_scan(void)
|
|||||||
|
|
||||||
debounce(raw_matrix, matrix, MATRIX_ROWS, changed);
|
debounce(raw_matrix, matrix, MATRIX_ROWS, changed);
|
||||||
|
|
||||||
matrix_scan_quantum();
|
matrix_scan_kb();
|
||||||
return 1;
|
return 1;
|
||||||
}
|
}
|
||||||
|
@ -53,16 +53,6 @@ static const pin_t col_pins[MATRIX_COLS] = MATRIX_COL_PINS;
|
|||||||
static matrix_row_t raw_matrix[MATRIX_ROWS]; //raw values
|
static matrix_row_t raw_matrix[MATRIX_ROWS]; //raw values
|
||||||
static matrix_row_t matrix[MATRIX_ROWS]; //debounced values
|
static matrix_row_t matrix[MATRIX_ROWS]; //debounced values
|
||||||
|
|
||||||
__attribute__ ((weak))
|
|
||||||
void matrix_init_quantum(void) {
|
|
||||||
matrix_init_kb();
|
|
||||||
}
|
|
||||||
|
|
||||||
__attribute__ ((weak))
|
|
||||||
void matrix_scan_quantum(void) {
|
|
||||||
matrix_scan_kb();
|
|
||||||
}
|
|
||||||
|
|
||||||
__attribute__ ((weak))
|
__attribute__ ((weak))
|
||||||
void matrix_init_kb(void) {
|
void matrix_init_kb(void) {
|
||||||
matrix_init_user();
|
matrix_init_user();
|
||||||
@ -345,7 +335,7 @@ void matrix_init(void) {
|
|||||||
|
|
||||||
debounce_init(MATRIX_ROWS);
|
debounce_init(MATRIX_ROWS);
|
||||||
|
|
||||||
matrix_init_quantum();
|
matrix_init_kb();
|
||||||
}
|
}
|
||||||
|
|
||||||
uint8_t matrix_scan(void)
|
uint8_t matrix_scan(void)
|
||||||
@ -366,6 +356,6 @@ uint8_t matrix_scan(void)
|
|||||||
|
|
||||||
debounce(raw_matrix, matrix, MATRIX_ROWS, changed);
|
debounce(raw_matrix, matrix, MATRIX_ROWS, changed);
|
||||||
|
|
||||||
matrix_scan_quantum();
|
matrix_scan_kb();
|
||||||
return 1;
|
return 1;
|
||||||
}
|
}
|
||||||
|
@ -85,7 +85,7 @@ void matrix_init(void)
|
|||||||
matrix_stage[i] = 0;
|
matrix_stage[i] = 0;
|
||||||
}
|
}
|
||||||
|
|
||||||
matrix_init_quantum();
|
matrix_init_kb();
|
||||||
|
|
||||||
}
|
}
|
||||||
|
|
||||||
@ -109,7 +109,7 @@ uint8_t matrix_scan(void)
|
|||||||
debouncing = false;
|
debouncing = false;
|
||||||
}
|
}
|
||||||
|
|
||||||
matrix_scan_quantum();
|
matrix_scan_kb();
|
||||||
|
|
||||||
return 1;
|
return 1;
|
||||||
}
|
}
|
||||||
|
@ -71,16 +71,6 @@ static bool read_cols_on_row(matrix_row_t current_matrix[], uint8_t current_row)
|
|||||||
static void unselect_rows(void);
|
static void unselect_rows(void);
|
||||||
static void select_row(uint8_t row);
|
static void select_row(uint8_t row);
|
||||||
|
|
||||||
__attribute__ ((weak))
|
|
||||||
void matrix_init_quantum(void) {
|
|
||||||
matrix_init_kb();
|
|
||||||
}
|
|
||||||
|
|
||||||
__attribute__ ((weak))
|
|
||||||
void matrix_scan_quantum(void) {
|
|
||||||
matrix_scan_kb();
|
|
||||||
}
|
|
||||||
|
|
||||||
__attribute__ ((weak))
|
__attribute__ ((weak))
|
||||||
void matrix_init_kb(void) {
|
void matrix_init_kb(void) {
|
||||||
matrix_init_user();
|
matrix_init_user();
|
||||||
@ -122,7 +112,7 @@ void matrix_init(void) {
|
|||||||
matrix_debouncing[i] = 0;
|
matrix_debouncing[i] = 0;
|
||||||
}
|
}
|
||||||
|
|
||||||
matrix_init_quantum();
|
matrix_init_kb();
|
||||||
}
|
}
|
||||||
|
|
||||||
uint8_t matrix_scan(void)
|
uint8_t matrix_scan(void)
|
||||||
@ -165,7 +155,7 @@ uint8_t matrix_scan(void)
|
|||||||
}
|
}
|
||||||
# endif
|
# endif
|
||||||
|
|
||||||
matrix_scan_quantum();
|
matrix_scan_kb();
|
||||||
return 1;
|
return 1;
|
||||||
}
|
}
|
||||||
|
|
||||||
|
@ -158,7 +158,7 @@ void matrix_init(void) {
|
|||||||
|
|
||||||
memset(matrix, 0, MATRIX_ROWS * sizeof(matrix_row_t));
|
memset(matrix, 0, MATRIX_ROWS * sizeof(matrix_row_t));
|
||||||
|
|
||||||
matrix_init_quantum();
|
matrix_init_kb();
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|
||||||
@ -261,7 +261,7 @@ uint8_t matrix_scan(void) {
|
|||||||
writePinLow(E6);
|
writePinLow(E6);
|
||||||
}
|
}
|
||||||
|
|
||||||
matrix_scan_quantum();
|
matrix_scan_kb();
|
||||||
|
|
||||||
return 1;
|
return 1;
|
||||||
|
|
||||||
|
@ -119,7 +119,7 @@ void matrix_init(void)
|
|||||||
matrix_debouncing[i] = 0;
|
matrix_debouncing[i] = 0;
|
||||||
}
|
}
|
||||||
|
|
||||||
matrix_init_quantum();
|
matrix_init_kb();
|
||||||
|
|
||||||
}
|
}
|
||||||
|
|
||||||
@ -154,7 +154,7 @@ uint8_t _matrix_scan(void)
|
|||||||
uint8_t matrix_scan(void)
|
uint8_t matrix_scan(void)
|
||||||
{
|
{
|
||||||
uint8_t ret = _matrix_scan();
|
uint8_t ret = _matrix_scan();
|
||||||
matrix_scan_quantum();
|
matrix_scan_kb();
|
||||||
return ret;
|
return ret;
|
||||||
}
|
}
|
||||||
|
|
||||||
|
@ -74,7 +74,7 @@ void matrix_init(void)
|
|||||||
matrix_debouncing[row] = 0;
|
matrix_debouncing[row] = 0;
|
||||||
}
|
}
|
||||||
debounce_init(MATRIX_ROWS);
|
debounce_init(MATRIX_ROWS);
|
||||||
matrix_init_quantum();
|
matrix_init_kb();
|
||||||
}
|
}
|
||||||
|
|
||||||
uint8_t matrix_scan(void)
|
uint8_t matrix_scan(void)
|
||||||
@ -127,7 +127,7 @@ uint8_t matrix_scan(void)
|
|||||||
|
|
||||||
debounce(matrix_debouncing, matrix, MATRIX_ROWS, changed);
|
debounce(matrix_debouncing, matrix, MATRIX_ROWS, changed);
|
||||||
|
|
||||||
matrix_scan_quantum();
|
matrix_scan_kb();
|
||||||
|
|
||||||
#ifdef DEBUG_MATRIX
|
#ifdef DEBUG_MATRIX
|
||||||
for (uint8_t c = 0; c < MATRIX_COLS; c++)
|
for (uint8_t c = 0; c < MATRIX_COLS; c++)
|
||||||
|
@ -30,9 +30,99 @@ const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = {
|
|||||||
__KEYMAP_GOES_HERE__
|
__KEYMAP_GOES_HERE__
|
||||||
};
|
};
|
||||||
|
|
||||||
|
#if defined(ENCODER_ENABLE) && defined(ENCODER_MAP_ENABLE)
|
||||||
|
const uint16_t PROGMEM encoder_map[][NUM_ENCODERS][2] = {
|
||||||
|
__ENCODER_MAP_GOES_HERE__
|
||||||
|
};
|
||||||
|
#endif // defined(ENCODER_ENABLE) && defined(ENCODER_MAP_ENABLE)
|
||||||
|
|
||||||
|
__MACRO_OUTPUT_GOES_HERE__
|
||||||
|
|
||||||
"""
|
"""
|
||||||
|
|
||||||
|
|
||||||
|
def _generate_keymap_table(keymap_json):
|
||||||
|
lines = []
|
||||||
|
for layer_num, layer in enumerate(keymap_json['layers']):
|
||||||
|
if layer_num != 0:
|
||||||
|
lines[-1] = lines[-1] + ','
|
||||||
|
layer = map(_strip_any, layer)
|
||||||
|
layer_keys = ', '.join(layer)
|
||||||
|
lines.append('\t[%s] = %s(%s)' % (layer_num, keymap_json['layout'], layer_keys))
|
||||||
|
return lines
|
||||||
|
|
||||||
|
|
||||||
|
def _generate_encodermap_table(keymap_json):
|
||||||
|
lines = []
|
||||||
|
for layer_num, layer in enumerate(keymap_json['encoders']):
|
||||||
|
if layer_num != 0:
|
||||||
|
lines[-1] = lines[-1] + ','
|
||||||
|
encoder_keycode_txt = ', '.join([f'ENCODER_CCW_CW({_strip_any(e["ccw"])}, {_strip_any(e["cw"])})' for e in layer])
|
||||||
|
lines.append('\t[%s] = {%s}' % (layer_num, encoder_keycode_txt))
|
||||||
|
return lines
|
||||||
|
|
||||||
|
|
||||||
|
def _generate_macros_function(keymap_json):
|
||||||
|
macro_txt = [
|
||||||
|
'bool process_record_user(uint16_t keycode, keyrecord_t *record) {',
|
||||||
|
' if (record->event.pressed) {',
|
||||||
|
' switch (keycode) {',
|
||||||
|
]
|
||||||
|
|
||||||
|
for i, macro_array in enumerate(keymap_json['macros']):
|
||||||
|
macro = []
|
||||||
|
|
||||||
|
for macro_fragment in macro_array:
|
||||||
|
if isinstance(macro_fragment, str):
|
||||||
|
macro_fragment = macro_fragment.replace('\\', '\\\\')
|
||||||
|
macro_fragment = macro_fragment.replace('\r\n', r'\n')
|
||||||
|
macro_fragment = macro_fragment.replace('\n', r'\n')
|
||||||
|
macro_fragment = macro_fragment.replace('\r', r'\n')
|
||||||
|
macro_fragment = macro_fragment.replace('\t', r'\t')
|
||||||
|
macro_fragment = macro_fragment.replace('"', r'\"')
|
||||||
|
|
||||||
|
macro.append(f'"{macro_fragment}"')
|
||||||
|
|
||||||
|
elif isinstance(macro_fragment, dict):
|
||||||
|
newstring = []
|
||||||
|
|
||||||
|
if macro_fragment['action'] == 'delay':
|
||||||
|
newstring.append(f"SS_DELAY({macro_fragment['duration']})")
|
||||||
|
|
||||||
|
elif macro_fragment['action'] == 'beep':
|
||||||
|
newstring.append(r'"\a"')
|
||||||
|
|
||||||
|
elif macro_fragment['action'] == 'tap' and len(macro_fragment['keycodes']) > 1:
|
||||||
|
last_keycode = macro_fragment['keycodes'].pop()
|
||||||
|
|
||||||
|
for keycode in macro_fragment['keycodes']:
|
||||||
|
newstring.append(f'SS_DOWN(X_{keycode})')
|
||||||
|
|
||||||
|
newstring.append(f'SS_TAP(X_{last_keycode})')
|
||||||
|
|
||||||
|
for keycode in reversed(macro_fragment['keycodes']):
|
||||||
|
newstring.append(f'SS_UP(X_{keycode})')
|
||||||
|
|
||||||
|
else:
|
||||||
|
for keycode in macro_fragment['keycodes']:
|
||||||
|
newstring.append(f"SS_{macro_fragment['action'].upper()}(X_{keycode})")
|
||||||
|
|
||||||
|
macro.append(''.join(newstring))
|
||||||
|
|
||||||
|
new_macro = "".join(macro)
|
||||||
|
new_macro = new_macro.replace('""', '')
|
||||||
|
macro_txt.append(f' case QK_MACRO_{i}:')
|
||||||
|
macro_txt.append(f' SEND_STRING({new_macro});')
|
||||||
|
macro_txt.append(' return false;')
|
||||||
|
|
||||||
|
macro_txt.append(' }')
|
||||||
|
macro_txt.append(' }')
|
||||||
|
macro_txt.append('\n return true;')
|
||||||
|
macro_txt.append('};')
|
||||||
|
macro_txt.append('')
|
||||||
|
return macro_txt
|
||||||
|
|
||||||
|
|
||||||
def template_json(keyboard):
|
def template_json(keyboard):
|
||||||
"""Returns a `keymap.json` template for a keyboard.
|
"""Returns a `keymap.json` template for a keyboard.
|
||||||
|
|
||||||
@ -206,83 +296,26 @@ def generate_c(keymap_json):
|
|||||||
A sequence of strings containing macros to implement for this keyboard.
|
A sequence of strings containing macros to implement for this keyboard.
|
||||||
"""
|
"""
|
||||||
new_keymap = template_c(keymap_json['keyboard'])
|
new_keymap = template_c(keymap_json['keyboard'])
|
||||||
layer_txt = []
|
layer_txt = _generate_keymap_table(keymap_json)
|
||||||
|
|
||||||
for layer_num, layer in enumerate(keymap_json['layers']):
|
|
||||||
if layer_num != 0:
|
|
||||||
layer_txt[-1] = layer_txt[-1] + ','
|
|
||||||
layer = map(_strip_any, layer)
|
|
||||||
layer_keys = ', '.join(layer)
|
|
||||||
layer_txt.append('\t[%s] = %s(%s)' % (layer_num, keymap_json['layout'], layer_keys))
|
|
||||||
|
|
||||||
keymap = '\n'.join(layer_txt)
|
keymap = '\n'.join(layer_txt)
|
||||||
new_keymap = new_keymap.replace('__KEYMAP_GOES_HERE__', keymap)
|
new_keymap = new_keymap.replace('__KEYMAP_GOES_HERE__', keymap)
|
||||||
|
|
||||||
if keymap_json.get('macros'):
|
encodermap = ''
|
||||||
macro_txt = [
|
if 'encoders' in keymap_json and keymap_json['encoders'] is not None:
|
||||||
'bool process_record_user(uint16_t keycode, keyrecord_t *record) {',
|
encoder_txt = _generate_encodermap_table(keymap_json)
|
||||||
' if (record->event.pressed) {',
|
encodermap = '\n'.join(encoder_txt)
|
||||||
' switch (keycode) {',
|
new_keymap = new_keymap.replace('__ENCODER_MAP_GOES_HERE__', encodermap)
|
||||||
]
|
|
||||||
|
|
||||||
for i, macro_array in enumerate(keymap_json['macros']):
|
macros = ''
|
||||||
macro = []
|
if 'macros' in keymap_json and keymap_json['macros'] is not None:
|
||||||
|
macro_txt = _generate_macros_function(keymap_json)
|
||||||
|
macros = '\n'.join(macro_txt)
|
||||||
|
new_keymap = new_keymap.replace('__MACRO_OUTPUT_GOES_HERE__', macros)
|
||||||
|
|
||||||
for macro_fragment in macro_array:
|
hostlang = ''
|
||||||
if isinstance(macro_fragment, str):
|
if 'host_language' in keymap_json and keymap_json['host_language'] is not None:
|
||||||
macro_fragment = macro_fragment.replace('\\', '\\\\')
|
hostlang = f'#include "keymap_{keymap_json["host_language"]}.h"\n#include "sendstring_{keymap_json["host_language"]}.h"\n'
|
||||||
macro_fragment = macro_fragment.replace('\r\n', r'\n')
|
new_keymap = new_keymap.replace('__INCLUDES__', hostlang)
|
||||||
macro_fragment = macro_fragment.replace('\n', r'\n')
|
|
||||||
macro_fragment = macro_fragment.replace('\r', r'\n')
|
|
||||||
macro_fragment = macro_fragment.replace('\t', r'\t')
|
|
||||||
macro_fragment = macro_fragment.replace('"', r'\"')
|
|
||||||
|
|
||||||
macro.append(f'"{macro_fragment}"')
|
|
||||||
|
|
||||||
elif isinstance(macro_fragment, dict):
|
|
||||||
newstring = []
|
|
||||||
|
|
||||||
if macro_fragment['action'] == 'delay':
|
|
||||||
newstring.append(f"SS_DELAY({macro_fragment['duration']})")
|
|
||||||
|
|
||||||
elif macro_fragment['action'] == 'beep':
|
|
||||||
newstring.append(r'"\a"')
|
|
||||||
|
|
||||||
elif macro_fragment['action'] == 'tap' and len(macro_fragment['keycodes']) > 1:
|
|
||||||
last_keycode = macro_fragment['keycodes'].pop()
|
|
||||||
|
|
||||||
for keycode in macro_fragment['keycodes']:
|
|
||||||
newstring.append(f'SS_DOWN(X_{keycode})')
|
|
||||||
|
|
||||||
newstring.append(f'SS_TAP(X_{last_keycode})')
|
|
||||||
|
|
||||||
for keycode in reversed(macro_fragment['keycodes']):
|
|
||||||
newstring.append(f'SS_UP(X_{keycode})')
|
|
||||||
|
|
||||||
else:
|
|
||||||
for keycode in macro_fragment['keycodes']:
|
|
||||||
newstring.append(f"SS_{macro_fragment['action'].upper()}(X_{keycode})")
|
|
||||||
|
|
||||||
macro.append(''.join(newstring))
|
|
||||||
|
|
||||||
new_macro = "".join(macro)
|
|
||||||
new_macro = new_macro.replace('""', '')
|
|
||||||
macro_txt.append(f' case QK_MACRO_{i}:')
|
|
||||||
macro_txt.append(f' SEND_STRING({new_macro});')
|
|
||||||
macro_txt.append(' return false;')
|
|
||||||
|
|
||||||
macro_txt.append(' }')
|
|
||||||
macro_txt.append(' }')
|
|
||||||
macro_txt.append('\n return true;')
|
|
||||||
macro_txt.append('};')
|
|
||||||
macro_txt.append('')
|
|
||||||
|
|
||||||
new_keymap = '\n'.join((new_keymap, *macro_txt))
|
|
||||||
|
|
||||||
if keymap_json.get('host_language'):
|
|
||||||
new_keymap = new_keymap.replace('__INCLUDES__', f'#include "keymap_{keymap_json["host_language"]}.h"\n#include "sendstring_{keymap_json["host_language"]}.h"\n')
|
|
||||||
else:
|
|
||||||
new_keymap = new_keymap.replace('__INCLUDES__', '')
|
|
||||||
|
|
||||||
return new_keymap
|
return new_keymap
|
||||||
|
|
||||||
|
@ -308,7 +308,7 @@ void matrix_init(void) {
|
|||||||
|
|
||||||
debounce_init(ROWS_PER_HAND);
|
debounce_init(ROWS_PER_HAND);
|
||||||
|
|
||||||
matrix_init_quantum();
|
matrix_init_kb();
|
||||||
}
|
}
|
||||||
|
|
||||||
#ifdef SPLIT_KEYBOARD
|
#ifdef SPLIT_KEYBOARD
|
||||||
@ -342,7 +342,7 @@ uint8_t matrix_scan(void) {
|
|||||||
changed = debounce(raw_matrix, matrix + thisHand, ROWS_PER_HAND, changed) | matrix_post_scan();
|
changed = debounce(raw_matrix, matrix + thisHand, ROWS_PER_HAND, changed) | matrix_post_scan();
|
||||||
#else
|
#else
|
||||||
changed = debounce(raw_matrix, matrix, ROWS_PER_HAND, changed);
|
changed = debounce(raw_matrix, matrix, ROWS_PER_HAND, changed);
|
||||||
matrix_scan_quantum();
|
matrix_scan_kb();
|
||||||
#endif
|
#endif
|
||||||
return (uint8_t)changed;
|
return (uint8_t)changed;
|
||||||
}
|
}
|
||||||
|
@ -67,10 +67,6 @@ void matrix_io_delay(void);
|
|||||||
void matrix_power_up(void);
|
void matrix_power_up(void);
|
||||||
void matrix_power_down(void);
|
void matrix_power_down(void);
|
||||||
|
|
||||||
/* executes code for Quantum */
|
|
||||||
void matrix_init_quantum(void);
|
|
||||||
void matrix_scan_quantum(void);
|
|
||||||
|
|
||||||
void matrix_init_kb(void);
|
void matrix_init_kb(void);
|
||||||
void matrix_scan_kb(void);
|
void matrix_scan_kb(void);
|
||||||
|
|
||||||
|
@ -111,7 +111,7 @@ bool matrix_post_scan(void) {
|
|||||||
|
|
||||||
if (changed) memcpy(matrix + thatHand, slave_matrix, sizeof(slave_matrix));
|
if (changed) memcpy(matrix + thatHand, slave_matrix, sizeof(slave_matrix));
|
||||||
|
|
||||||
matrix_scan_quantum();
|
matrix_scan_kb();
|
||||||
} else {
|
} else {
|
||||||
transport_slave(matrix + thatHand, matrix + thisHand);
|
transport_slave(matrix + thatHand, matrix + thisHand);
|
||||||
|
|
||||||
@ -162,7 +162,7 @@ __attribute__((weak)) void matrix_init(void) {
|
|||||||
|
|
||||||
debounce_init(ROWS_PER_HAND);
|
debounce_init(ROWS_PER_HAND);
|
||||||
|
|
||||||
matrix_init_quantum();
|
matrix_init_kb();
|
||||||
}
|
}
|
||||||
|
|
||||||
__attribute__((weak)) uint8_t matrix_scan(void) {
|
__attribute__((weak)) uint8_t matrix_scan(void) {
|
||||||
@ -172,7 +172,7 @@ __attribute__((weak)) uint8_t matrix_scan(void) {
|
|||||||
changed = debounce(raw_matrix, matrix + thisHand, ROWS_PER_HAND, changed) | matrix_post_scan();
|
changed = debounce(raw_matrix, matrix + thisHand, ROWS_PER_HAND, changed) | matrix_post_scan();
|
||||||
#else
|
#else
|
||||||
changed = debounce(raw_matrix, matrix, ROWS_PER_HAND, changed);
|
changed = debounce(raw_matrix, matrix, ROWS_PER_HAND, changed);
|
||||||
matrix_scan_quantum();
|
matrix_scan_kb();
|
||||||
#endif
|
#endif
|
||||||
|
|
||||||
return changed;
|
return changed;
|
||||||
|
@ -453,14 +453,6 @@ void update_tri_layer(uint8_t layer1, uint8_t layer2, uint8_t layer3) {
|
|||||||
layer_state_set(update_tri_layer_state(layer_state, layer1, layer2, layer3));
|
layer_state_set(update_tri_layer_state(layer_state, layer1, layer2, layer3));
|
||||||
}
|
}
|
||||||
|
|
||||||
// TODO: remove legacy api
|
|
||||||
void matrix_init_quantum(void) {
|
|
||||||
matrix_init_kb();
|
|
||||||
}
|
|
||||||
void matrix_scan_quantum(void) {
|
|
||||||
matrix_scan_kb();
|
|
||||||
}
|
|
||||||
|
|
||||||
//------------------------------------------------------------------------------
|
//------------------------------------------------------------------------------
|
||||||
// Override these functions in your keymap file to play different tunes on
|
// Override these functions in your keymap file to play different tunes on
|
||||||
// different events such as startup and bootloader jump
|
// different events such as startup and bootloader jump
|
||||||
|
@ -22,11 +22,11 @@ static matrix_row_t matrix[MATRIX_ROWS] = {};
|
|||||||
|
|
||||||
void matrix_init(void) {
|
void matrix_init(void) {
|
||||||
clear_all_keys();
|
clear_all_keys();
|
||||||
matrix_init_quantum();
|
matrix_init_kb();
|
||||||
}
|
}
|
||||||
|
|
||||||
uint8_t matrix_scan(void) {
|
uint8_t matrix_scan(void) {
|
||||||
matrix_scan_quantum();
|
matrix_scan_kb();
|
||||||
return 1;
|
return 1;
|
||||||
}
|
}
|
||||||
|
|
||||||
|
@ -2,7 +2,7 @@
|
|||||||
|
|
||||||
Specifically QMK works by using customized callback functions for everything. This allows for multiple levels of customization.
|
Specifically QMK works by using customized callback functions for everything. This allows for multiple levels of customization.
|
||||||
|
|
||||||
`matrix_scan` calls `matrix_scan_quantum`, which calls `matrix_scan_kb`, which calls `matrix_scan_user`.
|
`matrix_scan` calls `matrix_scan_kb`, which calls `matrix_scan_user`.
|
||||||
`process_record` calls a bunch of stuff, but eventually calls `process_record_kb` which calls `process_record_user`
|
`process_record` calls a bunch of stuff, but eventually calls `process_record_kb` which calls `process_record_user`
|
||||||
The same goes for `matrix_init`, `layer_state_set`, `led_set`, and a few other functions.
|
The same goes for `matrix_init`, `layer_state_set`, `led_set`, and a few other functions.
|
||||||
|
|
||||||
|
Loading…
Reference in New Issue
Block a user