diff --git a/Marlin/src/Marlin.cpp b/Marlin/src/Marlin.cpp index 1d25ee8f068f9dfcaa7bebb1ad8afc9efb12fe9a..34a7f9ce1288f56e544278c2f0d0982798082fec 100644 --- a/Marlin/src/Marlin.cpp +++ b/Marlin/src/Marlin.cpp @@ -363,15 +363,13 @@ void suicide() { /** * Sensitive pin test for M42, M226 */ -static bool pin_is_protected(const int8_t pin) { +bool pin_is_protected(const int8_t pin) { static const int8_t sensitive_pins[] PROGMEM = SENSITIVE_PINS; for (uint8_t i = 0; i < COUNT(sensitive_pins); i++) if (pin == (int8_t)pgm_read_byte(&sensitive_pins[i])) return true; return false; } -#include "gcode/control/M42.h" - #if ENABLED(PINS_DEBUGGING) #include "gcode/config/M43.h" #endif diff --git a/Marlin/src/Marlin.h b/Marlin/src/Marlin.h index 7695f03e5b31e17a5f7d6be61b2869d6a23fe5d6..3918e38a1e652ddbc0da47b86c766c1ad6076115 100644 --- a/Marlin/src/Marlin.h +++ b/Marlin/src/Marlin.h @@ -228,4 +228,6 @@ extern volatile bool wait_for_heatup; void calculate_volumetric_multipliers(); +bool pin_is_protected(const int8_t pin); + #endif // __MARLIN_H__ diff --git a/Marlin/src/gcode/control/M42.h b/Marlin/src/gcode/control/M42.cpp similarity index 92% rename from Marlin/src/gcode/control/M42.h rename to Marlin/src/gcode/control/M42.cpp index ec559d691115adda184e17e81db5d770a9359321..44a1892ec3f60b94fc50c1a0ab72a896347230ad 100644 --- a/Marlin/src/gcode/control/M42.h +++ b/Marlin/src/gcode/control/M42.cpp @@ -20,13 +20,17 @@ * */ +#include "../gcode.h" +#include "../../Marlin.h" // for pin_is_protected +#include "../../inc/MarlinConfig.h" + /** * M42: Change pin status via GCode * * P<pin> Pin number (LED if omitted) * S<byte> Pin status from 0 - 255 */ -void gcode_M42() { +void GcodeSuite::M42() { if (!parser.seenval('S')) return; const byte pin_status = parser.value_byte(); diff --git a/Marlin/src/gcode/gcode.cpp b/Marlin/src/gcode/gcode.cpp index 8b886593ee61dfae93ec00b30ca6c75963adcfaf..547b03b242904b4671ef8f0ca8ebadf9c060c780 100644 --- a/Marlin/src/gcode/gcode.cpp +++ b/Marlin/src/gcode/gcode.cpp @@ -117,7 +117,6 @@ void GcodeSuite::dwell(millis_t time) { // Placeholders for non-migrated codes // extern void gcode_M18_M84(); -extern void gcode_M42(); extern void gcode_M43(); extern void gcode_M48(); extern void gcode_M75(); @@ -433,8 +432,7 @@ void GcodeSuite::process_next_command() { case 31: M31(); break; // M31: Report time since the start of SD print or last M109 - case 42: // M42: Change pin state - gcode_M42(); break; + case 42: M42(); break; // M42: Change pin state #if ENABLED(PINS_DEBUGGING) case 43: // M43: Read pin state