Commits

Trammell Hudson committed e6c5738

Freeze the second display for a bit

Comments (0)

Files changed (1)

fireworks/fireworks.c

 
 static digit_t last_sec, last_min, last_hour;
 static digit_t cur_sec, cur_min, cur_hour;
+static digit_t next_sec, next_min, next_hour;
 
 void
 init(void)
 			animate_draw(&last_sec, COLOR_BLACK);
 			last_sec.value = cur_sec.value;
 			last_sec.first = 1;
-			last_sec.start.ms = now_ms + 500;
+			last_sec.start.ms = now_ms + 100;
 			last_sec.end.ms = now_ms + 900;
 			last_sec.start.color = cur_sec.last.color;
 			last_sec.end.color = COLOR_BLACK;
 			last_sec.start.y = cur_sec.last.y;
 			last_sec.end.x = cur_sec.end.x - (50 << VSCREEN_SHIFT);
 			last_sec.end.y = cur_sec.end.y - (50 << VSCREEN_SHIFT);
+
+			next_sec = last_sec;
+			next_sec.start.ms = now_ms + 500;
+			next_sec.end.scale = next_sec.start.scale;
+			next_sec.end.x = next_sec.start.x;
+			next_sec.end.y = next_sec.start.y;
+
 			animate(&last_sec, now_ms);
 		}
 
 	} else {
 		animate(&last_sec, now_ms);
 		animate(&cur_sec, now_ms);
+		animate(&next_sec, now_ms);
 	}
 
 	if (cur_min.value != min)
 
 		cur_hour.end.scale = (10 << VSCREEN_SHIFT);
 		cur_hour.end.y = VSCREEN_HEIGHT/2;
-		cur_hour.end.x = -30 << VSCREEN_SHIFT;
+		cur_hour.end.x = -40 << VSCREEN_SHIFT;
 
 		// They are not yet active, so this will draw the
 		// starting positions