summaryrefslogtreecommitdiffstatshomepage
path: root/src/mame/drivers/rollrace.cpp
diff options
context:
space:
mode:
Diffstat (limited to 'src/mame/drivers/rollrace.cpp')
-rw-r--r--src/mame/drivers/rollrace.cpp40
1 files changed, 20 insertions, 20 deletions
diff --git a/src/mame/drivers/rollrace.cpp b/src/mame/drivers/rollrace.cpp
index b9e4655c71c..b05c7776697 100644
--- a/src/mame/drivers/rollrace.cpp
+++ b/src/mame/drivers/rollrace.cpp
@@ -249,15 +249,15 @@ INTERRUPT_GEN_MEMBER(rollrace_state::sound_timer_irq)
device.execute().pulse_input_line(INPUT_LINE_NMI, attotime::zero);
}
-MACHINE_CONFIG_START(rollrace_state::rollrace)
-
+void rollrace_state::rollrace(machine_config &config)
+{
/* basic machine hardware */
- MCFG_DEVICE_ADD("maincpu", Z80,XTAL(24'000'000)/8) /* verified on pcb */
- MCFG_DEVICE_PROGRAM_MAP(rollrace_map)
+ Z80(config, m_maincpu, XTAL(24'000'000)/8); /* verified on pcb */
+ m_maincpu->set_addrmap(AS_PROGRAM, &rollrace_state::rollrace_map);
- MCFG_DEVICE_ADD("audiocpu", Z80,XTAL(24'000'000)/16) /* verified on pcb */
- MCFG_DEVICE_PROGRAM_MAP(rollrace_sound_map)
- MCFG_DEVICE_PERIODIC_INT_DRIVER(rollrace_state, sound_timer_irq, 4*60)
+ z80_device &audiocpu(Z80(config, "audiocpu", XTAL(24'000'000)/16)); /* verified on pcb */
+ audiocpu.set_addrmap(AS_PROGRAM, &rollrace_state::rollrace_sound_map);
+ audiocpu.set_periodic_int(FUNC(rollrace_state::sound_timer_irq), attotime::from_hz(4*60));
ls259_device &mainlatch(LS259(config, "mainlatch"));
mainlatch.q_out_cb<0>().set(FUNC(rollrace_state::flipx_w));
@@ -269,14 +269,14 @@ MACHINE_CONFIG_START(rollrace_state::rollrace)
mainlatch.q_out_cb<6>().set(FUNC(rollrace_state::spritebank_w));
/* video hardware */
- MCFG_SCREEN_ADD("screen", RASTER)
- MCFG_SCREEN_REFRESH_RATE(60)
- MCFG_SCREEN_VBLANK_TIME(ATTOSECONDS_IN_USEC(2500) /* not accurate */)
- MCFG_SCREEN_SIZE(256, 256)
- MCFG_SCREEN_VISIBLE_AREA(0,256-1,16, 255-16)
- MCFG_SCREEN_UPDATE_DRIVER(rollrace_state, screen_update)
- MCFG_SCREEN_PALETTE(m_palette)
- MCFG_SCREEN_VBLANK_CALLBACK(WRITELINE(*this, rollrace_state, vblank_irq))
+ screen_device &screen(SCREEN(config, "screen", SCREEN_TYPE_RASTER));
+ screen.set_refresh_hz(60);
+ screen.set_vblank_time(ATTOSECONDS_IN_USEC(2500) /* not accurate */);
+ screen.set_size(256, 256);
+ screen.set_visarea(0, 256-1, 16, 255-16);
+ screen.set_screen_update(FUNC(rollrace_state::screen_update));
+ screen.set_palette(m_palette);
+ screen.screen_vblank().set(FUNC(rollrace_state::vblank_irq));
GFXDECODE(config, m_gfxdecode, m_palette, gfx_rollrace);
PALETTE(config, m_palette, FUNC(rollrace_state::rollrace_palette), 256);
@@ -292,16 +292,16 @@ MACHINE_CONFIG_START(rollrace_state::rollrace)
AY8910(config, "ay2", XTAL(24'000'000)/16).add_route(ALL_OUTPUTS, "rspeaker", 0.10); /* verified on pcb */
AY8910(config, "ay3", XTAL(24'000'000)/16).add_route(ALL_OUTPUTS, "lspeaker", 0.10); /* verified on pcb */
-MACHINE_CONFIG_END
+}
-MACHINE_CONFIG_START(rollrace_state::rollace2)
+void rollrace_state::rollace2(machine_config &config)
+{
rollrace(config);
/* basic machine hardware */
-// MCFG_SCREEN_MODIFY("screen")
-// MCFG_SCREEN_VISIBLE_AREA(0,256-1,16, 255-16)
-MACHINE_CONFIG_END
+// subdevice<screen_device>("screen")->set_visarea(0, 256-1, 16, 255-16);
+}
/***************************************************************************