Bottom: 8e78a1676c97946f40c2ebb968bada04f6bac87a
-Top: c0a7e719fd15d0dc282dd2ab568458d732ca3e7a
+Top: 16ad8a282254b0756127083d40ec2dfcb7909072
Author: Ian Jackson <ijackson@chiark.greenend.org.uk>
Date: 2012-08-01 21:12:14 +0100
---
diff --git a/Marlin/Marlin.h b/Marlin/Marlin.h
-index 75b57d0..11e1afa 100644
+index 75b57d0..b465d85 100644
--- a/Marlin/Marlin.h
+++ b/Marlin/Marlin.h
-@@ -184,6 +184,7 @@ extern float homing_feedrate[];
+@@ -184,6 +184,8 @@ extern float homing_feedrate[];
extern bool axis_relative_modes[];
extern float current_position[NUM_AXIS] ;
extern float add_homeing[3];
+extern float min_pos[3];
++extern float max_pos[3];
extern unsigned char FanSpeed;
// Handling multiple extruders pins
diff --git a/Marlin/Marlin.pde b/Marlin/Marlin.pde
-index d471d49..e980174 100644
+index d471d49..e9ebd5c 100644
--- a/Marlin/Marlin.pde
+++ b/Marlin/Marlin.pde
-@@ -143,6 +143,7 @@ volatile bool feedmultiplychanged=false;
+@@ -143,6 +143,8 @@ volatile bool feedmultiplychanged=false;
volatile int extrudemultiply=100; //100->1 200->2
float current_position[NUM_AXIS] = { 0.0, 0.0, 0.0, 0.0 };
float add_homeing[3]={0,0,0};
+float min_pos[3] = { X_MIN_POS, Y_MIN_POS, Z_MIN_POS };
++float max_pos[3] = { X_MAX_POS, Y_MAX_POS, Z_MAX_POS };
uint8_t active_extruder = 0;
unsigned char FanSpeed=0;
-@@ -543,6 +544,15 @@ bool code_seen(char code)
+@@ -543,6 +545,18 @@ bool code_seen(char code)
return (strchr_pointer != NULL); //Return True if a character was found
}
+static const float base_min_pos[3] = { X_MIN_POS, Y_MIN_POS, Z_MIN_POS };
++static const float base_max_pos[3] = { X_MAX_POS, Y_MAX_POS, Z_MAX_POS };
+static const float base_home_pos[3] = { X_HOME_POS, Y_HOME_POS, Z_HOME_POS };
+
+static void axis_is_at_home(int axis) {
+ current_position[axis] = base_home_pos[axis] + add_homeing[axis];
+ min_pos[axis] = base_min_pos[axis];
++ max_pos[axis] = base_max_pos[axis];
+ if (add_homeing[axis] < 0) min_pos[axis] += add_homeing[axis];
++ else max_pos[axis] += add_homeing[axis];
+}
+
#define HOMEAXIS(LETTER) \
if ((LETTER##_MIN_PIN > -1 && LETTER##_HOME_DIR==-1) || (LETTER##_MAX_PIN > -1 && LETTER##_HOME_DIR==1))\
{ \
-@@ -564,8 +574,8 @@ bool code_seen(char code)
+@@ -564,8 +578,8 @@ bool code_seen(char code)
plan_buffer_line(destination[X_AXIS], destination[Y_AXIS], destination[Z_AXIS], destination[E_AXIS], feedrate/60, active_extruder); \
st_synchronize();\
\
feedrate = 0.0;\
endstops_hit_on_purpose();\
}
-@@ -678,8 +688,8 @@ void process_commands()
+@@ -678,8 +692,8 @@ void process_commands()
plan_buffer_line(destination[X_AXIS], destination[Y_AXIS], destination[Z_AXIS], destination[E_AXIS], feedrate/60, active_extruder);
st_synchronize();
plan_set_position(current_position[X_AXIS], current_position[Y_AXIS], current_position[Z_AXIS], current_position[E_AXIS]);
destination[X_AXIS] = current_position[X_AXIS];
destination[Y_AXIS] = current_position[Y_AXIS];
-@@ -1544,15 +1554,15 @@ void get_arc_coordinates()
+@@ -1544,15 +1558,15 @@ void get_arc_coordinates()
void clamp_to_software_endstops(float target[3])
{
if (min_software_endstops) {
+++ /dev/null
-Bottom: c0a7e719fd15d0dc282dd2ab568458d732ca3e7a
-Top: 16ad8a282254b0756127083d40ec2dfcb7909072
-Author: Ian Jackson <ijackson@chiark.greenend.org.uk>
-Date: 2012-08-09 18:51:07 +0100
-
-Refresh of m206-always-use-homing-homeing
-
----
-
-diff --git a/Marlin/Marlin.h b/Marlin/Marlin.h
-index 11e1afa..b465d85 100644
---- a/Marlin/Marlin.h
-+++ b/Marlin/Marlin.h
-@@ -185,6 +185,7 @@ extern bool axis_relative_modes[];
- extern float current_position[NUM_AXIS] ;
- extern float add_homeing[3];
- extern float min_pos[3];
-+extern float max_pos[3];
- extern unsigned char FanSpeed;
-
- // Handling multiple extruders pins
-diff --git a/Marlin/Marlin.pde b/Marlin/Marlin.pde
-index e980174..e9ebd5c 100644
---- a/Marlin/Marlin.pde
-+++ b/Marlin/Marlin.pde
-@@ -144,6 +144,7 @@ volatile int extrudemultiply=100; //100->1 200->2
- float current_position[NUM_AXIS] = { 0.0, 0.0, 0.0, 0.0 };
- float add_homeing[3]={0,0,0};
- float min_pos[3] = { X_MIN_POS, Y_MIN_POS, Z_MIN_POS };
-+float max_pos[3] = { X_MAX_POS, Y_MAX_POS, Z_MAX_POS };
- uint8_t active_extruder = 0;
- unsigned char FanSpeed=0;
-
-@@ -545,12 +546,15 @@ bool code_seen(char code)
- }
-
- static const float base_min_pos[3] = { X_MIN_POS, Y_MIN_POS, Z_MIN_POS };
-+static const float base_max_pos[3] = { X_MAX_POS, Y_MAX_POS, Z_MAX_POS };
- static const float base_home_pos[3] = { X_HOME_POS, Y_HOME_POS, Z_HOME_POS };
-
- static void axis_is_at_home(int axis) {
- current_position[axis] = base_home_pos[axis] + add_homeing[axis];
- min_pos[axis] = base_min_pos[axis];
-+ max_pos[axis] = base_max_pos[axis];
- if (add_homeing[axis] < 0) min_pos[axis] += add_homeing[axis];
-+ else max_pos[axis] += add_homeing[axis];
- }
-
- #define HOMEAXIS(LETTER) \