 }
 
 
-void forwardTime(ClockTime & t) {
-  while (digitalRead(FwdButton)==LOW) {
-    ++t.minute;
-    if (t.minute > 59) {
-      ++t.hour;
-      t.minute = 0;
-    }
-    if (t.hour > 23) {
-      t.hour = 0;
-    }
-    updateTimeDisplay(t,true,true);
-    delay(forward_delay);
-  }
-}
-
-void rewindTime(ClockTime & t) {
-  while (digitalRead(RewButton)==LOW) {
-    --t.minute;
-    if (t.minute < 0) {
-      --t.hour;
-      t.minute = 59;
-    }
-    if (t.hour < 0) {
-      t.hour = 23;
-    }
-    updateTimeDisplay(t,true,true);
-    delay(rewind_delay);
-  }
-
-}
-
-void forwardAlarm() {
-  while (digitalRead(FwdButton)==LOW) {
-    ++alarmTime;
-    updateTimeDisplay(alarmTime,true,true);
-    delay(forward_delay);
-  }
-}
-
-void rewindAlarm() {
- while (digitalRead(RewButton)==LOW) {
-    --alarmTime;
-    updateTimeDisplay(alarmTime,true,true);
-    delay(rewind_delay);
-  }
-}
-
+void updateTime(ClockTime & t, int16_t delta) {
+  t.minute += delta;
+  updateTimeDisplay(t,true,true);
+}
+
+void updateAlarm(int16_t delta) {
+  alarmTime += delta;
+  updateTimeDisplay(alarmTime,true,true);
+}
 
 
 void setTime() {
+  digitalWrite(TimeLED,HIGH);
   DateTime currentTime = RTC.now();
   ClockTime t(currentTime);
   display_Cloc();

      setSunSet();
    }
  } 
  else if (digitalRead(FwdButton)==LOW && debounceDigitalRead(FwdButton)==LOW) {
    matrixBrightness = max(min(15,matrixBrightness+1),0); 
    matrix.setBrightness(matrixBrightness); // 0-15
    waitForButtonDepress(FwdButton);
    writeBrightnessToEEPROM();
  } 
  else if (digitalRead(RewButton)==LOW && debounceDigitalRead(RewButton)==LOW) {
    matrixBrightness = max(min(15,matrixBrightness-1),0); 
    matrix.setBrightness(matrixBrightness); // 0-15
    waitForButtonDepress(RewButton);
    writeBrightnessToEEPROM();
  }
  updateLight();
  updateCurrentTime();
  updateClockTime();

  else if (digitalRead(TimeButton)==LOW && debounceDigitalRead(TimeButton)==LOW) {
    setTime();
  } 
  else if (digitalRead(OffButton)==HIGH && debounceDigitalRead(OffButton)==HIGH) {
    if (alarmActive) {
      alarmActive = false;
      alarmEnabled = false;
