Add CORE_CTL_SET_CBS_REWIND

This commit is contained in:
twinaphex 2016-01-27 03:18:18 +01:00
parent ca00274204
commit 4843e76491
3 changed files with 8 additions and 11 deletions

View File

@ -168,7 +168,7 @@ static bool retro_init_libretro_cbs(void *data)
* Sets the audio sampling callbacks based on whether or not
* rewinding is currently activated.
**/
void retro_set_rewind_callbacks(void)
static void retro_set_rewind_callbacks(void)
{
if (state_manager_frame_is_reversed())
{
@ -188,6 +188,9 @@ bool core_ctl(enum core_ctl_state state, void *data)
{
case CORE_CTL_SET_CBS:
return retro_set_default_callbacks(data);
case CORE_CTL_SET_CBS_REWIND:
retro_set_rewind_callbacks();
break;
case CORE_CTL_INIT:
return retro_init_libretro_cbs(data);
case CORE_CTL_DEINIT:

View File

@ -45,7 +45,9 @@ enum core_ctl_state
CORE_CTL_DEINIT,
CORE_CTL_SET_CBS
CORE_CTL_SET_CBS,
CORE_CTL_SET_CBS_REWIND
};
typedef struct retro_callbacks
@ -59,14 +61,6 @@ typedef struct retro_callbacks
extern retro_callbacks_t retro_ctx;
/**
* retro_set_rewind_callbacks:
*
* Sets the audio sampling callbacks based on whether or not
* rewinding is currently activated.
**/
void retro_set_rewind_callbacks(void);
/* Runs the core for one frame. Use instead of core.retro_run(). */
void retro_run_core(void);

View File

@ -743,5 +743,5 @@ void state_manager_check_rewind(bool pressed)
}
}
retro_set_rewind_callbacks();
core_ctl(CORE_CTL_SET_CBS_REWIND, NULL);
}