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 routine

The one visible command may expand into many hidden machine-specific actions.

What this viewer can show

In this viewer

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.