     zTicksRemaining = accelTab[zAccelStep];
     
     if (zPosition < zTarget) {
-      SET_Z_DIR();
+      FORWARD_Z();
       if (zPosition < SAFE_LIMIT) {
         ++zPosition;
         STEP_Z();
       }
     } else if (zPosition > zTarget) {
-      CLR_Z_DIR();
+      BACKWARD_Z();
       if (!AT_Z_MIN()) {
         --zPosition;
         STEP_Z();

#define CLR_Y_DIR() PORTF &= ~_BV(PF7)
#define SET_Z_DIR() PORTL |= _BV(PL1)
#define CLR_Z_DIR() PORTL &= ~_BV(PL1)

// Enables are active low on Pololu
#define ENABLE_X_MOTOR() PORTD &= ~_BV(PD7)

boolean isHomeZ() {
  return AT_Z_MIN();
}

boolean homed = false;

void loop() {
  
