From b84827b315636f87083be2a68537199318ba1e63 Mon Sep 17 00:00:00 2001 From: Connor McLaughlin Date: Tue, 27 Apr 2021 02:24:25 +1000 Subject: [PATCH] Pad: Don't remove card when loading state without card in slot ... unless load-devices-from-state is enabled. --- src/core/pad.cpp | 24 ++++++++++++++++++------ 1 file changed, 18 insertions(+), 6 deletions(-) diff --git a/src/core/pad.cpp b/src/core/pad.cpp index 1cbb829e9..841b08c0d 100644 --- a/src/core/pad.cpp +++ b/src/core/pad.cpp @@ -200,12 +200,24 @@ bool Pad::DoStateMemcard(StateWrapper& sw, u32 i) if (!card_present_in_state && m_memory_cards[i]) { - g_host_interface->AddFormattedOSDMessage( - 20.0f, - g_host_interface->TranslateString("OSDMessage", - "Memory card %u present in system but not in save state. Removing card."), - i + 1u); - m_memory_cards[i].reset(); + if (g_settings.load_devices_from_save_states) + { + g_host_interface->AddFormattedOSDMessage( + 20.0f, + g_host_interface->TranslateString("OSDMessage", + "Memory card %u present in system but not in save state. Removing card."), + i + 1u); + m_memory_cards[i].reset(); + } + else + { + g_host_interface->AddFormattedOSDMessage( + 20.0f, + g_host_interface->TranslateString("OSDMessage", + "Memory card %u present in system but not in save state. Replugging card."), + i + 1u); + m_memory_cards[i]->Reset(); + } } return true;