UINT32 canyon_state::screen_update_canyon(screen_device &screen, bitmap_ind16 &bitmap, const rectangle &cliprect) { m_bg_tilemap->draw(bitmap, cliprect, 0, 0); draw_sprites(bitmap, cliprect); draw_bombs(bitmap, cliprect); /* watchdog is disabled during service mode */ machine().watchdog_enable(!(ioport("IN2")->read() & 0x10)); return 0; }
static void draw(struct game_state *gs) { extern struct game_state *cur_state; extern struct game_state playback_state; glMatrixMode(GL_MODELVIEW); glPushMatrix(); set_modelview_matrix(); if (!settings.static_settings || settings.static_settings->background) draw_level_background(); if (cur_state != &playback_state && settings.control_type == CONTROL_HYBRID && ship_is_visible()) draw_crosshair(); if (inner_state.state != IS_LEVEL_CLEARED && inner_state.state != IS_LEVEL_TRANSITION && (inner_state.state != IS_WAVE_CLEARED || inner_state.tics < WAVE_CLEARED_TICS/2)) draw_arena_outline(cur_arena, 1, cur_arena->border_type); draw_explosions(); draw_particles(); if (ship_is_visible()) { draw_ship(); draw_missiles(); draw_bombs(); draw_lasers(); draw_foes(); draw_powerups(); } draw_in_game_texts(); draw_text(); glMatrixMode(GL_MODELVIEW); glPopMatrix(); }