1
0
mirror of https://github.com/TomHarte/CLK.git synced 2026-03-11 04:42:20 +00:00

Generalise AsyncTaskQueue, DeferringAsyncTaskQueue and AsyncUpdater into a single template.

This commit is contained in:
Thomas Harte
2022-07-14 16:39:26 -04:00
parent 126838e7c7
commit bf03bda314
48 changed files with 218 additions and 358 deletions

View File

@@ -459,7 +459,7 @@ class ConcreteMachine:
// This is as per the audio control register;
// see https://www.smspower.org/Development/AudioControlPort
update_audio();
audio_queue_.defer([this, mode] {
audio_queue_.enqueue([this, mode] {
switch(mode & 3) {
case 0: // SN76489 only; the default.
mixer_.set_relative_volumes({1.0f, 0.0f});
@@ -487,7 +487,7 @@ class ConcreteMachine:
CPU::Z80::Processor<ConcreteMachine, false, false> z80_;
JustInTimeActor<TI::TMS::TMS9918> vdp_;
Concurrency::DeferringAsyncTaskQueue audio_queue_;
Concurrency::TaskQueue<false> audio_queue_;
TI::SN76489 sn76489_;
Yamaha::OPL::OPLL opll_;
Outputs::Speaker::CompoundSource<decltype(sn76489_), decltype(opll_)> mixer_;