Handle M108 in M1 also with ULTIPANEL
This commit is contained in:
parent
3fcf915808
commit
1ba1ec0db9
1 changed files with 21 additions and 13 deletions
|
@ -4431,41 +4431,49 @@ inline void gcode_G92() {
|
|||
|
||||
#endif
|
||||
|
||||
#if ENABLED(EMERGENCY_PARSER)
|
||||
wait_for_user = true;
|
||||
#endif
|
||||
|
||||
KEEPALIVE_STATE(PAUSED_FOR_USER);
|
||||
|
||||
stepper.synchronize();
|
||||
refresh_cmd_timeout();
|
||||
|
||||
#if ENABLED(ULTIPANEL)
|
||||
|
||||
#if ENABLED(EMERGENCY_PARSER)
|
||||
#define M1_WAIT_CONDITION (!lcd_clicked() && wait_for_user)
|
||||
#else
|
||||
#define M1_WAIT_CONDITION !lcd_clicked()
|
||||
#endif
|
||||
|
||||
if (codenum > 0) {
|
||||
codenum += previous_cmd_ms; // wait until this time for a click
|
||||
KEEPALIVE_STATE(PAUSED_FOR_USER);
|
||||
while (PENDING(millis(), codenum) && !lcd_clicked()) idle();
|
||||
while (PENDING(millis(), codenum) && M1_WAIT_CONDITION) idle();
|
||||
lcd_ignore_click(false);
|
||||
}
|
||||
else if (lcd_detected()) {
|
||||
KEEPALIVE_STATE(PAUSED_FOR_USER);
|
||||
while (!lcd_clicked()) idle();
|
||||
while (M1_WAIT_CONDITION) idle();
|
||||
}
|
||||
else return;
|
||||
else goto ExitM1;
|
||||
|
||||
if (IS_SD_PRINTING)
|
||||
LCD_MESSAGEPGM(MSG_RESUMING);
|
||||
else
|
||||
LCD_MESSAGEPGM(WELCOME_MSG);
|
||||
IS_SD_PRINTING ? LCD_MESSAGEPGM(MSG_RESUMING) : LCD_MESSAGEPGM(WELCOME_MSG);
|
||||
|
||||
#else
|
||||
|
||||
KEEPALIVE_STATE(PAUSED_FOR_USER);
|
||||
wait_for_user = true;
|
||||
|
||||
if (codenum > 0) {
|
||||
codenum += previous_cmd_ms; // wait until this time for an M108
|
||||
while (PENDING(millis(), codenum) && wait_for_user) idle();
|
||||
}
|
||||
else while (wait_for_user) idle();
|
||||
|
||||
wait_for_user = false;
|
||||
#endif
|
||||
|
||||
ExitM1:
|
||||
|
||||
#if ENABLED(EMERGENCY_PARSER)
|
||||
wait_for_user = false;
|
||||
#endif
|
||||
|
||||
KEEPALIVE_STATE(IN_HANDLER);
|
||||
|
|
Reference in a new issue