summaryrefslogtreecommitdiffstatshomepage
path: root/src/devices/sound/flt_biquad.cpp
diff options
context:
space:
mode:
Diffstat (limited to 'src/devices/sound/flt_biquad.cpp')
-rw-r--r--src/devices/sound/flt_biquad.cpp8
1 files changed, 8 insertions, 0 deletions
diff --git a/src/devices/sound/flt_biquad.cpp b/src/devices/sound/flt_biquad.cpp
index de6bfe63462..e56c355ac95 100644
--- a/src/devices/sound/flt_biquad.cpp
+++ b/src/devices/sound/flt_biquad.cpp
@@ -527,6 +527,7 @@ void filter_biquad_device::recalc()
break;
// For highpass and friends, block the entire signal.
case biquad_type::HIGHPASS1P:
+ case biquad_type::HIGHPASS1P1Z:
case biquad_type::HIGHPASS:
case biquad_type::BANDPASS:
case biquad_type::PEAK:
@@ -563,6 +564,13 @@ void filter_biquad_device::recalc()
m_a1 = -m_a1;
m_b1 = m_b2 = m_a2 = 0.0;
break;
+ case biquad_type::HIGHPASS1P1Z:
+ normal = 1.0 / (K + 1.0);
+ m_b0 = normal;
+ m_b1 = -normal;
+ m_a1 = (K - 1.0) * normal;
+ m_b2 = m_a2 = 0.0;
+ break;
case biquad_type::LOWPASS:
m_b0 = Ksquared * normal;
m_b1 = 2.0 * m_b0;