core: Fix unimap translation range
This commit is contained in:
parent
3b21f85e9b
commit
01477b7ef2
1 changed files with 5 additions and 5 deletions
|
|
@ -25,8 +25,8 @@ keypos_t unimap_translate(keypos_t key)
|
|||
unimap_trans[key.row][key.col];
|
||||
#endif
|
||||
return (keypos_t) {
|
||||
.row = ((unimap_pos & 0xf0) >> 4),
|
||||
.col = (unimap_pos & 0x0f)
|
||||
.row = ((unimap_pos >> 4 ) & 0x07),
|
||||
.col = (unimap_pos & 0x0F)
|
||||
};
|
||||
}
|
||||
|
||||
|
|
@ -35,13 +35,13 @@ __attribute__ ((weak))
|
|||
action_t action_for_key(uint8_t layer, keypos_t key)
|
||||
{
|
||||
keypos_t uni = unimap_translate(key);
|
||||
if ((uni.row << 4 | uni.col) == UNIMAP_NO) {
|
||||
if ((uni.row << 4 | uni.col) > 0x7F) {
|
||||
return (action_t)ACTION_NO;
|
||||
}
|
||||
#if defined(__AVR__)
|
||||
return (action_t)pgm_read_word(&actionmaps[(layer)][(uni.row & 0x7)][(uni.col)]);
|
||||
return (action_t)pgm_read_word(&actionmaps[(layer)][(uni.row & 0x07)][(uni.col & 0x0F)]);
|
||||
#else
|
||||
return actionmaps[(layer)][(uni.row & 0x7)][(uni.col)];
|
||||
return actionmaps[(layer)][(uni.row & 0x07)][(uni.col & 0x0F)];
|
||||
#endif
|
||||
}
|
||||
|
||||
|
|
|
|||
Loading…
Add table
Reference in a new issue