Fix M118 parameters, with strict guideline
This commit is contained in:
parent
6718579ccf
commit
e6aba99f16
@ -25,8 +25,8 @@
|
|||||||
/**
|
/**
|
||||||
* M118: Display a message in the host console.
|
* M118: Display a message in the host console.
|
||||||
*
|
*
|
||||||
* A Append '// ' for an action command, as in OctoPrint
|
* A1 Append '// ' for an action command, as in OctoPrint
|
||||||
* E Have the host 'echo:' the text
|
* E1 Have the host 'echo:' the text
|
||||||
*/
|
*/
|
||||||
void GcodeSuite::M118() {
|
void GcodeSuite::M118() {
|
||||||
if (parser.boolval('E')) SERIAL_ECHO_START();
|
if (parser.boolval('E')) SERIAL_ECHO_START();
|
||||||
|
@ -155,7 +155,7 @@ void GCodeParser::parse(char *p) {
|
|||||||
#endif
|
#endif
|
||||||
|
|
||||||
// Only use string_arg for these M codes
|
// Only use string_arg for these M codes
|
||||||
if (letter == 'M') switch (codenum) { case 23: case 28: case 30: case 117: case 118: case 928: string_arg = p; return; default: break; }
|
if (letter == 'M') switch (codenum) { case 23: case 28: case 30: case 117: case 928: string_arg = p; return; default: break; }
|
||||||
|
|
||||||
#if ENABLED(DEBUG_GCODE_PARSER)
|
#if ENABLED(DEBUG_GCODE_PARSER)
|
||||||
const bool debug = codenum == 800;
|
const bool debug = codenum == 800;
|
||||||
@ -167,6 +167,7 @@ void GCodeParser::parse(char *p) {
|
|||||||
* Most codes ignore 'string_arg', but those that want a string will get the right pointer.
|
* Most codes ignore 'string_arg', but those that want a string will get the right pointer.
|
||||||
* The following loop assigns the first "parameter" having no numeric value to 'string_arg'.
|
* The following loop assigns the first "parameter" having no numeric value to 'string_arg'.
|
||||||
* This allows M0/M1 with expire time to work: "M0 S5 You Win!"
|
* This allows M0/M1 with expire time to work: "M0 S5 You Win!"
|
||||||
|
* For 'M118' you must use 'E1' and 'A1' rather than just 'E' or 'A'
|
||||||
*/
|
*/
|
||||||
string_arg = NULL;
|
string_arg = NULL;
|
||||||
while (char code = *p++) { // Get the next parameter. A NUL ends the loop
|
while (char code = *p++) { // Get the next parameter. A NUL ends the loop
|
||||||
|
Loading…
Reference in New Issue
Block a user