From bbdc997913475332ba29a6c61cd70863953579d6 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Henrik=20Rydg=C3=A5rd?= Date: Tue, 29 Dec 2020 13:23:15 +0100 Subject: [PATCH] If we are reporting a small memstick size, but data is bigger, lie. Should fix #13829 --- Core/HW/MemoryStick.cpp | 4 ++++ 1 file changed, 4 insertions(+) diff --git a/Core/HW/MemoryStick.cpp b/Core/HW/MemoryStick.cpp index 444334a3e3..f2520085bd 100644 --- a/Core/HW/MemoryStick.cpp +++ b/Core/HW/MemoryStick.cpp @@ -88,6 +88,10 @@ u64 MemoryStick_FreeSpace() { u64 simulatedFreeSpace = 0; if (usedSpace < memStickSize) { simulatedFreeSpace = memStickSize - usedSpace; + } else if (flags.ReportSmallMemstick) { + // There's more stuff in the memstick than the size we report. + // This doesn't work, so we'll just have to lie. Not sure what the best way is. + simulatedFreeSpace = smallMemstickSize / 2; // just pick a value. } if (flags.MemstickFixedFree) { // Assassin's Creed: Bloodlines fails to save if free space changes incorrectly during game.