diff options
Diffstat (limited to 'src/mame/drivers/dynax.cpp')
-rw-r--r-- | src/mame/drivers/dynax.cpp | 87 |
1 files changed, 41 insertions, 46 deletions
diff --git a/src/mame/drivers/dynax.cpp b/src/mame/drivers/dynax.cpp index 6ddfa35fc5b..b5aad491229 100644 --- a/src/mame/drivers/dynax.cpp +++ b/src/mame/drivers/dynax.cpp @@ -4296,14 +4296,14 @@ MACHINE_CONFIG_START(dynax_state::hanamai) AY8912(config, "aysnd", 22000000 / 8).add_route(ALL_OUTPUTS, "mono", 0.20); - MCFG_DEVICE_ADD("ym2203", YM2203, 22000000 / 8) - MCFG_YM2203_IRQ_HANDLER(WRITELINE("mainirq", rst_pos_buffer_device, rst1_w)) - MCFG_AY8910_PORT_A_READ_CB(IOPORT("DSW1")) - MCFG_AY8910_PORT_B_READ_CB(IOPORT("DSW0")) - MCFG_SOUND_ROUTE(0, "mono", 0.20) - MCFG_SOUND_ROUTE(1, "mono", 0.20) - MCFG_SOUND_ROUTE(2, "mono", 0.20) - MCFG_SOUND_ROUTE(3, "mono", 0.50) + ym2203_device &ym2203(YM2203(config, "ym2203", 22000000 / 8)); + ym2203.irq_handler().set("mainirq", FUNC(rst_pos_buffer_device::rst1_w)); + ym2203.port_a_read_callback().set_ioport("DSW1"); + ym2203.port_b_read_callback().set_ioport("DSW0"); + ym2203.add_route(0, "mono", 0.20); + ym2203.add_route(1, "mono", 0.20); + ym2203.add_route(2, "mono", 0.20); + ym2203.add_route(3, "mono", 0.50); MCFG_DEVICE_ADD("msm", MSM5205, 384000) MCFG_MSM5205_VCLK_CB(WRITELINE(*this, dynax_state, adpcm_int)) /* IRQ handler */ @@ -4367,12 +4367,11 @@ MACHINE_CONFIG_START(dynax_state::hnoridur) /* sound hardware */ SPEAKER(config, "mono").front_center(); - MCFG_DEVICE_ADD("aysnd", AY8912, XTAL(22'000'000) / 16) - MCFG_AY8910_PORT_A_READ_CB(IOPORT("DSW0")) - MCFG_SOUND_ROUTE(ALL_OUTPUTS, "mono", 0.20) + ay8912_device &ay8912(AY8912(config, "aysnd", XTAL(22'000'000) / 16)); + ay8912.port_a_read_callback().set_ioport("DSW0"); + ay8912.add_route(ALL_OUTPUTS, "mono", 0.20); - MCFG_DEVICE_ADD("ym2413", YM2413, XTAL(3'579'545)) - MCFG_SOUND_ROUTE(ALL_OUTPUTS, "mono", 1.0) + YM2413(config, "ym2413", XTAL(3'579'545)).add_route(ALL_OUTPUTS, "mono", 1.0); MCFG_DEVICE_ADD("msm", MSM5205, XTAL(384'000)) MCFG_MSM5205_VCLK_CB(WRITELINE(*this, dynax_state, adpcm_int)) /* IRQ handler */ @@ -4437,12 +4436,11 @@ MACHINE_CONFIG_START(dynax_state::hjingi) /* sound hardware */ SPEAKER(config, "mono").front_center(); - MCFG_DEVICE_ADD("aysnd", AY8912, XTAL(22'000'000) / 16) - MCFG_AY8910_PORT_A_READ_CB(IOPORT("DSW0")) - MCFG_SOUND_ROUTE(ALL_OUTPUTS, "mono", 0.20) + ay8912_device &ay8912(AY8912(config, "aysnd", XTAL(22'000'000) / 16)); + ay8912.port_a_read_callback().set_ioport("DSW0"); + ay8912.add_route(ALL_OUTPUTS, "mono", 0.20); - MCFG_DEVICE_ADD("ym2413", YM2413, XTAL(3'579'545) ) - MCFG_SOUND_ROUTE(ALL_OUTPUTS, "mono", 1.0) + YM2413(config, "ym2413", XTAL(3'579'545)).add_route(ALL_OUTPUTS, "mono", 1.0); MCFG_DEVICE_ADD("msm", MSM5205, XTAL(384'000) ) MCFG_MSM5205_VCLK_CB(WRITELINE(*this, dynax_state, adpcm_int)) /* IRQ handler */ @@ -4501,14 +4499,14 @@ MACHINE_CONFIG_START(dynax_state::sprtmtch) /* sound hardware */ SPEAKER(config, "mono").front_center(); - MCFG_DEVICE_ADD("ym2203", YM2203, 22000000 / 8) - MCFG_YM2203_IRQ_HANDLER(WRITELINE("mainirq", rst_pos_buffer_device, rst1_w)) - MCFG_AY8910_PORT_A_READ_CB(IOPORT("DSW0")) - MCFG_AY8910_PORT_B_READ_CB(IOPORT("DSW1")) - MCFG_SOUND_ROUTE(0, "mono", 0.20) - MCFG_SOUND_ROUTE(1, "mono", 0.20) - MCFG_SOUND_ROUTE(2, "mono", 0.20) - MCFG_SOUND_ROUTE(3, "mono", 1.0) + ym2203_device &ym2203(YM2203(config, "ym2203", 22000000 / 8)); + ym2203.irq_handler().set("mainirq", FUNC(rst_pos_buffer_device::rst1_w)); + ym2203.port_a_read_callback().set_ioport("DSW0"); + ym2203.port_b_read_callback().set_ioport("DSW1"); + ym2203.add_route(0, "mono", 0.20); + ym2203.add_route(1, "mono", 0.20); + ym2203.add_route(2, "mono", 0.20); + ym2203.add_route(3, "mono", 1.0); MACHINE_CONFIG_END @@ -4568,8 +4566,7 @@ MACHINE_CONFIG_START(dynax_state::mjfriday) /* sound hardware */ SPEAKER(config, "mono").front_center(); - MCFG_DEVICE_ADD("ym2413", YM2413, 24000000/6) - MCFG_SOUND_ROUTE(ALL_OUTPUTS, "mono", 1.0) + YM2413(config, "ym2413", 24000000/6).add_route(ALL_OUTPUTS, "mono", 1.0); MACHINE_CONFIG_END @@ -4745,12 +4742,12 @@ MACHINE_CONFIG_START(dynax_state::jantouki) AY8912(config, "aysnd", 22000000 / 8).add_route(ALL_OUTPUTS, "mono", 0.20); - MCFG_DEVICE_ADD("ym2203", YM2203, 22000000 / 8) - MCFG_YM2203_IRQ_HANDLER(WRITELINE("soundirq", rst_pos_buffer_device, rst1_w)) - MCFG_SOUND_ROUTE(0, "mono", 0.20) - MCFG_SOUND_ROUTE(1, "mono", 0.20) - MCFG_SOUND_ROUTE(2, "mono", 0.20) - MCFG_SOUND_ROUTE(3, "mono", 0.50) + ym2203_device &ym2203(YM2203(config, "ym2203", 22000000 / 8)); + ym2203.irq_handler().set("soundirq", FUNC(rst_pos_buffer_device::rst1_w)); + ym2203.add_route(0, "mono", 0.20); + ym2203.add_route(1, "mono", 0.20); + ym2203.add_route(2, "mono", 0.20); + ym2203.add_route(3, "mono", 0.50); MCFG_DEVICE_ADD("msm", MSM5205, 384000) MCFG_MSM5205_VCLK_CB(WRITELINE(*this, dynax_state, adpcm_int_cpu1)) /* IRQ handler */ @@ -4904,13 +4901,12 @@ MACHINE_CONFIG_START(dynax_state::tenkai) /* sound hardware */ SPEAKER(config, "mono").front_center(); - MCFG_DEVICE_ADD("aysnd", AY8910, 22000000 / 16) - MCFG_AY8910_PORT_A_READ_CB(READ8(*this, dynax_state, tenkai_dsw_r)) - MCFG_AY8910_PORT_B_WRITE_CB(WRITE8(*this, dynax_state, tenkai_dswsel_w)) - MCFG_SOUND_ROUTE(ALL_OUTPUTS, "mono", 0.20) + ay8910_device &ay8910(AY8910(config, "aysnd", 22000000 / 16)); + ay8910.port_a_read_callback().set(FUNC(dynax_state::tenkai_dsw_r)); + ay8910.port_b_write_callback().set(FUNC(dynax_state::tenkai_dswsel_w)); + ay8910.add_route(ALL_OUTPUTS, "mono", 0.20); - MCFG_DEVICE_ADD("ym2413", YM2413, 3579545) - MCFG_SOUND_ROUTE(ALL_OUTPUTS, "mono", 1.0) + YM2413(config, "ym2413", 3579545).add_route(ALL_OUTPUTS, "mono", 1.0); /* devices */ MSM6242(config, "rtc", 32.768_kHz_XTAL).out_int_handler().set_inputline(m_maincpu, INPUT_LINE_IRQ2); @@ -4979,13 +4975,12 @@ MACHINE_CONFIG_START(dynax_state::gekisha) /* sound hardware */ SPEAKER(config, "mono").front_center(); - MCFG_DEVICE_ADD("aysnd", AY8910, XTAL(24'000'000) / 16) // ? - MCFG_AY8910_PORT_A_READ_CB(READ8(*this, dynax_state, tenkai_dsw_r)) - MCFG_AY8910_PORT_B_WRITE_CB(WRITE8(*this, dynax_state, tenkai_dswsel_w)) - MCFG_SOUND_ROUTE(ALL_OUTPUTS, "mono", 0.20) + ay8910_device &ay8910(AY8910(config, "aysnd", XTAL(24'000'000) / 16)); // ? + ay8910.port_a_read_callback().set(FUNC(dynax_state::tenkai_dsw_r)); + ay8910.port_b_write_callback().set(FUNC(dynax_state::tenkai_dswsel_w)); + ay8910.add_route(ALL_OUTPUTS, "mono", 0.20); - MCFG_DEVICE_ADD("ym2413", YM2413, XTAL(24'000'000) / 8) // ? - MCFG_SOUND_ROUTE(ALL_OUTPUTS, "mono", 1.0) + YM2413(config, "ym2413", XTAL(24'000'000) / 8).add_route(ALL_OUTPUTS, "mono", 1.0); // ? MACHINE_CONFIG_END |