diff options
author | talsu <talsu84@gmail.com> | 2021-06-17 14:45:27 +0900 |
---|---|---|
committer | GitHub <noreply@github.com> | 2021-06-16 22:45:27 -0700 |
commit | a9c6adb083556ae485dbf1e9f86ad615e32a8b7a (patch) | |
tree | 460385a9d6cae53eabf142e655d52eff60973124 /keyboards/kmac_pad/keymaps/default/keymap.c | |
parent | f9d88da86fdbf387e40de32a8342390e066ad1f6 (diff) | |
download | qmk_firmware-a9c6adb083556ae485dbf1e9f86ad615e32a8b7a.tar.gz qmk_firmware-a9c6adb083556ae485dbf1e9f86ad615e32a8b7a.zip |
[Keyboard] Add KMAC PAD (#13104)
Co-authored-by: Drashna Jaelre <drashna@live.com>
Co-authored-by: Ryan <fauxpark@gmail.com>
Diffstat (limited to 'keyboards/kmac_pad/keymaps/default/keymap.c')
-rw-r--r-- | keyboards/kmac_pad/keymaps/default/keymap.c | 143 |
1 files changed, 143 insertions, 0 deletions
diff --git a/keyboards/kmac_pad/keymaps/default/keymap.c b/keyboards/kmac_pad/keymaps/default/keymap.c new file mode 100644 index 0000000000..b9b9f823fb --- /dev/null +++ b/keyboards/kmac_pad/keymaps/default/keymap.c @@ -0,0 +1,143 @@ +/* +Copyright 2021 talsu <talsu84@gmail.com> + +This program is free software: you can redistribute it and/or modify +it under the terms of the GNU General Public License as published by +the Free Software Foundation, either version 2 of the License, or +(at your option) any later version. + +This program is distributed in the hope that it will be useful, +but WITHOUT ANY WARRANTY; without even the implied warranty of +MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the +GNU General Public License for more details. + +You should have received a copy of the GNU General Public License +along with this program. If not, see <http://www.gnu.org/licenses/>. +*/ + +#include QMK_KEYBOARD_H + +enum kmac_pad_keycodes { + MD_BOOT = SAFE_RANGE, + MCR1, + MCR2, + MCR3, + MCR4, + MCR5, + MCR6, + MCR7, + MCR8, + MCR9, + MCR10, + MCR11, + MCR12 +}; + +const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = { + [0] = LAYOUT( /* Base */ + TG(1), + KC_NLCK, KC_PSLS, KC_PAST, KC_PMNS, + KC_P7, KC_P8, KC_P9, KC_PPLS, + KC_P4, KC_P5, KC_P6, + KC_P1, KC_P2, KC_P3, KC_PENT, + KC_P0, KC_PDOT ), + [1] = LAYOUT( /* FN */ + KC_TRNS, + MCR1, MCR2, MCR3, KC_TRNS, + MCR4, MCR5, MCR6, KC_TRNS, + MCR7, MCR8, MCR9, + MCR10, MCR11, MCR12, KC_TRNS, + KC_TRNS, MD_BOOT ) +}; + +bool process_record_user(uint16_t keycode, keyrecord_t *record) { + + switch (keycode) { + case MD_BOOT: + { + static uint32_t key_timer; + if (record->event.pressed) { + key_timer = timer_read32(); + } else { + if (timer_elapsed32(key_timer) >= 2000) { + reset_keyboard(); + } + } + return false; + } + case MCR1: + if (record->event.pressed) { + SEND_STRING("Macro 1"); + } + return false; + case MCR2: + if (record->event.pressed) { + SEND_STRING("Macro 2"); + } + return false; + case MCR3: + if (record->event.pressed) { + SEND_STRING("Macro 3"); + } + return false; + case MCR4: + if (record->event.pressed) { + SEND_STRING("Macro 4"); + } + return false; + case MCR5: + if (record->event.pressed) { + SEND_STRING("Macro 5"); + } + return false; + case MCR6: + if (record->event.pressed) { + SEND_STRING("Macro 6"); + } + return false; + case MCR7: + if (record->event.pressed) { + SEND_STRING("Macro 7"); + } + return false; + case MCR8: + if (record->event.pressed) { + SEND_STRING("Macro 8"); + } + return false; + case MCR9: + if (record->event.pressed) { + SEND_STRING("Macro 9"); + } + return false; + case MCR10: + if (record->event.pressed) { + SEND_STRING("Macro 10"); + } + return false; + case MCR11: + if (record->event.pressed) { + SEND_STRING("Macro 12"); + } + return false; + case MCR12: + if (record->event.pressed) { + SEND_STRING("Macro 12"); + } + return false; + default: + return true; + } + +} + +bool led_update_user(led_t led_state) { + writePin(B1, led_state.num_lock); + return false; +} + + +layer_state_t layer_state_set_user(layer_state_t state) { + writePin(B3, !IS_LAYER_ON_STATE(state, 0)); + return state; +} |