 
     Serial.printf(F("Resetting brightness to %d, contrast to %d and hold time to %d\n"),
                   LcdBrightness, LcdContrast, ReHoldClickTime);
+    Serial.printf(F("Click the RE button to continue...\n"));
 
     // show user we were reset
     lcd.clear();
     lcd.setCursor(0, 0);
     lcd.print("DigitalVFO reset");
     lcd.setCursor(0, 1);
-    lcd.print(" nothing saved");
-
-    // wait until button NOT down
-    while (PIND & 0x10)
+    lcd.print("Click to proceed");
+
+    // flush any events in the queue, then wait for vfo_Click
+    event_flush();
+    while (event_pop() != vfo_Click)
       ;
-
-    // after a small delay, continue
-    delay(2000);
+ 
+    // clear screen and continue
     lcd.clear();
-    delay(1000);
+    delay(500);
   }
   
   // show program name and version number

  // dump EEPROM values
  dump_eeprom();

  // show the main screen and continue in loop()
  show_main_screen();

  // eat any events that may have been generated
  event_flush();
}

//----------------------------------------

byte in_use_char[8] = {0x10,0x18,0x1c,0x1e,0x1c,0x18,0x10,0x00};

// map select_offset to bump values
ULONG offset2bump[] = {1,           // offset = 0
                       10,          // 1
                       100,         // 2
                       1000,        // 3
                       10000,       // 4
                       100000,      // 5
                       1000000,     // 6
                       10000000,    // 7
                       100000000};  // 8

// string holding one entire blank row (allocated in setup())
char *BlankRow = NULL;

// default LCD contrast & brightness
const UINT DefaultLcdContrast = 70;
const UINT DefaultLcdBrightness = 150;

//-----
// Events and the event queue.
