diff options
Diffstat (limited to 'src/mame/drivers/looping.cpp')
-rw-r--r-- | src/mame/drivers/looping.cpp | 33 |
1 files changed, 17 insertions, 16 deletions
diff --git a/src/mame/drivers/looping.cpp b/src/mame/drivers/looping.cpp index 56cdd2ca1b3..3e9066dcf68 100644 --- a/src/mame/drivers/looping.cpp +++ b/src/mame/drivers/looping.cpp @@ -621,8 +621,8 @@ GFXDECODE_END * *************************************/ -MACHINE_CONFIG_START(looping_state::looping) - +void looping_state::looping(machine_config &config) +{ // CPU TMS9995, standard variant; no line connections TMS9995(config, m_maincpu, MAIN_CPU_CLOCK); m_maincpu->set_addrmap(AS_PROGRAM, &looping_state::looping_map); @@ -655,15 +655,14 @@ MACHINE_CONFIG_START(looping_state::looping) WATCHDOG_TIMER(config, m_watchdog); /* video hardware */ - MCFG_SCREEN_ADD("screen", RASTER) - MCFG_SCREEN_RAW_PARAMS(PIXEL_CLOCK, HTOTAL, HBEND, HBSTART, VTOTAL, VBEND, VBSTART) - MCFG_SCREEN_UPDATE_DRIVER(looping_state, screen_update_looping) - MCFG_SCREEN_PALETTE("palette") + screen_device &screen(SCREEN(config, "screen", SCREEN_TYPE_RASTER)); + screen.set_raw(PIXEL_CLOCK, HTOTAL, HBEND, HBSTART, VTOTAL, VBEND, VBSTART); + screen.set_screen_update(FUNC(looping_state::screen_update_looping)); + screen.set_palette(m_palette); - MCFG_DEVICE_ADD("gfxdecode", GFXDECODE, "palette", gfx_looping) + GFXDECODE(config, m_gfxdecode, m_palette, gfx_looping); - MCFG_PALETTE_ADD("palette", 32) - MCFG_PALETTE_INIT_OWNER(looping_state, looping) + PALETTE(config, m_palette, 32).set_init(FUNC(looping_state::palette_init_looping)); ls259_device &videolatch(LS259(config, "videolatch")); // E2 on video board videolatch.q_out_cb<1>().set(FUNC(looping_state::level2_irq_set)); @@ -679,13 +678,15 @@ MACHINE_CONFIG_START(looping_state::looping) m_aysnd->port_a_read_callback().set(m_soundlatch, FUNC(generic_latch_8_device::read)); m_aysnd->add_route(ALL_OUTPUTS, "speaker", 0.2); - MCFG_DEVICE_ADD("tms", TMS5220, TMS_CLOCK) - MCFG_TMS52XX_IRQ_HANDLER(WRITELINE(*this, looping_state, looping_spcint)) - MCFG_SOUND_ROUTE(ALL_OUTPUTS, "speaker", 0.5) + TMS5220(config, m_tms, TMS_CLOCK); + m_tms->irq_cb().set(FUNC(looping_state::looping_spcint)); + m_tms->add_route(ALL_OUTPUTS, "speaker", 0.5); - MCFG_DEVICE_ADD("dac", DAC_2BIT_R2R, 0) MCFG_SOUND_ROUTE(ALL_OUTPUTS, "speaker", 0.15) // unknown DAC - 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) + DAC_2BIT_R2R(config, m_dac, 0).add_route(ALL_OUTPUTS, "speaker", 0.15); // unknown DAC + voltage_regulator_device &vref(VOLTAGE_REGULATOR(config, "vref", 0)); + vref.set_output(5.0); + vref.add_route(0, "dac", 1.0, DAC_VREF_POS_INPUT); + vref.add_route(0, "dac", -1.0, DAC_VREF_NEG_INPUT); ls259_device &sen0(LS259(config, "sen0")); // B3 on sound board sen0.q_out_cb<0>().set(FUNC(looping_state::looping_souint_clr)); @@ -695,7 +696,7 @@ MACHINE_CONFIG_START(looping_state::looping) sen1.q_out_cb<0>().set(FUNC(looping_state::ay_enable_w)); sen1.q_out_cb<1>().set(FUNC(looping_state::speech_enable_w)); sen1.q_out_cb<2>().set(FUNC(looping_state::ballon_enable_w)); -MACHINE_CONFIG_END +} |