       timediff /= 60;
       timespec = 'h';
     }
-    
+
     if (timediff > 23)
     {
       timediff /= 24;
       timespec = 'd';
     }
-    
+
     lcd.setCursor(0, 0);
     snprintf(outstr, 17, "H%3d.%1d @%3d%c %3d", (int)high_temp.temperature, (int)(high_temp.temperature * 10) % 10, timediff, timespec, (int)current_temp);
     lcd.print(outstr);
-    
+
     // Then do the low
     timediff = minutesAgo(low_temp.time);
     timespec = 'm';

  int timediff;
  unsigned char timespec;
  char outstr[17];
  
  // Get the current temperature.
  getTemperature(&current_temp);

  if (millis() > (3*1000))
  {
    // We are past the startup screen.
    
    // Check for button presses.
    processButton();

    // Increment color if the button was pressed    
    if (buttonIsPressed)
    {
      incrementColor(&next_color);
      buttonIsPressed = FALSE;
    }
    
    // Check for records
    if (current_temp > high_temp.temperature)
    {
      high_temp.temperature = current_temp;
      high_temp.time = millis();
    }
    
    if (current_temp < low_temp.temperature)
    {
      low_temp.temperature = current_temp;

  int readval = analogRead(TEMPERATURE_PIN);
  byte readval_shifted;
  long bigsum = 0;

  if (currentVoltageBin < 0)
  {
    // special case: first time through.
