             digitalWrite(shaft_hardware[shaft].pin_step, LOW);
             delayMicroseconds(MIN_STEP_uSEC);
             steps += stepadj; }
-         int hundredthinches = (int)(((long)steps * HUNDRETHINCHES_PER_ROTATION) / STEPS_PER_ROTATION);
-         if (hundredthinches < 0) // show the distance the frame moved up or down, in inches
-            sprintf(str, "-%d.%02d\"", (-hundredthinches) / 100, -hundredthinches % 100);
-         else sprintf(str, "+%d.%02d\"", hundredthinches / 100, hundredthinches % 100);
-         center_message(2, str); }
-      if (allow_abort && event == ePBH) {
-         steps = 999;
+         if (!centering) {
+            char old_distance[8], distance[8];
+            format_distance(old_distance, old_steps);
+            format_distance(distance, steps);
+            sprintf(str, "%s -> %s", old_distance, distance);
+            center_message(2, str); } }
+      if (centering && event == ePBH) {
+         steps = CALIB_SKIP;
          goto do_exit; }
       if (event == ePBV) {
 do_exit:

         break;
      default: ; } }
//*



   char id[4]; // "fil" for identification
   int16_t size;   // size of the whole file, including this header
   byte flags;
#define FILE_TABBY 0x01         // use Tabby 1/2 between each treadle step
#define FILE_INVERT_TIEUPS 0x02 // invert the top and bottom of the fabric
   byte unused;
   byte checksum;
   char filename[MAX_FILENAME + 1]; // null-terminated string
