diff options
Diffstat (limited to 'src/mame/drivers/dblewing.cpp')
-rw-r--r-- | src/mame/drivers/dblewing.cpp | 44 |
1 files changed, 23 insertions, 21 deletions
diff --git a/src/mame/drivers/dblewing.cpp b/src/mame/drivers/dblewing.cpp index 8f45fc625a7..f973a632dcd 100644 --- a/src/mame/drivers/dblewing.cpp +++ b/src/mame/drivers/dblewing.cpp @@ -352,34 +352,35 @@ DECOSPR_PRIORITY_CB_MEMBER(dblewing_state::pri_callback) return 0; // sprites always on top? } -void dblewing_state::dblewing(machine_config &config) -{ +MACHINE_CONFIG_START(dblewing_state::dblewing) + /* basic machine hardware */ - M68000(config, m_maincpu, XTAL(28'000'000)/2); /* DE102 */ - m_maincpu->set_addrmap(AS_PROGRAM, &dblewing_state::dblewing_map); - m_maincpu->set_addrmap(AS_OPCODES, &dblewing_state::decrypted_opcodes_map); - m_maincpu->set_vblank_int("screen", FUNC(dblewing_state::irq6_line_hold)); + MCFG_DEVICE_ADD("maincpu", M68000, XTAL(28'000'000)/2) /* DE102 */ + MCFG_DEVICE_PROGRAM_MAP(dblewing_map) + MCFG_DEVICE_OPCODES_MAP(decrypted_opcodes_map) + MCFG_DEVICE_VBLANK_INT_DRIVER("screen", dblewing_state, irq6_line_hold) - Z80(config, m_audiocpu, XTAL(32'220'000)/9); - m_audiocpu->set_addrmap(AS_PROGRAM, &dblewing_state::sound_map); - m_audiocpu->set_addrmap(AS_IO, &dblewing_state::sound_io); + MCFG_DEVICE_ADD("audiocpu", Z80, XTAL(32'220'000)/9) + MCFG_DEVICE_PROGRAM_MAP(sound_map) + MCFG_DEVICE_IO_MAP(sound_io) - INPUT_MERGER_ANY_HIGH(config, "soundirq").output_handler().set_inputline(m_audiocpu, 0); + MCFG_INPUT_MERGER_ANY_HIGH("soundirq") + MCFG_INPUT_MERGER_OUTPUT_HANDLER(INPUTLINE("audiocpu", 0)) - config.m_minimum_quantum = attotime::from_hz(6000); + MCFG_QUANTUM_TIME(attotime::from_hz(6000)) /* video hardware */ - screen_device &screen(SCREEN(config, "screen", SCREEN_TYPE_RASTER)); - screen.set_refresh_hz(58.443); - screen.set_vblank_time(ATTOSECONDS_IN_USEC(2500) /* not accurate */); - screen.set_size(64*8, 32*8); - screen.set_visarea(0*8, 40*8-1, 1*8, 31*8-1); - screen.set_screen_update(FUNC(dblewing_state::screen_update_dblewing)); - screen.set_palette("palette"); + MCFG_SCREEN_ADD("screen", RASTER) + MCFG_SCREEN_REFRESH_RATE(58.443) + MCFG_SCREEN_VBLANK_TIME(ATTOSECONDS_IN_USEC(2500) /* not accurate */) + MCFG_SCREEN_SIZE(64*8, 32*8) + MCFG_SCREEN_VISIBLE_AREA(0*8, 40*8-1, 1*8, 31*8-1) + MCFG_SCREEN_UPDATE_DRIVER(dblewing_state, screen_update_dblewing) + MCFG_SCREEN_PALETTE("palette") PALETTE(config, "palette").set_format(palette_device::xBGR_444, 4096); - GFXDECODE(config, "gfxdecode", "palette", gfx_dblewing); + MCFG_DEVICE_ADD("gfxdecode", GFXDECODE, "palette", gfx_dblewing) DECO16IC(config, m_deco_tilegen, 0); m_deco_tilegen->set_split(0); @@ -418,8 +419,9 @@ void dblewing_state::dblewing(machine_config &config) ymsnd.irq_handler().set("soundirq", FUNC(input_merger_device::in_w<1>)); ymsnd.add_route(ALL_OUTPUTS, "mono", 1.0); - OKIM6295(config, "oki", XTAL(28'000'000)/28, okim6295_device::PIN7_HIGH).add_route(ALL_OUTPUTS, "mono", 1.00); -} + MCFG_DEVICE_ADD("oki", OKIM6295, XTAL(28'000'000)/28, okim6295_device::PIN7_HIGH) + MCFG_SOUND_ROUTE(ALL_OUTPUTS, "mono", 1.00) +MACHINE_CONFIG_END |