From da22df5f5da53bf1ecd8fd2e7be02659ce15b6f6 Mon Sep 17 00:00:00 2001 From: RedPanda4552 Date: Fri, 8 Dec 2023 01:44:19 -0500 Subject: [PATCH] Memcard: Move auto eject countdown out of CDVD up into counters vsync loop --- pcsx2/CDVD/CDVD.cpp | 2 -- pcsx2/Counters.cpp | 2 ++ 2 files changed, 2 insertions(+), 2 deletions(-) diff --git a/pcsx2/CDVD/CDVD.cpp b/pcsx2/CDVD/CDVD.cpp index 47f7543ad1..df1a500695 100644 --- a/pcsx2/CDVD/CDVD.cpp +++ b/pcsx2/CDVD/CDVD.cpp @@ -30,7 +30,6 @@ #include "IopHw.h" #include "IopDma.h" #include "VMManager.h" -#include "SIO/Sio.h" #include "common/Error.h" #include "common/FileSystem.h" @@ -1570,7 +1569,6 @@ void cdvdVsync() cdvd.RTCcount = 0; cdvdUpdateTrayState(); - AutoEject::CountDownTicks(); cdvd.RTC.second++; if (cdvd.RTC.second < 60) diff --git a/pcsx2/Counters.cpp b/pcsx2/Counters.cpp index deff108499..0e359825c5 100644 --- a/pcsx2/Counters.cpp +++ b/pcsx2/Counters.cpp @@ -515,6 +515,8 @@ static __fi void VSyncStart(u32 sCycle) hwIntcIrq(INTC_VBLANK_S); psxVBlankStart(); + // Memcard auto ejection - Uses a tick system timed off of real time, decrementing one tick per frame. + AutoEject::CountDownTicks(); if (gates) rcntStartGate(true, sCycle); // Counters Start Gate code