blob: 9def47b5c39ae4e702b7e0da8f70b8cf1358bee4 (
plain) (
blame)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
|
#pragma once
#include "util.h"
#include <stdint.h>
#define KEY_ROWS_HALF 4
#define KEY_ROWS (KEY_ROWS_HALF * 2)
#define KEY_COLS 6
#define KEY_COUNT (KEY_ROWS * KEY_COLS)
#define KEYMAT_HALF(keymat, side) ((side) == LEFT ? &(keymat)[0] : &(keymat)[KEY_ROWS_HALF])
void keymat_init(void);
bool keymat_scan(void);
uint32_t keymat_encode_half(int side);
void keymat_decode_half(int side, uint32_t mask);
void keymat_debug(void);
extern bool keymat_prev[KEY_ROWS][KEY_COLS];
extern bool keymat[KEY_ROWS][KEY_COLS];
|