summaryrefslogtreecommitdiffstatshomepage
path: root/src/mame/drivers
diff options
context:
space:
mode:
author Aaron Giles <aaron@aarongiles.com>2012-08-09 00:27:11 +0000
committer Aaron Giles <aaron@aarongiles.com>2012-08-09 00:27:11 +0000
commitbe0e3a784f75a6bde2c86e72db45d818317d28ed (patch)
tree8c7dab24ab2b0b31f4801a2e9bce5af5b308cfe1 /src/mame/drivers
parent57c5cd82e9d9ee2d5ff56b282ca1f74963133ce9 (diff)
Convert dac.c to a modern sound device. Update all callers.
It is quite clear nobody understands how the dac device works. unsigned_write8 (formerly dac_data_w) accepts a value from 0..255 and scales it to 0..32768. signed_write8 (formated dac_signed_data_w) accepts a value from 0..255 and scales it to -32767..32768. So signed/unsigned applies to the output. The input values are always full-range unsigned data. Same goes for 16-bit variants.
Diffstat (limited to 'src/mame/drivers')
-rw-r--r--src/mame/drivers/20pacgal.c4
-rw-r--r--src/mame/drivers/40love.c6
-rw-r--r--src/mame/drivers/alpha68k.c18
-rw-r--r--src/mame/drivers/amaticmg.c8
-rw-r--r--src/mame/drivers/aristmk5.c34
-rw-r--r--src/mame/drivers/armedf.c36
-rw-r--r--src/mame/drivers/beezer.c2
-rw-r--r--src/mame/drivers/bking.c4
-rw-r--r--src/mame/drivers/blitz68k.c14
-rw-r--r--src/mame/drivers/bwing.c4
-rw-r--r--src/mame/drivers/byvid.c4
-rw-r--r--src/mame/drivers/calchase.c12
-rw-r--r--src/mame/drivers/capbowl.c4
-rw-r--r--src/mame/drivers/cchasm.c4
-rw-r--r--src/mame/drivers/cham24.c2
-rw-r--r--src/mame/drivers/champbas.c20
-rw-r--r--src/mame/drivers/cheekyms.c4
-rw-r--r--src/mame/drivers/chsuper.c4
-rw-r--r--src/mame/drivers/circusc.c6
-rw-r--r--src/mame/drivers/cntsteer.c4
-rw-r--r--src/mame/drivers/coolpool.c8
-rw-r--r--src/mame/drivers/cosmic.c22
-rw-r--r--src/mame/drivers/csplayh5.c12
-rw-r--r--src/mame/drivers/cubeqst.c34
-rw-r--r--src/mame/drivers/cvs.c18
-rw-r--r--src/mame/drivers/cyberbal.c4
-rw-r--r--src/mame/drivers/equites.c12
-rw-r--r--src/mame/drivers/ertictac.c18
-rw-r--r--src/mame/drivers/esripsys.c6
-rw-r--r--src/mame/drivers/exterm.c6
-rw-r--r--src/mame/drivers/famibox.c2
-rw-r--r--src/mame/drivers/fantland.c4
-rw-r--r--src/mame/drivers/finalizr.c4
-rw-r--r--src/mame/drivers/flstory.c10
-rw-r--r--src/mame/drivers/galaxian.c10
-rw-r--r--src/mame/drivers/galivan.c12
-rw-r--r--src/mame/drivers/gei.c6
-rw-r--r--src/mame/drivers/go2000.c4
-rw-r--r--src/mame/drivers/harddriv.c6
-rw-r--r--src/mame/drivers/homedata.c14
-rw-r--r--src/mame/drivers/hyhoo.c4
-rw-r--r--src/mame/drivers/hyperspt.c6
-rw-r--r--src/mame/drivers/jaguar.c8
-rw-r--r--src/mame/drivers/jankenmn.c4
-rw-r--r--src/mame/drivers/junofrst.c4
-rw-r--r--src/mame/drivers/kchamp.c4
-rw-r--r--src/mame/drivers/kingobox.c8
-rw-r--r--src/mame/drivers/ksayakyu.c4
-rw-r--r--src/mame/drivers/lasso.c4
-rw-r--r--src/mame/drivers/lazercmd.c20
-rw-r--r--src/mame/drivers/littlerb.c8
-rw-r--r--src/mame/drivers/looping.c6
-rw-r--r--src/mame/drivers/m72.c30
-rw-r--r--src/mame/drivers/m90.c4
-rw-r--r--src/mame/drivers/magicfly.c4
-rw-r--r--src/mame/drivers/mappy.c6
-rw-r--r--src/mame/drivers/matmania.c8
-rw-r--r--src/mame/drivers/meadows.c4
-rw-r--r--src/mame/drivers/megazone.c4
-rw-r--r--src/mame/drivers/meyc8080.c18
-rw-r--r--src/mame/drivers/meyc8088.c4
-rw-r--r--src/mame/drivers/mjsister.c8
-rw-r--r--src/mame/drivers/mogura.c16
-rw-r--r--src/mame/drivers/mpoker.c4
-rw-r--r--src/mame/drivers/multigam.c2
-rw-r--r--src/mame/drivers/murogem.c4
-rw-r--r--src/mame/drivers/murogmbl.c4
-rw-r--r--src/mame/drivers/namcos1.c4
-rw-r--r--src/mame/drivers/nbmj8688.c26
-rw-r--r--src/mame/drivers/nbmj8891.c24
-rw-r--r--src/mame/drivers/nbmj8900.c4
-rw-r--r--src/mame/drivers/nbmj8991.c14
-rw-r--r--src/mame/drivers/nbmj9195.c12
-rw-r--r--src/mame/drivers/niyanpai.c8
-rw-r--r--src/mame/drivers/nyny.c4
-rw-r--r--src/mame/drivers/othello.c4
-rw-r--r--src/mame/drivers/pandoras.c4
-rw-r--r--src/mame/drivers/pastelg.c12
-rw-r--r--src/mame/drivers/playch10.c4
-rw-r--r--src/mame/drivers/pong.c2
-rw-r--r--src/mame/drivers/ppmast93.c4
-rw-r--r--src/mame/drivers/quasar.c4
-rw-r--r--src/mame/drivers/quizshow.c4
-rw-r--r--src/mame/drivers/rltennis.c12
-rw-r--r--src/mame/drivers/route16.c4
-rw-r--r--src/mame/drivers/royalmah.c4
-rw-r--r--src/mame/drivers/sbasketb.c4
-rw-r--r--src/mame/drivers/sbrkout.c4
-rw-r--r--src/mame/drivers/segas16a.c4
-rw-r--r--src/mame/drivers/segas24.c6
-rw-r--r--src/mame/drivers/seicross.c6
-rw-r--r--src/mame/drivers/senjyo.c2
-rw-r--r--src/mame/drivers/shangkid.c4
-rw-r--r--src/mame/drivers/shisen.c2
-rw-r--r--src/mame/drivers/spacefb.c2
-rw-r--r--src/mame/drivers/spaceg.c2
-rw-r--r--src/mame/drivers/ssozumo.c4
-rw-r--r--src/mame/drivers/suna16.c40
-rw-r--r--src/mame/drivers/suna8.c10
-rw-r--r--src/mame/drivers/tagteam.c4
-rw-r--r--src/mame/drivers/taitosj.c10
-rw-r--r--src/mame/drivers/tceptor.c6
-rw-r--r--src/mame/drivers/terracre.c20
-rw-r--r--src/mame/drivers/tnzs.c6
-rw-r--r--src/mame/drivers/trackfld.c8
-rw-r--r--src/mame/drivers/truco.c4
-rw-r--r--src/mame/drivers/trucocl.c6
-rw-r--r--src/mame/drivers/tsamurai.c20
-rw-r--r--src/mame/drivers/unkhorse.c4
-rw-r--r--src/mame/drivers/vcombat.c8
-rw-r--r--src/mame/drivers/vectrex.c2
-rw-r--r--src/mame/drivers/videopkr.c8
-rw-r--r--src/mame/drivers/vigilant.c6
-rw-r--r--src/mame/drivers/vsnes.c10
-rw-r--r--src/mame/drivers/wheelfir.c8
-rw-r--r--src/mame/drivers/williams.c8
-rw-r--r--src/mame/drivers/xtheball.c4
-rw-r--r--src/mame/drivers/zaccaria.c6
118 files changed, 499 insertions, 499 deletions
diff --git a/src/mame/drivers/20pacgal.c b/src/mame/drivers/20pacgal.c
index a0af81accb4..08aac8a7e0e 100644
--- a/src/mame/drivers/20pacgal.c
+++ b/src/mame/drivers/20pacgal.c
@@ -232,7 +232,7 @@ static ADDRESS_MAP_START( 20pacgal_io_map, AS_IO, 8, _20pacgal_state )
AM_RANGE(0x85, 0x86) AM_WRITEONLY AM_SHARE("stars_seed") /* stars: rng seed (lo/hi) */
AM_RANGE(0x87, 0x87) AM_READ_PORT("EEPROMIN") AM_WRITE_PORT("EEPROMOUT")
AM_RANGE(0x88, 0x88) AM_WRITE(ram_bank_select_w)
- AM_RANGE(0x89, 0x89) AM_DEVWRITE_LEGACY("dac", dac_signed_w)
+ AM_RANGE(0x89, 0x89) AM_DEVWRITE("dac", dac_device, write_signed8)
AM_RANGE(0x8a, 0x8a) AM_WRITEONLY AM_SHARE("stars_ctrl") /* stars: bits 3-4 = active set; bit 5 = enable */
AM_RANGE(0x8b, 0x8b) AM_WRITEONLY AM_SHARE("flip")
AM_RANGE(0x8f, 0x8f) AM_WRITE(_20pacgal_coin_counter_w)
@@ -360,7 +360,7 @@ static MACHINE_CONFIG_START( 20pacgal, _20pacgal_state )
MCFG_SOUND_CONFIG(namco_config)
MCFG_SOUND_ROUTE(ALL_OUTPUTS, "mono", 1.0)
- MCFG_SOUND_ADD("dac", DAC, 0)
+ MCFG_DAC_ADD("dac")
MCFG_SOUND_ROUTE(ALL_OUTPUTS, "mono", 1.0)
MACHINE_CONFIG_END
diff --git a/src/mame/drivers/40love.c b/src/mame/drivers/40love.c
index 8cbfc36680a..37e72343a27 100644
--- a/src/mame/drivers/40love.c
+++ b/src/mame/drivers/40love.c
@@ -756,7 +756,7 @@ static ADDRESS_MAP_START( sound_map, AS_PROGRAM, 8, fortyl_state )
AM_RANGE(0xd800, 0xd800) AM_READ(soundlatch_byte_r) AM_WRITE(to_main_w)
AM_RANGE(0xda00, 0xda00) AM_READNOP AM_WRITE(nmi_enable_w) /* unknown read */
AM_RANGE(0xdc00, 0xdc00) AM_WRITE(nmi_disable_w)
- AM_RANGE(0xde00, 0xde00) AM_READNOP AM_DEVWRITE_LEGACY("dac", dac_signed_w) /* signed 8-bit DAC - unknown read */
+ AM_RANGE(0xde00, 0xde00) AM_READNOP AM_DEVWRITE("dac", dac_device, write_signed8) /* signed 8-bit DAC - unknown read */
AM_RANGE(0xe000, 0xefff) AM_ROM /* space for diagnostics ROM */
ADDRESS_MAP_END
@@ -1115,7 +1115,7 @@ static MACHINE_CONFIG_START( 40love, fortyl_state )
// pin 2 SOLO 16' not mapped
// pin 22 Noise Output not mapped
- MCFG_SOUND_ADD("dac", DAC, 0)
+ MCFG_DAC_ADD("dac")
MCFG_SOUND_ROUTE(ALL_OUTPUTS, "mono", 0.20)
MACHINE_CONFIG_END
@@ -1172,7 +1172,7 @@ static MACHINE_CONFIG_START( undoukai, fortyl_state )
// pin 2 SOLO 16' not mapped
// pin 22 Noise Output not mapped
- MCFG_SOUND_ADD("dac", DAC, 0)
+ MCFG_DAC_ADD("dac")
MCFG_SOUND_ROUTE(ALL_OUTPUTS, "mono", 0.20)
MACHINE_CONFIG_END
diff --git a/src/mame/drivers/alpha68k.c b/src/mame/drivers/alpha68k.c
index 9ed52cff674..cb5ef4cd95a 100644
--- a/src/mame/drivers/alpha68k.c
+++ b/src/mame/drivers/alpha68k.c
@@ -746,7 +746,7 @@ static ADDRESS_MAP_START( kyros_sound_map, AS_PROGRAM, 8, alpha68k_state )
AM_RANGE(0xc000, 0xc7ff) AM_RAM
AM_RANGE(0xe000, 0xe000) AM_READ(soundlatch_byte_r)
AM_RANGE(0xe002, 0xe002) AM_WRITE(soundlatch_clear_byte_w)
- AM_RANGE(0xe004, 0xe004) AM_DEVWRITE_LEGACY("dac", dac_signed_w)
+ AM_RANGE(0xe004, 0xe004) AM_DEVWRITE("dac", dac_device, write_signed8)
AM_RANGE(0xe006, 0xe00e) AM_WRITENOP // soundboard I/O's, ignored
/* reference only
AM_RANGE(0xe006, 0xe006) AM_WRITENOP // NMI: diminishing saw-tooth
@@ -762,7 +762,7 @@ static ADDRESS_MAP_START( sstingry_sound_map, AS_PROGRAM, 8, alpha68k_state )
AM_RANGE(0x8000, 0x87ff) AM_RAM
AM_RANGE(0xc100, 0xc100) AM_READ(soundlatch_byte_r)
AM_RANGE(0xc102, 0xc102) AM_WRITE(soundlatch_clear_byte_w)
- AM_RANGE(0xc104, 0xc104) AM_DEVWRITE_LEGACY("dac", dac_signed_w)
+ AM_RANGE(0xc104, 0xc104) AM_DEVWRITE("dac", dac_device, write_signed8)
AM_RANGE(0xc106, 0xc10e) AM_WRITENOP // soundboard I/O's, ignored
ADDRESS_MAP_END
@@ -790,7 +790,7 @@ ADDRESS_MAP_END
static ADDRESS_MAP_START( sound_portmap, AS_IO, 8, alpha68k_state )
ADDRESS_MAP_GLOBAL_MASK(0xff)
AM_RANGE(0x00, 0x00) AM_READWRITE(soundlatch_byte_r, soundlatch_clear_byte_w)
- AM_RANGE(0x08, 0x08) AM_DEVWRITE_LEGACY("dac", dac_signed_w)
+ AM_RANGE(0x08, 0x08) AM_DEVWRITE("dac", dac_device, write_signed8)
AM_RANGE(0x0a, 0x0b) AM_DEVWRITE_LEGACY("ym2", ym2413_w)
AM_RANGE(0x0c, 0x0d) AM_DEVWRITE_LEGACY("ym1", ym2203_w)
AM_RANGE(0x0e, 0x0e) AM_WRITE(sound_bank_w)
@@ -2002,7 +2002,7 @@ static MACHINE_CONFIG_START( sstingry, alpha68k_state )
MCFG_SOUND_ADD("ym3", YM2203, 3000000)
MCFG_SOUND_ROUTE(ALL_OUTPUTS, "mono", 0.50)
- MCFG_SOUND_ADD("dac", DAC, 0)
+ MCFG_DAC_ADD("dac")
MCFG_SOUND_ROUTE(ALL_OUTPUTS, "mono", 0.75)
MACHINE_CONFIG_END
@@ -2048,7 +2048,7 @@ static MACHINE_CONFIG_START( kyros, alpha68k_state )
MCFG_SOUND_ADD("ym3", YM2203, XTAL_24MHz/12) /* Verified on bootleg PCB */
MCFG_SOUND_ROUTE(ALL_OUTPUTS, "mono", 0.90)
- MCFG_SOUND_ADD("dac", DAC, 0)
+ MCFG_DAC_ADD("dac")
MCFG_SOUND_ROUTE(ALL_OUTPUTS, "mono", 0.75)
MACHINE_CONFIG_END
@@ -2169,7 +2169,7 @@ static MACHINE_CONFIG_START( alpha68k_II, alpha68k_state )
MCFG_SOUND_ADD("ym2", YM2413, 3579545)
MCFG_SOUND_ROUTE(ALL_OUTPUTS, "mono", 1.0)
- MCFG_SOUND_ADD("dac", DAC, 0)
+ MCFG_DAC_ADD("dac")
MCFG_SOUND_ROUTE(ALL_OUTPUTS, "mono", 0.75)
MACHINE_CONFIG_END
@@ -2218,7 +2218,7 @@ static MACHINE_CONFIG_START( alpha68k_II_gm, alpha68k_state )
MCFG_SOUND_ADD("ym2", YM2413, 3579545)
MCFG_SOUND_ROUTE(ALL_OUTPUTS, "mono", 1.0)
- MCFG_SOUND_ADD("dac", DAC, 0)
+ MCFG_DAC_ADD("dac")
MCFG_SOUND_ROUTE(ALL_OUTPUTS, "mono", 0.75)
MACHINE_CONFIG_END
//ZT
@@ -2261,7 +2261,7 @@ static MACHINE_CONFIG_START( alpha68k_V, alpha68k_state )
MCFG_SOUND_ADD("ym2", YM2413, 3579545)
MCFG_SOUND_ROUTE(ALL_OUTPUTS, "mono", 1.0)
- MCFG_SOUND_ADD("dac", DAC, 0)
+ MCFG_DAC_ADD("dac")
MCFG_SOUND_ROUTE(ALL_OUTPUTS, "mono", 0.75)
MACHINE_CONFIG_END
@@ -2303,7 +2303,7 @@ static MACHINE_CONFIG_START( alpha68k_V_sb, alpha68k_state )
MCFG_SOUND_ADD("ym2", YM2413, 3579545)
MCFG_SOUND_ROUTE(ALL_OUTPUTS, "mono", 1.0)
- MCFG_SOUND_ADD("dac", DAC, 0)
+ MCFG_DAC_ADD("dac")
MCFG_SOUND_ROUTE(ALL_OUTPUTS, "mono", 0.75)
MACHINE_CONFIG_END
diff --git a/src/mame/drivers/amaticmg.c b/src/mame/drivers/amaticmg.c
index f7e6be35e29..35e24aee5da 100644
--- a/src/mame/drivers/amaticmg.c
+++ b/src/mame/drivers/amaticmg.c
@@ -604,7 +604,7 @@ WRITE8_MEMBER(amaticmg_state::out_c_w)
WRITE8_MEMBER( amaticmg_state::unk80_w )
{
-// dac_data_w(machine().device("dac"), data & 0x01); /* Sound DAC */
+// machine().device<dac_device>("dac")->write_unsigned8(data & 0x01); /* Sound DAC */
}
@@ -633,8 +633,8 @@ static ADDRESS_MAP_START( amaticmg_portmap, AS_IO, 8, amaticmg_state )
AM_RANGE(0x80, 0x80) AM_WRITE(unk80_w)
AM_RANGE(0xc0, 0xc0) AM_WRITE(rombank_w)
// AM_RANGE(0x00, 0x00) AM_DEVREADWRITE("ppi8255_2", ppi8255_device, read, write)
-// AM_RANGE(0x00, 0x00) AM_DEVWRITE_LEGACY("dac1", dac_signed_w)
-// AM_RANGE(0x00, 0x00) AM_DEVWRITE_LEGACY("dac2", dac_signed_w)
+// AM_RANGE(0x00, 0x00) AM_DEVWRITE("dac1", dac_device, write_signed8)
+// AM_RANGE(0x00, 0x00) AM_DEVWRITE("dac2", dac_device, write_signed8)
ADDRESS_MAP_END
@@ -883,7 +883,7 @@ static MACHINE_CONFIG_START( amaticmg, amaticmg_state )
MCFG_SOUND_CONFIG(ym3812_config)
MCFG_SOUND_ROUTE(ALL_OUTPUTS, "mono", 0.50)
-// MCFG_SOUND_ADD("dac", DAC, 0) /* Y3014B */
+// MCFG_DAC_ADD("dac") /* Y3014B */
// MCFG_SOUND_ROUTE(ALL_OUTPUTS, "mono", 0.50)
MACHINE_CONFIG_END
diff --git a/src/mame/drivers/aristmk5.c b/src/mame/drivers/aristmk5.c
index d3694a8c306..ceaee402a20 100644
--- a/src/mame/drivers/aristmk5.c
+++ b/src/mame/drivers/aristmk5.c
@@ -375,7 +375,7 @@ static MACHINE_START( aristmk5 )
archimedes_init(machine);
// reset the DAC to centerline
- //dac_signed_data_w(machine.device("dac"), 0x80);
+ //machine.device<dac_device>("dac")->write_signed8(0x80);
state->m_mk5_2KHz_timer = machine.scheduler().timer_alloc(FUNC(mk5_2KHz_callback));
state->m_mk5_VSYNC_timer = machine.scheduler().timer_alloc(FUNC(mk5_VSYNC_callback));
@@ -440,28 +440,28 @@ static MACHINE_CONFIG_START( aristmk5, aristmk5_state )
MCFG_SCREEN_UPDATE_STATIC(archimds_vidc)
MCFG_SPEAKER_STANDARD_MONO("mono")
- MCFG_SOUND_ADD("dac0", DAC, 0)
+ MCFG_DAC_ADD("dac0")
MCFG_SOUND_ROUTE(0, "mono", 0.10)
- MCFG_SOUND_ADD("dac1", DAC, 0)
+ MCFG_DAC_ADD("dac1")
MCFG_SOUND_ROUTE(0, "mono", 0.10)
- MCFG_SOUND_ADD("dac2", DAC, 0)
+ MCFG_DAC_ADD("dac2")
MCFG_SOUND_ROUTE(0, "mono", 0.10)
- MCFG_SOUND_ADD("dac3", DAC, 0)
+ MCFG_DAC_ADD("dac3")
MCFG_SOUND_ROUTE(0, "mono", 0.10)
- MCFG_SOUND_ADD("dac4", DAC, 0)
+ MCFG_DAC_ADD("dac4")
MCFG_SOUND_ROUTE(0, "mono", 0.10)
- MCFG_SOUND_ADD("dac5", DAC, 0)
+ MCFG_DAC_ADD("dac5")
MCFG_SOUND_ROUTE(0, "mono", 0.10)
- MCFG_SOUND_ADD("dac6", DAC, 0)
+ MCFG_DAC_ADD("dac6")
MCFG_SOUND_ROUTE(0, "mono", 0.10)
- MCFG_SOUND_ADD("dac7", DAC, 0)
+ MCFG_DAC_ADD("dac7")
MCFG_SOUND_ROUTE(0, "mono", 0.10)
MACHINE_CONFIG_END
@@ -486,28 +486,28 @@ static MACHINE_CONFIG_START( aristmk5_usa, aristmk5_state )
MCFG_SCREEN_UPDATE_STATIC(archimds_vidc)
MCFG_SPEAKER_STANDARD_MONO("mono")
- MCFG_SOUND_ADD("dac0", DAC, 0)
+ MCFG_DAC_ADD("dac0")
MCFG_SOUND_ROUTE(0, "mono", 0.10)
- MCFG_SOUND_ADD("dac1", DAC, 0)
+ MCFG_DAC_ADD("dac1")
MCFG_SOUND_ROUTE(0, "mono", 0.10)
- MCFG_SOUND_ADD("dac2", DAC, 0)
+ MCFG_DAC_ADD("dac2")
MCFG_SOUND_ROUTE(0, "mono", 0.10)
- MCFG_SOUND_ADD("dac3", DAC, 0)
+ MCFG_DAC_ADD("dac3")
MCFG_SOUND_ROUTE(0, "mono", 0.10)
- MCFG_SOUND_ADD("dac4", DAC, 0)
+ MCFG_DAC_ADD("dac4")
MCFG_SOUND_ROUTE(0, "mono", 0.10)
- MCFG_SOUND_ADD("dac5", DAC, 0)
+ MCFG_DAC_ADD("dac5")
MCFG_SOUND_ROUTE(0, "mono", 0.10)
- MCFG_SOUND_ADD("dac6", DAC, 0)
+ MCFG_DAC_ADD("dac6")
MCFG_SOUND_ROUTE(0, "mono", 0.10)
- MCFG_SOUND_ADD("dac7", DAC, 0)
+ MCFG_DAC_ADD("dac7")
MCFG_SOUND_ROUTE(0, "mono", 0.10)
MACHINE_CONFIG_END
diff --git a/src/mame/drivers/armedf.c b/src/mame/drivers/armedf.c
index cb3876c6a64..ddadaee8d53 100644
--- a/src/mame/drivers/armedf.c
+++ b/src/mame/drivers/armedf.c
@@ -755,8 +755,8 @@ ADDRESS_MAP_END
static ADDRESS_MAP_START( sound_portmap, AS_IO, 8, armedf_state )
ADDRESS_MAP_GLOBAL_MASK(0xff)
AM_RANGE(0x0, 0x1) AM_DEVWRITE_LEGACY("ymsnd", ym3812_w)
- AM_RANGE(0x2, 0x2) AM_DEVWRITE_LEGACY("dac1", dac_signed_w)
- AM_RANGE(0x3, 0x3) AM_DEVWRITE_LEGACY("dac2", dac_signed_w)
+ AM_RANGE(0x2, 0x2) AM_DEVWRITE("dac1", dac_device, write_signed8)
+ AM_RANGE(0x3, 0x3) AM_DEVWRITE("dac2", dac_device, write_signed8)
AM_RANGE(0x4, 0x4) AM_READ(soundlatch_clear_r)
AM_RANGE(0x6, 0x6) AM_READ(soundlatch_byte_r)
ADDRESS_MAP_END
@@ -1214,10 +1214,10 @@ static MACHINE_CONFIG_START( terraf, armedf_state )
MCFG_SOUND_ADD("ymsnd", YM3812, XTAL_8MHz/2)
MCFG_SOUND_ROUTE(ALL_OUTPUTS, "mono", 0.50)
- MCFG_SOUND_ADD("dac1", DAC, 0)
+ MCFG_DAC_ADD("dac1")
MCFG_SOUND_ROUTE(ALL_OUTPUTS, "mono", 0.80)
- MCFG_SOUND_ADD("dac2", DAC, 0)
+ MCFG_DAC_ADD("dac2")
MCFG_SOUND_ROUTE(ALL_OUTPUTS, "mono", 0.80)
MACHINE_CONFIG_END
@@ -1262,10 +1262,10 @@ static MACHINE_CONFIG_START( terrafb, armedf_state )
MCFG_SOUND_ADD("ymsnd", YM3812, XTAL_8MHz/2)
MCFG_SOUND_ROUTE(ALL_OUTPUTS, "mono", 0.50)
- MCFG_SOUND_ADD("dac1", DAC, 0)
+ MCFG_DAC_ADD("dac1")
MCFG_SOUND_ROUTE(ALL_OUTPUTS, "mono", 0.80)
- MCFG_SOUND_ADD("dac2", DAC, 0)
+ MCFG_DAC_ADD("dac2")
MCFG_SOUND_ROUTE(ALL_OUTPUTS, "mono", 0.80)
MACHINE_CONFIG_END
@@ -1306,10 +1306,10 @@ static MACHINE_CONFIG_START( kozure, armedf_state )
MCFG_SOUND_ADD("ymsnd", YM3812, XTAL_8MHz/2)
MCFG_SOUND_ROUTE(ALL_OUTPUTS, "mono", 0.50)
- MCFG_SOUND_ADD("dac1", DAC, 0)
+ MCFG_DAC_ADD("dac1")
MCFG_SOUND_ROUTE(ALL_OUTPUTS, "mono", 0.40)
- MCFG_SOUND_ADD("dac2", DAC, 0)
+ MCFG_DAC_ADD("dac2")
MCFG_SOUND_ROUTE(ALL_OUTPUTS, "mono", 0.40)
MACHINE_CONFIG_END
@@ -1350,10 +1350,10 @@ static MACHINE_CONFIG_START( armedf, armedf_state )
MCFG_SOUND_ADD("ymsnd", YM3812, XTAL_8MHz/2)
MCFG_SOUND_ROUTE(ALL_OUTPUTS, "mono", 0.50)
- MCFG_SOUND_ADD("dac1", DAC, 0)
+ MCFG_DAC_ADD("dac1")
MCFG_SOUND_ROUTE(ALL_OUTPUTS, "mono", 0.50)
- MCFG_SOUND_ADD("dac2", DAC, 0)
+ MCFG_DAC_ADD("dac2")
MCFG_SOUND_ROUTE(ALL_OUTPUTS, "mono", 0.50)
MACHINE_CONFIG_END
@@ -1394,10 +1394,10 @@ static MACHINE_CONFIG_START( cclimbr2, armedf_state )
MCFG_SOUND_ADD("ymsnd", YM3812, XTAL_8MHz/2)
MCFG_SOUND_ROUTE(ALL_OUTPUTS, "mono", 0.50)
- MCFG_SOUND_ADD("dac1", DAC, 0)
+ MCFG_DAC_ADD("dac1")
MCFG_SOUND_ROUTE(ALL_OUTPUTS, "mono", 0.40)
- MCFG_SOUND_ADD("dac2", DAC, 0)
+ MCFG_DAC_ADD("dac2")
MCFG_SOUND_ROUTE(ALL_OUTPUTS, "mono", 0.40)
MACHINE_CONFIG_END
@@ -1438,10 +1438,10 @@ static MACHINE_CONFIG_START( legion, armedf_state )
MCFG_SOUND_ADD("ymsnd", YM3812, XTAL_8MHz/2)
MCFG_SOUND_ROUTE(ALL_OUTPUTS, "mono", 0.50)
- MCFG_SOUND_ADD("dac1", DAC, 0)
+ MCFG_DAC_ADD("dac1")
MCFG_SOUND_ROUTE(ALL_OUTPUTS, "mono", 0.40)
- MCFG_SOUND_ADD("dac2", DAC, 0)
+ MCFG_DAC_ADD("dac2")
MCFG_SOUND_ROUTE(ALL_OUTPUTS, "mono", 0.40)
MACHINE_CONFIG_END
@@ -1482,10 +1482,10 @@ static MACHINE_CONFIG_START( legiono, armedf_state )
MCFG_SOUND_ADD("ymsnd", YM3812, XTAL_8MHz/2)
MCFG_SOUND_ROUTE(ALL_OUTPUTS, "mono", 0.50)
- MCFG_SOUND_ADD("dac1", DAC, 0)
+ MCFG_DAC_ADD("dac1")
MCFG_SOUND_ROUTE(ALL_OUTPUTS, "mono", 0.40)
- MCFG_SOUND_ADD("dac2", DAC, 0)
+ MCFG_DAC_ADD("dac2")
MCFG_SOUND_ROUTE(ALL_OUTPUTS, "mono", 0.40)
MACHINE_CONFIG_END
@@ -1541,10 +1541,10 @@ static MACHINE_CONFIG_START( bigfghtr, bigfghtr_state )
MCFG_SOUND_ADD("ymsnd", YM3812, XTAL_8MHz/2)
MCFG_SOUND_ROUTE(ALL_OUTPUTS, "mono", 0.50)
- MCFG_SOUND_ADD("dac1", DAC, 0)
+ MCFG_DAC_ADD("dac1")
MCFG_SOUND_ROUTE(ALL_OUTPUTS, "mono", 1.0)
- MCFG_SOUND_ADD("dac2", DAC, 0)
+ MCFG_DAC_ADD("dac2")
MCFG_SOUND_ROUTE(ALL_OUTPUTS, "mono", 1.0)
MACHINE_CONFIG_END
diff --git a/src/mame/drivers/beezer.c b/src/mame/drivers/beezer.c
index 69ca69ff45f..cc03ca32346 100644
--- a/src/mame/drivers/beezer.c
+++ b/src/mame/drivers/beezer.c
@@ -109,7 +109,7 @@ static MACHINE_CONFIG_START( beezer, beezer_state )
/* sound hardware */
MCFG_SPEAKER_STANDARD_MONO("mono")
- //MCFG_SOUND_ADD("dac", DAC, 0)
+ //MCFG_DAC_ADD("dac")
//MCFG_SOUND_ROUTE(ALL_OUTPUTS, "mono", 1.0)
MCFG_SOUND_ADD("custom", BEEZER, 0)
MCFG_SOUND_ROUTE(ALL_OUTPUTS, "mono", 1.00)
diff --git a/src/mame/drivers/bking.c b/src/mame/drivers/bking.c
index c22d4a45d70..4f6592970e9 100644
--- a/src/mame/drivers/bking.c
+++ b/src/mame/drivers/bking.c
@@ -384,7 +384,7 @@ static const ay8910_interface ay8910_config =
AY8910_DEFAULT_LOADS,
DEVCB_NULL,
DEVCB_NULL,
- DEVCB_DEVICE_HANDLER("dac", dac_signed_w),
+ DEVCB_DEVICE_MEMBER("dac", dac_device, write_signed8),
DEVCB_DRIVER_MEMBER(bking_state,port_b_w)
};
@@ -510,7 +510,7 @@ static MACHINE_CONFIG_START( bking, bking_state )
MCFG_SOUND_CONFIG(ay8910_config)
MCFG_SOUND_ROUTE(ALL_OUTPUTS, "mono", 0.25)
- MCFG_SOUND_ADD("dac", DAC, 0)
+ MCFG_DAC_ADD("dac")
MCFG_SOUND_ROUTE(ALL_OUTPUTS, "mono", 0.25)
MACHINE_CONFIG_END
diff --git a/src/mame/drivers/blitz68k.c b/src/mame/drivers/blitz68k.c
index b82ef28867f..02fccfce65b 100644
--- a/src/mame/drivers/blitz68k.c
+++ b/src/mame/drivers/blitz68k.c
@@ -1722,7 +1722,7 @@ static MACHINE_CONFIG_START( ilpag, blitz68k_state )
MCFG_RAMDAC_ADD("ramdac", ramdac_intf, ramdac_map)
MCFG_SPEAKER_STANDARD_MONO("mono")
- MCFG_SOUND_ADD("dac", DAC, 0)
+ MCFG_DAC_ADD("dac")
MCFG_SOUND_ROUTE(ALL_OUTPUTS, "mono", 1.00)
MACHINE_CONFIG_END
@@ -1796,7 +1796,7 @@ static MACHINE_CONFIG_START( cjffruit, blitz68k_state )
MCFG_RAMDAC_ADD("ramdac", ramdac_intf, ramdac_map)
MCFG_SPEAKER_STANDARD_MONO("mono")
- MCFG_SOUND_ADD("dac", DAC, 0)
+ MCFG_DAC_ADD("dac")
MCFG_SOUND_ROUTE(ALL_OUTPUTS, "mono", 1.00)
MACHINE_CONFIG_END
@@ -1828,7 +1828,7 @@ static MACHINE_CONFIG_START( bankrob, blitz68k_state )
MCFG_RAMDAC_ADD("ramdac", ramdac_intf, ramdac_map)
MCFG_SPEAKER_STANDARD_MONO("mono")
- MCFG_SOUND_ADD("dac", DAC, 0)
+ MCFG_DAC_ADD("dac")
MCFG_SOUND_ROUTE(ALL_OUTPUTS, "mono", 1.00)
MACHINE_CONFIG_END
@@ -1858,7 +1858,7 @@ static MACHINE_CONFIG_START( bankroba, blitz68k_state )
MCFG_RAMDAC_ADD("ramdac", ramdac_intf, ramdac_map)
MCFG_SPEAKER_STANDARD_MONO("mono")
- MCFG_SOUND_ADD("dac", DAC, 0)
+ MCFG_DAC_ADD("dac")
MCFG_SOUND_ROUTE(ALL_OUTPUTS, "mono", 1.00)
MACHINE_CONFIG_END
@@ -1887,7 +1887,7 @@ static MACHINE_CONFIG_START( deucesw2, blitz68k_state )
MCFG_RAMDAC_ADD("ramdac", ramdac_intf, ramdac_map)
MCFG_SPEAKER_STANDARD_MONO("mono")
- MCFG_SOUND_ADD("dac", DAC, 0)
+ MCFG_DAC_ADD("dac")
MCFG_SOUND_ROUTE(ALL_OUTPUTS, "mono", 1.00)
MACHINE_CONFIG_END
@@ -1918,7 +1918,7 @@ static MACHINE_CONFIG_START( dualgame, blitz68k_state )
MCFG_RAMDAC_ADD("ramdac", ramdac_intf, ramdac_map)
MCFG_SPEAKER_STANDARD_MONO("mono")
- MCFG_SOUND_ADD("dac", DAC, 0)
+ MCFG_DAC_ADD("dac")
MCFG_SOUND_ROUTE(ALL_OUTPUTS, "mono", 1.00)
MACHINE_CONFIG_END
@@ -1947,7 +1947,7 @@ static MACHINE_CONFIG_START( hermit, blitz68k_state )
MCFG_RAMDAC_ADD("ramdac", ramdac_intf, ramdac_map)
MCFG_SPEAKER_STANDARD_MONO("mono")
- MCFG_SOUND_ADD("dac", DAC, 0)
+ MCFG_DAC_ADD("dac")
MCFG_SOUND_ROUTE(ALL_OUTPUTS, "mono", 1.00)
MACHINE_CONFIG_END
diff --git a/src/mame/drivers/bwing.c b/src/mame/drivers/bwing.c
index 5e126d7c267..c0293f985de 100644
--- a/src/mame/drivers/bwing.c
+++ b/src/mame/drivers/bwing.c
@@ -172,7 +172,7 @@ ADDRESS_MAP_END
// Sound CPU
static ADDRESS_MAP_START( bwp3_map, AS_PROGRAM, 8, bwing_state )
AM_RANGE(0x0000, 0x01ff) AM_RAM
- AM_RANGE(0x0200, 0x0200) AM_DEVWRITE_LEGACY("dac", dac_signed_w)
+ AM_RANGE(0x0200, 0x0200) AM_DEVWRITE("dac", dac_device, write_signed8)
AM_RANGE(0x1000, 0x1000) AM_WRITE(bwp3_nmiack_w)
AM_RANGE(0x2000, 0x2000) AM_DEVWRITE_LEGACY("ay1", ay8910_data_w)
AM_RANGE(0x4000, 0x4000) AM_DEVWRITE_LEGACY("ay1", ay8910_address_w)
@@ -407,7 +407,7 @@ static MACHINE_CONFIG_START( bwing, bwing_state )
MCFG_SOUND_ADD("ay2", AY8910, 1500000)
MCFG_SOUND_ROUTE(ALL_OUTPUTS, "mono", 0.50)
- MCFG_SOUND_ADD("dac", DAC, 0)
+ MCFG_DAC_ADD("dac")
MCFG_SOUND_ROUTE(ALL_OUTPUTS, "mono", 0.10)
MACHINE_CONFIG_END
diff --git a/src/mame/drivers/byvid.c b/src/mame/drivers/byvid.c
index 27d978f0226..4926feb62c3 100644
--- a/src/mame/drivers/byvid.c
+++ b/src/mame/drivers/byvid.c
@@ -76,7 +76,7 @@ static ADDRESS_MAP_START( sound_map, AS_PROGRAM, 8, by133_state )
ADDRESS_MAP_END
static ADDRESS_MAP_START( sound_portmap, AS_IO, 8, by133_state )
- AM_RANGE(M6801_PORT1, M6801_PORT1) AM_DEVWRITE_LEGACY("dac", dac_w)
+ AM_RANGE(M6801_PORT1, M6801_PORT1) AM_DEVWRITE("dac", dac_device, write_unsigned8)
AM_RANGE(M6801_PORT2, M6801_PORT2) AM_READWRITE(m6803_port2_r, m6803_port2_w)
ADDRESS_MAP_END
@@ -185,7 +185,7 @@ static MACHINE_CONFIG_START( by133, by133_state )
/* sound hardware */
MCFG_SPEAKER_STANDARD_MONO("mono")
- MCFG_SOUND_ADD("dac", DAC, 0)
+ MCFG_DAC_ADD("dac")
MCFG_SOUND_ROUTE(ALL_OUTPUTS, "mono", 0.50)
MACHINE_CONFIG_END
diff --git a/src/mame/drivers/calchase.c b/src/mame/drivers/calchase.c
index 2d37eed6ea6..3cb09f2b8ad 100644
--- a/src/mame/drivers/calchase.c
+++ b/src/mame/drivers/calchase.c
@@ -527,14 +527,14 @@ READ16_MEMBER(calchase_state::calchase_iocard5_r)
WRITE16_MEMBER(calchase_state::calchase_dac_l_w)
{
- device_t *device = machine().device("dac_l");
- dac_data_16_w(device, ((data & 0xfff) << 4));
+ dac_device *device = machine().device<dac_device>("dac_l");
+ device->write_unsigned16((data & 0xfff) << 4);
}
WRITE16_MEMBER(calchase_state::calchase_dac_r_w)
{
- device_t *device = machine().device("dac_r");
- dac_data_16_w(device, ((data & 0xfff) << 4));
+ dac_device *device = machine().device<dac_device>("dac_r");
+ device->write_unsigned16((data & 0xfff) << 4);
}
static ADDRESS_MAP_START( calchase_map, AS_PROGRAM, 32, calchase_state )
@@ -941,10 +941,10 @@ static MACHINE_CONFIG_START( calchase, calchase_state )
/* sound hardware */
MCFG_SPEAKER_STANDARD_STEREO("lspeaker","rspeaker")
- MCFG_SOUND_ADD("dac_l", DAC, 0)
+ MCFG_DAC_ADD("dac_l")
MCFG_SOUND_ROUTE(ALL_OUTPUTS, "lspeaker", 0.5)
- MCFG_SOUND_ADD("dac_r", DAC, 0)
+ MCFG_DAC_ADD("dac_r")
MCFG_SOUND_ROUTE(ALL_OUTPUTS, "rspeaker", 0.5)
MACHINE_CONFIG_END
diff --git a/src/mame/drivers/capbowl.c b/src/mame/drivers/capbowl.c
index 0b9c129a228..0fba886f025 100644
--- a/src/mame/drivers/capbowl.c
+++ b/src/mame/drivers/capbowl.c
@@ -263,7 +263,7 @@ static ADDRESS_MAP_START( sound_map, AS_PROGRAM, 8, capbowl_state )
AM_RANGE(0x0000, 0x07ff) AM_RAM
AM_RANGE(0x1000, 0x1001) AM_DEVREADWRITE_LEGACY("ymsnd", ym2203_r, ym2203_w)
AM_RANGE(0x2000, 0x2000) AM_WRITENOP /* Not hooked up according to the schematics */
- AM_RANGE(0x6000, 0x6000) AM_DEVWRITE_LEGACY("dac", dac_w)
+ AM_RANGE(0x6000, 0x6000) AM_DEVWRITE("dac", dac_device, write_unsigned8)
AM_RANGE(0x7000, 0x7000) AM_READ(soundlatch_byte_r)
AM_RANGE(0x8000, 0xffff) AM_ROM
ADDRESS_MAP_END
@@ -393,7 +393,7 @@ static MACHINE_CONFIG_START( capbowl, capbowl_state )
MCFG_SOUND_ROUTE(2, "mono", 0.07)
MCFG_SOUND_ROUTE(3, "mono", 0.75)
- MCFG_SOUND_ADD("dac", DAC, 0)
+ MCFG_DAC_ADD("dac")
MCFG_SOUND_ROUTE(ALL_OUTPUTS, "mono", 1.0)
MACHINE_CONFIG_END
diff --git a/src/mame/drivers/cchasm.c b/src/mame/drivers/cchasm.c
index 008a1ffb2a8..c73ab03d0f4 100644
--- a/src/mame/drivers/cchasm.c
+++ b/src/mame/drivers/cchasm.c
@@ -186,10 +186,10 @@ static MACHINE_CONFIG_START( cchasm, cchasm_state )
MCFG_SOUND_ADD("ay2", AY8910, 1818182)
MCFG_SOUND_ROUTE(ALL_OUTPUTS, "mono", 0.20)
- MCFG_SOUND_ADD("dac1", DAC, 0)
+ MCFG_DAC_ADD("dac1")
MCFG_SOUND_ROUTE(ALL_OUTPUTS, "mono", 0.50)
- MCFG_SOUND_ADD("dac2", DAC, 0)
+ MCFG_DAC_ADD("dac2")
MCFG_SOUND_ROUTE(ALL_OUTPUTS, "mono", 0.50)
/* 6840 PTM */
diff --git a/src/mame/drivers/cham24.c b/src/mame/drivers/cham24.c
index fc37e216fa6..798e94364c2 100644
--- a/src/mame/drivers/cham24.c
+++ b/src/mame/drivers/cham24.c
@@ -369,7 +369,7 @@ static MACHINE_CONFIG_START( cham24, cham24_state )
MCFG_SOUND_CONFIG(cham24_interface_1)
MCFG_SOUND_ROUTE(ALL_OUTPUTS, "mono", 0.50)
- MCFG_SOUND_ADD("dac", DAC, 0)
+ MCFG_DAC_ADD("dac")
MCFG_SOUND_ROUTE(ALL_OUTPUTS, "mono", 0.50)
MACHINE_CONFIG_END
diff --git a/src/mame/drivers/champbas.c b/src/mame/drivers/champbas.c
index fd92586b26f..b63b1dcaf52 100644
--- a/src/mame/drivers/champbas.c
+++ b/src/mame/drivers/champbas.c
@@ -144,20 +144,20 @@ static TIMER_CALLBACK( exctsccr_fm_callback )
// Champion Baseball has only one DAC
WRITE8_MEMBER(champbas_state::champbas_dac_w)
{
- device_t *device = machine().device("dac");
- dac_signed_data_w(device, data << 2);
+ dac_device *device = machine().device<dac_device>("dac");
+ device->write_signed8(data << 2);
}
WRITE8_MEMBER(champbas_state::champbas_dac1_w)
{
- device_t *device = machine().device("dac1");
- dac_signed_data_w(device, data << 2);
+ dac_device *device = machine().device<dac_device>("dac1");
+ device->write_signed8(data << 2);
}
WRITE8_MEMBER(champbas_state::champbas_dac2_w)
{
- device_t *device = machine().device("dac2");
- dac_signed_data_w(device, data << 2);
+ dac_device *device = machine().device<dac_device>("dac2");
+ device->write_signed8(data << 2);
}
/*************************************
@@ -686,7 +686,7 @@ static MACHINE_CONFIG_START( champbas, champbas_state )
MCFG_SOUND_ADD("aysnd", AY8910, XTAL_18_432MHz/12)
MCFG_SOUND_ROUTE(ALL_OUTPUTS, "mono", 0.30)
- MCFG_SOUND_ADD("dac", DAC, 0)
+ MCFG_DAC_ADD("dac")
MCFG_SOUND_ROUTE(ALL_OUTPUTS, "mono", 0.70)
MACHINE_CONFIG_END
@@ -753,10 +753,10 @@ static MACHINE_CONFIG_START( exctsccr, champbas_state )
MCFG_SOUND_ADD("ay4", AY8910, XTAL_14_31818MHz/8)
MCFG_SOUND_ROUTE(ALL_OUTPUTS, "mono", 0.08)
- MCFG_SOUND_ADD("dac1", DAC, 0)
+ MCFG_DAC_ADD("dac1")
MCFG_SOUND_ROUTE(ALL_OUTPUTS, "mono", 0.30)
- MCFG_SOUND_ADD("dac2", DAC, 0)
+ MCFG_DAC_ADD("dac2")
MCFG_SOUND_ROUTE(ALL_OUTPUTS, "mono", 0.30)
MACHINE_CONFIG_END
@@ -794,7 +794,7 @@ static MACHINE_CONFIG_START( exctsccrb, champbas_state )
MCFG_SOUND_ADD("aysnd", AY8910, XTAL_18_432MHz/12)
MCFG_SOUND_ROUTE(ALL_OUTPUTS, "mono", 0.30)
- MCFG_SOUND_ADD("dac", DAC, 0)
+ MCFG_DAC_ADD("dac")
MCFG_SOUND_ROUTE(ALL_OUTPUTS, "mono", 0.70)
MACHINE_CONFIG_END
diff --git a/src/mame/drivers/cheekyms.c b/src/mame/drivers/cheekyms.c
index 65e73f0c778..456f058de27 100644
--- a/src/mame/drivers/cheekyms.c
+++ b/src/mame/drivers/cheekyms.c
@@ -113,7 +113,7 @@ static MACHINE_START( cheekyms )
cheekyms_state *state = machine.driver_data<cheekyms_state>();
state->m_maincpu = machine.device("maincpu");
- state->m_dac = machine.device("dac");
+ state->m_dac = machine.device<dac_device>("dac");
}
static INTERRUPT_GEN( vblank_irq )
@@ -152,7 +152,7 @@ static MACHINE_CONFIG_START( cheekyms, cheekyms_state )
/* audio hardware */
MCFG_SPEAKER_STANDARD_MONO("mono")
- MCFG_SOUND_ADD("dac", DAC, 0)
+ MCFG_DAC_ADD("dac")
MCFG_SOUND_ROUTE(ALL_OUTPUTS, "mono", 1.0)
MACHINE_CONFIG_END
diff --git a/src/mame/drivers/chsuper.c b/src/mame/drivers/chsuper.c
index 54a75d41699..9c0fb5f3692 100644
--- a/src/mame/drivers/chsuper.c
+++ b/src/mame/drivers/chsuper.c
@@ -102,7 +102,7 @@ static ADDRESS_MAP_START( chsuper_portmap, AS_IO, 8, chsuper_state )
AM_RANGE( 0x00fd, 0x00fd ) AM_DEVWRITE("ramdac", ramdac_device, pal_w)
AM_RANGE( 0x00fe, 0x00fe ) AM_DEVWRITE("ramdac", ramdac_device, mask_w)
AM_RANGE( 0x8300, 0x8300 ) AM_READ( ff_r ) //probably data for the dac
- AM_RANGE( 0xff20, 0xff3f ) AM_DEVWRITE_LEGACY("dac", dac_w) // unk writes
+ AM_RANGE( 0xff20, 0xff3f ) AM_DEVWRITE("dac", dac_device, write_unsigned8) // unk writes
ADDRESS_MAP_END
static INPUT_PORTS_START( chsuper )
@@ -219,7 +219,7 @@ static MACHINE_CONFIG_START( chsuper, chsuper_state )
/* sound hardware */
MCFG_SPEAKER_STANDARD_MONO("mono")
- MCFG_SOUND_ADD("dac", DAC, 0)
+ MCFG_DAC_ADD("dac")
MCFG_SOUND_ROUTE(ALL_OUTPUTS, "mono", 0.50)
MACHINE_CONFIG_END
diff --git a/src/mame/drivers/circusc.c b/src/mame/drivers/circusc.c
index 8df32d189f3..5d1ccf6ee37 100644
--- a/src/mame/drivers/circusc.c
+++ b/src/mame/drivers/circusc.c
@@ -64,7 +64,7 @@ static MACHINE_START( circusc )
state->m_audiocpu = machine.device<cpu_device>("audiocpu");
state->m_sn1 = machine.device("sn1");
state->m_sn2 = machine.device("sn2");
- state->m_dac = machine.device("dac");
+ state->m_dac = machine.device<dac_device>("dac");
state->m_discrete = machine.device("fltdisc");
state->save_item(NAME(state->m_sn_latch));
@@ -128,7 +128,7 @@ WRITE8_MEMBER(circusc_state::circusc_sound_w)
/* CS5 */
case 3:
- dac_w(m_dac, 0, data);
+ m_dac->write_unsigned8(data);
break;
/* CS6 */
@@ -377,7 +377,7 @@ static MACHINE_CONFIG_START( circusc, circusc_state )
MCFG_SOUND_ADD("sn2", SN76496, XTAL_14_31818MHz/8)
MCFG_SOUND_ROUTE_EX(0, "fltdisc", 1.0, 1)
- MCFG_SOUND_ADD("dac", DAC, 0)
+ MCFG_DAC_ADD("dac")
MCFG_SOUND_ROUTE_EX(0, "fltdisc", 1.0, 2)
MCFG_SOUND_ADD("fltdisc", DISCRETE, 0)
diff --git a/src/mame/drivers/cntsteer.c b/src/mame/drivers/cntsteer.c
index 4774c46fcd3..035daad7e9e 100644
--- a/src/mame/drivers/cntsteer.c
+++ b/src/mame/drivers/cntsteer.c
@@ -872,7 +872,7 @@ static const ay8910_interface ay8910_config =
AY8910_DEFAULT_LOADS,
DEVCB_NULL,
DEVCB_NULL,
- DEVCB_DEVICE_HANDLER("dac", dac_w),
+ DEVCB_DEVICE_MEMBER("dac", dac_device, write_unsigned8),
DEVCB_NULL
};
@@ -919,7 +919,7 @@ static MACHINE_CONFIG_START( cntsteer, cntsteer_state )
MCFG_SOUND_ADD("ay2", AY8910, 1500000)
MCFG_SOUND_ROUTE(ALL_OUTPUTS, "mono", 0.50)
- MCFG_SOUND_ADD("dac", DAC, 0)
+ MCFG_DAC_ADD("dac")
MCFG_SOUND_ROUTE(ALL_OUTPUTS, "mono", 0.50)
MACHINE_CONFIG_END
diff --git a/src/mame/drivers/coolpool.c b/src/mame/drivers/coolpool.c
index 67db9283905..834538ffb06 100644
--- a/src/mame/drivers/coolpool.c
+++ b/src/mame/drivers/coolpool.c
@@ -558,8 +558,8 @@ WRITE16_MEMBER(coolpool_state::dsp_romaddr_w)
WRITE16_MEMBER(coolpool_state::dsp_dac_w)
{
- device_t *device = machine().device("dac");
- dac_signed_data_16_w(device, (INT16)(data << 4) + 0x8000);
+ dac_device *device = machine().device<dac_device>("dac");
+ device->write_signed16((INT16)(data << 4) + 0x8000);
}
@@ -876,7 +876,7 @@ static MACHINE_CONFIG_START( amerdart, coolpool_state )
/* sound hardware */
MCFG_SPEAKER_STANDARD_MONO("mono")
- MCFG_SOUND_ADD("dac", DAC, 0)
+ MCFG_DAC_ADD("dac")
MCFG_SOUND_ROUTE(ALL_OUTPUTS, "mono", 1.0)
MACHINE_CONFIG_END
@@ -907,7 +907,7 @@ static MACHINE_CONFIG_START( coolpool, coolpool_state )
/* sound hardware */
MCFG_SPEAKER_STANDARD_MONO("mono")
- MCFG_SOUND_ADD("dac", DAC, 0)
+ MCFG_DAC_ADD("dac")
MCFG_SOUND_ROUTE(ALL_OUTPUTS, "mono", 1.0)
MACHINE_CONFIG_END
diff --git a/src/mame/drivers/cosmic.c b/src/mame/drivers/cosmic.c
index df77e4c9891..f704f181658 100644
--- a/src/mame/drivers/cosmic.c
+++ b/src/mame/drivers/cosmic.c
@@ -96,7 +96,7 @@ WRITE8_MEMBER(cosmic_state::panic_sound_output_w)
m_samples->stop(4);
break;
- case 10: dac_data_w(m_dac, data); break;/* Bonus */
+ case 10: m_dac->write_unsigned8(data); break;/* Bonus */
case 15: if (data) m_samples->start(0, 6); break; /* Player Die */
case 16: if (data) m_samples->start(5, 7); break; /* Enemy Laugh */
case 17: if (data) m_samples->start(0, 10); break; /* Coin - Not triggered by software */
@@ -135,7 +135,7 @@ WRITE8_MEMBER(cosmic_state::cosmicg_output_w)
/* as other cosmic series games, but it never seems to */
/* be used for anything. It is implemented for sake of */
/* completness. Maybe it plays a tune if you win ? */
- case 1: dac_data_w(m_dac, -data); break;
+ case 1: m_dac->write_unsigned8(-data); break;
case 2: if (data) m_samples->start(0, m_march_select); break; /* March Sound */
case 3: m_march_select = (m_march_select & 0xfe) | data; break;
case 4: m_march_select = (m_march_select & 0xfd) | (data << 1); break;
@@ -397,7 +397,7 @@ static ADDRESS_MAP_START( magspot_map, AS_PROGRAM, 8, cosmic_state )
AM_RANGE(0x0000, 0x2fff) AM_ROM
AM_RANGE(0x3800, 0x3807) AM_READ(magspot_coinage_dip_r)
AM_RANGE(0x4000, 0x401f) AM_WRITEONLY AM_SHARE("spriteram")
- AM_RANGE(0x4800, 0x4800) AM_DEVWRITE_LEGACY("dac", dac_w)
+ AM_RANGE(0x4800, 0x4800) AM_DEVWRITE("dac", dac_device, write_unsigned8)
AM_RANGE(0x480c, 0x480d) AM_WRITE(cosmic_color_register_w)
AM_RANGE(0x480f, 0x480f) AM_WRITE(flip_screen_w)
AM_RANGE(0x5000, 0x5000) AM_READ_PORT("IN0")
@@ -963,7 +963,7 @@ static MACHINE_START( cosmic )
cosmic_state *state = machine.driver_data<cosmic_state>();
state->m_samples = machine.device<samples_device>("samples");
- state->m_dac = machine.device("dac");
+ state->m_dac = machine.device<dac_device>("dac");
state->save_item(NAME(state->m_sound_enabled));
state->save_item(NAME(state->m_march_select));
@@ -1035,7 +1035,7 @@ static MACHINE_CONFIG_DERIVED( panic, cosmic )
MCFG_SAMPLES_ADD("samples", panic_samples_interface)
MCFG_SOUND_ROUTE(ALL_OUTPUTS, "mono", 0.25)
- MCFG_SOUND_ADD("dac", DAC, 0)
+ MCFG_DAC_ADD("dac")
MCFG_SOUND_ROUTE(ALL_OUTPUTS, "mono", 1.0)
MACHINE_CONFIG_END
@@ -1060,7 +1060,7 @@ static MACHINE_CONFIG_DERIVED( cosmica, cosmic )
MCFG_SAMPLES_ADD("samples", cosmica_samples_interface)
MCFG_SOUND_ROUTE(ALL_OUTPUTS, "mono", 0.25)
- MCFG_SOUND_ADD("dac", DAC, 0)
+ MCFG_DAC_ADD("dac")
MCFG_SOUND_ROUTE(ALL_OUTPUTS, "mono", 1.0)
MACHINE_CONFIG_END
@@ -1097,7 +1097,7 @@ static MACHINE_CONFIG_START( cosmicg, cosmic_state )
MCFG_SAMPLES_ADD("samples", cosmicg_samples_interface)
MCFG_SOUND_ROUTE(ALL_OUTPUTS, "mono", 0.25)
- MCFG_SOUND_ADD("dac", DAC, 0)
+ MCFG_DAC_ADD("dac")
MCFG_SOUND_ROUTE(ALL_OUTPUTS, "mono", 1.0)
MACHINE_CONFIG_END
@@ -1119,7 +1119,7 @@ static MACHINE_CONFIG_DERIVED( magspot, cosmic )
/* sound hardware */
MCFG_SPEAKER_STANDARD_MONO("mono")
- MCFG_SOUND_ADD("dac", DAC, 0)
+ MCFG_DAC_ADD("dac")
MCFG_SOUND_ROUTE(ALL_OUTPUTS, "mono", 1.0)
MACHINE_CONFIG_END
@@ -1151,7 +1151,7 @@ static MACHINE_CONFIG_DERIVED( nomnlnd, cosmic )
/* sound hardware */
MCFG_SPEAKER_STANDARD_MONO("mono")
- MCFG_SOUND_ADD("dac", DAC, 0)
+ MCFG_DAC_ADD("dac")
MCFG_SOUND_ROUTE(ALL_OUTPUTS, "mono", 1.0)
MACHINE_CONFIG_END
@@ -1550,11 +1550,11 @@ static DRIVER_INIT( devzone )
static DRIVER_INIT( nomnlnd )
{
cosmic_state *state = machine.driver_data<cosmic_state>();
- device_t *dac = machine.device("dac");
+ dac_device *dac = machine.device<dac_device>("dac");
machine.device("maincpu")->memory().space(AS_PROGRAM)->install_read_handler(0x5000, 0x5001, read8_delegate(FUNC(cosmic_state::nomnlnd_port_0_1_r),state));
machine.device("maincpu")->memory().space(AS_PROGRAM)->nop_write(0x4800, 0x4800);
machine.device("maincpu")->memory().space(AS_PROGRAM)->install_write_handler(0x4807, 0x4807, write8_delegate(FUNC(cosmic_state::cosmic_background_enable_w),state));
- machine.device("maincpu")->memory().space(AS_PROGRAM)->install_legacy_write_handler(*dac, 0x480a, 0x480a, FUNC(dac_w));
+ machine.device("maincpu")->memory().space(AS_PROGRAM)->install_write_handler(0x480a, 0x480a, write8_delegate(FUNC(dac_device::write_unsigned8),dac));
}
static DRIVER_INIT( panic )
diff --git a/src/mame/drivers/csplayh5.c b/src/mame/drivers/csplayh5.c
index 79a9acc052b..c98fe78bd50 100644
--- a/src/mame/drivers/csplayh5.c
+++ b/src/mame/drivers/csplayh5.c
@@ -161,9 +161,9 @@ sound HW is identical to Niyanpai
#define SIGNED_DAC 0 // 0:unsigned DAC, 1:signed DAC
#if SIGNED_DAC
-#define DAC_WRITE dac_signed_w
+#define DAC_WRITE write_signed8
#else
-#define DAC_WRITE dac_w
+#define DAC_WRITE write_unsigned8
#endif
static void csplayh5_soundbank_w(running_machine &machine, int data)
@@ -222,10 +222,10 @@ WRITE8_MEMBER(csplayh5_state::tmpz84c011_pio_w)
csplayh5_soundbank_w(machine(), data & 0x03);
break;
case 1: /* PB_0 */
- DAC_WRITE(machine().device("dac2"), 0, data);
+ machine().device<dac_device>("dac2")->DAC_WRITE(data);
break;
case 2: /* PC_0 */
- DAC_WRITE(machine().device("dac1"), 0, data);
+ machine().device<dac_device>("dac1")->DAC_WRITE(data);
break;
case 3: /* PD_0 */
break;
@@ -655,10 +655,10 @@ static MACHINE_CONFIG_START( csplayh5, csplayh5_state )
MCFG_SOUND_ADD("ymsnd", YM3812, 4000000)
MCFG_SOUND_ROUTE(ALL_OUTPUTS, "mono", 0.70)
- MCFG_SOUND_ADD("dac1", DAC, 0)
+ MCFG_DAC_ADD("dac1")
MCFG_SOUND_ROUTE(ALL_OUTPUTS, "mono", 0.50)
- MCFG_SOUND_ADD("dac2", DAC, 0)
+ MCFG_DAC_ADD("dac2")
MCFG_SOUND_ROUTE(ALL_OUTPUTS, "mono", 0.75)
MACHINE_CONFIG_END
diff --git a/src/mame/drivers/cubeqst.c b/src/mame/drivers/cubeqst.c
index 8c2e39f10b4..948ebbba3e8 100644
--- a/src/mame/drivers/cubeqst.c
+++ b/src/mame/drivers/cubeqst.c
@@ -483,7 +483,7 @@ static void sound_dac_w(device_t *device, UINT16 data)
"rdac6", "ldac6",
"rdac7", "ldac7"
};
- dac_signed_data_16_w(device->machine().device(dacs[data & 15]), (data & 0xfff0) ^ 0x8000);
+ device->machine().device<dac_device>(dacs[data & 15])->write_signed16((data & 0xfff0) ^ 0x8000);
}
static const cubeqst_snd_config snd_config =
@@ -549,37 +549,37 @@ static MACHINE_CONFIG_START( cubeqst, cubeqst_state )
MCFG_SOUND_ROUTE(0, "lspeaker", 1.0)
MCFG_SOUND_ROUTE(1, "rspeaker", 1.0)
- MCFG_SOUND_ADD("rdac0", DAC, 0)
+ MCFG_DAC_ADD("rdac0")
MCFG_SOUND_ROUTE(0, "rspeaker", 0.125)
- MCFG_SOUND_ADD("ldac0", DAC, 0)
+ MCFG_DAC_ADD("ldac0")
MCFG_SOUND_ROUTE(0, "lspeaker", 0.125)
- MCFG_SOUND_ADD("rdac1", DAC, 0)
+ MCFG_DAC_ADD("rdac1")
MCFG_SOUND_ROUTE(0, "rspeaker", 0.125)
- MCFG_SOUND_ADD("ldac1", DAC, 0)
+ MCFG_DAC_ADD("ldac1")
MCFG_SOUND_ROUTE(0, "lspeaker", 0.125)
- MCFG_SOUND_ADD("rdac2", DAC, 0)
+ MCFG_DAC_ADD("rdac2")
MCFG_SOUND_ROUTE(0, "rspeaker", 0.125)
- MCFG_SOUND_ADD("ldac2", DAC, 0)
+ MCFG_DAC_ADD("ldac2")
MCFG_SOUND_ROUTE(0, "lspeaker", 0.125)
- MCFG_SOUND_ADD("rdac3", DAC, 0)
+ MCFG_DAC_ADD("rdac3")
MCFG_SOUND_ROUTE(0, "rspeaker", 0.125)
- MCFG_SOUND_ADD("ldac3", DAC, 0)
+ MCFG_DAC_ADD("ldac3")
MCFG_SOUND_ROUTE(0, "lspeaker", 0.125)
- MCFG_SOUND_ADD("rdac4", DAC, 0)
+ MCFG_DAC_ADD("rdac4")
MCFG_SOUND_ROUTE(0, "rspeaker", 0.125)
- MCFG_SOUND_ADD("ldac4", DAC, 0)
+ MCFG_DAC_ADD("ldac4")
MCFG_SOUND_ROUTE(0, "lspeaker", 0.125)
- MCFG_SOUND_ADD("rdac5", DAC, 0)
+ MCFG_DAC_ADD("rdac5")
MCFG_SOUND_ROUTE(0, "rspeaker", 0.125)
- MCFG_SOUND_ADD("ldac5", DAC, 0)
+ MCFG_DAC_ADD("ldac5")
MCFG_SOUND_ROUTE(0, "lspeaker", 0.125)
- MCFG_SOUND_ADD("rdac6", DAC, 0)
+ MCFG_DAC_ADD("rdac6")
MCFG_SOUND_ROUTE(0, "rspeaker", 0.125)
- MCFG_SOUND_ADD("ldac6", DAC, 0)
+ MCFG_DAC_ADD("ldac6")
MCFG_SOUND_ROUTE(0, "lspeaker", 0.125)
- MCFG_SOUND_ADD("rdac7", DAC, 0)
+ MCFG_DAC_ADD("rdac7")
MCFG_SOUND_ROUTE(0, "rspeaker", 0.125)
- MCFG_SOUND_ADD("ldac7", DAC, 0)
+ MCFG_DAC_ADD("ldac7")
MCFG_SOUND_ROUTE(0, "lspeaker", 0.125)
MACHINE_CONFIG_END
diff --git a/src/mame/drivers/cvs.c b/src/mame/drivers/cvs.c
index c47918b1e53..fccd0f5e4e8 100644
--- a/src/mame/drivers/cvs.c
+++ b/src/mame/drivers/cvs.c
@@ -302,7 +302,7 @@ static TIMER_CALLBACK( cvs_393hz_timer_cb )
if (state->m_dac3 != NULL)
{
if (state->m_dac3_state[2])
- dac_w(state->m_dac3, 0, state->m_cvs_393hz_clock * 0xff);
+ state->m_dac3->write_unsigned8(state->m_cvs_393hz_clock * 0xff);
}
}
@@ -324,7 +324,7 @@ static void start_393hz_timer(running_machine &machine)
WRITE8_MEMBER(cvs_state::cvs_4_bit_dac_data_w)
{
- device_t *device = machine().device("dac2");
+ dac_device *device = machine().device<dac_device>("dac2");
UINT8 dac_value;
static int old_data[4] = {0,0,0,0};
@@ -342,7 +342,7 @@ WRITE8_MEMBER(cvs_state::cvs_4_bit_dac_data_w)
(m_cvs_4_bit_dac_data[3] << 3);
/* scale up to a full byte and output */
- dac_data_w(device, (dac_value << 4) | dac_value);
+ device->write_unsigned8((dac_value << 4) | dac_value);
}
WRITE8_MEMBER(cvs_state::cvs_unknown_w)
@@ -506,7 +506,7 @@ static ADDRESS_MAP_START( cvs_dac_cpu_map, AS_PROGRAM, 8, cvs_state )
AM_RANGE(0x0000, 0x0fff) AM_ROM
AM_RANGE(0x1000, 0x107f) AM_RAM
AM_RANGE(0x1800, 0x1800) AM_READ(soundlatch_byte_r)
- AM_RANGE(0x1840, 0x1840) AM_DEVWRITE_LEGACY("dac1", dac_w)
+ AM_RANGE(0x1840, 0x1840) AM_DEVWRITE("dac1", dac_device, write_unsigned8)
AM_RANGE(0x1880, 0x1883) AM_WRITE(cvs_4_bit_dac_data_w) AM_SHARE("4bit_dac")
AM_RANGE(0x1884, 0x1887) AM_WRITE(cvs_unknown_w) AM_SHARE("dac3_state") /* ???? not connected to anything */
ADDRESS_MAP_END
@@ -1002,7 +1002,7 @@ MACHINE_START( cvs )
state->m_maincpu = machine.device("maincpu");
state->m_audiocpu = machine.device("audiocpu");
state->m_speech = machine.device("speech");
- state->m_dac3 = machine.device("dac3");
+ state->m_dac3 = machine.device<dac_device>("dac3");
state->m_tms = machine.device("tms");
state->m_s2636_0 = machine.device("s2636_0");
state->m_s2636_1 = machine.device("s2636_1");
@@ -1079,16 +1079,16 @@ static MACHINE_CONFIG_START( cvs, cvs_state )
/* audio hardware */
MCFG_SPEAKER_STANDARD_MONO("mono")
- MCFG_SOUND_ADD("dac1", DAC, 0)
+ MCFG_DAC_ADD("dac1")
MCFG_SOUND_ROUTE(ALL_OUTPUTS, "mono", 1.0)
- //MCFG_SOUND_ADD("dac1a", DAC, 0)
+ //MCFG_DAC_ADD("dac1a")
//MCFG_SOUND_ROUTE(ALL_OUTPUTS, "mono", 1.0)
- MCFG_SOUND_ADD("dac2", DAC, 0)
+ MCFG_DAC_ADD("dac2")
MCFG_SOUND_ROUTE(ALL_OUTPUTS, "mono", 1.0)
- MCFG_SOUND_ADD("dac3", DAC, 0)
+ MCFG_DAC_ADD("dac3")
MCFG_SOUND_ROUTE(ALL_OUTPUTS, "mono", 1.0)
MCFG_SOUND_ADD("tms", TMS5100, 640000)
diff --git a/src/mame/drivers/cyberbal.c b/src/mame/drivers/cyberbal.c
index 4505f34a199..4d1d2a3bb44 100644
--- a/src/mame/drivers/cyberbal.c
+++ b/src/mame/drivers/cyberbal.c
@@ -478,10 +478,10 @@ static MACHINE_CONFIG_START( cyberbal, cyberbal_state )
MCFG_SOUND_ROUTE(0, "lspeaker", 0.60)
MCFG_SOUND_ROUTE(1, "rspeaker", 0.60)
- MCFG_SOUND_ADD("dac1", DAC, 0)
+ MCFG_DAC_ADD("dac1")
MCFG_SOUND_ROUTE(ALL_OUTPUTS, "rspeaker", 1.0)
- MCFG_SOUND_ADD("dac2", DAC, 0)
+ MCFG_DAC_ADD("dac2")
MCFG_SOUND_ROUTE(ALL_OUTPUTS, "lspeaker", 1.0)
MACHINE_CONFIG_END
diff --git a/src/mame/drivers/equites.c b/src/mame/drivers/equites.c
index 58675f66436..0e2a338a3ac 100644
--- a/src/mame/drivers/equites.c
+++ b/src/mame/drivers/equites.c
@@ -548,10 +548,10 @@ static void equites_update_dac( running_machine &machine )
// Note that PB0 goes through three filters while PB1 only goes through one.
if (state->m_eq8155_port_b & 1)
- dac_signed_data_w(state->m_dac_1, state->m_dac_latch);
+ state->m_dac_1->write_signed8(state->m_dac_latch);
if (state->m_eq8155_port_b & 2)
- dac_signed_data_w(state->m_dac_2, state->m_dac_latch);
+ state->m_dac_2->write_signed8(state->m_dac_latch);
}
WRITE8_MEMBER(equites_state::equites_dac_latch_w)
@@ -1176,10 +1176,10 @@ static MACHINE_CONFIG_FRAGMENT( common_sound )
MCFG_SOUND_CONFIG(equites_8910intf)
MCFG_SOUND_ROUTE(ALL_OUTPUTS, "mono", 0.15)
- MCFG_SOUND_ADD("dac1", DAC, 0)
+ MCFG_DAC_ADD("dac1")
MCFG_SOUND_ROUTE(ALL_OUTPUTS, "mono", 0.50)
- MCFG_SOUND_ADD("dac2", DAC, 0)
+ MCFG_DAC_ADD("dac2")
MCFG_SOUND_ROUTE(ALL_OUTPUTS, "mono", 0.50)
MCFG_SAMPLES_ADD("samples", alphamc07_samples_interface)
@@ -1195,8 +1195,8 @@ static MACHINE_START( equites )
state->m_mcu = machine.device("mcu");
state->m_audio_cpu = machine.device("audiocpu");
state->m_msm = machine.device<msm5232_device>("msm");
- state->m_dac_1 = machine.device("dac1");
- state->m_dac_2 = machine.device("dac2");
+ state->m_dac_1 = machine.device<dac_device>("dac1");
+ state->m_dac_2 = machine.device<dac_device>("dac2");
state->save_item(NAME(state->m_fg_char_bank));
state->save_item(NAME(state->m_bgcolor));
diff --git a/src/mame/drivers/ertictac.c b/src/mame/drivers/ertictac.c
index d392b9ecd17..2bf167bfb6c 100644
--- a/src/mame/drivers/ertictac.c
+++ b/src/mame/drivers/ertictac.c
@@ -197,7 +197,7 @@ static MACHINE_START( ertictac )
archimedes_init(machine);
// reset the DAC to centerline
- //dac_signed_data_w(machine.device("dac"), 0x80);
+ //machine.device<dac_device>("dac")->write_signed8(0x80);
}
static MACHINE_RESET( ertictac )
@@ -242,28 +242,28 @@ static MACHINE_CONFIG_START( ertictac, ertictac_state )
MCFG_VIDEO_START(archimds_vidc)
MCFG_SPEAKER_STANDARD_MONO("mono")
- MCFG_SOUND_ADD("dac0", DAC, 0)
+ MCFG_DAC_ADD("dac0")
MCFG_SOUND_ROUTE(0, "mono", 0.05)
- MCFG_SOUND_ADD("dac1", DAC, 0)
+ MCFG_DAC_ADD("dac1")
MCFG_SOUND_ROUTE(0, "mono", 0.05)
- MCFG_SOUND_ADD("dac2", DAC, 0)
+ MCFG_DAC_ADD("dac2")
MCFG_SOUND_ROUTE(0, "mono", 0.05)
- MCFG_SOUND_ADD("dac3", DAC, 0)
+ MCFG_DAC_ADD("dac3")
MCFG_SOUND_ROUTE(0, "mono", 0.05)
- MCFG_SOUND_ADD("dac4", DAC, 0)
+ MCFG_DAC_ADD("dac4")
MCFG_SOUND_ROUTE(0, "mono", 0.05)
- MCFG_SOUND_ADD("dac5", DAC, 0)
+ MCFG_DAC_ADD("dac5")
MCFG_SOUND_ROUTE(0, "mono", 0.05)
- MCFG_SOUND_ADD("dac6", DAC, 0)
+ MCFG_DAC_ADD("dac6")
MCFG_SOUND_ROUTE(0, "mono", 0.05)
- MCFG_SOUND_ADD("dac7", DAC, 0)
+ MCFG_DAC_ADD("dac7")
MCFG_SOUND_ROUTE(0, "mono", 0.05)
MACHINE_CONFIG_END
diff --git a/src/mame/drivers/esripsys.c b/src/mame/drivers/esripsys.c
index f15858dd366..54034abf4b4 100644
--- a/src/mame/drivers/esripsys.c
+++ b/src/mame/drivers/esripsys.c
@@ -560,7 +560,7 @@ WRITE8_MEMBER(esripsys_state::control_w)
/* 10-bit MC3410CL DAC */
WRITE8_MEMBER(esripsys_state::esripsys_dac_w)
{
- device_t *device = machine().device("dac");
+ dac_device *device = machine().device<dac_device>("dac");
if (offset == 0)
{
m_dac_msb = data & 3;
@@ -573,7 +573,7 @@ WRITE8_MEMBER(esripsys_state::esripsys_dac_w)
The 8-bit DAC modulates the 10-bit DAC.
Shift down to prevent clipping.
*/
- dac_signed_data_16_w(device, (m_dac_vol * dac_data) >> 1);
+ device->write_signed16((m_dac_vol * dac_data) >> 1);
}
}
@@ -725,7 +725,7 @@ static MACHINE_CONFIG_START( esripsys, esripsys_state )
/* Sound hardware */
MCFG_SPEAKER_STANDARD_MONO("mono")
- MCFG_SOUND_ADD("dac", DAC, 0)
+ MCFG_DAC_ADD("dac")
MCFG_SOUND_ROUTE(ALL_OUTPUTS, "mono", 0.50)
MCFG_SOUND_ADD("tms5220nl", TMS5220, 640000)
diff --git a/src/mame/drivers/exterm.c b/src/mame/drivers/exterm.c
index e4bfcad94c8..9d7bb37c1f3 100644
--- a/src/mame/drivers/exterm.c
+++ b/src/mame/drivers/exterm.c
@@ -240,10 +240,10 @@ READ8_MEMBER(exterm_state::sound_slave_latch_r)
WRITE8_MEMBER(exterm_state::sound_slave_dac_w)
{
- device_t *device = machine().device("dac");
+ dac_device *device = machine().device<dac_device>("dac");
/* DAC A is used to modulate DAC B */
m_dac_value[offset & 1] = data;
- dac_data_16_w(device, (m_dac_value[0] ^ 0xff) * m_dac_value[1]);
+ device->write_unsigned16((m_dac_value[0] ^ 0xff) * m_dac_value[1]);
}
@@ -472,7 +472,7 @@ static MACHINE_CONFIG_START( exterm, exterm_state )
/* sound hardware */
MCFG_SPEAKER_STANDARD_MONO("mono")
- MCFG_SOUND_ADD("dac", DAC, 0)
+ MCFG_DAC_ADD("dac")
MCFG_SOUND_ROUTE(ALL_OUTPUTS, "mono", 0.40)
MCFG_SOUND_ADD("ymsnd", YM2151, 4000000)
diff --git a/src/mame/drivers/famibox.c b/src/mame/drivers/famibox.c
index 714bec04f87..f2fc8ffc0ff 100644
--- a/src/mame/drivers/famibox.c
+++ b/src/mame/drivers/famibox.c
@@ -605,7 +605,7 @@ static MACHINE_CONFIG_START( famibox, famibox_state )
MCFG_SOUND_CONFIG(famibox_interface_1)
MCFG_SOUND_ROUTE(ALL_OUTPUTS, "mono", 0.50)
- MCFG_SOUND_ADD("dac", DAC, 0)
+ MCFG_DAC_ADD("dac")
MCFG_SOUND_ROUTE(ALL_OUTPUTS, "mono", 0.50)
MACHINE_CONFIG_END
diff --git a/src/mame/drivers/fantland.c b/src/mame/drivers/fantland.c
index 7b823c75f7c..f4ddfa46c2a 100644
--- a/src/mame/drivers/fantland.c
+++ b/src/mame/drivers/fantland.c
@@ -294,7 +294,7 @@ ADDRESS_MAP_END
static ADDRESS_MAP_START( fantland_sound_iomap, AS_IO, 8, fantland_state )
AM_RANGE( 0x0080, 0x0080 ) AM_READ(soundlatch_byte_r )
AM_RANGE( 0x0100, 0x0101 ) AM_DEVREADWRITE_LEGACY("ymsnd", ym2151_r, ym2151_w )
- AM_RANGE( 0x0180, 0x0180 ) AM_DEVWRITE_LEGACY("dac", dac_w )
+ AM_RANGE( 0x0180, 0x0180 ) AM_DEVWRITE("dac", dac_device, write_unsigned8 )
ADDRESS_MAP_END
static ADDRESS_MAP_START( galaxygn_sound_iomap, AS_IO, 8, fantland_state )
@@ -880,7 +880,7 @@ static MACHINE_CONFIG_START( fantland, fantland_state )
MCFG_SOUND_ROUTE(0, "mono", 0.35)
MCFG_SOUND_ROUTE(1, "mono", 0.35)
- MCFG_SOUND_ADD("dac", DAC, 0)
+ MCFG_DAC_ADD("dac")
MCFG_SOUND_ROUTE(ALL_OUTPUTS, "mono", 0.50)
MACHINE_CONFIG_END
diff --git a/src/mame/drivers/finalizr.c b/src/mame/drivers/finalizr.c
index fb13567304f..cd11f802d69 100644
--- a/src/mame/drivers/finalizr.c
+++ b/src/mame/drivers/finalizr.c
@@ -127,7 +127,7 @@ ADDRESS_MAP_END
static ADDRESS_MAP_START( sound_io_map, AS_IO, 8, finalizr_state )
AM_RANGE(0x00, 0xff) AM_READ(soundlatch_byte_r)
- AM_RANGE(MCS48_PORT_P1, MCS48_PORT_P1) AM_DEVWRITE_LEGACY("dac", dac_w)
+ AM_RANGE(MCS48_PORT_P1, MCS48_PORT_P1) AM_DEVWRITE("dac", dac_device, write_unsigned8)
AM_RANGE(MCS48_PORT_P2, MCS48_PORT_P2) AM_WRITE(i8039_irqen_w)
AM_RANGE(MCS48_PORT_T0, MCS48_PORT_T0) AM_WRITE(i8039_T0_w)
AM_RANGE(MCS48_PORT_T1, MCS48_PORT_T1) AM_READ(i8039_T1_r)
@@ -304,7 +304,7 @@ static MACHINE_CONFIG_START( finalizr, finalizr_state )
MCFG_SOUND_ROUTE(ALL_OUTPUTS, "mono", 0.75)
MCFG_SOUND_CONFIG(psg_intf)
- MCFG_SOUND_ADD("dac", DAC, 0)
+ MCFG_DAC_ADD("dac")
MCFG_SOUND_ROUTE(ALL_OUTPUTS, "mono", 0.65)
MACHINE_CONFIG_END
diff --git a/src/mame/drivers/flstory.c b/src/mame/drivers/flstory.c
index 3f13baa9c83..6748b5c90e4 100644
--- a/src/mame/drivers/flstory.c
+++ b/src/mame/drivers/flstory.c
@@ -446,7 +446,7 @@ static ADDRESS_MAP_START( sound_map, AS_PROGRAM, 8, flstory_state )
AM_RANGE(0xd800, 0xd800) AM_READ(soundlatch_byte_r) AM_WRITE(to_main_w)
AM_RANGE(0xda00, 0xda00) AM_READNOP AM_WRITE(nmi_enable_w) /* unknown read*/
AM_RANGE(0xdc00, 0xdc00) AM_WRITE(nmi_disable_w)
- AM_RANGE(0xde00, 0xde00) AM_READNOP AM_DEVWRITE_LEGACY("dac", dac_w) /* signed 8-bit DAC & unknown read */
+ AM_RANGE(0xde00, 0xde00) AM_READNOP AM_DEVWRITE("dac", dac_device, write_unsigned8) /* signed 8-bit DAC & unknown read */
AM_RANGE(0xe000, 0xefff) AM_ROM /* space for diagnostics ROM */
ADDRESS_MAP_END
@@ -1133,7 +1133,7 @@ static MACHINE_CONFIG_START( flstory, flstory_state )
// pin 2 SOLO 16' not mapped
// pin 22 Noise Output not mapped
- MCFG_SOUND_ADD("dac", DAC, 0)
+ MCFG_DAC_ADD("dac")
MCFG_SOUND_ROUTE(ALL_OUTPUTS, "mono", 0.20)
MACHINE_CONFIG_END
@@ -1191,7 +1191,7 @@ static MACHINE_CONFIG_START( onna34ro, flstory_state )
// pin 2 SOLO 16' not mapped
// pin 22 Noise Output not mapped
- MCFG_SOUND_ADD("dac", DAC, 0)
+ MCFG_DAC_ADD("dac")
MCFG_SOUND_ROUTE(ALL_OUTPUTS, "mono", 0.20)
MACHINE_CONFIG_END
@@ -1249,7 +1249,7 @@ static MACHINE_CONFIG_START( victnine, flstory_state )
// pin 2 SOLO 16' not mapped
// pin 22 Noise Output not mapped
- MCFG_SOUND_ADD("dac", DAC, 0)
+ MCFG_DAC_ADD("dac")
MCFG_SOUND_ROUTE(ALL_OUTPUTS, "mono", 0.20)
MACHINE_CONFIG_END
@@ -1314,7 +1314,7 @@ static MACHINE_CONFIG_START( rumba, flstory_state )
// pin 2 SOLO 16' not mapped
// pin 22 Noise Output not mapped
- MCFG_SOUND_ADD("dac", DAC, 0)
+ MCFG_DAC_ADD("dac")
MCFG_SOUND_ROUTE(ALL_OUTPUTS, "mono", 0.20)
MACHINE_CONFIG_END
diff --git a/src/mame/drivers/galaxian.c b/src/mame/drivers/galaxian.c
index 23d10a87f35..df2b6806620 100644
--- a/src/mame/drivers/galaxian.c
+++ b/src/mame/drivers/galaxian.c
@@ -781,7 +781,7 @@ WRITE8_MEMBER(galaxian_state::sfx_sample_io_w)
{
/* the decoding here is very simplistic, and you can address both simultaneously */
if (offset & 0x04) m_ppi8255_2->write(space, offset & 3, data);
- if (offset & 0x10) dac_signed_data_w(machine().device("dac"), data);
+ if (offset & 0x10) machine().device<dac_device>("dac")->write_signed8(data);
}
@@ -1187,8 +1187,8 @@ WRITE8_MEMBER(galaxian_state::kingball_sound2_w)
WRITE8_MEMBER(galaxian_state::kingball_dac_w)
{
- device_t *device = machine().device("dac");
- dac_w(device, offset, data ^ 0xff);
+ dac_device *device = machine().device<dac_device>("dac");
+ device->write_unsigned8(data ^ 0xff);
}
@@ -2314,7 +2314,7 @@ static MACHINE_CONFIG_DERIVED( kingball, mooncrst )
MCFG_CPU_IO_MAP(kingball_sound_portmap)
/* sound hardware */
- MCFG_SOUND_ADD("dac", DAC, 0)
+ MCFG_DAC_ADD("dac")
MCFG_SOUND_ROUTE(ALL_OUTPUTS, "mono", 1.0)
MACHINE_CONFIG_END
@@ -2450,7 +2450,7 @@ static MACHINE_CONFIG_DERIVED( sfx, galaxian_base )
MCFG_SOUND_CONFIG(sfx_ay8910_interface)
/* DAC for the sample player */
- MCFG_SOUND_ADD("dac", DAC, 0)
+ MCFG_DAC_ADD("dac")
MCFG_SOUND_ROUTE(ALL_OUTPUTS, "mono", 1.0)
MACHINE_CONFIG_END
diff --git a/src/mame/drivers/galivan.c b/src/mame/drivers/galivan.c
index e99c134dbba..69794684a1f 100644
--- a/src/mame/drivers/galivan.c
+++ b/src/mame/drivers/galivan.c
@@ -115,8 +115,8 @@ ADDRESS_MAP_END
static ADDRESS_MAP_START( sound_io_map, AS_IO, 8, galivan_state )
ADDRESS_MAP_GLOBAL_MASK(0xff)
AM_RANGE(0x00, 0x01) AM_DEVWRITE_LEGACY("ymsnd", ym3526_w)
- AM_RANGE(0x02, 0x02) AM_DEVWRITE_LEGACY("dac1", dac_w)
- AM_RANGE(0x03, 0x03) AM_DEVWRITE_LEGACY("dac2", dac_w)
+ AM_RANGE(0x02, 0x02) AM_DEVWRITE("dac1", dac_device, write_unsigned8)
+ AM_RANGE(0x03, 0x03) AM_DEVWRITE("dac2", dac_device, write_unsigned8)
AM_RANGE(0x04, 0x04) AM_READ(soundlatch_clear_r)
AM_RANGE(0x06, 0x06) AM_READ(soundlatch_byte_r)
ADDRESS_MAP_END
@@ -470,10 +470,10 @@ static MACHINE_CONFIG_START( galivan, galivan_state )
MCFG_SOUND_ADD("ymsnd", YM3526, XTAL_8MHz/2)
MCFG_SOUND_ROUTE(ALL_OUTPUTS, "mono", 1.0)
- MCFG_SOUND_ADD("dac1", DAC, 0)
+ MCFG_DAC_ADD("dac1")
MCFG_SOUND_ROUTE(ALL_OUTPUTS, "mono", 0.50)
- MCFG_SOUND_ADD("dac2", DAC, 0)
+ MCFG_DAC_ADD("dac2")
MCFG_SOUND_ROUTE(ALL_OUTPUTS, "mono", 0.50)
MACHINE_CONFIG_END
@@ -512,10 +512,10 @@ static MACHINE_CONFIG_START( ninjemak, galivan_state )
MCFG_SOUND_ADD("ymsnd", YM3526, XTAL_8MHz/2)
MCFG_SOUND_ROUTE(ALL_OUTPUTS, "mono", 1.0)
- MCFG_SOUND_ADD("dac1", DAC, 0)
+ MCFG_DAC_ADD("dac1")
MCFG_SOUND_ROUTE(ALL_OUTPUTS, "mono", 0.50)
- MCFG_SOUND_ADD("dac2", DAC, 0)
+ MCFG_DAC_ADD("dac2")
MCFG_SOUND_ROUTE(ALL_OUTPUTS, "mono", 0.50)
MACHINE_CONFIG_END
diff --git a/src/mame/drivers/gei.c b/src/mame/drivers/gei.c
index 564b03b37a4..59d09ae51dc 100644
--- a/src/mame/drivers/gei.c
+++ b/src/mame/drivers/gei.c
@@ -221,7 +221,7 @@ WRITE8_MEMBER(gei_state::sound_w)
m_nmi_mask = data & 0x40;
/* bit 7 goes directly to the sound amplifier */
- dac_data_w(machine().device("dac"), ((data & 0x80) >> 7) * 255);
+ machine().device<dac_device>("dac")->write_unsigned8(((data & 0x80) >> 7) * 255);
}
WRITE8_MEMBER(gei_state::sound2_w)
@@ -238,7 +238,7 @@ WRITE8_MEMBER(gei_state::sound2_w)
set_led_status(machine(), 12,data & 0x20);
/* bit 7 goes directly to the sound amplifier */
- dac_data_w(machine().device("dac"), ((data & 0x80) >> 7) * 255);
+ machine().device<dac_device>("dac")->write(((data & 0x80) >> 7) * 255);
}
WRITE8_MEMBER(gei_state::lamps2_w)
@@ -1135,7 +1135,7 @@ static MACHINE_CONFIG_START( getrivia, gei_state )
/* sound hardware */
MCFG_SPEAKER_STANDARD_MONO("mono")
- MCFG_SOUND_ADD("dac", DAC, 0)
+ MCFG_DAC_ADD("dac")
MCFG_SOUND_ROUTE(ALL_OUTPUTS, "mono", 1.0)
MACHINE_CONFIG_END
diff --git a/src/mame/drivers/go2000.c b/src/mame/drivers/go2000.c
index 70cedcfe67a..be2f1796a5f 100644
--- a/src/mame/drivers/go2000.c
+++ b/src/mame/drivers/go2000.c
@@ -87,7 +87,7 @@ ADDRESS_MAP_END
static ADDRESS_MAP_START( go2000_sound_io, AS_IO, 8, go2000_state )
ADDRESS_MAP_GLOBAL_MASK(0xff)
AM_RANGE(0x00, 0x00) AM_READ(soundlatch_byte_r)
- AM_RANGE(0x00, 0x00) AM_DEVWRITE_LEGACY("dac1", dac_w)
+ AM_RANGE(0x00, 0x00) AM_DEVWRITE("dac1", dac_device, write_unsigned8)
AM_RANGE(0x03, 0x03) AM_WRITE(go2000_pcm_1_bankswitch_w)
ADDRESS_MAP_END
@@ -348,7 +348,7 @@ static MACHINE_CONFIG_START( go2000, go2000_state )
MCFG_SPEAKER_STANDARD_STEREO("lspeaker", "rspeaker")
- MCFG_SOUND_ADD("dac1", DAC, 0)
+ MCFG_DAC_ADD("dac1")
MCFG_SOUND_ROUTE(0, "lspeaker", 0.50)
MCFG_SOUND_ROUTE(1, "rspeaker", 0.50)
MACHINE_CONFIG_END
diff --git a/src/mame/drivers/harddriv.c b/src/mame/drivers/harddriv.c
index a8e7cc71d05..da7b759a92d 100644
--- a/src/mame/drivers/harddriv.c
+++ b/src/mame/drivers/harddriv.c
@@ -1446,10 +1446,10 @@ static MACHINE_CONFIG_FRAGMENT( ds4 )
MCFG_SPEAKER_STANDARD_STEREO("lspeaker", "rspeaker")
- MCFG_SOUND_ADD("dac1", DAC, 0)
+ MCFG_DAC_ADD("dac1")
MCFG_SOUND_ROUTE(ALL_OUTPUTS, "lspeaker", 1.0)
- MCFG_SOUND_ADD("dac2", DAC, 0)
+ MCFG_DAC_ADD("dac2")
MCFG_SOUND_ROUTE(ALL_OUTPUTS, "rspeaker", 1.0)
MACHINE_CONFIG_END
@@ -1508,7 +1508,7 @@ static MACHINE_CONFIG_FRAGMENT( driversnd )
/* sound hardware */
MCFG_SPEAKER_STANDARD_MONO("mono")
- MCFG_SOUND_ADD("dac", DAC, 0)
+ MCFG_DAC_ADD("dac")
MCFG_SOUND_ROUTE(ALL_OUTPUTS, "mono", 1.0)
MACHINE_CONFIG_END
diff --git a/src/mame/drivers/homedata.c b/src/mame/drivers/homedata.c
index 5ef4db891f3..c9d919141f2 100644
--- a/src/mame/drivers/homedata.c
+++ b/src/mame/drivers/homedata.c
@@ -307,7 +307,7 @@ WRITE8_MEMBER(homedata_state::mrokumei_sound_io_w)
switch (offset & 0xff)
{
case 0x40:
- dac_signed_data_w(m_dac, data);
+ m_dac->write_signed8(data);
break;
default:
logerror("%04x: I/O write to port %04x\n", cpu_get_pc(&space.device()), offset);
@@ -582,7 +582,7 @@ ADDRESS_MAP_END
static ADDRESS_MAP_START( reikaids_upd7807_io_map, AS_IO, 8, homedata_state )
AM_RANGE(UPD7807_PORTA, UPD7807_PORTA) AM_READWRITE(reikaids_upd7807_porta_r, reikaids_upd7807_porta_w)
- AM_RANGE(UPD7807_PORTB, UPD7807_PORTB) AM_DEVWRITE_LEGACY("dac", dac_signed_w)
+ AM_RANGE(UPD7807_PORTB, UPD7807_PORTB) AM_DEVWRITE("dac", dac_device, write_signed8)
AM_RANGE(UPD7807_PORTC, UPD7807_PORTC) AM_WRITE(reikaids_upd7807_portc_w)
AM_RANGE(UPD7807_PORTT, UPD7807_PORTT) AM_READ(reikaids_snd_command_r)
ADDRESS_MAP_END
@@ -617,7 +617,7 @@ ADDRESS_MAP_END
static ADDRESS_MAP_START( pteacher_upd7807_io_map, AS_IO, 8, homedata_state )
AM_RANGE(UPD7807_PORTA, UPD7807_PORTA) AM_READWRITE(pteacher_upd7807_porta_r, pteacher_upd7807_porta_w)
- AM_RANGE(UPD7807_PORTB, UPD7807_PORTB) AM_DEVWRITE_LEGACY("dac", dac_signed_w)
+ AM_RANGE(UPD7807_PORTB, UPD7807_PORTB) AM_DEVWRITE("dac", dac_device, write_signed8)
AM_RANGE(UPD7807_PORTC, UPD7807_PORTC) AM_READ_PORT("COIN") AM_WRITE(pteacher_upd7807_portc_w)
AM_RANGE(UPD7807_PORTT, UPD7807_PORTT) AM_READ(pteacher_keyboard_r)
ADDRESS_MAP_END
@@ -1149,7 +1149,7 @@ static MACHINE_START( homedata )
state->m_audiocpu = machine.device("audiocpu");
state->m_ym = machine.device("ymsnd");
state->m_sn = machine.device("snsnd");
- state->m_dac = machine.device("dac");
+ state->m_dac = machine.device<dac_device>("dac");
state->save_item(NAME(state->m_visible_page));
state->save_item(NAME(state->m_flipscreen));
@@ -1285,7 +1285,7 @@ static MACHINE_CONFIG_START( mrokumei, homedata_state )
MCFG_SOUND_ROUTE(ALL_OUTPUTS, "mono", 0.50)
MCFG_SOUND_CONFIG(psg_intf)
- MCFG_SOUND_ADD("dac", DAC, 0)
+ MCFG_DAC_ADD("dac")
MCFG_SOUND_ROUTE(ALL_OUTPUTS, "mono", 1.0)
MACHINE_CONFIG_END
@@ -1357,7 +1357,7 @@ static MACHINE_CONFIG_START( reikaids, homedata_state )
MCFG_SOUND_ROUTE(2, "mono", 0.25)
MCFG_SOUND_ROUTE(3, "mono", 1.0)
- MCFG_SOUND_ADD("dac", DAC, 0)
+ MCFG_DAC_ADD("dac")
MCFG_SOUND_ROUTE(ALL_OUTPUTS, "mono", 0.40)
MACHINE_CONFIG_END
@@ -1405,7 +1405,7 @@ static MACHINE_CONFIG_START( pteacher, homedata_state )
MCFG_SOUND_ROUTE(ALL_OUTPUTS, "mono", 0.50)
MCFG_SOUND_CONFIG(psg_intf)
- MCFG_SOUND_ADD("dac", DAC, 0)
+ MCFG_DAC_ADD("dac")
MCFG_SOUND_ROUTE(ALL_OUTPUTS, "mono", 1.0)
MACHINE_CONFIG_END
diff --git a/src/mame/drivers/hyhoo.c b/src/mame/drivers/hyhoo.c
index fc0514da4a9..39dbac5c77c 100644
--- a/src/mame/drivers/hyhoo.c
+++ b/src/mame/drivers/hyhoo.c
@@ -57,7 +57,7 @@ static ADDRESS_MAP_START( hyhoo_io_map, AS_IO, 8, hyhoo_state )
AM_RANGE(0xa0, 0xa0) AM_READWRITE_LEGACY(nb1413m3_inputport1_r, nb1413m3_inputportsel_w)
AM_RANGE(0xb0, 0xb0) AM_READWRITE_LEGACY(nb1413m3_inputport2_r, nb1413m3_sndrombank1_w)
AM_RANGE(0xc0, 0xcf) AM_WRITEONLY AM_SHARE("clut")
- AM_RANGE(0xd0, 0xd0) AM_READNOP AM_DEVWRITE_LEGACY("dac", dac_w) // unknown read
+ AM_RANGE(0xd0, 0xd0) AM_READNOP AM_DEVWRITE("dac", dac_device, write_unsigned8) // unknown read
AM_RANGE(0xe0, 0xe0) AM_WRITE(hyhoo_romsel_w)
AM_RANGE(0xe0, 0xe1) AM_READ_LEGACY(nb1413m3_gfxrom_r)
AM_RANGE(0xf0, 0xf0) AM_READ_LEGACY(nb1413m3_dipsw1_r)
@@ -266,7 +266,7 @@ static MACHINE_CONFIG_START( hyhoo, hyhoo_state )
MCFG_SOUND_CONFIG(ay8910_config)
MCFG_SOUND_ROUTE(ALL_OUTPUTS, "mono", 0.35)
- MCFG_SOUND_ADD("dac", DAC, 0)
+ MCFG_DAC_ADD("dac")
MCFG_SOUND_ROUTE(ALL_OUTPUTS, "mono", 0.50)
MACHINE_CONFIG_END
diff --git a/src/mame/drivers/hyperspt.c b/src/mame/drivers/hyperspt.c
index 13c3b0cb4b4..a14108ebf21 100644
--- a/src/mame/drivers/hyperspt.c
+++ b/src/mame/drivers/hyperspt.c
@@ -81,7 +81,7 @@ static ADDRESS_MAP_START( sound_map, AS_PROGRAM, 8, hyperspt_state )
AM_RANGE(0x8000, 0x8000) AM_READ_LEGACY(hyperspt_sh_timer_r)
AM_RANGE(0xa000, 0xa000) AM_DEVWRITE_LEGACY("vlm", vlm5030_data_w) /* speech data */
AM_RANGE(0xc000, 0xdfff) AM_DEVWRITE_LEGACY("vlm", hyperspt_sound_w) /* speech and output control */
- AM_RANGE(0xe000, 0xe000) AM_DEVWRITE_LEGACY("dac", dac_w)
+ AM_RANGE(0xe000, 0xe000) AM_DEVWRITE("dac", dac_device, write_unsigned8)
AM_RANGE(0xe001, 0xe001) AM_WRITE_LEGACY(konami_SN76496_latch_w) /* Loads the snd command into the snd latch */
AM_RANGE(0xe002, 0xe002) AM_DEVWRITE_LEGACY("snsnd", konami_SN76496_w) /* This address triggers the SN chip to read the data port. */
ADDRESS_MAP_END
@@ -93,7 +93,7 @@ static ADDRESS_MAP_START( soundb_map, AS_PROGRAM, 8, hyperspt_state )
AM_RANGE(0x8000, 0x8000) AM_READ_LEGACY(hyperspt_sh_timer_r)
AM_RANGE(0xa000, 0xa000) AM_NOP
AM_RANGE(0xc000, 0xdfff) AM_DEVWRITE_LEGACY("hyprolyb_adpcm", hyprolyb_adpcm_w) /* speech and output control */
- AM_RANGE(0xe000, 0xe000) AM_DEVWRITE_LEGACY("dac", dac_w)
+ AM_RANGE(0xe000, 0xe000) AM_DEVWRITE("dac", dac_device, write_unsigned8)
AM_RANGE(0xe001, 0xe001) AM_WRITE_LEGACY(konami_SN76496_latch_w) /* Loads the snd command into the snd latch */
AM_RANGE(0xe002, 0xe002) AM_DEVWRITE_LEGACY("snsnd", konami_SN76496_w) /* This address triggers the SN chip to read the data port. */
ADDRESS_MAP_END
@@ -312,7 +312,7 @@ static MACHINE_CONFIG_START( hyperspt, hyperspt_state )
MCFG_SOUND_ADD("trackfld_audio", TRACKFLD_AUDIO, 0)
- MCFG_SOUND_ADD("dac", DAC, 0)
+ MCFG_DAC_ADD("dac")
MCFG_SOUND_ROUTE(ALL_OUTPUTS, "mono", 0.80)
MCFG_SOUND_ADD("snsnd", SN76496, XTAL_14_31818MHz/8) /* verified on pcb */
diff --git a/src/mame/drivers/jaguar.c b/src/mame/drivers/jaguar.c
index 0fadcd490b3..678c3bf8f1b 100644
--- a/src/mame/drivers/jaguar.c
+++ b/src/mame/drivers/jaguar.c
@@ -1753,10 +1753,10 @@ static MACHINE_CONFIG_START( cojagr3k, cojag_state )
/* sound hardware */
MCFG_SPEAKER_STANDARD_STEREO("lspeaker", "rspeaker")
- MCFG_SOUND_ADD("dac1", DAC, 0)
+ MCFG_DAC_ADD("dac1")
MCFG_SOUND_ROUTE(ALL_OUTPUTS, "lspeaker", 1.0)
- MCFG_SOUND_ADD("dac2", DAC, 0)
+ MCFG_DAC_ADD("dac2")
MCFG_SOUND_ROUTE(ALL_OUTPUTS, "rspeaker", 1.0)
MACHINE_CONFIG_END
@@ -1800,9 +1800,9 @@ static MACHINE_CONFIG_START( jaguar, cojag_state )
/* sound hardware */
MCFG_SPEAKER_STANDARD_STEREO("lspeaker", "rspeaker")
- MCFG_SOUND_ADD("dac1", DAC, 0)
+ MCFG_DAC_ADD("dac1")
MCFG_SOUND_ROUTE(ALL_OUTPUTS, "lspeaker", 1.0)
- MCFG_SOUND_ADD("dac2", DAC, 0)
+ MCFG_DAC_ADD("dac2")
MCFG_SOUND_ROUTE(ALL_OUTPUTS, "rspeaker", 1.0)
/* quickload */
diff --git a/src/mame/drivers/jankenmn.c b/src/mame/drivers/jankenmn.c
index 853e937409c..ed5a7c308dc 100644
--- a/src/mame/drivers/jankenmn.c
+++ b/src/mame/drivers/jankenmn.c
@@ -325,7 +325,7 @@ static I8255_INTERFACE (ppi8255_intf_1)
{
/* (20-23) Mode 0 - Ports A, B, high C & low C set as output. */
DEVCB_NULL,
- DEVCB_DEVICE_HANDLER("dac", dac_w),
+ DEVCB_DEVICE_MEMBER("dac", dac_device, write_unsigned8),
DEVCB_NULL,
DEVCB_DRIVER_MEMBER(jankenmn_state,jankenmn_lamps1_w),
DEVCB_NULL,
@@ -354,7 +354,7 @@ static MACHINE_CONFIG_START( jankenmn, jankenmn_state )
/* sound hardware */
MCFG_SPEAKER_STANDARD_MONO("mono")
- MCFG_SOUND_ADD("dac", DAC, 0)
+ MCFG_DAC_ADD("dac")
MCFG_SOUND_ROUTE(ALL_OUTPUTS, "mono", 1.0)
MACHINE_CONFIG_END
diff --git a/src/mame/drivers/junofrst.c b/src/mame/drivers/junofrst.c
index 3e6315d2beb..f2b678be84d 100644
--- a/src/mame/drivers/junofrst.c
+++ b/src/mame/drivers/junofrst.c
@@ -327,7 +327,7 @@ ADDRESS_MAP_END
static ADDRESS_MAP_START( mcu_io_map, AS_IO, 8, junofrst_state )
AM_RANGE(0x00, 0xff) AM_READ(soundlatch2_byte_r)
- AM_RANGE(MCS48_PORT_P1, MCS48_PORT_P1) AM_DEVWRITE_LEGACY("dac", dac_w)
+ AM_RANGE(MCS48_PORT_P1, MCS48_PORT_P1) AM_DEVWRITE("dac", dac_device, write_unsigned8)
AM_RANGE(MCS48_PORT_P2, MCS48_PORT_P2) AM_WRITE(i8039_irqen_and_status_w)
ADDRESS_MAP_END
@@ -461,7 +461,7 @@ static MACHINE_CONFIG_START( junofrst, junofrst_state )
MCFG_SOUND_ROUTE(1, "filter.0.1", 0.30)
MCFG_SOUND_ROUTE(2, "filter.0.2", 0.30)
- MCFG_SOUND_ADD("dac", DAC, 0)
+ MCFG_DAC_ADD("dac")
MCFG_SOUND_ROUTE(ALL_OUTPUTS, "mono", 0.50)
MCFG_SOUND_ADD("filter.0.0", FILTER_RC, 0)
diff --git a/src/mame/drivers/kchamp.c b/src/mame/drivers/kchamp.c
index 476196f7549..544109c13d2 100644
--- a/src/mame/drivers/kchamp.c
+++ b/src/mame/drivers/kchamp.c
@@ -185,7 +185,7 @@ static ADDRESS_MAP_START( kchamp_sound_io_map, AS_IO, 8, kchamp_state )
ADDRESS_MAP_GLOBAL_MASK(0xff)
AM_RANGE(0x00, 0x01) AM_DEVWRITE_LEGACY("ay1", ay8910_data_address_w)
AM_RANGE(0x02, 0x03) AM_DEVWRITE_LEGACY("ay2", ay8910_data_address_w)
- AM_RANGE(0x04, 0x04) AM_DEVWRITE_LEGACY("dac", dac_w)
+ AM_RANGE(0x04, 0x04) AM_DEVWRITE("dac", dac_device, write_unsigned8)
AM_RANGE(0x05, 0x05) AM_WRITE(kc_sound_control_w)
AM_RANGE(0x06, 0x06) AM_READ(soundlatch_byte_r)
ADDRESS_MAP_END
@@ -501,7 +501,7 @@ static MACHINE_CONFIG_START( kchamp, kchamp_state )
MCFG_SOUND_ADD("ay2", AY8910, 1500000)
MCFG_SOUND_ROUTE(ALL_OUTPUTS, "mono", 0.30)
- MCFG_SOUND_ADD("dac", DAC, 0)
+ MCFG_DAC_ADD("dac")
MCFG_SOUND_ROUTE(ALL_OUTPUTS, "mono", 0.15) /* guess: using volume 0.50 makes the sound to clip a lot */
MACHINE_CONFIG_END
diff --git a/src/mame/drivers/kingobox.c b/src/mame/drivers/kingobox.c
index 779c488d81e..0f29e403c2c 100644
--- a/src/mame/drivers/kingobox.c
+++ b/src/mame/drivers/kingobox.c
@@ -90,7 +90,7 @@ ADDRESS_MAP_END
static ADDRESS_MAP_START( kingobox_sound_io_map, AS_IO, 8, kingofb_state )
ADDRESS_MAP_GLOBAL_MASK(0xff)
- AM_RANGE(0x00, 0x00) AM_DEVWRITE_LEGACY("dac", dac_w)
+ AM_RANGE(0x00, 0x00) AM_DEVWRITE("dac", dac_device, write_unsigned8)
AM_RANGE(0x08, 0x08) AM_DEVREADWRITE_LEGACY("aysnd", ay8910_r, ay8910_data_w)
AM_RANGE(0x0c, 0x0c) AM_DEVWRITE_LEGACY("aysnd", ay8910_address_w)
ADDRESS_MAP_END
@@ -135,7 +135,7 @@ ADDRESS_MAP_END
static ADDRESS_MAP_START( ringking_sound_io_map, AS_IO, 8, kingofb_state )
ADDRESS_MAP_GLOBAL_MASK(0xff)
- AM_RANGE(0x00, 0x00) AM_DEVWRITE_LEGACY("dac", dac_w)
+ AM_RANGE(0x00, 0x00) AM_DEVWRITE("dac", dac_device, write_unsigned8)
AM_RANGE(0x02, 0x02) AM_DEVREAD_LEGACY("aysnd", ay8910_r)
AM_RANGE(0x02, 0x03) AM_DEVWRITE_LEGACY("aysnd", ay8910_data_address_w)
ADDRESS_MAP_END
@@ -516,7 +516,7 @@ static MACHINE_CONFIG_START( kingofb, kingofb_state )
MCFG_SOUND_CONFIG(ay8910_config)
MCFG_SOUND_ROUTE(ALL_OUTPUTS, "mono", 0.25)
- MCFG_SOUND_ADD("dac", DAC, 0)
+ MCFG_DAC_ADD("dac")
MCFG_SOUND_ROUTE(ALL_OUTPUTS, "mono", 0.25)
MACHINE_CONFIG_END
@@ -568,7 +568,7 @@ static MACHINE_CONFIG_START( ringking, kingofb_state )
MCFG_SOUND_CONFIG(ay8910_config)
MCFG_SOUND_ROUTE(ALL_OUTPUTS, "mono", 0.25)
- MCFG_SOUND_ADD("dac", DAC, 0)
+ MCFG_DAC_ADD("dac")
MCFG_SOUND_ROUTE(ALL_OUTPUTS, "mono", 0.25)
MACHINE_CONFIG_END
diff --git a/src/mame/drivers/ksayakyu.c b/src/mame/drivers/ksayakyu.c
index b41acadc402..39d6e4f3757 100644
--- a/src/mame/drivers/ksayakyu.c
+++ b/src/mame/drivers/ksayakyu.c
@@ -125,7 +125,7 @@ static ADDRESS_MAP_START( soundcpu_map, AS_PROGRAM, 8, ksayakyu_state )
AM_RANGE(0xa001, 0xa001) AM_DEVREAD_LEGACY("ay1", ay8910_r)
AM_RANGE(0xa002, 0xa003) AM_DEVWRITE_LEGACY("ay1", ay8910_data_address_w)
AM_RANGE(0xa006, 0xa007) AM_DEVWRITE_LEGACY("ay2", ay8910_data_address_w)
- AM_RANGE(0xa008, 0xa008) AM_DEVWRITE_LEGACY("dac", dac_w)
+ AM_RANGE(0xa008, 0xa008) AM_DEVWRITE("dac", dac_device, write_unsigned8)
AM_RANGE(0xa00c, 0xa00c) AM_WRITE(tomaincpu_w)
AM_RANGE(0xa010, 0xa010) AM_WRITENOP //a timer of some sort?
ADDRESS_MAP_END
@@ -309,7 +309,7 @@ static MACHINE_CONFIG_START( ksayakyu, ksayakyu_state )
MCFG_SOUND_CONFIG(ay8910_interface_2)
MCFG_SOUND_ROUTE(ALL_OUTPUTS, "mono", 0.25)
- MCFG_SOUND_ADD("dac", DAC, 0)
+ MCFG_DAC_ADD("dac")
MCFG_SOUND_ROUTE(ALL_OUTPUTS, "mono", 0.20)
MACHINE_CONFIG_END
diff --git a/src/mame/drivers/lasso.c b/src/mame/drivers/lasso.c
index 5a6b1f02823..e5b9b94cbcf 100644
--- a/src/mame/drivers/lasso.c
+++ b/src/mame/drivers/lasso.c
@@ -166,7 +166,7 @@ static ADDRESS_MAP_START( wwjgtin_audio_map, AS_PROGRAM, 8, lasso_state )
AM_RANGE(0x4000, 0x7fff) AM_MIRROR(0x8000) AM_ROM
AM_RANGE(0xb000, 0xb000) AM_WRITEONLY AM_SHARE("chip_data")
AM_RANGE(0xb001, 0xb001) AM_WRITE(sound_select_w)
- AM_RANGE(0xb003, 0xb003) AM_DEVWRITE_LEGACY("dac", dac_w)
+ AM_RANGE(0xb003, 0xb003) AM_DEVWRITE("dac", dac_device, write_unsigned8)
AM_RANGE(0xb004, 0xb004) AM_READ(sound_status_r)
AM_RANGE(0xb005, 0xb005) AM_READ(soundlatch_byte_r)
ADDRESS_MAP_END
@@ -581,7 +581,7 @@ static MACHINE_CONFIG_DERIVED( wwjgtin, base )
MCFG_VIDEO_START(wwjgtin)
/* sound hardware */
- MCFG_SOUND_ADD("dac", DAC, 0)
+ MCFG_DAC_ADD("dac")
MCFG_SOUND_ROUTE(ALL_OUTPUTS, "mono", 1.0)
MACHINE_CONFIG_END
diff --git a/src/mame/drivers/lazercmd.c b/src/mame/drivers/lazercmd.c
index f34c4b816f5..794204fec23 100644
--- a/src/mame/drivers/lazercmd.c
+++ b/src/mame/drivers/lazercmd.c
@@ -302,9 +302,9 @@ WRITE8_MEMBER(lazercmd_state::lazercmd_hardware_w)
case 0: /* audio channels */
m_dac_data = (data & 0x80) ^ ((data & 0x40) << 1) ^ ((data & 0x20) << 2) ^ ((data & 0x10) << 3);
if (m_dac_data)
- dac_data_w(m_dac, 0xff);
+ m_dac->write_unsigned8(0xff);
else
- dac_data_w(m_dac, 0);
+ m_dac->write_unsigned8(0);
break;
case 1: /* marker Y position */
m_marker_y = data;
@@ -328,9 +328,9 @@ WRITE8_MEMBER(lazercmd_state::medlanes_hardware_w)
/* at the moment they are routed through the dac */
m_dac_data = ((data & 0x20) << 2) ^ ((data & 0x10) << 3);
if (m_dac_data)
- dac_data_w(m_dac, 0xff);
+ m_dac->write_unsigned8(0xff);
else
- dac_data_w(m_dac, 0);
+ m_dac->write_unsigned8(0);
break;
case 1: /* marker Y position */
m_marker_y = data;
@@ -354,9 +354,9 @@ WRITE8_MEMBER(lazercmd_state::bbonk_hardware_w)
/* at the moment they are routed through the dac */
m_dac_data = ((data & 0x20) << 2) ^ ((data & 0x10) << 3);
if (m_dac_data)
- dac_data_w(m_dac, 0xff);
+ m_dac->write_unsigned8(0xff);
else
- dac_data_w(m_dac, 0);
+ m_dac->write_unsigned8(0);
break;
case 3: /* D4 clears coin detected and D0 toggles on attract mode */
break;
@@ -606,7 +606,7 @@ static MACHINE_START( lazercmd )
{
lazercmd_state *state = machine.driver_data<lazercmd_state>();
- state->m_dac = machine.device("dac");
+ state->m_dac = machine.device<dac_device>("dac");
state->save_item(NAME(state->m_marker_x));
state->save_item(NAME(state->m_marker_y));
@@ -659,7 +659,7 @@ static MACHINE_CONFIG_START( lazercmd, lazercmd_state )
/* sound hardware */
MCFG_SPEAKER_STANDARD_MONO("mono")
- MCFG_SOUND_ADD("dac", DAC, 0)
+ MCFG_DAC_ADD("dac")
MCFG_SOUND_ROUTE(ALL_OUTPUTS, "mono", 1.0)
MACHINE_CONFIG_END
@@ -696,7 +696,7 @@ static MACHINE_CONFIG_START( medlanes, lazercmd_state )
/* sound hardware */
MCFG_SPEAKER_STANDARD_MONO("mono")
- MCFG_SOUND_ADD("dac", DAC, 0)
+ MCFG_DAC_ADD("dac")
MCFG_SOUND_ROUTE(ALL_OUTPUTS, "mono", 1.0)
MACHINE_CONFIG_END
@@ -733,7 +733,7 @@ static MACHINE_CONFIG_START( bbonk, lazercmd_state )
/* sound hardware */
MCFG_SPEAKER_STANDARD_MONO("mono")
- MCFG_SOUND_ADD("dac", DAC, 0)
+ MCFG_DAC_ADD("dac")
MCFG_SOUND_ROUTE(ALL_OUTPUTS, "mono", 1.0)
MACHINE_CONFIG_END
diff --git a/src/mame/drivers/littlerb.c b/src/mame/drivers/littlerb.c
index ab92a420a9e..7a009c0cf9c 100644
--- a/src/mame/drivers/littlerb.c
+++ b/src/mame/drivers/littlerb.c
@@ -506,9 +506,9 @@ static TIMER_DEVICE_CALLBACK( littlerb_scanline )
UINT8 *sample_rom = state->memregion("samples")->base();
res = sample_rom[state->m_sound_pointer_l|(state->m_sound_index_l<<10)|0x40000];
- dac_signed_w(state->m_dacl, 0, res);
+ state->m_dacl->write_signed8(res);
res = sample_rom[state->m_sound_pointer_r|(state->m_sound_index_r<<10)|0x00000];
- dac_signed_w(state->m_dacr, 0, res);
+ state->m_dacr->write_signed8(res);
state->m_sound_pointer_l++;
state->m_sound_pointer_l&=0x3ff;
state->m_sound_pointer_r++;
@@ -542,10 +542,10 @@ static MACHINE_CONFIG_START( littlerb, littlerb_state )
// MCFG_PALETTE_INIT(littlerb)
MCFG_SPEAKER_STANDARD_STEREO("lspeaker","rspeaker")
- MCFG_SOUND_ADD("dacl", DAC, 0)
+ MCFG_DAC_ADD("dacl")
MCFG_SOUND_ROUTE(ALL_OUTPUTS, "lspeaker", 0.50)
- MCFG_SOUND_ADD("dacr", DAC, 0)
+ MCFG_DAC_ADD("dacr")
MCFG_SOUND_ROUTE(ALL_OUTPUTS, "rspeaker", 0.50)
MACHINE_CONFIG_END
diff --git a/src/mame/drivers/looping.c b/src/mame/drivers/looping.c
index 2102051cea1..f0a67655459 100644
--- a/src/mame/drivers/looping.c
+++ b/src/mame/drivers/looping.c
@@ -380,7 +380,7 @@ WRITE8_MEMBER(looping_state::looping_soundlatch_w)
WRITE8_MEMBER(looping_state::looping_sound_sw)
{
- device_t *device = machine().device("dac");
+ dac_device *device = machine().device<dac_device>("dac");
/* this can be improved by adding the missing signals for decay etc. (see schematics)
0001 = ASOV
@@ -393,7 +393,7 @@ WRITE8_MEMBER(looping_state::looping_sound_sw)
*/
m_sound[offset + 1] = data ^ 1;
- dac_data_w(device, ((m_sound[2] << 7) + (m_sound[3] << 6)) * m_sound[7]);
+ device->write_unsigned8(((m_sound[2] << 7) + (m_sound[3] << 6)) * m_sound[7]);
}
@@ -676,7 +676,7 @@ static MACHINE_CONFIG_START( looping, looping_state )
MCFG_SOUND_CONFIG(tms5220_config)
MCFG_SOUND_ROUTE(ALL_OUTPUTS, "mono", 0.50)
- MCFG_SOUND_ADD("dac", DAC, 0)
+ MCFG_DAC_ADD("dac")
MCFG_SOUND_ROUTE(ALL_OUTPUTS, "mono", 0.30)
MACHINE_CONFIG_END
diff --git a/src/mame/drivers/m72.c b/src/mame/drivers/m72.c
index 45fef7f2dc8..8499cf51848 100644
--- a/src/mame/drivers/m72.c
+++ b/src/mame/drivers/m72.c
@@ -346,9 +346,9 @@ WRITE8_MEMBER(m72_state::m72_mcu_high_w)
WRITE8_MEMBER(m72_state::m72_snd_cpu_sample_w)
{
- device_t *device = machine().device("dac");
- //dac_signed_data_w(device, data);
- dac_data_w(device, data);
+ dac_device *device = machine().device<dac_device>("dac");
+ //device->write_signed8(data);
+ device->write_unsigned8(data);
}
READ8_MEMBER(m72_state::m72_snd_cpu_sample_r)
@@ -1851,7 +1851,7 @@ static MACHINE_CONFIG_START( m72_base, m72_state )
MCFG_SOUND_ROUTE(0, "lspeaker", 1.0)
MCFG_SOUND_ROUTE(1, "rspeaker", 1.0)
- MCFG_SOUND_ADD("dac", DAC, 0)
+ MCFG_DAC_ADD("dac")
MCFG_SOUND_ROUTE(ALL_OUTPUTS, "lspeaker", 0.40)
MCFG_SOUND_ROUTE(ALL_OUTPUTS, "rspeaker", 0.40)
MACHINE_CONFIG_END
@@ -1943,7 +1943,7 @@ static MACHINE_CONFIG_START( xmultipl, m72_state )
MCFG_SOUND_ROUTE(0, "lspeaker", 1.0)
MCFG_SOUND_ROUTE(1, "rspeaker", 1.0)
- MCFG_SOUND_ADD("dac", DAC, 0)
+ MCFG_DAC_ADD("dac")
MCFG_SOUND_ROUTE(ALL_OUTPUTS, "lspeaker", 0.40)
MCFG_SOUND_ROUTE(ALL_OUTPUTS, "rspeaker", 0.40)
MACHINE_CONFIG_END
@@ -1984,7 +1984,7 @@ static MACHINE_CONFIG_START( xmultiplm72, m72_state )
MCFG_SOUND_ROUTE(0, "lspeaker", 1.0)
MCFG_SOUND_ROUTE(1, "rspeaker", 1.0)
- MCFG_SOUND_ADD("dac", DAC, 0)
+ MCFG_DAC_ADD("dac")
MCFG_SOUND_ROUTE(ALL_OUTPUTS, "lspeaker", 0.40)
MCFG_SOUND_ROUTE(ALL_OUTPUTS, "rspeaker", 0.40)
MACHINE_CONFIG_END
@@ -2025,7 +2025,7 @@ static MACHINE_CONFIG_START( dbreed, m72_state )
MCFG_SOUND_ROUTE(0, "lspeaker", 1.0)
MCFG_SOUND_ROUTE(1, "rspeaker", 1.0)
- MCFG_SOUND_ADD("dac", DAC, 0)
+ MCFG_DAC_ADD("dac")
MCFG_SOUND_ROUTE(ALL_OUTPUTS, "lspeaker", 0.40)
MCFG_SOUND_ROUTE(ALL_OUTPUTS, "rspeaker", 0.40)
MACHINE_CONFIG_END
@@ -2066,7 +2066,7 @@ static MACHINE_CONFIG_START( dbreedm72, m72_state )
MCFG_SOUND_ROUTE(0, "lspeaker", 1.0)
MCFG_SOUND_ROUTE(1, "rspeaker", 1.0)
- MCFG_SOUND_ADD("dac", DAC, 0)
+ MCFG_DAC_ADD("dac")
MCFG_SOUND_ROUTE(ALL_OUTPUTS, "lspeaker", 0.40)
MCFG_SOUND_ROUTE(ALL_OUTPUTS, "rspeaker", 0.40)
MACHINE_CONFIG_END
@@ -2107,7 +2107,7 @@ static MACHINE_CONFIG_START( rtype2, m72_state )
MCFG_SOUND_ROUTE(0, "lspeaker", 1.0)
MCFG_SOUND_ROUTE(1, "rspeaker", 1.0)
- MCFG_SOUND_ADD("dac", DAC, 0)
+ MCFG_DAC_ADD("dac")
MCFG_SOUND_ROUTE(ALL_OUTPUTS, "lspeaker", 0.40)
MCFG_SOUND_ROUTE(ALL_OUTPUTS, "rspeaker", 0.40)
MACHINE_CONFIG_END
@@ -2148,7 +2148,7 @@ static MACHINE_CONFIG_START( majtitle, m72_state )
MCFG_SOUND_ROUTE(0, "lspeaker", 1.0)
MCFG_SOUND_ROUTE(1, "rspeaker", 1.0)
- MCFG_SOUND_ADD("dac", DAC, 0)
+ MCFG_DAC_ADD("dac")
MCFG_SOUND_ROUTE(ALL_OUTPUTS, "lspeaker", 0.40)
MCFG_SOUND_ROUTE(ALL_OUTPUTS, "rspeaker", 0.40)
MACHINE_CONFIG_END
@@ -2189,7 +2189,7 @@ static MACHINE_CONFIG_START( hharry, m72_state )
MCFG_SOUND_ROUTE(0, "lspeaker", 1.0)
MCFG_SOUND_ROUTE(1, "rspeaker", 1.0)
- MCFG_SOUND_ADD("dac", DAC, 0)
+ MCFG_DAC_ADD("dac")
MCFG_SOUND_ROUTE(ALL_OUTPUTS, "lspeaker", 0.40)
MCFG_SOUND_ROUTE(ALL_OUTPUTS, "rspeaker", 0.40)
MACHINE_CONFIG_END
@@ -2230,7 +2230,7 @@ static MACHINE_CONFIG_START( hharryu, m72_state )
MCFG_SOUND_ROUTE(0, "lspeaker", 1.0)
MCFG_SOUND_ROUTE(1, "rspeaker", 1.0)
- MCFG_SOUND_ADD("dac", DAC, 0)
+ MCFG_DAC_ADD("dac")
MCFG_SOUND_ROUTE(ALL_OUTPUTS, "lspeaker", 0.40)
MCFG_SOUND_ROUTE(ALL_OUTPUTS, "rspeaker", 0.40)
MACHINE_CONFIG_END
@@ -2271,7 +2271,7 @@ static MACHINE_CONFIG_START( dkgenm72, m72_state )
MCFG_SOUND_ROUTE(0, "lspeaker", 1.0)
MCFG_SOUND_ROUTE(1, "rspeaker", 1.0)
- MCFG_SOUND_ADD("dac", DAC, 0)
+ MCFG_DAC_ADD("dac")
MCFG_SOUND_ROUTE(ALL_OUTPUTS, "lspeaker", 0.40)
MCFG_SOUND_ROUTE(ALL_OUTPUTS, "rspeaker", 0.40)
MACHINE_CONFIG_END
@@ -2312,7 +2312,7 @@ static MACHINE_CONFIG_START( poundfor, m72_state )
MCFG_SOUND_ROUTE(0, "lspeaker", 1.0)
MCFG_SOUND_ROUTE(1, "rspeaker", 1.0)
- MCFG_SOUND_ADD("dac", DAC, 0)
+ MCFG_DAC_ADD("dac")
MCFG_SOUND_ROUTE(ALL_OUTPUTS, "lspeaker", 0.40)
MCFG_SOUND_ROUTE(ALL_OUTPUTS, "rspeaker", 0.40)
MACHINE_CONFIG_END
@@ -2353,7 +2353,7 @@ static MACHINE_CONFIG_START( cosmccop, m72_state )
MCFG_SOUND_ROUTE(0, "lspeaker", 1.0)
MCFG_SOUND_ROUTE(1, "rspeaker", 1.0)
- MCFG_SOUND_ADD("dac", DAC, 0)
+ MCFG_DAC_ADD("dac")
MCFG_SOUND_ROUTE(ALL_OUTPUTS, "lspeaker", 0.40)
MCFG_SOUND_ROUTE(ALL_OUTPUTS, "rspeaker", 0.40)
MACHINE_CONFIG_END
diff --git a/src/mame/drivers/m90.c b/src/mame/drivers/m90.c
index 4d36d2e714d..bfe5cc66336 100644
--- a/src/mame/drivers/m90.c
+++ b/src/mame/drivers/m90.c
@@ -142,7 +142,7 @@ static ADDRESS_MAP_START( dynablsb_sound_cpu_io_map, AS_IO, 8, m90_state )
ADDRESS_MAP_GLOBAL_MASK(0xff)
AM_RANGE(0x00, 0x01) AM_DEVREADWRITE_LEGACY("ymsnd", ym2151_r, ym2151_w)
AM_RANGE(0x80, 0x80) AM_READ(soundlatch_byte_r)
- AM_RANGE(0x82, 0x82) AM_DEVWRITE_LEGACY("dac", dac_signed_w)
+ AM_RANGE(0x82, 0x82) AM_DEVWRITE("dac", dac_device, write_signed8)
ADDRESS_MAP_END
static ADDRESS_MAP_START( m99_sound_cpu_io_map, AS_IO, 8, m90_state )
@@ -749,7 +749,7 @@ static MACHINE_CONFIG_START( m90, m90_state )
MCFG_SOUND_ROUTE(0, "mono", 0.15)
MCFG_SOUND_ROUTE(1, "mono", 0.15)
- MCFG_SOUND_ADD("dac", DAC, 0)
+ MCFG_DAC_ADD("dac")
MCFG_SOUND_ROUTE(ALL_OUTPUTS, "mono", 0.10)
MACHINE_CONFIG_END
diff --git a/src/mame/drivers/magicfly.c b/src/mame/drivers/magicfly.c
index 433c736b45e..7aabc8b28be 100644
--- a/src/mame/drivers/magicfly.c
+++ b/src/mame/drivers/magicfly.c
@@ -583,7 +583,7 @@ WRITE8_MEMBER(magicfly_state::mux_port_w)
*/
m_input_selector = data & 0x0f; /* Input Selector */
- dac_data_w(machine().device("dac"), data & 0x80); /* Sound DAC */
+ machine().device<dac_device>("dac")->write_unsigned8(data & 0x80); /* Sound DAC */
coin_counter_w(machine(), 0, data & 0x40); /* Coin1 */
coin_counter_w(machine(), 1, data & 0x10); /* Coin2 */
@@ -825,7 +825,7 @@ static MACHINE_CONFIG_START( magicfly, magicfly_state )
/* sound hardware */
MCFG_SPEAKER_STANDARD_MONO("mono")
- MCFG_SOUND_ADD("dac", DAC, 0)
+ MCFG_DAC_ADD("dac")
MCFG_SOUND_ROUTE(ALL_OUTPUTS, "mono", 0.50)
MACHINE_CONFIG_END
diff --git a/src/mame/drivers/mappy.c b/src/mame/drivers/mappy.c
index 9f312422873..2907a965bf0 100644
--- a/src/mame/drivers/mappy.c
+++ b/src/mame/drivers/mappy.c
@@ -1694,7 +1694,7 @@ static MACHINE_CONFIG_DERIVED( grobda, superpac )
MCFG_NAMCO56XX_ADD("namcoio_2", intf1)
/* sound hardware */
- MCFG_SOUND_ADD("dac", DAC, 0)
+ MCFG_DAC_ADD("dac")
MCFG_SOUND_ROUTE(ALL_OUTPUTS, "mono", 0.55)
MACHINE_CONFIG_END
@@ -2254,8 +2254,8 @@ ROM_END
WRITE8_MEMBER(mappy_state::grobda_DAC_w)
{
- device_t *device = machine().device("dac");
- dac_data_w(device, (data << 4) | data);
+ dac_device *device = machine().device<dac_device>("dac");
+ device->write_unsigned8((data << 4) | data);
}
static DRIVER_INIT( grobda )
diff --git a/src/mame/drivers/matmania.c b/src/mame/drivers/matmania.c
index 59169f01ef9..2743ee52480 100644
--- a/src/mame/drivers/matmania.c
+++ b/src/mame/drivers/matmania.c
@@ -104,7 +104,7 @@ static ADDRESS_MAP_START( matmania_sound_map, AS_PROGRAM, 8, matmania_state )
AM_RANGE(0x0000, 0x01ff) AM_RAM
AM_RANGE(0x2000, 0x2001) AM_DEVWRITE_LEGACY("ay1", ay8910_data_address_w)
AM_RANGE(0x2002, 0x2003) AM_DEVWRITE_LEGACY("ay2", ay8910_data_address_w)
- AM_RANGE(0x2004, 0x2004) AM_DEVWRITE_LEGACY("dac", dac_signed_w)
+ AM_RANGE(0x2004, 0x2004) AM_DEVWRITE("dac", dac_device, write_signed8)
AM_RANGE(0x2007, 0x2007) AM_READ(soundlatch_byte_r)
AM_RANGE(0x8000, 0xffff) AM_ROM
ADDRESS_MAP_END
@@ -112,7 +112,7 @@ ADDRESS_MAP_END
static ADDRESS_MAP_START( maniach_sound_map, AS_PROGRAM, 8, matmania_state )
AM_RANGE(0x0000, 0x0fff) AM_RAM
AM_RANGE(0x2000, 0x2001) AM_DEVWRITE_LEGACY("ymsnd", ym3526_w)
- AM_RANGE(0x2002, 0x2002) AM_DEVWRITE_LEGACY("dac", dac_signed_w)
+ AM_RANGE(0x2002, 0x2002) AM_DEVWRITE("dac", dac_device, write_signed8)
AM_RANGE(0x2004, 0x2004) AM_READ(soundlatch_byte_r)
AM_RANGE(0x4000, 0xffff) AM_ROM
ADDRESS_MAP_END
@@ -343,7 +343,7 @@ static MACHINE_CONFIG_START( matmania, matmania_state )
MCFG_SOUND_ADD("ay2", AY8910, 1500000)
MCFG_SOUND_ROUTE(ALL_OUTPUTS, "mono", 0.30)
- MCFG_SOUND_ADD("dac", DAC, 0)
+ MCFG_DAC_ADD("dac")
MCFG_SOUND_ROUTE(ALL_OUTPUTS, "mono", 0.40)
MACHINE_CONFIG_END
@@ -434,7 +434,7 @@ static MACHINE_CONFIG_START( maniach, matmania_state )
MCFG_SOUND_CONFIG(ym3526_config)
MCFG_SOUND_ROUTE(ALL_OUTPUTS, "mono", 1.0)
- MCFG_SOUND_ADD("dac", DAC, 0)
+ MCFG_DAC_ADD("dac")
MCFG_SOUND_ROUTE(ALL_OUTPUTS, "mono", 0.40)
MACHINE_CONFIG_END
diff --git a/src/mame/drivers/meadows.c b/src/mame/drivers/meadows.c
index dc1a153008f..96ec7e7b0c7 100644
--- a/src/mame/drivers/meadows.c
+++ b/src/mame/drivers/meadows.c
@@ -669,7 +669,7 @@ static MACHINE_CONFIG_START( meadows, meadows_state )
/* audio hardware */
MCFG_SPEAKER_STANDARD_MONO("mono")
- MCFG_SOUND_ADD("dac", DAC, 0)
+ MCFG_DAC_ADD("dac")
MCFG_SOUND_ROUTE(ALL_OUTPUTS, "mono", 1.0)
MCFG_SAMPLES_ADD("samples", meadows_samples_interface)
@@ -730,7 +730,7 @@ static MACHINE_CONFIG_START( bowl3d, meadows_state )
/* audio hardware */
MCFG_SPEAKER_STANDARD_MONO("mono")
- MCFG_SOUND_ADD("dac", DAC, 0)
+ MCFG_DAC_ADD("dac")
MCFG_SOUND_ROUTE(ALL_OUTPUTS, "mono", 1.0)
MCFG_SAMPLES_ADD("samples", meadows_samples_interface)
diff --git a/src/mame/drivers/megazone.c b/src/mame/drivers/megazone.c
index db727e883f4..a603dcc9ffa 100644
--- a/src/mame/drivers/megazone.c
+++ b/src/mame/drivers/megazone.c
@@ -124,7 +124,7 @@ ADDRESS_MAP_END
static ADDRESS_MAP_START( megazone_i8039_io_map, AS_IO, 8, megazone_state )
AM_RANGE(0x00, 0xff) AM_READ(soundlatch_byte_r)
- AM_RANGE(MCS48_PORT_P1, MCS48_PORT_P1) AM_DEVWRITE_LEGACY("dac", dac_w)
+ AM_RANGE(MCS48_PORT_P1, MCS48_PORT_P1) AM_DEVWRITE("dac", dac_device, write_unsigned8)
AM_RANGE(MCS48_PORT_P2, MCS48_PORT_P2) AM_WRITE(i8039_irqen_and_status_w)
ADDRESS_MAP_END
@@ -298,7 +298,7 @@ static MACHINE_CONFIG_START( megazone, megazone_state )
MCFG_SOUND_ROUTE(1, "filter.0.1", 0.30)
MCFG_SOUND_ROUTE(2, "filter.0.2", 0.30)
- MCFG_SOUND_ADD("dac", DAC, 0)
+ MCFG_DAC_ADD("dac")
MCFG_SOUND_ROUTE(ALL_OUTPUTS, "mono", 0.50)
MCFG_SOUND_ADD("filter.0.0", FILTER_RC, 0)
diff --git a/src/mame/drivers/meyc8080.c b/src/mame/drivers/meyc8080.c
index d9107b637a5..592d974e4d9 100644
--- a/src/mame/drivers/meyc8080.c
+++ b/src/mame/drivers/meyc8080.c
@@ -271,29 +271,29 @@ WRITE8_MEMBER(meyc8080_state::counters_w)
WRITE8_MEMBER(meyc8080_state::meyc8080_dac_1_w)
{
- device_t *device = machine().device("dac");
- dac_data_w(device, 0x00);
+ dac_device *device = machine().device<dac_device>("dac");
+ device->write_unsigned8(0x00);
}
WRITE8_MEMBER(meyc8080_state::meyc8080_dac_2_w)
{
- device_t *device = machine().device("dac");
- dac_data_w(device, 0x55);
+ dac_device *device = machine().device<dac_device>("dac");
+ device->write_unsigned8(0x55);
}
WRITE8_MEMBER(meyc8080_state::meyc8080_dac_3_w)
{
- device_t *device = machine().device("dac");
- dac_data_w(device, 0xaa);
+ dac_device *device = machine().device<dac_device>("dac");
+ device->write_unsigned8(0xaa);
}
WRITE8_MEMBER(meyc8080_state::meyc8080_dac_4_w)
{
- device_t *device = machine().device("dac");
- dac_data_w(device, 0xff);
+ dac_device *device = machine().device<dac_device>("dac");
+ device->write_unsigned8(0xff);
}
@@ -592,7 +592,7 @@ static MACHINE_CONFIG_START( meyc8080, meyc8080_state )
/* audio hardware */
MCFG_SPEAKER_STANDARD_MONO("mono")
- MCFG_SOUND_ADD("dac", DAC, 0)
+ MCFG_DAC_ADD("dac")
MCFG_SOUND_ROUTE(ALL_OUTPUTS, "mono", 1.0)
MACHINE_CONFIG_END
diff --git a/src/mame/drivers/meyc8088.c b/src/mame/drivers/meyc8088.c
index fa5d9cd1120..84a5d642bd2 100644
--- a/src/mame/drivers/meyc8088.c
+++ b/src/mame/drivers/meyc8088.c
@@ -276,7 +276,7 @@ WRITE8_MEMBER(meyc8088_state::meyc8088_common_w)
WRITE_LINE_MEMBER(meyc8088_state::meyc8088_sound_out)
{
- dac_signed_w(machine().device("dac"), 0, state ? 0x7f : 0);
+ machine().device<dac_device>("dac")->write_signed8(state ? 0x7f : 0);
}
@@ -394,7 +394,7 @@ static MACHINE_CONFIG_START( meyc8088, meyc8088_state )
/* sound hardware */
MCFG_SPEAKER_STANDARD_MONO("mono")
- MCFG_SOUND_ADD("dac", DAC, 0)
+ MCFG_DAC_ADD("dac")
MCFG_SOUND_ROUTE(ALL_OUTPUTS, "mono", 0.25)
MACHINE_CONFIG_END
diff --git a/src/mame/drivers/mjsister.c b/src/mame/drivers/mjsister.c
index 81fa6d61b4f..632bfde1968 100644
--- a/src/mame/drivers/mjsister.c
+++ b/src/mame/drivers/mjsister.c
@@ -44,7 +44,7 @@ public:
/* devices */
device_t *m_maincpu;
- device_t *m_dac;
+ dac_device *m_dac;
/* memory */
UINT8 m_videoram0[0x8000];
@@ -168,7 +168,7 @@ static TIMER_CALLBACK( dac_callback )
mjsister_state *state = machine.driver_data<mjsister_state>();
UINT8 *DACROM = state->memregion("samples")->base();
- dac_data_w(state->m_dac, DACROM[(state->m_dac_bank * 0x10000 + state->m_dac_adr++) & 0x1ffff]);
+ state->m_dac->write_unsigned8(DACROM[(state->m_dac_bank * 0x10000 + state->m_dac_adr++) & 0x1ffff]);
if (((state->m_dac_adr & 0xff00 ) >> 8) != state->m_dac_adr_e)
machine.scheduler().timer_set(attotime::from_hz(MCLK) * 1024, FUNC(dac_callback));
@@ -454,7 +454,7 @@ static MACHINE_START( mjsister )
state->membank("bank1")->configure_entries(0, 4, &ROM[0x10000], 0x8000);
state->m_maincpu = machine.device("maincpu");
- state->m_dac = machine.device("dac");
+ state->m_dac = machine.device<dac_device>("dac");
state->save_item(NAME(state->m_dac_busy));
state->save_item(NAME(state->m_flip_screen));
@@ -524,7 +524,7 @@ static MACHINE_CONFIG_START( mjsister, mjsister_state )
MCFG_SOUND_CONFIG(ay8910_config)
MCFG_SOUND_ROUTE(ALL_OUTPUTS, "mono", 0.15)
- MCFG_SOUND_ADD("dac", DAC, 0)
+ MCFG_DAC_ADD("dac")
MCFG_SOUND_ROUTE(ALL_OUTPUTS, "mono", 1.0)
MACHINE_CONFIG_END
diff --git a/src/mame/drivers/mogura.c b/src/mame/drivers/mogura.c
index eaf96d1784f..9869aa3c454 100644
--- a/src/mame/drivers/mogura.c
+++ b/src/mame/drivers/mogura.c
@@ -22,8 +22,8 @@ public:
/* devices */
device_t *m_maincpu;
- device_t *m_dac1;
- device_t *m_dac2;
+ dac_device *m_dac1;
+ dac_device *m_dac2;
DECLARE_WRITE8_MEMBER(mogura_tileram_w);
DECLARE_WRITE8_MEMBER(mogura_dac_w);
DECLARE_WRITE8_MEMBER(mogura_gfxram_w);
@@ -111,8 +111,8 @@ WRITE8_MEMBER(mogura_state::mogura_tileram_w)
WRITE8_MEMBER(mogura_state::mogura_dac_w)
{
- dac_data_w(m_dac1, data & 0xf0); /* left */
- dac_data_w(m_dac2, (data & 0x0f) << 4); /* right */
+ m_dac1->write_unsigned8(data & 0xf0); /* left */
+ m_dac2->write_unsigned8((data & 0x0f) << 4); /* right */
}
@@ -193,8 +193,8 @@ static MACHINE_START( mogura )
mogura_state *state = machine.driver_data<mogura_state>();
state->m_maincpu = machine.device("maincpu");
- state->m_dac1 = machine.device("dac1");
- state->m_dac2 = machine.device("dac2");
+ state->m_dac1 = machine.device<dac_device>("dac1");
+ state->m_dac2 = machine.device<dac_device>("dac2");
}
static MACHINE_CONFIG_START( mogura, mogura_state )
@@ -225,10 +225,10 @@ static MACHINE_CONFIG_START( mogura, mogura_state )
/* sound hardware */
MCFG_SPEAKER_STANDARD_STEREO("lspeaker", "rspeaker")
- MCFG_SOUND_ADD("dac1", DAC, 0)
+ MCFG_DAC_ADD("dac1")
MCFG_SOUND_ROUTE(ALL_OUTPUTS, "lspeaker", 0.50)
- MCFG_SOUND_ADD("dac2", DAC, 0)
+ MCFG_DAC_ADD("dac2")
MCFG_SOUND_ROUTE(ALL_OUTPUTS, "rspeaker", 0.50)
MACHINE_CONFIG_END
diff --git a/src/mame/drivers/mpoker.c b/src/mame/drivers/mpoker.c
index 36e90f2e253..33356f0c6d8 100644
--- a/src/mame/drivers/mpoker.c
+++ b/src/mame/drivers/mpoker.c
@@ -467,7 +467,7 @@ WRITE8_MEMBER(mpoker_state::outport7_w)
WRITE8_MEMBER(mpoker_state::sound_w)
//{
-// dac_data_w(machine().device("dac"), data);
+// machine().device<dac_device>("dac")->write_unsigned8(data);
//}
*/
@@ -604,7 +604,7 @@ static MACHINE_CONFIG_START( mpoker, mpoker_state )
/* sound hardware */
// MCFG_SPEAKER_STANDARD_MONO("mono")
-// MCFG_SOUND_ADD("dac", DAC, 0)
+// MCFG_DAC_ADD("dac")
// MCFG_SOUND_ROUTE(ALL_OUTPUTS, "mono", 0.50)
MACHINE_CONFIG_END
diff --git a/src/mame/drivers/multigam.c b/src/mame/drivers/multigam.c
index 5dd15eaaea7..8d30fc63ecf 100644
--- a/src/mame/drivers/multigam.c
+++ b/src/mame/drivers/multigam.c
@@ -1216,7 +1216,7 @@ static MACHINE_CONFIG_START( multigam, multigam_state )
MCFG_SOUND_CONFIG(multigam_interface_1)
MCFG_SOUND_ROUTE(ALL_OUTPUTS, "mono", 0.50)
- MCFG_SOUND_ADD("dac", DAC, 0)
+ MCFG_DAC_ADD("dac")
MCFG_SOUND_ROUTE(ALL_OUTPUTS, "mono", 0.50)
MACHINE_CONFIG_END
diff --git a/src/mame/drivers/murogem.c b/src/mame/drivers/murogem.c
index 736189f120b..b4407cea188 100644
--- a/src/mame/drivers/murogem.c
+++ b/src/mame/drivers/murogem.c
@@ -131,7 +131,7 @@ WRITE8_MEMBER(murogem_state::outport_w)
7654 3210
---- x--- Sound DAC.
*/
- dac_data_w(machine().device("dac"), data & 0x08);
+ machine().device<dac_device>("dac")->write_unsigned8(data & 0x08);
}
@@ -265,7 +265,7 @@ static MACHINE_CONFIG_START( murogem, murogem_state )
/* sound hardware */
MCFG_SPEAKER_STANDARD_MONO("mono")
- MCFG_SOUND_ADD("dac", DAC, 0)
+ MCFG_DAC_ADD("dac")
MCFG_SOUND_ROUTE(ALL_OUTPUTS, "mono", 12.00)
MACHINE_CONFIG_END
diff --git a/src/mame/drivers/murogmbl.c b/src/mame/drivers/murogmbl.c
index ba6016ee1f8..a67ec1ce09b 100644
--- a/src/mame/drivers/murogmbl.c
+++ b/src/mame/drivers/murogmbl.c
@@ -84,7 +84,7 @@ static ADDRESS_MAP_START( murogmbl_map, AS_PROGRAM, 8, murogmbl_state )
AM_RANGE(0x6000, 0x6000) AM_READ_PORT("IN0")
AM_RANGE(0x6800, 0x6800) AM_READ_PORT("DSW")
AM_RANGE(0x7000, 0x7000) AM_READ_PORT("IN1")
- AM_RANGE(0x7800, 0x7800) AM_READNOP AM_DEVWRITE_LEGACY("dac1", dac_w) /* read is always discarded */
+ AM_RANGE(0x7800, 0x7800) AM_READNOP AM_DEVWRITE("dac1", dac_device, write_unsigned8) /* read is always discarded */
ADDRESS_MAP_END
static VIDEO_START(murogmbl)
@@ -200,7 +200,7 @@ static MACHINE_CONFIG_START( murogmbl, murogmbl_state )
MCFG_VIDEO_START(murogmbl)
MCFG_SPEAKER_STANDARD_MONO("mono")
- MCFG_SOUND_ADD("dac1", DAC, 0)
+ MCFG_DAC_ADD("dac1")
MCFG_SOUND_ROUTE(ALL_OUTPUTS, "mono", 1.0)
MACHINE_CONFIG_END
diff --git a/src/mame/drivers/namcos1.c b/src/mame/drivers/namcos1.c
index 7c1a6b38125..7ec5c552232 100644
--- a/src/mame/drivers/namcos1.c
+++ b/src/mame/drivers/namcos1.c
@@ -384,7 +384,7 @@ WRITE8_MEMBER(namcos1_state::namcos1_coin_w)
static void namcos1_update_DACs(running_machine &machine)
{
namcos1_state *state = machine.driver_data<namcos1_state>();
- dac_signed_data_16_w(machine.device("dac"),0x8000 + (state->m_dac0_value * state->m_dac0_gain) + (state->m_dac1_value * state->m_dac1_gain));
+ machine.device<dac_device>("dac")->write_signed16(0x8000 + (state->m_dac0_value * state->m_dac0_gain) + (state->m_dac1_value * state->m_dac1_gain));
}
void namcos1_init_DACs(running_machine &machine)
@@ -1133,7 +1133,7 @@ static MACHINE_CONFIG_START( ns1, namcos1_state )
MCFG_SOUND_ROUTE(0, "lspeaker", 0.50)
MCFG_SOUND_ROUTE(1, "rspeaker", 0.50)
- MCFG_SOUND_ADD("dac", DAC, 0)
+ MCFG_DAC_ADD("dac")
MCFG_SOUND_ROUTE(ALL_OUTPUTS, "lspeaker", 1.0)
MCFG_SOUND_ROUTE(ALL_OUTPUTS, "rspeaker", 1.0)
MACHINE_CONFIG_END
diff --git a/src/mame/drivers/nbmj8688.c b/src/mame/drivers/nbmj8688.c
index 1d875999754..a7f0ba47c51 100644
--- a/src/mame/drivers/nbmj8688.c
+++ b/src/mame/drivers/nbmj8688.c
@@ -308,7 +308,7 @@ static ADDRESS_MAP_START( secolove_io_map, AS_IO, 8, nbmj8688_state )
AM_RANGE(0xb0, 0xb0) AM_READWRITE_LEGACY(nb1413m3_inputport2_r,nb1413m3_sndrombank1_w)
AM_RANGE(0xc0, 0xcf) AM_WRITE(nbmj8688_clut_w)
AM_RANGE(0xd0, 0xd0) AM_READ(ff_r) // irq ack? watchdog?
- AM_RANGE(0xd0, 0xd0) AM_DEVWRITE_LEGACY("dac", dac_w)
+ AM_RANGE(0xd0, 0xd0) AM_DEVWRITE("dac", dac_device, write_unsigned8)
AM_RANGE(0xe0, 0xe0) AM_WRITE(secolove_romsel_w)
// AM_RANGE(0xf0, 0xf0) AM_READ_LEGACY(nb1413m3_dipsw1_r)
// AM_RANGE(0xf1, 0xf1) AM_READ_LEGACY(nb1413m3_dipsw2_r)
@@ -333,7 +333,7 @@ static ADDRESS_MAP_START( barline_io_map, AS_IO, 8, nbmj8688_state )
AM_RANGE(0xb0, 0xb0) AM_READ_LEGACY(nb1413m3_inputport2_r) AM_WRITE(barline_output_w)
AM_RANGE(0xc0, 0xcf) AM_WRITE(nbmj8688_clut_w)
AM_RANGE(0xd0, 0xd0) AM_READ(ff_r) // irq ack? watchdog?
-// AM_RANGE(0xd0, 0xd0) AM_DEVWRITE_LEGACY("dac", dac_w) //not used
+// AM_RANGE(0xd0, 0xd0) AM_DEVWRITE("dac", dac_device, write_unsigned8) //not used
AM_RANGE(0xe0, 0xe0) AM_WRITE(secolove_romsel_w)
AM_RANGE(0xf0, 0xf0) AM_READ_LEGACY(nb1413m3_dipsw1_r) AM_WRITE(mjsikaku_scrolly_w)
AM_RANGE(0xf1, 0xf1) AM_READ_LEGACY(nb1413m3_dipsw2_r)
@@ -351,7 +351,7 @@ static ADDRESS_MAP_START( crystalg_io_map, AS_IO, 8, nbmj8688_state )
AM_RANGE(0xb0, 0xb0) AM_READWRITE_LEGACY(nb1413m3_inputport2_r,nb1413m3_sndrombank1_w)
AM_RANGE(0xc0, 0xcf) AM_WRITE(nbmj8688_clut_w)
AM_RANGE(0xd0, 0xd0) AM_READ(ff_r) // irq ack? watchdog?
- AM_RANGE(0xd0, 0xd0) AM_DEVWRITE_LEGACY("dac", dac_w)
+ AM_RANGE(0xd0, 0xd0) AM_DEVWRITE("dac", dac_device, write_unsigned8)
AM_RANGE(0xe0, 0xe0) AM_WRITE(crystalg_romsel_w)
// AM_RANGE(0xf0, 0xf0) AM_READ_LEGACY(nb1413m3_dipsw1_r)
// AM_RANGE(0xf0, 0xf0) AM_WRITENOP
@@ -371,7 +371,7 @@ static ADDRESS_MAP_START( otonano_io_map, AS_IO, 8, nbmj8688_state )
AM_RANGE(0xa0, 0xa0) AM_READWRITE_LEGACY(nb1413m3_inputport1_r,nb1413m3_inputportsel_w)
AM_RANGE(0xb0, 0xb0) AM_READWRITE_LEGACY(nb1413m3_inputport2_r,nb1413m3_sndrombank1_w)
AM_RANGE(0xd0, 0xd0) AM_READ(ff_r) // irq ack? watchdog?
- AM_RANGE(0xd0, 0xd0) AM_DEVWRITE_LEGACY("dac", dac_w)
+ AM_RANGE(0xd0, 0xd0) AM_DEVWRITE("dac", dac_device, write_unsigned8)
AM_RANGE(0xe0, 0xe0) AM_WRITE(mjsikaku_gfxflag2_w)
AM_RANGE(0xf0, 0xf0) AM_READ_LEGACY(nb1413m3_dipsw1_r) AM_WRITE(mjsikaku_scrolly_w)
AM_RANGE(0xf1, 0xf1) AM_READ_LEGACY(nb1413m3_dipsw2_r)
@@ -391,7 +391,7 @@ static ADDRESS_MAP_START( kaguya_io_map, AS_IO, 8, nbmj8688_state )
AM_RANGE(0xa0, 0xa0) AM_READWRITE_LEGACY(nb1413m3_inputport1_r,nb1413m3_inputportsel_w)
AM_RANGE(0xb0, 0xb0) AM_READWRITE_LEGACY(nb1413m3_inputport2_r,nb1413m3_sndrombank1_w)
AM_RANGE(0xd0, 0xd0) AM_READ(ff_r) // irq ack? watchdog?
- AM_RANGE(0xd0, 0xd0) AM_DEVWRITE_LEGACY("dac", dac_w)
+ AM_RANGE(0xd0, 0xd0) AM_DEVWRITE("dac", dac_device, write_unsigned8)
AM_RANGE(0xe0, 0xe0) AM_WRITE(mjsikaku_gfxflag2_w)
AM_RANGE(0xf0, 0xf0) AM_READ_LEGACY(nb1413m3_dipsw1_r) AM_WRITE(mjsikaku_scrolly_w)
AM_RANGE(0xf1, 0xf1) AM_READ_LEGACY(nb1413m3_dipsw2_r)
@@ -412,7 +412,7 @@ static ADDRESS_MAP_START( iemoto_io_map, AS_IO, 8, nbmj8688_state )
AM_RANGE(0xa0, 0xa0) AM_READWRITE_LEGACY(nb1413m3_inputport1_r,nb1413m3_inputportsel_w)
AM_RANGE(0xb0, 0xb0) AM_READWRITE_LEGACY(nb1413m3_inputport2_r,nb1413m3_sndrombank1_w)
AM_RANGE(0xd0, 0xd0) AM_READ(ff_r) // irq ack? watchdog?
- AM_RANGE(0xd0, 0xd0) AM_DEVWRITE_LEGACY("dac", dac_w)
+ AM_RANGE(0xd0, 0xd0) AM_DEVWRITE("dac", dac_device, write_unsigned8)
AM_RANGE(0xe0, 0xe0) AM_WRITE(mjsikaku_gfxflag2_w)
// AM_RANGE(0xf0, 0xf0) AM_READ_LEGACY(nb1413m3_dipsw1_r)
// AM_RANGE(0xf1, 0xf1) AM_READ_LEGACY(nb1413m3_dipsw2_r)
@@ -434,7 +434,7 @@ static ADDRESS_MAP_START( seiha_io_map, AS_IO, 8, nbmj8688_state )
AM_RANGE(0xa0, 0xa0) AM_READWRITE_LEGACY(nb1413m3_inputport1_r,nb1413m3_inputportsel_w)
AM_RANGE(0xb0, 0xb0) AM_READWRITE_LEGACY(nb1413m3_inputport2_r,nb1413m3_sndrombank1_w)
AM_RANGE(0xd0, 0xd0) AM_READ(ff_r) // irq ack? watchdog?
- AM_RANGE(0xd0, 0xd0) AM_DEVWRITE_LEGACY("dac", dac_w)
+ AM_RANGE(0xd0, 0xd0) AM_DEVWRITE("dac", dac_device, write_unsigned8)
AM_RANGE(0xe0, 0xe0) AM_WRITE(mjsikaku_gfxflag2_w)
// AM_RANGE(0xf0, 0xf0) AM_READ_LEGACY(nb1413m3_dipsw1_r)
// AM_RANGE(0xf1, 0xf1) AM_READ_LEGACY(nb1413m3_dipsw2_r)
@@ -454,7 +454,7 @@ static ADDRESS_MAP_START( mjgaiden_io_map, AS_IO, 8, nbmj8688_state )
AM_RANGE(0xa0, 0xa0) AM_READWRITE_LEGACY(nb1413m3_inputport1_r,nb1413m3_inputportsel_w)
AM_RANGE(0xb0, 0xb0) AM_READWRITE_LEGACY(nb1413m3_inputport2_r,nb1413m3_sndrombank1_w)
AM_RANGE(0xd0, 0xd0) AM_READ(ff_r) // irq ack? watchdog?
- AM_RANGE(0xd0, 0xd0) AM_DEVWRITE_LEGACY("dac", dac_w)
+ AM_RANGE(0xd0, 0xd0) AM_DEVWRITE("dac", dac_device, write_unsigned8)
AM_RANGE(0xe0, 0xe0) AM_WRITE(mjsikaku_gfxflag2_w)
// AM_RANGE(0xf0, 0xf0) AM_READ_LEGACY(nb1413m3_dipsw1_r)
// AM_RANGE(0xf1, 0xf1) AM_READ_LEGACY(nb1413m3_dipsw2_r)
@@ -479,7 +479,7 @@ static ADDRESS_MAP_START( p16bit_LCD_io_map, AS_IO, 8, nbmj8688_state )
AM_RANGE(0xb0, 0xb0) AM_READWRITE_LEGACY(nb1413m3_inputport2_r,nb1413m3_sndrombank1_w)
AM_RANGE(0xc0, 0xcf) AM_WRITE(nbmj8688_clut_w)
AM_RANGE(0xd0, 0xd0) AM_READ(ff_r) // irq ack? watchdog?
- AM_RANGE(0xd0, 0xd0) AM_DEVWRITE_LEGACY("dac", dac_w)
+ AM_RANGE(0xd0, 0xd0) AM_DEVWRITE("dac", dac_device, write_unsigned8)
AM_RANGE(0xe0, 0xe0) AM_WRITE(secolove_romsel_w)
// AM_RANGE(0xf0, 0xf0) AM_READ_LEGACY(nb1413m3_dipsw1_r)
// AM_RANGE(0xf1, 0xf1) AM_READ_LEGACY(nb1413m3_dipsw2_r)
@@ -500,7 +500,7 @@ static ADDRESS_MAP_START( mjsikaku_io_map, AS_IO, 8, nbmj8688_state )
AM_RANGE(0xa0, 0xa0) AM_READWRITE_LEGACY(nb1413m3_inputport1_r,nb1413m3_inputportsel_w)
AM_RANGE(0xb0, 0xb0) AM_READWRITE_LEGACY(nb1413m3_inputport2_r,nb1413m3_sndrombank1_w)
AM_RANGE(0xd0, 0xd0) AM_READ(ff_r) // irq ack? watchdog?
- AM_RANGE(0xd0, 0xd0) AM_DEVWRITE_LEGACY("dac", dac_w)
+ AM_RANGE(0xd0, 0xd0) AM_DEVWRITE("dac", dac_device, write_unsigned8)
AM_RANGE(0xe0, 0xe0) AM_WRITE(mjsikaku_gfxflag2_w)
AM_RANGE(0xf0, 0xf0) AM_READ_LEGACY(nb1413m3_dipsw1_r)
AM_RANGE(0xf1, 0xf1) AM_READ_LEGACY(nb1413m3_dipsw2_r)
@@ -522,7 +522,7 @@ static ADDRESS_MAP_START( mmsikaku_io_map, AS_IO, 8, nbmj8688_state )
AM_RANGE(0xa0, 0xa0) AM_READWRITE_LEGACY(nb1413m3_inputport1_r,nb1413m3_inputportsel_w)
AM_RANGE(0xb0, 0xb0) AM_READWRITE_LEGACY(nb1413m3_inputport2_r,nb1413m3_sndrombank1_w)
AM_RANGE(0xd0, 0xd0) AM_READ(ff_r) // irq ack? watchdog?
- AM_RANGE(0xd0, 0xd0) AM_DEVWRITE_LEGACY("dac", dac_w)
+ AM_RANGE(0xd0, 0xd0) AM_DEVWRITE("dac", dac_device, write_unsigned8)
AM_RANGE(0xe0, 0xe0) AM_WRITE(mjsikaku_gfxflag2_w)
// AM_RANGE(0xf0, 0xf0) AM_READ_LEGACY(nb1413m3_dipsw1_r)
// AM_RANGE(0xf1, 0xf1) AM_READ_LEGACY(nb1413m3_dipsw2_r)
@@ -2935,7 +2935,7 @@ static MACHINE_CONFIG_START( NBMJDRV_4096, nbmj8688_state )
MCFG_SOUND_CONFIG(ay8910_config)
MCFG_SOUND_ROUTE(ALL_OUTPUTS, "mono", 0.35)
- MCFG_SOUND_ADD("dac", DAC, 0)
+ MCFG_DAC_ADD("dac")
MCFG_SOUND_ROUTE(ALL_OUTPUTS, "mono", 1.00)
MACHINE_CONFIG_END
@@ -3062,7 +3062,7 @@ static MACHINE_CONFIG_START( mbmj_p16bit_LCD, nbmj8688_state )
MCFG_SOUND_CONFIG(ay8910_config)
MCFG_SOUND_ROUTE(ALL_OUTPUTS, "mono", 0.35)
- MCFG_SOUND_ADD("dac", DAC, 0)
+ MCFG_DAC_ADD("dac")
MCFG_SOUND_ROUTE(ALL_OUTPUTS, "mono", 1.00)
MACHINE_CONFIG_END
diff --git a/src/mame/drivers/nbmj8891.c b/src/mame/drivers/nbmj8891.c
index 0ff29546b57..ff7ee94360f 100644
--- a/src/mame/drivers/nbmj8891.c
+++ b/src/mame/drivers/nbmj8891.c
@@ -443,7 +443,7 @@ static ADDRESS_MAP_START( gionbana_io_map, AS_IO, 8, nbmj8891_state )
AM_RANGE(0xa0, 0xa0) AM_READWRITE_LEGACY(nb1413m3_inputport1_r,nb1413m3_inputportsel_w)
AM_RANGE(0xb0, 0xb0) AM_READWRITE_LEGACY(nb1413m3_inputport2_r,nb1413m3_sndrombank1_w)
AM_RANGE(0xc0, 0xc0) AM_READ_LEGACY(nb1413m3_inputport3_r) //AM_WRITENOP
- AM_RANGE(0xd0, 0xd0) AM_DEVWRITE_LEGACY("dac", dac_w)
+ AM_RANGE(0xd0, 0xd0) AM_DEVWRITE("dac", dac_device, write_unsigned8)
AM_RANGE(0xe0, 0xe0) AM_WRITE(nbmj8891_vramsel_w)
AM_RANGE(0xf0, 0xf0) AM_READWRITE_LEGACY(nb1413m3_dipsw1_r,nb1413m3_outcoin_w)
AM_RANGE(0xf1, 0xf1) AM_READ_LEGACY(nb1413m3_dipsw2_r)
@@ -462,7 +462,7 @@ static ADDRESS_MAP_START( mgion_io_map, AS_IO, 8, nbmj8891_state )
AM_RANGE(0xa0, 0xa0) AM_READWRITE_LEGACY(nb1413m3_inputport1_r,nb1413m3_inputportsel_w)
AM_RANGE(0xb0, 0xb0) AM_READWRITE_LEGACY(nb1413m3_inputport2_r,nb1413m3_sndrombank1_w)
AM_RANGE(0xc0, 0xc0) AM_READ_LEGACY(nb1413m3_inputport3_r) //AM_WRITENOP
- AM_RANGE(0xd0, 0xd0) AM_DEVWRITE_LEGACY("dac", dac_w)
+ AM_RANGE(0xd0, 0xd0) AM_DEVWRITE("dac", dac_device, write_unsigned8)
AM_RANGE(0xe0, 0xe0) AM_WRITE(nbmj8891_vramsel_w)
AM_RANGE(0xf0, 0xf0) AM_READWRITE_LEGACY(nb1413m3_dipsw1_r,nb1413m3_outcoin_w)
AM_RANGE(0xf1, 0xf1) AM_READ_LEGACY(nb1413m3_dipsw2_r)
@@ -485,7 +485,7 @@ static ADDRESS_MAP_START( omotesnd_io_map, AS_IO, 8, nbmj8891_state )
AM_RANGE(0xb0, 0xb0) AM_READWRITE_LEGACY(nb1413m3_inputport2_r,nb1413m3_sndrombank1_w)
AM_RANGE(0xc0, 0xc0) AM_READ_LEGACY(nb1413m3_inputport3_r) AM_WRITENOP
AM_RANGE(0xd0, 0xdf) AM_READ(nbmj8891_clut_r)
- AM_RANGE(0xd0, 0xd0) AM_DEVWRITE_LEGACY("dac", dac_w)
+ AM_RANGE(0xd0, 0xd0) AM_DEVWRITE("dac", dac_device, write_unsigned8)
AM_RANGE(0xf0, 0xf0) AM_READWRITE_LEGACY(nb1413m3_dipsw1_r,nb1413m3_outcoin_w)
AM_RANGE(0xf1, 0xf1) AM_READ_LEGACY(nb1413m3_dipsw2_r)
ADDRESS_MAP_END
@@ -503,7 +503,7 @@ static ADDRESS_MAP_START( hanamomo_io_map, AS_IO, 8, nbmj8891_state )
AM_RANGE(0xa0, 0xa0) AM_READWRITE_LEGACY(nb1413m3_inputport1_r,nb1413m3_inputportsel_w)
AM_RANGE(0xb0, 0xb0) AM_READWRITE_LEGACY(nb1413m3_inputport2_r,nb1413m3_sndrombank1_w)
AM_RANGE(0xc0, 0xc0) AM_READ_LEGACY(nb1413m3_inputport3_r) //AM_WRITENOP
- AM_RANGE(0xd0, 0xd0) AM_DEVWRITE_LEGACY("dac", dac_w)
+ AM_RANGE(0xd0, 0xd0) AM_DEVWRITE("dac", dac_device, write_unsigned8)
// AM_RANGE(0xe0, 0xe0) AM_WRITENOP
AM_RANGE(0xf0, 0xf0) AM_READ_LEGACY(nb1413m3_dipsw1_r) //AM_WRITENOP
AM_RANGE(0xf1, 0xf1) AM_READ_LEGACY(nb1413m3_dipsw2_r)
@@ -522,7 +522,7 @@ static ADDRESS_MAP_START( msjiken_io_map, AS_IO, 8, nbmj8891_state )
AM_RANGE(0xa0, 0xa0) AM_READWRITE_LEGACY(nb1413m3_inputport1_r,nb1413m3_inputportsel_w)
AM_RANGE(0xb0, 0xb0) AM_READWRITE_LEGACY(nb1413m3_inputport2_r,nb1413m3_sndrombank1_w)
AM_RANGE(0xc0, 0xc0) AM_READ_LEGACY(nb1413m3_inputport3_r) //AM_WRITENOP
- AM_RANGE(0xd0, 0xd0) AM_DEVWRITE_LEGACY("dac", dac_w)
+ AM_RANGE(0xd0, 0xd0) AM_DEVWRITE("dac", dac_device, write_unsigned8)
// AM_RANGE(0xe0, 0xe0) AM_WRITENOP
AM_RANGE(0xf0, 0xf0) AM_READ_LEGACY(nb1413m3_dipsw1_r) //AM_WRITENOP
AM_RANGE(0xf1, 0xf1) AM_READ_LEGACY(nb1413m3_dipsw2_r)
@@ -541,7 +541,7 @@ static ADDRESS_MAP_START( scandal_io_map, AS_IO, 8, nbmj8891_state )
AM_RANGE(0xa0, 0xa0) AM_READWRITE_LEGACY(nb1413m3_inputport1_r,nb1413m3_inputportsel_w)
AM_RANGE(0xb0, 0xb0) AM_READWRITE_LEGACY(nb1413m3_inputport2_r,nb1413m3_sndrombank1_w)
AM_RANGE(0xc0, 0xc0) AM_READWRITE_LEGACY(nb1413m3_inputport3_r,nb1413m3_nmi_clock_w)
- AM_RANGE(0xd0, 0xd0) AM_DEVWRITE_LEGACY("dac", dac_w)
+ AM_RANGE(0xd0, 0xd0) AM_DEVWRITE("dac", dac_device, write_unsigned8)
// AM_RANGE(0xe0, 0xe0) AM_WRITENOP
AM_RANGE(0xf0, 0xf0) AM_READ_LEGACY(nb1413m3_dipsw1_r) //AM_WRITENOP
AM_RANGE(0xf1, 0xf1) AM_READ_LEGACY(nb1413m3_dipsw2_r)
@@ -561,7 +561,7 @@ static ADDRESS_MAP_START( scandalm_io_map, AS_IO, 8, nbmj8891_state )
AM_RANGE(0xa0, 0xa0) AM_READWRITE_LEGACY(nb1413m3_inputport1_r,nb1413m3_inputportsel_w)
AM_RANGE(0xb0, 0xb0) AM_READWRITE_LEGACY(nb1413m3_inputport2_r,nb1413m3_sndrombank1_w)
AM_RANGE(0xc0, 0xc0) AM_READWRITE_LEGACY(nb1413m3_inputport3_r,nb1413m3_nmi_clock_w)
- AM_RANGE(0xd0, 0xd0) AM_DEVWRITE_LEGACY("dac", dac_w)
+ AM_RANGE(0xd0, 0xd0) AM_DEVWRITE("dac", dac_device, write_unsigned8)
// AM_RANGE(0xe0, 0xe0) AM_WRITENOP
AM_RANGE(0xf0, 0xf0) AM_READWRITE_LEGACY(nb1413m3_dipsw1_r,nb1413m3_outcoin_w)
AM_RANGE(0xf1, 0xf1) AM_READ_LEGACY(nb1413m3_dipsw2_r)
@@ -581,7 +581,7 @@ static ADDRESS_MAP_START( bananadr_io_map, AS_IO, 8, nbmj8891_state )
AM_RANGE(0xa0, 0xa0) AM_READWRITE_LEGACY(nb1413m3_inputport1_r,nb1413m3_inputportsel_w)
AM_RANGE(0xb0, 0xb0) AM_READWRITE_LEGACY(nb1413m3_inputport2_r,nb1413m3_sndrombank1_w)
AM_RANGE(0xc0, 0xc0) AM_READWRITE_LEGACY(nb1413m3_inputport3_r,nb1413m3_nmi_clock_w)
- AM_RANGE(0xd0, 0xd0) AM_DEVWRITE_LEGACY("dac", dac_w)
+ AM_RANGE(0xd0, 0xd0) AM_DEVWRITE("dac", dac_device, write_unsigned8)
// AM_RANGE(0xe0, 0xe0) AM_WRITENOP
AM_RANGE(0xf0, 0xf0) AM_READWRITE_LEGACY(nb1413m3_dipsw1_r,nb1413m3_outcoin_w)
AM_RANGE(0xf1, 0xf1) AM_READ_LEGACY(nb1413m3_dipsw2_r)
@@ -600,7 +600,7 @@ static ADDRESS_MAP_START( lovehous_io_map, AS_IO, 8, nbmj8891_state )
AM_RANGE(0xa0, 0xa0) AM_READWRITE_LEGACY(nb1413m3_inputport1_r,nb1413m3_inputportsel_w)
AM_RANGE(0xb0, 0xb0) AM_READWRITE_LEGACY(nb1413m3_inputport2_r,nb1413m3_sndrombank1_w)
AM_RANGE(0xc0, 0xc0) AM_READ_PORT("PORT0-2")
- AM_RANGE(0xd0, 0xd0) AM_DEVWRITE_LEGACY("dac", dac_w)
+ AM_RANGE(0xd0, 0xd0) AM_DEVWRITE("dac", dac_device, write_unsigned8)
AM_RANGE(0xe0, 0xe0) AM_WRITE(nbmj8891_vramsel_w)
AM_RANGE(0xf0, 0xf0) AM_READWRITE_LEGACY(nb1413m3_dipsw1_r,nb1413m3_outcoin_w)
AM_RANGE(0xf1, 0xf1) AM_READ_LEGACY(nb1413m3_dipsw2_r)
@@ -619,7 +619,7 @@ static ADDRESS_MAP_START( maiko_io_map, AS_IO, 8, nbmj8891_state )
AM_RANGE(0xa0, 0xa0) AM_READWRITE_LEGACY(nb1413m3_inputport1_r,nb1413m3_inputportsel_w)
AM_RANGE(0xb0, 0xb0) AM_READWRITE_LEGACY(nb1413m3_inputport2_r,nb1413m3_sndrombank1_w)
AM_RANGE(0xc0, 0xc0) AM_READ_PORT("PORT0-2") //AM_WRITENOP
- AM_RANGE(0xd0, 0xd0) AM_DEVWRITE_LEGACY("dac", dac_w)
+ AM_RANGE(0xd0, 0xd0) AM_DEVWRITE("dac", dac_device, write_unsigned8)
AM_RANGE(0xe0, 0xe0) AM_WRITE(nbmj8891_vramsel_w)
AM_RANGE(0xf0, 0xf0) AM_READWRITE_LEGACY(nb1413m3_dipsw1_r,nb1413m3_outcoin_w)
AM_RANGE(0xf1, 0xf1) AM_READ_LEGACY(nb1413m3_dipsw2_r)
@@ -635,7 +635,7 @@ static ADDRESS_MAP_START( taiwanmb_io_map, AS_IO, 8, nbmj8891_state )
AM_RANGE(0xb0, 0xb0) AM_READWRITE_LEGACY(nb1413m3_inputport2_r,nb1413m3_sndrombank1_w)
// AM_RANGE(0xc0, 0xc0) AM_WRITENOP // ?
// AM_RANGE(0xd0, 0xd0) AM_READ_LEGACY(ff_r) // irq ack? watchdog?
- AM_RANGE(0xd0, 0xd0) AM_DEVWRITE_LEGACY("dac", dac_w)
+ AM_RANGE(0xd0, 0xd0) AM_DEVWRITE("dac", dac_device, write_unsigned8)
AM_RANGE(0xe0, 0xe0) AM_READ_LEGACY(nb1413m3_dipsw3_h_r) AM_WRITE(nbmj8891_taiwanmb_gfxdraw_w) // blitter draw start
AM_RANGE(0xe1, 0xe1) AM_READ_LEGACY(nb1413m3_dipsw3_l_r)
AM_RANGE(0xf0, 0xf0) AM_READWRITE_LEGACY(nb1413m3_dipsw2_r,nb1413m3_outcoin_w)
@@ -2624,7 +2624,7 @@ static MACHINE_CONFIG_START( gionbana, nbmj8891_state )
MCFG_SOUND_ADD("fmsnd", YM3812, 2500000)
MCFG_SOUND_ROUTE(ALL_OUTPUTS, "mono", 0.50)
- MCFG_SOUND_ADD("dac", DAC, 0)
+ MCFG_DAC_ADD("dac")
MCFG_SOUND_ROUTE(ALL_OUTPUTS, "mono", 1.0)
MACHINE_CONFIG_END
diff --git a/src/mame/drivers/nbmj8900.c b/src/mame/drivers/nbmj8900.c
index ff163adf7a1..ca0d534ccef 100644
--- a/src/mame/drivers/nbmj8900.c
+++ b/src/mame/drivers/nbmj8900.c
@@ -125,7 +125,7 @@ static ADDRESS_MAP_START( ohpaipee_io_map, AS_IO, 8, nbmj8900_state )
AM_RANGE(0xa0, 0xa0) AM_READWRITE_LEGACY(nb1413m3_inputport1_r,nb1413m3_inputportsel_w)
AM_RANGE(0xb0, 0xb0) AM_READWRITE_LEGACY(nb1413m3_inputport2_r,nb1413m3_sndrombank1_w)
AM_RANGE(0xc0, 0xc0) AM_READ_LEGACY(nb1413m3_inputport3_r)
- AM_RANGE(0xd0, 0xd0) AM_DEVWRITE_LEGACY("dac", dac_w)
+ AM_RANGE(0xd0, 0xd0) AM_DEVWRITE("dac", dac_device, write_unsigned8)
AM_RANGE(0xe0, 0xe0) AM_WRITE(nbmj8900_vramsel_w)
AM_RANGE(0xf0, 0xf0) AM_READ_LEGACY(nb1413m3_dipsw1_r)
AM_RANGE(0xf1, 0xf1) AM_READWRITE_LEGACY(nb1413m3_dipsw2_r, nb1413m3_outcoin_w)
@@ -329,7 +329,7 @@ static MACHINE_CONFIG_START( ohpaipee, nbmj8900_state )
MCFG_SOUND_ADD("ymsnd", YM3812, 2500000)
MCFG_SOUND_ROUTE(ALL_OUTPUTS, "mono", 0.70)
- MCFG_SOUND_ADD("dac", DAC, 0)
+ MCFG_DAC_ADD("dac")
MCFG_SOUND_ROUTE(ALL_OUTPUTS, "mono", 0.85)
MACHINE_CONFIG_END
diff --git a/src/mame/drivers/nbmj8991.c b/src/mame/drivers/nbmj8991.c
index 7c966abd11b..361e55ae0fc 100644
--- a/src/mame/drivers/nbmj8991.c
+++ b/src/mame/drivers/nbmj8991.c
@@ -253,7 +253,7 @@ static ADDRESS_MAP_START( galkoku_io_map, AS_IO, 8, nbmj8991_state )
AM_RANGE(0xa0, 0xa0) AM_READWRITE_LEGACY(nb1413m3_inputport1_r,nb1413m3_inputportsel_w)
AM_RANGE(0xb0, 0xb0) AM_READWRITE_LEGACY(nb1413m3_inputport2_r,nb1413m3_sndrombank1_w)
AM_RANGE(0xc0, 0xc0) AM_READWRITE_LEGACY(nb1413m3_inputport3_r,nb1413m3_nmi_clock_w)
- AM_RANGE(0xd0, 0xd0) AM_DEVWRITE_LEGACY("dac", dac_w)
+ AM_RANGE(0xd0, 0xd0) AM_DEVWRITE("dac", dac_device, write_unsigned8)
// AM_RANGE(0xe0, 0xe0) AM_WRITENOP
AM_RANGE(0xf0, 0xf0) AM_READWRITE_LEGACY(nb1413m3_dipsw1_r,nb1413m3_outcoin_w)
AM_RANGE(0xf1, 0xf1) AM_READ_LEGACY(nb1413m3_dipsw2_r)
@@ -268,7 +268,7 @@ static ADDRESS_MAP_START( hyouban_io_map, AS_IO, 8, nbmj8991_state )
AM_RANGE(0xa0, 0xa0) AM_READWRITE_LEGACY(nb1413m3_inputport1_r,nb1413m3_inputportsel_w)
AM_RANGE(0xb0, 0xb0) AM_READWRITE_LEGACY(nb1413m3_inputport2_r,nb1413m3_sndrombank1_w)
AM_RANGE(0xc0, 0xc0) AM_READWRITE_LEGACY(nb1413m3_inputport3_r,nb1413m3_nmi_clock_w)
- AM_RANGE(0xd0, 0xd0) AM_DEVWRITE_LEGACY("dac", dac_w)
+ AM_RANGE(0xd0, 0xd0) AM_DEVWRITE("dac", dac_device, write_unsigned8)
// AM_RANGE(0xe0, 0xe0) AM_WRITENOP
AM_RANGE(0xf0, 0xf0) AM_READWRITE_LEGACY(nb1413m3_dipsw1_r,nb1413m3_outcoin_w)
AM_RANGE(0xf1, 0xf1) AM_READ_LEGACY(nb1413m3_dipsw2_r)
@@ -310,8 +310,8 @@ ADDRESS_MAP_END
static ADDRESS_MAP_START( nbmj8991_sound_io_map, AS_IO, 8, nbmj8991_state )
ADDRESS_MAP_GLOBAL_MASK(0xff)
- AM_RANGE(0x00, 0x00) AM_READ(nbmj8991_sound_r) AM_DEVWRITE_LEGACY("dac1", dac_w)
- AM_RANGE(0x02, 0x02) AM_DEVWRITE_LEGACY("dac2", dac_w)
+ AM_RANGE(0x00, 0x00) AM_READ(nbmj8991_sound_r) AM_DEVWRITE("dac1", dac_device, write_unsigned8)
+ AM_RANGE(0x02, 0x02) AM_DEVWRITE("dac2", dac_device, write_unsigned8)
AM_RANGE(0x04, 0x04) AM_WRITE(nbmj8991_soundbank_w)
AM_RANGE(0x06, 0x06) AM_WRITENOP
AM_RANGE(0x80, 0x81) AM_DEVWRITE_LEGACY("fmsnd", ym3812_w)
@@ -1494,7 +1494,7 @@ static MACHINE_CONFIG_START( nbmjdrv1, nbmj8991_state ) // galkoku
MCFG_SOUND_ADD("fmsnd", YM3812, 25000000/10)
MCFG_SOUND_ROUTE(ALL_OUTPUTS, "mono", 0.70)
- MCFG_SOUND_ADD("dac", DAC, 0)
+ MCFG_DAC_ADD("dac")
MCFG_SOUND_ROUTE(ALL_OUTPUTS, "mono", 0.50)
MACHINE_CONFIG_END
@@ -1532,10 +1532,10 @@ static MACHINE_CONFIG_START( nbmjdrv2, nbmj8991_state ) // pstadium
MCFG_SOUND_ADD("fmsnd", YM3812, 25000000/6.25)
MCFG_SOUND_ROUTE(ALL_OUTPUTS, "mono", 0.70)
- MCFG_SOUND_ADD("dac1", DAC, 0)
+ MCFG_DAC_ADD("dac1")
MCFG_SOUND_ROUTE(ALL_OUTPUTS, "mono", 0.50)
- MCFG_SOUND_ADD("dac2", DAC, 0)
+ MCFG_DAC_ADD("dac2")
MCFG_SOUND_ROUTE(ALL_OUTPUTS, "mono", 0.50)
MACHINE_CONFIG_END
diff --git a/src/mame/drivers/nbmj9195.c b/src/mame/drivers/nbmj9195.c
index 98f7d02004c..d2e27ddfaaf 100644
--- a/src/mame/drivers/nbmj9195.c
+++ b/src/mame/drivers/nbmj9195.c
@@ -333,10 +333,10 @@ WRITE8_MEMBER(nbmj9195_state::tmpz84c011_pio_w)
nbmj9195_soundbank_w(space, 0, data);
break;
case 6: /* PB_1 */
- dac_w(machine().device("dac2"), 0, data);
+ machine().device<dac_device>("dac2")->write_unsigned8(data);
break;
case 7: /* PC_1 */
- dac_w(machine().device("dac1"), 0, data);
+ machine().device<dac_device>("dac1")->write_unsigned8(data);
break;
case 8: /* PD_1 */
break;
@@ -371,10 +371,10 @@ WRITE8_MEMBER(nbmj9195_state::tmpz84c011_pio_w)
nbmj9195_soundbank_w(space, 0, data);
break;
case 6: /* PB_1 */
- dac_w(machine().device("dac1"), 0, data);
+ machine().device<dac_device>("dac1")->write_unsigned8(data);
break;
case 7: /* PC_1 */
- dac_w(machine().device("dac2"), 0, data);
+ machine().device<dac_device>("dac2")->write_unsigned8(data);
break;
case 8: /* PD_1 */
break;
@@ -3174,10 +3174,10 @@ static MACHINE_CONFIG_START( NBMJDRV1, nbmj9195_state )
MCFG_SOUND_ADD("ymsnd", YM3812, 4000000)
MCFG_SOUND_ROUTE(ALL_OUTPUTS, "mono", 0.70)
- MCFG_SOUND_ADD("dac1", DAC, 0)
+ MCFG_DAC_ADD("dac1")
MCFG_SOUND_ROUTE(ALL_OUTPUTS, "mono", 0.50)
- MCFG_SOUND_ADD("dac2", DAC, 0)
+ MCFG_DAC_ADD("dac2")
MCFG_SOUND_ROUTE(ALL_OUTPUTS, "mono", 0.50)
MACHINE_CONFIG_END
diff --git a/src/mame/drivers/niyanpai.c b/src/mame/drivers/niyanpai.c
index 79b322a35fd..a8f273c054a 100644
--- a/src/mame/drivers/niyanpai.c
+++ b/src/mame/drivers/niyanpai.c
@@ -112,10 +112,10 @@ WRITE8_MEMBER(niyanpai_state::tmpz84c011_pio_w)
niyanpai_soundbank_w(machine(), data & 0x03);
break;
case 1: /* PB_0 */
- dac_w(machine().device("dac1"), 0, data);
+ machine().device<dac_device>("dac1")->write_unsigned8(data);
break;
case 2: /* PC_0 */
- dac_w(machine().device("dac2"), 0, data);
+ machine().device<dac_device>("dac2")->write_unsigned8(data);
break;
case 3: /* PD_0 */
break;
@@ -975,10 +975,10 @@ static MACHINE_CONFIG_START( niyanpai, niyanpai_state )
MCFG_SOUND_ADD("ymsnd", YM3812, 4000000)
MCFG_SOUND_ROUTE(ALL_OUTPUTS, "mono", 1.00)
- MCFG_SOUND_ADD("dac1", DAC, 0)
+ MCFG_DAC_ADD("dac1")
MCFG_SOUND_ROUTE(ALL_OUTPUTS, "mono", 0.75)
- MCFG_SOUND_ADD("dac2", DAC, 0)
+ MCFG_DAC_ADD("dac2")
MCFG_SOUND_ROUTE(ALL_OUTPUTS, "mono", 0.75)
MACHINE_CONFIG_END
diff --git a/src/mame/drivers/nyny.c b/src/mame/drivers/nyny.c
index 714772a5894..7f7bc06c150 100644
--- a/src/mame/drivers/nyny.c
+++ b/src/mame/drivers/nyny.c
@@ -475,7 +475,7 @@ static const ay8910_interface ay8910_37_interface =
DEVCB_NULL,
DEVCB_NULL,
DEVCB_DRIVER_MEMBER(nyny_state,nyny_ay8910_37_port_a_w),
- DEVCB_DEVICE_HANDLER("dac", dac_w)
+ DEVCB_DEVICE_MEMBER("dac", dac_device, write_unsigned8)
};
@@ -752,7 +752,7 @@ static MACHINE_CONFIG_START( nyny, nyny_state )
MCFG_SOUND_ADD("ay3", AY8910, AUDIO_CPU_2_CLOCK)
MCFG_SOUND_ROUTE(ALL_OUTPUTS, "mono", 0.03)
- MCFG_SOUND_ADD("dac", DAC, 0)
+ MCFG_DAC_ADD("dac")
MCFG_SOUND_ROUTE(ALL_OUTPUTS, "mono", 0.50)
MACHINE_CONFIG_END
diff --git a/src/mame/drivers/othello.c b/src/mame/drivers/othello.c
index 8d971ab78ae..54618d980bf 100644
--- a/src/mame/drivers/othello.c
+++ b/src/mame/drivers/othello.c
@@ -314,7 +314,7 @@ static ADDRESS_MAP_START( n7751_portmap, AS_IO, 8, othello_state )
AM_RANGE(MCS48_PORT_T1, MCS48_PORT_T1) AM_READ(n7751_t1_r)
AM_RANGE(MCS48_PORT_P2, MCS48_PORT_P2) AM_READ(n7751_command_r)
AM_RANGE(MCS48_PORT_BUS, MCS48_PORT_BUS) AM_READ(n7751_rom_r)
- AM_RANGE(MCS48_PORT_P1, MCS48_PORT_P1) AM_DEVWRITE_LEGACY("dac", dac_w)
+ AM_RANGE(MCS48_PORT_P1, MCS48_PORT_P1) AM_DEVWRITE("dac", dac_device, write_unsigned8)
AM_RANGE(MCS48_PORT_P2, MCS48_PORT_P2) AM_WRITE(n7751_p2_w)
AM_RANGE(MCS48_PORT_PROG, MCS48_PORT_PROG) AM_DEVWRITE_LEGACY("n7751_8243", i8243_prog_w)
ADDRESS_MAP_END
@@ -452,7 +452,7 @@ static MACHINE_CONFIG_START( othello, othello_state )
MCFG_SOUND_ADD("ay2", AY8910, 2000000)
MCFG_SOUND_ROUTE(ALL_OUTPUTS, "mono", 0.15)
- MCFG_SOUND_ADD("dac", DAC, 0)
+ MCFG_DAC_ADD("dac")
MCFG_SOUND_ROUTE(ALL_OUTPUTS, "mono", 0.60)
MACHINE_CONFIG_END
diff --git a/src/mame/drivers/pandoras.c b/src/mame/drivers/pandoras.c
index b940888063f..eac45dfbed2 100644
--- a/src/mame/drivers/pandoras.c
+++ b/src/mame/drivers/pandoras.c
@@ -178,7 +178,7 @@ ADDRESS_MAP_END
static ADDRESS_MAP_START( pandoras_i8039_io_map, AS_IO, 8, pandoras_state )
AM_RANGE(0x00, 0xff) AM_READ(soundlatch2_byte_r)
- AM_RANGE(MCS48_PORT_P1, MCS48_PORT_P1) AM_DEVWRITE_LEGACY("dac", dac_w)
+ AM_RANGE(MCS48_PORT_P1, MCS48_PORT_P1) AM_DEVWRITE("dac", dac_device, write_unsigned8)
AM_RANGE(MCS48_PORT_P2, MCS48_PORT_P2) AM_WRITE(i8039_irqen_and_status_w)
ADDRESS_MAP_END
@@ -385,7 +385,7 @@ static MACHINE_CONFIG_START( pandoras, pandoras_state )
MCFG_SOUND_CONFIG(ay8910_config)
MCFG_SOUND_ROUTE(ALL_OUTPUTS, "mono", 0.40)
- MCFG_SOUND_ADD("dac", DAC, 0)
+ MCFG_DAC_ADD("dac")
MCFG_SOUND_ROUTE(ALL_OUTPUTS, "mono", 0.25)
MACHINE_CONFIG_END
diff --git a/src/mame/drivers/pastelg.c b/src/mame/drivers/pastelg.c
index adc4ef764d0..b37f2df8a6b 100644
--- a/src/mame/drivers/pastelg.c
+++ b/src/mame/drivers/pastelg.c
@@ -31,9 +31,9 @@ Memo:
#define SIGNED_DAC 0 // 0:unsigned DAC, 1:signed DAC
#if SIGNED_DAC
-#define DAC_WRITE dac_signed_w
+#define DAC_WRITE write_signed8
#else
-#define DAC_WRITE dac_w
+#define DAC_WRITE write_unsigned8
#endif
@@ -73,7 +73,7 @@ static ADDRESS_MAP_START( pastelg_io_map, AS_IO, 8, pastelg_state )
AM_RANGE(0xb0, 0xb0) AM_READ_LEGACY(nb1413m3_inputport2_r) AM_WRITE(pastelg_romsel_w)
AM_RANGE(0xc0, 0xc0) AM_READ(pastelg_sndrom_r)
AM_RANGE(0xc0, 0xcf) AM_WRITE(pastelg_clut_w)
- AM_RANGE(0xd0, 0xd0) AM_READ(pastelg_irq_ack_r) AM_DEVWRITE_LEGACY("dac", DAC_WRITE)
+ AM_RANGE(0xd0, 0xd0) AM_READ(pastelg_irq_ack_r) AM_DEVWRITE("dac", dac_device, write_unsigned8)
AM_RANGE(0xe0, 0xe0) AM_READ_PORT("DSWC")
ADDRESS_MAP_END
@@ -121,7 +121,7 @@ static ADDRESS_MAP_START( threeds_io_map, AS_IO, 8, pastelg_state )
AM_RANGE(0xb0, 0xb0) AM_READ(threeds_inputport2_r) AM_WRITE(threeds_output_w)//writes: bit 3 is coin lockout, bit 1 is coin counter
AM_RANGE(0xc0, 0xcf) AM_WRITE(pastelg_clut_w)
AM_RANGE(0xc0, 0xc0) AM_READ(threeds_rom_readback_r)
- AM_RANGE(0xd0, 0xd0) AM_READ(pastelg_irq_ack_r) AM_DEVWRITE_LEGACY("dac", DAC_WRITE)
+ AM_RANGE(0xd0, 0xd0) AM_READ(pastelg_irq_ack_r) AM_DEVWRITE("dac", dac_device, write_unsigned8)
ADDRESS_MAP_END
static INPUT_PORTS_START( pastelg )
@@ -435,7 +435,7 @@ static MACHINE_CONFIG_START( pastelg, pastelg_state )
MCFG_SOUND_CONFIG(ay8910_config)
MCFG_SOUND_ROUTE(ALL_OUTPUTS, "mono", 0.35)
- MCFG_SOUND_ADD("dac", DAC, 0)
+ MCFG_DAC_ADD("dac")
MCFG_SOUND_ROUTE(ALL_OUTPUTS, "mono", 0.50)
MACHINE_CONFIG_END
@@ -493,7 +493,7 @@ static MACHINE_CONFIG_START( threeds, pastelg_state )
MCFG_SOUND_CONFIG(ay8910_config)
MCFG_SOUND_ROUTE(ALL_OUTPUTS, "mono", 0.35)
- MCFG_SOUND_ADD("dac", DAC, 0)
+ MCFG_DAC_ADD("dac")
MCFG_SOUND_ROUTE(ALL_OUTPUTS, "mono", 0.50)
MACHINE_CONFIG_END
diff --git a/src/mame/drivers/playch10.c b/src/mame/drivers/playch10.c
index 6f4f65d1ebc..12b3a44f04d 100644
--- a/src/mame/drivers/playch10.c
+++ b/src/mame/drivers/playch10.c
@@ -397,7 +397,7 @@ ADDRESS_MAP_END
static ADDRESS_MAP_START( cart_map, AS_PROGRAM, 8, playch10_state )
AM_RANGE(0x0000, 0x07ff) AM_RAM AM_MIRROR(0x1800) AM_SHARE("work_ram")
AM_RANGE(0x2000, 0x3fff) AM_DEVREADWRITE("ppu", ppu2c0x_device, read, write)
- AM_RANGE(0x4011, 0x4011) AM_DEVWRITE_LEGACY("dac", dac_w)
+ AM_RANGE(0x4011, 0x4011) AM_DEVWRITE("dac", dac_device, write_unsigned8)
AM_RANGE(0x4000, 0x4013) AM_DEVREADWRITE_LEGACY("nes", nes_psg_r, nes_psg_w)
AM_RANGE(0x4014, 0x4014) AM_WRITE(sprite_dma_w)
AM_RANGE(0x4015, 0x4015) AM_READWRITE(psg_4015_r, psg_4015_w) /* PSG status / first control register */
@@ -715,7 +715,7 @@ static MACHINE_CONFIG_START( playch10, playch10_state )
MCFG_SOUND_CONFIG(nes_config)
MCFG_SOUND_ROUTE(ALL_OUTPUTS, "mono", 0.50)
- MCFG_SOUND_ADD("dac", DAC, 0)
+ MCFG_DAC_ADD("dac")
MCFG_SOUND_ROUTE(ALL_OUTPUTS, "mono", 0.50)
MCFG_RP5H01_ADD("rp5h01")
diff --git a/src/mame/drivers/pong.c b/src/mame/drivers/pong.c
index 0f720d61577..e73a7406422 100644
--- a/src/mame/drivers/pong.c
+++ b/src/mame/drivers/pong.c
@@ -471,7 +471,7 @@ public:
void sound_cb(net_sig_t newval)
{
- dac_w(m_dac, 0, 128*(!newval));
+ m_dac->write_unsigned8(128*(!newval));
}
void video_cb(net_sig_t newval)
diff --git a/src/mame/drivers/ppmast93.c b/src/mame/drivers/ppmast93.c
index 8e377d04b18..b24e644cd42 100644
--- a/src/mame/drivers/ppmast93.c
+++ b/src/mame/drivers/ppmast93.c
@@ -215,7 +215,7 @@ WRITE8_MEMBER(ppmast93_state::ppmast_sound_w)
{
case 0:
case 1: ym2413_w(machine().device("ymsnd"),offset,data); break;
- case 2: dac_data_w(machine().device("dac"),data);break;
+ case 2: machine().device<dac_device>("dac")->write_unsigned8(data);break;
default: logerror("%x %x - %x\n",offset,data,cpu_get_previouspc(&space.device()));
}
}
@@ -393,7 +393,7 @@ static MACHINE_CONFIG_START( ppmast93, ppmast93_state )
MCFG_SOUND_ADD("ymsnd", YM2413, 5000000/2)
MCFG_SOUND_ROUTE(ALL_OUTPUTS, "mono", 1.00)
- MCFG_SOUND_ADD("dac", DAC, 0)
+ MCFG_DAC_ADD("dac")
MCFG_SOUND_ROUTE(ALL_OUTPUTS, "mono", 0.60)
MACHINE_CONFIG_END
diff --git a/src/mame/drivers/quasar.c b/src/mame/drivers/quasar.c
index 761016eaa34..4ebd641507f 100644
--- a/src/mame/drivers/quasar.c
+++ b/src/mame/drivers/quasar.c
@@ -145,7 +145,7 @@ static ADDRESS_MAP_START( sound_portmap, AS_IO, 8, quasar_state )
AM_RANGE(0x00, 0x7f) AM_RAM
AM_RANGE(0x80, 0x80) AM_READ(quasar_sh_command_r)
AM_RANGE(MCS48_PORT_T1, MCS48_PORT_T1) AM_READ(audio_t1_r)
- AM_RANGE(MCS48_PORT_P1, MCS48_PORT_P1) AM_DEVWRITE_LEGACY("dac", dac_signed_w)
+ AM_RANGE(MCS48_PORT_P1, MCS48_PORT_P1) AM_DEVWRITE("dac", dac_device, write_signed8)
ADDRESS_MAP_END
/************************************************************************
@@ -362,7 +362,7 @@ static MACHINE_CONFIG_START( quasar, quasar_state )
/* sound hardware */
MCFG_SPEAKER_STANDARD_MONO("mono")
- MCFG_SOUND_ADD("dac", DAC, 0)
+ MCFG_DAC_ADD("dac")
MCFG_SOUND_ROUTE(ALL_OUTPUTS, "mono", 1.0)
MACHINE_CONFIG_END
diff --git a/src/mame/drivers/quizshow.c b/src/mame/drivers/quizshow.c
index f6d70e3bbd7..1c01ed4dc24 100644
--- a/src/mame/drivers/quizshow.c
+++ b/src/mame/drivers/quizshow.c
@@ -162,7 +162,7 @@ WRITE8_MEMBER(quizshow_state::quizshow_tape_control_w)
WRITE8_MEMBER(quizshow_state::quizshow_audio_w)
{
// d1: audio out
- dac_signed_w(machine().device("dac"), 0, (data & 2) ? 0x7f : 0);
+ machine().device<dac_device>("dac")->write_signed8((data & 2) ? 0x7f : 0);
// d0, d2-d7: N/C
}
@@ -392,7 +392,7 @@ static MACHINE_CONFIG_START( quizshow, quizshow_state )
/* sound hardware (discrete) */
MCFG_SPEAKER_STANDARD_MONO("mono")
- MCFG_SOUND_ADD("dac", DAC, 0)
+ MCFG_DAC_ADD("dac")
MCFG_SOUND_ROUTE(ALL_OUTPUTS, "mono", 0.25)
MACHINE_CONFIG_END
diff --git a/src/mame/drivers/rltennis.c b/src/mame/drivers/rltennis.c
index 4fe7117fd80..5322beed546 100644
--- a/src/mame/drivers/rltennis.c
+++ b/src/mame/drivers/rltennis.c
@@ -142,8 +142,8 @@ static TIMER_CALLBACK( sample_player )
}
++state->m_dac_counter; /* update low address bits */
- dac_signed_data_w(state->m_dac_1, state->m_samples_1[state->m_sample_rom_offset_1 + ( state->m_dac_counter&0x7ff )]);
- dac_data_w(state->m_dac_2, state->m_samples_2[state->m_sample_rom_offset_2 + ( state->m_dac_counter&0x7ff )]);
+ state->m_dac_1->write_signed8(state->m_samples_1[state->m_sample_rom_offset_1 + ( state->m_dac_counter&0x7ff )]);
+ state->m_dac_2->write_unsigned8(state->m_samples_2[state->m_sample_rom_offset_2 + ( state->m_dac_counter&0x7ff )]);
state->m_timer->adjust(attotime::from_hz( RLT_TIMER_FREQ ));
}
@@ -160,8 +160,8 @@ static MACHINE_START( rltennis )
rltennis_state *state = machine.driver_data<rltennis_state>();
state->m_maincpu = machine.device( "maincpu");
state->m_screen = machine.device( "screen");
- state->m_dac_1 = machine.device("dac1");
- state->m_dac_2 = machine.device("dac2");
+ state->m_dac_1 = machine.device<dac_device>("dac1");
+ state->m_dac_2 = machine.device<dac_device>("dac2");
state->m_samples_1 = state->memregion("samples1")->base();
state->m_samples_2 = state->memregion("samples2")->base();
state->m_gfx = state->memregion("gfx1")->base();
@@ -206,9 +206,9 @@ static MACHINE_CONFIG_START( rltennis, rltennis_state )
MCFG_SPEAKER_STANDARD_MONO("mono")
- MCFG_SOUND_ADD("dac1", DAC, 0)
+ MCFG_DAC_ADD("dac1")
MCFG_SOUND_ROUTE(ALL_OUTPUTS, "mono", .5)
- MCFG_SOUND_ADD("dac2", DAC, 0)
+ MCFG_DAC_ADD("dac2")
MCFG_SOUND_ROUTE(ALL_OUTPUTS, "mono", .5)
MACHINE_CONFIG_END
diff --git a/src/mame/drivers/route16.c b/src/mame/drivers/route16.c
index dc137c900a3..fb196c3cd90 100644
--- a/src/mame/drivers/route16.c
+++ b/src/mame/drivers/route16.c
@@ -277,7 +277,7 @@ ADDRESS_MAP_END
static ADDRESS_MAP_START( stratvox_cpu2_map, AS_PROGRAM, 8, route16_state )
AM_RANGE(0x0000, 0x1fff) AM_ROM
- AM_RANGE(0x2800, 0x2800) AM_DEVWRITE_LEGACY("dac", dac_w)
+ AM_RANGE(0x2800, 0x2800) AM_DEVWRITE("dac", dac_device, write_unsigned8)
AM_RANGE(0x4000, 0x43ff) AM_READWRITE(sharedram_r, sharedram_w)
AM_RANGE(0x8000, 0xbfff) AM_RAM AM_SHARE("videoram2")
ADDRESS_MAP_END
@@ -650,7 +650,7 @@ static MACHINE_CONFIG_DERIVED( stratvox, route16 )
MCFG_SOUND_CONFIG(sn76477_intf)
MCFG_SOUND_ROUTE(ALL_OUTPUTS, "mono", 0.50)
- MCFG_SOUND_ADD("dac", DAC, 0)
+ MCFG_DAC_ADD("dac")
MCFG_SOUND_ROUTE(ALL_OUTPUTS, "mono", 0.50)
MACHINE_CONFIG_END
diff --git a/src/mame/drivers/royalmah.c b/src/mame/drivers/royalmah.c
index 6a9e9802250..773c73922a5 100644
--- a/src/mame/drivers/royalmah.c
+++ b/src/mame/drivers/royalmah.c
@@ -790,7 +790,7 @@ ADDRESS_MAP_END
static ADDRESS_MAP_START( jansou_sub_iomap, AS_IO, 8, royalmah_state )
ADDRESS_MAP_GLOBAL_MASK(0xff)
- AM_RANGE(0x00, 0x00) AM_READ(soundlatch_byte_r) AM_DEVWRITE_LEGACY("dac", dac_w )
+ AM_RANGE(0x00, 0x00) AM_READ(soundlatch_byte_r) AM_DEVWRITE("dac", dac_device, write_unsigned8 )
ADDRESS_MAP_END
@@ -3210,7 +3210,7 @@ static MACHINE_CONFIG_DERIVED( jansou, royalmah )
MCFG_CPU_IO_MAP(jansou_sub_iomap)
MCFG_CPU_PERIODIC_INT(irq0_line_hold,4000000/512)
- MCFG_SOUND_ADD("dac", DAC, 0)
+ MCFG_DAC_ADD("dac")
MCFG_SOUND_ROUTE(ALL_OUTPUTS, "mono", 0.50)
MACHINE_CONFIG_END
diff --git a/src/mame/drivers/sbasketb.c b/src/mame/drivers/sbasketb.c
index 9c7814365fa..7ca3a359f0f 100644
--- a/src/mame/drivers/sbasketb.c
+++ b/src/mame/drivers/sbasketb.c
@@ -98,7 +98,7 @@ static ADDRESS_MAP_START( sbasketb_sound_map, AS_PROGRAM, 8, sbasketb_state )
AM_RANGE(0x8000, 0x8000) AM_READ_LEGACY(hyperspt_sh_timer_r)
AM_RANGE(0xa000, 0xa000) AM_DEVWRITE_LEGACY("vlm", vlm5030_data_w) /* speech data */
AM_RANGE(0xc000, 0xdfff) AM_DEVWRITE_LEGACY("vlm", hyperspt_sound_w) /* speech and output controll */
- AM_RANGE(0xe000, 0xe000) AM_DEVWRITE_LEGACY("dac", dac_w)
+ AM_RANGE(0xe000, 0xe000) AM_DEVWRITE("dac", dac_device, write_unsigned8)
AM_RANGE(0xe001, 0xe001) AM_WRITE_LEGACY(konami_SN76496_latch_w) /* Loads the snd command into the snd latch */
AM_RANGE(0xe002, 0xe002) AM_DEVWRITE_LEGACY("snsnd", konami_SN76496_w) /* This address triggers the SN chip to read the data port. */
ADDRESS_MAP_END
@@ -213,7 +213,7 @@ static MACHINE_CONFIG_START( sbasketb, sbasketb_state )
MCFG_SOUND_ADD("trackfld_audio", TRACKFLD_AUDIO, 0)
- MCFG_SOUND_ADD("dac", DAC, 0)
+ MCFG_DAC_ADD("dac")
MCFG_SOUND_ROUTE(ALL_OUTPUTS, "mono", 0.80)
MCFG_SOUND_ADD("snsnd", SN76489, XTAL_14_31818MHz / 8)
diff --git a/src/mame/drivers/sbrkout.c b/src/mame/drivers/sbrkout.c
index 52f5dcad1fe..7445a4360a8 100644
--- a/src/mame/drivers/sbrkout.c
+++ b/src/mame/drivers/sbrkout.c
@@ -137,7 +137,7 @@ static TIMER_CALLBACK( scanline_callback )
cputag_set_input_line(machine, "maincpu", 0, ASSERT_LINE);
/* update the DAC state */
- dac_data_w(machine.device("dac"), (videoram[0x380 + 0x11] & (scanline >> 2)) ? 255 : 0);
+ machine.device<dac_device>("dac")->write_unsigned8((videoram[0x380 + 0x11] & (scanline >> 2)) ? 255 : 0);
/* on the VBLANK, read the pot and schedule an interrupt time for it */
if (scanline == machine.primary_screen->visible_area().max_y + 1)
@@ -523,7 +523,7 @@ static MACHINE_CONFIG_START( sbrkout, sbrkout_state )
/* sound hardware */
MCFG_SPEAKER_STANDARD_MONO("mono")
- MCFG_SOUND_ADD("dac", DAC, 0)
+ MCFG_DAC_ADD("dac")
MCFG_SOUND_ROUTE(ALL_OUTPUTS, "mono", 1.0)
MACHINE_CONFIG_END
diff --git a/src/mame/drivers/segas16a.c b/src/mame/drivers/segas16a.c
index 792d3ee18a4..d5cf143d419 100644
--- a/src/mame/drivers/segas16a.c
+++ b/src/mame/drivers/segas16a.c
@@ -1041,7 +1041,7 @@ ADDRESS_MAP_END
static ADDRESS_MAP_START( n7751_portmap, AS_IO, 8, segas16a_state )
AM_RANGE(MCS48_PORT_BUS, MCS48_PORT_BUS) AM_READ(n7751_rom_r)
AM_RANGE(MCS48_PORT_T1, MCS48_PORT_T1) AM_READ(n7751_t1_r)
- AM_RANGE(MCS48_PORT_P1, MCS48_PORT_P1) AM_DEVWRITE_LEGACY("dac", dac_w)
+ AM_RANGE(MCS48_PORT_P1, MCS48_PORT_P1) AM_DEVWRITE("dac", dac_device, write_unsigned8)
AM_RANGE(MCS48_PORT_P2, MCS48_PORT_P2) AM_READWRITE(n7751_p2_r, n7751_p2_w)
AM_RANGE(MCS48_PORT_PROG, MCS48_PORT_PROG) AM_DEVWRITE_LEGACY("n7751_8243", i8243_prog_w)
ADDRESS_MAP_END
@@ -1978,7 +1978,7 @@ static MACHINE_CONFIG_START( system16a, segas16a_state )
MCFG_SOUND_CONFIG(ym2151_config)
MCFG_SOUND_ROUTE(ALL_OUTPUTS, "mono", 0.43)
- MCFG_SOUND_ADD("dac", DAC, 0)
+ MCFG_DAC_ADD("dac")
MCFG_SOUND_ROUTE(ALL_OUTPUTS, "mono", 0.80)
MACHINE_CONFIG_END
diff --git a/src/mame/drivers/segas24.c b/src/mame/drivers/segas24.c
index 2e1fa4de5ca..2f401ac1d05 100644
--- a/src/mame/drivers/segas24.c
+++ b/src/mame/drivers/segas24.c
@@ -598,7 +598,7 @@ void segas24_state::mahmajn_io_w(UINT8 port, UINT8 data)
cur_input_line = (cur_input_line + 1) & 7;
break;
case 7: // DAC
- dac_signed_data_w(machine().device("dac"), data);
+ machine().device<dac_device>("dac")->write_signed8(data);
break;
default:
fprintf(stderr, "Port %d : %02x\n", port, data & 0xff);
@@ -612,7 +612,7 @@ void segas24_state::hotrod_io_w(UINT8 port, UINT8 data)
case 3: // Lamps
break;
case 7: // DAC
- dac_signed_data_w(machine().device("dac"), data);
+ machine().device<dac_device>("dac")->write_signed8(data);
break;
default:
fprintf(stderr, "Port %d : %02x\n", port, data & 0xff);
@@ -1982,7 +1982,7 @@ static MACHINE_CONFIG_START( system24, segas24_state )
MCFG_SOUND_ROUTE(0, "lspeaker", 0.50)
MCFG_SOUND_ROUTE(1, "rspeaker", 0.50)
- MCFG_SOUND_ADD("dac", DAC, 0)
+ MCFG_DAC_ADD("dac")
MCFG_SOUND_ROUTE(ALL_OUTPUTS, "lspeaker", 0.50)
MCFG_SOUND_ROUTE(ALL_OUTPUTS, "rspeaker", 0.50)
MACHINE_CONFIG_END
diff --git a/src/mame/drivers/seicross.c b/src/mame/drivers/seicross.c
index ffa84ab5afa..71ab8d2fed7 100644
--- a/src/mame/drivers/seicross.c
+++ b/src/mame/drivers/seicross.c
@@ -133,7 +133,7 @@ ADDRESS_MAP_END
static ADDRESS_MAP_START( mcu_nvram_map, AS_PROGRAM, 8, seicross_state )
AM_RANGE(0x0000, 0x007f) AM_RAM
AM_RANGE(0x1000, 0x10ff) AM_RAM AM_SHARE("nvram")
- AM_RANGE(0x2000, 0x2000) AM_DEVWRITE_LEGACY("dac", dac_w)
+ AM_RANGE(0x2000, 0x2000) AM_DEVWRITE("dac", dac_device, write_unsigned8)
AM_RANGE(0x8000, 0xf7ff) AM_ROM
AM_RANGE(0xf800, 0xffff) AM_RAM AM_SHARE("share1")
ADDRESS_MAP_END
@@ -143,7 +143,7 @@ static ADDRESS_MAP_START( mcu_no_nvram_map, AS_PROGRAM, 8, seicross_state )
AM_RANGE(0x1003, 0x1003) AM_READ_PORT("DSW1") /* DSW1 */
AM_RANGE(0x1005, 0x1005) AM_READ_PORT("DSW2") /* DSW2 */
AM_RANGE(0x1006, 0x1006) AM_READ_PORT("DSW3") /* DSW3 */
- AM_RANGE(0x2000, 0x2000) AM_DEVWRITE_LEGACY("dac", dac_w)
+ AM_RANGE(0x2000, 0x2000) AM_DEVWRITE("dac", dac_device, write_unsigned8)
AM_RANGE(0x8000, 0xf7ff) AM_ROM
AM_RANGE(0xf800, 0xffff) AM_RAM AM_SHARE("share1")
ADDRESS_MAP_END
@@ -435,7 +435,7 @@ static MACHINE_CONFIG_START( nvram, seicross_state )
MCFG_SOUND_CONFIG(ay8910_config)
MCFG_SOUND_ROUTE(ALL_OUTPUTS, "mono", 0.25)
- MCFG_SOUND_ADD("dac", DAC, 0)
+ MCFG_DAC_ADD("dac")
MCFG_SOUND_ROUTE(ALL_OUTPUTS, "mono", 0.25)
MACHINE_CONFIG_END
diff --git a/src/mame/drivers/senjyo.c b/src/mame/drivers/senjyo.c
index 1827c097e8a..f3ffaa5e4c1 100644
--- a/src/mame/drivers/senjyo.c
+++ b/src/mame/drivers/senjyo.c
@@ -594,7 +594,7 @@ static MACHINE_CONFIG_START( senjyo, senjyo_state )
MCFG_SOUND_ADD("sn3", SN76496, 2000000)
MCFG_SOUND_ROUTE(ALL_OUTPUTS, "mono", 0.50)
- MCFG_SOUND_ADD("dac", DAC, 0)
+ MCFG_DAC_ADD("dac")
MCFG_SOUND_ROUTE(ALL_OUTPUTS, "mono", 0.05)
MACHINE_CONFIG_END
diff --git a/src/mame/drivers/shangkid.c b/src/mame/drivers/shangkid.c
index 4e49f83726f..4bc12bbb31f 100644
--- a/src/mame/drivers/shangkid.c
+++ b/src/mame/drivers/shangkid.c
@@ -333,7 +333,7 @@ ADDRESS_MAP_END
static ADDRESS_MAP_START( sound_portmap, AS_IO, 8, shangkid_state )
ADDRESS_MAP_GLOBAL_MASK(0xff)
- AM_RANGE(0x00, 0x00) AM_READ(shangkid_soundlatch_r) AM_DEVWRITE_LEGACY("dac", dac_w)
+ AM_RANGE(0x00, 0x00) AM_READ(shangkid_soundlatch_r) AM_DEVWRITE("dac", dac_device, write_unsigned8)
ADDRESS_MAP_END
/***************************************************************************************/
@@ -397,7 +397,7 @@ static MACHINE_CONFIG_START( chinhero, shangkid_state )
/* sound hardware */
MCFG_SPEAKER_STANDARD_MONO("mono")
- MCFG_SOUND_ADD("dac", DAC, 0)
+ MCFG_DAC_ADD("dac")
MCFG_SOUND_ROUTE(ALL_OUTPUTS, "mono", 0.50)
MCFG_SOUND_ADD("aysnd", AY8910, XTAL_18_432MHz/12) /* verified on pcb */
diff --git a/src/mame/drivers/shisen.c b/src/mame/drivers/shisen.c
index 5a966020597..a54fbdeb4db 100644
--- a/src/mame/drivers/shisen.c
+++ b/src/mame/drivers/shisen.c
@@ -245,7 +245,7 @@ static MACHINE_CONFIG_START( shisen, shisen_state )
MCFG_SOUND_ROUTE(0, "lspeaker", 0.5)
MCFG_SOUND_ROUTE(1, "rspeaker", 0.5)
- MCFG_SOUND_ADD("dac", DAC, 0)
+ MCFG_DAC_ADD("dac")
MCFG_SOUND_ROUTE(ALL_OUTPUTS, "lspeaker", 0.25)
MCFG_SOUND_ROUTE(ALL_OUTPUTS, "rspeaker", 0.25)
MACHINE_CONFIG_END
diff --git a/src/mame/drivers/spacefb.c b/src/mame/drivers/spacefb.c
index 28789c3b2f3..637d7a9950b 100644
--- a/src/mame/drivers/spacefb.c
+++ b/src/mame/drivers/spacefb.c
@@ -236,7 +236,7 @@ ADDRESS_MAP_END
static ADDRESS_MAP_START( spacefb_audio_io_map, AS_IO, 8, spacefb_state )
- AM_RANGE(MCS48_PORT_P1, MCS48_PORT_P1) AM_DEVWRITE_LEGACY("dac", dac_w)
+ AM_RANGE(MCS48_PORT_P1, MCS48_PORT_P1) AM_DEVWRITE("dac", dac_device, write_unsigned8)
AM_RANGE(MCS48_PORT_P2, MCS48_PORT_P2) AM_READ(spacefb_audio_p2_r)
AM_RANGE(MCS48_PORT_T0, MCS48_PORT_T0) AM_READ(spacefb_audio_t0_r)
AM_RANGE(MCS48_PORT_T1, MCS48_PORT_T1) AM_READ(spacefb_audio_t1_r)
diff --git a/src/mame/drivers/spaceg.c b/src/mame/drivers/spaceg.c
index 344e8043cc8..87c889293b8 100644
--- a/src/mame/drivers/spaceg.c
+++ b/src/mame/drivers/spaceg.c
@@ -435,7 +435,7 @@ static MACHINE_CONFIG_START( spaceg, spaceg_state )
// MCFG_SOUND_ADD("sn3", SN76496, 15468480/4)
// MCFG_SOUND_ROUTE(ALL_OUTPUTS, "mono", 1.0)
-// MCFG_SOUND_ADD("dac", DAC, 0)
+// MCFG_DAC_ADD("dac")
// MCFG_SOUND_ROUTE(ALL_OUTPUTS, "mono", 1.0)
MACHINE_CONFIG_END
diff --git a/src/mame/drivers/ssozumo.c b/src/mame/drivers/ssozumo.c
index e5202eff287..193fe421a5d 100644
--- a/src/mame/drivers/ssozumo.c
+++ b/src/mame/drivers/ssozumo.c
@@ -51,7 +51,7 @@ static ADDRESS_MAP_START( ssozumo_sound_map, AS_PROGRAM, 8, ssozumo_state )
AM_RANGE(0x0000, 0x01ff) AM_RAM
AM_RANGE(0x2000, 0x2001) AM_DEVWRITE_LEGACY("ay1", ay8910_data_address_w)
AM_RANGE(0x2002, 0x2003) AM_DEVWRITE_LEGACY("ay2", ay8910_data_address_w)
- AM_RANGE(0x2004, 0x2004) AM_DEVWRITE_LEGACY("dac", dac_signed_w)
+ AM_RANGE(0x2004, 0x2004) AM_DEVWRITE("dac", dac_device, write_signed8)
AM_RANGE(0x2005, 0x2005) AM_WRITE(sound_nmi_mask_w)
AM_RANGE(0x2007, 0x2007) AM_READ(soundlatch_byte_r)
AM_RANGE(0x4000, 0xffff) AM_ROM
@@ -222,7 +222,7 @@ static MACHINE_CONFIG_START( ssozumo, ssozumo_state )
MCFG_SOUND_ADD("ay2", AY8910, 1500000)
MCFG_SOUND_ROUTE(ALL_OUTPUTS, "mono", 0.30)
- MCFG_SOUND_ADD("dac", DAC, 0)
+ MCFG_DAC_ADD("dac")
MCFG_SOUND_ROUTE(ALL_OUTPUTS, "mono", 0.30)
MACHINE_CONFIG_END
diff --git a/src/mame/drivers/suna16.c b/src/mame/drivers/suna16.c
index 6951a3e6465..f7842c6a859 100644
--- a/src/mame/drivers/suna16.c
+++ b/src/mame/drivers/suna16.c
@@ -294,23 +294,23 @@ ADDRESS_MAP_END
WRITE8_MEMBER(suna16_state::bssoccer_DAC1_w)
{
- device_t *device = machine().device("dac1");
- dac_data_w( device, (data & 0xf) * 0x11 );
+ dac_device *device = machine().device<dac_device>("dac1");
+ device->write_unsigned8( (data & 0xf) * 0x11 );
}
WRITE8_MEMBER(suna16_state::bssoccer_DAC2_w)
{
- device_t *device = machine().device("dac2");
- dac_data_w( device, (data & 0xf) * 0x11 );
+ dac_device *device = machine().device<dac_device>("dac2");
+ device->write_unsigned8( (data & 0xf) * 0x11 );
}
WRITE8_MEMBER(suna16_state::bssoccer_DAC3_w)
{
- device_t *device = machine().device("dac3");
- dac_data_w( device, (data & 0xf) * 0x11 );
+ dac_device *device = machine().device<dac_device>("dac3");
+ device->write_unsigned8( (data & 0xf) * 0x11 );
}
WRITE8_MEMBER(suna16_state::bssoccer_DAC4_w)
{
- device_t *device = machine().device("dac4");
- dac_data_w( device, (data & 0xf) * 0x11 );
+ dac_device *device = machine().device<dac_device>("dac4");
+ device->write_unsigned8( (data & 0xf) * 0x11 );
}
static ADDRESS_MAP_START( bssoccer_pcm_1_io_map, AS_IO, 8, suna16_state )
@@ -806,16 +806,16 @@ static MACHINE_CONFIG_START( bssoccer, suna16_state )
MCFG_SOUND_ROUTE(0, "lspeaker", 0.20)
MCFG_SOUND_ROUTE(1, "rspeaker", 0.20)
- MCFG_SOUND_ADD("dac1", DAC, 0)
+ MCFG_DAC_ADD("dac1")
MCFG_SOUND_ROUTE(ALL_OUTPUTS, "lspeaker", 0.40)
- MCFG_SOUND_ADD("dac2", DAC, 0)
+ MCFG_DAC_ADD("dac2")
MCFG_SOUND_ROUTE(ALL_OUTPUTS, "rspeaker", 0.40)
- MCFG_SOUND_ADD("dac3", DAC, 0)
+ MCFG_DAC_ADD("dac3")
MCFG_SOUND_ROUTE(ALL_OUTPUTS, "lspeaker", 0.40)
- MCFG_SOUND_ADD("dac4", DAC, 0)
+ MCFG_DAC_ADD("dac4")
MCFG_SOUND_ROUTE(ALL_OUTPUTS, "rspeaker", 0.40)
MACHINE_CONFIG_END
@@ -865,10 +865,10 @@ static MACHINE_CONFIG_START( uballoon, suna16_state )
MCFG_SOUND_ROUTE(0, "lspeaker", 0.50)
MCFG_SOUND_ROUTE(1, "rspeaker", 0.50)
- MCFG_SOUND_ADD("dac1", DAC, 0)
+ MCFG_DAC_ADD("dac1")
MCFG_SOUND_ROUTE(ALL_OUTPUTS, "lspeaker", 0.50)
- MCFG_SOUND_ADD("dac2", DAC, 0)
+ MCFG_DAC_ADD("dac2")
MCFG_SOUND_ROUTE(ALL_OUTPUTS, "rspeaker", 0.50)
MACHINE_CONFIG_END
@@ -914,10 +914,10 @@ static MACHINE_CONFIG_START( sunaq, suna16_state )
MCFG_SOUND_ROUTE(0, "lspeaker", 0.50)
MCFG_SOUND_ROUTE(1, "rspeaker", 0.50)
- MCFG_SOUND_ADD("dac1", DAC, 0)
+ MCFG_DAC_ADD("dac1")
MCFG_SOUND_ROUTE(ALL_OUTPUTS, "lspeaker", 0.50)
- MCFG_SOUND_ADD("dac2", DAC, 0)
+ MCFG_DAC_ADD("dac2")
MCFG_SOUND_ROUTE(ALL_OUTPUTS, "rspeaker", 0.50)
MACHINE_CONFIG_END
@@ -987,16 +987,16 @@ static MACHINE_CONFIG_START( bestbest, suna16_state )
MCFG_SOUND_ROUTE(ALL_OUTPUTS, "lspeaker", 1.0)
MCFG_SOUND_ROUTE(ALL_OUTPUTS, "rspeaker", 1.0)
- MCFG_SOUND_ADD("dac1", DAC, 0)
+ MCFG_DAC_ADD("dac1")
MCFG_SOUND_ROUTE(ALL_OUTPUTS, "lspeaker", 0.40)
- MCFG_SOUND_ADD("dac2", DAC, 0)
+ MCFG_DAC_ADD("dac2")
MCFG_SOUND_ROUTE(ALL_OUTPUTS, "rspeaker", 0.40)
- MCFG_SOUND_ADD("dac3", DAC, 0)
+ MCFG_DAC_ADD("dac3")
MCFG_SOUND_ROUTE(ALL_OUTPUTS, "lspeaker", 0.40)
- MCFG_SOUND_ADD("dac4", DAC, 0)
+ MCFG_DAC_ADD("dac4")
MCFG_SOUND_ROUTE(ALL_OUTPUTS, "rspeaker", 0.40)
MACHINE_CONFIG_END
diff --git a/src/mame/drivers/suna8.c b/src/mame/drivers/suna8.c
index a0c63814540..824a27b7387 100644
--- a/src/mame/drivers/suna8.c
+++ b/src/mame/drivers/suna8.c
@@ -1031,7 +1031,7 @@ ADDRESS_MAP_END
WRITE8_MEMBER(suna8_state::brickzn_pcm_w)
{
static const char *const dacs[] = { "dac1", "dac2", "dac3", "dac4" };
- dac_signed_data_w( machine().device(dacs[offset & 3]), (data & 0xf) * 0x11 );
+ machine().device<dac_device>(dacs[offset & 3])->write_signed8( (data & 0xf) * 0x11 );
}
@@ -1645,16 +1645,16 @@ static MACHINE_CONFIG_START( brickzn, suna8_state )
MCFG_SOUND_ROUTE(ALL_OUTPUTS, "lspeaker", 0.33)
MCFG_SOUND_ROUTE(ALL_OUTPUTS, "rspeaker", 0.33)
- MCFG_SOUND_ADD("dac1", DAC, 0)
+ MCFG_DAC_ADD("dac1")
MCFG_SOUND_ROUTE(ALL_OUTPUTS, "lspeaker", 0.17)
- MCFG_SOUND_ADD("dac2", DAC, 0)
+ MCFG_DAC_ADD("dac2")
MCFG_SOUND_ROUTE(ALL_OUTPUTS, "rspeaker", 0.17)
- MCFG_SOUND_ADD("dac3", DAC, 0)
+ MCFG_DAC_ADD("dac3")
MCFG_SOUND_ROUTE(ALL_OUTPUTS, "lspeaker", 0.17)
- MCFG_SOUND_ADD("dac4", DAC, 0)
+ MCFG_DAC_ADD("dac4")
MCFG_SOUND_ROUTE(ALL_OUTPUTS, "rspeaker", 0.17)
MACHINE_CONFIG_END
diff --git a/src/mame/drivers/tagteam.c b/src/mame/drivers/tagteam.c
index cb4e31b8250..66814476557 100644
--- a/src/mame/drivers/tagteam.c
+++ b/src/mame/drivers/tagteam.c
@@ -66,7 +66,7 @@ static ADDRESS_MAP_START( sound_map, AS_PROGRAM, 8, tagteam_state )
AM_RANGE(0x0000, 0x03ff) AM_RAM
AM_RANGE(0x2000, 0x2001) AM_DEVWRITE_LEGACY("ay1", ay8910_data_address_w)
AM_RANGE(0x2002, 0x2003) AM_DEVWRITE_LEGACY("ay2", ay8910_data_address_w)
- AM_RANGE(0x2004, 0x2004) AM_DEVWRITE_LEGACY("dac", dac_w)
+ AM_RANGE(0x2004, 0x2004) AM_DEVWRITE("dac", dac_device, write_unsigned8)
AM_RANGE(0x2005, 0x2005) AM_WRITE(sound_nmi_mask_w)
AM_RANGE(0x2007, 0x2007) AM_READ(soundlatch_byte_r)
AM_RANGE(0x4000, 0xffff) AM_ROM
@@ -238,7 +238,7 @@ static MACHINE_CONFIG_START( tagteam, tagteam_state )
MCFG_SOUND_ADD("ay2", AY8910, XTAL_12MHz/8)
MCFG_SOUND_ROUTE(ALL_OUTPUTS, "mono", 0.25)
- MCFG_SOUND_ADD("dac", DAC, 0)
+ MCFG_DAC_ADD("dac")
MCFG_SOUND_ROUTE(ALL_OUTPUTS, "mono", 0.5)
MACHINE_CONFIG_END
diff --git a/src/mame/drivers/taitosj.c b/src/mame/drivers/taitosj.c
index 105db2368dd..966bc249c22 100644
--- a/src/mame/drivers/taitosj.c
+++ b/src/mame/drivers/taitosj.c
@@ -1731,16 +1731,16 @@ static const UINT8 voltable[256] =
WRITE8_MEMBER(taitosj_state::dac_out_w)
{
- device_t *device = machine().device("dac");
+ dac_device *device = machine().device<dac_device>("dac");
m_dac_out = data - 0x80;
- dac_signed_data_16_w(device,m_dac_out * m_dac_vol + 0x8000);
+ device->write_signed16(m_dac_out * m_dac_vol + 0x8000);
}
WRITE8_MEMBER(taitosj_state::dac_vol_w)
{
- device_t *device = machine().device("dac");
+ dac_device *device = machine().device<dac_device>("dac");
m_dac_vol = voltable[data];
- dac_signed_data_16_w(device,m_dac_out * m_dac_vol + 0x8000);
+ device->write_signed16(m_dac_out * m_dac_vol + 0x8000);
}
@@ -1836,7 +1836,7 @@ static MACHINE_CONFIG_START( nomcu, taitosj_state )
MCFG_SOUND_CONFIG(ay8910_interface_4)
MCFG_SOUND_ROUTE(ALL_OUTPUTS, "mono", 0.30)
- MCFG_SOUND_ADD("dac", DAC, 0)
+ MCFG_DAC_ADD("dac")
MCFG_SOUND_ROUTE(ALL_OUTPUTS, "mono", 0.20)
MACHINE_CONFIG_END
diff --git a/src/mame/drivers/tceptor.c b/src/mame/drivers/tceptor.c
index 70cc4309855..3b35c198e72 100644
--- a/src/mame/drivers/tceptor.c
+++ b/src/mame/drivers/tceptor.c
@@ -92,8 +92,8 @@ WRITE8_MEMBER(tceptor_state::mcu_irq_disable_w)
WRITE8_MEMBER(tceptor_state::voice_w)
{
- device_t *device = machine().device("dac");
- dac_signed_data_16_w(device, data ? (data + 1) * 0x100 : 0x8000);
+ dac_device *device = machine().device<dac_device>("dac");
+ device->write_signed16(data ? (data + 1) * 0x100 : 0x8000);
}
@@ -433,7 +433,7 @@ static MACHINE_CONFIG_START( tceptor, tceptor_state )
MCFG_SOUND_ROUTE(0, "lspeaker", 0.40)
MCFG_SOUND_ROUTE(1, "rspeaker", 0.40)
- MCFG_SOUND_ADD("dac", DAC, 0)
+ MCFG_DAC_ADD("dac")
MCFG_SOUND_ROUTE(ALL_OUTPUTS, "lspeaker", 0.40)
MCFG_SOUND_ROUTE(ALL_OUTPUTS, "rspeaker", 0.40)
MACHINE_CONFIG_END
diff --git a/src/mame/drivers/terracre.c b/src/mame/drivers/terracre.c
index 48c4447e73c..5d142b547fd 100644
--- a/src/mame/drivers/terracre.c
+++ b/src/mame/drivers/terracre.c
@@ -236,8 +236,8 @@ ADDRESS_MAP_END
static ADDRESS_MAP_START( sound_3526_io_map, AS_IO, 8, terracre_state )
ADDRESS_MAP_GLOBAL_MASK(0xff)
AM_RANGE(0x00, 0x01) AM_DEVWRITE_LEGACY("ymsnd", ym3526_w)
- AM_RANGE(0x02, 0x02) AM_DEVWRITE_LEGACY("dac1", dac_signed_w)
- AM_RANGE(0x03, 0x03) AM_DEVWRITE_LEGACY("dac2", dac_signed_w)
+ AM_RANGE(0x02, 0x02) AM_DEVWRITE("dac1", dac_device, write_signed8)
+ AM_RANGE(0x03, 0x03) AM_DEVWRITE("dac2", dac_device, write_signed8)
AM_RANGE(0x04, 0x04) AM_READ(soundlatch_clear_r)
AM_RANGE(0x06, 0x06) AM_READ(soundlatch_byte_r)
ADDRESS_MAP_END
@@ -245,8 +245,8 @@ ADDRESS_MAP_END
static ADDRESS_MAP_START( sound_2203_io_map, AS_IO, 8, terracre_state )
ADDRESS_MAP_GLOBAL_MASK(0xff)
AM_RANGE(0x00, 0x01) AM_DEVWRITE_LEGACY("ym1", ym2203_w)
- AM_RANGE(0x02, 0x02) AM_DEVWRITE_LEGACY("dac1", dac_signed_w)
- AM_RANGE(0x03, 0x03) AM_DEVWRITE_LEGACY("dac2", dac_signed_w)
+ AM_RANGE(0x02, 0x02) AM_DEVWRITE("dac1", dac_device, write_signed8)
+ AM_RANGE(0x03, 0x03) AM_DEVWRITE("dac2", dac_device, write_signed8)
AM_RANGE(0x04, 0x04) AM_READ(soundlatch_clear_r)
AM_RANGE(0x06, 0x06) AM_READ(soundlatch_byte_r)
ADDRESS_MAP_END
@@ -556,10 +556,10 @@ static MACHINE_CONFIG_START( amazon, terracre_state )
MCFG_SOUND_ADD("ymsnd", YM3526, XTAL_16MHz/4)
MCFG_SOUND_ROUTE(ALL_OUTPUTS, "mono", 1.0)
- MCFG_SOUND_ADD("dac1", DAC, 0)
+ MCFG_DAC_ADD("dac1")
MCFG_SOUND_ROUTE(ALL_OUTPUTS, "mono", 0.50)
- MCFG_SOUND_ADD("dac2", DAC, 0)
+ MCFG_DAC_ADD("dac2")
MCFG_SOUND_ROUTE(ALL_OUTPUTS, "mono", 0.50)
MACHINE_CONFIG_END
@@ -591,10 +591,10 @@ static MACHINE_CONFIG_START( ym3526, terracre_state )
MCFG_SOUND_ADD("ymsnd", YM3526, XTAL_16MHz/4)
MCFG_SOUND_ROUTE(ALL_OUTPUTS, "mono", 1.0)
- MCFG_SOUND_ADD("dac1", DAC, 0)
+ MCFG_DAC_ADD("dac1")
MCFG_SOUND_ROUTE(ALL_OUTPUTS, "mono", 0.50)
- MCFG_SOUND_ADD("dac2", DAC, 0)
+ MCFG_DAC_ADD("dac2")
MCFG_SOUND_ROUTE(ALL_OUTPUTS, "mono", 0.50)
MACHINE_CONFIG_END
@@ -635,10 +635,10 @@ static MACHINE_CONFIG_START( ym2203, terracre_state )
MCFG_SOUND_ROUTE(2, "mono", 0.20)
MCFG_SOUND_ROUTE(3, "mono", 0.40)
- MCFG_SOUND_ADD("dac1", DAC, 0)
+ MCFG_DAC_ADD("dac1")
MCFG_SOUND_ROUTE(ALL_OUTPUTS, "mono", 0.50)
- MCFG_SOUND_ADD("dac2", DAC, 0)
+ MCFG_DAC_ADD("dac2")
MCFG_SOUND_ROUTE(ALL_OUTPUTS, "mono", 0.50)
MACHINE_CONFIG_END
diff --git a/src/mame/drivers/tnzs.c b/src/mame/drivers/tnzs.c
index 22016e0edf2..b9674679020 100644
--- a/src/mame/drivers/tnzs.c
+++ b/src/mame/drivers/tnzs.c
@@ -742,10 +742,10 @@ WRITE8_MEMBER(tnzs_state::kabukiz_sound_bank_w)
WRITE8_MEMBER(tnzs_state::kabukiz_sample_w)
{
- device_t *device = machine().device("dac");
+ dac_device *device = machine().device<dac_device>("dac");
// to avoid the write when the sound chip is initialized
if (data != 0xff)
- dac_data_w(device, data);
+ device->write_unsigned8(data);
}
static ADDRESS_MAP_START( main_map, AS_PROGRAM, 8, tnzs_state )
@@ -1881,7 +1881,7 @@ static MACHINE_CONFIG_DERIVED( kabukiz, tnzsb )
MCFG_SOUND_MODIFY("ymsnd")
MCFG_SOUND_CONFIG(kabukiz_ym2203_interface)
- MCFG_SOUND_ADD("dac", DAC, 0)
+ MCFG_DAC_ADD("dac")
MCFG_SOUND_ROUTE(ALL_OUTPUTS, "mono", 1.0)
MACHINE_CONFIG_END
diff --git a/src/mame/drivers/trackfld.c b/src/mame/drivers/trackfld.c
index 06b68809faa..6f54f8e1258 100644
--- a/src/mame/drivers/trackfld.c
+++ b/src/mame/drivers/trackfld.c
@@ -410,7 +410,7 @@ static ADDRESS_MAP_START( sound_map, AS_PROGRAM, 8, trackfld_state )
AM_RANGE(0x8000, 0x8000) AM_MIRROR(0x1fff) AM_READ_LEGACY(trackfld_sh_timer_r)
AM_RANGE(0xa000, 0xa000) AM_MIRROR(0x1fff) AM_WRITE_LEGACY(konami_SN76496_latch_w)
AM_RANGE(0xc000, 0xc000) AM_MIRROR(0x1fff) AM_READ(trackfld_SN76496_r) AM_DEVWRITE_LEGACY("snsnd",konami_SN76496_w)
- AM_RANGE(0xe000, 0xe000) AM_MIRROR(0x1ff8) AM_DEVWRITE_LEGACY("dac", dac_w)
+ AM_RANGE(0xe000, 0xe000) AM_MIRROR(0x1ff8) AM_DEVWRITE("dac", dac_device, write_unsigned8)
AM_RANGE(0xe001, 0xe001) AM_MIRROR(0x1ff8) AM_NOP /* watch dog ?; reaktor reads here */
AM_RANGE(0xe002, 0xe002) AM_MIRROR(0x1ff8) AM_DEVREAD_LEGACY("vlm", trackfld_speech_r)
AM_RANGE(0xe003, 0xe003) AM_MIRROR(0x1ff8) AM_MASK(0x0380) AM_DEVWRITE_LEGACY("vlm", trackfld_sound_w)
@@ -424,7 +424,7 @@ static ADDRESS_MAP_START( hyprolyb_sound_map, AS_PROGRAM, 8, trackfld_state )
AM_RANGE(0x8000, 0x8000) AM_MIRROR(0x1fff) AM_READ_LEGACY(trackfld_sh_timer_r)
AM_RANGE(0xa000, 0xa000) AM_MIRROR(0x1fff) AM_WRITE_LEGACY(konami_SN76496_latch_w)
AM_RANGE(0xc000, 0xc000) AM_MIRROR(0x1fff) AM_READ(trackfld_SN76496_r) AM_DEVWRITE_LEGACY("snsnd",konami_SN76496_w)
- AM_RANGE(0xe000, 0xe000) AM_MIRROR(0x1ff8) AM_DEVWRITE_LEGACY("dac", dac_w)
+ AM_RANGE(0xe000, 0xe000) AM_MIRROR(0x1ff8) AM_DEVWRITE("dac", dac_device, write_unsigned8)
AM_RANGE(0xe001, 0xe001) AM_MIRROR(0x1ff8) AM_NOP /* watch dog ?; reaktor reads here */
AM_RANGE(0xe002, 0xe002) AM_MIRROR(0x1ff8) AM_DEVREAD_LEGACY("hyprolyb_adpcm", hyprolyb_adpcm_busy_r)
AM_RANGE(0xe003, 0xe003) AM_MIRROR(0x1ff8) AM_WRITENOP
@@ -936,7 +936,7 @@ static MACHINE_CONFIG_START( trackfld, trackfld_state )
MCFG_SOUND_ADD("trackfld_audio", TRACKFLD_AUDIO, 0)
- MCFG_SOUND_ADD("dac", DAC, 0)
+ MCFG_DAC_ADD("dac")
MCFG_SOUND_ROUTE(ALL_OUTPUTS, "mono", 0.80)
MCFG_SOUND_ADD("snsnd", SN76496, SOUND_CLOCK/8)
@@ -990,7 +990,7 @@ static MACHINE_CONFIG_START( yieartf, trackfld_state )
MCFG_SOUND_ADD("trackfld_audio", TRACKFLD_AUDIO, 0)
- MCFG_SOUND_ADD("dac", DAC, 0)
+ MCFG_DAC_ADD("dac")
MCFG_SOUND_ROUTE(ALL_OUTPUTS, "mono", 0.80)
MCFG_SOUND_ADD("snsnd", SN76496, MASTER_CLOCK/6/2)
diff --git a/src/mame/drivers/truco.c b/src/mame/drivers/truco.c
index 0558690e9b5..739c4ecba14 100644
--- a/src/mame/drivers/truco.c
+++ b/src/mame/drivers/truco.c
@@ -238,7 +238,7 @@ WRITE8_MEMBER(truco_state::portb_w)
{
if ((data & 0x80) | (data == 0))
{
- dac_data_w(machine().device("dac"), data & 0x80); /* Isolated the bit for Delta-Sigma DAC */
+ machine().device<dac_device>("dac")->write_unsigned8(data & 0x80); /* Isolated the bit for Delta-Sigma DAC */
}
else
logerror("Port B writes: %2x\n", data);
@@ -481,7 +481,7 @@ static MACHINE_CONFIG_START( truco, truco_state )
/* sound hardware */
MCFG_SPEAKER_STANDARD_MONO("mono")
- MCFG_SOUND_ADD("dac", DAC, 0)
+ MCFG_DAC_ADD("dac")
MCFG_SOUND_ROUTE(ALL_OUTPUTS, "mono", 0.80)
MACHINE_CONFIG_END
diff --git a/src/mame/drivers/trucocl.c b/src/mame/drivers/trucocl.c
index 08aff4895a5..777d5be98c9 100644
--- a/src/mame/drivers/trucocl.c
+++ b/src/mame/drivers/trucocl.c
@@ -51,7 +51,7 @@ static TIMER_CALLBACK( dac_irq )
WRITE8_MEMBER(trucocl_state::audio_dac_w)
{
- device_t *device = machine().device("dac");
+ dac_device *device = machine().device<dac_device>("dac");
UINT8 *rom = memregion("maincpu")->base();
int dac_address = ( data & 0xf0 ) << 8;
int sel = ( ( (~data) >> 1 ) & 2 ) | ( data & 1 );
@@ -74,7 +74,7 @@ WRITE8_MEMBER(trucocl_state::audio_dac_w)
dac_address += 0x10000;
- dac_data_w( device, rom[dac_address+m_cur_dac_address_index] );
+ device->write_unsigned8( rom[dac_address+m_cur_dac_address_index] );
machine().scheduler().timer_set( attotime::from_hz( 16000 ), FUNC(dac_irq ));
}
@@ -154,7 +154,7 @@ static MACHINE_CONFIG_START( trucocl, trucocl_state )
/* sound hardware */
MCFG_SPEAKER_STANDARD_MONO("mono")
- MCFG_SOUND_ADD("dac", DAC, 0)
+ MCFG_DAC_ADD("dac")
MCFG_SOUND_ROUTE(ALL_OUTPUTS, "mono", 1.0)
MACHINE_CONFIG_END
diff --git a/src/mame/drivers/tsamurai.c b/src/mame/drivers/tsamurai.c
index 084003b19fb..0e03e29002e 100644
--- a/src/mame/drivers/tsamurai.c
+++ b/src/mame/drivers/tsamurai.c
@@ -211,7 +211,7 @@ static ADDRESS_MAP_START( sound1_map, AS_PROGRAM, 8, tsamurai_state )
AM_RANGE(0x0000, 0x3fff) AM_ROM
AM_RANGE(0x6000, 0x6000) AM_READ(sound_command1_r)
AM_RANGE(0x6001, 0x6001) AM_WRITENOP /* ? - probably clear IRQ */
- AM_RANGE(0x6002, 0x6002) AM_DEVWRITE_LEGACY("dac1", dac_w)
+ AM_RANGE(0x6002, 0x6002) AM_DEVWRITE("dac1", dac_device, write_unsigned8)
AM_RANGE(0x7f00, 0x7fff) AM_RAM
ADDRESS_MAP_END
@@ -221,7 +221,7 @@ static ADDRESS_MAP_START( sound2_map, AS_PROGRAM, 8, tsamurai_state )
AM_RANGE(0x0000, 0x3fff) AM_ROM
AM_RANGE(0x6000, 0x6000) AM_READ(sound_command2_r)
AM_RANGE(0x6001, 0x6001) AM_WRITENOP /* ? - probably clear IRQ */
- AM_RANGE(0x6002, 0x6002) AM_DEVWRITE_LEGACY("dac2", dac_w)
+ AM_RANGE(0x6002, 0x6002) AM_DEVWRITE("dac2", dac_device, write_unsigned8)
AM_RANGE(0x7f00, 0x7fff) AM_RAM
ADDRESS_MAP_END
@@ -231,7 +231,7 @@ static ADDRESS_MAP_START( sound1_m660_map, AS_PROGRAM, 8, tsamurai_state )
AM_RANGE(0x0000, 0x3fff) AM_ROM
AM_RANGE(0xc000, 0xc000) AM_READ(sound_command1_r)
AM_RANGE(0xc001, 0xc001) AM_WRITENOP /* ? - probably clear IRQ */
- AM_RANGE(0xc002, 0xc002) AM_DEVWRITE_LEGACY("dac1", dac_w)
+ AM_RANGE(0xc002, 0xc002) AM_DEVWRITE("dac1", dac_device, write_unsigned8)
AM_RANGE(0x8000, 0x87ff) AM_RAM
ADDRESS_MAP_END
@@ -241,7 +241,7 @@ static ADDRESS_MAP_START( sound2_m660_map, AS_PROGRAM, 8, tsamurai_state )
AM_RANGE(0x0000, 0x3fff) AM_ROM
AM_RANGE(0xc000, 0xc000) AM_READ(sound_command2_r)
AM_RANGE(0xc001, 0xc001) AM_WRITENOP /* ? - probably clear IRQ */
- AM_RANGE(0xc002, 0xc002) AM_DEVWRITE_LEGACY("dac2", dac_w)
+ AM_RANGE(0xc002, 0xc002) AM_DEVWRITE("dac2", dac_device, write_unsigned8)
AM_RANGE(0x8000, 0x87ff) AM_RAM
ADDRESS_MAP_END
@@ -334,7 +334,7 @@ static ADDRESS_MAP_START( sound_vsgongf_map, AS_PROGRAM, 8, tsamurai_state )
AM_RANGE(0x0000, 0x3fff) AM_ROM
AM_RANGE(0x6000, 0x63ff) AM_RAM /* work RAM */
AM_RANGE(0x8000, 0x8000) AM_READ(soundlatch_byte_r) AM_WRITE(vsgongf_sound_nmi_enable_w) /* NMI enable */
- AM_RANGE(0xa000, 0xa000) AM_DEVWRITE_LEGACY("dac", dac_w)
+ AM_RANGE(0xa000, 0xa000) AM_DEVWRITE("dac", dac_device, write_unsigned8)
ADDRESS_MAP_END
/*******************************************************************************/
@@ -710,10 +710,10 @@ static MACHINE_CONFIG_START( tsamurai, tsamurai_state )
MCFG_SOUND_ADD("aysnd", AY8910, XTAL_24MHz/8)
MCFG_SOUND_ROUTE(ALL_OUTPUTS, "mono", 0.10)
- MCFG_SOUND_ADD("dac1", DAC, 0)
+ MCFG_DAC_ADD("dac1")
MCFG_SOUND_ROUTE(ALL_OUTPUTS, "mono", 0.20)
- MCFG_SOUND_ADD("dac2", DAC, 0)
+ MCFG_DAC_ADD("dac2")
MCFG_SOUND_ROUTE(ALL_OUTPUTS, "mono", 0.20)
MACHINE_CONFIG_END
@@ -750,7 +750,7 @@ static MACHINE_CONFIG_START( vsgongf, tsamurai_state )
MCFG_SOUND_ADD("aysnd", AY8910, XTAL_24MHz/8)
MCFG_SOUND_ROUTE(ALL_OUTPUTS, "mono", 0.10)
- MCFG_SOUND_ADD("dac", DAC, 0)
+ MCFG_DAC_ADD("dac")
MCFG_SOUND_ROUTE(ALL_OUTPUTS, "mono", 0.20)
MACHINE_CONFIG_END
@@ -794,10 +794,10 @@ static MACHINE_CONFIG_START( m660, tsamurai_state )
MCFG_SOUND_ADD("aysnd", AY8910, XTAL_24MHz/8)
MCFG_SOUND_ROUTE(ALL_OUTPUTS, "mono", 0.10)
- MCFG_SOUND_ADD("dac1", DAC, 0)
+ MCFG_DAC_ADD("dac1")
MCFG_SOUND_ROUTE(ALL_OUTPUTS, "mono", 0.20)
- MCFG_SOUND_ADD("dac2", DAC, 0)
+ MCFG_DAC_ADD("dac2")
MCFG_SOUND_ROUTE(ALL_OUTPUTS, "mono", 0.20)
MACHINE_CONFIG_END
diff --git a/src/mame/drivers/unkhorse.c b/src/mame/drivers/unkhorse.c
index 6478919c286..1dd29d1ccd1 100644
--- a/src/mame/drivers/unkhorse.c
+++ b/src/mame/drivers/unkhorse.c
@@ -117,7 +117,7 @@ WRITE8_MEMBER(horse_state::horse_output_w)
WRITE_LINE_MEMBER(horse_state::horse_timer_out)
{
- dac_signed_w(machine().device("dac"), 0, state ? 0x7f : 0);
+ machine().device<dac_device>("dac")->write_signed8(state ? 0x7f : 0);
}
static I8155_INTERFACE(i8155_intf)
@@ -220,7 +220,7 @@ static MACHINE_CONFIG_START( horse, horse_state )
/* sound hardware */
MCFG_SPEAKER_STANDARD_MONO("mono")
- MCFG_SOUND_ADD("dac", DAC, 0)
+ MCFG_DAC_ADD("dac")
MCFG_SOUND_ROUTE(ALL_OUTPUTS, "mono", 0.25)
MACHINE_CONFIG_END
diff --git a/src/mame/drivers/vcombat.c b/src/mame/drivers/vcombat.c
index 3f62a877fff..2c5fbc8b06f 100644
--- a/src/mame/drivers/vcombat.c
+++ b/src/mame/drivers/vcombat.c
@@ -327,9 +327,9 @@ WRITE16_MEMBER(vcombat_state::crtc_w)
WRITE16_MEMBER(vcombat_state::vcombat_dac_w)
{
- device_t *device = machine().device("dac");
+ dac_device *device = machine().device<dac_device>("dac");
INT16 newval = ((INT16)data - 0x6000) << 2;
- dac_signed_data_16_w(device, newval + 0x8000);
+ device->write_signed16(newval + 0x8000);
}
static ADDRESS_MAP_START( main_map, AS_PROGRAM, 16, vcombat_state )
@@ -620,7 +620,7 @@ static MACHINE_CONFIG_START( vcombat, vcombat_state )
MCFG_SPEAKER_STANDARD_MONO("mono")
- MCFG_SOUND_ADD("dac", DAC, 0)
+ MCFG_DAC_ADD("dac")
MCFG_SOUND_ROUTE(ALL_OUTPUTS, "mono", 1.00)
MACHINE_CONFIG_END
@@ -651,7 +651,7 @@ static MACHINE_CONFIG_START( shadfgtr, vcombat_state )
MCFG_SPEAKER_STANDARD_MONO("mono")
- MCFG_SOUND_ADD("dac", DAC, 0)
+ MCFG_DAC_ADD("dac")
MCFG_SOUND_ROUTE(ALL_OUTPUTS, "mono", 1.00)
MACHINE_CONFIG_END
diff --git a/src/mame/drivers/vectrex.c b/src/mame/drivers/vectrex.c
index 481feacbc88..358da780f59 100644
--- a/src/mame/drivers/vectrex.c
+++ b/src/mame/drivers/vectrex.c
@@ -112,7 +112,7 @@ static MACHINE_CONFIG_START( vectrex, vectrex_state )
/* sound hardware */
MCFG_SPEAKER_STANDARD_MONO("mono")
- MCFG_SOUND_ADD("dac", DAC, 0)
+ MCFG_DAC_ADD("dac")
MCFG_SOUND_ROUTE(ALL_OUTPUTS, "mono", 0.50)
MCFG_SOUND_ADD("ay8912", AY8912, 1500000)
MCFG_SOUND_CONFIG(vectrex_ay8910_interface)
diff --git a/src/mame/drivers/videopkr.c b/src/mame/drivers/videopkr.c
index 802e040c1b4..3899dfd42f1 100644
--- a/src/mame/drivers/videopkr.c
+++ b/src/mame/drivers/videopkr.c
@@ -883,9 +883,9 @@ READ8_MEMBER(videopkr_state::baby_sound_p2_r)
WRITE8_MEMBER(videopkr_state::baby_sound_p2_w)
{
- device_t *device = machine().device("dac");
+ dac_device *device = machine().device<dac_device>("dac");
m_sbp2 = data;
- dac_data_w(device, data);
+ device->write_unsigned8(data);
}
READ8_MEMBER(videopkr_state::baby_sound_p3_r)
@@ -962,7 +962,7 @@ ADDRESS_MAP_END
static ADDRESS_MAP_START( i8039_sound_port, AS_IO, 8, videopkr_state )
AM_RANGE(0x00 , 0xff ) AM_READWRITE(sound_io_r, sound_io_w)
- AM_RANGE(MCS48_PORT_P1, MCS48_PORT_P1) AM_DEVWRITE_LEGACY("dac", dac_w)
+ AM_RANGE(MCS48_PORT_P1, MCS48_PORT_P1) AM_DEVWRITE("dac", dac_device, write_unsigned8)
AM_RANGE(MCS48_PORT_P2, MCS48_PORT_P2) AM_READWRITE(sound_p2_r, sound_p2_w)
ADDRESS_MAP_END
@@ -1261,7 +1261,7 @@ static MACHINE_CONFIG_START( videopkr, videopkr_state )
/* sound hardware */
MCFG_SPEAKER_STANDARD_MONO("mono")
- MCFG_SOUND_ADD("dac", DAC, 0)
+ MCFG_DAC_ADD("dac")
MCFG_SOUND_ROUTE(ALL_OUTPUTS, "mono", 0.55)
MACHINE_CONFIG_END
diff --git a/src/mame/drivers/vigilant.c b/src/mame/drivers/vigilant.c
index 781b4760de8..ee0457d5aa8 100644
--- a/src/mame/drivers/vigilant.c
+++ b/src/mame/drivers/vigilant.c
@@ -514,7 +514,7 @@ static MACHINE_CONFIG_START( vigilant, vigilant_state )
MCFG_SOUND_ROUTE(0, "lspeaker", 0.55)
MCFG_SOUND_ROUTE(1, "rspeaker", 0.55)
- MCFG_SOUND_ADD("dac", DAC, 0)
+ MCFG_DAC_ADD("dac")
MCFG_SOUND_ROUTE(ALL_OUTPUTS, "lspeaker", 1.0)
MCFG_SOUND_ROUTE(ALL_OUTPUTS, "rspeaker", 1.0)
MACHINE_CONFIG_END
@@ -572,7 +572,7 @@ static MACHINE_CONFIG_START( buccanrs, vigilant_state )
MCFG_SOUND_ROUTE(3, "lspeaker", 0.50)
MCFG_SOUND_ROUTE(3, "rspeaker", 0.50)
- MCFG_SOUND_ADD("dac", DAC, 0)
+ MCFG_DAC_ADD("dac")
MCFG_SOUND_ROUTE(ALL_OUTPUTS, "lspeaker", 0.35)
MCFG_SOUND_ROUTE(ALL_OUTPUTS, "rspeaker", 0.35)
MACHINE_CONFIG_END
@@ -614,7 +614,7 @@ static MACHINE_CONFIG_START( kikcubic, vigilant_state )
MCFG_SOUND_ROUTE(0, "lspeaker", 0.55)
MCFG_SOUND_ROUTE(1, "rspeaker", 0.55)
- MCFG_SOUND_ADD("dac", DAC, 0)
+ MCFG_DAC_ADD("dac")
MCFG_SOUND_ROUTE(ALL_OUTPUTS, "lspeaker", 1.0)
MCFG_SOUND_ROUTE(ALL_OUTPUTS, "rspeaker", 1.0)
MACHINE_CONFIG_END
diff --git a/src/mame/drivers/vsnes.c b/src/mame/drivers/vsnes.c
index 99ffe3e3c15..2924a80c8b1 100644
--- a/src/mame/drivers/vsnes.c
+++ b/src/mame/drivers/vsnes.c
@@ -231,7 +231,7 @@ WRITE8_MEMBER(vsnes_state::psg2_4017_w)
static ADDRESS_MAP_START( vsnes_cpu1_map, AS_PROGRAM, 8, vsnes_state )
AM_RANGE(0x0000, 0x07ff) AM_MIRROR(0x1800) AM_RAM AM_SHARE("work_ram")
AM_RANGE(0x2000, 0x3fff) AM_DEVREADWRITE("ppu1", ppu2c0x_device, read, write)
- AM_RANGE(0x4011, 0x4011) AM_DEVWRITE_LEGACY("dac1", dac_w)
+ AM_RANGE(0x4011, 0x4011) AM_DEVWRITE("dac1", dac_device, write_unsigned8)
AM_RANGE(0x4000, 0x4013) AM_DEVREADWRITE_LEGACY("nes1", nes_psg_r, nes_psg_w)
AM_RANGE(0x4014, 0x4014) AM_WRITE(sprite_dma_0_w)
AM_RANGE(0x4015, 0x4015) AM_READWRITE(psg1_4015_r, psg1_4015_w) /* PSG status / first control register */
@@ -245,7 +245,7 @@ ADDRESS_MAP_END
static ADDRESS_MAP_START( vsnes_cpu2_map, AS_PROGRAM, 8, vsnes_state )
AM_RANGE(0x0000, 0x07ff) AM_MIRROR(0x1800) AM_RAM AM_SHARE("work_ram_1")
AM_RANGE(0x2000, 0x3fff) AM_DEVREADWRITE("ppu2", ppu2c0x_device, read, write)
- AM_RANGE(0x4011, 0x4011) AM_DEVWRITE_LEGACY("dac2", dac_w)
+ AM_RANGE(0x4011, 0x4011) AM_DEVWRITE("dac2", dac_device, write_unsigned8)
AM_RANGE(0x4000, 0x4013) AM_DEVREADWRITE_LEGACY("nes2", nes_psg_r, nes_psg_w)
AM_RANGE(0x4014, 0x4014) AM_WRITE(sprite_dma_1_w)
AM_RANGE(0x4015, 0x4015) AM_READWRITE(psg2_4015_r, psg2_4015_w) /* PSG status / first control register */
@@ -1715,7 +1715,7 @@ static MACHINE_CONFIG_START( vsnes, vsnes_state )
MCFG_SOUND_CONFIG(nes_interface_1)
MCFG_SOUND_ROUTE(ALL_OUTPUTS, "mono", 0.50)
- MCFG_SOUND_ADD("dac1", DAC, 0)
+ MCFG_DAC_ADD("dac1")
MCFG_SOUND_ROUTE(ALL_OUTPUTS, "mono", 0.50)
MACHINE_CONFIG_END
@@ -1788,10 +1788,10 @@ static MACHINE_CONFIG_START( vsdual, vsnes_state )
MCFG_SOUND_CONFIG(nes_interface_2)
MCFG_SOUND_ROUTE(ALL_OUTPUTS, "mono", 0.50)
- MCFG_SOUND_ADD("dac1", DAC, 0)
+ MCFG_DAC_ADD("dac1")
MCFG_SOUND_ROUTE(ALL_OUTPUTS, "mono", 0.25)
- MCFG_SOUND_ADD("dac2", DAC, 0)
+ MCFG_DAC_ADD("dac2")
MCFG_SOUND_ROUTE(ALL_OUTPUTS, "mono", 0.25)
MACHINE_CONFIG_END
diff --git a/src/mame/drivers/wheelfir.c b/src/mame/drivers/wheelfir.c
index df3fd2f34b6..77f76bc9f3b 100644
--- a/src/mame/drivers/wheelfir.c
+++ b/src/mame/drivers/wheelfir.c
@@ -686,8 +686,8 @@ static ADDRESS_MAP_START( wheelfir_sub, AS_PROGRAM, 16, wheelfir_state )
AM_RANGE(0x780000, 0x780001) AM_READ(wheelfir_snd_r)
- AM_RANGE(0x700000, 0x700001) AM_DEVWRITE8_LEGACY("dac1", dac_w, 0xff00) //guess for now
- AM_RANGE(0x740000, 0x740001) AM_DEVWRITE8_LEGACY("dac2", dac_w, 0xff00)
+ AM_RANGE(0x700000, 0x700001) AM_DEVWRITE8("dac1", dac_device, write_unsigned8, 0xff00) //guess for now
+ AM_RANGE(0x740000, 0x740001) AM_DEVWRITE8("dac2", dac_device, write_unsigned8, 0xff00)
ADDRESS_MAP_END
@@ -841,8 +841,8 @@ static MACHINE_CONFIG_START( wheelfir, wheelfir_state )
/* sound hardware */
MCFG_SPEAKER_STANDARD_MONO("mono")
- MCFG_SOUND_ADD("dac1", DAC, 0)
- MCFG_SOUND_ADD("dac2", DAC, 0)
+ MCFG_DAC_ADD("dac1")
+ MCFG_DAC_ADD("dac2")
MCFG_SOUND_ROUTE(ALL_OUTPUTS, "mono", 1.0)
MACHINE_CONFIG_END
diff --git a/src/mame/drivers/williams.c b/src/mame/drivers/williams.c
index 50731ab3e4c..011222d5678 100644
--- a/src/mame/drivers/williams.c
+++ b/src/mame/drivers/williams.c
@@ -1458,7 +1458,7 @@ static MACHINE_CONFIG_START( defender, williams_state )
/* sound hardware */
MCFG_SPEAKER_STANDARD_MONO("mono")
- MCFG_SOUND_ADD("wmsdac", DAC, 0)
+ MCFG_DAC_ADD("wmsdac")
MCFG_SOUND_ROUTE(ALL_OUTPUTS, "mono", 0.50)
/* pia */
@@ -1613,9 +1613,9 @@ static MACHINE_CONFIG_DERIVED( blaster, blastkit )
MCFG_DEVICE_REMOVE("mono")
MCFG_SPEAKER_STANDARD_STEREO("lspeaker", "rspeaker")
- MCFG_SOUND_ADD("wmsdac", DAC, 0)
+ MCFG_DAC_ADD("wmsdac")
MCFG_SOUND_ROUTE(ALL_OUTPUTS, "lspeaker", 0.50)
- MCFG_SOUND_ADD("wmsdac_b", DAC, 0)
+ MCFG_DAC_ADD("wmsdac_b")
MCFG_SOUND_ROUTE(ALL_OUTPUTS, "rspeaker", 0.50)
MACHINE_CONFIG_END
@@ -1650,7 +1650,7 @@ static MACHINE_CONFIG_START( williams2, williams_state )
/* sound hardware */
MCFG_SPEAKER_STANDARD_MONO("mono")
- MCFG_SOUND_ADD("wmsdac", DAC, 0)
+ MCFG_DAC_ADD("wmsdac")
MCFG_SOUND_ROUTE(ALL_OUTPUTS, "mono", 0.50)
/* pia */
diff --git a/src/mame/drivers/xtheball.c b/src/mame/drivers/xtheball.c
index d59cf701caf..9ab2e1b15ab 100644
--- a/src/mame/drivers/xtheball.c
+++ b/src/mame/drivers/xtheball.c
@@ -225,7 +225,7 @@ static ADDRESS_MAP_START( main_map, AS_PROGRAM, 16, xtheball_state )
AM_RANGE(0x03040160, 0x0304016f) AM_READ_PORT("SERVICE")
AM_RANGE(0x03040170, 0x0304017f) AM_READ_PORT("SERVICE1")
AM_RANGE(0x03040180, 0x0304018f) AM_READ(analogy_watchdog_r)
- AM_RANGE(0x03060000, 0x0306000f) AM_DEVWRITE8_LEGACY("dac", dac_w, 0xff00)
+ AM_RANGE(0x03060000, 0x0306000f) AM_DEVWRITE8("dac", dac_device, write_unsigned8, 0xff00)
AM_RANGE(0x04000000, 0x057fffff) AM_ROM AM_REGION("user2", 0)
AM_RANGE(0xc0000000, 0xc00001ff) AM_READWRITE_LEGACY(tms34010_io_register_r, tms34010_io_register_w)
AM_RANGE(0xfff80000, 0xffffffff) AM_ROM AM_REGION("user1", 0)
@@ -354,7 +354,7 @@ static MACHINE_CONFIG_START( xtheball, xtheball_state )
/* sound hardware */
MCFG_SPEAKER_STANDARD_MONO("mono")
- MCFG_SOUND_ADD("dac", DAC, 0)
+ MCFG_DAC_ADD("dac")
MCFG_SOUND_ROUTE(ALL_OUTPUTS, "mono", 1.0)
MACHINE_CONFIG_END
diff --git a/src/mame/drivers/zaccaria.c b/src/mame/drivers/zaccaria.c
index 0a0f2b9e48c..366d43acfed 100644
--- a/src/mame/drivers/zaccaria.c
+++ b/src/mame/drivers/zaccaria.c
@@ -192,8 +192,8 @@ WRITE8_MEMBER(zaccaria_state::sound1_command_w)
WRITE8_MEMBER(zaccaria_state::mc1408_data_w)
{
- device_t *device = machine().device("dac2");
- dac_data_w(device, data);
+ dac_device *device = machine().device<dac_device>("dac2");
+ device->write_unsigned8(data);
}
@@ -624,7 +624,7 @@ static MACHINE_CONFIG_START( zaccaria, zaccaria_state )
MCFG_SOUND_ADD("ay2", AY8910, XTAL_3_579545MHz/2) /* verified on pcb */
MCFG_SOUND_ROUTE(ALL_OUTPUTS, "mono", 0.15)
- MCFG_SOUND_ADD("dac2", DAC, 0)
+ MCFG_DAC_ADD("dac2")
MCFG_SOUND_ROUTE(ALL_OUTPUTS, "mono", 0.80)
/* There is no xtal, the clock is obtained from a RC oscillator as shown in the TMS5220 datasheet (R=100kOhm C=22pF) */