diff options
Diffstat (limited to 'src/devices/bus/cbus/pc9801_86.cpp')
-rw-r--r-- | src/devices/bus/cbus/pc9801_86.cpp | 50 |
1 files changed, 24 insertions, 26 deletions
diff --git a/src/devices/bus/cbus/pc9801_86.cpp b/src/devices/bus/cbus/pc9801_86.cpp index 96e159cbc8e..00590f3471f 100644 --- a/src/devices/bus/cbus/pc9801_86.cpp +++ b/src/devices/bus/cbus/pc9801_86.cpp @@ -50,17 +50,16 @@ WRITE_LINE_MEMBER(pc9801_86_device::sound_irq) MACHINE_CONFIG_START(pc9801_86_device::pc9801_86_config) SPEAKER(config, "lspeaker").front_left(); SPEAKER(config, "rspeaker").front_right(); - MCFG_DEVICE_ADD("opna", YM2608, 7.987_MHz_XTAL) - MCFG_YM2608_IRQ_HANDLER(WRITELINE(*this, pc9801_86_device, sound_irq)) - MCFG_AY8910_OUTPUT_TYPE(0) - MCFG_AY8910_PORT_A_READ_CB(READ8(*this, pc9801_86_device, opn_porta_r)) - //MCFG_AY8910_PORT_B_READ_CB(READ8(*this, pc9801_state, opn_portb_r)) - //MCFG_AY8910_PORT_A_WRITE_CB(WRITE8(*this, pc9801_state, opn_porta_w)) - MCFG_AY8910_PORT_B_WRITE_CB(WRITE8(*this, pc9801_86_device, opn_portb_w)) - MCFG_SOUND_ROUTE(0, "lspeaker", 1.00) - MCFG_SOUND_ROUTE(0, "rspeaker", 1.00) - MCFG_SOUND_ROUTE(1, "lspeaker", 1.00) - MCFG_SOUND_ROUTE(2, "rspeaker", 1.00) + YM2608(config, m_opna, 7.987_MHz_XTAL); + m_opna->irq_handler().set(FUNC(pc9801_86_device::sound_irq)); + m_opna->port_a_read_callback().set(FUNC(pc9801_86_device::opn_porta_r)); + //m_opna->port_b_read_callback().set(FUNC(pc8801_state::opn_portb_r)); + //m_opna->port_a_write_callback().set(FUNC(pc8801_state::opn_porta_w)); + m_opna->port_b_write_callback().set(FUNC(pc9801_86_device::opn_portb_w)); + m_opna->add_route(0, "lspeaker", 1.00); + m_opna->add_route(0, "rspeaker", 1.00); + m_opna->add_route(1, "lspeaker", 1.00); + m_opna->add_route(2, "rspeaker", 1.00); MCFG_DEVICE_ADD("ldac", DAC_16BIT_R2R_TWOS_COMPLEMENT, 0) MCFG_SOUND_ROUTE(ALL_OUTPUTS, "lspeaker", 1.0) // burr brown pcm61p MCFG_DEVICE_ADD("rdac", DAC_16BIT_R2R_TWOS_COMPLEMENT, 0) MCFG_SOUND_ROUTE(ALL_OUTPUTS, "rspeaker", 1.0) // burr brown pcm61p @@ -386,23 +385,22 @@ pc9801_speakboard_device::pc9801_speakboard_device(const machine_config &mconfig { } -MACHINE_CONFIG_START(pc9801_speakboard_device::device_add_mconfig) +void pc9801_speakboard_device::device_add_mconfig(machine_config &config) +{ pc9801_86_config(config); - MCFG_DEVICE_MODIFY("opna") - MCFG_SOUND_ROUTES_RESET() - MCFG_SOUND_ROUTE(0, "lspeaker", 0.50) - MCFG_SOUND_ROUTE(0, "rspeaker", 0.50) - MCFG_SOUND_ROUTE(1, "lspeaker", 0.50) - MCFG_SOUND_ROUTE(2, "rspeaker", 0.50) - - MCFG_DEVICE_ADD("opna_slave", YM2608, 7.987_MHz_XTAL) - MCFG_AY8910_OUTPUT_TYPE(0) - MCFG_SOUND_ROUTE(0, "lspeaker", 0.50) - MCFG_SOUND_ROUTE(0, "rspeaker", 0.50) - MCFG_SOUND_ROUTE(1, "lspeaker", 0.50) - MCFG_SOUND_ROUTE(2, "rspeaker", 0.50) -MACHINE_CONFIG_END + m_opna->reset_routes(); + m_opna->add_route(0, "lspeaker", 0.50); + m_opna->add_route(0, "rspeaker", 0.50); + m_opna->add_route(1, "lspeaker", 0.50); + m_opna->add_route(2, "rspeaker", 0.50); + + YM2608(config, m_opna_slave, 7.987_MHz_XTAL); + m_opna_slave->add_route(0, "lspeaker", 0.50); + m_opna_slave->add_route(0, "rspeaker", 0.50); + m_opna_slave->add_route(1, "lspeaker", 0.50); + m_opna_slave->add_route(2, "rspeaker", 0.50); +} void pc9801_speakboard_device::device_start() { |