summaryrefslogtreecommitdiffstatshomepage
path: root/src/mame/drivers/bwing.cpp
diff options
context:
space:
mode:
Diffstat (limited to 'src/mame/drivers/bwing.cpp')
-rw-r--r--src/mame/drivers/bwing.cpp51
1 files changed, 25 insertions, 26 deletions
diff --git a/src/mame/drivers/bwing.cpp b/src/mame/drivers/bwing.cpp
index 48f7c73023c..3ef91ecac5c 100644
--- a/src/mame/drivers/bwing.cpp
+++ b/src/mame/drivers/bwing.cpp
@@ -363,36 +363,36 @@ void bwing_state::bwing_postload()
}
-void bwing_state::bwing(machine_config &config)
-{
+MACHINE_CONFIG_START(bwing_state::bwing)
+
// basic machine hardware
- MC6809E(config, m_maincpu, 2000000);
- m_maincpu->set_addrmap(AS_PROGRAM, &bwing_state::bwp1_map);
+ MCFG_DEVICE_ADD("maincpu", MC6809E, 2000000)
+ MCFG_DEVICE_PROGRAM_MAP(bwp1_map)
- MC6809E(config, m_subcpu, 2000000);
- m_subcpu->set_addrmap(AS_PROGRAM, &bwing_state::bwp2_map);
+ MCFG_DEVICE_ADD("sub", MC6809E, 2000000)
+ MCFG_DEVICE_PROGRAM_MAP(bwp2_map)
- DECO16(config, m_audiocpu, 2000000);
- m_audiocpu->set_addrmap(AS_PROGRAM, &bwing_state::bwp3_map);
- m_audiocpu->set_addrmap(AS_IO, &bwing_state::bwp3_io_map);
- m_audiocpu->set_periodic_int(FUNC(bwing_state::bwp3_interrupt), attotime::from_hz(1000));
+ MCFG_DEVICE_ADD("audiocpu", DECO16, 2000000)
+ MCFG_DEVICE_PROGRAM_MAP(bwp3_map)
+ MCFG_DEVICE_IO_MAP(bwp3_io_map)
+ MCFG_DEVICE_PERIODIC_INT_DRIVER(bwing_state, bwp3_interrupt, 1000)
- config.m_minimum_quantum = attotime::from_hz(18000); // high enough?
+ MCFG_QUANTUM_TIME(attotime::from_hz(18000)) // high enough?
ADDRESS_MAP_BANK(config, "vrambank").set_map(&bwing_state::bank_map).set_options(ENDIANNESS_BIG, 8, 15, 0x2000);
// video hardware
- screen_device &screen(SCREEN(config, "screen", SCREEN_TYPE_RASTER));
- screen.set_video_attributes(VIDEO_UPDATE_BEFORE_VBLANK);
- screen.set_refresh_hz(60);
- screen.set_vblank_time(ATTOSECONDS_IN_USEC(600)); // must be long enough for polling
- screen.set_size(32*8, 32*8);
- screen.set_visarea(0*8, 32*8-1, 1*8, 31*8-1);
- screen.set_screen_update(FUNC(bwing_state::screen_update));
- screen.set_palette(m_palette);
+ MCFG_SCREEN_ADD("screen", RASTER)
+ MCFG_SCREEN_VIDEO_ATTRIBUTES(VIDEO_UPDATE_BEFORE_VBLANK)
+ MCFG_SCREEN_REFRESH_RATE(60)
+ MCFG_SCREEN_VBLANK_TIME(ATTOSECONDS_IN_USEC(600)) // must be long enough for polling
+ MCFG_SCREEN_SIZE(32*8, 32*8)
+ MCFG_SCREEN_VISIBLE_AREA(0*8, 32*8-1, 1*8, 31*8-1)
+ MCFG_SCREEN_UPDATE_DRIVER(bwing_state, screen_update)
+ MCFG_SCREEN_PALETTE("palette")
- GFXDECODE(config, m_gfxdecode, m_palette, gfx_bwing);
- PALETTE(config, m_palette).set_entries(64);
+ MCFG_DEVICE_ADD("gfxdecode", GFXDECODE, "palette", gfx_bwing)
+ MCFG_PALETTE_ADD("palette", 64)
// sound hardware
@@ -404,11 +404,10 @@ void bwing_state::bwing(machine_config &config)
AY8912(config, "ay2", XTAL(24'000'000) / 2 / 8).add_route(ALL_OUTPUTS, "speaker", 0.5);
- DAC08(config, "dac", 0).add_route(ALL_OUTPUTS, "speaker", 0.1);
- voltage_regulator_device &vref(VOLTAGE_REGULATOR(config, "vref"));
- vref.add_route(0, "dac", 1.0, DAC_VREF_POS_INPUT);
- vref.add_route(0, "dac", -1.0, DAC_VREF_NEG_INPUT);
-}
+ MCFG_DEVICE_ADD("dac", DAC08, 0) MCFG_SOUND_ROUTE(ALL_OUTPUTS, "speaker", 0.1)
+ MCFG_DEVICE_ADD("vref", VOLTAGE_REGULATOR, 0) MCFG_VOLTAGE_REGULATOR_OUTPUT(5.0)
+ MCFG_SOUND_ROUTE(0, "dac", 1.0, DAC_VREF_POS_INPUT) MCFG_SOUND_ROUTE(0, "dac", -1.0, DAC_VREF_NEG_INPUT)
+MACHINE_CONFIG_END
//****************************************************************************
// ROM Maps