summaryrefslogtreecommitdiffstatshomepage
path: root/src/mame/drivers/supduck.cpp
diff options
context:
space:
mode:
Diffstat (limited to 'src/mame/drivers/supduck.cpp')
-rw-r--r--src/mame/drivers/supduck.cpp41
1 files changed, 19 insertions, 22 deletions
diff --git a/src/mame/drivers/supduck.cpp b/src/mame/drivers/supduck.cpp
index c34cb79c02d..5a18c908aa1 100644
--- a/src/mame/drivers/supduck.cpp
+++ b/src/mame/drivers/supduck.cpp
@@ -443,30 +443,29 @@ void supduck_state::machine_reset()
MACHINE_CONFIG_START(supduck_state::supduck)
-
/* basic machine hardware */
- MCFG_DEVICE_ADD("maincpu", M68000, XTAL(8'000'000)) /* Verified on PCB */
- MCFG_DEVICE_PROGRAM_MAP(main_map)
- MCFG_DEVICE_VBLANK_INT_DRIVER("screen", supduck_state, irq2_line_hold) // 2 & 4?
+ M68000(config, m_maincpu, XTAL(8'000'000)); /* Verified on PCB */
+ m_maincpu->set_addrmap(AS_PROGRAM, &supduck_state::main_map);
+ m_maincpu->set_vblank_int("screen", FUNC(supduck_state::irq2_line_hold)); // 2 & 4?
- MCFG_DEVICE_ADD("audiocpu", Z80, XTAL(8'000'000)/4) /* 2MHz - verified on PCB */
- MCFG_DEVICE_PROGRAM_MAP(sound_map)
+ Z80(config, m_audiocpu, XTAL(8'000'000)/4); /* 2MHz - verified on PCB */
+ m_audiocpu->set_addrmap(AS_PROGRAM, &supduck_state::sound_map);
/* video hardware */
- MCFG_SCREEN_ADD("screen", RASTER)
- MCFG_SCREEN_REFRESH_RATE(60)
- MCFG_SCREEN_VBLANK_TIME(ATTOSECONDS_IN_USEC(2500))
- MCFG_SCREEN_UPDATE_DRIVER(supduck_state, screen_update)
- MCFG_SCREEN_SIZE(32*8, 32*8)
- MCFG_SCREEN_VISIBLE_AREA(0*8, 32*8-1, 2*8, 30*8-1)
- MCFG_SCREEN_PALETTE("palette")
- MCFG_SCREEN_VBLANK_CALLBACK(WRITELINE("spriteram", buffered_spriteram16_device, vblank_copy_rising))
+ screen_device &screen(SCREEN(config, "screen", SCREEN_TYPE_RASTER));
+ screen.set_refresh_hz(60);
+ screen.set_vblank_time(ATTOSECONDS_IN_USEC(2500));
+ screen.set_screen_update(FUNC(supduck_state::screen_update));
+ screen.set_size(32*8, 32*8);
+ screen.set_visarea(0*8, 32*8-1, 2*8, 30*8-1);
+ screen.set_palette(m_palette);
+ screen.screen_vblank().set(m_spriteram, FUNC(buffered_spriteram16_device::vblank_copy_rising));
- MCFG_DEVICE_ADD("spriteram", BUFFERED_SPRITERAM16)
+ BUFFERED_SPRITERAM16(config, m_spriteram);
- MCFG_DEVICE_ADD("gfxdecode", GFXDECODE, "palette", gfx_supduck)
+ GFXDECODE(config, m_gfxdecode, m_palette, gfx_supduck);
- MCFG_DEVICE_ADD("spritegen", TIGEROAD_SPRITE, 0)
+ TIGEROAD_SPRITE(config, m_spritegen, 0);
MCFG_PALETTE_ADD("palette", 0x800/2)
MCFG_PALETTE_FORMAT(xRGBRRRRGGGGBBBB_bit4)
@@ -476,14 +475,12 @@ MACHINE_CONFIG_START(supduck_state::supduck)
GENERIC_LATCH_8(config, m_soundlatch);
- MCFG_DEVICE_ADD("oki", OKIM6295, XTAL(8'000'000)/8, okim6295_device::PIN7_HIGH) // 1MHz - Verified on PCB, pin 7 not verified
- MCFG_SOUND_ROUTE(ALL_OUTPUTS, "mono", 1.0)
- MCFG_DEVICE_ADDRESS_MAP(0, oki_map)
-
+ okim6295_device &oki(OKIM6295(config, "oki", XTAL(8'000'000)/8, okim6295_device::PIN7_HIGH)); // 1MHz - Verified on PCB, pin 7 not verified
+ oki.add_route(ALL_OUTPUTS, "mono", 1.0);
+ oki.set_addrmap(0, &supduck_state::oki_map);
MACHINE_CONFIG_END
-
/***************************************************************************
Game driver(s)