|
|
- #include "pvinis.h"
- #include "version.h"
-
- #ifdef AUDIO_ENABLE
- # include "audio.h"
-
- float song_sonic_ring[][2] = SONG(SONIC_RING);
- float song_coin_sound[][2] = SONG(COIN_SOUND);
- float song_test[][2] = SONG(QWERTY_SOUND);
- #endif
-
- // SYMBOL + SYSCTL = KBCTL
- layer_state_t layer_state_set_user(layer_state_t state) {
- uint32_t intermediate_state = update_tri_layer_state(state, LR_SYMBOL, LR_SYSCTL, LR_KBCTL);
- intermediate_state = layer_state_set_user_keymap(intermediate_state);
- return intermediate_state;
- }
-
- // functions for the individual keymaps to implement if they need something extra
- __attribute__((weak)) bool process_record_keymap(uint16_t keycode, keyrecord_t *record) { return true; }
-
- // Handle my own keycodes.
- bool process_record_user(uint16_t keycode, keyrecord_t *record) {
- switch (keycode) {
- case PV_VRSN:
- if (record->event.pressed) {
- SEND_STRING(QMK_KEYBOARD "/" QMK_KEYMAP " @ " QMK_VERSION);
- }
- return false;
-
- case PV_MAKE:
- // make ergodox_ez:pvinis:teensy
- if (!record->event.pressed) {
- SEND_STRING("make " QMK_KEYBOARD ":" QMK_KEYMAP
- #if (defined(BOOTLOADER_DFU) || defined(BOOTLOADER_LUFA_DFU) || defined(BOOTLOADER_QMK_DFU))
- ":dfu"
- #elif defined(BOOTLOADER_HALFKAY)
- ":teensy"
- #elif defined(BOOTLOADER_CATERINA)
- ":avrdude"
- #endif
- SS_TAP(X_ENTER));
- }
- return false;
-
- case PV_FLSH:
- reset_keyboard();
- return false;
-
- case PV_SSNC:
- if (record->event.pressed) {
- #ifdef AUDIO_ENABLE
- PLAY_SONG(song_sonic_ring);
- #endif
- }
- return false;
-
- case PV_SCIN:
- if (record->event.pressed) {
- #ifdef AUDIO_ENABLE
- PLAY_SONG(song_coin_sound);
- #endif
- }
- return false;
-
- case PV_TEST:
- if (record->event.pressed) {
- #ifdef AUDIO_ENABLE
- PLAY_SONG(song_test);
- #endif
- }
- return false;
- }
- return process_record_keymap(keycode, record);
- }
-
- #ifdef TAP_DANCE_ENABLE
- qk_tap_dance_action_t tap_dance_actions[] = {};
- #endif
-
- void keyboard_post_init_rgb_light(void) {
- rgblight_sethsv(HSV_GOLD);
- rgblight_mode(RGBLIGHT_MODE_BREATHING);
- // rgblight_mode(RGBLIGHT_MODE_KNIGHT+1);
- }
-
- // Init stuff.
- void keyboard_post_init_user(void) {
- #if defined(RGBLIGHT_ENABLE)
- keyboard_post_init_rgb_light();
- #endif
- keyboard_post_init_user_keymap();
- }
-
- // Default functions.
- __attribute__((weak)) void keyboard_post_init_user_keymap(void) {}
-
- __attribute__((weak)) uint32_t layer_state_set_user_keymap(uint32_t state) { return state; }
|