From 3c7229dfe26ce905fbf8d4a3648783579b07d380 Mon Sep 17 00:00:00 2001 From: Connor McLaughlin Date: Wed, 20 May 2020 23:52:34 +1000 Subject: [PATCH] CDROM: Add 3 sectors read time to seek time Simulates the drive's inprecise coarse seek then reading subq to get to the exact sector. Fixes Waku Waku Derby. --- src/core/cdrom.cpp | 5 +++-- 1 file changed, 3 insertions(+), 2 deletions(-) diff --git a/src/core/cdrom.cpp b/src/core/cdrom.cpp index 276dc6fea..36890bd1d 100644 --- a/src/core/cdrom.cpp +++ b/src/core/cdrom.cpp @@ -573,8 +573,9 @@ TickCount CDROM::GetTicksForSeek(CDImage::LBA new_lba) ticks += static_cast(static_cast(MASTER_CLOCK) * 0.1); } - // time to read the sector - ticks += GetTicksForRead(); + // it's unlikely that the drive would seek to exactly the correct position, so simulate this by adding the time + // required to read a few sectors + ticks += GetTicksForRead() * 3u; Log_DevPrintf("Seek time for %u LBAs: %d", lba_diff, ticks); return ticks;