From 664890cead276631b9e0484f9435968478bb975b Mon Sep 17 00:00:00 2001 From: Thomas Harte Date: Fri, 8 Dec 2023 10:46:59 -0500 Subject: [PATCH] Expose speed as an option. --- Analyser/Static/PCCompatible/Target.hpp | 9 ++++++++- Machines/PCCompatible/PCCompatible.cpp | 16 ++++++++++++---- .../xcshareddata/xcschemes/Clock Signal.xcscheme | 2 +- 3 files changed, 21 insertions(+), 6 deletions(-) diff --git a/Analyser/Static/PCCompatible/Target.hpp b/Analyser/Static/PCCompatible/Target.hpp index 0d7c3f759..271bdabcb 100644 --- a/Analyser/Static/PCCompatible/Target.hpp +++ b/Analyser/Static/PCCompatible/Target.hpp @@ -20,10 +20,17 @@ struct Target: public Analyser::Static::Target, public Reflection::StructImpl(target); - switch(pc_target->adaptor) { - case VideoAdaptor::MDA: return new PCCompatible::ConcreteMachine(*pc_target, rom_fetcher); - case VideoAdaptor::CGA: return new PCCompatible::ConcreteMachine(*pc_target, rom_fetcher); - default: return nullptr; + if(pc_target->speed == Target::Speed::Fast) { + switch(pc_target->adaptor) { + case VideoAdaptor::MDA: return new PCCompatible::ConcreteMachine(*pc_target, rom_fetcher); + case VideoAdaptor::CGA: return new PCCompatible::ConcreteMachine(*pc_target, rom_fetcher); + default: return nullptr; + } + } else { + switch(pc_target->adaptor) { + case VideoAdaptor::MDA: return new PCCompatible::ConcreteMachine(*pc_target, rom_fetcher); + case VideoAdaptor::CGA: return new PCCompatible::ConcreteMachine(*pc_target, rom_fetcher); + default: return nullptr; + } } } diff --git a/OSBindings/Mac/Clock Signal.xcodeproj/xcshareddata/xcschemes/Clock Signal.xcscheme b/OSBindings/Mac/Clock Signal.xcodeproj/xcshareddata/xcschemes/Clock Signal.xcscheme index 474fa352e..19b54b90e 100644 --- a/OSBindings/Mac/Clock Signal.xcodeproj/xcshareddata/xcschemes/Clock Signal.xcscheme +++ b/OSBindings/Mac/Clock Signal.xcodeproj/xcshareddata/xcschemes/Clock Signal.xcscheme @@ -62,7 +62,7 @@