X-Git-Url: https://git.donarmstrong.com/?a=blobdiff_plain;f=keyboards%2Fymd96%2Fmatrix.c;h=2932976dde20c10bf6d8e8afb8dd4d46020631f1;hb=6d6646de049a77dab189bcd6efd99f505fc3aa9e;hp=140026013f021509ede9245feea98f796ff860b1;hpb=6531d64ac75b1614e2b4b4d92abb9a3586014584;p=qmk_firmware.git diff --git a/keyboards/ymd96/matrix.c b/keyboards/ymd96/matrix.c index 140026013..2932976dd 100644 --- a/keyboards/ymd96/matrix.c +++ b/keyboards/ymd96/matrix.c @@ -29,6 +29,9 @@ static uint8_t debouncing = DEBOUNCE; static matrix_row_t matrix[MATRIX_ROWS]; static matrix_row_t matrix_debouncing[MATRIX_ROWS]; +void matrix_set_row_status(uint8_t row); +uint8_t bit_reverse(uint8_t x); + void matrix_init(void) { // all outputs for rows high DDRB = 0xFF; @@ -47,18 +50,8 @@ void matrix_init(void) { matrix[row] = 0x00; matrix_debouncing[row] = 0x00; } -} - -void matrix_set_row_status(uint8_t row) { - DDRB = (1 << row); - PORTB = ~(1 << row); -} -uint8_t bit_reverse(uint8_t x) { - x = ((x >> 1) & 0x55) | ((x << 1) & 0xaa); - x = ((x >> 2) & 0x33) | ((x << 2) & 0xcc); - x = ((x >> 4) & 0x0f) | ((x << 4) & 0xf0); - return x; + matrix_init_quantum(); // missing from original port by Luiz } uint8_t matrix_scan(void) { @@ -93,11 +86,24 @@ uint8_t matrix_scan(void) { } } - matrix_scan_user(); + matrix_scan_quantum(); // also missing in original PS2AVRGB implementation return 1; } +// declarations +void matrix_set_row_status(uint8_t row) { + DDRB = (1 << row); + PORTB = ~(1 << row); +} + +uint8_t bit_reverse(uint8_t x) { + x = ((x >> 1) & 0x55) | ((x << 1) & 0xaa); + x = ((x >> 2) & 0x33) | ((x << 2) & 0xcc); + x = ((x >> 4) & 0x0f) | ((x << 4) & 0xf0); + return x; +} + inline matrix_row_t matrix_get_row(uint8_t row) { return matrix[row]; }