#endif
svp_t *svp = NULL;
-int PicoSVPCycles = 1000; // cycles/line
+int PicoSVPCycles = 820; // cycles/line, just a guess
/* save state stuff */
typedef enum {
{
{ CHUNK_IRAM, 0x800, NULL },
{ CHUNK_DRAM, sizeof(svp->dram), NULL },
- { CHUNK_SSP, sizeof(svp->ssp1601), NULL },
+ { CHUNK_SSP, sizeof(svp->ssp1601) - sizeof(svp->ssp1601.drc), NULL },
{ 0, 0, NULL }
};
static void PicoSVPLine(int count)
{
- static int inited = 0;
- if (!(svp->ssp1601.gr[SSP_PM0].h & 2) && !inited) return;
- inited = 1;
-
- // ???
if (PicoOpt&0x20000)
ssp1601_run(PicoSVPCycles * count);
else
return;
}
+ //PicoOpt |= 0x20000;
Pico.rom = tmp;
svp = (void *) ((char *)tmp + 0x200000);
memset(svp, 0, sizeof(*svp));