 {
   Serial.println(msg);
   Serial.println("Teensy is paused!");
-  lcd.clear();
-  lcd.setCursor(0, 0);
-  lcd.write(msg);
-  lcd.setCursor(0, 1);
-  lcd.write("Teensy is paused");
-
-  // wait here forever
-  while (1);
-}
-
+  while (1)
+  {
+    lcd.clear();
+    lcd.setCursor(0, 0);
+    lcd.write(msg);
+    lcd.setCursor(0, 1);
+    lcd.write(msg + NUM_COLS);
+    delay(2000);
+    
+    lcd.clear();
+    lcd.write("Teensy is paused");
+    lcd.cursor();
+    delay(2000);
+  }
+}
+
+#ifdef DEBUG
 //----------------------------------------------------------
 // Convert an event number to a display string
 //----------------------------------------------------------

  // initialize the display
  lcd.begin(NUM_COLS, NUM_COLS);      // define display size
  lcd.clear();
  lcd.createChar(SPACE_CHAR, sel_digits[SPACE_INDEX]);

  restore_from_eeprom();

    default:            return "UNKNOWN!";
  }
}
#endif

// display a simple banner
void banner(void)
{
  Serial.print(ProgramName); Serial.print(" "); Serial.println(Version);
  Serial.println(Callsign);
  lcd.clear();
  lcd.setCursor(0, 0);
  lcd.write(ProgramName);
  lcd.write(" ");
  lcd.write(Version);
  lcd.setCursor(0, 1);
  lcd.write(Callsign);
  delay(2000);    // wait a bit

  for (int i = 0; i <= 16; ++i)
  {
    lcd.clear();
    lcd.setCursor(i, 0);
    lcd.write(ProgramName);
    lcd.write(" ");
    lcd.write(Version);
    lcd.setCursor(0, 1);
    lcd.write(Callsign16 + i);
    delay(200);
  }

  delay(500);
}
////////////////////////////////////////////////////////////////////////////////
// The system event queue.
// Implemented as a circular buffer.
