summaryrefslogtreecommitdiffstatshomepage
path: root/src/mame/drivers/starwars.cpp
diff options
context:
space:
mode:
Diffstat (limited to 'src/mame/drivers/starwars.cpp')
-rw-r--r--src/mame/drivers/starwars.cpp15
1 files changed, 11 insertions, 4 deletions
diff --git a/src/mame/drivers/starwars.cpp b/src/mame/drivers/starwars.cpp
index a47be5f4314..116706f7fef 100644
--- a/src/mame/drivers/starwars.cpp
+++ b/src/mame/drivers/starwars.cpp
@@ -142,7 +142,8 @@ static ADDRESS_MAP_START( main_map, AS_PROGRAM, 8, starwars_state )
AM_RANGE(0x4340, 0x435f) AM_READ_PORT("DSW0")
AM_RANGE(0x4360, 0x437f) AM_READ_PORT("DSW1")
AM_RANGE(0x4380, 0x439f) AM_READ(starwars_adc_r) /* a-d control result */
- AM_RANGE(0x4400, 0x4400) AM_READWRITE(starwars_main_read_r, starwars_main_wr_w)
+ AM_RANGE(0x4400, 0x4400) AM_DEVREAD("mainlatch", generic_latch_8_device, read)
+ AM_RANGE(0x4400, 0x4400) AM_DEVWRITE("soundlatch", generic_latch_8_device, write)
AM_RANGE(0x4401, 0x4401) AM_READ(starwars_main_ready_flag_r)
AM_RANGE(0x4500, 0x45ff) AM_DEVREADWRITE("x2212", x2212_device, read, write)
AM_RANGE(0x4600, 0x461f) AM_DEVWRITE("avg", avg_starwars_device, go_w)
@@ -172,8 +173,8 @@ ADDRESS_MAP_END
*************************************/
static ADDRESS_MAP_START( sound_map, AS_PROGRAM, 8, starwars_state )
- AM_RANGE(0x0000, 0x07ff) AM_WRITE(starwars_sout_w)
- AM_RANGE(0x0800, 0x0fff) AM_READ(starwars_sin_r) /* SIN Read */
+ AM_RANGE(0x0000, 0x07ff) AM_DEVWRITE("mainlatch", generic_latch_8_device, write)
+ AM_RANGE(0x0800, 0x0fff) AM_DEVREAD("soundlatch", generic_latch_8_device, read) /* SIN Read */
AM_RANGE(0x1000, 0x107f) AM_RAM /* 6532 ram */
AM_RANGE(0x1080, 0x109f) AM_DEVREADWRITE("riot", riot6532_device, read, write)
AM_RANGE(0x1800, 0x183f) AM_WRITE(quad_pokeyn_w)
@@ -315,7 +316,7 @@ static MACHINE_CONFIG_START( starwars )
MCFG_RIOT6532_OUT_PA_CB(WRITE8(starwars_state, r6532_porta_w))
MCFG_RIOT6532_IN_PB_CB(DEVREAD8("tms", tms5220_device, status_r))
MCFG_RIOT6532_OUT_PB_CB(DEVWRITE8("tms", tms5220_device, data_w))
- MCFG_RIOT6532_IRQ_CB(WRITELINE(starwars_state, snd_interrupt))
+ MCFG_RIOT6532_IRQ_CB(INPUTLINE("audiocpu", M6809_IRQ_LINE))
MCFG_X2212_ADD_AUTOSAVE("x2212") /* nvram */
@@ -347,6 +348,12 @@ static MACHINE_CONFIG_START( starwars )
MCFG_SOUND_ADD("tms", TMS5220, MASTER_CLOCK/2/9)
MCFG_SOUND_ROUTE(ALL_OUTPUTS, "mono", 0.50)
+
+ MCFG_GENERIC_LATCH_8_ADD("soundlatch")
+ MCFG_GENERIC_LATCH_DATA_PENDING_CB(DEVWRITELINE("riot", riot6532_device, pa7_w))
+
+ MCFG_GENERIC_LATCH_8_ADD("mainlatch")
+ MCFG_GENERIC_LATCH_DATA_PENDING_CB(DEVWRITELINE("riot", riot6532_device, pa6_w))
MACHINE_CONFIG_END