Skip to content

Commit

Permalink
fix fpbuild after latest changes
Browse files Browse the repository at this point in the history
  • Loading branch information
ilyakurdyukov authored Dec 10, 2023
1 parent f78fb0a commit 04d09ef
Showing 1 changed file with 22 additions and 6 deletions.
28 changes: 22 additions & 6 deletions fpbuild/fp_layer.c
Original file line number Diff line number Diff line change
Expand Up @@ -159,15 +159,24 @@ void keytrn_init(void) {
KEY(STAR, KEY_Z) /* crouch */
KEY(0, KEY_RBRACKET) /* next item */
KEY(PLUS, KEY_TAB) /* map */
};
static const uint8_t keys_power[] = {
KEY(UP, KEY_CAPSLOCK)
KEY(LEFT, KEY_SEMICOLON)
KEY(RIGHT, KEY_APOSTROPHE)
KEY(DOWN, KEY_ESCAPE)
KEY(CENTER, KEY_ENTER)
#undef KEY
};
int i, flags = sys_getkeymap(keymap);

memset(rkeymap, 0, sizeof(rkeymap));

for (i = 0; i < (int)sizeof(keys); i += 2)
#define FILL_RKEYMAP(keys) \
memset(rkeymap, 0, sizeof(rkeymap)); \
for (i = 0; i < (int)sizeof(keys); i += 2) \
rkeymap[keys[i]] = keys[i + 1];

FILL_RKEYMAP(keys)

#define KEY(name) rkeymap[KEYPAD_##name]
// no center key
if (!(flags & 1)) {
Expand All @@ -176,10 +185,17 @@ void keytrn_init(void) {
}
#undef KEY

for (i = 0; i < 64; i++) {
unsigned a = keymap[i];
sys_data.keytrn[i] = a < 64 ? rkeymap[a] : 0;
#define FILL_KEYTRN(j) \
for (i = 0; i < 64; i++) { \
unsigned a = keymap[i]; \
sys_data.keytrn[j][i] = a < 64 ? rkeymap[a] : 0; \
}

FILL_KEYTRN(0)
FILL_RKEYMAP(keys_power)
FILL_KEYTRN(1)
#undef FILL_RKEYMAP
#undef FILL_KEYTRN
}

const char *getkeyname(int num) {
Expand Down

0 comments on commit 04d09ef

Please sign in to comment.