diff options
author | 2017-04-27 22:15:50 +1000 | |
---|---|---|
committer | 2017-04-27 22:15:50 +1000 | |
commit | 764ea8e2f0356f16153b499ece64776c0b4c25c1 (patch) | |
tree | 7172c0cf93baddf655e56cb2197abf29b923a2a9 | |
parent | 9fedb345da7dc8a937575fe7cdf80be09c9d9c49 (diff) |
MT 06540, 6541, 06542.
(sn76477 - unconnected resistor treated as invalid even though it's the initial value)
(bshipb - infinite capacitance was specified)
-rw-r--r-- | src/devices/sound/sn76477.cpp | 27 | ||||
-rw-r--r-- | src/mame/drivers/hh_tms1k.cpp | 2 |
2 files changed, 19 insertions, 10 deletions
diff --git a/src/devices/sound/sn76477.cpp b/src/devices/sound/sn76477.cpp index c7c1e0596b2..f845b1ae0a4 100644 --- a/src/devices/sound/sn76477.cpp +++ b/src/devices/sound/sn76477.cpp @@ -1085,7 +1085,8 @@ WRITE_LINE_MEMBER( sn76477_device::vco_w ) void sn76477_device::one_shot_res_w(double data) { - CHECK_POSITIVE; + if (data != RES_INF) + CHECK_POSITIVE; if (data != m_one_shot_res) { @@ -1162,7 +1163,8 @@ void sn76477_device::one_shot_cap_voltage_w(double data) void sn76477_device::slf_res_w(double data) { - CHECK_POSITIVE; + if (data != RES_INF) + CHECK_POSITIVE; if (data != m_slf_res) { @@ -1241,7 +1243,8 @@ void sn76477_device::slf_cap_voltage_w(double data) void sn76477_device::vco_res_w(double data) { - CHECK_POSITIVE; + if (data != RES_INF) + CHECK_POSITIVE; if (data != m_vco_res) { @@ -1385,7 +1388,8 @@ WRITE_LINE_MEMBER( sn76477_device::noise_clock_w ) void sn76477_device::noise_clock_res_w(double data) { - CHECK_POSITIVE; + if (data != RES_INF) + CHECK_POSITIVE; if (((data == 0) && !m_noise_clock_ext) || ((data != 0) && (data != m_noise_clock_res))) @@ -1415,7 +1419,8 @@ void sn76477_device::noise_clock_res_w(double data) void sn76477_device::noise_filter_res_w(double data) { - CHECK_POSITIVE; + if (data != RES_INF) + CHECK_POSITIVE; if (data != m_noise_filter_res) { @@ -1492,7 +1497,8 @@ void sn76477_device::noise_filter_cap_voltage_w(double data) void sn76477_device::attack_res_w(double data) { - CHECK_POSITIVE; + if (data != RES_INF) + CHECK_POSITIVE; if (data != m_attack_res) { @@ -1512,7 +1518,8 @@ void sn76477_device::attack_res_w(double data) void sn76477_device::decay_res_w(double data) { - CHECK_POSITIVE; + if (data != RES_INF) + CHECK_POSITIVE; if (data != m_decay_res) { @@ -1592,7 +1599,8 @@ void sn76477_device::attack_decay_cap_voltage_w(double data) void sn76477_device::amplitude_res_w(double data) { - CHECK_POSITIVE; + if (data != RES_INF) + CHECK_POSITIVE; if (data != m_amplitude_res) { @@ -1612,7 +1620,8 @@ void sn76477_device::amplitude_res_w(double data) void sn76477_device::feedback_res_w(double data) { - CHECK_POSITIVE; + if (data != RES_INF) + CHECK_POSITIVE; if (data != m_feedback_res) { diff --git a/src/mame/drivers/hh_tms1k.cpp b/src/mame/drivers/hh_tms1k.cpp index 72bfed7e738..ba2c9543cf2 100644 --- a/src/mame/drivers/hh_tms1k.cpp +++ b/src/mame/drivers/hh_tms1k.cpp @@ -5567,7 +5567,7 @@ WRITE16_MEMBER(bshipb_state::write_o) m_sn->vco_w(data >> 4 & 1); // O5: R11 27K to SN76477 pin 23 - m_sn->one_shot_cap_w((data & 0x20) ? RES_K(27) : RES_INF); + m_sn->one_shot_cap_w((data & 0x20) ? RES_K(27) : 0); // O6: SN76477 pin 25 m_sn->mixer_b_w(data >> 6 & 1); |