diff options
Diffstat (limited to 'src/mame/drivers/turbo.cpp')
-rw-r--r-- | src/mame/drivers/turbo.cpp | 84 |
1 files changed, 43 insertions, 41 deletions
diff --git a/src/mame/drivers/turbo.cpp b/src/mame/drivers/turbo.cpp index 4fe5dc1842b..80e6d144308 100644 --- a/src/mame/drivers/turbo.cpp +++ b/src/mame/drivers/turbo.cpp @@ -843,12 +843,12 @@ GFXDECODE_END * *************************************/ -MACHINE_CONFIG_START(turbo_state::turbo) - +void turbo_state::turbo(machine_config &config) +{ /* basic machine hardware */ - MCFG_DEVICE_ADD("maincpu", Z80, MASTER_CLOCK/4) - MCFG_DEVICE_PROGRAM_MAP(turbo_map) - MCFG_DEVICE_VBLANK_INT_DRIVER("screen", turbo_state, irq0_line_hold) + Z80(config, m_maincpu, MASTER_CLOCK/4); + m_maincpu->set_addrmap(AS_PROGRAM, &turbo_state::turbo_map); + m_maincpu->set_vblank_int("screen", FUNC(turbo_state::irq0_line_hold)); I8255(config, m_i8255_0); m_i8255_0->out_pa_callback().set(FUNC(turbo_state::turbo_ppi0a_w)); @@ -884,25 +884,25 @@ MACHINE_CONFIG_START(turbo_state::turbo) GFXDECODE(config, m_gfxdecode, "palette", gfx_turbo); PALETTE(config, "palette", FUNC(turbo_state::turbo_palette), 256); - MCFG_SCREEN_ADD("screen", RASTER) - MCFG_SCREEN_VIDEO_ATTRIBUTES(VIDEO_ALWAYS_UPDATE) - MCFG_SCREEN_RAW_PARAMS(PIXEL_CLOCK, HTOTAL, HBEND, HBSTART, VTOTAL, VBEND, VBSTART) - MCFG_SCREEN_UPDATE_DRIVER(turbo_state, screen_update_turbo) - MCFG_SCREEN_PALETTE("palette") + SCREEN(config, m_screen, SCREEN_TYPE_RASTER); + m_screen->set_video_attributes(VIDEO_ALWAYS_UPDATE); + m_screen->set_raw(PIXEL_CLOCK, HTOTAL, HBEND, HBSTART, VTOTAL, VBEND, VBSTART); + m_screen->set_screen_update(FUNC(turbo_state::screen_update_turbo)); + m_screen->set_palette("palette"); MCFG_VIDEO_START_OVERRIDE(turbo_state,turbo) /* sound hardware */ turbo_samples(config); -MACHINE_CONFIG_END - +} -MACHINE_CONFIG_START(turbo_state::subroc3d) +void turbo_state::subroc3d(machine_config &config) +{ /* basic machine hardware */ - MCFG_DEVICE_ADD("maincpu", Z80, MASTER_CLOCK/4) - MCFG_DEVICE_PROGRAM_MAP(subroc3d_map) - MCFG_DEVICE_VBLANK_INT_DRIVER("screen", turbo_state, irq0_line_hold) + Z80(config, m_maincpu, MASTER_CLOCK/4); + m_maincpu->set_addrmap(AS_PROGRAM, &turbo_state::subroc3d_map); + m_maincpu->set_vblank_int("screen", FUNC(turbo_state::irq0_line_hold)); I8255(config, m_i8255_0); m_i8255_0->out_pa_callback().set(FUNC(turbo_state::subroc3d_ppi0a_w)); @@ -923,30 +923,30 @@ MACHINE_CONFIG_START(turbo_state::subroc3d) GFXDECODE(config, m_gfxdecode, "palette", gfx_turbo); PALETTE(config, "palette", FUNC(turbo_state::subroc3d_palette), 256); - MCFG_SCREEN_ADD("screen", RASTER) - MCFG_SCREEN_VIDEO_ATTRIBUTES(VIDEO_ALWAYS_UPDATE) - MCFG_SCREEN_RAW_PARAMS(PIXEL_CLOCK, HTOTAL, HBEND, HBSTART, VTOTAL, VBEND, VBSTART) - MCFG_SCREEN_UPDATE_DRIVER(turbo_state, screen_update_subroc3d) - MCFG_SCREEN_PALETTE("palette") + SCREEN(config, m_screen, SCREEN_TYPE_RASTER); + m_screen->set_video_attributes(VIDEO_ALWAYS_UPDATE); + m_screen->set_raw(PIXEL_CLOCK, HTOTAL, HBEND, HBSTART, VTOTAL, VBEND, VBSTART); + m_screen->set_screen_update(FUNC(turbo_state::screen_update_subroc3d)); + m_screen->set_palette("palette"); MCFG_VIDEO_START_OVERRIDE(turbo_state,turbo) /* sound hardware */ subroc3d_samples(config); -MACHINE_CONFIG_END - +} -MACHINE_CONFIG_START(turbo_state::buckrog) +void turbo_state::buckrog(machine_config &config) +{ /* basic machine hardware */ - MCFG_DEVICE_ADD("maincpu", Z80, MASTER_CLOCK/4) - MCFG_DEVICE_PROGRAM_MAP(buckrog_map) - MCFG_DEVICE_OPCODES_MAP(decrypted_opcodes_map) - MCFG_DEVICE_VBLANK_INT_DRIVER("screen", turbo_state, irq0_line_hold) + Z80(config, m_maincpu, MASTER_CLOCK/4); + m_maincpu->set_addrmap(AS_PROGRAM, &turbo_state::buckrog_map); + m_maincpu->set_addrmap(AS_OPCODES, &turbo_state::decrypted_opcodes_map); + m_maincpu->set_vblank_int("screen", FUNC(turbo_state::irq0_line_hold)); - MCFG_DEVICE_ADD("subcpu", Z80, MASTER_CLOCK/4) - MCFG_DEVICE_PROGRAM_MAP(buckrog_cpu2_map) - MCFG_DEVICE_IO_MAP(buckrog_cpu2_portmap) + Z80(config, m_subcpu, MASTER_CLOCK/4); + m_subcpu->set_addrmap(AS_PROGRAM, &turbo_state::buckrog_cpu2_map); + m_subcpu->set_addrmap(AS_IO, &turbo_state::buckrog_cpu2_portmap); config.m_minimum_quantum = attotime::from_hz(600); MCFG_MACHINE_RESET_OVERRIDE(turbo_state,buckrog) @@ -970,23 +970,25 @@ MACHINE_CONFIG_START(turbo_state::buckrog) GFXDECODE(config, m_gfxdecode, "palette", gfx_turbo); PALETTE(config, "palette", FUNC(turbo_state::buckrog_palette), 1024); - MCFG_SCREEN_ADD("screen", RASTER) - MCFG_SCREEN_VIDEO_ATTRIBUTES(VIDEO_ALWAYS_UPDATE) - MCFG_SCREEN_RAW_PARAMS(PIXEL_CLOCK, HTOTAL, HBEND, HBSTART, VTOTAL, VBEND, VBSTART) - MCFG_SCREEN_UPDATE_DRIVER(turbo_state, screen_update_buckrog) - MCFG_SCREEN_PALETTE("palette") + SCREEN(config, m_screen, SCREEN_TYPE_RASTER); + m_screen->set_video_attributes(VIDEO_ALWAYS_UPDATE); + m_screen->set_raw(PIXEL_CLOCK, HTOTAL, HBEND, HBSTART, VTOTAL, VBEND, VBSTART); + m_screen->set_screen_update(FUNC(turbo_state::screen_update_buckrog)); + m_screen->set_palette("palette"); MCFG_VIDEO_START_OVERRIDE(turbo_state,buckrog) /* sound hardware */ buckrog_samples(config); -MACHINE_CONFIG_END +} -MACHINE_CONFIG_START(turbo_state::buckrogu) +void turbo_state::buckrogu(machine_config &config) +{ buckrog(config); - MCFG_DEVICE_MODIFY("maincpu") - MCFG_DEVICE_REMOVE_ADDRESS_MAP(AS_OPCODES) -MACHINE_CONFIG_END + Z80(config.replace(), m_maincpu, MASTER_CLOCK/4); + m_maincpu->set_addrmap(AS_PROGRAM, &turbo_state::buckrog_map); + m_maincpu->set_vblank_int("screen", FUNC(turbo_state::irq0_line_hold)); +} void turbo_state::buckroge(machine_config &config) |