|
@@ -687,7 +687,7 @@ void MarlinUI::quick_feedback(const bool clear_buttons/*=true*/) {
|
687
|
687
|
TERN_(IS_KINEMATIC, float ManualMove::offset = 0);
|
688
|
688
|
TERN_(IS_KINEMATIC, bool ManualMove::processing = false);
|
689
|
689
|
TERN_(MULTI_MANUAL, int8_t ManualMove::e_index = 0);
|
690
|
|
- uint8_t ManualMove::axis = (uint8_t)NO_AXIS;
|
|
690
|
+ AxisEnum ManualMove::axis = NO_AXIS;
|
691
|
691
|
|
692
|
692
|
/**
|
693
|
693
|
* If a manual move has been posted and its time has arrived, and if the planner
|
|
@@ -713,14 +713,14 @@ void MarlinUI::quick_feedback(const bool clear_buttons/*=true*/) {
|
713
|
713
|
if (processing) return; // Prevent re-entry from idle() calls
|
714
|
714
|
|
715
|
715
|
// Add a manual move to the queue?
|
716
|
|
- if (axis != (uint8_t)NO_AXIS && ELAPSED(millis(), start_time) && !planner.is_full()) {
|
|
716
|
+ if (axis != NO_AXIS && ELAPSED(millis(), start_time) && !planner.is_full()) {
|
717
|
717
|
|
718
|
|
- const feedRate_t fr_mm_s = (uint8_t(axis) <= E_AXIS) ? manual_feedrate_mm_s[axis] : XY_PROBE_FEEDRATE_MM_S;
|
|
718
|
+ const feedRate_t fr_mm_s = (axis <= E_AXIS) ? manual_feedrate_mm_s[axis] : XY_PROBE_FEEDRATE_MM_S;
|
719
|
719
|
|
720
|
720
|
#if IS_KINEMATIC
|
721
|
721
|
|
722
|
722
|
#if HAS_MULTI_EXTRUDER
|
723
|
|
- const int8_t old_extruder = active_extruder;
|
|
723
|
+ REMEMBER(ae, active_extruder);
|
724
|
724
|
if (axis == E_AXIS) active_extruder = e_index;
|
725
|
725
|
#endif
|
726
|
726
|
|
|
@@ -730,7 +730,7 @@ void MarlinUI::quick_feedback(const bool clear_buttons/*=true*/) {
|
730
|
730
|
|
731
|
731
|
// Reset for the next move
|
732
|
732
|
offset = 0;
|
733
|
|
- axis = (uint8_t)NO_AXIS;
|
|
733
|
+ axis = NO_AXIS;
|
734
|
734
|
|
735
|
735
|
// DELTA and SCARA machines use segmented moves, which could fill the planner during the call to
|
736
|
736
|
// move_to_destination. This will cause idle() to be called, which can then call this function while the
|
|
@@ -740,8 +740,6 @@ void MarlinUI::quick_feedback(const bool clear_buttons/*=true*/) {
|
740
|
740
|
prepare_internal_move_to_destination(fr_mm_s); // will set current_position from destination
|
741
|
741
|
processing = false;
|
742
|
742
|
|
743
|
|
- TERN_(HAS_MULTI_EXTRUDER, active_extruder = old_extruder);
|
744
|
|
-
|
745
|
743
|
#else
|
746
|
744
|
|
747
|
745
|
// For Cartesian / Core motion simply move to the current_position
|
|
@@ -749,7 +747,7 @@ void MarlinUI::quick_feedback(const bool clear_buttons/*=true*/) {
|
749
|
747
|
|
750
|
748
|
//SERIAL_ECHOLNPAIR("Add planner.move with Axis ", int(axis), " at FR ", fr_mm_s);
|
751
|
749
|
|
752
|
|
- axis = (uint8_t)NO_AXIS;
|
|
750
|
+ axis = NO_AXIS;
|
753
|
751
|
|
754
|
752
|
#endif
|
755
|
753
|
}
|
|
@@ -767,7 +765,7 @@ void MarlinUI::quick_feedback(const bool clear_buttons/*=true*/) {
|
767
|
765
|
if (move_axis == E_AXIS) e_index = eindex >= 0 ? eindex : active_extruder;
|
768
|
766
|
#endif
|
769
|
767
|
start_time = millis() + (menu_scale < 0.99f ? 0UL : 250UL); // delay for bigger moves
|
770
|
|
- axis = (uint8_t)move_axis;
|
|
768
|
+ axis = move_axis;
|
771
|
769
|
//SERIAL_ECHOLNPAIR("Post Move with Axis ", int(axis), " soon.");
|
772
|
770
|
}
|
773
|
771
|
|