From c205e105165880c652f04e44b781de6fdd548ca3 Mon Sep 17 00:00:00 2001 From: Aaron Giles Date: Thu, 24 Apr 2008 05:32:57 +0000 Subject: [PATCH] Fix 01742: punchout, armwrest + many vsnes.c and playch10.c games: Refreshspeed causes fatal exception in punchout. --- src/emu/video.c | 10 ++++++---- 1 file changed, 6 insertions(+), 4 deletions(-) diff --git a/src/emu/video.c b/src/emu/video.c index 4241fa9b24b..9aea274d024 100644 --- a/src/emu/video.c +++ b/src/emu/video.c @@ -1989,11 +1989,13 @@ static void update_refresh_speed(running_machine *machine) UINT32 target_speed; /* find the screen with the shortest frame period (max refresh rate) */ + /* note that we first check the token since this can get called before all screens are created */ for (screen = video_screen_first(machine->config); screen != NULL; screen = video_screen_next(screen)) - { - screen_state *state = get_safe_token(screen); - min_frame_period = MIN(min_frame_period, state->frame_period); - } + if (screen->token != NULL) + { + screen_state *state = get_safe_token(screen); + min_frame_period = MIN(min_frame_period, state->frame_period); + } /* compute a target speed as an integral percentage */ target_speed = floor(minrefresh * 100.0 / ATTOSECONDS_TO_HZ(min_frame_period));