diff --git a/ssnes.c b/ssnes.c index 8c4090be56..824f26341c 100644 --- a/ssnes.c +++ b/ssnes.c @@ -808,14 +808,18 @@ static void check_rewind(void) if (driver.input->key_pressed(driver.input_data, SSNES_REWIND)) { + msg_queue_clear(g_extern.msg_queue); void *buf; if (state_manager_pop(g_extern.state_manager, &buf)) { - msg_queue_clear(g_extern.msg_queue); msg_queue_push(g_extern.msg_queue, "Rewinding!", 0, 30); snes_unserialize(buf, snes_serialize_size()); g_extern.frame_is_reverse = true; } + else + { + msg_queue_push(g_extern.msg_queue, "Reached end of rewind buffer!", 0, 30); + } } else { diff --git a/tools/ssnes-joyconfig.c b/tools/ssnes-joyconfig.c index 08cb1494c7..401f000e69 100644 --- a/tools/ssnes-joyconfig.c +++ b/tools/ssnes-joyconfig.c @@ -88,6 +88,7 @@ static struct bind binds[] = { MISC_BIND("Toggle fast forward", toggle_fast_forward) MISC_BIND("Audio input rate step up", rate_step_up) MISC_BIND("Audio input rate step down", rate_step_down) + MISC_BIND("Rewind", rewind) }; void get_binds(config_file_t *conf, int player, int joypad)