summaryrefslogtreecommitdiffstatshomepage
path: root/src/mame/drivers/gstriker.cpp
diff options
context:
space:
mode:
Diffstat (limited to 'src/mame/drivers/gstriker.cpp')
-rw-r--r--src/mame/drivers/gstriker.cpp20
1 files changed, 9 insertions, 11 deletions
diff --git a/src/mame/drivers/gstriker.cpp b/src/mame/drivers/gstriker.cpp
index 86af212e71f..38874c6ea3d 100644
--- a/src/mame/drivers/gstriker.cpp
+++ b/src/mame/drivers/gstriker.cpp
@@ -502,14 +502,14 @@ MACHINE_CONFIG_START(gstriker_state::gstriker)
MCFG_DEVICE_PROGRAM_MAP(sound_map)
MCFG_DEVICE_IO_MAP(sound_io_map)
- MCFG_DEVICE_ADD("io", VS9209, 0)
- MCFG_VS9209_IN_PORTA_CB(IOPORT("P1"))
- MCFG_VS9209_IN_PORTB_CB(IOPORT("P2"))
- MCFG_VS9209_IN_PORTC_CB(IOPORT("SYSTEM"))
- MCFG_VS9209_IN_PORTD_CB(IOPORT("DSW1"))
- MCFG_VS9209_IN_PORTE_CB(IOPORT("DSW2"))
- MCFG_VS9209_IN_PORTH_CB(READLINE("soundlatch", generic_latch_8_device, pending_r)) MCFG_DEVCB_BIT(0)
- MCFG_VS9209_OUT_PORTH_CB(WRITELINE("watchdog", mb3773_device, write_line_ck)) MCFG_DEVCB_BIT(3)
+ vs9209_device &io(VS9209(config, "io", 0));
+ io.porta_input_cb().set_ioport("P1");
+ io.portb_input_cb().set_ioport("P2");
+ io.portc_input_cb().set_ioport("SYSTEM");
+ io.portd_input_cb().set_ioport("DSW1");
+ io.porte_input_cb().set_ioport("DSW2");
+ io.porth_input_cb().set(m_soundlatch, FUNC(generic_latch_8_device::pending_r)).lshift(0);
+ io.porth_output_cb().set("watchdog", FUNC(mb3773_device::write_line_ck)).bit(3);
MCFG_DEVICE_ADD("watchdog", MB3773, 0)
@@ -569,9 +569,7 @@ MACHINE_CONFIG_START(gstriker_state::twc94)
MCFG_DEVICE_PROGRAM_MAP(twcup94_map)
MCFG_DEVICE_VBLANK_INT_DRIVER("screen", gstriker_state, irq1_line_hold)
- MCFG_DEVICE_MODIFY("io")
- MCFG_VS9209_OUT_PORTH_CB(WRITE8(*this, gstriker_state, twcup94_prot_reg_w))
- MCFG_DEVCB_CHAIN_OUTPUT(WRITELINE("watchdog", mb3773_device, write_line_ck)) MCFG_DEVCB_BIT(3)
+ subdevice<vs9209_device>("io")->porth_output_cb().append(FUNC(gstriker_state::twcup94_prot_reg_w));
MCFG_DEVICE_REMOVE("acia")
MACHINE_CONFIG_END