X-Git-Url: https://git.donarmstrong.com/?a=blobdiff_plain;f=common%2Faction_code.h;h=c153838f2baf6fc351f10b43c6bdaa3c09483267;hb=d2427380e3d82df0f9b543615c27f9d823a09306;hp=2272091cc47fa45afc914be35a6d8826cae948d0;hpb=82aec4672213171b706f62862044b68d255bc4e9;p=tmk_firmware.git diff --git a/common/action_code.h b/common/action_code.h index 2272091..c153838 100644 --- a/common/action_code.h +++ b/common/action_code.h @@ -29,13 +29,13 @@ along with this program. If not, see . * 000r|0000|0000 0001 Transparent code * 000r|0000| keycode Key * 000r|mods|0000 0000 Modifiers - * 000r|mods| keycode Key and Modifiers + * 000r|mods| keycode Modifiers+Key(Modified key) * r: Left/Right flag(Left:0, Right:1) * * ACT_MODS_TAP(001r): - * 0010|mods|0000 0000 Modifiers with OneShot - * 0010|mods|0000 00xx (reserved) - * 0010|mods| keycode Modifiers with Tap Key + * 001r|mods|0000 0000 Modifiers with OneShot + * 001r|mods|0000 00xx (reserved) + * 001r|mods| keycode Modifiers with Tap Key(Dual role) * * * Other Keys(01xx) @@ -62,21 +62,21 @@ along with this program. If not, see . * 1000|ooee|pppE BBBB Layer Bitwise Operation * oo: operation(00:AND, 01:OR, 10:XOR, 11:SET) * ppp: 4-bit chunk part(0-7) - * eBBBB: bits and extra bit - * ee: on event(00:default layer, 01:press, 10:release, 11:both) + * EBBBB: bits and extra bit + * ee: on event(01:press, 10:release, 11:both) * * 1001|xxxx|xxxx xxxx (reserved) * 1001|oopp|BBBB BBBB 8-bit Bitwise Operation??? * * ACT_LAYER_TAP(101x): - * 101E|LLLL| keycode Invert with tap key + * 101E|LLLL| keycode On/Off with tap key * 101E|LLLL|1110 xxxx Reserved(0xE0-EF) * 101E|LLLL|1111 0000 Invert with tap toggle(0xF0) * 101E|LLLL|1111 0001 On/Off * 101E|LLLL|1111 0010 Off/On * 101E|LLLL|1111 0011 Set/Clear * 101E|LLLL|1111 xxxx Reserved(0xF4-FF) - * ELLLL: layer(0-31) + * ELLLL: layer 0-31(E: extra bit for layer 16-31) * * * Extensions(11xx) @@ -108,8 +108,8 @@ enum action_kind_id { ACT_MOUSEKEY = 0b0101, /* Layer Actions */ ACT_LAYER = 0b1000, - ACT_LAYER_TAP = 0b1010, - ACT_LAYER_TAP1 = 0b1011, + ACT_LAYER_TAP = 0b1010, /* Layer 0-15 */ + ACT_LAYER_TAP_EXT = 0b1011, /* Layer 16-31 */ /* Extensions */ ACT_MACRO = 0b1100, ACT_BACKLIGHT = 0b1101, @@ -207,10 +207,10 @@ enum mods_codes { MODS_ONESHOT = 0x00, }; #define ACTION_KEY(key) ACTION(ACT_MODS, (key)) -#define ACTION_MODS(mods) ACTION(ACT_MODS, (mods)<<8 | 0) -#define ACTION_MODS_KEY(mods, key) ACTION(ACT_MODS, (mods)<<8 | (key)) -#define ACTION_MODS_TAP_KEY(mods, key) ACTION(ACT_MODS_TAP, (mods)<<8 | (key)) -#define ACTION_MODS_ONESHOT(mods) ACTION(ACT_MODS_TAP, (mods)<<8 | MODS_ONESHOT) +#define ACTION_MODS(mods) ACTION(ACT_MODS, (mods&0x1f)<<8 | 0) +#define ACTION_MODS_KEY(mods, key) ACTION(ACT_MODS, (mods&0x1f)<<8 | (key)) +#define ACTION_MODS_TAP_KEY(mods, key) ACTION(ACT_MODS_TAP, (mods&0x1f)<<8 | (key)) +#define ACTION_MODS_ONESHOT(mods) ACTION(ACT_MODS_TAP, (mods&0x1f)<<8 | MODS_ONESHOT) /*