]> git.donarmstrong.com Git - qmk_firmware.git/blob - keyboards/zeal60/zeal60_keycodes.h
[Keyboard] fixed pins for numpad_5x4 layout (#6311)
[qmk_firmware.git] / keyboards / zeal60 / zeal60_keycodes.h
1 /* Copyright 2017 Jason Williams (Wilba)
2  *
3  * This program is free software: you can redistribute it and/or modify
4  * it under the terms of the GNU General Public License as published by
5  * the Free Software Foundation, either version 2 of the License, or
6  * (at your option) any later version.
7  *
8  * This program is distributed in the hope that it will be useful,
9  * but WITHOUT ANY WARRANTY; without even the implied warranty of
10  * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
11  * GNU General Public License for more details.
12  *
13  * You should have received a copy of the GNU General Public License
14  * along with this program.  If not, see <http://www.gnu.org/licenses/>.
15  */
16 #pragma once
17
18 // Can't use SAFE_RANGE here, it might change if someone adds
19 // new values to enum quantum_keycodes.
20 // Need to keep checking 0x5F10 is still in the safe range.
21 // TODO: merge this into quantum_keycodes
22 // Backlight keycodes are in range 0x5F00-0x5F0F
23 enum zeal60_keycodes {
24         FN_MO13 = 0x5F10,
25         FN_MO23,
26         MACRO00,
27         MACRO01,
28         MACRO02,
29         MACRO03,
30         MACRO04,
31         MACRO05,
32         MACRO06,
33         MACRO07,
34         MACRO08,
35         MACRO09,
36         MACRO10,
37         MACRO11,
38         MACRO12,
39         MACRO13,
40         MACRO14,
41         MACRO15,
42 };
43
44 enum user_keycodes {
45   USER00 = 0x5F80,
46   USER01,
47   USER02,
48   USER03,
49   USER04,
50   USER05,
51   USER06,
52   USER07,
53   USER08,
54   USER09,
55   USER10,
56   USER11,
57   USER12,
58   USER13,
59   USER14,
60   USER15,
61 };
62
63 // Zeal60 specific "action functions"
64 // These are only valid IDs in action_function()
65 // Use FN_TT13, FN_TT23, etc. in keymaps
66 enum zeal60_action_functions {
67         TRIPLE_TAP_1_3 = 0x31,
68         TRIPLE_TAP_2_3 = 0x32
69 };
70
71 // Bitwise OR the above with 0x0F00 to use in F(x) macro
72 // This reserves the top 256 of the 4096 range of F(x) keycodes,
73 // leaving the rest for use in fn_actions[] or actions in EEPROM.
74 #define FN_TT13 F((0x0F00|TRIPLE_TAP_1_3))
75 #define FN_TT23 F((0x0F00|TRIPLE_TAP_2_3))
76
77 #define TG_NKRO             MAGIC_TOGGLE_NKRO