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 b05c7776697..b9e4655c71c 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);
}
-void rollrace_state::rollrace(machine_config &config)
-{
+MACHINE_CONFIG_START(rollrace_state::rollrace)
+
/* basic machine hardware */
- 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("maincpu", Z80,XTAL(24'000'000)/8) /* verified on pcb */
+ MCFG_DEVICE_PROGRAM_MAP(rollrace_map)
- 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));
+ 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)
ls259_device &mainlatch(LS259(config, "mainlatch"));
mainlatch.q_out_cb<0>().set(FUNC(rollrace_state::flipx_w));
@@ -269,14 +269,14 @@ void rollrace_state::rollrace(machine_config &config)
mainlatch.q_out_cb<6>().set(FUNC(rollrace_state::spritebank_w));
/* video hardware */
- 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));
+ 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))
GFXDECODE(config, m_gfxdecode, m_palette, gfx_rollrace);
PALETTE(config, m_palette, FUNC(rollrace_state::rollrace_palette), 256);
@@ -292,16 +292,16 @@ void rollrace_state::rollrace(machine_config &config)
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
-void rollrace_state::rollace2(machine_config &config)
-{
+MACHINE_CONFIG_START(rollrace_state::rollace2)
rollrace(config);
/* basic machine hardware */
-// subdevice<screen_device>("screen")->set_visarea(0, 256-1, 16, 255-16);
-}
+// MCFG_SCREEN_MODIFY("screen")
+// MCFG_SCREEN_VISIBLE_AREA(0,256-1,16, 255-16)
+MACHINE_CONFIG_END
/***************************************************************************