[2.0.x] Macro G-codes (#9365)
This commit is contained in:
parent
ccdbf20f60
commit
b60abc7c37
67 changed files with 806 additions and 5 deletions
|
@ -1691,6 +1691,18 @@
|
||||||
//#define VARIABLE_G0_FEEDRATE // The G0 feedrate is set by F in G0 motion mode
|
//#define VARIABLE_G0_FEEDRATE // The G0 feedrate is set by F in G0 motion mode
|
||||||
#endif
|
#endif
|
||||||
|
|
||||||
|
/**
|
||||||
|
* G-code Macros
|
||||||
|
*
|
||||||
|
* Add G-codes M810-M819 to define and run G-code macros.
|
||||||
|
* Macros are not saved to EEPROM.
|
||||||
|
*/
|
||||||
|
//#define GCODE_MACROS
|
||||||
|
#if ENABLED(GCODE_MACROS)
|
||||||
|
#define GCODE_MACROS_SLOTS 5 // Up to 10 may be used
|
||||||
|
#define GCODE_MACROS_SLOT_SIZE 50 // Maximum length of a single macro
|
||||||
|
#endif
|
||||||
|
|
||||||
/**
|
/**
|
||||||
* User-defined menu items that execute custom GCode
|
* User-defined menu items that execute custom GCode
|
||||||
*/
|
*/
|
||||||
|
|
|
@ -1691,6 +1691,18 @@
|
||||||
//#define VARIABLE_G0_FEEDRATE // The G0 feedrate is set by F in G0 motion mode
|
//#define VARIABLE_G0_FEEDRATE // The G0 feedrate is set by F in G0 motion mode
|
||||||
#endif
|
#endif
|
||||||
|
|
||||||
|
/**
|
||||||
|
* G-code Macros
|
||||||
|
*
|
||||||
|
* Add G-codes M810-M819 to define and run G-code macros.
|
||||||
|
* Macros are not saved to EEPROM.
|
||||||
|
*/
|
||||||
|
//#define GCODE_MACROS
|
||||||
|
#if ENABLED(GCODE_MACROS)
|
||||||
|
#define GCODE_MACROS_SLOTS 5 // Up to 10 may be used
|
||||||
|
#define GCODE_MACROS_SLOT_SIZE 50 // Maximum length of a single macro
|
||||||
|
#endif
|
||||||
|
|
||||||
/**
|
/**
|
||||||
* User-defined menu items that execute custom GCode
|
* User-defined menu items that execute custom GCode
|
||||||
*/
|
*/
|
||||||
|
|
|
@ -1690,6 +1690,18 @@
|
||||||
//#define VARIABLE_G0_FEEDRATE // The G0 feedrate is set by F in G0 motion mode
|
//#define VARIABLE_G0_FEEDRATE // The G0 feedrate is set by F in G0 motion mode
|
||||||
#endif
|
#endif
|
||||||
|
|
||||||
|
/**
|
||||||
|
* G-code Macros
|
||||||
|
*
|
||||||
|
* Add G-codes M810-M819 to define and run G-code macros.
|
||||||
|
* Macros are not saved to EEPROM.
|
||||||
|
*/
|
||||||
|
//#define GCODE_MACROS
|
||||||
|
#if ENABLED(GCODE_MACROS)
|
||||||
|
#define GCODE_MACROS_SLOTS 5 // Up to 10 may be used
|
||||||
|
#define GCODE_MACROS_SLOT_SIZE 50 // Maximum length of a single macro
|
||||||
|
#endif
|
||||||
|
|
||||||
/**
|
/**
|
||||||
* User-defined menu items that execute custom GCode
|
* User-defined menu items that execute custom GCode
|
||||||
*/
|
*/
|
||||||
|
|
|
@ -1690,6 +1690,18 @@
|
||||||
//#define VARIABLE_G0_FEEDRATE // The G0 feedrate is set by F in G0 motion mode
|
//#define VARIABLE_G0_FEEDRATE // The G0 feedrate is set by F in G0 motion mode
|
||||||
#endif
|
#endif
|
||||||
|
|
||||||
|
/**
|
||||||
|
* G-code Macros
|
||||||
|
*
|
||||||
|
* Add G-codes M810-M819 to define and run G-code macros.
|
||||||
|
* Macros are not saved to EEPROM.
|
||||||
|
*/
|
||||||
|
//#define GCODE_MACROS
|
||||||
|
#if ENABLED(GCODE_MACROS)
|
||||||
|
#define GCODE_MACROS_SLOTS 5 // Up to 10 may be used
|
||||||
|
#define GCODE_MACROS_SLOT_SIZE 50 // Maximum length of a single macro
|
||||||
|
#endif
|
||||||
|
|
||||||
/**
|
/**
|
||||||
* User-defined menu items that execute custom GCode
|
* User-defined menu items that execute custom GCode
|
||||||
*/
|
*/
|
||||||
|
|
|
@ -1690,6 +1690,18 @@
|
||||||
//#define VARIABLE_G0_FEEDRATE // The G0 feedrate is set by F in G0 motion mode
|
//#define VARIABLE_G0_FEEDRATE // The G0 feedrate is set by F in G0 motion mode
|
||||||
#endif
|
#endif
|
||||||
|
|
||||||
|
/**
|
||||||
|
* G-code Macros
|
||||||
|
*
|
||||||
|
* Add G-codes M810-M819 to define and run G-code macros.
|
||||||
|
* Macros are not saved to EEPROM.
|
||||||
|
*/
|
||||||
|
//#define GCODE_MACROS
|
||||||
|
#if ENABLED(GCODE_MACROS)
|
||||||
|
#define GCODE_MACROS_SLOTS 5 // Up to 10 may be used
|
||||||
|
#define GCODE_MACROS_SLOT_SIZE 50 // Maximum length of a single macro
|
||||||
|
#endif
|
||||||
|
|
||||||
/**
|
/**
|
||||||
* User-defined menu items that execute custom GCode
|
* User-defined menu items that execute custom GCode
|
||||||
*/
|
*/
|
||||||
|
|
|
@ -1689,6 +1689,18 @@
|
||||||
//#define VARIABLE_G0_FEEDRATE // The G0 feedrate is set by F in G0 motion mode
|
//#define VARIABLE_G0_FEEDRATE // The G0 feedrate is set by F in G0 motion mode
|
||||||
#endif
|
#endif
|
||||||
|
|
||||||
|
/**
|
||||||
|
* G-code Macros
|
||||||
|
*
|
||||||
|
* Add G-codes M810-M819 to define and run G-code macros.
|
||||||
|
* Macros are not saved to EEPROM.
|
||||||
|
*/
|
||||||
|
//#define GCODE_MACROS
|
||||||
|
#if ENABLED(GCODE_MACROS)
|
||||||
|
#define GCODE_MACROS_SLOTS 5 // Up to 10 may be used
|
||||||
|
#define GCODE_MACROS_SLOT_SIZE 50 // Maximum length of a single macro
|
||||||
|
#endif
|
||||||
|
|
||||||
/**
|
/**
|
||||||
* User-defined menu items that execute custom GCode
|
* User-defined menu items that execute custom GCode
|
||||||
*/
|
*/
|
||||||
|
|
|
@ -1690,6 +1690,18 @@
|
||||||
//#define VARIABLE_G0_FEEDRATE // The G0 feedrate is set by F in G0 motion mode
|
//#define VARIABLE_G0_FEEDRATE // The G0 feedrate is set by F in G0 motion mode
|
||||||
#endif
|
#endif
|
||||||
|
|
||||||
|
/**
|
||||||
|
* G-code Macros
|
||||||
|
*
|
||||||
|
* Add G-codes M810-M819 to define and run G-code macros.
|
||||||
|
* Macros are not saved to EEPROM.
|
||||||
|
*/
|
||||||
|
//#define GCODE_MACROS
|
||||||
|
#if ENABLED(GCODE_MACROS)
|
||||||
|
#define GCODE_MACROS_SLOTS 5 // Up to 10 may be used
|
||||||
|
#define GCODE_MACROS_SLOT_SIZE 50 // Maximum length of a single macro
|
||||||
|
#endif
|
||||||
|
|
||||||
/**
|
/**
|
||||||
* User-defined menu items that execute custom GCode
|
* User-defined menu items that execute custom GCode
|
||||||
*/
|
*/
|
||||||
|
|
|
@ -1664,6 +1664,18 @@
|
||||||
//#define VARIABLE_G0_FEEDRATE // The G0 feedrate is set by F in G0 motion mode
|
//#define VARIABLE_G0_FEEDRATE // The G0 feedrate is set by F in G0 motion mode
|
||||||
#endif
|
#endif
|
||||||
|
|
||||||
|
/**
|
||||||
|
* G-code Macros
|
||||||
|
*
|
||||||
|
* Add G-codes M810-M819 to define and run G-code macros.
|
||||||
|
* Macros are not saved to EEPROM.
|
||||||
|
*/
|
||||||
|
//#define GCODE_MACROS
|
||||||
|
#if ENABLED(GCODE_MACROS)
|
||||||
|
#define GCODE_MACROS_SLOTS 5 // Up to 10 may be used
|
||||||
|
#define GCODE_MACROS_SLOT_SIZE 50 // Maximum length of a single macro
|
||||||
|
#endif
|
||||||
|
|
||||||
/**
|
/**
|
||||||
* User-defined menu items that execute custom GCode
|
* User-defined menu items that execute custom GCode
|
||||||
*/
|
*/
|
||||||
|
|
|
@ -1689,6 +1689,18 @@
|
||||||
//#define VARIABLE_G0_FEEDRATE // The G0 feedrate is set by F in G0 motion mode
|
//#define VARIABLE_G0_FEEDRATE // The G0 feedrate is set by F in G0 motion mode
|
||||||
#endif
|
#endif
|
||||||
|
|
||||||
|
/**
|
||||||
|
* G-code Macros
|
||||||
|
*
|
||||||
|
* Add G-codes M810-M819 to define and run G-code macros.
|
||||||
|
* Macros are not saved to EEPROM.
|
||||||
|
*/
|
||||||
|
//#define GCODE_MACROS
|
||||||
|
#if ENABLED(GCODE_MACROS)
|
||||||
|
#define GCODE_MACROS_SLOTS 5 // Up to 10 may be used
|
||||||
|
#define GCODE_MACROS_SLOT_SIZE 50 // Maximum length of a single macro
|
||||||
|
#endif
|
||||||
|
|
||||||
/**
|
/**
|
||||||
* User-defined menu items that execute custom GCode
|
* User-defined menu items that execute custom GCode
|
||||||
*/
|
*/
|
||||||
|
|
|
@ -1690,6 +1690,18 @@
|
||||||
//#define VARIABLE_G0_FEEDRATE // The G0 feedrate is set by F in G0 motion mode
|
//#define VARIABLE_G0_FEEDRATE // The G0 feedrate is set by F in G0 motion mode
|
||||||
#endif
|
#endif
|
||||||
|
|
||||||
|
/**
|
||||||
|
* G-code Macros
|
||||||
|
*
|
||||||
|
* Add G-codes M810-M819 to define and run G-code macros.
|
||||||
|
* Macros are not saved to EEPROM.
|
||||||
|
*/
|
||||||
|
//#define GCODE_MACROS
|
||||||
|
#if ENABLED(GCODE_MACROS)
|
||||||
|
#define GCODE_MACROS_SLOTS 5 // Up to 10 may be used
|
||||||
|
#define GCODE_MACROS_SLOT_SIZE 50 // Maximum length of a single macro
|
||||||
|
#endif
|
||||||
|
|
||||||
/**
|
/**
|
||||||
* User-defined menu items that execute custom GCode
|
* User-defined menu items that execute custom GCode
|
||||||
*/
|
*/
|
||||||
|
|
|
@ -1690,6 +1690,18 @@
|
||||||
//#define VARIABLE_G0_FEEDRATE // The G0 feedrate is set by F in G0 motion mode
|
//#define VARIABLE_G0_FEEDRATE // The G0 feedrate is set by F in G0 motion mode
|
||||||
#endif
|
#endif
|
||||||
|
|
||||||
|
/**
|
||||||
|
* G-code Macros
|
||||||
|
*
|
||||||
|
* Add G-codes M810-M819 to define and run G-code macros.
|
||||||
|
* Macros are not saved to EEPROM.
|
||||||
|
*/
|
||||||
|
//#define GCODE_MACROS
|
||||||
|
#if ENABLED(GCODE_MACROS)
|
||||||
|
#define GCODE_MACROS_SLOTS 5 // Up to 10 may be used
|
||||||
|
#define GCODE_MACROS_SLOT_SIZE 50 // Maximum length of a single macro
|
||||||
|
#endif
|
||||||
|
|
||||||
/**
|
/**
|
||||||
* User-defined menu items that execute custom GCode
|
* User-defined menu items that execute custom GCode
|
||||||
*/
|
*/
|
||||||
|
|
|
@ -1697,6 +1697,19 @@
|
||||||
#ifdef G0_FEEDRATE
|
#ifdef G0_FEEDRATE
|
||||||
//#define VARIABLE_G0_FEEDRATE // The G0 feedrate is set by F in G0 motion mode
|
//#define VARIABLE_G0_FEEDRATE // The G0 feedrate is set by F in G0 motion mode
|
||||||
#endif
|
#endif
|
||||||
|
|
||||||
|
/**
|
||||||
|
* G-code Macros
|
||||||
|
*
|
||||||
|
* Add G-codes M810-M819 to define and run G-code macros.
|
||||||
|
* Macros are not saved to EEPROM.
|
||||||
|
*/
|
||||||
|
//#define GCODE_MACROS
|
||||||
|
#if ENABLED(GCODE_MACROS)
|
||||||
|
#define GCODE_MACROS_SLOTS 5 // Up to 10 may be used
|
||||||
|
#define GCODE_MACROS_SLOT_SIZE 50 // Maximum length of a single macro
|
||||||
|
#endif
|
||||||
|
|
||||||
/**
|
/**
|
||||||
* User-defined menu items that execute custom GCode
|
* User-defined menu items that execute custom GCode
|
||||||
*/
|
*/
|
||||||
|
|
|
@ -1690,6 +1690,18 @@
|
||||||
//#define VARIABLE_G0_FEEDRATE // The G0 feedrate is set by F in G0 motion mode
|
//#define VARIABLE_G0_FEEDRATE // The G0 feedrate is set by F in G0 motion mode
|
||||||
#endif
|
#endif
|
||||||
|
|
||||||
|
/**
|
||||||
|
* G-code Macros
|
||||||
|
*
|
||||||
|
* Add G-codes M810-M819 to define and run G-code macros.
|
||||||
|
* Macros are not saved to EEPROM.
|
||||||
|
*/
|
||||||
|
//#define GCODE_MACROS
|
||||||
|
#if ENABLED(GCODE_MACROS)
|
||||||
|
#define GCODE_MACROS_SLOTS 5 // Up to 10 may be used
|
||||||
|
#define GCODE_MACROS_SLOT_SIZE 50 // Maximum length of a single macro
|
||||||
|
#endif
|
||||||
|
|
||||||
/**
|
/**
|
||||||
* User-defined menu items that execute custom GCode
|
* User-defined menu items that execute custom GCode
|
||||||
*/
|
*/
|
||||||
|
|
|
@ -1690,6 +1690,18 @@
|
||||||
//#define VARIABLE_G0_FEEDRATE // The G0 feedrate is set by F in G0 motion mode
|
//#define VARIABLE_G0_FEEDRATE // The G0 feedrate is set by F in G0 motion mode
|
||||||
#endif
|
#endif
|
||||||
|
|
||||||
|
/**
|
||||||
|
* G-code Macros
|
||||||
|
*
|
||||||
|
* Add G-codes M810-M819 to define and run G-code macros.
|
||||||
|
* Macros are not saved to EEPROM.
|
||||||
|
*/
|
||||||
|
//#define GCODE_MACROS
|
||||||
|
#if ENABLED(GCODE_MACROS)
|
||||||
|
#define GCODE_MACROS_SLOTS 5 // Up to 10 may be used
|
||||||
|
#define GCODE_MACROS_SLOT_SIZE 50 // Maximum length of a single macro
|
||||||
|
#endif
|
||||||
|
|
||||||
/**
|
/**
|
||||||
* User-defined menu items that execute custom GCode
|
* User-defined menu items that execute custom GCode
|
||||||
*/
|
*/
|
||||||
|
|
|
@ -1693,6 +1693,18 @@
|
||||||
//#define VARIABLE_G0_FEEDRATE // The G0 feedrate is set by F in G0 motion mode
|
//#define VARIABLE_G0_FEEDRATE // The G0 feedrate is set by F in G0 motion mode
|
||||||
#endif
|
#endif
|
||||||
|
|
||||||
|
/**
|
||||||
|
* G-code Macros
|
||||||
|
*
|
||||||
|
* Add G-codes M810-M819 to define and run G-code macros.
|
||||||
|
* Macros are not saved to EEPROM.
|
||||||
|
*/
|
||||||
|
//#define GCODE_MACROS
|
||||||
|
#if ENABLED(GCODE_MACROS)
|
||||||
|
#define GCODE_MACROS_SLOTS 5 // Up to 10 may be used
|
||||||
|
#define GCODE_MACROS_SLOT_SIZE 50 // Maximum length of a single macro
|
||||||
|
#endif
|
||||||
|
|
||||||
/**
|
/**
|
||||||
* User-defined menu items that execute custom GCode
|
* User-defined menu items that execute custom GCode
|
||||||
*/
|
*/
|
||||||
|
|
|
@ -1690,6 +1690,18 @@
|
||||||
//#define VARIABLE_G0_FEEDRATE // The G0 feedrate is set by F in G0 motion mode
|
//#define VARIABLE_G0_FEEDRATE // The G0 feedrate is set by F in G0 motion mode
|
||||||
#endif
|
#endif
|
||||||
|
|
||||||
|
/**
|
||||||
|
* G-code Macros
|
||||||
|
*
|
||||||
|
* Add G-codes M810-M819 to define and run G-code macros.
|
||||||
|
* Macros are not saved to EEPROM.
|
||||||
|
*/
|
||||||
|
//#define GCODE_MACROS
|
||||||
|
#if ENABLED(GCODE_MACROS)
|
||||||
|
#define GCODE_MACROS_SLOTS 5 // Up to 10 may be used
|
||||||
|
#define GCODE_MACROS_SLOT_SIZE 50 // Maximum length of a single macro
|
||||||
|
#endif
|
||||||
|
|
||||||
/**
|
/**
|
||||||
* User-defined menu items that execute custom GCode
|
* User-defined menu items that execute custom GCode
|
||||||
*/
|
*/
|
||||||
|
|
|
@ -1690,6 +1690,18 @@
|
||||||
//#define VARIABLE_G0_FEEDRATE // The G0 feedrate is set by F in G0 motion mode
|
//#define VARIABLE_G0_FEEDRATE // The G0 feedrate is set by F in G0 motion mode
|
||||||
#endif
|
#endif
|
||||||
|
|
||||||
|
/**
|
||||||
|
* G-code Macros
|
||||||
|
*
|
||||||
|
* Add G-codes M810-M819 to define and run G-code macros.
|
||||||
|
* Macros are not saved to EEPROM.
|
||||||
|
*/
|
||||||
|
//#define GCODE_MACROS
|
||||||
|
#if ENABLED(GCODE_MACROS)
|
||||||
|
#define GCODE_MACROS_SLOTS 5 // Up to 10 may be used
|
||||||
|
#define GCODE_MACROS_SLOT_SIZE 50 // Maximum length of a single macro
|
||||||
|
#endif
|
||||||
|
|
||||||
/**
|
/**
|
||||||
* User-defined menu items that execute custom GCode
|
* User-defined menu items that execute custom GCode
|
||||||
*/
|
*/
|
||||||
|
|
|
@ -1690,6 +1690,18 @@
|
||||||
//#define VARIABLE_G0_FEEDRATE // The G0 feedrate is set by F in G0 motion mode
|
//#define VARIABLE_G0_FEEDRATE // The G0 feedrate is set by F in G0 motion mode
|
||||||
#endif
|
#endif
|
||||||
|
|
||||||
|
/**
|
||||||
|
* G-code Macros
|
||||||
|
*
|
||||||
|
* Add G-codes M810-M819 to define and run G-code macros.
|
||||||
|
* Macros are not saved to EEPROM.
|
||||||
|
*/
|
||||||
|
//#define GCODE_MACROS
|
||||||
|
#if ENABLED(GCODE_MACROS)
|
||||||
|
#define GCODE_MACROS_SLOTS 5 // Up to 10 may be used
|
||||||
|
#define GCODE_MACROS_SLOT_SIZE 50 // Maximum length of a single macro
|
||||||
|
#endif
|
||||||
|
|
||||||
/**
|
/**
|
||||||
* User-defined menu items that execute custom GCode
|
* User-defined menu items that execute custom GCode
|
||||||
*/
|
*/
|
||||||
|
|
|
@ -1690,6 +1690,18 @@
|
||||||
//#define VARIABLE_G0_FEEDRATE // The G0 feedrate is set by F in G0 motion mode
|
//#define VARIABLE_G0_FEEDRATE // The G0 feedrate is set by F in G0 motion mode
|
||||||
#endif
|
#endif
|
||||||
|
|
||||||
|
/**
|
||||||
|
* G-code Macros
|
||||||
|
*
|
||||||
|
* Add G-codes M810-M819 to define and run G-code macros.
|
||||||
|
* Macros are not saved to EEPROM.
|
||||||
|
*/
|
||||||
|
//#define GCODE_MACROS
|
||||||
|
#if ENABLED(GCODE_MACROS)
|
||||||
|
#define GCODE_MACROS_SLOTS 5 // Up to 10 may be used
|
||||||
|
#define GCODE_MACROS_SLOT_SIZE 50 // Maximum length of a single macro
|
||||||
|
#endif
|
||||||
|
|
||||||
/**
|
/**
|
||||||
* User-defined menu items that execute custom GCode
|
* User-defined menu items that execute custom GCode
|
||||||
*/
|
*/
|
||||||
|
|
|
@ -1690,6 +1690,18 @@
|
||||||
//#define VARIABLE_G0_FEEDRATE // The G0 feedrate is set by F in G0 motion mode
|
//#define VARIABLE_G0_FEEDRATE // The G0 feedrate is set by F in G0 motion mode
|
||||||
#endif
|
#endif
|
||||||
|
|
||||||
|
/**
|
||||||
|
* G-code Macros
|
||||||
|
*
|
||||||
|
* Add G-codes M810-M819 to define and run G-code macros.
|
||||||
|
* Macros are not saved to EEPROM.
|
||||||
|
*/
|
||||||
|
//#define GCODE_MACROS
|
||||||
|
#if ENABLED(GCODE_MACROS)
|
||||||
|
#define GCODE_MACROS_SLOTS 5 // Up to 10 may be used
|
||||||
|
#define GCODE_MACROS_SLOT_SIZE 50 // Maximum length of a single macro
|
||||||
|
#endif
|
||||||
|
|
||||||
/**
|
/**
|
||||||
* User-defined menu items that execute custom GCode
|
* User-defined menu items that execute custom GCode
|
||||||
*/
|
*/
|
||||||
|
|
|
@ -1690,6 +1690,18 @@
|
||||||
//#define VARIABLE_G0_FEEDRATE // The G0 feedrate is set by F in G0 motion mode
|
//#define VARIABLE_G0_FEEDRATE // The G0 feedrate is set by F in G0 motion mode
|
||||||
#endif
|
#endif
|
||||||
|
|
||||||
|
/**
|
||||||
|
* G-code Macros
|
||||||
|
*
|
||||||
|
* Add G-codes M810-M819 to define and run G-code macros.
|
||||||
|
* Macros are not saved to EEPROM.
|
||||||
|
*/
|
||||||
|
//#define GCODE_MACROS
|
||||||
|
#if ENABLED(GCODE_MACROS)
|
||||||
|
#define GCODE_MACROS_SLOTS 5 // Up to 10 may be used
|
||||||
|
#define GCODE_MACROS_SLOT_SIZE 50 // Maximum length of a single macro
|
||||||
|
#endif
|
||||||
|
|
||||||
/**
|
/**
|
||||||
* User-defined menu items that execute custom GCode
|
* User-defined menu items that execute custom GCode
|
||||||
*/
|
*/
|
||||||
|
|
|
@ -1690,6 +1690,18 @@
|
||||||
//#define VARIABLE_G0_FEEDRATE // The G0 feedrate is set by F in G0 motion mode
|
//#define VARIABLE_G0_FEEDRATE // The G0 feedrate is set by F in G0 motion mode
|
||||||
#endif
|
#endif
|
||||||
|
|
||||||
|
/**
|
||||||
|
* G-code Macros
|
||||||
|
*
|
||||||
|
* Add G-codes M810-M819 to define and run G-code macros.
|
||||||
|
* Macros are not saved to EEPROM.
|
||||||
|
*/
|
||||||
|
//#define GCODE_MACROS
|
||||||
|
#if ENABLED(GCODE_MACROS)
|
||||||
|
#define GCODE_MACROS_SLOTS 5 // Up to 10 may be used
|
||||||
|
#define GCODE_MACROS_SLOT_SIZE 50 // Maximum length of a single macro
|
||||||
|
#endif
|
||||||
|
|
||||||
/**
|
/**
|
||||||
* User-defined menu items that execute custom GCode
|
* User-defined menu items that execute custom GCode
|
||||||
*/
|
*/
|
||||||
|
|
|
@ -1690,6 +1690,18 @@
|
||||||
//#define VARIABLE_G0_FEEDRATE // The G0 feedrate is set by F in G0 motion mode
|
//#define VARIABLE_G0_FEEDRATE // The G0 feedrate is set by F in G0 motion mode
|
||||||
#endif
|
#endif
|
||||||
|
|
||||||
|
/**
|
||||||
|
* G-code Macros
|
||||||
|
*
|
||||||
|
* Add G-codes M810-M819 to define and run G-code macros.
|
||||||
|
* Macros are not saved to EEPROM.
|
||||||
|
*/
|
||||||
|
//#define GCODE_MACROS
|
||||||
|
#if ENABLED(GCODE_MACROS)
|
||||||
|
#define GCODE_MACROS_SLOTS 5 // Up to 10 may be used
|
||||||
|
#define GCODE_MACROS_SLOT_SIZE 50 // Maximum length of a single macro
|
||||||
|
#endif
|
||||||
|
|
||||||
/**
|
/**
|
||||||
* User-defined menu items that execute custom GCode
|
* User-defined menu items that execute custom GCode
|
||||||
*/
|
*/
|
||||||
|
|
|
@ -1690,6 +1690,18 @@
|
||||||
//#define VARIABLE_G0_FEEDRATE // The G0 feedrate is set by F in G0 motion mode
|
//#define VARIABLE_G0_FEEDRATE // The G0 feedrate is set by F in G0 motion mode
|
||||||
#endif
|
#endif
|
||||||
|
|
||||||
|
/**
|
||||||
|
* G-code Macros
|
||||||
|
*
|
||||||
|
* Add G-codes M810-M819 to define and run G-code macros.
|
||||||
|
* Macros are not saved to EEPROM.
|
||||||
|
*/
|
||||||
|
//#define GCODE_MACROS
|
||||||
|
#if ENABLED(GCODE_MACROS)
|
||||||
|
#define GCODE_MACROS_SLOTS 5 // Up to 10 may be used
|
||||||
|
#define GCODE_MACROS_SLOT_SIZE 50 // Maximum length of a single macro
|
||||||
|
#endif
|
||||||
|
|
||||||
/**
|
/**
|
||||||
* User-defined menu items that execute custom GCode
|
* User-defined menu items that execute custom GCode
|
||||||
*/
|
*/
|
||||||
|
|
|
@ -1692,6 +1692,18 @@
|
||||||
//#define VARIABLE_G0_FEEDRATE // The G0 feedrate is set by F in G0 motion mode
|
//#define VARIABLE_G0_FEEDRATE // The G0 feedrate is set by F in G0 motion mode
|
||||||
#endif
|
#endif
|
||||||
|
|
||||||
|
/**
|
||||||
|
* G-code Macros
|
||||||
|
*
|
||||||
|
* Add G-codes M810-M819 to define and run G-code macros.
|
||||||
|
* Macros are not saved to EEPROM.
|
||||||
|
*/
|
||||||
|
//#define GCODE_MACROS
|
||||||
|
#if ENABLED(GCODE_MACROS)
|
||||||
|
#define GCODE_MACROS_SLOTS 5 // Up to 10 may be used
|
||||||
|
#define GCODE_MACROS_SLOT_SIZE 50 // Maximum length of a single macro
|
||||||
|
#endif
|
||||||
|
|
||||||
/**
|
/**
|
||||||
* User-defined menu items that execute custom GCode
|
* User-defined menu items that execute custom GCode
|
||||||
*/
|
*/
|
||||||
|
|
|
@ -1694,6 +1694,18 @@
|
||||||
//#define VARIABLE_G0_FEEDRATE // The G0 feedrate is set by F in G0 motion mode
|
//#define VARIABLE_G0_FEEDRATE // The G0 feedrate is set by F in G0 motion mode
|
||||||
#endif
|
#endif
|
||||||
|
|
||||||
|
/**
|
||||||
|
* G-code Macros
|
||||||
|
*
|
||||||
|
* Add G-codes M810-M819 to define and run G-code macros.
|
||||||
|
* Macros are not saved to EEPROM.
|
||||||
|
*/
|
||||||
|
//#define GCODE_MACROS
|
||||||
|
#if ENABLED(GCODE_MACROS)
|
||||||
|
#define GCODE_MACROS_SLOTS 5 // Up to 10 may be used
|
||||||
|
#define GCODE_MACROS_SLOT_SIZE 50 // Maximum length of a single macro
|
||||||
|
#endif
|
||||||
|
|
||||||
/**
|
/**
|
||||||
* User-defined menu items that execute custom GCode
|
* User-defined menu items that execute custom GCode
|
||||||
*/
|
*/
|
||||||
|
|
|
@ -1695,6 +1695,18 @@
|
||||||
//#define VARIABLE_G0_FEEDRATE // The G0 feedrate is set by F in G0 motion mode
|
//#define VARIABLE_G0_FEEDRATE // The G0 feedrate is set by F in G0 motion mode
|
||||||
#endif
|
#endif
|
||||||
|
|
||||||
|
/**
|
||||||
|
* G-code Macros
|
||||||
|
*
|
||||||
|
* Add G-codes M810-M819 to define and run G-code macros.
|
||||||
|
* Macros are not saved to EEPROM.
|
||||||
|
*/
|
||||||
|
//#define GCODE_MACROS
|
||||||
|
#if ENABLED(GCODE_MACROS)
|
||||||
|
#define GCODE_MACROS_SLOTS 5 // Up to 10 may be used
|
||||||
|
#define GCODE_MACROS_SLOT_SIZE 50 // Maximum length of a single macro
|
||||||
|
#endif
|
||||||
|
|
||||||
/**
|
/**
|
||||||
* User-defined menu items that execute custom GCode
|
* User-defined menu items that execute custom GCode
|
||||||
*/
|
*/
|
||||||
|
|
|
@ -1676,6 +1676,18 @@
|
||||||
*/
|
*/
|
||||||
#define FASTER_GCODE_PARSER
|
#define FASTER_GCODE_PARSER
|
||||||
|
|
||||||
|
/**
|
||||||
|
* G-code Macros
|
||||||
|
*
|
||||||
|
* Add G-codes M810-M819 to define and run G-code macros.
|
||||||
|
* Macros are not saved to EEPROM.
|
||||||
|
*/
|
||||||
|
//#define GCODE_MACROS
|
||||||
|
#if ENABLED(GCODE_MACROS)
|
||||||
|
#define GCODE_MACROS_SLOTS 5 // Up to 10 may be used
|
||||||
|
#define GCODE_MACROS_SLOT_SIZE 50 // Maximum length of a single macro
|
||||||
|
#endif
|
||||||
|
|
||||||
/**
|
/**
|
||||||
* User-defined menu items that execute custom GCode
|
* User-defined menu items that execute custom GCode
|
||||||
*/
|
*/
|
||||||
|
|
|
@ -1690,6 +1690,18 @@
|
||||||
//#define VARIABLE_G0_FEEDRATE // The G0 feedrate is set by F in G0 motion mode
|
//#define VARIABLE_G0_FEEDRATE // The G0 feedrate is set by F in G0 motion mode
|
||||||
#endif
|
#endif
|
||||||
|
|
||||||
|
/**
|
||||||
|
* G-code Macros
|
||||||
|
*
|
||||||
|
* Add G-codes M810-M819 to define and run G-code macros.
|
||||||
|
* Macros are not saved to EEPROM.
|
||||||
|
*/
|
||||||
|
//#define GCODE_MACROS
|
||||||
|
#if ENABLED(GCODE_MACROS)
|
||||||
|
#define GCODE_MACROS_SLOTS 5 // Up to 10 may be used
|
||||||
|
#define GCODE_MACROS_SLOT_SIZE 50 // Maximum length of a single macro
|
||||||
|
#endif
|
||||||
|
|
||||||
/**
|
/**
|
||||||
* User-defined menu items that execute custom GCode
|
* User-defined menu items that execute custom GCode
|
||||||
*/
|
*/
|
||||||
|
|
|
@ -1690,6 +1690,18 @@
|
||||||
//#define VARIABLE_G0_FEEDRATE // The G0 feedrate is set by F in G0 motion mode
|
//#define VARIABLE_G0_FEEDRATE // The G0 feedrate is set by F in G0 motion mode
|
||||||
#endif
|
#endif
|
||||||
|
|
||||||
|
/**
|
||||||
|
* G-code Macros
|
||||||
|
*
|
||||||
|
* Add G-codes M810-M819 to define and run G-code macros.
|
||||||
|
* Macros are not saved to EEPROM.
|
||||||
|
*/
|
||||||
|
//#define GCODE_MACROS
|
||||||
|
#if ENABLED(GCODE_MACROS)
|
||||||
|
#define GCODE_MACROS_SLOTS 5 // Up to 10 may be used
|
||||||
|
#define GCODE_MACROS_SLOT_SIZE 50 // Maximum length of a single macro
|
||||||
|
#endif
|
||||||
|
|
||||||
/**
|
/**
|
||||||
* User-defined menu items that execute custom GCode
|
* User-defined menu items that execute custom GCode
|
||||||
*/
|
*/
|
||||||
|
|
|
@ -1690,6 +1690,18 @@
|
||||||
//#define VARIABLE_G0_FEEDRATE // The G0 feedrate is set by F in G0 motion mode
|
//#define VARIABLE_G0_FEEDRATE // The G0 feedrate is set by F in G0 motion mode
|
||||||
#endif
|
#endif
|
||||||
|
|
||||||
|
/**
|
||||||
|
* G-code Macros
|
||||||
|
*
|
||||||
|
* Add G-codes M810-M819 to define and run G-code macros.
|
||||||
|
* Macros are not saved to EEPROM.
|
||||||
|
*/
|
||||||
|
//#define GCODE_MACROS
|
||||||
|
#if ENABLED(GCODE_MACROS)
|
||||||
|
#define GCODE_MACROS_SLOTS 5 // Up to 10 may be used
|
||||||
|
#define GCODE_MACROS_SLOT_SIZE 50 // Maximum length of a single macro
|
||||||
|
#endif
|
||||||
|
|
||||||
/**
|
/**
|
||||||
* User-defined menu items that execute custom GCode
|
* User-defined menu items that execute custom GCode
|
||||||
*/
|
*/
|
||||||
|
|
|
@ -1690,6 +1690,18 @@
|
||||||
//#define VARIABLE_G0_FEEDRATE // The G0 feedrate is set by F in G0 motion mode
|
//#define VARIABLE_G0_FEEDRATE // The G0 feedrate is set by F in G0 motion mode
|
||||||
#endif
|
#endif
|
||||||
|
|
||||||
|
/**
|
||||||
|
* G-code Macros
|
||||||
|
*
|
||||||
|
* Add G-codes M810-M819 to define and run G-code macros.
|
||||||
|
* Macros are not saved to EEPROM.
|
||||||
|
*/
|
||||||
|
//#define GCODE_MACROS
|
||||||
|
#if ENABLED(GCODE_MACROS)
|
||||||
|
#define GCODE_MACROS_SLOTS 5 // Up to 10 may be used
|
||||||
|
#define GCODE_MACROS_SLOT_SIZE 50 // Maximum length of a single macro
|
||||||
|
#endif
|
||||||
|
|
||||||
/**
|
/**
|
||||||
* User-defined menu items that execute custom GCode
|
* User-defined menu items that execute custom GCode
|
||||||
*/
|
*/
|
||||||
|
|
|
@ -1690,6 +1690,18 @@
|
||||||
//#define VARIABLE_G0_FEEDRATE // The G0 feedrate is set by F in G0 motion mode
|
//#define VARIABLE_G0_FEEDRATE // The G0 feedrate is set by F in G0 motion mode
|
||||||
#endif
|
#endif
|
||||||
|
|
||||||
|
/**
|
||||||
|
* G-code Macros
|
||||||
|
*
|
||||||
|
* Add G-codes M810-M819 to define and run G-code macros.
|
||||||
|
* Macros are not saved to EEPROM.
|
||||||
|
*/
|
||||||
|
//#define GCODE_MACROS
|
||||||
|
#if ENABLED(GCODE_MACROS)
|
||||||
|
#define GCODE_MACROS_SLOTS 5 // Up to 10 may be used
|
||||||
|
#define GCODE_MACROS_SLOT_SIZE 50 // Maximum length of a single macro
|
||||||
|
#endif
|
||||||
|
|
||||||
/**
|
/**
|
||||||
* User-defined menu items that execute custom GCode
|
* User-defined menu items that execute custom GCode
|
||||||
*/
|
*/
|
||||||
|
|
|
@ -1690,6 +1690,18 @@
|
||||||
//#define VARIABLE_G0_FEEDRATE // The G0 feedrate is set by F in G0 motion mode
|
//#define VARIABLE_G0_FEEDRATE // The G0 feedrate is set by F in G0 motion mode
|
||||||
#endif
|
#endif
|
||||||
|
|
||||||
|
/**
|
||||||
|
* G-code Macros
|
||||||
|
*
|
||||||
|
* Add G-codes M810-M819 to define and run G-code macros.
|
||||||
|
* Macros are not saved to EEPROM.
|
||||||
|
*/
|
||||||
|
//#define GCODE_MACROS
|
||||||
|
#if ENABLED(GCODE_MACROS)
|
||||||
|
#define GCODE_MACROS_SLOTS 5 // Up to 10 may be used
|
||||||
|
#define GCODE_MACROS_SLOT_SIZE 50 // Maximum length of a single macro
|
||||||
|
#endif
|
||||||
|
|
||||||
/**
|
/**
|
||||||
* User-defined menu items that execute custom GCode
|
* User-defined menu items that execute custom GCode
|
||||||
*/
|
*/
|
||||||
|
|
|
@ -1690,6 +1690,18 @@
|
||||||
//#define VARIABLE_G0_FEEDRATE // The G0 feedrate is set by F in G0 motion mode
|
//#define VARIABLE_G0_FEEDRATE // The G0 feedrate is set by F in G0 motion mode
|
||||||
#endif
|
#endif
|
||||||
|
|
||||||
|
/**
|
||||||
|
* G-code Macros
|
||||||
|
*
|
||||||
|
* Add G-codes M810-M819 to define and run G-code macros.
|
||||||
|
* Macros are not saved to EEPROM.
|
||||||
|
*/
|
||||||
|
//#define GCODE_MACROS
|
||||||
|
#if ENABLED(GCODE_MACROS)
|
||||||
|
#define GCODE_MACROS_SLOTS 5 // Up to 10 may be used
|
||||||
|
#define GCODE_MACROS_SLOT_SIZE 50 // Maximum length of a single macro
|
||||||
|
#endif
|
||||||
|
|
||||||
/**
|
/**
|
||||||
* User-defined menu items that execute custom GCode
|
* User-defined menu items that execute custom GCode
|
||||||
*/
|
*/
|
||||||
|
|
|
@ -1690,6 +1690,18 @@
|
||||||
//#define VARIABLE_G0_FEEDRATE // The G0 feedrate is set by F in G0 motion mode
|
//#define VARIABLE_G0_FEEDRATE // The G0 feedrate is set by F in G0 motion mode
|
||||||
#endif
|
#endif
|
||||||
|
|
||||||
|
/**
|
||||||
|
* G-code Macros
|
||||||
|
*
|
||||||
|
* Add G-codes M810-M819 to define and run G-code macros.
|
||||||
|
* Macros are not saved to EEPROM.
|
||||||
|
*/
|
||||||
|
//#define GCODE_MACROS
|
||||||
|
#if ENABLED(GCODE_MACROS)
|
||||||
|
#define GCODE_MACROS_SLOTS 5 // Up to 10 may be used
|
||||||
|
#define GCODE_MACROS_SLOT_SIZE 50 // Maximum length of a single macro
|
||||||
|
#endif
|
||||||
|
|
||||||
/**
|
/**
|
||||||
* User-defined menu items that execute custom GCode
|
* User-defined menu items that execute custom GCode
|
||||||
*/
|
*/
|
||||||
|
|
|
@ -1698,6 +1698,18 @@
|
||||||
//#define VARIABLE_G0_FEEDRATE // The G0 feedrate is set by F in G0 motion mode
|
//#define VARIABLE_G0_FEEDRATE // The G0 feedrate is set by F in G0 motion mode
|
||||||
#endif
|
#endif
|
||||||
|
|
||||||
|
/**
|
||||||
|
* G-code Macros
|
||||||
|
*
|
||||||
|
* Add G-codes M810-M819 to define and run G-code macros.
|
||||||
|
* Macros are not saved to EEPROM.
|
||||||
|
*/
|
||||||
|
//#define GCODE_MACROS
|
||||||
|
#if ENABLED(GCODE_MACROS)
|
||||||
|
#define GCODE_MACROS_SLOTS 5 // Up to 10 may be used
|
||||||
|
#define GCODE_MACROS_SLOT_SIZE 50 // Maximum length of a single macro
|
||||||
|
#endif
|
||||||
|
|
||||||
/**
|
/**
|
||||||
* User-defined menu items that execute custom GCode
|
* User-defined menu items that execute custom GCode
|
||||||
*/
|
*/
|
||||||
|
|
|
@ -1690,6 +1690,18 @@
|
||||||
//#define VARIABLE_G0_FEEDRATE // The G0 feedrate is set by F in G0 motion mode
|
//#define VARIABLE_G0_FEEDRATE // The G0 feedrate is set by F in G0 motion mode
|
||||||
#endif
|
#endif
|
||||||
|
|
||||||
|
/**
|
||||||
|
* G-code Macros
|
||||||
|
*
|
||||||
|
* Add G-codes M810-M819 to define and run G-code macros.
|
||||||
|
* Macros are not saved to EEPROM.
|
||||||
|
*/
|
||||||
|
//#define GCODE_MACROS
|
||||||
|
#if ENABLED(GCODE_MACROS)
|
||||||
|
#define GCODE_MACROS_SLOTS 5 // Up to 10 may be used
|
||||||
|
#define GCODE_MACROS_SLOT_SIZE 50 // Maximum length of a single macro
|
||||||
|
#endif
|
||||||
|
|
||||||
/**
|
/**
|
||||||
* User-defined menu items that execute custom GCode
|
* User-defined menu items that execute custom GCode
|
||||||
*/
|
*/
|
||||||
|
|
|
@ -1690,6 +1690,18 @@
|
||||||
//#define VARIABLE_G0_FEEDRATE // The G0 feedrate is set by F in G0 motion mode
|
//#define VARIABLE_G0_FEEDRATE // The G0 feedrate is set by F in G0 motion mode
|
||||||
#endif
|
#endif
|
||||||
|
|
||||||
|
/**
|
||||||
|
* G-code Macros
|
||||||
|
*
|
||||||
|
* Add G-codes M810-M819 to define and run G-code macros.
|
||||||
|
* Macros are not saved to EEPROM.
|
||||||
|
*/
|
||||||
|
//#define GCODE_MACROS
|
||||||
|
#if ENABLED(GCODE_MACROS)
|
||||||
|
#define GCODE_MACROS_SLOTS 5 // Up to 10 may be used
|
||||||
|
#define GCODE_MACROS_SLOT_SIZE 50 // Maximum length of a single macro
|
||||||
|
#endif
|
||||||
|
|
||||||
/**
|
/**
|
||||||
* User-defined menu items that execute custom GCode
|
* User-defined menu items that execute custom GCode
|
||||||
*/
|
*/
|
||||||
|
|
|
@ -1690,6 +1690,18 @@
|
||||||
//#define VARIABLE_G0_FEEDRATE // The G0 feedrate is set by F in G0 motion mode
|
//#define VARIABLE_G0_FEEDRATE // The G0 feedrate is set by F in G0 motion mode
|
||||||
#endif
|
#endif
|
||||||
|
|
||||||
|
/**
|
||||||
|
* G-code Macros
|
||||||
|
*
|
||||||
|
* Add G-codes M810-M819 to define and run G-code macros.
|
||||||
|
* Macros are not saved to EEPROM.
|
||||||
|
*/
|
||||||
|
//#define GCODE_MACROS
|
||||||
|
#if ENABLED(GCODE_MACROS)
|
||||||
|
#define GCODE_MACROS_SLOTS 5 // Up to 10 may be used
|
||||||
|
#define GCODE_MACROS_SLOT_SIZE 50 // Maximum length of a single macro
|
||||||
|
#endif
|
||||||
|
|
||||||
/**
|
/**
|
||||||
* User-defined menu items that execute custom GCode
|
* User-defined menu items that execute custom GCode
|
||||||
*/
|
*/
|
||||||
|
|
|
@ -1690,6 +1690,18 @@
|
||||||
//#define VARIABLE_G0_FEEDRATE // The G0 feedrate is set by F in G0 motion mode
|
//#define VARIABLE_G0_FEEDRATE // The G0 feedrate is set by F in G0 motion mode
|
||||||
#endif
|
#endif
|
||||||
|
|
||||||
|
/**
|
||||||
|
* G-code Macros
|
||||||
|
*
|
||||||
|
* Add G-codes M810-M819 to define and run G-code macros.
|
||||||
|
* Macros are not saved to EEPROM.
|
||||||
|
*/
|
||||||
|
//#define GCODE_MACROS
|
||||||
|
#if ENABLED(GCODE_MACROS)
|
||||||
|
#define GCODE_MACROS_SLOTS 5 // Up to 10 may be used
|
||||||
|
#define GCODE_MACROS_SLOT_SIZE 50 // Maximum length of a single macro
|
||||||
|
#endif
|
||||||
|
|
||||||
/**
|
/**
|
||||||
* User-defined menu items that execute custom GCode
|
* User-defined menu items that execute custom GCode
|
||||||
*/
|
*/
|
||||||
|
|
|
@ -1690,6 +1690,18 @@
|
||||||
//#define VARIABLE_G0_FEEDRATE // The G0 feedrate is set by F in G0 motion mode
|
//#define VARIABLE_G0_FEEDRATE // The G0 feedrate is set by F in G0 motion mode
|
||||||
#endif
|
#endif
|
||||||
|
|
||||||
|
/**
|
||||||
|
* G-code Macros
|
||||||
|
*
|
||||||
|
* Add G-codes M810-M819 to define and run G-code macros.
|
||||||
|
* Macros are not saved to EEPROM.
|
||||||
|
*/
|
||||||
|
//#define GCODE_MACROS
|
||||||
|
#if ENABLED(GCODE_MACROS)
|
||||||
|
#define GCODE_MACROS_SLOTS 5 // Up to 10 may be used
|
||||||
|
#define GCODE_MACROS_SLOT_SIZE 50 // Maximum length of a single macro
|
||||||
|
#endif
|
||||||
|
|
||||||
/**
|
/**
|
||||||
* User-defined menu items that execute custom GCode
|
* User-defined menu items that execute custom GCode
|
||||||
*/
|
*/
|
||||||
|
|
|
@ -1690,6 +1690,18 @@
|
||||||
//#define VARIABLE_G0_FEEDRATE // The G0 feedrate is set by F in G0 motion mode
|
//#define VARIABLE_G0_FEEDRATE // The G0 feedrate is set by F in G0 motion mode
|
||||||
#endif
|
#endif
|
||||||
|
|
||||||
|
/**
|
||||||
|
* G-code Macros
|
||||||
|
*
|
||||||
|
* Add G-codes M810-M819 to define and run G-code macros.
|
||||||
|
* Macros are not saved to EEPROM.
|
||||||
|
*/
|
||||||
|
//#define GCODE_MACROS
|
||||||
|
#if ENABLED(GCODE_MACROS)
|
||||||
|
#define GCODE_MACROS_SLOTS 5 // Up to 10 may be used
|
||||||
|
#define GCODE_MACROS_SLOT_SIZE 50 // Maximum length of a single macro
|
||||||
|
#endif
|
||||||
|
|
||||||
/**
|
/**
|
||||||
* User-defined menu items that execute custom GCode
|
* User-defined menu items that execute custom GCode
|
||||||
*/
|
*/
|
||||||
|
|
|
@ -1690,6 +1690,18 @@
|
||||||
//#define VARIABLE_G0_FEEDRATE // The G0 feedrate is set by F in G0 motion mode
|
//#define VARIABLE_G0_FEEDRATE // The G0 feedrate is set by F in G0 motion mode
|
||||||
#endif
|
#endif
|
||||||
|
|
||||||
|
/**
|
||||||
|
* G-code Macros
|
||||||
|
*
|
||||||
|
* Add G-codes M810-M819 to define and run G-code macros.
|
||||||
|
* Macros are not saved to EEPROM.
|
||||||
|
*/
|
||||||
|
//#define GCODE_MACROS
|
||||||
|
#if ENABLED(GCODE_MACROS)
|
||||||
|
#define GCODE_MACROS_SLOTS 5 // Up to 10 may be used
|
||||||
|
#define GCODE_MACROS_SLOT_SIZE 50 // Maximum length of a single macro
|
||||||
|
#endif
|
||||||
|
|
||||||
/**
|
/**
|
||||||
* User-defined menu items that execute custom GCode
|
* User-defined menu items that execute custom GCode
|
||||||
*/
|
*/
|
||||||
|
|
|
@ -1703,6 +1703,18 @@
|
||||||
//#define VARIABLE_G0_FEEDRATE // The G0 feedrate is set by F in G0 motion mode
|
//#define VARIABLE_G0_FEEDRATE // The G0 feedrate is set by F in G0 motion mode
|
||||||
#endif
|
#endif
|
||||||
|
|
||||||
|
/**
|
||||||
|
* G-code Macros
|
||||||
|
*
|
||||||
|
* Add G-codes M810-M819 to define and run G-code macros.
|
||||||
|
* Macros are not saved to EEPROM.
|
||||||
|
*/
|
||||||
|
//#define GCODE_MACROS
|
||||||
|
#if ENABLED(GCODE_MACROS)
|
||||||
|
#define GCODE_MACROS_SLOTS 5 // Up to 10 may be used
|
||||||
|
#define GCODE_MACROS_SLOT_SIZE 50 // Maximum length of a single macro
|
||||||
|
#endif
|
||||||
|
|
||||||
/**
|
/**
|
||||||
* User-defined menu items that execute custom GCode
|
* User-defined menu items that execute custom GCode
|
||||||
*/
|
*/
|
||||||
|
|
|
@ -1690,6 +1690,18 @@
|
||||||
//#define VARIABLE_G0_FEEDRATE // The G0 feedrate is set by F in G0 motion mode
|
//#define VARIABLE_G0_FEEDRATE // The G0 feedrate is set by F in G0 motion mode
|
||||||
#endif
|
#endif
|
||||||
|
|
||||||
|
/**
|
||||||
|
* G-code Macros
|
||||||
|
*
|
||||||
|
* Add G-codes M810-M819 to define and run G-code macros.
|
||||||
|
* Macros are not saved to EEPROM.
|
||||||
|
*/
|
||||||
|
//#define GCODE_MACROS
|
||||||
|
#if ENABLED(GCODE_MACROS)
|
||||||
|
#define GCODE_MACROS_SLOTS 5 // Up to 10 may be used
|
||||||
|
#define GCODE_MACROS_SLOT_SIZE 50 // Maximum length of a single macro
|
||||||
|
#endif
|
||||||
|
|
||||||
/**
|
/**
|
||||||
* User-defined menu items that execute custom GCode
|
* User-defined menu items that execute custom GCode
|
||||||
*/
|
*/
|
||||||
|
|
|
@ -1692,6 +1692,18 @@
|
||||||
//#define VARIABLE_G0_FEEDRATE // The G0 feedrate is set by F in G0 motion mode
|
//#define VARIABLE_G0_FEEDRATE // The G0 feedrate is set by F in G0 motion mode
|
||||||
#endif
|
#endif
|
||||||
|
|
||||||
|
/**
|
||||||
|
* G-code Macros
|
||||||
|
*
|
||||||
|
* Add G-codes M810-M819 to define and run G-code macros.
|
||||||
|
* Macros are not saved to EEPROM.
|
||||||
|
*/
|
||||||
|
//#define GCODE_MACROS
|
||||||
|
#if ENABLED(GCODE_MACROS)
|
||||||
|
#define GCODE_MACROS_SLOTS 5 // Up to 10 may be used
|
||||||
|
#define GCODE_MACROS_SLOT_SIZE 50 // Maximum length of a single macro
|
||||||
|
#endif
|
||||||
|
|
||||||
/**
|
/**
|
||||||
* User-defined menu items that execute custom GCode
|
* User-defined menu items that execute custom GCode
|
||||||
*/
|
*/
|
||||||
|
|
|
@ -1692,6 +1692,18 @@
|
||||||
//#define VARIABLE_G0_FEEDRATE // The G0 feedrate is set by F in G0 motion mode
|
//#define VARIABLE_G0_FEEDRATE // The G0 feedrate is set by F in G0 motion mode
|
||||||
#endif
|
#endif
|
||||||
|
|
||||||
|
/**
|
||||||
|
* G-code Macros
|
||||||
|
*
|
||||||
|
* Add G-codes M810-M819 to define and run G-code macros.
|
||||||
|
* Macros are not saved to EEPROM.
|
||||||
|
*/
|
||||||
|
//#define GCODE_MACROS
|
||||||
|
#if ENABLED(GCODE_MACROS)
|
||||||
|
#define GCODE_MACROS_SLOTS 5 // Up to 10 may be used
|
||||||
|
#define GCODE_MACROS_SLOT_SIZE 50 // Maximum length of a single macro
|
||||||
|
#endif
|
||||||
|
|
||||||
/**
|
/**
|
||||||
* User-defined menu items that execute custom GCode
|
* User-defined menu items that execute custom GCode
|
||||||
*/
|
*/
|
||||||
|
|
|
@ -1692,6 +1692,18 @@
|
||||||
//#define VARIABLE_G0_FEEDRATE // The G0 feedrate is set by F in G0 motion mode
|
//#define VARIABLE_G0_FEEDRATE // The G0 feedrate is set by F in G0 motion mode
|
||||||
#endif
|
#endif
|
||||||
|
|
||||||
|
/**
|
||||||
|
* G-code Macros
|
||||||
|
*
|
||||||
|
* Add G-codes M810-M819 to define and run G-code macros.
|
||||||
|
* Macros are not saved to EEPROM.
|
||||||
|
*/
|
||||||
|
//#define GCODE_MACROS
|
||||||
|
#if ENABLED(GCODE_MACROS)
|
||||||
|
#define GCODE_MACROS_SLOTS 5 // Up to 10 may be used
|
||||||
|
#define GCODE_MACROS_SLOT_SIZE 50 // Maximum length of a single macro
|
||||||
|
#endif
|
||||||
|
|
||||||
/**
|
/**
|
||||||
* User-defined menu items that execute custom GCode
|
* User-defined menu items that execute custom GCode
|
||||||
*/
|
*/
|
||||||
|
|
|
@ -1692,6 +1692,18 @@
|
||||||
//#define VARIABLE_G0_FEEDRATE // The G0 feedrate is set by F in G0 motion mode
|
//#define VARIABLE_G0_FEEDRATE // The G0 feedrate is set by F in G0 motion mode
|
||||||
#endif
|
#endif
|
||||||
|
|
||||||
|
/**
|
||||||
|
* G-code Macros
|
||||||
|
*
|
||||||
|
* Add G-codes M810-M819 to define and run G-code macros.
|
||||||
|
* Macros are not saved to EEPROM.
|
||||||
|
*/
|
||||||
|
//#define GCODE_MACROS
|
||||||
|
#if ENABLED(GCODE_MACROS)
|
||||||
|
#define GCODE_MACROS_SLOTS 5 // Up to 10 may be used
|
||||||
|
#define GCODE_MACROS_SLOT_SIZE 50 // Maximum length of a single macro
|
||||||
|
#endif
|
||||||
|
|
||||||
/**
|
/**
|
||||||
* User-defined menu items that execute custom GCode
|
* User-defined menu items that execute custom GCode
|
||||||
*/
|
*/
|
||||||
|
|
|
@ -1692,6 +1692,18 @@
|
||||||
//#define VARIABLE_G0_FEEDRATE // The G0 feedrate is set by F in G0 motion mode
|
//#define VARIABLE_G0_FEEDRATE // The G0 feedrate is set by F in G0 motion mode
|
||||||
#endif
|
#endif
|
||||||
|
|
||||||
|
/**
|
||||||
|
* G-code Macros
|
||||||
|
*
|
||||||
|
* Add G-codes M810-M819 to define and run G-code macros.
|
||||||
|
* Macros are not saved to EEPROM.
|
||||||
|
*/
|
||||||
|
//#define GCODE_MACROS
|
||||||
|
#if ENABLED(GCODE_MACROS)
|
||||||
|
#define GCODE_MACROS_SLOTS 5 // Up to 10 may be used
|
||||||
|
#define GCODE_MACROS_SLOT_SIZE 50 // Maximum length of a single macro
|
||||||
|
#endif
|
||||||
|
|
||||||
/**
|
/**
|
||||||
* User-defined menu items that execute custom GCode
|
* User-defined menu items that execute custom GCode
|
||||||
*/
|
*/
|
||||||
|
|
|
@ -1665,6 +1665,18 @@
|
||||||
//#define VARIABLE_G0_FEEDRATE // The G0 feedrate is set by F in G0 motion mode
|
//#define VARIABLE_G0_FEEDRATE // The G0 feedrate is set by F in G0 motion mode
|
||||||
#endif
|
#endif
|
||||||
|
|
||||||
|
/**
|
||||||
|
* G-code Macros
|
||||||
|
*
|
||||||
|
* Add G-codes M810-M819 to define and run G-code macros.
|
||||||
|
* Macros are not saved to EEPROM.
|
||||||
|
*/
|
||||||
|
//#define GCODE_MACROS
|
||||||
|
#if ENABLED(GCODE_MACROS)
|
||||||
|
#define GCODE_MACROS_SLOTS 5 // Up to 10 may be used
|
||||||
|
#define GCODE_MACROS_SLOT_SIZE 50 // Maximum length of a single macro
|
||||||
|
#endif
|
||||||
|
|
||||||
/**
|
/**
|
||||||
* User-defined menu items that execute custom GCode
|
* User-defined menu items that execute custom GCode
|
||||||
*/
|
*/
|
||||||
|
|
|
@ -1692,6 +1692,18 @@
|
||||||
//#define VARIABLE_G0_FEEDRATE // The G0 feedrate is set by F in G0 motion mode
|
//#define VARIABLE_G0_FEEDRATE // The G0 feedrate is set by F in G0 motion mode
|
||||||
#endif
|
#endif
|
||||||
|
|
||||||
|
/**
|
||||||
|
* G-code Macros
|
||||||
|
*
|
||||||
|
* Add G-codes M810-M819 to define and run G-code macros.
|
||||||
|
* Macros are not saved to EEPROM.
|
||||||
|
*/
|
||||||
|
//#define GCODE_MACROS
|
||||||
|
#if ENABLED(GCODE_MACROS)
|
||||||
|
#define GCODE_MACROS_SLOTS 5 // Up to 10 may be used
|
||||||
|
#define GCODE_MACROS_SLOT_SIZE 50 // Maximum length of a single macro
|
||||||
|
#endif
|
||||||
|
|
||||||
/**
|
/**
|
||||||
* User-defined menu items that execute custom GCode
|
* User-defined menu items that execute custom GCode
|
||||||
*/
|
*/
|
||||||
|
|
|
@ -1692,6 +1692,18 @@
|
||||||
//#define VARIABLE_G0_FEEDRATE // The G0 feedrate is set by F in G0 motion mode
|
//#define VARIABLE_G0_FEEDRATE // The G0 feedrate is set by F in G0 motion mode
|
||||||
#endif
|
#endif
|
||||||
|
|
||||||
|
/**
|
||||||
|
* G-code Macros
|
||||||
|
*
|
||||||
|
* Add G-codes M810-M819 to define and run G-code macros.
|
||||||
|
* Macros are not saved to EEPROM.
|
||||||
|
*/
|
||||||
|
//#define GCODE_MACROS
|
||||||
|
#if ENABLED(GCODE_MACROS)
|
||||||
|
#define GCODE_MACROS_SLOTS 5 // Up to 10 may be used
|
||||||
|
#define GCODE_MACROS_SLOT_SIZE 50 // Maximum length of a single macro
|
||||||
|
#endif
|
||||||
|
|
||||||
/**
|
/**
|
||||||
* User-defined menu items that execute custom GCode
|
* User-defined menu items that execute custom GCode
|
||||||
*/
|
*/
|
||||||
|
|
|
@ -1692,6 +1692,18 @@
|
||||||
//#define VARIABLE_G0_FEEDRATE // The G0 feedrate is set by F in G0 motion mode
|
//#define VARIABLE_G0_FEEDRATE // The G0 feedrate is set by F in G0 motion mode
|
||||||
#endif
|
#endif
|
||||||
|
|
||||||
|
/**
|
||||||
|
* G-code Macros
|
||||||
|
*
|
||||||
|
* Add G-codes M810-M819 to define and run G-code macros.
|
||||||
|
* Macros are not saved to EEPROM.
|
||||||
|
*/
|
||||||
|
//#define GCODE_MACROS
|
||||||
|
#if ENABLED(GCODE_MACROS)
|
||||||
|
#define GCODE_MACROS_SLOTS 5 // Up to 10 may be used
|
||||||
|
#define GCODE_MACROS_SLOT_SIZE 50 // Maximum length of a single macro
|
||||||
|
#endif
|
||||||
|
|
||||||
/**
|
/**
|
||||||
* User-defined menu items that execute custom GCode
|
* User-defined menu items that execute custom GCode
|
||||||
*/
|
*/
|
||||||
|
|
|
@ -1690,6 +1690,18 @@
|
||||||
//#define VARIABLE_G0_FEEDRATE // The G0 feedrate is set by F in G0 motion mode
|
//#define VARIABLE_G0_FEEDRATE // The G0 feedrate is set by F in G0 motion mode
|
||||||
#endif
|
#endif
|
||||||
|
|
||||||
|
/**
|
||||||
|
* G-code Macros
|
||||||
|
*
|
||||||
|
* Add G-codes M810-M819 to define and run G-code macros.
|
||||||
|
* Macros are not saved to EEPROM.
|
||||||
|
*/
|
||||||
|
//#define GCODE_MACROS
|
||||||
|
#if ENABLED(GCODE_MACROS)
|
||||||
|
#define GCODE_MACROS_SLOTS 5 // Up to 10 may be used
|
||||||
|
#define GCODE_MACROS_SLOT_SIZE 50 // Maximum length of a single macro
|
||||||
|
#endif
|
||||||
|
|
||||||
/**
|
/**
|
||||||
* User-defined menu items that execute custom GCode
|
* User-defined menu items that execute custom GCode
|
||||||
*/
|
*/
|
||||||
|
|
|
@ -1690,6 +1690,18 @@
|
||||||
//#define VARIABLE_G0_FEEDRATE // The G0 feedrate is set by F in G0 motion mode
|
//#define VARIABLE_G0_FEEDRATE // The G0 feedrate is set by F in G0 motion mode
|
||||||
#endif
|
#endif
|
||||||
|
|
||||||
|
/**
|
||||||
|
* G-code Macros
|
||||||
|
*
|
||||||
|
* Add G-codes M810-M819 to define and run G-code macros.
|
||||||
|
* Macros are not saved to EEPROM.
|
||||||
|
*/
|
||||||
|
//#define GCODE_MACROS
|
||||||
|
#if ENABLED(GCODE_MACROS)
|
||||||
|
#define GCODE_MACROS_SLOTS 5 // Up to 10 may be used
|
||||||
|
#define GCODE_MACROS_SLOT_SIZE 50 // Maximum length of a single macro
|
||||||
|
#endif
|
||||||
|
|
||||||
/**
|
/**
|
||||||
* User-defined menu items that execute custom GCode
|
* User-defined menu items that execute custom GCode
|
||||||
*/
|
*/
|
||||||
|
|
|
@ -1690,6 +1690,18 @@
|
||||||
//#define VARIABLE_G0_FEEDRATE // The G0 feedrate is set by F in G0 motion mode
|
//#define VARIABLE_G0_FEEDRATE // The G0 feedrate is set by F in G0 motion mode
|
||||||
#endif
|
#endif
|
||||||
|
|
||||||
|
/**
|
||||||
|
* G-code Macros
|
||||||
|
*
|
||||||
|
* Add G-codes M810-M819 to define and run G-code macros.
|
||||||
|
* Macros are not saved to EEPROM.
|
||||||
|
*/
|
||||||
|
//#define GCODE_MACROS
|
||||||
|
#if ENABLED(GCODE_MACROS)
|
||||||
|
#define GCODE_MACROS_SLOTS 5 // Up to 10 may be used
|
||||||
|
#define GCODE_MACROS_SLOT_SIZE 50 // Maximum length of a single macro
|
||||||
|
#endif
|
||||||
|
|
||||||
/**
|
/**
|
||||||
* User-defined menu items that execute custom GCode
|
* User-defined menu items that execute custom GCode
|
||||||
*/
|
*/
|
||||||
|
|
|
@ -1691,6 +1691,18 @@
|
||||||
//#define VARIABLE_G0_FEEDRATE // The G0 feedrate is set by F in G0 motion mode
|
//#define VARIABLE_G0_FEEDRATE // The G0 feedrate is set by F in G0 motion mode
|
||||||
#endif
|
#endif
|
||||||
|
|
||||||
|
/**
|
||||||
|
* G-code Macros
|
||||||
|
*
|
||||||
|
* Add G-codes M810-M819 to define and run G-code macros.
|
||||||
|
* Macros are not saved to EEPROM.
|
||||||
|
*/
|
||||||
|
//#define GCODE_MACROS
|
||||||
|
#if ENABLED(GCODE_MACROS)
|
||||||
|
#define GCODE_MACROS_SLOTS 5 // Up to 10 may be used
|
||||||
|
#define GCODE_MACROS_SLOT_SIZE 50 // Maximum length of a single macro
|
||||||
|
#endif
|
||||||
|
|
||||||
/**
|
/**
|
||||||
* User-defined menu items that execute custom GCode
|
* User-defined menu items that execute custom GCode
|
||||||
*/
|
*/
|
||||||
|
|
67
Marlin/src/gcode/feature/macro/M810-M819.cpp
Normal file
67
Marlin/src/gcode/feature/macro/M810-M819.cpp
Normal file
|
@ -0,0 +1,67 @@
|
||||||
|
/**
|
||||||
|
* Marlin 3D Printer Firmware
|
||||||
|
* Copyright (C) 2016 MarlinFirmware [https://github.com/MarlinFirmware/Marlin]
|
||||||
|
*
|
||||||
|
* Based on Sprinter and grbl.
|
||||||
|
* Copyright (C) 2011 Camiel Gubbels / Erik van der Zalm
|
||||||
|
*
|
||||||
|
* This program is free software: you can redistribute it and/or modify
|
||||||
|
* it under the terms of the GNU General Public License as published by
|
||||||
|
* the Free Software Foundation, either version 3 of the License, or
|
||||||
|
* (at your option) any later version.
|
||||||
|
*
|
||||||
|
* This program is distributed in the hope that it will be useful,
|
||||||
|
* but WITHOUT ANY WARRANTY; without even the implied warranty of
|
||||||
|
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
|
||||||
|
* GNU General Public License for more details.
|
||||||
|
*
|
||||||
|
* You should have received a copy of the GNU General Public License
|
||||||
|
* along with this program. If not, see <http://www.gnu.org/licenses/>.
|
||||||
|
*
|
||||||
|
*/
|
||||||
|
|
||||||
|
#include "../../../inc/MarlinConfig.h"
|
||||||
|
|
||||||
|
#if ENABLED(GCODE_MACROS)
|
||||||
|
|
||||||
|
#include "../../gcode.h"
|
||||||
|
#include "../../queue.h"
|
||||||
|
#include "../../parser.h"
|
||||||
|
|
||||||
|
char gcode_macros[GCODE_MACROS_SLOTS][GCODE_MACROS_SLOT_SIZE + 1] = {{ 0 }};
|
||||||
|
|
||||||
|
/**
|
||||||
|
* M810_819: Set/execute a G-code macro.
|
||||||
|
*
|
||||||
|
* Usage:
|
||||||
|
* M810 <command>|... Set Macro 0 to the given commands, separated by the pipe character
|
||||||
|
* M810 Execute Macro 0
|
||||||
|
*/
|
||||||
|
void GcodeSuite::M810_819() {
|
||||||
|
const uint8_t index = parser.codenum - 810;
|
||||||
|
if (index >= GCODE_MACROS_SLOTS) return;
|
||||||
|
|
||||||
|
const size_t len = strlen(parser.string_arg);
|
||||||
|
|
||||||
|
if (len) {
|
||||||
|
// Set a macro
|
||||||
|
if (len > GCODE_MACROS_SLOT_SIZE) {
|
||||||
|
SERIAL_ERROR_START();
|
||||||
|
SERIAL_ERRORLNPGM("Macro too long.");
|
||||||
|
}
|
||||||
|
else {
|
||||||
|
char c, *s = parser.string_arg, *d = gcode_macros[index];
|
||||||
|
do {
|
||||||
|
c = *s++;
|
||||||
|
*d++ = c == '|' ? '\n' : c;
|
||||||
|
} while (c);
|
||||||
|
}
|
||||||
|
}
|
||||||
|
else {
|
||||||
|
// Execute a macro
|
||||||
|
char * const cmd = gcode_macros[index];
|
||||||
|
if (strlen(cmd)) process_subcommands_now(cmd);
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
|
#endif // GCODE_MACROS
|
|
@ -624,6 +624,12 @@ void GcodeSuite::process_parsed_command(
|
||||||
case 7219: M7219(); break; // M7219: Set LEDs, columns, and rows
|
case 7219: M7219(); break; // M7219: Set LEDs, columns, and rows
|
||||||
#endif
|
#endif
|
||||||
|
|
||||||
|
#if ENABLED(GCODE_MACROS)
|
||||||
|
case 810: case 811: case 812: case 813: case 814:
|
||||||
|
case 815: case 816: case 817: case 818: case 819:
|
||||||
|
M810_819(); break; // M810-M819: Define/execute G-code macro
|
||||||
|
#endif
|
||||||
|
|
||||||
#if ENABLED(LIN_ADVANCE)
|
#if ENABLED(LIN_ADVANCE)
|
||||||
case 900: M900(); break; // M900: Set advance K factor.
|
case 900: M900(); break; // M900: Set advance K factor.
|
||||||
#endif
|
#endif
|
||||||
|
|
|
@ -211,8 +211,9 @@
|
||||||
* M605 - Set Dual X-Carriage movement mode: "M605 S<mode> [X<x_offset>] [R<temp_offset>]". (Requires DUAL_X_CARRIAGE)
|
* M605 - Set Dual X-Carriage movement mode: "M605 S<mode> [X<x_offset>] [R<temp_offset>]". (Requires DUAL_X_CARRIAGE)
|
||||||
* M665 - Set delta configurations: "M665 H<delta height> L<diagonal rod> R<delta radius> S<segments/s> B<calibration radius> X<Alpha angle trim> Y<Beta angle trim> Z<Gamma angle trim> (Requires DELTA)
|
* M665 - Set delta configurations: "M665 H<delta height> L<diagonal rod> R<delta radius> S<segments/s> B<calibration radius> X<Alpha angle trim> Y<Beta angle trim> Z<Gamma angle trim> (Requires DELTA)
|
||||||
* M666 - Set/get offsets for delta (Requires DELTA) or dual endstops (Requires [XYZ]_DUAL_ENDSTOPS).
|
* M666 - Set/get offsets for delta (Requires DELTA) or dual endstops (Requires [XYZ]_DUAL_ENDSTOPS).
|
||||||
* M701 - Load filament (requires FILAMENT_LOAD_UNLOAD_GCODES)
|
* M701 - Load filament (Requires FILAMENT_LOAD_UNLOAD_GCODES)
|
||||||
* M702 - Unload filament (requires FILAMENT_LOAD_UNLOAD_GCODES)
|
* M702 - Unload filament (Requires FILAMENT_LOAD_UNLOAD_GCODES)
|
||||||
|
* M810-M819 - Define/execute a G-code macro (Requires GCODE_MACROS)
|
||||||
* M851 - Set Z probe's Z offset in current units. (Negative = below the nozzle.)
|
* M851 - Set Z probe's Z offset in current units. (Negative = below the nozzle.)
|
||||||
* M852 - Set skew factors: "M852 [I<xy>] [J<xz>] [K<yz>]". (Requires SKEW_CORRECTION_GCODE, and SKEW_CORRECTION_FOR_Z for IJ)
|
* M852 - Set skew factors: "M852 [I<xy>] [J<xz>] [K<yz>]". (Requires SKEW_CORRECTION_GCODE, and SKEW_CORRECTION_FOR_Z for IJ)
|
||||||
* M860 - Report the position of position encoder modules.
|
* M860 - Report the position of position encoder modules.
|
||||||
|
@ -760,6 +761,10 @@ private:
|
||||||
static void M7219();
|
static void M7219();
|
||||||
#endif
|
#endif
|
||||||
|
|
||||||
|
#if ENABLED(GCODE_MACROS)
|
||||||
|
static void M810_819();
|
||||||
|
#endif
|
||||||
|
|
||||||
#if HAS_BED_PROBE
|
#if HAS_BED_PROBE
|
||||||
static void M851();
|
static void M851();
|
||||||
#endif
|
#endif
|
||||||
|
|
|
@ -209,7 +209,14 @@ 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) {
|
||||||
|
#if ENABLED(GCODE_MACROS)
|
||||||
|
case 810: case 811: case 812: case 813: case 814:
|
||||||
|
case 815: case 816: case 817: case 818: case 819:
|
||||||
|
#endif
|
||||||
|
case 23: case 28: case 30: case 117: case 118: 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;
|
||||||
|
|
|
@ -188,7 +188,8 @@ void enqueue_and_echo_commands_P(PGM_P const pgcode) {
|
||||||
|
|
||||||
#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.
|
||||||
|
* Never call this from a G-code handler!
|
||||||
*/
|
*/
|
||||||
void enqueue_and_echo_command_now(const char* cmd) {
|
void enqueue_and_echo_command_now(const char* cmd) {
|
||||||
while (!enqueue_and_echo_command(cmd)) idle();
|
while (!enqueue_and_echo_command(cmd)) idle();
|
||||||
|
@ -196,6 +197,7 @@ void enqueue_and_echo_commands_P(PGM_P const pgcode) {
|
||||||
#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
|
||||||
|
* Never call this from a G-code handler!
|
||||||
*/
|
*/
|
||||||
void enqueue_and_echo_commands_now_P(PGM_P const pgcode) {
|
void enqueue_and_echo_commands_now_P(PGM_P const pgcode) {
|
||||||
enqueue_and_echo_commands_P(pgcode);
|
enqueue_and_echo_commands_P(pgcode);
|
||||||
|
|
|
@ -1619,7 +1619,7 @@
|
||||||
// If platform requires early initialization of watchdog to properly boot
|
// If platform requires early initialization of watchdog to properly boot
|
||||||
#define EARLY_WATCHDOG (ENABLED(USE_WATCHDOG) && defined(ARDUINO_ARCH_SAM))
|
#define EARLY_WATCHDOG (ENABLED(USE_WATCHDOG) && defined(ARDUINO_ARCH_SAM))
|
||||||
|
|
||||||
#define USE_EXECUTE_COMMANDS_IMMEDIATE ENABLED(G29_RETRY_AND_RECOVER)
|
#define USE_EXECUTE_COMMANDS_IMMEDIATE (ENABLED(G29_RETRY_AND_RECOVER) || ENABLED(GCODE_MACROS))
|
||||||
|
|
||||||
#if ENABLED(Z_TRIPLE_STEPPER_DRIVERS)
|
#if ENABLED(Z_TRIPLE_STEPPER_DRIVERS)
|
||||||
#define Z_STEPPER_COUNT 3
|
#define Z_STEPPER_COUNT 3
|
||||||
|
|
|
@ -1962,3 +1962,7 @@ static_assert(COUNT(sanity_arr_3) <= XYZE_N, "DEFAULT_MAX_ACCELERATION has too m
|
||||||
#if ENABLED(SD_FIRMWARE_UPDATE) && !defined(__AVR_ATmega2560__)
|
#if ENABLED(SD_FIRMWARE_UPDATE) && !defined(__AVR_ATmega2560__)
|
||||||
#error "SD_FIRMWARE_UPDATE requires an ATmega2560-based (Arduino Mega) board."
|
#error "SD_FIRMWARE_UPDATE requires an ATmega2560-based (Arduino Mega) board."
|
||||||
#endif
|
#endif
|
||||||
|
|
||||||
|
#if ENABLED(GCODE_MACROS) && !WITHIN(GCODE_MACROS_SLOTS, 1, 10)
|
||||||
|
#error "GCODE_MACROS_SLOTS must be a number from 1 to 10."
|
||||||
|
#endif
|
||||||
|
|
|
@ -35,6 +35,7 @@ exec_test $1 $2 "Teensy3.5 with many features"
|
||||||
restore_configs
|
restore_configs
|
||||||
opt_enable EEPROM_SETTINGS \
|
opt_enable EEPROM_SETTINGS \
|
||||||
Z_PROBE_SLED AUTO_BED_LEVELING_LINEAR DEBUG_LEVELING_FEATURE
|
Z_PROBE_SLED AUTO_BED_LEVELING_LINEAR DEBUG_LEVELING_FEATURE
|
||||||
|
opt_enable_adv GCODE_MACROS
|
||||||
exec_test $1 $2 "Sled Z Probe with Linear leveling"
|
exec_test $1 $2 "Sled Z Probe with Linear leveling"
|
||||||
|
|
||||||
#
|
#
|
||||||
|
|
Reference in a new issue