summaryrefslogtreecommitdiffstatshomepage
path: root/src/devices/sound/votrax.cpp
diff options
context:
space:
mode:
Diffstat (limited to 'src/devices/sound/votrax.cpp')
-rw-r--r--src/devices/sound/votrax.cpp14
1 files changed, 7 insertions, 7 deletions
diff --git a/src/devices/sound/votrax.cpp b/src/devices/sound/votrax.cpp
index 2b1f91ced1d..000a568d2a3 100644
--- a/src/devices/sound/votrax.cpp
+++ b/src/devices/sound/votrax.cpp
@@ -127,17 +127,17 @@ void votrax_sc01_device::inflection_w(uint8_t data)
//-------------------------------------------------
-// sound_stream_update_legacy - handle update requests
+// sound_stream_update - handle update requests
// for our sound stream
//-------------------------------------------------
-void votrax_sc01_device::sound_stream_update_legacy(sound_stream &stream, stream_sample_t const * const *inputs, stream_sample_t * const *outputs, int samples)
+void votrax_sc01_device::sound_stream_update(sound_stream &stream, std::vector<read_stream_view> const &inputs, std::vector<write_stream_view> &outputs)
{
- for(int i=0; i<samples; i++) {
+ for(int i=0; i<outputs[0].samples(); i++) {
m_sample_count++;
if(m_sample_count & 1)
chip_update();
- outputs[0][i] = analog_calc();
+ outputs[0].put(i, analog_calc());
}
}
@@ -168,7 +168,7 @@ void votrax_sc01_device::device_start()
m_mainclock = clock();
m_sclock = m_mainclock / 18.0;
m_cclock = m_mainclock / 36.0;
- m_stream = stream_alloc_legacy(0, 1, m_sclock);
+ m_stream = stream_alloc(0, 1, m_sclock);
m_timer = timer_alloc();
// reset outputs
@@ -568,7 +568,7 @@ void votrax_sc01_device::filters_commit(bool force)
m_filt_fa, m_filt_va, m_filt_fc, m_filt_f1, m_filt_f2, m_filt_f2q, m_filt_f3);
}
-stream_sample_t votrax_sc01_device::analog_calc()
+stream_buffer::sample_t votrax_sc01_device::analog_calc()
{
// Voice-only path.
// 1. Pick up the pitch wave
@@ -632,7 +632,7 @@ stream_sample_t votrax_sc01_device::analog_calc()
vn = apply_filter(m_vn_5, m_vn_6, m_fx_a, m_fx_b);
shift_hist(vn, m_vn_6);
- return int(vn*50000);
+ return vn*1.5;
}
/*