Browse Source

Fix up enqueue now functions

…and apply to MALYAN_LCD.
pull/1/head
Scott Lahteine 7 years ago
parent
commit
78ea4871f9
  1. 6
      Marlin/src/gcode/queue.cpp
  2. 6
      Marlin/src/gcode/queue.h
  3. 10
      Marlin/src/lcd/malyanlcd.cpp
  4. 2
      Marlin/src/lcd/ultralcd.cpp

6
Marlin/src/gcode/queue.cpp

@ -176,14 +176,14 @@ void enqueue_and_echo_commands_P(const char * const pgcode) {
/** /**
* Enqueue and return only when commands are actually enqueued * Enqueue and return only when commands are actually enqueued
*/ */
void enqueue_and_echo_command_now(const char* cmd, bool say_ok/*=false*/) { void enqueue_and_echo_command_now(const char* cmd) {
while (!enqueue_and_echo_command(cmd, say_ok)) idle(); while (!enqueue_and_echo_command(cmd)) idle();
} }
#if HAS_LCD_QUEUE_NOW #if HAS_LCD_QUEUE_NOW
/** /**
* Enqueue from program memory and return only when commands are actually enqueued * Enqueue from program memory and return only when commands are actually enqueued
*/ */
void enqueue_and_echo_commands_P_now(const char * const pgcode) { void enqueue_and_echo_commands_now_P(const char * const pgcode) {
enqueue_and_echo_commands_P(pgcode); enqueue_and_echo_commands_P(pgcode);
while (drain_injected_commands_P()) idle(); while (drain_injected_commands_P()) idle();
} }

6
Marlin/src/gcode/queue.h

@ -97,19 +97,19 @@ void enqueue_and_echo_commands_P(const char * const pgcode);
*/ */
bool enqueue_and_echo_command(const char* cmd, bool say_ok=false); bool enqueue_and_echo_command(const char* cmd, bool say_ok=false);
#define HAS_LCD_QUEUE_NOW (ENABLED(ULTIPANEL) && (ENABLED(AUTO_BED_LEVELING_UBL) || ENABLED(PID_AUTOTUNE_MENU) || ENABLED(ADVANCED_PAUSE_FEATURE))) #define HAS_LCD_QUEUE_NOW (ENABLED(MALYAN_LCD) || (ENABLED(ULTIPANEL) && (ENABLED(AUTO_BED_LEVELING_UBL) || ENABLED(PID_AUTOTUNE_MENU) || ENABLED(ADVANCED_PAUSE_FEATURE))))
#define HAS_QUEUE_NOW (ENABLED(SDSUPPORT) || HAS_LCD_QUEUE_NOW) #define HAS_QUEUE_NOW (ENABLED(SDSUPPORT) || HAS_LCD_QUEUE_NOW)
#if HAS_QUEUE_NOW #if HAS_QUEUE_NOW
/** /**
* Enqueue and return only when commands are actually enqueued * Enqueue and return only when commands are actually enqueued
*/ */
void enqueue_and_echo_command_now(const char* cmd, bool say_ok=false); void enqueue_and_echo_command_now(const char* cmd);
#if HAS_LCD_QUEUE_NOW #if HAS_LCD_QUEUE_NOW
/** /**
* Enqueue from program memory and return only when commands are actually enqueued * Enqueue from program memory and return only when commands are actually enqueued
*/ */
void enqueue_and_echo_commands_P_now(const char * const cmd); void enqueue_and_echo_commands_now_P(const char * const cmd);
#endif #endif
#endif #endif

10
Marlin/src/lcd/malyanlcd.cpp

@ -109,14 +109,14 @@ void process_lcd_c_command(const char* command) {
// M104 S<temperature> // M104 S<temperature>
char cmd[20]; char cmd[20];
sprintf_P(cmd, PSTR("M104 S%s"), command + 1); sprintf_P(cmd, PSTR("M104 S%s"), command + 1);
enqueue_and_echo_command_now(cmd, false); enqueue_and_echo_command_now(cmd);
} break; } break;
case 'P': { case 'P': {
// M140 S<temperature> // M140 S<temperature>
char cmd[20]; char cmd[20];
sprintf_P(cmd, PSTR("M140 S%s"), command + 1); sprintf_P(cmd, PSTR("M140 S%s"), command + 1);
enqueue_and_echo_command_now(cmd, false); enqueue_and_echo_command_now(cmd);
} break; } break;
default: default:
@ -178,8 +178,8 @@ void process_lcd_j_command(const char* command) {
case 'E': case 'E':
// enable or disable steppers // enable or disable steppers
// switch to relative // switch to relative
enqueue_and_echo_command_now("G91"); enqueue_and_echo_commands_now_P(PSTR("G91"));
enqueue_and_echo_command_now(steppers_enabled ? "M18" : "M17"); enqueue_and_echo_commands_now_P(steppers_enabled ? PSTR("M18") : PSTR("M17"));
steppers_enabled = !steppers_enabled; steppers_enabled = !steppers_enabled;
break; break;
case 'A': case 'A':
@ -245,7 +245,7 @@ void process_lcd_p_command(const char* command) {
break; break;
case 'H': case 'H':
// Home all axis // Home all axis
enqueue_and_echo_command_now("G28"); enqueue_and_echo_commands_now_P(PSTR("G28"));
break; break;
default: { default: {
// Print file 000 - a three digit number indicating which // Print file 000 - a three digit number indicating which

2
Marlin/src/lcd/ultralcd.cpp

@ -1719,7 +1719,7 @@ void kill_screen(const char* lcd_msg) {
void lcd_enqueue_commands_P(const char * const cmd) { void lcd_enqueue_commands_P(const char * const cmd) {
no_reentry = true; no_reentry = true;
enqueue_and_echo_commands_P_now(cmd); enqueue_and_echo_commands_now_P(cmd);
no_reentry = false; no_reentry = false;
} }

Loading…
Cancel
Save