diff options
author | tmk <nobody@nowhere> | 2011-01-06 15:18:55 +0900 |
---|---|---|
committer | tmk <nobody@nowhere> | 2011-01-06 15:33:08 +0900 |
commit | fd49c69d1a173b9d273b2b53eb6a22eda920223a (patch) | |
tree | 46c6a012a5ecba881fbd78ad7ccb9051e493340e /matrix_skel.h | |
parent | 590235d4bc92d1de4c17b96ae54f4daee8c3db2a (diff) |
added config option: MATRIX_HAS_GHOST and fixed some on matrix.c
ADD: Build option: MATRIX_HAS_GHOST to enable ghost blocking logic.
FIX: choose matrix buffer type(uint8_t/uint16_t) automatically
depending on column size in matrix.c.
FIX: use uint8_t insted of int in matrix.c.
Diffstat (limited to 'matrix_skel.h')
-rw-r--r-- | matrix_skel.h | 16 |
1 files changed, 10 insertions, 6 deletions
diff --git a/matrix_skel.h b/matrix_skel.h index 59c4eca11a..2379ce44ab 100644 --- a/matrix_skel.h +++ b/matrix_skel.h @@ -4,23 +4,27 @@ #include <stdbool.h> /* number of matrix rows */ -int matrix_rows(void); +uint8_t matrix_rows(void); /* number of matrix columns */ -int matrix_cols(void); +uint8_t matrix_cols(void); /* intialize matrix for scaning. should be called once. */ void matrix_init(void); /* scan all key states on matrix */ -int matrix_scan(void); +uint8_t matrix_scan(void); /* whether modified from previous scan. used after matrix_scan. */ bool matrix_is_modified(void); /* whether ghosting occur on matrix. */ bool matrix_has_ghost(void); /* whether a swtich is on */ -bool matrix_is_on(int row, int col); +bool matrix_is_on(uint8_t row, uint8_t col); /* matrix state on row */ -uint16_t matrix_get_row(int row); +#if (MATRIX_COLS <= 8) +uint8_t matrix_get_row(uint8_t row); +#else +uint16_t matrix_get_row(uint8_t row); +#endif /* count keys pressed */ -int matrix_key_count(void); +uint8_t matrix_key_count(void); /* print matrix for debug */ void matrix_print(void); |