From 25af5ef9d98c369260327c62461405a9dce2259c Mon Sep 17 00:00:00 2001 From: Connor McLaughlin Date: Sat, 25 Apr 2020 14:58:19 +1000 Subject: [PATCH] MemoryCard: Save FLAG to state --- src/core/memory_card.cpp | 2 ++ src/core/memory_card.h | 3 +-- src/core/save_state_version.h | 2 +- 3 files changed, 4 insertions(+), 3 deletions(-) diff --git a/src/core/memory_card.cpp b/src/core/memory_card.cpp index 86939eec6..bafb20352 100644 --- a/src/core/memory_card.cpp +++ b/src/core/memory_card.cpp @@ -26,6 +26,7 @@ void MemoryCard::Reset() { ResetTransferState(); SaveIfChanged(true); + m_FLAG.no_write_yet = true; } bool MemoryCard::DoState(StateWrapper& sw) @@ -34,6 +35,7 @@ bool MemoryCard::DoState(StateWrapper& sw) SaveIfChanged(true); sw.Do(&m_state); + sw.Do(&m_FLAG.bits); sw.Do(&m_address); sw.Do(&m_sector_offset); sw.Do(&m_checksum); diff --git a/src/core/memory_card.h b/src/core/memory_card.h index 3057a663b..8c826e5cd 100644 --- a/src/core/memory_card.h +++ b/src/core/memory_card.h @@ -49,8 +49,6 @@ private: BitField write_error; }; - FLAG m_FLAG = {}; - enum class State : u8 { Idle, @@ -91,6 +89,7 @@ private: std::unique_ptr m_save_event; State m_state = State::Idle; + FLAG m_FLAG = {}; u16 m_address = 0; u8 m_sector_offset = 0; u8 m_checksum = 0; diff --git a/src/core/save_state_version.h b/src/core/save_state_version.h index 3b04d5f5f..c14d0aaa2 100644 --- a/src/core/save_state_version.h +++ b/src/core/save_state_version.h @@ -2,7 +2,7 @@ #include "types.h" static constexpr u32 SAVE_STATE_MAGIC = 0x43435544; -static constexpr u32 SAVE_STATE_VERSION = 25; +static constexpr u32 SAVE_STATE_VERSION = 26; #pragma pack(push, 4) struct SAVE_STATE_HEADER