mirror of
https://github.com/holub/mame
synced 2025-04-23 00:39:36 +03:00
madalien: Soundlatch modernization (nw)
This commit is contained in:
parent
5a5136079a
commit
e3314be616
@ -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)
|
||||
|
@ -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);
|
||||
|
Loading…
Reference in New Issue
Block a user