Version: 1
-Previous: d9fbac5f1f6063b41d0fda38dbcfa56f1b0ca454
-Head: b044b21cda2747038c2f917c4dd138a6650c4c7c
+Previous: 253d090108d4fc5bbf42d0d69ac90e47a2206ac7
+Head: 9089abc69949d53e27a1fe44393d146fc9cb24ef
Applied:
marlin-pde-include-comment-for: 5b815da4d7f0a5bf87fbd2e70286f928e87b4d0d
add-to-marlin-gitignore: 79afa80f1a7740edceceb4a4deda713d9b55960e
makefile-support-v-1: 5f826531e0328e319ddb53617e4f3ade33537c92
makefile-avr-size: b1f12330781628c6463068489f7f052bf791bf0e
motion-control-max-min: fef5e25d43e7d8429283b9e34205172aaa3a6a2f
- m206-always-use-homing-homeing: ef16d2c9bd8d55b96310ef873aad725f7974f968
- refresh-temp: b044b21cda2747038c2f917c4dd138a6650c4c7c
+ m206-always-use-homing-homeing: 9089abc69949d53e27a1fe44393d146fc9cb24ef
Unapplied:
enable-eeprom-settings: 8daa65176ac195afeaad4a06c00a97dfff5951fe
eeprom-provide-smaller-code-fo: dcb84ce5f56d58178c15475b0611e12bfa121805
Bottom: ff33f6a6b492d6f370c84bddac52ac277dbd0fd9
-Top: 4cb43b29e74c044fc9b498b6787e34b6a3d43e33
+Top: a47c445c515e8480838e04500acc170cc895298e
Author: Ian Jackson <ijackson@chiark.greenend.org.uk>
Date: 2012-08-01 21:12:14 +0100
// Handling multiple extruders pins
diff --git a/Marlin/Marlin.pde b/Marlin/Marlin.pde
-index d471d49..a772fa6 100644
+index d471d49..b358400 100644
--- a/Marlin/Marlin.pde
+++ b/Marlin/Marlin.pde
@@ -143,6 +143,8 @@ volatile bool feedmultiplychanged=false;
uint8_t active_extruder = 0;
unsigned char FanSpeed=0;
-@@ -543,6 +545,26 @@ bool code_seen(char code)
+@@ -543,6 +545,28 @@ bool code_seen(char code)
return (strchr_pointer != NULL); //Return True if a character was found
}
+ static inline float pgm_read_any(const type *p) \
+ { return pgm_read_##reader##_near(p); }
+
-+#define XYZ_CONFIG(array,axis) (pgm_read_any(&array##_P[(axis)]))
-+#define XYZ_CONSTS_FROM_CONFIG(type, array, CONFIG) \
-+static const PROGMEM type array##_P[3] = { X_##CONFIG, Y_##CONFIG, Z_##CONFIG };
-+
+DEFINE_PGM_READ_ANY(float, float);
+
++#define XYZ_CONSTS_FROM_CONFIG(type, array, CONFIG) \
++static const PROGMEM type array##_P[3] = \
++ { X_##CONFIG, Y_##CONFIG, Z_##CONFIG }; \
++static inline type array(int axis) \
++ { return pgm_read_any(&array##_P[axis]); }
++
+XYZ_CONSTS_FROM_CONFIG(float, base_min_pos, MIN_POS);
+XYZ_CONSTS_FROM_CONFIG(float, base_max_pos, MAX_POS);
+XYZ_CONSTS_FROM_CONFIG(float, base_home_pos, HOME_POS);
+
+static void axis_is_at_home(int axis) {
-+ current_position[axis] = XYZ_CONFIG(base_home_pos, axis) + add_homeing[axis];
-+ min_pos[axis] = XYZ_CONFIG(base_min_pos, axis) + add_homeing[axis];
-+ max_pos[axis] = XYZ_CONFIG(base_max_pos, axis) + add_homeing[axis];
++ current_position[axis] = base_home_pos(axis) + add_homeing[axis];
++ min_pos[axis] = base_min_pos(axis) + add_homeing[axis];
++ max_pos[axis] = base_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 +586,8 @@ bool code_seen(char code)
+@@ -564,8 +588,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 +700,8 @@ void process_commands()
+@@ -678,8 +702,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 +1566,15 @@ void get_arc_coordinates()
+@@ -1544,15 +1568,15 @@ void get_arc_coordinates()
void clamp_to_software_endstops(float target[3])
{
if (min_software_endstops) {
+++ /dev/null
-Bottom: 4cb43b29e74c044fc9b498b6787e34b6a3d43e33
-Top: a47c445c515e8480838e04500acc170cc895298e
-Author: Ian Jackson <ijackson@chiark.greenend.org.uk>
-Date: 2012-08-10 17:37:50 +0100
-
-Refresh of m206-always-use-homing-homeing
-
----
-
-diff --git a/Marlin/Marlin.pde b/Marlin/Marlin.pde
-index a772fa6..b358400 100644
---- a/Marlin/Marlin.pde
-+++ b/Marlin/Marlin.pde
-@@ -549,20 +549,22 @@ bool code_seen(char code)
- static inline float pgm_read_any(const type *p) \
- { return pgm_read_##reader##_near(p); }
-
--#define XYZ_CONFIG(array,axis) (pgm_read_any(&array##_P[(axis)]))
--#define XYZ_CONSTS_FROM_CONFIG(type, array, CONFIG) \
--static const PROGMEM type array##_P[3] = { X_##CONFIG, Y_##CONFIG, Z_##CONFIG };
--
- DEFINE_PGM_READ_ANY(float, float);
-
-+#define XYZ_CONSTS_FROM_CONFIG(type, array, CONFIG) \
-+static const PROGMEM type array##_P[3] = \
-+ { X_##CONFIG, Y_##CONFIG, Z_##CONFIG }; \
-+static inline type array(int axis) \
-+ { return pgm_read_any(&array##_P[axis]); }
-+
- XYZ_CONSTS_FROM_CONFIG(float, base_min_pos, MIN_POS);
- XYZ_CONSTS_FROM_CONFIG(float, base_max_pos, MAX_POS);
- XYZ_CONSTS_FROM_CONFIG(float, base_home_pos, HOME_POS);
-
- static void axis_is_at_home(int axis) {
-- current_position[axis] = XYZ_CONFIG(base_home_pos, axis) + add_homeing[axis];
-- min_pos[axis] = XYZ_CONFIG(base_min_pos, axis) + add_homeing[axis];
-- max_pos[axis] = XYZ_CONFIG(base_max_pos, axis) + add_homeing[axis];
-+ current_position[axis] = base_home_pos(axis) + add_homeing[axis];
-+ min_pos[axis] = base_min_pos(axis) + add_homeing[axis];
-+ max_pos[axis] = base_max_pos(axis) + add_homeing[axis];
- }
-
- #define HOMEAXIS(LETTER) \