mirror of
https://github.com/RaySollium99/picodrive.git
synced 2025-09-05 07:17:45 -04:00
libretro, improve 32x save/load for run-ahead
This commit is contained in:
parent
b72662e224
commit
92f7a430ca
2 changed files with 8 additions and 0 deletions
|
@ -347,6 +347,7 @@ static int state_save(void *file)
|
|||
CHECKED_WRITE(chwc->chunk, chwc->size, chwc->ptr);
|
||||
}
|
||||
|
||||
CHECKED_WRITE(0, 0, NULL);
|
||||
retval = 0;
|
||||
|
||||
out:
|
||||
|
@ -540,6 +541,8 @@ static int state_load(void *file)
|
|||
break;
|
||||
#endif
|
||||
default:
|
||||
if (len|chunk == 0)
|
||||
goto readend;
|
||||
if (carthw_chunks != NULL)
|
||||
{
|
||||
carthw_state_chunk *chwc;
|
||||
|
|
|
@ -872,9 +872,14 @@ int state_fseek(void *file, long offset, int whence)
|
|||
size_t retro_serialize_size(void)
|
||||
{
|
||||
struct savestate_state state = { 0, };
|
||||
unsigned AHW = PicoIn.AHW;
|
||||
int ret;
|
||||
|
||||
/* we need the max possible size here, so include 32X for MD and MCD */
|
||||
if (!(AHW & (PAHW_SMS|PAHW_PICO|PAHW_SVP)))
|
||||
PicoIn.AHW |= PAHW_32X;
|
||||
ret = PicoStateFP(&state, 1, NULL, state_skip, NULL, state_fseek);
|
||||
PicoIn.AHW = AHW;
|
||||
if (ret != 0)
|
||||
return 0;
|
||||
|
||||
|
|
Loading…
Add table
Add a link
Reference in a new issue