diff options
author | AJR <ajrhacker@users.noreply.github.com> | 2017-08-17 23:03:40 -0400 |
---|---|---|
committer | AJR <ajrhacker@users.noreply.github.com> | 2017-08-17 23:03:40 -0400 |
commit | e3314be6162dc463612321c0a893839e7fc87d67 (patch) | |
tree | 316e9ae77d7fd928543ed4406f27711c1ca41d9e | |
parent | 5a5136079ab80c3af7cfad242c502474013d2dba (diff) |
madalien: Soundlatch modernization (nw)
-rw-r--r-- | src/mame/drivers/madalien.cpp | 20 | ||||
-rw-r--r-- | src/mame/includes/madalien.h | 2 |
2 files changed, 4 insertions, 18 deletions
diff --git a/src/mame/drivers/madalien.cpp b/src/mame/drivers/madalien.cpp index 6586f1144e2..7ca8b8299c8 100644 --- a/src/mame/drivers/madalien.cpp +++ b/src/mame/drivers/madalien.cpp @@ -57,20 +57,6 @@ WRITE8_MEMBER(madalien_state::madalien_output_w) } -WRITE8_MEMBER(madalien_state::madalien_sound_command_w) -{ - m_audiocpu->set_input_line(0, ASSERT_LINE); - m_soundlatch->write(space, offset, data); -} - - -READ8_MEMBER(madalien_state::madalien_sound_command_r) -{ - m_audiocpu->set_input_line(0, CLEAR_LINE); - return m_soundlatch->read(space, offset); -} - - WRITE8_MEMBER(madalien_state::madalien_portA_w) { m_discrete->write(space, MADALIEN_8910_PORTA, data); @@ -92,7 +78,7 @@ static ADDRESS_MAP_START( main_map, AS_PROGRAM, 8, madalien_state ) AM_RANGE(0x8001, 0x8001) AM_MIRROR(0x0ff0) AM_DEVREADWRITE("crtc", mc6845_device, register_r, register_w) AM_RANGE(0x8004, 0x8004) AM_MIRROR(0x0ff0) AM_WRITEONLY AM_SHARE("video_control") AM_RANGE(0x8005, 0x8005) AM_MIRROR(0x0ff0) AM_WRITE(madalien_output_w) - AM_RANGE(0x8006, 0x8006) AM_MIRROR(0x0ff0) AM_DEVREAD("soundlatch2", generic_latch_8_device, read) AM_WRITE(madalien_sound_command_w) + AM_RANGE(0x8006, 0x8006) AM_MIRROR(0x0ff0) AM_DEVREAD("soundlatch2", generic_latch_8_device, read) AM_DEVWRITE("soundlatch", generic_latch_8_device, write) AM_RANGE(0x8008, 0x8008) AM_MIRROR(0x07f0) AM_RAM_READ(shift_r) AM_SHARE("shift_hi") AM_RANGE(0x8009, 0x8009) AM_MIRROR(0x07f0) AM_RAM_READ(shift_rev_r) AM_SHARE("shift_lo") AM_RANGE(0x800b, 0x800b) AM_MIRROR(0x07f0) AM_WRITEONLY AM_SHARE("video_flags") @@ -112,7 +98,7 @@ ADDRESS_MAP_END static ADDRESS_MAP_START( audio_map, AS_PROGRAM, 8, madalien_state ) AM_RANGE(0x0000, 0x03ff) AM_MIRROR(0x1c00) AM_RAM AM_RANGE(0x6000, 0x6003) AM_MIRROR(0x1ffc) AM_RAM /* unknown device in an epoxy block, might be tilt detection */ - AM_RANGE(0x8000, 0x8000) AM_MIRROR(0x1ffc) AM_READ(madalien_sound_command_r) + AM_RANGE(0x8000, 0x8000) AM_MIRROR(0x1ffc) AM_DEVREAD("soundlatch", generic_latch_8_device, read) AM_RANGE(0x8000, 0x8001) AM_MIRROR(0x1ffc) AM_DEVWRITE("aysnd", ay8910_device, address_data_w) AM_RANGE(0x8002, 0x8002) AM_MIRROR(0x1ffc) AM_DEVWRITE("soundlatch2", generic_latch_8_device, write) AM_RANGE(0xf800, 0xffff) AM_ROM @@ -179,6 +165,8 @@ static MACHINE_CONFIG_START( madalien ) MCFG_SPEAKER_STANDARD_MONO("mono") MCFG_GENERIC_LATCH_8_ADD("soundlatch") + MCFG_GENERIC_LATCH_DATA_PENDING_CB(INPUTLINE("audiocpu", 0)) // 7400 at 3A used as R/S latch + MCFG_GENERIC_LATCH_8_ADD("soundlatch2") MCFG_SOUND_ADD("aysnd", AY8910, SOUND_CLOCK / 4) diff --git a/src/mame/includes/madalien.h b/src/mame/includes/madalien.h index c0527dc1db2..8c1f4f74efd 100644 --- a/src/mame/includes/madalien.h +++ b/src/mame/includes/madalien.h @@ -56,8 +56,6 @@ public: DECLARE_READ8_MEMBER(shift_r); DECLARE_READ8_MEMBER(shift_rev_r); DECLARE_WRITE8_MEMBER(madalien_output_w); - DECLARE_WRITE8_MEMBER(madalien_sound_command_w); - DECLARE_READ8_MEMBER(madalien_sound_command_r); DECLARE_WRITE8_MEMBER(madalien_videoram_w); DECLARE_WRITE8_MEMBER(madalien_charram_w); DECLARE_INPUT_CHANGED_MEMBER(coin_inserted); |