summaryrefslogtreecommitdiffstatshomepage
path: root/src/mame/drivers/superdq.cpp
diff options
context:
space:
mode:
Diffstat (limited to 'src/mame/drivers/superdq.cpp')
-rw-r--r--src/mame/drivers/superdq.cpp28
1 files changed, 15 insertions, 13 deletions
diff --git a/src/mame/drivers/superdq.cpp b/src/mame/drivers/superdq.cpp
index fe721023bde..46fa1572638 100644
--- a/src/mame/drivers/superdq.cpp
+++ b/src/mame/drivers/superdq.cpp
@@ -123,18 +123,18 @@ void superdq_state::superdq_palette(palette_device &palette) const
bit0 = BIT(color_prom[i], 7);
bit1 = BIT(color_prom[i], 6);
bit2 = BIT(color_prom[i], 5);
- int const r = combine_weights(rweights, bit2, bit1, bit0);
+ int const r = combine_3_weights(rweights, bit2, bit1, bit0);
// green component
bit0 = BIT(color_prom[i], 4);
bit1 = BIT(color_prom[i], 3);
bit2 = BIT(color_prom[i], 2);
- int const g = combine_weights(gweights, bit2, bit1, bit0);
+ int const g = combine_3_weights(gweights, bit2, bit1, bit0);
// blue component
bit0 = BIT(color_prom[i], 1);
bit1 = BIT(color_prom[i], 0);
- int const b = combine_weights(bweights, bit1, bit0);
+ int const b = combine_2_weights(bweights, bit1, bit0);
palette.set_pen_color(i, rgb_t(r, g, b));
}
@@ -228,7 +228,7 @@ void superdq_state::superdq_io(address_map &map)
map(0x01, 0x01).portr("IN1");
map(0x02, 0x02).portr("DSW1");
map(0x03, 0x03).portr("DSW2");
- map(0x04, 0x04).r(FUNC(superdq_state::superdq_ld_r)).w("snsnd", FUNC(sn76496_device::write));
+ map(0x04, 0x04).r(FUNC(superdq_state::superdq_ld_r)).w("snsnd", FUNC(sn76496_device::command_w));
map(0x08, 0x08).w(FUNC(superdq_state::superdq_io_w));
map(0x0c, 0x0d).noprw(); /* HD46505S */
}
@@ -339,17 +339,15 @@ void superdq_state::machine_start()
MACHINE_CONFIG_START(superdq_state::superdq)
/* basic machine hardware */
- Z80(config, m_maincpu, MASTER_CLOCK/8);
- m_maincpu->set_addrmap(AS_PROGRAM, &superdq_state::superdq_map);
- m_maincpu->set_addrmap(AS_IO, &superdq_state::superdq_io);
- m_maincpu->set_vblank_int("screen", FUNC(superdq_state::superdq_vblank));
+ MCFG_DEVICE_ADD("maincpu", Z80, MASTER_CLOCK/8)
+ MCFG_DEVICE_PROGRAM_MAP(superdq_map)
+ MCFG_DEVICE_IO_MAP(superdq_io)
+ MCFG_DEVICE_VBLANK_INT_DRIVER("screen", superdq_state, superdq_vblank)
- PIONEER_LDV1000(config, m_laserdisc, 0);
- m_laserdisc->set_overlay(256, 256, FUNC(superdq_state::screen_update_superdq));
- m_laserdisc->set_overlay_palette(m_palette);
- m_laserdisc->add_route(0, "lspeaker", 1.0);
- m_laserdisc->add_route(1, "rspeaker", 1.0);
+ MCFG_LASERDISC_LDV1000_ADD("laserdisc")
+ MCFG_LASERDISC_OVERLAY_DRIVER(256, 256, superdq_state, screen_update_superdq)
+ MCFG_LASERDISC_OVERLAY_PALETTE(m_palette);
/* video hardware */
MCFG_LASERDISC_SCREEN_ADD_NTSC("screen", "laserdisc")
@@ -362,6 +360,10 @@ MACHINE_CONFIG_START(superdq_state::superdq)
SPEAKER(config, "rspeaker").front_right();
SN76496(config, "snsnd", MASTER_CLOCK/8).add_route(ALL_OUTPUTS, "lspeaker", 0.8);
+
+ MCFG_DEVICE_MODIFY("laserdisc")
+ MCFG_SOUND_ROUTE(0, "lspeaker", 1.0)
+ MCFG_SOUND_ROUTE(1, "rspeaker", 1.0)
MACHINE_CONFIG_END