summaryrefslogtreecommitdiffstatshomepage
path: root/src/devices/sound/stt_sa1.cpp
diff options
context:
space:
mode:
author Olivier Galibert <galibert@pobox.com>2025-04-14 11:31:53 +0200
committer Olivier Galibert <galibert@pobox.com>2025-04-27 22:23:20 +0200
commitd0f1c15a0f6df2dd51a754cb46e6175b7079c8f2 (patch)
treebe35c94340442af08c316a8679089ee68e119fac /src/devices/sound/stt_sa1.cpp
parentec636faeba5c5841c5a4a35b7c9dc2f06a00f538 (diff)
New sound infrastructure.
Should be added soon: - mute - speaker/microphone resampling To be added a little later: - compression - reverb Needs to be added by someone else: - coreaudio - direct - portaudio - xaudio2 - js
Diffstat (limited to 'src/devices/sound/stt_sa1.cpp')
-rw-r--r--src/devices/sound/stt_sa1.cpp11
1 files changed, 4 insertions, 7 deletions
diff --git a/src/devices/sound/stt_sa1.cpp b/src/devices/sound/stt_sa1.cpp
index efd9e49e163..29cd61e61ff 100644
--- a/src/devices/sound/stt_sa1.cpp
+++ b/src/devices/sound/stt_sa1.cpp
@@ -160,22 +160,19 @@ void stt_sa1_device::device_reset()
}
}
-void stt_sa1_device::sound_stream_update(sound_stream &stream, std::vector<read_stream_view> const &inputs, std::vector<write_stream_view> &outputs)
+void stt_sa1_device::sound_stream_update(sound_stream &stream)
{
- outputs[0].fill(0);
- outputs[1].fill(0);
-
for (int v = 0; v < 8; v++) {
voice_t &voice = m_voice[v];
- for (int i = 0; i < outputs[0].samples() && voice.enabled; i++) {
+ for (int i = 0; i < stream.samples() && voice.enabled; i++) {
const offs_t offset = voice.addr_cur >> 12;
const int sample = s8(read_byte(offset)) << 8;
voice.addr_cur += voice.freq;
- outputs[0].add_int(i, (sample * voice.vol_l) >> 16, 32768 * 8);
- outputs[1].add_int(i, (sample * voice.vol_r) >> 16, 32768 * 8);
+ stream.add_int(0, i, (sample * voice.vol_l) >> 16, 32768 * 8);
+ stream.add_int(1, i, (sample * voice.vol_r) >> 16, 32768 * 8);
if (voice.addr_cur >= voice.addr_end) {
if (!voice.is_looped) {