Skip to content

Commit

Permalink
Move common strings (MarlinFirmware#20846)
Browse files Browse the repository at this point in the history
  • Loading branch information
thinkyhead authored and W4tel-BiDi committed Apr 5, 2021
1 parent a9fe03e commit 7e395ea
Show file tree
Hide file tree
Showing 38 changed files with 54 additions and 83 deletions.
11 changes: 0 additions & 11 deletions Marlin/src/MarlinCore.cpp
Original file line number Diff line number Diff line change
Expand Up @@ -230,18 +230,7 @@
#include "feature/password/password.h"
#endif

PGMSTR(NUL_STR, "");
PGMSTR(M112_KILL_STR, "M112 Shutdown");
PGMSTR(G28_STR, "G28");
PGMSTR(M21_STR, "M21");
PGMSTR(M23_STR, "M23 %s");
PGMSTR(M24_STR, "M24");
PGMSTR(SP_P_STR, " P"); PGMSTR(SP_T_STR, " T");
PGMSTR(X_STR, "X"); PGMSTR(Y_STR, "Y"); PGMSTR(Z_STR, "Z"); PGMSTR(E_STR, "E");
PGMSTR(X_LBL, "X:"); PGMSTR(Y_LBL, "Y:"); PGMSTR(Z_LBL, "Z:"); PGMSTR(E_LBL, "E:");
PGMSTR(SP_A_STR, " A"); PGMSTR(SP_B_STR, " B"); PGMSTR(SP_C_STR, " C");
PGMSTR(SP_X_STR, " X"); PGMSTR(SP_Y_STR, " Y"); PGMSTR(SP_Z_STR, " Z"); PGMSTR(SP_E_STR, " E");
PGMSTR(SP_X_LBL, " X:"); PGMSTR(SP_Y_LBL, " Y:"); PGMSTR(SP_Z_LBL, " Z:"); PGMSTR(SP_E_LBL, " E:");

MarlinState marlin_state = MF_INITIALIZING;

Expand Down
5 changes: 1 addition & 4 deletions Marlin/src/MarlinCore.h
Original file line number Diff line number Diff line change
Expand Up @@ -108,7 +108,4 @@ bool pin_is_protected(const pin_t pin);
inline bool kill_state() { return READ(KILL_PIN) == KILL_PIN_STATE; }
#endif

extern const char NUL_STR[], M112_KILL_STR[], G28_STR[], M21_STR[], M23_STR[], M24_STR[],
SP_A_STR[], SP_B_STR[], SP_C_STR[],
SP_P_STR[], SP_T_STR[], SP_X_STR[], SP_Y_STR[], SP_Z_STR[], SP_E_STR[],
X_LBL[], Y_LBL[], Z_LBL[], E_LBL[], SP_X_LBL[], SP_Y_LBL[], SP_Z_LBL[], SP_E_LBL[];
extern const char M112_KILL_STR[];
16 changes: 10 additions & 6 deletions Marlin/src/core/serial.cpp
Original file line number Diff line number Diff line change
Expand Up @@ -25,8 +25,13 @@

uint8_t marlin_debug_flags = MARLIN_DEBUG_NONE;

static PGMSTR(errormagic, "Error:");
static PGMSTR(echomagic, "echo:");
// Commonly-used strings in serial output
PGMSTR(NUL_STR, ""); PGMSTR(SP_P_STR, " P"); PGMSTR(SP_T_STR, " T");
PGMSTR(X_STR, "X"); PGMSTR(Y_STR, "Y"); PGMSTR(Z_STR, "Z"); PGMSTR(E_STR, "E");
PGMSTR(X_LBL, "X:"); PGMSTR(Y_LBL, "Y:"); PGMSTR(Z_LBL, "Z:"); PGMSTR(E_LBL, "E:");
PGMSTR(SP_A_STR, " A"); PGMSTR(SP_B_STR, " B"); PGMSTR(SP_C_STR, " C");
PGMSTR(SP_X_STR, " X"); PGMSTR(SP_Y_STR, " Y"); PGMSTR(SP_Z_STR, " Z"); PGMSTR(SP_E_STR, " E");
PGMSTR(SP_X_LBL, " X:"); PGMSTR(SP_Y_LBL, " Y:"); PGMSTR(SP_Z_LBL, " Z:"); PGMSTR(SP_E_LBL, " E:");

#if HAS_MULTI_SERIAL
int8_t serial_port_index = 0;
Expand All @@ -35,8 +40,9 @@ static PGMSTR(echomagic, "echo:");
void serialprintPGM(PGM_P str) {
while (const char c = pgm_read_byte(str++)) SERIAL_CHAR(c);
}
void serial_echo_start() { serialprintPGM(echomagic); }
void serial_error_start() { serialprintPGM(errormagic); }

void serial_echo_start() { static PGMSTR(echomagic, "echo:"); serialprintPGM(echomagic); }
void serial_error_start() { static PGMSTR(errormagic, "Error:"); serialprintPGM(errormagic); }

void serial_echopair_PGM(PGM_P const s_P, const char *v) { serialprintPGM(s_P); SERIAL_ECHO(v); }
void serial_echopair_PGM(PGM_P const s_P, char v) { serialprintPGM(s_P); SERIAL_CHAR(v); }
Expand Down Expand Up @@ -65,8 +71,6 @@ void print_bin(uint16_t val) {
}
}

extern const char SP_X_STR[], SP_Y_STR[], SP_Z_STR[];

void print_xyz(const float &x, const float &y, const float &z, PGM_P const prefix/*=nullptr*/, PGM_P const suffix/*=nullptr*/) {
if (prefix) serialprintPGM(prefix);
SERIAL_ECHOPAIR_P(SP_X_STR, x, SP_Y_STR, y, SP_Z_STR, z);
Expand Down
17 changes: 14 additions & 3 deletions Marlin/src/core/serial.h
Original file line number Diff line number Diff line change
Expand Up @@ -27,9 +27,17 @@
#include "../feature/ethernet.h"
#endif

/**
* Define debug bit-masks
*/
// Commonly-used strings in serial output
extern const char NUL_STR[], SP_P_STR[], SP_T_STR[],
X_STR[], Y_STR[], Z_STR[], E_STR[],
X_LBL[], Y_LBL[], Z_LBL[], E_LBL[],
SP_A_STR[], SP_B_STR[], SP_C_STR[],
SP_X_STR[], SP_Y_STR[], SP_Z_STR[], SP_E_STR[],
SP_X_LBL[], SP_Y_LBL[], SP_Z_LBL[], SP_E_LBL[];

//
// Debugging flags for use by M111
//
enum MarlinDebugFlags : uint8_t {
MARLIN_DEBUG_NONE = 0,
MARLIN_DEBUG_ECHO = _BV(0), ///< Echo commands in order as they are processed
Expand All @@ -50,6 +58,9 @@ enum MarlinDebugFlags : uint8_t {
extern uint8_t marlin_debug_flags;
#define DEBUGGING(F) (marlin_debug_flags & (MARLIN_DEBUG_## F))

//
// Serial redirection
//
#define SERIAL_BOTH 0x7F
#if HAS_MULTI_SERIAL
extern int8_t serial_port_index;
Expand Down
1 change: 0 additions & 1 deletion Marlin/src/feature/powerloss.cpp
Original file line number Diff line number Diff line change
Expand Up @@ -520,7 +520,6 @@ void PrintJobRecovery::resume() {

// Resume the SD file from the last position
char *fn = info.sd_filename;
extern const char M23_STR[];
sprintf_P(cmd, M23_STR, fn);
gcode.process_subcommands_now(cmd);
sprintf_P(cmd, PSTR("M24 S%ld T%ld"), resume_sdpos, info.print_job_elapsed);
Expand Down
2 changes: 1 addition & 1 deletion Marlin/src/gcode/bedlevel/abl/G29.cpp
Original file line number Diff line number Diff line change
Expand Up @@ -188,7 +188,7 @@ G29_TYPE GcodeSuite::G29() {

// Send 'N' to force homing before G29 (internal only)
if (parser.seen('N'))
gcode.process_subcommands_now_P(TERN(G28_L0_ENSURES_LEVELING_OFF, PSTR("G28L0"), G28_STR));
process_subcommands_now_P(TERN(G28_L0_ENSURES_LEVELING_OFF, PSTR("G28L0"), G28_STR));

// Don't allow auto-leveling without homing first
if (homing_needed_error()) G29_RETURN(false);
Expand Down
2 changes: 1 addition & 1 deletion Marlin/src/gcode/calibrate/G76_M192_M871.cpp
Original file line number Diff line number Diff line change
Expand Up @@ -38,7 +38,7 @@
#include "../../feature/probe_temp_comp.h"

#include "../../lcd/marlinui.h"
#include "../../MarlinCore.h" // for wait_for_heatup, idle(), G28_STR
#include "../../MarlinCore.h" // for wait_for_heatup, idle()

#if ENABLED(PRINTJOB_TIMER_AUTOSTART)
#include "../../module/printcounter.h"
Expand Down
2 changes: 0 additions & 2 deletions Marlin/src/gcode/calibrate/M48.cpp
Original file line number Diff line number Diff line change
Expand Up @@ -51,8 +51,6 @@
* This function requires the machine to be homed before invocation.
*/

extern const char SP_Y_STR[];

void GcodeSuite::M48() {

if (homing_needed_error()) return;
Expand Down
2 changes: 0 additions & 2 deletions Marlin/src/gcode/config/M217.cpp
Original file line number Diff line number Diff line change
Expand Up @@ -33,8 +33,6 @@

#include "../../MarlinCore.h" // for SP_X_STR, etc.

extern const char SP_X_STR[], SP_Y_STR[], SP_Z_STR[];

void M217_report(const bool eeprom=false) {

#if ENABLED(TOOLCHANGE_FILAMENT_SWAP)
Expand Down
2 changes: 1 addition & 1 deletion Marlin/src/gcode/control/M108_M112_M410.cpp
Original file line number Diff line number Diff line change
Expand Up @@ -25,7 +25,7 @@
#if DISABLED(EMERGENCY_PARSER)

#include "../gcode.h"
#include "../../MarlinCore.h" // for wait_for_heatup, kill
#include "../../MarlinCore.h" // for wait_for_heatup, kill, M112_KILL_STR
#include "../../module/motion.h" // for quickstop_stepper

/**
Expand Down
3 changes: 2 additions & 1 deletion Marlin/src/gcode/gcode.h
Original file line number Diff line number Diff line change
Expand Up @@ -310,6 +310,8 @@

enum AxisRelative : uint8_t { REL_X, REL_Y, REL_Z, REL_E, E_MODE_ABS, E_MODE_REL };

extern const char G28_STR[];

class GcodeSuite {
public:

Expand Down Expand Up @@ -371,7 +373,6 @@ class GcodeSuite {
static void process_subcommands_now(char * gcode);

static inline void home_all_axes(const bool keep_leveling=false) {
extern const char G28_STR[];
process_subcommands_now_P(keep_leveling ? G28_STR : TERN(G28_L0_ENSURES_LEVELING_OFF, PSTR("G28L0"), G28_STR));
}

Expand Down
2 changes: 0 additions & 2 deletions Marlin/src/gcode/geometry/M206_M428.cpp
Original file line number Diff line number Diff line change
Expand Up @@ -30,8 +30,6 @@
#include "../../libs/buzzer.h"
#include "../../MarlinCore.h"

extern const char SP_Y_STR[], SP_Z_STR[];

void m206_report() {
SERIAL_ECHOLNPAIR_P(PSTR("M206 X"), home_offset.x, SP_Y_STR, home_offset.y, SP_Z_STR, home_offset.z);
}
Expand Down
2 changes: 0 additions & 2 deletions Marlin/src/gcode/probe/M851.cpp
Original file line number Diff line number Diff line change
Expand Up @@ -28,8 +28,6 @@
#include "../../feature/bedlevel/bedlevel.h"
#include "../../module/probe.h"

extern const char SP_Y_STR[], SP_Z_STR[];

/**
* M851: Set the nozzle-to-probe offsets in current units
*/
Expand Down
3 changes: 3 additions & 0 deletions Marlin/src/gcode/queue.cpp
Original file line number Diff line number Diff line change
Expand Up @@ -56,6 +56,9 @@ GCodeQueue queue;
#include "../feature/repeat.h"
#endif

// Frequently used G-code strings
PGMSTR(G28_STR, "G28");

/**
* GCode line number handling. Hosts may opt to include line numbers when
* sending commands to Marlin, and lines will be checked for sequentiality.
Expand Down
2 changes: 2 additions & 0 deletions Marlin/src/gcode/queue.h
Original file line number Diff line number Diff line change
Expand Up @@ -186,3 +186,5 @@ class GCodeQueue {
};

extern GCodeQueue queue;

extern const char G28_STR[];
1 change: 0 additions & 1 deletion Marlin/src/lcd/HD44780/marlinui_HD44780.cpp
Original file line number Diff line number Diff line change
Expand Up @@ -471,7 +471,6 @@ void MarlinUI::clear_lcd() { lcd.clear(); }
// Show the Marlin logo and short build version
// After a delay show the website URL
//
extern const char NUL_STR[];
logo_lines(NUL_STR);
CENTER_OR_SCROLL(SHORT_BUILD_VERSION, 1500);
CENTER_OR_SCROLL(MARLIN_WEBSITE_URL, 1500);
Expand Down
2 changes: 0 additions & 2 deletions Marlin/src/lcd/dogm/marlinui_DOGM.cpp
Original file line number Diff line number Diff line change
Expand Up @@ -544,8 +544,6 @@ void MarlinUI::clear_lcd() { } // Automatically cleared by Picture Loop

// Put Relevant Text on Display

extern const char X_LBL[], Y_LBL[], Z_LBL[];

// Show X and Y positions at top of screen
u8g.setColorIndex(1);
if (PAGE_UNDER(7)) {
Expand Down
1 change: 0 additions & 1 deletion Marlin/src/lcd/dogm/status_screen_DOGM.cpp
Original file line number Diff line number Diff line change
Expand Up @@ -703,7 +703,6 @@ void MarlinUI::draw_status_screen() {
lcd_put_u8str(estimation_x_pos, EXTRAS_BASELINE, estimation_string);
}
else if (elapsed_string[0]) {
extern const char E_LBL[];
lcd_put_u8str_P(PROGRESS_BAR_X, EXTRAS_BASELINE, E_LBL);
lcd_put_u8str(elapsed_x_pos, EXTRAS_BASELINE, elapsed_string);
}
Expand Down
2 changes: 0 additions & 2 deletions Marlin/src/lcd/extui/dgus_lcd.cpp
Original file line number Diff line number Diff line change
Expand Up @@ -35,8 +35,6 @@
#include "lib/dgus/DGUSDisplayDef.h"
#include "lib/dgus/DGUSScreenHandler.h"

extern const char NUL_STR[];

namespace ExtUI {

void onStartup() {
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -28,7 +28,7 @@

#include "../../../../libs/numtostr.h"
#include "../../../../module/motion.h" // for quickstop_stepper, A20 read printing speed, feedrate_percentage
#include "../../../../MarlinCore.h" // for disable_steppers, G28_STR
#include "../../../../MarlinCore.h" // for disable_steppers
#include "../../../../inc/MarlinConfig.h"

// command sending macro's with debugging capability
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -36,7 +36,6 @@ void FilamentRunoutScreen::onRedraw(draw_mode_t what) {
w.toggle( 2, GET_TEXT_F(MSG_RUNOUT_SENSOR), getFilamentRunoutEnabled());

#if HAS_FILAMENT_RUNOUT_DISTANCE
extern const char NUL_STR[];
w.heading(GET_TEXT_F(MSG_RUNOUT_DISTANCE_MM));
w.units(GET_TEXT_F(MSG_UNITS_MM));
w.precision(0);
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -120,7 +120,6 @@ void StressTestScreen::onIdle() {

if (!commandsInQueue()) {
if (!isPositionKnown()) {
extern const char G28_STR[];
injectCommands_P(G28_STR);
}
else {
Expand Down
2 changes: 0 additions & 2 deletions Marlin/src/lcd/extui/lib/mks_ui/draw_home.cpp
Original file line number Diff line number Diff line change
Expand Up @@ -31,8 +31,6 @@
#include "../../../../gcode/queue.h"
#include "../../../../inc/MarlinConfig.h"

extern const char G28_STR[];

extern lv_group_t *g;
static lv_obj_t *scr;

Expand Down
2 changes: 0 additions & 2 deletions Marlin/src/lcd/extui/lib/mks_ui/draw_manuaLevel.cpp
Original file line number Diff line number Diff line change
Expand Up @@ -29,8 +29,6 @@
#include "../../../../gcode/queue.h"
#include "../../../../inc/MarlinConfig.h"

extern const char G28_STR[];

extern lv_group_t *g;
static lv_obj_t *scr;

Expand Down
10 changes: 2 additions & 8 deletions Marlin/src/lcd/extui/lib/mks_ui/wifi_module.cpp
Original file line number Diff line number Diff line change
Expand Up @@ -21,15 +21,13 @@
*/
#include "../../../../inc/MarlinConfigPre.h"

#if HAS_TFT_LVGL_UI
#if BOTH(HAS_TFT_LVGL_UI, MKS_WIFI_MODULE)

#include "draw_ui.h"
#include "wifi_module.h"
#include "wifi_upload.h"
#include "SPI_TFT.h"

#if ENABLED(MKS_WIFI_MODULE)

#include "../../../../MarlinCore.h"
#include "../../../../module/temperature.h"
#include "../../../../gcode/queue.h"
Expand Down Expand Up @@ -459,7 +457,6 @@ int package_to_wifi(WIFI_RET_TYPE type, uint8_t *buf, int len) {
return 1;
}


#define SEND_OK_TO_WIFI send_to_wifi((uint8_t *)"ok\r\n", strlen("ok\r\n"))
int send_to_wifi(uint8_t *buf, int len) { return package_to_wifi(WIFI_TRANS_INF, buf, len); }

Expand Down Expand Up @@ -553,7 +550,6 @@ typedef struct {
uint8_t tail;
} ESP_PROTOC_FRAME;


static int cut_msg_head(uint8_t *msg, uint16_t msgLen, uint16_t cutLen) {
if (msgLen < cutLen) return 0;

Expand Down Expand Up @@ -1707,7 +1703,6 @@ void mks_esp_wifi_init() {
wifi_link_state = WIFI_NOT_CONFIG;
}


void mks_wifi_firmware_update() {
card.openFileRead((char *)ESP_FIRMWARE_FILE);

Expand Down Expand Up @@ -1826,5 +1821,4 @@ int readWifiBuf(int8_t *buf, int32_t len) {
return i;
}

#endif // MKS_WIFI_MODULE
#endif // HAS_TFT_LVGL_UI
#endif // HAS_TFT_LVGL_UI && MKS_WIFI_MODULE
2 changes: 1 addition & 1 deletion Marlin/src/lcd/marlinui.cpp
Original file line number Diff line number Diff line change
Expand Up @@ -1528,7 +1528,7 @@ void MarlinUI::update() {
void MarlinUI::resume_print() {
reset_status();
TERN_(PARK_HEAD_ON_PAUSE, wait_for_heatup = wait_for_user = false);
if (IS_SD_PAUSED()) queue.inject_P(M24_STR);
TERN_(SDSUPPORT, if (IS_SD_PAUSED()) queue.inject_P(M24_STR));
#ifdef ACTION_ON_RESUME
host_action_resume();
#endif
Expand Down
4 changes: 1 addition & 3 deletions Marlin/src/lcd/menu/menu_bed_corners.cpp
Original file line number Diff line number Diff line change
Expand Up @@ -66,8 +66,6 @@

static_assert(LEVEL_CORNERS_Z_HOP >= 0, "LEVEL_CORNERS_Z_HOP must be >= 0. Please update your configuration.");

extern const char G28_STR[];

#if HAS_LEVELING
static bool leveling_was_active = false;
#endif
Expand Down Expand Up @@ -205,7 +203,7 @@ static inline void _lcd_level_bed_corners_get_next_position() {
, []{ corner_probing_done = true; wait_for_probe = false; }
, []{ wait_for_probe = false; }
, GET_TEXT(MSG_LEVEL_CORNERS_RAISE)
, (const char*)nullptr, PSTR("")
, (const char*)nullptr, NUL_STR
);
}

Expand Down
2 changes: 0 additions & 2 deletions Marlin/src/lcd/menu/menu_configuration.cpp
Original file line number Diff line number Diff line change
Expand Up @@ -161,8 +161,6 @@ void menu_advanced_settings();
#include "../../module/motion.h"
#include "../../gcode/queue.h"

extern const char G28_STR[];

void menu_tool_offsets() {

auto _recalc_offsets = []{
Expand Down
1 change: 0 additions & 1 deletion Marlin/src/lcd/menu/menu_delta_calibrate.cpp
Original file line number Diff line number Diff line change
Expand Up @@ -82,7 +82,6 @@ void _man_probe_pt(const xy_pos_t &xy) {
}

void _lcd_delta_calibrate_home() {
extern const char G28_STR[];
queue.inject_P(G28_STR);
ui.goto_screen(_lcd_calibrate_homing);
}
Expand Down
Loading

0 comments on commit 7e395ea

Please sign in to comment.