octoshock - fix some irregularities in savestate quality. this is intended to address #2214, and at least it passes the "first 60-100 frames in tastudio integrity test" test case given, but I still can't promise it's perfect.
This commit is contained in:
parent
f561e79489
commit
593c01a9e0
Binary file not shown.
|
@ -26,6 +26,9 @@ NewStateExternalBuffer::NewStateExternalBuffer(char *buffer, long maxlength)
|
|||
|
||||
void NewStateExternalBuffer::Save(const void *ptr, size_t size, const char *name)
|
||||
{
|
||||
if(length <= 0x30a907 && length + size > 0x30a907)
|
||||
{
|
||||
}
|
||||
if (maxlength - length >= (long)size)
|
||||
{
|
||||
std::memcpy(buffer + length, ptr, size);
|
||||
|
|
|
@ -1658,7 +1658,7 @@ SYNCFUNC(PS_GPU)
|
|||
|
||||
if(isReader)
|
||||
{
|
||||
//BIZHAWK: not needed
|
||||
//BIZHAWK: not needed, since we can sync TexCache directly
|
||||
//for(unsigned i = 0; i < 256; i++)
|
||||
//{
|
||||
// TexCache[i].Tag = TexCache_Tag[i];
|
||||
|
|
|
@ -508,7 +508,7 @@ template<int numvertices, bool goraud, bool textured, int BlendMode, bool TexMul
|
|||
static void Command_DrawPolygon(const uint32 *cb)
|
||||
{
|
||||
const unsigned cb0 = cb[0];
|
||||
tri_vertex vertices[3];
|
||||
tri_vertex vertices[3] = {0}; //zero 04-oct-2020 - zero initialize for more deterministic results (sometimes UV arent set)
|
||||
unsigned sv = 0;
|
||||
//uint32 tpage = 0;
|
||||
|
||||
|
|
|
@ -1229,7 +1229,8 @@ SYNCFUNC(PS_SPU)
|
|||
{
|
||||
NSS(Voices);
|
||||
|
||||
NSS(NoiseCounter);
|
||||
NSS(NoiseDivider);
|
||||
NSS(NoiseCounter);
|
||||
NSS(LFSR);
|
||||
|
||||
NSS(FM_Mode);
|
||||
|
|
Loading…
Reference in New Issue