Merge pull request #208 from retro-wertz/update_state

Update
This commit is contained in:
hizzlekizzle
2018-03-06 11:18:03 -06:00
committed by GitHub

View File

@@ -53,7 +53,6 @@ extern SFORMAT FCEUPPU_STATEINFO[];
extern SFORMAT FCEUSND_STATEINFO[];
extern SFORMAT FCEUCTRL_STATEINFO[];
SFORMAT SFCPU[] = {
{ &X.PC, 2 | RLSB, "PC\0" },
{ &X.A, 1, "A\0\0" },
@@ -107,14 +106,14 @@ static int SubWrite(memstream_t *mem, SFORMAT *sf)
#ifdef MSB_FIRST
if(sf->s & RLSB)
FlipByteOrder(sf->v,sf->s&(~RLSB));
FlipByteOrder((uint8 *)sf->v, sf->s & (~RLSB));
#endif
memstream_write(mem, (uint8 *)sf->v, sf->s & (~RLSB));
/* Now restore the original byte order. */
#ifdef MSB_FIRST
if(sf->s & RLSB)
FlipByteOrder(sf->v,sf->s&(~RLSB));
FlipByteOrder((uint8 *)sf->v, sf->s & (~RLSB));
#endif
}
sf++;
@@ -166,7 +165,7 @@ static int ReadStateChunk(memstream_t *mem, SFORMAT *sf, int size)
int temp;
temp = memstream_pos(mem);
while(memstream_pos(mem)<temp+size)
while(memstream_pos(mem) < (temp + size))
{
uint32 tsize;
char toa[4];
@@ -181,7 +180,7 @@ static int ReadStateChunk(memstream_t *mem, SFORMAT *sf, int size)
#ifdef MSB_FIRST
if(tmp->s & RLSB)
FlipByteOrder(tmp->v,tmp->s&(~RLSB));
FlipByteOrder((uint8 *)tmp->v, tmp->s & (~RLSB));
#endif
}
else
@@ -330,8 +329,10 @@ void AddExState(void *v, uint32 s, int type, char *desc)
strncpy(SFMDATA[SFEXINDEX].desc, desc, sizeof(SFMDATA[SFEXINDEX].desc));
SFMDATA[SFEXINDEX].v = v;
SFMDATA[SFEXINDEX].s = s;
if (type) SFMDATA[SFEXINDEX].s |= RLSB;
if (SFEXINDEX < 63) SFEXINDEX++;
if (type)
SFMDATA[SFEXINDEX].s |= RLSB;
if (SFEXINDEX < 63)
SFEXINDEX++;
SFMDATA[SFEXINDEX].v = 0; /* End marker. */
}