|
|
|
@ -362,19 +362,19 @@ void startOrResumeJob() {
|
|
|
|
|
inline void abortSDPrinting() {
|
|
|
|
|
IF_DISABLED(NO_SD_AUTOSTART, card.autofile_cancel());
|
|
|
|
|
card.endFilePrint(TERN_(SD_RESORT, true));
|
|
|
|
|
|
|
|
|
|
queue.clear();
|
|
|
|
|
quickstop_stepper();
|
|
|
|
|
print_job_timer.stop();
|
|
|
|
|
#if DISABLED(SD_ABORT_NO_COOLDOWN)
|
|
|
|
|
thermalManager.disable_all_heaters();
|
|
|
|
|
#endif
|
|
|
|
|
#if !HAS_CUTTER
|
|
|
|
|
thermalManager.zero_fan_speeds();
|
|
|
|
|
#else
|
|
|
|
|
cutter.kill(); // Full cutter shutdown including ISR control
|
|
|
|
|
#endif
|
|
|
|
|
|
|
|
|
|
IF_DISABLED(SD_ABORT_NO_COOLDOWN, thermalManager.disable_all_heaters());
|
|
|
|
|
|
|
|
|
|
TERN(HAS_CUTTER, cutter.kill(), thermalManager.zero_fan_speeds()); // Full cutter shutdown including ISR control
|
|
|
|
|
|
|
|
|
|
wait_for_heatup = false;
|
|
|
|
|
|
|
|
|
|
TERN_(POWER_LOSS_RECOVERY, recovery.purge());
|
|
|
|
|
|
|
|
|
|
#ifdef EVENT_GCODE_SD_ABORT
|
|
|
|
|
queue.inject_P(PSTR(EVENT_GCODE_SD_ABORT));
|
|
|
|
|
#endif
|
|
|
|
|