summaryrefslogtreecommitdiffstatshomepage
path: root/src/mame/drivers/fireball.cpp
diff options
context:
space:
mode:
Diffstat (limited to 'src/mame/drivers/fireball.cpp')
-rw-r--r--src/mame/drivers/fireball.cpp20
1 files changed, 11 insertions, 9 deletions
diff --git a/src/mame/drivers/fireball.cpp b/src/mame/drivers/fireball.cpp
index 6600279273f..c95f1cfade6 100644
--- a/src/mame/drivers/fireball.cpp
+++ b/src/mame/drivers/fireball.cpp
@@ -84,7 +84,7 @@ private:
uint8_t m_display_data;
virtual void machine_reset() override;
virtual void machine_start() override { m_digits.resolve(); }
- required_device<cpu_device> m_maincpu;
+ required_device<i8031_device> m_maincpu;
required_device<ay8912_device> m_ay;
required_device<eeprom_serial_x24c44_device> m_eeprom;
output_finder<8> m_digits;
@@ -494,14 +494,16 @@ TIMER_DEVICE_CALLBACK_MEMBER( fireball_state::int_0 )
MACHINE_CONFIG_START(fireball_state::fireball)
/* basic machine hardware */
- MCFG_DEVICE_ADD("maincpu", I8031, CPU_CLK) //
- MCFG_DEVICE_PROGRAM_MAP(fireball_map)
- MCFG_DEVICE_IO_MAP(fireball_io_map)
- MCFG_MCS51_PORT_P1_IN_CB(READ8(*this, fireball_state, p1_r))
- MCFG_MCS51_PORT_P1_OUT_CB(WRITE8(*this, fireball_state, p1_w))
- MCFG_MCS51_PORT_P3_IN_CB(READ8(*this, fireball_state, p3_r))
- MCFG_MCS51_PORT_P3_OUT_CB(WRITE8(*this, fireball_state, p3_w))
- MCFG_TIMER_DRIVER_ADD_PERIODIC("int_0", fireball_state, int_0, attotime::from_hz(555)) //9ms from scope reading 111Hz take care of this in the handler
+ I8031(config, m_maincpu, CPU_CLK); //
+ m_maincpu->set_addrmap(AS_PROGRAM, &fireball_state::fireball_map);
+ m_maincpu->set_addrmap(AS_IO, &fireball_state::fireball_io_map);
+ m_maincpu->port_in_cb<1>().set(FUNC(fireball_state::p1_r));
+ m_maincpu->port_out_cb<1>().set(FUNC(fireball_state::p1_w));
+ m_maincpu->port_in_cb<3>().set(FUNC(fireball_state::p3_r));
+ m_maincpu->port_out_cb<3>().set(FUNC(fireball_state::p3_w));
+
+ //9ms from scope reading 111Hz take care of this in the handler
+ TIMER(config, "int_0", 0).configure_periodic(timer_device::expired_delegate(FUNC(fireball_state::int_0), this), attotime::from_hz(555));
EEPROM_X24C44_16BIT(config, "eeprom");