|
|
|
@ -118,7 +118,7 @@ void PrintJobRecovery::load() {
|
|
|
|
|
/**
|
|
|
|
|
* Save the current machine state to the power-loss recovery file
|
|
|
|
|
*/
|
|
|
|
|
void PrintJobRecovery::save(const bool force/*=false*/) {
|
|
|
|
|
void PrintJobRecovery::save(const bool force/*=false*/, const bool save_queue/*=true*/) {
|
|
|
|
|
|
|
|
|
|
#if SAVE_INFO_INTERVAL_MS > 0
|
|
|
|
|
static millis_t next_save_ms; // = 0
|
|
|
|
@ -182,8 +182,8 @@ void PrintJobRecovery::save(const bool force/*=false*/) {
|
|
|
|
|
#endif
|
|
|
|
|
|
|
|
|
|
// Commands in the queue
|
|
|
|
|
info.commands_in_queue = save_queue ? commands_in_queue : 0;
|
|
|
|
|
info.cmd_queue_index_r = cmd_queue_index_r;
|
|
|
|
|
info.commands_in_queue = commands_in_queue;
|
|
|
|
|
COPY(info.command_queue, command_queue);
|
|
|
|
|
|
|
|
|
|
// Elapsed print job time
|
|
|
|
@ -332,7 +332,7 @@ void PrintJobRecovery::resume() {
|
|
|
|
|
gcode.process_subcommands_now(cmd);
|
|
|
|
|
|
|
|
|
|
// Process commands from the old pending queue
|
|
|
|
|
uint8_t r = info.cmd_queue_index_r, c = info.commands_in_queue;
|
|
|
|
|
uint8_t c = info.commands_in_queue, r = info.cmd_queue_index_r;
|
|
|
|
|
for (; c--; r = (r + 1) % BUFSIZE)
|
|
|
|
|
gcode.process_subcommands_now(info.command_queue[r]);
|
|
|
|
|
|
|
|
|
|