summaryrefslogtreecommitdiffstatshomepage
path: root/src/mame
diff options
context:
space:
mode:
author AJR <ajrhacker@users.noreply.github.com>2017-09-24 01:12:18 -0400
committer AJR <ajrhacker@users.noreply.github.com>2017-09-24 01:12:28 -0400
commite028b9e36990d5be31977acca040eea74bfb9e2f (patch)
tree16e21cc02efef94ceee6684e90e2c1df42ef85f7 /src/mame
parentfdf57cdda94b983126a6e3f879ddbd3feae1d8b1 (diff)
Eliminate custom MCFG_Z80DART_ADD/Z80SIO_ADD macros (nw)
Diffstat (limited to 'src/mame')
-rw-r--r--src/mame/drivers/a7150.cpp2
-rw-r--r--src/mame/drivers/abc1600.cpp2
-rw-r--r--src/mame/drivers/abc80x.cpp16
-rw-r--r--src/mame/drivers/altos486.cpp10
-rw-r--r--src/mame/drivers/altos5.cpp4
-rw-r--r--src/mame/drivers/altos8600.cpp2
-rw-r--r--src/mame/drivers/ampro.cpp2
-rw-r--r--src/mame/drivers/apricot.cpp3
-rw-r--r--src/mame/drivers/apricotf.cpp2
-rw-r--r--src/mame/drivers/apricotp.cpp2
-rw-r--r--src/mame/drivers/att4425.cpp2
-rw-r--r--src/mame/drivers/attache.cpp2
-rw-r--r--src/mame/drivers/aussiebyte.cpp4
-rw-r--r--src/mame/drivers/bigbord2.cpp2
-rw-r--r--src/mame/drivers/bullet.cpp4
-rw-r--r--src/mame/drivers/bw12.cpp2
-rw-r--r--src/mame/drivers/ccs300.cpp2
-rw-r--r--src/mame/drivers/compis.cpp2
-rw-r--r--src/mame/drivers/czk80.cpp2
-rw-r--r--src/mame/drivers/dlair.cpp2
-rw-r--r--src/mame/drivers/dmax8000.cpp4
-rw-r--r--src/mame/drivers/dsb46.cpp2
-rw-r--r--src/mame/drivers/gridcomp.cpp2
-rw-r--r--src/mame/drivers/huebler.cpp2
-rw-r--r--src/mame/drivers/isbc.cpp3
-rw-r--r--src/mame/drivers/jade.cpp2
-rw-r--r--src/mame/drivers/kaypro.cpp8
-rw-r--r--src/mame/drivers/kdt6.cpp2
-rw-r--r--src/mame/drivers/mc80.cpp2
-rw-r--r--src/mame/drivers/mccpm.cpp2
-rw-r--r--src/mame/drivers/mcr.cpp2
-rw-r--r--src/mame/drivers/mikromik.cpp2
-rw-r--r--src/mame/drivers/mtx.cpp2
-rw-r--r--src/mame/drivers/mz2500.cpp2
-rw-r--r--src/mame/drivers/nanos.cpp4
-rw-r--r--src/mame/drivers/ngen.cpp4
-rw-r--r--src/mame/drivers/octopus.cpp2
-rw-r--r--src/mame/drivers/onyx.cpp4
-rw-r--r--src/mame/drivers/osbexec.cpp2
-rw-r--r--src/mame/drivers/p8k.cpp8
-rw-r--r--src/mame/drivers/pcm.cpp2
-rw-r--r--src/mame/drivers/polyplay.cpp2
-rw-r--r--src/mame/drivers/proconn.cpp2
-rw-r--r--src/mame/drivers/pulsar.cpp2
-rw-r--r--src/mame/drivers/pve500.cpp2
-rw-r--r--src/mame/drivers/pwrview.cpp4
-rw-r--r--src/mame/drivers/qx10.cpp2
-rw-r--r--src/mame/drivers/rainbow.cpp2
-rw-r--r--src/mame/drivers/rc702.cpp2
-rw-r--r--src/mame/drivers/rmnimbus.cpp2
-rw-r--r--src/mame/drivers/rt1715.cpp2
-rw-r--r--src/mame/drivers/sun1.cpp2
-rw-r--r--src/mame/drivers/super6.cpp2
-rw-r--r--src/mame/drivers/superslave.cpp4
-rw-r--r--src/mame/drivers/systec.cpp2
-rw-r--r--src/mame/drivers/tdv2324.cpp2
-rw-r--r--src/mame/drivers/tiki100.cpp2
-rw-r--r--src/mame/drivers/tranz330.cpp2
-rw-r--r--src/mame/drivers/trs80m2.cpp4
-rw-r--r--src/mame/drivers/ts802.cpp4
-rw-r--r--src/mame/drivers/ts803.cpp2
-rw-r--r--src/mame/drivers/ts816.cpp23
-rw-r--r--src/mame/drivers/univac.cpp2
-rw-r--r--src/mame/drivers/victor9k.cpp2
-rw-r--r--src/mame/drivers/x1.cpp2
-rw-r--r--src/mame/drivers/xerox820.cpp4
-rw-r--r--src/mame/drivers/zsbc3.cpp2
-rw-r--r--src/mame/machine/acs8600_ics.cpp8
68 files changed, 117 insertions, 106 deletions
diff --git a/src/mame/drivers/a7150.cpp b/src/mame/drivers/a7150.cpp
index a8316c24cb5..8220ad96964 100644
--- a/src/mame/drivers/a7150.cpp
+++ b/src/mame/drivers/a7150.cpp
@@ -469,7 +469,7 @@ static MACHINE_CONFIG_START( a7150 )
MCFG_DEVCB_CHAIN_OUTPUT(DEVWRITELINE(Z80SIO_TAG, z80sio_device, txca_w))
MCFG_Z80CTC_ZC1_CB(DEVWRITELINE(Z80SIO_TAG, z80sio_device, rxtxcb_w))
- MCFG_Z80SIO_ADD(Z80SIO_TAG, 4800, 0, 0, 0, 0)
+ MCFG_DEVICE_ADD(Z80SIO_TAG, Z80SIO, 4800)
MCFG_Z80SIO_OUT_INT_CB(INPUTLINE("gfxcpu", INPUT_LINE_IRQ0))
MCFG_Z80SIO_OUT_TXDA_CB(DEVWRITELINE(RS232_A_TAG, rs232_port_device, write_txd))
MCFG_Z80SIO_OUT_DTRA_CB(DEVWRITELINE(RS232_A_TAG, rs232_port_device, write_dtr))
diff --git a/src/mame/drivers/abc1600.cpp b/src/mame/drivers/abc1600.cpp
index ec7228402d7..ecedaa56343 100644
--- a/src/mame/drivers/abc1600.cpp
+++ b/src/mame/drivers/abc1600.cpp
@@ -884,7 +884,7 @@ static MACHINE_CONFIG_START( abc1600 )
MCFG_Z80DMA_IN_IORQ_CB(DEVREAD8(ABC1600_MAC_TAG, abc1600_mac_device, dma2_iorq_r))
MCFG_Z80DMA_OUT_IORQ_CB(DEVWRITE8(ABC1600_MAC_TAG, abc1600_mac_device, dma2_iorq_w))
- MCFG_Z80DART_ADD(Z8470AB1_TAG, XTAL_64MHz/16, 0, 0, 0, 0 )
+ MCFG_DEVICE_ADD(Z8470AB1_TAG, Z80DART, XTAL_64MHz/16)
MCFG_Z80DART_OUT_TXDA_CB(DEVWRITELINE(RS232_B_TAG, rs232_port_device, write_txd))
MCFG_Z80DART_OUT_DTRA_CB(DEVWRITELINE(RS232_B_TAG, rs232_port_device, write_dtr))
MCFG_Z80DART_OUT_RTSA_CB(DEVWRITELINE(RS232_B_TAG, rs232_port_device, write_rts))
diff --git a/src/mame/drivers/abc80x.cpp b/src/mame/drivers/abc80x.cpp
index 69910735097..cff3346fd59 100644
--- a/src/mame/drivers/abc80x.cpp
+++ b/src/mame/drivers/abc80x.cpp
@@ -1041,7 +1041,7 @@ static MACHINE_CONFIG_START( abc800c )
MCFG_Z80CTC_ZC1_CB(WRITELINE(abc800_state, ctc_z1_w))
MCFG_Z80CTC_ZC2_CB(WRITELINE(abc800_state, ctc_z2_w))
- MCFG_Z80SIO2_ADD(Z80SIO_TAG, ABC800_X01/2/2, 0, 0, 0, 0 )
+ MCFG_DEVICE_ADD(Z80SIO_TAG, Z80SIO2, ABC800_X01/2/2)
MCFG_Z80DART_OUT_TXDA_CB(DEVWRITELINE(RS232_B_TAG, rs232_port_device, write_txd))
MCFG_Z80DART_OUT_DTRA_CB(DEVWRITELINE(RS232_B_TAG, rs232_port_device, write_dtr))
MCFG_Z80DART_OUT_RTSA_CB(DEVWRITELINE(RS232_B_TAG, rs232_port_device, write_rts))
@@ -1050,7 +1050,7 @@ static MACHINE_CONFIG_START( abc800c )
MCFG_Z80DART_OUT_RTSB_CB(WRITELINE(abc800_state, sio_txdb_w))
MCFG_Z80DART_OUT_INT_CB(INPUTLINE(Z80_TAG, INPUT_LINE_IRQ0))
- MCFG_Z80DART_ADD(Z80DART_TAG, ABC800_X01/2/2, 0, 0, 0, 0 )
+ MCFG_DEVICE_ADD(Z80DART_TAG, Z80DART, ABC800_X01/2/2)
MCFG_Z80DART_OUT_TXDA_CB(DEVWRITELINE(RS232_A_TAG, rs232_port_device, write_txd))
MCFG_Z80DART_OUT_DTRA_CB(DEVWRITELINE(RS232_A_TAG, rs232_port_device, write_dtr))
MCFG_Z80DART_OUT_RTSA_CB(DEVWRITELINE(RS232_A_TAG, rs232_port_device, write_rts))
@@ -1116,7 +1116,7 @@ static MACHINE_CONFIG_START( abc800m )
MCFG_Z80CTC_ZC1_CB(WRITELINE(abc800_state, ctc_z1_w))
MCFG_Z80CTC_ZC2_CB(WRITELINE(abc800_state, ctc_z2_w))
- MCFG_Z80SIO2_ADD(Z80SIO_TAG, ABC800_X01/2/2, 0, 0, 0, 0 )
+ MCFG_DEVICE_ADD(Z80SIO_TAG, Z80SIO2, ABC800_X01/2/2)
MCFG_Z80DART_OUT_TXDA_CB(DEVWRITELINE(RS232_B_TAG, rs232_port_device, write_txd))
MCFG_Z80DART_OUT_DTRA_CB(DEVWRITELINE(RS232_B_TAG, rs232_port_device, write_dtr))
MCFG_Z80DART_OUT_RTSA_CB(DEVWRITELINE(RS232_B_TAG, rs232_port_device, write_rts))
@@ -1125,7 +1125,7 @@ static MACHINE_CONFIG_START( abc800m )
MCFG_Z80DART_OUT_RTSB_CB(WRITELINE(abc800_state, sio_txdb_w))
MCFG_Z80DART_OUT_INT_CB(INPUTLINE(Z80_TAG, INPUT_LINE_IRQ0))
- MCFG_Z80DART_ADD(Z80DART_TAG, ABC800_X01/2/2, 0, 0, 0, 0 )
+ MCFG_DEVICE_ADD(Z80DART_TAG, Z80DART, ABC800_X01/2/2)
MCFG_Z80DART_OUT_TXDA_CB(DEVWRITELINE(RS232_A_TAG, rs232_port_device, write_txd))
MCFG_Z80DART_OUT_DTRA_CB(DEVWRITELINE(RS232_A_TAG, rs232_port_device, write_dtr))
MCFG_Z80DART_OUT_RTSA_CB(DEVWRITELINE(RS232_A_TAG, rs232_port_device, write_rts))
@@ -1191,7 +1191,7 @@ static MACHINE_CONFIG_START( abc802 )
MCFG_Z80CTC_ZC1_CB(WRITELINE(abc800_state, ctc_z1_w))
MCFG_Z80CTC_ZC2_CB(WRITELINE(abc800_state, ctc_z2_w))
- MCFG_Z80SIO2_ADD(Z80SIO_TAG, ABC800_X01/2/2, 0, 0, 0, 0 )
+ MCFG_DEVICE_ADD(Z80SIO_TAG, Z80SIO2, ABC800_X01/2/2)
MCFG_Z80DART_OUT_TXDA_CB(DEVWRITELINE(RS232_B_TAG, rs232_port_device, write_txd))
MCFG_Z80DART_OUT_DTRA_CB(DEVWRITELINE(RS232_B_TAG, rs232_port_device, write_dtr))
MCFG_Z80DART_OUT_RTSA_CB(DEVWRITELINE(RS232_B_TAG, rs232_port_device, write_rts))
@@ -1200,7 +1200,7 @@ static MACHINE_CONFIG_START( abc802 )
MCFG_Z80DART_OUT_RTSB_CB(WRITELINE(abc800_state, sio_txdb_w))
MCFG_Z80DART_OUT_INT_CB(INPUTLINE(Z80_TAG, INPUT_LINE_IRQ0))
- MCFG_Z80DART_ADD(Z80DART_TAG, ABC800_X01/2/2, 0, 0, 0, 0 )
+ MCFG_DEVICE_ADD(Z80DART_TAG, Z80DART, ABC800_X01/2/2)
MCFG_Z80DART_OUT_TXDA_CB(DEVWRITELINE(RS232_A_TAG, rs232_port_device, write_txd))
MCFG_Z80DART_OUT_DTRA_CB(DEVWRITELINE(RS232_A_TAG, rs232_port_device, write_dtr))
MCFG_Z80DART_OUT_RTSA_CB(DEVWRITELINE(RS232_A_TAG, rs232_port_device, write_rts))
@@ -1263,7 +1263,7 @@ static MACHINE_CONFIG_START( abc806 )
MCFG_Z80CTC_ZC1_CB(WRITELINE(abc800_state, ctc_z1_w))
MCFG_Z80CTC_ZC2_CB(WRITELINE(abc800_state, ctc_z2_w))
- MCFG_Z80SIO2_ADD(Z80SIO_TAG, ABC800_X01/2/2, 0, 0, 0, 0 )
+ MCFG_DEVICE_ADD(Z80SIO_TAG, Z80SIO2, ABC800_X01/2/2)
MCFG_Z80DART_OUT_TXDA_CB(DEVWRITELINE(RS232_B_TAG, rs232_port_device, write_txd))
MCFG_Z80DART_OUT_DTRA_CB(DEVWRITELINE(RS232_B_TAG, rs232_port_device, write_dtr))
MCFG_Z80DART_OUT_RTSA_CB(DEVWRITELINE(RS232_B_TAG, rs232_port_device, write_rts))
@@ -1272,7 +1272,7 @@ static MACHINE_CONFIG_START( abc806 )
MCFG_Z80DART_OUT_RTSB_CB(WRITELINE(abc800_state, sio_txdb_w))
MCFG_Z80DART_OUT_INT_CB(INPUTLINE(Z80_TAG, INPUT_LINE_IRQ0))
- MCFG_Z80DART_ADD(Z80DART_TAG, ABC800_X01/2/2, 0, 0, 0, 0 )
+ MCFG_DEVICE_ADD(Z80DART_TAG, Z80DART, ABC800_X01/2/2)
MCFG_Z80DART_OUT_TXDA_CB(DEVWRITELINE(RS232_A_TAG, rs232_port_device, write_txd))
MCFG_Z80DART_OUT_DTRA_CB(DEVWRITELINE(RS232_A_TAG, rs232_port_device, write_dtr))
MCFG_Z80DART_OUT_RTSA_CB(DEVWRITELINE(RS232_A_TAG, rs232_port_device, write_rts))
diff --git a/src/mame/drivers/altos486.cpp b/src/mame/drivers/altos486.cpp
index ff0f4b9bb4c..1f81578be4b 100644
--- a/src/mame/drivers/altos486.cpp
+++ b/src/mame/drivers/altos486.cpp
@@ -140,7 +140,7 @@ static MACHINE_CONFIG_START( altos486 )
MCFG_FLOPPY_DRIVE_ADD("fdc:0", altos486_floppies, "525qd", altos486_state::floppy_formats)
MCFG_SLOT_FIXED(true)
- MCFG_Z80SIO0_ADD("sio0", 4000000, 0, 0, 0, 0)
+ MCFG_DEVICE_ADD("sio0", Z80SIO0, 4000000)
MCFG_Z80DART_OUT_TXDA_CB(DEVWRITELINE("rs232a", rs232_port_device, write_txd))
MCFG_Z80DART_OUT_DTRA_CB(DEVWRITELINE("rs232a", rs232_port_device, write_dtr))
MCFG_Z80DART_OUT_RTSA_CB(DEVWRITELINE("rs232a", rs232_port_device, write_rts))
@@ -148,7 +148,8 @@ static MACHINE_CONFIG_START( altos486 )
MCFG_Z80DART_OUT_DTRB_CB(DEVWRITELINE("rs232b", rs232_port_device, write_dtr))
MCFG_Z80DART_OUT_RTSB_CB(DEVWRITELINE("rs232b", rs232_port_device, write_rts))
//MCFG_Z80DART_OUT_INT_CB(WRITELINE(altos486_state, sio_interrupt))
- MCFG_Z80SIO0_ADD("sio1", 4000000, 0, 0, 0, 0)
+
+ MCFG_DEVICE_ADD("sio1", Z80SIO0, 4000000)
MCFG_Z80DART_OUT_TXDA_CB(DEVWRITELINE("rs232c", rs232_port_device, write_txd))
MCFG_Z80DART_OUT_DTRA_CB(DEVWRITELINE("rs232c", rs232_port_device, write_dtr))
MCFG_Z80DART_OUT_RTSA_CB(DEVWRITELINE("rs232c", rs232_port_device, write_rts))
@@ -156,13 +157,14 @@ static MACHINE_CONFIG_START( altos486 )
MCFG_Z80DART_OUT_DTRB_CB(DEVWRITELINE("rs232d", rs232_port_device, write_dtr))
MCFG_Z80DART_OUT_RTSB_CB(DEVWRITELINE("rs232d", rs232_port_device, write_rts))
//MCFG_Z80DART_OUT_INT_CB(WRITELINE(altos486_state, sio_interrupt))
- MCFG_Z80SIO0_ADD("sio2", 4000000, 0, 0, 0, 0)
+
+ MCFG_DEVICE_ADD("sio2", Z80SIO0, 4000000)
MCFG_Z80DART_OUT_TXDA_CB(DEVWRITELINE("rs232_lp", rs232_port_device, write_txd))
MCFG_Z80DART_OUT_DTRA_CB(DEVWRITELINE("rs232_lp", rs232_port_device, write_dtr))
MCFG_Z80DART_OUT_RTSA_CB(DEVWRITELINE("rs232_lp", rs232_port_device, write_rts))
//MCFG_Z80DART_OUT_INT_CB(WRITELINE(altos486_state, sio_interrupt))
- MCFG_I8274_ADD("i8274", XTAL_16MHz/4, 0, 0, 0, 0)
+ MCFG_DEVICE_ADD("i8274", I8274, XTAL_16MHz/4)
MCFG_Z80DART_OUT_TXDA_CB(DEVWRITELINE("rs422_wn", rs232_port_device, write_txd))
MCFG_Z80DART_OUT_DTRA_CB(DEVWRITELINE("rs422_wn", rs232_port_device, write_dtr))
MCFG_Z80DART_OUT_RTSA_CB(DEVWRITELINE("rs422_wn", rs232_port_device, write_rts))
diff --git a/src/mame/drivers/altos5.cpp b/src/mame/drivers/altos5.cpp
index bd816db962b..c115545bade 100644
--- a/src/mame/drivers/altos5.cpp
+++ b/src/mame/drivers/altos5.cpp
@@ -399,12 +399,12 @@ static MACHINE_CONFIG_START( altos5 )
MCFG_DEVICE_ADD("pio1", Z80PIO, XTAL_8MHz / 2)
MCFG_Z80PIO_OUT_INT_CB(INPUTLINE("maincpu", INPUT_LINE_IRQ0))
- MCFG_Z80DART_ADD("dart", XTAL_8MHz / 2, 0, 0, 0, 0 )
+ MCFG_DEVICE_ADD("dart", Z80DART, XTAL_8MHz / 2)
// Channel A - console #3
// Channel B - printer
MCFG_Z80DART_OUT_INT_CB(INPUTLINE("maincpu", INPUT_LINE_IRQ0))
- MCFG_Z80SIO0_ADD("sio", XTAL_8MHz / 2, 0, 0, 0, 0 )
+ MCFG_DEVICE_ADD("sio", Z80SIO0, XTAL_8MHz / 2)
// Channel A - console #2
// WRDY connects to (altos5_state, fdc_intrq_w)
// Channel B - console #1
diff --git a/src/mame/drivers/altos8600.cpp b/src/mame/drivers/altos8600.cpp
index c5c5d23867b..1aaf57d85a4 100644
--- a/src/mame/drivers/altos8600.cpp
+++ b/src/mame/drivers/altos8600.cpp
@@ -480,7 +480,7 @@ static MACHINE_CONFIG_START(altos8600)
MCFG_RAM_DEFAULT_SIZE("1M")
//MCFG_RAM_EXTRA_OPTIONS("512K")
- MCFG_I8274_ADD("uart8274", XTAL_16MHz/4, 0, 0, 0, 0)
+ MCFG_DEVICE_ADD("uart8274", I8274_NEW, XTAL_16MHz/4)
MCFG_Z80SIO_OUT_TXDA_CB(DEVWRITELINE("rs232a", rs232_port_device, write_txd))
MCFG_Z80SIO_OUT_DTRA_CB(DEVWRITELINE("rs232a", rs232_port_device, write_dtr))
MCFG_Z80SIO_OUT_RTSA_CB(DEVWRITELINE("rs232a", rs232_port_device, write_rts))
diff --git a/src/mame/drivers/ampro.cpp b/src/mame/drivers/ampro.cpp
index fa7e773c4f7..2636413dd4b 100644
--- a/src/mame/drivers/ampro.cpp
+++ b/src/mame/drivers/ampro.cpp
@@ -161,7 +161,7 @@ static MACHINE_CONFIG_START( ampro )
MCFG_DEVCB_CHAIN_OUTPUT(DEVWRITELINE("dart", z80dart_device, rxca_w))
MCFG_Z80CTC_ZC1_CB(DEVWRITELINE("dart", z80dart_device, rxtxcb_w)) // SIO Ch B
- MCFG_Z80DART_ADD("dart", XTAL_16MHz / 4, 0, 0, 0, 0 )
+ MCFG_DEVICE_ADD("dart", Z80DART, XTAL_16MHz / 4)
MCFG_Z80DART_OUT_TXDA_CB(DEVWRITELINE("rs232", rs232_port_device, write_txd))
MCFG_Z80DART_OUT_DTRA_CB(DEVWRITELINE("rs232", rs232_port_device, write_dtr))
MCFG_Z80DART_OUT_RTSA_CB(DEVWRITELINE("rs232", rs232_port_device, write_rts))
diff --git a/src/mame/drivers/apricot.cpp b/src/mame/drivers/apricot.cpp
index f3460ddda8d..964b2484555 100644
--- a/src/mame/drivers/apricot.cpp
+++ b/src/mame/drivers/apricot.cpp
@@ -412,7 +412,8 @@ static MACHINE_CONFIG_START( apricot )
MCFG_TTL153_ZA_CB(DEVWRITELINE("ic15", z80sio_device, rxca_w))
MCFG_TTL153_ZB_CB(DEVWRITELINE("ic15", z80sio_device, txca_w))
- MCFG_Z80SIO_ADD("ic15", XTAL_15MHz / 6, 0, 0, XTAL_4MHz / 16, XTAL_4MHz / 16)
+ MCFG_DEVICE_ADD("ic15", Z80SIO, XTAL_15MHz / 6)
+ MCFG_Z80SIO_OFFSETS(0, 0, XTAL_4MHz / 16, XTAL_4MHz / 16)
MCFG_Z80SIO_CPU("ic91")
MCFG_Z80SIO_OUT_TXDA_CB(DEVWRITELINE("rs232", rs232_port_device, write_txd))
MCFG_Z80SIO_OUT_DTRA_CB(DEVWRITELINE("rs232", rs232_port_device, write_dtr))
diff --git a/src/mame/drivers/apricotf.cpp b/src/mame/drivers/apricotf.cpp
index 81456f2311c..28aa129fed1 100644
--- a/src/mame/drivers/apricotf.cpp
+++ b/src/mame/drivers/apricotf.cpp
@@ -353,7 +353,7 @@ static MACHINE_CONFIG_START( act_f1 )
/* Devices */
MCFG_DEVICE_ADD(APRICOT_KEYBOARD_TAG, APRICOT_KEYBOARD, 0)
- MCFG_Z80SIO2_ADD(Z80SIO2_TAG, 2500000, 0, 0, 0, 0)
+ MCFG_DEVICE_ADD(Z80SIO2_TAG, Z80SIO2, 2500000)
MCFG_Z80DART_OUT_INT_CB(DEVWRITELINE("irqs", input_merger_device, in_w<0>))
MCFG_DEVICE_ADD(Z80CTC_TAG, Z80CTC, 2500000)
diff --git a/src/mame/drivers/apricotp.cpp b/src/mame/drivers/apricotp.cpp
index 3e8d5e862e1..324e77c5dda 100644
--- a/src/mame/drivers/apricotp.cpp
+++ b/src/mame/drivers/apricotp.cpp
@@ -634,7 +634,7 @@ static MACHINE_CONFIG_START( fp )
MCFG_PIT8253_CLK1(2000000)
MCFG_PIT8253_CLK2(2000000)
- MCFG_Z80SIO0_ADD(Z80SIO0_TAG, 2500000, 0, 0, 0, 0)
+ MCFG_DEVICE_ADD(Z80SIO0_TAG, Z80SIO0, 2500000)
MCFG_Z80DART_OUT_INT_CB(DEVWRITELINE(I8259A_TAG, pic8259_device, ir4_w))
MCFG_WD2797_ADD(WD2797_TAG, 2000000)
diff --git a/src/mame/drivers/att4425.cpp b/src/mame/drivers/att4425.cpp
index ba7a96e8b76..c1221db576a 100644
--- a/src/mame/drivers/att4425.cpp
+++ b/src/mame/drivers/att4425.cpp
@@ -230,7 +230,7 @@ static MACHINE_CONFIG_START( att4425 )
MCFG_Z80CTC_ZC2_CB(DEVWRITELINE(Z80SIO_TAG, z80sio_device, rxtxcb_w))
#endif
- MCFG_Z80SIO_ADD(Z80SIO_TAG, 4800, 0, 0, 0, 0) // XXX
+ MCFG_DEVICE_ADD(Z80SIO_TAG, Z80SIO, 4800) // XXX
MCFG_Z80SIO_OUT_INT_CB(INPUTLINE(Z80_TAG, INPUT_LINE_IRQ0))
MCFG_Z80SIO_OUT_TXDA_CB(DEVWRITELINE(RS232_A_TAG, rs232_port_device, write_txd))
MCFG_Z80SIO_OUT_DTRA_CB(DEVWRITELINE(RS232_A_TAG, rs232_port_device, write_dtr))
diff --git a/src/mame/drivers/attache.cpp b/src/mame/drivers/attache.cpp
index e26c5ff5521..09128f14682 100644
--- a/src/mame/drivers/attache.cpp
+++ b/src/mame/drivers/attache.cpp
@@ -942,7 +942,7 @@ static MACHINE_CONFIG_START( attache )
MCFG_Z80PIO_IN_PB_CB(READ8(attache_state, pio_portB_r))
MCFG_Z80PIO_OUT_PB_CB(WRITE8(attache_state, pio_portB_w))
- MCFG_Z80SIO0_ADD("sio",XTAL_8MHz / 26, 0, 0, 0, 0)
+ MCFG_DEVICE_ADD("sio", Z80SIO0, XTAL_8MHz / 26)
MCFG_DEVICE_ADD("ctc", Z80CTC, XTAL_8MHz / 4)
MCFG_Z80CTC_INTR_CB(INPUTLINE("maincpu", INPUT_LINE_IRQ0))
diff --git a/src/mame/drivers/aussiebyte.cpp b/src/mame/drivers/aussiebyte.cpp
index d04e77d453e..15836bae959 100644
--- a/src/mame/drivers/aussiebyte.cpp
+++ b/src/mame/drivers/aussiebyte.cpp
@@ -523,12 +523,12 @@ static MACHINE_CONFIG_START( aussiebyte )
MCFG_Z80PIO_OUT_INT_CB(INPUTLINE("maincpu", INPUT_LINE_IRQ0))
MCFG_Z80PIO_OUT_PA_CB(WRITE8(aussiebyte_state, port20_w))
- MCFG_Z80SIO0_ADD("sio1", XTAL_16MHz / 4, 0, 0, 0, 0)
+ MCFG_DEVICE_ADD("sio1", Z80SIO0, XTAL_16MHz / 4)
MCFG_Z80DART_OUT_INT_CB(INPUTLINE("maincpu", INPUT_LINE_IRQ0))
MCFG_Z80DART_OUT_WRDYA_CB(WRITELINE(aussiebyte_state, sio1_rdya_w))
MCFG_Z80DART_OUT_WRDYB_CB(WRITELINE(aussiebyte_state, sio1_rdyb_w))
- MCFG_Z80SIO0_ADD("sio2", XTAL_16MHz / 4, 0, 0, 0, 0)
+ MCFG_DEVICE_ADD("sio2", Z80SIO0, XTAL_16MHz / 4)
MCFG_Z80DART_OUT_INT_CB(INPUTLINE("maincpu", INPUT_LINE_IRQ0))
MCFG_Z80DART_OUT_WRDYA_CB(WRITELINE(aussiebyte_state, sio2_rdya_w))
MCFG_Z80DART_OUT_WRDYB_CB(WRITELINE(aussiebyte_state, sio2_rdyb_w))
diff --git a/src/mame/drivers/bigbord2.cpp b/src/mame/drivers/bigbord2.cpp
index a224b6ee1cd..3ee18f4f1df 100644
--- a/src/mame/drivers/bigbord2.cpp
+++ b/src/mame/drivers/bigbord2.cpp
@@ -604,7 +604,7 @@ static MACHINE_CONFIG_START( bigbord2 )
MCFG_Z80DMA_IN_IORQ_CB(READ8(bigbord2_state, io_read_byte))
MCFG_Z80DMA_OUT_IORQ_CB(WRITE8(bigbord2_state, io_write_byte))
- MCFG_Z80SIO_ADD("sio", MAIN_CLOCK, 0, 0, 0, 0)
+ MCFG_DEVICE_ADD("sio", Z80SIO, MAIN_CLOCK)
MCFG_Z80SIO_OUT_INT_CB(INPUTLINE("maincpu", INPUT_LINE_IRQ0))
MCFG_Z80SIO_OUT_SYNCA_CB(DEVWRITELINE("ctc1", z80ctc_device, trg2))
MCFG_Z80SIO_OUT_WRDYA_CB(WRITELINE(bigbord2_state, sio_wrdya_w))
diff --git a/src/mame/drivers/bullet.cpp b/src/mame/drivers/bullet.cpp
index c9ab6ce084f..319da73a63b 100644
--- a/src/mame/drivers/bullet.cpp
+++ b/src/mame/drivers/bullet.cpp
@@ -1115,7 +1115,7 @@ static MACHINE_CONFIG_START( bullet )
MCFG_TIMER_DRIVER_ADD_PERIODIC("ctc", bullet_state, ctc_tick, attotime::from_hz(XTAL_4_9152MHz/4))
- MCFG_Z80DART_ADD(Z80DART_TAG, XTAL_16MHz/4, 0, 0, 0, 0 )
+ MCFG_DEVICE_ADD(Z80DART_TAG, Z80DART, XTAL_16MHz/4)
MCFG_Z80DART_OUT_TXDA_CB(DEVWRITELINE(RS232_A_TAG, rs232_port_device, write_txd))
MCFG_Z80DART_OUT_DTRA_CB(DEVWRITELINE(RS232_A_TAG, rs232_port_device, write_dtr))
MCFG_Z80DART_OUT_RTSA_CB(DEVWRITELINE(RS232_A_TAG, rs232_port_device, write_rts))
@@ -1195,7 +1195,7 @@ static MACHINE_CONFIG_START( bulletf )
MCFG_TIMER_DRIVER_ADD_PERIODIC("ctc", bullet_state, ctc_tick, attotime::from_hz(XTAL_4_9152MHz/4))
- MCFG_Z80DART_ADD(Z80DART_TAG, XTAL_16MHz/4, 0, 0, 0, 0 )
+ MCFG_DEVICE_ADD(Z80DART_TAG, Z80DART, XTAL_16MHz/4)
MCFG_Z80DART_OUT_TXDA_CB(DEVWRITELINE(RS232_A_TAG, rs232_port_device, write_txd))
MCFG_Z80DART_OUT_DTRA_CB(DEVWRITELINE(RS232_A_TAG, rs232_port_device, write_dtr))
MCFG_Z80DART_OUT_RTSA_CB(DEVWRITELINE(RS232_A_TAG, rs232_port_device, write_rts))
diff --git a/src/mame/drivers/bw12.cpp b/src/mame/drivers/bw12.cpp
index 326405bc3bc..744e85edfb6 100644
--- a/src/mame/drivers/bw12.cpp
+++ b/src/mame/drivers/bw12.cpp
@@ -583,7 +583,7 @@ static MACHINE_CONFIG_START( common )
MCFG_PIA_IRQA_HANDLER(INPUTLINE(Z80_TAG, INPUT_LINE_IRQ0))
MCFG_PIA_IRQB_HANDLER(INPUTLINE(Z80_TAG, INPUT_LINE_IRQ0))
- MCFG_Z80SIO0_ADD(Z80SIO_TAG, XTAL_16MHz/4, 0, 0, 0, 0)
+ MCFG_DEVICE_ADD(Z80SIO_TAG, Z80SIO0, XTAL_16MHz/4)
MCFG_Z80DART_OUT_TXDA_CB(DEVWRITELINE(RS232_A_TAG, rs232_port_device, write_txd))
MCFG_Z80DART_OUT_DTRA_CB(DEVWRITELINE(RS232_A_TAG, rs232_port_device, write_dtr))
MCFG_Z80DART_OUT_RTSA_CB(DEVWRITELINE(RS232_A_TAG, rs232_port_device, write_rts))
diff --git a/src/mame/drivers/ccs300.cpp b/src/mame/drivers/ccs300.cpp
index 8aea648fb6f..dfc6c1bc953 100644
--- a/src/mame/drivers/ccs300.cpp
+++ b/src/mame/drivers/ccs300.cpp
@@ -125,7 +125,7 @@ static MACHINE_CONFIG_START( ccs300 )
MCFG_DEVCB_CHAIN_OUTPUT(DEVWRITELINE("sio", z80sio_device, rxca_w))
/* Devices */
- MCFG_Z80SIO_ADD("sio", XTAL_4MHz, 0, 0, 0, 0)
+ MCFG_DEVICE_ADD("sio", Z80SIO, XTAL_4MHz)
MCFG_Z80SIO_OUT_INT_CB(INPUTLINE("maincpu", INPUT_LINE_IRQ0))
MCFG_Z80SIO_OUT_TXDA_CB(DEVWRITELINE("rs232", rs232_port_device, write_txd))
MCFG_Z80SIO_OUT_DTRA_CB(DEVWRITELINE("rs232", rs232_port_device, write_dtr))
diff --git a/src/mame/drivers/compis.cpp b/src/mame/drivers/compis.cpp
index a5f069136ea..88b69111376 100644
--- a/src/mame/drivers/compis.cpp
+++ b/src/mame/drivers/compis.cpp
@@ -778,7 +778,7 @@ static MACHINE_CONFIG_START( compis )
MCFG_DEVICE_ADD(COMPIS_KEYBOARD_TAG, COMPIS_KEYBOARD, 0)
MCFG_COMPIS_KEYBOARD_OUT_TX_HANDLER(DEVWRITELINE(I8251A_TAG, i8251_device, write_rxd))
- MCFG_I8274_ADD(I8274_TAG, XTAL_15_36MHz/4, 0, 0, 0, 0)
+ MCFG_DEVICE_ADD(I8274_TAG, I8274, XTAL_15_36MHz/4)
MCFG_Z80DART_OUT_TXDA_CB(DEVWRITELINE(RS232_A_TAG, rs232_port_device, write_txd))
MCFG_Z80DART_OUT_DTRA_CB(DEVWRITELINE(RS232_A_TAG, rs232_port_device, write_dtr))
MCFG_Z80DART_OUT_RTSA_CB(DEVWRITELINE(RS232_A_TAG, rs232_port_device, write_rts))
diff --git a/src/mame/drivers/czk80.cpp b/src/mame/drivers/czk80.cpp
index 0b9ed9622cb..0606970f2c7 100644
--- a/src/mame/drivers/czk80.cpp
+++ b/src/mame/drivers/czk80.cpp
@@ -207,7 +207,7 @@ static MACHINE_CONFIG_START( czk80 )
MCFG_Z80CTC_ZC1_CB(WRITELINE(czk80_state, ctc_z1_w))
MCFG_Z80CTC_ZC2_CB(WRITELINE(czk80_state, ctc_z2_w))
- MCFG_Z80DART_ADD("z80dart", XTAL_16MHz / 4, 0, 0, 0, 0 )
+ MCFG_DEVICE_ADD("z80dart", Z80DART, XTAL_16MHz / 4)
//MCFG_Z80DART_OUT_TXDA_CB(DEVWRITELINE("rs232", rs232_port_device, write_txd))
//MCFG_Z80DART_OUT_DTRA_CB(DEVWRITELINE("rs232", rs232_port_device, write_dtr))
//MCFG_Z80DART_OUT_RTSA_CB(DEVWRITELINE("rs232", rs232_port_device, write_rts))
diff --git a/src/mame/drivers/dlair.cpp b/src/mame/drivers/dlair.cpp
index 8e71830d632..81f78b66a21 100644
--- a/src/mame/drivers/dlair.cpp
+++ b/src/mame/drivers/dlair.cpp
@@ -755,7 +755,7 @@ static MACHINE_CONFIG_START( dleuro )
MCFG_Z80CTC_INTR_CB(INPUTLINE("maincpu", INPUT_LINE_IRQ0))
MCFG_Z80CTC_ZC0_CB(WRITELINE(dlair_state, write_speaker))
- MCFG_Z80SIO0_ADD("sio", MASTER_CLOCK_EURO/4 /* same as "maincpu" */, 0, 0, 0, 0)
+ MCFG_DEVICE_ADD("sio", Z80SIO0, MASTER_CLOCK_EURO/4 /* same as "maincpu" */)
MCFG_Z80DART_OUT_INT_CB(INPUTLINE("maincpu", INPUT_LINE_IRQ0))
// TODO: hook up tx and rx callbacks
diff --git a/src/mame/drivers/dmax8000.cpp b/src/mame/drivers/dmax8000.cpp
index 12179d8d00f..f45e9901765 100644
--- a/src/mame/drivers/dmax8000.cpp
+++ b/src/mame/drivers/dmax8000.cpp
@@ -163,7 +163,7 @@ static MACHINE_CONFIG_START( dmax8000 )
MCFG_Z80CTC_ZC1_CB(DEVWRITELINE("dart2", z80dart_device, rxtxcb_w))
MCFG_Z80CTC_ZC2_CB(DEVWRITELINE("dart1", z80dart_device, rxtxcb_w))
- MCFG_Z80DART_ADD("dart1", XTAL_4MHz, 0, 0, 0, 0 ) // A = terminal; B = aux
+ MCFG_DEVICE_ADD("dart1", Z80DART, XTAL_4MHz) // A = terminal; B = aux
MCFG_Z80DART_OUT_TXDA_CB(DEVWRITELINE("rs232", rs232_port_device, write_txd))
MCFG_Z80DART_OUT_DTRA_CB(DEVWRITELINE("rs232", rs232_port_device, write_dtr))
MCFG_Z80DART_OUT_RTSA_CB(DEVWRITELINE("rs232", rs232_port_device, write_rts))
@@ -174,7 +174,7 @@ static MACHINE_CONFIG_START( dmax8000 )
MCFG_RS232_RI_HANDLER(DEVWRITELINE("dart1", z80dart_device, ria_w))
MCFG_RS232_CTS_HANDLER(DEVWRITELINE("dart1", z80dart_device, ctsa_w))
- MCFG_Z80DART_ADD("dart2", XTAL_4MHz, 0, 0, 0, 0 ) // RS232 ports
+ MCFG_DEVICE_ADD("dart2", Z80DART, XTAL_4MHz) // RS232 ports
MCFG_DEVICE_ADD("pio1", Z80PIO, XTAL_4MHz)
MCFG_Z80PIO_OUT_PA_CB(WRITE8(dmax8000_state, port0c_w))
diff --git a/src/mame/drivers/dsb46.cpp b/src/mame/drivers/dsb46.cpp
index 5ef235552ab..57c1f7936f4 100644
--- a/src/mame/drivers/dsb46.cpp
+++ b/src/mame/drivers/dsb46.cpp
@@ -117,7 +117,7 @@ static MACHINE_CONFIG_START( dsb46 )
MCFG_DEVCB_CHAIN_OUTPUT(DEVWRITELINE("sio", z80sio_device, rxca_w))
/* Devices */
- MCFG_Z80SIO_ADD("sio", XTAL_4MHz, 0, 0, 0, 0)
+ MCFG_DEVICE_ADD("sio", Z80SIO, XTAL_4MHz)
MCFG_Z80SIO_OUT_INT_CB(INPUTLINE("maincpu", INPUT_LINE_IRQ0))
MCFG_Z80SIO_OUT_TXDA_CB(DEVWRITELINE("rs232", rs232_port_device, write_txd))
MCFG_Z80SIO_OUT_DTRA_CB(DEVWRITELINE("rs232", rs232_port_device, write_dtr))
diff --git a/src/mame/drivers/gridcomp.cpp b/src/mame/drivers/gridcomp.cpp
index d83df2e76c4..58ffe585760 100644
--- a/src/mame/drivers/gridcomp.cpp
+++ b/src/mame/drivers/gridcomp.cpp
@@ -383,7 +383,7 @@ static MACHINE_CONFIG_START( grid1101 )
MCFG_I7220_IRQ_CALLBACK(DEVWRITELINE(I80130_TAG, i80130_device, ir1_w))
MCFG_I7220_DRQ_CALLBACK(DEVWRITELINE(I80130_TAG, i80130_device, ir1_w))
- MCFG_I8274_ADD("uart8274", XTAL_4_032MHz, 0, 0, 0, 0)
+ MCFG_DEVICE_ADD("uart8274", I8274_NEW, XTAL_4_032MHz)
MCFG_DEVICE_ADD("modem", I8255, 0)
diff --git a/src/mame/drivers/huebler.cpp b/src/mame/drivers/huebler.cpp
index 13e77786de1..2f372149eb9 100644
--- a/src/mame/drivers/huebler.cpp
+++ b/src/mame/drivers/huebler.cpp
@@ -339,7 +339,7 @@ static MACHINE_CONFIG_START( amu880 )
MCFG_DEVICE_ADD(Z80PIO2_TAG, Z80PIO, XTAL_10MHz/4)
MCFG_Z80PIO_OUT_INT_CB(INPUTLINE(Z80_TAG, INPUT_LINE_IRQ0))
- MCFG_Z80SIO0_ADD(Z80SIO_TAG, XTAL_10MHz/4, 0, 0, 0, 0) // U856
+ MCFG_DEVICE_ADD(Z80SIO_TAG, Z80SIO0, XTAL_10MHz/4) // U856
MCFG_Z80DART_OUT_TXDA_CB(WRITELINE(amu880_state, cassette_w))
MCFG_Z80DART_OUT_INT_CB(INPUTLINE(Z80_TAG, INPUT_LINE_IRQ0))
diff --git a/src/mame/drivers/isbc.cpp b/src/mame/drivers/isbc.cpp
index e994047fe66..d0322ad123f 100644
--- a/src/mame/drivers/isbc.cpp
+++ b/src/mame/drivers/isbc.cpp
@@ -467,8 +467,8 @@ static MACHINE_CONFIG_START( isbc286 )
MCFG_CENTRONICS_OUTPUT_LATCH_ADD("cent_data_out", "centronics")
- MCFG_I8274_ADD("uart8274", XTAL_16MHz/4, 0, 0, 0, 0)
#if 0
+ MCFG_DEVICE_ADD("uart8274", I8274, XTAL_16MHz/4)
MCFG_Z80DART_OUT_TXDA_CB(DEVWRITELINE("rs232a", rs232_port_device, write_txd))
MCFG_Z80DART_OUT_DTRA_CB(DEVWRITELINE("rs232a", rs232_port_device, write_dtr))
MCFG_Z80DART_OUT_RTSA_CB(DEVWRITELINE("rs232a", rs232_port_device, write_rts))
@@ -477,6 +477,7 @@ static MACHINE_CONFIG_START( isbc286 )
MCFG_Z80DART_OUT_RTSB_CB(DEVWRITELINE("rs232b", rs232_port_device, write_rts))
MCFG_Z80DART_OUT_INT_CB(WRITELINE(isbc_state, isbc_uart8274_irq))
#else
+ MCFG_DEVICE_ADD("uart8274", I8274_NEW, XTAL_16MHz/4)
MCFG_Z80SIO_OUT_TXDA_CB(DEVWRITELINE("rs232a", rs232_port_device, write_txd))
MCFG_Z80SIO_OUT_DTRA_CB(DEVWRITELINE("rs232a", rs232_port_device, write_dtr))
MCFG_Z80SIO_OUT_RTSA_CB(DEVWRITELINE("rs232a", rs232_port_device, write_rts))
diff --git a/src/mame/drivers/jade.cpp b/src/mame/drivers/jade.cpp
index ad92bfe3a49..e12e6f00530 100644
--- a/src/mame/drivers/jade.cpp
+++ b/src/mame/drivers/jade.cpp
@@ -63,7 +63,7 @@ static MACHINE_CONFIG_START( jade )
MCFG_DEVCB_CHAIN_OUTPUT(DEVWRITELINE("sio", z80sio_device, rxca_w))
/* Devices */
- MCFG_Z80SIO_ADD("sio", XTAL_4MHz, 0, 0, 0, 0)
+ MCFG_DEVICE_ADD("sio", Z80SIO, XTAL_4MHz)
//MCFG_Z80SIO_OUT_INT_CB(INPUTLINE("maincpu", INPUT_LINE_IRQ0)) // no evidence of a daisy chain because IM2 is not set
MCFG_Z80SIO_OUT_TXDA_CB(DEVWRITELINE("rs232", rs232_port_device, write_txd))
MCFG_Z80SIO_OUT_DTRA_CB(DEVWRITELINE("rs232", rs232_port_device, write_dtr))
diff --git a/src/mame/drivers/kaypro.cpp b/src/mame/drivers/kaypro.cpp
index e96a5932518..b60881f0c51 100644
--- a/src/mame/drivers/kaypro.cpp
+++ b/src/mame/drivers/kaypro.cpp
@@ -242,7 +242,7 @@ static MACHINE_CONFIG_START( kayproii )
MCFG_Z80PIO_IN_PA_CB(READ8(kaypro_state, pio_system_r))
MCFG_Z80PIO_OUT_PA_CB(WRITE8(kaypro_state, kayproii_pio_system_w))
- MCFG_Z80SIO0_ADD("z80sio", XTAL_20MHz / 8, 0, 0, 0, 0)
+ MCFG_DEVICE_ADD("z80sio", Z80SIO0, XTAL_20MHz / 8)
MCFG_Z80DART_OUT_INT_CB(INPUTLINE("maincpu", INPUT_LINE_IRQ0))
MCFG_FD1793_ADD("fdc", XTAL_20MHz / 20)
@@ -305,10 +305,12 @@ static MACHINE_CONFIG_START( kaypro2x )
MCFG_CENTRONICS_OUTPUT_LATCH_ADD("cent_data_out", "centronics")
- MCFG_Z80SIO0_ADD("z80sio", XTAL_16MHz / 4, 0, 0, 0, 0)
+ MCFG_DEVICE_ADD("z80sio", Z80SIO0, XTAL_16MHz / 4)
MCFG_Z80DART_OUT_INT_CB(INPUTLINE("maincpu", INPUT_LINE_IRQ0))
- MCFG_Z80SIO0_ADD("z80sio_2x", XTAL_16MHz / 4, 0, 0, 0, 0) /* extra sio for modem and printer */
+
+ MCFG_DEVICE_ADD("z80sio_2x", Z80SIO0, XTAL_16MHz / 4) /* extra sio for modem and printer */
MCFG_Z80DART_OUT_INT_CB(INPUTLINE("maincpu", INPUT_LINE_IRQ0))
+
MCFG_DEVICE_ADD("brg", COM8116, XTAL_5_0688MHz) // WD1943, SMC8116
MCFG_FD1793_ADD("fdc", XTAL_16MHz / 16)
MCFG_WD_FDC_INTRQ_CALLBACK(WRITELINE(kaypro_state, fdc_intrq_w))
diff --git a/src/mame/drivers/kdt6.cpp b/src/mame/drivers/kdt6.cpp
index 122833c944a..14d03f9764e 100644
--- a/src/mame/drivers/kdt6.cpp
+++ b/src/mame/drivers/kdt6.cpp
@@ -660,7 +660,7 @@ static MACHINE_CONFIG_START( psi98 )
MCFG_Z80CTC_ZC0_CB(DEVWRITELINE("speaker", speaker_sound_device, level_w))
MCFG_Z80CTC_ZC2_CB(DEVWRITELINE("ctc2", z80ctc_device, trg3))
- MCFG_Z80SIO_ADD("sio", XTAL_16MHz / 4, 0, 0, 0, 0)
+ MCFG_DEVICE_ADD("sio", Z80SIO, XTAL_16MHz / 4)
MCFG_Z80SIO_OUT_INT_CB(INPUTLINE("maincpu", INPUT_LINE_IRQ0))
MCFG_Z80SIO_OUT_TXDA_CB(DEVWRITELINE("rs232a", rs232_port_device, write_txd))
MCFG_Z80SIO_OUT_DTRA_CB(DEVWRITELINE("rs232a", rs232_port_device, write_dtr))
diff --git a/src/mame/drivers/mc80.cpp b/src/mame/drivers/mc80.cpp
index 47134d37dfa..20c596e82e7 100644
--- a/src/mame/drivers/mc80.cpp
+++ b/src/mame/drivers/mc80.cpp
@@ -245,7 +245,7 @@ static MACHINE_CONFIG_START( mc8030 )
// ZC1: to SIO CLK CH B
// ZC2: KMBG (??)
- MCFG_Z80SIO0_ADD("asp_sio", 4800, 0, 0, 0, 0 )
+ MCFG_DEVICE_ADD("asp_sio", Z80SIO0, 4800)
// SIO CH A in = keyboard; out = beeper; CH B = IFSS (??)
MACHINE_CONFIG_END
diff --git a/src/mame/drivers/mccpm.cpp b/src/mame/drivers/mccpm.cpp
index da8686353b5..e681fdf4948 100644
--- a/src/mame/drivers/mccpm.cpp
+++ b/src/mame/drivers/mccpm.cpp
@@ -84,7 +84,7 @@ static MACHINE_CONFIG_START( mccpm )
MCFG_CLOCK_SIGNAL_HANDLER(DEVWRITELINE("sio", z80sio_device, txca_w))
MCFG_DEVCB_CHAIN_OUTPUT(DEVWRITELINE("sio", z80sio_device, rxca_w))
- MCFG_Z80SIO_ADD("sio", XTAL_4MHz, 0, 0, 0, 0)
+ MCFG_DEVICE_ADD("sio", Z80SIO, XTAL_4MHz)
MCFG_Z80SIO_OUT_INT_CB(INPUTLINE("maincpu", INPUT_LINE_IRQ0))
MCFG_Z80SIO_OUT_TXDA_CB(DEVWRITELINE("rs232", rs232_port_device, write_txd))
MCFG_Z80SIO_OUT_DTRA_CB(DEVWRITELINE("rs232", rs232_port_device, write_dtr))
diff --git a/src/mame/drivers/mcr.cpp b/src/mame/drivers/mcr.cpp
index f23f8a8afad..39a816ddf98 100644
--- a/src/mame/drivers/mcr.cpp
+++ b/src/mame/drivers/mcr.cpp
@@ -1899,7 +1899,7 @@ static MACHINE_CONFIG_DERIVED( mcr_91490_ipu, mcr_91490_snt )
MCFG_DEVICE_ADD("ipu_pio1", Z80PIO, 7372800/2)
MCFG_Z80PIO_OUT_INT_CB(INPUTLINE("ipu", INPUT_LINE_IRQ0))
- MCFG_Z80SIO0_ADD("ipu_sio", 7372800/2, 0, 0, 0, 0)
+ MCFG_DEVICE_ADD("ipu_sio", Z80SIO0, 7372800/2)
MCFG_Z80DART_OUT_INT_CB(INPUTLINE("ipu", INPUT_LINE_IRQ0))
MCFG_Z80DART_OUT_TXDA_CB(WRITELINE(mcr_state, sio_txda_w))
MCFG_Z80DART_OUT_TXDB_CB(WRITELINE(mcr_state, sio_txdb_w))
diff --git a/src/mame/drivers/mikromik.cpp b/src/mame/drivers/mikromik.cpp
index 0a6fd4e16cd..c1fb21628bf 100644
--- a/src/mame/drivers/mikromik.cpp
+++ b/src/mame/drivers/mikromik.cpp
@@ -496,7 +496,7 @@ static MACHINE_CONFIG_START( mm1 )
MCFG_FLOPPY_DRIVE_ADD(UPD765_TAG ":1", mm1_floppies, "525qd", mm1_state::floppy_formats)
MCFG_FLOPPY_DRIVE_SOUND(true)
- MCFG_UPD7201_ADD(UPD7201_TAG, XTAL_6_144MHz/2, 0, 0, 0, 0)
+ MCFG_DEVICE_ADD(UPD7201_TAG, UPD7201, XTAL_6_144MHz/2)
MCFG_Z80DART_OUT_TXDA_CB(DEVWRITELINE(RS232_A_TAG, rs232_port_device, write_txd))
MCFG_Z80DART_OUT_DTRA_CB(DEVWRITELINE(RS232_A_TAG, rs232_port_device, write_dtr))
MCFG_Z80DART_OUT_RTSA_CB(DEVWRITELINE(RS232_A_TAG, rs232_port_device, write_rts))
diff --git a/src/mame/drivers/mtx.cpp b/src/mame/drivers/mtx.cpp
index b764ba33558..9b2c1870a63 100644
--- a/src/mame/drivers/mtx.cpp
+++ b/src/mame/drivers/mtx.cpp
@@ -363,7 +363,7 @@ static MACHINE_CONFIG_DERIVED( rs128, mtx512 )
MCFG_Z80_DAISY_CHAIN(rs128_daisy_chain)
/* devices */
- MCFG_Z80DART_ADD(Z80DART_TAG, XTAL_4MHz, 0, 0, 0, 0 )
+ MCFG_DEVICE_ADD(Z80DART_TAG, Z80DART, XTAL_4MHz)
MCFG_Z80DART_OUT_INT_CB(INPUTLINE(Z80_TAG, INPUT_LINE_IRQ0))
/* internal ram */
diff --git a/src/mame/drivers/mz2500.cpp b/src/mame/drivers/mz2500.cpp
index ebfb341cb2f..4f87e4ad09f 100644
--- a/src/mame/drivers/mz2500.cpp
+++ b/src/mame/drivers/mz2500.cpp
@@ -2097,7 +2097,7 @@ static MACHINE_CONFIG_START( mz2500 )
MCFG_Z80PIO_OUT_PA_CB(WRITE8(mz2500_state, mz2500_pio1_porta_w))
MCFG_Z80PIO_IN_PB_CB(READ8(mz2500_state, mz2500_pio1_porta_r))
- MCFG_Z80SIO0_ADD("z80sio", 6000000, 0, 0, 0, 0)
+ MCFG_DEVICE_ADD("z80sio", Z80SIO0, 6000000)
MCFG_DEVICE_ADD(RP5C15_TAG, RP5C15, XTAL_32_768kHz)
MCFG_RP5C15_OUT_ALARM_CB(WRITELINE(mz2500_state, mz2500_rtc_alarm_irq))
diff --git a/src/mame/drivers/nanos.cpp b/src/mame/drivers/nanos.cpp
index 674014ca34d..a85e12365d8 100644
--- a/src/mame/drivers/nanos.cpp
+++ b/src/mame/drivers/nanos.cpp
@@ -491,10 +491,10 @@ static MACHINE_CONFIG_START( nanos )
MCFG_DEVICE_ADD("z80pio_1", Z80PIO, XTAL_4MHz)
MCFG_Z80PIO_OUT_INT_CB(INPUTLINE("maincpu", INPUT_LINE_IRQ0))
- MCFG_Z80SIO0_ADD("z80sio_0", XTAL_4MHz, 0, 0, 0, 0)
+ MCFG_DEVICE_ADD("z80sio_0", Z80SIO0, XTAL_4MHz)
MCFG_Z80DART_OUT_INT_CB(WRITELINE(nanos_state, z80daisy_interrupt))
- MCFG_Z80SIO0_ADD("z80sio_1", XTAL_4MHz, 0, 0, 0, 0)
+ MCFG_DEVICE_ADD("z80sio_1", Z80SIO0, XTAL_4MHz)
MCFG_Z80DART_OUT_INT_CB(WRITELINE(nanos_state, z80daisy_interrupt))
MCFG_DEVICE_ADD("z80pio", Z80PIO, XTAL_4MHz)
diff --git a/src/mame/drivers/ngen.cpp b/src/mame/drivers/ngen.cpp
index 0d76ea5176f..30b769a08a6 100644
--- a/src/mame/drivers/ngen.cpp
+++ b/src/mame/drivers/ngen.cpp
@@ -950,7 +950,7 @@ static MACHINE_CONFIG_START( ngen )
MCFG_I8237_OUT_IOW_3_CB(WRITE8(ngen_state, dma_3_dack_w))
// I/O board
- MCFG_UPD7201_ADD("iouart",0,0,0,0,0) // clocked by PIT channel 2?
+ MCFG_DEVICE_ADD("iouart", UPD7201, 0) // clocked by PIT channel 2?
MCFG_Z80DART_OUT_TXDA_CB(DEVWRITELINE("rs232_a", rs232_port_device, write_txd))
MCFG_Z80DART_OUT_TXDB_CB(DEVWRITELINE("rs232_b", rs232_port_device, write_txd))
MCFG_Z80DART_OUT_DTRA_CB(DEVWRITELINE("rs232_a", rs232_port_device, write_dtr))
@@ -1061,7 +1061,7 @@ static MACHINE_CONFIG_START( ngen386 )
MCFG_I8237_OUT_IOW_3_CB(WRITE8(ngen_state, dma_3_dack_w))
// I/O board
- MCFG_UPD7201_ADD("iouart",0,0,0,0,0) // clocked by PIT channel 2?
+ MCFG_DEVICE_ADD("iouart", UPD7201, 0) // clocked by PIT channel 2?
MCFG_Z80DART_OUT_TXDA_CB(DEVWRITELINE("rs232_a", rs232_port_device, write_txd))
MCFG_Z80DART_OUT_TXDB_CB(DEVWRITELINE("rs232_b", rs232_port_device, write_txd))
MCFG_Z80DART_OUT_DTRA_CB(DEVWRITELINE("rs232_a", rs232_port_device, write_dtr))
diff --git a/src/mame/drivers/octopus.cpp b/src/mame/drivers/octopus.cpp
index c4074d67f5c..3f2bac7797e 100644
--- a/src/mame/drivers/octopus.cpp
+++ b/src/mame/drivers/octopus.cpp
@@ -960,7 +960,7 @@ static MACHINE_CONFIG_START( octopus )
MCFG_SOUND_ADD("speaker", SPEAKER_SOUND, 0)
MCFG_SOUND_ROUTE(ALL_OUTPUTS, "mono", 0.50)
- MCFG_Z80SIO2_ADD("serial", XTAL_16MHz / 4, 0, 0, 0, 0) // clock rate not mentioned in tech manual
+ MCFG_DEVICE_ADD("serial", Z80SIO2, XTAL_16MHz / 4) // clock rate not mentioned in tech manual
MCFG_Z80DART_OUT_INT_CB(DEVWRITELINE("pic_master",pic8259_device, ir1_w))
MCFG_Z80DART_OUT_TXDA_CB(DEVWRITELINE("serial_a",rs232_port_device, write_txd))
MCFG_Z80DART_OUT_TXDB_CB(DEVWRITELINE("serial_b",rs232_port_device, write_txd))
diff --git a/src/mame/drivers/onyx.cpp b/src/mame/drivers/onyx.cpp
index cb1bab9a754..6e68c7ff76c 100644
--- a/src/mame/drivers/onyx.cpp
+++ b/src/mame/drivers/onyx.cpp
@@ -128,8 +128,8 @@ static MACHINE_CONFIG_START( c8002 )
/* peripheral hardware */
//MCFG_DEVICE_ADD("z80ctc_0", Z80CTC, XTAL_4MHz)
//MCFG_DEVICE_ADD("z80ctc_1", Z80CTC, XTAL_4MHz)
- //MCFG_Z80SIO0_ADD("z80sio_0", 9600, 0, 0, 0, 0)
- //MCFG_Z80SIO0_ADD("z80sio_1", 9600, 0, 0, 0, 0)
+ //MCFG_DEVICE_ADD("z80sio_0", Z80SIO0, 9600)
+ //MCFG_DEVICE_ADD("z80sio_1", Z80SIO0, 9600)
//MCFG_DEVICE_ADD("z80pio_0", Z80CTC, XTAL_4MHz)
//MCFG_DEVICE_ADD("z80pio_1", Z80CTC, XTAL_4MHz)
//MCFG_DEVICE_ADD("z80pio_2", Z80CTC, XTAL_4MHz)
diff --git a/src/mame/drivers/osbexec.cpp b/src/mame/drivers/osbexec.cpp
index 2a2a9fc05c3..e3e775dd0e3 100644
--- a/src/mame/drivers/osbexec.cpp
+++ b/src/mame/drivers/osbexec.cpp
@@ -590,7 +590,7 @@ static MACHINE_CONFIG_START( osbexec )
MCFG_INPUT_MERGER_ANY_HIGH("mainirq")
MCFG_INPUT_MERGER_OUTPUT_HANDLER(INPUTLINE("maincpu", 0))
- MCFG_Z80SIO2_ADD("sio", MAIN_CLOCK/6, 0, 0, 0, 0)
+ MCFG_DEVICE_ADD("sio", Z80SIO2, MAIN_CLOCK/6)
MCFG_Z80DART_OUT_TXDA_CB(DEVWRITELINE(MODEM_PORT_TAG, rs232_port_device, write_txd)) MCFG_DEVCB_INVERT
MCFG_Z80DART_OUT_DTRA_CB(DEVWRITELINE(MODEM_PORT_TAG, rs232_port_device, write_dtr)) MCFG_DEVCB_INVERT
MCFG_Z80DART_OUT_RTSA_CB(DEVWRITELINE(MODEM_PORT_TAG, rs232_port_device, write_rts)) MCFG_DEVCB_INVERT
diff --git a/src/mame/drivers/p8k.cpp b/src/mame/drivers/p8k.cpp
index ddb3cbd0588..df96f92a057 100644
--- a/src/mame/drivers/p8k.cpp
+++ b/src/mame/drivers/p8k.cpp
@@ -494,9 +494,9 @@ static MACHINE_CONFIG_START( p8k )
// Baud Gen 0, Baud Gen 1, Baud Gen 2,
MCFG_Z80CTC_INTR_CB(INPUTLINE("maincpu", INPUT_LINE_IRQ0))
- MCFG_Z80SIO0_ADD("z80sio_0", XTAL_4MHz, 0, 0, 0, 0)
+ MCFG_DEVICE_ADD("z80sio_0", Z80SIO0, XTAL_4MHz)
MCFG_Z80DART_OUT_INT_CB(INPUTLINE("maincpu", INPUT_LINE_IRQ0))
- MCFG_Z80SIO0_ADD("z80sio_1", XTAL_4MHz, 0, 0, 0, 0)
+ MCFG_DEVICE_ADD("z80sio_1", Z80SIO0, XTAL_4MHz)
MCFG_Z80DART_OUT_INT_CB(INPUTLINE("maincpu", INPUT_LINE_IRQ0))
MCFG_DEVICE_ADD("z80pio_0", Z80PIO, 1229000)
@@ -541,9 +541,9 @@ static MACHINE_CONFIG_START( p8k_16 )
MCFG_DEVICE_ADD("z80ctc_1", Z80CTC, XTAL_4MHz)
MCFG_Z80CTC_INTR_CB(WRITELINE(p8k_state, p8k_16_daisy_interrupt))
- MCFG_Z80SIO0_ADD("z80sio_0", XTAL_4MHz, 0, 0, 0, 0)
+ MCFG_DEVICE_ADD("z80sio_0", Z80SIO0, XTAL_4MHz)
MCFG_Z80DART_OUT_INT_CB(INPUTLINE("maincpu", INPUT_LINE_IRQ0))
- MCFG_Z80SIO0_ADD("z80sio_1", XTAL_4MHz, 0, 0, 0, 0)
+ MCFG_DEVICE_ADD("z80sio_1", Z80SIO0, XTAL_4MHz)
MCFG_Z80DART_OUT_INT_CB(INPUTLINE("maincpu", INPUT_LINE_IRQ0))
MCFG_DEVICE_ADD("z80pio_0", Z80PIO, XTAL_4MHz)
diff --git a/src/mame/drivers/pcm.cpp b/src/mame/drivers/pcm.cpp
index e0dd023bf04..2183928883e 100644
--- a/src/mame/drivers/pcm.cpp
+++ b/src/mame/drivers/pcm.cpp
@@ -289,7 +289,7 @@ static MACHINE_CONFIG_START( pcm )
MCFG_Z80PIO_IN_PB_CB(READ8(pcm_state, pcm_85_r))
MCFG_Z80PIO_OUT_PB_CB(WRITE8(pcm_state, pcm_85_w))
- MCFG_Z80SIO0_ADD("z80sio", 4800, 0, 0, 0, 0) // clocks come from the system ctc
+ MCFG_DEVICE_ADD("z80sio", Z80SIO0, 4800) // clocks come from the system ctc
MCFG_DEVICE_ADD("z80ctc_u", Z80CTC, XTAL_10MHz /4)
MCFG_Z80CTC_INTR_CB(INPUTLINE("maincpu", INPUT_LINE_IRQ0))
diff --git a/src/mame/drivers/polyplay.cpp b/src/mame/drivers/polyplay.cpp
index 2c8e07acebb..4b1b37e89eb 100644
--- a/src/mame/drivers/polyplay.cpp
+++ b/src/mame/drivers/polyplay.cpp
@@ -360,7 +360,7 @@ static MACHINE_CONFIG_START( polyplay_zrepp )
MCFG_CPU_IO_MAP(polyplay_io_zrepp)
/* devices */
- MCFG_Z80SIO_ADD(Z80SIO_TAG, POLYPLAY_MAIN_CLOCK / 4, 0, 0, 0, 0) /* UB8560D */
+ MCFG_DEVICE_ADD(Z80SIO_TAG, Z80SIO, POLYPLAY_MAIN_CLOCK / 4) /* UB8560D */
MCFG_Z80SIO_OUT_INT_CB(INPUTLINE(Z80CPU_TAG, INPUT_LINE_IRQ0))
MACHINE_CONFIG_END
diff --git a/src/mame/drivers/proconn.cpp b/src/mame/drivers/proconn.cpp
index 2b9ee0965e5..b8d37ebb0e3 100644
--- a/src/mame/drivers/proconn.cpp
+++ b/src/mame/drivers/proconn.cpp
@@ -373,7 +373,7 @@ static MACHINE_CONFIG_START( proconn )
MCFG_DEVICE_ADD("z80ctc", Z80CTC, 4000000)
MCFG_Z80CTC_INTR_CB(INPUTLINE("maincpu", INPUT_LINE_IRQ0))
- MCFG_Z80SIO0_ADD( "z80sio", 4000000, 0, 0, 0, 0 ) /* ?? Mhz */
+ MCFG_DEVICE_ADD("z80sio", Z80SIO0, 4000000) /* ?? Mhz */
MCFG_SPEAKER_STANDARD_STEREO("lspeaker", "rspeaker")
diff --git a/src/mame/drivers/pulsar.cpp b/src/mame/drivers/pulsar.cpp
index f5f4ac528d8..4aa69e07b8b 100644
--- a/src/mame/drivers/pulsar.cpp
+++ b/src/mame/drivers/pulsar.cpp
@@ -240,7 +240,7 @@ static MACHINE_CONFIG_START( pulsar )
MCFG_MSM5832_ADD("rtc", XTAL_32_768kHz)
- MCFG_Z80DART_ADD("z80dart", XTAL_4MHz, 0, 0, 0, 0 )
+ MCFG_DEVICE_ADD("z80dart", Z80DART, XTAL_4MHz)
MCFG_Z80DART_OUT_TXDA_CB(DEVWRITELINE("rs232", rs232_port_device, write_txd))
MCFG_Z80DART_OUT_DTRA_CB(DEVWRITELINE("rs232", rs232_port_device, write_dtr))
MCFG_Z80DART_OUT_RTSA_CB(DEVWRITELINE("rs232", rs232_port_device, write_rts))
diff --git a/src/mame/drivers/pve500.cpp b/src/mame/drivers/pve500.cpp
index 2e368cc944c..5979c5f7b89 100644
--- a/src/mame/drivers/pve500.cpp
+++ b/src/mame/drivers/pve500.cpp
@@ -344,7 +344,7 @@ static MACHINE_CONFIG_START( pve500 )
MCFG_DEVICE_ADD("external_ctc", Z80CTC, XTAL_12MHz / 2)
MCFG_Z80CTC_INTR_CB(INPUTLINE("maincpu", INPUT_LINE_IRQ0))
- MCFG_Z80SIO0_ADD("external_sio", XTAL_12MHz / 2, 0, 0, 0, 0)
+ MCFG_DEVICE_ADD("external_sio", Z80SIO0, XTAL_12MHz / 2)
MCFG_Z80DART_OUT_INT_CB(INPUTLINE("maincpu", INPUT_LINE_IRQ0))
MCFG_Z80DART_OUT_TXDA_CB(DEVWRITELINE("player2", rs232_port_device, write_txd))
MCFG_Z80DART_OUT_TXDB_CB(DEVWRITELINE("edl_inout", rs232_port_device, write_txd))
diff --git a/src/mame/drivers/pwrview.cpp b/src/mame/drivers/pwrview.cpp
index a7a5de8e793..68830d1a6d9 100644
--- a/src/mame/drivers/pwrview.cpp
+++ b/src/mame/drivers/pwrview.cpp
@@ -370,7 +370,9 @@ static MACHINE_CONFIG_START( pwrview )
MCFG_FLOPPY_DRIVE_ADD("fdc:1", pwrview_floppies, "525dd", floppy_image_device::default_floppy_formats)
MCFG_DEVICE_ADD("uart", I8251, 0)
- MCFG_Z80SIO2_ADD("sio", 4000000, 0, 0, 0, 0)
+
+ MCFG_DEVICE_ADD("sio", Z80SIO2, 4000000)
+
MCFG_DEVICE_ADD("crtc", HD6845, XTAL_64MHz/64) // clock unknown
MCFG_MC6845_CHAR_WIDTH(32) // ??
MCFG_MC6845_UPDATE_ROW_CB(pwrview_state, update_row)
diff --git a/src/mame/drivers/qx10.cpp b/src/mame/drivers/qx10.cpp
index 0ed3f064fd1..e387c51d5fa 100644
--- a/src/mame/drivers/qx10.cpp
+++ b/src/mame/drivers/qx10.cpp
@@ -721,7 +721,7 @@ static MACHINE_CONFIG_START( qx10 )
MCFG_PIC8259_OUT_INT_CB(DEVWRITELINE("pic8259_master", pic8259_device, ir7_w))
MCFG_PIC8259_IN_SP_CB(GND)
- MCFG_UPD7201_ADD("upd7201", MAIN_CLK/4, 0, 0, 0, 0) // channel b clock set by pit2 channel 2
+ MCFG_DEVICE_ADD("upd7201", UPD7201, MAIN_CLK/4) // channel b clock set by pit2 channel 2
// Channel A: Keyboard
MCFG_Z80DART_OUT_TXDA_CB(DEVWRITELINE("kbd", rs232_port_device, write_txd))
// Channel B: RS232
diff --git a/src/mame/drivers/rainbow.cpp b/src/mame/drivers/rainbow.cpp
index 732a5ccdcde..dfc300452ec 100644
--- a/src/mame/drivers/rainbow.cpp
+++ b/src/mame/drivers/rainbow.cpp
@@ -3284,7 +3284,7 @@ MCFG_DEVICE_ADD("com8116_b", COM8116, XTAL_5_0688MHz) // Baud rate generator B
MCFG_COM8116_FR_HANDLER(WRITELINE(rainbow_state, com8116_b_fr_w))
MCFG_COM8116_FT_HANDLER(WRITELINE(rainbow_state, com8116_b_ft_w))
-MCFG_UPD7201_ADD("upd7201", XTAL_2_5MHz, 0, 0, 0, 0) // 2.5 Mhz from schematics
+MCFG_DEVICE_ADD("upd7201", UPD7201_NEW, XTAL_2_5MHz) // 2.5 Mhz from schematics
MCFG_Z80SIO_OUT_INT_CB(WRITELINE(rainbow_state, mpsc_irq))
MCFG_Z80SIO_OUT_TXDA_CB(DEVWRITELINE("rs232_a", rs232_port_device, write_txd))
diff --git a/src/mame/drivers/rc702.cpp b/src/mame/drivers/rc702.cpp
index 170d128daea..3b91a1ff469 100644
--- a/src/mame/drivers/rc702.cpp
+++ b/src/mame/drivers/rc702.cpp
@@ -354,7 +354,7 @@ static MACHINE_CONFIG_START( rc702 )
MCFG_Z80CTC_ZC1_CB(DEVWRITELINE("sio1", z80dart_device, rxtxcb_w))
MCFG_Z80CTC_INTR_CB(INPUTLINE("maincpu", INPUT_LINE_IRQ0))
- MCFG_Z80DART_ADD("sio1", XTAL_8MHz / 2, 0, 0, 0, 0 )
+ MCFG_DEVICE_ADD("sio1", Z80DART, XTAL_8MHz / 2)
MCFG_Z80DART_OUT_INT_CB(INPUTLINE("maincpu", INPUT_LINE_IRQ0))
MCFG_DEVICE_ADD("pio", Z80PIO, XTAL_8MHz / 2)
diff --git a/src/mame/drivers/rmnimbus.cpp b/src/mame/drivers/rmnimbus.cpp
index ff62011a948..005b2fd374c 100644
--- a/src/mame/drivers/rmnimbus.cpp
+++ b/src/mame/drivers/rmnimbus.cpp
@@ -164,7 +164,7 @@ static MACHINE_CONFIG_START( nimbus )
MCFG_RAM_EXTRA_OPTIONS("128K,256K,384K,512K,640K,1024K")
/* Peripheral chips */
- MCFG_Z80SIO2_ADD(Z80SIO_TAG, 4000000, 0, 0, 0, 0)
+ MCFG_DEVICE_ADD(Z80SIO_TAG, Z80SIO2, 4000000)
MCFG_Z80DART_OUT_TXDB_CB(DEVWRITELINE("rs232b", rs232_port_device, write_txd))
MCFG_Z80DART_OUT_DTRB_CB(DEVWRITELINE("rs232b", rs232_port_device, write_dtr))
MCFG_Z80DART_OUT_RTSB_CB(DEVWRITELINE("rs232b", rs232_port_device, write_rts))
diff --git a/src/mame/drivers/rt1715.cpp b/src/mame/drivers/rt1715.cpp
index 4735559109a..73838113c6c 100644
--- a/src/mame/drivers/rt1715.cpp
+++ b/src/mame/drivers/rt1715.cpp
@@ -303,7 +303,7 @@ static MACHINE_CONFIG_START( rt1715 )
MCFG_DEVICE_ADD("a30", Z80CTC, XTAL_10MHz/4 /* ? */)
- MCFG_Z80SIO0_ADD("a29", XTAL_10MHz/4 /* ? */, 0, 0, 0, 0)
+ MCFG_DEVICE_ADD("a29", Z80SIO0, XTAL_10MHz/4 /* ? */)
/* floppy */
MCFG_DEVICE_ADD("a71", Z80PIO, XTAL_10MHz/4 /* ? */)
diff --git a/src/mame/drivers/sun1.cpp b/src/mame/drivers/sun1.cpp
index 25a09fa6969..56857eff428 100644
--- a/src/mame/drivers/sun1.cpp
+++ b/src/mame/drivers/sun1.cpp
@@ -122,7 +122,7 @@ static MACHINE_CONFIG_START( sun1 )
MCFG_AM9513_OUT5_CALLBACK(DEVWRITELINE("iouart", upd7201_new_device, rxcb_w))
MCFG_DEVCB_CHAIN_OUTPUT(DEVWRITELINE("iouart", upd7201_new_device, txcb_w))
- MCFG_UPD7201_ADD("iouart", 0, 0, 0, 0, 0)
+ MCFG_DEVICE_ADD("iouart", UPD7201_NEW, 0)
MCFG_Z80SIO_OUT_TXDA_CB(DEVWRITELINE("rs232a", rs232_port_device, write_txd))
MCFG_Z80SIO_OUT_DTRA_CB(DEVWRITELINE("rs232a", rs232_port_device, write_dtr))
MCFG_Z80SIO_OUT_RTSA_CB(DEVWRITELINE("rs232a", rs232_port_device, write_rts))
diff --git a/src/mame/drivers/super6.cpp b/src/mame/drivers/super6.cpp
index d3112637a0a..6f3175e3c0c 100644
--- a/src/mame/drivers/super6.cpp
+++ b/src/mame/drivers/super6.cpp
@@ -517,7 +517,7 @@ static MACHINE_CONFIG_START( super6 )
MCFG_FLOPPY_DRIVE_ADD(WD2793_TAG":0", super6_floppies, "525dd", floppy_image_device::default_floppy_formats)
MCFG_FLOPPY_DRIVE_ADD(WD2793_TAG":1", super6_floppies, nullptr, floppy_image_device::default_floppy_formats)
- MCFG_Z80DART_ADD(Z80DART_TAG, XTAL_24MHz/4, 0, 0, 0, 0 )
+ MCFG_DEVICE_ADD(Z80DART_TAG, Z80DART, XTAL_24MHz/4)
MCFG_Z80DART_OUT_TXDA_CB(DEVWRITELINE(RS232_A_TAG, rs232_port_device, write_txd))
MCFG_Z80DART_OUT_DTRA_CB(DEVWRITELINE(RS232_A_TAG, rs232_port_device, write_dtr))
MCFG_Z80DART_OUT_RTSA_CB(DEVWRITELINE(RS232_A_TAG, rs232_port_device, write_rts))
diff --git a/src/mame/drivers/superslave.cpp b/src/mame/drivers/superslave.cpp
index e47d166cbc6..6c2220688cb 100644
--- a/src/mame/drivers/superslave.cpp
+++ b/src/mame/drivers/superslave.cpp
@@ -339,7 +339,7 @@ static MACHINE_CONFIG_START( superslave )
MCFG_DEVICE_ADD(Z80PIO_TAG, Z80PIO, XTAL_8MHz/2)
MCFG_Z80PIO_OUT_INT_CB(INPUTLINE(Z80_TAG, INPUT_LINE_IRQ0))
- MCFG_Z80DART_ADD(Z80DART_0_TAG, XTAL_8MHz/2, 0, 0, 0, 0 )
+ MCFG_DEVICE_ADD(Z80DART_0_TAG, Z80DART, XTAL_8MHz/2)
MCFG_Z80DART_OUT_TXDA_CB(DEVWRITELINE(RS232_A_TAG, rs232_port_device, write_txd))
MCFG_Z80DART_OUT_DTRA_CB(DEVWRITELINE(RS232_A_TAG, rs232_port_device, write_dtr))
MCFG_Z80DART_OUT_RTSA_CB(DEVWRITELINE(RS232_A_TAG, rs232_port_device, write_rts))
@@ -359,7 +359,7 @@ static MACHINE_CONFIG_START( superslave )
MCFG_RS232_DCD_HANDLER(DEVWRITELINE(Z80DART_0_TAG, z80dart_device, dcdb_w))
MCFG_RS232_CTS_HANDLER(DEVWRITELINE(Z80DART_0_TAG, z80dart_device, ctsb_w))
- MCFG_Z80DART_ADD(Z80DART_1_TAG, XTAL_8MHz/2, 0, 0, 0, 0 )
+ MCFG_DEVICE_ADD(Z80DART_1_TAG, Z80DART, XTAL_8MHz/2)
MCFG_Z80DART_OUT_TXDA_CB(DEVWRITELINE(RS232_C_TAG, rs232_port_device, write_txd))
MCFG_Z80DART_OUT_DTRA_CB(DEVWRITELINE(RS232_C_TAG, rs232_port_device, write_dtr))
MCFG_Z80DART_OUT_RTSA_CB(DEVWRITELINE(RS232_C_TAG, rs232_port_device, write_rts))
diff --git a/src/mame/drivers/systec.cpp b/src/mame/drivers/systec.cpp
index 39df25fa399..037c63dc831 100644
--- a/src/mame/drivers/systec.cpp
+++ b/src/mame/drivers/systec.cpp
@@ -88,7 +88,7 @@ static MACHINE_CONFIG_START( systec )
MCFG_DEVCB_CHAIN_OUTPUT(DEVWRITELINE("sio", z80sio_device, rxca_w))
/* Devices */
- MCFG_Z80SIO_ADD("sio", XTAL_4MHz, 0, 0, 0, 0)
+ MCFG_DEVICE_ADD("sio", Z80SIO, XTAL_4MHz)
//MCFG_Z80SIO_OUT_INT_CB(INPUTLINE("maincpu", INPUT_LINE_IRQ0)) // no evidence of a daisy chain because IM2 is not set
MCFG_Z80SIO_OUT_TXDA_CB(DEVWRITELINE("rs232", rs232_port_device, write_txd))
MCFG_Z80SIO_OUT_DTRA_CB(DEVWRITELINE("rs232", rs232_port_device, write_dtr))
diff --git a/src/mame/drivers/tdv2324.cpp b/src/mame/drivers/tdv2324.cpp
index 9e51db08c53..ffbf4f5ca4c 100644
--- a/src/mame/drivers/tdv2324.cpp
+++ b/src/mame/drivers/tdv2324.cpp
@@ -289,7 +289,7 @@ static MACHINE_CONFIG_START( tdv2324 )
MCFG_DEVICE_ADD(P8253_5_1_TAG, PIT8253, 0)
- MCFG_Z80SIO2_ADD(MK3887N4_TAG, 8000000/2, 0, 0, 0, 0)
+ MCFG_DEVICE_ADD(MK3887N4_TAG, Z80SIO2, 8000000/2)
MCFG_FD1797_ADD(FD1797PL02_TAG, 8000000/4)
MCFG_FLOPPY_DRIVE_ADD(FD1797PL02_TAG":0", tdv2324_floppies, "8dsdd", floppy_image_device::default_floppy_formats)
diff --git a/src/mame/drivers/tiki100.cpp b/src/mame/drivers/tiki100.cpp
index 0388d0e9aa5..4f8bb5acdd3 100644
--- a/src/mame/drivers/tiki100.cpp
+++ b/src/mame/drivers/tiki100.cpp
@@ -719,7 +719,7 @@ static MACHINE_CONFIG_START( tiki100 )
MCFG_TIKI100_BUS_SLOT_ADD("slot3", nullptr)
/* devices */
- MCFG_Z80DART_ADD(Z80DART_TAG, XTAL_8MHz/4, 0, 0, 0, 0 )
+ MCFG_DEVICE_ADD(Z80DART_TAG, Z80DART, XTAL_8MHz/4)
MCFG_Z80DART_OUT_TXDA_CB(DEVWRITELINE(RS232_A_TAG, rs232_port_device, write_txd))
MCFG_Z80DART_OUT_DTRA_CB(DEVWRITELINE(RS232_A_TAG, rs232_port_device, write_dtr))
MCFG_Z80DART_OUT_RTSA_CB(DEVWRITELINE(RS232_A_TAG, rs232_port_device, write_rts))
diff --git a/src/mame/drivers/tranz330.cpp b/src/mame/drivers/tranz330.cpp
index 5ce58c01ac2..efa88fe2869 100644
--- a/src/mame/drivers/tranz330.cpp
+++ b/src/mame/drivers/tranz330.cpp
@@ -167,7 +167,7 @@ static MACHINE_CONFIG_START( tranz330 )
MCFG_Z80PIO_IN_PA_CB(READ8(tranz330_state, card_r))
MCFG_Z80PIO_IN_PB_CB(READ8(tranz330_state, pio_b_r))
- MCFG_Z80DART_ADD(DART_TAG, XTAL_7_15909MHz/2, 0, 0, 0, 0 ) //*
+ MCFG_DEVICE_ADD(DART_TAG, Z80DART, XTAL_7_15909MHz/2) //*
MCFG_Z80DART_OUT_SYNCB_CB(WRITELINE(tranz330_state, syncb_w))
MCFG_Z80DART_OUT_TXDB_CB(DEVWRITELINE(RS232_TAG, rs232_port_device, write_txd)) //?
MCFG_Z80DART_OUT_DTRB_CB(DEVWRITELINE(RS232_TAG, rs232_port_device, write_dtr)) //?
diff --git a/src/mame/drivers/trs80m2.cpp b/src/mame/drivers/trs80m2.cpp
index b94ce2a826e..c28d9a36c2c 100644
--- a/src/mame/drivers/trs80m2.cpp
+++ b/src/mame/drivers/trs80m2.cpp
@@ -758,7 +758,7 @@ static MACHINE_CONFIG_START( trs80m2 )
MCFG_Z80PIO_OUT_PB_CB(DEVWRITE8("cent_data_out", output_latch_device, write))
MCFG_Z80PIO_OUT_BRDY_CB(WRITELINE(trs80m2_state, strobe_w))
- MCFG_Z80SIO0_ADD(Z80SIO_TAG, XTAL_8MHz/2, 0, 0, 0, 0)
+ MCFG_DEVICE_ADD(Z80SIO_TAG, Z80SIO0, XTAL_8MHz/2)
MCFG_Z80DART_OUT_INT_CB(INPUTLINE(Z80_TAG, INPUT_LINE_IRQ0))
MCFG_CENTRONICS_ADD(CENTRONICS_TAG, centronics_devices, "printer")
@@ -848,7 +848,7 @@ static MACHINE_CONFIG_START( trs80m16 )
MCFG_Z80PIO_OUT_PB_CB(DEVWRITE8("cent_data_out", output_latch_device, write))
MCFG_Z80PIO_OUT_BRDY_CB(WRITELINE(trs80m2_state, strobe_w))
- MCFG_Z80SIO0_ADD(Z80SIO_TAG, XTAL_8MHz/2, 0, 0, 0, 0)
+ MCFG_DEVICE_ADD(Z80SIO_TAG, Z80SIO0, XTAL_8MHz/2)
MCFG_Z80DART_OUT_INT_CB(INPUTLINE(Z80_TAG, INPUT_LINE_IRQ0))
MCFG_DEVICE_ADD(AM9519A_TAG, PIC8259, 0)
diff --git a/src/mame/drivers/ts802.cpp b/src/mame/drivers/ts802.cpp
index bb7ea828b83..f63ae4acd47 100644
--- a/src/mame/drivers/ts802.cpp
+++ b/src/mame/drivers/ts802.cpp
@@ -202,10 +202,10 @@ static MACHINE_CONFIG_START( ts802 )
MCFG_Z80DMA_IN_IORQ_CB(READ8(ts802_state, io_read_byte))
MCFG_Z80DMA_OUT_IORQ_CB(WRITE8(ts802_state, io_write_byte))
- MCFG_Z80DART_ADD("z80dart1", XTAL_16MHz / 4, 0, 0, 0, 0 )
+ MCFG_DEVICE_ADD("z80dart1", Z80DART, XTAL_16MHz / 4)
MCFG_Z80DART_OUT_INT_CB(INPUTLINE("maincpu", INPUT_LINE_IRQ0))
- MCFG_Z80DART_ADD("z80dart2", XTAL_16MHz / 4, 0, 0, 0, 0 )
+ MCFG_DEVICE_ADD("z80dart2", Z80DART, XTAL_16MHz / 4)
MCFG_Z80DART_OUT_INT_CB(INPUTLINE("maincpu", INPUT_LINE_IRQ0))
MCFG_DEVICE_ADD("z80ctc", Z80CTC, XTAL_16MHz / 4)
diff --git a/src/mame/drivers/ts803.cpp b/src/mame/drivers/ts803.cpp
index 920461ae751..91d5e77cb81 100644
--- a/src/mame/drivers/ts803.cpp
+++ b/src/mame/drivers/ts803.cpp
@@ -514,7 +514,7 @@ static MACHINE_CONFIG_START( ts803 )
//MCFG_DEVICE_ADD("sti", Z80STI, XTAL_16MHz/4) // STI baud rates are derived from XTAL_16MHz / 13
//MCFG_Z80STI_OUT_INT_CB(INPUTLINE("maincpu", INPUT_LINE_IRQ0))
- MCFG_Z80DART_ADD("dart", XTAL_16MHz / 4, 0, 0, 0, 0 )
+ MCFG_DEVICE_ADD("dart", Z80DART, XTAL_16MHz / 4)
MCFG_Z80DART_OUT_INT_CB(INPUTLINE("maincpu", INPUT_LINE_IRQ0))
//MCFG_Z80DART_OUT_TXDA_CB(DEVWRITELINE("rs232", rs232_port_device, write_txd))
//MCFG_Z80DART_OUT_DTRA_CB(DEVWRITELINE("rs232", rs232_port_device, write_dtr))
diff --git a/src/mame/drivers/ts816.cpp b/src/mame/drivers/ts816.cpp
index cc0654b4cce..180f05a19d7 100644
--- a/src/mame/drivers/ts816.cpp
+++ b/src/mame/drivers/ts816.cpp
@@ -266,35 +266,38 @@ static MACHINE_CONFIG_START( ts816 )
MCFG_DEVICE_ADD("terminal", GENERIC_TERMINAL, 0)
MCFG_GENERIC_TERMINAL_KEYBOARD_CB(PUT(ts816_state, kbd_put))
- //MCFG_Z80SIO2_ADD("sio0", XTAL_16MHz / 4, 0, 0, 0, 0 )
+ //MCFG_DEVICE_ADD("sio0", Z80SIO2, XTAL_16MHz / 4)
//MCFG_Z80DART_OUT_INT_CB(INPUTLINE("maincpu", INPUT_LINE_IRQ0))
- MCFG_Z80SIO2_ADD("sio1", XTAL_16MHz / 4, 0, 0, 0, 0 )
+ MCFG_DEVICE_ADD("sio1", Z80SIO2, XTAL_16MHz / 4)
MCFG_Z80DART_OUT_INT_CB(INPUTLINE("maincpu", INPUT_LINE_IRQ0))
- MCFG_Z80SIO2_ADD("sio2", XTAL_16MHz / 4, 0, 0, 0, 0 )
+ MCFG_DEVICE_ADD("sio2", Z80SIO2, XTAL_16MHz / 4)
MCFG_Z80DART_OUT_INT_CB(INPUTLINE("maincpu", INPUT_LINE_IRQ0))
- MCFG_Z80SIO2_ADD("sio3", XTAL_16MHz / 4, 0, 0, 0, 0 )
+ MCFG_DEVICE_ADD("sio3", Z80SIO2, XTAL_16MHz / 4)
MCFG_Z80DART_OUT_INT_CB(INPUTLINE("maincpu", INPUT_LINE_IRQ0))
- MCFG_Z80SIO2_ADD("sio4", XTAL_16MHz / 4, 0, 0, 0, 0 )
+ MCFG_DEVICE_ADD("sio4", Z80SIO2, XTAL_16MHz / 4)
MCFG_Z80DART_OUT_INT_CB(INPUTLINE("maincpu", INPUT_LINE_IRQ0))
- MCFG_Z80SIO2_ADD("sio5", XTAL_16MHz / 4, 0, 0, 0, 0 )
+ MCFG_DEVICE_ADD("sio5", Z80SIO2, XTAL_16MHz / 4)
MCFG_Z80DART_OUT_INT_CB(INPUTLINE("maincpu", INPUT_LINE_IRQ0))
- MCFG_Z80SIO2_ADD("sio6", XTAL_16MHz / 4, 0, 0, 0, 0 )
+ MCFG_DEVICE_ADD("sio6", Z80SIO2, XTAL_16MHz / 4)
MCFG_Z80DART_OUT_INT_CB(INPUTLINE("maincpu", INPUT_LINE_IRQ0))
- MCFG_Z80SIO2_ADD("sio7", XTAL_16MHz / 4, 0, 0, 0, 0 )
+ MCFG_DEVICE_ADD("sio7", Z80SIO2, XTAL_16MHz / 4)
MCFG_Z80DART_OUT_INT_CB(INPUTLINE("maincpu", INPUT_LINE_IRQ0))
- MCFG_Z80SIO2_ADD("sio8", XTAL_16MHz / 4, 0, 0, 0, 0 )
+ MCFG_DEVICE_ADD("sio8", Z80SIO2, XTAL_16MHz / 4)
MCFG_Z80DART_OUT_INT_CB(INPUTLINE("maincpu", INPUT_LINE_IRQ0))
- MCFG_Z80SIO2_ADD("sio9", XTAL_16MHz / 4, 0, 0, 0, 0 )
+ MCFG_DEVICE_ADD("sio9", Z80SIO2, XTAL_16MHz / 4)
MCFG_Z80DART_OUT_INT_CB(INPUTLINE("maincpu", INPUT_LINE_IRQ0))
+
MCFG_DEVICE_ADD("pio", Z80PIO, XTAL_16MHz / 4)
MCFG_Z80PIO_OUT_INT_CB(INPUTLINE("maincpu", INPUT_LINE_IRQ0))
//MCFG_Z80PIO_IN_PA_CB(READ8(ts816_state, porta_r))
//MCFG_Z80PIO_IN_PB_CB(READ8(ts816_state, portb_r))
//MCFG_Z80PIO_OUT_PB_CB(WRITE8(ts816_state, portb_w))
+
MCFG_DEVICE_ADD("ctc1", Z80CTC, XTAL_16MHz / 4)
MCFG_Z80CTC_INTR_CB(INPUTLINE("maincpu", INPUT_LINE_IRQ0))
MCFG_DEVICE_ADD("ctc2", Z80CTC, XTAL_16MHz / 4)
MCFG_Z80CTC_INTR_CB(INPUTLINE("maincpu", INPUT_LINE_IRQ0))
+
MCFG_DEVICE_ADD("dma", Z80DMA, XTAL_16MHz / 4)
//MCFG_Z80DMA_OUT_BUSREQ_CB(WRITELINE(ts816_state, busreq_w))
MCFG_Z80DMA_OUT_INT_CB(INPUTLINE("maincpu", INPUT_LINE_IRQ0))
diff --git a/src/mame/drivers/univac.cpp b/src/mame/drivers/univac.cpp
index ed227aee0e1..6386475511d 100644
--- a/src/mame/drivers/univac.cpp
+++ b/src/mame/drivers/univac.cpp
@@ -194,7 +194,7 @@ static MACHINE_CONFIG_START( uts20 )
MCFG_DEVICE_ADD("ctc", Z80CTC, XTAL_4MHz)
MCFG_Z80CTC_INTR_CB(INPUTLINE("maincpu", INPUT_LINE_IRQ0))
- MCFG_Z80DART_ADD("dart", XTAL_4MHz, 0, 0, 0, 0 )
+ MCFG_DEVICE_ADD("dart", Z80DART, XTAL_4MHz)
MCFG_Z80DART_OUT_INT_CB(INPUTLINE("maincpu", INPUT_LINE_IRQ0))
MACHINE_CONFIG_END
diff --git a/src/mame/drivers/victor9k.cpp b/src/mame/drivers/victor9k.cpp
index 2087f0f1a72..a8689dee94b 100644
--- a/src/mame/drivers/victor9k.cpp
+++ b/src/mame/drivers/victor9k.cpp
@@ -724,7 +724,7 @@ static MACHINE_CONFIG_START( victor9k )
MCFG_PIT8253_CLK2(100000)
MCFG_PIT8253_OUT2_HANDLER(DEVWRITELINE(I8259A_TAG, pic8259_device, ir2_w))
- MCFG_UPD7201_ADD(UPD7201_TAG, XTAL_30MHz/30, 0, 0, 0, 0)
+ MCFG_DEVICE_ADD(UPD7201_TAG, UPD7201, XTAL_30MHz/30)
MCFG_Z80DART_OUT_TXDA_CB(DEVWRITELINE(RS232_A_TAG, rs232_port_device, write_txd))
MCFG_Z80DART_OUT_DTRA_CB(DEVWRITELINE(RS232_A_TAG, rs232_port_device, write_dtr))
MCFG_Z80DART_OUT_RTSA_CB(DEVWRITELINE(RS232_A_TAG, rs232_port_device, write_rts))
diff --git a/src/mame/drivers/x1.cpp b/src/mame/drivers/x1.cpp
index 5b2221b9a38..afc1194e709 100644
--- a/src/mame/drivers/x1.cpp
+++ b/src/mame/drivers/x1.cpp
@@ -2616,7 +2616,7 @@ static MACHINE_CONFIG_DERIVED( x1turbo, x1 )
MCFG_Z80_DAISY_CHAIN(x1turbo_daisy)
MCFG_MACHINE_RESET_OVERRIDE(x1_state,x1turbo)
- MCFG_Z80SIO0_ADD("sio", MAIN_CLOCK/4 , 0, 0, 0, 0)
+ MCFG_DEVICE_ADD("sio", Z80SIO0, MAIN_CLOCK/4)
MCFG_Z80DART_OUT_INT_CB(INPUTLINE("x1_cpu", INPUT_LINE_IRQ0))
MCFG_DEVICE_ADD("dma", Z80DMA, MAIN_CLOCK/4)
diff --git a/src/mame/drivers/xerox820.cpp b/src/mame/drivers/xerox820.cpp
index 6f7debdd24f..0bab5ad7940 100644
--- a/src/mame/drivers/xerox820.cpp
+++ b/src/mame/drivers/xerox820.cpp
@@ -582,7 +582,7 @@ static MACHINE_CONFIG_START( xerox820 )
MCFG_FLOPPY_DRIVE_ADD(FD1771_TAG":0", xerox820_floppies, "sa400", floppy_image_device::default_floppy_formats)
MCFG_FLOPPY_DRIVE_ADD(FD1771_TAG":1", xerox820_floppies, "sa400", floppy_image_device::default_floppy_formats)
- MCFG_Z80SIO0_ADD(Z80SIO_TAG, XTAL_20MHz/8, 0, 0, 0, 0)
+ MCFG_DEVICE_ADD(Z80SIO_TAG, Z80SIO0, XTAL_20MHz/8)
MCFG_Z80DART_OUT_TXDA_CB(DEVWRITELINE(RS232_A_TAG, rs232_port_device, write_txd))
MCFG_Z80DART_OUT_DTRA_CB(DEVWRITELINE(RS232_A_TAG, rs232_port_device, write_dtr))
MCFG_Z80DART_OUT_RTSA_CB(DEVWRITELINE(RS232_A_TAG, rs232_port_device, write_rts))
@@ -669,7 +669,7 @@ static MACHINE_CONFIG_START( xerox820ii )
MCFG_FLOPPY_DRIVE_ADD(FD1797_TAG":0", xerox820_floppies, "sa450", floppy_image_device::default_floppy_formats)
MCFG_FLOPPY_DRIVE_ADD(FD1797_TAG":1", xerox820_floppies, "sa450", floppy_image_device::default_floppy_formats)
- MCFG_Z80SIO0_ADD(Z80SIO_TAG, XTAL_16MHz/4, 0, 0, 0, 0)
+ MCFG_DEVICE_ADD(Z80SIO_TAG, Z80SIO0, XTAL_16MHz/4)
MCFG_Z80DART_OUT_TXDA_CB(DEVWRITELINE(RS232_A_TAG, rs232_port_device, write_txd))
MCFG_Z80DART_OUT_DTRA_CB(DEVWRITELINE(RS232_A_TAG, rs232_port_device, write_dtr))
MCFG_Z80DART_OUT_RTSA_CB(DEVWRITELINE(RS232_A_TAG, rs232_port_device, write_rts))
diff --git a/src/mame/drivers/zsbc3.cpp b/src/mame/drivers/zsbc3.cpp
index 1a4975c6431..77febb0ea34 100644
--- a/src/mame/drivers/zsbc3.cpp
+++ b/src/mame/drivers/zsbc3.cpp
@@ -87,7 +87,7 @@ static MACHINE_CONFIG_START( zsbc3 )
MCFG_DEVCB_CHAIN_OUTPUT(DEVWRITELINE("sio", z80sio_device, rxca_w))
/* Devices */
- MCFG_Z80SIO_ADD("sio", XTAL_16MHz / 4, 0, 0, 0, 0)
+ MCFG_DEVICE_ADD("sio", Z80SIO, XTAL_16MHz / 4)
//MCFG_Z80SIO_OUT_INT_CB(INPUTLINE("maincpu", INPUT_LINE_IRQ0)) // no evidence of a daisy chain because IM2 is not set
MCFG_Z80SIO_OUT_TXDA_CB(DEVWRITELINE("rs232", rs232_port_device, write_txd))
MCFG_Z80SIO_OUT_DTRA_CB(DEVWRITELINE("rs232", rs232_port_device, write_dtr))
diff --git a/src/mame/machine/acs8600_ics.cpp b/src/mame/machine/acs8600_ics.cpp
index 7306d3d7eab..13d2b02728f 100644
--- a/src/mame/machine/acs8600_ics.cpp
+++ b/src/mame/machine/acs8600_ics.cpp
@@ -104,7 +104,7 @@ MACHINE_CONFIG_MEMBER( acs8600_ics_device::device_add_mconfig )
MCFG_DEVCB_CHAIN_OUTPUT(DEVWRITELINE("sio4", z80sio_device, txca_w))
MCFG_AM9513_OUT3_CALLBACK(DEVWRITELINE("sio4", z80sio_device, rxtxcb_w))
- MCFG_Z80SIO_ADD("sio1", XTAL_8MHz/2, 0, 0, 0, 0)
+ MCFG_DEVICE_ADD("sio1", Z80SIO, XTAL_8MHz/2)
MCFG_Z80SIO_OUT_TXDA_CB(DEVWRITELINE("rs2321a", rs232_port_device, write_txd))
MCFG_Z80SIO_OUT_DTRA_CB(DEVWRITELINE("rs2321a", rs232_port_device, write_dtr))
MCFG_Z80SIO_OUT_RTSA_CB(DEVWRITELINE("rs2321a", rs232_port_device, write_rts))
@@ -123,7 +123,7 @@ MACHINE_CONFIG_MEMBER( acs8600_ics_device::device_add_mconfig )
MCFG_RS232_DCD_HANDLER(DEVWRITELINE("sio1", z80sio_device, dcdb_w))
MCFG_RS232_CTS_HANDLER(DEVWRITELINE("sio1", z80sio_device, ctsb_w))
- MCFG_Z80SIO_ADD("sio2", XTAL_8MHz/2, 0, 0, 0, 0)
+ MCFG_DEVICE_ADD("sio2", Z80SIO, XTAL_8MHz/2)
MCFG_Z80SIO_OUT_TXDA_CB(DEVWRITELINE("rs2322a", rs232_port_device, write_txd))
MCFG_Z80SIO_OUT_DTRA_CB(DEVWRITELINE("rs2322a", rs232_port_device, write_dtr))
MCFG_Z80SIO_OUT_RTSA_CB(DEVWRITELINE("rs2322a", rs232_port_device, write_rts))
@@ -142,7 +142,7 @@ MACHINE_CONFIG_MEMBER( acs8600_ics_device::device_add_mconfig )
MCFG_RS232_DCD_HANDLER(DEVWRITELINE("sio2", z80sio_device, dcdb_w))
MCFG_RS232_CTS_HANDLER(DEVWRITELINE("sio2", z80sio_device, ctsb_w))
- MCFG_Z80SIO_ADD("sio3", XTAL_8MHz/2, 0, 0, 0, 0)
+ MCFG_DEVICE_ADD("sio3", Z80SIO, XTAL_8MHz/2)
MCFG_Z80SIO_OUT_TXDA_CB(DEVWRITELINE("rs2323a", rs232_port_device, write_txd))
MCFG_Z80SIO_OUT_DTRA_CB(DEVWRITELINE("rs2323a", rs232_port_device, write_dtr))
MCFG_Z80SIO_OUT_RTSA_CB(DEVWRITELINE("rs2323a", rs232_port_device, write_rts))
@@ -161,7 +161,7 @@ MACHINE_CONFIG_MEMBER( acs8600_ics_device::device_add_mconfig )
MCFG_RS232_DCD_HANDLER(DEVWRITELINE("sio3", z80sio_device, dcdb_w))
MCFG_RS232_CTS_HANDLER(DEVWRITELINE("sio3", z80sio_device, ctsb_w))
- MCFG_Z80SIO_ADD("sio4", XTAL_8MHz/2, 0, 0, 0, 0)
+ MCFG_DEVICE_ADD("sio4", Z80SIO, XTAL_8MHz/2)
MCFG_Z80SIO_OUT_TXDA_CB(DEVWRITELINE("rs2324a", rs232_port_device, write_txd))
MCFG_Z80SIO_OUT_DTRA_CB(DEVWRITELINE("rs2324a", rs232_port_device, write_dtr))
MCFG_Z80SIO_OUT_RTSA_CB(DEVWRITELINE("rs2324a", rs232_port_device, write_rts))