forked from mirrors/qmk_userspace
		
	Remove matrix_init_quantum/matrix_scan_quantum (#19806)
This commit is contained in:
		
					parent
					
						
							
								9991894514
							
						
					
				
			
			
				commit
				
					
						11d49d00e7
					
				
			
		
					 76 changed files with 148 additions and 319 deletions
				
			
		| 
						 | 
					@ -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;
 | 
				
			||||||
}
 | 
					}
 | 
				
			||||||
 | 
					
 | 
				
			||||||
| 
						 | 
					
 | 
				
			||||||
| 
						 | 
					@ -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++)
 | 
				
			||||||
| 
						 | 
					
 | 
				
			||||||
| 
						 | 
					@ -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…
	
	Add table
		Add a link
		
	
		Reference in a new issue