mirror of
https://github.com/libretro/RetroArch
synced 2025-02-27 00:40:20 +00:00
Add RETRO_CTL_RETRO_SET_ENVIRONMENT
This commit is contained in:
parent
cb78c1c610
commit
6958a23b96
@ -564,6 +564,7 @@ static bool event_init_content(void)
|
||||
|
||||
static bool event_init_core(void)
|
||||
{
|
||||
retro_ctx_environ_info_t info;
|
||||
global_t *global = global_get_ptr();
|
||||
settings_t *settings = config_get_ptr();
|
||||
|
||||
@ -579,7 +580,8 @@ static bool event_init_core(void)
|
||||
/* reset video format to libretro's default */
|
||||
video_driver_set_pixel_format(RETRO_PIXEL_FORMAT_0RGB1555);
|
||||
|
||||
core.retro_set_environment(rarch_environment_cb);
|
||||
info.env = rarch_environment_cb;
|
||||
core_ctl(CORE_CTL_RETRO_SET_ENVIRONMENT, &info);
|
||||
|
||||
/* auto-remap: apply remap files */
|
||||
if(settings->auto_remaps_enable)
|
||||
|
@ -187,6 +187,14 @@ bool core_ctl(enum core_ctl_state state, void *data)
|
||||
return false;
|
||||
retro_ctx.poll_cb();
|
||||
break;
|
||||
case CORE_CTL_RETRO_SET_ENVIRONMENT:
|
||||
{
|
||||
retro_ctx_environ_info_t *info = (retro_ctx_environ_info_t*)data;
|
||||
if (!info)
|
||||
return false;
|
||||
core.retro_set_environment(info->env);
|
||||
}
|
||||
break;
|
||||
case CORE_CTL_RETRO_GET_SYSTEM_AV_INFO:
|
||||
{
|
||||
struct retro_system_av_info *av_info = (struct retro_system_av_info*)data;
|
||||
|
@ -64,9 +64,16 @@ enum core_ctl_state
|
||||
|
||||
CORE_CTL_RETRO_CTX_FRAME_CB,
|
||||
|
||||
CORE_CTL_RETRO_CTX_POLL_CB
|
||||
CORE_CTL_RETRO_CTX_POLL_CB,
|
||||
|
||||
CORE_CTL_RETRO_SET_ENVIRONMENT
|
||||
};
|
||||
|
||||
typedef struct retro_ctx_environ_info
|
||||
{
|
||||
retro_environment_t env;
|
||||
} retro_ctx_environ_info_t;
|
||||
|
||||
typedef struct retro_ctx_frame_info
|
||||
{
|
||||
const void *data;
|
||||
|
Loading…
x
Reference in New Issue
Block a user