From 502197b9c80b5f384dccc939fc93e1dbd6bf90c1 Mon Sep 17 00:00:00 2001 From: Ivan Vangelista Date: Mon, 11 Feb 2019 18:18:45 +0100 Subject: screen.h: adddedconstructor for monochrom screens and removed MCFG_SCREEN_ADD_MONOCHROME and MCFG_SCREEN_COLOR (nw) misc MACHINE_CONFIG removal (nw) started work on voltage_regulator_device macros removal (nw) --- src/devices/bus/a2bus/a2sam.cpp | 13 ++- src/devices/bus/abcbus/cadmouse.cpp | 11 ++- src/devices/bus/abcbus/db411223.cpp | 11 ++- src/devices/bus/abcbus/unidisk.cpp | 5 +- src/devices/bus/c64/16kb.cpp | 11 +-- src/devices/bus/c64/dela_ep256.cpp | 29 +++--- src/devices/bus/c64/dela_ep64.cpp | 11 +-- src/devices/bus/c64/dela_ep7x8.cpp | 48 ++++----- src/devices/bus/c64/dela_ep7x8.h | 8 +- src/devices/bus/c64/fcc.cpp | 9 +- src/devices/bus/c64/multiscreen.cpp | 13 +-- src/devices/bus/c64/ps64.cpp | 21 +--- src/devices/bus/c64/reu.cpp | 8 +- src/devices/bus/c64/rex_ep256.cpp | 29 +++--- src/devices/bus/c64/speakeasy.cpp | 8 +- src/devices/bus/c64/xl80.cpp | 15 +-- src/devices/bus/cbm2/hrg.cpp | 32 +++--- src/devices/bus/cbmiec/c1526.cpp | 18 ++-- src/devices/bus/cbmiec/serialbox.cpp | 9 +- src/devices/bus/cbmiec/vic1515.cpp | 11 ++- src/devices/bus/cbmiec/vic1520.cpp | 9 +- src/devices/bus/cbus/pc9801_86.cpp | 23 +++-- src/devices/bus/centronics/covox.cpp | 31 +++--- src/devices/bus/centronics/digiblst.cpp | 13 ++- src/devices/bus/compis/hrg.cpp | 38 ++++---- src/devices/bus/comx35/clm.cpp | 17 ++-- src/devices/bus/cpc/amdrum.cpp | 13 ++- src/devices/bus/cpc/magicsound.cpp | 13 ++- src/devices/bus/interpro/keyboard/hle.cpp | 8 +- src/devices/bus/isa/adlib.cpp | 8 +- src/devices/bus/isa/aga.cpp | 13 +-- src/devices/bus/isa/aha1542.cpp | 9 +- src/devices/bus/isa/cga.cpp | 29 +++--- src/devices/bus/isa/ega.cpp | 15 +-- src/devices/bus/isa/eis_sad8852.cpp | 11 ++- src/devices/bus/isa/finalchs.cpp | 9 +- src/devices/bus/isa/lbaenhancer.cpp | 7 +- src/devices/bus/isa/mda.cpp | 39 ++++---- src/devices/bus/isa/num9rev.cpp | 17 ++-- src/devices/bus/isa/p1_sound.cpp | 16 +-- src/devices/bus/isa/pds.cpp | 7 +- src/devices/bus/isa/pgc.cpp | 25 ++--- src/devices/bus/isa/sc499.cpp | 7 +- src/devices/bus/isa/svga_cirrus.cpp | 28 +++--- src/devices/bus/isa/svga_s3.cpp | 56 +++++------ src/devices/bus/isa/svga_trident.cpp | 16 +-- src/devices/bus/isa/svga_tseng.cpp | 16 +-- src/devices/bus/isa/vga.cpp | 16 +-- src/devices/bus/isa/vga_ati.cpp | 53 +++++----- src/devices/bus/isa/wd1007a.cpp | 7 +- src/devices/bus/jakks_gamekey/rom.cpp | 5 +- src/devices/bus/megadrive/svp.cpp | 11 ++- src/devices/bus/msx_cart/fmpac.cpp | 8 +- src/devices/bus/msx_cart/konami.cpp | 40 ++++---- src/devices/bus/msx_cart/majutsushi.cpp | 13 ++- src/devices/bus/nasbus/avc.cpp | 11 ++- src/devices/bus/nes/konami.cpp | 18 ++-- src/devices/bus/nubus/nubus_48gc.cpp | 19 ++-- src/devices/bus/nubus/nubus_cb264.cpp | 15 +-- src/devices/bus/nubus/nubus_image.cpp | 7 +- src/devices/bus/nubus/nubus_m2hires.cpp | 15 +-- src/devices/bus/nubus/nubus_m2video.cpp | 15 +-- src/devices/bus/nubus/nubus_spec8.cpp | 15 +-- src/devices/bus/nubus/nubus_specpdq.cpp | 19 ++-- src/devices/bus/nubus/nubus_vikbw.cpp | 15 +-- src/devices/bus/nubus/nubus_wsportrait.cpp | 15 +-- src/devices/bus/nubus/pds30_30hr.cpp | 15 +-- src/devices/bus/nubus/pds30_cb264.cpp | 15 +-- src/devices/bus/nubus/pds30_mc30.cpp | 15 +-- src/devices/bus/nubus/pds30_procolor816.cpp | 15 +-- src/devices/bus/nubus/pds30_sigmalview.cpp | 15 +-- src/devices/bus/pet/hsg.cpp | 32 +++--- src/devices/bus/snes/upd.cpp | 146 +++++++++++++++------------- src/devices/bus/snes/upd.h | 6 +- src/devices/bus/vic20/videopak.cpp | 15 +-- src/devices/bus/wangpc/tig.cpp | 17 ++-- src/emu/screen.h | 13 ++- src/mame/audio/alesis.cpp | 6 +- src/mame/audio/csd.cpp | 6 +- src/mame/audio/gottlieb.cpp | 12 ++- src/mame/audio/harddriv.cpp | 6 +- src/mame/audio/midway.cpp | 12 ++- src/mame/audio/s11c_bg.cpp | 6 +- src/mame/audio/williams.cpp | 12 ++- src/mame/audio/wpcsnd.cpp | 6 +- src/mame/drivers/alphatpx.cpp | 44 ++++----- src/mame/drivers/amust.cpp | 12 +-- src/mame/drivers/anzterm.cpp | 31 +++--- src/mame/drivers/atari_s1.cpp | 6 +- src/mame/drivers/atari_s2.cpp | 6 +- src/mame/drivers/att4425.cpp | 19 ++-- src/mame/drivers/attache.cpp | 28 +++--- src/mame/drivers/ax20.cpp | 26 ++--- src/mame/drivers/beehive.cpp | 25 ++--- src/mame/drivers/bking.cpp | 6 +- src/mame/drivers/bw12.cpp | 18 ++-- src/mame/drivers/bwing.cpp | 6 +- src/mame/drivers/byvid.cpp | 6 +- src/mame/drivers/capbowl.cpp | 6 +- src/mame/drivers/champbas.cpp | 12 ++- src/mame/drivers/chsuper.cpp | 6 +- src/mame/drivers/ckz80.cpp | 6 +- src/mame/drivers/cmi.cpp | 8 +- src/mame/drivers/cntsteer.cpp | 6 +- src/mame/drivers/coco12.cpp | 6 +- src/mame/drivers/coolpool.cpp | 12 ++- src/mame/drivers/cop01.cpp | 6 +- src/mame/drivers/dectalk.cpp | 6 +- src/mame/drivers/dvk_ksm.cpp | 9 +- src/mame/drivers/eurocom2.cpp | 27 ++--- src/mame/drivers/fantland.cpp | 6 +- src/mame/drivers/finalizr.cpp | 6 +- src/mame/drivers/fk1.cpp | 14 +-- src/mame/drivers/galaxian.cpp | 12 ++- src/mame/drivers/gamecom.cpp | 6 +- src/mame/drivers/go2000.cpp | 6 +- src/mame/drivers/h19.cpp | 12 +-- src/mame/drivers/hankin.cpp | 6 +- src/mame/drivers/homelab.cpp | 45 +++++---- src/mame/drivers/hp2640.cpp | 8 +- src/mame/drivers/hp95lx.cpp | 8 +- src/mame/drivers/hp9845.cpp | 36 ++++--- src/mame/drivers/hyhoo.cpp | 6 +- src/mame/drivers/instantm.cpp | 6 +- src/mame/drivers/ipds.cpp | 23 ++--- src/mame/drivers/iq151.cpp | 22 ++--- src/mame/drivers/jankenmn.cpp | 6 +- src/mame/drivers/juicebox.cpp | 6 +- src/mame/drivers/junofrst.cpp | 6 +- src/mame/drivers/k8915.cpp | 23 ++--- src/mame/drivers/kaypro.cpp | 18 ++-- src/mame/drivers/kingobox.cpp | 12 ++- src/mame/drivers/kron.cpp | 13 ++- src/mame/drivers/ksayakyu.cpp | 6 +- src/mame/drivers/lasso.cpp | 6 +- src/mame/drivers/luckybal.cpp | 6 +- src/mame/drivers/m3.cpp | 23 ++--- src/mame/drivers/megazone.cpp | 6 +- src/mame/drivers/mephistp.cpp | 6 +- src/mame/drivers/meyc8080.cpp | 6 +- src/mame/drivers/micral.cpp | 14 +-- src/mame/drivers/microvsn.cpp | 6 +- src/mame/drivers/mjsister.cpp | 6 +- src/mame/drivers/modellot.cpp | 25 ++--- src/mame/drivers/murogmbl.cpp | 12 ++- src/mame/drivers/mx2178.cpp | 23 ++--- src/mame/drivers/nbmj8688.cpp | 12 ++- src/mame/drivers/nbmj8891.cpp | 6 +- src/mame/drivers/nbmj8900.cpp | 6 +- src/mame/drivers/nbmj8991.cpp | 6 +- src/mame/drivers/nightgal.cpp | 6 +- src/mame/drivers/nokia_3310.cpp | 58 +++++------ src/mame/drivers/notetaker.cpp | 6 +- src/mame/drivers/nyny.cpp | 6 +- src/mame/drivers/pandoras.cpp | 6 +- src/mame/drivers/pastelg.cpp | 12 ++- src/mame/drivers/peoplepc.cpp | 11 ++- src/mame/drivers/plan80.cpp | 25 ++--- src/mame/drivers/pockstat.cpp | 6 +- src/mame/drivers/pong.cpp | 18 ++-- src/mame/drivers/ppmast93.cpp | 6 +- src/mame/drivers/pyl601.cpp | 21 ++-- src/mame/drivers/rd100.cpp | 25 ++--- src/mame/drivers/rowamet.cpp | 6 +- src/mame/drivers/royalmah.cpp | 6 +- src/mame/drivers/s11.cpp | 6 +- src/mame/drivers/s11a.cpp | 6 +- src/mame/drivers/s11b.cpp | 6 +- src/mame/drivers/s3.cpp | 6 +- src/mame/drivers/s4.cpp | 6 +- src/mame/drivers/s6.cpp | 6 +- src/mame/drivers/s6a.cpp | 6 +- src/mame/drivers/s7.cpp | 6 +- src/mame/drivers/s8.cpp | 6 +- src/mame/drivers/s8a.cpp | 6 +- src/mame/drivers/s9.cpp | 6 +- src/mame/drivers/sbasketb.cpp | 6 +- src/mame/drivers/seicross.cpp | 6 +- src/mame/drivers/senjyo.cpp | 6 +- src/mame/drivers/shangkid.cpp | 6 +- src/mame/drivers/shisen.cpp | 6 +- src/mame/drivers/ssozumo.cpp | 6 +- src/mame/drivers/sys9002.cpp | 23 ++--- src/mame/drivers/tagteam.cpp | 6 +- src/mame/drivers/taito.cpp | 6 +- src/mame/drivers/tdv2324.cpp | 10 +- src/mame/drivers/trs80m2.cpp | 42 ++++---- src/mame/drivers/trucocl.cpp | 6 +- src/mame/drivers/ts803.cpp | 15 +-- src/mame/drivers/tsamurai.cpp | 6 +- src/mame/drivers/tsispch.cpp | 6 +- src/mame/drivers/univac.cpp | 21 ++-- src/mame/drivers/vcombat.cpp | 12 ++- src/mame/drivers/vidbrain.cpp | 6 +- src/mame/drivers/videopkr.cpp | 6 +- src/mame/drivers/vt100.cpp | 10 +- src/mame/drivers/wildpkr.cpp | 6 +- src/mame/drivers/williams.cpp | 12 ++- src/mame/drivers/wmg.cpp | 6 +- src/mame/drivers/xtheball.cpp | 6 +- src/mame/video/abc1600.cpp | 11 ++- src/mame/video/abc800.cpp | 11 ++- src/mame/video/abc802.cpp | 11 ++- src/mame/video/newbrain.cpp | 15 +-- src/mame/video/v1050.cpp | 17 ++-- 205 files changed, 1593 insertions(+), 1321 deletions(-) (limited to 'src') diff --git a/src/devices/bus/a2bus/a2sam.cpp b/src/devices/bus/a2bus/a2sam.cpp index 21ea8d1fdca..a2f2fd8781f 100644 --- a/src/devices/bus/a2bus/a2sam.cpp +++ b/src/devices/bus/a2bus/a2sam.cpp @@ -31,12 +31,15 @@ DEFINE_DEVICE_TYPE(A2BUS_SAM, a2bus_sam_device, "a2sam", "Don't Ask Software S.A // device_add_mconfig - add device configuration //------------------------------------------------- -MACHINE_CONFIG_START(a2bus_sam_device::device_add_mconfig) +void a2bus_sam_device::device_add_mconfig(machine_config &config) +{ SPEAKER(config, "speaker").front_center(); - MCFG_DEVICE_ADD("dac", DAC_8BIT_R2R, 0) MCFG_SOUND_ROUTE(ALL_OUTPUTS, "speaker", 0.5) // unknown DAC - MCFG_DEVICE_ADD("vref", VOLTAGE_REGULATOR, 0) MCFG_VOLTAGE_REGULATOR_OUTPUT(5.0) - MCFG_SOUND_ROUTE(0, "dac", 1.0, DAC_VREF_POS_INPUT) MCFG_SOUND_ROUTE(0, "dac", -1.0, DAC_VREF_NEG_INPUT) -MACHINE_CONFIG_END + DAC_8BIT_R2R(config, m_dac, 0).add_route(ALL_OUTPUTS, "speaker", 0.5); // unknown DAC + voltage_regulator_device &vref(VOLTAGE_REGULATOR(config, "vref")); + vref.set_output(5.0); + vref.add_route(0, "dac", 1.0, DAC_VREF_POS_INPUT); + vref.add_route(0, "dac", -1.0, DAC_VREF_NEG_INPUT); +} //************************************************************************** // LIVE DEVICE diff --git a/src/devices/bus/abcbus/cadmouse.cpp b/src/devices/bus/abcbus/cadmouse.cpp index 9cee7326cf4..7a4d90916f9 100644 --- a/src/devices/bus/abcbus/cadmouse.cpp +++ b/src/devices/bus/abcbus/cadmouse.cpp @@ -125,11 +125,12 @@ void abc_cadmouse_device::abc_cadmouse_io(address_map &map) // device_add_mconfig - add device configuration //------------------------------------------------- -MACHINE_CONFIG_START(abc_cadmouse_device::device_add_mconfig) - MCFG_DEVICE_ADD(Z80_TAG, Z80, XTAL(8'000'000)/2) - MCFG_DEVICE_PROGRAM_MAP(abc_cadmouse_mem) - MCFG_DEVICE_IO_MAP(abc_cadmouse_io) -MACHINE_CONFIG_END +void abc_cadmouse_device::device_add_mconfig(machine_config &config) +{ + Z80(config, m_maincpu, XTAL(8'000'000)/2); + m_maincpu->set_addrmap(AS_PROGRAM, &abc_cadmouse_device::abc_cadmouse_mem); + m_maincpu->set_addrmap(AS_IO, &abc_cadmouse_device::abc_cadmouse_io); +} //************************************************************************** // LIVE DEVICE diff --git a/src/devices/bus/abcbus/db411223.cpp b/src/devices/bus/abcbus/db411223.cpp index d9d2906f6d6..86ba1f22ee9 100644 --- a/src/devices/bus/abcbus/db411223.cpp +++ b/src/devices/bus/abcbus/db411223.cpp @@ -68,11 +68,12 @@ void databoard_4112_23_t::databoard_4112_23_io(address_map &map) // device_add_mconfig - add device configuration //------------------------------------------------- -MACHINE_CONFIG_START(databoard_4112_23_t::device_add_mconfig) - MCFG_DEVICE_ADD(Z80_TAG, Z80, 4000000) - MCFG_DEVICE_PROGRAM_MAP(databoard_4112_23_mem) - MCFG_DEVICE_IO_MAP(databoard_4112_23_io) -MACHINE_CONFIG_END +void databoard_4112_23_t::device_add_mconfig(machine_config &config) +{ + Z80(config, m_maincpu, 4000000); + m_maincpu->set_addrmap(AS_PROGRAM, &databoard_4112_23_t::databoard_4112_23_mem); + m_maincpu->set_addrmap(AS_IO, &databoard_4112_23_t::databoard_4112_23_io); +} //------------------------------------------------- diff --git a/src/devices/bus/abcbus/unidisk.cpp b/src/devices/bus/abcbus/unidisk.cpp index 0d5968aa71b..0b068000193 100644 --- a/src/devices/bus/abcbus/unidisk.cpp +++ b/src/devices/bus/abcbus/unidisk.cpp @@ -73,11 +73,12 @@ void unidisk_t::unidisk_io(address_map &map) // device_add_mconfig - add device configuration //------------------------------------------------- -MACHINE_CONFIG_START(unidisk_t::device_add_mconfig) +void unidisk_t::device_add_mconfig(machine_config &config) +{ TMS9995(config, m_maincpu, 12000000); m_maincpu->set_addrmap(AS_PROGRAM, &unidisk_t::unidisk_mem); m_maincpu->set_addrmap(AS_IO, &unidisk_t::unidisk_io); -MACHINE_CONFIG_END +} //------------------------------------------------- diff --git a/src/devices/bus/c64/16kb.cpp b/src/devices/bus/c64/16kb.cpp index 4b23cb663f7..96e19a52dd2 100644 --- a/src/devices/bus/c64/16kb.cpp +++ b/src/devices/bus/c64/16kb.cpp @@ -22,13 +22,12 @@ DEFINE_DEVICE_TYPE(C64_16KB, c64_16kb_cartridge_device, "c64_16kb", "C64 16KB EP // device_add_mconfig - add device configuration //------------------------------------------------- -MACHINE_CONFIG_START(c64_16kb_cartridge_device::device_add_mconfig) - MCFG_GENERIC_CARTSLOT_ADD("roml", generic_linear_slot, nullptr) - MCFG_GENERIC_EXTENSIONS("rom,bin,80") +void c64_16kb_cartridge_device::device_add_mconfig(machine_config &config) +{ + GENERIC_CARTSLOT(config, m_low, generic_linear_slot, nullptr, "rom,bin,80"); - MCFG_GENERIC_CARTSLOT_ADD("romh", generic_linear_slot, nullptr) - MCFG_GENERIC_EXTENSIONS("rom,bin,a0,e0") -MACHINE_CONFIG_END + GENERIC_CARTSLOT(config, m_high, generic_linear_slot, nullptr, "rom,bin,a0,e0"); +} //------------------------------------------------- diff --git a/src/devices/bus/c64/dela_ep256.cpp b/src/devices/bus/c64/dela_ep256.cpp index e11b3ae8f53..0254f4ebdc4 100644 --- a/src/devices/bus/c64/dela_ep256.cpp +++ b/src/devices/bus/c64/dela_ep256.cpp @@ -22,24 +22,17 @@ DEFINE_DEVICE_TYPE(C64_DELA_EP256, c64_dela_ep256_cartridge_device, "delep256", // device_add_mconfig - add device configuration //------------------------------------------------- -MACHINE_CONFIG_START(c64_dela_ep256_cartridge_device::device_add_mconfig) - MCFG_GENERIC_SOCKET_ADD("rom1", generic_linear_slot, nullptr) - MCFG_GENERIC_EXTENSIONS("bin,rom") - MCFG_GENERIC_SOCKET_ADD("rom2", generic_linear_slot, nullptr) - MCFG_GENERIC_EXTENSIONS("bin,rom") - MCFG_GENERIC_SOCKET_ADD("rom3", generic_linear_slot, nullptr) - MCFG_GENERIC_EXTENSIONS("bin,rom") - MCFG_GENERIC_SOCKET_ADD("rom4", generic_linear_slot, nullptr) - MCFG_GENERIC_EXTENSIONS("bin,rom") - MCFG_GENERIC_SOCKET_ADD("rom5", generic_linear_slot, nullptr) - MCFG_GENERIC_EXTENSIONS("bin,rom") - MCFG_GENERIC_SOCKET_ADD("rom6", generic_linear_slot, nullptr) - MCFG_GENERIC_EXTENSIONS("bin,rom") - MCFG_GENERIC_SOCKET_ADD("rom7", generic_linear_slot, nullptr) - MCFG_GENERIC_EXTENSIONS("bin,rom") - MCFG_GENERIC_SOCKET_ADD("rom8", generic_linear_slot, nullptr) - MCFG_GENERIC_EXTENSIONS("bin,rom") -MACHINE_CONFIG_END +void c64_dela_ep256_cartridge_device::device_add_mconfig(machine_config &config) +{ + GENERIC_SOCKET(config, "rom1", generic_linear_slot, nullptr, "bin,rom"); + GENERIC_SOCKET(config, "rom2", generic_linear_slot, nullptr, "bin,rom"); + GENERIC_SOCKET(config, "rom3", generic_linear_slot, nullptr, "bin,rom"); + GENERIC_SOCKET(config, "rom4", generic_linear_slot, nullptr, "bin,rom"); + GENERIC_SOCKET(config, "rom5", generic_linear_slot, nullptr, "bin,rom"); + GENERIC_SOCKET(config, "rom6", generic_linear_slot, nullptr, "bin,rom"); + GENERIC_SOCKET(config, "rom7", generic_linear_slot, nullptr, "bin,rom"); + GENERIC_SOCKET(config, "rom8", generic_linear_slot, nullptr, "bin,rom"); +} diff --git a/src/devices/bus/c64/dela_ep64.cpp b/src/devices/bus/c64/dela_ep64.cpp index c9eee384a5a..f30ad70a52e 100644 --- a/src/devices/bus/c64/dela_ep64.cpp +++ b/src/devices/bus/c64/dela_ep64.cpp @@ -22,12 +22,11 @@ DEFINE_DEVICE_TYPE(C64_DELA_EP64, c64_dela_ep64_cartridge_device, "c64_dela_ep64 // device_add_mconfig - add device configuration //------------------------------------------------- -MACHINE_CONFIG_START(c64_dela_ep64_cartridge_device::device_add_mconfig) - MCFG_GENERIC_SOCKET_ADD("eprom1", generic_linear_slot, nullptr) - MCFG_GENERIC_EXTENSIONS("rom,bin") - MCFG_GENERIC_SOCKET_ADD("eprom2", generic_linear_slot, nullptr) - MCFG_GENERIC_EXTENSIONS("rom,bin") -MACHINE_CONFIG_END +void c64_dela_ep64_cartridge_device::device_add_mconfig(machine_config &config) +{ + GENERIC_SOCKET(config, m_eprom1, generic_linear_slot, nullptr, "rom,bin"); + GENERIC_SOCKET(config, m_eprom2, generic_linear_slot, nullptr, "rom,bin"); +} //************************************************************************** diff --git a/src/devices/bus/c64/dela_ep7x8.cpp b/src/devices/bus/c64/dela_ep7x8.cpp index 564e7196449..8841c5b2e3e 100644 --- a/src/devices/bus/c64/dela_ep7x8.cpp +++ b/src/devices/bus/c64/dela_ep7x8.cpp @@ -22,22 +22,16 @@ DEFINE_DEVICE_TYPE(C64_DELA_EP7X8, c64_dela_ep7x8_cartridge_device, "c64_dela_ep // device_add_mconfig - add device configuration //------------------------------------------------- -MACHINE_CONFIG_START(c64_dela_ep7x8_cartridge_device::device_add_mconfig) - MCFG_GENERIC_SOCKET_ADD("rom1", generic_linear_slot, nullptr) - MCFG_GENERIC_EXTENSIONS("bin,rom") - MCFG_GENERIC_SOCKET_ADD("rom2", generic_linear_slot, nullptr) - MCFG_GENERIC_EXTENSIONS("bin,rom") - MCFG_GENERIC_SOCKET_ADD("rom3", generic_linear_slot, nullptr) - MCFG_GENERIC_EXTENSIONS("bin,rom") - MCFG_GENERIC_SOCKET_ADD("rom4", generic_linear_slot, nullptr) - MCFG_GENERIC_EXTENSIONS("bin,rom") - MCFG_GENERIC_SOCKET_ADD("rom5", generic_linear_slot, nullptr) - MCFG_GENERIC_EXTENSIONS("bin,rom") - MCFG_GENERIC_SOCKET_ADD("rom6", generic_linear_slot, nullptr) - MCFG_GENERIC_EXTENSIONS("bin,rom") - MCFG_GENERIC_SOCKET_ADD("rom7", generic_linear_slot, nullptr) - MCFG_GENERIC_EXTENSIONS("bin,rom") -MACHINE_CONFIG_END +void c64_dela_ep7x8_cartridge_device::device_add_mconfig(machine_config &config) +{ + GENERIC_SOCKET(config, m_eprom[0], generic_linear_slot, nullptr, "bin,rom"); + GENERIC_SOCKET(config, m_eprom[1], generic_linear_slot, nullptr, "bin,rom"); + GENERIC_SOCKET(config, m_eprom[2], generic_linear_slot, nullptr, "bin,rom"); + GENERIC_SOCKET(config, m_eprom[3], generic_linear_slot, nullptr, "bin,rom"); + GENERIC_SOCKET(config, m_eprom[4], generic_linear_slot, nullptr, "bin,rom"); + GENERIC_SOCKET(config, m_eprom[5], generic_linear_slot, nullptr, "bin,rom"); + GENERIC_SOCKET(config, m_eprom[6], generic_linear_slot, nullptr, "bin,rom"); +} //************************************************************************** @@ -51,13 +45,7 @@ MACHINE_CONFIG_END c64_dela_ep7x8_cartridge_device::c64_dela_ep7x8_cartridge_device(const machine_config &mconfig, const char *tag, device_t *owner, uint32_t clock) : device_t(mconfig, C64_DELA_EP7X8, tag, owner, clock), device_c64_expansion_card_interface(mconfig, *this), - m_eprom1(*this, "rom1"), - m_eprom2(*this, "rom2"), - m_eprom3(*this, "rom3"), - m_eprom4(*this, "rom4"), - m_eprom5(*this, "rom5"), - m_eprom6(*this, "rom6"), - m_eprom7(*this, "rom7"), m_bank(0) + m_eprom(*this, "rom%u", 1U) { } @@ -95,13 +83,13 @@ uint8_t c64_dela_ep7x8_cartridge_device::c64_cd_r(address_space &space, offs_t o offs_t addr = offset & 0x1fff; if (!BIT(m_bank, 0)) data |= m_roml[addr]; - if (!BIT(m_bank, 1)) data |= m_eprom1->read_rom(space, addr); - if (!BIT(m_bank, 2)) data |= m_eprom2->read_rom(space, addr); - if (!BIT(m_bank, 3)) data |= m_eprom3->read_rom(space, addr); - if (!BIT(m_bank, 4)) data |= m_eprom4->read_rom(space, addr); - if (!BIT(m_bank, 5)) data |= m_eprom5->read_rom(space, addr); - if (!BIT(m_bank, 6)) data |= m_eprom6->read_rom(space, addr); - if (!BIT(m_bank, 7)) data |= m_eprom7->read_rom(space, addr); + if (!BIT(m_bank, 1)) data |= m_eprom[0]->read_rom(space, addr); + if (!BIT(m_bank, 2)) data |= m_eprom[1]->read_rom(space, addr); + if (!BIT(m_bank, 3)) data |= m_eprom[2]->read_rom(space, addr); + if (!BIT(m_bank, 4)) data |= m_eprom[3]->read_rom(space, addr); + if (!BIT(m_bank, 5)) data |= m_eprom[4]->read_rom(space, addr); + if (!BIT(m_bank, 6)) data |= m_eprom[5]->read_rom(space, addr); + if (!BIT(m_bank, 7)) data |= m_eprom[6]->read_rom(space, addr); } return data; diff --git a/src/devices/bus/c64/dela_ep7x8.h b/src/devices/bus/c64/dela_ep7x8.h index 48146d1c5e1..3b5470ef0b2 100644 --- a/src/devices/bus/c64/dela_ep7x8.h +++ b/src/devices/bus/c64/dela_ep7x8.h @@ -44,13 +44,7 @@ protected: virtual void c64_cd_w(address_space &space, offs_t offset, uint8_t data, int sphi2, int ba, int roml, int romh, int io1, int io2) override; private: - required_device m_eprom1; - required_device m_eprom2; - required_device m_eprom3; - required_device m_eprom4; - required_device m_eprom5; - required_device m_eprom6; - required_device m_eprom7; + required_device_array m_eprom; uint8_t m_bank; }; diff --git a/src/devices/bus/c64/fcc.cpp b/src/devices/bus/c64/fcc.cpp index 77d505e97a3..b0c91a9e098 100644 --- a/src/devices/bus/c64/fcc.cpp +++ b/src/devices/bus/c64/fcc.cpp @@ -75,10 +75,11 @@ void c64_final_chesscard_device::c64_fcc_map(address_map &map) // device_add_mconfig - add device configuration //------------------------------------------------- -MACHINE_CONFIG_START(c64_final_chesscard_device::device_add_mconfig) - MCFG_DEVICE_ADD(G65SC02P4_TAG, M65SC02, XTAL(5'000'000)) - MCFG_DEVICE_PROGRAM_MAP(c64_fcc_map) -MACHINE_CONFIG_END +void c64_final_chesscard_device::device_add_mconfig(machine_config &config) +{ + M65SC02(config, m_maincpu, XTAL(5'000'000)); + m_maincpu->set_addrmap(AS_PROGRAM, &c64_final_chesscard_device::c64_fcc_map); +} //------------------------------------------------- diff --git a/src/devices/bus/c64/multiscreen.cpp b/src/devices/bus/c64/multiscreen.cpp index e243a335e50..453cf350256 100644 --- a/src/devices/bus/c64/multiscreen.cpp +++ b/src/devices/bus/c64/multiscreen.cpp @@ -112,13 +112,14 @@ void c64_multiscreen_cartridge_device::multiscreen_mem(address_map &map) // device_add_mconfig - add device configuration //------------------------------------------------- -MACHINE_CONFIG_START(c64_multiscreen_cartridge_device::device_add_mconfig) - MCFG_DEVICE_ADD(MC6802P_TAG, M6802, XTAL(4'000'000)) - MCFG_DEVICE_PROGRAM_MAP(multiscreen_mem) +void c64_multiscreen_cartridge_device::device_add_mconfig(machine_config &config) +{ + m6802_cpu_device &cpu(M6802(config, MC6802P_TAG, XTAL(4'000'000))); + cpu.set_addrmap(AS_PROGRAM, &c64_multiscreen_cartridge_device::multiscreen_mem); - MCFG_DEVICE_ADD(MC6821P_0_TAG, PIA6821, 0) - MCFG_DEVICE_ADD(MC6821P_1_TAG, PIA6821, 0) -MACHINE_CONFIG_END + PIA6821(config, MC6821P_0_TAG, 0); + PIA6821(config, MC6821P_1_TAG, 0); +} //************************************************************************** diff --git a/src/devices/bus/c64/ps64.cpp b/src/devices/bus/c64/ps64.cpp index b70c8a61c0f..fbfad3fe7d2 100644 --- a/src/devices/bus/c64/ps64.cpp +++ b/src/devices/bus/c64/ps64.cpp @@ -60,26 +60,15 @@ DEFINE_DEVICE_TYPE(C64_PS64, c64_ps64_cartridge_device, "c64_ps64", "C64 PS-64") -//------------------------------------------------- -// votrax_sc02_interface votrax_intf -//------------------------------------------------- -/* -static struct votrax_sc02_interface votrax_intf = -{ - DEVCB_NOOP -}; -*/ - - //------------------------------------------------- // device_add_mconfig - add device configuration //------------------------------------------------- -MACHINE_CONFIG_START(c64_ps64_cartridge_device::device_add_mconfig) - //MCFG_SPEAKER_STANDARD_MONO("mono") - //MCFG_VOTRAX_SC02_ADD(SSI263_TAG, 2000000, votrax_intf) - //MCFG_SOUND_ROUTE(ALL_OUTPUTS, "mono", 1.00) -MACHINE_CONFIG_END +void c64_ps64_cartridge_device::device_add_mconfig(machine_config &config) +{ + //SPEAKER(config, "speaker").front_center(); + //VOTRAX_SC02(config, SSI263_TAG, 2000000).add_route(ALL_OUTPUTS, "mono", 1.00); +} diff --git a/src/devices/bus/c64/reu.cpp b/src/devices/bus/c64/reu.cpp index efa415e6e39..72f3f6f73e6 100644 --- a/src/devices/bus/c64/reu.cpp +++ b/src/devices/bus/c64/reu.cpp @@ -31,12 +31,12 @@ DEFINE_DEVICE_TYPE(C64_REU1764, c64_reu1764_cartridge_device, "c64_1764reu", "17 // device_add_mconfig - add device configuration //------------------------------------------------- -MACHINE_CONFIG_START(c64_reu_cartridge_device::device_add_mconfig) +void c64_reu_cartridge_device::device_add_mconfig(machine_config &config) +{ MOS8726(config, m_dmac, 1000000); // dummy clock - MCFG_GENERIC_SOCKET_ADD("rom", generic_linear_slot, nullptr) - MCFG_GENERIC_EXTENSIONS("bin,rom") -MACHINE_CONFIG_END + GENERIC_SOCKET(config, m_eprom, generic_linear_slot, nullptr, "bin,rom"); +} diff --git a/src/devices/bus/c64/rex_ep256.cpp b/src/devices/bus/c64/rex_ep256.cpp index 67f1ce015b9..266b3b791e1 100644 --- a/src/devices/bus/c64/rex_ep256.cpp +++ b/src/devices/bus/c64/rex_ep256.cpp @@ -22,24 +22,17 @@ DEFINE_DEVICE_TYPE(C64_REX_EP256, c64_rex_ep256_cartridge_device, "rexexp256", " // device_add_mconfig - add device configuration //------------------------------------------------- -MACHINE_CONFIG_START(c64_rex_ep256_cartridge_device::device_add_mconfig) - MCFG_GENERIC_SOCKET_ADD("rom1", generic_linear_slot, nullptr) - MCFG_GENERIC_EXTENSIONS("bin,rom") - MCFG_GENERIC_SOCKET_ADD("rom2", generic_linear_slot, nullptr) - MCFG_GENERIC_EXTENSIONS("bin,rom") - MCFG_GENERIC_SOCKET_ADD("rom3", generic_linear_slot, nullptr) - MCFG_GENERIC_EXTENSIONS("bin,rom") - MCFG_GENERIC_SOCKET_ADD("rom4", generic_linear_slot, nullptr) - MCFG_GENERIC_EXTENSIONS("bin,rom") - MCFG_GENERIC_SOCKET_ADD("rom5", generic_linear_slot, nullptr) - MCFG_GENERIC_EXTENSIONS("bin,rom") - MCFG_GENERIC_SOCKET_ADD("rom6", generic_linear_slot, nullptr) - MCFG_GENERIC_EXTENSIONS("bin,rom") - MCFG_GENERIC_SOCKET_ADD("rom7", generic_linear_slot, nullptr) - MCFG_GENERIC_EXTENSIONS("bin,rom") - MCFG_GENERIC_SOCKET_ADD("rom8", generic_linear_slot, nullptr) - MCFG_GENERIC_EXTENSIONS("bin,rom") -MACHINE_CONFIG_END +void c64_rex_ep256_cartridge_device::device_add_mconfig(machine_config &config) +{ + GENERIC_SOCKET(config, "rom1", generic_linear_slot, nullptr, "bin,rom"); + GENERIC_SOCKET(config, "rom2", generic_linear_slot, nullptr, "bin,rom"); + GENERIC_SOCKET(config, "rom3", generic_linear_slot, nullptr, "bin,rom"); + GENERIC_SOCKET(config, "rom4", generic_linear_slot, nullptr, "bin,rom"); + GENERIC_SOCKET(config, "rom5", generic_linear_slot, nullptr, "bin,rom"); + GENERIC_SOCKET(config, "rom6", generic_linear_slot, nullptr, "bin,rom"); + GENERIC_SOCKET(config, "rom7", generic_linear_slot, nullptr, "bin,rom"); + GENERIC_SOCKET(config, "rom8", generic_linear_slot, nullptr, "bin,rom"); +} diff --git a/src/devices/bus/c64/speakeasy.cpp b/src/devices/bus/c64/speakeasy.cpp index 09427458fe7..b7be256ef86 100644 --- a/src/devices/bus/c64/speakeasy.cpp +++ b/src/devices/bus/c64/speakeasy.cpp @@ -31,12 +31,12 @@ DEFINE_DEVICE_TYPE(C64_SPEAKEASY, c64_speakeasy_cartridge_device, "c64_speakeasy // device_add_mconfig - add device configuration //------------------------------------------------- -MACHINE_CONFIG_START(c64_speakeasy_cartridge_device::device_add_mconfig) +void c64_speakeasy_cartridge_device::device_add_mconfig(machine_config &config) +{ SPEAKER(config, "mono").front_center(); - MCFG_DEVICE_ADD(SC01A_TAG, VOTRAX_SC01, 720000) - MCFG_SOUND_ROUTE(ALL_OUTPUTS, "mono", 0.85) -MACHINE_CONFIG_END + VOTRAX_SC01(config, m_votrax, 720000).add_route(ALL_OUTPUTS, "mono", 0.85); +} diff --git a/src/devices/bus/c64/xl80.cpp b/src/devices/bus/c64/xl80.cpp index 050bd4db64f..62cd0a8a3b9 100644 --- a/src/devices/bus/c64/xl80.cpp +++ b/src/devices/bus/c64/xl80.cpp @@ -123,12 +123,13 @@ GFXDECODE_END // device_add_mconfig - add device configuration //------------------------------------------------- -MACHINE_CONFIG_START(c64_xl80_device::device_add_mconfig) - MCFG_SCREEN_ADD_MONOCHROME(MC6845_SCREEN_TAG, RASTER, rgb_t::white()) - MCFG_SCREEN_UPDATE_DEVICE(HD46505SP_TAG, h46505_device, screen_update) - MCFG_SCREEN_SIZE(80*8, 24*8) - MCFG_SCREEN_VISIBLE_AREA(0, 80*8-1, 0, 24*8-1) - MCFG_SCREEN_REFRESH_RATE(50) +void c64_xl80_device::device_add_mconfig(machine_config &config) +{ + screen_device &screen(SCREEN(config, MC6845_SCREEN_TAG, SCREEN_TYPE_RASTER, rgb_t::white())); + screen.set_screen_update(HD46505SP_TAG, FUNC(h46505_device::screen_update)); + screen.set_size(80*8, 24*8); + screen.set_visarea(0, 80*8-1, 0, 24*8-1); + screen.set_refresh_hz(50); GFXDECODE(config, "gfxdecode", m_palette, gfx_c64_xl80); PALETTE(config, m_palette, palette_device::MONOCHROME); @@ -138,7 +139,7 @@ MACHINE_CONFIG_START(c64_xl80_device::device_add_mconfig) m_crtc->set_show_border_area(true); m_crtc->set_char_width(8); m_crtc->set_update_row_callback(FUNC(c64_xl80_device::crtc_update_row), this); -MACHINE_CONFIG_END +} diff --git a/src/devices/bus/cbm2/hrg.cpp b/src/devices/bus/cbm2/hrg.cpp index 1d0e4fc6191..83fab890fcb 100644 --- a/src/devices/bus/cbm2/hrg.cpp +++ b/src/devices/bus/cbm2/hrg.cpp @@ -88,12 +88,13 @@ void cbm2_hrg_b_device::hrg_b_map(address_map &map) // device_add_mconfig - add device configuration //------------------------------------------------- -MACHINE_CONFIG_START(cbm2_hrg_a_device::device_add_mconfig) - MCFG_SCREEN_ADD_MONOCHROME(SCREEN_TAG, RASTER, rgb_t::green()) - MCFG_SCREEN_UPDATE_DEVICE(EF9365_TAG, ef9365_device, screen_update) - MCFG_SCREEN_SIZE(512, 512) - MCFG_SCREEN_VISIBLE_AREA(0, 512-1, 0, 512-1) - MCFG_SCREEN_REFRESH_RATE(25) +void cbm2_hrg_a_device::device_add_mconfig(machine_config &config) +{ + screen_device &screen(SCREEN(config, SCREEN_TAG, SCREEN_TYPE_RASTER, rgb_t::green())); + screen.set_screen_update(EF9365_TAG, FUNC(ef9365_device::screen_update)); + screen.set_size(512, 512); + screen.set_visarea(0, 512-1, 0, 512-1); + screen.set_refresh_hz(25); PALETTE(config, "palette", palette_device::MONOCHROME); EF9365(config, m_gdc, 1750000); @@ -102,14 +103,15 @@ MACHINE_CONFIG_START(cbm2_hrg_a_device::device_add_mconfig) m_gdc->set_palette_tag("palette"); m_gdc->set_nb_bitplanes(1); m_gdc->set_display_mode(ef9365_device::DISPLAY_MODE_512x512); -MACHINE_CONFIG_END - -MACHINE_CONFIG_START(cbm2_hrg_b_device::device_add_mconfig) - MCFG_SCREEN_ADD_MONOCHROME(SCREEN_TAG, RASTER, rgb_t::green()) - MCFG_SCREEN_UPDATE_DEVICE(EF9366_TAG, ef9365_device, screen_update) - MCFG_SCREEN_SIZE(512, 256) - MCFG_SCREEN_VISIBLE_AREA(0, 512-1, 0, 256-1) - MCFG_SCREEN_REFRESH_RATE(50) +} + +void cbm2_hrg_b_device::device_add_mconfig(machine_config &config) +{ + screen_device &screen(SCREEN(config, SCREEN_TAG, SCREEN_TYPE_RASTER, rgb_t::green())); + screen.set_screen_update(EF9366_TAG, FUNC(ef9365_device::screen_update)); + screen.set_size(512, 256); + screen.set_visarea(0, 512-1, 0, 256-1); + screen.set_refresh_hz(50); PALETTE(config, "palette", palette_device::MONOCHROME); EF9365(config, m_gdc, 1750000); //EF9366 @@ -118,7 +120,7 @@ MACHINE_CONFIG_START(cbm2_hrg_b_device::device_add_mconfig) m_gdc->set_palette_tag("palette"); m_gdc->set_nb_bitplanes(1); m_gdc->set_display_mode(ef9365_device::DISPLAY_MODE_512x256); -MACHINE_CONFIG_END +} diff --git a/src/devices/bus/cbmiec/c1526.cpp b/src/devices/bus/cbmiec/c1526.cpp index 6341807bd60..7123782d42c 100644 --- a/src/devices/bus/cbmiec/c1526.cpp +++ b/src/devices/bus/cbmiec/c1526.cpp @@ -88,20 +88,22 @@ void c1526_device_base::c1526_mem(address_map &map) // device_add_mconfig - add device configuration //------------------------------------------------- -MACHINE_CONFIG_START(c1526_device::device_add_mconfig) - MCFG_DEVICE_ADD(M6504_TAG, M6504, XTAL(4'000'000)/4) - MCFG_DEVICE_PROGRAM_MAP(c1526_mem) -MACHINE_CONFIG_END +void c1526_device::device_add_mconfig(machine_config &config) +{ + m6504_device &cpu(M6504(config, M6504_TAG, XTAL(4'000'000)/4)); + cpu.set_addrmap(AS_PROGRAM, &c1526_device::c1526_mem); +} //------------------------------------------------- // device_add_mconfig - add device configuration //------------------------------------------------- -MACHINE_CONFIG_START(c4023_device::device_add_mconfig) - MCFG_DEVICE_ADD(M6504_TAG, M6504, XTAL(4'000'000)/4) - MCFG_DEVICE_PROGRAM_MAP(c1526_mem) -MACHINE_CONFIG_END +void c4023_device::device_add_mconfig(machine_config &config) +{ + m6504_device &cpu(M6504(config, M6504_TAG, XTAL(4'000'000)/4)); + cpu.set_addrmap(AS_PROGRAM, &c4023_device::c1526_mem); +} //------------------------------------------------- diff --git a/src/devices/bus/cbmiec/serialbox.cpp b/src/devices/bus/cbmiec/serialbox.cpp index b14eca1f389..ab8326528d0 100644 --- a/src/devices/bus/cbmiec/serialbox.cpp +++ b/src/devices/bus/cbmiec/serialbox.cpp @@ -69,10 +69,11 @@ void serial_box_device::serial_box_mem(address_map &map) // device_add_mconfig - add device configuration //------------------------------------------------- -MACHINE_CONFIG_START(serial_box_device::device_add_mconfig) - MCFG_DEVICE_ADD(M6502_TAG, M65C02, XTAL(4'000'000)/4) - MCFG_DEVICE_PROGRAM_MAP(serial_box_mem) -MACHINE_CONFIG_END +void serial_box_device::device_add_mconfig(machine_config &config) +{ + M65C02(config, m_maincpu, XTAL(4'000'000)/4); + m_maincpu->set_addrmap(AS_PROGRAM, &serial_box_device::serial_box_mem); +} diff --git a/src/devices/bus/cbmiec/vic1515.cpp b/src/devices/bus/cbmiec/vic1515.cpp index 1afc47ce807..5accd8b6858 100644 --- a/src/devices/bus/cbmiec/vic1515.cpp +++ b/src/devices/bus/cbmiec/vic1515.cpp @@ -61,11 +61,12 @@ void vic1515_device::vic1515_io(address_map &map) // device_add_mconfig - add device configuration //------------------------------------------------- -MACHINE_CONFIG_START(vic1515_device::device_add_mconfig) - MCFG_DEVICE_ADD("maincpu", I8039, XTAL(6'000'000)) - MCFG_DEVICE_PROGRAM_MAP(vic1515_mem) - MCFG_DEVICE_IO_MAP(vic1515_io) -MACHINE_CONFIG_END +void vic1515_device::device_add_mconfig(machine_config &config) +{ + i8039_device &maincpu(I8039(config, "maincpu", XTAL(6'000'000))); + maincpu.set_addrmap(AS_PROGRAM, &vic1515_device::vic1515_mem); + maincpu.set_addrmap(AS_IO, &vic1515_device::vic1515_io); +} //------------------------------------------------- diff --git a/src/devices/bus/cbmiec/vic1520.cpp b/src/devices/bus/cbmiec/vic1520.cpp index 0f515f8638a..8e535c230e6 100644 --- a/src/devices/bus/cbmiec/vic1520.cpp +++ b/src/devices/bus/cbmiec/vic1520.cpp @@ -94,10 +94,11 @@ void vic1520_device::vic1520_mem(address_map &map) // device_add_mconfig - add device configuration //------------------------------------------------- -MACHINE_CONFIG_START(vic1520_device::device_add_mconfig) - MCFG_DEVICE_ADD(M6500_1_TAG, M6502, XTAL(2'000'000)) // M6500/1 - MCFG_DEVICE_PROGRAM_MAP(vic1520_mem) -MACHINE_CONFIG_END +void vic1520_device::device_add_mconfig(machine_config &config) +{ + m6502_device &cpu(M6502(config, M6500_1_TAG, XTAL(2'000'000))); // M6500/1 + cpu.set_addrmap(AS_PROGRAM, &vic1520_device::vic1520_mem); +} //------------------------------------------------- diff --git a/src/devices/bus/cbus/pc9801_86.cpp b/src/devices/bus/cbus/pc9801_86.cpp index b5146ab6a87..f99665b7542 100644 --- a/src/devices/bus/cbus/pc9801_86.cpp +++ b/src/devices/bus/cbus/pc9801_86.cpp @@ -47,7 +47,8 @@ WRITE_LINE_MEMBER(pc9801_86_device::sound_irq) // device_add_mconfig - add device configuration //------------------------------------------------- -MACHINE_CONFIG_START(pc9801_86_device::pc9801_86_config) +void pc9801_86_device::pc9801_86_config(machine_config &config) +{ SPEAKER(config, "lspeaker").front_left(); SPEAKER(config, "rspeaker").front_right(); YM2608(config, m_opna, 7.987_MHz_XTAL); @@ -62,16 +63,20 @@ MACHINE_CONFIG_START(pc9801_86_device::pc9801_86_config) m_opna->add_route(1, "lspeaker", 1.00); m_opna->add_route(2, "rspeaker", 1.00); - MCFG_DEVICE_ADD("ldac", DAC_16BIT_R2R_TWOS_COMPLEMENT, 0) MCFG_SOUND_ROUTE(ALL_OUTPUTS, "lspeaker", 1.0) // burr brown pcm61p - MCFG_DEVICE_ADD("rdac", DAC_16BIT_R2R_TWOS_COMPLEMENT, 0) MCFG_SOUND_ROUTE(ALL_OUTPUTS, "rspeaker", 1.0) // burr brown pcm61p - MCFG_DEVICE_ADD("vref", VOLTAGE_REGULATOR, 0) MCFG_VOLTAGE_REGULATOR_OUTPUT(5.0) - MCFG_SOUND_ROUTE(0, "ldac", 1.0, DAC_VREF_POS_INPUT) MCFG_SOUND_ROUTE(0, "ldac", -1.0, DAC_VREF_NEG_INPUT) - MCFG_SOUND_ROUTE(0, "rdac", 1.0, DAC_VREF_POS_INPUT) MCFG_SOUND_ROUTE(0, "rdac", -1.0, DAC_VREF_NEG_INPUT) -MACHINE_CONFIG_END + DAC_16BIT_R2R_TWOS_COMPLEMENT(config, m_ldac, 0).add_route(ALL_OUTPUTS, "lspeaker", 1.0); // burr brown pcm61p + DAC_16BIT_R2R_TWOS_COMPLEMENT(config, m_rdac, 0).add_route(ALL_OUTPUTS, "rspeaker", 1.0); // burr brown pcm61p + voltage_regulator_device &vref(VOLTAGE_REGULATOR(config, "vref")); + vref.set_output(5.0); + vref.add_route(0, "ldac", 1.0, DAC_VREF_POS_INPUT); + vref.add_route(0, "ldac", -1.0, DAC_VREF_NEG_INPUT); + vref.add_route(0, "rdac", 1.0, DAC_VREF_POS_INPUT); + vref.add_route(0, "rdac", -1.0, DAC_VREF_NEG_INPUT); +} -MACHINE_CONFIG_START(pc9801_86_device::device_add_mconfig) +void pc9801_86_device::device_add_mconfig(machine_config &config) +{ pc9801_86_config(config); -MACHINE_CONFIG_END +} // to load a different bios for slots: // -cbusX pc9801_86,bios=N diff --git a/src/devices/bus/centronics/covox.cpp b/src/devices/bus/centronics/covox.cpp index e508578ffe6..f360b97d92a 100644 --- a/src/devices/bus/centronics/covox.cpp +++ b/src/devices/bus/centronics/covox.cpp @@ -38,13 +38,16 @@ centronics_covox_device::centronics_covox_device(const machine_config &mconfig, // device_add_mconfig - add device configuration //------------------------------------------------- -MACHINE_CONFIG_START(centronics_covox_device::device_add_mconfig) +void centronics_covox_device::device_add_mconfig(machine_config &config) +{ /* sound hardware */ SPEAKER(config, "speaker").front_center(); - MCFG_DEVICE_ADD("dac", DAC_8BIT_R2R, 0) MCFG_SOUND_ROUTE(ALL_OUTPUTS, "speaker", 0.5) // unknown DAC - MCFG_DEVICE_ADD("vref", VOLTAGE_REGULATOR, 0) MCFG_VOLTAGE_REGULATOR_OUTPUT(5.0) - MCFG_SOUND_ROUTE(0, "dac", 1.0, DAC_VREF_POS_INPUT) MCFG_SOUND_ROUTE(0, "dac", -1.0, DAC_VREF_NEG_INPUT) -MACHINE_CONFIG_END + DAC_8BIT_R2R(config, m_dac, 0).add_route(ALL_OUTPUTS, "speaker", 0.5); // unknown DAC + voltage_regulator_device &vref(VOLTAGE_REGULATOR(config, "vref")); + vref.set_output(5.0); + vref.add_route(0, "dac", 1.0, DAC_VREF_POS_INPUT); + vref.add_route(0, "dac", -1.0, DAC_VREF_NEG_INPUT); +} void centronics_covox_device::device_start() { @@ -87,16 +90,20 @@ centronics_covox_stereo_device::centronics_covox_stereo_device(const machine_con // device_add_mconfig - add device configuration //------------------------------------------------- -MACHINE_CONFIG_START(centronics_covox_stereo_device::device_add_mconfig) +void centronics_covox_stereo_device::device_add_mconfig(machine_config &config) +{ /* sound hardware */ SPEAKER(config, "lspeaker").front_left(); SPEAKER(config, "rspeaker").front_right(); - MCFG_DEVICE_ADD("ldac", DAC_8BIT_R2R, 0) MCFG_SOUND_ROUTE(ALL_OUTPUTS, "lspeaker", 0.5) // unknown DAC - MCFG_DEVICE_ADD("rdac", DAC_8BIT_R2R, 0) MCFG_SOUND_ROUTE(ALL_OUTPUTS, "rspeaker", 0.5) // unknown DAC - MCFG_DEVICE_ADD("vref", VOLTAGE_REGULATOR, 0) MCFG_VOLTAGE_REGULATOR_OUTPUT(5.0) - MCFG_SOUND_ROUTE(0, "ldac", 1.0, DAC_VREF_POS_INPUT) MCFG_SOUND_ROUTE(0, "ldac", -1.0, DAC_VREF_NEG_INPUT) - MCFG_SOUND_ROUTE(0, "rdac", 1.0, DAC_VREF_POS_INPUT) MCFG_SOUND_ROUTE(0, "rdac", -1.0, DAC_VREF_NEG_INPUT) -MACHINE_CONFIG_END + DAC_8BIT_R2R(config, m_ldac, 0).add_route(ALL_OUTPUTS, "lspeaker", 0.5); // unknown DAC + DAC_8BIT_R2R(config, m_rdac, 0).add_route(ALL_OUTPUTS, "rspeaker", 0.5); // unknown DAC + voltage_regulator_device &vref(VOLTAGE_REGULATOR(config, "vref")); + vref.set_output(5.0); + vref.add_route(0, "ldac", 1.0, DAC_VREF_POS_INPUT); + vref.add_route(0, "ldac", -1.0, DAC_VREF_NEG_INPUT); + vref.add_route(0, "rdac", 1.0, DAC_VREF_POS_INPUT); + vref.add_route(0, "rdac", -1.0, DAC_VREF_NEG_INPUT); +} void centronics_covox_stereo_device::device_start() { diff --git a/src/devices/bus/centronics/digiblst.cpp b/src/devices/bus/centronics/digiblst.cpp index 99a046f4d13..680716a8a25 100644 --- a/src/devices/bus/centronics/digiblst.cpp +++ b/src/devices/bus/centronics/digiblst.cpp @@ -38,13 +38,16 @@ centronics_digiblaster_device::centronics_digiblaster_device(const machine_confi // device_add_mconfig - add device configuration //------------------------------------------------- -MACHINE_CONFIG_START(centronics_digiblaster_device::device_add_mconfig) +void centronics_digiblaster_device::device_add_mconfig(machine_config &config) +{ /* sound hardware */ SPEAKER(config, "speaker").front_center(); - MCFG_DEVICE_ADD("dac", DAC_8BIT_R2R, 0) MCFG_SOUND_ROUTE(ALL_OUTPUTS, "speaker", 0.5) // unknown DAC - MCFG_DEVICE_ADD("vref", VOLTAGE_REGULATOR, 0) MCFG_VOLTAGE_REGULATOR_OUTPUT(5.0) - MCFG_SOUND_ROUTE(0, "dac", 1.0, DAC_VREF_POS_INPUT) MCFG_SOUND_ROUTE(0, "dac", -1.0, DAC_VREF_NEG_INPUT) -MACHINE_CONFIG_END + DAC_8BIT_R2R(config, m_dac, 0).add_route(ALL_OUTPUTS, "speaker", 0.5); // unknown DAC + voltage_regulator_device &vref(VOLTAGE_REGULATOR(config, "vref")); + vref.set_output(5.0); + vref.add_route(0, "dac", 1.0, DAC_VREF_POS_INPUT); + vref.add_route(0, "dac", -1.0, DAC_VREF_NEG_INPUT); +} void centronics_digiblaster_device::device_start() { diff --git a/src/devices/bus/compis/hrg.cpp b/src/devices/bus/compis/hrg.cpp index fc1665107fa..6049be0adcd 100644 --- a/src/devices/bus/compis/hrg.cpp +++ b/src/devices/bus/compis/hrg.cpp @@ -77,14 +77,15 @@ UPD7220_DISPLAY_PIXELS_MEMBER( compis_uhrg_device::display_pixels ) // device_add_mconfig - add device configuration //------------------------------------------------- -MACHINE_CONFIG_START(compis_hrg_device::device_add_mconfig) - MCFG_SCREEN_ADD_MONOCHROME(SCREEN_TAG, RASTER, rgb_t::green()) - MCFG_SCREEN_VIDEO_ATTRIBUTES(VIDEO_UPDATE_BEFORE_VBLANK) - MCFG_SCREEN_REFRESH_RATE(50) - MCFG_SCREEN_VBLANK_TIME(ATTOSECONDS_IN_USEC(2500)) // not accurate - MCFG_SCREEN_SIZE(640, 400) - MCFG_SCREEN_VISIBLE_AREA(0, 640-1, 0, 400-1) - MCFG_SCREEN_UPDATE_DEVICE(UPD7220_TAG, upd7220_device, screen_update) +void compis_hrg_device::device_add_mconfig(machine_config &config) +{ + screen_device &screen(SCREEN(config, SCREEN_TAG, SCREEN_TYPE_RASTER, rgb_t::green())); + screen.set_video_attributes(VIDEO_UPDATE_BEFORE_VBLANK); + screen.set_refresh_hz(50); + screen.set_vblank_time(ATTOSECONDS_IN_USEC(2500)); // not accurate + screen.set_size(640, 400); + screen.set_visarea(0, 640-1, 0, 400-1); + screen.set_screen_update(UPD7220_TAG, FUNC(upd7220_device::screen_update)); UPD7220(config, m_crtc, 2252500); // unknown clock m_crtc->set_addrmap(0, &compis_hrg_device::hrg_map); @@ -92,17 +93,18 @@ MACHINE_CONFIG_START(compis_hrg_device::device_add_mconfig) m_crtc->set_screen(SCREEN_TAG); PALETTE(config, m_palette, palette_device::MONOCHROME); -MACHINE_CONFIG_END +} -MACHINE_CONFIG_START(compis_uhrg_device::device_add_mconfig) - MCFG_SCREEN_ADD_MONOCHROME(SCREEN_TAG, RASTER, rgb_t::green()) - MCFG_SCREEN_VIDEO_ATTRIBUTES(VIDEO_UPDATE_BEFORE_VBLANK) - MCFG_SCREEN_REFRESH_RATE(50) - MCFG_SCREEN_VBLANK_TIME(ATTOSECONDS_IN_USEC(2500)) // not accurate - MCFG_SCREEN_SIZE(1280, 800) - MCFG_SCREEN_VISIBLE_AREA(0, 1280-1, 0, 800-1) - MCFG_SCREEN_UPDATE_DEVICE(UPD7220_TAG, upd7220_device, screen_update) +void compis_uhrg_device::device_add_mconfig(machine_config &config) +{ + screen_device &screen(SCREEN(config, SCREEN_TAG, SCREEN_TYPE_RASTER, rgb_t::green())); + screen.set_video_attributes(VIDEO_UPDATE_BEFORE_VBLANK); + screen.set_refresh_hz(50); + screen.set_vblank_time(ATTOSECONDS_IN_USEC(2500)); // not accurate + screen.set_size(1280, 800); + screen.set_visarea(0, 1280-1, 0, 800-1); + screen.set_screen_update(UPD7220_TAG, FUNC(upd7220_device::screen_update)); UPD7220(config, m_crtc, 2252500*2); // unknown clock m_crtc->set_addrmap(0, &compis_uhrg_device::uhrg_map); @@ -110,7 +112,7 @@ MACHINE_CONFIG_START(compis_uhrg_device::device_add_mconfig) m_crtc->set_screen(SCREEN_TAG); PALETTE(config, m_palette, palette_device::MONOCHROME); -MACHINE_CONFIG_END +} //************************************************************************** diff --git a/src/devices/bus/comx35/clm.cpp b/src/devices/bus/comx35/clm.cpp index a7809731bcd..48372080308 100644 --- a/src/devices/bus/comx35/clm.cpp +++ b/src/devices/bus/comx35/clm.cpp @@ -137,13 +137,14 @@ GFXDECODE_END // device_add_mconfig - add device configuration //------------------------------------------------- -MACHINE_CONFIG_START(comx_clm_device::device_add_mconfig) - MCFG_SCREEN_ADD_MONOCHROME(MC6845_SCREEN_TAG, RASTER, rgb_t::white()) - MCFG_SCREEN_UPDATE_DEVICE(MC6845_TAG, mc6845_device, screen_update) - MCFG_SCREEN_SIZE(80*8, 24*8) - MCFG_SCREEN_VISIBLE_AREA(0, 80*8-1, 0, 24*8-1) - MCFG_SCREEN_VBLANK_TIME(ATTOSECONDS_IN_USEC(2500)) - MCFG_SCREEN_REFRESH_RATE(50) +void comx_clm_device::device_add_mconfig(machine_config &config) +{ + screen_device &screen(SCREEN(config, MC6845_SCREEN_TAG, SCREEN_TYPE_RASTER, rgb_t::white())); + screen.set_screen_update(MC6845_TAG, FUNC(mc6845_device::screen_update)); + screen.set_size(80*8, 24*8); + screen.set_visarea(0, 80*8-1, 0, 24*8-1); + screen.set_vblank_time(ATTOSECONDS_IN_USEC(2500)); + screen.set_refresh_hz(50); GFXDECODE(config, "gfxdecode", m_palette, gfx_comx_clm); PALETTE(config, m_palette, palette_device::MONOCHROME); @@ -153,7 +154,7 @@ MACHINE_CONFIG_START(comx_clm_device::device_add_mconfig) m_crtc->set_show_border_area(true); m_crtc->set_char_width(8); m_crtc->set_update_row_callback(FUNC(comx_clm_device::crtc_update_row), this); -MACHINE_CONFIG_END +} //************************************************************************** diff --git a/src/devices/bus/cpc/amdrum.cpp b/src/devices/bus/cpc/amdrum.cpp index b0c0610b607..acaebe1c260 100644 --- a/src/devices/bus/cpc/amdrum.cpp +++ b/src/devices/bus/cpc/amdrum.cpp @@ -20,13 +20,16 @@ DEFINE_DEVICE_TYPE(CPC_AMDRUM, cpc_amdrum_device, "cpc_amdrum", "Amdrum") -MACHINE_CONFIG_START(cpc_amdrum_device::device_add_mconfig) +void cpc_amdrum_device::device_add_mconfig(machine_config &config) +{ SPEAKER(config, "speaker").front_center(); - MCFG_DEVICE_ADD("dac", DAC_8BIT_R2R, 0) MCFG_SOUND_ROUTE(ALL_OUTPUTS, "speaker", 0.5) // unknown DAC - MCFG_DEVICE_ADD("vref", VOLTAGE_REGULATOR, 0) MCFG_VOLTAGE_REGULATOR_OUTPUT(5.0) - MCFG_SOUND_ROUTE(0, "dac", 1.0, DAC_VREF_POS_INPUT) MCFG_SOUND_ROUTE(0, "dac", -1.0, DAC_VREF_NEG_INPUT) + DAC_8BIT_R2R(config, m_dac, 0).add_route(ALL_OUTPUTS, "speaker", 0.5); // unknown DAC + voltage_regulator_device &vref(VOLTAGE_REGULATOR(config, "vref")); + vref.set_output(5.0); + vref.add_route(0, "dac", 1.0, DAC_VREF_POS_INPUT); + vref.add_route(0, "dac", -1.0, DAC_VREF_NEG_INPUT); // no pass-through -MACHINE_CONFIG_END +} //************************************************************************** diff --git a/src/devices/bus/cpc/magicsound.cpp b/src/devices/bus/cpc/magicsound.cpp index f1a940a72c3..3d665d93800 100644 --- a/src/devices/bus/cpc/magicsound.cpp +++ b/src/devices/bus/cpc/magicsound.cpp @@ -20,7 +20,8 @@ DEFINE_DEVICE_TYPE(AL_MAGICSOUND, al_magicsound_device, "al_magicsound", "Aleste Magic Sound Board") -MACHINE_CONFIG_START(al_magicsound_device::device_add_mconfig) +void al_magicsound_device::device_add_mconfig(machine_config &config) +{ AM9517A(config, m_dmac, DERIVED_CLOCK(1, 1)); // CLK from expansion port // According to the schematics, the TC pin (EOP on western chips) is connected to NMI on the expansion port. // NMIs seem to occur too quickly when this is active, so either EOP is not triggered at the correct time, or @@ -57,11 +58,13 @@ MACHINE_CONFIG_START(al_magicsound_device::device_add_mconfig) m_timer2->set_clk<2>(4000000); SPEAKER(config, "speaker").front_center(); - MCFG_DEVICE_ADD("dac", DAC_8BIT_R2R, 0) MCFG_SOUND_ROUTE(ALL_OUTPUTS, "speaker", 0.5) // unknown DAC - MCFG_DEVICE_ADD("vref", VOLTAGE_REGULATOR, 0) MCFG_VOLTAGE_REGULATOR_OUTPUT(5.0) - MCFG_SOUND_ROUTE(0, "dac", 1.0, DAC_VREF_POS_INPUT) MCFG_SOUND_ROUTE(0, "dac", -1.0, DAC_VREF_NEG_INPUT) + DAC_8BIT_R2R(config, m_dac, 0).add_route(ALL_OUTPUTS, "speaker", 0.5); // unknown DAC + voltage_regulator_device &vref(VOLTAGE_REGULATOR(config, "vref")); + vref.set_output(5.0); + vref.add_route(0, "dac", 1.0, DAC_VREF_POS_INPUT); + vref.add_route(0, "dac", -1.0, DAC_VREF_NEG_INPUT); // no pass-through(?) -MACHINE_CONFIG_END +} //************************************************************************** diff --git a/src/devices/bus/interpro/keyboard/hle.cpp b/src/devices/bus/interpro/keyboard/hle.cpp index 670e5bd975c..15dd262eddf 100644 --- a/src/devices/bus/interpro/keyboard/hle.cpp +++ b/src/devices/bus/interpro/keyboard/hle.cpp @@ -277,11 +277,11 @@ WRITE_LINE_MEMBER(hle_device_base::input_txd) device_buffered_serial_interface::rx_w(state); } -MACHINE_CONFIG_START(hle_device_base::device_add_mconfig) +void hle_device_base::device_add_mconfig(machine_config &config) +{ SPEAKER(config, "bell").front_center(); - MCFG_DEVICE_ADD("beeper", BEEP, ATTOSECONDS_TO_HZ(480 * ATTOSECONDS_PER_MICROSECOND)) - MCFG_SOUND_ROUTE(ALL_OUTPUTS, "bell", 1.0) -MACHINE_CONFIG_END + BEEP(config, m_beeper, ATTOSECONDS_TO_HZ(480 * ATTOSECONDS_PER_MICROSECOND)).add_route(ALL_OUTPUTS, "bell", 1.0); +} void hle_device_base::device_start() { diff --git a/src/devices/bus/isa/adlib.cpp b/src/devices/bus/isa/adlib.cpp index ad2d3735d6e..6a900b0e09d 100644 --- a/src/devices/bus/isa/adlib.cpp +++ b/src/devices/bus/isa/adlib.cpp @@ -44,11 +44,11 @@ DEFINE_DEVICE_TYPE(ISA8_ADLIB, isa8_adlib_device, "isa_adlib", "Ad Lib Sound Car // device_add_mconfig - add device configuration //------------------------------------------------- -MACHINE_CONFIG_START(isa8_adlib_device::device_add_mconfig) +void isa8_adlib_device::device_add_mconfig(machine_config &config) +{ SPEAKER(config, "mono").front_center(); - MCFG_DEVICE_ADD("ym3812", YM3812, ym3812_StdClock) - MCFG_SOUND_ROUTE(ALL_OUTPUTS, "mono", 3.00) -MACHINE_CONFIG_END + YM3812(config, m_ym3812, ym3812_StdClock).add_route(ALL_OUTPUTS, "mono", 3.00); +} //************************************************************************** // LIVE DEVICE diff --git a/src/devices/bus/isa/aga.cpp b/src/devices/bus/isa/aga.cpp index 9aa2810431b..dfdf2433c91 100644 --- a/src/devices/bus/isa/aga.cpp +++ b/src/devices/bus/isa/aga.cpp @@ -273,12 +273,13 @@ MC6845_UPDATE_ROW( isa8_aga_device::aga_update_row ) } -MACHINE_CONFIG_START(isa8_aga_device::device_add_mconfig) - MCFG_SCREEN_ADD( AGA_SCREEN_NAME, RASTER ) - MCFG_SCREEN_RAW_PARAMS( XTAL(14'318'181),912,0,640,262,0,200 ) - MCFG_SCREEN_UPDATE_DEVICE( AGA_MC6845_NAME, mc6845_device, screen_update ) +void isa8_aga_device::device_add_mconfig(machine_config &config) +{ + screen_device &screen(SCREEN(config, AGA_SCREEN_NAME, SCREEN_TYPE_RASTER)); + screen.set_raw(XTAL(14'318'181), 912, 0, 640, 262, 0, 200); + screen.set_screen_update(AGA_MC6845_NAME, FUNC(mc6845_device::screen_update)); - MCFG_PALETTE_ADD( "palette", /* CGA_PALETTE_SETS * 16*/ 65536 ) + PALETTE(config, m_palette).set_entries(/* CGA_PALETTE_SETS * 16*/ 65536); MC6845(config, m_mc6845, XTAL(14'318'181)/8); m_mc6845->set_screen(AGA_SCREEN_NAME); @@ -287,7 +288,7 @@ MACHINE_CONFIG_START(isa8_aga_device::device_add_mconfig) m_mc6845->set_update_row_callback(FUNC(isa8_aga_device::aga_update_row), this); m_mc6845->out_hsync_callback().set(FUNC(isa8_aga_device::hsync_changed)); m_mc6845->out_vsync_callback().set(FUNC(isa8_aga_device::vsync_changed)); -MACHINE_CONFIG_END +} /************************************* diff --git a/src/devices/bus/isa/aha1542.cpp b/src/devices/bus/isa/aha1542.cpp index 8e260347eee..b044c88b171 100644 --- a/src/devices/bus/isa/aha1542.cpp +++ b/src/devices/bus/isa/aha1542.cpp @@ -175,10 +175,11 @@ const tiny_rom_entry *aha1542_device::device_rom_region() const return ROM_NAME( aha1542 ); } -MACHINE_CONFIG_START(aha1542_device::device_add_mconfig) - MCFG_DEVICE_ADD(Z84C0010_TAG, Z80, XTAL(12'000'000)) - MCFG_DEVICE_PROGRAM_MAP( z84c0010_mem ) -MACHINE_CONFIG_END +void aha1542_device::device_add_mconfig(machine_config &config) +{ + z80_device &cpu(Z80(config, Z84C0010_TAG, XTAL(12'000'000))); + cpu.set_addrmap(AS_PROGRAM, &aha1542_device::z84c0010_mem); +} aha1542_device::aha1542_device(const machine_config &mconfig, const char *tag, device_t *owner, uint32_t clock) : device_t(mconfig, AHA1542, tag, owner, clock), diff --git a/src/devices/bus/isa/cga.cpp b/src/devices/bus/isa/cga.cpp index f5fb8f185d7..9ebb3e9bdd3 100644 --- a/src/devices/bus/isa/cga.cpp +++ b/src/devices/bus/isa/cga.cpp @@ -261,12 +261,13 @@ DEFINE_DEVICE_TYPE(ISA8_CGA, isa8_cga_device, "cga", "IBM Color/Graphics Monitor // device_add_mconfig - add device configuration //------------------------------------------------- -MACHINE_CONFIG_START(isa8_cga_device::device_add_mconfig) - MCFG_SCREEN_ADD(CGA_SCREEN_NAME, RASTER) - MCFG_SCREEN_RAW_PARAMS(XTAL(14'318'181),912,0,640,262,0,200) - MCFG_SCREEN_UPDATE_DEVICE( DEVICE_SELF, isa8_cga_device, screen_update ) +void isa8_cga_device::device_add_mconfig(machine_config &config) +{ + screen_device &screen(SCREEN(config, CGA_SCREEN_NAME, SCREEN_TYPE_RASTER)); + screen.set_raw(XTAL(14'318'181), 912, 0, 640, 262, 0, 200); + screen.set_screen_update(FUNC(isa8_cga_device::screen_update)); - MCFG_PALETTE_ADD("palette", /* CGA_PALETTE_SETS * 16*/ 65536 ) + PALETTE(config, m_palette).set_entries(/* CGA_PALETTE_SETS * 16*/ 65536); MC6845(config, m_crtc, XTAL(14'318'181)/16); m_crtc->set_screen(nullptr); @@ -276,7 +277,7 @@ MACHINE_CONFIG_START(isa8_cga_device::device_add_mconfig) m_crtc->out_hsync_callback().set(FUNC(isa8_cga_device::hsync_changed)); m_crtc->out_vsync_callback().set(FUNC(isa8_cga_device::vsync_changed)); m_crtc->set_reconfigure_callback(FUNC(isa8_cga_device::reconfigure), this); -MACHINE_CONFIG_END +} ioport_constructor isa8_cga_device::device_input_ports() const { @@ -1693,13 +1694,13 @@ const tiny_rom_entry *isa8_cga_mc1502_device::device_rom_region() const DEFINE_DEVICE_TYPE(ISA8_CGA_M24, isa8_cga_m24_device, "cga_m24", "Olivetti M24 CGA") -MACHINE_CONFIG_START(isa8_cga_m24_device::device_add_mconfig) +void isa8_cga_m24_device::device_add_mconfig(machine_config &config) +{ isa8_cga_device::device_add_mconfig(config); - MCFG_DEVICE_MODIFY(CGA_SCREEN_NAME) - MCFG_SCREEN_RAW_PARAMS(XTAL(14'318'181),912,0,640,462,0,400) + subdevice(CGA_SCREEN_NAME)->set_raw(XTAL(14'318'181), 912, 0, 640, 462, 0, 400); m_crtc->set_reconfigure_callback(FUNC(isa8_cga_m24_device::reconfigure), this); -MACHINE_CONFIG_END +} isa8_cga_m24_device::isa8_cga_m24_device(const machine_config &mconfig, const char *tag, device_t *owner, uint32_t clock) : isa8_cga_m24_device(mconfig, ISA8_CGA_M24, tag, owner, clock) @@ -1886,12 +1887,12 @@ MC6845_UPDATE_ROW( isa8_cga_m24_device::m24_gfx_1bpp_m24_update_row ) DEFINE_DEVICE_TYPE(ISA8_CGA_CPORTIII, isa8_cga_cportiii_device, "cga_cportiii", "Compaq Portable III CGA") -MACHINE_CONFIG_START(isa8_cga_cportiii_device::device_add_mconfig) +void isa8_cga_cportiii_device::device_add_mconfig(machine_config &config) +{ isa8_cga_m24_device::device_add_mconfig(config); - MCFG_DEVICE_MODIFY(CGA_SCREEN_NAME) - MCFG_SCREEN_COLOR(rgb_t(255, 125, 0)) -MACHINE_CONFIG_END + subdevice(CGA_SCREEN_NAME)->set_color(rgb_t(255, 125, 0)); +} isa8_cga_cportiii_device::isa8_cga_cportiii_device(const machine_config &mconfig, const char *tag, device_t *owner, uint32_t clock) : isa8_cga_m24_device(mconfig, ISA8_CGA_CPORTIII, tag, owner, clock) diff --git a/src/devices/bus/isa/ega.cpp b/src/devices/bus/isa/ega.cpp index 936138bd972..a0e7484b280 100644 --- a/src/devices/bus/isa/ega.cpp +++ b/src/devices/bus/isa/ega.cpp @@ -528,13 +528,14 @@ DEFINE_DEVICE_TYPE(ISA8_EGA, isa8_ega_device, "ega", "IBM Enhanced Graphics Adap // device_add_mconfig - add device configuration //------------------------------------------------- -MACHINE_CONFIG_START(isa8_ega_device::device_add_mconfig) - MCFG_SCREEN_ADD(EGA_SCREEN_NAME, RASTER) - MCFG_SCREEN_RAW_PARAMS(16.257_MHz_XTAL, 912, 0, 640, 262, 0, 200) - MCFG_SCREEN_UPDATE_DEVICE(EGA_CRTC_NAME, crtc_ega_device, screen_update) - MCFG_SCREEN_PALETTE("palette") +void isa8_ega_device::device_add_mconfig(machine_config &config) +{ + screen_device &screen(SCREEN(config, EGA_SCREEN_NAME, SCREEN_TYPE_RASTER)); + screen.set_raw(16.257_MHz_XTAL, 912, 0, 640, 262, 0, 200); + screen.set_screen_update(EGA_CRTC_NAME, FUNC(crtc_ega_device::screen_update)); + screen.set_palette(m_palette); - MCFG_PALETTE_ADD( "palette", 64 ) + PALETTE(config, m_palette).set_entries(64); CRTC_EGA(config, m_crtc_ega, 16.257_MHz_XTAL/8); m_crtc_ega->set_screen(EGA_SCREEN_NAME); @@ -544,7 +545,7 @@ MACHINE_CONFIG_START(isa8_ega_device::device_add_mconfig) m_crtc_ega->res_out_hsync_callback().set(FUNC(isa8_ega_device::hsync_changed)); m_crtc_ega->res_out_vsync_callback().set(FUNC(isa8_ega_device::vsync_changed)); m_crtc_ega->res_out_vblank_callback().set(FUNC(isa8_ega_device::vblank_changed)); -MACHINE_CONFIG_END +} //------------------------------------------------- // rom_region - device-specific ROM region diff --git a/src/devices/bus/isa/eis_sad8852.cpp b/src/devices/bus/isa/eis_sad8852.cpp index 4f2b5a0c856..f4d634d1033 100644 --- a/src/devices/bus/isa/eis_sad8852.cpp +++ b/src/devices/bus/isa/eis_sad8852.cpp @@ -199,13 +199,14 @@ ioport_constructor isa16_sad8852_device::device_input_ports() const //------------------------------------------------- // Board configuration //------------------------------------------------- -MACHINE_CONFIG_START(isa16_sad8852_device::device_add_mconfig) - MCFG_DEVICE_ADD(I80188_TAG, I80188, XTAL(12'000'000) / 2) // Chip revision is 6 MHz - MCFG_DEVICE_PROGRAM_MAP( sad8852_mem ) - MCFG_DEVICE_IO_MAP(sad8852_io) +void isa16_sad8852_device::device_add_mconfig(machine_config &config) +{ + i80188_cpu_device &cpu(I80188(config, I80188_TAG, XTAL(12'000'000) / 2)); // Chip revision is 6 MHz + cpu.set_addrmap(AS_PROGRAM, &isa16_sad8852_device::sad8852_mem); + cpu.set_addrmap(AS_IO, &isa16_sad8852_device::sad8852_io); I8274_NEW(config, "terminal", XTAL(12'000'000) / 3); // Needs verification -MACHINE_CONFIG_END +} isa16_sad8852_device::isa16_sad8852_device(const machine_config &mconfig, const char *tag, device_t *owner, uint32_t clock) : device_t(mconfig, ISA16_SAD8852, tag, owner, clock) diff --git a/src/devices/bus/isa/finalchs.cpp b/src/devices/bus/isa/finalchs.cpp index e79dee39686..f9e6f37dc8f 100644 --- a/src/devices/bus/isa/finalchs.cpp +++ b/src/devices/bus/isa/finalchs.cpp @@ -71,10 +71,11 @@ DEFINE_DEVICE_TYPE(ISA8_FINALCHS, isa8_finalchs_device, "isa_finalchs", "Final C // device_add_mconfig - add device configuration //------------------------------------------------- -MACHINE_CONFIG_START(isa8_finalchs_device::device_add_mconfig) - MCFG_DEVICE_ADD("maincpu",M65C02,5000000) - MCFG_DEVICE_PROGRAM_MAP(finalchs_mem) -MACHINE_CONFIG_END +void isa8_finalchs_device::device_add_mconfig(machine_config &config) +{ + m65c02_device &cpu(M65C02(config, "maincpu", 5000000)); + cpu.set_addrmap(AS_PROGRAM, &isa8_finalchs_device::finalchs_mem); +} //************************************************************************** // LIVE DEVICE diff --git a/src/devices/bus/isa/lbaenhancer.cpp b/src/devices/bus/isa/lbaenhancer.cpp index 14bd28826ef..f8ebedb130c 100644 --- a/src/devices/bus/isa/lbaenhancer.cpp +++ b/src/devices/bus/isa/lbaenhancer.cpp @@ -84,9 +84,10 @@ const tiny_rom_entry *lba_enhancer_device::device_rom_region() const //------------------------------------------------- // device_add_mconfig - add device configuration //------------------------------------------------- -MACHINE_CONFIG_START( lba_enhancer_device::device_add_mconfig ) -// MCFG_DEVICE_ADD("lba_enhancer", lba_enhancer, 0) -MACHINE_CONFIG_END +void lba_enhancer_device::device_add_mconfig(machine_config &config) +{ +// lba_enhancer(config, "lba_enhancer", 0); +} //------------------------------------------------- diff --git a/src/devices/bus/isa/mda.cpp b/src/devices/bus/isa/mda.cpp index b638aa37ae9..35e46220cff 100644 --- a/src/devices/bus/isa/mda.cpp +++ b/src/devices/bus/isa/mda.cpp @@ -107,12 +107,13 @@ DEFINE_DEVICE_TYPE(ISA8_MDA, isa8_mda_device, "isa_ibm_mda", "IBM Monochrome Dis // device_add_mconfig - add device configuration //------------------------------------------------- -MACHINE_CONFIG_START(isa8_mda_device::device_add_mconfig) - MCFG_SCREEN_ADD( MDA_SCREEN_NAME, RASTER) - MCFG_SCREEN_RAW_PARAMS(MDA_CLOCK, 882, 0, 720, 370, 0, 350 ) - MCFG_SCREEN_UPDATE_DEVICE( MC6845_NAME, mc6845_device, screen_update ) +void isa8_mda_device::device_add_mconfig(machine_config &config) +{ + screen_device &screen(SCREEN(config, MDA_SCREEN_NAME, SCREEN_TYPE_RASTER)); + screen.set_raw(MDA_CLOCK, 882, 0, 720, 370, 0, 350); + screen.set_screen_update(MC6845_NAME, FUNC(mc6845_device::screen_update)); - MCFG_PALETTE_ADD( "palette", 4 ) + PALETTE(config, m_palette).set_entries(4); MC6845(config, m_crtc, MDA_CLOCK/9); m_crtc->set_screen(MDA_SCREEN_NAME); @@ -126,7 +127,7 @@ MACHINE_CONFIG_START(isa8_mda_device::device_add_mconfig) PC_LPT(config, m_lpt); m_lpt->irq_handler().set(FUNC(isa8_mda_device::pc_cpu_line)); -MACHINE_CONFIG_END +} //------------------------------------------------- // rom_region - device-specific ROM region @@ -532,12 +533,13 @@ DEFINE_DEVICE_TYPE(ISA8_HERCULES, isa8_hercules_device, "isa_hercules", "Hercule // device_add_mconfig - add device configuration //------------------------------------------------- -MACHINE_CONFIG_START(isa8_hercules_device::device_add_mconfig) - MCFG_SCREEN_ADD( HERCULES_SCREEN_NAME, RASTER) - MCFG_SCREEN_RAW_PARAMS(MDA_CLOCK, 882, 0, 720, 370, 0, 350 ) - MCFG_SCREEN_UPDATE_DEVICE( MC6845_NAME, mc6845_device, screen_update ) +void isa8_hercules_device::device_add_mconfig(machine_config &config) +{ + screen_device &screen(SCREEN(config, HERCULES_SCREEN_NAME, SCREEN_TYPE_RASTER)); + screen.set_raw(MDA_CLOCK, 882, 0, 720, 370, 0, 350); + screen.set_screen_update(MC6845_NAME, FUNC(mc6845_device::screen_update)); - MCFG_PALETTE_ADD( "palette", 4 ) + PALETTE(config, m_palette).set_entries(4); MC6845(config, m_crtc, MDA_CLOCK/9); m_crtc->set_screen(HERCULES_SCREEN_NAME); @@ -551,7 +553,7 @@ MACHINE_CONFIG_START(isa8_hercules_device::device_add_mconfig) PC_LPT(config, m_lpt); m_lpt->irq_handler().set(FUNC(isa8_mda_device::pc_cpu_line)); -MACHINE_CONFIG_END +} //------------------------------------------------- // rom_region - device-specific ROM region @@ -745,12 +747,13 @@ DEFINE_DEVICE_TYPE(ISA8_EC1840_0002, isa8_ec1840_0002_device, "ec1840_0002", "EC //------------------------------------------------- // XXX -MACHINE_CONFIG_START(isa8_ec1840_0002_device::device_add_mconfig) - MCFG_SCREEN_ADD( MDA_SCREEN_NAME, RASTER) - MCFG_SCREEN_RAW_PARAMS(MDA_CLOCK, 792, 0, 640, 370, 0, 350 ) - MCFG_SCREEN_UPDATE_DEVICE( MC6845_NAME, mc6845_device, screen_update ) +void isa8_ec1840_0002_device::device_add_mconfig(machine_config &config) +{ + screen_device &screen(SCREEN(config, MDA_SCREEN_NAME, SCREEN_TYPE_RASTER)); + screen.set_raw(MDA_CLOCK, 792, 0, 640, 370, 0, 350); + screen.set_screen_update(MC6845_NAME, FUNC(mc6845_device::screen_update)); - MCFG_PALETTE_ADD( "palette", 4 ) + PALETTE(config, m_palette).set_entries(4); MC6845(config, m_crtc, MDA_CLOCK/8); m_crtc->set_screen(MDA_SCREEN_NAME); @@ -759,7 +762,7 @@ MACHINE_CONFIG_START(isa8_ec1840_0002_device::device_add_mconfig) m_crtc->set_update_row_callback(FUNC(isa8_mda_device::crtc_update_row), this); m_crtc->out_hsync_callback().set(FUNC(isa8_mda_device::hsync_changed)); m_crtc->out_vsync_callback().set(FUNC(isa8_mda_device::vsync_changed)); -MACHINE_CONFIG_END +} //------------------------------------------------- // isa8_ec1840_0002_device - constructor diff --git a/src/devices/bus/isa/num9rev.cpp b/src/devices/bus/isa/num9rev.cpp index baf30cca586..6137ed580a7 100644 --- a/src/devices/bus/isa/num9rev.cpp +++ b/src/devices/bus/isa/num9rev.cpp @@ -53,19 +53,20 @@ UPD7220_DISPLAY_PIXELS_MEMBER( isa8_number_9_rev_device::hgdc_display_pixels ) // device_add_mconfig - add device configuration //------------------------------------------------- -MACHINE_CONFIG_START(isa8_number_9_rev_device::device_add_mconfig) - MCFG_SCREEN_ADD("screen", RASTER) - MCFG_SCREEN_SIZE(512, 448) - MCFG_SCREEN_VISIBLE_AREA(0, 512-1, 0, 448-1) - MCFG_SCREEN_REFRESH_RATE(60) - MCFG_SCREEN_UPDATE_DRIVER(isa8_number_9_rev_device, screen_update) - MCFG_PALETTE_ADD("palette", 4096) +void isa8_number_9_rev_device::device_add_mconfig(machine_config &config) +{ + screen_device &screen(SCREEN(config, "screen", SCREEN_TYPE_RASTER)); + screen.set_size(512, 448); + screen.set_visarea(0, 512-1, 0, 448-1); + screen.set_refresh_hz(60); + screen.set_screen_update(FUNC(isa8_number_9_rev_device::screen_update)); + PALETTE(config, m_palette).set_entries(4096); UPD7220(config, m_upd7220, XTAL(4'433'619)/2); // unknown clock m_upd7220->set_addrmap(0, &isa8_number_9_rev_device::upd7220_map); m_upd7220->set_display_pixels_callback(FUNC(isa8_number_9_rev_device::hgdc_display_pixels), this); m_upd7220->set_screen("screen"); -MACHINE_CONFIG_END +} //************************************************************************** // LIVE DEVICE diff --git a/src/devices/bus/isa/p1_sound.cpp b/src/devices/bus/isa/p1_sound.cpp index d855f376f12..a1711099c8d 100644 --- a/src/devices/bus/isa/p1_sound.cpp +++ b/src/devices/bus/isa/p1_sound.cpp @@ -29,7 +29,8 @@ DEFINE_DEVICE_TYPE(P1_SOUND, p1_sound_device, "p1_sound", "Poisk-1 sound card (B // device_add_mconfig - add device configuration //------------------------------------------------- -MACHINE_CONFIG_START(p1_sound_device::device_add_mconfig) +void p1_sound_device::device_add_mconfig(machine_config &config) +{ I8251(config, m_midi, 0); m_midi->txd_handler().set("mdout", FUNC(midi_port_device::write_txd)); m_midi->rxrdy_handler().set(":isa", FUNC(isa8_device::irq3_w)); @@ -64,12 +65,13 @@ MACHINE_CONFIG_START(p1_sound_device::device_add_mconfig) // m_d17->out_handler<2>().set(FUNC(XXX)); SPEAKER(config, "speaker").front_center(); - MCFG_DEVICE_ADD("filter", FILTER_RC) - MCFG_SOUND_ROUTE(ALL_OUTPUTS, "speaker", 1.0) - MCFG_DEVICE_ADD("dac", DAC_8BIT_R2R, 0) MCFG_SOUND_ROUTE(ALL_OUTPUTS, "filter", 0.5) // unknown DAC - MCFG_DEVICE_ADD("vref", VOLTAGE_REGULATOR, 0) MCFG_VOLTAGE_REGULATOR_OUTPUT(5.0) - MCFG_SOUND_ROUTE(0, "dac", 1.0, DAC_VREF_POS_INPUT) MCFG_SOUND_ROUTE(0, "dac", -1.0, DAC_VREF_NEG_INPUT) -MACHINE_CONFIG_END + FILTER_RC(config, m_filter).add_route(ALL_OUTPUTS, "speaker", 1.0); + DAC_8BIT_R2R(config, m_dac, 0).add_route(ALL_OUTPUTS, "filter", 0.5); // unknown DAC + voltage_regulator_device &vref(VOLTAGE_REGULATOR(config, "vref")); + vref.set_output(5.0); + vref.add_route(0, "dac", 1.0, DAC_VREF_POS_INPUT); + vref.add_route(0, "dac", -1.0, DAC_VREF_NEG_INPUT); +} //************************************************************************** diff --git a/src/devices/bus/isa/pds.cpp b/src/devices/bus/isa/pds.cpp index 45dffd9904e..65a35db2b14 100644 --- a/src/devices/bus/isa/pds.cpp +++ b/src/devices/bus/isa/pds.cpp @@ -56,6 +56,7 @@ void isa8_pds_device::device_stop() { } -MACHINE_CONFIG_START(isa8_pds_device::device_add_mconfig) - MCFG_DEVICE_ADD("pds_ppi", I8255, 0) -MACHINE_CONFIG_END +void isa8_pds_device::device_add_mconfig(machine_config &config) +{ + I8255(config, m_ppi); +} diff --git a/src/devices/bus/isa/pgc.cpp b/src/devices/bus/isa/pgc.cpp index 4db56f5eaa4..d90badaeae7 100644 --- a/src/devices/bus/isa/pgc.cpp +++ b/src/devices/bus/isa/pgc.cpp @@ -151,30 +151,31 @@ DEFINE_DEVICE_TYPE(ISA8_PGC, isa8_pgc_device, "isa_ibm_pgc", "IBM Professional G // device_add_mconfig - add device configuration //------------------------------------------------- -MACHINE_CONFIG_START(isa8_pgc_device::device_add_mconfig) - MCFG_DEVICE_ADD("maincpu", I8088, XTAL(24'000'000)/3) - MCFG_DEVICE_PROGRAM_MAP(pgc_map) +void isa8_pgc_device::device_add_mconfig(machine_config &config) +{ + I8088(config, m_cpu, XTAL(24'000'000)/3); + m_cpu->set_addrmap(AS_PROGRAM, &isa8_pgc_device::pgc_map); #if 0 - MCFG_DEVICE_IRQ_ACKNOWLEDGE_DRIVER(isa8_pgc_device, irq_callback) + m_cpu->set_irq_acknowledge_callback(FUNC(isa8_pgc_device::irq_callback)); #endif timer_device &scantimer(TIMER(config, "scantimer")); scantimer.configure_periodic(FUNC(isa8_pgc_device::scanline_callback), attotime::from_hz(60*PGC_TOTAL_VERT)); scantimer.set_start_delay(attotime::from_hz(XTAL(50'000'000)/(2*PGC_HORZ_START))); - MCFG_SCREEN_ADD(PGC_SCREEN_NAME, RASTER) - MCFG_SCREEN_RAW_PARAMS(XTAL(50'000'000)/2, + SCREEN(config, m_screen, SCREEN_TYPE_RASTER); + m_screen->set_raw(XTAL(50'000'000)/2, PGC_TOTAL_HORZ, PGC_HORZ_START, PGC_HORZ_START+PGC_DISP_HORZ, - PGC_TOTAL_VERT, PGC_VERT_START, PGC_VERT_START+PGC_DISP_VERT) - MCFG_SCREEN_UPDATE_DRIVER(isa8_pgc_device, screen_update) - MCFG_SCREEN_PALETTE("palette") + PGC_TOTAL_VERT, PGC_VERT_START, PGC_VERT_START+PGC_DISP_VERT); + m_screen->set_screen_update(FUNC(isa8_pgc_device::screen_update)); + m_screen->set_palette(m_palette); #if 0 - MCFG_SCREEN_VBLANK_CALLBACK(WRITELINE(*this, isa8_pgc_device, vblank_irq)) + m_screen->screen_vblank().set(FUNC(isa8_pgc_device::vblank_irq)); #endif GFXDECODE(config, "gfxdecode", m_palette, gfx_pgc); - MCFG_PALETTE_ADD( "palette", 256 ) -MACHINE_CONFIG_END + PALETTE(config, m_palette).set_entries(256); +} //------------------------------------------------- // rom_region - device-specific ROM region diff --git a/src/devices/bus/isa/sc499.cpp b/src/devices/bus/isa/sc499.cpp index e9ace1ddb83..92f049f0402 100644 --- a/src/devices/bus/isa/sc499.cpp +++ b/src/devices/bus/isa/sc499.cpp @@ -177,9 +177,10 @@ static INPUT_PORTS_START( sc499_port ) INPUT_PORTS_END -MACHINE_CONFIG_START(sc499_device::device_add_mconfig) - MCFG_DEVICE_ADD(SC499_CTAPE_TAG, SC499_CTAPE, 0) -MACHINE_CONFIG_END +void sc499_device::device_add_mconfig(machine_config &config) +{ + SC499_CTAPE(config, m_image, 0); +} //************************************************************************** diff --git a/src/devices/bus/isa/svga_cirrus.cpp b/src/devices/bus/isa/svga_cirrus.cpp index 444acac7c1a..bcb6b4995a1 100644 --- a/src/devices/bus/isa/svga_cirrus.cpp +++ b/src/devices/bus/isa/svga_cirrus.cpp @@ -30,14 +30,14 @@ DEFINE_DEVICE_TYPE(ISA16_SVGA_CIRRUS_GD542X, isa16_svga_cirrus_gd542x_device, "c // device_add_mconfig - add device configuration //------------------------------------------------- -MACHINE_CONFIG_START(isa16_svga_cirrus_device::device_add_mconfig) - MCFG_SCREEN_ADD("screen", RASTER) - MCFG_SCREEN_RAW_PARAMS(XTAL(25'174'800),900,0,640,526,0,480) - MCFG_SCREEN_UPDATE_DEVICE("vga", cirrus_gd5430_device, screen_update) +void isa16_svga_cirrus_device::device_add_mconfig(machine_config &config) +{ + screen_device &screen(SCREEN(config, "screen", SCREEN_TYPE_RASTER)); + screen.set_raw(XTAL(25'174'800), 900, 0, 640, 526, 0, 480); + screen.set_screen_update("vga", FUNC(cirrus_gd5430_device::screen_update)); - MCFG_DEVICE_ADD("vga", CIRRUS_GD5430, 0) - MCFG_VIDEO_SET_SCREEN("screen") -MACHINE_CONFIG_END + CIRRUS_GD5430(config, "vga", 0).set_screen("screen"); +} //------------------------------------------------- // rom_region - device-specific ROM region @@ -110,14 +110,14 @@ ROM_END // device_add_mconfig - add device configuration //------------------------------------------------- -MACHINE_CONFIG_START(isa16_svga_cirrus_gd542x_device::device_add_mconfig) - MCFG_SCREEN_ADD("screen", RASTER) - MCFG_SCREEN_RAW_PARAMS(XTAL(25'174'800),900,0,640,526,0,480) - MCFG_SCREEN_UPDATE_DEVICE("vga", cirrus_gd5428_device, screen_update) +void isa16_svga_cirrus_gd542x_device::device_add_mconfig(machine_config &config) +{ + screen_device &screen(SCREEN(config, "screen", SCREEN_TYPE_RASTER)); + screen.set_raw(XTAL(25'174'800), 900, 0, 640, 526, 0, 480); + screen.set_screen_update("vga", FUNC(cirrus_gd5428_device::screen_update)); - MCFG_DEVICE_ADD("vga", CIRRUS_GD5428, 0) - MCFG_VIDEO_SET_SCREEN("screen") -MACHINE_CONFIG_END + CIRRUS_GD5428(config, "vga", 0).set_screen("screen"); +} //------------------------------------------------- // rom_region - device-specific ROM region diff --git a/src/devices/bus/isa/svga_s3.cpp b/src/devices/bus/isa/svga_s3.cpp index 1c97abc3b62..d5a2cde30bf 100644 --- a/src/devices/bus/isa/svga_s3.cpp +++ b/src/devices/bus/isa/svga_s3.cpp @@ -40,14 +40,14 @@ DEFINE_DEVICE_TYPE(ISA16_SVGA_S3, isa16_svga_s3_device, "s3_764", "Number Nine 9 // device_add_mconfig - add device configuration //------------------------------------------------- -MACHINE_CONFIG_START(isa16_svga_s3_device::device_add_mconfig) - MCFG_SCREEN_ADD("screen", RASTER) - MCFG_SCREEN_RAW_PARAMS(XTAL(25'174'800),900,0,640,526,0,480) - MCFG_SCREEN_UPDATE_DEVICE("vga", s3_vga_device, screen_update) +void isa16_svga_s3_device::device_add_mconfig(machine_config &config) +{ + screen_device &screen(SCREEN(config, "screen", SCREEN_TYPE_RASTER)); + screen.set_raw(XTAL(25'174'800), 900, 0, 640, 526, 0, 480); + screen.set_screen_update("vga", FUNC(s3_vga_device::screen_update)); - MCFG_DEVICE_ADD("vga", S3_VGA, 0) - MCFG_VIDEO_SET_SCREEN("screen") -MACHINE_CONFIG_END + S3_VGA(config, "vga", 0).set_screen("screen"); +} //------------------------------------------------- // rom_region - device-specific ROM region @@ -146,14 +146,14 @@ DEFINE_DEVICE_TYPE(ISA16_S3VIRGE, isa16_s3virge_device, "s3virge", "S3 ViRGE Gra // device_add_mconfig - add device configuration //------------------------------------------------- -MACHINE_CONFIG_START(isa16_s3virge_device::device_add_mconfig) - MCFG_SCREEN_ADD("screen", RASTER) - MCFG_SCREEN_RAW_PARAMS(XTAL(25'174'800),900,0,640,526,0,480) - MCFG_SCREEN_UPDATE_DEVICE("vga", s3virge_vga_device, screen_update) +void isa16_s3virge_device::device_add_mconfig(machine_config &config) +{ + screen_device &screen(SCREEN(config, "screen", SCREEN_TYPE_RASTER)); + screen.set_raw(XTAL(25'174'800), 900, 0, 640, 526, 0, 480); + screen.set_screen_update("vga", FUNC(s3virge_vga_device::screen_update)); - MCFG_DEVICE_ADD("vga", S3VIRGE, 0) - MCFG_VIDEO_SET_SCREEN("screen") -MACHINE_CONFIG_END + S3VIRGE(config, "vga", 0).set_screen("screen"); +} //------------------------------------------------- // rom_region - device-specific ROM region @@ -227,14 +227,14 @@ DEFINE_DEVICE_TYPE(ISA16_S3VIRGEDX, isa16_s3virgedx_device, "s3virgedx", "S3 ViR // device_add_mconfig - add device configuration //------------------------------------------------- -MACHINE_CONFIG_START(isa16_s3virgedx_device::device_add_mconfig) - MCFG_SCREEN_ADD("screen", RASTER) - MCFG_SCREEN_RAW_PARAMS(XTAL(25'174'800),900,0,640,526,0,480) - MCFG_SCREEN_UPDATE_DEVICE("vga", s3virgedx_vga_device, screen_update) +void isa16_s3virgedx_device::device_add_mconfig(machine_config &config) +{ + screen_device &screen(SCREEN(config, "screen", SCREEN_TYPE_RASTER)); + screen.set_raw(XTAL(25'174'800), 900, 0, 640, 526, 0, 480); + screen.set_screen_update("vga", FUNC(s3virgedx_vga_device::screen_update)); - MCFG_DEVICE_ADD("vga", S3VIRGEDX, 0) - MCFG_VIDEO_SET_SCREEN("screen") -MACHINE_CONFIG_END + S3VIRGEDX(config, "vga", 0).set_screen("screen"); +} //------------------------------------------------- // rom_region - device-specific ROM region @@ -309,14 +309,14 @@ DEFINE_DEVICE_TYPE(ISA16_DMS3D2KPRO, isa16_stealth3d2kpro_device, "dms3d2kp", "D // device_add_mconfig - add device configuration //------------------------------------------------- -MACHINE_CONFIG_START(isa16_stealth3d2kpro_device::device_add_mconfig) - MCFG_SCREEN_ADD("screen", RASTER) - MCFG_SCREEN_RAW_PARAMS(XTAL(25'174'800),900,0,640,526,0,480) - MCFG_SCREEN_UPDATE_DEVICE("vga", s3virgedx_rev1_vga_device, screen_update) +void isa16_stealth3d2kpro_device::device_add_mconfig(machine_config &config) +{ + screen_device &screen(SCREEN(config, "screen", SCREEN_TYPE_RASTER)); + screen.set_raw(XTAL(25'174'800), 900, 0, 640, 526, 0, 480); + screen.set_screen_update("vga", FUNC(s3virgedx_rev1_vga_device::screen_update)); - MCFG_DEVICE_ADD("vga", S3VIRGEDX1, 0) - MCFG_VIDEO_SET_SCREEN("screen") -MACHINE_CONFIG_END + S3VIRGEDX1(config, "vga", 0).set_screen("screen"); +} //------------------------------------------------- // rom_region - device-specific ROM region diff --git a/src/devices/bus/isa/svga_trident.cpp b/src/devices/bus/isa/svga_trident.cpp index 79aa1dfd55f..aa7fc90b489 100644 --- a/src/devices/bus/isa/svga_trident.cpp +++ b/src/devices/bus/isa/svga_trident.cpp @@ -30,14 +30,14 @@ DEFINE_DEVICE_TYPE(ISA16_SVGA_TGUI9680, isa16_svga_tgui9680_device, "tgui9680", // device_add_mconfig - add device configuration //------------------------------------------------- -MACHINE_CONFIG_START(isa16_svga_tgui9680_device::device_add_mconfig) - MCFG_SCREEN_ADD("screen", RASTER) - MCFG_SCREEN_RAW_PARAMS(XTAL(25'174'800),900,0,640,526,0,480) - MCFG_SCREEN_UPDATE_DEVICE("vga", trident_vga_device, screen_update) - - MCFG_DEVICE_ADD("vga", TRIDENT_VGA, 0) - MCFG_VIDEO_SET_SCREEN("screen") -MACHINE_CONFIG_END +void isa16_svga_tgui9680_device::device_add_mconfig(machine_config &config) +{ + screen_device &screen(SCREEN(config, "screen", SCREEN_TYPE_RASTER)); + screen.set_raw(XTAL(25'174'800), 900, 0, 640, 526, 0, 480); + screen.set_screen_update("vga", FUNC(trident_vga_device::screen_update)); + + TRIDENT_VGA(config, "vga", 0).set_screen("screen"); +} //------------------------------------------------- // rom_region - device-specific ROM region diff --git a/src/devices/bus/isa/svga_tseng.cpp b/src/devices/bus/isa/svga_tseng.cpp index fd232b01d8d..dfe39a39d8e 100644 --- a/src/devices/bus/isa/svga_tseng.cpp +++ b/src/devices/bus/isa/svga_tseng.cpp @@ -29,14 +29,14 @@ DEFINE_DEVICE_TYPE(ISA8_SVGA_ET4K, isa8_svga_et4k_device, "et4000", "SVGA Tseng // device_add_mconfig - add device configuration //------------------------------------------------- -MACHINE_CONFIG_START(isa8_svga_et4k_device::device_add_mconfig) - MCFG_SCREEN_ADD("screen", RASTER) - MCFG_SCREEN_RAW_PARAMS(XTAL(25'174'800),900,0,640,526,0,480) - MCFG_SCREEN_UPDATE_DEVICE("vga", tseng_vga_device, screen_update) - - MCFG_DEVICE_ADD("vga", TSENG_VGA, 0) - MCFG_VIDEO_SET_SCREEN("screen") -MACHINE_CONFIG_END +void isa8_svga_et4k_device::device_add_mconfig(machine_config &config) +{ + screen_device &screen(SCREEN(config, "screen", SCREEN_TYPE_RASTER)); + screen.set_raw(XTAL(25'174'800), 900, 0, 640, 526, 0, 480); + screen.set_screen_update("vga", FUNC(tseng_vga_device::screen_update)); + + TSENG_VGA(config, "vga", 0).set_screen("screen"); +} //------------------------------------------------- // rom_region - device-specific ROM region diff --git a/src/devices/bus/isa/vga.cpp b/src/devices/bus/isa/vga.cpp index b8a86adbfe3..0419ecdd255 100644 --- a/src/devices/bus/isa/vga.cpp +++ b/src/devices/bus/isa/vga.cpp @@ -27,14 +27,14 @@ DEFINE_DEVICE_TYPE(ISA8_VGA, isa8_vga_device, "ibm_vga", "IBM VGA Graphics Card" // device_add_mconfig - add device configuration //------------------------------------------------- -MACHINE_CONFIG_START(isa8_vga_device::device_add_mconfig) - MCFG_SCREEN_ADD("screen", RASTER) - MCFG_SCREEN_RAW_PARAMS(XTAL(25'174'800),900,0,640,526,0,480) - MCFG_SCREEN_UPDATE_DEVICE("vga", vga_device, screen_update) - - MCFG_DEVICE_ADD("vga", VGA, 0) - MCFG_VIDEO_SET_SCREEN("screen") -MACHINE_CONFIG_END +void isa8_vga_device::device_add_mconfig(machine_config &config) +{ + screen_device &screen(SCREEN(config, "screen", SCREEN_TYPE_RASTER)); + screen.set_raw(XTAL(25'174'800), 900, 0, 640, 526, 0, 480); + screen.set_screen_update("vga", FUNC(vga_device::screen_update)); + + VGA(config, "vga", 0).set_screen("screen"); +} //------------------------------------------------- // rom_region - device-specific ROM region diff --git a/src/devices/bus/isa/vga_ati.cpp b/src/devices/bus/isa/vga_ati.cpp index 650a686d4fc..bad1a47a479 100644 --- a/src/devices/bus/isa/vga_ati.cpp +++ b/src/devices/bus/isa/vga_ati.cpp @@ -76,32 +76,33 @@ DEFINE_DEVICE_TYPE(ISA16_SVGA_MACH64, isa16_vga_mach64_device, "mach64 // device_add_mconfig - add device configuration //------------------------------------------------- -MACHINE_CONFIG_START(isa16_vga_gfxultra_device::device_add_mconfig) - MCFG_SCREEN_ADD("screen", RASTER) - MCFG_SCREEN_RAW_PARAMS(XTAL(25'174'800),900,0,640,526,0,480) - MCFG_SCREEN_UPDATE_DEVICE("vga", ati_vga_device, screen_update) - - MCFG_DEVICE_ADD("vga", ATI_VGA, 0) - MCFG_VIDEO_SET_SCREEN("screen") -MACHINE_CONFIG_END - -MACHINE_CONFIG_START(isa16_vga_gfxultrapro_device::device_add_mconfig) - MCFG_SCREEN_ADD("screen", RASTER) - MCFG_SCREEN_RAW_PARAMS(XTAL(25'174'800),900,0,640,526,0,480) - MCFG_SCREEN_UPDATE_DEVICE("vga", mach32_device, screen_update) - - MCFG_DEVICE_ADD("vga", ATIMACH32, 0) - MCFG_VIDEO_SET_SCREEN("screen") -MACHINE_CONFIG_END - -MACHINE_CONFIG_START(isa16_vga_mach64_device::device_add_mconfig) - MCFG_SCREEN_ADD("screen", RASTER) - MCFG_SCREEN_RAW_PARAMS(XTAL(25'174'800),900,0,640,526,0,480) - MCFG_SCREEN_UPDATE_DEVICE("vga", mach64_device, screen_update) - - MCFG_DEVICE_ADD("vga", ATIMACH64, 0) - MCFG_VIDEO_SET_SCREEN("screen") -MACHINE_CONFIG_END +void isa16_vga_gfxultra_device::device_add_mconfig(machine_config &config) +{ + screen_device &screen(SCREEN(config, "screen", SCREEN_TYPE_RASTER)); + screen.set_raw(XTAL(25'174'800), 900, 0, 640, 526, 0, 480); + screen.set_screen_update("vga", FUNC(ati_vga_device::screen_update)); + + ATI_VGA(config, "vga", 0).set_screen("screen"); +} + +void isa16_vga_gfxultrapro_device::device_add_mconfig(machine_config &config) +{ + screen_device &screen(SCREEN(config, "screen", SCREEN_TYPE_RASTER)); + screen.set_raw(XTAL(25'174'800), 900, 0, 640, 526, 0, 480); + screen.set_screen_update("vga", FUNC(mach32_device::screen_update)); + + ATIMACH32(config, "vga", 0).set_screen("screen"); +} + +void isa16_vga_mach64_device::device_add_mconfig(machine_config &config) +{ + screen_device &screen(SCREEN(config, "screen", SCREEN_TYPE_RASTER)); + screen.set_raw(XTAL(25'174'800), 900, 0, 640, 526, 0, 480); + screen.set_screen_update("vga", FUNC(mach64_device::screen_update)); + + ATIMACH64(config, "vga", 0).set_screen("screen"); +} + //------------------------------------------------- // rom_region - device-specific ROM region diff --git a/src/devices/bus/isa/wd1007a.cpp b/src/devices/bus/isa/wd1007a.cpp index 3db2db1d776..22d9863e392 100644 --- a/src/devices/bus/isa/wd1007a.cpp +++ b/src/devices/bus/isa/wd1007a.cpp @@ -45,9 +45,10 @@ wd1007a_device::wd1007a_device(const machine_config &mconfig, const char *tag, d // device_add_mconfig - add device configuration //------------------------------------------------- -MACHINE_CONFIG_START(wd1007a_device::device_add_mconfig) - MCFG_DEVICE_ADD("mcu", AM8753, 10_MHz_XTAL) -MACHINE_CONFIG_END +void wd1007a_device::device_add_mconfig(machine_config &config) +{ + AM8753(config, "mcu", 10_MHz_XTAL); +} //------------------------------------------------- diff --git a/src/devices/bus/jakks_gamekey/rom.cpp b/src/devices/bus/jakks_gamekey/rom.cpp index caabfe225c2..0ca9b7024d9 100644 --- a/src/devices/bus/jakks_gamekey/rom.cpp +++ b/src/devices/bus/jakks_gamekey/rom.cpp @@ -94,9 +94,10 @@ WRITE16_MEMBER(jakks_gamekey_rom_i2c_base_device::write_cart_seeprom) // i2c 24lc04 -MACHINE_CONFIG_START(jakks_gamekey_rom_i2c_24lc04_device::device_add_mconfig) +void jakks_gamekey_rom_i2c_24lc04_device::device_add_mconfig(machine_config &config) +{ I2CMEM(config, "i2cmem", 0)/*.set_page_size(16)*/.set_data_size(0x200); // 24LC04 -MACHINE_CONFIG_END +} /*------------------------------------------------- diff --git a/src/devices/bus/megadrive/svp.cpp b/src/devices/bus/megadrive/svp.cpp index 2ed4e40ba1f..fe4ae33536e 100644 --- a/src/devices/bus/megadrive/svp.cpp +++ b/src/devices/bus/megadrive/svp.cpp @@ -347,11 +347,12 @@ void md_rom_svp_device::md_svp_ext_map(address_map &map) // device_add_mconfig - add device configuration //------------------------------------------------- -MACHINE_CONFIG_START(md_rom_svp_device::device_add_mconfig) - MCFG_DEVICE_ADD("svp", SSP1601, MASTER_CLOCK_NTSC / 7 * 3) /* ~23 MHz (guessed) */ - MCFG_DEVICE_PROGRAM_MAP(md_svp_ssp_map) - MCFG_DEVICE_IO_MAP(md_svp_ext_map) -MACHINE_CONFIG_END +void md_rom_svp_device::device_add_mconfig(machine_config &config) +{ + SSP1601(config, m_svp, MASTER_CLOCK_NTSC / 7 * 3); /* ~23 MHz (guessed) */ + m_svp->set_addrmap(AS_PROGRAM, &md_rom_svp_device::md_svp_ssp_map); + m_svp->set_addrmap(AS_IO, &md_rom_svp_device::md_svp_ext_map); +} ioport_constructor md_rom_svp_device::device_input_ports() const { diff --git a/src/devices/bus/msx_cart/fmpac.cpp b/src/devices/bus/msx_cart/fmpac.cpp index 36ca228b919..959b2fed0c8 100644 --- a/src/devices/bus/msx_cart/fmpac.cpp +++ b/src/devices/bus/msx_cart/fmpac.cpp @@ -29,12 +29,12 @@ msx_cart_fmpac_device::msx_cart_fmpac_device(const machine_config &mconfig, cons } -MACHINE_CONFIG_START(msx_cart_fmpac_device::device_add_mconfig) +void msx_cart_fmpac_device::device_add_mconfig(machine_config &config) +{ // This is actually incorrect. The sound output is passed back into the MSX machine where it is mixed internally and output through the system 'speaker'. SPEAKER(config, "mono").front_center(); - MCFG_DEVICE_ADD("ym2413", YM2413, XTAL(10'738'635)/3) - MCFG_SOUND_ROUTE(ALL_OUTPUTS, "mono", 0.40) -MACHINE_CONFIG_END + YM2413(config, m_ym2413, XTAL(10'738'635)/3).add_route(ALL_OUTPUTS, "mono", 0.40); +} void msx_cart_fmpac_device::device_start() diff --git a/src/devices/bus/msx_cart/konami.cpp b/src/devices/bus/msx_cart/konami.cpp index e1d4e35321f..9236c590d64 100644 --- a/src/devices/bus/msx_cart/konami.cpp +++ b/src/devices/bus/msx_cart/konami.cpp @@ -141,12 +141,12 @@ msx_cart_konami_scc_device::msx_cart_konami_scc_device(const machine_config &mco } -MACHINE_CONFIG_START(msx_cart_konami_scc_device::device_add_mconfig) +void msx_cart_konami_scc_device::device_add_mconfig(machine_config &config) +{ // This is actually incorrect. The sound output is passed back into the MSX machine where it is mixed internally and output through the system 'speaker'. SPEAKER(config, "mono").front_center(); - MCFG_DEVICE_ADD("k051649", K051649, XTAL(10'738'635)/3/2) - MCFG_SOUND_ROUTE(ALL_OUTPUTS, "mono", 0.15) -MACHINE_CONFIG_END + K051649(config, m_k051649, XTAL(10'738'635)/3/2).add_route(ALL_OUTPUTS, "mono", 0.15); +} void msx_cart_konami_scc_device::device_start() @@ -472,13 +472,16 @@ msx_cart_synthesizer_device::msx_cart_synthesizer_device(const machine_config &m } -MACHINE_CONFIG_START(msx_cart_synthesizer_device::device_add_mconfig) +void msx_cart_synthesizer_device::device_add_mconfig(machine_config &config) +{ // This is actually incorrect. The sound output is passed back into the MSX machine where it is mixed internally and output through the system 'speaker'. SPEAKER(config, "speaker").front_center(); - MCFG_DEVICE_ADD("dac", DAC_8BIT_R2R, 0) MCFG_SOUND_ROUTE(ALL_OUTPUTS, "speaker", 0.1) // unknown DAC - MCFG_DEVICE_ADD("vref", VOLTAGE_REGULATOR, 0) MCFG_VOLTAGE_REGULATOR_OUTPUT(5.0) - MCFG_SOUND_ROUTE(0, "dac", 1.0, DAC_VREF_POS_INPUT) MCFG_SOUND_ROUTE(0, "dac", -1.0, DAC_VREF_NEG_INPUT) -MACHINE_CONFIG_END + DAC_8BIT_R2R(config, m_dac, 0).add_route(ALL_OUTPUTS, "speaker", 0.1); // unknown DAC + voltage_regulator_device &vref(VOLTAGE_REGULATOR(config, "vref")); + vref.set_output(5.0); + vref.add_route(0, "dac", 1.0, DAC_VREF_POS_INPUT); + vref.add_route(0, "dac", -1.0, DAC_VREF_NEG_INPUT); +} void msx_cart_synthesizer_device::device_start() @@ -545,12 +548,12 @@ msx_cart_konami_sound_device::msx_cart_konami_sound_device(const machine_config } -MACHINE_CONFIG_START(msx_cart_konami_sound_device::device_add_mconfig) +void msx_cart_konami_sound_device::device_add_mconfig(machine_config &config) +{ // This is actually incorrect. The sound output is passed back into the MSX machine where it is mixed internally and output through the system 'speaker'. SPEAKER(config, "mono").front_center(); - MCFG_DEVICE_ADD("k052539", K051649, XTAL(10'738'635)/3/2) - MCFG_SOUND_ROUTE(ALL_OUTPUTS, "mono", 0.15) -MACHINE_CONFIG_END + K051649(config, m_k052539, XTAL(10'738'635)/3/2).add_route(ALL_OUTPUTS, "mono", 0.15); +} void msx_cart_konami_sound_device::device_start() @@ -872,13 +875,14 @@ void msx_cart_keyboard_master_device::vlm_map(address_map &map) } -MACHINE_CONFIG_START(msx_cart_keyboard_master_device::device_add_mconfig) +void msx_cart_keyboard_master_device::device_add_mconfig(machine_config &config) +{ // This is actually incorrect. The sound output is passed back into the MSX machine where it is mixed internally and output through the system 'speaker'. SPEAKER(config, "mono").front_center(); - MCFG_DEVICE_ADD("vlm5030", VLM5030, XTAL(3'579'545)) - MCFG_SOUND_ROUTE(ALL_OUTPUTS, "mono", 0.40) - MCFG_DEVICE_ADDRESS_MAP(0, vlm_map) -MACHINE_CONFIG_END + VLM5030(config, m_vlm5030, XTAL(3'579'545)); + m_vlm5030->add_route(ALL_OUTPUTS, "mono", 0.40); + m_vlm5030->set_addrmap(0, &msx_cart_keyboard_master_device::vlm_map); +} void msx_cart_keyboard_master_device::device_start() diff --git a/src/devices/bus/msx_cart/majutsushi.cpp b/src/devices/bus/msx_cart/majutsushi.cpp index ef76b62af2a..952755ffe03 100644 --- a/src/devices/bus/msx_cart/majutsushi.cpp +++ b/src/devices/bus/msx_cart/majutsushi.cpp @@ -26,13 +26,16 @@ msx_cart_majutsushi_device::msx_cart_majutsushi_device(const machine_config &mco } -MACHINE_CONFIG_START(msx_cart_majutsushi_device::device_add_mconfig) +void msx_cart_majutsushi_device::device_add_mconfig(machine_config &config) +{ // This is actually incorrect. The sound output is passed back into the MSX machine where it is mixed internally and output through the system 'speaker'. SPEAKER(config, "speaker").front_center(); - MCFG_DEVICE_ADD("dac", DAC_8BIT_R2R, 0) MCFG_SOUND_ROUTE(ALL_OUTPUTS, "speaker", 0.05) // unknown DAC - MCFG_DEVICE_ADD("vref", VOLTAGE_REGULATOR, 0) MCFG_VOLTAGE_REGULATOR_OUTPUT(5.0) - MCFG_SOUND_ROUTE(0, "dac", 1.0, DAC_VREF_POS_INPUT) MCFG_SOUND_ROUTE(0, "dac", -1.0, DAC_VREF_NEG_INPUT) -MACHINE_CONFIG_END + DAC_8BIT_R2R(config, m_dac, 0).add_route(ALL_OUTPUTS, "speaker", 0.05); // unknown DAC + voltage_regulator_device &vref(VOLTAGE_REGULATOR(config, "vref")); + vref.set_output(5.0); + vref.add_route(0, "dac", 1.0, DAC_VREF_POS_INPUT); + vref.add_route(0, "dac", -1.0, DAC_VREF_NEG_INPUT); +} void msx_cart_majutsushi_device::device_start() diff --git a/src/devices/bus/nasbus/avc.cpp b/src/devices/bus/nasbus/avc.cpp index a0a71da3666..bf905542e8d 100644 --- a/src/devices/bus/nasbus/avc.cpp +++ b/src/devices/bus/nasbus/avc.cpp @@ -22,10 +22,11 @@ DEFINE_DEVICE_TYPE(NASCOM_AVC, nascom_avc_device, "nascom_avc", "Nascom Advanced // device_add_mconfig - add device configuration //------------------------------------------------- -MACHINE_CONFIG_START(nascom_avc_device::device_add_mconfig) - MCFG_SCREEN_ADD("screen", RASTER) - MCFG_SCREEN_RAW_PARAMS(16250000, 1024, 0, 768, 320, 0, 256) - MCFG_SCREEN_UPDATE_DEVICE("mc6845", mc6845_device, screen_update) +void nascom_avc_device::device_add_mconfig(machine_config &config) +{ + screen_device &screen(SCREEN(config, "screen", SCREEN_TYPE_RASTER)); + screen.set_raw(16250000, 1024, 0, 768, 320, 0, 256); + screen.set_screen_update("mc6845", FUNC(mc6845_device::screen_update)); PALETTE(config, m_palette, palette_device::RGB_3BIT); @@ -34,7 +35,7 @@ MACHINE_CONFIG_START(nascom_avc_device::device_add_mconfig) m_crtc->set_show_border_area(false); m_crtc->set_char_width(6); m_crtc->set_update_row_callback(FUNC(nascom_avc_device::crtc_update_row), this); -MACHINE_CONFIG_END +} //************************************************************************** diff --git a/src/devices/bus/nes/konami.cpp b/src/devices/bus/nes/konami.cpp index cac5670a574..2963336f92e 100644 --- a/src/devices/bus/nes/konami.cpp +++ b/src/devices/bus/nes/konami.cpp @@ -637,16 +637,15 @@ WRITE8_MEMBER(nes_konami_vrc6_device::write_h) // device_add_mconfig - add device configuration //------------------------------------------------- -MACHINE_CONFIG_START(nes_konami_vrc6_device::device_add_mconfig) - +void nes_konami_vrc6_device::device_add_mconfig(machine_config &config) +{ // additional sound hardware SPEAKER(config, "addon").front_center(); // TODO: this is not how VRC6 clock signaling works! // The board uses the CLK pin in reality, not hardcoded NTSC values! - MCFG_DEVICE_ADD("vrc6snd", VRC6, XTAL(21'477'272)/12) - MCFG_SOUND_ROUTE(ALL_OUTPUTS, "addon", 0.5) -MACHINE_CONFIG_END + VRC6(config, m_vrc6snd, XTAL(21'477'272)/12).add_route(ALL_OUTPUTS, "addon", 0.5); +} /*------------------------------------------------- @@ -761,13 +760,12 @@ WRITE8_MEMBER(nes_konami_vrc7_device::write_h) // FIXME: we currently emulate this as a base YM2413! -MACHINE_CONFIG_START(nes_konami_vrc7_device::device_add_mconfig) - +void nes_konami_vrc7_device::device_add_mconfig(machine_config &config) +{ // additional sound hardware SPEAKER(config, "addon").front_center(); // TODO: this is not how VRC7 clock signaling works! // The board uses the CLK pin in reality, not hardcoded NTSC values! - MCFG_DEVICE_ADD("ym", YM2413, XTAL(21'477'272)/12) - MCFG_SOUND_ROUTE(ALL_OUTPUTS, "addon", 0.5) -MACHINE_CONFIG_END + YM2413(config, m_ym2413, XTAL(21'477'272)/12).add_route(ALL_OUTPUTS, "addon", 0.5); +} diff --git a/src/devices/bus/nubus/nubus_48gc.cpp b/src/devices/bus/nubus/nubus_48gc.cpp index e089e1986db..86f4fca21ec 100644 --- a/src/devices/bus/nubus/nubus_48gc.cpp +++ b/src/devices/bus/nubus/nubus_48gc.cpp @@ -39,15 +39,16 @@ DEFINE_DEVICE_TYPE(NUBUS_824GC, nubus_824gc_device, "nb_824gc", "Apple 8*24 vide // device_add_mconfig - add device configuration //------------------------------------------------- -MACHINE_CONFIG_START(jmfb_device::device_add_mconfig) - MCFG_SCREEN_ADD(GC48_SCREEN_NAME, RASTER) - MCFG_SCREEN_UPDATE_DEVICE(DEVICE_SELF, jmfb_device, screen_update) - MCFG_SCREEN_RAW_PARAMS(25175000, 800, 0, 640, 525, 0, 480) -// MCFG_SCREEN_SIZE(1152, 870) -// MCFG_SCREEN_VISIBLE_AREA(0, 1152-1, 0, 870-1) -// MCFG_SCREEN_REFRESH_RATE(75) -// MCFG_SCREEN_VBLANK_TIME(ATTOSECONDS_IN_USEC(1260)) -MACHINE_CONFIG_END +void jmfb_device::device_add_mconfig(machine_config &config) +{ + screen_device &screen(SCREEN(config, GC48_SCREEN_NAME, SCREEN_TYPE_RASTER)); + screen.set_screen_update(FUNC(jmfb_device::screen_update)); + screen.set_raw(25175000, 800, 0, 640, 525, 0, 480); +// screen.set_size(1152, 870); +// screen.set_visarea(0, 1152-1, 0, 870-1); +// screen.set_refresh_hz(75); +// screen.set_vblank_time(ATTOSECONDS_IN_USEC(1260)); +} //------------------------------------------------- // rom_region - device-specific ROM region diff --git a/src/devices/bus/nubus/nubus_cb264.cpp b/src/devices/bus/nubus/nubus_cb264.cpp index 9efb5e6d088..01bff0877da 100644 --- a/src/devices/bus/nubus/nubus_cb264.cpp +++ b/src/devices/bus/nubus/nubus_cb264.cpp @@ -40,13 +40,14 @@ DEFINE_DEVICE_TYPE(NUBUS_CB264, nubus_cb264_device, "nb_c264", "RasterOps ColorB // device_add_mconfig - add device configuration //------------------------------------------------- -MACHINE_CONFIG_START(nubus_cb264_device::device_add_mconfig) - MCFG_SCREEN_ADD( CB264_SCREEN_NAME, RASTER) - MCFG_SCREEN_UPDATE_DEVICE(DEVICE_SELF, nubus_cb264_device, screen_update) - MCFG_SCREEN_RAW_PARAMS(25175000, 800, 0, 640, 525, 0, 480) - MCFG_SCREEN_SIZE(1024,768) - MCFG_SCREEN_VISIBLE_AREA(0, 640-1, 0, 480-1) -MACHINE_CONFIG_END +void nubus_cb264_device::device_add_mconfig(machine_config &config) +{ + screen_device &screen(SCREEN(config, CB264_SCREEN_NAME, SCREEN_TYPE_RASTER)); + screen.set_screen_update(FUNC(nubus_cb264_device::screen_update)); + screen.set_raw(25175000, 800, 0, 640, 525, 0, 480); + screen.set_size(1024, 768); + screen.set_visarea(0, 640-1, 0, 480-1); +} //------------------------------------------------- // rom_region - device-specific ROM region diff --git a/src/devices/bus/nubus/nubus_image.cpp b/src/devices/bus/nubus/nubus_image.cpp index 1618bda4da7..8e2d39fb943 100644 --- a/src/devices/bus/nubus/nubus_image.cpp +++ b/src/devices/bus/nubus/nubus_image.cpp @@ -130,9 +130,10 @@ DEFINE_DEVICE_TYPE(NUBUS_IMAGE, nubus_image_device, "nb_image", "NuBus Disk Imag // device_add_mconfig - add device configuration //------------------------------------------------- -MACHINE_CONFIG_START(nubus_image_device::device_add_mconfig) - MCFG_DEVICE_ADD(IMAGE_DISK0_TAG, MESSIMG_DISK, 0) -MACHINE_CONFIG_END +void nubus_image_device::device_add_mconfig(machine_config &config) +{ + MESSIMG_DISK(config, IMAGE_DISK0_TAG, 0); +} //------------------------------------------------- // rom_region - device-specific ROM region diff --git a/src/devices/bus/nubus/nubus_m2hires.cpp b/src/devices/bus/nubus/nubus_m2hires.cpp index 6ac472eeb5b..c575f7d94b1 100644 --- a/src/devices/bus/nubus/nubus_m2hires.cpp +++ b/src/devices/bus/nubus/nubus_m2hires.cpp @@ -36,13 +36,14 @@ DEFINE_DEVICE_TYPE(NUBUS_M2HIRES, nubus_m2hires_device, "nb_m2hr", "Macintosh II // device_add_mconfig - add device configuration //------------------------------------------------- -MACHINE_CONFIG_START(nubus_m2hires_device::device_add_mconfig) - MCFG_SCREEN_ADD( M2HIRES_SCREEN_NAME, RASTER) - MCFG_SCREEN_UPDATE_DEVICE(DEVICE_SELF, nubus_m2hires_device, screen_update) - MCFG_SCREEN_RAW_PARAMS(25175000, 800, 0, 640, 525, 0, 480) - MCFG_SCREEN_SIZE(1024,768) - MCFG_SCREEN_VISIBLE_AREA(0, 640-1, 0, 480-1) -MACHINE_CONFIG_END +void nubus_m2hires_device::device_add_mconfig(machine_config &config) +{ + screen_device &screen(SCREEN(config, M2HIRES_SCREEN_NAME, SCREEN_TYPE_RASTER)); + screen.set_screen_update(FUNC(nubus_m2hires_device::screen_update)); + screen.set_raw(25175000, 800, 0, 640, 525, 0, 480); + screen.set_size(1024, 768); + screen.set_visarea(0, 640-1, 0, 480-1); +} //------------------------------------------------- // rom_region - device-specific ROM region diff --git a/src/devices/bus/nubus/nubus_m2video.cpp b/src/devices/bus/nubus/nubus_m2video.cpp index d7eea8cf22e..b16391b640d 100644 --- a/src/devices/bus/nubus/nubus_m2video.cpp +++ b/src/devices/bus/nubus/nubus_m2video.cpp @@ -38,13 +38,14 @@ DEFINE_DEVICE_TYPE(NUBUS_M2VIDEO, nubus_m2video_device, "nb_m2vc", "Macintosh II // device_add_mconfig - add device configuration //------------------------------------------------- -MACHINE_CONFIG_START(nubus_m2video_device::device_add_mconfig) - MCFG_SCREEN_ADD(M2VIDEO_SCREEN_NAME, RASTER) - MCFG_SCREEN_UPDATE_DEVICE(DEVICE_SELF, nubus_m2video_device, screen_update) - MCFG_SCREEN_RAW_PARAMS(25175000, 800, 0, 640, 525, 0, 480) - MCFG_SCREEN_SIZE(1024,768) - MCFG_SCREEN_VISIBLE_AREA(0, 640-1, 0, 480-1) -MACHINE_CONFIG_END +void nubus_m2video_device::device_add_mconfig(machine_config &config) +{ + screen_device &screen(SCREEN(config, M2VIDEO_SCREEN_NAME, SCREEN_TYPE_RASTER)); + screen.set_screen_update(FUNC(nubus_m2video_device::screen_update)); + screen.set_raw(25175000, 800, 0, 640, 525, 0, 480); + screen.set_size(1024, 768); + screen.set_visarea(0, 640-1, 0, 480-1); +} //------------------------------------------------- // rom_region - device-specific ROM region diff --git a/src/devices/bus/nubus/nubus_spec8.cpp b/src/devices/bus/nubus/nubus_spec8.cpp index d3d45d9b076..1353d3b9a9d 100644 --- a/src/devices/bus/nubus/nubus_spec8.cpp +++ b/src/devices/bus/nubus/nubus_spec8.cpp @@ -40,13 +40,14 @@ DEFINE_DEVICE_TYPE(NUBUS_SPEC8S3, nubus_spec8s3_device, "nb_sp8s3", "SuperMac Sp // device_add_mconfig - add device configuration //------------------------------------------------- -MACHINE_CONFIG_START(nubus_spec8s3_device::device_add_mconfig) - MCFG_SCREEN_ADD( SPEC8S3_SCREEN_NAME, RASTER) - MCFG_SCREEN_UPDATE_DEVICE(DEVICE_SELF, nubus_spec8s3_device, screen_update) - MCFG_SCREEN_RAW_PARAMS(25175000, 800, 0, 640, 525, 0, 480) - MCFG_SCREEN_SIZE(1024,768) - MCFG_SCREEN_VISIBLE_AREA(0, 1024-1, 0, 768-1) -MACHINE_CONFIG_END +void nubus_spec8s3_device::device_add_mconfig(machine_config &config) +{ + screen_device &screen(SCREEN(config, SPEC8S3_SCREEN_NAME, SCREEN_TYPE_RASTER)); + screen.set_screen_update(FUNC(nubus_spec8s3_device::screen_update)); + screen.set_raw(25175000, 800, 0, 640, 525, 0, 480); + screen.set_size(1024, 768); + screen.set_visarea(0, 1024-1, 0, 768-1); +} //------------------------------------------------- // rom_region - device-specific ROM region diff --git a/src/devices/bus/nubus/nubus_specpdq.cpp b/src/devices/bus/nubus/nubus_specpdq.cpp index ecdac5a9956..2e09a258bd2 100644 --- a/src/devices/bus/nubus/nubus_specpdq.cpp +++ b/src/devices/bus/nubus/nubus_specpdq.cpp @@ -54,15 +54,16 @@ DEFINE_DEVICE_TYPE(NUBUS_SPECPDQ, nubus_specpdq_device, "nb_spdq", "SuperMac Spe // device_add_mconfig - add device configuration //------------------------------------------------- -MACHINE_CONFIG_START(nubus_specpdq_device::device_add_mconfig) - MCFG_SCREEN_ADD( SPECPDQ_SCREEN_NAME, RASTER) - MCFG_SCREEN_UPDATE_DEVICE(DEVICE_SELF, nubus_specpdq_device, screen_update) - MCFG_SCREEN_RAW_PARAMS(25175000, 800, 0, 640, 525, 0, 480) - MCFG_SCREEN_SIZE(1280,1024) - MCFG_SCREEN_VISIBLE_AREA(0, 1152-1, 0, 844-1) - - MCFG_PALETTE_ADD("palette", 256) -MACHINE_CONFIG_END +void nubus_specpdq_device::device_add_mconfig(machine_config &config) +{ + screen_device &screen(SCREEN(config, SPECPDQ_SCREEN_NAME, SCREEN_TYPE_RASTER)); + screen.set_screen_update(FUNC(nubus_specpdq_device::screen_update)); + screen.set_raw(25175000, 800, 0, 640, 525, 0, 480); + screen.set_size(1280, 1024); + screen.set_visarea(0, 1152-1, 0, 844-1); + + PALETTE(config, m_palette).set_entries(256); +} //------------------------------------------------- // rom_region - device-specific ROM region diff --git a/src/devices/bus/nubus/nubus_vikbw.cpp b/src/devices/bus/nubus/nubus_vikbw.cpp index 040f452b2d2..ab3af18fe72 100644 --- a/src/devices/bus/nubus/nubus_vikbw.cpp +++ b/src/devices/bus/nubus/nubus_vikbw.cpp @@ -36,13 +36,14 @@ DEFINE_DEVICE_TYPE(NUBUS_VIKBW, nubus_vikbw_device, "nb_vikbw", "Moniterm Viking // device_add_mconfig - add device configuration //------------------------------------------------- -MACHINE_CONFIG_START(nubus_vikbw_device::device_add_mconfig) - MCFG_SCREEN_ADD( VIKBW_SCREEN_NAME, RASTER) - MCFG_SCREEN_UPDATE_DEVICE(DEVICE_SELF, nubus_vikbw_device, screen_update) - MCFG_SCREEN_SIZE(1024,768) - MCFG_SCREEN_VISIBLE_AREA(0, 1024-1, 0, 768-1) - MCFG_SCREEN_REFRESH_RATE(70) -MACHINE_CONFIG_END +void nubus_vikbw_device::device_add_mconfig(machine_config &config) +{ + screen_device &screen(SCREEN(config, VIKBW_SCREEN_NAME, SCREEN_TYPE_RASTER)); + screen.set_screen_update(FUNC(nubus_vikbw_device::screen_update)); + screen.set_size(1024, 768); + screen.set_visarea(0, 1024-1, 0, 768-1); + screen.set_refresh_hz(70); +} //------------------------------------------------- // rom_region - device-specific ROM region diff --git a/src/devices/bus/nubus/nubus_wsportrait.cpp b/src/devices/bus/nubus/nubus_wsportrait.cpp index 19c25347738..12702c052a6 100644 --- a/src/devices/bus/nubus/nubus_wsportrait.cpp +++ b/src/devices/bus/nubus/nubus_wsportrait.cpp @@ -39,13 +39,14 @@ DEFINE_DEVICE_TYPE(NUBUS_WSPORTRAIT, nubus_wsportrait_device, "nb_wspt", "Macint // device_add_mconfig - add device configuration //------------------------------------------------- -MACHINE_CONFIG_START(nubus_wsportrait_device::device_add_mconfig) - MCFG_SCREEN_ADD( WSPORTRAIT_SCREEN_NAME, RASTER) - MCFG_SCREEN_UPDATE_DEVICE(DEVICE_SELF, nubus_wsportrait_device, screen_update) - MCFG_SCREEN_SIZE(1024,960) - MCFG_SCREEN_REFRESH_RATE(75.0) - MCFG_SCREEN_VISIBLE_AREA(0, 640-1, 0, 870-1) -MACHINE_CONFIG_END +void nubus_wsportrait_device::device_add_mconfig(machine_config &config) +{ + screen_device &screen(SCREEN(config, WSPORTRAIT_SCREEN_NAME, SCREEN_TYPE_RASTER)); + screen.set_screen_update(FUNC(nubus_wsportrait_device::screen_update)); + screen.set_size(1024, 960); + screen.set_refresh_hz(75.0); + screen.set_visarea(0, 640-1, 0, 870-1); +} //------------------------------------------------- // rom_region - device-specific ROM region diff --git a/src/devices/bus/nubus/pds30_30hr.cpp b/src/devices/bus/nubus/pds30_30hr.cpp index 8888c50b5fa..190872708f6 100644 --- a/src/devices/bus/nubus/pds30_30hr.cpp +++ b/src/devices/bus/nubus/pds30_30hr.cpp @@ -39,13 +39,14 @@ DEFINE_DEVICE_TYPE(PDS030_XCEED30HR, nubus_xceed30hr_device, "pd3_30hr", "Micron // device_add_mconfig - add device configuration //------------------------------------------------- -MACHINE_CONFIG_START(nubus_xceed30hr_device::device_add_mconfig) - MCFG_SCREEN_ADD( XCEED30HR_SCREEN_NAME, RASTER) - MCFG_SCREEN_UPDATE_DEVICE(DEVICE_SELF, nubus_xceed30hr_device, screen_update) - MCFG_SCREEN_RAW_PARAMS(25175000, 800, 0, 640, 525, 0, 480) - MCFG_SCREEN_SIZE(1024,768) - MCFG_SCREEN_VISIBLE_AREA(0, 640-1, 0, 480-1) -MACHINE_CONFIG_END +void nubus_xceed30hr_device::device_add_mconfig(machine_config &config) +{ + screen_device &screen(SCREEN(config, XCEED30HR_SCREEN_NAME, SCREEN_TYPE_RASTER)); + screen.set_screen_update(FUNC(nubus_xceed30hr_device::screen_update)); + screen.set_raw(25175000, 800, 0, 640, 525, 0, 480); + screen.set_size(1024, 768); + screen.set_visarea(0, 640-1, 0, 480-1); +} //------------------------------------------------- // rom_region - device-specific ROM region diff --git a/src/devices/bus/nubus/pds30_cb264.cpp b/src/devices/bus/nubus/pds30_cb264.cpp index 6ec398a5257..4d153596fe0 100644 --- a/src/devices/bus/nubus/pds30_cb264.cpp +++ b/src/devices/bus/nubus/pds30_cb264.cpp @@ -32,13 +32,14 @@ DEFINE_DEVICE_TYPE(PDS030_CB264SE30, nubus_cb264se30_device, "pd3_c264", "Raster // device_add_mconfig - add device configuration //------------------------------------------------- -MACHINE_CONFIG_START(nubus_cb264se30_device::device_add_mconfig) - MCFG_SCREEN_ADD( CB264SE30_SCREEN_NAME, RASTER) - MCFG_SCREEN_UPDATE_DEVICE(DEVICE_SELF, nubus_cb264se30_device, screen_update) - MCFG_SCREEN_RAW_PARAMS(25175000, 800, 0, 640, 525, 0, 480) - MCFG_SCREEN_SIZE(1024,768) - MCFG_SCREEN_VISIBLE_AREA(0, 640-1, 0, 480-1) -MACHINE_CONFIG_END +void nubus_cb264se30_device::device_add_mconfig(machine_config &config) +{ + screen_device &screen(SCREEN(config, CB264SE30_SCREEN_NAME, SCREEN_TYPE_RASTER)); + screen.set_screen_update(FUNC(nubus_cb264se30_device::screen_update)); + screen.set_raw(25175000, 800, 0, 640, 525, 0, 480); + screen.set_size(1024, 768); + screen.set_visarea(0, 640-1, 0, 480-1); +} //------------------------------------------------- // rom_region - device-specific ROM region diff --git a/src/devices/bus/nubus/pds30_mc30.cpp b/src/devices/bus/nubus/pds30_mc30.cpp index a314b7f9981..6770b517deb 100644 --- a/src/devices/bus/nubus/pds30_mc30.cpp +++ b/src/devices/bus/nubus/pds30_mc30.cpp @@ -35,13 +35,14 @@ DEFINE_DEVICE_TYPE(PDS030_XCEEDMC30, nubus_xceedmc30_device, "pd3_mclr", "Micron // device_add_mconfig - add device configuration //------------------------------------------------- -MACHINE_CONFIG_START(nubus_xceedmc30_device::device_add_mconfig) - MCFG_SCREEN_ADD( XCEEDMC30_SCREEN_NAME, RASTER) - MCFG_SCREEN_UPDATE_DEVICE(DEVICE_SELF, nubus_xceedmc30_device, screen_update) - MCFG_SCREEN_RAW_PARAMS(25175000, 800, 0, 640, 525, 0, 480) - MCFG_SCREEN_SIZE(1024,768) - MCFG_SCREEN_VISIBLE_AREA(0, 640-1, 0, 480-1) -MACHINE_CONFIG_END +void nubus_xceedmc30_device::device_add_mconfig(machine_config &config) +{ + screen_device &screen(SCREEN(config, XCEEDMC30_SCREEN_NAME, SCREEN_TYPE_RASTER)); + screen.set_screen_update(FUNC(nubus_xceedmc30_device::screen_update)); + screen.set_raw(25175000, 800, 0, 640, 525, 0, 480); + screen.set_size(1024, 768); + screen.set_visarea(0, 640-1, 0, 480-1); +} //------------------------------------------------- // rom_region - device-specific ROM region diff --git a/src/devices/bus/nubus/pds30_procolor816.cpp b/src/devices/bus/nubus/pds30_procolor816.cpp index db1c02fea31..440ba6c86d7 100644 --- a/src/devices/bus/nubus/pds30_procolor816.cpp +++ b/src/devices/bus/nubus/pds30_procolor816.cpp @@ -38,13 +38,14 @@ DEFINE_DEVICE_TYPE(PDS030_PROCOLOR816, nubus_procolor816_device, "pd3_pc16", "La // device_add_mconfig - add device configuration //------------------------------------------------- -MACHINE_CONFIG_START(nubus_procolor816_device::device_add_mconfig) - MCFG_SCREEN_ADD( PROCOLOR816_SCREEN_NAME, RASTER) - MCFG_SCREEN_UPDATE_DEVICE(DEVICE_SELF, nubus_procolor816_device, screen_update) - MCFG_SCREEN_RAW_PARAMS(25175000, 800, 0, 640, 525, 0, 480) - MCFG_SCREEN_SIZE(1024,768) - MCFG_SCREEN_VISIBLE_AREA(0, 640-1, 0, 480-1) -MACHINE_CONFIG_END +void nubus_procolor816_device::device_add_mconfig(machine_config &config) +{ + screen_device &screen(SCREEN(config, PROCOLOR816_SCREEN_NAME, SCREEN_TYPE_RASTER)); + screen.set_screen_update(FUNC(nubus_procolor816_device::screen_update)); + screen.set_raw(25175000, 800, 0, 640, 525, 0, 480); + screen.set_size(1024, 768); + screen.set_visarea(0, 640-1, 0, 480-1); +} //------------------------------------------------- // rom_region - device-specific ROM region diff --git a/src/devices/bus/nubus/pds30_sigmalview.cpp b/src/devices/bus/nubus/pds30_sigmalview.cpp index ea05362d8ea..51f27a03713 100644 --- a/src/devices/bus/nubus/pds30_sigmalview.cpp +++ b/src/devices/bus/nubus/pds30_sigmalview.cpp @@ -32,13 +32,14 @@ DEFINE_DEVICE_TYPE(PDS030_LVIEW, nubus_lview_device, "pd3_lviw", "Sigma Designs // device_add_mconfig - add device configuration //------------------------------------------------- -MACHINE_CONFIG_START(nubus_lview_device::device_add_mconfig) - MCFG_SCREEN_ADD( LVIEW_SCREEN_NAME, RASTER) - MCFG_SCREEN_UPDATE_DEVICE(DEVICE_SELF, nubus_lview_device, screen_update) - MCFG_SCREEN_SIZE(832,600) - MCFG_SCREEN_REFRESH_RATE(70) - MCFG_SCREEN_VISIBLE_AREA(0, 832-1, 0, 600-1) -MACHINE_CONFIG_END +void nubus_lview_device::device_add_mconfig(machine_config &config) +{ + screen_device &screen(SCREEN(config, LVIEW_SCREEN_NAME, SCREEN_TYPE_RASTER)); + screen.set_screen_update(FUNC(nubus_lview_device::screen_update)); + screen.set_size(832, 600); + screen.set_refresh_hz(70); + screen.set_visarea(0, 832-1, 0, 600-1); +} //------------------------------------------------- // rom_region - device-specific ROM region diff --git a/src/devices/bus/pet/hsg.cpp b/src/devices/bus/pet/hsg.cpp index fe51ba28bd9..62b60d496a8 100644 --- a/src/devices/bus/pet/hsg.cpp +++ b/src/devices/bus/pet/hsg.cpp @@ -91,12 +91,13 @@ void cbm8000_hsg_b_device::hsg_b_map(address_map &map) // device_add_mconfig - add device configuration //------------------------------------------------- -MACHINE_CONFIG_START(cbm8000_hsg_a_device::device_add_mconfig) - MCFG_SCREEN_ADD_MONOCHROME(SCREEN_TAG, RASTER, rgb_t::green()) - MCFG_SCREEN_UPDATE_DEVICE(EF9365_TAG, ef9365_device, screen_update) - MCFG_SCREEN_SIZE(512, 512) - MCFG_SCREEN_VISIBLE_AREA(0, 512-1, 0, 512-1) - MCFG_SCREEN_REFRESH_RATE(25) +void cbm8000_hsg_a_device::device_add_mconfig(machine_config &config) +{ + screen_device &screen(SCREEN(config, SCREEN_TAG, SCREEN_TYPE_RASTER, rgb_t::green())); + screen.set_screen_update(EF9365_TAG, FUNC(ef9365_device::screen_update)); + screen.set_size(512, 512); + screen.set_visarea(0, 512-1, 0, 512-1); + screen.set_refresh_hz(25); PALETTE(config, "palette", palette_device::MONOCHROME); EF9365(config, m_gdc, 1750000); @@ -105,14 +106,15 @@ MACHINE_CONFIG_START(cbm8000_hsg_a_device::device_add_mconfig) m_gdc->set_palette_tag("palette"); m_gdc->set_nb_bitplanes(1); m_gdc->set_display_mode(ef9365_device::DISPLAY_MODE_512x512); -MACHINE_CONFIG_END - -MACHINE_CONFIG_START(cbm8000_hsg_b_device::device_add_mconfig) - MCFG_SCREEN_ADD_MONOCHROME(SCREEN_TAG, RASTER, rgb_t::green()) - MCFG_SCREEN_UPDATE_DEVICE(EF9366_TAG, ef9365_device, screen_update) - MCFG_SCREEN_SIZE(512, 256) - MCFG_SCREEN_VISIBLE_AREA(0, 512-1, 0, 256-1) - MCFG_SCREEN_REFRESH_RATE(50) +} + +void cbm8000_hsg_b_device::device_add_mconfig(machine_config &config) +{ + screen_device &screen(SCREEN(config, SCREEN_TAG, SCREEN_TYPE_RASTER, rgb_t::green())); + screen.set_screen_update(EF9366_TAG, FUNC(ef9365_device::screen_update)); + screen.set_size(512, 256); + screen.set_visarea(0, 512-1, 0, 256-1); + screen.set_refresh_hz(50); PALETTE(config, "palette", palette_device::MONOCHROME); EF9365(config, m_gdc, 1750000); //EF9366 @@ -121,7 +123,7 @@ MACHINE_CONFIG_START(cbm8000_hsg_b_device::device_add_mconfig) m_gdc->set_palette_tag("palette"); m_gdc->set_nb_bitplanes(1); m_gdc->set_display_mode(ef9365_device::DISPLAY_MODE_512x256); -MACHINE_CONFIG_END +} diff --git a/src/devices/bus/snes/upd.cpp b/src/devices/bus/snes/upd.cpp index 462ab0faf98..d9d81837c30 100644 --- a/src/devices/bus/snes/upd.cpp +++ b/src/devices/bus/snes/upd.cpp @@ -132,11 +132,12 @@ void sns_rom20_necdsp_device::dsp_data_map_lorom(address_map &map) // device_add_mconfig - add device configuration //------------------------------------------------- -MACHINE_CONFIG_START(sns_rom20_necdsp_device::device_add_mconfig) - MCFG_DEVICE_ADD("dsp", UPD7725, 8000000) - MCFG_DEVICE_PROGRAM_MAP(dsp_prg_map_lorom) - MCFG_DEVICE_DATA_MAP(dsp_data_map_lorom) -MACHINE_CONFIG_END +void sns_rom20_necdsp_device::device_add_mconfig(machine_config &config) +{ + UPD7725(config, m_upd7725, 8000000); + m_upd7725->set_addrmap(AS_PROGRAM, &sns_rom20_necdsp_device::dsp_prg_map_lorom); + m_upd7725->set_addrmap(AS_DATA, &sns_rom20_necdsp_device::dsp_data_map_lorom); +} READ8_MEMBER( sns_rom20_necdsp_device::chip_read ) { @@ -189,11 +190,12 @@ void sns_rom21_necdsp_device::dsp_data_map_hirom(address_map &map) // device_add_mconfig - add device configuration //------------------------------------------------- -MACHINE_CONFIG_START(sns_rom21_necdsp_device::device_add_mconfig) - MCFG_DEVICE_ADD("dsp", UPD7725, 8000000) - MCFG_DEVICE_PROGRAM_MAP(dsp_prg_map_hirom) - MCFG_DEVICE_DATA_MAP(dsp_data_map_hirom) -MACHINE_CONFIG_END +void sns_rom21_necdsp_device::device_add_mconfig(machine_config &config) +{ + UPD7725(config, m_upd7725, 8000000); + m_upd7725->set_addrmap(AS_PROGRAM, &sns_rom21_necdsp_device::dsp_prg_map_hirom); + m_upd7725->set_addrmap(AS_DATA, &sns_rom21_necdsp_device::dsp_data_map_hirom); +} READ8_MEMBER( sns_rom21_necdsp_device::chip_read ) { @@ -300,18 +302,20 @@ void sns_rom_setadsp_device::st01x_data_map(address_map &map) // device_add_mconfig - add device configuration //------------------------------------------------- -MACHINE_CONFIG_START(sns_rom_seta10dsp_device::device_add_mconfig) - MCFG_DEVICE_ADD("dsp", UPD96050, 10000000) - MCFG_DEVICE_PROGRAM_MAP(st01x_prg_map) - MCFG_DEVICE_DATA_MAP(st01x_data_map) -MACHINE_CONFIG_END +void sns_rom_seta10dsp_device::device_add_mconfig(machine_config &config) +{ + UPD96050(config, m_upd96050, 10000000); + m_upd96050->set_addrmap(AS_PROGRAM, &sns_rom_seta10dsp_device::st01x_prg_map); + m_upd96050->set_addrmap(AS_DATA, &sns_rom_seta10dsp_device::st01x_data_map); +} -MACHINE_CONFIG_START(sns_rom_seta11dsp_device::device_add_mconfig) - MCFG_DEVICE_ADD("dsp", UPD96050, 15000000) - MCFG_DEVICE_PROGRAM_MAP(st01x_prg_map) - MCFG_DEVICE_DATA_MAP(st01x_data_map) -MACHINE_CONFIG_END +void sns_rom_seta11dsp_device::device_add_mconfig(machine_config &config) +{ + UPD96050(config, m_upd96050, 15000000); + m_upd96050->set_addrmap(AS_PROGRAM, &sns_rom_seta11dsp_device::st01x_prg_map); + m_upd96050->set_addrmap(AS_DATA, &sns_rom_seta11dsp_device::st01x_data_map); +} // To make faster DSP access to its internal rom, let's install read banks and map m_bios there with correct byte order @@ -411,53 +415,61 @@ sns_rom_seta11dsp_legacy_device::sns_rom_seta11dsp_legacy_device(const machine_c } -MACHINE_CONFIG_START(sns_rom20_necdsp1_legacy_device::device_add_mconfig) - MCFG_DEVICE_ADD("dsp", UPD7725, 8000000) - MCFG_DEVICE_PROGRAM_MAP(dsp_prg_map_lorom) - MCFG_DEVICE_DATA_MAP(dsp_data_map_lorom) -MACHINE_CONFIG_END - -MACHINE_CONFIG_START(sns_rom20_necdsp1b_legacy_device::device_add_mconfig) - MCFG_DEVICE_ADD("dsp", UPD7725, 8000000) - MCFG_DEVICE_PROGRAM_MAP(dsp_prg_map_lorom) - MCFG_DEVICE_DATA_MAP(dsp_data_map_lorom) -MACHINE_CONFIG_END - -MACHINE_CONFIG_START(sns_rom20_necdsp2_legacy_device::device_add_mconfig) - MCFG_DEVICE_ADD("dsp", UPD7725, 8000000) - MCFG_DEVICE_PROGRAM_MAP(dsp_prg_map_lorom) - MCFG_DEVICE_DATA_MAP(dsp_data_map_lorom) -MACHINE_CONFIG_END - -MACHINE_CONFIG_START(sns_rom20_necdsp3_legacy_device::device_add_mconfig) - MCFG_DEVICE_ADD("dsp", UPD7725, 8000000) - MCFG_DEVICE_PROGRAM_MAP(dsp_prg_map_lorom) - MCFG_DEVICE_DATA_MAP(dsp_data_map_lorom) -MACHINE_CONFIG_END - -MACHINE_CONFIG_START(sns_rom20_necdsp4_legacy_device::device_add_mconfig) - MCFG_DEVICE_ADD("dsp", UPD7725, 8000000) - MCFG_DEVICE_PROGRAM_MAP(dsp_prg_map_lorom) - MCFG_DEVICE_DATA_MAP(dsp_data_map_lorom) -MACHINE_CONFIG_END - -MACHINE_CONFIG_START(sns_rom21_necdsp1_legacy_device::device_add_mconfig) - MCFG_DEVICE_ADD("dsp", UPD7725, 8000000) - MCFG_DEVICE_PROGRAM_MAP(dsp_prg_map_hirom) - MCFG_DEVICE_DATA_MAP(dsp_data_map_hirom) -MACHINE_CONFIG_END - -MACHINE_CONFIG_START(sns_rom_seta10dsp_legacy_device::device_add_mconfig) - MCFG_DEVICE_ADD("dsp", UPD96050, 10000000) - MCFG_DEVICE_PROGRAM_MAP(st01x_prg_map) - MCFG_DEVICE_DATA_MAP(st01x_data_map) -MACHINE_CONFIG_END - -MACHINE_CONFIG_START(sns_rom_seta11dsp_legacy_device::device_add_mconfig) - MCFG_DEVICE_ADD("dsp", UPD96050, 15000000) - MCFG_DEVICE_PROGRAM_MAP(st01x_prg_map) - MCFG_DEVICE_DATA_MAP(st01x_data_map) -MACHINE_CONFIG_END +void sns_rom20_necdsp1_legacy_device::device_add_mconfig(machine_config &config) +{ + UPD7725(config, m_upd7725, 8000000); + m_upd7725->set_addrmap(AS_PROGRAM, &sns_rom20_necdsp1_legacy_device::dsp_prg_map_lorom); + m_upd7725->set_addrmap(AS_DATA, &sns_rom20_necdsp1_legacy_device::dsp_data_map_lorom); +} + +void sns_rom20_necdsp1b_legacy_device::device_add_mconfig(machine_config &config) +{ + UPD7725(config, m_upd7725, 8000000); + m_upd7725->set_addrmap(AS_PROGRAM, &sns_rom20_necdsp1b_legacy_device::dsp_prg_map_lorom); + m_upd7725->set_addrmap(AS_DATA, &sns_rom20_necdsp1b_legacy_device::dsp_data_map_lorom); +} + +void sns_rom20_necdsp2_legacy_device::device_add_mconfig(machine_config &config) +{ + UPD7725(config, m_upd7725, 8000000); + m_upd7725->set_addrmap(AS_PROGRAM, &sns_rom20_necdsp2_legacy_device::dsp_prg_map_lorom); + m_upd7725->set_addrmap(AS_DATA, &sns_rom20_necdsp2_legacy_device::dsp_data_map_lorom); +} + +void sns_rom20_necdsp3_legacy_device::device_add_mconfig(machine_config &config) +{ + UPD7725(config, m_upd7725, 8000000); + m_upd7725->set_addrmap(AS_PROGRAM, &sns_rom20_necdsp3_legacy_device::dsp_prg_map_lorom); + m_upd7725->set_addrmap(AS_DATA, &sns_rom20_necdsp3_legacy_device::dsp_data_map_lorom); +} + +void sns_rom20_necdsp4_legacy_device::device_add_mconfig(machine_config &config) +{ + UPD7725(config, m_upd7725, 8000000); + m_upd7725->set_addrmap(AS_PROGRAM, &sns_rom20_necdsp4_legacy_device::dsp_prg_map_lorom); + m_upd7725->set_addrmap(AS_DATA, &sns_rom20_necdsp4_legacy_device::dsp_data_map_lorom); +} + +void sns_rom21_necdsp1_legacy_device::device_add_mconfig(machine_config &config) +{ + UPD7725(config, m_upd7725, 8000000); + m_upd7725->set_addrmap(AS_PROGRAM, &sns_rom21_necdsp1_legacy_device::dsp_prg_map_hirom); + m_upd7725->set_addrmap(AS_DATA, &sns_rom21_necdsp1_legacy_device::dsp_data_map_hirom); +} + +void sns_rom_seta10dsp_legacy_device::device_add_mconfig(machine_config &config) +{ + UPD96050(config, m_upd96050, 10000000); + m_upd96050->set_addrmap(AS_PROGRAM, &sns_rom_seta10dsp_legacy_device::st01x_prg_map); + m_upd96050->set_addrmap(AS_DATA, &sns_rom_seta10dsp_legacy_device::st01x_data_map); +} + +void sns_rom_seta11dsp_legacy_device::device_add_mconfig(machine_config &config) +{ + UPD96050(config, m_upd96050, 15000000); + m_upd96050->set_addrmap(AS_PROGRAM, &sns_rom_seta11dsp_legacy_device::st01x_prg_map); + m_upd96050->set_addrmap(AS_DATA, &sns_rom_seta11dsp_legacy_device::st01x_data_map); +} ROM_START( snes_dsp1 ) diff --git a/src/devices/bus/snes/upd.h b/src/devices/bus/snes/upd.h index dfc55466225..0d21335861c 100644 --- a/src/devices/bus/snes/upd.h +++ b/src/devices/bus/snes/upd.h @@ -37,9 +37,9 @@ protected: void dsp_data_map_lorom(address_map &map); void dsp_prg_map_lorom(address_map &map); -private: required_device m_upd7725; +private: std::vector m_dsp_prg; std::vector m_dsp_data; }; @@ -71,9 +71,9 @@ protected: void dsp_data_map_hirom(address_map &map); void dsp_prg_map_hirom(address_map &map); -private: required_device m_upd7725; +private: std::vector m_dsp_prg; std::vector m_dsp_data; }; @@ -102,9 +102,9 @@ protected: void st01x_data_map(address_map &map); void st01x_prg_map(address_map &map); -private: required_device m_upd96050; +private: std::vector m_dsp_prg; std::vector m_dsp_data; }; diff --git a/src/devices/bus/vic20/videopak.cpp b/src/devices/bus/vic20/videopak.cpp index 3e8c708742b..a63cac93a96 100644 --- a/src/devices/bus/vic20/videopak.cpp +++ b/src/devices/bus/vic20/videopak.cpp @@ -97,12 +97,13 @@ GFXDECODE_END // device_add_mconfig - add device configuration //------------------------------------------------- -MACHINE_CONFIG_START(vic20_video_pak_device::device_add_mconfig) - MCFG_SCREEN_ADD_MONOCHROME(MC6845_SCREEN_TAG, RASTER, rgb_t::white()) - MCFG_SCREEN_UPDATE_DEVICE(MC6845_TAG, h46505_device, screen_update) - MCFG_SCREEN_SIZE(80*8, 24*8) - MCFG_SCREEN_VISIBLE_AREA(0, 80*8-1, 0, 24*8-1) - MCFG_SCREEN_REFRESH_RATE(50) +void vic20_video_pak_device::device_add_mconfig(machine_config &config) +{ + screen_device &screen(SCREEN(config, MC6845_SCREEN_TAG, SCREEN_TYPE_RASTER, rgb_t::white())); + screen.set_screen_update(MC6845_TAG, FUNC(h46505_device::screen_update)); + screen.set_size(80*8, 24*8); + screen.set_visarea(0, 80*8-1, 0, 24*8-1); + screen.set_refresh_hz(50); GFXDECODE(config, "gfxdecode", m_palette, gfx_vic20_video_pak); PALETTE(config, m_palette, palette_device::MONOCHROME); @@ -112,7 +113,7 @@ MACHINE_CONFIG_START(vic20_video_pak_device::device_add_mconfig) m_crtc->set_show_border_area(true); m_crtc->set_char_width(8); m_crtc->set_update_row_callback(FUNC(vic20_video_pak_device::crtc_update_row), this); -MACHINE_CONFIG_END +} diff --git a/src/devices/bus/wangpc/tig.cpp b/src/devices/bus/wangpc/tig.cpp index e9170b420cc..966cc023b6c 100644 --- a/src/devices/bus/wangpc/tig.cpp +++ b/src/devices/bus/wangpc/tig.cpp @@ -114,13 +114,14 @@ UPD7220_DISPLAY_PIXELS_MEMBER( wangpc_tig_device::hgdc_display_pixels ) // MACHINE_CONFIG_START( wangpc_tig ) //------------------------------------------------- -MACHINE_CONFIG_START(wangpc_tig_device::device_add_mconfig) - MCFG_SCREEN_ADD_MONOCHROME(SCREEN_TAG, RASTER, rgb_t::green()) - MCFG_SCREEN_UPDATE_DEVICE(DEVICE_SELF, wangpc_tig_device, screen_update) - MCFG_SCREEN_SIZE(80*10, 25*12) - MCFG_SCREEN_VISIBLE_AREA(0, 80*10-1, 0, 25*12-1) - MCFG_SCREEN_VBLANK_TIME(ATTOSECONDS_IN_USEC(2500)) - MCFG_SCREEN_REFRESH_RATE(60) +void wangpc_tig_device::device_add_mconfig(machine_config &config) +{ + screen_device &screen(SCREEN(config, SCREEN_TAG, SCREEN_TYPE_RASTER, rgb_t::green())); + screen.set_screen_update(FUNC(wangpc_tig_device::screen_update)); + screen.set_size(80*10, 25*12); + screen.set_visarea(0, 80*10-1, 0, 25*12-1); + screen.set_vblank_time(ATTOSECONDS_IN_USEC(2500)); + screen.set_refresh_hz(60); PALETTE(config, m_palette, palette_device::MONOCHROME_HIGHLIGHT); @@ -133,7 +134,7 @@ MACHINE_CONFIG_START(wangpc_tig_device::device_add_mconfig) m_hgdc1->set_addrmap(0, &wangpc_tig_device::upd7220_1_map); m_hgdc1->set_display_pixels_callback(FUNC(wangpc_tig_device::hgdc_display_pixels), this); m_hgdc1->set_screen(SCREEN_TAG); -MACHINE_CONFIG_END +} //************************************************************************** diff --git a/src/emu/screen.h b/src/emu/screen.h index acd106f3c4e..edf9629c21a 100644 --- a/src/emu/screen.h +++ b/src/emu/screen.h @@ -177,6 +177,12 @@ public: { set_type(type); } + screen_device(const machine_config &mconfig, const char *tag, device_t *owner, screen_type_enum type, rgb_t color) + : screen_device(mconfig, tag, owner, u32(0)) + { + set_type(type); + set_color(color); + } ~screen_device(); // configuration readers @@ -520,11 +526,6 @@ typedef device_type_iterator screen_device_iterator; #define MCFG_SCREEN_ADD(_tag, _type) \ MCFG_DEVICE_ADD(_tag, SCREEN, SCREEN_TYPE_##_type) -#define MCFG_SCREEN_ADD_MONOCHROME(_tag, _type, _color) \ - MCFG_DEVICE_ADD(_tag, SCREEN, 0) \ - MCFG_SCREEN_TYPE(_type) \ - MCFG_SCREEN_COLOR(_color) - #define MCFG_SCREEN_MODIFY(_tag) \ MCFG_DEVICE_MODIFY(_tag) @@ -564,7 +565,5 @@ typedef device_type_iterator screen_device_iterator; downcast(*device).set_palette(finder_base::DUMMY_TAG); #define MCFG_SCREEN_VIDEO_ATTRIBUTES(_flags) \ downcast(*device).set_video_attributes(_flags); -#define MCFG_SCREEN_COLOR(_color) \ - downcast(*device).set_color(_color); #endif // MAME_EMU_SCREEN_H diff --git a/src/mame/audio/alesis.cpp b/src/mame/audio/alesis.cpp index 39fb0609fb6..baa33f06560 100644 --- a/src/mame/audio/alesis.cpp +++ b/src/mame/audio/alesis.cpp @@ -47,8 +47,10 @@ MACHINE_CONFIG_START(alesis_dm3ag_device::device_add_mconfig) SPEAKER(config, "lspeaker2").front_left(); SPEAKER(config, "rspeaker2").front_right(); MCFG_DEVICE_ADD("dac", PCM54HP, 0) MCFG_SOUND_ROUTE(ALL_OUTPUTS, "lspeaker1", 1.0) MCFG_SOUND_ROUTE(ALL_OUTPUTS, "rspeaker1", 1.0) // PCM54HP DAC + R63/R73-75 + Sample and hold - MCFG_DEVICE_ADD("vref", VOLTAGE_REGULATOR, 0) MCFG_VOLTAGE_REGULATOR_OUTPUT(5.0) - MCFG_SOUND_ROUTE(0, "dac", 1.0, DAC_VREF_POS_INPUT) MCFG_SOUND_ROUTE(0, "dac", -1.0, DAC_VREF_NEG_INPUT) + voltage_regulator_device &vref(VOLTAGE_REGULATOR(config, "vref")); + vref.set_output(5.0); + vref.add_route(0, "dac", 1.0, DAC_VREF_POS_INPUT); + vref.add_route(0, "dac", -1.0, DAC_VREF_NEG_INPUT); MACHINE_CONFIG_END //------------------------------------------------- diff --git a/src/mame/audio/csd.cpp b/src/mame/audio/csd.cpp index d770de8cd5d..e21e871c17b 100644 --- a/src/mame/audio/csd.cpp +++ b/src/mame/audio/csd.cpp @@ -47,8 +47,10 @@ MACHINE_CONFIG_START(midway_cheap_squeak_deluxe_device::device_add_mconfig) m_pia->irqb_handler().set(FUNC(midway_cheap_squeak_deluxe_device::irq_w)); MCFG_DEVICE_ADD("dac", AD7533, 0) MCFG_SOUND_ROUTE(ALL_OUTPUTS, *this, 1.0) - MCFG_DEVICE_ADD("vref", VOLTAGE_REGULATOR, 0) MCFG_VOLTAGE_REGULATOR_OUTPUT(5.0) - MCFG_SOUND_ROUTE(0, "dac", 1.0, DAC_VREF_POS_INPUT) MCFG_SOUND_ROUTE(0, "dac", -1.0, DAC_VREF_NEG_INPUT) + voltage_regulator_device &vref(VOLTAGE_REGULATOR(config, "vref")); + vref.set_output(5.0); + vref.add_route(0, "dac", 1.0, DAC_VREF_POS_INPUT); + vref.add_route(0, "dac", -1.0, DAC_VREF_NEG_INPUT); MACHINE_CONFIG_END //------------------------------------------------- diff --git a/src/mame/audio/gottlieb.cpp b/src/mame/audio/gottlieb.cpp index bca41ff8732..90cf2af226e 100644 --- a/src/mame/audio/gottlieb.cpp +++ b/src/mame/audio/gottlieb.cpp @@ -127,8 +127,10 @@ MACHINE_CONFIG_START(gottlieb_sound_r0_device::device_add_mconfig) // sound devices MCFG_DEVICE_ADD("dac", DAC_8BIT_R2R, 0) MCFG_SOUND_ROUTE(ALL_OUTPUTS, *this, 0.25) // unknown DAC - MCFG_DEVICE_ADD("vref", VOLTAGE_REGULATOR, 0) MCFG_VOLTAGE_REGULATOR_OUTPUT(5.0) - MCFG_SOUND_ROUTE(0, "dac", 1.0, DAC_VREF_POS_INPUT) MCFG_SOUND_ROUTE(0, "dac", -1.0, DAC_VREF_NEG_INPUT) + voltage_regulator_device &vref(VOLTAGE_REGULATOR(config, "vref")); + vref.set_output(5.0); + vref.add_route(0, "dac", 1.0, DAC_VREF_POS_INPUT); + vref.add_route(0, "dac", -1.0, DAC_VREF_NEG_INPUT); MACHINE_CONFIG_END @@ -258,8 +260,10 @@ MACHINE_CONFIG_START(gottlieb_sound_r1_device::device_add_mconfig) // sound devices MCFG_DEVICE_ADD("dac", DAC_8BIT_R2R, 0) MCFG_SOUND_ROUTE(ALL_OUTPUTS, *this, 0.25) // unknown DAC - MCFG_DEVICE_ADD("vref", VOLTAGE_REGULATOR, 0) MCFG_VOLTAGE_REGULATOR_OUTPUT(5.0) - MCFG_SOUND_ROUTE(0, "dac", 1.0, DAC_VREF_POS_INPUT) MCFG_SOUND_ROUTE(0, "dac", -1.0, DAC_VREF_NEG_INPUT) + voltage_regulator_device &vref(VOLTAGE_REGULATOR(config, "vref")); + vref.set_output(5.0); + vref.add_route(0, "dac", 1.0, DAC_VREF_POS_INPUT); + vref.add_route(0, "dac", -1.0, DAC_VREF_NEG_INPUT); MACHINE_CONFIG_END diff --git a/src/mame/audio/harddriv.cpp b/src/mame/audio/harddriv.cpp index 598ff034ea9..b94ec4e84cb 100644 --- a/src/mame/audio/harddriv.cpp +++ b/src/mame/audio/harddriv.cpp @@ -456,6 +456,8 @@ MACHINE_CONFIG_START(harddriv_sound_board_device::device_add_mconfig) SPEAKER(config, "speaker").front_center(); MCFG_DEVICE_ADD("dac", AM6012, 0) MCFG_SOUND_ROUTE(ALL_OUTPUTS, "speaker", 0.5) // ls374d.75e + ls374d.90e + am6012 - MCFG_DEVICE_ADD("vref", VOLTAGE_REGULATOR, 0) MCFG_VOLTAGE_REGULATOR_OUTPUT(5.0) - MCFG_SOUND_ROUTE(0, "dac", 1.0, DAC_VREF_POS_INPUT) MCFG_SOUND_ROUTE(0, "dac", -1.0, DAC_VREF_NEG_INPUT) + voltage_regulator_device &vref(VOLTAGE_REGULATOR(config, "vref")); + vref.set_output(5.0); + vref.add_route(0, "dac", 1.0, DAC_VREF_POS_INPUT); + vref.add_route(0, "dac", -1.0, DAC_VREF_NEG_INPUT); MACHINE_CONFIG_END diff --git a/src/mame/audio/midway.cpp b/src/mame/audio/midway.cpp index f25b82f69b8..54b8aed7998 100644 --- a/src/mame/audio/midway.cpp +++ b/src/mame/audio/midway.cpp @@ -601,8 +601,10 @@ MACHINE_CONFIG_START(midway_sounds_good_device::device_add_mconfig) m_pia->irqb_handler().set(FUNC(midway_sounds_good_device::irq_w)); MCFG_DEVICE_ADD("dac", AD7533, 0) MCFG_SOUND_ROUTE(ALL_OUTPUTS, *this, 1.0) /// ad7533jn.u10 - MCFG_DEVICE_ADD("vref", VOLTAGE_REGULATOR, 0) MCFG_VOLTAGE_REGULATOR_OUTPUT(5.0) - MCFG_SOUND_ROUTE(0, "dac", 1.0, DAC_VREF_POS_INPUT) MCFG_SOUND_ROUTE(0, "dac", -1.0, DAC_VREF_NEG_INPUT) + voltage_regulator_device &vref(VOLTAGE_REGULATOR(config, "vref")); + vref.set_output(5.0); + vref.add_route(0, "dac", 1.0, DAC_VREF_POS_INPUT); + vref.add_route(0, "dac", -1.0, DAC_VREF_NEG_INPUT); MACHINE_CONFIG_END @@ -756,8 +758,10 @@ MACHINE_CONFIG_START(midway_turbo_cheap_squeak_device::device_add_mconfig) m_pia->irqb_handler().set(FUNC(midway_turbo_cheap_squeak_device::irq_w)); MCFG_DEVICE_ADD("dac", AD7533, 0) MCFG_SOUND_ROUTE(ALL_OUTPUTS, *this, 1.0) - MCFG_DEVICE_ADD("vref", VOLTAGE_REGULATOR, 0) MCFG_VOLTAGE_REGULATOR_OUTPUT(5.0) - MCFG_SOUND_ROUTE(0, "dac", 1.0, DAC_VREF_POS_INPUT) MCFG_SOUND_ROUTE(0, "dac", -1.0, DAC_VREF_NEG_INPUT) + voltage_regulator_device &vref(VOLTAGE_REGULATOR(config, "vref")); + vref.set_output(5.0); + vref.add_route(0, "dac", 1.0, DAC_VREF_POS_INPUT); + vref.add_route(0, "dac", -1.0, DAC_VREF_NEG_INPUT); MACHINE_CONFIG_END diff --git a/src/mame/audio/s11c_bg.cpp b/src/mame/audio/s11c_bg.cpp index 941a5d16e80..a9f33ec8cf8 100644 --- a/src/mame/audio/s11c_bg.cpp +++ b/src/mame/audio/s11c_bg.cpp @@ -68,8 +68,10 @@ MACHINE_CONFIG_START(s11c_bg_device::device_add_mconfig) m_ym2151->add_route(ALL_OUTPUTS, *this, 0.25); MCFG_DEVICE_ADD("dac", MC1408, 0) MCFG_SOUND_ROUTE(ALL_OUTPUTS, *this, 0.25) - MCFG_DEVICE_ADD("vref", VOLTAGE_REGULATOR, 0) MCFG_VOLTAGE_REGULATOR_OUTPUT(5.0) - MCFG_SOUND_ROUTE(0, "dac", 1.0, DAC_VREF_POS_INPUT) MCFG_SOUND_ROUTE(0, "dac", -1.0, DAC_VREF_NEG_INPUT) + voltage_regulator_device &vref(VOLTAGE_REGULATOR(config, "vref")); + vref.set_output(5.0); + vref.add_route(0, "dac", 1.0, DAC_VREF_POS_INPUT); + vref.add_route(0, "dac", -1.0, DAC_VREF_NEG_INPUT); MCFG_DEVICE_ADD("hc55516_bg", HC55516, 0) MCFG_SOUND_ROUTE(ALL_OUTPUTS, *this, 0.5) diff --git a/src/mame/audio/williams.cpp b/src/mame/audio/williams.cpp index adee5db828e..c7efdbecf4e 100644 --- a/src/mame/audio/williams.cpp +++ b/src/mame/audio/williams.cpp @@ -191,8 +191,10 @@ MACHINE_CONFIG_START(williams_cvsd_sound_device::device_add_mconfig) ym.add_route(ALL_OUTPUTS, *this, 0.10); MC1408(config, "dac", 0).add_route(ALL_OUTPUTS, *this, 0.25); - MCFG_DEVICE_ADD("vref", VOLTAGE_REGULATOR, 0) MCFG_VOLTAGE_REGULATOR_OUTPUT(5.0) - MCFG_SOUND_ROUTE(0, "dac", 1.0, DAC_VREF_POS_INPUT) MCFG_SOUND_ROUTE(0, "dac", -1.0, DAC_VREF_NEG_INPUT) + voltage_regulator_device &vref(VOLTAGE_REGULATOR(config, "vref")); + vref.set_output(5.0); + vref.add_route(0, "dac", 1.0, DAC_VREF_POS_INPUT); + vref.add_route(0, "dac", -1.0, DAC_VREF_NEG_INPUT); HC55516(config, m_hc55516, 0); m_hc55516->add_route(ALL_OUTPUTS, *this, 0.60); @@ -763,8 +765,10 @@ MACHINE_CONFIG_START(williams_adpcm_sound_device::device_add_mconfig) ym2151.add_route(ALL_OUTPUTS, *this, 0.10); MCFG_DEVICE_ADD("dac", AD7524, 0) MCFG_SOUND_ROUTE(ALL_OUTPUTS, *this, 0.10) - MCFG_DEVICE_ADD("vref", VOLTAGE_REGULATOR, 0) MCFG_VOLTAGE_REGULATOR_OUTPUT(5.0) - MCFG_SOUND_ROUTE(0, "dac", 1.0, DAC_VREF_POS_INPUT) MCFG_SOUND_ROUTE(0, "dac", -1.0, DAC_VREF_NEG_INPUT) + voltage_regulator_device &vref(VOLTAGE_REGULATOR(config, "vref")); + vref.set_output(5.0); + vref.add_route(0, "dac", 1.0, DAC_VREF_POS_INPUT); + vref.add_route(0, "dac", -1.0, DAC_VREF_NEG_INPUT); MCFG_DEVICE_ADD("oki", OKIM6295, ADPCM_MASTER_CLOCK/8, okim6295_device::PIN7_HIGH) // clock frequency & pin 7 not verified MCFG_DEVICE_ADDRESS_MAP(0, williams_adpcm_oki_map) diff --git a/src/mame/audio/wpcsnd.cpp b/src/mame/audio/wpcsnd.cpp index e49b3b89be6..2779287263c 100644 --- a/src/mame/audio/wpcsnd.cpp +++ b/src/mame/audio/wpcsnd.cpp @@ -79,8 +79,10 @@ MACHINE_CONFIG_START(wpcsnd_device::device_add_mconfig) m_ym2151->add_route(ALL_OUTPUTS, *this, 0.25); MCFG_DEVICE_ADD("dac", AD7524, 0) MCFG_SOUND_ROUTE(ALL_OUTPUTS, *this, 0.25) - MCFG_DEVICE_ADD("vref", VOLTAGE_REGULATOR, 0) MCFG_VOLTAGE_REGULATOR_OUTPUT(5.0) - MCFG_SOUND_ROUTE(0, "dac", 1.0, DAC_VREF_POS_INPUT) MCFG_SOUND_ROUTE(0, "dac", -1.0, DAC_VREF_NEG_INPUT) + voltage_regulator_device &vref(VOLTAGE_REGULATOR(config, "vref")); + vref.set_output(5.0); + vref.add_route(0, "dac", 1.0, DAC_VREF_POS_INPUT); + vref.add_route(0, "dac", -1.0, DAC_VREF_NEG_INPUT); MCFG_DEVICE_ADD("hc55516", HC55516, 0) MCFG_SOUND_ROUTE(ALL_OUTPUTS, *this, 0.5) diff --git a/src/mame/drivers/alphatpx.cpp b/src/mame/drivers/alphatpx.cpp index 8020a1e2543..060a89b1d53 100644 --- a/src/mame/drivers/alphatpx.cpp +++ b/src/mame/drivers/alphatpx.cpp @@ -1204,10 +1204,11 @@ void alphatp_12_state::machine_reset() m_curfloppy = nullptr; } -MACHINE_CONFIG_START(alphatp_12_state::alphatp2) - MCFG_DEVICE_ADD("maincpu", I8085A, 6_MHz_XTAL) - MCFG_DEVICE_PROGRAM_MAP(alphatp2_mem) - MCFG_DEVICE_IO_MAP(alphatp2_io) +void alphatp_12_state::alphatp2(machine_config &config) +{ + i8085a_cpu_device &maincpu(I8085A(config, "maincpu", 6_MHz_XTAL)); + maincpu.set_addrmap(AS_PROGRAM, &alphatp_12_state::alphatp2_mem); + maincpu.set_addrmap(AS_IO, &alphatp_12_state::alphatp2_io); config.m_perfect_cpu_quantum = subtag("maincpu"); @@ -1220,9 +1221,9 @@ MACHINE_CONFIG_START(alphatp_12_state::alphatp2) ADDRESS_MAP_BANK(config, "bankdev").set_map(&alphatp_12_state::alphatp2_map).set_options(ENDIANNESS_LITTLE, 8, 18, 0x10000); // video hardware - MCFG_SCREEN_ADD_MONOCHROME("screen", RASTER, rgb_t::green()) - MCFG_SCREEN_RAW_PARAMS(12.8544_MHz_XTAL, 824, 0, 640, 312, 0, 288) - MCFG_SCREEN_UPDATE_DRIVER(alphatp_12_state, screen_update) + screen_device &screen(SCREEN(config, "screen", SCREEN_TYPE_RASTER, rgb_t::green())); + screen.set_raw(12.8544_MHz_XTAL, 824, 0, 640, 312, 0, 288); + screen.set_screen_update(FUNC(alphatp_12_state::screen_update)); PALETTE(config, m_palette, palette_device::MONOCHROME); @@ -1236,10 +1237,9 @@ MACHINE_CONFIG_START(alphatp_12_state::alphatp2) // sound hardware SPEAKER(config, "mono").front_center(); - MCFG_DEVICE_ADD( "beeper", BEEP, 1060 ) - MCFG_SOUND_ROUTE( ALL_OUTPUTS, "mono", 1.00 ) + BEEP(config, m_beep, 1060).add_route(ALL_OUTPUTS, "mono", 1.00); - MCFG_DEVICE_ADD("uart", I8251, 0) + I8251(config, "uart", 0); // 4.9152_MHz_XTAL serial clock FD1791(config, m_fdc, 4_MHz_XTAL / 4); @@ -1248,7 +1248,7 @@ MACHINE_CONFIG_START(alphatp_12_state::alphatp2) m_fdc->hld_wr_callback().set(FUNC(alphatp_12_state::fdchld_w)); FLOPPY_CONNECTOR(config, "fdc:0", alphatp2_floppies, "525ssdd", floppy_image_device::default_floppy_formats); FLOPPY_CONNECTOR(config, "fdc:1", alphatp2_floppies, "525ssdd", floppy_image_device::default_floppy_formats); -MACHINE_CONFIG_END +} void alphatp_12_state::alphatp2u(machine_config &config) { @@ -1282,10 +1282,11 @@ void alphatp_34_state::machine_reset() m_curfloppy = nullptr; m_88_da = m_85_da = m_88_started = false; } -MACHINE_CONFIG_START(alphatp_34_state::alphatp3) - MCFG_DEVICE_ADD("maincpu", I8085A, 6_MHz_XTAL) - MCFG_DEVICE_PROGRAM_MAP(alphatp3_mem) - MCFG_DEVICE_IO_MAP(alphatp3_io) +void alphatp_34_state::alphatp3(machine_config &config) +{ + i8085a_cpu_device &maincpu(I8085A(config, "maincpu", 6_MHz_XTAL)); + maincpu.set_addrmap(AS_PROGRAM, &alphatp_34_state::alphatp3_mem); + maincpu.set_addrmap(AS_IO, &alphatp_34_state::alphatp3_io); config.m_perfect_cpu_quantum = subtag("maincpu"); @@ -1298,9 +1299,9 @@ MACHINE_CONFIG_START(alphatp_34_state::alphatp3) ADDRESS_MAP_BANK(config, "bankdev").set_map(&alphatp_34_state::alphatp3_map).set_options(ENDIANNESS_LITTLE, 8, 18, 0x10000); // video hardware - MCFG_SCREEN_ADD_MONOCHROME("screen", RASTER, rgb_t::green()) - MCFG_SCREEN_RAW_PARAMS(12.8544_MHz_XTAL, 824, 0, 640, 312, 0, 288) - MCFG_SCREEN_UPDATE_DRIVER(alphatp_34_state, screen_update) + screen_device &screen(SCREEN(config, "screen", SCREEN_TYPE_RASTER, rgb_t::green())); + screen.set_raw(12.8544_MHz_XTAL, 824, 0, 640, 312, 0, 288); + screen.set_screen_update(FUNC(alphatp_34_state::screen_update)); PALETTE(config, m_palette, palette_device::MONOCHROME); @@ -1313,10 +1314,9 @@ MACHINE_CONFIG_START(alphatp_34_state::alphatp3) // sound hardware SPEAKER(config, "mono").front_center(); - MCFG_DEVICE_ADD( "beeper", BEEP, 1060 ) - MCFG_SOUND_ROUTE( ALL_OUTPUTS, "mono", 1.00 ) + BEEP(config, m_beep, 1060).add_route(ALL_OUTPUTS, "mono", 1.00); - MCFG_DEVICE_ADD("uart", I8251, 0) + I8251(config, "uart", 0); // 4.9152_MHz_XTAL serial clock FD1791(config, m_fdc, 4_MHz_XTAL / 4); @@ -1325,7 +1325,7 @@ MACHINE_CONFIG_START(alphatp_34_state::alphatp3) m_fdc->hld_wr_callback().set(FUNC(alphatp_34_state::fdchld_w)); FLOPPY_CONNECTOR(config, "fdc:0", alphatp3_floppies, "525qd", floppy_image_device::default_floppy_formats); FLOPPY_CONNECTOR(config, "fdc:1", alphatp3_floppies, "525qd", floppy_image_device::default_floppy_formats); -MACHINE_CONFIG_END +} void alphatp_34_state::alphatp30(machine_config &config) { diff --git a/src/mame/drivers/amust.cpp b/src/mame/drivers/amust.cpp index c8b6a3e88f7..42bb35a58ea 100644 --- a/src/mame/drivers/amust.cpp +++ b/src/mame/drivers/amust.cpp @@ -440,12 +440,12 @@ MACHINE_CONFIG_START(amust_state::amust) MCFG_DEVICE_IO_MAP(io_map) /* video hardware */ - MCFG_SCREEN_ADD_MONOCHROME("screen", RASTER, rgb_t::green()) - MCFG_SCREEN_REFRESH_RATE(50) - MCFG_SCREEN_VBLANK_TIME(ATTOSECONDS_IN_USEC(2500)) /* not accurate */ - MCFG_SCREEN_SIZE(640, 480) - MCFG_SCREEN_VISIBLE_AREA(0, 640-1, 0, 480-1) - MCFG_SCREEN_UPDATE_DEVICE("crtc", mc6845_device, screen_update) + screen_device &screen(SCREEN(config, "screen", SCREEN_TYPE_RASTER, rgb_t::green())); + screen.set_refresh_hz(50); + screen.set_vblank_time(ATTOSECONDS_IN_USEC(2500)); /* not accurate */ + screen.set_size(640, 480); + screen.set_visarea(0, 640-1, 0, 480-1); + screen.set_screen_update("crtc", FUNC(mc6845_device::screen_update)); PALETTE(config, m_palette, palette_device::MONOCHROME); GFXDECODE(config, "gfxdecode", m_palette, gfx_amust); diff --git a/src/mame/drivers/anzterm.cpp b/src/mame/drivers/anzterm.cpp index 5bc346ad21c..5938606f34f 100644 --- a/src/mame/drivers/anzterm.cpp +++ b/src/mame/drivers/anzterm.cpp @@ -371,7 +371,7 @@ private: { return 0; } - void anzterm(address_map &map); + void anzterm_mem(address_map &map); }; @@ -404,7 +404,7 @@ GFXDECODE_START( gfx_anzterm ) GFXDECODE_END -void anzterm_state::anzterm(address_map &map) +void anzterm_state::anzterm_mem(address_map &map) { // There are two battery-backed 2kB SRAM chips with a 4kb SRAM chip for parity // There are two 64kB DRAM banks (with parity) @@ -414,25 +414,26 @@ void anzterm_state::anzterm(address_map &map) } -MACHINE_CONFIG_START(anzterm_state::anzterm) - MCFG_DEVICE_ADD("maincpu", M6809, 15974400/4) - MCFG_DEVICE_PROGRAM_MAP(anzterm) +void anzterm_state::anzterm(machine_config &config) +{ + m6809_device &maincpu(M6809(config, "maincpu", 15974400/4)); + maincpu.set_addrmap(AS_PROGRAM, &anzterm_state::anzterm_mem); - MCFG_DEVICE_ADD("pic.ic39", I8214, 0) - MCFG_DEVICE_ADD("adlc.ic16", MC6854, 0) - MCFG_DEVICE_ADD("adlc.1c19", MC6854, 0) - MCFG_DEVICE_ADD("acia.ic17", ACIA6850, 0) - MCFG_DEVICE_ADD("acia.ic18", ACIA6850, 0) + I8214(config, "pic.ic39", 0); + MC6854(config, "adlc.ic16", 0); + MC6854(config, "adlc.1c19", 0); + ACIA6850(config, "acia.ic17", 0); + ACIA6850(config, "acia.ic18", 0); - MCFG_SCREEN_ADD_MONOCHROME("screen", RASTER, rgb_t::green()) - MCFG_SCREEN_UPDATE_DRIVER(anzterm_state, screen_update) - MCFG_SCREEN_PALETTE("palette") - MCFG_SCREEN_RAW_PARAMS(15974400/4, 1024, 0, 104*8, 260, 0, 24*10) // this is totally wrong, it just stops a validation error + screen_device &screen(SCREEN(config, "screen", SCREEN_TYPE_RASTER, rgb_t::green())); + screen.set_screen_update(FUNC(anzterm_state::screen_update)); + screen.set_palette("palette"); + screen.set_raw(15974400/4, 1024, 0, 104*8, 260, 0, 24*10); // this is totally wrong, it just stops a validation error PALETTE(config, "palette", palette_device::MONOCHROME); GFXDECODE(config, "gfxdecode", "palette", gfx_anzterm); -MACHINE_CONFIG_END +} INPUT_PORTS_START( anzterm ) diff --git a/src/mame/drivers/atari_s1.cpp b/src/mame/drivers/atari_s1.cpp index f03a13e8663..958fb13a8f1 100644 --- a/src/mame/drivers/atari_s1.cpp +++ b/src/mame/drivers/atari_s1.cpp @@ -462,8 +462,10 @@ MACHINE_CONFIG_START(atari_s1_state::atari_s1) SPEAKER(config, "speaker").front_center(); MCFG_DEVICE_ADD("dac", DAC_4BIT_R2R, 0) MCFG_SOUND_ROUTE(ALL_OUTPUTS, "speaker", 0.3) // unknown DAC - MCFG_DEVICE_ADD("vref", VOLTAGE_REGULATOR, 0) MCFG_VOLTAGE_REGULATOR_OUTPUT(5.0) - MCFG_SOUND_ROUTE(0, "dac", 1.0, DAC_VREF_POS_INPUT) MCFG_SOUND_ROUTE(0, "dac", -1.0, DAC_VREF_NEG_INPUT) + voltage_regulator_device &vref(VOLTAGE_REGULATOR(config, "vref")); + vref.set_output(5.0); + vref.add_route(0, "dac", 1.0, DAC_VREF_POS_INPUT); + vref.add_route(0, "dac", -1.0, DAC_VREF_NEG_INPUT); /* Video */ config.set_default_layout(layout_atari_s1); diff --git a/src/mame/drivers/atari_s2.cpp b/src/mame/drivers/atari_s2.cpp index f0e0cc7b714..e957af24698 100644 --- a/src/mame/drivers/atari_s2.cpp +++ b/src/mame/drivers/atari_s2.cpp @@ -492,8 +492,10 @@ MACHINE_CONFIG_START(atari_s2_state::atari_s2) MCFG_DEVICE_ADD("dac", DAC_4BIT_BINARY_WEIGHTED, 0) MCFG_SOUND_ROUTE(ALL_OUTPUTS, "speaker", 0.15) // r23-r26 (68k,33k,18k,8.2k) MCFG_DEVICE_ADD("dac1", DAC_3BIT_BINARY_WEIGHTED, 0) MCFG_SOUND_ROUTE(ALL_OUTPUTS, "speaker", 0.15) // r18-r20 (100k,47k,100k) - MCFG_DEVICE_ADD("vref", VOLTAGE_REGULATOR, 0) MCFG_VOLTAGE_REGULATOR_OUTPUT(5.0) - MCFG_SOUND_ROUTE(0, "dac", 1.0, DAC_VREF_POS_INPUT) MCFG_SOUND_ROUTE(0, "dac", -1.0, DAC_VREF_NEG_INPUT) + voltage_regulator_device &vref(VOLTAGE_REGULATOR(config, "vref")); + vref.set_output(5.0); + vref.add_route(0, "dac", 1.0, DAC_VREF_POS_INPUT); + vref.add_route(0, "dac", -1.0, DAC_VREF_NEG_INPUT); MCFG_SOUND_ROUTE(0, "dac1", 1.0, DAC_VREF_POS_INPUT) MCFG_SOUND_ROUTE(0, "dac1", -1.0, DAC_VREF_NEG_INPUT) /* Video */ diff --git a/src/mame/drivers/att4425.cpp b/src/mame/drivers/att4425.cpp index bb3914fd830..66ddf53740e 100644 --- a/src/mame/drivers/att4425.cpp +++ b/src/mame/drivers/att4425.cpp @@ -237,7 +237,8 @@ static const z80_daisy_config att4425_daisy_chain[] = { nullptr } }; -MACHINE_CONFIG_START(att4425_state::att4425) +void att4425_state::att4425(machine_config &config) +{ /* basic machine hardware */ Z80(config, m_maincpu, XTAL(32'000'000)/8); // XXX m_maincpu->set_addrmap(AS_PROGRAM, &att4425_state::att4425_mem); @@ -245,13 +246,13 @@ MACHINE_CONFIG_START(att4425_state::att4425) m_maincpu->set_daisy_config(att4425_daisy_chain); /* video hardware */ - MCFG_SCREEN_ADD_MONOCHROME("screen", RASTER, rgb_t::green()) - MCFG_SCREEN_REFRESH_RATE(50) - MCFG_SCREEN_VBLANK_TIME(ATTOSECONDS_IN_USEC(2500)) /* not accurate */ - MCFG_SCREEN_UPDATE_DRIVER(att4425_state, screen_update) - MCFG_SCREEN_PALETTE("palette") - MCFG_SCREEN_SIZE(720, 351) - MCFG_SCREEN_VISIBLE_AREA(0, 720-1, 0, 351-1) + SCREEN(config, m_screen, SCREEN_TYPE_RASTER, rgb_t::green()); + m_screen->set_refresh_hz(50); + m_screen->set_vblank_time(ATTOSECONDS_IN_USEC(2500)); /* not accurate */ + m_screen->set_screen_update(FUNC(att4425_state::screen_update)); + m_screen->set_palette("palette"); + m_screen->set_size(720, 351); + m_screen->set_visarea(0, 720-1, 0, 351-1); GFXDECODE(config, "gfxdecode", "palette", gfx_att4425); PALETTE(config, "palette", palette_device::MONOCHROME_HIGHLIGHT); @@ -300,7 +301,7 @@ MACHINE_CONFIG_START(att4425_state::att4425) keyboard_clock.signal_handler().set(FUNC(att4425_state::write_keyboard_clock)); RAM(config, RAM_TAG).set_default_size("32K").set_default_value(0); -MACHINE_CONFIG_END +} /* ROMs */ diff --git a/src/mame/drivers/attache.cpp b/src/mame/drivers/attache.cpp index 5546bdf5d1a..b9f2a1954aa 100644 --- a/src/mame/drivers/attache.cpp +++ b/src/mame/drivers/attache.cpp @@ -1121,7 +1121,8 @@ void attache816_state::machine_reset() attache_state::machine_reset(); } -MACHINE_CONFIG_START(attache_state::attache) +void attache_state::attache(machine_config &config) +{ Z80(config, m_maincpu, 8_MHz_XTAL / 2); m_maincpu->set_addrmap(AS_PROGRAM, &attache_state::attache_map); m_maincpu->set_addrmap(AS_IO, &attache_state::attache_io); @@ -1129,9 +1130,9 @@ MACHINE_CONFIG_START(attache_state::attache) config.m_minimum_quantum = attotime::from_hz(60); - MCFG_SCREEN_ADD_MONOCHROME("screen", RASTER, rgb_t::green()) - MCFG_SCREEN_RAW_PARAMS(12.324_MHz_XTAL, 784, 0, 640, 262, 0, 240) - MCFG_SCREEN_UPDATE_DRIVER(attache_state, screen_update) + screen_device &screen(SCREEN(config, "screen", SCREEN_TYPE_RASTER, rgb_t::green())); + screen.set_raw(12.324_MHz_XTAL, 784, 0, 640, 262, 0, 240); + screen.set_screen_update(FUNC(attache_state::screen_update)); PALETTE(config, m_palette, palette_device::MONOCHROME_HIGHLIGHT); @@ -1195,9 +1196,10 @@ MACHINE_CONFIG_START(attache_state::attache) RAM(config, RAM_TAG).set_default_size("64K"); SOFTWARE_LIST(config, "disk_list").set_original("attache"); -MACHINE_CONFIG_END +} -MACHINE_CONFIG_START(attache816_state::attache816) +void attache816_state::attache816(machine_config &config) +{ Z80(config, m_maincpu, 8_MHz_XTAL / 2); m_maincpu->set_addrmap(AS_PROGRAM, &attache816_state::attache_map); m_maincpu->set_addrmap(AS_IO, &attache816_state::attache_io); @@ -1205,14 +1207,14 @@ MACHINE_CONFIG_START(attache816_state::attache816) config.m_minimum_quantum = attotime::from_hz(60); - MCFG_DEVICE_ADD("extcpu", I8086, 24_MHz_XTAL / 3) - MCFG_DEVICE_PROGRAM_MAP(attache_x86_map) - MCFG_DEVICE_IO_MAP(attache_x86_io) + I8086(config, m_extcpu, 24_MHz_XTAL / 3); + m_extcpu->set_addrmap(AS_PROGRAM, &attache816_state::attache_x86_map); + m_extcpu->set_addrmap(AS_IO, &attache816_state::attache_x86_io); config.m_perfect_cpu_quantum = subtag("extcpu"); - MCFG_SCREEN_ADD_MONOCHROME("screen", RASTER, rgb_t::green()) - MCFG_SCREEN_RAW_PARAMS(12.324_MHz_XTAL, 784, 0, 640, 262, 0, 240) - MCFG_SCREEN_UPDATE_DRIVER(attache_state, screen_update) + screen_device &screen(SCREEN(config, "screen", SCREEN_TYPE_RASTER, rgb_t::green())); + screen.set_raw(12.324_MHz_XTAL, 784, 0, 640, 262, 0, 240); + screen.set_screen_update(FUNC(attache_state::screen_update)); PALETTE(config, m_palette, palette_device::MONOCHROME_HIGHLIGHT); @@ -1283,7 +1285,7 @@ MACHINE_CONFIG_START(attache816_state::attache816) RAM(config, RAM_TAG).set_default_size("64K"); SOFTWARE_LIST(config, "disk_list").set_original("attache"); -MACHINE_CONFIG_END +} ROM_START( attache ) ROM_REGION(0x10000, "maincpu", 0) diff --git a/src/mame/drivers/ax20.cpp b/src/mame/drivers/ax20.cpp index e9516698360..456de221e05 100644 --- a/src/mame/drivers/ax20.cpp +++ b/src/mame/drivers/ax20.cpp @@ -132,21 +132,21 @@ static void ax20_floppies(device_slot_interface &device) device.option_add("525dd", FLOPPY_525_DD); } -MACHINE_CONFIG_START(ax20_state::ax20) +void ax20_state::ax20(machine_config &config) +{ /* basic machine hardware */ - MCFG_DEVICE_ADD("maincpu", I8088, XTAL(14'318'181)/3) - MCFG_DEVICE_PROGRAM_MAP(ax20_map) - MCFG_DEVICE_IO_MAP(ax20_io) + I8088(config, m_maincpu, XTAL(14'318'181)/3); + m_maincpu->set_addrmap(AS_PROGRAM, &ax20_state::ax20_map); + m_maincpu->set_addrmap(AS_IO, &ax20_state::ax20_io); /* video hardware */ - MCFG_SCREEN_ADD("screen", RASTER) - MCFG_SCREEN_COLOR(rgb_t::green()) - MCFG_SCREEN_REFRESH_RATE(50) - MCFG_SCREEN_VBLANK_TIME(ATTOSECONDS_IN_USEC(2500)) /* not accurate */ - MCFG_SCREEN_UPDATE_DRIVER(ax20_state, screen_update) - MCFG_SCREEN_SIZE(80*8, 24*12) - MCFG_SCREEN_VISIBLE_AREA(0, 80*8-1, 0, 24*12-1) - MCFG_SCREEN_PALETTE(m_palette) + screen_device &screen(SCREEN(config, "screen", SCREEN_TYPE_RASTER, rgb_t::green())); + screen.set_refresh_hz(50); + screen.set_vblank_time(ATTOSECONDS_IN_USEC(2500)); /* not accurate */ + screen.set_screen_update(FUNC(ax20_state::screen_update)); + screen.set_size(80*8, 24*12); + screen.set_visarea(0, 80*8-1, 0, 24*12-1); + screen.set_palette(m_palette); GFXDECODE(config, m_gfxdecode, m_palette, gfx_ax20); PALETTE(config, m_palette, palette_device::MONOCHROME); @@ -154,7 +154,7 @@ MACHINE_CONFIG_START(ax20_state::ax20) /* Devices */ FLOPPY_CONNECTOR(config, "fdc:0", ax20_floppies, "525dd", isa8_fdc_device::floppy_formats); -MACHINE_CONFIG_END +} /* ROM definition */ ROM_START( ax20 ) diff --git a/src/mame/drivers/beehive.cpp b/src/mame/drivers/beehive.cpp index 9d5983ff196..deb24a5ef15 100644 --- a/src/mame/drivers/beehive.cpp +++ b/src/mame/drivers/beehive.cpp @@ -291,23 +291,24 @@ uint32_t beehive_state::screen_update(screen_device &screen, bitmap_ind16 &bitma return 0; } -MACHINE_CONFIG_START(beehive_state::beehive) +void beehive_state::beehive(machine_config &config) +{ /* basic machine hardware */ - MCFG_DEVICE_ADD("maincpu",I8085A, XTAL(4'000'000)) - MCFG_DEVICE_PROGRAM_MAP(beehive_mem) - MCFG_DEVICE_IO_MAP(beehive_io) + I8085A(config, m_maincpu, XTAL(4'000'000)); + m_maincpu->set_addrmap(AS_PROGRAM, &beehive_state::beehive_mem); + m_maincpu->set_addrmap(AS_IO, &beehive_state::beehive_io); /* video hardware */ - MCFG_SCREEN_ADD_MONOCHROME("screen", RASTER, rgb_t::green()) - MCFG_SCREEN_REFRESH_RATE(50) - MCFG_SCREEN_VBLANK_TIME(ATTOSECONDS_IN_USEC(2500)) /* not accurate */ - MCFG_SCREEN_UPDATE_DRIVER(beehive_state, screen_update) - MCFG_SCREEN_SIZE(640, 250) - MCFG_SCREEN_VISIBLE_AREA(0, 639, 0, 249) - MCFG_SCREEN_PALETTE("palette") + screen_device &screen(SCREEN(config, "screen", SCREEN_TYPE_RASTER, rgb_t::green())); + screen.set_refresh_hz(50); + screen.set_vblank_time(ATTOSECONDS_IN_USEC(2500)); /* not accurate */ + screen.set_screen_update(FUNC(beehive_state::screen_update)); + screen.set_size(640, 250); + screen.set_visarea(0, 639, 0, 249); + screen.set_palette("palette"); PALETTE(config, "palette", palette_device::MONOCHROME); -MACHINE_CONFIG_END +} /* ROM definition */ ROM_START( beehive ) diff --git a/src/mame/drivers/bking.cpp b/src/mame/drivers/bking.cpp index 4ce84744870..ac01f35a7cc 100644 --- a/src/mame/drivers/bking.cpp +++ b/src/mame/drivers/bking.cpp @@ -435,8 +435,10 @@ MACHINE_CONFIG_START(bking_state::bking) ay2.add_route(ALL_OUTPUTS, "speaker", 0.25); MCFG_DEVICE_ADD("dac", DAC_8BIT_R2R, 0) MCFG_SOUND_ROUTE(ALL_OUTPUTS, "speaker", 0.25) // unknown DAC - MCFG_DEVICE_ADD("vref", VOLTAGE_REGULATOR, 0) MCFG_VOLTAGE_REGULATOR_OUTPUT(5.0) - MCFG_SOUND_ROUTE(0, "dac", 1.0, DAC_VREF_POS_INPUT) MCFG_SOUND_ROUTE(0, "dac", -1.0, DAC_VREF_NEG_INPUT) + voltage_regulator_device &vref(VOLTAGE_REGULATOR(config, "vref")); + vref.set_output(5.0); + vref.add_route(0, "dac", 1.0, DAC_VREF_POS_INPUT); + vref.add_route(0, "dac", -1.0, DAC_VREF_NEG_INPUT); MACHINE_CONFIG_END MACHINE_CONFIG_START(bking_state::bking3) diff --git a/src/mame/drivers/bw12.cpp b/src/mame/drivers/bw12.cpp index 72aed868eb5..e5b8cd5a61f 100644 --- a/src/mame/drivers/bw12.cpp +++ b/src/mame/drivers/bw12.cpp @@ -556,12 +556,12 @@ MACHINE_CONFIG_START(bw12_state::common) MCFG_DEVICE_IO_MAP(bw12_io) /* video hardware */ - MCFG_SCREEN_ADD_MONOCHROME(SCREEN_TAG, RASTER, rgb_t::amber()) - MCFG_SCREEN_REFRESH_RATE(60) - MCFG_SCREEN_VBLANK_TIME(ATTOSECONDS_IN_USEC(2500)) /* not accurate */ - MCFG_SCREEN_UPDATE_DEVICE(MC6845_TAG, mc6845_device, screen_update) - MCFG_SCREEN_SIZE(640, 200) - MCFG_SCREEN_VISIBLE_AREA(0, 640-1, 0, 200-1) + screen_device &screen(SCREEN(config, SCREEN_TAG, SCREEN_TYPE_RASTER, rgb_t::amber())); + screen.set_refresh_hz(60); + screen.set_vblank_time(ATTOSECONDS_IN_USEC(2500)); /* not accurate */ + screen.set_screen_update(MC6845_TAG, FUNC(mc6845_device::screen_update)); + screen.set_size(640, 200); + screen.set_visarea(0, 640-1, 0, 200-1); GFXDECODE(config, "gfxdecode", m_palette, gfx_bw12); PALETTE(config, m_palette, palette_device::MONOCHROME); @@ -575,8 +575,10 @@ MACHINE_CONFIG_START(bw12_state::common) /* sound hardware */ SPEAKER(config, "speaker").front_center(); MCFG_DEVICE_ADD("dac", MC1408, 0) MCFG_SOUND_ROUTE(ALL_OUTPUTS, "speaker", 0.125) // ls273.ic5 + mc1408.ic4 - MCFG_DEVICE_ADD("vref", VOLTAGE_REGULATOR, 0) MCFG_VOLTAGE_REGULATOR_OUTPUT(5.0) - MCFG_SOUND_ROUTE(0, "dac", 1.0, DAC_VREF_POS_INPUT) MCFG_SOUND_ROUTE(0, "dac", -1.0, DAC_VREF_NEG_INPUT) + voltage_regulator_device &vref(VOLTAGE_REGULATOR(config, "vref")); + vref.set_output(5.0); + vref.add_route(0, "dac", 1.0, DAC_VREF_POS_INPUT); + vref.add_route(0, "dac", -1.0, DAC_VREF_NEG_INPUT); /* devices */ TIMER(config, FLOPPY_TIMER_TAG).configure_generic(FUNC(bw12_state::floppy_motor_off_tick)); diff --git a/src/mame/drivers/bwing.cpp b/src/mame/drivers/bwing.cpp index 55017bf66b0..01f04a9e815 100644 --- a/src/mame/drivers/bwing.cpp +++ b/src/mame/drivers/bwing.cpp @@ -405,8 +405,10 @@ MACHINE_CONFIG_START(bwing_state::bwing) AY8912(config, "ay2", XTAL(24'000'000) / 2 / 8).add_route(ALL_OUTPUTS, "speaker", 0.5); MCFG_DEVICE_ADD("dac", DAC08, 0) MCFG_SOUND_ROUTE(ALL_OUTPUTS, "speaker", 0.1) - MCFG_DEVICE_ADD("vref", VOLTAGE_REGULATOR, 0) MCFG_VOLTAGE_REGULATOR_OUTPUT(5.0) - MCFG_SOUND_ROUTE(0, "dac", 1.0, DAC_VREF_POS_INPUT) MCFG_SOUND_ROUTE(0, "dac", -1.0, DAC_VREF_NEG_INPUT) + voltage_regulator_device &vref(VOLTAGE_REGULATOR(config, "vref")); + vref.set_output(5.0); + vref.add_route(0, "dac", 1.0, DAC_VREF_POS_INPUT); + vref.add_route(0, "dac", -1.0, DAC_VREF_NEG_INPUT); MACHINE_CONFIG_END //**************************************************************************** diff --git a/src/mame/drivers/byvid.cpp b/src/mame/drivers/byvid.cpp index 999cfb45e00..5975097ae0c 100644 --- a/src/mame/drivers/byvid.cpp +++ b/src/mame/drivers/byvid.cpp @@ -803,8 +803,10 @@ MACHINE_CONFIG_START(by133_state::babypac) /* sound hardware */ SPEAKER(config, "speaker").front_center(); MCFG_DEVICE_ADD("dac", ZN429E, 0) MCFG_SOUND_ROUTE(ALL_OUTPUTS, "speaker", 0.25) // U32 (Vidiot) or U6 (Cheap Squeak) - MCFG_DEVICE_ADD("vref", VOLTAGE_REGULATOR, 0) MCFG_VOLTAGE_REGULATOR_OUTPUT(5.0) - MCFG_SOUND_ROUTE(0, "dac", 1.0, DAC_VREF_POS_INPUT) MCFG_SOUND_ROUTE(0, "dac", -1.0, DAC_VREF_NEG_INPUT) + voltage_regulator_device &vref(VOLTAGE_REGULATOR(config, "vref")); + vref.set_output(5.0); + vref.add_route(0, "dac", 1.0, DAC_VREF_POS_INPUT); + vref.add_route(0, "dac", -1.0, DAC_VREF_NEG_INPUT); SPEAKER(config, "beee").front_center(); MCFG_DEVICE_ADD("beeper", BEEP, 600) diff --git a/src/mame/drivers/capbowl.cpp b/src/mame/drivers/capbowl.cpp index 6373deaf41b..0b71fd79e67 100644 --- a/src/mame/drivers/capbowl.cpp +++ b/src/mame/drivers/capbowl.cpp @@ -361,8 +361,10 @@ MACHINE_CONFIG_START(capbowl_state::capbowl) ymsnd.add_route(3, "speaker", 0.75); DAC0832(config, "dac", 0).add_route(ALL_OUTPUTS, "speaker", 0.5); - MCFG_DEVICE_ADD("vref", VOLTAGE_REGULATOR, 0) MCFG_VOLTAGE_REGULATOR_OUTPUT(5.0) - MCFG_SOUND_ROUTE(0, "dac", 1.0, DAC_VREF_POS_INPUT) MCFG_SOUND_ROUTE(0, "dac", -1.0, DAC_VREF_NEG_INPUT) + voltage_regulator_device &vref(VOLTAGE_REGULATOR(config, "vref")); + vref.set_output(5.0); + vref.add_route(0, "dac", 1.0, DAC_VREF_POS_INPUT); + vref.add_route(0, "dac", -1.0, DAC_VREF_NEG_INPUT); MACHINE_CONFIG_END diff --git a/src/mame/drivers/champbas.cpp b/src/mame/drivers/champbas.cpp index c2c897589e4..90915cc8d76 100644 --- a/src/mame/drivers/champbas.cpp +++ b/src/mame/drivers/champbas.cpp @@ -609,8 +609,10 @@ MACHINE_CONFIG_START(champbas_state::champbas) AY8910(config, "ay1", XTAL(18'432'000)/12).add_route(ALL_OUTPUTS, "speaker", 0.3); MCFG_DEVICE_ADD("dac", DAC_6BIT_R2R, 0) MCFG_SOUND_ROUTE(ALL_OUTPUTS, "speaker", 0.7) // unknown DAC - MCFG_DEVICE_ADD("vref", VOLTAGE_REGULATOR, 0) MCFG_VOLTAGE_REGULATOR_OUTPUT(5.0) - MCFG_SOUND_ROUTE(0, "dac", 1.0, DAC_VREF_POS_INPUT) MCFG_SOUND_ROUTE(0, "dac", -1.0, DAC_VREF_NEG_INPUT) + voltage_regulator_device &vref(VOLTAGE_REGULATOR(config, "vref")); + vref.set_output(5.0); + vref.add_route(0, "dac", 1.0, DAC_VREF_POS_INPUT); + vref.add_route(0, "dac", -1.0, DAC_VREF_NEG_INPUT); MACHINE_CONFIG_END MACHINE_CONFIG_START(champbas_state::champbasj) @@ -777,8 +779,10 @@ MACHINE_CONFIG_START(exctsccr_state::exctsccrb) AY8910(config, "ay1", XTAL(18'432'000)/12).add_route(ALL_OUTPUTS, "speaker", 0.3); MCFG_DEVICE_ADD("dac", DAC_6BIT_R2R, 0) MCFG_SOUND_ROUTE(ALL_OUTPUTS, "speaker", 0.7) // unknown DAC - MCFG_DEVICE_ADD("vref", VOLTAGE_REGULATOR, 0) MCFG_VOLTAGE_REGULATOR_OUTPUT(5.0) - MCFG_SOUND_ROUTE(0, "dac", 1.0, DAC_VREF_POS_INPUT) MCFG_SOUND_ROUTE(0, "dac", -1.0, DAC_VREF_NEG_INPUT) + voltage_regulator_device &vref(VOLTAGE_REGULATOR(config, "vref")); + vref.set_output(5.0); + vref.add_route(0, "dac", 1.0, DAC_VREF_POS_INPUT); + vref.add_route(0, "dac", -1.0, DAC_VREF_NEG_INPUT); MACHINE_CONFIG_END diff --git a/src/mame/drivers/chsuper.cpp b/src/mame/drivers/chsuper.cpp index 3526ced0f24..e838abfa592 100644 --- a/src/mame/drivers/chsuper.cpp +++ b/src/mame/drivers/chsuper.cpp @@ -393,8 +393,10 @@ MACHINE_CONFIG_START(chsuper_state::chsuper) SPEAKER(config, "speaker").front_center(); MCFG_DEVICE_ADD("dac", DAC_8BIT_R2R, 0) MCFG_SOUND_ROUTE(ALL_OUTPUTS, "speaker", 0.25) // unknown DAC - MCFG_DEVICE_ADD("vref", VOLTAGE_REGULATOR, 0) MCFG_VOLTAGE_REGULATOR_OUTPUT(5.0) - MCFG_SOUND_ROUTE(0, "dac", 1.0, DAC_VREF_POS_INPUT) MCFG_SOUND_ROUTE(0, "dac", -1.0, DAC_VREF_NEG_INPUT) + voltage_regulator_device &vref(VOLTAGE_REGULATOR(config, "vref")); + vref.set_output(5.0); + vref.add_route(0, "dac", 1.0, DAC_VREF_POS_INPUT); + vref.add_route(0, "dac", -1.0, DAC_VREF_NEG_INPUT); MACHINE_CONFIG_END diff --git a/src/mame/drivers/ckz80.cpp b/src/mame/drivers/ckz80.cpp index e44a05fb211..1dc3838cc80 100644 --- a/src/mame/drivers/ckz80.cpp +++ b/src/mame/drivers/ckz80.cpp @@ -449,8 +449,10 @@ MACHINE_CONFIG_START(ckz80_state::master) /* sound hardware */ SPEAKER(config, "speaker").front_center(); MCFG_DEVICE_ADD("dac", DAC_2BIT_BINARY_WEIGHTED_ONES_COMPLEMENT, 0) MCFG_SOUND_ROUTE(ALL_OUTPUTS, "speaker", 0.25) - MCFG_DEVICE_ADD("vref", VOLTAGE_REGULATOR, 0) MCFG_VOLTAGE_REGULATOR_OUTPUT(5.0) - MCFG_SOUND_ROUTE(0, "dac", 1.0, DAC_VREF_POS_INPUT) MCFG_SOUND_ROUTE(0, "dac", -1.0, DAC_VREF_NEG_INPUT) + voltage_regulator_device &vref(VOLTAGE_REGULATOR(config, "vref")); + vref.set_output(5.0); + vref.add_route(0, "dac", 1.0, DAC_VREF_POS_INPUT); + vref.add_route(0, "dac", -1.0, DAC_VREF_NEG_INPUT); MACHINE_CONFIG_END diff --git a/src/mame/drivers/cmi.cpp b/src/mame/drivers/cmi.cpp index 537d9f884ae..3202131dd40 100644 --- a/src/mame/drivers/cmi.cpp +++ b/src/mame/drivers/cmi.cpp @@ -2191,10 +2191,10 @@ MACHINE_CONFIG_START(cmi_state::cmi2x) m_dp3->update().set(FUNC(cmi_state::cmi_iix_update_dp<2>)); /* video hardware */ - MCFG_SCREEN_ADD_MONOCHROME("screen", RASTER, rgb_t::green()) - MCFG_SCREEN_RAW_PARAMS(PIXEL_CLOCK, HTOTAL, HBLANK_END, HBLANK_START, VTOTAL, VBLANK_END, VBLANK_START) - MCFG_SCREEN_UPDATE_DRIVER(cmi_state, screen_update_cmi2x) - MCFG_SCREEN_VBLANK_CALLBACK(WRITELINE(*this, cmi_state, cmi_iix_vblank)) + SCREEN(config, m_screen, SCREEN_TYPE_RASTER, rgb_t::green()); + m_screen->set_raw(PIXEL_CLOCK, HTOTAL, HBLANK_END, HBLANK_START, VTOTAL, VBLANK_END, VBLANK_START); + m_screen->set_screen_update(FUNC(cmi_state::screen_update_cmi2x)); + m_screen->screen_vblank().set(FUNC(cmi_state::cmi_iix_vblank)); PALETTE(config, m_palette, palette_device::MONOCHROME); diff --git a/src/mame/drivers/cntsteer.cpp b/src/mame/drivers/cntsteer.cpp index 8f2f11db541..709e040612d 100644 --- a/src/mame/drivers/cntsteer.cpp +++ b/src/mame/drivers/cntsteer.cpp @@ -968,8 +968,10 @@ MACHINE_CONFIG_START(cntsteer_state::cntsteer) AY8910(config, "ay2", 1500000).add_route(ALL_OUTPUTS, "speaker", 0.5); MCFG_DEVICE_ADD("dac", DAC_8BIT_R2R, 0) MCFG_SOUND_ROUTE(ALL_OUTPUTS, "speaker", 0.25) // unknown DAC - MCFG_DEVICE_ADD("vref", VOLTAGE_REGULATOR, 0) MCFG_VOLTAGE_REGULATOR_OUTPUT(5.0) - MCFG_SOUND_ROUTE(0, "dac", 1.0, DAC_VREF_POS_INPUT) MCFG_SOUND_ROUTE(0, "dac", -1.0, DAC_VREF_NEG_INPUT) + voltage_regulator_device &vref(VOLTAGE_REGULATOR(config, "vref")); + vref.set_output(5.0); + vref.add_route(0, "dac", 1.0, DAC_VREF_POS_INPUT); + vref.add_route(0, "dac", -1.0, DAC_VREF_NEG_INPUT); MACHINE_CONFIG_END MACHINE_CONFIG_START(cntsteer_state::zerotrgt) diff --git a/src/mame/drivers/coco12.cpp b/src/mame/drivers/coco12.cpp index 78b5dcd5c23..1a195c299e1 100644 --- a/src/mame/drivers/coco12.cpp +++ b/src/mame/drivers/coco12.cpp @@ -386,8 +386,10 @@ MACHINE_CONFIG_START(coco_state::coco_sound) // 6-bit D/A: R10-15 = 10K, 20K, 40.2K, 80.6K, 162K, 324K (according to parts list); output also controls joysticks MCFG_DEVICE_ADD("dac", DAC_6BIT_BINARY_WEIGHTED, 0) MCFG_SOUND_ROUTE(ALL_OUTPUTS, "speaker", 0.125) - MCFG_DEVICE_ADD("vref", VOLTAGE_REGULATOR, 0) MCFG_VOLTAGE_REGULATOR_OUTPUT(5.0) - MCFG_SOUND_ROUTE(0, "dac", 1.0, DAC_VREF_POS_INPUT) MCFG_SOUND_ROUTE(0, "dac", -1.0, DAC_VREF_NEG_INPUT) + voltage_regulator_device &vref(VOLTAGE_REGULATOR(config, "vref")); + vref.set_output(5.0); + vref.add_route(0, "dac", 1.0, DAC_VREF_POS_INPUT); + vref.add_route(0, "dac", -1.0, DAC_VREF_NEG_INPUT); MCFG_SOUND_ROUTE(0, "sbs", 1.0, DAC_VREF_POS_INPUT) MCFG_SOUND_ROUTE(0, "sbs", -1.0, DAC_VREF_NEG_INPUT) // Single-bit sound: R22 = 10K diff --git a/src/mame/drivers/coolpool.cpp b/src/mame/drivers/coolpool.cpp index 7e14d030afb..cf53037393c 100644 --- a/src/mame/drivers/coolpool.cpp +++ b/src/mame/drivers/coolpool.cpp @@ -747,8 +747,10 @@ MACHINE_CONFIG_START(coolpool_state::amerdart) /* sound hardware */ SPEAKER(config, "speaker").front_center(); MCFG_DEVICE_ADD("dac", MP1210, 0) MCFG_SOUND_ROUTE(ALL_OUTPUTS, "speaker", 1.0) - MCFG_DEVICE_ADD("vref", VOLTAGE_REGULATOR, 0) MCFG_VOLTAGE_REGULATOR_OUTPUT(5.0) - MCFG_SOUND_ROUTE(0, "dac", 1.0, DAC_VREF_POS_INPUT) MCFG_SOUND_ROUTE(0, "dac", -1.0, DAC_VREF_NEG_INPUT) + voltage_regulator_device &vref(VOLTAGE_REGULATOR(config, "vref")); + vref.set_output(5.0); + vref.add_route(0, "dac", 1.0, DAC_VREF_POS_INPUT); + vref.add_route(0, "dac", -1.0, DAC_VREF_NEG_INPUT); MACHINE_CONFIG_END @@ -794,8 +796,10 @@ MACHINE_CONFIG_START(coolpool_state::coolpool) /* sound hardware */ SPEAKER(config, "speaker").front_center(); MCFG_DEVICE_ADD("dac", MP1210, 0) MCFG_SOUND_ROUTE(ALL_OUTPUTS, "speaker", 1.0) - MCFG_DEVICE_ADD("vref", VOLTAGE_REGULATOR, 0) MCFG_VOLTAGE_REGULATOR_OUTPUT(5.0) - MCFG_SOUND_ROUTE(0, "dac", 1.0, DAC_VREF_POS_INPUT) MCFG_SOUND_ROUTE(0, "dac", -1.0, DAC_VREF_NEG_INPUT) + voltage_regulator_device &vref(VOLTAGE_REGULATOR(config, "vref")); + vref.set_output(5.0); + vref.add_route(0, "dac", 1.0, DAC_VREF_POS_INPUT); + vref.add_route(0, "dac", -1.0, DAC_VREF_NEG_INPUT); MACHINE_CONFIG_END diff --git a/src/mame/drivers/cop01.cpp b/src/mame/drivers/cop01.cpp index 31fe01d33ea..974c50dd341 100644 --- a/src/mame/drivers/cop01.cpp +++ b/src/mame/drivers/cop01.cpp @@ -520,8 +520,10 @@ MACHINE_CONFIG_START(mightguy_state::mightguy) MCFG_DEVICE_ADD("dac", DAC_8BIT_R2R, 0) // unknown DAC MCFG_SOUND_ROUTE(ALL_OUTPUTS, "mono", 0.5) - MCFG_DEVICE_ADD("vref", VOLTAGE_REGULATOR, 0) MCFG_VOLTAGE_REGULATOR_OUTPUT(5.0) - MCFG_SOUND_ROUTE(0, "dac", 1.0, DAC_VREF_POS_INPUT) MCFG_SOUND_ROUTE(0, "dac", -1.0, DAC_VREF_NEG_INPUT) + voltage_regulator_device &vref(VOLTAGE_REGULATOR(config, "vref")); + vref.set_output(5.0); + vref.add_route(0, "dac", 1.0, DAC_VREF_POS_INPUT); + vref.add_route(0, "dac", -1.0, DAC_VREF_NEG_INPUT); MACHINE_CONFIG_END diff --git a/src/mame/drivers/dectalk.cpp b/src/mame/drivers/dectalk.cpp index 90cdc6d3dea..56dbc431f37 100644 --- a/src/mame/drivers/dectalk.cpp +++ b/src/mame/drivers/dectalk.cpp @@ -906,8 +906,10 @@ MACHINE_CONFIG_START(dectalk_state::dectalk) /* sound hardware */ SPEAKER(config, "speaker").front_center(); MCFG_DEVICE_ADD("dac", AD7541, 0) MCFG_SOUND_ROUTE(ALL_OUTPUTS, "speaker", 0.9) // ad7541.e107 (E88 10KHz OSC, handled by timer) - MCFG_DEVICE_ADD("vref", VOLTAGE_REGULATOR, 0) MCFG_VOLTAGE_REGULATOR_OUTPUT(5.0) - MCFG_SOUND_ROUTE(0, "dac", 1.0, DAC_VREF_POS_INPUT) MCFG_SOUND_ROUTE(0, "dac", -1.0, DAC_VREF_NEG_INPUT) + voltage_regulator_device &vref(VOLTAGE_REGULATOR(config, "vref")); + vref.set_output(5.0); + vref.add_route(0, "dac", 1.0, DAC_VREF_POS_INPUT); + vref.add_route(0, "dac", -1.0, DAC_VREF_NEG_INPUT); /* Y2 is a 3.579545 MHz xtal for the dtmf decoder chip */ diff --git a/src/mame/drivers/dvk_ksm.cpp b/src/mame/drivers/dvk_ksm.cpp index d6810fd7d4d..cfae4df8c7a 100644 --- a/src/mame/drivers/dvk_ksm.cpp +++ b/src/mame/drivers/dvk_ksm.cpp @@ -424,13 +424,12 @@ MACHINE_CONFIG_START(ksm_state::ksm) TIMER(config, "scantimer").configure_scanline(FUNC(ksm_state::scanline_callback), "screen", 0, 1); - MCFG_SCREEN_ADD_MONOCHROME("screen", RASTER, rgb_t::green()) - MCFG_SCREEN_UPDATE_DRIVER(ksm_state, screen_update) - MCFG_SCREEN_RAW_PARAMS(XTAL(15'400'000), KSM_TOTAL_HORZ, KSM_HORZ_START, + SCREEN(config, m_screen, SCREEN_TYPE_RASTER, rgb_t::green()); + m_screen->set_screen_update(FUNC(ksm_state::screen_update)); + m_screen->set_raw(XTAL(15'400'000), KSM_TOTAL_HORZ, KSM_HORZ_START, KSM_HORZ_START+KSM_DISP_HORZ, KSM_TOTAL_VERT, KSM_VERT_START, KSM_VERT_START+KSM_DISP_VERT); - - MCFG_SCREEN_PALETTE("palette") + m_screen->set_palette("palette"); GFXDECODE(config, "gfxdecode", "palette", gfx_ksm); PALETTE(config, "palette", palette_device::MONOCHROME); diff --git a/src/mame/drivers/eurocom2.cpp b/src/mame/drivers/eurocom2.cpp index dd878f65564..460eff286b9 100644 --- a/src/mame/drivers/eurocom2.cpp +++ b/src/mame/drivers/eurocom2.cpp @@ -438,14 +438,15 @@ static void eurocom_floppies(device_slot_interface &device) device.option_add("8dsdd", FLOPPY_8_DSDD); } -MACHINE_CONFIG_START(eurocom2_state::eurocom2) - MCFG_DEVICE_ADD("maincpu", MC6809, 10.7172_MHz_XTAL / 2) // EXTAL = CLK/2 = 5.3586 MHz; Q = E = 1.33965 MHz - MCFG_DEVICE_PROGRAM_MAP(eurocom2_map) +void eurocom2_state::eurocom2(machine_config &config) +{ + MC6809(config, m_maincpu, 10.7172_MHz_XTAL / 2); // EXTAL = CLK/2 = 5.3586 MHz; Q = E = 1.33965 MHz + m_maincpu->set_addrmap(AS_PROGRAM, &eurocom2_state::eurocom2_map); - MCFG_SCREEN_ADD_MONOCHROME("screen", RASTER, rgb_t::green()) - MCFG_SCREEN_RAW_PARAMS(10.7172_MHz_XTAL, VC_TOTAL_HORZ, 0, VC_DISP_HORZ, VC_TOTAL_VERT, 0, VC_DISP_VERT) - MCFG_SCREEN_UPDATE_DRIVER(eurocom2_state, screen_update) - MCFG_SCREEN_PALETTE("palette") + SCREEN(config, m_screen, SCREEN_TYPE_RASTER, rgb_t::green()); + m_screen->set_raw(10.7172_MHz_XTAL, VC_TOTAL_HORZ, 0, VC_DISP_HORZ, VC_TOTAL_VERT, 0, VC_DISP_VERT); + m_screen->set_screen_update(FUNC(eurocom2_state::screen_update)); + m_screen->set_palette("palette"); PALETTE(config, "palette", palette_device::MONOCHROME); @@ -477,12 +478,12 @@ MACHINE_CONFIG_START(eurocom2_state::eurocom2) // m_fdc->intrq_wr_callback().set_inputline(m_maincpu, M6809_IRQ_LINE); FLOPPY_CONNECTOR(config, "fdc:0", eurocom_floppies, "525qd", eurocom2_state::floppy_formats);// enable_sound(true); FLOPPY_CONNECTOR(config, "fdc:1", eurocom_floppies, "525qd", eurocom2_state::floppy_formats);// enable_sound(true); -MACHINE_CONFIG_END +} -MACHINE_CONFIG_START(waveterm_state::waveterm) +void waveterm_state::waveterm(machine_config &config) +{ eurocom2(config); - MCFG_DEVICE_MODIFY("maincpu") - MCFG_DEVICE_PROGRAM_MAP(waveterm_map) + m_maincpu->set_addrmap(AS_PROGRAM, &waveterm_state::waveterm_map); m_pia2->cb2_handler().set(FUNC(waveterm_state::waveterm_kbh_w)); m_pia2->writepb_handler().set(FUNC(waveterm_state::waveterm_kb_w)); @@ -499,10 +500,10 @@ MACHINE_CONFIG_START(waveterm_state::waveterm) m_pia3->readcb1_handler().set_ioport("FP"); // m_pia3->cb2_handler().set(FUNC(waveterm_state::pia3_cb2_w)); - MCFG_DEVICE_ADD("ptm", PTM6840, 0) + PTM6840(config, m_ptm, 0); SOFTWARE_LIST(config, "disk_list").set_original("waveterm"); -MACHINE_CONFIG_END +} void eurocom2_state::microtrol(machine_config &config) { diff --git a/src/mame/drivers/fantland.cpp b/src/mame/drivers/fantland.cpp index 93452e4697e..d132fb49d83 100644 --- a/src/mame/drivers/fantland.cpp +++ b/src/mame/drivers/fantland.cpp @@ -843,8 +843,10 @@ MACHINE_CONFIG_START(fantland_state::fantland) YM2151(config, "ymsnd", 3000000).add_route(0, "speaker", 0.35).add_route(1, "speaker", 0.35); MCFG_DEVICE_ADD("dac", DAC_8BIT_R2R, 0) MCFG_SOUND_ROUTE(ALL_OUTPUTS, "speaker", 0.25) // unknown DAC - MCFG_DEVICE_ADD("vref", VOLTAGE_REGULATOR, 0) MCFG_VOLTAGE_REGULATOR_OUTPUT(5.0) - MCFG_SOUND_ROUTE(0, "dac", 1.0, DAC_VREF_POS_INPUT) MCFG_SOUND_ROUTE(0, "dac", -1.0, DAC_VREF_NEG_INPUT) + voltage_regulator_device &vref(VOLTAGE_REGULATOR(config, "vref")); + vref.set_output(5.0); + vref.add_route(0, "dac", 1.0, DAC_VREF_POS_INPUT); + vref.add_route(0, "dac", -1.0, DAC_VREF_NEG_INPUT); MACHINE_CONFIG_END diff --git a/src/mame/drivers/finalizr.cpp b/src/mame/drivers/finalizr.cpp index c1a6ae46271..e3da8829e4f 100644 --- a/src/mame/drivers/finalizr.cpp +++ b/src/mame/drivers/finalizr.cpp @@ -299,8 +299,10 @@ MACHINE_CONFIG_START(finalizr_state::finalizr) MCFG_SOUND_ROUTE(ALL_OUTPUTS, "speaker", 0.75) MCFG_DEVICE_ADD("dac", DAC_8BIT_R2R, 0) MCFG_SOUND_ROUTE(ALL_OUTPUTS, "speaker", 0.325) // unknown DAC - MCFG_DEVICE_ADD("vref", VOLTAGE_REGULATOR, 0) MCFG_VOLTAGE_REGULATOR_OUTPUT(5.0) - MCFG_SOUND_ROUTE(0, "dac", 1.0, DAC_VREF_POS_INPUT) MCFG_SOUND_ROUTE(0, "dac", -1.0, DAC_VREF_NEG_INPUT) + voltage_regulator_device &vref(VOLTAGE_REGULATOR(config, "vref")); + vref.set_output(5.0); + vref.add_route(0, "dac", 1.0, DAC_VREF_POS_INPUT); + vref.add_route(0, "dac", -1.0, DAC_VREF_NEG_INPUT); MACHINE_CONFIG_END diff --git a/src/mame/drivers/fk1.cpp b/src/mame/drivers/fk1.cpp index c74e4e1edb8..7b19267bc5c 100644 --- a/src/mame/drivers/fk1.cpp +++ b/src/mame/drivers/fk1.cpp @@ -420,13 +420,13 @@ MACHINE_CONFIG_START(fk1_state::fk1) MCFG_DEVICE_IRQ_ACKNOWLEDGE_DRIVER(fk1_state,fk1_irq_callback) /* video hardware */ - MCFG_SCREEN_ADD_MONOCHROME("screen", RASTER, rgb_t::green()) - MCFG_SCREEN_REFRESH_RATE(50) - MCFG_SCREEN_VBLANK_TIME(ATTOSECONDS_IN_USEC(2500)) /* not accurate */ - MCFG_SCREEN_UPDATE_DRIVER(fk1_state, screen_update) - MCFG_SCREEN_SIZE(512, 256) - MCFG_SCREEN_VISIBLE_AREA(0, 512-1, 0, 256-1) - MCFG_SCREEN_PALETTE("palette") + screen_device &screen(SCREEN(config, "screen", SCREEN_TYPE_RASTER, rgb_t::green())); + screen.set_refresh_hz(50); + screen.set_vblank_time(ATTOSECONDS_IN_USEC(2500)); /* not accurate */ + screen.set_screen_update(FUNC(fk1_state::screen_update)); + screen.set_size(512, 256); + screen.set_visarea(0, 512-1, 0, 256-1); + screen.set_palette("palette"); PALETTE(config, "palette", palette_device::MONOCHROME); diff --git a/src/mame/drivers/galaxian.cpp b/src/mame/drivers/galaxian.cpp index 5beb87af530..a42110bd60e 100644 --- a/src/mame/drivers/galaxian.cpp +++ b/src/mame/drivers/galaxian.cpp @@ -6360,8 +6360,10 @@ MACHINE_CONFIG_START(galaxian_state::kingball) /* sound hardware */ MCFG_DEVICE_ADD("dac", DAC_4BIT_R2R, 0) MCFG_SOUND_ROUTE(ALL_OUTPUTS, "speaker", 0.53) // unknown DAC - MCFG_DEVICE_ADD("vref", VOLTAGE_REGULATOR, 0) MCFG_VOLTAGE_REGULATOR_OUTPUT(5.0) - MCFG_SOUND_ROUTE(0, "dac", 1.0, DAC_VREF_POS_INPUT) MCFG_SOUND_ROUTE(0, "dac", -1.0, DAC_VREF_NEG_INPUT) + voltage_regulator_device &vref(VOLTAGE_REGULATOR(config, "vref")); + vref.set_output(5.0); + vref.add_route(0, "dac", 1.0, DAC_VREF_POS_INPUT); + vref.add_route(0, "dac", -1.0, DAC_VREF_NEG_INPUT); MACHINE_CONFIG_END @@ -6581,8 +6583,10 @@ MACHINE_CONFIG_START(galaxian_state::sfx) /* DAC for the sample player */ MCFG_DEVICE_ADD("dac", DAC_8BIT_R2R, 0) MCFG_SOUND_ROUTE(ALL_OUTPUTS, "speaker", 1.0) // 16-pin IC (not identified by schematics) - MCFG_DEVICE_ADD("vref", VOLTAGE_REGULATOR, 0) MCFG_VOLTAGE_REGULATOR_OUTPUT(5.0) - MCFG_SOUND_ROUTE(0, "dac", 1.0, DAC_VREF_POS_INPUT) MCFG_SOUND_ROUTE(0, "dac", -1.0, DAC_VREF_NEG_INPUT) + voltage_regulator_device &vref(VOLTAGE_REGULATOR(config, "vref")); + vref.set_output(5.0); + vref.add_route(0, "dac", 1.0, DAC_VREF_POS_INPUT); + vref.add_route(0, "dac", -1.0, DAC_VREF_NEG_INPUT); MACHINE_CONFIG_END diff --git a/src/mame/drivers/gamecom.cpp b/src/mame/drivers/gamecom.cpp index 8c131d16dfd..ddfd03de7e6 100644 --- a/src/mame/drivers/gamecom.cpp +++ b/src/mame/drivers/gamecom.cpp @@ -285,8 +285,10 @@ MACHINE_CONFIG_START(gamecom_state::gamecom) MCFG_DEVICE_ADD("dac", DAC_8BIT_R2R, 0) MCFG_SOUND_ROUTE(ALL_OUTPUTS, "speaker", 0.5) // unknown DAC (Digital audio) MCFG_DEVICE_ADD("dac0", DAC_4BIT_R2R, 0) MCFG_SOUND_ROUTE(ALL_OUTPUTS, "speaker", 0.05) // unknown DAC (Frequency modulation) MCFG_DEVICE_ADD("dac1", DAC_4BIT_R2R, 0) MCFG_SOUND_ROUTE(ALL_OUTPUTS, "speaker", 0.05) // unknown DAC (Frequency modulation) - MCFG_DEVICE_ADD("vref", VOLTAGE_REGULATOR, 0) MCFG_VOLTAGE_REGULATOR_OUTPUT(5.0) - MCFG_SOUND_ROUTE(0, "dac", 1.0, DAC_VREF_POS_INPUT) MCFG_SOUND_ROUTE(0, "dac", -1.0, DAC_VREF_NEG_INPUT) + voltage_regulator_device &vref(VOLTAGE_REGULATOR(config, "vref")); + vref.set_output(5.0); + vref.add_route(0, "dac", 1.0, DAC_VREF_POS_INPUT); + vref.add_route(0, "dac", -1.0, DAC_VREF_NEG_INPUT); MCFG_SOUND_ROUTE(0, "dac0", 1.0, DAC_VREF_POS_INPUT) MCFG_SOUND_ROUTE(0, "dac0", -1.0, DAC_VREF_NEG_INPUT) MCFG_SOUND_ROUTE(0, "dac1", 1.0, DAC_VREF_POS_INPUT) MCFG_SOUND_ROUTE(0, "dac1", -1.0, DAC_VREF_NEG_INPUT) diff --git a/src/mame/drivers/go2000.cpp b/src/mame/drivers/go2000.cpp index 4d41829dfbd..93ec38c2a92 100644 --- a/src/mame/drivers/go2000.cpp +++ b/src/mame/drivers/go2000.cpp @@ -372,8 +372,10 @@ MACHINE_CONFIG_START(go2000_state::go2000) SPEAKER(config, "speaker").front_center(); MCFG_DEVICE_ADD("dac", DAC_8BIT_R2R, 0) MCFG_SOUND_ROUTE(0, "speaker", 0.25) // unknown DAC - MCFG_DEVICE_ADD("vref", VOLTAGE_REGULATOR, 0) MCFG_VOLTAGE_REGULATOR_OUTPUT(5.0) - MCFG_SOUND_ROUTE(0, "dac", 1.0, DAC_VREF_POS_INPUT) MCFG_SOUND_ROUTE(0, "dac", -1.0, DAC_VREF_NEG_INPUT) + voltage_regulator_device &vref(VOLTAGE_REGULATOR(config, "vref")); + vref.set_output(5.0); + vref.add_route(0, "dac", 1.0, DAC_VREF_POS_INPUT); + vref.add_route(0, "dac", -1.0, DAC_VREF_NEG_INPUT); MACHINE_CONFIG_END ROM_START( go2000 ) diff --git a/src/mame/drivers/h19.cpp b/src/mame/drivers/h19.cpp index 318014e1755..9571ef96780 100644 --- a/src/mame/drivers/h19.cpp +++ b/src/mame/drivers/h19.cpp @@ -528,13 +528,13 @@ MACHINE_CONFIG_START(h19_state::h19) /* video hardware */ // TODO: make configurable, Heath offered 3 different CRTs - White, Green, Amber. - MCFG_SCREEN_ADD_MONOCHROME("screen", RASTER, rgb_t::green()) - MCFG_SCREEN_REFRESH_RATE(60) // TODO- this is adjustable by dipswitch. - MCFG_SCREEN_VBLANK_TIME(ATTOSECONDS_IN_USEC(2500)) /* not accurate */ - MCFG_SCREEN_UPDATE_DEVICE("crtc", mc6845_device, screen_update) + screen_device &screen(SCREEN(config, "screen", SCREEN_TYPE_RASTER, rgb_t::green())); + screen.set_refresh_hz(60); // TODO- this is adjustable by dipswitch. + screen.set_vblank_time(ATTOSECONDS_IN_USEC(2500)); /* not accurate */ + screen.set_screen_update("crtc", FUNC(mc6845_device::screen_update)); + screen.set_size(640, 250); + screen.set_visarea(0, 640 - 1, 0, 250 - 1); - MCFG_SCREEN_SIZE(640, 250) - MCFG_SCREEN_VISIBLE_AREA(0, 640 - 1, 0, 250 - 1) GFXDECODE(config, "gfxdecode", m_palette, gfx_h19); PALETTE(config, "palette", palette_device::MONOCHROME); diff --git a/src/mame/drivers/hankin.cpp b/src/mame/drivers/hankin.cpp index dc7d8294cc8..fd69ae66296 100644 --- a/src/mame/drivers/hankin.cpp +++ b/src/mame/drivers/hankin.cpp @@ -490,8 +490,10 @@ MACHINE_CONFIG_START(hankin_state::hankin) SPEAKER(config, "speaker").front_center(); MCFG_DEVICE_ADD("dac", DAC_4BIT_R2R, 0) MCFG_SOUND_ROUTE(ALL_OUTPUTS, "speaker", 0.5) // unknown DAC - MCFG_DEVICE_ADD("vref", VOLTAGE_REGULATOR, 0) MCFG_VOLTAGE_REGULATOR_OUTPUT(5.0) - MCFG_SOUND_ROUTE(0, "dac", 1.0, DAC_VREF_POS_INPUT) MCFG_SOUND_ROUTE(0, "dac", -1.0, DAC_VREF_NEG_INPUT) + voltage_regulator_device &vref(VOLTAGE_REGULATOR(config, "vref")); + vref.set_output(5.0); + vref.add_route(0, "dac", 1.0, DAC_VREF_POS_INPUT); + vref.add_route(0, "dac", -1.0, DAC_VREF_NEG_INPUT); /* Devices */ PIA6821(config, m_ic10, 0); diff --git a/src/mame/drivers/homelab.cpp b/src/mame/drivers/homelab.cpp index 22afc22a2ee..52a511b0241 100644 --- a/src/mame/drivers/homelab.cpp +++ b/src/mame/drivers/homelab.cpp @@ -757,14 +757,15 @@ MACHINE_CONFIG_START(homelab_state::homelab) MCFG_DEVICE_VBLANK_INT_DRIVER("screen", homelab_state, homelab_frame) /* video hardware */ - MCFG_SCREEN_ADD_MONOCHROME("screen", RASTER, rgb_t::green()) - MCFG_SCREEN_REFRESH_RATE(50) - MCFG_SCREEN_VBLANK_TIME(ATTOSECONDS_IN_USEC(2500)) - MCFG_SCREEN_SIZE(40*8, 25*8) - MCFG_SCREEN_VISIBLE_AREA(0, 40*8-1, 0, 25*8-1) + screen_device &screen(SCREEN(config, "screen", SCREEN_TYPE_RASTER, rgb_t::green())); + screen.set_refresh_hz(50); + screen.set_vblank_time(ATTOSECONDS_IN_USEC(2500)); + screen.set_size(40*8, 25*8); + screen.set_visarea(0, 40*8-1, 0, 25*8-1); + screen.set_screen_update(FUNC(homelab_state::screen_update_homelab2)); + screen.set_palette("palette"); + MCFG_VIDEO_START_OVERRIDE(homelab_state,homelab2) - MCFG_SCREEN_UPDATE_DRIVER(homelab_state, screen_update_homelab2) - MCFG_SCREEN_PALETTE("palette") GFXDECODE(config, "gfxdecode", "palette", gfx_homelab); PALETTE(config, "palette", palette_device::MONOCHROME); @@ -789,14 +790,15 @@ MACHINE_CONFIG_START(homelab_state::homelab3) MCFG_MACHINE_RESET_OVERRIDE(homelab_state,homelab3) /* video hardware */ - MCFG_SCREEN_ADD_MONOCHROME("screen", RASTER, rgb_t::green()) - MCFG_SCREEN_REFRESH_RATE(50) - MCFG_SCREEN_VBLANK_TIME(ATTOSECONDS_IN_USEC(2500)) - MCFG_SCREEN_SIZE(64*8, 32*8) - MCFG_SCREEN_VISIBLE_AREA(0, 64*8-1, 0, 32*8-1) + screen_device &screen(SCREEN(config, "screen", SCREEN_TYPE_RASTER, rgb_t::green())); + screen.set_refresh_hz(50); + screen.set_vblank_time(ATTOSECONDS_IN_USEC(2500)); + screen.set_size(64*8, 32*8); + screen.set_visarea(0, 64*8-1, 0, 32*8-1); + screen.set_screen_update(FUNC(homelab_state::screen_update_homelab3)); + screen.set_palette("palette"); + MCFG_VIDEO_START_OVERRIDE(homelab_state,homelab3) - MCFG_SCREEN_UPDATE_DRIVER(homelab_state, screen_update_homelab3) - MCFG_SCREEN_PALETTE("palette") GFXDECODE(config, "gfxdecode", "palette", gfx_homelab); PALETTE(config, "palette", palette_device::MONOCHROME); @@ -821,14 +823,15 @@ MACHINE_CONFIG_START(homelab_state::brailab4) MCFG_MACHINE_RESET_OVERRIDE(homelab_state,brailab4) /* video hardware */ - MCFG_SCREEN_ADD_MONOCHROME("screen", RASTER, rgb_t::green()) - MCFG_SCREEN_REFRESH_RATE(50) - MCFG_SCREEN_VBLANK_TIME(ATTOSECONDS_IN_USEC(2500)) - MCFG_SCREEN_SIZE(64*8, 32*8) - MCFG_SCREEN_VISIBLE_AREA(0, 64*8-1, 0, 32*8-1) + screen_device &screen(SCREEN(config, "screen", SCREEN_TYPE_RASTER, rgb_t::green())); + screen.set_refresh_hz(50); + screen.set_vblank_time(ATTOSECONDS_IN_USEC(2500)); + screen.set_size(64*8, 32*8); + screen.set_visarea(0, 64*8-1, 0, 32*8-1); + screen.set_screen_update(FUNC(homelab_state::screen_update_homelab3)); + screen.set_palette("palette"); + MCFG_VIDEO_START_OVERRIDE(homelab_state,brailab4) - MCFG_SCREEN_UPDATE_DRIVER(homelab_state, screen_update_homelab3) - MCFG_SCREEN_PALETTE("palette") GFXDECODE(config, "gfxdecode", "palette", gfx_homelab); PALETTE(config, "palette", palette_device::MONOCHROME); diff --git a/src/mame/drivers/hp2640.cpp b/src/mame/drivers/hp2640.cpp index 8dd8de2d50a..816d403b9f6 100644 --- a/src/mame/drivers/hp2640.cpp +++ b/src/mame/drivers/hp2640.cpp @@ -975,14 +975,14 @@ MACHINE_CONFIG_START(hp2645_state::hp2645) TIMER(config, m_timer_10ms).configure_generic(FUNC(hp2645_state::timer_10ms_exp)); TIMER(config, m_timer_cursor_blink_inh).configure_generic(FUNC(hp2645_state::timer_cursor_blink_inh)); - MCFG_SCREEN_ADD_MONOCHROME("screen" , RASTER , rgb_t::white()) + SCREEN(config, m_screen, SCREEN_TYPE_RASTER, rgb_t::white()); // Actual pixel clock is half this value: 21.06 MHz // We use the doubled value to be able to emulate the half-pixel shifting of the real hw // Each real-world half pixel is a whole MAME pixel - MCFG_SCREEN_RAW_PARAMS(VIDEO_DOT_CLOCK * 2 , + m_screen->set_raw(VIDEO_DOT_CLOCK * 2 , VIDEO_TOT_COLS * VIDEO_CHAR_WIDTH * 2 , 0 , VIDEO_VIS_COLS * VIDEO_CHAR_WIDTH * 2 , - VIDEO_TOT_ROWS * VIDEO_CHAR_HEIGHT , 0 , VIDEO_VIS_ROWS * VIDEO_CHAR_HEIGHT) - MCFG_SCREEN_UPDATE_DRIVER(hp2645_state , screen_update) + VIDEO_TOT_ROWS * VIDEO_CHAR_HEIGHT , 0 , VIDEO_VIS_ROWS * VIDEO_CHAR_HEIGHT); + m_screen->set_screen_update(FUNC(hp2645_state::screen_update)); TIMER(config, "scantimer").configure_scanline(FUNC(hp2645_state::scanline_timer), "screen", 0, 1); PALETTE(config, m_palette, palette_device::MONOCHROME_HIGHLIGHT); config.set_default_layout(layout_hp2640); diff --git a/src/mame/drivers/hp95lx.cpp b/src/mame/drivers/hp95lx.cpp index d9afea1c0fb..74f455217d4 100644 --- a/src/mame/drivers/hp95lx.cpp +++ b/src/mame/drivers/hp95lx.cpp @@ -747,10 +747,10 @@ MACHINE_CONFIG_START(hp95lx_state::hp95lx) // XXX When the AC adapter is plugged in, the LCD refresh rate is 73.14 Hz. // XXX When the AC adapter is not plugged in (ie, running off of batteries) the refresh rate is 56.8 Hz. - MCFG_SCREEN_ADD_MONOCHROME("screen", LCD, rgb_t::white()) - MCFG_SCREEN_UPDATE_DRIVER(hp95lx_state, screen_update) - MCFG_SCREEN_RAW_PARAMS(XTAL(5'370'000) / 2, 300, 0, 240, 180, 0, 128) - MCFG_SCREEN_PALETTE("palette") + SCREEN(config, m_screen, SCREEN_TYPE_LCD, rgb_t::white()); + m_screen->set_screen_update(FUNC(hp95lx_state::screen_update)); + m_screen->set_raw(XTAL(5'370'000) / 2, 300, 0, 240, 180, 0, 128); + m_screen->set_palette("palette"); PALETTE(config, "palette", FUNC(hp95lx_state::hp95lx_palette), 2); diff --git a/src/mame/drivers/hp9845.cpp b/src/mame/drivers/hp9845.cpp index 2fc203ba8c9..cf8dd47754c 100644 --- a/src/mame/drivers/hp9845.cpp +++ b/src/mame/drivers/hp9845.cpp @@ -3646,7 +3646,7 @@ MACHINE_CONFIG_START(hp9845_base_state::hp9845_base) m_io_sys->dmar().set(m_ppu , FUNC(hp_5061_3001_cpu_device::dmar_w)); // video hardware - MCFG_SCREEN_ADD("screen", RASTER) + SCREEN(config, m_screen, SCREEN_TYPE_RASTER); TIMER(config, m_gv_timer).configure_generic(FUNC(hp9845_base_state::gv_timer)); @@ -3711,23 +3711,22 @@ MACHINE_CONFIG_START(hp9845_base_state::hp9845_base) prt.sts().set([this](int state) { m_io_sys->set_sts(PRINTER_PA , state); }); MACHINE_CONFIG_END -MACHINE_CONFIG_START(hp9845b_state::hp9845b) +void hp9845b_state::hp9845b(machine_config &config) +{ hp9845_base(config); // video hardware - MCFG_SCREEN_MODIFY("screen") - MCFG_SCREEN_UPDATE_DRIVER(hp9845b_state, screen_update) - MCFG_SCREEN_VBLANK_CALLBACK(WRITELINE(*this, hp9845b_state, vblank_w)) - MCFG_SCREEN_COLOR(rgb_t::green()) + m_screen->set_screen_update(FUNC(hp9845b_state::screen_update)); + m_screen->screen_vblank().set(FUNC(hp9845b_state::vblank_w)); + m_screen->set_color(rgb_t::green()); // These parameters are for alpha video - MCFG_SCREEN_RAW_PARAMS(VIDEO_PIXEL_CLOCK , VIDEO_HTOTAL , 0 , VIDEO_HBSTART , VIDEO_VTOTAL , 0 , VIDEO_ACTIVE_SCANLINES) - MCFG_PALETTE_ADD("palette", 4) + m_screen->set_raw(VIDEO_PIXEL_CLOCK , VIDEO_HTOTAL , 0 , VIDEO_HBSTART , VIDEO_VTOTAL , 0 , VIDEO_ACTIVE_SCANLINES); + PALETTE(config, m_palette).set_entries(4); TIMER(config, "scantimer").configure_scanline(FUNC(hp9845b_state::scanline_timer), "screen", 0, 1); config.set_default_layout(layout_hp9845b); SOFTWARE_LIST(config, "optrom_list").set_original("hp9845b_rom"); - -MACHINE_CONFIG_END +} MACHINE_CONFIG_START(hp9845c_state::hp9845c) hp9845_base(config); @@ -3743,20 +3742,19 @@ MACHINE_CONFIG_START(hp9845c_state::hp9845c) MACHINE_CONFIG_END -MACHINE_CONFIG_START(hp9845t_state::hp9845t) +void hp9845t_state::hp9845t(machine_config &config) +{ hp9845_base(config); // video hardware - MCFG_SCREEN_MODIFY("screen") - MCFG_SCREEN_UPDATE_DRIVER(hp9845t_state, screen_update) - MCFG_SCREEN_VBLANK_CALLBACK(WRITELINE(*this, hp9845t_state, vblank_w)) - MCFG_SCREEN_COLOR(rgb_t::green()) - MCFG_SCREEN_RAW_PARAMS(VIDEO_780_PIXEL_CLOCK , VIDEO_780_HTOTAL , VIDEO_780_HBEND , VIDEO_780_HBSTART , VIDEO_780_VTOTAL , VIDEO_780_VBEND , VIDEO_780_VBSTART) - MCFG_PALETTE_ADD("palette", 5) + m_screen->set_screen_update(FUNC(hp9845t_state::screen_update)); + m_screen->screen_vblank().set(FUNC(hp9845t_state::vblank_w)); + m_screen->set_color(rgb_t::green()); + m_screen->set_raw(VIDEO_780_PIXEL_CLOCK , VIDEO_780_HTOTAL , VIDEO_780_HBEND , VIDEO_780_HBSTART , VIDEO_780_VTOTAL , VIDEO_780_VBEND , VIDEO_780_VBSTART); + PALETTE(config, m_palette).set_entries(5); TIMER(config, "scantimer").configure_scanline(FUNC(hp9845t_state::scanline_timer), "screen", 0, 1); SOFTWARE_LIST(config, "optrom_list").set_original("hp9845b_rom"); - -MACHINE_CONFIG_END +} ROM_START( hp9845a ) ROM_REGION( 0200000, "lpu", ROMREGION_16BIT | ROMREGION_BE ) diff --git a/src/mame/drivers/hyhoo.cpp b/src/mame/drivers/hyhoo.cpp index 7e207e19d47..f39b367f8cd 100644 --- a/src/mame/drivers/hyhoo.cpp +++ b/src/mame/drivers/hyhoo.cpp @@ -255,8 +255,10 @@ MACHINE_CONFIG_START(hyhoo_state::hyhoo) aysnd.add_route(ALL_OUTPUTS, "speaker", 0.35); MCFG_DEVICE_ADD("dac", DAC_8BIT_R2R, 0) MCFG_SOUND_ROUTE(ALL_OUTPUTS, "speaker", 0.25) // unknown DAC - MCFG_DEVICE_ADD("vref", VOLTAGE_REGULATOR, 0) MCFG_VOLTAGE_REGULATOR_OUTPUT(5.0) - MCFG_SOUND_ROUTE(0, "dac", 1.0, DAC_VREF_POS_INPUT) MCFG_SOUND_ROUTE(0, "dac", -1.0, DAC_VREF_NEG_INPUT) + voltage_regulator_device &vref(VOLTAGE_REGULATOR(config, "vref")); + vref.set_output(5.0); + vref.add_route(0, "dac", 1.0, DAC_VREF_POS_INPUT); + vref.add_route(0, "dac", -1.0, DAC_VREF_NEG_INPUT); MACHINE_CONFIG_END diff --git a/src/mame/drivers/instantm.cpp b/src/mame/drivers/instantm.cpp index 2e2456f9aca..7044be5d585 100644 --- a/src/mame/drivers/instantm.cpp +++ b/src/mame/drivers/instantm.cpp @@ -141,8 +141,10 @@ MACHINE_CONFIG_START(instantm_state::instantm) SPEAKER(config, "speaker").front_center(); MCFG_DEVICE_ADD("dac", MC1408, 0) MCFG_SOUND_ROUTE(ALL_OUTPUTS, "speaker", 0.5) - MCFG_DEVICE_ADD("vref", VOLTAGE_REGULATOR, 0) MCFG_VOLTAGE_REGULATOR_OUTPUT(5.0) - MCFG_SOUND_ROUTE(0, "dac", 1.0, DAC_VREF_POS_INPUT) MCFG_SOUND_ROUTE(0, "dac", -1.0, DAC_VREF_NEG_INPUT) + voltage_regulator_device &vref(VOLTAGE_REGULATOR(config, "vref")); + vref.set_output(5.0); + vref.add_route(0, "dac", 1.0, DAC_VREF_POS_INPUT); + vref.add_route(0, "dac", -1.0, DAC_VREF_NEG_INPUT); MACHINE_CONFIG_END diff --git a/src/mame/drivers/ipds.cpp b/src/mame/drivers/ipds.cpp index 3eb42366556..e6e9663d9f0 100644 --- a/src/mame/drivers/ipds.cpp +++ b/src/mame/drivers/ipds.cpp @@ -134,19 +134,20 @@ void ipds_state::kbd_put(u8 data) m_term_data = data; } -MACHINE_CONFIG_START(ipds_state::ipds) +void ipds_state::ipds(machine_config &config) +{ /* basic machine hardware */ - MCFG_DEVICE_ADD("maincpu",I8085A, XTAL(19'660'800) / 4) - MCFG_DEVICE_PROGRAM_MAP(ipds_mem) - MCFG_DEVICE_IO_MAP(ipds_io) + I8085A(config, m_maincpu, XTAL(19'660'800) / 4); + m_maincpu->set_addrmap(AS_PROGRAM, &ipds_state::ipds_mem); + m_maincpu->set_addrmap(AS_IO, &ipds_state::ipds_io); /* video hardware */ - MCFG_SCREEN_ADD_MONOCHROME("screen", RASTER, rgb_t::green()) - MCFG_SCREEN_UPDATE_DEVICE("i8275", i8275_device, screen_update) - MCFG_SCREEN_REFRESH_RATE(50) - MCFG_SCREEN_VBLANK_TIME(ATTOSECONDS_IN_USEC(2500)) /* not accurate */ - MCFG_SCREEN_SIZE(640, 480) - MCFG_SCREEN_VISIBLE_AREA(0, 640-1, 0, 480-1) + screen_device &screen(SCREEN(config, "screen", SCREEN_TYPE_RASTER, rgb_t::green())); + screen.set_screen_update("i8275", FUNC(i8275_device::screen_update)); + screen.set_refresh_hz(50); + screen.set_vblank_time(ATTOSECONDS_IN_USEC(2500)); /* not accurate */ + screen.set_size(640, 480); + screen.set_visarea(0, 640-1, 0, 480-1); GFXDECODE(config, "gfxdecode", m_palette, gfx_ipds); PALETTE(config, m_palette, palette_device::MONOCHROME); @@ -156,7 +157,7 @@ MACHINE_CONFIG_START(ipds_state::ipds) generic_keyboard_device &keyboard(GENERIC_KEYBOARD(config, "keyboard", 0)); keyboard.set_keyboard_callback(FUNC(ipds_state::kbd_put)); -MACHINE_CONFIG_END +} /* ROM definition */ ROM_START( ipds ) diff --git a/src/mame/drivers/iq151.cpp b/src/mame/drivers/iq151.cpp index a98839239ac..da8a6eca3a1 100644 --- a/src/mame/drivers/iq151.cpp +++ b/src/mame/drivers/iq151.cpp @@ -388,7 +388,8 @@ static void iq151_cart(device_slot_interface &device) device.option_add("amos3", IQ151_AMOS3); // AMOS cart 3 } -MACHINE_CONFIG_START(iq151_state::iq151) +void iq151_state::iq151(machine_config &config) +{ /* basic machine hardware */ I8080(config, m_maincpu, XTAL(2'000'000)); m_maincpu->set_addrmap(AS_PROGRAM, &iq151_state::iq151_mem); @@ -397,20 +398,19 @@ MACHINE_CONFIG_START(iq151_state::iq151) m_maincpu->set_irq_acknowledge_callback("pic8259", FUNC(pic8259_device::inta_cb)); /* video hardware */ - MCFG_SCREEN_ADD_MONOCHROME("screen", RASTER, rgb_t::green()) - MCFG_SCREEN_REFRESH_RATE(50) - MCFG_SCREEN_VBLANK_TIME(ATTOSECONDS_IN_USEC(2500)) /* not accurate */ - MCFG_SCREEN_UPDATE_DRIVER(iq151_state, screen_update) - MCFG_SCREEN_SIZE(64*8, 32*8) - MCFG_SCREEN_VISIBLE_AREA(0, 32*8-1, 0, 32*8-1) - MCFG_SCREEN_PALETTE("palette") + screen_device &screen(SCREEN(config, "screen", SCREEN_TYPE_RASTER, rgb_t::green())); + screen.set_refresh_hz(50); + screen.set_vblank_time(ATTOSECONDS_IN_USEC(2500)); /* not accurate */ + screen.set_screen_update(FUNC(iq151_state::screen_update)); + screen.set_size(64*8, 32*8); + screen.set_visarea(0, 32*8-1, 0, 32*8-1); + screen.set_palette("palette"); PALETTE(config, "palette", palette_device::MONOCHROME); /* sound hardware */ SPEAKER(config, "mono").front_center(); - MCFG_DEVICE_ADD("speaker", SPEAKER_SOUND) - MCFG_SOUND_ROUTE(ALL_OUTPUTS, "mono", 0.50) + SPEAKER_SOUND(config, m_speaker).add_route(ALL_OUTPUTS, "mono", 0.50); PIC8259(config, m_pic, 0); m_pic->out_int_callback().set_inputline(m_maincpu, 0); @@ -467,7 +467,7 @@ MACHINE_CONFIG_START(iq151_state::iq151) /* Software lists */ SOFTWARE_LIST(config, "cart_list").set_original("iq151_cart"); SOFTWARE_LIST(config, "flop_list").set_original("iq151_flop"); -MACHINE_CONFIG_END +} /* ROM definition */ ROM_START( iq151 ) diff --git a/src/mame/drivers/jankenmn.cpp b/src/mame/drivers/jankenmn.cpp index 9f836a121d0..736bfecedd7 100644 --- a/src/mame/drivers/jankenmn.cpp +++ b/src/mame/drivers/jankenmn.cpp @@ -411,8 +411,10 @@ MACHINE_CONFIG_START(jankenmn_state::jankenmn) SPEAKER(config, "speaker").front_center(); MCFG_DEVICE_ADD("dac", AD7523, 0) MCFG_SOUND_ROUTE(ALL_OUTPUTS, "speaker", 0.5) - MCFG_DEVICE_ADD("vref", VOLTAGE_REGULATOR, 0) MCFG_VOLTAGE_REGULATOR_OUTPUT(5.0) - MCFG_SOUND_ROUTE(0, "dac", 1.0, DAC_VREF_POS_INPUT) MCFG_SOUND_ROUTE(0, "dac", -1.0, DAC_VREF_NEG_INPUT) + voltage_regulator_device &vref(VOLTAGE_REGULATOR(config, "vref")); + vref.set_output(5.0); + vref.add_route(0, "dac", 1.0, DAC_VREF_POS_INPUT); + vref.add_route(0, "dac", -1.0, DAC_VREF_NEG_INPUT); MACHINE_CONFIG_END diff --git a/src/mame/drivers/juicebox.cpp b/src/mame/drivers/juicebox.cpp index 5e0c0b54af4..4a35b415480 100644 --- a/src/mame/drivers/juicebox.cpp +++ b/src/mame/drivers/juicebox.cpp @@ -324,8 +324,10 @@ MACHINE_CONFIG_START(juicebox_state::juicebox) SPEAKER(config, "speaker").front_center(); MCFG_DEVICE_ADD("dac", DAC_16BIT_R2R_TWOS_COMPLEMENT, 0) MCFG_SOUND_ROUTE(ALL_OUTPUTS, "speaker", 1.0) // unknown DAC - MCFG_DEVICE_ADD("vref", VOLTAGE_REGULATOR, 0) MCFG_VOLTAGE_REGULATOR_OUTPUT(5.0) - MCFG_SOUND_ROUTE(0, "dac", 1.0, DAC_VREF_POS_INPUT) MCFG_SOUND_ROUTE(0, "dac", -1.0, DAC_VREF_NEG_INPUT) + voltage_regulator_device &vref(VOLTAGE_REGULATOR(config, "vref")); + vref.set_output(5.0); + vref.add_route(0, "dac", 1.0, DAC_VREF_POS_INPUT); + vref.add_route(0, "dac", -1.0, DAC_VREF_NEG_INPUT); S3C44B0(config, m_s3c44b0, 10000000); m_s3c44b0->set_cpu("maincpu"); diff --git a/src/mame/drivers/junofrst.cpp b/src/mame/drivers/junofrst.cpp index a86811791c8..400ca45846f 100644 --- a/src/mame/drivers/junofrst.cpp +++ b/src/mame/drivers/junofrst.cpp @@ -453,8 +453,10 @@ MACHINE_CONFIG_START(junofrst_state::junofrst) aysnd.add_route(2, "filter.0.2", 0.30); MCFG_DEVICE_ADD("dac", DAC_8BIT_R2R, 0) MCFG_SOUND_ROUTE(ALL_OUTPUTS, "speaker", 0.25) // 100K (R56-63)/200K (R64-71) ladder network - MCFG_DEVICE_ADD("vref", VOLTAGE_REGULATOR, 0) MCFG_VOLTAGE_REGULATOR_OUTPUT(5.0) - MCFG_SOUND_ROUTE(0, "dac", 1.0, DAC_VREF_POS_INPUT) MCFG_SOUND_ROUTE(0, "dac", -1.0, DAC_VREF_NEG_INPUT) + voltage_regulator_device &vref(VOLTAGE_REGULATOR(config, "vref")); + vref.set_output(5.0); + vref.add_route(0, "dac", 1.0, DAC_VREF_POS_INPUT); + vref.add_route(0, "dac", -1.0, DAC_VREF_NEG_INPUT); MCFG_DEVICE_ADD("filter.0.0", FILTER_RC) MCFG_SOUND_ROUTE(ALL_OUTPUTS, "speaker", 1.0) diff --git a/src/mame/drivers/k8915.cpp b/src/mame/drivers/k8915.cpp index e316bd9ccc9..43c1056d1a5 100644 --- a/src/mame/drivers/k8915.cpp +++ b/src/mame/drivers/k8915.cpp @@ -134,20 +134,21 @@ uint32_t k8915_state::screen_update(screen_device &screen, bitmap_ind16 &bitmap, } -MACHINE_CONFIG_START(k8915_state::k8915) +void k8915_state::k8915(machine_config &config) +{ /* basic machine hardware */ - MCFG_DEVICE_ADD("maincpu", Z80, XTAL(4'915'200) / 2) - MCFG_DEVICE_PROGRAM_MAP(mem_map) - MCFG_DEVICE_IO_MAP(io_map) + Z80(config, m_maincpu, XTAL(4'915'200) / 2); + m_maincpu->set_addrmap(AS_PROGRAM, &k8915_state::mem_map); + m_maincpu->set_addrmap(AS_IO, &k8915_state::io_map); /* video hardware */ - MCFG_SCREEN_ADD_MONOCHROME("screen", RASTER, rgb_t::green()) - MCFG_SCREEN_REFRESH_RATE(60) - MCFG_SCREEN_VBLANK_TIME(ATTOSECONDS_IN_USEC(2500)) /* not accurate */ - MCFG_SCREEN_UPDATE_DRIVER(k8915_state, screen_update) - MCFG_SCREEN_SIZE(640, 250) - MCFG_SCREEN_VISIBLE_AREA(0, 639, 0, 249) - MCFG_SCREEN_PALETTE("palette") + screen_device &screen(SCREEN(config, "screen", SCREEN_TYPE_RASTER, rgb_t::green())); + screen.set_refresh_hz(60); + screen.set_vblank_time(ATTOSECONDS_IN_USEC(2500)); /* not accurate */ + screen.set_screen_update(FUNC(k8915_state::screen_update)); + screen.set_size(640, 250); + screen.set_visarea(0, 639, 0, 249); + screen.set_palette("palette"); PALETTE(config, "palette", palette_device::MONOCHROME); diff --git a/src/mame/drivers/kaypro.cpp b/src/mame/drivers/kaypro.cpp index f545adb3097..fe1d2ff8e11 100644 --- a/src/mame/drivers/kaypro.cpp +++ b/src/mame/drivers/kaypro.cpp @@ -206,22 +206,22 @@ MACHINE_CONFIG_START(kaypro_state::kayproii) MCFG_MACHINE_RESET_OVERRIDE(kaypro_state, kaypro ) /* video hardware */ - MCFG_SCREEN_ADD_MONOCHROME("screen", RASTER, rgb_t::green()) - MCFG_SCREEN_REFRESH_RATE(60) - MCFG_SCREEN_VBLANK_TIME(ATTOSECONDS_IN_USEC(0)) - MCFG_SCREEN_SIZE(80*7, 24*10) - MCFG_SCREEN_VISIBLE_AREA(0,80*7-1,0,24*10-1) + SCREEN(config, m_screen, SCREEN_TYPE_RASTER, rgb_t::green()); + m_screen->set_refresh_hz(60); + m_screen->set_vblank_time(ATTOSECONDS_IN_USEC(0)); + m_screen->set_size(80*7, 24*10); + m_screen->set_visarea(0, 80*7-1, 0, 24*10-1); + m_screen->set_screen_update(FUNC(kaypro_state::screen_update_kayproii)); + m_screen->set_palette(m_palette); + MCFG_VIDEO_START_OVERRIDE(kaypro_state, kaypro ) - MCFG_SCREEN_UPDATE_DRIVER(kaypro_state, screen_update_kayproii) - MCFG_SCREEN_PALETTE(m_palette) GFXDECODE(config, "gfxdecode", m_palette, gfx_kayproii); PALETTE(config, m_palette, palette_device::MONOCHROME); /* sound hardware */ SPEAKER(config, "mono").front_center(); - MCFG_DEVICE_ADD("beeper", BEEP, 950) /* piezo-device needs to be measured */ - MCFG_SOUND_ROUTE(ALL_OUTPUTS, "mono", 1.00) + BEEP(config, m_beep, 950).add_route(ALL_OUTPUTS, "mono", 1.00); /* piezo-device needs to be measured */ /* devices */ MCFG_QUICKLOAD_ADD("quickload", kaypro_state, kaypro, "com,cpm", attotime::from_seconds(3)) diff --git a/src/mame/drivers/kingobox.cpp b/src/mame/drivers/kingobox.cpp index 73eb076bd69..e5dde38b39a 100644 --- a/src/mame/drivers/kingobox.cpp +++ b/src/mame/drivers/kingobox.cpp @@ -512,8 +512,10 @@ MACHINE_CONFIG_START(kingofb_state::kingofb) aysnd.add_route(ALL_OUTPUTS, "speaker", 0.25); MCFG_DEVICE_ADD("dac", DAC_8BIT_R2R, 0) MCFG_SOUND_ROUTE(ALL_OUTPUTS, "speaker", 0.125) // 100K (R30-44 even)/200K (R31-45 odd) ladder network - MCFG_DEVICE_ADD("vref", VOLTAGE_REGULATOR, 0) MCFG_VOLTAGE_REGULATOR_OUTPUT(5.0) - MCFG_SOUND_ROUTE(0, "dac", 1.0, DAC_VREF_POS_INPUT) MCFG_SOUND_ROUTE(0, "dac", -1.0, DAC_VREF_NEG_INPUT) + voltage_regulator_device &vref(VOLTAGE_REGULATOR(config, "vref")); + vref.set_output(5.0); + vref.add_route(0, "dac", 1.0, DAC_VREF_POS_INPUT); + vref.add_route(0, "dac", -1.0, DAC_VREF_NEG_INPUT); MACHINE_CONFIG_END @@ -568,8 +570,10 @@ MACHINE_CONFIG_START(kingofb_state::ringking) aysnd.add_route(ALL_OUTPUTS, "speaker", 0.25); MCFG_DEVICE_ADD("dac", DAC_8BIT_R2R, 0) MCFG_SOUND_ROUTE(ALL_OUTPUTS, "speaker", 0.125) // unknown DAC - MCFG_DEVICE_ADD("vref", VOLTAGE_REGULATOR, 0) MCFG_VOLTAGE_REGULATOR_OUTPUT(5.0) - MCFG_SOUND_ROUTE(0, "dac", 1.0, DAC_VREF_POS_INPUT) MCFG_SOUND_ROUTE(0, "dac", -1.0, DAC_VREF_NEG_INPUT) + voltage_regulator_device &vref(VOLTAGE_REGULATOR(config, "vref")); + vref.set_output(5.0); + vref.add_route(0, "dac", 1.0, DAC_VREF_POS_INPUT); + vref.add_route(0, "dac", -1.0, DAC_VREF_NEG_INPUT); MACHINE_CONFIG_END diff --git a/src/mame/drivers/kron.cpp b/src/mame/drivers/kron.cpp index 7fa942dfdec..df55b3a0b46 100644 --- a/src/mame/drivers/kron.cpp +++ b/src/mame/drivers/kron.cpp @@ -307,13 +307,12 @@ MACHINE_CONFIG_START(kron180_state::kron180) MCFG_DEVICE_IO_MAP(kron180_iomap) /* video hardware */ - MCFG_SCREEN_ADD("screen", RASTER) - MCFG_SCREEN_COLOR(rgb_t::green()) - MCFG_SCREEN_REFRESH_RATE(50) - MCFG_SCREEN_UPDATE_DRIVER(kron180_state, screen_update) - MCFG_SCREEN_SIZE(80 * 10, 24 * 10) - MCFG_SCREEN_VISIBLE_AREA(0, 639, 0, 199) // TODO: This need to be fixed once the real char table is used... - MCFG_SCREEN_PALETTE("palette") + screen_device &screen(SCREEN(config, "screen", SCREEN_TYPE_RASTER, rgb_t::green())); + screen.set_refresh_hz(50); + screen.set_screen_update(FUNC(kron180_state::screen_update)); + screen.set_size(80 * 10, 24 * 10); + screen.set_visarea(0, 639, 0, 199); // TODO: This need to be fixed once the real char table is used... + screen.set_palette("palette"); PALETTE(config, "palette", palette_device::MONOCHROME); diff --git a/src/mame/drivers/ksayakyu.cpp b/src/mame/drivers/ksayakyu.cpp index d2d2374f86f..d2114f23859 100644 --- a/src/mame/drivers/ksayakyu.cpp +++ b/src/mame/drivers/ksayakyu.cpp @@ -300,8 +300,10 @@ MACHINE_CONFIG_START(ksayakyu_state::ksayakyu) ay2.add_route(ALL_OUTPUTS, "speaker", 0.25); MCFG_DEVICE_ADD("dac", DAC_6BIT_R2R, 0) MCFG_SOUND_ROUTE(ALL_OUTPUTS, "speaker", 0.25) // unknown DAC - MCFG_DEVICE_ADD("vref", VOLTAGE_REGULATOR, 0) MCFG_VOLTAGE_REGULATOR_OUTPUT(5.0) - MCFG_SOUND_ROUTE(0, "dac", 1.0, DAC_VREF_POS_INPUT) MCFG_SOUND_ROUTE(0, "dac", -1.0, DAC_VREF_NEG_INPUT) + voltage_regulator_device &vref(VOLTAGE_REGULATOR(config, "vref")); + vref.set_output(5.0); + vref.add_route(0, "dac", 1.0, DAC_VREF_POS_INPUT); + vref.add_route(0, "dac", -1.0, DAC_VREF_NEG_INPUT); MACHINE_CONFIG_END ROM_START( ksayakyu ) diff --git a/src/mame/drivers/lasso.cpp b/src/mame/drivers/lasso.cpp index 53053abc7ca..0a67562300f 100644 --- a/src/mame/drivers/lasso.cpp +++ b/src/mame/drivers/lasso.cpp @@ -574,8 +574,10 @@ MACHINE_CONFIG_START(lasso_state::wwjgtin) /* sound hardware */ MCFG_DEVICE_ADD("dac", DAC_8BIT_R2R, 0) MCFG_SOUND_ROUTE(ALL_OUTPUTS, "speaker", 0.5) // unknown DAC - MCFG_DEVICE_ADD("vref", VOLTAGE_REGULATOR, 0) MCFG_VOLTAGE_REGULATOR_OUTPUT(5.0) - MCFG_SOUND_ROUTE(0, "dac", 1.0, DAC_VREF_POS_INPUT) MCFG_SOUND_ROUTE(0, "dac", -1.0, DAC_VREF_NEG_INPUT) + voltage_regulator_device &vref(VOLTAGE_REGULATOR(config, "vref")); + vref.set_output(5.0); + vref.add_route(0, "dac", 1.0, DAC_VREF_POS_INPUT); + vref.add_route(0, "dac", -1.0, DAC_VREF_NEG_INPUT); MACHINE_CONFIG_END MACHINE_CONFIG_START(lasso_state::pinbo) diff --git a/src/mame/drivers/luckybal.cpp b/src/mame/drivers/luckybal.cpp index 2f198250492..d9e8c9879c9 100644 --- a/src/mame/drivers/luckybal.cpp +++ b/src/mame/drivers/luckybal.cpp @@ -597,8 +597,10 @@ MACHINE_CONFIG_START(luckybal_state::luckybal) /* sound hardware */ SPEAKER(config, "speaker").front_center(); MCFG_DEVICE_ADD("dac", DAC08, 0) MCFG_SOUND_ROUTE(ALL_OUTPUTS, "speaker", 0.5) - MCFG_DEVICE_ADD("vref", VOLTAGE_REGULATOR, 0) MCFG_VOLTAGE_REGULATOR_OUTPUT(5.0) - MCFG_SOUND_ROUTE(0, "dac", 1.0, DAC_VREF_POS_INPUT) MCFG_SOUND_ROUTE(0, "dac", -1.0, DAC_VREF_NEG_INPUT) + voltage_regulator_device &vref(VOLTAGE_REGULATOR(config, "vref")); + vref.set_output(5.0); + vref.add_route(0, "dac", 1.0, DAC_VREF_POS_INPUT); + vref.add_route(0, "dac", -1.0, DAC_VREF_NEG_INPUT); MACHINE_CONFIG_END diff --git a/src/mame/drivers/m3.cpp b/src/mame/drivers/m3.cpp index d43f755a91e..f875c49b9c2 100644 --- a/src/mame/drivers/m3.cpp +++ b/src/mame/drivers/m3.cpp @@ -115,18 +115,19 @@ void m3_state::machine_reset() m_maincpu->set_pc(0xf000); } -MACHINE_CONFIG_START(m3_state::m3) - MCFG_DEVICE_ADD("maincpu", Z80, 2'000'000) // no idea of clock. - MCFG_DEVICE_PROGRAM_MAP(mem_map) - MCFG_DEVICE_IO_MAP(io_map) +void m3_state::m3(machine_config &config) +{ + Z80(config, m_maincpu, 2'000'000); // no idea of clock. + m_maincpu->set_addrmap(AS_PROGRAM, &m3_state::mem_map); + m_maincpu->set_addrmap(AS_IO, &m3_state::io_map); /* video hardware */ - MCFG_SCREEN_ADD_MONOCHROME("screen", RASTER, rgb_t::green()) - MCFG_SCREEN_REFRESH_RATE(60) - MCFG_SCREEN_VBLANK_TIME(ATTOSECONDS_IN_USEC(2500)) // not correct - MCFG_SCREEN_UPDATE_DEVICE("crtc", mc6845_device, screen_update) - MCFG_SCREEN_SIZE(640, 480) - MCFG_SCREEN_VISIBLE_AREA(0, 639, 0, 479) + screen_device &screen(SCREEN(config, "screen", SCREEN_TYPE_RASTER, rgb_t::green())); + screen.set_refresh_hz(60); + screen.set_vblank_time(ATTOSECONDS_IN_USEC(2500)); // not correct + screen.set_screen_update("crtc", FUNC(mc6845_device::screen_update)); + screen.set_size(640, 480); + screen.set_visarea(0, 639, 0, 479); GFXDECODE(config, "gfxdecode", m_palette, gfx_f4disp); PALETTE(config, m_palette, palette_device::MONOCHROME); @@ -136,7 +137,7 @@ MACHINE_CONFIG_START(m3_state::m3) crtc.set_show_border_area(false); crtc.set_char_width(7); crtc.set_update_row_callback(FUNC(m3_state::crtc_update_row), this); -MACHINE_CONFIG_END +} ROM_START( m3 ) ROM_REGION( 0x3000, "roms", 0 ) diff --git a/src/mame/drivers/megazone.cpp b/src/mame/drivers/megazone.cpp index 05b24f91698..ab139434c89 100644 --- a/src/mame/drivers/megazone.cpp +++ b/src/mame/drivers/megazone.cpp @@ -345,8 +345,10 @@ MACHINE_CONFIG_START(megazone_state::megazone) aysnd.add_route(2, "filter.0.2", 0.30); MCFG_DEVICE_ADD("dac", DAC_8BIT_R2R, 0) MCFG_SOUND_ROUTE(ALL_OUTPUTS, "speaker", 0.25) // unknown DAC - MCFG_DEVICE_ADD("vref", VOLTAGE_REGULATOR, 0) MCFG_VOLTAGE_REGULATOR_OUTPUT(5.0) - MCFG_SOUND_ROUTE(0, "dac", 1.0, DAC_VREF_POS_INPUT) MCFG_SOUND_ROUTE(0, "dac", -1.0, DAC_VREF_NEG_INPUT) + voltage_regulator_device &vref(VOLTAGE_REGULATOR(config, "vref")); + vref.set_output(5.0); + vref.add_route(0, "dac", 1.0, DAC_VREF_POS_INPUT); + vref.add_route(0, "dac", -1.0, DAC_VREF_NEG_INPUT); MCFG_DEVICE_ADD("filter.0.0", FILTER_RC) MCFG_SOUND_ROUTE(ALL_OUTPUTS, "speaker", 1.0) diff --git a/src/mame/drivers/mephistp.cpp b/src/mame/drivers/mephistp.cpp index aedff4d87b3..b19d54df7a7 100644 --- a/src/mame/drivers/mephistp.cpp +++ b/src/mame/drivers/mephistp.cpp @@ -197,8 +197,10 @@ MACHINE_CONFIG_START(mephisto_pinball_state::mephisto) MCFG_DEVICE_ADD("dac", DAC08, 0) MCFG_SOUND_ROUTE(ALL_OUTPUTS, "mono", 0.5) - MCFG_DEVICE_ADD("vref", VOLTAGE_REGULATOR, 0) MCFG_VOLTAGE_REGULATOR_OUTPUT(5.0) - MCFG_SOUND_ROUTE(0, "dac", 1.0, DAC_VREF_POS_INPUT) MCFG_SOUND_ROUTE(0, "dac", -1.0, DAC_VREF_NEG_INPUT) + voltage_regulator_device &vref(VOLTAGE_REGULATOR(config, "vref")); + vref.set_output(5.0); + vref.add_route(0, "dac", 1.0, DAC_VREF_POS_INPUT); + vref.add_route(0, "dac", -1.0, DAC_VREF_NEG_INPUT); MACHINE_CONFIG_END diff --git a/src/mame/drivers/meyc8080.cpp b/src/mame/drivers/meyc8080.cpp index eef08d8ddbf..b8188021728 100644 --- a/src/mame/drivers/meyc8080.cpp +++ b/src/mame/drivers/meyc8080.cpp @@ -607,8 +607,10 @@ MACHINE_CONFIG_START(meyc8080_state::meyc8080) /* audio hardware */ SPEAKER(config, "speaker").front_center(); MCFG_DEVICE_ADD("dac", DAC_2BIT_R2R, 0) MCFG_SOUND_ROUTE(ALL_OUTPUTS, "speaker", 0.66) // unknown DAC - MCFG_DEVICE_ADD("vref", VOLTAGE_REGULATOR, 0) MCFG_VOLTAGE_REGULATOR_OUTPUT(5.0) - MCFG_SOUND_ROUTE(0, "dac", 1.0, DAC_VREF_POS_INPUT) MCFG_SOUND_ROUTE(0, "dac", -1.0, DAC_VREF_NEG_INPUT) + voltage_regulator_device &vref(VOLTAGE_REGULATOR(config, "vref")); + vref.set_output(5.0); + vref.add_route(0, "dac", 1.0, DAC_VREF_POS_INPUT); + vref.add_route(0, "dac", -1.0, DAC_VREF_NEG_INPUT); MACHINE_CONFIG_END diff --git a/src/mame/drivers/micral.cpp b/src/mame/drivers/micral.cpp index 762fd2067f5..650d763e135 100644 --- a/src/mame/drivers/micral.cpp +++ b/src/mame/drivers/micral.cpp @@ -390,13 +390,13 @@ MACHINE_CONFIG_START(micral_state::micral) MCFG_MACHINE_RESET_OVERRIDE(micral_state, micral) // video hardware - MCFG_SCREEN_ADD_MONOCHROME("screen", RASTER, rgb_t::green()) - MCFG_SCREEN_REFRESH_RATE(60) - MCFG_SCREEN_VBLANK_TIME(ATTOSECONDS_IN_USEC(250)) - MCFG_SCREEN_UPDATE_DRIVER(micral_state, screen_update) - MCFG_SCREEN_SIZE(640, 240) - MCFG_SCREEN_VISIBLE_AREA(0, 639, 0, 239) - MCFG_SCREEN_PALETTE("palette") + screen_device &screen(SCREEN(config, "screen", SCREEN_TYPE_RASTER, rgb_t::green())); + screen.set_refresh_hz(60); + screen.set_vblank_time(ATTOSECONDS_IN_USEC(250)); + screen.set_screen_update(FUNC(micral_state::screen_update)); + screen.set_size(640, 240); + screen.set_visarea(0, 639, 0, 239); + screen.set_palette("palette"); PALETTE(config, "palette", palette_device::MONOCHROME); //GFXDECODE(config, "gfxdecode", "palette", gfx_micral); diff --git a/src/mame/drivers/microvsn.cpp b/src/mame/drivers/microvsn.cpp index 07c5c58a791..59e9f7bc6b9 100644 --- a/src/mame/drivers/microvsn.cpp +++ b/src/mame/drivers/microvsn.cpp @@ -663,8 +663,10 @@ MACHINE_CONFIG_START(microvision_state::microvision) /* sound hardware */ SPEAKER(config, "speaker").front_center(); MCFG_DEVICE_ADD("dac", DAC_2BIT_BINARY_WEIGHTED_ONES_COMPLEMENT, 0) MCFG_SOUND_ROUTE(ALL_OUTPUTS, "speaker", 0.25) // unknown DAC - MCFG_DEVICE_ADD("vref", VOLTAGE_REGULATOR, 0) MCFG_VOLTAGE_REGULATOR_OUTPUT(5.0) - MCFG_SOUND_ROUTE(0, "dac", 1.0, DAC_VREF_POS_INPUT) MCFG_SOUND_ROUTE(0, "dac", -1.0, DAC_VREF_NEG_INPUT) + voltage_regulator_device &vref(VOLTAGE_REGULATOR(config, "vref")); + vref.set_output(5.0); + vref.add_route(0, "dac", 1.0, DAC_VREF_POS_INPUT); + vref.add_route(0, "dac", -1.0, DAC_VREF_NEG_INPUT); MCFG_GENERIC_CARTSLOT_ADD("cartslot", generic_plain_slot, "microvision_cart") MCFG_GENERIC_MANDATORY diff --git a/src/mame/drivers/mjsister.cpp b/src/mame/drivers/mjsister.cpp index c150358cc9a..c7b75ce3d11 100644 --- a/src/mame/drivers/mjsister.cpp +++ b/src/mame/drivers/mjsister.cpp @@ -537,8 +537,10 @@ MACHINE_CONFIG_START(mjsister_state::mjsister) aysnd.add_route(ALL_OUTPUTS, "speaker", 0.15); MCFG_DEVICE_ADD("dac", DAC_8BIT_R2R, 0) MCFG_SOUND_ROUTE(ALL_OUTPUTS, "speaker", 0.5) // unknown DAC - MCFG_DEVICE_ADD("vref", VOLTAGE_REGULATOR, 0) MCFG_VOLTAGE_REGULATOR_OUTPUT(5.0) - MCFG_SOUND_ROUTE(0, "dac", 1.0, DAC_VREF_POS_INPUT) MCFG_SOUND_ROUTE(0, "dac", -1.0, DAC_VREF_NEG_INPUT) + voltage_regulator_device &vref(VOLTAGE_REGULATOR(config, "vref")); + vref.set_output(5.0); + vref.add_route(0, "dac", 1.0, DAC_VREF_POS_INPUT); + vref.add_route(0, "dac", -1.0, DAC_VREF_NEG_INPUT); MACHINE_CONFIG_END /************************************* diff --git a/src/mame/drivers/modellot.cpp b/src/mame/drivers/modellot.cpp index 075adc6d962..2521ae49cdb 100644 --- a/src/mame/drivers/modellot.cpp +++ b/src/mame/drivers/modellot.cpp @@ -178,20 +178,21 @@ uint32_t modellot_state::screen_update_modellot(screen_device &screen, bitmap_in return 0; } -MACHINE_CONFIG_START(modellot_state::modellot) +void modellot_state::modellot(machine_config &config) +{ /* basic machine hardware */ - MCFG_DEVICE_ADD("maincpu",Z80, XTAL(4'000'000)) - MCFG_DEVICE_PROGRAM_MAP(mem_map) - MCFG_DEVICE_IO_MAP(io_map) + Z80(config, m_maincpu, XTAL(4'000'000)); + m_maincpu->set_addrmap(AS_PROGRAM, &modellot_state::mem_map); + m_maincpu->set_addrmap(AS_IO, &modellot_state::io_map); /* video hardware */ - MCFG_SCREEN_ADD_MONOCHROME("screen", RASTER, rgb_t::green()) - MCFG_SCREEN_REFRESH_RATE(50) - MCFG_SCREEN_VBLANK_TIME(ATTOSECONDS_IN_USEC(2500)) /* not accurate */ - MCFG_SCREEN_SIZE(64*8, 16*16) - MCFG_SCREEN_VISIBLE_AREA(0, 64*8-1, 0, 16*16-1) - MCFG_SCREEN_UPDATE_DRIVER(modellot_state, screen_update_modellot) - MCFG_SCREEN_PALETTE("palette") + screen_device &screen(SCREEN(config, "screen", SCREEN_TYPE_RASTER, rgb_t::green())); + screen.set_refresh_hz(50); + screen.set_vblank_time(ATTOSECONDS_IN_USEC(2500)); /* not accurate */ + screen.set_size(64*8, 16*16); + screen.set_visarea(0, 64*8-1, 0, 16*16-1); + screen.set_screen_update(FUNC(modellot_state::screen_update_modellot)); + screen.set_palette("palette"); GFXDECODE(config, "gfxdecode", "palette", gfx_modellot); PALETTE(config, "palette", palette_device::MONOCHROME); @@ -199,7 +200,7 @@ MACHINE_CONFIG_START(modellot_state::modellot) /* Devices */ generic_keyboard_device &keyboard(GENERIC_KEYBOARD(config, "keyboard", 0)); keyboard.set_keyboard_callback(FUNC(modellot_state::kbd_put)); -MACHINE_CONFIG_END +} /* ROM definition */ ROM_START( modellot ) diff --git a/src/mame/drivers/murogmbl.cpp b/src/mame/drivers/murogmbl.cpp index 18d51977af9..98951bc0073 100644 --- a/src/mame/drivers/murogmbl.cpp +++ b/src/mame/drivers/murogmbl.cpp @@ -368,8 +368,10 @@ MACHINE_CONFIG_START(murogmbl_state::murogmbl) SPEAKER(config, "speaker").front_center(); MCFG_DEVICE_ADD("dac", DAC_8BIT_R2R, 0) MCFG_SOUND_ROUTE(ALL_OUTPUTS, "speaker", 0.5) // unknown DAC - MCFG_DEVICE_ADD("vref", VOLTAGE_REGULATOR, 0) MCFG_VOLTAGE_REGULATOR_OUTPUT(5.0) - MCFG_SOUND_ROUTE(0, "dac", 1.0, DAC_VREF_POS_INPUT) MCFG_SOUND_ROUTE(0, "dac", -1.0, DAC_VREF_NEG_INPUT) + voltage_regulator_device &vref(VOLTAGE_REGULATOR(config, "vref")); + vref.set_output(5.0); + vref.add_route(0, "dac", 1.0, DAC_VREF_POS_INPUT); + vref.add_route(0, "dac", -1.0, DAC_VREF_NEG_INPUT); MACHINE_CONFIG_END MACHINE_CONFIG_START(slotunbl_state::slotunbl) @@ -392,8 +394,10 @@ MACHINE_CONFIG_START(slotunbl_state::slotunbl) SPEAKER(config, "speaker").front_center(); MCFG_DEVICE_ADD("dac", DAC_8BIT_R2R, 0) MCFG_SOUND_ROUTE(ALL_OUTPUTS, "speaker", 0.5) // unknown DAC - MCFG_DEVICE_ADD("vref", VOLTAGE_REGULATOR, 0) MCFG_VOLTAGE_REGULATOR_OUTPUT(5.0) - MCFG_SOUND_ROUTE(0, "dac", 1.0, DAC_VREF_POS_INPUT) MCFG_SOUND_ROUTE(0, "dac", -1.0, DAC_VREF_NEG_INPUT) + voltage_regulator_device &vref(VOLTAGE_REGULATOR(config, "vref")); + vref.set_output(5.0); + vref.add_route(0, "dac", 1.0, DAC_VREF_POS_INPUT); + vref.add_route(0, "dac", -1.0, DAC_VREF_NEG_INPUT); MACHINE_CONFIG_END ROM_START(murogmbl) diff --git a/src/mame/drivers/mx2178.cpp b/src/mame/drivers/mx2178.cpp index 96d0874aab8..18b06fb7f92 100644 --- a/src/mame/drivers/mx2178.cpp +++ b/src/mame/drivers/mx2178.cpp @@ -131,19 +131,20 @@ void mx2178_state::machine_reset() { } -MACHINE_CONFIG_START(mx2178_state::mx2178) +void mx2178_state::mx2178(machine_config &config) +{ /* basic machine hardware */ - MCFG_DEVICE_ADD(m_maincpu, Z80, XTAL(18'869'600) / 5) // guess - MCFG_DEVICE_PROGRAM_MAP(mx2178_mem) - MCFG_DEVICE_IO_MAP(mx2178_io) + Z80(config, m_maincpu, XTAL(18'869'600) / 5); // guess + m_maincpu->set_addrmap(AS_PROGRAM, &mx2178_state::mx2178_mem); + m_maincpu->set_addrmap(AS_IO, &mx2178_state::mx2178_io); /* video hardware */ - MCFG_SCREEN_ADD_MONOCHROME("screen", RASTER, rgb_t::green()) - MCFG_SCREEN_REFRESH_RATE(60) - MCFG_SCREEN_VBLANK_TIME(ATTOSECONDS_IN_USEC(2500)) // not correct - MCFG_SCREEN_UPDATE_DEVICE("crtc", mc6845_device, screen_update) - MCFG_SCREEN_SIZE(32*8, 32*8) - MCFG_SCREEN_VISIBLE_AREA(0*8, 32*8-1, 2*8, 30*8-1) + screen_device &screen(SCREEN(config, "screen", SCREEN_TYPE_RASTER, rgb_t::green())); + screen.set_refresh_hz(60); + screen.set_vblank_time(ATTOSECONDS_IN_USEC(2500)); // not correct + screen.set_screen_update("crtc", FUNC(mc6845_device::screen_update)); + screen.set_size(32*8, 32*8); + screen.set_visarea(0*8, 32*8-1, 2*8, 30*8-1); GFXDECODE(config, "gfxdecode", m_palette, gfx_mx2178); PALETTE(config, m_palette, palette_device::MONOCHROME); @@ -178,7 +179,7 @@ MACHINE_CONFIG_START(mx2178_state::mx2178) rs232_port_device &rs232b(RS232_PORT(config, "rs232b", default_rs232_devices, "keyboard")); rs232b.rxd_handler().set("acia2", FUNC(acia6850_device::write_rxd)); rs232b.cts_handler().set("acia2", FUNC(acia6850_device::write_cts)); -MACHINE_CONFIG_END +} /* ROM definition */ ROM_START( mx2178 ) diff --git a/src/mame/drivers/nbmj8688.cpp b/src/mame/drivers/nbmj8688.cpp index 27e903fcd6d..a09871adde2 100644 --- a/src/mame/drivers/nbmj8688.cpp +++ b/src/mame/drivers/nbmj8688.cpp @@ -2484,8 +2484,10 @@ MACHINE_CONFIG_START(nbmj8688_state::NBMJDRV_4096) psg.add_route(ALL_OUTPUTS, "speaker", 0.35); MCFG_DEVICE_ADD("dac", DAC_8BIT_R2R, 0) MCFG_SOUND_ROUTE(ALL_OUTPUTS, "speaker", 0.5) // unknown DAC - MCFG_DEVICE_ADD("vref", VOLTAGE_REGULATOR, 0) MCFG_VOLTAGE_REGULATOR_OUTPUT(5.0) - MCFG_SOUND_ROUTE(0, "dac", 1.0, DAC_VREF_POS_INPUT) MCFG_SOUND_ROUTE(0, "dac", -1.0, DAC_VREF_NEG_INPUT) + voltage_regulator_device &vref(VOLTAGE_REGULATOR(config, "vref")); + vref.set_output(5.0); + vref.add_route(0, "dac", 1.0, DAC_VREF_POS_INPUT); + vref.add_route(0, "dac", -1.0, DAC_VREF_NEG_INPUT); MACHINE_CONFIG_END MACHINE_CONFIG_START(nbmj8688_state::NBMJDRV_256) @@ -2671,8 +2673,10 @@ MACHINE_CONFIG_START(nbmj8688_state::mbmj_p16bit_LCD) psg.add_route(ALL_OUTPUTS, "speaker", 0.35); MCFG_DEVICE_ADD("dac", DAC_8BIT_R2R, 0) MCFG_SOUND_ROUTE(ALL_OUTPUTS, "speaker", 0.5) // unknown DAC - MCFG_DEVICE_ADD("vref", VOLTAGE_REGULATOR, 0) MCFG_VOLTAGE_REGULATOR_OUTPUT(5.0) - MCFG_SOUND_ROUTE(0, "dac", 1.0, DAC_VREF_POS_INPUT) MCFG_SOUND_ROUTE(0, "dac", -1.0, DAC_VREF_NEG_INPUT) + voltage_regulator_device &vref(VOLTAGE_REGULATOR(config, "vref")); + vref.set_output(5.0); + vref.add_route(0, "dac", 1.0, DAC_VREF_POS_INPUT); + vref.add_route(0, "dac", -1.0, DAC_VREF_NEG_INPUT); MACHINE_CONFIG_END void nbmj8688_state::bijokkoy(machine_config &config) diff --git a/src/mame/drivers/nbmj8891.cpp b/src/mame/drivers/nbmj8891.cpp index 233225b3b3e..fdb07694965 100644 --- a/src/mame/drivers/nbmj8891.cpp +++ b/src/mame/drivers/nbmj8891.cpp @@ -2217,8 +2217,10 @@ MACHINE_CONFIG_START(nbmj8891_state::gionbana) YM3812(config, "fmsnd", 2500000).add_route(ALL_OUTPUTS, "speaker", 0.5); MCFG_DEVICE_ADD("dac", DAC_8BIT_R2R, 0) MCFG_SOUND_ROUTE(ALL_OUTPUTS, "speaker", 0.37) // unknown DAC - MCFG_DEVICE_ADD("vref", VOLTAGE_REGULATOR, 0) MCFG_VOLTAGE_REGULATOR_OUTPUT(5.0) - MCFG_SOUND_ROUTE(0, "dac", 1.0, DAC_VREF_POS_INPUT) MCFG_SOUND_ROUTE(0, "dac", -1.0, DAC_VREF_NEG_INPUT) + voltage_regulator_device &vref(VOLTAGE_REGULATOR(config, "vref")); + vref.set_output(5.0); + vref.add_route(0, "dac", 1.0, DAC_VREF_POS_INPUT); + vref.add_route(0, "dac", -1.0, DAC_VREF_NEG_INPUT); MACHINE_CONFIG_END MACHINE_CONFIG_START(nbmj8891_state::mgion) diff --git a/src/mame/drivers/nbmj8900.cpp b/src/mame/drivers/nbmj8900.cpp index 1280f139ddc..07d38f14892 100644 --- a/src/mame/drivers/nbmj8900.cpp +++ b/src/mame/drivers/nbmj8900.cpp @@ -333,8 +333,10 @@ MACHINE_CONFIG_START(nbmj8900_state::ohpaipee) MCFG_SOUND_ROUTE(ALL_OUTPUTS, "speaker", 0.7) MCFG_DEVICE_ADD("dac", DAC_8BIT_R2R, 0) MCFG_SOUND_ROUTE(ALL_OUTPUTS, "speaker", 0.42) // unknown DAC - MCFG_DEVICE_ADD("vref", VOLTAGE_REGULATOR, 0) MCFG_VOLTAGE_REGULATOR_OUTPUT(5.0) - MCFG_SOUND_ROUTE(0, "dac", 1.0, DAC_VREF_POS_INPUT) MCFG_SOUND_ROUTE(0, "dac", -1.0, DAC_VREF_NEG_INPUT) + voltage_regulator_device &vref(VOLTAGE_REGULATOR(config, "vref")); + vref.set_output(5.0); + vref.add_route(0, "dac", 1.0, DAC_VREF_POS_INPUT); + vref.add_route(0, "dac", -1.0, DAC_VREF_NEG_INPUT); MACHINE_CONFIG_END MACHINE_CONFIG_START(nbmj8900_state::togenkyo) diff --git a/src/mame/drivers/nbmj8991.cpp b/src/mame/drivers/nbmj8991.cpp index 5e0a6d0f0e2..4567274c79c 100644 --- a/src/mame/drivers/nbmj8991.cpp +++ b/src/mame/drivers/nbmj8991.cpp @@ -1353,8 +1353,10 @@ MACHINE_CONFIG_START(nbmj8991_state::nbmjdrv1) // galkoku YM3812(config, "fmsnd", 25000000/10).add_route(ALL_OUTPUTS, "speaker", 0.7); MCFG_DEVICE_ADD("dac", DAC_8BIT_R2R, 0) MCFG_SOUND_ROUTE(ALL_OUTPUTS, "speaker", 0.25) // unknown DAC - MCFG_DEVICE_ADD("vref", VOLTAGE_REGULATOR, 0) MCFG_VOLTAGE_REGULATOR_OUTPUT(5.0) - MCFG_SOUND_ROUTE(0, "dac", 1.0, DAC_VREF_POS_INPUT) MCFG_SOUND_ROUTE(0, "dac", -1.0, DAC_VREF_NEG_INPUT) + voltage_regulator_device &vref(VOLTAGE_REGULATOR(config, "vref")); + vref.set_output(5.0); + vref.add_route(0, "dac", 1.0, DAC_VREF_POS_INPUT); + vref.add_route(0, "dac", -1.0, DAC_VREF_NEG_INPUT); MACHINE_CONFIG_END diff --git a/src/mame/drivers/nightgal.cpp b/src/mame/drivers/nightgal.cpp index efe2d4af8c7..3a5e3ca6e3d 100644 --- a/src/mame/drivers/nightgal.cpp +++ b/src/mame/drivers/nightgal.cpp @@ -839,8 +839,10 @@ MACHINE_CONFIG_START(nightgal_state::sexygal) sampleclk.signal_handler().set_inputline(m_audiocpu, INPUT_LINE_NMI); MCFG_DEVICE_ADD("dac", DAC_8BIT_R2R, 0) MCFG_SOUND_ROUTE(ALL_OUTPUTS, "mono", 0.25) // unknown DAC - MCFG_DEVICE_ADD("vref", VOLTAGE_REGULATOR, 0) MCFG_VOLTAGE_REGULATOR_OUTPUT(5.0) - MCFG_SOUND_ROUTE(0, "dac", 1.0, DAC_VREF_POS_INPUT) MCFG_SOUND_ROUTE(0, "dac", -1.0, DAC_VREF_NEG_INPUT) + voltage_regulator_device &vref(VOLTAGE_REGULATOR(config, "vref")); + vref.set_output(5.0); + vref.add_route(0, "dac", 1.0, DAC_VREF_POS_INPUT); + vref.add_route(0, "dac", -1.0, DAC_VREF_NEG_INPUT); config.device_remove("aysnd"); diff --git a/src/mame/drivers/nokia_3310.cpp b/src/mame/drivers/nokia_3310.cpp index 92f5b474371..ea7919f0682 100644 --- a/src/mame/drivers/nokia_3310.cpp +++ b/src/mame/drivers/nokia_3310.cpp @@ -700,20 +700,20 @@ static INPUT_PORTS_START( noki3310 ) INPUT_PORTS_END -MACHINE_CONFIG_START(noki3310_state::noki3310) - +void noki3310_state::noki3310(machine_config &config) +{ /* basic machine hardware */ - MCFG_DEVICE_ADD("maincpu", ARM7_BE, 26000000 / 2) // MAD2WD1 13 MHz, clock internally supplied to ARM core can be divided by 2, in sleep mode a 32768 Hz clock is used - MCFG_DEVICE_PROGRAM_MAP(noki3310_map) + ARM7_BE(config, m_maincpu, 26000000 / 2); // MAD2WD1 13 MHz, clock internally supplied to ARM core can be divided by 2, in sleep mode a 32768 Hz clock is used + m_maincpu->set_addrmap(AS_PROGRAM, &noki3310_state::noki3310_map); /* video hardware */ - MCFG_SCREEN_ADD_MONOCHROME("screen", LCD, rgb_t::white()) - MCFG_SCREEN_REFRESH_RATE(60) - MCFG_SCREEN_VBLANK_TIME(ATTOSECONDS_IN_USEC(2500) /* not accurate */) - MCFG_SCREEN_SIZE(84, 48) - MCFG_SCREEN_VISIBLE_AREA(0, 84-1, 0, 48-1) - MCFG_SCREEN_UPDATE_DEVICE("pcd8544", pcd8544_device, screen_update) - MCFG_SCREEN_PALETTE("palette") + screen_device &screen(SCREEN(config, "screen", SCREEN_TYPE_LCD, rgb_t::white())); + screen.set_refresh_hz(60); + screen.set_vblank_time(ATTOSECONDS_IN_USEC(2500) /* not accurate */); + screen.set_size(84, 48); + screen.set_visarea(0, 84-1, 0, 48-1); + screen.set_screen_update("pcd8544", FUNC(pcd8544_device::screen_update)); + screen.set_palette("palette"); PALETTE(config, "palette", palette_device::MONOCHROME_INVERTED); @@ -721,39 +721,35 @@ MACHINE_CONFIG_START(noki3310_state::noki3310) m_pcd8544->set_screen_update_cb(FUNC(noki3310_state::pcd8544_screen_update), this); INTEL_TE28F160(config, "flash"); +} -MACHINE_CONFIG_END - -MACHINE_CONFIG_START(noki3310_state::noki3330) +void noki3310_state::noki3330(machine_config &config) +{ noki3310(config); INTEL_TE28F320(config.replace(), "flash"); +} -MACHINE_CONFIG_END - -MACHINE_CONFIG_START(noki3310_state::noki3410) +void noki3310_state::noki3410(machine_config &config) +{ noki3330(config); - MCFG_SCREEN_MODIFY("screen") - MCFG_SCREEN_SIZE(96, 65) // Philips OM6206 - -MACHINE_CONFIG_END + subdevice("screen")->set_size(96, 65); // Philips OM6206 +} -MACHINE_CONFIG_START(noki3310_state::noki7110) +void noki3310_state::noki7110(machine_config &config) +{ noki3330(config); - MCFG_SCREEN_MODIFY("screen") - MCFG_SCREEN_SIZE(96, 65) // Epson SED1565 - -MACHINE_CONFIG_END + subdevice("screen")->set_size(96, 65); // Epson SED1565 +} -MACHINE_CONFIG_START(noki3310_state::noki6210) +void noki3310_state::noki6210(machine_config &config) +{ noki3330(config); - MCFG_SCREEN_MODIFY("screen") - MCFG_SCREEN_SIZE(96, 60) - -MACHINE_CONFIG_END + subdevice("screen")->set_size(96, 60); +} // MAD2 internal ROMS diff --git a/src/mame/drivers/notetaker.cpp b/src/mame/drivers/notetaker.cpp index 31f10ad4638..af1f2232205 100644 --- a/src/mame/drivers/notetaker.cpp +++ b/src/mame/drivers/notetaker.cpp @@ -870,8 +870,10 @@ MACHINE_CONFIG_START(notetaker_state::notetakr) SPEAKER(config, "rspeaker").front_right(); // TODO: hook DAC up to two HA2425 (sample and hold) chips and hook those up to the speakers MCFG_DEVICE_ADD("dac", DAC1200, 0) MCFG_SOUND_ROUTE(ALL_OUTPUTS, "lspeaker", 0.5) MCFG_SOUND_ROUTE(ALL_OUTPUTS, "rspeaker", 0.5) // unknown DAC - MCFG_DEVICE_ADD("vref", VOLTAGE_REGULATOR, 0) MCFG_VOLTAGE_REGULATOR_OUTPUT(5.0) - MCFG_SOUND_ROUTE(0, "dac", 1.0, DAC_VREF_POS_INPUT) MCFG_SOUND_ROUTE(0, "dac", -1.0, DAC_VREF_NEG_INPUT) + voltage_regulator_device &vref(VOLTAGE_REGULATOR(config, "vref")); + vref.set_output(5.0); + vref.add_route(0, "dac", 1.0, DAC_VREF_POS_INPUT); + vref.add_route(0, "dac", -1.0, DAC_VREF_NEG_INPUT); MACHINE_CONFIG_END void notetaker_state::init_notetakr() diff --git a/src/mame/drivers/nyny.cpp b/src/mame/drivers/nyny.cpp index c8f9650be34..0aaa12b423b 100644 --- a/src/mame/drivers/nyny.cpp +++ b/src/mame/drivers/nyny.cpp @@ -669,8 +669,10 @@ MACHINE_CONFIG_START(nyny_state::nyny) AY8910(config, "ay3", AUDIO_CPU_2_CLOCK).add_route(ALL_OUTPUTS, "speaker", 0.03); MCFG_DEVICE_ADD("dac", DAC_8BIT_R2R, 0) MCFG_SOUND_ROUTE(ALL_OUTPUTS, "speaker", 0.25) // unknown DAC - MCFG_DEVICE_ADD("vref", VOLTAGE_REGULATOR, 0) MCFG_VOLTAGE_REGULATOR_OUTPUT(5.0) - MCFG_SOUND_ROUTE(0, "dac", 1.0, DAC_VREF_POS_INPUT) MCFG_SOUND_ROUTE(0, "dac", -1.0, DAC_VREF_NEG_INPUT) + voltage_regulator_device &vref(VOLTAGE_REGULATOR(config, "vref")); + vref.set_output(5.0); + vref.add_route(0, "dac", 1.0, DAC_VREF_POS_INPUT); + vref.add_route(0, "dac", -1.0, DAC_VREF_NEG_INPUT); MACHINE_CONFIG_END diff --git a/src/mame/drivers/pandoras.cpp b/src/mame/drivers/pandoras.cpp index 9813ce0f170..c3de81d56d0 100644 --- a/src/mame/drivers/pandoras.cpp +++ b/src/mame/drivers/pandoras.cpp @@ -361,8 +361,10 @@ MACHINE_CONFIG_START(pandoras_state::pandoras) aysnd.add_route(ALL_OUTPUTS, "speaker", 0.4); MCFG_DEVICE_ADD("dac", DAC_8BIT_R2R, 0) MCFG_SOUND_ROUTE(ALL_OUTPUTS, "speaker", 0.12) // unknown DAC - MCFG_DEVICE_ADD("vref", VOLTAGE_REGULATOR, 0) MCFG_VOLTAGE_REGULATOR_OUTPUT(5.0) - MCFG_SOUND_ROUTE(0, "dac", 1.0, DAC_VREF_POS_INPUT) MCFG_SOUND_ROUTE(0, "dac", -1.0, DAC_VREF_NEG_INPUT) + voltage_regulator_device &vref(VOLTAGE_REGULATOR(config, "vref")); + vref.set_output(5.0); + vref.add_route(0, "dac", 1.0, DAC_VREF_POS_INPUT); + vref.add_route(0, "dac", -1.0, DAC_VREF_NEG_INPUT); MACHINE_CONFIG_END diff --git a/src/mame/drivers/pastelg.cpp b/src/mame/drivers/pastelg.cpp index 84d48465236..fd226c221ec 100644 --- a/src/mame/drivers/pastelg.cpp +++ b/src/mame/drivers/pastelg.cpp @@ -429,8 +429,10 @@ MACHINE_CONFIG_START(pastelg_state::pastelg) aysnd.add_route(ALL_OUTPUTS, "speaker", 0.35); MCFG_DEVICE_ADD("dac", DAC_8BIT_R2R, 0) MCFG_SOUND_ROUTE(ALL_OUTPUTS, "speaker", 0.25) // unknown DAC - MCFG_DEVICE_ADD("vref", VOLTAGE_REGULATOR, 0) MCFG_VOLTAGE_REGULATOR_OUTPUT(5.0) - MCFG_SOUND_ROUTE(0, "dac", 1.0, DAC_VREF_POS_INPUT) MCFG_SOUND_ROUTE(0, "dac", -1.0, DAC_VREF_NEG_INPUT) + voltage_regulator_device &vref(VOLTAGE_REGULATOR(config, "vref")); + vref.set_output(5.0); + vref.add_route(0, "dac", 1.0, DAC_VREF_POS_INPUT); + vref.add_route(0, "dac", -1.0, DAC_VREF_NEG_INPUT); MACHINE_CONFIG_END /* @@ -487,8 +489,10 @@ MACHINE_CONFIG_START(pastelg_state::threeds) aysnd.add_route(ALL_OUTPUTS, "speaker", 0.35); MCFG_DEVICE_ADD("dac", DAC_8BIT_R2R, 0) MCFG_SOUND_ROUTE(ALL_OUTPUTS, "speaker", 0.25) // unknown DAC - MCFG_DEVICE_ADD("vref", VOLTAGE_REGULATOR, 0) MCFG_VOLTAGE_REGULATOR_OUTPUT(5.0) - MCFG_SOUND_ROUTE(0, "dac", 1.0, DAC_VREF_POS_INPUT) MCFG_SOUND_ROUTE(0, "dac", -1.0, DAC_VREF_NEG_INPUT) + voltage_regulator_device &vref(VOLTAGE_REGULATOR(config, "vref")); + vref.set_output(5.0); + vref.add_route(0, "dac", 1.0, DAC_VREF_POS_INPUT); + vref.add_route(0, "dac", -1.0, DAC_VREF_NEG_INPUT); MACHINE_CONFIG_END diff --git a/src/mame/drivers/peoplepc.cpp b/src/mame/drivers/peoplepc.cpp index 4f320b286f6..fbea7ab999b 100644 --- a/src/mame/drivers/peoplepc.cpp +++ b/src/mame/drivers/peoplepc.cpp @@ -243,7 +243,8 @@ static DEVICE_INPUT_DEFAULTS_START(keyboard) DEVICE_INPUT_DEFAULTS( "RS232_STOPBITS", 0xff, RS232_STOPBITS_1 ) DEVICE_INPUT_DEFAULTS_END -MACHINE_CONFIG_START(peoplepc_state::olypeopl) +void peoplepc_state::olypeopl(machine_config &config) +{ /* basic machine hardware */ I8086(config, m_maincpu, XTAL(14'745'600)/3); m_maincpu->set_addrmap(AS_PROGRAM, &peoplepc_state::peoplepc_map); @@ -269,9 +270,9 @@ MACHINE_CONFIG_START(peoplepc_state::olypeopl) I8255(config, "ppi8255"); - MCFG_SCREEN_ADD_MONOCHROME("screen", RASTER, rgb_t::green()) - MCFG_SCREEN_RAW_PARAMS(XTAL(22'000'000),640,0,640,475,0,475) - MCFG_SCREEN_UPDATE_DEVICE( "h46505", mc6845_device, screen_update ) + screen_device &screen(SCREEN(config, "screen", SCREEN_TYPE_RASTER, rgb_t::green())); + screen.set_raw(XTAL(22'000'000), 640, 0, 640, 475, 0, 475); + screen.set_screen_update("h46505", FUNC(mc6845_device::screen_update)); GFXDECODE(config, m_gfxdecode, m_palette, gfxdecode_device::empty); PALETTE(config, m_palette, palette_device::MONOCHROME); @@ -305,7 +306,7 @@ MACHINE_CONFIG_START(peoplepc_state::olypeopl) kbd.set_option_device_input_defaults("keyboard", DEVICE_INPUT_DEFAULTS_NAME(keyboard)); I8251(config, m_8251ser, 0); -MACHINE_CONFIG_END +} ROM_START( olypeopl ) ROM_REGION(0x2000,"maincpu", 0) diff --git a/src/mame/drivers/plan80.cpp b/src/mame/drivers/plan80.cpp index 7b0dcd634ed..65adfc6b469 100644 --- a/src/mame/drivers/plan80.cpp +++ b/src/mame/drivers/plan80.cpp @@ -233,24 +233,25 @@ static GFXDECODE_START( gfx_plan80 ) GFXDECODE_END -MACHINE_CONFIG_START(plan80_state::plan80) +void plan80_state::plan80(machine_config &config) +{ /* basic machine hardware */ - MCFG_DEVICE_ADD("maincpu",I8080, 2048000) - MCFG_DEVICE_PROGRAM_MAP(plan80_mem) - MCFG_DEVICE_IO_MAP(plan80_io) + I8080(config, m_maincpu, 2048000); + m_maincpu->set_addrmap(AS_PROGRAM, &plan80_state::plan80_mem); + m_maincpu->set_addrmap(AS_IO, &plan80_state::plan80_io); /* video hardware */ - MCFG_SCREEN_ADD_MONOCHROME("screen", RASTER, rgb_t::green()) - MCFG_SCREEN_REFRESH_RATE(50) - MCFG_SCREEN_VBLANK_TIME(ATTOSECONDS_IN_USEC(2500)) /* not accurate */ - MCFG_SCREEN_UPDATE_DRIVER(plan80_state, screen_update) - MCFG_SCREEN_SIZE(48*6, 32*8) - MCFG_SCREEN_VISIBLE_AREA(0, 48*6-1, 0, 32*8-1) - MCFG_SCREEN_PALETTE("palette") + screen_device &screen(SCREEN(config, "screen", SCREEN_TYPE_RASTER, rgb_t::green())); + screen.set_refresh_hz(50); + screen.set_vblank_time(ATTOSECONDS_IN_USEC(2500)); /* not accurate */ + screen.set_screen_update(FUNC(plan80_state::screen_update)); + screen.set_size(48*6, 32*8); + screen.set_visarea(0, 48*6-1, 0, 32*8-1); + screen.set_palette("palette"); GFXDECODE(config, "gfxdecode", "palette", gfx_plan80); PALETTE(config, "palette", palette_device::MONOCHROME); -MACHINE_CONFIG_END +} /* ROM definition */ ROM_START( plan80 ) diff --git a/src/mame/drivers/pockstat.cpp b/src/mame/drivers/pockstat.cpp index 869cfc9bc0e..8aa5e074d04 100644 --- a/src/mame/drivers/pockstat.cpp +++ b/src/mame/drivers/pockstat.cpp @@ -996,8 +996,10 @@ MACHINE_CONFIG_START(pockstat_state::pockstat) SPEAKER(config, "speaker").front_center(); MCFG_DEVICE_ADD("dac", DAC_16BIT_R2R_TWOS_COMPLEMENT, 0) MCFG_SOUND_ROUTE(ALL_OUTPUTS, "speaker", 0.5) // unknown DAC - MCFG_DEVICE_ADD("vref", VOLTAGE_REGULATOR, 0) MCFG_VOLTAGE_REGULATOR_OUTPUT(5.0) - MCFG_SOUND_ROUTE(0, "dac", 1.0, DAC_VREF_POS_INPUT) MCFG_SOUND_ROUTE(0, "dac", -1.0, DAC_VREF_NEG_INPUT) + voltage_regulator_device &vref(VOLTAGE_REGULATOR(config, "vref")); + vref.set_output(5.0); + vref.add_route(0, "dac", 1.0, DAC_VREF_POS_INPUT); + vref.add_route(0, "dac", -1.0, DAC_VREF_NEG_INPUT); /* cartridge */ MCFG_GENERIC_CARTSLOT_ADD("cartslot", generic_plain_slot, "pockstat_cart") diff --git a/src/mame/drivers/pong.cpp b/src/mame/drivers/pong.cpp index fbd9e04442c..c32e3180651 100644 --- a/src/mame/drivers/pong.cpp +++ b/src/mame/drivers/pong.cpp @@ -407,8 +407,10 @@ MACHINE_CONFIG_START(pong_state::pong) /* sound hardware */ SPEAKER(config, "speaker").front_center(); MCFG_DEVICE_ADD("dac", DAC_16BIT_R2R_TWOS_COMPLEMENT, 0) MCFG_SOUND_ROUTE(ALL_OUTPUTS, "speaker", 0.5) // unknown DAC - MCFG_DEVICE_ADD("vref", VOLTAGE_REGULATOR, 0) MCFG_VOLTAGE_REGULATOR_OUTPUT(5.0) - MCFG_SOUND_ROUTE(0, "dac", 1.0, DAC_VREF_POS_INPUT) MCFG_SOUND_ROUTE(0, "dac", -1.0, DAC_VREF_NEG_INPUT) + voltage_regulator_device &vref(VOLTAGE_REGULATOR(config, "vref")); + vref.set_output(5.0); + vref.add_route(0, "dac", 1.0, DAC_VREF_POS_INPUT); + vref.add_route(0, "dac", -1.0, DAC_VREF_NEG_INPUT); MACHINE_CONFIG_END MACHINE_CONFIG_START(breakout_state::breakout) @@ -461,8 +463,10 @@ MACHINE_CONFIG_START(breakout_state::breakout) /* sound hardware */ SPEAKER(config, "speaker").front_center(); MCFG_DEVICE_ADD("dac", DAC_16BIT_R2R_TWOS_COMPLEMENT, 0) MCFG_SOUND_ROUTE(ALL_OUTPUTS, "speaker", 0.5) // unknown DAC - MCFG_DEVICE_ADD("vref", VOLTAGE_REGULATOR, 0) MCFG_VOLTAGE_REGULATOR_OUTPUT(5.0) - MCFG_SOUND_ROUTE(0, "dac", 1.0, DAC_VREF_POS_INPUT) MCFG_SOUND_ROUTE(0, "dac", -1.0, DAC_VREF_NEG_INPUT) + voltage_regulator_device &vref(VOLTAGE_REGULATOR(config, "vref")); + vref.set_output(5.0); + vref.add_route(0, "dac", 1.0, DAC_VREF_POS_INPUT); + vref.add_route(0, "dac", -1.0, DAC_VREF_NEG_INPUT); MACHINE_CONFIG_END MACHINE_CONFIG_START(pong_state::pongf) @@ -507,8 +511,10 @@ MACHINE_CONFIG_START(pong_state::pongd) /* sound hardware */ SPEAKER(config, "speaker").front_center(); MCFG_DEVICE_ADD("dac", DAC_16BIT_R2R_TWOS_COMPLEMENT, 0) MCFG_SOUND_ROUTE(ALL_OUTPUTS, "speaker", 0.5) // unknown DAC - MCFG_DEVICE_ADD("vref", VOLTAGE_REGULATOR, 0) MCFG_VOLTAGE_REGULATOR_OUTPUT(5.0) - MCFG_SOUND_ROUTE(0, "dac", 1.0, DAC_VREF_POS_INPUT) MCFG_SOUND_ROUTE(0, "dac", -1.0, DAC_VREF_NEG_INPUT) + voltage_regulator_device &vref(VOLTAGE_REGULATOR(config, "vref")); + vref.set_output(5.0); + vref.add_route(0, "dac", 1.0, DAC_VREF_POS_INPUT); + vref.add_route(0, "dac", -1.0, DAC_VREF_NEG_INPUT); MACHINE_CONFIG_END /*************************************************************************** diff --git a/src/mame/drivers/ppmast93.cpp b/src/mame/drivers/ppmast93.cpp index a6cac4043bf..0f854a6e485 100644 --- a/src/mame/drivers/ppmast93.cpp +++ b/src/mame/drivers/ppmast93.cpp @@ -407,8 +407,10 @@ MACHINE_CONFIG_START(ppmast93_state::ppmast93) MCFG_SOUND_ROUTE(ALL_OUTPUTS, "speaker", 1.0) MCFG_DEVICE_ADD("dac", DAC_8BIT_R2R, 0) MCFG_SOUND_ROUTE(ALL_OUTPUTS, "speaker", 0.3) // unknown DAC - MCFG_DEVICE_ADD("vref", VOLTAGE_REGULATOR, 0) MCFG_VOLTAGE_REGULATOR_OUTPUT(5.0) - MCFG_SOUND_ROUTE(0, "dac", 1.0, DAC_VREF_POS_INPUT) MCFG_SOUND_ROUTE(0, "dac", -1.0, DAC_VREF_NEG_INPUT) + voltage_regulator_device &vref(VOLTAGE_REGULATOR(config, "vref")); + vref.set_output(5.0); + vref.add_route(0, "dac", 1.0, DAC_VREF_POS_INPUT); + vref.add_route(0, "dac", -1.0, DAC_VREF_NEG_INPUT); MACHINE_CONFIG_END ROM_START( ppmast93 ) diff --git a/src/mame/drivers/pyl601.cpp b/src/mame/drivers/pyl601.cpp index 51f2a1b8519..553c0a4e600 100644 --- a/src/mame/drivers/pyl601.cpp +++ b/src/mame/drivers/pyl601.cpp @@ -544,19 +544,20 @@ static GFXDECODE_START( gfx_pyl601a ) GFXDECODE_ENTRY( "chargen", 0x0000, pyl601a_charlayout, 0, 1 ) GFXDECODE_END -MACHINE_CONFIG_START(pyl601_state::pyl601) +void pyl601_state::pyl601(machine_config &config) +{ /* basic machine hardware */ - MCFG_DEVICE_ADD(m_maincpu, M6800, 1_MHz_XTAL) - MCFG_DEVICE_PROGRAM_MAP(pyl601_mem) - MCFG_DEVICE_VBLANK_INT_DRIVER("screen", pyl601_state, pyl601_interrupt) + M6800(config, m_maincpu, 1_MHz_XTAL); + m_maincpu->set_addrmap(AS_PROGRAM, &pyl601_state::pyl601_mem); + m_maincpu->set_vblank_int("screen", FUNC(pyl601_state::pyl601_interrupt)); /* video hardware */ - MCFG_SCREEN_ADD_MONOCHROME("screen", RASTER, rgb_t::green()) - MCFG_SCREEN_REFRESH_RATE(50) - MCFG_SCREEN_VBLANK_TIME(ATTOSECONDS_IN_USEC(2500)) /* not accurate */ - MCFG_SCREEN_SIZE(640, 200) - MCFG_SCREEN_VISIBLE_AREA(0, 640 - 1, 0, 200 - 1) - MCFG_SCREEN_UPDATE_DEVICE("crtc", mc6845_device, screen_update) + screen_device &screen(SCREEN(config, "screen", SCREEN_TYPE_RASTER, rgb_t::green())); + screen.set_refresh_hz(50); + screen.set_vblank_time(ATTOSECONDS_IN_USEC(2500)); /* not accurate */ + screen.set_size(640, 200); + screen.set_visarea(0, 640 - 1, 0, 200 - 1); + screen.set_screen_update("crtc", FUNC(mc6845_device::screen_update)); GFXDECODE(config, "gfxdecode", m_palette, gfx_pyl601); PALETTE(config, m_palette, palette_device::MONOCHROME); diff --git a/src/mame/drivers/rd100.cpp b/src/mame/drivers/rd100.cpp index eaf58c8fe2b..ef6a9076d93 100644 --- a/src/mame/drivers/rd100.cpp +++ b/src/mame/drivers/rd100.cpp @@ -101,27 +101,28 @@ MACHINE_RESET_MEMBER( rd100_state, rd100 ) { } -MACHINE_CONFIG_START(rd100_state::rd100) +void rd100_state::rd100(machine_config &config) +{ // basic machine hardware - MCFG_DEVICE_ADD("maincpu", MC6809, XTAL(4'000'000)) // MC6809P??? - MCFG_DEVICE_PROGRAM_MAP(mem_map) + MC6809(config, m_maincpu, XTAL(4'000'000)); // MC6809P??? + m_maincpu->set_addrmap(AS_PROGRAM, &rd100_state::mem_map); MCFG_MACHINE_RESET_OVERRIDE(rd100_state, rd100) - MCFG_DEVICE_ADD("pia1", PIA6821, 0) + PIA6821(config, "pia1", 0); - MCFG_DEVICE_ADD("pia2", PIA6821, 0) + PIA6821(config, "pia2", 0); // video hardware - MCFG_SCREEN_ADD_MONOCHROME("screen", RASTER, rgb_t::green()) - MCFG_SCREEN_REFRESH_RATE(60) - MCFG_SCREEN_VBLANK_TIME(ATTOSECONDS_IN_USEC(250)) - MCFG_SCREEN_UPDATE_DRIVER(rd100_state, screen_update) - MCFG_SCREEN_SIZE(64*6, 32*8) - MCFG_SCREEN_VISIBLE_AREA(0, 64*6-1, 0, 32*8-1) + screen_device &screen(SCREEN(config, "screen", SCREEN_TYPE_RASTER, rgb_t::green())); + screen.set_refresh_hz(60); + screen.set_vblank_time(ATTOSECONDS_IN_USEC(250)); + screen.set_screen_update(FUNC(rd100_state::screen_update)); + screen.set_size(64*6, 32*8); + screen.set_visarea(0, 64*6-1, 0, 32*8-1); PALETTE(config, "palette", palette_device::MONOCHROME); //GFXDECODE(config, "gfxdecode", "palette", gfx_rd100); -MACHINE_CONFIG_END +} ROM_START( rd100 ) ROM_REGION( 0x8000, "roms", 0 ) diff --git a/src/mame/drivers/rowamet.cpp b/src/mame/drivers/rowamet.cpp index ffabaf12ac0..dd7fd72fff5 100644 --- a/src/mame/drivers/rowamet.cpp +++ b/src/mame/drivers/rowamet.cpp @@ -237,8 +237,10 @@ MACHINE_CONFIG_START(rowamet_state::rowamet) /* Sound */ SPEAKER(config, "speaker").front_center(); MCFG_DEVICE_ADD("dac", DAC_8BIT_R2R, 0) MCFG_SOUND_ROUTE(ALL_OUTPUTS, "speaker", 0.25) // unknown DAC - MCFG_DEVICE_ADD("vref", VOLTAGE_REGULATOR, 0) MCFG_VOLTAGE_REGULATOR_OUTPUT(5.0) - MCFG_SOUND_ROUTE(0, "dac", 1.0, DAC_VREF_POS_INPUT) MCFG_SOUND_ROUTE(0, "dac", -1.0, DAC_VREF_NEG_INPUT) + voltage_regulator_device &vref(VOLTAGE_REGULATOR(config, "vref")); + vref.set_output(5.0); + vref.add_route(0, "dac", 1.0, DAC_VREF_POS_INPUT); + vref.add_route(0, "dac", -1.0, DAC_VREF_NEG_INPUT); MACHINE_CONFIG_END /*------------------------------------------------------------------- diff --git a/src/mame/drivers/royalmah.cpp b/src/mame/drivers/royalmah.cpp index c8f71683e66..80866ea2747 100644 --- a/src/mame/drivers/royalmah.cpp +++ b/src/mame/drivers/royalmah.cpp @@ -3590,8 +3590,10 @@ MACHINE_CONFIG_START(royalmah_state::jansou) GENERIC_LATCH_8(config, m_soundlatch); MCFG_DEVICE_ADD("dac", DAC_8BIT_R2R, 0) MCFG_SOUND_ROUTE(ALL_OUTPUTS, "speaker", 0.25) // unknown DAC - MCFG_DEVICE_ADD("vref", VOLTAGE_REGULATOR, 0) MCFG_VOLTAGE_REGULATOR_OUTPUT(5.0) - MCFG_SOUND_ROUTE(0, "dac", 1.0, DAC_VREF_POS_INPUT) MCFG_SOUND_ROUTE(0, "dac", -1.0, DAC_VREF_NEG_INPUT) + voltage_regulator_device &vref(VOLTAGE_REGULATOR(config, "vref")); + vref.set_output(5.0); + vref.add_route(0, "dac", 1.0, DAC_VREF_POS_INPUT); + vref.add_route(0, "dac", -1.0, DAC_VREF_NEG_INPUT); MACHINE_CONFIG_END MACHINE_CONFIG_START(royalmah_state::dondenmj) diff --git a/src/mame/drivers/s11.cpp b/src/mame/drivers/s11.cpp index e3e55a08f20..483dc5e6a31 100644 --- a/src/mame/drivers/s11.cpp +++ b/src/mame/drivers/s11.cpp @@ -448,8 +448,10 @@ MACHINE_CONFIG_START(s11_state::s11) SPEAKER(config, "speaker").front_center(); MCFG_DEVICE_ADD("dac", MC1408, 0) MCFG_SOUND_ROUTE(ALL_OUTPUTS, "speaker", 0.5) - MCFG_DEVICE_ADD("vref", VOLTAGE_REGULATOR, 0) MCFG_VOLTAGE_REGULATOR_OUTPUT(5.0) - MCFG_SOUND_ROUTE(0, "dac", 1.0, DAC_VREF_POS_INPUT) MCFG_SOUND_ROUTE(0, "dac", -1.0, DAC_VREF_NEG_INPUT) + voltage_regulator_device &vref(VOLTAGE_REGULATOR(config, "vref")); + vref.set_output(5.0); + vref.add_route(0, "dac", 1.0, DAC_VREF_POS_INPUT); + vref.add_route(0, "dac", -1.0, DAC_VREF_NEG_INPUT); MCFG_SOUND_ROUTE(0, "dac1", 1.0, DAC_VREF_POS_INPUT) MCFG_SOUND_ROUTE(0, "dac1", -1.0, DAC_VREF_NEG_INPUT) SPEAKER(config, "speech").front_center(); diff --git a/src/mame/drivers/s11a.cpp b/src/mame/drivers/s11a.cpp index ddfc4d8fe4f..f9a0956d7d6 100644 --- a/src/mame/drivers/s11a.cpp +++ b/src/mame/drivers/s11a.cpp @@ -240,8 +240,10 @@ MACHINE_CONFIG_START(s11a_state::s11a) SPEAKER(config, "speaker").front_center(); MCFG_DEVICE_ADD("dac", MC1408, 0) MCFG_SOUND_ROUTE(ALL_OUTPUTS, "speaker", 0.25) - MCFG_DEVICE_ADD("vref", VOLTAGE_REGULATOR, 0) MCFG_VOLTAGE_REGULATOR_OUTPUT(5.0) - MCFG_SOUND_ROUTE(0, "dac", 1.0, DAC_VREF_POS_INPUT) MCFG_SOUND_ROUTE(0, "dac", -1.0, DAC_VREF_NEG_INPUT) + voltage_regulator_device &vref(VOLTAGE_REGULATOR(config, "vref")); + vref.set_output(5.0); + vref.add_route(0, "dac", 1.0, DAC_VREF_POS_INPUT); + vref.add_route(0, "dac", -1.0, DAC_VREF_NEG_INPUT); MCFG_SOUND_ROUTE(0, "dac1", 1.0, DAC_VREF_POS_INPUT) MCFG_SOUND_ROUTE(0, "dac1", -1.0, DAC_VREF_NEG_INPUT) SPEAKER(config, "speech").front_center(); diff --git a/src/mame/drivers/s11b.cpp b/src/mame/drivers/s11b.cpp index dd60259533a..f927c14814e 100644 --- a/src/mame/drivers/s11b.cpp +++ b/src/mame/drivers/s11b.cpp @@ -316,8 +316,10 @@ MACHINE_CONFIG_START(s11b_state::s11b) SPEAKER(config, "speaker").front_center(); MCFG_DEVICE_ADD("dac", MC1408, 0) MCFG_SOUND_ROUTE(ALL_OUTPUTS, "speaker", 0.25) - MCFG_DEVICE_ADD("vref", VOLTAGE_REGULATOR, 0) MCFG_VOLTAGE_REGULATOR_OUTPUT(5.0) - MCFG_SOUND_ROUTE(0, "dac", 1.0, DAC_VREF_POS_INPUT) MCFG_SOUND_ROUTE(0, "dac", -1.0, DAC_VREF_NEG_INPUT) + voltage_regulator_device &vref(VOLTAGE_REGULATOR(config, "vref")); + vref.set_output(5.0); + vref.add_route(0, "dac", 1.0, DAC_VREF_POS_INPUT); + vref.add_route(0, "dac", -1.0, DAC_VREF_NEG_INPUT); MCFG_SOUND_ROUTE(0, "dac1", 1.0, DAC_VREF_POS_INPUT) MCFG_SOUND_ROUTE(0, "dac1", -1.0, DAC_VREF_NEG_INPUT) SPEAKER(config, "speech").front_center(); diff --git a/src/mame/drivers/s3.cpp b/src/mame/drivers/s3.cpp index f3bf86966f1..7ba9f279b27 100644 --- a/src/mame/drivers/s3.cpp +++ b/src/mame/drivers/s3.cpp @@ -497,8 +497,10 @@ MACHINE_CONFIG_START(s3_state::s3a) SPEAKER(config, "speaker").front_center(); MCFG_DEVICE_ADD("dac", MC1408, 0) MCFG_SOUND_ROUTE(ALL_OUTPUTS, "speaker", 0.5) - MCFG_DEVICE_ADD("vref", VOLTAGE_REGULATOR, 0) MCFG_VOLTAGE_REGULATOR_OUTPUT(5.0) - MCFG_SOUND_ROUTE(0, "dac", 1.0, DAC_VREF_POS_INPUT) MCFG_SOUND_ROUTE(0, "dac", -1.0, DAC_VREF_NEG_INPUT) + voltage_regulator_device &vref(VOLTAGE_REGULATOR(config, "vref")); + vref.set_output(5.0); + vref.add_route(0, "dac", 1.0, DAC_VREF_POS_INPUT); + vref.add_route(0, "dac", -1.0, DAC_VREF_NEG_INPUT); PIA6821(config, m_pias, 0); m_pias->readpb_handler().set(FUNC(s3_state::sound_r)); diff --git a/src/mame/drivers/s4.cpp b/src/mame/drivers/s4.cpp index ba1f296c4c9..7c75868a195 100644 --- a/src/mame/drivers/s4.cpp +++ b/src/mame/drivers/s4.cpp @@ -491,8 +491,10 @@ MACHINE_CONFIG_START(s4_state::s4a) SPEAKER(config, "speaker").front_center(); MCFG_DEVICE_ADD("dac", MC1408, 0) MCFG_SOUND_ROUTE(ALL_OUTPUTS, "speaker", 0.5) - MCFG_DEVICE_ADD("vref", VOLTAGE_REGULATOR, 0) MCFG_VOLTAGE_REGULATOR_OUTPUT(5.0) - MCFG_SOUND_ROUTE(0, "dac", 1.0, DAC_VREF_POS_INPUT) MCFG_SOUND_ROUTE(0, "dac", -1.0, DAC_VREF_NEG_INPUT) + voltage_regulator_device &vref(VOLTAGE_REGULATOR(config, "vref")); + vref.set_output(5.0); + vref.add_route(0, "dac", 1.0, DAC_VREF_POS_INPUT); + vref.add_route(0, "dac", -1.0, DAC_VREF_NEG_INPUT); PIA6821(config, m_pias, 0); m_pias->readpb_handler().set(FUNC(s4_state::sound_r)); diff --git a/src/mame/drivers/s6.cpp b/src/mame/drivers/s6.cpp index 56160bc2d06..4f89d43330e 100644 --- a/src/mame/drivers/s6.cpp +++ b/src/mame/drivers/s6.cpp @@ -463,8 +463,10 @@ MACHINE_CONFIG_START(s6_state::s6) SPEAKER(config, "speaker").front_center(); MCFG_DEVICE_ADD("dac", MC1408, 0) MCFG_SOUND_ROUTE(ALL_OUTPUTS, "speaker", 0.5) - MCFG_DEVICE_ADD("vref", VOLTAGE_REGULATOR, 0) MCFG_VOLTAGE_REGULATOR_OUTPUT(5.0) - MCFG_SOUND_ROUTE(0, "dac", 1.0, DAC_VREF_POS_INPUT) MCFG_SOUND_ROUTE(0, "dac", -1.0, DAC_VREF_NEG_INPUT) + voltage_regulator_device &vref(VOLTAGE_REGULATOR(config, "vref")); + vref.set_output(5.0); + vref.add_route(0, "dac", 1.0, DAC_VREF_POS_INPUT); + vref.add_route(0, "dac", -1.0, DAC_VREF_NEG_INPUT); SPEAKER(config, "speech").front_center(); MCFG_DEVICE_ADD("hc55516", HC55516, 0) diff --git a/src/mame/drivers/s6a.cpp b/src/mame/drivers/s6a.cpp index a8a20e9ecc7..141c7c09e15 100644 --- a/src/mame/drivers/s6a.cpp +++ b/src/mame/drivers/s6a.cpp @@ -446,8 +446,10 @@ MACHINE_CONFIG_START(s6a_state::s6a) SPEAKER(config, "speaker").front_center(); MCFG_DEVICE_ADD("dac", MC1408, 0) MCFG_SOUND_ROUTE(ALL_OUTPUTS, "speaker", 0.5) - MCFG_DEVICE_ADD("vref", VOLTAGE_REGULATOR, 0) MCFG_VOLTAGE_REGULATOR_OUTPUT(5.0) - MCFG_SOUND_ROUTE(0, "dac", 1.0, DAC_VREF_POS_INPUT) MCFG_SOUND_ROUTE(0, "dac", -1.0, DAC_VREF_NEG_INPUT) + voltage_regulator_device &vref(VOLTAGE_REGULATOR(config, "vref")); + vref.set_output(5.0); + vref.add_route(0, "dac", 1.0, DAC_VREF_POS_INPUT); + vref.add_route(0, "dac", -1.0, DAC_VREF_NEG_INPUT); SPEAKER(config, "speech").front_center(); MCFG_DEVICE_ADD("hc55516", HC55516, 0) diff --git a/src/mame/drivers/s7.cpp b/src/mame/drivers/s7.cpp index 14c856744a2..3fdd8777e22 100644 --- a/src/mame/drivers/s7.cpp +++ b/src/mame/drivers/s7.cpp @@ -498,8 +498,10 @@ MACHINE_CONFIG_START(s7_state::s7) SPEAKER(config, "speaker").front_center(); MCFG_DEVICE_ADD("dac", MC1408, 0) MCFG_SOUND_ROUTE(ALL_OUTPUTS, "speaker", 0.5) - MCFG_DEVICE_ADD("vref", VOLTAGE_REGULATOR, 0) MCFG_VOLTAGE_REGULATOR_OUTPUT(5.0) - MCFG_SOUND_ROUTE(0, "dac", 1.0, DAC_VREF_POS_INPUT) MCFG_SOUND_ROUTE(0, "dac", -1.0, DAC_VREF_NEG_INPUT) + voltage_regulator_device &vref(VOLTAGE_REGULATOR(config, "vref")); + vref.set_output(5.0); + vref.add_route(0, "dac", 1.0, DAC_VREF_POS_INPUT); + vref.add_route(0, "dac", -1.0, DAC_VREF_NEG_INPUT); SPEAKER(config, "speech").front_center(); MCFG_DEVICE_ADD("hc55516", HC55516, 0) diff --git a/src/mame/drivers/s8.cpp b/src/mame/drivers/s8.cpp index a8a567c99e3..8957d56dd13 100644 --- a/src/mame/drivers/s8.cpp +++ b/src/mame/drivers/s8.cpp @@ -369,8 +369,10 @@ MACHINE_CONFIG_START(s8_state::s8) SPEAKER(config, "speaker").front_center(); MCFG_DEVICE_ADD("dac", MC1408, 0) MCFG_SOUND_ROUTE(ALL_OUTPUTS, "speaker", 0.5) - MCFG_DEVICE_ADD("vref", VOLTAGE_REGULATOR, 0) MCFG_VOLTAGE_REGULATOR_OUTPUT(5.0) - MCFG_SOUND_ROUTE(0, "dac", 1.0, DAC_VREF_POS_INPUT) MCFG_SOUND_ROUTE(0, "dac", -1.0, DAC_VREF_NEG_INPUT) + voltage_regulator_device &vref(VOLTAGE_REGULATOR(config, "vref")); + vref.set_output(5.0); + vref.add_route(0, "dac", 1.0, DAC_VREF_POS_INPUT); + vref.add_route(0, "dac", -1.0, DAC_VREF_NEG_INPUT); PIA6821(config, m_pias, 0); m_pias->readpa_handler().set(FUNC(s8_state::sound_r)); diff --git a/src/mame/drivers/s8a.cpp b/src/mame/drivers/s8a.cpp index 9eb3ff69f20..75316f551a7 100644 --- a/src/mame/drivers/s8a.cpp +++ b/src/mame/drivers/s8a.cpp @@ -341,8 +341,10 @@ MACHINE_CONFIG_START(s8a_state::s8a) SPEAKER(config, "speaker").front_center(); MCFG_DEVICE_ADD("dac", MC1408, 0) MCFG_SOUND_ROUTE(ALL_OUTPUTS, "speaker", 0.5) - MCFG_DEVICE_ADD("vref", VOLTAGE_REGULATOR, 0) MCFG_VOLTAGE_REGULATOR_OUTPUT(5.0) - MCFG_SOUND_ROUTE(0, "dac", 1.0, DAC_VREF_POS_INPUT) MCFG_SOUND_ROUTE(0, "dac", -1.0, DAC_VREF_NEG_INPUT) + voltage_regulator_device &vref(VOLTAGE_REGULATOR(config, "vref")); + vref.set_output(5.0); + vref.add_route(0, "dac", 1.0, DAC_VREF_POS_INPUT); + vref.add_route(0, "dac", -1.0, DAC_VREF_NEG_INPUT); PIA6821(config, m_pias, 0); m_pias->readpa_handler().set(FUNC(s8a_state::sound_r)); diff --git a/src/mame/drivers/s9.cpp b/src/mame/drivers/s9.cpp index 75639234967..8768bf0a070 100644 --- a/src/mame/drivers/s9.cpp +++ b/src/mame/drivers/s9.cpp @@ -375,8 +375,10 @@ MACHINE_CONFIG_START(s9_state::s9) SPEAKER(config, "speaker").front_center(); MCFG_DEVICE_ADD("dac", MC1408, 0) MCFG_SOUND_ROUTE(ALL_OUTPUTS, "speaker", 0.5) - MCFG_DEVICE_ADD("vref", VOLTAGE_REGULATOR, 0) MCFG_VOLTAGE_REGULATOR_OUTPUT(5.0) - MCFG_SOUND_ROUTE(0, "dac", 1.0, DAC_VREF_POS_INPUT) MCFG_SOUND_ROUTE(0, "dac", -1.0, DAC_VREF_NEG_INPUT) + voltage_regulator_device &vref(VOLTAGE_REGULATOR(config, "vref")); + vref.set_output(5.0); + vref.add_route(0, "dac", 1.0, DAC_VREF_POS_INPUT); + vref.add_route(0, "dac", -1.0, DAC_VREF_NEG_INPUT); SPEAKER(config, "speech").front_center(); MCFG_DEVICE_ADD("hc55516", HC55516, 0) diff --git a/src/mame/drivers/sbasketb.cpp b/src/mame/drivers/sbasketb.cpp index 149426546b1..67466747cf4 100644 --- a/src/mame/drivers/sbasketb.cpp +++ b/src/mame/drivers/sbasketb.cpp @@ -233,8 +233,10 @@ MACHINE_CONFIG_START(sbasketb_state::sbasketb) MCFG_DEVICE_ADD(m_soundbrd, TRACKFLD_AUDIO, 0, m_audiocpu, m_vlm) MCFG_DEVICE_ADD(m_dac, DAC_8BIT_R2R, 0) MCFG_SOUND_ROUTE(ALL_OUTPUTS, "speaker", 0.4) // unknown DAC - MCFG_DEVICE_ADD("vref", VOLTAGE_REGULATOR, 0) MCFG_VOLTAGE_REGULATOR_OUTPUT(5.0) - MCFG_SOUND_ROUTE(0, "dac", 1.0, DAC_VREF_POS_INPUT) MCFG_SOUND_ROUTE(0, "dac", -1.0, DAC_VREF_NEG_INPUT) + voltage_regulator_device &vref(VOLTAGE_REGULATOR(config, "vref")); + vref.set_output(5.0); + vref.add_route(0, "dac", 1.0, DAC_VREF_POS_INPUT); + vref.add_route(0, "dac", -1.0, DAC_VREF_NEG_INPUT); MCFG_DEVICE_ADD(m_sn, SN76489, XTAL(14'318'181) / 8) MCFG_SOUND_ROUTE(ALL_OUTPUTS, "speaker", 1.0) diff --git a/src/mame/drivers/seicross.cpp b/src/mame/drivers/seicross.cpp index 8f528f730f8..46dcb2b48a6 100644 --- a/src/mame/drivers/seicross.cpp +++ b/src/mame/drivers/seicross.cpp @@ -432,8 +432,10 @@ MACHINE_CONFIG_START(seicross_state::no_nvram) aysnd.add_route(ALL_OUTPUTS, "speaker", 0.25); MCFG_DEVICE_ADD("dac", DAC_4BIT_R2R, 0) MCFG_SOUND_ROUTE(ALL_OUTPUTS, "speaker", 0.12) // unknown DAC - MCFG_DEVICE_ADD("vref", VOLTAGE_REGULATOR, 0) MCFG_VOLTAGE_REGULATOR_OUTPUT(5.0) - MCFG_SOUND_ROUTE(0, "dac", 1.0, DAC_VREF_POS_INPUT) MCFG_SOUND_ROUTE(0, "dac", -1.0, DAC_VREF_NEG_INPUT) + voltage_regulator_device &vref(VOLTAGE_REGULATOR(config, "vref")); + vref.set_output(5.0); + vref.add_route(0, "dac", 1.0, DAC_VREF_POS_INPUT); + vref.add_route(0, "dac", -1.0, DAC_VREF_NEG_INPUT); MACHINE_CONFIG_END diff --git a/src/mame/drivers/senjyo.cpp b/src/mame/drivers/senjyo.cpp index fd7f171019a..a5e3cd7dc91 100644 --- a/src/mame/drivers/senjyo.cpp +++ b/src/mame/drivers/senjyo.cpp @@ -595,8 +595,10 @@ MACHINE_CONFIG_START(senjyo_state::senjyo) MCFG_SOUND_ROUTE(ALL_OUTPUTS, "speaker", 0.5) MCFG_DEVICE_ADD("dac", DAC_4BIT_R2R, 0) MCFG_SOUND_ROUTE(ALL_OUTPUTS, "speaker", 0.05) // unknown DAC - MCFG_DEVICE_ADD("vref", VOLTAGE_REGULATOR, 0) MCFG_VOLTAGE_REGULATOR_OUTPUT(5.0) - MCFG_SOUND_ROUTE(0, "dac", 1.0, DAC_VREF_POS_INPUT) MCFG_SOUND_ROUTE(0, "dac", -1.0, DAC_VREF_NEG_INPUT) + voltage_regulator_device &vref(VOLTAGE_REGULATOR(config, "vref")); + vref.set_output(5.0); + vref.add_route(0, "dac", 1.0, DAC_VREF_POS_INPUT); + vref.add_route(0, "dac", -1.0, DAC_VREF_NEG_INPUT); MACHINE_CONFIG_END diff --git a/src/mame/drivers/shangkid.cpp b/src/mame/drivers/shangkid.cpp index 72bafe4d2ad..d1b017aeff1 100644 --- a/src/mame/drivers/shangkid.cpp +++ b/src/mame/drivers/shangkid.cpp @@ -421,8 +421,10 @@ MACHINE_CONFIG_START(shangkid_state::chinhero) SPEAKER(config, "speaker").front_center(); MCFG_DEVICE_ADD("dac", DAC_8BIT_R2R, 0) MCFG_SOUND_ROUTE(ALL_OUTPUTS, "speaker", 0.25) // unknown DAC - MCFG_DEVICE_ADD("vref", VOLTAGE_REGULATOR, 0) MCFG_VOLTAGE_REGULATOR_OUTPUT(5.0) - MCFG_SOUND_ROUTE(0, "dac", 1.0, DAC_VREF_POS_INPUT) MCFG_SOUND_ROUTE(0, "dac", -1.0, DAC_VREF_NEG_INPUT) + voltage_regulator_device &vref(VOLTAGE_REGULATOR(config, "vref")); + vref.set_output(5.0); + vref.add_route(0, "dac", 1.0, DAC_VREF_POS_INPUT); + vref.add_route(0, "dac", -1.0, DAC_VREF_NEG_INPUT); AY8910(config, m_aysnd, XTAL(18'432'000)/12); /* verified on pcb */ m_aysnd->port_a_write_callback().set(FUNC(shangkid_state::chinhero_ay8910_porta_w)); diff --git a/src/mame/drivers/shisen.cpp b/src/mame/drivers/shisen.cpp index 3723a682912..05a5fbd5ac2 100644 --- a/src/mame/drivers/shisen.cpp +++ b/src/mame/drivers/shisen.cpp @@ -258,8 +258,10 @@ MACHINE_CONFIG_START(shisen_state::shisen) ymsnd.add_route(1, "rspeaker", 0.5); MCFG_DEVICE_ADD("dac", DAC_8BIT_R2R, 0) MCFG_SOUND_ROUTE(ALL_OUTPUTS, "lspeaker", 0.25) MCFG_SOUND_ROUTE(ALL_OUTPUTS, "rspeaker", 0.25) // unknown DAC - MCFG_DEVICE_ADD("vref", VOLTAGE_REGULATOR, 0) MCFG_VOLTAGE_REGULATOR_OUTPUT(5.0) - MCFG_SOUND_ROUTE(0, "dac", 1.0, DAC_VREF_POS_INPUT) MCFG_SOUND_ROUTE(0, "dac", -1.0, DAC_VREF_NEG_INPUT) + voltage_regulator_device &vref(VOLTAGE_REGULATOR(config, "vref")); + vref.set_output(5.0); + vref.add_route(0, "dac", 1.0, DAC_VREF_POS_INPUT); + vref.add_route(0, "dac", -1.0, DAC_VREF_NEG_INPUT); MACHINE_CONFIG_END diff --git a/src/mame/drivers/ssozumo.cpp b/src/mame/drivers/ssozumo.cpp index efab2602a00..d6455b6c985 100644 --- a/src/mame/drivers/ssozumo.cpp +++ b/src/mame/drivers/ssozumo.cpp @@ -228,8 +228,10 @@ MACHINE_CONFIG_START(ssozumo_state::ssozumo) YM2149(config, "ay2", 1500000).add_route(ALL_OUTPUTS, "speaker", 0.3); MCFG_DEVICE_ADD("dac", DAC_8BIT_R2R, 0) MCFG_SOUND_ROUTE(ALL_OUTPUTS, "speaker", 0.3) // unknown DAC - MCFG_DEVICE_ADD("vref", VOLTAGE_REGULATOR, 0) MCFG_VOLTAGE_REGULATOR_OUTPUT(5.0) - MCFG_SOUND_ROUTE(0, "dac", 1.0, DAC_VREF_POS_INPUT) MCFG_SOUND_ROUTE(0, "dac", -1.0, DAC_VREF_NEG_INPUT) + voltage_regulator_device &vref(VOLTAGE_REGULATOR(config, "vref")); + vref.set_output(5.0); + vref.add_route(0, "dac", 1.0, DAC_VREF_POS_INPUT); + vref.add_route(0, "dac", -1.0, DAC_VREF_NEG_INPUT); MACHINE_CONFIG_END diff --git a/src/mame/drivers/sys9002.cpp b/src/mame/drivers/sys9002.cpp index 4e1413fd225..8015eb12407 100644 --- a/src/mame/drivers/sys9002.cpp +++ b/src/mame/drivers/sys9002.cpp @@ -121,19 +121,20 @@ static DEVICE_INPUT_DEFAULTS_START( uart2 ) DEVICE_INPUT_DEFAULTS( "RS232_STOPBITS", 0xff, RS232_STOPBITS_1 ) DEVICE_INPUT_DEFAULTS_END -MACHINE_CONFIG_START(sys9002_state::sys9002) +void sys9002_state::sys9002(machine_config &config) +{ /* basic machine hardware */ - MCFG_DEVICE_ADD("maincpu",I8085A, XTAL(2'000'000)) // XTAL not visible on images - MCFG_DEVICE_PROGRAM_MAP(sys9002_mem) - MCFG_DEVICE_IO_MAP(sys9002_io) + I8085A(config, m_maincpu, XTAL(2'000'000)); // XTAL not visible on images + m_maincpu->set_addrmap(AS_PROGRAM, &sys9002_state::sys9002_mem); + m_maincpu->set_addrmap(AS_IO, &sys9002_state::sys9002_io); /* video hardware */ - MCFG_SCREEN_ADD_MONOCHROME("screen", RASTER, rgb_t::green()) - MCFG_SCREEN_REFRESH_RATE(60) - MCFG_SCREEN_VBLANK_TIME(ATTOSECONDS_IN_USEC(2500)) // not correct - MCFG_SCREEN_UPDATE_DEVICE("crtc", mc6845_device, screen_update) - MCFG_SCREEN_SIZE(32*8, 32*8) - MCFG_SCREEN_VISIBLE_AREA(0*8, 32*8-1, 2*8, 30*8-1) + screen_device &screen(SCREEN(config, "screen", SCREEN_TYPE_RASTER, rgb_t::green())); + screen.set_refresh_hz(60); + screen.set_vblank_time(ATTOSECONDS_IN_USEC(2500)); // not correct + screen.set_screen_update("crtc", FUNC(mc6845_device::screen_update)); + screen.set_size(32*8, 32*8); + screen.set_visarea(0*8, 32*8-1, 2*8, 30*8-1); //GFXDECODE(config, "gfxdecode", m_palette, gfx_mx2178); PALETTE(config, m_palette, palette_device::MONOCHROME); @@ -172,7 +173,7 @@ MACHINE_CONFIG_START(sys9002_state::sys9002) rs232b.dsr_handler().set("uart2", FUNC(i8251_device::write_dsr)); rs232b.cts_handler().set("uart2", FUNC(i8251_device::write_cts)); rs232b.set_option_device_input_defaults("terminal", DEVICE_INPUT_DEFAULTS_NAME(uart2)); -MACHINE_CONFIG_END +} /* ROM definition */ ROM_START( sys9002 ) diff --git a/src/mame/drivers/tagteam.cpp b/src/mame/drivers/tagteam.cpp index 185e8590854..bfe9e31078d 100644 --- a/src/mame/drivers/tagteam.cpp +++ b/src/mame/drivers/tagteam.cpp @@ -242,8 +242,10 @@ MACHINE_CONFIG_START(tagteam_state::tagteam) AY8910(config, "ay2", XTAL(12'000'000)/8).add_route(ALL_OUTPUTS, "speaker", 0.25); MCFG_DEVICE_ADD("dac", DAC_8BIT_R2R, 0) MCFG_SOUND_ROUTE(ALL_OUTPUTS, "speaker", 0.25) // unknown DAC - MCFG_DEVICE_ADD("vref", VOLTAGE_REGULATOR, 0) MCFG_VOLTAGE_REGULATOR_OUTPUT(5.0) - MCFG_SOUND_ROUTE(0, "dac", 1.0, DAC_VREF_POS_INPUT) MCFG_SOUND_ROUTE(0, "dac", -1.0, DAC_VREF_NEG_INPUT) + voltage_regulator_device &vref(VOLTAGE_REGULATOR(config, "vref")); + vref.set_output(5.0); + vref.add_route(0, "dac", 1.0, DAC_VREF_POS_INPUT); + vref.add_route(0, "dac", -1.0, DAC_VREF_NEG_INPUT); MACHINE_CONFIG_END diff --git a/src/mame/drivers/taito.cpp b/src/mame/drivers/taito.cpp index 451e141ca5b..466cb0926b0 100644 --- a/src/mame/drivers/taito.cpp +++ b/src/mame/drivers/taito.cpp @@ -366,8 +366,10 @@ MACHINE_CONFIG_START(taito_state::taito) SPEAKER(config, "speaker").front_center(); MCFG_DEVICE_ADD("dac", DAC_8BIT_R2R, 0) MCFG_SOUND_ROUTE(ALL_OUTPUTS, "speaker", 0.475) // unknown DAC - MCFG_DEVICE_ADD("vref", VOLTAGE_REGULATOR, 0) MCFG_VOLTAGE_REGULATOR_OUTPUT(5.0) - MCFG_SOUND_ROUTE(0, "dac", 1.0, DAC_VREF_POS_INPUT) MCFG_SOUND_ROUTE(0, "dac", -1.0, DAC_VREF_NEG_INPUT) + voltage_regulator_device &vref(VOLTAGE_REGULATOR(config, "vref")); + vref.set_output(5.0); + vref.add_route(0, "dac", 1.0, DAC_VREF_POS_INPUT); + vref.add_route(0, "dac", -1.0, DAC_VREF_NEG_INPUT); PIA6821(config, m_pia); //m_pia->readpa_handler().set(FUNC(taito_state::pia_pa_r)); diff --git a/src/mame/drivers/tdv2324.cpp b/src/mame/drivers/tdv2324.cpp index a370e364103..a183d2dc99b 100644 --- a/src/mame/drivers/tdv2324.cpp +++ b/src/mame/drivers/tdv2324.cpp @@ -278,11 +278,11 @@ MACHINE_CONFIG_START(tdv2324_state::tdv2324) MCFG_DEVICE_PROGRAM_MAP(tdv2324_fdc_mem) // video hardware - MCFG_SCREEN_ADD_MONOCHROME(SCREEN_TAG, RASTER, rgb_t::green()) - MCFG_SCREEN_REFRESH_RATE(50) - MCFG_SCREEN_UPDATE_DRIVER(tdv2324_state, screen_update) - MCFG_SCREEN_SIZE(800, 400) - MCFG_SCREEN_VISIBLE_AREA(0, 800-1, 0, 400-1) + screen_device &screen(SCREEN(config, SCREEN_TAG, SCREEN_TYPE_RASTER, rgb_t::green())); + screen.set_refresh_hz(50); + screen.set_screen_update(FUNC(tdv2324_state::screen_update)); + screen.set_size(800, 400); + screen.set_visarea(0, 800-1, 0, 400-1); PALETTE(config, "palette", palette_device::MONOCHROME); diff --git a/src/mame/drivers/trs80m2.cpp b/src/mame/drivers/trs80m2.cpp index ba20c64bce1..72f863a2dc1 100644 --- a/src/mame/drivers/trs80m2.cpp +++ b/src/mame/drivers/trs80m2.cpp @@ -707,7 +707,8 @@ void trs80m2_state::machine_reset() // MACHINE_CONFIG( trs80m2 ) //------------------------------------------------- -MACHINE_CONFIG_START(trs80m2_state::trs80m2) +void trs80m2_state::trs80m2(machine_config &config) +{ // basic machine hardware Z80(config, m_maincpu, 8_MHz_XTAL / 2); m_maincpu->set_daisy_config(trs80m2_daisy_chain); @@ -715,12 +716,12 @@ MACHINE_CONFIG_START(trs80m2_state::trs80m2) m_maincpu->set_addrmap(AS_IO, &trs80m2_state::z80_io); // video hardware - MCFG_SCREEN_ADD_MONOCHROME(SCREEN_TAG, RASTER, rgb_t::green()) - MCFG_SCREEN_REFRESH_RATE(60) - MCFG_SCREEN_VBLANK_TIME(ATTOSECONDS_IN_USEC(0)) - MCFG_SCREEN_UPDATE_DRIVER(trs80m2_state, screen_update) - MCFG_SCREEN_SIZE(640, 480) - MCFG_SCREEN_VISIBLE_AREA(0, 639, 0, 479) + screen_device &screen(SCREEN(config, SCREEN_TAG, SCREEN_TYPE_RASTER, rgb_t::green())); + screen.set_refresh_hz(60); + screen.set_vblank_time(ATTOSECONDS_IN_USEC(0)); + screen.set_screen_update(FUNC(trs80m2_state::screen_update)); + screen.set_size(640, 480); + screen.set_visarea(0, 639, 0, 479); PALETTE(config, m_palette, palette_device::MONOCHROME); @@ -786,14 +787,15 @@ MACHINE_CONFIG_START(trs80m2_state::trs80m2) // software list SOFTWARE_LIST(config, "flop_list").set_original("trs80m2"); -MACHINE_CONFIG_END +} //------------------------------------------------- // MACHINE_CONFIG( trs80m16 ) //------------------------------------------------- -MACHINE_CONFIG_START(trs80m16_state::trs80m16) +void trs80m16_state::trs80m16(machine_config &config) +{ // basic machine hardware Z80(config, m_maincpu, 8_MHz_XTAL / 2); m_maincpu->set_daisy_config(trs80m2_daisy_chain); @@ -801,17 +803,17 @@ MACHINE_CONFIG_START(trs80m16_state::trs80m16) m_maincpu->set_addrmap(AS_IO, &trs80m16_state::m16_z80_io); m_maincpu->set_irq_acknowledge_callback(AM9519A_TAG, FUNC(am9519_device::iack_cb)); - MCFG_DEVICE_ADD(M68000_TAG, M68000, 24_MHz_XTAL / 4) - MCFG_DEVICE_PROGRAM_MAP(m68000_mem) - MCFG_DEVICE_DISABLE() + M68000(config, m_subcpu, 24_MHz_XTAL / 4); + m_subcpu->set_addrmap(AS_PROGRAM, &trs80m16_state::m68000_mem); + m_subcpu->set_disable(); // video hardware - MCFG_SCREEN_ADD_MONOCHROME(SCREEN_TAG, RASTER, rgb_t::green()) - MCFG_SCREEN_REFRESH_RATE(60) - MCFG_SCREEN_VBLANK_TIME(ATTOSECONDS_IN_USEC(0)) - MCFG_SCREEN_UPDATE_DRIVER(trs80m2_state, screen_update) - MCFG_SCREEN_SIZE(640, 480) - MCFG_SCREEN_VISIBLE_AREA(0, 639, 0, 479) + screen_device &screen(SCREEN(config, SCREEN_TAG, SCREEN_TYPE_RASTER, rgb_t::green())); + screen.set_refresh_hz(60); + screen.set_vblank_time(ATTOSECONDS_IN_USEC(0)); + screen.set_screen_update(FUNC(trs80m2_state::screen_update)); + screen.set_size(640, 480); + screen.set_visarea(0, 639, 0, 479); PALETTE(config, m_palette, palette_device::MONOCHROME); @@ -859,7 +861,7 @@ MACHINE_CONFIG_START(trs80m16_state::trs80m16) sio.out_int_callback().set_inputline(m_maincpu, INPUT_LINE_IRQ0); AM9519(config, m_uic, 0); - m_uic->out_int_callback().set_inputline(M68000_TAG, M68K_IRQ_5); + m_uic->out_int_callback().set_inputline(m_subcpu, M68K_IRQ_5); CENTRONICS(config, m_centronics, centronics_devices, "printer"); m_centronics->ack_handler().set(m_pio, FUNC(z80pio_device::strobe_b)); @@ -880,7 +882,7 @@ MACHINE_CONFIG_START(trs80m16_state::trs80m16) // software list SOFTWARE_LIST(config, "flop_list").set_original("trs80m2"); -MACHINE_CONFIG_END +} diff --git a/src/mame/drivers/trucocl.cpp b/src/mame/drivers/trucocl.cpp index 8a3b0dcb8a3..f6b24acf2f4 100644 --- a/src/mame/drivers/trucocl.cpp +++ b/src/mame/drivers/trucocl.cpp @@ -205,8 +205,10 @@ MACHINE_CONFIG_START(trucocl_state::trucocl) SPEAKER(config, "speaker").front_center(); MCFG_DEVICE_ADD("dac", DAC_8BIT_R2R, 0) MCFG_SOUND_ROUTE(ALL_OUTPUTS, "speaker", 0.5) // unknown DAC - MCFG_DEVICE_ADD("vref", VOLTAGE_REGULATOR, 0) MCFG_VOLTAGE_REGULATOR_OUTPUT(5.0) - MCFG_SOUND_ROUTE(0, "dac", 1.0, DAC_VREF_POS_INPUT) MCFG_SOUND_ROUTE(0, "dac", -1.0, DAC_VREF_NEG_INPUT) + voltage_regulator_device &vref(VOLTAGE_REGULATOR(config, "vref")); + vref.set_output(5.0); + vref.add_route(0, "dac", 1.0, DAC_VREF_POS_INPUT); + vref.add_route(0, "dac", -1.0, DAC_VREF_NEG_INPUT); MACHINE_CONFIG_END /*************************************************************************** diff --git a/src/mame/drivers/ts803.cpp b/src/mame/drivers/ts803.cpp index 78c94cc2121..af40eda32b6 100644 --- a/src/mame/drivers/ts803.cpp +++ b/src/mame/drivers/ts803.cpp @@ -422,18 +422,19 @@ static const z80_daisy_config daisy_chain[] = { nullptr } }; -MACHINE_CONFIG_START(ts803_state::ts803) +void ts803_state::ts803(machine_config &config) +{ Z80(config, m_maincpu, 16_MHz_XTAL / 4); m_maincpu->set_addrmap(AS_PROGRAM, &ts803_state::ts803_mem); m_maincpu->set_addrmap(AS_IO, &ts803_state::ts803_io); m_maincpu->set_daisy_config(daisy_chain); /* video hardware */ - MCFG_SCREEN_ADD_MONOCHROME("screen", RASTER, rgb_t::green()) - MCFG_SCREEN_REFRESH_RATE(60) - MCFG_SCREEN_SIZE(640,240) - MCFG_SCREEN_VISIBLE_AREA(0, 640-1, 0, 240-1) - MCFG_SCREEN_UPDATE_DEVICE("crtc", sy6545_1_device, screen_update) + screen_device &screen(SCREEN(config, "screen", SCREEN_TYPE_RASTER, rgb_t::green())); + screen.set_refresh_hz(60); + screen.set_size(640,240); + screen.set_visarea(0, 640-1, 0, 240-1); + screen.set_screen_update("crtc", FUNC(sy6545_1_device::screen_update)); PALETTE(config, m_palette, palette_device::MONOCHROME); /* crtc */ @@ -468,7 +469,7 @@ MACHINE_CONFIG_START(ts803_state::ts803) m_fdc->intrq_wr_callback().set("sti", FUNC(z80sti_device::i7_w)); FLOPPY_CONNECTOR(config, "fdc:0", ts803_floppies, "525dd", floppy_image_device::default_floppy_formats).enable_sound(true); FLOPPY_CONNECTOR(config, "fdc:1", ts803_floppies, "525dd", floppy_image_device::default_floppy_formats).enable_sound(true); -MACHINE_CONFIG_END +} /* ROM definition */ ROM_START( ts803h ) diff --git a/src/mame/drivers/tsamurai.cpp b/src/mame/drivers/tsamurai.cpp index 13a3dd1d30b..1d8d5cf0d89 100644 --- a/src/mame/drivers/tsamurai.cpp +++ b/src/mame/drivers/tsamurai.cpp @@ -808,8 +808,10 @@ MACHINE_CONFIG_START(tsamurai_state::vsgongf) AY8910(config,"aysnd", XTAL(24'000'000)/8).add_route(ALL_OUTPUTS, "speaker", 0.1); MCFG_DEVICE_ADD("dac", DAC_8BIT_R2R, 0) MCFG_SOUND_ROUTE(ALL_OUTPUTS, "speaker", 0.1) // unknown DAC - MCFG_DEVICE_ADD("vref", VOLTAGE_REGULATOR, 0) MCFG_VOLTAGE_REGULATOR_OUTPUT(5.0) - MCFG_SOUND_ROUTE(0, "dac", 1.0, DAC_VREF_POS_INPUT) MCFG_SOUND_ROUTE(0, "dac", -1.0, DAC_VREF_NEG_INPUT) + voltage_regulator_device &vref(VOLTAGE_REGULATOR(config, "vref")); + vref.set_output(5.0); + vref.add_route(0, "dac", 1.0, DAC_VREF_POS_INPUT); + vref.add_route(0, "dac", -1.0, DAC_VREF_NEG_INPUT); MACHINE_CONFIG_END diff --git a/src/mame/drivers/tsispch.cpp b/src/mame/drivers/tsispch.cpp index 106e6782950..df3dbf5aaa4 100644 --- a/src/mame/drivers/tsispch.cpp +++ b/src/mame/drivers/tsispch.cpp @@ -406,8 +406,10 @@ MACHINE_CONFIG_START(tsispch_state::prose2k) /* sound hardware */ SPEAKER(config, "speaker").front_center(); MCFG_DEVICE_ADD("dac", DAC_12BIT_R2R, 0) MCFG_SOUND_ROUTE(ALL_OUTPUTS, "speaker", 1.0) // unknown DAC (TODO: correctly figure out how the DAC works; apparently it is connected to the serial output of the upd7720, which will be "fun" to connect up) - MCFG_DEVICE_ADD("vref", VOLTAGE_REGULATOR, 0) MCFG_VOLTAGE_REGULATOR_OUTPUT(5.0) - MCFG_SOUND_ROUTE(0, "dac", 1.0, DAC_VREF_POS_INPUT) MCFG_SOUND_ROUTE(0, "dac", -1.0, DAC_VREF_NEG_INPUT) + voltage_regulator_device &vref(VOLTAGE_REGULATOR(config, "vref")); + vref.set_output(5.0); + vref.add_route(0, "dac", 1.0, DAC_VREF_POS_INPUT); + vref.add_route(0, "dac", -1.0, DAC_VREF_NEG_INPUT); rs232_port_device &rs232(RS232_PORT(config, "rs232", default_rs232_devices, "terminal")); rs232.rxd_handler().set("i8251a_u15", FUNC(i8251_device::write_rxd)); diff --git a/src/mame/drivers/univac.cpp b/src/mame/drivers/univac.cpp index a01ac42885d..a0b33aabd68 100644 --- a/src/mame/drivers/univac.cpp +++ b/src/mame/drivers/univac.cpp @@ -562,7 +562,8 @@ static const z80_daisy_config daisy_chain[] = }; // All frequencies confirmed -MACHINE_CONFIG_START(univac_state::uts20) +void univac_state::uts20(machine_config &config) +{ /* basic machine hardware */ Z80(config, m_maincpu, 18.432_MHz_XTAL / 6); // 3.072 MHz m_maincpu->set_addrmap(AS_PROGRAM, &univac_state::mem_map); @@ -585,9 +586,9 @@ MACHINE_CONFIG_START(univac_state::uts20) latch_e0.q_out_cb<6>().set(FUNC(univac_state::porte6_w)); /* video hardware */ - MCFG_SCREEN_ADD_MONOCHROME("screen", RASTER, rgb_t::green()) - MCFG_SCREEN_UPDATE_DRIVER(univac_state, screen_update) - MCFG_SCREEN_PALETTE("palette") + SCREEN(config, m_screen, SCREEN_TYPE_RASTER, rgb_t::green()); + m_screen->set_screen_update(FUNC(univac_state::screen_update)); + m_screen->set_palette("palette"); PALETTE(config, "palette", palette_device::MONOCHROME); GFXDECODE(config, "gfxdecode", "palette", gfx_uts); @@ -627,13 +628,13 @@ MACHINE_CONFIG_START(univac_state::uts20) RS232_PORT(config, m_printer, default_rs232_devices, nullptr); m_printer->dcd_handler().set(FUNC(univac_state::aux_dsr_w)); -MACHINE_CONFIG_END +} -MACHINE_CONFIG_START(univac_state::uts10) +void univac_state::uts10(machine_config &config) +{ uts20(config); - MCFG_DEVICE_MODIFY( "maincpu" ) - MCFG_DEVICE_PROGRAM_MAP(uts10_map) - MCFG_DEVICE_IO_MAP(uts10_io_map) + m_maincpu->set_addrmap(AS_PROGRAM, &univac_state::uts10_map); + m_maincpu->set_addrmap(AS_IO, &univac_state::uts10_io_map); config.device_remove("keybclk"); m_ctc->zc_callback<2>().set(m_sio, FUNC(z80sio_device::rxtxcb_w)); @@ -644,7 +645,7 @@ MACHINE_CONFIG_START(univac_state::uts10) UTS_KEYBOARD(config.replace(), m_keyboard, uts10_keyboards, "extw"); m_keyboard->rxd_callback().set(FUNC(univac_state::aux_rxd_w)); -MACHINE_CONFIG_END +} /* ROM definition */ diff --git a/src/mame/drivers/vcombat.cpp b/src/mame/drivers/vcombat.cpp index 15906c31337..3fdbd97bea0 100644 --- a/src/mame/drivers/vcombat.cpp +++ b/src/mame/drivers/vcombat.cpp @@ -604,8 +604,10 @@ MACHINE_CONFIG_START(vcombat_state::vcombat) SPEAKER(config, "speaker").front_center(); MCFG_DEVICE_ADD("dac", DAC_10BIT_R2R, 0) MCFG_SOUND_ROUTE(ALL_OUTPUTS, "speaker", 1.0) // unknown DAC - MCFG_DEVICE_ADD("vref", VOLTAGE_REGULATOR, 0) MCFG_VOLTAGE_REGULATOR_OUTPUT(5.0) - MCFG_SOUND_ROUTE(0, "dac", 1.0, DAC_VREF_POS_INPUT) MCFG_SOUND_ROUTE(0, "dac", -1.0, DAC_VREF_NEG_INPUT) + voltage_regulator_device &vref(VOLTAGE_REGULATOR(config, "vref")); + vref.set_output(5.0); + vref.add_route(0, "dac", 1.0, DAC_VREF_POS_INPUT); + vref.add_route(0, "dac", -1.0, DAC_VREF_NEG_INPUT); MACHINE_CONFIG_END @@ -639,8 +641,10 @@ MACHINE_CONFIG_START(vcombat_state::shadfgtr) SPEAKER(config, "speaker").front_center(); MCFG_DEVICE_ADD("dac", DAC_10BIT_R2R, 0) MCFG_SOUND_ROUTE(ALL_OUTPUTS, "speaker", 1.0) // unknown DAC - MCFG_DEVICE_ADD("vref", VOLTAGE_REGULATOR, 0) MCFG_VOLTAGE_REGULATOR_OUTPUT(5.0) - MCFG_SOUND_ROUTE(0, "dac", 1.0, DAC_VREF_POS_INPUT) MCFG_SOUND_ROUTE(0, "dac", -1.0, DAC_VREF_NEG_INPUT) + voltage_regulator_device &vref(VOLTAGE_REGULATOR(config, "vref")); + vref.set_output(5.0); + vref.add_route(0, "dac", 1.0, DAC_VREF_POS_INPUT); + vref.add_route(0, "dac", -1.0, DAC_VREF_NEG_INPUT); MACHINE_CONFIG_END diff --git a/src/mame/drivers/vidbrain.cpp b/src/mame/drivers/vidbrain.cpp index e9128222dd0..3a1f5664052 100644 --- a/src/mame/drivers/vidbrain.cpp +++ b/src/mame/drivers/vidbrain.cpp @@ -417,8 +417,10 @@ MACHINE_CONFIG_START(vidbrain_state::vidbrain) // sound hardware SPEAKER(config, "speaker").front_center(); MCFG_DEVICE_ADD("dac", DAC_2BIT_R2R, 0) MCFG_SOUND_ROUTE(ALL_OUTPUTS, "speaker", 0.167) // 74ls74.u16 + 120k + 56k - MCFG_DEVICE_ADD("vref", VOLTAGE_REGULATOR, 0) MCFG_VOLTAGE_REGULATOR_OUTPUT(5.0) - MCFG_SOUND_ROUTE(0, "dac", 1.0, DAC_VREF_POS_INPUT) MCFG_SOUND_ROUTE(0, "dac", -1.0, DAC_VREF_NEG_INPUT) + voltage_regulator_device &vref(VOLTAGE_REGULATOR(config, "vref")); + vref.set_output(5.0); + vref.add_route(0, "dac", 1.0, DAC_VREF_POS_INPUT); + vref.add_route(0, "dac", -1.0, DAC_VREF_NEG_INPUT); // devices F3853(config, m_smi, XTAL(4'000'000)/2); diff --git a/src/mame/drivers/videopkr.cpp b/src/mame/drivers/videopkr.cpp index 16b8bcf1381..c5288e78308 100644 --- a/src/mame/drivers/videopkr.cpp +++ b/src/mame/drivers/videopkr.cpp @@ -1260,8 +1260,10 @@ MACHINE_CONFIG_START(videopkr_state::videopkr) /* sound hardware */ SPEAKER(config, "speaker").front_center(); MCFG_DEVICE_ADD("dac", MC1408, 0) MCFG_SOUND_ROUTE(ALL_OUTPUTS, "speaker", 0.275) - MCFG_DEVICE_ADD("vref", VOLTAGE_REGULATOR, 0) MCFG_VOLTAGE_REGULATOR_OUTPUT(5.0) - MCFG_SOUND_ROUTE(0, "dac", 1.0, DAC_VREF_POS_INPUT) MCFG_SOUND_ROUTE(0, "dac", -1.0, DAC_VREF_NEG_INPUT) + voltage_regulator_device &vref(VOLTAGE_REGULATOR(config, "vref")); + vref.set_output(5.0); + vref.add_route(0, "dac", 1.0, DAC_VREF_POS_INPUT); + vref.add_route(0, "dac", -1.0, DAC_VREF_NEG_INPUT); MACHINE_CONFIG_END diff --git a/src/mame/drivers/vt100.cpp b/src/mame/drivers/vt100.cpp index 6b23e1d5787..e3ce3b9daf7 100644 --- a/src/mame/drivers/vt100.cpp +++ b/src/mame/drivers/vt100.cpp @@ -319,11 +319,11 @@ MACHINE_CONFIG_START(vt100_state::vt100) MCFG_DEVICE_IRQ_ACKNOWLEDGE_DEVICE("rstbuf", rst_pos_buffer_device, inta_cb) /* video hardware */ - MCFG_SCREEN_ADD_MONOCHROME("screen", RASTER, rgb_t::green()) - MCFG_SCREEN_RAW_PARAMS(XTAL(24'073'400)*2/3, 102*10, 0, 80*10, 262, 0, 25*10) - //MCFG_SCREEN_RAW_PARAMS(XTAL(24'073'400), 170*9, 0, 132*9, 262, 0, 25*10) - MCFG_SCREEN_UPDATE_DRIVER(vt100_state, screen_update_vt100) - MCFG_SCREEN_PALETTE("vt100_video:palette") + screen_device &screen(SCREEN(config, "screen", SCREEN_TYPE_RASTER, rgb_t::green())); + screen.set_raw(XTAL(24'073'400)*2/3, 102*10, 0, 80*10, 262, 0, 25*10); + //screen.set_raw(XTAL(24'073'400), 170*9, 0, 132*9, 262, 0, 25*10); + screen.set_screen_update(FUNC(vt100_state::screen_update_vt100)); + screen.set_palette("vt100_video:palette"); GFXDECODE(config, "gfxdecode", "vt100_video:palette", gfx_vt100); // MCFG_PALETTE_ADD_MONOCHROME("palette") diff --git a/src/mame/drivers/wildpkr.cpp b/src/mame/drivers/wildpkr.cpp index 3779bba3157..871a9fb1dad 100644 --- a/src/mame/drivers/wildpkr.cpp +++ b/src/mame/drivers/wildpkr.cpp @@ -533,8 +533,10 @@ MACHINE_CONFIG_START(wildpkr_state::tabpkr) SPEAKER(config, "mono").front_center(); MCFG_DEVICE_ADD("dac", AD557, 0) MCFG_SOUND_ROUTE(ALL_OUTPUTS, "mono", 0.50) - MCFG_DEVICE_ADD("vref", VOLTAGE_REGULATOR, 0) MCFG_VOLTAGE_REGULATOR_OUTPUT(5.0) - MCFG_SOUND_ROUTE(0, "dac", 1.0, DAC_VREF_POS_INPUT) MCFG_SOUND_ROUTE(0, "dac", -1.0, DAC_VREF_NEG_INPUT) + voltage_regulator_device &vref(VOLTAGE_REGULATOR(config, "vref")); + vref.set_output(5.0); + vref.add_route(0, "dac", 1.0, DAC_VREF_POS_INPUT); + vref.add_route(0, "dac", -1.0, DAC_VREF_NEG_INPUT); MACHINE_CONFIG_END diff --git a/src/mame/drivers/williams.cpp b/src/mame/drivers/williams.cpp index 73c659ed1f2..bc01cd3c2fa 100644 --- a/src/mame/drivers/williams.cpp +++ b/src/mame/drivers/williams.cpp @@ -1515,8 +1515,10 @@ MACHINE_CONFIG_START(williams_state::williams) /* sound hardware */ SPEAKER(config, "speaker").front_center(); MCFG_DEVICE_ADD("dac", MC1408, 0) MCFG_SOUND_ROUTE(ALL_OUTPUTS, "speaker", 0.25) // mc1408.ic6 - MCFG_DEVICE_ADD("vref", VOLTAGE_REGULATOR, 0) MCFG_VOLTAGE_REGULATOR_OUTPUT(5.0) - MCFG_SOUND_ROUTE(0, "dac", 1.0, DAC_VREF_POS_INPUT) MCFG_SOUND_ROUTE(0, "dac", -1.0, DAC_VREF_NEG_INPUT) + voltage_regulator_device &vref(VOLTAGE_REGULATOR(config, "vref")); + vref.set_output(5.0); + vref.add_route(0, "dac", 1.0, DAC_VREF_POS_INPUT); + vref.add_route(0, "dac", -1.0, DAC_VREF_NEG_INPUT); /* pia */ INPUT_MERGER_ANY_HIGH(config, "mainirq").output_handler().set_inputline(m_maincpu, M6809_IRQ_LINE); @@ -1771,8 +1773,10 @@ MACHINE_CONFIG_START(williams2_state::williams2) /* sound hardware */ SPEAKER(config, "speaker").front_center(); MCFG_DEVICE_ADD("dac", MC1408, 0) MCFG_SOUND_ROUTE(ALL_OUTPUTS, "speaker", 0.5) // unknown DAC - MCFG_DEVICE_ADD("vref", VOLTAGE_REGULATOR, 0) MCFG_VOLTAGE_REGULATOR_OUTPUT(5.0) - MCFG_SOUND_ROUTE(0, "dac", 1.0, DAC_VREF_POS_INPUT) MCFG_SOUND_ROUTE(0, "dac", -1.0, DAC_VREF_NEG_INPUT) + voltage_regulator_device &vref(VOLTAGE_REGULATOR(config, "vref")); + vref.set_output(5.0); + vref.add_route(0, "dac", 1.0, DAC_VREF_POS_INPUT); + vref.add_route(0, "dac", -1.0, DAC_VREF_NEG_INPUT); /* pia */ INPUT_MERGER_ANY_HIGH(config, "mainirq").output_handler().set_inputline(m_maincpu, M6809_IRQ_LINE); diff --git a/src/mame/drivers/wmg.cpp b/src/mame/drivers/wmg.cpp index e16fbcef082..64bfe67b7a5 100644 --- a/src/mame/drivers/wmg.cpp +++ b/src/mame/drivers/wmg.cpp @@ -550,8 +550,10 @@ MACHINE_CONFIG_START(wmg_state::wmg) SPEAKER(config, "speaker").front_center(); MCFG_DEVICE_ADD("dac", MC1408, 0) MCFG_SOUND_ROUTE(ALL_OUTPUTS, "speaker", 0.25) // unknown DAC - MCFG_DEVICE_ADD("vref", VOLTAGE_REGULATOR, 0) MCFG_VOLTAGE_REGULATOR_OUTPUT(5.0) - MCFG_SOUND_ROUTE(0, "dac", 1.0, DAC_VREF_POS_INPUT) MCFG_SOUND_ROUTE(0, "dac", -1.0, DAC_VREF_NEG_INPUT) + voltage_regulator_device &vref(VOLTAGE_REGULATOR(config, "vref")); + vref.set_output(5.0); + vref.add_route(0, "dac", 1.0, DAC_VREF_POS_INPUT); + vref.add_route(0, "dac", -1.0, DAC_VREF_NEG_INPUT); /* pia */ INPUT_MERGER_ANY_HIGH(config, "mainirq").output_handler().set_inputline(m_maincpu, M6809_IRQ_LINE); diff --git a/src/mame/drivers/xtheball.cpp b/src/mame/drivers/xtheball.cpp index f32cd5b36e9..7c3845d26f0 100644 --- a/src/mame/drivers/xtheball.cpp +++ b/src/mame/drivers/xtheball.cpp @@ -332,8 +332,10 @@ MACHINE_CONFIG_START(xtheball_state::xtheball) SPEAKER(config, "speaker").front_center(); MCFG_DEVICE_ADD("dac", ZN428E, 0) MCFG_SOUND_ROUTE(ALL_OUTPUTS, "speaker", 0.5) - MCFG_DEVICE_ADD("vref", VOLTAGE_REGULATOR, 0) MCFG_VOLTAGE_REGULATOR_OUTPUT(5.0) - MCFG_SOUND_ROUTE(0, "dac", 1.0, DAC_VREF_POS_INPUT) MCFG_SOUND_ROUTE(0, "dac", -1.0, DAC_VREF_NEG_INPUT) + voltage_regulator_device &vref(VOLTAGE_REGULATOR(config, "vref")); + vref.set_output(5.0); + vref.add_route(0, "dac", 1.0, DAC_VREF_POS_INPUT); + vref.add_route(0, "dac", -1.0, DAC_VREF_NEG_INPUT); MACHINE_CONFIG_END diff --git a/src/mame/video/abc1600.cpp b/src/mame/video/abc1600.cpp index 5fa0fa95a9f..d40c864ad74 100644 --- a/src/mame/video/abc1600.cpp +++ b/src/mame/video/abc1600.cpp @@ -199,12 +199,13 @@ MC6845_ON_UPDATE_ADDR_CHANGED( abc1600_mover_device::crtc_update ) // device_add_mconfig - add device configuration //------------------------------------------------- -MACHINE_CONFIG_START(abc1600_mover_device::device_add_mconfig) +void abc1600_mover_device::device_add_mconfig(machine_config &config) +{ config.set_default_layout(layout_abc1600); - MCFG_SCREEN_ADD_MONOCHROME(SCREEN_TAG, RASTER, rgb_t::green()) - MCFG_SCREEN_UPDATE_DRIVER(abc1600_mover_device, screen_update) - MCFG_SCREEN_RAW_PARAMS(XTAL(64'000'000), 0x3e0, 0, 0x300, 0x433, 0, 0x400) + screen_device &screen(SCREEN(config, SCREEN_TAG, SCREEN_TYPE_RASTER, rgb_t::green())); + screen.set_screen_update(FUNC(abc1600_mover_device::screen_update)); + screen.set_raw(XTAL(64'000'000), 0x3e0, 0, 0x300, 0x433, 0, 0x400); PALETTE(config, m_palette, palette_device::MONOCHROME); @@ -214,7 +215,7 @@ MACHINE_CONFIG_START(abc1600_mover_device::device_add_mconfig) m_crtc->set_char_width(32); m_crtc->set_update_row_callback(FUNC(abc1600_mover_device::crtc_update_row), this); m_crtc->set_on_update_addr_change_callback(FUNC(abc1600_mover_device::crtc_update), this); -MACHINE_CONFIG_END +} //************************************************************************** diff --git a/src/mame/video/abc800.cpp b/src/mame/video/abc800.cpp index aa90892636f..a8fdc99771b 100644 --- a/src/mame/video/abc800.cpp +++ b/src/mame/video/abc800.cpp @@ -276,7 +276,8 @@ uint32_t abc800m_state::screen_update(screen_device &screen, bitmap_rgb32 &bitma // MACHINE_CONFIG_START( abc800m_video ) //------------------------------------------------- -MACHINE_CONFIG_START(abc800m_state::abc800m_video) +void abc800m_state::abc800m_video(machine_config &config) +{ mc6845_device &mc6845(MC6845(config, MC6845_TAG, ABC800_CCLK)); mc6845.set_screen(SCREEN_TAG); mc6845.set_show_border_area(true); @@ -284,9 +285,9 @@ MACHINE_CONFIG_START(abc800m_state::abc800m_video) mc6845.set_update_row_callback(FUNC(abc800m_state::abc800m_update_row), this); mc6845.out_vsync_callback().set(m_dart, FUNC(z80dart_device::rib_w)).invert(); - MCFG_SCREEN_ADD_MONOCHROME(SCREEN_TAG, RASTER, rgb_t(0xff, 0xff, 0x00)) - MCFG_SCREEN_UPDATE_DRIVER(abc800m_state, screen_update) - MCFG_SCREEN_RAW_PARAMS(XTAL(12'000'000), 0x300, 0, 0x1e0, 0x13a, 0, 0xf0) + screen_device &screen(SCREEN(config, SCREEN_TAG, SCREEN_TYPE_RASTER, rgb_t(0xff, 0xff, 0x00))); + screen.set_screen_update(FUNC(abc800m_state::screen_update)); + screen.set_raw(XTAL(12'000'000), 0x300, 0, 0x1e0, 0x13a, 0, 0xf0); PALETTE(config, m_palette, palette_device::MONOCHROME); -MACHINE_CONFIG_END +} diff --git a/src/mame/video/abc802.cpp b/src/mame/video/abc802.cpp index 70f088fb0fb..cdf044c6679 100644 --- a/src/mame/video/abc802.cpp +++ b/src/mame/video/abc802.cpp @@ -178,7 +178,8 @@ WRITE_LINE_MEMBER( abc802_state::vs_w ) // MACHINE_CONFIG_START( abc802_video ) //------------------------------------------------- -MACHINE_CONFIG_START(abc802_state::abc802_video) +void abc802_state::abc802_video(machine_config &config) +{ mc6845_device &mc6845(MC6845(config, MC6845_TAG, ABC800_CCLK)); mc6845.set_screen(SCREEN_TAG); mc6845.set_show_border_area(true); @@ -187,9 +188,9 @@ MACHINE_CONFIG_START(abc802_state::abc802_video) mc6845.out_vsync_callback().set(FUNC(abc802_state::vs_w)); mc6845.out_vsync_callback().append(m_dart, FUNC(z80dart_device::rib_w)).invert(); - MCFG_SCREEN_ADD_MONOCHROME(SCREEN_TAG, RASTER, rgb_t::amber()) - MCFG_SCREEN_UPDATE_DEVICE(MC6845_TAG, mc6845_device, screen_update) - MCFG_SCREEN_RAW_PARAMS(XTAL(12'000'000), 0x300, 0, 0x1e0, 0x13a, 0, 0xf0) + screen_device &screen(SCREEN(config, SCREEN_TAG, SCREEN_TYPE_RASTER, rgb_t::amber())); + screen.set_screen_update(MC6845_TAG, FUNC(mc6845_device::screen_update)); + screen.set_raw(XTAL(12'000'000), 0x300, 0, 0x1e0, 0x13a, 0, 0xf0); PALETTE(config, m_palette, palette_device::MONOCHROME); -MACHINE_CONFIG_END +} diff --git a/src/mame/video/newbrain.cpp b/src/mame/video/newbrain.cpp index 06ff23234e6..4e49210aeaa 100644 --- a/src/mame/video/newbrain.cpp +++ b/src/mame/video/newbrain.cpp @@ -186,14 +186,15 @@ GFXDECODE_END /* Machine Drivers */ -MACHINE_CONFIG_START(newbrain_state::newbrain_video) - MCFG_SCREEN_ADD_MONOCHROME(SCREEN_TAG, RASTER, rgb_t::green()) - MCFG_SCREEN_UPDATE_DRIVER(newbrain_state, screen_update) - MCFG_SCREEN_REFRESH_RATE(50) - MCFG_SCREEN_SIZE(640, 250) - MCFG_SCREEN_VISIBLE_AREA(0, 639, 0, 249) +void newbrain_state::newbrain_video(machine_config &config) +{ + screen_device &screen(SCREEN(config, SCREEN_TAG, SCREEN_TYPE_RASTER, rgb_t::green())); + screen.set_screen_update(FUNC(newbrain_state::screen_update)); + screen.set_refresh_hz(50); + screen.set_size(640, 250); + screen.set_visarea(0, 639, 0, 249); PALETTE(config, m_palette, palette_device::MONOCHROME); GFXDECODE(config, "gfxdecode", m_palette, gfx_newbrain); -MACHINE_CONFIG_END +} diff --git a/src/mame/video/v1050.cpp b/src/mame/video/v1050.cpp index fe13a93ea24..d8bd838ef3c 100644 --- a/src/mame/video/v1050.cpp +++ b/src/mame/video/v1050.cpp @@ -109,7 +109,8 @@ void v1050_state::video_start() /* Machine Drivers */ -MACHINE_CONFIG_START(v1050_state::v1050_video) +void v1050_state::v1050_video(machine_config &config) +{ H46505(config, m_crtc, 15.36_MHz_XTAL/8); m_crtc->set_screen(SCREEN_TAG); m_crtc->set_show_border_area(true); @@ -117,12 +118,12 @@ MACHINE_CONFIG_START(v1050_state::v1050_video) m_crtc->set_update_row_callback(FUNC(v1050_state::crtc_update_row), this); m_crtc->out_vsync_callback().set(FUNC(v1050_state::crtc_vs_w)); - MCFG_SCREEN_ADD_MONOCHROME(SCREEN_TAG, RASTER, rgb_t::green()) - MCFG_SCREEN_UPDATE_DEVICE(H46505_TAG, h46505_device, screen_update) - MCFG_SCREEN_REFRESH_RATE(60) - MCFG_SCREEN_VBLANK_TIME(ATTOSECONDS_IN_USEC(2500)) - MCFG_SCREEN_SIZE(640, 400) - MCFG_SCREEN_VISIBLE_AREA(0,640-1, 0, 400-1) + screen_device &screen(SCREEN(config, SCREEN_TAG, SCREEN_TYPE_RASTER, rgb_t::green())); + screen.set_screen_update(H46505_TAG, FUNC(h46505_device::screen_update)); + screen.set_refresh_hz(60); + screen.set_vblank_time(ATTOSECONDS_IN_USEC(2500)); + screen.set_size(640, 400); + screen.set_visarea(0,640-1, 0, 400-1); PALETTE(config, m_palette, palette_device::MONOCHROME_HIGHLIGHT); -MACHINE_CONFIG_END +} -- cgit v1.2.3