|  |  | @ -96,6 +96,8 @@ float autotemp_factor=0.1; | 
			
		
	
		
		
			
				
					
					|  |  |  | bool autotemp_enabled=false; |  |  |  | bool autotemp_enabled=false; | 
			
		
	
		
		
			
				
					
					|  |  |  | #endif |  |  |  | #endif | 
			
		
	
		
		
			
				
					
					|  |  |  | 
 |  |  |  | 
 | 
			
		
	
		
		
			
				
					
					|  |  |  |  |  |  |  | unsigned char g_uc_extruder_last_move[3] = {0,0,0}; | 
			
		
	
		
		
			
				
					
					|  |  |  |  |  |  |  | 
 | 
			
		
	
		
		
			
				
					
					|  |  |  | //===========================================================================
 |  |  |  | //===========================================================================
 | 
			
		
	
		
		
			
				
					
					|  |  |  | //=================semi-private variables, used in inline  functions    =====
 |  |  |  | //=================semi-private variables, used in inline  functions    =====
 | 
			
		
	
		
		
			
				
					
					|  |  |  | //===========================================================================
 |  |  |  | //===========================================================================
 | 
			
		
	
	
		
		
			
				
					|  |  | @ -662,11 +664,34 @@ block->steps_y = labs((target[X_AXIS]-position[X_AXIS]) - (target[Y_AXIS]-positi | 
			
		
	
		
		
			
				
					
					|  |  |  |   { |  |  |  |   { | 
			
		
	
		
		
			
				
					
					|  |  |  |     if (DISABLE_INACTIVE_EXTRUDER) //enable only selected extruder
 |  |  |  |     if (DISABLE_INACTIVE_EXTRUDER) //enable only selected extruder
 | 
			
		
	
		
		
			
				
					
					|  |  |  |     { |  |  |  |     { | 
			
		
	
		
		
			
				
					
					|  |  |  |  |  |  |  | 
 | 
			
		
	
		
		
			
				
					
					|  |  |  |  |  |  |  |       if(g_uc_extruder_last_move[0] > 0) g_uc_extruder_last_move[0]--; | 
			
		
	
		
		
			
				
					
					|  |  |  |  |  |  |  |       if(g_uc_extruder_last_move[1] > 0) g_uc_extruder_last_move[1]--; | 
			
		
	
		
		
			
				
					
					|  |  |  |  |  |  |  |       if(g_uc_extruder_last_move[2] > 0) g_uc_extruder_last_move[2]--; | 
			
		
	
		
		
			
				
					
					|  |  |  |  |  |  |  |        | 
			
		
	
		
		
			
				
					
					|  |  |  |       switch(extruder) |  |  |  |       switch(extruder) | 
			
		
	
		
		
			
				
					
					|  |  |  |       { |  |  |  |       { | 
			
		
	
		
		
			
				
					
					|  |  |  |         case 0: enable_e0(); disable_e1(); disable_e2(); break; |  |  |  |         case 0:  | 
			
				
				
			
		
	
		
		
			
				
					
					|  |  |  |         case 1: disable_e0(); enable_e1(); disable_e2(); break; |  |  |  |           enable_e0();  | 
			
				
				
			
		
	
		
		
			
				
					
					|  |  |  |         case 2: disable_e0(); disable_e1(); enable_e2(); break; |  |  |  |           g_uc_extruder_last_move[0] = BLOCK_BUFFER_SIZE*2; | 
			
				
				
			
		
	
		
		
	
		
		
	
		
		
	
		
		
			
				
					
					|  |  |  |  |  |  |  |            | 
			
		
	
		
		
			
				
					
					|  |  |  |  |  |  |  |           if(g_uc_extruder_last_move[1] == 0) disable_e1();  | 
			
		
	
		
		
			
				
					
					|  |  |  |  |  |  |  |           if(g_uc_extruder_last_move[2] == 0) disable_e2();  | 
			
		
	
		
		
			
				
					
					|  |  |  |  |  |  |  |         break; | 
			
		
	
		
		
			
				
					
					|  |  |  |  |  |  |  |         case 1: | 
			
		
	
		
		
			
				
					
					|  |  |  |  |  |  |  |           enable_e1();  | 
			
		
	
		
		
			
				
					
					|  |  |  |  |  |  |  |           g_uc_extruder_last_move[1] = BLOCK_BUFFER_SIZE*2; | 
			
		
	
		
		
			
				
					
					|  |  |  |  |  |  |  |            | 
			
		
	
		
		
			
				
					
					|  |  |  |  |  |  |  |           if(g_uc_extruder_last_move[0] == 0) disable_e0();  | 
			
		
	
		
		
			
				
					
					|  |  |  |  |  |  |  |           if(g_uc_extruder_last_move[2] == 0) disable_e2();  | 
			
		
	
		
		
			
				
					
					|  |  |  |  |  |  |  |         break; | 
			
		
	
		
		
			
				
					
					|  |  |  |  |  |  |  |         case 2: | 
			
		
	
		
		
			
				
					
					|  |  |  |  |  |  |  |           enable_e2();  | 
			
		
	
		
		
			
				
					
					|  |  |  |  |  |  |  |           g_uc_extruder_last_move[2] = BLOCK_BUFFER_SIZE*2; | 
			
		
	
		
		
			
				
					
					|  |  |  |  |  |  |  |            | 
			
		
	
		
		
			
				
					
					|  |  |  |  |  |  |  |           if(g_uc_extruder_last_move[0] == 0) disable_e0();  | 
			
		
	
		
		
			
				
					
					|  |  |  |  |  |  |  |           if(g_uc_extruder_last_move[1] == 0) disable_e1();  | 
			
		
	
		
		
			
				
					
					|  |  |  |  |  |  |  |         break;         | 
			
		
	
		
		
			
				
					
					|  |  |  |       } |  |  |  |       } | 
			
		
	
		
		
			
				
					
					|  |  |  |     } |  |  |  |     } | 
			
		
	
		
		
			
				
					
					|  |  |  |     else //enable all
 |  |  |  |     else //enable all
 | 
			
		
	
	
		
		
			
				
					|  |  | 
 |