From 4f909963e4d1a21115b4789726f6369f54c253be Mon Sep 17 00:00:00 2001
From: Bernhard <bkubicek@x201.(none)>
Date: Sun, 4 Dec 2011 09:02:09 +0100
Subject: [PATCH] make QUICKHOME configureable

---
 Marlin/Configuration.h | 1 +
 Marlin/Marlin.pde      | 3 ++-
 2 files changed, 3 insertions(+), 1 deletion(-)

diff --git a/Marlin/Configuration.h b/Marlin/Configuration.h
index 066e6100589..6f40bbb7333 100644
--- a/Marlin/Configuration.h
+++ b/Marlin/Configuration.h
@@ -214,6 +214,7 @@ const bool Z_ENDSTOPS_INVERTING = true; // set to true to invert the logic of th
 #define X_HOME_RETRACT_MM 5 
 #define Y_HOME_RETRACT_MM 5 
 #define Z_HOME_RETRACT_MM 1 
+#define QUICK_HOME  //if this is defined, if both x and y are to be homed, a diagonal move will be performed initially.
 
 #define AXIS_RELATIVE_MODES {false, false, false, false}
 
diff --git a/Marlin/Marlin.pde b/Marlin/Marlin.pde
index 06fd0977661..39f42f0ac6b 100644
--- a/Marlin/Marlin.pde
+++ b/Marlin/Marlin.pde
@@ -532,7 +532,7 @@ FORCE_INLINE void process_commands()
       }
       feedrate = 0.0;
       home_all_axis = !((code_seen(axis_codes[0])) || (code_seen(axis_codes[1])) || (code_seen(axis_codes[2])));
-      
+      #ifdef QUICK_HOME
       if( code_seen(axis_codes[0]) && code_seen(axis_codes[1]) )  //first diagonal move
       {
         current_position[X_AXIS] = 0; current_position[Y_AXIS] = 0;
@@ -545,6 +545,7 @@ FORCE_INLINE void process_commands()
         prepare_move();
         current_position[X_AXIS] = 0; current_position[Y_AXIS] = 0;
       }
+      #endif
       
       if((home_all_axis) || (code_seen(axis_codes[X_AXIS]))) 
       {