From d16ae84d0b9b140de186a9eed62b426d58777696 Mon Sep 17 00:00:00 2001 From: Thomas Harte Date: Thu, 10 May 2018 20:48:57 -0400 Subject: [PATCH] Reduces number of Apple II video flushes, to reduce processing cost. --- Machines/AppleII/AppleII.cpp | 6 +++++- 1 file changed, 5 insertions(+), 1 deletion(-) diff --git a/Machines/AppleII/AppleII.cpp b/Machines/AppleII/AppleII.cpp index 8205e7f32..f75655762 100644 --- a/Machines/AppleII/AppleII.cpp +++ b/Machines/AppleII/AppleII.cpp @@ -173,7 +173,11 @@ class ConcreteMachine: */ MemoryBlock *block = nullptr; if(address < 0x200) block = &memory_blocks_[0]; - else if(address < 0xc000) {update_video(); block = &memory_blocks_[1]; address -= 0x200; } + else if(address < 0xc000) { + if(address < 0x6000 && !isReadOperation(operation)) update_video(); + block = &memory_blocks_[1]; + address -= 0x200; + } else if(address < 0xd000) block = nullptr; else if(address < 0xe000) {block = &memory_blocks_[2]; address -= 0xd000; } else {block = &memory_blocks_[3]; address -= 0xe000; }