X-Git-Url: https://git.friedersdorff.com/?a=blobdiff_plain;f=keyboard%2Fgh60%2Fmatrix.c;h=5a56cee0107d7709c826d4a55ed822f53e479b04;hb=814eaa2dffa10f8b3a9f5c5ae6fab430322056d7;hp=3ba6801fbfabafe9b7d913caab99b39288f69231;hpb=30f9baf8985f3caa626bcd0eef8519b93f23669b;p=max%2Ftmk_keyboard.git
diff --git a/keyboard/gh60/matrix.c b/keyboard/gh60/matrix.c
index 3ba6801f..5a56cee0 100644
--- a/keyboard/gh60/matrix.c
+++ b/keyboard/gh60/matrix.c
@@ -34,10 +34,8 @@ along with this program. If not, see .
static uint8_t debouncing = DEBOUNCE;
/* matrix state(1:on, 0:off) */
-static matrix_row_t *matrix;
-static matrix_row_t *matrix_debouncing;
-static matrix_row_t matrix0[MATRIX_ROWS];
-static matrix_row_t matrix1[MATRIX_ROWS];
+static matrix_row_t matrix[MATRIX_ROWS];
+static matrix_row_t matrix_debouncing[MATRIX_ROWS];
static matrix_row_t read_cols(void);
static void init_cols(void);
@@ -45,18 +43,6 @@ static void unselect_rows(void);
static void select_row(uint8_t row);
-inline
-uint8_t matrix_rows(void)
-{
- return MATRIX_ROWS;
-}
-
-inline
-uint8_t matrix_cols(void)
-{
- return MATRIX_COLS;
-}
-
void matrix_init(void)
{
// initialize row and col
@@ -64,8 +50,6 @@ void matrix_init(void)
init_cols();
// initialize matrix state: all keys off
- matrix = matrix0;
- matrix_debouncing = matrix1;
for (uint8_t i=0; i < MATRIX_ROWS; i++) {
matrix[i] = 0;
matrix_debouncing[i] = 0;
@@ -92,55 +76,25 @@ uint8_t matrix_scan(void)
if (--debouncing) {
_delay_ms(1);
} else {
- matrix_row_t *tmp = matrix;
- matrix = matrix_debouncing;
- matrix_debouncing = tmp;
+ for (uint8_t i = 0; i < MATRIX_ROWS; i++) {
+ matrix[i] = matrix_debouncing[i];
+ }
}
}
return 1;
}
-bool matrix_is_modified(void)
-{
- if (debouncing) return false;
- return true;
-}
-
-inline
-bool matrix_is_on(uint8_t row, uint8_t col)
-{
- return (matrix[row] & ((matrix_row_t)1<