From b36a1ef61baf857281f124e27e7d0faefb49ad13 Mon Sep 17 00:00:00 2001 From: Harshit Goel Date: Sat, 2 Jun 2018 00:37:49 +0530 Subject: YMD96 complete QMK port (#3105) * readded code for YMD96 full working * added jj50 layout back --- keyboards/ymd96/matrix.c | 28 +++++++++++++++++++++++----- 1 file changed, 23 insertions(+), 5 deletions(-) (limited to 'keyboards/ymd96/matrix.c') diff --git a/keyboards/ymd96/matrix.c b/keyboards/ymd96/matrix.c index 140026013f..f2ecf4d33c 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,20 @@ void matrix_init(void) { matrix[row] = 0x00; matrix_debouncing[row] = 0x00; } -} +/*} + matrix_init_quantum(); // missing from original port by Luiz void matrix_set_row_status(uint8_t row) { DDRB = (1 << row); PORTB = ~(1 << row); -} +}*/ -uint8_t bit_reverse(uint8_t x) { + +/*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; + return x;*/ } uint8_t matrix_scan(void) { @@ -93,11 +98,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]; } -- cgit v1.2.3