summaryrefslogtreecommitdiffstatshomepage
path: root/src/devices/cpu/tms57002/tms57002.cpp
diff options
context:
space:
mode:
Diffstat (limited to 'src/devices/cpu/tms57002/tms57002.cpp')
-rw-r--r--src/devices/cpu/tms57002/tms57002.cpp9
1 files changed, 4 insertions, 5 deletions
diff --git a/src/devices/cpu/tms57002/tms57002.cpp b/src/devices/cpu/tms57002/tms57002.cpp
index c2cf28f3f92..da29f23fbcd 100644
--- a/src/devices/cpu/tms57002/tms57002.cpp
+++ b/src/devices/cpu/tms57002/tms57002.cpp
@@ -929,11 +929,10 @@ void tms57002_device::sound_stream_update(sound_stream &stream, std::vector<read
si[2] = s32(inputs[2].get(0) * in_scale) & 0xffffff;
si[3] = s32(inputs[3].get(0) * in_scale) & 0xffffff;
- stream_buffer::sample_t out_scale = 1.0 / (32768.0 * 65536.0);
- outputs[0].put(0, stream_buffer::sample_t(s32(so[0] << 8)) * out_scale);
- outputs[1].put(0, stream_buffer::sample_t(s32(so[1] << 8)) * out_scale);
- outputs[2].put(0, stream_buffer::sample_t(s32(so[2] << 8)) * out_scale);
- outputs[3].put(0, stream_buffer::sample_t(s32(so[3] << 8)) * out_scale);
+ outputs[0].put_int(0, s32(so[0] << 8) >> 1, 32768 * 32768);
+ outputs[1].put_int(0, s32(so[1] << 8) >> 1, 32768 * 32768);
+ outputs[2].put_int(0, s32(so[2] << 8) >> 1, 32768 * 32768);
+ outputs[3].put_int(0, s32(so[3] << 8) >> 1, 32768 * 32768);
sync_w(1);
}