1 #include QMK_KEYBOARD_H
3 const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = {
6 TO(1), KC_A, KC_B, KC_C, KC_D, KC_E),
9 TO(2), KC_F, KC_G, KC_H, KC_I, KC_J),
12 TO(3), KC_K, KC_L, KC_M, KC_N, KC_O),
15 TO(4), KC_P, KC_Q, KC_R, KC_S, KC_T),
18 TO(5), KC_U, KC_V, KC_W, KC_X, KC_Y),
21 TO(0), KC_Z, KC_1, KC_2, KC_3, KC_4)};
23 const macro_t *action_get_macro(keyrecord_t *record, uint8_t id, uint8_t opt)
25 //keyevent_t event = record->event;
30 if (record->event.pressed)
32 return MACRO(T(T), T(G), T(L), T(H), T(F), T(ENT), END);
36 if (record->event.pressed)
38 return MACRO(T(T), T(G), T(G), T(ENT), END);
42 if (record->event.pressed)
44 return MACRO(D(NO), T(L), U(NO), END);
48 if (record->event.pressed)
50 return MACRO(D(LCTL), T(Z), U(LCTL), END);
54 if (record->event.pressed)
56 return MACRO(D(LCTL), D(LSFT), T(Z), U(LSFT), U(LCTL), END);
60 if (record->event.pressed)
62 return MACRO(D(LCTL), T(X), U(LCTL), END);
66 if (record->event.pressed)
68 return MACRO(D(LCTL), T(C), U(LCTL), END);
72 if (record->event.pressed)
74 return MACRO(D(LCTL), T(V), U(LCTL), END);
81 // M6-A LEDs are connected to D6, B6, F5, B4, C7, F7
82 // This is 1-based because I copied it from Knops code.
83 void set_switch_led(int ledId, bool state)
135 void set_layer_led(int layerId)
140 void led_set_layer(int layer);
142 void matrix_init_user(void)
148 void matrix_scan_user(void)
152 // M6-A LEDs are connected to D6, B6, F5, B4, C7, F7
153 void led_init_ports()
180 void led_set_user(uint8_t usb_led)
183 if (usb_led & (1 << USB_LED_NUM_LOCK))
190 if (usb_led & (1 << USB_LED_CAPS_LOCK))
197 if (usb_led & (1 << USB_LED_SCROLL_LOCK))
204 if (usb_led & (1 << USB_LED_COMPOSE))
211 if (usb_led & (1 << USB_LED_KANA))
219 void led_set_layer(int layer)
224 set_switch_led(1, true);
225 set_switch_led(2, false);
226 set_switch_led(3, false);
227 set_switch_led(4, false);
228 set_switch_led(5, false);
229 set_switch_led(6, false);
232 set_switch_led(1, false);
233 set_switch_led(2, true);
234 set_switch_led(3, false);
235 set_switch_led(4, false);
236 set_switch_led(5, false);
237 set_switch_led(6, false);
240 set_switch_led(1, false);
241 set_switch_led(2, false);
242 set_switch_led(3, true);
243 set_switch_led(4, false);
244 set_switch_led(5, false);
245 set_switch_led(6, false);
248 set_switch_led(1, false);
249 set_switch_led(2, false);
250 set_switch_led(3, false);
251 set_switch_led(4, true);
252 set_switch_led(5, false);
253 set_switch_led(6, false);
256 set_switch_led(1, false);
257 set_switch_led(2, false);
258 set_switch_led(3, false);
259 set_switch_led(4, false);
260 set_switch_led(5, true);
261 set_switch_led(6, false);
264 set_switch_led(1, false);
265 set_switch_led(2, false);
266 set_switch_led(3, false);
267 set_switch_led(4, false);
268 set_switch_led(5, false);
269 set_switch_led(6, true);
272 set_switch_led(1, true);
273 set_switch_led(2, true);
274 set_switch_led(3, true);
275 set_switch_led(4, true);
276 set_switch_led(5, true);
277 set_switch_led(6, true);
282 bool process_record_user(uint16_t keycode, keyrecord_t *record)
287 if (record->event.pressed)
293 if (record->event.pressed)
299 if (record->event.pressed)
305 if (record->event.pressed)
311 if (record->event.pressed)
317 if (record->event.pressed)