90 lines
2.0 KiB
C
90 lines
2.0 KiB
C
#include "pvinis.h"
|
|
#include "version.h"
|
|
|
|
#ifdef AUDIO_ENABLE
|
|
#include "audio.h"
|
|
#endif // AUDIO_ENABLE
|
|
|
|
|
|
#ifdef AUDIO_ENABLE
|
|
// float tone_katamari_rolling_star[][2] = SONG(KATAMARI_ROLLING_STAR);
|
|
#endif // AUDIO_ENABLE
|
|
|
|
|
|
// SYMBOL + SYSCTL = KBCTL
|
|
uint32_t layer_state_set_user(uint32_t state) {
|
|
uint32_t intermediate_state = update_tri_layer_state(state, LR_SYMBOL, LR_SYSCTL, LR_KBCTL);
|
|
intermediate_state = layer_state_set_user_local(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:
|
|
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_KTMR:
|
|
if (record->event.pressed) {
|
|
#ifdef AUDIO_ENABLE
|
|
// PLAY_SONG(tone_katamari_rolling_star);
|
|
#endif
|
|
}
|
|
return false;
|
|
}
|
|
return process_record_keymap(keycode, record);
|
|
}
|
|
|
|
|
|
#ifdef TAP_DANCE_ENABLE
|
|
qk_tap_dance_action_t tap_dance_actions[] = {
|
|
};
|
|
#endif // TAP_DANCE_ENABLE
|
|
|
|
|
|
// init stuff
|
|
void keyboard_post_init_user(void) {
|
|
keyboard_post_init_user_local();
|
|
}
|
|
|
|
|
|
// default functions
|
|
__attribute__ ((weak))
|
|
void keyboard_post_init_user_local(void) {}
|
|
|
|
__attribute__ ((weak))
|
|
uint32_t layer_state_set_user_local(uint32_t state) {
|
|
return state;
|
|
}
|