Create CORE_CTL_RETRO_SERIALIZE and CORE_CTL_RETRO_UNSERIALIZE
This commit is contained in:
parent
57d19b21b5
commit
dad9b4abf8
|
@ -172,6 +172,22 @@ bool core_ctl(enum core_ctl_state state, void *data)
|
||||||
|
|
||||||
switch (state)
|
switch (state)
|
||||||
{
|
{
|
||||||
|
case CORE_CTL_RETRO_UNSERIALIZE:
|
||||||
|
{
|
||||||
|
retro_ctx_serialize_info_t *info = (retro_ctx_serialize_info_t*)data;
|
||||||
|
if (!info)
|
||||||
|
return false;
|
||||||
|
core.retro_unserialize(info->data_const, info->size);
|
||||||
|
}
|
||||||
|
break;
|
||||||
|
case CORE_CTL_RETRO_SERIALIZE:
|
||||||
|
{
|
||||||
|
retro_ctx_serialize_info_t *info = (retro_ctx_serialize_info_t*)data;
|
||||||
|
if (!info)
|
||||||
|
return false;
|
||||||
|
core.retro_serialize(info->data, info->size);
|
||||||
|
}
|
||||||
|
break;
|
||||||
case CORE_CTL_RETRO_SERIALIZE_SIZE:
|
case CORE_CTL_RETRO_SERIALIZE_SIZE:
|
||||||
{
|
{
|
||||||
retro_ctx_size_info_t *info = (retro_ctx_size_info_t *)data;
|
retro_ctx_size_info_t *info = (retro_ctx_size_info_t *)data;
|
||||||
|
|
|
@ -68,9 +68,20 @@ enum core_ctl_state
|
||||||
|
|
||||||
CORE_CTL_RETRO_SET_ENVIRONMENT,
|
CORE_CTL_RETRO_SET_ENVIRONMENT,
|
||||||
|
|
||||||
CORE_CTL_RETRO_SERIALIZE_SIZE
|
CORE_CTL_RETRO_SERIALIZE_SIZE,
|
||||||
|
|
||||||
|
CORE_CTL_RETRO_SERIALIZE,
|
||||||
|
|
||||||
|
CORE_CTL_RETRO_UNSERIALIZE
|
||||||
};
|
};
|
||||||
|
|
||||||
|
typedef struct retro_ctx_serialize_info
|
||||||
|
{
|
||||||
|
const void *data_const;
|
||||||
|
void *data;
|
||||||
|
size_t size;
|
||||||
|
} retro_ctx_serialize_info_t;
|
||||||
|
|
||||||
typedef struct retro_ctx_size_info
|
typedef struct retro_ctx_size_info
|
||||||
{
|
{
|
||||||
size_t size;
|
size_t size;
|
||||||
|
|
Loading…
Reference in New Issue