summaryrefslogtreecommitdiffstatshomepage
path: root/src/mame/drivers/atarifb.cpp
diff options
context:
space:
mode:
Diffstat (limited to 'src/mame/drivers/atarifb.cpp')
-rw-r--r--src/mame/drivers/atarifb.cpp70
1 files changed, 33 insertions, 37 deletions
diff --git a/src/mame/drivers/atarifb.cpp b/src/mame/drivers/atarifb.cpp
index 578b377fcac..127bfcbab2b 100644
--- a/src/mame/drivers/atarifb.cpp
+++ b/src/mame/drivers/atarifb.cpp
@@ -557,74 +557,70 @@ void atarifb_state::machine_reset()
m_counter_y_in2b = 0;
}
-MACHINE_CONFIG_START(atarifb_state::atarifb)
-
+void atarifb_state::atarifb(machine_config &config)
+{
/* basic machine hardware */
- MCFG_DEVICE_ADD("maincpu", M6502, 750000)
- MCFG_DEVICE_PROGRAM_MAP(atarifb_map)
- MCFG_DEVICE_PERIODIC_INT_DRIVER(atarifb_state, irq0_line_hold, 4*60)
+ M6502(config, m_maincpu, 750000);
+ m_maincpu->set_addrmap(AS_PROGRAM, &atarifb_state::atarifb_map);
+ m_maincpu->set_periodic_int(FUNC(atarifb_state::irq0_line_hold), attotime::from_hz(4*60));
WATCHDOG_TIMER(config, "watchdog");
/* video hardware */
- MCFG_SCREEN_ADD("screen", RASTER)
- MCFG_SCREEN_REFRESH_RATE(60)
- MCFG_SCREEN_VBLANK_TIME(ATTOSECONDS_IN_USEC(2037) /* 16.3ms * 1/8 = 2037.5. Is it 1/8th or 3/32nds? (1528?) */)
- MCFG_SCREEN_SIZE(38*8, 32*8)
- MCFG_SCREEN_VISIBLE_AREA(0*8, 38*8-1, 1*8, 31*8-1)
- MCFG_SCREEN_UPDATE_DRIVER(atarifb_state, screen_update_atarifb)
- MCFG_SCREEN_PALETTE(m_palette)
-
- MCFG_DEVICE_ADD("gfxdecode", GFXDECODE, m_palette, gfx_atarifb)
+ SCREEN(config, m_screen, SCREEN_TYPE_RASTER);
+ m_screen->set_refresh_hz(60);
+ m_screen->set_vblank_time(ATTOSECONDS_IN_USEC(2037) /* 16.3ms * 1/8 = 2037.5. Is it 1/8th or 3/32nds? (1528?) */);
+ m_screen->set_size(38*8, 32*8);
+ m_screen->set_visarea(0*8, 38*8-1, 1*8, 31*8-1);
+ m_screen->set_screen_update(FUNC(atarifb_state::screen_update_atarifb));
+ m_screen->set_palette(m_palette);
+
+ GFXDECODE(config, m_gfxdecode, m_palette, gfx_atarifb);
PALETTE(config, m_palette, FUNC(atarifb_state::atarifb_palette), 12);
/* sound hardware */
SPEAKER(config, "mono").front_center();
- MCFG_DEVICE_ADD("discrete", DISCRETE, atarifb_discrete)
- MCFG_SOUND_ROUTE(ALL_OUTPUTS, "mono", 0.18)
-MACHINE_CONFIG_END
+ DISCRETE(config, m_discrete, atarifb_discrete).add_route(ALL_OUTPUTS, "mono", 0.18);
+}
-MACHINE_CONFIG_START(atarifb_state::atarifb4)
+void atarifb_state::atarifb4(machine_config &config)
+{
atarifb(config);
/* basic machine hardware */
- MCFG_DEVICE_MODIFY("maincpu")
- MCFG_DEVICE_PROGRAM_MAP(atarifb4_map)
-MACHINE_CONFIG_END
+ m_maincpu->set_addrmap(AS_PROGRAM, &atarifb_state::atarifb4_map);
+}
-MACHINE_CONFIG_START(atarifb_state::abaseb)
+void atarifb_state::abaseb(machine_config &config)
+{
atarifb(config);
/* basic machine hardware */
- MCFG_DEVICE_MODIFY("maincpu")
- MCFG_DEVICE_PROGRAM_MAP(abaseb_map)
+ m_maincpu->set_addrmap(AS_PROGRAM, &atarifb_state::abaseb_map);
/* video hardware */
- MCFG_SCREEN_MODIFY("screen")
- MCFG_SCREEN_UPDATE_DRIVER(atarifb_state, screen_update_abaseb)
+ m_screen->set_screen_update(FUNC(atarifb_state::screen_update_abaseb));
/* sound hardware */
- MCFG_DEVICE_REPLACE("discrete", DISCRETE, abaseb_discrete)
- MCFG_SOUND_ROUTE(ALL_OUTPUTS, "mono", 0.24)
-MACHINE_CONFIG_END
+ DISCRETE(config.replace(), m_discrete, abaseb_discrete).add_route(ALL_OUTPUTS, "mono", 0.24);
+}
-MACHINE_CONFIG_START(atarifb_state::soccer)
+void atarifb_state::soccer(machine_config &config)
+{
atarifb(config);
/* basic machine hardware */
- MCFG_DEVICE_MODIFY("maincpu")
- MCFG_DEVICE_PROGRAM_MAP(soccer_map)
+ m_maincpu->set_addrmap(AS_PROGRAM, &atarifb_state::soccer_map);
/* video hardware */
- MCFG_SCREEN_MODIFY("screen")
- MCFG_SCREEN_VISIBLE_AREA(0*8, 38*8-1, 2*8, 32*8-1)
- MCFG_SCREEN_UPDATE_DRIVER(atarifb_state, screen_update_soccer)
- MCFG_GFXDECODE_MODIFY("gfxdecode", gfx_soccer)
-MACHINE_CONFIG_END
+ m_screen->set_visarea(0*8, 38*8-1, 2*8, 32*8-1);
+ m_screen->set_screen_update(FUNC(atarifb_state::screen_update_soccer));
+ m_gfxdecode->set_info(gfx_soccer);
+}