Add helper macros to access keys in a bitfield

The RxCx set of macros help addressing key positions within the keydata
the Scanner returns for us. These can be ORed together to form a pattern
to match against, for example, or to look for a certain key by address,
and so on.

Signed-off-by: Gergely Nagy <algernon@madhouse-project.org>
pull/33/head
Gergely Nagy 8 years ago
parent 3426d5b4af
commit 03b4e0e325

@ -48,6 +48,74 @@ class Model01 {
};
#define SCANBIT(row,col) (1 << (row * 8 + (7 - col)))
#define R0C0 SCANBIT(0, 0)
#define R0C1 SCANBIT(0, 1)
#define R0C2 SCANBIT(0, 2)
#define R0C3 SCANBIT(0, 3)
#define R0C4 SCANBIT(0, 4)
#define R0C5 SCANBIT(0, 5)
#define R0C6 SCANBIT(0, 6)
#define R0C7 SCANBIT(0, 7)
#define R1C0 SCANBIT(1, 0)
#define R1C1 SCANBIT(1, 1)
#define R1C2 SCANBIT(1, 2)
#define R1C3 SCANBIT(1, 3)
#define R1C4 SCANBIT(1, 4)
#define R1C5 SCANBIT(1, 5)
#define R1C6 SCANBIT(1, 6)
#define R1C7 SCANBIT(1, 7)
#define R2C0 SCANBIT(2, 0)
#define R2C1 SCANBIT(2, 1)
#define R2C2 SCANBIT(2, 2)
#define R2C3 SCANBIT(2, 3)
#define R2C4 SCANBIT(2, 4)
#define R2C5 SCANBIT(2, 5)
#define R2C6 SCANBIT(2, 6)
#define R2C7 SCANBIT(2, 7)
#define R3C0 SCANBIT(3, 0)
#define R3C1 SCANBIT(3, 1)
#define R3C2 SCANBIT(3, 2)
#define R3C3 SCANBIT(3, 3)
#define R3C4 SCANBIT(3, 4)
#define R3C5 SCANBIT(3, 5)
#define R3C6 SCANBIT(3, 6)
#define R3C7 SCANBIT(3, 7)
#define R0C8 SCANBIT(0, 0)
#define R0C9 SCANBIT(0, 1)
#define R0C10 SCANBIT(0, 2)
#define R0C11 SCANBIT(0, 3)
#define R0C12 SCANBIT(0, 4)
#define R0C13 SCANBIT(0, 5)
#define R0C14 SCANBIT(0, 6)
#define R0C15 SCANBIT(0, 7)
#define R1C8 SCANBIT(1, 0)
#define R1C9 SCANBIT(1, 1)
#define R1C10 SCANBIT(1, 2)
#define R1C11 SCANBIT(1, 3)
#define R1C12 SCANBIT(1, 4)
#define R1C13 SCANBIT(1, 5)
#define R1C14 SCANBIT(1, 6)
#define R1C15 SCANBIT(1, 7)
#define R2C8 SCANBIT(2, 0)
#define R2C9 SCANBIT(2, 1)
#define R2C10 SCANBIT(2, 2)
#define R2C11 SCANBIT(2, 3)
#define R2C12 SCANBIT(2, 4)
#define R2C13 SCANBIT(2, 5)
#define R2C14 SCANBIT(2, 6)
#define R2C15 SCANBIT(2, 7)
#define R3C8 SCANBIT(3, 0)
#define R3C9 SCANBIT(3, 1)
#define R3C10 SCANBIT(3, 2)
#define R3C11 SCANBIT(3, 3)
#define R3C12 SCANBIT(3, 4)
#define R3C13 SCANBIT(3, 5)
#define R3C14 SCANBIT(3, 6)
#define R3C15 SCANBIT(3, 7)
#define LED_COUNT 64

Loading…
Cancel
Save