diff options
Diffstat (limited to 'src/mame/audio/mw8080bw.cpp')
-rw-r--r-- | src/mame/audio/mw8080bw.cpp | 28 |
1 files changed, 15 insertions, 13 deletions
diff --git a/src/mame/audio/mw8080bw.cpp b/src/mame/audio/mw8080bw.cpp index 28c7320a7a4..ca5f90b22c9 100644 --- a/src/mame/audio/mw8080bw.cpp +++ b/src/mame/audio/mw8080bw.cpp @@ -1615,7 +1615,7 @@ void gmissile_audio_device::p1_w(u8 data) machine().bookkeeping().coin_counter_w(0, BIT(data, 2)); - machine().sound().system_enable(BIT(data, 3)); + machine().sound().system_mute(!BIT(data, 3)); if (BIT(rising, 4)) m_samples[1]->start(0, 0); // RIGHT MISSILE sound (goes to right speaker) @@ -1710,7 +1710,7 @@ void m4_audio_device::p1_w(u8 data) machine().bookkeeping().coin_counter_w(0, BIT(data, 2)); - machine().sound().system_enable(BIT(data, 3)); + machine().sound().system_mute(!BIT(data, 3)); if (BIT(rising, 4)) m_samples[0]->start(0, 0); // LEFT PLAYER SHOT sound (goes to left speaker) if (BIT(rising, 5)) m_samples[1]->start(0, 0); // RIGHT PLAYER SHOT sound (goes to right speaker) @@ -1977,7 +1977,7 @@ void clowns_audio_device::p2_w(u8 data) m_discrete->write(CLOWNS_POP_MIDDLE_EN, BIT(data, 1)); m_discrete->write(CLOWNS_POP_TOP_EN, BIT(data, 2)); - machine().sound().system_enable(BIT(data, 3)); + machine().sound().system_mute(!BIT(data, 3)); m_discrete->write(CLOWNS_SPRINGBOARD_HIT_EN, BIT(data, 4)); @@ -2365,7 +2365,7 @@ void spacwalk_audio_device::p1_w(u8 data) if (BIT(changed, 1)) m_ctrl_sel_out(BIT(data, 1)); - machine().sound().system_enable(BIT(data, 2)); + machine().sound().system_mute(!BIT(data, 2)); m_discrete->write(SPACWALK_SPACE_SHIP_EN, (data >> 3) & 0x01); } @@ -2550,7 +2550,7 @@ void dogpatch_audio_device::write(u8 data) machine().bookkeeping().coin_counter_w(0, BIT(data, 2)); - machine().sound().system_enable(BIT(data, 3)); + machine().sound().system_mute(!BIT(data, 3)); m_discrete->write(DOGPATCH_GAME_ON_EN, BIT(data, 3)); m_discrete->write(DOGPATCH_LEFT_SHOT_EN, BIT(data, 4)); @@ -3043,7 +3043,7 @@ spcenctr_audio_device::spcenctr_audio_device(machine_config const &mconfig, char void spcenctr_audio_device::p1_w(u8 data) { - machine().sound().system_enable(BIT(data, 0)); + machine().sound().system_mute(!BIT(data, 0)); // D1 is marked as 'OPTIONAL SWITCH VIDEO FOR COCKTAIL', but it is never set by the software @@ -3154,8 +3154,10 @@ void phantom2_audio_device::p1_w(u8 data) // if (data & 0x02) enable ENEMY SHOT sound - machine().sound().system_mute(!BIT(data, 5)); - machine().sound().system_enable(BIT(data, 2)); + // previously, code did this - system_mute and system_enable controlled the same thing, so bit 5 was ignored + //machine().sound().system_mute(!BIT(data, 5)); + //machine().sound().system_enable(BIT(data, 2)); + machine().sound().system_mute(!BIT(data, 5) && !BIT(data, 2)); machine().bookkeeping().coin_counter_w(0, BIT(data, 3)); @@ -3275,7 +3277,7 @@ void invaders_audio_device::p1_w(u8 data) m_discrete->write(INVADERS_NODE(INVADERS_INVADER_HIT_EN, 1), data & 0x08); m_discrete->write(INVADERS_NODE(INVADERS_BONUS_MISSLE_BASE_EN, 1), data & 0x10); - machine().sound().system_enable(data & 0x20); + machine().sound().system_mute(!BIT(data, 5)); // D6 and D7 are not connected } @@ -3471,7 +3473,7 @@ void invad2ct_audio_device::p1_w(u8 data) m_discrete->write(INVADERS_NODE(INVADERS_INVADER_HIT_EN, 1), data & 0x08); m_discrete->write(INVADERS_NODE(INVADERS_BONUS_MISSLE_BASE_EN, 1), data & 0x10); - machine().sound().system_enable(data & 0x20); + machine().sound().system_mute(!BIT(data, 5)); // D6 and D7 are not connected } @@ -4209,7 +4211,7 @@ void mw8080bw_state::checkmat_audio_w(uint8_t data) machine().bookkeeping().coin_counter_w(0, (data >> 2) & 0x01); - machine().sound().system_enable((data >> 3) & 0x01); + machine().sound().system_mute(!BIT(data, 3)); m_discrete->write(CHECKMAT_TONE_DATA_45, (data >> 4) & 0x03); m_discrete->write(CHECKMAT_TONE_DATA_67, (data >> 6) & 0x03); @@ -4425,7 +4427,7 @@ void mw8080bw_state::shuffle_audio_1_w(uint8_t data) m_discrete->write(SHUFFLE_ROLLOVER_EN, (data >> 1) & 0x01); - machine().sound().system_enable((data >> 2) & 0x01); + machine().sound().system_mute(!BIT(data, 2)); m_discrete->write(NODE_29, (data >> 3) & 0x07); @@ -4542,7 +4544,7 @@ void mw8080bw_state::bowler_audio_1_w(uint8_t data) machine().bookkeeping().coin_counter_w(0, (data >> 1) & 0x01); - machine().sound().system_enable((data >> 2) & 0x01); + machine().sound().system_mute(!BIT(data, 2)); m_discrete->write(BOWLER_FOWL_EN, (data >> 3) & 0x01); |