Browse Source

🎨 Apply F() to G-code subcommands

Scott Lahteine 2 years ago
parent
commit
59dac3a7e4

+ 7
- 7
Marlin/src/feature/bedlevel/ubl/ubl.cpp View File

@@ -281,10 +281,10 @@ bool unified_bed_leveling::sanity_check() {
281 281
       }
282 282
     #endif
283 283
 
284
-    process_subcommands_now_P(G28_STR);               // Home
285
-    process_subcommands_now_P(PSTR(ALIGN_GCODE "\n"   // Align multi z axis if available
286
-                                   PROBE_GCODE "\n"   // Build mesh with available hardware
287
-                                   "G29P3\nG29P3"));  // Ensure mesh is complete by running smart fill twice
284
+    process_subcommands_now(FPSTR(G28_STR));      // Home
285
+    process_subcommands_now(F(ALIGN_GCODE "\n"    // Align multi z axis if available
286
+                              PROBE_GCODE "\n"    // Build mesh with available hardware
287
+                              "G29P3\nG29P3"));   // Ensure mesh is complete by running smart fill twice
288 288
 
289 289
     if (parser.seenval('S')) {
290 290
       char umw_gcode[32];
@@ -292,9 +292,9 @@ bool unified_bed_leveling::sanity_check() {
292 292
       queue.inject(umw_gcode);
293 293
     }
294 294
 
295
-    process_subcommands_now_P(PSTR("G29A\nG29F10\n"   // Set UBL Active & Fade 10
296
-                                   "M140S0\nM104S0\n" // Turn off heaters
297
-                                   "M500"));          // Store settings
295
+    process_subcommands_now(F("G29A\nG29F10\n"    // Set UBL Active & Fade 10
296
+                              "M140S0\nM104S0\n"  // Turn off heaters
297
+                              "M500"));           // Store settings
298 298
   }
299 299
 
300 300
 #endif // UBL_MESH_WIZARD

+ 1
- 1
Marlin/src/feature/bedlevel/ubl/ubl_G29.cpp View File

@@ -656,7 +656,7 @@ void unified_bed_leveling::G29() {
656 656
     if (DEBUGGING(LEVELING)) DEBUG_ECHOLNPGM("Z Probe End Script: ", Z_PROBE_END_SCRIPT);
657 657
     if (probe_deployed) {
658 658
       planner.synchronize();
659
-      gcode.process_subcommands_now_P(PSTR(Z_PROBE_END_SCRIPT));
659
+      gcode.process_subcommands_now(F(Z_PROBE_END_SCRIPT));
660 660
     }
661 661
   #else
662 662
     UNUSED(probe_deployed);

+ 2
- 2
Marlin/src/feature/power.cpp View File

@@ -82,7 +82,7 @@ void Power::power_on() {
82 82
   TERN_(HAS_TRINAMIC_CONFIG, safe_delay(PSU_POWERUP_DELAY));
83 83
 
84 84
   #ifdef PSU_POWERUP_GCODE
85
-    GcodeSuite::process_subcommands_now_P(PSTR(PSU_POWERUP_GCODE));
85
+    gcode.process_subcommands_now(F(PSU_POWERUP_GCODE));
86 86
   #endif
87 87
 }
88 88
 
@@ -95,7 +95,7 @@ void Power::power_off() {
95 95
   if (!psu_on) return;
96 96
 
97 97
   #ifdef PSU_POWEROFF_GCODE
98
-    GcodeSuite::process_subcommands_now_P(PSTR(PSU_POWEROFF_GCODE));
98
+    gcode.process_subcommands_now(F(PSU_POWEROFF_GCODE));
99 99
   #endif
100 100
 
101 101
   #if ENABLED(PS_OFF_SOUND)

+ 6
- 6
Marlin/src/feature/powerloss.cpp View File

@@ -244,7 +244,7 @@ void PrintJobRecovery::save(const bool force/*=false*/, const float zraise/*=POW
244 244
 
245 245
         #if POWER_LOSS_RETRACT_LEN
246 246
           // Retract filament now
247
-          gcode.process_subcommands_now_P(PSTR("G1 F3000 E-" STRINGIFY(POWER_LOSS_RETRACT_LEN)));
247
+          gcode.process_subcommands_now(F("G1 F3000 E-" STRINGIFY(POWER_LOSS_RETRACT_LEN)));
248 248
         #endif
249 249
 
250 250
         #if POWER_LOSS_ZRAISE
@@ -337,7 +337,7 @@ void PrintJobRecovery::resume() {
337 337
 
338 338
   #if HAS_LEVELING
339 339
     // Make sure leveling is off before any G92 and G28
340
-    gcode.process_subcommands_now_P(PSTR("M420 S0 Z0"));
340
+    gcode.process_subcommands_now(F("M420 S0 Z0"));
341 341
   #endif
342 342
 
343 343
   #if HAS_HEATED_BED
@@ -373,7 +373,7 @@ void PrintJobRecovery::resume() {
373 373
   // establish the current position as best we can.
374 374
   //
375 375
 
376
-  gcode.process_subcommands_now_P(PSTR("G92.9E0")); // Reset E to 0
376
+  gcode.process_subcommands_now(F("G92.9E0")); // Reset E to 0
377 377
 
378 378
   #if Z_HOME_TO_MAX
379 379
 
@@ -410,7 +410,7 @@ void PrintJobRecovery::resume() {
410 410
     }
411 411
 
412 412
     // Home XY with no Z raise, and also home Z here if Z isn't homing down below.
413
-    gcode.process_subcommands_now_P(PSTR("G28R0" TERN_(HOME_XY_ONLY, "XY"))); // No raise during G28
413
+    gcode.process_subcommands_now(F("G28R0" TERN_(HOME_XY_ONLY, "XY"))); // No raise during G28
414 414
 
415 415
   #endif
416 416
 
@@ -513,7 +513,7 @@ void PrintJobRecovery::resume() {
513 513
 
514 514
   // Un-retract if there was a retract at outage
515 515
   #if ENABLED(BACKUP_POWER_SUPPLY) && POWER_LOSS_RETRACT_LEN > 0
516
-    gcode.process_subcommands_now_P(PSTR("G1E" STRINGIFY(POWER_LOSS_RETRACT_LEN) "F3000"));
516
+    gcode.process_subcommands_now(F("G1E" STRINGIFY(POWER_LOSS_RETRACT_LEN) "F3000"));
517 517
   #endif
518 518
 
519 519
   // Additional purge on resume if configured
@@ -523,7 +523,7 @@ void PrintJobRecovery::resume() {
523 523
   #endif
524 524
 
525 525
   #if ENABLED(NOZZLE_CLEAN_FEATURE)
526
-    gcode.process_subcommands_now_P(PSTR("G12"));
526
+    gcode.process_subcommands_now(F("G12"));
527 527
   #endif
528 528
 
529 529
   // Move back over to the saved XY

+ 1
- 1
Marlin/src/gcode/bedlevel/G35.cpp View File

@@ -92,7 +92,7 @@ void GcodeSuite::G35() {
92 92
   TERN_(HAS_DUPLICATION_MODE, set_duplication_enabled(false));
93 93
 
94 94
   // Home only Z axis when X and Y is trusted, otherwise all axes, if needed before this procedure
95
-  if (!all_axes_trusted()) process_subcommands_now_P(PSTR("G28Z"));
95
+  if (!all_axes_trusted()) process_subcommands_now(F("G28Z"));
96 96
 
97 97
   bool err_break = false;
98 98
 

+ 2
- 2
Marlin/src/gcode/bedlevel/abl/G29.cpp View File

@@ -244,7 +244,7 @@ G29_TYPE GcodeSuite::G29() {
244 244
 
245 245
   // Send 'N' to force homing before G29 (internal only)
246 246
   if (parser.seen_test('N'))
247
-    process_subcommands_now_P(TERN(CAN_SET_LEVELING_AFTER_G28, PSTR("G28L0"), G28_STR));
247
+    process_subcommands_now(TERN(CAN_SET_LEVELING_AFTER_G28, F("G28L0"), FPSTR(G28_STR)));
248 248
 
249 249
   // Don't allow auto-leveling without homing first
250 250
   if (homing_needed_error()) G29_RETURN(false);
@@ -882,7 +882,7 @@ G29_TYPE GcodeSuite::G29() {
882 882
   #ifdef Z_PROBE_END_SCRIPT
883 883
     if (DEBUGGING(LEVELING)) DEBUG_ECHOLNPGM("Z Probe End Script: ", Z_PROBE_END_SCRIPT);
884 884
     planner.synchronize();
885
-    process_subcommands_now_P(PSTR(Z_PROBE_END_SCRIPT));
885
+    process_subcommands_now(F(Z_PROBE_END_SCRIPT));
886 886
   #endif
887 887
 
888 888
   TERN_(HAS_DWIN_E3V2_BASIC, DWIN_CompletedLeveling());

+ 2
- 2
Marlin/src/gcode/calibrate/G34.cpp View File

@@ -47,7 +47,7 @@ void GcodeSuite::G34() {
47 47
   TemporaryGlobalEndstopsState unlock_z(false);
48 48
 
49 49
   #ifdef GANTRY_CALIBRATION_COMMANDS_PRE
50
-    gcode.process_subcommands_now_P(PSTR(GANTRY_CALIBRATION_COMMANDS_PRE));
50
+    process_subcommands_now(F(GANTRY_CALIBRATION_COMMANDS_PRE));
51 51
     if (DEBUGGING(LEVELING)) DEBUG_ECHOLNPGM("Sub Commands Processed");
52 52
   #endif
53 53
 
@@ -148,7 +148,7 @@ void GcodeSuite::G34() {
148 148
 
149 149
   #ifdef GANTRY_CALIBRATION_COMMANDS_POST
150 150
     if (DEBUGGING(LEVELING)) DEBUG_ECHOLNPGM("Running Post Commands");
151
-    gcode.process_subcommands_now_P(PSTR(GANTRY_CALIBRATION_COMMANDS_POST));
151
+    process_subcommands_now(F(GANTRY_CALIBRATION_COMMANDS_POST));
152 152
   #endif
153 153
 
154 154
   SET_SOFT_ENDSTOP_LOOSE(false);

+ 1
- 1
Marlin/src/gcode/calibrate/G34_M422.cpp View File

@@ -433,7 +433,7 @@ void GcodeSuite::G34() {
433 433
         // After this operation the z position needs correction
434 434
         set_axis_never_homed(Z_AXIS);
435 435
         // Home Z after the alignment procedure
436
-        process_subcommands_now_P(PSTR("G28Z"));
436
+        process_subcommands_now(F("G28Z"));
437 437
       #else
438 438
         // Use the probed height from the last iteration to determine the Z height.
439 439
         // z_measured_min is used, because all steppers are aligned to z_measured_min.

+ 2
- 2
Marlin/src/gcode/calibrate/G425.cpp View File

@@ -709,7 +709,7 @@ inline void calibrate_all() {
709 709
 void GcodeSuite::G425() {
710 710
 
711 711
   #ifdef CALIBRATION_SCRIPT_PRE
712
-    GcodeSuite::process_subcommands_now_P(PSTR(CALIBRATION_SCRIPT_PRE));
712
+    process_subcommands_now(F(CALIBRATION_SCRIPT_PRE));
713 713
   #endif
714 714
 
715 715
   if (homing_needed_error()) return;
@@ -745,7 +745,7 @@ void GcodeSuite::G425() {
745 745
   SET_SOFT_ENDSTOP_LOOSE(false);
746 746
 
747 747
   #ifdef CALIBRATION_SCRIPT_POST
748
-    GcodeSuite::process_subcommands_now_P(PSTR(CALIBRATION_SCRIPT_POST));
748
+    process_subcommands_now(F(CALIBRATION_SCRIPT_POST));
749 749
   #endif
750 750
 }
751 751
 

+ 1
- 1
Marlin/src/gcode/calibrate/G76_M192_M871.cpp View File

@@ -158,7 +158,7 @@ void GcodeSuite::G76() {
158 158
       return;
159 159
     }
160 160
 
161
-    process_subcommands_now_P(G28_STR);
161
+    process_subcommands_now(FPSTR(G28_STR));
162 162
   }
163 163
 
164 164
   remember_feedrate_scaling_off();

+ 1
- 1
Marlin/src/gcode/control/M605.cpp View File

@@ -110,7 +110,7 @@
110 110
       set_duplication_enabled(false);
111 111
 
112 112
       #ifdef EVENT_GCODE_IDEX_AFTER_MODECHANGE
113
-        gcode.process_subcommands_now_P(PSTR(EVENT_GCODE_IDEX_AFTER_MODECHANGE));
113
+        process_subcommands_now(F(EVENT_GCODE_IDEX_AFTER_MODECHANGE));
114 114
       #endif
115 115
     }
116 116
     else if (!parser.seen('W'))  // if no S or W parameter, the DXC mode gets reset to the user's default

+ 7
- 7
Marlin/src/gcode/feature/L6470/M916-918.cpp View File

@@ -138,10 +138,10 @@ void GcodeSuite::M916() {
138 138
     do {
139 139
       // turn the motor(s) both directions
140 140
       sprintf_P(gcode_string, PSTR("G0 %s%03d F%03d"), temp_axis_string, uint16_t(position_min), uint16_t(final_feedrate));
141
-      gcode.process_subcommands_now_P(gcode_string);
141
+      process_subcommands_now(gcode_string);
142 142
 
143 143
       sprintf_P(gcode_string, PSTR("G0 %s%03d F%03d"), temp_axis_string, uint16_t(position_max), uint16_t(final_feedrate));
144
-      gcode.process_subcommands_now_P(gcode_string);
144
+      process_subcommands_now(gcode_string);
145 145
 
146 146
       // get the status after the motors have stopped
147 147
       planner.synchronize();
@@ -266,10 +266,10 @@ void GcodeSuite::M917() {
266 266
     DEBUG_ECHOLNPGM("   OCD threshold : ", (OCD_TH_val + 1) * 375);
267 267
 
268 268
     sprintf_P(gcode_string, PSTR("G0 %s%03d F%03d"), temp_axis_string, uint16_t(position_min), uint16_t(final_feedrate));
269
-    gcode.process_subcommands_now_P(gcode_string);
269
+    process_subcommands_now(gcode_string);
270 270
 
271 271
     sprintf_P(gcode_string, PSTR("G0 %s%03d F%03d"), temp_axis_string, uint16_t(position_max), uint16_t(final_feedrate));
272
-    gcode.process_subcommands_now_P(gcode_string);
272
+    process_subcommands_now(gcode_string);
273 273
 
274 274
     planner.synchronize();
275 275
 
@@ -308,7 +308,7 @@ void GcodeSuite::M917() {
308 308
             L64xxManager.set_param(axis_index[j], L6470_KVAL_HOLD, kval_hold);
309 309
         }
310 310
         DEBUG_ECHOLNPGM(".");
311
-        gcode.reset_stepper_timeout(); // keep steppers powered
311
+        reset_stepper_timeout(); // keep steppers powered
312 312
         watchdog_refresh();
313 313
         safe_delay(5000);
314 314
         status_composite_temp = 0;
@@ -615,10 +615,10 @@ void GcodeSuite::M918() {
615 615
     DEBUG_ECHOLNPGM("...feedrate = ", current_feedrate);
616 616
 
617 617
     sprintf_P(gcode_string, PSTR("G0 %s%03d F%03d"), temp_axis_string, uint16_t(position_min), uint16_t(current_feedrate));
618
-    gcode.process_subcommands_now_P(gcode_string);
618
+    process_subcommands_now(gcode_string);
619 619
 
620 620
     sprintf_P(gcode_string, PSTR("G0 %s%03d F%03d"), temp_axis_string, uint16_t(position_max), uint16_t(current_feedrate));
621
-    gcode.process_subcommands_now_P(gcode_string);
621
+    process_subcommands_now(gcode_string);
622 622
 
623 623
     planner.synchronize();
624 624
 

+ 1
- 1
Marlin/src/gcode/feature/clean/G12.cpp View File

@@ -50,7 +50,7 @@ void GcodeSuite::G12() {
50 50
 
51 51
   #ifdef WIPE_SEQUENCE_COMMANDS
52 52
     if (!parser.seen_any()) {
53
-      gcode.process_subcommands_now_P(PSTR(WIPE_SEQUENCE_COMMANDS));
53
+      process_subcommands_now(F(WIPE_SEQUENCE_COMMANDS));
54 54
       return;
55 55
     }
56 56
   #endif

+ 5
- 4
Marlin/src/gcode/gcode.cpp View File

@@ -242,7 +242,7 @@ void GcodeSuite::dwell(millis_t time) {
242 242
       host_action(PSTR(ACTION_ON_G29_RECOVER));
243 243
     #endif
244 244
     #ifdef G29_RECOVER_COMMANDS
245
-      process_subcommands_now_P(PSTR(G29_RECOVER_COMMANDS));
245
+      process_subcommands_now(F(G29_RECOVER_COMMANDS));
246 246
     #endif
247 247
   }
248 248
 
@@ -255,7 +255,7 @@ void GcodeSuite::dwell(millis_t time) {
255 255
       host_action(PSTR(ACTION_ON_G29_FAILURE));
256 256
     #endif
257 257
     #ifdef G29_FAILURE_COMMANDS
258
-      process_subcommands_now_P(PSTR(G29_FAILURE_COMMANDS));
258
+      process_subcommands_now(F(G29_FAILURE_COMMANDS));
259 259
     #endif
260 260
     #if ENABLED(G29_HALT_ON_FAILURE)
261 261
       #ifdef ACTION_ON_CANCEL
@@ -285,7 +285,7 @@ void GcodeSuite::dwell(millis_t time) {
285 285
     TERN_(HOST_PROMPT_SUPPORT, host_action_prompt_end());
286 286
 
287 287
     #ifdef G29_SUCCESS_COMMANDS
288
-      process_subcommands_now_P(PSTR(G29_SUCCESS_COMMANDS));
288
+      process_subcommands_now(F(G29_SUCCESS_COMMANDS));
289 289
     #endif
290 290
   }
291 291
 
@@ -1100,7 +1100,8 @@ void GcodeSuite::process_next_command() {
1100 1100
  * G-code "macros" to be called from within other G-code handlers.
1101 1101
  */
1102 1102
 
1103
-void GcodeSuite::process_subcommands_now_P(PGM_P pgcode) {
1103
+void GcodeSuite::process_subcommands_now(FSTR_P fgcode) {
1104
+  PGM_P pgcode = FTOP(fgcode);
1104 1105
   char * const saved_cmd = parser.command_ptr;        // Save the parser state
1105 1106
   for (;;) {
1106 1107
     PGM_P const delim = strchr_P(pgcode, '\n');       // Get address of next newline

+ 2
- 2
Marlin/src/gcode/gcode.h View File

@@ -397,11 +397,11 @@ public:
397 397
   static void process_next_command();
398 398
 
399 399
   // Execute G-code in-place, preserving current G-code parameters
400
-  static void process_subcommands_now_P(PGM_P pgcode);
400
+  static void process_subcommands_now(FSTR_P fgcode);
401 401
   static void process_subcommands_now(char * gcode);
402 402
 
403 403
   static inline void home_all_axes(const bool keep_leveling=false) {
404
-    process_subcommands_now_P(keep_leveling ? G28_STR : TERN(CAN_SET_LEVELING_AFTER_G28, PSTR("G28L0"), G28_STR));
404
+    process_subcommands_now(keep_leveling ? FPSTR(G28_STR) : TERN(CAN_SET_LEVELING_AFTER_G28, F("G28L0"), FPSTR(G28_STR)));
405 405
   }
406 406
 
407 407
   #if EITHER(HAS_AUTO_REPORTING, HOST_KEEPALIVE_FEATURE)

+ 1
- 1
Marlin/src/gcode/motion/G2_G3.cpp View File

@@ -403,7 +403,7 @@ void GcodeSuite::G2_G3(const bool clockwise) {
403 403
     else {
404 404
       #if ENABLED(CNC_WORKSPACE_PLANES)
405 405
         char achar, bchar;
406
-        switch (gcode.workspace_plane) {
406
+        switch (workspace_plane) {
407 407
           default:
408 408
           case GcodeSuite::PLANE_XY: achar = 'I'; bchar = 'J'; break;
409 409
           case GcodeSuite::PLANE_YZ: achar = 'J'; bchar = 'K'; break;

+ 4
- 4
Marlin/src/gcode/queue.cpp View File

@@ -693,8 +693,8 @@ void GCodeQueue::advance() {
693 693
 
694 694
   void GCodeQueue::report_buffer_statistics() {
695 695
     SERIAL_ECHOLNPGM("D576"
696
-      " P:", planner.moves_free(),         " ", -queue.planner_buffer_underruns, " (", queue.max_planner_buffer_empty_duration, ")"
697
-      " B:", BUFSIZE - ring_buffer.length, " ", -queue.command_buffer_underruns, " (", queue.max_command_buffer_empty_duration, ")"
696
+      " P:", planner.moves_free(),         " ", -planner_buffer_underruns, " (", max_planner_buffer_empty_duration, ")"
697
+      " B:", BUFSIZE - ring_buffer.length, " ", -command_buffer_underruns, " (", max_command_buffer_empty_duration, ")"
698 698
     );
699 699
     command_buffer_underruns = planner_buffer_underruns = 0;
700 700
     max_command_buffer_empty_duration = max_planner_buffer_empty_duration = 0;
@@ -717,8 +717,8 @@ void GCodeQueue::advance() {
717 717
       NOLESS(max_planner_buffer_empty_duration, planner_buffer_empty_duration); // if it's longer than the currently tracked max duration, replace it
718 718
     }
719 719
 
720
-    if (queue.auto_buffer_report_interval && ELAPSED(ms, queue.next_buffer_report_ms)) {
721
-      queue.next_buffer_report_ms = ms + 1000UL * queue.auto_buffer_report_interval;
720
+    if (auto_buffer_report_interval && ELAPSED(ms, next_buffer_report_ms)) {
721
+      next_buffer_report_ms = ms + 1000UL * auto_buffer_report_interval;
722 722
       PORT_REDIRECT(SERIAL_BOTH);
723 723
       report_buffer_statistics();
724 724
       PORT_RESTORE();

+ 3
- 3
Marlin/src/gcode/sd/M1001.cpp View File

@@ -77,10 +77,10 @@ void GcodeSuite::M1001() {
77 77
 
78 78
   // Report total print time
79 79
   const bool long_print = print_job_timer.duration() > 60;
80
-  if (long_print) gcode.process_subcommands_now_P(PSTR("M31"));
80
+  if (long_print) process_subcommands_now(F("M31"));
81 81
 
82 82
   // Stop the print job timer
83
-  gcode.process_subcommands_now_P(PSTR("M77"));
83
+  process_subcommands_now(F("M77"));
84 84
 
85 85
   // Set the progress bar "done" state
86 86
   TERN_(LCD_SET_PROGRESS_MANUALLY, ui.set_progress_done());
@@ -104,7 +104,7 @@ void GcodeSuite::M1001() {
104 104
 
105 105
   // Inject SD_FINISHED_RELEASECOMMAND, if any
106 106
   #ifdef SD_FINISHED_RELEASECOMMAND
107
-    gcode.process_subcommands_now_P(PSTR(SD_FINISHED_RELEASECOMMAND));
107
+    process_subcommands_now(F(SD_FINISHED_RELEASECOMMAND));
108 108
   #endif
109 109
 
110 110
   TERN_(EXTENSIBLE_UI, ExtUI::onPrintFinished());

+ 5
- 5
Marlin/src/lcd/e3v2/enhanced/dwin.cpp View File

@@ -2172,7 +2172,7 @@ void SetMoveZto0() {
2172 2172
       dtostrf(Y_CENTER, 1, 1, str_2)
2173 2173
     #endif
2174 2174
   );
2175
-  gcode.process_subcommands_now_P(cmd);
2175
+  gcode.process_subcommands_now(cmd);
2176 2176
   planner.synchronize();
2177 2177
   ui.set_status_P(PSTR("Now adjust Z Offset"));
2178 2178
   HMI_AudioFeedback(true);
@@ -2185,7 +2185,7 @@ void SetPID(celsius_t t, heater_id_t h) {
2185 2185
     dtostrf(X_CENTER, 1, 1, str_1),
2186 2186
     dtostrf(Y_CENTER, 1, 1, str_2)
2187 2187
   );
2188
-  gcode.process_subcommands_now_P(cmd);
2188
+  gcode.process_subcommands_now(cmd);
2189 2189
   planner.synchronize();
2190 2190
   thermalManager.PID_autotune(t, h, HMI_data.PidCycles, true);
2191 2191
 }
@@ -2375,7 +2375,7 @@ void LevBed(uint8_t point) {
2375 2375
 
2376 2376
   #if HAS_ONESTEP_LEVELING
2377 2377
     planner.synchronize();
2378
-    gcode.process_subcommands_now_P(PSTR("M420S0\nG28O"));
2378
+    gcode.process_subcommands_now(F("M420S0\nG28O"));
2379 2379
     planner.synchronize();
2380 2380
     zval = probe.probe_at_point(xpos, ypos, PROBE_PT_STOW);
2381 2381
     sprintf_P(cmd, PSTR(fmt),
@@ -2401,7 +2401,7 @@ void LevBedC () { LevBed(4); }
2401 2401
 
2402 2402
   void ManualMeshStart(){
2403 2403
     ui.set_status_P(GET_TEXT(MSG_UBL_BUILD_MESH_MENU));
2404
-    gcode.process_subcommands_now_P(PSTR("G28 XYO\nG28 Z\nM211 S0\nG29S1"));
2404
+    gcode.process_subcommands_now(F("G28 XYO\nG28 Z\nM211 S0\nG29S1"));
2405 2405
     planner.synchronize();
2406 2406
     #ifdef MANUAL_PROBE_START_Z
2407 2407
       const uint8_t line = CurrentMenu->line(MMeshMoveZItem->pos);
@@ -2419,7 +2419,7 @@ void LevBedC () { LevBed(4); }
2419 2419
   void SetMMeshMoveZ() { SetPFloatOnClick(-1, 1, 2, planner.synchronize, LiveMeshMoveZ);}
2420 2420
 
2421 2421
   void ManualMeshContinue(){
2422
-    gcode.process_subcommands_now_P(PSTR("G29S2"));
2422
+    gcode.process_subcommands_now(F("G29S2"));
2423 2423
     planner.synchronize();
2424 2424
     MMeshMoveZItem->draw(CurrentMenu->line(MMeshMoveZItem->pos));
2425 2425
   }

+ 66
- 65
Marlin/src/lcd/e3v2/jyersui/dwin.cpp View File

@@ -207,7 +207,7 @@ CrealityDWINClass CrealityDWIN;
207 207
 
208 208
       void manual_value_update(bool undefined=false) {
209 209
         sprintf_P(cmd, PSTR("M421 I%i J%i Z%s %s"), mesh_x, mesh_y, dtostrf(current_position.z, 1, 3, str_1), undefined ? "N" : "");
210
-        gcode.process_subcommands_now_P(cmd);
210
+        gcode.process_subcommands_now(cmd);
211 211
         planner.synchronize();
212 212
       }
213 213
 
@@ -267,7 +267,7 @@ CrealityDWINClass CrealityDWIN;
267 267
 
268 268
       void manual_value_update() {
269 269
         sprintf_P(cmd, PSTR("G29 I%i J%i Z%s"), mesh_x, mesh_y, dtostrf(current_position.z, 1, 3, str_1));
270
-        gcode.process_subcommands_now_P(cmd);
270
+        gcode.process_subcommands_now(cmd);
271 271
         planner.synchronize();
272 272
       }
273 273
 
@@ -283,9 +283,9 @@ CrealityDWINClass CrealityDWIN;
283 283
       else {
284 284
         CrealityDWIN.Popup_Handler(MoveWait);
285 285
         sprintf_P(cmd, PSTR("G0 F300 Z%s"), dtostrf(Z_CLEARANCE_BETWEEN_PROBES, 1, 3, str_1));
286
-        gcode.process_subcommands_now_P(cmd);
286
+        gcode.process_subcommands_now(cmd);
287 287
         sprintf_P(cmd, PSTR("G42 F4000 I%i J%i"), mesh_x, mesh_y);
288
-        gcode.process_subcommands_now_P(cmd);
288
+        gcode.process_subcommands_now(cmd);
289 289
         planner.synchronize();
290 290
         current_position.z = goto_mesh_value ? Z_VALUES_ARR[mesh_x][mesh_y] : Z_CLEARANCE_BETWEEN_PROBES;
291 291
         planner.buffer_line(current_position, homing_feedrate(Z_AXIS), active_extruder);
@@ -1116,7 +1116,7 @@ void CrealityDWINClass::Menu_Item_Handler(uint8_t menu, uint8_t item, bool draw/
1116 1116
                   }
1117 1117
                   Popup_Handler(FilChange);
1118 1118
                   sprintf_P(cmd, PSTR("M600 B1 R%i"), thermalManager.temp_hotend[0].target);
1119
-                  gcode.process_subcommands_now_P(cmd);
1119
+                  gcode.process_subcommands_now(cmd);
1120 1120
                 }
1121 1121
               #endif
1122 1122
             }
@@ -1156,7 +1156,7 @@ void CrealityDWINClass::Menu_Item_Handler(uint8_t menu, uint8_t item, bool draw/
1156 1156
             Draw_Menu_Item(row, ICON_MoveX, "Home X");
1157 1157
           else {
1158 1158
             Popup_Handler(Home);
1159
-            gcode.process_subcommands_now_P(PSTR("G28 X"));
1159
+            gcode.process_subcommands_now(F("G28 X"));
1160 1160
             planner.synchronize();
1161 1161
             Redraw_Menu();
1162 1162
           }
@@ -1166,7 +1166,7 @@ void CrealityDWINClass::Menu_Item_Handler(uint8_t menu, uint8_t item, bool draw/
1166 1166
             Draw_Menu_Item(row, ICON_MoveY, "Home Y");
1167 1167
           else {
1168 1168
             Popup_Handler(Home);
1169
-            gcode.process_subcommands_now_P(PSTR("G28 Y"));
1169
+            gcode.process_subcommands_now(F("G28 Y"));
1170 1170
             planner.synchronize();
1171 1171
             Redraw_Menu();
1172 1172
           }
@@ -1176,7 +1176,7 @@ void CrealityDWINClass::Menu_Item_Handler(uint8_t menu, uint8_t item, bool draw/
1176 1176
             Draw_Menu_Item(row, ICON_MoveZ,"Home Z");
1177 1177
           else {
1178 1178
             Popup_Handler(Home);
1179
-            gcode.process_subcommands_now_P(PSTR("G28 Z"));
1179
+            gcode.process_subcommands_now(F("G28 Z"));
1180 1180
             planner.synchronize();
1181 1181
             Redraw_Menu();
1182 1182
           }
@@ -1185,7 +1185,7 @@ void CrealityDWINClass::Menu_Item_Handler(uint8_t menu, uint8_t item, bool draw/
1185 1185
           if (draw)
1186 1186
             Draw_Menu_Item(row, ICON_SetHome, "Set Home Position");
1187 1187
           else {
1188
-            gcode.process_subcommands_now_P(PSTR("G92 X0 Y0 Z0"));
1188
+            gcode.process_subcommands_now(F("G92 X0 Y0 Z0"));
1189 1189
             AudioFeedback();
1190 1190
           }
1191 1191
           break;
@@ -1350,14 +1350,14 @@ void CrealityDWINClass::Menu_Item_Handler(uint8_t menu, uint8_t item, bool draw/
1350 1350
             if (use_probe) {
1351 1351
               #if HAS_BED_PROBE
1352 1352
                 sprintf_P(cmd, PSTR("G0 F4000\nG0 Z10\nG0 X%s Y%s"), dtostrf(PROBE_X_MIN, 1, 3, str_1), dtostrf(PROBE_Y_MIN, 1, 3, str_2));
1353
-                gcode.process_subcommands_now_P(cmd);
1353
+                gcode.process_subcommands_now(cmd);
1354 1354
                 planner.synchronize();
1355 1355
                 Popup_Handler(ManualProbing);
1356 1356
               #endif
1357 1357
             }
1358 1358
             else {
1359 1359
               sprintf_P(cmd, PSTR("G0 F4000\nG0 Z10\nG0 X%s Y%s\nG0 F300 Z%s"), dtostrf(corner_pos, 1, 3, str_1), dtostrf(corner_pos, 1, 3, str_2), dtostrf(mlev_z_pos, 1, 3, str_3));
1360
-              gcode.process_subcommands_now_P(cmd);
1360
+              gcode.process_subcommands_now(cmd);
1361 1361
               planner.synchronize();
1362 1362
               Redraw_Menu();
1363 1363
             }
@@ -1371,14 +1371,14 @@ void CrealityDWINClass::Menu_Item_Handler(uint8_t menu, uint8_t item, bool draw/
1371 1371
             if (use_probe) {
1372 1372
               #if HAS_BED_PROBE
1373 1373
                 sprintf_P(cmd, PSTR("G0 F4000\nG0 Z10\nG0 X%s Y%s"), dtostrf(PROBE_X_MIN, 1, 3, str_1), dtostrf(PROBE_Y_MAX, 1, 3, str_2));
1374
-                gcode.process_subcommands_now_P(cmd);
1374
+                gcode.process_subcommands_now(cmd);
1375 1375
                 planner.synchronize();
1376 1376
                 Popup_Handler(ManualProbing);
1377 1377
               #endif
1378 1378
             }
1379 1379
             else {
1380 1380
               sprintf_P(cmd, PSTR("G0 F4000\nG0 Z10\nG0 X%s Y%s\nG0 F300 Z%s"), dtostrf(corner_pos, 1, 3, str_1), dtostrf((Y_BED_SIZE + Y_MIN_POS) - corner_pos, 1, 3, str_2), dtostrf(mlev_z_pos, 1, 3, str_3));
1381
-              gcode.process_subcommands_now_P(cmd);
1381
+              gcode.process_subcommands_now(cmd);
1382 1382
               planner.synchronize();
1383 1383
               Redraw_Menu();
1384 1384
             }
@@ -1392,14 +1392,14 @@ void CrealityDWINClass::Menu_Item_Handler(uint8_t menu, uint8_t item, bool draw/
1392 1392
             if (use_probe) {
1393 1393
               #if HAS_BED_PROBE
1394 1394
                 sprintf_P(cmd, PSTR("G0 F4000\nG0 Z10\nG0 X%s Y%s"), dtostrf(PROBE_X_MAX, 1, 3, str_1), dtostrf(PROBE_Y_MAX, 1, 3, str_2));
1395
-                gcode.process_subcommands_now_P(cmd);
1395
+                gcode.process_subcommands_now(cmd);
1396 1396
                 planner.synchronize();
1397 1397
                 Popup_Handler(ManualProbing);
1398 1398
               #endif
1399 1399
             }
1400 1400
             else {
1401 1401
               sprintf_P(cmd, PSTR("G0 F4000\nG0 Z10\nG0 X%s Y%s\nG0 F300 Z%s"), dtostrf((X_BED_SIZE + X_MIN_POS) - corner_pos, 1, 3, str_1), dtostrf((Y_BED_SIZE + Y_MIN_POS) - corner_pos, 1, 3, str_2), dtostrf(mlev_z_pos, 1, 3, str_3));
1402
-              gcode.process_subcommands_now_P(cmd);
1402
+              gcode.process_subcommands_now(cmd);
1403 1403
               planner.synchronize();
1404 1404
               Redraw_Menu();
1405 1405
             }
@@ -1413,14 +1413,14 @@ void CrealityDWINClass::Menu_Item_Handler(uint8_t menu, uint8_t item, bool draw/
1413 1413
             if (use_probe) {
1414 1414
               #if HAS_BED_PROBE
1415 1415
                 sprintf_P(cmd, PSTR("G0 F4000\nG0 Z10\nG0 X%s Y%s"), dtostrf(PROBE_X_MAX, 1, 3, str_1), dtostrf(PROBE_Y_MIN, 1, 3, str_2));
1416
-                gcode.process_subcommands_now_P(cmd);
1416
+                gcode.process_subcommands_now(cmd);
1417 1417
                 planner.synchronize();
1418 1418
                 Popup_Handler(ManualProbing);
1419 1419
               #endif
1420 1420
             }
1421 1421
             else {
1422 1422
               sprintf_P(cmd, PSTR("G0 F4000\nG0 Z10\nG0 X%s Y%s\nG0 F300 Z%s"), dtostrf((X_BED_SIZE + X_MIN_POS) - corner_pos, 1, 3, str_1), dtostrf(corner_pos, 1, 3, str_2), dtostrf(mlev_z_pos, 1, 3, str_3));
1423
-              gcode.process_subcommands_now_P(cmd);
1423
+              gcode.process_subcommands_now(cmd);
1424 1424
               planner.synchronize();
1425 1425
               Redraw_Menu();
1426 1426
             }
@@ -1434,14 +1434,14 @@ void CrealityDWINClass::Menu_Item_Handler(uint8_t menu, uint8_t item, bool draw/
1434 1434
             if (use_probe) {
1435 1435
               #if HAS_BED_PROBE
1436 1436
                 sprintf_P(cmd, PSTR("G0 F4000\nG0 Z10\nG0 X%s Y%s"), dtostrf(X_MAX_POS / 2.0f - probe.offset.x, 1, 3, str_1), dtostrf(Y_MAX_POS / 2.0f - probe.offset.y, 1, 3, str_2));
1437
-                gcode.process_subcommands_now_P(cmd);
1437
+                gcode.process_subcommands_now(cmd);
1438 1438
                 planner.synchronize();
1439 1439
                 Popup_Handler(ManualProbing);
1440 1440
               #endif
1441 1441
             }
1442 1442
             else {
1443 1443
               sprintf_P(cmd, PSTR("G0 F4000\nG0 Z10\nG0 X%s Y%s\nG0 F300 Z%s"), dtostrf((X_BED_SIZE + X_MIN_POS) / 2.0f, 1, 3, str_1), dtostrf((Y_BED_SIZE + Y_MIN_POS) / 2.0f, 1, 3, str_2), dtostrf(mlev_z_pos, 1, 3, str_3));
1444
-              gcode.process_subcommands_now_P(cmd);
1444
+              gcode.process_subcommands_now(cmd);
1445 1445
               planner.synchronize();
1446 1446
               Redraw_Menu();
1447 1447
             }
@@ -1484,16 +1484,16 @@ void CrealityDWINClass::Menu_Item_Handler(uint8_t menu, uint8_t item, bool draw/
1484 1484
               Draw_Menu_Item(row, ICON_Homing, "Home Z Axis");
1485 1485
             else {
1486 1486
               Popup_Handler(Home);
1487
-              gcode.process_subcommands_now_P(PSTR("G28 Z"));
1487
+              gcode.process_subcommands_now(F("G28 Z"));
1488 1488
               Popup_Handler(MoveWait);
1489 1489
               #if ENABLED(Z_SAFE_HOMING)
1490 1490
                 planner.synchronize();
1491 1491
                 sprintf_P(cmd, PSTR("G0 F4000 X%s Y%s"), dtostrf(Z_SAFE_HOMING_X_POINT, 1, 3, str_1), dtostrf(Z_SAFE_HOMING_Y_POINT, 1, 3, str_2));
1492
-                gcode.process_subcommands_now_P(cmd);
1492
+                gcode.process_subcommands_now(cmd);
1493 1493
               #else
1494
-                gcode.process_subcommands_now_P(PSTR("G0 F4000 X117.5 Y117.5"));
1494
+                gcode.process_subcommands_now(F("G0 F4000 X117.5 Y117.5"));
1495 1495
               #endif
1496
-              gcode.process_subcommands_now_P(PSTR("G0 F300 Z0"));
1496
+              gcode.process_subcommands_now(F("G0 F300 Z0"));
1497 1497
               planner.synchronize();
1498 1498
               Redraw_Menu();
1499 1499
             }
@@ -1513,11 +1513,11 @@ void CrealityDWINClass::Menu_Item_Handler(uint8_t menu, uint8_t item, bool draw/
1513 1513
                 #if ENABLED(Z_SAFE_HOMING)
1514 1514
                   planner.synchronize();
1515 1515
                   sprintf_P(cmd, PSTR("G0 F4000 X%s Y%s"), dtostrf(Z_SAFE_HOMING_X_POINT, 1, 3, str_1), dtostrf(Z_SAFE_HOMING_Y_POINT, 1, 3, str_2));
1516
-                  gcode.process_subcommands_now_P(cmd);
1516
+                  gcode.process_subcommands_now(cmd);
1517 1517
                 #else
1518
-                  gcode.process_subcommands_now_P(PSTR("G0 F4000 X117.5 Y117.5"));
1518
+                  gcode.process_subcommands_now(F("G0 F4000 X117.5 Y117.5"));
1519 1519
                 #endif
1520
-                gcode.process_subcommands_now_P(PSTR("G0 F300 Z0"));
1520
+                gcode.process_subcommands_now(F("G0 F300 Z0"));
1521 1521
                 planner.synchronize();
1522 1522
                 Redraw_Menu();
1523 1523
               }
@@ -1539,7 +1539,7 @@ void CrealityDWINClass::Menu_Item_Handler(uint8_t menu, uint8_t item, bool draw/
1539 1539
             else {
1540 1540
               if (zoffsetvalue < MAX_Z_OFFSET) {
1541 1541
                 if (liveadjust) {
1542
-                  gcode.process_subcommands_now_P(PSTR("M290 Z0.01"));
1542
+                  gcode.process_subcommands_now(F("M290 Z0.01"));
1543 1543
                   planner.synchronize();
1544 1544
                 }
1545 1545
                 zoffsetvalue += 0.01;
@@ -1553,7 +1553,7 @@ void CrealityDWINClass::Menu_Item_Handler(uint8_t menu, uint8_t item, bool draw/
1553 1553
             else {
1554 1554
               if (zoffsetvalue > MIN_Z_OFFSET) {
1555 1555
                 if (liveadjust) {
1556
-                  gcode.process_subcommands_now_P(PSTR("M290 Z-0.01"));
1556
+                  gcode.process_subcommands_now(F("M290 Z-0.01"));
1557 1557
                   planner.synchronize();
1558 1558
                 }
1559 1559
                 zoffsetvalue -= 0.01;
@@ -1721,7 +1721,7 @@ void CrealityDWINClass::Menu_Item_Handler(uint8_t menu, uint8_t item, bool draw/
1721 1721
                   thermalManager.wait_for_hotend(0);
1722 1722
                 }
1723 1723
                 Popup_Handler(FilLoad);
1724
-                gcode.process_subcommands_now_P(PSTR("M701"));
1724
+                gcode.process_subcommands_now(F("M701"));
1725 1725
                 planner.synchronize();
1726 1726
                 Redraw_Menu();
1727 1727
               }
@@ -1740,7 +1740,7 @@ void CrealityDWINClass::Menu_Item_Handler(uint8_t menu, uint8_t item, bool draw/
1740 1740
                   thermalManager.wait_for_hotend(0);
1741 1741
                 }
1742 1742
                 Popup_Handler(FilLoad, true);
1743
-                gcode.process_subcommands_now_P(PSTR("M702"));
1743
+                gcode.process_subcommands_now(F("M702"));
1744 1744
                 planner.synchronize();
1745 1745
                 Redraw_Menu();
1746 1746
               }
@@ -1759,7 +1759,7 @@ void CrealityDWINClass::Menu_Item_Handler(uint8_t menu, uint8_t item, bool draw/
1759 1759
                 }
1760 1760
                 Popup_Handler(FilChange);
1761 1761
                 sprintf_P(cmd, PSTR("M600 B1 R%i"), thermalManager.temp_hotend[0].target);
1762
-                gcode.process_subcommands_now_P(cmd);
1762
+                gcode.process_subcommands_now(cmd);
1763 1763
               }
1764 1764
             }
1765 1765
             break;
@@ -2016,7 +2016,7 @@ void CrealityDWINClass::Menu_Item_Handler(uint8_t menu, uint8_t item, bool draw/
2016 2016
             else {
2017 2017
               Popup_Handler(PIDWait);
2018 2018
               sprintf_P(cmd, PSTR("M303 E0 C%i S%i U1"), PID_cycles, PID_e_temp);
2019
-              gcode.process_subcommands_now_P(cmd);
2019
+              gcode.process_subcommands_now(cmd);
2020 2020
               planner.synchronize();
2021 2021
               Redraw_Menu();
2022 2022
             }
@@ -2083,7 +2083,7 @@ void CrealityDWINClass::Menu_Item_Handler(uint8_t menu, uint8_t item, bool draw/
2083 2083
             else {
2084 2084
               Popup_Handler(PIDWait);
2085 2085
               sprintf_P(cmd, PSTR("M303 E-1 C%i S%i U1"), PID_cycles, PID_bed_temp);
2086
-              gcode.process_subcommands_now_P(cmd);
2086
+              gcode.process_subcommands_now(cmd);
2087 2087
               planner.synchronize();
2088 2088
               Redraw_Menu();
2089 2089
             }
@@ -3029,7 +3029,7 @@ void CrealityDWINClass::Menu_Item_Handler(uint8_t menu, uint8_t item, bool draw/
3029 3029
                 Draw_Menu_Item(row, ICON_StepY, "M48 Probe Test");
3030 3030
               else {
3031 3031
                 sprintf_P(cmd, PSTR("G28O\nM48 X%s Y%s P%i"), dtostrf((X_BED_SIZE + X_MIN_POS) / 2.0f, 1, 3, str_1), dtostrf((Y_BED_SIZE + Y_MIN_POS) / 2.0f, 1, 3, str_2), testcount);
3032
-                gcode.process_subcommands_now_P(cmd);
3032
+                gcode.process_subcommands_now(cmd);
3033 3033
               }
3034 3034
               break;
3035 3035
             case PROBE_TEST_COUNT:
@@ -3141,11 +3141,12 @@ void CrealityDWINClass::Menu_Item_Handler(uint8_t menu, uint8_t item, bool draw/
3141 3141
                 Popup_Handler(Home);
3142 3142
                 gcode.home_all_axes(true);
3143 3143
                 Popup_Handler(Level);
3144
-                if (mesh_conf.tilt_grid > 1)
3144
+                if (mesh_conf.tilt_grid > 1) {
3145 3145
                   sprintf_P(cmd, PSTR("G29 J%i"), mesh_conf.tilt_grid);
3146
+                  gcode.process_subcommands_now(cmd);
3147
+                }
3146 3148
                 else
3147
-                  sprintf_P(cmd, PSTR("G29 J"));
3148
-                gcode.process_subcommands_now_P(cmd);
3149
+                  gcode.process_subcommands_now(F("G29 J"));
3149 3150
                 planner.synchronize();
3150 3151
                 Redraw_Menu();
3151 3152
               }
@@ -3173,8 +3174,8 @@ void CrealityDWINClass::Menu_Item_Handler(uint8_t menu, uint8_t item, bool draw/
3173 3174
                 #endif
3174 3175
                 #if HAS_BED_PROBE
3175 3176
                   Popup_Handler(Level);
3176
-                  gcode.process_subcommands_now_P(PSTR("G29 P0\nG29 P1"));
3177
-                  gcode.process_subcommands_now_P(PSTR("G29 P3\nG29 P3\nG29 P3\nG29 P3\nG29 P3\nG29 P3\nG29 P3\nG29 P3\nG29 P3\nG29 P3\nG29 P3\nG29 P3\nG29 P3\nG29 P3\nG29 P3\nM420 S1"));
3177
+                  gcode.process_subcommands_now(F("G29 P0\nG29 P1"));
3178
+                  gcode.process_subcommands_now(F("G29 P3\nG29 P3\nG29 P3\nG29 P3\nG29 P3\nG29 P3\nG29 P3\nG29 P3\nG29 P3\nG29 P3\nG29 P3\nG29 P3\nG29 P3\nG29 P3\nG29 P3\nM420 S1"));
3178 3179
                   planner.synchronize();
3179 3180
                   Update_Status("Probed all reachable points");
3180 3181
                   Popup_Handler(SaveLevel);
@@ -3189,7 +3190,7 @@ void CrealityDWINClass::Menu_Item_Handler(uint8_t menu, uint8_t item, bool draw/
3189 3190
                 #endif
3190 3191
               #elif HAS_BED_PROBE
3191 3192
                 Popup_Handler(Level);
3192
-                gcode.process_subcommands_now_P(PSTR("G29"));
3193
+                gcode.process_subcommands_now(F("G29"));
3193 3194
                 planner.synchronize();
3194 3195
                 Popup_Handler(SaveLevel);
3195 3196
               #else
@@ -3197,7 +3198,7 @@ void CrealityDWINClass::Menu_Item_Handler(uint8_t menu, uint8_t item, bool draw/
3197 3198
                 set_bed_leveling_enabled(false);
3198 3199
                 gridpoint = 1;
3199 3200
                 Popup_Handler(MoveWait);
3200
-                gcode.process_subcommands_now_P(PSTR("G29"));
3201
+                gcode.process_subcommands_now(F("G29"));
3201 3202
                 planner.synchronize();
3202 3203
                 Draw_Menu(ManualMesh);
3203 3204
               #endif
@@ -3280,7 +3281,7 @@ void CrealityDWINClass::Menu_Item_Handler(uint8_t menu, uint8_t item, bool draw/
3280 3281
                 Popup_Handler(MeshSlot);
3281 3282
                 break;
3282 3283
               }
3283
-              gcode.process_subcommands_now_P(PSTR("G29 L"));
3284
+              gcode.process_subcommands_now(F("G29 L"));
3284 3285
               planner.synchronize();
3285 3286
               AudioFeedback(true);
3286 3287
             }
@@ -3293,7 +3294,7 @@ void CrealityDWINClass::Menu_Item_Handler(uint8_t menu, uint8_t item, bool draw/
3293 3294
                 Popup_Handler(MeshSlot);
3294 3295
                 break;
3295 3296
               }
3296
-              gcode.process_subcommands_now_P(PSTR("G29 S"));
3297
+              gcode.process_subcommands_now(F("G29 S"));
3297 3298
               planner.synchronize();
3298 3299
               AudioFeedback(true);
3299 3300
             }
@@ -3389,7 +3390,7 @@ void CrealityDWINClass::Menu_Item_Handler(uint8_t menu, uint8_t item, bool draw/
3389 3390
                 Draw_Menu_Item(row, ICON_ResumeEEPROM, "Convert Mesh to Plane");
3390 3391
               else {
3391 3392
                 if (mesh_conf.create_plane_from_mesh()) break;
3392
-                gcode.process_subcommands_now_P(PSTR("M420 S1"));
3393
+                gcode.process_subcommands_now(F("M420 S1"));
3393 3394
                 planner.synchronize();
3394 3395
                 AudioFeedback(true);
3395 3396
               }
@@ -3497,7 +3498,7 @@ void CrealityDWINClass::Menu_Item_Handler(uint8_t menu, uint8_t item, bool draw/
3497 3498
               Draw_Menu_Item(row, ICON_Axis, "Microstep Up");
3498 3499
             else if (Z_VALUES_ARR[mesh_conf.mesh_x][mesh_conf.mesh_y] < MAX_Z_OFFSET) {
3499 3500
               Z_VALUES_ARR[mesh_conf.mesh_x][mesh_conf.mesh_y] += 0.01;
3500
-              gcode.process_subcommands_now_P(PSTR("M290 Z0.01"));
3501
+              gcode.process_subcommands_now(F("M290 Z0.01"));
3501 3502
               planner.synchronize();
3502 3503
               current_position.z += 0.01f;
3503 3504
               sync_plan_position();
@@ -3509,7 +3510,7 @@ void CrealityDWINClass::Menu_Item_Handler(uint8_t menu, uint8_t item, bool draw/
3509 3510
               Draw_Menu_Item(row, ICON_AxisD, "Microstep Down");
3510 3511
             else if (Z_VALUES_ARR[mesh_conf.mesh_x][mesh_conf.mesh_y] > MIN_Z_OFFSET) {
3511 3512
               Z_VALUES_ARR[mesh_conf.mesh_x][mesh_conf.mesh_y] -= 0.01;
3512
-              gcode.process_subcommands_now_P(PSTR("M290 Z-0.01"));
3513
+              gcode.process_subcommands_now(F("M290 Z-0.01"));
3513 3514
               planner.synchronize();
3514 3515
               current_position.z -= 0.01f;
3515 3516
               sync_plan_position();
@@ -3580,7 +3581,7 @@ void CrealityDWINClass::Menu_Item_Handler(uint8_t menu, uint8_t item, bool draw/
3580 3581
                 mesh_conf.manual_move();
3581 3582
               }
3582 3583
               else {
3583
-                gcode.process_subcommands_now_P(PSTR("G29 S"));
3584
+                gcode.process_subcommands_now(F("G29 S"));
3584 3585
                 planner.synchronize();
3585 3586
                 AudioFeedback(true);
3586 3587
                 Draw_Menu(Leveling, LEVELING_GET_MESH);
@@ -3618,7 +3619,7 @@ void CrealityDWINClass::Menu_Item_Handler(uint8_t menu, uint8_t item, bool draw/
3618 3619
               Draw_Menu_Item(row, ICON_Axis, "Microstep Up");
3619 3620
             else if (Z_VALUES_ARR[mesh_conf.mesh_x][mesh_conf.mesh_y] < MAX_Z_OFFSET) {
3620 3621
               Z_VALUES_ARR[mesh_conf.mesh_x][mesh_conf.mesh_y] += 0.01;
3621
-              gcode.process_subcommands_now_P(PSTR("M290 Z0.01"));
3622
+              gcode.process_subcommands_now(F("M290 Z0.01"));
3622 3623
               planner.synchronize();
3623 3624
               current_position.z += 0.01f;
3624 3625
               sync_plan_position();
@@ -3630,7 +3631,7 @@ void CrealityDWINClass::Menu_Item_Handler(uint8_t menu, uint8_t item, bool draw/
3630 3631
               Draw_Menu_Item(row, ICON_Axis, "Microstep Down");
3631 3632
             else if (Z_VALUES_ARR[mesh_conf.mesh_x][mesh_conf.mesh_y] > MIN_Z_OFFSET) {
3632 3633
               Z_VALUES_ARR[mesh_conf.mesh_x][mesh_conf.mesh_y] -= 0.01;
3633
-              gcode.process_subcommands_now_P(PSTR("M290 Z-0.01"));
3634
+              gcode.process_subcommands_now(F("M290 Z-0.01"));
3634 3635
               planner.synchronize();
3635 3636
               current_position.z -= 0.01f;
3636 3637
               sync_plan_position();
@@ -3657,7 +3658,7 @@ void CrealityDWINClass::Menu_Item_Handler(uint8_t menu, uint8_t item, bool draw/
3657 3658
             if (draw)
3658 3659
               Draw_Menu_Item(row, ICON_Back, "Cancel");
3659 3660
             else {
3660
-              gcode.process_subcommands_now_P(PSTR("G29 A"));
3661
+              gcode.process_subcommands_now(F("G29 A"));
3661 3662
               planner.synchronize();
3662 3663
               set_bed_leveling_enabled(level_state);
3663 3664
               Draw_Menu(Leveling, LEVELING_GET_MESH);
@@ -3672,13 +3673,13 @@ void CrealityDWINClass::Menu_Item_Handler(uint8_t menu, uint8_t item, bool draw/
3672 3673
             }
3673 3674
             else if (gridpoint < GRID_MAX_POINTS) {
3674 3675
               Popup_Handler(MoveWait);
3675
-              gcode.process_subcommands_now_P(PSTR("G29"));
3676
+              gcode.process_subcommands_now(F("G29"));
3676 3677
               planner.synchronize();
3677 3678
               gridpoint++;
3678 3679
               Redraw_Menu();
3679 3680
             }
3680 3681
             else {
3681
-              gcode.process_subcommands_now_P(PSTR("G29"));
3682
+              gcode.process_subcommands_now(F("G29"));
3682 3683
               planner.synchronize();
3683 3684
               AudioFeedback(settings.save());
3684 3685
               Draw_Menu(Leveling, LEVELING_GET_MESH);
@@ -3697,7 +3698,7 @@ void CrealityDWINClass::Menu_Item_Handler(uint8_t menu, uint8_t item, bool draw/
3697 3698
             if (draw)
3698 3699
               Draw_Menu_Item(row, ICON_Axis, "Microstep Up");
3699 3700
             else if (current_position.z < MAX_Z_OFFSET) {
3700
-              gcode.process_subcommands_now_P(PSTR("M290 Z0.01"));
3701
+              gcode.process_subcommands_now(F("M290 Z0.01"));
3701 3702
               planner.synchronize();
3702 3703
               current_position.z += 0.01f;
3703 3704
               sync_plan_position();
@@ -3708,7 +3709,7 @@ void CrealityDWINClass::Menu_Item_Handler(uint8_t menu, uint8_t item, bool draw/
3708 3709
             if (draw)
3709 3710
               Draw_Menu_Item(row, ICON_AxisD, "Microstep Down");
3710 3711
             else if (current_position.z > MIN_Z_OFFSET) {
3711
-              gcode.process_subcommands_now_P(PSTR("M290 Z-0.01"));
3712
+              gcode.process_subcommands_now(F("M290 Z-0.01"));
3712 3713
               planner.synchronize();
3713 3714
               current_position.z -= 0.01f;
3714 3715
               sync_plan_position();
@@ -3829,7 +3830,7 @@ void CrealityDWINClass::Menu_Item_Handler(uint8_t menu, uint8_t item, bool draw/
3829 3830
             if (draw)
3830 3831
               Draw_Menu_Item(row, ICON_Axis, "Z-Offset Up");
3831 3832
             else if (zoffsetvalue < MAX_Z_OFFSET) {
3832
-              gcode.process_subcommands_now_P(PSTR("M290 Z0.01"));
3833
+              gcode.process_subcommands_now(F("M290 Z0.01"));
3833 3834
               zoffsetvalue += 0.01;
3834 3835
               Draw_Float(zoffsetvalue, row - 1, false, 100);
3835 3836
             }
@@ -3838,7 +3839,7 @@ void CrealityDWINClass::Menu_Item_Handler(uint8_t menu, uint8_t item, bool draw/
3838 3839
             if (draw)
3839 3840
               Draw_Menu_Item(row, ICON_AxisD, "Z-Offset Down");
3840 3841
             else if (zoffsetvalue > MIN_Z_OFFSET) {
3841
-              gcode.process_subcommands_now_P(PSTR("M290 Z-0.01"));
3842
+              gcode.process_subcommands_now(F("M290 Z-0.01"));
3842 3843
               zoffsetvalue -= 0.01;
3843 3844
               Draw_Float(zoffsetvalue, row - 2, false, 100);
3844 3845
             }
@@ -3916,27 +3917,27 @@ void CrealityDWINClass::Menu_Item_Handler(uint8_t menu, uint8_t item, bool draw/
3916 3917
                 case Prepare:
3917 3918
                   Popup_Handler(FilChange);
3918 3919
                   sprintf_P(cmd, PSTR("M600 B1 R%i"), thermalManager.temp_hotend[0].target);
3919
-                  gcode.process_subcommands_now_P(cmd);
3920
+                  gcode.process_subcommands_now(cmd);
3920 3921
                   break;
3921 3922
                 #if ENABLED(FILAMENT_LOAD_UNLOAD_GCODES)
3922 3923
                   case ChangeFilament:
3923 3924
                     switch (last_selection) {
3924 3925
                       case CHANGEFIL_LOAD:
3925 3926
                         Popup_Handler(FilLoad);
3926
-                        gcode.process_subcommands_now_P("M701");
3927
+                        gcode.process_subcommands_now(F("M701"));
3927 3928
                         planner.synchronize();
3928 3929
                         Redraw_Menu(true, true, true);
3929 3930
                         break;
3930 3931
                       case CHANGEFIL_UNLOAD:
3931 3932
                         Popup_Handler(FilLoad, true);
3932
-                        gcode.process_subcommands_now_P("M702");
3933
+                        gcode.process_subcommands_now(F("M702"));
3933 3934
                         planner.synchronize();
3934 3935
                         Redraw_Menu(true, true, true);
3935 3936
                         break;
3936 3937
                       case CHANGEFIL_CHANGE:
3937 3938
                         Popup_Handler(FilChange);
3938 3939
                         sprintf_P(cmd, PSTR("M600 B1 R%i"), thermalManager.temp_hotend[0].target);
3939
-                        gcode.process_subcommands_now_P(cmd);
3940
+                        gcode.process_subcommands_now(cmd);
3940 3941
                         break;
3941 3942
                     }
3942 3943
                     break;
@@ -4275,7 +4276,7 @@ void CrealityDWINClass::Value_Control() {
4275 4276
     }
4276 4277
     else if (active_menu == Tune && selection == TUNE_ZOFFSET) {
4277 4278
       sprintf_P(cmd, PSTR("M290 Z%s"), dtostrf((tempvalue / valueunit - zoffsetvalue), 1, 3, str_1));
4278
-      gcode.process_subcommands_now_P(cmd);
4279
+      gcode.process_subcommands_now(cmd);
4279 4280
     }
4280 4281
     if (TERN0(HAS_HOTEND, valuepointer == &thermalManager.temp_hotend[0].pid.Ki) || TERN0(HAS_HEATED_BED, valuepointer == &thermalManager.temp_bed.pid.Ki))
4281 4282
       tempvalue = scalePID_i(tempvalue);
@@ -4474,11 +4475,11 @@ void CrealityDWINClass::Print_Screen_Control() {
4474 4475
               char cmnd[20];
4475 4476
               #if HAS_HEATED_BED
4476 4477
                 cmnd[sprintf_P(cmnd, PSTR("M140 S%i"), pausebed)] = '\0';
4477
-                gcode.process_subcommands_now_P(PSTR(cmnd));
4478
+                gcode.process_subcommands_now(cmnd);
4478 4479
               #endif
4479 4480
               #if HAS_EXTRUDERS
4480 4481
                 cmnd[sprintf_P(cmnd, PSTR("M109 S%i"), pausetemp)] = '\0';
4481
-                gcode.process_subcommands_now_P(PSTR(cmnd));
4482
+                gcode.process_subcommands_now(cmnd);
4482 4483
               #endif
4483 4484
               TERN_(HAS_FAN, thermalManager.fan_speed[0] = pausefan);
4484 4485
               planner.synchronize();
@@ -4603,7 +4604,7 @@ void CrealityDWINClass::Popup_Control() {
4603 4604
               }
4604 4605
               Popup_Handler(FilChange);
4605 4606
               sprintf_P(cmd, PSTR("M600 B1 R%i"), thermalManager.temp_hotend[0].target);
4606
-              gcode.process_subcommands_now_P(cmd);
4607
+              gcode.process_subcommands_now(cmd);
4607 4608
             }
4608 4609
           }
4609 4610
           else
@@ -4626,7 +4627,7 @@ void CrealityDWINClass::Popup_Control() {
4626 4627
         case SaveLevel:
4627 4628
           if (selection == 0) {
4628 4629
             #if ENABLED(AUTO_BED_LEVELING_UBL)
4629
-              gcode.process_subcommands_now_P(PSTR("G29 S"));
4630
+              gcode.process_subcommands_now(F("G29 S"));
4630 4631
               planner.synchronize();
4631 4632
               AudioFeedback(true);
4632 4633
             #else

+ 1
- 1
Marlin/src/lcd/extui/dgus/mks/DGUSScreenHandler.cpp View File

@@ -262,7 +262,7 @@ void DGUSScreenHandler::DGUSLCD_SendTMCStepValue(DGUS_VP_Variable &var) {
262 262
   void DGUSScreenHandler::SDPrintingFinished() {
263 263
     if (DGUSAutoTurnOff) {
264 264
       queue.exhaust();
265
-      gcode.process_subcommands_now_P(PSTR("M81"));
265
+      gcode.process_subcommands_now(F("M81"));
266 266
     }
267 267
     GotoScreen(MKSLCD_SCREEN_PrintDone);
268 268
   }

+ 1
- 1
Marlin/src/lcd/extui/ftdi_eve_touch_ui/generic/spinner_dialog_box.cpp View File

@@ -99,7 +99,7 @@ void SpinnerDialogBox::enqueueAndWait(FSTR_P message, char *commands) {
99 99
 }
100 100
 
101 101
 void SpinnerDialogBox::onIdle() {
102
-  if (mydata.auto_hide && !commandsInQueue() && TERN1(HOST_KEEPALIVE_FEATURE, GcodeSuite::busy_state == GcodeSuite::NOT_BUSY)) {
102
+  if (mydata.auto_hide && !commandsInQueue() && TERN1(HOST_KEEPALIVE_FEATURE, gcode.busy_state == gcode.NOT_BUSY)) {
103 103
     mydata.auto_hide = false;
104 104
     hide();
105 105
   }

+ 6
- 6
Marlin/src/lcd/extui/mks_ui/draw_baby_stepping.cpp View File

@@ -65,32 +65,32 @@ static void event_handler(lv_obj_t *obj, lv_event_t event) {
65 65
   switch (obj->mks_obj_id) {
66 66
     case ID_BABY_STEP_X_P:
67 67
       sprintf_P(baby_buf, PSTR("M290 X%s"), dtostrf(babystep_dist, 1, 3, str_1));
68
-      gcode.process_subcommands_now_P(PSTR(baby_buf));
68
+      gcode.process_subcommands_now(F(baby_buf));
69 69
       has_adjust_z = 1;
70 70
       break;
71 71
     case ID_BABY_STEP_X_N:
72 72
       sprintf_P(baby_buf, PSTR("M290 X%s"), dtostrf(-babystep_dist, 1, 3, str_1));
73
-      gcode.process_subcommands_now_P(PSTR(baby_buf));
73
+      gcode.process_subcommands_now(F(baby_buf));
74 74
       has_adjust_z = 1;
75 75
       break;
76 76
     case ID_BABY_STEP_Y_P:
77 77
       sprintf_P(baby_buf, PSTR("M290 Y%s"), dtostrf(babystep_dist, 1, 3, str_1));
78
-      gcode.process_subcommands_now_P(PSTR(baby_buf));
78
+      gcode.process_subcommands_now(F(baby_buf));
79 79
       has_adjust_z = 1;
80 80
       break;
81 81
     case ID_BABY_STEP_Y_N:
82 82
       sprintf_P(baby_buf, PSTR("M290 Y%s"), dtostrf(-babystep_dist, 1, 3, str_1));
83
-      gcode.process_subcommands_now_P(PSTR(baby_buf));
83
+      gcode.process_subcommands_now(F(baby_buf));
84 84
       has_adjust_z = 1;
85 85
       break;
86 86
     case ID_BABY_STEP_Z_P:
87 87
       sprintf_P(baby_buf, PSTR("M290 Z%s"), dtostrf(babystep_dist, 1, 3, str_1));
88
-      gcode.process_subcommands_now_P(PSTR(baby_buf));
88
+      gcode.process_subcommands_now(F(baby_buf));
89 89
       has_adjust_z = 1;
90 90
       break;
91 91
     case ID_BABY_STEP_Z_N:
92 92
       sprintf_P(baby_buf, PSTR("M290 Z%s"), dtostrf(-babystep_dist, 1, 3, str_1));
93
-      gcode.process_subcommands_now_P(PSTR(baby_buf));
93
+      gcode.process_subcommands_now(F(baby_buf));
94 94
       has_adjust_z = 1;
95 95
       break;
96 96
     case ID_BABY_STEP_DIST:

+ 1
- 1
Marlin/src/lcd/extui/mks_ui/draw_filament_change.cpp View File

@@ -94,7 +94,7 @@ static void event_handler(lv_obj_t *obj, lv_event_t event) {
94 94
     case ID_FILAMNT_RETURN:
95 95
       #if HAS_MULTI_EXTRUDER
96 96
         if (uiCfg.print_state != IDLE && uiCfg.print_state != REPRINTED)
97
-          gcode.process_subcommands_now_P(uiCfg.extruderIndexBak == 1 ? PSTR("T1") : PSTR("T0"));
97
+          gcode.process_subcommands_now(uiCfg.extruderIndexBak == 1 ? F("T1") : F("T0"));
98 98
       #endif
99 99
       feedrate_mm_s = (float)uiCfg.moveSpeed_bak;
100 100
       if (uiCfg.print_state == PAUSED)

+ 1
- 1
Marlin/src/lcd/extui/mks_ui/draw_number_key.cpp View File

@@ -404,7 +404,7 @@ static void set_value_confirm() {
404 404
     case z_sensitivity: TERN_(Z_SENSORLESS, stepperZ.homing_threshold(atoi(key_value))); break;
405 405
     case z2_sensitivity: TERN_(Z2_SENSORLESS, stepperZ2.homing_threshold(atoi(key_value))); break;
406 406
   }
407
-  gcode.process_subcommands_now_P(PSTR("M500"));
407
+  gcode.process_subcommands_now(F("M500"));
408 408
 }
409 409
 
410 410
 static void event_handler(lv_obj_t *obj, lv_event_t event) {

+ 1
- 1
Marlin/src/lcd/extui/mks_ui/draw_printing.cpp View File

@@ -307,7 +307,7 @@ void setProBarRate() {
307 307
 
308 308
         #if HAS_SUICIDE
309 309
           if (gCfgItems.finish_power_off) {
310
-            gcode.process_subcommands_now_P(PSTR("M1001"));
310
+            gcode.process_subcommands_now(F("M1001"));
311 311
             queue.inject_P(PSTR("M81"));
312 312
             marlin_state = MF_RUNNING;
313 313
           }

+ 2
- 2
Marlin/src/lcd/extui/mks_ui/printer_operation.cpp View File

@@ -53,7 +53,7 @@ void printer_state_polling() {
53 53
         uiCfg.waitEndMoves = 0;
54 54
         planner.synchronize();
55 55
 
56
-        gcode.process_subcommands_now_P(PSTR("M25"));
56
+        gcode.process_subcommands_now(F("M25"));
57 57
 
58 58
         // save the position
59 59
         uiCfg.current_x_position_bak = current_position.x;
@@ -93,7 +93,7 @@ void printer_state_polling() {
93 93
         sprintf_P(public_buf_m, PSTR("G1 Z%s"), dtostrf(uiCfg.current_z_position_bak, 1, 1, str_1));
94 94
         gcode.process_subcommands_now(public_buf_m);
95 95
       }
96
-      gcode.process_subcommands_now_P(M24_STR);
96
+      gcode.process_subcommands_now(FPSTR(M24_STR));
97 97
       uiCfg.print_state = WORKING;
98 98
       start_print_time();
99 99
 

+ 3
- 3
Marlin/src/module/tool_change.cpp View File

@@ -1310,17 +1310,17 @@ void tool_change(const uint8_t new_tool, bool no_move/*=false*/) {
1310 1310
     if (!no_move) {
1311 1311
       #ifdef EVENT_GCODE_TOOLCHANGE_T0
1312 1312
         if (new_tool == 0)
1313
-          gcode.process_subcommands_now_P(PSTR(EVENT_GCODE_TOOLCHANGE_T0));
1313
+          gcode.process_subcommands_now(F(EVENT_GCODE_TOOLCHANGE_T0));
1314 1314
       #endif
1315 1315
 
1316 1316
       #ifdef EVENT_GCODE_TOOLCHANGE_T1
1317 1317
         if (new_tool == 1)
1318
-          gcode.process_subcommands_now_P(PSTR(EVENT_GCODE_TOOLCHANGE_T1));
1318
+          gcode.process_subcommands_now(F(EVENT_GCODE_TOOLCHANGE_T1));
1319 1319
       #endif
1320 1320
 
1321 1321
       #ifdef EVENT_GCODE_AFTER_TOOLCHANGE
1322 1322
         if (TERN1(DUAL_X_CARRIAGE, dual_x_carriage_mode == DXC_AUTO_PARK_MODE))
1323
-          gcode.process_subcommands_now_P(PSTR(EVENT_GCODE_AFTER_TOOLCHANGE));
1323
+          gcode.process_subcommands_now(F(EVENT_GCODE_AFTER_TOOLCHANGE));
1324 1324
       #endif
1325 1325
     }
1326 1326
 

Loading…
Cancel
Save