From ab04e46f61221c57e88280850a17c89a3cdd8f8b Mon Sep 17 00:00:00 2001 From: tomcw Date: Sun, 11 Dec 2016 16:31:25 +0000 Subject: [PATCH] Save-state: Draw the frame,buttons,etc as soon as we know the Apple2Type, to remove the issue where the drive buttons appear before the rest of the buttons. (Repro: Loading a 32MB gzip'ed HDD image from the command line.) --- source/SaveState.cpp | 13 ++++++++----- 1 file changed, 8 insertions(+), 5 deletions(-) diff --git a/source/SaveState.cpp b/source/SaveState.cpp index 86a4d5fe..db3cbcfd 100644 --- a/source/SaveState.cpp +++ b/source/SaveState.cpp @@ -209,7 +209,10 @@ static void Snapshot_LoadState_v1() // .aws v1.0.0.1, up to (and including) Appl MemUpdatePaging(TRUE); + // NB. g_Apple2Type doesn't change for v1, but replicate this (like v2) + SetCharsetType(); VideoReinitialize(); // g_CharsetType changed + FrameUpdateApple2Type(); } catch(std::string szMessage) { @@ -334,6 +337,11 @@ static void ParseUnitApple2(YamlLoadHelper& yamlLoadHelper, UINT version) SpkrLoadSnapshot(yamlLoadHelper); VideoLoadSnapshot(yamlLoadHelper); MemLoadSnapshot(yamlLoadHelper); + + // g_Apple2Type may've changed: so redraw frame (title, buttons, leds, etc) + SetCharsetType(); + VideoReinitialize(); // g_CharsetType changed + FrameUpdateApple2Type(); } //--- @@ -519,11 +527,6 @@ static void Snapshot_LoadState_v2(void) MemInitializeIO(); MemUpdatePaging(TRUE); - - // g_Apple2Type may've changed: so redraw frame (title, buttons, leds, etc) - SetCharsetType(); - VideoReinitialize(); // g_CharsetType changed - FrameUpdateApple2Type(); } catch(std::string szMessage) {