summaryrefslogtreecommitdiffstatshomepage
path: root/src/mame/drivers/megadriv.cpp
diff options
context:
space:
mode:
Diffstat (limited to 'src/mame/drivers/megadriv.cpp')
-rw-r--r--src/mame/drivers/megadriv.cpp33
1 files changed, 18 insertions, 15 deletions
diff --git a/src/mame/drivers/megadriv.cpp b/src/mame/drivers/megadriv.cpp
index bdb2be6e823..dfb691a7d59 100644
--- a/src/mame/drivers/megadriv.cpp
+++ b/src/mame/drivers/megadriv.cpp
@@ -609,18 +609,17 @@ void md_cons_state::genesis_32x(machine_config &config)
m_vdp->set_md_32x_scanline_helper(FUNC(md_cons_state::_32x_scanline_helper_callback), this);
m_vdp->set_md_32x_interrupt(FUNC(md_cons_state::_32x_interrupt_callback), this);
m_vdp->reset_routes();
- m_vdp->add_route(ALL_OUTPUTS, "lspeaker", (0.25)/2);
- m_vdp->add_route(ALL_OUTPUTS, "rspeaker", (0.25)/2);
+ m_vdp->add_route(ALL_OUTPUTS, "lspeaker", (0.50)/2);
+ m_vdp->add_route(ALL_OUTPUTS, "rspeaker", (0.50)/2);
SEGA_32X_NTSC(config, m_32x, (MASTER_CLOCK_NTSC * 3) / 7, m_maincpu, m_scan_timer);
+ m_32x->set_screen("megadriv");
subdevice<screen_device>("megadriv")->screen_vblank().set(FUNC(md_cons_state::screen_vblank_console));
// we need to remove and re-add the YM because the balance is different
// due to MAME / MESS having severe issues if the dac output is > 0.40? (sound is corrupted even if DAC is silent?!)
- config.device_remove("ymsnd");
-
- YM2612(config, m_ymsnd, MASTER_CLOCK_NTSC/7);
+ m_ymsnd->reset_routes();
m_ymsnd->add_route(0, "lspeaker", (0.50)/2);
m_ymsnd->add_route(1, "rspeaker", (0.50)/2);
@@ -643,18 +642,17 @@ void md_cons_state::mdj_32x(machine_config &config)
m_vdp->set_md_32x_scanline_helper(FUNC(md_cons_state::_32x_scanline_helper_callback), this);
m_vdp->set_md_32x_interrupt(FUNC(md_cons_state::_32x_interrupt_callback), this);
m_vdp->reset_routes();
- m_vdp->add_route(ALL_OUTPUTS, "lspeaker", (0.25)/2);
- m_vdp->add_route(ALL_OUTPUTS, "rspeaker", (0.25)/2);
+ m_vdp->add_route(ALL_OUTPUTS, "lspeaker", (0.50)/2);
+ m_vdp->add_route(ALL_OUTPUTS, "rspeaker", (0.50)/2);
SEGA_32X_NTSC(config, m_32x, (MASTER_CLOCK_NTSC * 3) / 7, m_maincpu, m_scan_timer);
+ m_32x->set_screen("megadriv");
subdevice<screen_device>("megadriv")->screen_vblank().set(FUNC(md_cons_state::screen_vblank_console));
// we need to remove and re-add the sound system because the balance is different
// due to MAME / MESS having severe issues if the dac output is > 0.40? (sound is corrupted even if DAC is silent?!)
- config.device_remove("ymsnd");
-
- YM2612(config, m_ymsnd, MASTER_CLOCK_NTSC/7);
+ m_ymsnd->reset_routes();
m_ymsnd->add_route(0, "lspeaker", (0.50)/2);
m_ymsnd->add_route(1, "rspeaker", (0.50)/2);
@@ -677,18 +675,17 @@ void md_cons_state::md_32x(machine_config &config)
m_vdp->set_md_32x_scanline_helper(FUNC(md_cons_state::_32x_scanline_helper_callback), this);
m_vdp->set_md_32x_interrupt(FUNC(md_cons_state::_32x_interrupt_callback), this);
m_vdp->reset_routes();
- m_vdp->add_route(ALL_OUTPUTS, "lspeaker", (0.25)/2);
- m_vdp->add_route(ALL_OUTPUTS, "rspeaker", (0.25)/2);
+ m_vdp->add_route(ALL_OUTPUTS, "lspeaker", (0.50)/2);
+ m_vdp->add_route(ALL_OUTPUTS, "rspeaker", (0.50)/2);
SEGA_32X_PAL(config, m_32x, (MASTER_CLOCK_PAL * 3) / 7, m_maincpu, m_scan_timer);
+ m_32x->set_screen("megadriv");
subdevice<screen_device>("megadriv")->screen_vblank().set(FUNC(md_cons_state::screen_vblank_console));
// we need to remove and re-add the sound system because the balance is different
// due to MAME / MESS having severe issues if the dac output is > 0.40? (sound is corrupted even if DAC is silent?!)
- config.device_remove("ymsnd");
-
- YM2612(config, m_ymsnd, MASTER_CLOCK_NTSC/7);
+ m_ymsnd->reset_routes();
m_ymsnd->add_route(0, "lspeaker", (0.50)/2);
m_ymsnd->add_route(1, "rspeaker", (0.50)/2);
@@ -744,6 +741,7 @@ void md_cons_state::genesis_scd(machine_config &config)
SEGA_SEGACD_US(config, m_segacd, 0);
m_segacd->set_palette("gen_vdp:palette");
m_segacd->set_hostcpu(m_maincpu);
+ m_segacd->set_screen("megadriv");
CDROM(config, "cdrom").set_interface("scd_cdrom");
@@ -762,6 +760,7 @@ void md_cons_state::md_scd(machine_config &config)
SEGA_SEGACD_EUROPE(config, m_segacd, 0);
m_segacd->set_palette("gen_vdp:palette");
m_segacd->set_hostcpu(m_maincpu);
+ m_segacd->set_screen("megadriv");
CDROM(config, "cdrom").set_interface("scd_cdrom");
@@ -780,6 +779,7 @@ void md_cons_state::mdj_scd(machine_config &config)
SEGA_SEGACD_JAPAN(config, m_segacd, 0);
m_segacd->set_palette("gen_vdp:palette");
m_segacd->set_hostcpu(m_maincpu);
+ m_segacd->set_screen("megadriv");
CDROM(config, "cdrom").set_interface("scd_cdrom");
@@ -795,6 +795,7 @@ void md_cons_state::genesis_32x_scd(machine_config &config)
SEGA_SEGACD_US(config, m_segacd, 0);
m_segacd->set_palette("gen_vdp:palette");
m_segacd->set_hostcpu(m_maincpu);
+ m_segacd->set_screen("megadriv");
CDROM(config, "cdrom").set_interface("scd_cdrom");
@@ -814,6 +815,7 @@ void md_cons_state::md_32x_scd(machine_config &config)
SEGA_SEGACD_EUROPE(config, m_segacd, 0);
m_segacd->set_palette("gen_vdp:palette");
m_segacd->set_hostcpu(m_maincpu);
+ m_segacd->set_screen("megadriv");
CDROM(config, "cdrom").set_interface("scd_cdrom");
@@ -833,6 +835,7 @@ void md_cons_state::mdj_32x_scd(machine_config &config)
SEGA_SEGACD_JAPAN(config, m_segacd, 0);
m_segacd->set_palette("gen_vdp:palette");
m_segacd->set_hostcpu(m_maincpu);
+ m_segacd->set_screen("megadriv");
CDROM(config, "cdrom").set_interface("scd_cdrom");