position[E_AXIS]=target[E_AXIS];// Behave as if the move really took place, but ignore E part
de=0;// no difference
#if ENABLED(LIN_ADVANCE)
position_float[E_AXIS]=e;
de_float=0;
#endif
SERIAL_ECHO_START();
SERIAL_ECHOLNPGM(MSG_ERR_COLD_EXTRUDE_STOP);
}
#if ENABLED(PREVENT_COLD_EXTRUSION)
if(thermalManager.tooColdToExtrude(extruder)){
position[E_AXIS]=target[E_AXIS];// Behave as if the move really took place, but ignore E part
de=0;// no difference
#if ENABLED(LIN_ADVANCE)
position_float[E_AXIS]=e;
de_float=0;
#endif
SERIAL_ECHO_START();
SERIAL_ECHOLNPGM(MSG_ERR_COLD_EXTRUDE_STOP);
}
#endif // PREVENT_COLD_EXTRUSION
#if ENABLED(PREVENT_LENGTHY_EXTRUDE)
if(labs(de)>(int32_t)axis_steps_per_mm[E_AXIS_N]*(EXTRUDE_MAXLENGTH)){// It's not important to get max. extrusion length in a precision < 1mm, so save some cycles and cast to int
constint32_tde_mm=labs(de*e_factor);
if(de_mm>(int32_t)axis_steps_per_mm[E_AXIS_N]*(EXTRUDE_MAXLENGTH)){// It's not important to get max. extrusion length in a precision < 1mm, so save some cycles and cast to int
position[E_AXIS]=target[E_AXIS];// Behave as if the move really took place, but ignore E part