|
|
@ -15,6 +15,19 @@ bool process_record_user(uint16_t keycode, keyrecord_t *record) { |
|
|
|
return true; |
|
|
|
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
|
|
|
|
// Shift / paren setup
|
|
|
|
|
|
|
|
|
|
|
|
#ifndef LSPO_KEY |
|
|
|
#ifndef LSPO_KEY |
|
|
@ -83,16 +96,7 @@ bool process_record_quantum(keyrecord_t *record) { |
|
|
|
switch(keycode) { |
|
|
|
switch(keycode) { |
|
|
|
case RESET: |
|
|
|
case RESET: |
|
|
|
if (record->event.pressed) { |
|
|
|
if (record->event.pressed) { |
|
|
|
clear_keyboard(); |
|
|
|
reset_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(); |
|
|
|
|
|
|
|
} |
|
|
|
} |
|
|
|
return false; |
|
|
|
return false; |
|
|
|
break; |
|
|
|
break; |
|
|
|