X-Git-Url: https://notaz.gp2x.de/cgi-bin/gitweb.cgi?a=blobdiff_plain;f=pico%2Fpico.c;h=6888080be2a22d4e099d3309d938763ab84bd1b1;hb=8e4e84c2150047dcbe3799083cdfa2a7d5cf9d7b;hp=45572695aa30cd00b6856dbe8f35a40442f0d6ad;hpb=33be04ca5fee314271f1959672e22cf94d670ea6;p=picodrive.git diff --git a/pico/pico.c b/pico/pico.c index 4557269..6888080 100644 --- a/pico/pico.c +++ b/pico/pico.c @@ -61,6 +61,7 @@ void PicoExit(void) void PicoPower(void) { Pico.m.frame_count = 0; + SekCycleCnt = SekCycleAim = 0; // clear all memory of the emulated machine memset(&Pico.ram,0,(unsigned char *)&Pico.rom - Pico.ram); @@ -167,15 +168,15 @@ int PicoReset(void) } SekReset(); + // ..but do not reset SekCycle* to not desync with addons + // s68k doesn't have the TAS quirk, so we just globally set normal TAS handler in MCD mode (used by Batman games). SekSetRealTAS(PicoAHW & PAHW_MCD); - SekCycleCnt = SekCycleAim = 0; Pico.m.dirtyPal = 1; Pico.m.z80_bank68k = 0; Pico.m.z80_reset = 1; - memset(Pico.zram, 0, sizeof(Pico.zram)); // ?? PicoDetectRegion(); Pico.video.status = 0x3428 | Pico.m.pal; // 'always set' bits | vblank | collision | pal