static int demo_end_action(int tok, int val) { audio_play(AUD_MENU, 1.0f); switch (tok) { case DEMO_DEL: demo_paused = 0; hud_resume(); return goto_state(&st_demo_del); case DEMO_KEEP: demo_paused = 0; demo_replay_stop(0); hud_resume(); return goto_state(&st_demo); case DEMO_QUIT: demo_replay_stop(0); hud_resume(); return 0; case DEMO_REPLAY: demo_replay_stop(0); hud_demo(); progress_replay(curr_demo()); return goto_state(&st_demo_play); case DEMO_CONTINUE: hud_demo(); return goto_state(&st_demo_play); } return 1; }
static int demo_play_enter(struct state *st, struct state *prev) { video_hide_cursor(); if (demo_paused) { demo_paused = 0; prelude = 0; audio_music_fade_in(0.5f); return 0; } /* * Post-1.5.1 replays include view data in the first update, this * line is currently left in for compatibility with older replays. */ game_client_fly(0.0f); if (check_compat && !game_compat_map) { goto_state(&st_demo_compat); return 0; } prelude = 1.0f; speed = SPEED_NORMAL; demo_replay_speed(speed); show_hud = 1; hud_update(0); hud_demo(); return demo_play_gui(); }
int main() { long int delay; int brg; // Call the various initialization functions. init_osd(); setup_pll(); setup_io(); setup_int(); init_gfx(1); // Turn on doze, with a 1:1 ratio. CLKDIVbits.DOZEN = 0; CLKDIVbits.DOZE = 0b000; // Start in console mode. Print startup messages. con_init(); con_rolling = 0; con_puts("Super OSD v3.2-lite", 0); con_puts("dsPIC33F side", 0); con_puts("Copr. 2010 Tom O.", 0); ; con_puts("COMPILED FOR: ENGLISH", 0); con_puts("", 0); con_puts("Booting kernel [ OK ]", 0); con_puts("Verify 24F [ OK ]", 0); con_puts("Verify 33F [ OK ]", 0); con_puts("Switch to hi res [ OK ]", 0); init_gfx(0); if(mem_test_full()) { con_puts("VRAM test [ OK ]", 0); } else { con_puts("VRAM test [FAIL]", 0); con_puts("Check memory soon! ", 0); // Show warning for some time delay = 2000000; while(delay--); } // Clear graphics buffers of any memory test data remaining. init_gfx(0); con_puts("Init UART [ OK ]", 0); // BUG: occasionally resets processor on start up //interface_init_uart(); //brg = interface_set_baudrate(1843200); //sprintf(temp, "BRG=%d", brg); //con_puts(temp, 0); /* con_puts("PC detect... [FAIL]", 0); con_puts("GPS detect... [ OK ]", 0); con_puts("SPI initialized [ OK ]", 0); con_puts("Found flash mem [ OK ]", 0); con_puts(" Size: 2048 KB [ OK ]", 0); con_puts("USB not supported [SKIP]", 0); con_puts("Init GPS [ OK ]", 0); con_puts("Test I2C [ OK ]", 0); con_puts(" Xbee Adap. 2.0 [ OK ]", 0); con_puts(" LSM303 acc [ OK ]", 0); con_puts(" LSM303 mag [ OK ]", 0); con_puts(" ITG3200 gyro [FAIL]", 0); con_puts("Loading settings [ OK ]", 0); con_puts("Init splash [ OK ]", 0); */ // Demo HUD. //buffer_mode(0); con_puts("Launching hud_demo", 0); delayhowlong = 10000; hud_demo(); }