diff options
author | David Crocker <dcrocker@eschertech.com> | 2021-08-09 12:28:06 +0300 |
---|---|---|
committer | David Crocker <dcrocker@eschertech.com> | 2021-08-09 12:28:06 +0300 |
commit | 53ce4b3eb1acbf0dcecaeeae6d4cc4d18dc7fb2d (patch) | |
tree | f5bf21919cac25d33d0e23268923ca0c9f470455 /src/GCodes/GCodes2.cpp | |
parent | f59d7cc1a162a057d9523147d838a36d93ae9c49 (diff) |
More work on embedded file support
Diffstat (limited to 'src/GCodes/GCodes2.cpp')
-rw-r--r-- | src/GCodes/GCodes2.cpp | 28 |
1 files changed, 16 insertions, 12 deletions
diff --git a/src/GCodes/GCodes2.cpp b/src/GCodes/GCodes2.cpp index e3f656e1..5997811a 100644 --- a/src/GCodes/GCodes2.cpp +++ b/src/GCodes/GCodes2.cpp @@ -811,7 +811,7 @@ bool GCodes::HandleMcode(GCodeBuffer& gb, const StringRef& reply) THROWS(GCodeEx break; #endif -#if HAS_MASS_STORAGE +#if HAS_MASS_STORAGE || HAS_EMBEDDED_FILES case 21: // Initialise SD card if (!LockFileSystem(gb)) // don't allow more than one at a time to avoid contention on output buffers @@ -836,7 +836,7 @@ bool GCodes::HandleMcode(GCodeBuffer& gb, const StringRef& reply) THROWS(GCodeEx break; #endif -#if HAS_MASS_STORAGE || HAS_LINUX_INTERFACE +#if HAS_MASS_STORAGE || HAS_LINUX_INTERFACE || HAS_EMBEDDED_FILES case 23: // Set file to print case 32: // Select file and start SD print // We now allow a file that is being printed to chain to another file. This is required for the resume-after-power-fail functionality. @@ -861,7 +861,7 @@ bool GCodes::HandleMcode(GCodeBuffer& gb, const StringRef& reply) THROWS(GCodeEx || # endif #endif -#if HAS_MASS_STORAGE +#if HAS_MASS_STORAGE || HAS_EMBEDDED_FILES QueueFileToPrint(filename.c_str(), reply) #endif ) @@ -921,9 +921,9 @@ bool GCodes::HandleMcode(GCodeBuffer& gb, const StringRef& reply) THROWS(GCodeEx } } } -#if HAS_MASS_STORAGE || HAS_LINUX_INTERFACE +#if HAS_MASS_STORAGE || HAS_LINUX_INTERFACE || HAS_EMBEDDED_FILES else if ( -# if HAS_MASS_STORAGE +# if HAS_MASS_STORAGE || HAS_EMBEDDED_FILES !fileToPrint.IsLive() # else true @@ -956,7 +956,7 @@ bool GCodes::HandleMcode(GCodeBuffer& gb, const StringRef& reply) THROWS(GCodeEx # if HAS_LINUX_INTERFACE if (!reprap.UsingLinuxInterface()) # endif -# if HAS_MASS_STORAGE +# if HAS_MASS_STORAGE || HAS_EMBEDDED_FILES { fileToPrint.Seek(fileOffsetToPrint); } @@ -1046,7 +1046,7 @@ bool GCodes::HandleMcode(GCodeBuffer& gb, const StringRef& reply) THROWS(GCodeEx } break; -#if HAS_MASS_STORAGE || HAS_LINUX_INTERFACE +#if HAS_MASS_STORAGE || HAS_LINUX_INTERFACE || HAS_EMBEDDED_FILES case 26: // Set SD position // This is used between executing M23 to set up the file to print, and M25 to print it gb.MustSee('S'); @@ -1062,7 +1062,7 @@ bool GCodes::HandleMcode(GCodeBuffer& gb, const StringRef& reply) THROWS(GCodeEx break; #endif -#if HAS_MASS_STORAGE +#if HAS_MASS_STORAGE || HAS_EMBEDDED_FILES case 27: // Report print status - Deprecated if (reprap.GetPrintMonitor().IsPrinting()) { @@ -1077,7 +1077,9 @@ bool GCodes::HandleMcode(GCodeBuffer& gb, const StringRef& reply) THROWS(GCodeEx } reply.copy("Not SD printing."); break; +#endif +#if HAS_MASS_STORAGE case 28: // Write to file { String<MaxFilenameLength> filename; @@ -1110,7 +1112,7 @@ bool GCodes::HandleMcode(GCodeBuffer& gb, const StringRef& reply) THROWS(GCodeEx // For case 32, see case 23 -#if HAS_MASS_STORAGE || HAS_LINUX_INTERFACE +#if HAS_MASS_STORAGE || HAS_LINUX_INTERFACE || HAS_EMBEDDED_FILES case 36: // Return file information # if HAS_LINUX_INTERFACE if (reprap.UsingLinuxInterface()) @@ -1120,7 +1122,7 @@ bool GCodes::HandleMcode(GCodeBuffer& gb, const StringRef& reply) THROWS(GCodeEx else # endif { -# if HAS_MASS_STORAGE +# if HAS_MASS_STORAGE || HAS_EMBEDDED_FILES if (!LockFileSystem(gb)) // getting file info takes several calls and isn't reentrant { return false; @@ -1170,7 +1172,7 @@ bool GCodes::HandleMcode(GCodeBuffer& gb, const StringRef& reply) THROWS(GCodeEx break; #endif -#if HAS_MASS_STORAGE +#if HAS_MASS_STORAGE || HAS_EMBEDDED_FILES case 38: // Report SHA1 of file if (!LockFileSystem(gb)) // getting file hash takes several calls and isn't reentrant { @@ -1198,7 +1200,9 @@ bool GCodes::HandleMcode(GCodeBuffer& gb, const StringRef& reply) THROWS(GCodeEx result = AdvanceHash(reply); } break; +#endif +#if HAS_MASS_STORAGE case 39: // Return SD card info { uint32_t slot = 0; @@ -2956,6 +2960,7 @@ bool GCodes::HandleMcode(GCodeBuffer& gb, const StringRef& reply) THROWS(GCodeEx break; #endif +#if HAS_MASS_STORAGE || HAS_EMBEDDED_FILES case 501: // Load parameters from config-override.g if (!gb.LatestMachineState().runningM502 && !gb.LatestMachineState().runningM501) // when running M502 we ignore config-override.g { @@ -2982,7 +2987,6 @@ bool GCodes::HandleMcode(GCodeBuffer& gb, const StringRef& reply) THROWS(GCodeEx } break; -#if HAS_MASS_STORAGE || HAS_EMBEDDED_FILES case 503: // List variable settings { if (!LockFileSystem(gb)) |