|
|
|
@ -2931,14 +2931,16 @@ void kill_screen(const char* lcd_msg) {
|
|
|
|
|
const float diff = float((int32_t)encoderPosition) * move_menu_scale;
|
|
|
|
|
#if IS_KINEMATIC
|
|
|
|
|
manual_move_offset += diff;
|
|
|
|
|
// Limit only when trying to move towards the limit
|
|
|
|
|
if ((int32_t)encoderPosition < 0) NOLESS(manual_move_offset, min - current_position[axis]);
|
|
|
|
|
if ((int32_t)encoderPosition > 0) NOMORE(manual_move_offset, max - current_position[axis]);
|
|
|
|
|
if ((int32_t)encoderPosition < 0)
|
|
|
|
|
NOLESS(manual_move_offset, min - current_position[axis]);
|
|
|
|
|
else
|
|
|
|
|
NOMORE(manual_move_offset, max - current_position[axis]);
|
|
|
|
|
#else
|
|
|
|
|
current_position[axis] += diff;
|
|
|
|
|
// Limit only when trying to move towards the limit
|
|
|
|
|
if ((int32_t)encoderPosition < 0) NOLESS(current_position[axis], min);
|
|
|
|
|
if ((int32_t)encoderPosition > 0) NOMORE(current_position[axis], max);
|
|
|
|
|
if ((int32_t)encoderPosition < 0)
|
|
|
|
|
NOLESS(current_position[axis], min);
|
|
|
|
|
else
|
|
|
|
|
NOMORE(current_position[axis], max);
|
|
|
|
|
#endif
|
|
|
|
|
|
|
|
|
|
manual_move_to_current(axis);
|
|
|
|
|