diff --git a/OSBindings/SDL/main.cpp b/OSBindings/SDL/main.cpp index cd0bad61d..bdd334c4e 100644 --- a/OSBindings/SDL/main.cpp +++ b/OSBindings/SDL/main.cpp @@ -23,20 +23,9 @@ namespace { -struct CRTMachineDelegate: public CRTMachine::Machine::Delegate { - void machine_did_change_clock_rate(CRTMachine::Machine *machine) { - best_effort_updater->set_clock_rate(machine->get_clock_rate()); - } - - void machine_did_change_clock_is_unlimited(CRTMachine::Machine *machine) { - } - - Concurrency::BestEffortUpdater *best_effort_updater; -}; - struct BestEffortUpdaterDelegate: public Concurrency::BestEffortUpdater::Delegate { - void update(Concurrency::BestEffortUpdater *updater, int cycles, bool did_skip_previous_update) { - machine->crt_machine()->run_for(Cycles(cycles)); + void update(Concurrency::BestEffortUpdater *updater, Time::Seconds duration, bool did_skip_previous_update) override { + machine->crt_machine()->run_for(duration); } Machine::DynamicMachine *machine; @@ -46,7 +35,7 @@ struct BestEffortUpdaterDelegate: public Concurrency::BestEffortUpdater::Delegat struct SpeakerDelegate: public Outputs::Speaker::Speaker::Delegate { static const int buffer_size = 1024; - void speaker_did_complete_samples(Outputs::Speaker::Speaker *speaker, const std::vector<int16_t> &buffer) { + void speaker_did_complete_samples(Outputs::Speaker::Speaker *speaker, const std::vector<int16_t> &buffer) override { std::lock_guard<std::mutex> lock_guard(audio_buffer_mutex_); if(audio_buffer_.size() > buffer_size) { audio_buffer_.erase(audio_buffer_.begin(), audio_buffer_.end() - buffer_size); @@ -258,7 +247,6 @@ int main(int argc, char *argv[]) { Concurrency::BestEffortUpdater updater; BestEffortUpdaterDelegate best_effort_updater_delegate; - CRTMachineDelegate crt_delegate; SpeakerDelegate speaker_delegate; // For vanilla SDL purposes, assume system ROMs can be found in one of: @@ -321,12 +309,8 @@ int main(int argc, char *argv[]) { return -1; } - updater.set_clock_rate(machine->crt_machine()->get_clock_rate()); - crt_delegate.best_effort_updater = &updater; best_effort_updater_delegate.machine = machine.get(); speaker_delegate.updater = &updater; - - machine->crt_machine()->set_delegate(&crt_delegate); updater.set_delegate(&best_effort_updater_delegate); // Attempt to set up video and audio.