blob: 4ad6b429b3d493b40fce606d996732d5d015afdf (
plain) (
blame)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
|
#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(side) ((side) == LEFT ? &keymat[0] : &keymat[KEY_ROWS_HALF])
void keymat_init(void);
void keymat_next(void);
void keymat_scan(void);
uint32_t keymat_encode_half(int side);
void keymat_decode_half(int side, uint32_t);
extern bool keymat_prev[KEY_ROWS][KEY_COLS];
extern bool keymat[KEY_ROWS][KEY_COLS];
|