struct screen *greets_screen(void);
struct screen *infcubes_screen(void);
struct screen *hairball_screen(void);
+struct screen *cybersun_screen(void);
+struct screen *raytrace_screen(void);
void start_loadscr(void);
void end_loadscr(void);
if(!(scr[idx++] = hairball_screen())) {
return -1;
}
+ if(!(scr[idx++] = cybersun_screen())) {
+ return -1;
+ }
+ if(!(scr[idx++] = raytrace_screen())) {
+ return -1;
+ }
num_screens = idx;
assert(num_screens <= NUM_SCR);
/* loading screen */
extern uint16_t loading_pixels[];
static long prev_load_msec;
-static long load_delay = 180;
+static long load_delay;
void start_loadscr(void)
{
}
swap_buffers(loading_pixels);
- sleep_msec(load_delay * 2);
+ if(load_delay) {
+ sleep_msec(load_delay * 2);
+ }
prev_load_msec = get_msec();
}
blitfb(loading_pixels + SPLAT_Y * 320 + SPLAT_X, loading_pixels + 320 * 240, 32, 72, 32);
blit_key(loading_pixels + FING_Y * 320 + FING_LAST_X, 320, loading_pixels + 247 * 320 + 64, FING_W, FING_H, FING_W, 0);
swap_buffers(loading_pixels);
- sleep_msec(load_delay * 4);
+ if(load_delay) {
+ sleep_msec(load_delay * 3);
+ }
}
void loadscr(int n, int count)