Definition
A safe change routine normally captures the current position, relieves pressure, lifts away from the part, parks, unloads, waits for user action, reloads and purges, then returns and resumes. Each stage depends on extruder geometry and machine configuration.
M600 is one common interface, but the real steps may live in Marlin firmware, a Klipper macro, a RepRapFirmware macro or host software. A filament change is also different from a multi-tool T command: a tool change selects another configured tool, while M600 may replace material in the same tool.
What matters in practice
State must be restored
Position, extrusion mode, heater targets and fan state may all matter when resuming.
Unload is not retraction
Retraction is small and temporary; unloading pulls filament out of the active path.
Needs human or automation
The job can wait indefinitely if the expected display, sensor or operator is absent.
Example in G-code
Layer-change marker
; change color here
M600
; printing resumes after the configured routineThe one visible command may expand into many hidden machine-specific actions.
What this viewer can show
The viewer can locate M600 in source text but does not invent hidden park, purge and resume geometry. Only moves explicitly present in the file are drawn.
Primary sources
This explanation uses firmware documentation and details visible in G-code. Your printer's settings still determine what the machine does.