1 #include "../../PicoInt.h"
9 elprintf(0xffff, "SVP init");
11 tmp = realloc(Pico.rom, 0x200000 + sizeof(*svp));
14 elprintf(EL_STATUS, "OOM for SVP data");
19 svp = (void *) ((char *)tmp + 0x200000);
20 memset(svp, 0, sizeof(*svp));
22 // init ok, setup hooks..
23 PicoRead16Hook = PicoSVPRead16;
24 PicoWrite8Hook = PicoSVPWrite8;
25 PicoWrite16Hook = PicoSVPWrite16;
26 PicoDmaHook = PicoSVPDma;
30 void PicoSVPReset(void)
32 elprintf(0xffff, "SVP reset");
34 ssp1601_reset(&svp->ssp1601);
38 int PicoSVPDma(unsigned int source, unsigned short **srcp, unsigned short **limitp)
40 if ((source & 0xfe0000) == 0x300000)
42 elprintf(EL_VDPDMA|0xffff, "SVP DmaSlow from %06x", source);
44 *srcp = (unsigned short *)(svp->ram + source);
45 *limitp = (unsigned short *)(svp->ram + sizeof(svp->ram));