 {
   for ( int i = 0; i < NEOPIXEL_LEDS; i++ )
     strip.setPixelColor(i,0);
+}
+
+bool prompted = false;
+int currentPixel = 0;
+
+bool enterAlarm(bool forceChange)
+{
+  if ( !prompted || forceChange)
+  {
+    clearPixels();
+    strip.show();
+    Serial.print(F("Current wake time is "));
+    printTime(wakeTime);
+    Serial.println("");
+    Serial.println(F("Enter time to wake in 24 hour clock HH,MM"));
+    prompted = true;
+    
+  }
+  if ( millis() % 100 == 0 )
+  {
+      strip.setPixelColor(currentPixel,0);
+      strip.setPixelColor(NEOPIXEL_LEDS-currentPixel++,0);
+      if ( currentPixel >= NEOPIXEL_LEDS )
+        currentPixel = 0;
+      strip.setPixelColor(currentPixel,Wheel(colorValue));
+      strip.setPixelColor(NEOPIXEL_LEDS-currentPixel,Wheel(colorValue));
+      strip.show();
+      delay(5);
+  }
+  
+  // if there's any serial available, read it:
+  if (Serial.available() > 0) {
+    
+    // look for the next valid integer in the incoming serial stream:
+    int hours = Serial.parseInt();
+    // do it again:
+    int minutes = Serial.parseInt();
+    while (Serial.available() > 0) {
+      Serial.read(); // pull off rest
+    }
+    if ( hours >= 0 && hours < 24 && minutes >=0 && minutes < 60 )
+    {
+      wakeTime = DateTime( 2016,1,1, // ignore y,m,d
+                              hours,minutes); 
+      printTime(wakeTime);
+      Serial.println(F(" is new waketime"));     
+      EEPROM.put(WAKE_INDEX,wakeTime.unixtime());
+    }
+    else
+      Serial.println(F("Invalid time.  Must be 0-23 for hour and 0-59 for minute"));
+      
+    prompted = false;
+      
+    return true;
+  }
+  return false;
 }
 /*******************************************************************************
 *******************************************************************************/

    case FADING_BACKLIGHT_MODE:
      fadingBacklight(current, forceChange);
      break;
    case NIGHTLIGHT_MODE:
      nightlight(current, forceChange);
      break;
  }
  forceChange = false;
  
  if ( digitalRead(MODE_SWITCH_PIN) == LOW )
  {
    if ( !pressed )
    {
      pressed = true;
      mode++;
      if ( mode > NIGHTLIGHT_MODE )
        mode = BACKLIGHT_MODE;

      forceChange = true;
      printTime(current);
      Serial.print(F(" Switching mode to "));
      Serial.println(mode);
      EEPROM.put(MODE_INDEX,mode);

      clearPixels();
    }
  }
  else

  if (! rtc.isrunning()) {
    Serial.println(F("RTC is NOT running!"));
    // following line sets the RTC to the date & time this sketch was compiled
    rtc.adjust(compileTime);
  }  
}

