gpgx: fix some problems with save+loadstate and different screen sizees.
note: delete all previous gpgx savestates
This commit is contained in:
parent
253ba4ccda
commit
cc23c120c0
|
@ -468,6 +468,7 @@ namespace BizHawk.Emulation.Cores.Consoles.Sega.gpgx
|
|||
Frame = reader.ReadInt32();
|
||||
LagCount = reader.ReadInt32();
|
||||
IsLagFrame = reader.ReadBoolean();
|
||||
update_video();
|
||||
}
|
||||
|
||||
public byte[] SaveStateBinary()
|
||||
|
|
|
@ -123,7 +123,13 @@ GPGX_EX int gpgx_state_load(void *src, int size)
|
|||
if (size != STATE_SIZE)
|
||||
return 0;
|
||||
|
||||
return !!state_load((unsigned char *) src);
|
||||
if (state_load((unsigned char *) src))
|
||||
{
|
||||
update_viewport();
|
||||
return 1;
|
||||
}
|
||||
else
|
||||
return 0;
|
||||
}
|
||||
|
||||
void osd_input_update(void)
|
||||
|
|
|
@ -189,6 +189,8 @@ int state_load(unsigned char *state)
|
|||
sms_cart_switch(~io_reg[0x0E]);
|
||||
}
|
||||
|
||||
load_param(&bitmap.viewport, sizeof(bitmap.viewport));
|
||||
|
||||
return bufferptr;
|
||||
}
|
||||
|
||||
|
@ -280,6 +282,8 @@ int state_save(unsigned char *state)
|
|||
bufferptr += sms_cart_context_save(&state[bufferptr]);
|
||||
}
|
||||
|
||||
save_param(&bitmap.viewport, sizeof(bitmap.viewport));
|
||||
|
||||
/* return total size */
|
||||
return bufferptr;
|
||||
}
|
||||
|
|
Binary file not shown.
Loading…
Reference in New Issue