diff --git a/Machines/Acorn/BBCMicro/BBCMicro.cpp b/Machines/Acorn/BBCMicro/BBCMicro.cpp index 85fe6ae7d..202c4b527 100644 --- a/Machines/Acorn/BBCMicro/BBCMicro.cpp +++ b/Machines/Acorn/BBCMicro/BBCMicro.cpp @@ -8,12 +8,16 @@ #include "BBCMicro.hpp" +#include "Machines/MachineTypes.hpp" + #include "Analyser/Static/Acorn/Target.hpp" namespace BBCMicro { class ConcreteMachine: - public Machine + public Machine, + public MachineTypes::ScanProducer, + public MachineTypes::TimedMachine { public: ConcreteMachine( @@ -23,6 +27,17 @@ public: (void)target; (void)rom_fetcher; } + +private: + // MARK: - ScanProducer. + void set_scan_target(Outputs::Display::ScanTarget *) override {} + Outputs::Display::ScanStatus get_scan_status() const override { + return Outputs::Display::ScanStatus{}; + } + + // MARK: - TimedMachine. + void run_for(const Cycles) override { + } }; } diff --git a/OSBindings/Mac/Clock Signal/Machine/StaticAnalyser/CSStaticAnalyser.h b/OSBindings/Mac/Clock Signal/Machine/StaticAnalyser/CSStaticAnalyser.h index fd5c0da00..6dab9af81 100644 --- a/OSBindings/Mac/Clock Signal/Machine/StaticAnalyser/CSStaticAnalyser.h +++ b/OSBindings/Mac/Clock Signal/Machine/StaticAnalyser/CSStaticAnalyser.h @@ -150,6 +150,7 @@ typedef int Kilobytes; - (instancetype)initWithAppleIIgsModel:(CSMachineAppleIIgsModel)model memorySize:(Kilobytes)memorySize; - (instancetype)initWithArchimedesModel:(CSMachineArchimedesModel)model; - (instancetype)initWithAtariSTMemorySize:(Kilobytes)memorySize; +- (instancetype)initWithBBCMicroDFS:(BOOL)dfs adfs:(BOOL)adfs sidewaysRAM:(BOOL)sidewaysRAM; - (instancetype)initWithCommodoreTEDModel:(CSMachineCommodoreTEDModel)model hasC1541:(BOOL)hasC1541; - (instancetype)initWithElectronDFS:(BOOL)dfs adfs:(BOOL)adfs ap6:(BOOL)ap6 sidewaysRAM:(BOOL)sidewaysRAM; - (instancetype)initWithEnterpriseModel:(CSMachineEnterpriseModel)model speed:(CSMachineEnterpriseSpeed)speed exosVersion:(CSMachineEnterpriseEXOS)exosVersion basicVersion:(CSMachineEnterpriseBASIC)basicVersion dos:(CSMachineEnterpriseDOS)dos; diff --git a/OSBindings/Mac/Clock Signal/Machine/StaticAnalyser/CSStaticAnalyser.mm b/OSBindings/Mac/Clock Signal/Machine/StaticAnalyser/CSStaticAnalyser.mm index 2cc62044f..2949dfc22 100644 --- a/OSBindings/Mac/Clock Signal/Machine/StaticAnalyser/CSStaticAnalyser.mm +++ b/OSBindings/Mac/Clock Signal/Machine/StaticAnalyser/CSStaticAnalyser.mm @@ -160,6 +160,23 @@ return self; } +- (instancetype)initWithBBCMicroDFS:(BOOL)dfs adfs:(BOOL)adfs sidewaysRAM:(BOOL)sidewaysRAM { + self = [super init]; + if(self) { + auto target = std::make_unique(); + // TODO. + (void)dfs; + (void)adfs; + (void)sidewaysRAM; +// target->has_dfs = dfs; +// target->has_pres_adfs = adfs; +// target->has_ap6_rom = ap6; +// target->has_sideways_ram = sidewaysRAM; + _targets.push_back(std::move(target)); + } + return self; +} + - (instancetype)initWithCommodoreTEDModel:(CSMachineCommodoreTEDModel)model hasC1541:(BOOL)hasC1541 { self = [super init]; if(self) { diff --git a/OSBindings/Mac/Clock Signal/MachinePicker/Base.lproj/MachinePicker.xib b/OSBindings/Mac/Clock Signal/MachinePicker/Base.lproj/MachinePicker.xib index 4eca84ddd..63eb90f50 100644 --- a/OSBindings/Mac/Clock Signal/MachinePicker/Base.lproj/MachinePicker.xib +++ b/OSBindings/Mac/Clock Signal/MachinePicker/Base.lproj/MachinePicker.xib @@ -17,10 +17,10 @@ - - + + - + + + + + + + + + + + + + + + + + + @@ -442,54 +483,54 @@ Gw - - + + - - - - - - - - - - - - - - - - - + + + + + + + + + + + + + @@ -642,11 +683,11 @@ Gw - + - + @@ -654,7 +695,7 @@ Gw - + @@ -765,11 +806,11 @@ Gw - + - + @@ -777,7 +818,7 @@ Gw - + @@ -791,7 +832,7 @@ Gw - + @@ -807,7 +848,7 @@ Gw - + @@ -832,11 +873,11 @@ Gw - + - + @@ -849,7 +890,7 @@ Gw - + @@ -857,7 +898,7 @@ Gw - + @@ -865,7 +906,7 @@ Gw - + @@ -972,11 +1013,11 @@ Gw - + - + @@ -990,7 +1031,7 @@ Gw - + @@ -998,7 +1039,7 @@ Gw