aboutsummaryrefslogtreecommitdiff
path: root/keyboard
diff options
context:
space:
mode:
authortmk <nobody@nowhere>2013-03-31 22:47:19 +0900
committertmk <nobody@nowhere>2013-03-31 22:47:19 +0900
commit10f33a3e484e24065ed5eaab1c56c35156bace89 (patch)
tree8b938962644ad2d04261655bc9487984e86e4996 /keyboard
parent353a9b56e6caee853d3f808d2bfedf07056b4518 (diff)
downloadqmk_firmware-10f33a3e484e24065ed5eaab1c56c35156bace89.tar.gz
qmk_firmware-10f33a3e484e24065ed5eaab1c56c35156bace89.zip
Remove ACT_KEYMAP and ACT_OVERLAY
- Remove ACT_OVERLAY - Rename ACT_KEYMAP to ACT_LAYER - Add ACT_LAYER_BITOP
Diffstat (limited to 'keyboard')
-rw-r--r--keyboard/gh60/config.h3
-rw-r--r--keyboard/gh60/keymap.c44
-rw-r--r--keyboard/hhkb/config.h3
3 files changed, 16 insertions, 34 deletions
diff --git a/keyboard/gh60/config.h b/keyboard/gh60/config.h
index fbe587081..567b126b6 100644
--- a/keyboard/gh60/config.h
+++ b/keyboard/gh60/config.h
@@ -61,8 +61,7 @@ along with this program. If not, see <http://www.gnu.org/licenses/>.
61//#define NO_PRINT 61//#define NO_PRINT
62 62
63/* disable action features */ 63/* disable action features */
64//#define NO_ACTION_KEYMAP 64//#define NO_ACTION_LAYER
65//#define NO_ACTION_OVERLAY
66//#define NO_ACTION_TAPPING 65//#define NO_ACTION_TAPPING
67//#define NO_ACTION_ONESHOT 66//#define NO_ACTION_ONESHOT
68//#define NO_ACTION_MACRO 67//#define NO_ACTION_MACRO
diff --git a/keyboard/gh60/keymap.c b/keyboard/gh60/keymap.c
index d6af16961..2f41ad4fd 100644
--- a/keyboard/gh60/keymap.c
+++ b/keyboard/gh60/keymap.c
@@ -91,7 +91,7 @@ static const uint8_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = {
91 ESC, 1, 2, 3, 4, 5, 6, 7, 8, 9, 0, MINS,EQL, BSPC, \ 91 ESC, 1, 2, 3, 4, 5, 6, 7, 8, 9, 0, MINS,EQL, BSPC, \
92 TAB, Q, W, E, R, T, Y, U, I, O, P, LBRC,RBRC,BSLS, \ 92 TAB, Q, W, E, R, T, Y, U, I, O, P, LBRC,RBRC,BSLS, \
93 LCTL,A, S, D, F, G, H, J, K, L, FN2, QUOT, ENT, \ 93 LCTL,A, S, D, F, G, H, J, K, L, FN2, QUOT, ENT, \
94 LSFT,Z, X, C, V, B, N, M, COMM,DOT, FN1, RSFT, \ 94 LSFT,Z, X, C, V, B, N, M, COMM,DOT, FN1, FN9, \
95 LCTL,LGUI,LALT, SPC, RALT,FN3, FN3, FN0), 95 LCTL,LGUI,LALT, SPC, RALT,FN3, FN3, FN0),
96 /* Keymap 1: colemak */ 96 /* Keymap 1: colemak */
97 KEYMAP_ANSI( 97 KEYMAP_ANSI(
@@ -198,54 +198,38 @@ static const uint8_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = {
198 TRNS,TRNS,TRNS, TRNS, TRNS,TRNS,TRNS,TRNS), 198 TRNS,TRNS,TRNS, TRNS, TRNS,TRNS,TRNS,TRNS),
199}; 199};
200 200
201static const uint8_t PROGMEM overlays[][MATRIX_ROWS][MATRIX_COLS] = {};
202
203/* 201/*
204 * Fn action definition 202 * Fn action definition
205 */ 203 */
206static const uint16_t PROGMEM fn_actions[] = { 204static const uint16_t PROGMEM fn_actions[] = {
207 [0] = ACTION_KEYMAP_MOMENTARY(4), 205 [0] = ACTION_LAYER_MOMENTARY(4),
208 [1] = ACTION_KEYMAP_TAP_KEY(5, KC_SLASH), 206 [1] = ACTION_LAYER_TAP_KEY(5, KC_SLASH),
209 [2] = ACTION_KEYMAP_TAP_KEY(6, KC_SCLN), 207 [2] = ACTION_LAYER_TAP_KEY(6, KC_SCLN),
210 [3] = ACTION_KEYMAP_MOMENTARY(6), 208 [3] = ACTION_LAYER_MOMENTARY(6),
211 [4] = ACTION_KEYMAP_MOMENTARY(7), // to Layout selector 209 [4] = ACTION_LAYER_MOMENTARY(7), // to Layout selector
212 [5] = ACTION_DEFAULT_LAYER_SET(0), // set qwerty layout 210 [5] = ACTION_DEFAULT_LAYER_SET(0), // set qwerty layout
213 [6] = ACTION_DEFAULT_LAYER_SET(1), // set colemak layout 211 [6] = ACTION_DEFAULT_LAYER_SET(1), // set colemak layout
214 [7] = ACTION_DEFAULT_LAYER_SET(2), // set dvorak layout 212 [7] = ACTION_DEFAULT_LAYER_SET(2), // set dvorak layout
215 [8] = ACTION_DEFAULT_LAYER_SET(3), // set workman layout 213 [8] = ACTION_DEFAULT_LAYER_SET(3), // set workman layout
214 [9] = ACTION_RMOD_TAP_KEY(KC_RSFT, KC_GRV),
216}; 215};
217#endif 216#endif
218 217
219 218
220 219
221#define KEYMAPS_SIZE (sizeof(keymaps) / sizeof(keymaps[0])) 220#define KEYMAPS_SIZE (sizeof(keymaps) / sizeof(keymaps[0]))
222#define OVERLAYS_SIZE (sizeof(overlays) / sizeof(overlays[0]))
223#define FN_ACTIONS_SIZE (sizeof(fn_actions) / sizeof(fn_actions[0])) 221#define FN_ACTIONS_SIZE (sizeof(fn_actions) / sizeof(fn_actions[0]))
224 222
225/* translates key to keycode */ 223/* translates key to keycode */
226uint8_t keymap_key_to_keycode(uint8_t layer, key_t key) 224uint8_t keymap_key_to_keycode(uint8_t layer, key_t key)
227{ 225{
228 /* Overlay: 16-31(OVERLAY_BIT(0x10) | overlay_layer) */ 226 if (layer < KEYMAPS_SIZE) {
229 if (layer & OVERLAY_BIT) { 227 return pgm_read_byte(&keymaps[(layer)][(key.row)][(key.col)]);
230 layer &= OVERLAY_MASK; 228 } else {
231 if (layer < OVERLAYS_SIZE) { 229 // XXX: this may cuaes bootlaoder_jump inconsistent fail.
232 return pgm_read_byte(&overlays[(layer)][(key.row)][(key.col)]); 230 //debug("key_to_keycode: base "); debug_dec(layer); debug(" is invalid.\n");
233 } else { 231 // fall back to layer 0
234 // XXX: this may cuaes bootlaoder_jump incositent fail. 232 return pgm_read_byte(&keymaps[0][(key.row)][(key.col)]);
235 //debug("key_to_keycode: overlay "); debug_dec(layer); debug(" is invalid.\n");
236 return KC_TRANSPARENT;
237 }
238 }
239 /* Keymap: 0-15 */
240 else {
241 if (layer < KEYMAPS_SIZE) {
242 return pgm_read_byte(&keymaps[(layer)][(key.row)][(key.col)]);
243 } else {
244 // XXX: this may cuaes bootlaoder_jump incositent fail.
245 //debug("key_to_keycode: base "); debug_dec(layer); debug(" is invalid.\n");
246 // fall back to layer 0
247 return pgm_read_byte(&keymaps[0][(key.row)][(key.col)]);
248 }
249 } 233 }
250} 234}
251 235
diff --git a/keyboard/hhkb/config.h b/keyboard/hhkb/config.h
index 6e26edbef..9df86126e 100644
--- a/keyboard/hhkb/config.h
+++ b/keyboard/hhkb/config.h
@@ -74,8 +74,7 @@ along with this program. If not, see <http://www.gnu.org/licenses/>.
74//#define NO_PRINT 74//#define NO_PRINT
75 75
76/* disable action features */ 76/* disable action features */
77//#define NO_ACTION_KEYMAP 77//#define NO_ACTION_LAYER
78//#define NO_ACTION_OVERLAY
79//#define NO_ACTION_TAPPING 78//#define NO_ACTION_TAPPING
80//#define NO_ACTION_ONESHOT 79//#define NO_ACTION_ONESHOT
81//#define NO_ACTION_MACRO 80//#define NO_ACTION_MACRO