diff options
author | bunnei <bunneidev@gmail.com> | 2016-04-27 17:34:38 +0200 |
---|---|---|
committer | bunnei <bunneidev@gmail.com> | 2016-04-27 17:34:38 +0200 |
commit | 1ecee38468f08445681e52f67dc9cf6b8302cffa (patch) | |
tree | 0e3fc6a7c259d36c4c67b9079732eb4e057bad66 /src/audio_core/audio_core.cpp | |
parent | Merge pull request #1721 from bunnei/cleanup-pr-1447 (diff) | |
parent | DSP_DSP: Fix log format strings and arguments (diff) | |
download | yuzu-1ecee38468f08445681e52f67dc9cf6b8302cffa.tar yuzu-1ecee38468f08445681e52f67dc9cf6b8302cffa.tar.gz yuzu-1ecee38468f08445681e52f67dc9cf6b8302cffa.tar.bz2 yuzu-1ecee38468f08445681e52f67dc9cf6b8302cffa.tar.lz yuzu-1ecee38468f08445681e52f67dc9cf6b8302cffa.tar.xz yuzu-1ecee38468f08445681e52f67dc9cf6b8302cffa.tar.zst yuzu-1ecee38468f08445681e52f67dc9cf6b8302cffa.zip |
Diffstat (limited to 'src/audio_core/audio_core.cpp')
-rw-r--r-- | src/audio_core/audio_core.cpp | 9 |
1 files changed, 5 insertions, 4 deletions
diff --git a/src/audio_core/audio_core.cpp b/src/audio_core/audio_core.cpp index 894f46990..b512b0f9b 100644 --- a/src/audio_core/audio_core.cpp +++ b/src/audio_core/audio_core.cpp @@ -4,6 +4,7 @@ #include "audio_core/audio_core.h" #include "audio_core/hle/dsp.h" +#include "audio_core/hle/pipe.h" #include "core/core_timing.h" #include "core/hle/kernel/vm_manager.h" @@ -17,10 +18,10 @@ static constexpr u64 audio_frame_ticks = 1310252ull; ///< Units: ARM11 cycles static void AudioTickCallback(u64 /*userdata*/, int cycles_late) { if (DSP::HLE::Tick()) { - // HACK: We're not signaling the interrups when they should be, but just firing them all off together. - // It should be only (interrupt_id = 2, channel_id = 2) that's signalled here. - // TODO(merry): Understand when the other interrupts are fired. - DSP_DSP::SignalAllInterrupts(); + // TODO(merry): Signal all the other interrupts as appropriate. + DSP_DSP::SignalPipeInterrupt(DSP::HLE::DspPipe::Audio); + // HACK(merry): Added to prevent regressions. Will remove soon. + DSP_DSP::SignalPipeInterrupt(DSP::HLE::DspPipe::Binary); } // Reschedule recurrent event |