diff options
| -rw-r--r-- | quantum/quantum.c | 24 | ||||
| -rw-r--r-- | quantum/quantum.h | 2 | 
2 files changed, 16 insertions, 10 deletions
| diff --git a/quantum/quantum.c b/quantum/quantum.c index d5b9753b76..bc2da510f2 100644 --- a/quantum/quantum.c +++ b/quantum/quantum.c @@ -15,6 +15,19 @@ bool process_record_user(uint16_t keycode, keyrecord_t *record) {    return true;  } +void reset_keyboard(void) { +  clear_keyboard(); +#ifdef AUDIO_ENABLE +  stop_all_notes(); +  shutdown_user(); +#endif +  wait_ms(250); +#ifdef CATERINA_BOOTLOADER +  *(uint16_t *)0x0800 = 0x7777; // these two are a-star-specific +#endif +  bootloader_jump(); +} +  // Shift / paren setup  #ifndef LSPO_KEY @@ -83,16 +96,7 @@ bool process_record_quantum(keyrecord_t *record) {    switch(keycode) {      case RESET:        if (record->event.pressed) { -        clear_keyboard(); -        #ifdef AUDIO_ENABLE -          stop_all_notes(); -          shutdown_user(); -        #endif -        wait_ms(250); -        #ifdef CATERINA_BOOTLOADER -            *(uint16_t *)0x0800 = 0x7777; // these two are a-star-specific -        #endif -        bootloader_jump(); +        reset_keyboard();        }  	  return false;        break; diff --git a/quantum/quantum.h b/quantum/quantum.h index 3a0b742028..7ebfb24e30 100644 --- a/quantum/quantum.h +++ b/quantum/quantum.h @@ -77,6 +77,8 @@ bool process_action_kb(keyrecord_t *record);  bool process_record_kb(uint16_t keycode, keyrecord_t *record);  bool process_record_user(uint16_t keycode, keyrecord_t *record); +void reset_keyboard(void); +  void startup_user(void);  void shutdown_user(void); | 
