summaryrefslogtreecommitdiffstatshomepage
path: root/src/devices
diff options
context:
space:
mode:
author Vas Crabb <vas@vastheman.com>2018-04-30 23:32:41 +1000
committer Vas Crabb <vas@vastheman.com>2018-04-30 23:32:41 +1000
commitb60c852f119db04564731fa86d73e0a986771258 (patch)
treef3f48148a13484a407b7054c78239258708c5a18 /src/devices
parent89b356a0f5d874f2cabe2e0a96ccfb611b735109 (diff)
Set finder tag relative to current device being configured rather than
the finder's owner. This meand you no longer need to care about the your relationship to the object being configured and a lot of ^ and : can disappear. There's a bit reduction in string pasting in macros from this. Yes, I have to make this apply to devcb etc. as well, but that's a job for another day. There's probably at least one thing broken by this where optional objects are involved. Most things can be solved by just getting rid of the now-problematic ^ and : prefixes.
Diffstat (limited to 'src/devices')
-rw-r--r--src/devices/bus/a2bus/pc_xporter.cpp2
-rw-r--r--src/devices/bus/bml3/bml3bus.h2
-rw-r--r--src/devices/bus/cbmiec/c1571.cpp2
-rw-r--r--src/devices/bus/cbmiec/fd2000.cpp6
-rw-r--r--src/devices/bus/ep64/exp.h2
-rw-r--r--src/devices/bus/intellec4/intellec4.h12
-rw-r--r--src/devices/bus/iq151/iq151.h2
-rw-r--r--src/devices/bus/isa/isa.cpp17
-rw-r--r--src/devices/bus/isa/isa.h11
-rw-r--r--src/devices/bus/macpds/pds_tpdfpd.cpp5
-rw-r--r--src/devices/bus/macpds/pds_tpdfpd.h1
-rw-r--r--src/devices/bus/msx_slot/bunsetsu.h4
-rw-r--r--src/devices/bus/msx_slot/disk.h12
-rw-r--r--src/devices/bus/msx_slot/fs4600.h2
-rw-r--r--src/devices/bus/msx_slot/music.h2
-rw-r--r--src/devices/bus/msx_slot/panasonic08.h2
-rw-r--r--src/devices/bus/msx_slot/rom.h2
-rw-r--r--src/devices/bus/msx_slot/sony08.h5
-rw-r--r--src/devices/bus/nubus/nubus_48gc.cpp7
-rw-r--r--src/devices/bus/nubus/nubus_48gc.h1
-rw-r--r--src/devices/bus/nubus/nubus_m2hires.cpp5
-rw-r--r--src/devices/bus/nubus/nubus_m2hires.h1
-rw-r--r--src/devices/bus/nubus/nubus_m2video.cpp5
-rw-r--r--src/devices/bus/nubus/nubus_m2video.h1
-rw-r--r--src/devices/bus/nubus/nubus_radiustpd.cpp5
-rw-r--r--src/devices/bus/nubus/nubus_radiustpd.h1
-rw-r--r--src/devices/bus/nubus/nubus_spec8.cpp3
-rw-r--r--src/devices/bus/nubus/nubus_spec8.h1
-rw-r--r--src/devices/bus/nubus/nubus_specpdq.cpp3
-rw-r--r--src/devices/bus/nubus/nubus_specpdq.h1
-rw-r--r--src/devices/bus/nubus/nubus_wsportrait.cpp5
-rw-r--r--src/devices/bus/nubus/nubus_wsportrait.h1
-rw-r--r--src/devices/bus/nubus/pds30_30hr.cpp5
-rw-r--r--src/devices/bus/nubus/pds30_30hr.h1
-rw-r--r--src/devices/bus/nubus/pds30_cb264.cpp5
-rw-r--r--src/devices/bus/nubus/pds30_cb264.h1
-rw-r--r--src/devices/bus/nubus/pds30_mc30.cpp5
-rw-r--r--src/devices/bus/nubus/pds30_mc30.h1
-rw-r--r--src/devices/bus/nubus/pds30_procolor816.cpp5
-rw-r--r--src/devices/bus/nubus/pds30_procolor816.h1
-rw-r--r--src/devices/bus/nubus/pds30_sigmalview.cpp5
-rw-r--r--src/devices/bus/nubus/pds30_sigmalview.h1
-rw-r--r--src/devices/bus/sms_ctrl/lphaser.cpp2
-rw-r--r--src/devices/cpu/avr8/avr8.h2
-rw-r--r--src/devices/cpu/esrip/esrip.h2
-rw-r--r--src/devices/machine/genpc.h16
-rw-r--r--src/devices/machine/k033906.h2
-rw-r--r--src/devices/machine/k053252.h2
-rw-r--r--src/devices/machine/k056230.h2
-rw-r--r--src/devices/machine/laserdsc.h2
-rw-r--r--src/devices/machine/legscsi.h2
-rw-r--r--src/devices/machine/mc68328.h2
-rw-r--r--src/devices/machine/msm6253.h28
-rw-r--r--src/devices/machine/ra17xx.h5
-rw-r--r--src/devices/machine/s3c2400.h4
-rw-r--r--src/devices/machine/s3c2410.h4
-rw-r--r--src/devices/machine/s3c2440.h4
-rw-r--r--src/devices/machine/smpc.h2
-rw-r--r--src/devices/machine/tc009xlvc.h2
-rw-r--r--src/devices/machine/tmp68301.h2
-rw-r--r--src/devices/machine/upd4701.h4
-rw-r--r--src/devices/machine/upd71071.h2
-rw-r--r--src/devices/sound/c6280.h2
-rw-r--r--src/devices/sound/es8712.h2
-rw-r--r--src/devices/sound/gaelco.h2
-rw-r--r--src/devices/sound/tms5110.h2
-rw-r--r--src/devices/video/315_5313.h2
-rw-r--r--src/devices/video/ef9345.h2
-rw-r--r--src/devices/video/ef9364.h2
-rw-r--r--src/devices/video/ef9365.h2
-rw-r--r--src/devices/video/gb_lcd.h8
-rw-r--r--src/devices/video/imagetek_i4100.h2
-rw-r--r--src/devices/video/mb_vcu.h4
-rw-r--r--src/devices/video/mos6566.h2
-rw-r--r--src/devices/video/msm6222b.cpp4
-rw-r--r--src/devices/video/ppu2c0x.h2
-rw-r--r--src/devices/video/ramdac.h2
-rw-r--r--src/devices/video/tms9927.h2
-rw-r--r--src/devices/video/vic4567.h2
79 files changed, 134 insertions, 162 deletions
diff --git a/src/devices/bus/a2bus/pc_xporter.cpp b/src/devices/bus/a2bus/pc_xporter.cpp
index fa5559d40b7..94498ee751b 100644
--- a/src/devices/bus/a2bus/pc_xporter.cpp
+++ b/src/devices/bus/a2bus/pc_xporter.cpp
@@ -151,7 +151,7 @@ MACHINE_CONFIG_START(a2bus_pcxporter_device::device_add_mconfig)
MCFG_PIC8259_OUT_INT_CB(INPUTLINE("v30", 0))
MCFG_DEVICE_ADD("isa", ISA8, 0)
- MCFG_ISA8_CPU("^v30")
+ MCFG_ISA8_CPU("v30")
MCFG_ISA_OUT_IRQ2_CB(DEVWRITELINE("pic8259", pic8259_device, ir2_w))
MCFG_ISA_OUT_IRQ3_CB(DEVWRITELINE("pic8259", pic8259_device, ir3_w))
MCFG_ISA_OUT_IRQ4_CB(DEVWRITELINE("pic8259", pic8259_device, ir4_w))
diff --git a/src/devices/bus/bml3/bml3bus.h b/src/devices/bus/bml3/bml3bus.h
index b18642b44ac..be5e419b8f8 100644
--- a/src/devices/bus/bml3/bml3bus.h
+++ b/src/devices/bus/bml3/bml3bus.h
@@ -21,7 +21,7 @@
//**************************************************************************
#define MCFG_BML3BUS_CPU(_cputag) \
- downcast<bml3bus_device &>(*device).set_cputag("^" _cputag);
+ downcast<bml3bus_device &>(*device).set_cputag(_cputag);
#define MCFG_BML3BUS_OUT_NMI_CB(_devcb) \
devcb = &downcast<bml3bus_device &>(*device).set_out_nmi_callback(DEVCB_##_devcb);
diff --git a/src/devices/bus/cbmiec/c1571.cpp b/src/devices/bus/cbmiec/c1571.cpp
index 75b830c11fa..097dbc77cf8 100644
--- a/src/devices/bus/cbmiec/c1571.cpp
+++ b/src/devices/bus/cbmiec/c1571.cpp
@@ -739,7 +739,7 @@ MACHINE_CONFIG_START(mini_chief_device::device_add_mconfig)
MCFG_FLOPPY_DRIVE_ADD_FIXED(C64H156_TAG":0", c1571_floppies, "525qd", c1571_device::floppy_formats)
MCFG_DEVICE_ADD(ISA_BUS_TAG, ISA8, 0)
- MCFG_ISA8_CPU("^" M6502_TAG)
+ MCFG_ISA8_CPU(M6502_TAG)
MCFG_ISA8_SLOT_ADD(ISA_BUS_TAG, "isa1", mini_chief_isa8_cards, "wd1002a_wx1", false)
MACHINE_CONFIG_END
diff --git a/src/devices/bus/cbmiec/fd2000.cpp b/src/devices/bus/cbmiec/fd2000.cpp
index 2f64d86ac28..46dd1151a34 100644
--- a/src/devices/bus/cbmiec/fd2000.cpp
+++ b/src/devices/bus/cbmiec/fd2000.cpp
@@ -275,9 +275,9 @@ fd2000_device::fd2000_device(const machine_config &mconfig, device_type type, co
fd4000_device::fd4000_device(const machine_config &mconfig, const char *tag, device_t *owner, uint32_t clock)
: fd2000_device(mconfig, FD4000, tag, owner, clock)
{
- m_maincpu.set_tag(R65C02P4_TAG);
- m_fdc.set_tag(PC8477AV1_TAG);
- m_floppy0.set_tag(PC8477AV1_TAG":0");
+ m_maincpu.set_tag(*this, R65C02P4_TAG);
+ m_fdc.set_tag(*this, PC8477AV1_TAG);
+ m_floppy0.set_tag(*this, PC8477AV1_TAG":0");
}
diff --git a/src/devices/bus/ep64/exp.h b/src/devices/bus/ep64/exp.h
index f870455996c..223be36d7e8 100644
--- a/src/devices/bus/ep64/exp.h
+++ b/src/devices/bus/ep64/exp.h
@@ -68,7 +68,7 @@
MCFG_DEVICE_SLOT_INTERFACE(ep64_expansion_bus_cards, _def_slot, false)
#define MCFG_EP64_EXPANSION_BUS_SLOT_DAVE(_tag) \
- downcast<ep64_expansion_bus_slot_device &>(*device).set_dave_tag("^" _tag);
+ downcast<ep64_expansion_bus_slot_device &>(*device).set_dave_tag(_tag);
#define MCFG_EP64_EXPANSION_BUS_SLOT_IRQ_CALLBACK(_write) \
devcb = &downcast<ep64_expansion_bus_slot_device &>(*device).set_irq_wr_callback(DEVCB_##_write);
diff --git a/src/devices/bus/intellec4/intellec4.h b/src/devices/bus/intellec4/intellec4.h
index cfcec3ee372..c878d00e8c3 100644
--- a/src/devices/bus/intellec4/intellec4.h
+++ b/src/devices/bus/intellec4/intellec4.h
@@ -117,26 +117,26 @@ to implement the card in both systems.
#define MCFG_INTELLEC4_UNIV_SLOT_ADD(bus_tag, slot_tag, clock, slot_intf, def_slot) \
MCFG_DEVICE_ADD(slot_tag, INTELLEC4_UNIV_SLOT, clock) \
MCFG_DEVICE_SLOT_INTERFACE(slot_intf, def_slot, false) \
- downcast<bus::intellec4::univ_slot_device &>(*device).set_bus_tag("^" bus_tag);
+ downcast<bus::intellec4::univ_slot_device &>(*device).set_bus_tag(bus_tag);
#define MCFG_INTELLEC4_UNIV_SLOT_REMOVE(slot_tag) \
MCFG_DEVICE_REMOVE(slot_tag)
#define MCFG_INTELLEC4_UNIV_BUS_ROM_SPACE(tag, space) \
- downcast<bus::intellec4::univ_bus_device &>(*device).set_rom_space("^" tag, space);
+ downcast<bus::intellec4::univ_bus_device &>(*device).set_rom_space(tag, space);
#define MCFG_INTELLEC4_UNIV_BUS_ROM_PORTS_SPACE(tag, space) \
- downcast<bus::intellec4::univ_bus_device &>(*device).set_rom_ports_space("^" tag, space);
+ downcast<bus::intellec4::univ_bus_device &>(*device).set_rom_ports_space(tag, space);
#define MCFG_INTELLEC4_UNIV_BUS_MEMORY_SPACE(tag, space) \
- downcast<bus::intellec4::univ_bus_device &>(*device).set_memory_space("^" tag, space);
+ downcast<bus::intellec4::univ_bus_device &>(*device).set_memory_space(tag, space);
#define MCFG_INTELLEC4_UNIV_BUS_STATUS_SPACE(tag, space) \
- downcast<bus::intellec4::univ_bus_device &>(*device).set_status_space("^" tag, space);
+ downcast<bus::intellec4::univ_bus_device &>(*device).set_status_space(tag, space);
#define MCFG_INTELLEC4_UNIV_BUS_RAM_PORTS_SPACE(tag, space) \
- downcast<bus::intellec4::univ_bus_device &>(*device).set_ram_ports_space("^" tag, space);
+ downcast<bus::intellec4::univ_bus_device &>(*device).set_ram_ports_space(tag, space);
#define MCFG_INTELLEC4_UNIV_BUS_TEST_CB(obj) \
downcast<bus::intellec4::univ_bus_device &>(*device).set_test_out_cb(DEVCB_##obj);
diff --git a/src/devices/bus/iq151/iq151.h b/src/devices/bus/iq151/iq151.h
index baca40fd928..270e47193af 100644
--- a/src/devices/bus/iq151/iq151.h
+++ b/src/devices/bus/iq151/iq151.h
@@ -163,6 +163,6 @@ DECLARE_DEVICE_TYPE(IQ151CART_SLOT, iq151cart_slot_device)
devcb = &downcast<iq151cart_slot_device &>(*device).set_out_drq_callback(DEVCB_##_devcb);
#define MCFG_IQ151CART_SLOT_SCREEN_TAG(screen_tag) \
- downcast<iq151cart_slot_device &>(*device).set_screen_tag(("^" screen_tag));
+ downcast<iq151cart_slot_device &>(*device).set_screen_tag(screen_tag);
#endif // MAME_BUS_IQ151_IQ151_H
diff --git a/src/devices/bus/isa/isa.cpp b/src/devices/bus/isa/isa.cpp
index ac1d7c59651..da54d1aea5c 100644
--- a/src/devices/bus/isa/isa.cpp
+++ b/src/devices/bus/isa/isa.cpp
@@ -31,7 +31,7 @@ isa8_slot_device::isa8_slot_device(const machine_config &mconfig, const char *ta
isa8_slot_device::isa8_slot_device(const machine_config &mconfig, device_type type, const char *tag, device_t *owner, uint32_t clock) :
device_t(mconfig, type, tag, owner, clock),
device_slot_interface(mconfig, *this),
- m_owner(nullptr), m_isa_tag(nullptr)
+ m_isa_bus(*this, finder_base::DUMMY_TAG)
{
}
@@ -41,15 +41,15 @@ isa8_slot_device::isa8_slot_device(const machine_config &mconfig, device_type ty
void isa8_slot_device::device_start()
{
- device_isa8_card_interface *dev = dynamic_cast<device_isa8_card_interface *>(get_card_device());
+ device_isa8_card_interface *const dev = dynamic_cast<device_isa8_card_interface *>(get_card_device());
const device_isa16_card_interface *intf;
- device_t *isadev = m_owner->subdevice(m_isa_tag);
if (get_card_device() && get_card_device()->interface(intf))
fatalerror("ISA16 device in ISA8 slot\n");
- if (dev) dev->set_isabus(isadev);
+ if (dev) dev->set_isabus(m_isa_bus);
+
// tell isa bus that there is one slot with the specified tag
- dynamic_cast<isa8_device *>(isadev)->add_slot(tag());
+ downcast<isa8_device &>(*m_isa_bus).add_slot(tag());
}
@@ -78,11 +78,10 @@ isa16_slot_device::isa16_slot_device(const machine_config &mconfig, const char *
void isa16_slot_device::device_start()
{
- device_isa8_card_interface *dev = dynamic_cast<device_isa8_card_interface *>(get_card_device());
- device_t *isadev = m_owner->subdevice(m_isa_tag);
- if (dev) dev->set_isabus(isadev);
+ device_isa8_card_interface *const dev = dynamic_cast<device_isa8_card_interface *>(get_card_device());
+ if (dev) dev->set_isabus(m_isa_bus);
// tell isa bus that there is one slot with the specified tag
- dynamic_cast<isa8_device *>(isadev)->add_slot(tag());
+ dynamic_cast<isa8_device &>(*m_isa_bus).add_slot(tag());
}
diff --git a/src/devices/bus/isa/isa.h b/src/devices/bus/isa/isa.h
index afb94068aec..4a8f4a21e7d 100644
--- a/src/devices/bus/isa/isa.h
+++ b/src/devices/bus/isa/isa.h
@@ -82,7 +82,7 @@
#define MCFG_ISA8_SLOT_ADD(_isatag, _tag, _slot_intf, _def_slot, _fixed) \
MCFG_DEVICE_ADD(_tag, ISA8_SLOT, 0) \
MCFG_DEVICE_SLOT_INTERFACE(_slot_intf, _def_slot, _fixed) \
- downcast<isa8_slot_device &>(*device).set_isa8_slot(this, _isatag);
+ downcast<isa8_slot_device &>(*device).set_isa8_slot(_isatag);
#define MCFG_ISA16_CPU(_cputag) \
downcast<isa8_device &>(*device).set_cputag(_cputag);
#define MCFG_ISA16_BUS_CUSTOM_SPACES() \
@@ -90,7 +90,7 @@
#define MCFG_ISA16_SLOT_ADD(_isatag, _tag, _slot_intf, _def_slot, _fixed) \
MCFG_DEVICE_ADD(_tag, ISA16_SLOT, 0) \
MCFG_DEVICE_SLOT_INTERFACE(_slot_intf, _def_slot, _fixed) \
- downcast<isa16_slot_device &>(*device).set_isa16_slot(this, _isatag);
+ downcast<isa16_slot_device &>(*device).set_isa16_slot(_isatag);
#define MCFG_ISA_BUS_IOCHCK(_iochck) \
devcb = &downcast<isa8_device *>(device)->set_iochck_callback(DEVCB_##_iochck);
@@ -168,14 +168,13 @@ public:
virtual void device_start() override;
// inline configuration
- void set_isa8_slot(device_t *owner, const char *isa_tag) { m_owner = owner; m_isa_tag = isa_tag; }
+ void set_isa8_slot(const char *isa_tag) { m_isa_bus.set_tag(isa_tag); }
protected:
isa8_slot_device(const machine_config &mconfig, device_type type, const char *tag, device_t *owner, uint32_t clock);
// configuration
- device_t *m_owner;
- const char *m_isa_tag;
+ required_device<device_t> m_isa_bus;
};
// device type definition
@@ -348,7 +347,7 @@ public:
virtual void device_start() override;
// inline configuration
- void set_isa16_slot(device_t *owner, const char *isa_tag) { m_owner = owner; m_isa_tag = isa_tag; }
+ void set_isa16_slot(const char *isa_tag) { m_isa_bus.set_tag(isa_tag); }
};
diff --git a/src/devices/bus/macpds/pds_tpdfpd.cpp b/src/devices/bus/macpds/pds_tpdfpd.cpp
index 8fd357afdc1..aba55746cc2 100644
--- a/src/devices/bus/macpds/pds_tpdfpd.cpp
+++ b/src/devices/bus/macpds/pds_tpdfpd.cpp
@@ -92,10 +92,9 @@ macpds_sedisplay_device::macpds_sedisplay_device(const machine_config &mconfig,
device_t(mconfig, type, tag, owner, clock),
device_video_interface(mconfig, *this),
device_macpds_card_interface(mconfig, *this),
- m_vram(nullptr), m_vbl_disable(0), m_count(0), m_clutoffs(0), m_timer(nullptr),
- m_assembled_tag(util::string_format("%s:%s", tag, SEDISPLAY_SCREEN_NAME))
+ m_vram(nullptr), m_vbl_disable(0), m_count(0), m_clutoffs(0), m_timer(nullptr)
{
- set_screen(m_assembled_tag.c_str());
+ set_screen(*this, SEDISPLAY_SCREEN_NAME);
}
//-------------------------------------------------
diff --git a/src/devices/bus/macpds/pds_tpdfpd.h b/src/devices/bus/macpds/pds_tpdfpd.h
index 6f1b3c0ab12..21f53e63d7c 100644
--- a/src/devices/bus/macpds/pds_tpdfpd.h
+++ b/src/devices/bus/macpds/pds_tpdfpd.h
@@ -46,7 +46,6 @@ private:
uint32_t m_vbl_disable;
uint32_t m_palette[256], m_colors[3], m_count, m_clutoffs;
emu_timer *m_timer;
- const std::string m_assembled_tag;
};
diff --git a/src/devices/bus/msx_slot/bunsetsu.h b/src/devices/bus/msx_slot/bunsetsu.h
index da26e5350fb..70649340824 100644
--- a/src/devices/bus/msx_slot/bunsetsu.h
+++ b/src/devices/bus/msx_slot/bunsetsu.h
@@ -14,8 +14,8 @@ DECLARE_DEVICE_TYPE(MSX_SLOT_BUNSETSU, msx_slot_bunsetsu_device)
#define MCFG_MSX_SLOT_BUNSETSU_ADD(_tag, _startpage, _numpages, _region, _offset, _bunsetsu_region_tag) \
MCFG_MSX_INTERNAL_SLOT_ADD(_tag, MSX_SLOT_BUNSETSU, _startpage, _numpages) \
- downcast<msx_slot_rom_device &>(*device).set_rom_start("^" _region, _offset); \
- downcast<msx_slot_bunsetsu_device &>(*device).set_bunsetsu_region_tag("^" _bunsetsu_region_tag);
+ downcast<msx_slot_rom_device &>(*device).set_rom_start(_region, _offset); \
+ downcast<msx_slot_bunsetsu_device &>(*device).set_bunsetsu_region_tag(_bunsetsu_region_tag);
class msx_slot_bunsetsu_device : public msx_slot_rom_device
{
diff --git a/src/devices/bus/msx_slot/disk.h b/src/devices/bus/msx_slot/disk.h
index 698b49b9764..d619cb1aa25 100644
--- a/src/devices/bus/msx_slot/disk.h
+++ b/src/devices/bus/msx_slot/disk.h
@@ -29,35 +29,35 @@ DECLARE_DEVICE_TYPE(MSX_SLOT_DISK6, msx_slot_disk6_device)
#define MCFG_MSX_SLOT_DISK1_ADD(_tag, _startpage, _numpages, _region, _offset, _fdc_tag, _floppy0_tag, _floppy1_tag) \
MCFG_MSX_INTERNAL_SLOT_ADD(_tag, MSX_SLOT_DISK1, _startpage, _numpages) \
- downcast<msx_slot_rom_device &>(*device).set_rom_start("^" _region, _offset); \
+ downcast<msx_slot_rom_device &>(*device).set_rom_start(_region, _offset); \
downcast<msx_slot_disk_device &>(*device).set_fdc_tag(_fdc_tag); \
downcast<msx_slot_disk_device &>(*device).set_floppy0_tag(_floppy0_tag); \
downcast<msx_slot_disk_device &>(*device).set_floppy1_tag(_floppy1_tag);
#define MCFG_MSX_SLOT_DISK2_ADD(_tag, _startpage, _numpages, _region, _offset, _fdc_tag, _floppy0_tag, _floppy1_tag) \
MCFG_MSX_INTERNAL_SLOT_ADD(_tag, MSX_SLOT_DISK2, _startpage, _numpages) \
- downcast<msx_slot_rom_device &>(*device).set_rom_start("^" _region, _offset); \
+ downcast<msx_slot_rom_device &>(*device).set_rom_start(_region, _offset); \
downcast<msx_slot_disk_device &>(*device).set_fdc_tag(_fdc_tag); \
downcast<msx_slot_disk_device &>(*device).set_floppy0_tag(_floppy0_tag); \
downcast<msx_slot_disk_device &>(*device).set_floppy1_tag(_floppy1_tag);
#define MCFG_MSX_SLOT_DISK3_ADD(_tag, _startpage, _numpages, _region, _offset, _fdc_tag, _floppy0_tag, _floppy1_tag) \
MCFG_MSX_INTERNAL_SLOT_ADD(_tag, MSX_SLOT_DISK3, _startpage, _numpages) \
- downcast<msx_slot_rom_device &>(*device).set_rom_start("^" _region, _offset); \
+ downcast<msx_slot_rom_device &>(*device).set_rom_start(_region, _offset); \
downcast<msx_slot_disk_device &>(*device).set_fdc_tag(_fdc_tag); \
downcast<msx_slot_disk_device &>(*device).set_floppy0_tag(_floppy0_tag); \
downcast<msx_slot_disk_device &>(*device).set_floppy1_tag(_floppy1_tag);
#define MCFG_MSX_SLOT_DISK4_ADD(_tag, _startpage, _numpages, _region, _offset, _fdc_tag, _floppy0_tag, _floppy1_tag) \
MCFG_MSX_INTERNAL_SLOT_ADD(_tag, MSX_SLOT_DISK4, _startpage, _numpages) \
- downcast<msx_slot_rom_device &>(*device).set_rom_start("^" _region, _offset); \
+ downcast<msx_slot_rom_device &>(*device).set_rom_start(_region, _offset); \
downcast<msx_slot_disk_device &>(*device).set_fdc_tag(_fdc_tag); \
downcast<msx_slot_disk_device &>(*device).set_floppy0_tag(_floppy0_tag); \
downcast<msx_slot_disk_device &>(*device).set_floppy1_tag(_floppy1_tag);
#define MCFG_MSX_SLOT_DISK5_ADD(_tag, _startpage, _numpages, _region, _offset, _fdc_tag, _floppy0_tag, _floppy1_tag, _floppy2_tag, _floppy3_tag) \
MCFG_MSX_INTERNAL_SLOT_ADD(_tag, MSX_SLOT_DISK5, _startpage, _numpages) \
- downcast<msx_slot_rom_device &>(*device).set_rom_start("^" _region, _offset); \
+ downcast<msx_slot_rom_device &>(*device).set_rom_start(_region, _offset); \
downcast<msx_slot_disk_device &>(*device).set_fdc_tag(_fdc_tag); \
downcast<msx_slot_disk_device &>(*device).set_floppy0_tag(_floppy0_tag); \
downcast<msx_slot_disk_device &>(*device).set_floppy1_tag(_floppy1_tag); \
@@ -66,7 +66,7 @@ DECLARE_DEVICE_TYPE(MSX_SLOT_DISK6, msx_slot_disk6_device)
#define MCFG_MSX_SLOT_DISK6_ADD(_tag, _startpage, _numpages, _region, _offset, _fdc_tag, _floppy0_tag, _floppy1_tag) \
MCFG_MSX_INTERNAL_SLOT_ADD(_tag, MSX_SLOT_DISK6, _startpage, _numpages) \
- downcast<msx_slot_rom_device &>(*device).set_rom_start("^" _region, _offset); \
+ downcast<msx_slot_rom_device &>(*device).set_rom_start(_region, _offset); \
downcast<msx_slot_disk_device &>(*device).set_fdc_tag(_fdc_tag); \
downcast<msx_slot_disk_device &>(*device).set_floppy0_tag(_floppy0_tag); \
downcast<msx_slot_disk_device &>(*device).set_floppy1_tag(_floppy1_tag);
diff --git a/src/devices/bus/msx_slot/fs4600.h b/src/devices/bus/msx_slot/fs4600.h
index b342b07f3fb..c92bd7a3a1f 100644
--- a/src/devices/bus/msx_slot/fs4600.h
+++ b/src/devices/bus/msx_slot/fs4600.h
@@ -14,7 +14,7 @@ DECLARE_DEVICE_TYPE(MSX_SLOT_FS4600, msx_slot_fs4600_device)
#define MCFG_MSX_SLOT_FS4600_ADD(_tag, _startpage, _numpages, _region, _offset) \
MCFG_MSX_INTERNAL_SLOT_ADD(_tag, MSX_SLOT_FS4600, _startpage, _numpages) \
- downcast<msx_slot_fs4600_device &>(*device).set_rom_start("^" _region, _offset);
+ downcast<msx_slot_fs4600_device &>(*device).set_rom_start(_region, _offset);
class msx_slot_fs4600_device : public device_t, public msx_internal_slot_interface
{
diff --git a/src/devices/bus/msx_slot/music.h b/src/devices/bus/msx_slot/music.h
index 3e8b54686c9..ae2ddc979d0 100644
--- a/src/devices/bus/msx_slot/music.h
+++ b/src/devices/bus/msx_slot/music.h
@@ -15,7 +15,7 @@ DECLARE_DEVICE_TYPE(MSX_SLOT_MUSIC, msx_slot_music_device)
#define MCFG_MSX_SLOT_MUSIC_ADD(_tag, _startpage, _numpages, _region, _offset, _ym2413_tag) \
MCFG_MSX_INTERNAL_SLOT_ADD(_tag, MSX_SLOT_MUSIC, _startpage, _numpages) \
- downcast<msx_slot_rom_device &>(*device).set_rom_start("^" _region, _offset); \
+ downcast<msx_slot_rom_device &>(*device).set_rom_start(_region, _offset); \
downcast<msx_slot_music_device &>(*device).set_ym2413_tag(_ym2413_tag);
class msx_slot_music_device : public msx_slot_rom_device
diff --git a/src/devices/bus/msx_slot/panasonic08.h b/src/devices/bus/msx_slot/panasonic08.h
index 7b4f62429f5..33da0b6620b 100644
--- a/src/devices/bus/msx_slot/panasonic08.h
+++ b/src/devices/bus/msx_slot/panasonic08.h
@@ -14,7 +14,7 @@ DECLARE_DEVICE_TYPE(MSX_SLOT_PANASONIC08, msx_slot_panasonic08_device)
#define MCFG_MSX_SLOT_PANASONIC08_ADD(_tag, _startpage, _numpages, _region, _offset) \
MCFG_MSX_INTERNAL_SLOT_ADD(_tag, MSX_SLOT_PANASONIC08, _startpage, _numpages) \
- downcast<msx_slot_panasonic08_device &>(*device).set_rom_start("^" _region, _offset);
+ downcast<msx_slot_panasonic08_device &>(*device).set_rom_start(_region, _offset);
class msx_slot_panasonic08_device : public device_t, public msx_internal_slot_interface
{
diff --git a/src/devices/bus/msx_slot/rom.h b/src/devices/bus/msx_slot/rom.h
index f2f84bd8589..eee554a362a 100644
--- a/src/devices/bus/msx_slot/rom.h
+++ b/src/devices/bus/msx_slot/rom.h
@@ -9,7 +9,7 @@
#define MCFG_MSX_SLOT_ROM_ADD(_tag, _startpage, _numpages, _region, _offset) \
MCFG_MSX_INTERNAL_SLOT_ADD(_tag, MSX_SLOT_ROM, _startpage, _numpages) \
- downcast<msx_slot_rom_device &>(*device).set_rom_start("^" _region, _offset);
+ downcast<msx_slot_rom_device &>(*device).set_rom_start(_region, _offset);
class msx_slot_rom_device : public device_t,
public msx_internal_slot_interface
diff --git a/src/devices/bus/msx_slot/sony08.h b/src/devices/bus/msx_slot/sony08.h
index c9df3701938..8dfd0297951 100644
--- a/src/devices/bus/msx_slot/sony08.h
+++ b/src/devices/bus/msx_slot/sony08.h
@@ -14,10 +14,9 @@ DECLARE_DEVICE_TYPE(MSX_SLOT_SONY08, msx_slot_sony08_device)
#define MCFG_MSX_SLOT_SONY08_ADD(_tag, _startpage, _numpages, _region, _offset) \
MCFG_MSX_INTERNAL_SLOT_ADD(_tag, MSX_SLOT_SONY08, _startpage, _numpages) \
- downcast<msx_slot_sony08_device &>(*device).set_rom_start("^" _region, _offset);
+ downcast<msx_slot_sony08_device &>(*device).set_rom_start(_region, _offset);
-class msx_slot_sony08_device : public device_t,
- public msx_internal_slot_interface
+class msx_slot_sony08_device : public device_t, public msx_internal_slot_interface
{
public:
msx_slot_sony08_device(const machine_config &mconfig, const char *tag, device_t *owner, uint32_t clock);
diff --git a/src/devices/bus/nubus/nubus_48gc.cpp b/src/devices/bus/nubus/nubus_48gc.cpp
index 0b32fc9dea4..e089e1986db 100644
--- a/src/devices/bus/nubus/nubus_48gc.cpp
+++ b/src/devices/bus/nubus/nubus_48gc.cpp
@@ -40,7 +40,7 @@ DEFINE_DEVICE_TYPE(NUBUS_824GC, nubus_824gc_device, "nb_824gc", "Apple 8*24 vide
//-------------------------------------------------
MACHINE_CONFIG_START(jmfb_device::device_add_mconfig)
- MCFG_SCREEN_ADD( GC48_SCREEN_NAME, RASTER)
+ 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)
@@ -76,10 +76,9 @@ jmfb_device::jmfb_device(const machine_config &mconfig, device_type type, const
device_video_interface(mconfig, *this),
device_nubus_card_interface(mconfig, *this),
m_screen(nullptr), m_timer(nullptr), m_mode(0), m_vbl_disable(0), m_toggle(0), m_stride(0), m_base(0), m_count(0), m_clutoffs(0), m_xres(0), m_yres(0),
- m_is824(is824),
- m_assembled_tag(util::string_format("%s:%s", tag, GC48_SCREEN_NAME))
+ m_is824(is824)
{
- set_screen(m_assembled_tag.c_str());
+ set_screen(*this, GC48_SCREEN_NAME);
}
nubus_48gc_device::nubus_48gc_device(const machine_config &mconfig, const char *tag, device_t *owner, uint32_t clock) :
diff --git a/src/devices/bus/nubus/nubus_48gc.h b/src/devices/bus/nubus/nubus_48gc.h
index 0dbebbf4dcb..3c73befdaea 100644
--- a/src/devices/bus/nubus/nubus_48gc.h
+++ b/src/devices/bus/nubus/nubus_48gc.h
@@ -46,7 +46,6 @@ private:
uint32_t m_registers[0x100];
int m_xres, m_yres;
const bool m_is824;
- const std::string m_assembled_tag;
};
class nubus_48gc_device : public jmfb_device
diff --git a/src/devices/bus/nubus/nubus_m2hires.cpp b/src/devices/bus/nubus/nubus_m2hires.cpp
index f7830f2f47a..6ac472eeb5b 100644
--- a/src/devices/bus/nubus/nubus_m2hires.cpp
+++ b/src/devices/bus/nubus/nubus_m2hires.cpp
@@ -70,10 +70,9 @@ nubus_m2hires_device::nubus_m2hires_device(const machine_config &mconfig, device
device_t(mconfig, type, tag, owner, clock),
device_video_interface(mconfig, *this),
device_nubus_card_interface(mconfig, *this),
- m_vram32(nullptr), m_mode(0), m_vbl_disable(0), m_toggle(0), m_count(0), m_clutoffs(0), m_timer(nullptr),
- m_assembled_tag(util::string_format("%s:%s", tag, M2HIRES_SCREEN_NAME))
+ m_vram32(nullptr), m_mode(0), m_vbl_disable(0), m_toggle(0), m_count(0), m_clutoffs(0), m_timer(nullptr)
{
- set_screen(m_assembled_tag.c_str());
+ set_screen(*this, M2HIRES_SCREEN_NAME);
}
//-------------------------------------------------
diff --git a/src/devices/bus/nubus/nubus_m2hires.h b/src/devices/bus/nubus/nubus_m2hires.h
index 79bd30141c8..339cf8ed00f 100644
--- a/src/devices/bus/nubus/nubus_m2hires.h
+++ b/src/devices/bus/nubus/nubus_m2hires.h
@@ -47,7 +47,6 @@ private:
uint32_t m_mode, m_vbl_disable, m_toggle;
uint32_t m_palette[256], m_colors[3], m_count, m_clutoffs;
emu_timer *m_timer;
- const std::string m_assembled_tag;
};
// device type definition
diff --git a/src/devices/bus/nubus/nubus_m2video.cpp b/src/devices/bus/nubus/nubus_m2video.cpp
index 45fa1e8d129..d7eea8cf22e 100644
--- a/src/devices/bus/nubus/nubus_m2video.cpp
+++ b/src/devices/bus/nubus/nubus_m2video.cpp
@@ -72,10 +72,9 @@ nubus_m2video_device::nubus_m2video_device(const machine_config &mconfig, device
device_t(mconfig, type, tag, owner, clock),
device_video_interface(mconfig, *this),
device_nubus_card_interface(mconfig, *this),
- m_vram32(nullptr), m_mode(0), m_vbl_disable(0), m_toggle(0), m_count(0), m_clutoffs(0), m_timer(nullptr),
- m_assembled_tag(util::string_format("%s:%s", tag, M2VIDEO_SCREEN_NAME))
+ m_vram32(nullptr), m_mode(0), m_vbl_disable(0), m_toggle(0), m_count(0), m_clutoffs(0), m_timer(nullptr)
{
- set_screen(m_assembled_tag.c_str());
+ set_screen(*this, M2VIDEO_SCREEN_NAME);
}
//-------------------------------------------------
diff --git a/src/devices/bus/nubus/nubus_m2video.h b/src/devices/bus/nubus/nubus_m2video.h
index 30344b3d2d0..4c4716cdd4f 100644
--- a/src/devices/bus/nubus/nubus_m2video.h
+++ b/src/devices/bus/nubus/nubus_m2video.h
@@ -47,7 +47,6 @@ private:
uint32_t m_mode, m_vbl_disable, m_toggle;
uint32_t m_palette[256], m_colors[3], m_count, m_clutoffs;
emu_timer *m_timer;
- const std::string m_assembled_tag;
};
diff --git a/src/devices/bus/nubus/nubus_radiustpd.cpp b/src/devices/bus/nubus/nubus_radiustpd.cpp
index 32e66083ae7..98a3ab3e514 100644
--- a/src/devices/bus/nubus/nubus_radiustpd.cpp
+++ b/src/devices/bus/nubus/nubus_radiustpd.cpp
@@ -73,10 +73,9 @@ nubus_radiustpd_device::nubus_radiustpd_device(const machine_config &mconfig, de
device_t(mconfig, type, tag, owner, clock),
device_video_interface(mconfig, *this),
device_nubus_card_interface(mconfig, *this),
- m_vram32(nullptr), m_mode(0), m_vbl_disable(0), m_toggle(0), m_count(0), m_clutoffs(0), m_timer(nullptr),
- m_assembled_tag(util::string_format("%s:%s", tag, RADIUSTPD_SCREEN_NAME))
+ m_vram32(nullptr), m_mode(0), m_vbl_disable(0), m_toggle(0), m_count(0), m_clutoffs(0), m_timer(nullptr)
{
- set_screen(m_assembled_tag.c_str());
+ set_screen(*this, RADIUSTPD_SCREEN_NAME);
}
//-------------------------------------------------
diff --git a/src/devices/bus/nubus/nubus_radiustpd.h b/src/devices/bus/nubus/nubus_radiustpd.h
index d5a3606be20..20400277f1a 100644
--- a/src/devices/bus/nubus/nubus_radiustpd.h
+++ b/src/devices/bus/nubus/nubus_radiustpd.h
@@ -47,7 +47,6 @@ private:
uint32_t m_mode, m_vbl_disable, m_toggle;
uint32_t m_palette[256], m_colors[3], m_count, m_clutoffs;
emu_timer *m_timer;
- const std::string m_assembled_tag;
};
diff --git a/src/devices/bus/nubus/nubus_spec8.cpp b/src/devices/bus/nubus/nubus_spec8.cpp
index 82d7553bc68..d3d45d9b076 100644
--- a/src/devices/bus/nubus/nubus_spec8.cpp
+++ b/src/devices/bus/nubus/nubus_spec8.cpp
@@ -75,10 +75,9 @@ nubus_spec8s3_device::nubus_spec8s3_device(const machine_config &mconfig, device
device_video_interface(mconfig, *this),
device_nubus_card_interface(mconfig, *this),
m_vram32(nullptr), m_mode(0), m_vbl_disable(0), m_count(0), m_clutoffs(0), m_timer(nullptr),
- m_assembled_tag(util::string_format("%s:%s", tag, SPEC8S3_SCREEN_NAME)),
m_vbl_pending(false), m_parameter(0)
{
- set_screen(m_assembled_tag.c_str());
+ set_screen(*this, SPEC8S3_SCREEN_NAME);
}
//-------------------------------------------------
diff --git a/src/devices/bus/nubus/nubus_spec8.h b/src/devices/bus/nubus/nubus_spec8.h
index 07a1639c1fc..41cb94432d1 100644
--- a/src/devices/bus/nubus/nubus_spec8.h
+++ b/src/devices/bus/nubus/nubus_spec8.h
@@ -47,7 +47,6 @@ private:
uint32_t m_mode, m_vbl_disable;
uint32_t m_palette[256], m_colors[3], m_count, m_clutoffs;
emu_timer *m_timer;
- const std::string m_assembled_tag;
//uint32_t m_7xxxxx_regs[0x100000/4];
//int m_width, m_height, m_patofsx, m_patofsy;
diff --git a/src/devices/bus/nubus/nubus_specpdq.cpp b/src/devices/bus/nubus/nubus_specpdq.cpp
index 9eda2555e87..d9e463e7fbf 100644
--- a/src/devices/bus/nubus/nubus_specpdq.cpp
+++ b/src/devices/bus/nubus/nubus_specpdq.cpp
@@ -88,11 +88,10 @@ nubus_specpdq_device::nubus_specpdq_device(const machine_config &mconfig, device
device_video_interface(mconfig, *this),
device_nubus_card_interface(mconfig, *this),
m_vram32(nullptr), m_mode(0), m_vbl_disable(0), m_count(0), m_clutoffs(0), m_timer(nullptr),
- m_assembled_tag(util::string_format("%s:%s", tag, SPECPDQ_SCREEN_NAME)),
m_width(0), m_height(0), m_patofsx(0), m_patofsy(0), m_vram_addr(0), m_vram_src(0),
m_palette(*this, "palette")
{
- set_screen(m_assembled_tag.c_str());
+ set_screen(*this, SPECPDQ_SCREEN_NAME);
}
//-------------------------------------------------
diff --git a/src/devices/bus/nubus/nubus_specpdq.h b/src/devices/bus/nubus/nubus_specpdq.h
index 88cde4d4a3c..0d976364680 100644
--- a/src/devices/bus/nubus/nubus_specpdq.h
+++ b/src/devices/bus/nubus/nubus_specpdq.h
@@ -47,7 +47,6 @@ private:
uint32_t m_mode, m_vbl_disable;
uint32_t m_palette_val[256], m_colors[3], m_count, m_clutoffs;
emu_timer *m_timer;
- const std::string m_assembled_tag;
uint32_t m_7xxxxx_regs[0x100000/4];
int m_width, m_height, m_patofsx, m_patofsy;
diff --git a/src/devices/bus/nubus/nubus_wsportrait.cpp b/src/devices/bus/nubus/nubus_wsportrait.cpp
index a88c1cbdb9a..19c25347738 100644
--- a/src/devices/bus/nubus/nubus_wsportrait.cpp
+++ b/src/devices/bus/nubus/nubus_wsportrait.cpp
@@ -73,10 +73,9 @@ nubus_wsportrait_device::nubus_wsportrait_device(const machine_config &mconfig,
device_t(mconfig, type, tag, owner, clock),
device_video_interface(mconfig, *this),
device_nubus_card_interface(mconfig, *this),
- m_vram32(nullptr), m_mode(0), m_vbl_disable(0), m_toggle(0), m_count(0), m_clutoffs(0), m_timer(nullptr),
- m_assembled_tag(util::string_format("%s:%s", tag, WSPORTRAIT_SCREEN_NAME))
+ m_vram32(nullptr), m_mode(0), m_vbl_disable(0), m_toggle(0), m_count(0), m_clutoffs(0), m_timer(nullptr)
{
- set_screen(m_assembled_tag.c_str());
+ set_screen(*this, WSPORTRAIT_SCREEN_NAME);
}
//-------------------------------------------------
diff --git a/src/devices/bus/nubus/nubus_wsportrait.h b/src/devices/bus/nubus/nubus_wsportrait.h
index abbdb95b69a..d9614a76eb7 100644
--- a/src/devices/bus/nubus/nubus_wsportrait.h
+++ b/src/devices/bus/nubus/nubus_wsportrait.h
@@ -47,7 +47,6 @@ private:
uint32_t m_mode, m_vbl_disable, m_toggle;
uint32_t m_palette[256], m_colors[3], m_count, m_clutoffs;
emu_timer *m_timer;
- const std::string m_assembled_tag;
};
diff --git a/src/devices/bus/nubus/pds30_30hr.cpp b/src/devices/bus/nubus/pds30_30hr.cpp
index 4efd30712ef..8888c50b5fa 100644
--- a/src/devices/bus/nubus/pds30_30hr.cpp
+++ b/src/devices/bus/nubus/pds30_30hr.cpp
@@ -73,10 +73,9 @@ nubus_xceed30hr_device::nubus_xceed30hr_device(const machine_config &mconfig, de
device_t(mconfig, type, tag, owner, clock),
device_video_interface(mconfig, *this),
device_nubus_card_interface(mconfig, *this),
- m_vram32(nullptr), m_mode(0), m_vbl_disable(0), m_toggle(0), m_count(0), m_clutoffs(0), m_timer(nullptr),
- m_assembled_tag(util::string_format("%s:%s", tag, XCEED30HR_SCREEN_NAME))
+ m_vram32(nullptr), m_mode(0), m_vbl_disable(0), m_toggle(0), m_count(0), m_clutoffs(0), m_timer(nullptr)
{
- set_screen(m_assembled_tag.c_str());
+ set_screen(*this, XCEED30HR_SCREEN_NAME);
}
//-------------------------------------------------
diff --git a/src/devices/bus/nubus/pds30_30hr.h b/src/devices/bus/nubus/pds30_30hr.h
index 7d80ad9a1ec..6249f016205 100644
--- a/src/devices/bus/nubus/pds30_30hr.h
+++ b/src/devices/bus/nubus/pds30_30hr.h
@@ -47,7 +47,6 @@ private:
uint32_t m_mode, m_vbl_disable, m_toggle;
uint32_t m_palette[256], m_colors[3], m_count, m_clutoffs;
emu_timer *m_timer;
- const std::string m_assembled_tag;
};
diff --git a/src/devices/bus/nubus/pds30_cb264.cpp b/src/devices/bus/nubus/pds30_cb264.cpp
index 37846d2f1eb..6ec398a5257 100644
--- a/src/devices/bus/nubus/pds30_cb264.cpp
+++ b/src/devices/bus/nubus/pds30_cb264.cpp
@@ -67,10 +67,9 @@ nubus_cb264se30_device::nubus_cb264se30_device(const machine_config &mconfig, de
device_t(mconfig, type, tag, owner, clock),
device_video_interface(mconfig, *this),
device_nubus_card_interface(mconfig, *this),
- m_vram32(nullptr), m_mode(0), m_vbl_disable(0), m_toggle(0), m_count(0), m_clutoffs(0), m_timer(nullptr),
- m_assembled_tag(util::string_format("%s:%s", tag, CB264SE30_SCREEN_NAME))
+ m_vram32(nullptr), m_mode(0), m_vbl_disable(0), m_toggle(0), m_count(0), m_clutoffs(0), m_timer(nullptr)
{
- set_screen(m_assembled_tag.c_str());
+ set_screen(*this, CB264SE30_SCREEN_NAME);
}
//-------------------------------------------------
diff --git a/src/devices/bus/nubus/pds30_cb264.h b/src/devices/bus/nubus/pds30_cb264.h
index a87f3738a0b..f32289fb0af 100644
--- a/src/devices/bus/nubus/pds30_cb264.h
+++ b/src/devices/bus/nubus/pds30_cb264.h
@@ -47,7 +47,6 @@ private:
uint32_t m_mode, m_vbl_disable, m_toggle;
uint32_t m_palette[256], m_colors[3], m_count, m_clutoffs;
emu_timer *m_timer;
- const std::string m_assembled_tag;
};
diff --git a/src/devices/bus/nubus/pds30_mc30.cpp b/src/devices/bus/nubus/pds30_mc30.cpp
index 592474b3c94..a314b7f9981 100644
--- a/src/devices/bus/nubus/pds30_mc30.cpp
+++ b/src/devices/bus/nubus/pds30_mc30.cpp
@@ -69,10 +69,9 @@ nubus_xceedmc30_device::nubus_xceedmc30_device(const machine_config &mconfig, de
device_t(mconfig, type, tag, owner, clock),
device_video_interface(mconfig, *this),
device_nubus_card_interface(mconfig, *this),
- m_vram32(nullptr), m_mode(0), m_vbl_disable(0), m_toggle(0), m_count(0), m_clutoffs(0), m_timer(nullptr),
- m_assembled_tag(util::string_format("%s:%s", tag, XCEEDMC30_SCREEN_NAME))
+ m_vram32(nullptr), m_mode(0), m_vbl_disable(0), m_toggle(0), m_count(0), m_clutoffs(0), m_timer(nullptr)
{
- set_screen(m_assembled_tag.c_str());
+ set_screen(*this, XCEEDMC30_SCREEN_NAME);
}
//-------------------------------------------------
diff --git a/src/devices/bus/nubus/pds30_mc30.h b/src/devices/bus/nubus/pds30_mc30.h
index 9f120889235..db4fe782753 100644
--- a/src/devices/bus/nubus/pds30_mc30.h
+++ b/src/devices/bus/nubus/pds30_mc30.h
@@ -47,7 +47,6 @@ private:
uint32_t m_mode, m_vbl_disable, m_toggle;
uint32_t m_palette[256], m_colors[3], m_count, m_clutoffs;
emu_timer *m_timer;
- const std::string m_assembled_tag;
};
diff --git a/src/devices/bus/nubus/pds30_procolor816.cpp b/src/devices/bus/nubus/pds30_procolor816.cpp
index 72f1a5afad8..db1c02fea31 100644
--- a/src/devices/bus/nubus/pds30_procolor816.cpp
+++ b/src/devices/bus/nubus/pds30_procolor816.cpp
@@ -72,10 +72,9 @@ nubus_procolor816_device::nubus_procolor816_device(const machine_config &mconfig
device_t(mconfig, type, tag, owner, clock),
device_video_interface(mconfig, *this),
device_nubus_card_interface(mconfig, *this),
- m_vram32(nullptr), m_mode(0), m_vbl_disable(0), m_toggle(0), m_count(0), m_clutoffs(0), m_timer(nullptr),
- m_assembled_tag(util::string_format("%s:%s", tag, PROCOLOR816_SCREEN_NAME))
+ m_vram32(nullptr), m_mode(0), m_vbl_disable(0), m_toggle(0), m_count(0), m_clutoffs(0), m_timer(nullptr)
{
- set_screen(m_assembled_tag.c_str());
+ set_screen(*this, PROCOLOR816_SCREEN_NAME);
}
//-------------------------------------------------
diff --git a/src/devices/bus/nubus/pds30_procolor816.h b/src/devices/bus/nubus/pds30_procolor816.h
index 69c0c59e40a..dee825d4096 100644
--- a/src/devices/bus/nubus/pds30_procolor816.h
+++ b/src/devices/bus/nubus/pds30_procolor816.h
@@ -47,7 +47,6 @@ private:
uint32_t m_mode, m_vbl_disable, m_toggle;
uint32_t m_palette[256], m_colors[3], m_count, m_clutoffs;
emu_timer *m_timer;
- const std::string m_assembled_tag;
};
diff --git a/src/devices/bus/nubus/pds30_sigmalview.cpp b/src/devices/bus/nubus/pds30_sigmalview.cpp
index 0630e853748..ea05362d8ea 100644
--- a/src/devices/bus/nubus/pds30_sigmalview.cpp
+++ b/src/devices/bus/nubus/pds30_sigmalview.cpp
@@ -67,10 +67,9 @@ nubus_lview_device::nubus_lview_device(const machine_config &mconfig, device_typ
device_t(mconfig, type, tag, owner, clock),
device_video_interface(mconfig, *this),
device_nubus_card_interface(mconfig, *this),
- m_vram32(nullptr), m_vbl_disable(0), m_toggle(0), m_timer(nullptr), m_protstate(0),
- m_assembled_tag(util::string_format("%s:%s", tag, LVIEW_SCREEN_NAME))
+ m_vram32(nullptr), m_vbl_disable(0), m_toggle(0), m_timer(nullptr), m_protstate(0)
{
- set_screen(m_assembled_tag.c_str());
+ set_screen(*this, LVIEW_SCREEN_NAME);
}
//-------------------------------------------------
diff --git a/src/devices/bus/nubus/pds30_sigmalview.h b/src/devices/bus/nubus/pds30_sigmalview.h
index 26fe4f02348..66cfd175b42 100644
--- a/src/devices/bus/nubus/pds30_sigmalview.h
+++ b/src/devices/bus/nubus/pds30_sigmalview.h
@@ -48,7 +48,6 @@ private:
uint32_t m_palette[256];
emu_timer *m_timer;
int m_protstate;
- const std::string m_assembled_tag;
};
diff --git a/src/devices/bus/sms_ctrl/lphaser.cpp b/src/devices/bus/sms_ctrl/lphaser.cpp
index 467b9ba3056..fb20fc8f70c 100644
--- a/src/devices/bus/sms_ctrl/lphaser.cpp
+++ b/src/devices/bus/sms_ctrl/lphaser.cpp
@@ -93,7 +93,7 @@ sms_light_phaser_device::sms_light_phaser_device(const machine_config &mconfig,
{
// Workaround for failed validation that occurs when running on a driver
// with Sega Scope emulation, which adds 2 screens (left/right lenses).
- set_screen(":screen");
+ set_screen(*this, ":screen");
}
diff --git a/src/devices/cpu/avr8/avr8.h b/src/devices/cpu/avr8/avr8.h
index 973eb9774ec..402cf76dd12 100644
--- a/src/devices/cpu/avr8/avr8.h
+++ b/src/devices/cpu/avr8/avr8.h
@@ -64,7 +64,7 @@
//**************************************************************************
#define MCFG_CPU_AVR8_EEPROM(_tag) \
- downcast<avr8_device &>(*device).set_eeprom_tag("^" _tag);
+ downcast<avr8_device &>(*device).set_eeprom_tag(_tag);
//**************************************************************************
diff --git a/src/devices/cpu/esrip/esrip.h b/src/devices/cpu/esrip/esrip.h
index 1b3f2322042..1c13848d40d 100644
--- a/src/devices/cpu/esrip/esrip.h
+++ b/src/devices/cpu/esrip/esrip.h
@@ -35,7 +35,7 @@
downcast<esrip_device &>(*device).lbrm_prom(_tag);
#define MCFG_ESRIP_SCREEN(screen_tag) \
- downcast<esrip_device &>(*device).set_screen_tag(("^" screen_tag));
+ downcast<esrip_device &>(*device).set_screen_tag(screen_tag);
//**************************************************************************
// TYPE DEFINITIONS
diff --git a/src/devices/machine/genpc.h b/src/devices/machine/genpc.h
index 1c94244e6ff..9408b1bde9c 100644
--- a/src/devices/machine/genpc.h
+++ b/src/devices/machine/genpc.h
@@ -25,8 +25,8 @@
#define MCFG_IBM5160_MOTHERBOARD_ADD(_tag, _cputag) \
MCFG_DEVICE_ADD(_tag, IBM5160_MOTHERBOARD, 0) \
- downcast<ibm5160_mb_device &>(*device).set_cputag("^" _cputag); \
- (*device->subdevice<isa8_device>("isa")).set_cputag("^^" _cputag);
+ downcast<ibm5160_mb_device &>(*device).set_cputag(_cputag); \
+ (*device->subdevice<isa8_device>("isa")).set_cputag(_cputag);
// ======================> ibm5160_mb_device
class ibm5160_mb_device : public device_t
@@ -130,8 +130,8 @@ DECLARE_DEVICE_TYPE(IBM5160_MOTHERBOARD, ibm5160_mb_device)
#define MCFG_IBM5150_MOTHERBOARD_ADD(_tag, _cputag) \
MCFG_DEVICE_ADD(_tag, IBM5150_MOTHERBOARD, 0) \
- downcast<ibm5150_mb_device &>(*device).set_cputag("^" _cputag); \
- (*device->subdevice<isa8_device>("isa")).set_cputag("^^" _cputag);
+ downcast<ibm5150_mb_device &>(*device).set_cputag(_cputag); \
+ (*device->subdevice<isa8_device>("isa")).set_cputag(_cputag);
// ======================> ibm5150_mb_device
class ibm5150_mb_device : public ibm5160_mb_device
@@ -163,8 +163,8 @@ DECLARE_DEVICE_TYPE(IBM5150_MOTHERBOARD, ibm5150_mb_device)
#define MCFG_EC1841_MOTHERBOARD_ADD(_tag, _cputag) \
MCFG_DEVICE_ADD(_tag, EC1841_MOTHERBOARD, 0) \
- downcast<ec1841_mb_device &>(*device).set_cputag("^" _cputag); \
- (*device->subdevice<isa8_device>("isa")).set_cputag("^^" _cputag);
+ downcast<ec1841_mb_device &>(*device).set_cputag(_cputag); \
+ (*device->subdevice<isa8_device>("isa")).set_cputag(_cputag);
class ec1841_mb_device : public ibm5160_mb_device
{
@@ -189,8 +189,8 @@ DECLARE_DEVICE_TYPE(EC1841_MOTHERBOARD, ec1841_mb_device)
#define MCFG_PCNOPPI_MOTHERBOARD_ADD(_tag, _cputag) \
MCFG_DEVICE_ADD(_tag, PCNOPPI_MOTHERBOARD, 0) \
- downcast<pc_noppi_mb_device &>(*device).set_cputag("^" _cputag); \
- (*device->subdevice<isa8_device>("isa")).set_cputag("^^" _cputag);
+ downcast<pc_noppi_mb_device &>(*device).set_cputag(_cputag); \
+ (*device->subdevice<isa8_device>("isa")).set_cputag(_cputag);
class pc_noppi_mb_device : public ibm5160_mb_device
{
diff --git a/src/devices/machine/k033906.h b/src/devices/machine/k033906.h
index 4f46c7f7dc8..58721957cf0 100644
--- a/src/devices/machine/k033906.h
+++ b/src/devices/machine/k033906.h
@@ -19,7 +19,7 @@
***************************************************************************/
#define MCFG_K033906_VOODOO(_tag) \
- downcast<k033906_device &>(*device).set_voodoo_tag("^" _tag);
+ downcast<k033906_device &>(*device).set_voodoo_tag(_tag);
/***************************************************************************
TYPE DEFINITIONS
diff --git a/src/devices/machine/k053252.h b/src/devices/machine/k053252.h
index 917fd5e96d5..7fe29893479 100644
--- a/src/devices/machine/k053252.h
+++ b/src/devices/machine/k053252.h
@@ -29,7 +29,7 @@
downcast<k053252_device &>(*device).set_offsets(_offsx, _offsy);
#define MCFG_K053252_SET_SLAVE_SCREEN(_tag) \
- downcast<k053252_device &>(*device).set_slave_screen("^" _tag);
+ downcast<k053252_device &>(*device).set_slave_screen(_tag);
class k053252_device : public device_t, public device_video_interface
diff --git a/src/devices/machine/k056230.h b/src/devices/machine/k056230.h
index 98f1326541e..ac9d8e905b7 100644
--- a/src/devices/machine/k056230.h
+++ b/src/devices/machine/k056230.h
@@ -19,7 +19,7 @@
***************************************************************************/
#define MCFG_K056230_CPU(_tag) \
- downcast<k056230_device &>(*device).set_cpu_tag("^" _tag);
+ downcast<k056230_device &>(*device).set_cpu_tag(_tag);
#define MCFG_K056230_HACK(_region) \
downcast<k056230_device &>(*device).set_thunderh_hack(_region);
diff --git a/src/devices/machine/laserdsc.h b/src/devices/machine/laserdsc.h
index 157009f865d..34b6c8c2772 100644
--- a/src/devices/machine/laserdsc.h
+++ b/src/devices/machine/laserdsc.h
@@ -77,7 +77,7 @@ enum laserdisc_field_code
#define MCFG_LASERDISC_OVERLAY_SCALE(_scalex, _scaley) \
downcast<laserdisc_device &>(*device).set_overlay_scale(_scalex, _scaley);
#define MCFG_LASERDISC_OVERLAY_PALETTE(_palette_tag) \
- downcast<laserdisc_device &>(*device).set_overlay_palette("^" _palette_tag);
+ downcast<laserdisc_device &>(*device).set_overlay_palette(_palette_tag);
// use these to add laserdisc screens with proper video update parameters
// TODO: actually move these SCREEN_RAW_PARAMS to a common screen info header
diff --git a/src/devices/machine/legscsi.h b/src/devices/machine/legscsi.h
index d00cdd9ef38..b86bb61505c 100644
--- a/src/devices/machine/legscsi.h
+++ b/src/devices/machine/legscsi.h
@@ -8,7 +8,7 @@
#include "bus/scsi/scsihle.h"
#define MCFG_LEGACY_SCSI_PORT(_tag) \
- downcast<legacy_scsi_host_adapter &>(*device).set_scsi_port("^" _tag);
+ downcast<legacy_scsi_host_adapter &>(*device).set_scsi_port(_tag);
class legacy_scsi_host_adapter : public device_t
{
diff --git a/src/devices/machine/mc68328.h b/src/devices/machine/mc68328.h
index 36b756d5fe1..61df82ebe16 100644
--- a/src/devices/machine/mc68328.h
+++ b/src/devices/machine/mc68328.h
@@ -386,7 +386,7 @@ private:
DECLARE_DEVICE_TYPE(MC68328, mc68328_device)
#define MCFG_MC68328_CPU(_tag) \
- downcast<mc68328_device &>(*device).set_cpu_tag("^" _tag);
+ downcast<mc68328_device &>(*device).set_cpu_tag(_tag);
#define MCFG_MC68328_OUT_PORT_A_CB(_devcb) \
devcb = &downcast<mc68328_device &>(*device).set_out_port_a_callback(DEVCB_##_devcb);
diff --git a/src/devices/machine/msm6253.h b/src/devices/machine/msm6253.h
index 8daae35a3c3..a4f9e33efaa 100644
--- a/src/devices/machine/msm6253.h
+++ b/src/devices/machine/msm6253.h
@@ -28,31 +28,31 @@
//**************************************************************************
#define MCFG_MSM6253_IN0_ANALOG_PORT(_input) \
- downcast<msm6253_device &>(*device).set_input_tag(0, "^" _input);
+ downcast<msm6253_device &>(*device).set_input_tag<0>(_input);
#define MCFG_MSM6253_IN1_ANALOG_PORT(_input) \
- downcast<msm6253_device &>(*device).set_input_tag(1, "^" _input);
+ downcast<msm6253_device &>(*device).set_input_tag<1>(_input);
#define MCFG_MSM6253_IN2_ANALOG_PORT(_input) \
- downcast<msm6253_device &>(*device).set_input_tag(2, "^" _input);
+ downcast<msm6253_device &>(*device).set_input_tag<2>(_input);
#define MCFG_MSM6253_IN3_ANALOG_PORT(_input) \
- downcast<msm6253_device &>(*device).set_input_tag(3, "^" _input);
+ downcast<msm6253_device &>(*device).set_input_tag<3>(_input);
#define MCFG_MSM6253_IN0_ANALOG_READ(_class, _method) \
- downcast<msm6253_device &>(*device).set_input_cb(0, msm6253_device::port_read_delegate(&_class::_method, #_class "::" #_method, this));
+ downcast<msm6253_device &>(*device).set_input_cb<0>(msm6253_device::port_read_delegate(&_class::_method, #_class "::" #_method, this));
#define MCFG_MSM6253_IN1_ANALOG_READ(_class, _method) \
- downcast<msm6253_device &>(*device).set_input_cb(1, msm6253_device::port_read_delegate(&_class::_method, #_class "::" #_method, this));
+ downcast<msm6253_device &>(*device).set_input_cb<1>(msm6253_device::port_read_delegate(&_class::_method, #_class "::" #_method, this));
#define MCFG_MSM6253_IN2_ANALOG_READ(_class, _method) \
- downcast<msm6253_device &>(*device).set_input_cb(2, msm6253_device::port_read_delegate(&_class::_method, #_class "::" #_method, this));
+ downcast<msm6253_device &>(*device).set_input_cb<2>(msm6253_device::port_read_delegate(&_class::_method, #_class "::" #_method, this));
#define MCFG_MSM6253_IN3_ANALOG_READ(_class, _method) \
- downcast<msm6253_device &>(*device).set_input_cb(3, msm6253_device::port_read_delegate(&_class::_method, #_class "::" #_method, this));
+ downcast<msm6253_device &>(*device).set_input_cb<3>(msm6253_device::port_read_delegate(&_class::_method, #_class "::" #_method, this));
#define MCFG_MSM6253_IN0_ANALOG_DEVREAD(_tag, _class, _method) \
- downcast<msm6253_device &>(*device).set_input_cb(0, msm6253_device::port_read_delegate(&_class::_method, #_class "::" #_method, _tag));
+ downcast<msm6253_device &>(*device).set_input_cb<0>(msm6253_device::port_read_delegate(&_class::_method, #_class "::" #_method, _tag));
#define MCFG_MSM6253_IN1_ANALOG_DEVREAD(_tag, _class, _method) \
- downcast<msm6253_device &>(*device).set_input_cb(1, msm6253_device::port_read_delegate(&_class::_method, #_class "::" #_method, _tag));
+ downcast<msm6253_device &>(*device).set_input_cb<1>(msm6253_device::port_read_delegate(&_class::_method, #_class "::" #_method, _tag));
#define MCFG_MSM6253_IN2_ANALOG_DEVREAD(_tag, _class, _method) \
- downcast<msm6253_device &>(*device).set_input_cb(2, msm6253_device::port_read_delegate(&_class::_method, #_class "::" #_method, _tag));
+ downcast<msm6253_device &>(*device).set_input_cb<2>(msm6253_device::port_read_delegate(&_class::_method, #_class "::" #_method, _tag));
#define MCFG_MSM6253_IN3_ANALOG_DEVREAD(_tag, _class, _method) \
- downcast<msm6253_device &>(*device).set_input_cb(3, msm6253_device::port_read_delegate(&_class::_method, #_class "::" #_method, _tag));
+ downcast<msm6253_device &>(*device).set_input_cb<3>(msm6253_device::port_read_delegate(&_class::_method, #_class "::" #_method, _tag));
//**************************************************************************
@@ -70,8 +70,8 @@ public:
msm6253_device(const machine_config &mconfig, const char *tag, device_t *owner, u32 clock);
// configuration
- void set_input_tag(int port, const char *tag) { m_analog_ports[port].set_tag(tag); }
- template <typename Object> void set_input_cb(int port, Object &&cb) { m_analog_input_cb[port] = std::forward<Object>(cb); }
+ template <unsigned P> void set_input_tag(const char *tag) { m_analog_ports[P].set_tag(tag); }
+ template <unsigned P, typename Object> void set_input_cb(Object &&cb) { m_analog_input_cb[P] = std::forward<Object>(cb); }
// write handlers
WRITE8_MEMBER(address_w);
diff --git a/src/devices/machine/ra17xx.h b/src/devices/machine/ra17xx.h
index c0715336145..4e84a725756 100644
--- a/src/devices/machine/ra17xx.h
+++ b/src/devices/machine/ra17xx.h
@@ -11,10 +11,11 @@
20 ... 2f, 40 ... 4f or 60 ... 6f.
**********************************************************************/
-
#ifndef MAME_MACHINE_RA17XX_H
#define MAME_MACHINE_RA17XX_H
+#pragma once
+
#include "device.h"
#include "cpu/pps4/pps4.h"
@@ -32,7 +33,7 @@
downcast<ra17xx_device &>(*device).set_iowr(DEVCB_##devcb);
#define MCFG_RA17XX_CPU(tag) \
- downcast<ra17xx_device &>(*device).set_cpu_tag("^" tag);
+ downcast<ra17xx_device &>(*device).set_cpu_tag(tag);
class ra17xx_device : public device_t
{
diff --git a/src/devices/machine/s3c2400.h b/src/devices/machine/s3c2400.h
index d4c18ed89ee..11d6c247e62 100644
--- a/src/devices/machine/s3c2400.h
+++ b/src/devices/machine/s3c2400.h
@@ -21,10 +21,10 @@
#define S3C2400_TAG "s3c2400"
#define MCFG_S3C2400_PALETTE(palette_tag) \
- downcast<s3c2400_device &>(*device).set_palette_tag(("^" palette_tag));
+ downcast<s3c2400_device &>(*device).set_palette_tag(palette_tag);
#define MCFG_S3C2400_SCREEN(screen_tag) \
- downcast<s3c2400_device &>(*device).set_screen_tag(("^" screen_tag));
+ downcast<s3c2400_device &>(*device).set_screen_tag(screen_tag);
#define MCFG_S3C2400_CORE_PIN_R_CB(cb) \
devcb = &downcast<s3c2400_device &>(*device).set_core_pin_r_callback(DEVCB_##cb);
diff --git a/src/devices/machine/s3c2410.h b/src/devices/machine/s3c2410.h
index 5df8e0debf3..36ea547f6ca 100644
--- a/src/devices/machine/s3c2410.h
+++ b/src/devices/machine/s3c2410.h
@@ -21,10 +21,10 @@
#define S3C2410_TAG "s3c2410"
#define MCFG_S3C2410_PALETTE(palette_tag) \
- downcast<s3c2410_device &>(*device).set_palette_tag(("^" palette_tag));
+ downcast<s3c2410_device &>(*device).set_palette_tag(palette_tag);
#define MCFG_S3C2410_SCREEN(screen_tag) \
- downcast<s3c2410_device &>(*device).set_screen_tag(("^" screen_tag));
+ downcast<s3c2410_device &>(*device).set_screen_tag(screen_tag);
#define MCFG_S3C2410_CORE_PIN_R_CB(cb) \
devcb = &downcast<s3c2410_device &>(*device).set_core_pin_r_callback(DEVCB_##cb);
diff --git a/src/devices/machine/s3c2440.h b/src/devices/machine/s3c2440.h
index 260f6e4d95a..f226f0bef37 100644
--- a/src/devices/machine/s3c2440.h
+++ b/src/devices/machine/s3c2440.h
@@ -20,10 +20,10 @@
#define S3C2440_TAG "s3c2440"
#define MCFG_S3C2440_PALETTE(_palette_tag) \
- downcast<s3c2440_device &>(*device).set_palette_tag("^" _palette_tag);
+ downcast<s3c2440_device &>(*device).set_palette_tag(_palette_tag);
#define MCFG_S3C2440_SCREEN(screen_tag) \
- downcast<s3c2440_device &>(*device).set_screen_tag(("^" screen_tag));
+ downcast<s3c2440_device &>(*device).set_screen_tag(screen_tag);
#define MCFG_S3C2440_CORE_PIN_R_CB(_devcb) \
devcb = &downcast<s3c2440_device &>(*device).set_core_pin_r_callback(DEVCB_##_devcb);
diff --git a/src/devices/machine/smpc.h b/src/devices/machine/smpc.h
index abdf526c508..bb18b14da4f 100644
--- a/src/devices/machine/smpc.h
+++ b/src/devices/machine/smpc.h
@@ -24,7 +24,7 @@
MCFG_DEVICE_ADD((tag), SMPC_HLE, (clock))
#define MCFG_SMPC_HLE_SCREEN(screen_tag) \
- downcast<smpc_hle_device &>(*device).set_screen_tag(("^" screen_tag));
+ downcast<smpc_hle_device &>(*device).set_screen_tag(screen_tag);
#define MCFG_SMPC_HLE_CONTROL_PORTS(ctrl1_tag, ctrl2_tag) \
downcast<smpc_hle_device &>(*device).set_control_port_tags(ctrl1_tag, ctrl2_tag);
diff --git a/src/devices/machine/tc009xlvc.h b/src/devices/machine/tc009xlvc.h
index cd6ec859876..17273249baa 100644
--- a/src/devices/machine/tc009xlvc.h
+++ b/src/devices/machine/tc009xlvc.h
@@ -85,6 +85,6 @@ DECLARE_DEVICE_TYPE(TC0091LVC, tc0091lvc_device)
#define MCFG_TC0091LVC_GFXDECODE(gfxtag) \
- downcast<tc0091lvc_device &>(*device).set_gfxdecode_tag(("^" gfxtag));
+ downcast<tc0091lvc_device &>(*device).set_gfxdecode_tag(gfxtag);
#endif // MAME_MACHINE_TL009XLVC_H
diff --git a/src/devices/machine/tmp68301.h b/src/devices/machine/tmp68301.h
index 3034e192b2c..c2d2c9cdbbd 100644
--- a/src/devices/machine/tmp68301.h
+++ b/src/devices/machine/tmp68301.h
@@ -15,7 +15,7 @@
// FIXME: M68000 ought to be a parent class, not an external object
#define MCFG_TMP68301_CPU(_tag) \
- downcast<tmp68301_device &>(*device).set_cpu_tag("^" _tag);
+ downcast<tmp68301_device &>(*device).set_cpu_tag(_tag);
#define MCFG_TMP68301_IN_PARALLEL_CB(cb) \
devcb = &downcast<tmp68301_device &>(*device).set_in_parallel_callback((DEVCB_##cb));
diff --git a/src/devices/machine/upd4701.h b/src/devices/machine/upd4701.h
index a7a09397281..370a7e5a94c 100644
--- a/src/devices/machine/upd4701.h
+++ b/src/devices/machine/upd4701.h
@@ -32,9 +32,9 @@
***************************************************************************/
#define MCFG_UPD4701_PORTX(_tag) \
- downcast<upd4701_device &>(*device).set_portx_tag("^" _tag);
+ downcast<upd4701_device &>(*device).set_portx_tag(_tag);
#define MCFG_UPD4701_PORTY(_tag) \
- downcast<upd4701_device &>(*device).set_porty_tag("^" _tag);
+ downcast<upd4701_device &>(*device).set_porty_tag(_tag);
#define MCFG_UPD4701_CF_CALLBACK(_devcb) \
devcb = downcast<upd4701_device &>(*device).set_cf_cb(DEVCB_##_devcb);
#define MCFG_UPD4701_SF_CALLBACK(_devcb) \
diff --git a/src/devices/machine/upd71071.h b/src/devices/machine/upd71071.h
index 813a5bea3fe..7989d180169 100644
--- a/src/devices/machine/upd71071.h
+++ b/src/devices/machine/upd71071.h
@@ -76,7 +76,7 @@ private:
DECLARE_DEVICE_TYPE(UPD71071, upd71071_device)
#define MCFG_UPD71071_CPU(tag) \
- downcast<upd71071_device &>(*device).set_cpu_tag(("^" tag));
+ downcast<upd71071_device &>(*device).set_cpu_tag(tag);
#define MCFG_UPD71071_CLOCK(clk) \
downcast<upd71071_device &>(*device).set_clock((clk));
diff --git a/src/devices/sound/c6280.h b/src/devices/sound/c6280.h
index 11cae3eaa63..1c5474e3adf 100644
--- a/src/devices/sound/c6280.h
+++ b/src/devices/sound/c6280.h
@@ -57,6 +57,6 @@ private:
DECLARE_DEVICE_TYPE(C6280, c6280_device)
#define MCFG_C6280_CPU(tag) \
- downcast<c6280_device &>(*device).set_devicecpu_tag(("^" tag));
+ downcast<c6280_device &>(*device).set_devicecpu_tag(tag);
#endif // MAME_SOUND_C6280_H
diff --git a/src/devices/sound/es8712.h b/src/devices/sound/es8712.h
index 30665b9fdc3..796167331ed 100644
--- a/src/devices/sound/es8712.h
+++ b/src/devices/sound/es8712.h
@@ -23,7 +23,7 @@
#define MCFG_ES8712_MSM_WRITE_CALLBACK(_devcb) \
devcb = &downcast<es8712_device &>(*device).set_msm_write_callback(DEVCB_##_devcb);
#define MCFG_ES8712_MSM_TAG(_msmtag) \
- downcast<es8712_device &>(*device).set_msm_tag(("^" _msmtag));
+ downcast<es8712_device &>(*device).set_msm_tag(_msmtag);
//**************************************************************************
diff --git a/src/devices/sound/gaelco.h b/src/devices/sound/gaelco.h
index d046ab791c4..f670eaf0c70 100644
--- a/src/devices/sound/gaelco.h
+++ b/src/devices/sound/gaelco.h
@@ -11,7 +11,7 @@
//**************************************************************************
#define MCFG_GAELCO_SND_DATA(_tag) \
- downcast<gaelco_gae1_device &>(*device).set_snd_data_tag("^" _tag);
+ downcast<gaelco_gae1_device &>(*device).set_snd_data_tag(_tag);
#define MCFG_GAELCO_BANKS(_offs1, _offs2, _offs3, _offs4) \
downcast<gaelco_gae1_device &>(*device).set_bank_offsets(_offs1, _offs2, _offs3, _offs4);
diff --git a/src/devices/sound/tms5110.h b/src/devices/sound/tms5110.h
index 01de692eb8d..066590302da 100644
--- a/src/devices/sound/tms5110.h
+++ b/src/devices/sound/tms5110.h
@@ -338,7 +338,7 @@ private:
DECLARE_DEVICE_TYPE(TMSPROM, tmsprom_device)
#define MCFG_TMSPROM_REGION(_region) \
- downcast<tmsprom_device &>(*device).set_region("^" _region);
+ downcast<tmsprom_device &>(*device).set_region(_region);
#define MCFG_TMSPROM_ROM_SIZE(_size) \
downcast<tmsprom_device &>(*device).set_rom_size(_size);
diff --git a/src/devices/video/315_5313.h b/src/devices/video/315_5313.h
index 539fa39e6d6..412e28fb094 100644
--- a/src/devices/video/315_5313.h
+++ b/src/devices/video/315_5313.h
@@ -36,7 +36,7 @@
downcast<sega315_5313_device &>(*device).set_palwrite_base(_data);
#define MCFG_SEGA315_5313_PALETTE(_palette_tag) \
- downcast<sega315_5313_device &>(*device).set_palette_tag("^" _palette_tag);
+ downcast<sega315_5313_device &>(*device).set_palette_tag(_palette_tag);
// Temporary solution while 32x VDP mixing and scanline interrupting is moved outside MD VDP
diff --git a/src/devices/video/ef9345.h b/src/devices/video/ef9345.h
index f93229c6efa..b6944dcb548 100644
--- a/src/devices/video/ef9345.h
+++ b/src/devices/video/ef9345.h
@@ -15,7 +15,7 @@
#define MCFG_EF9345_PALETTE(_palette_tag) \
- downcast<ef9345_device &>(*device).set_palette_tag("^" _palette_tag);
+ downcast<ef9345_device &>(*device).set_palette_tag(_palette_tag);
//**************************************************************************
// TYPE DEFINITIONS
diff --git a/src/devices/video/ef9364.h b/src/devices/video/ef9364.h
index cc1faafaac3..2ecf4079e04 100644
--- a/src/devices/video/ef9364.h
+++ b/src/devices/video/ef9364.h
@@ -14,7 +14,7 @@
#pragma once
#define MCFG_EF9364_PALETTE(_palette_tag) \
- downcast<ef9364_device &>(*device).set_palette_tag("^" _palette_tag);
+ downcast<ef9364_device &>(*device).set_palette_tag(_palette_tag);
#define MCFG_EF9364_PAGES_CNT(_pages_number) \
downcast<ef9364_device &>(*device).set_nb_of_pages(_pages_number);
diff --git a/src/devices/video/ef9365.h b/src/devices/video/ef9365.h
index 5f0bbadd8b1..6ecdeec6d72 100644
--- a/src/devices/video/ef9365.h
+++ b/src/devices/video/ef9365.h
@@ -14,7 +14,7 @@
#pragma once
#define MCFG_EF936X_PALETTE(palette_tag) \
- downcast<ef9365_device &>(*device).set_palette_tag(("^" palette_tag));
+ downcast<ef9365_device &>(*device).set_palette_tag(palette_tag);
#define MCFG_EF936X_BITPLANES_CNT(bitplanes_number) \
downcast<ef9365_device &>(*device).set_nb_bitplanes((bitplanes_number));
diff --git a/src/devices/video/gb_lcd.h b/src/devices/video/gb_lcd.h
index 616b2f3e20c..530788d4de2 100644
--- a/src/devices/video/gb_lcd.h
+++ b/src/devices/video/gb_lcd.h
@@ -295,19 +295,19 @@ DECLARE_DEVICE_TYPE(CGB_PPU, cgb_ppu_device)
#define MCFG_DMG_PPU_ADD(_tag, _cpu_tag ) \
MCFG_DEVICE_ADD( _tag, DMG_PPU, 0 ) \
- downcast<dmg_ppu_device &>(*device).set_lr35902_tag("^" _cpu_tag);
+ downcast<dmg_ppu_device &>(*device).set_lr35902_tag(_cpu_tag);
#define MCFG_MGB_PPU_ADD(_tag, _cpu_tag ) \
MCFG_DEVICE_ADD( _tag, MGB_PPU, 0 ) \
- downcast<dmg_ppu_device &>(*device).set_lr35902_tag("^" _cpu_tag);
+ downcast<dmg_ppu_device &>(*device).set_lr35902_tag(_cpu_tag);
#define MCFG_SGB_PPU_ADD(_tag, _cpu_tag ) \
MCFG_DEVICE_ADD( _tag, SGB_PPU, 0 ) \
- downcast<dmg_ppu_device &>(*device).set_lr35902_tag("^" _cpu_tag);
+ downcast<dmg_ppu_device &>(*device).set_lr35902_tag(_cpu_tag);
#define MCFG_CGB_PPU_ADD(_tag, _cpu_tag ) \
MCFG_DEVICE_ADD( _tag, CGB_PPU, 0 ) \
- downcast<dmg_ppu_device &>(*device).set_lr35902_tag("^" _cpu_tag);
+ downcast<dmg_ppu_device &>(*device).set_lr35902_tag(_cpu_tag);
#endif // MAME_VIDEO_GB_LCD_H
diff --git a/src/devices/video/imagetek_i4100.h b/src/devices/video/imagetek_i4100.h
index e09efb8ebb1..244193cbec3 100644
--- a/src/devices/video/imagetek_i4100.h
+++ b/src/devices/video/imagetek_i4100.h
@@ -19,7 +19,7 @@
//**************************************************************************
#define MCFG_I4100_GFXDECODE(gfxtag) \
- downcast<imagetek_i4100_device &>(*device).set_gfxdecode_tag(("^" gfxtag));
+ downcast<imagetek_i4100_device &>(*device).set_gfxdecode_tag(gfxtag);
#define MCFG_I4100_BLITTER_END_CALLBACK(_devcb) \
devcb = &downcast<imagetek_i4100_device &>(*device).set_blitter_irq_callback(DEVCB_##_devcb);
diff --git a/src/devices/video/mb_vcu.h b/src/devices/video/mb_vcu.h
index c6e1d7b30f9..b6008cea8bd 100644
--- a/src/devices/video/mb_vcu.h
+++ b/src/devices/video/mb_vcu.h
@@ -90,9 +90,9 @@ DECLARE_DEVICE_TYPE(MB_VCU, mb_vcu_device)
//**************************************************************************
#define MCFG_MB_VCU_CPU(_tag) \
- downcast<mb_vcu_device &>(*device).set_cpu_tag("^" _tag);
+ downcast<mb_vcu_device &>(*device).set_cpu_tag(_tag);
#define MCFG_MB_VCU_PALETTE(_palette_tag) \
- downcast<mb_vcu_device &>(*device).set_palette_tag("^" _palette_tag);
+ downcast<mb_vcu_device &>(*device).set_palette_tag(_palette_tag);
#endif // MAME_VIDEO_MB_VCU_H
diff --git a/src/devices/video/mos6566.h b/src/devices/video/mos6566.h
index 94ab067a425..56e106022db 100644
--- a/src/devices/video/mos6566.h
+++ b/src/devices/video/mos6566.h
@@ -90,7 +90,7 @@
//***************************************************************************
#define MCFG_MOS6566_CPU(_tag) \
- downcast<mos6566_device &>(*device).set_cpu_tag("^" _tag);
+ downcast<mos6566_device &>(*device).set_cpu_tag(_tag);
#define MCFG_MOS6566_IRQ_CALLBACK(_write) \
devcb = &downcast<mos6566_device &>(*device).set_irq_wr_callback(DEVCB_##_write);
diff --git a/src/devices/video/msm6222b.cpp b/src/devices/video/msm6222b.cpp
index 1e342e04084..ebcbfea24fe 100644
--- a/src/devices/video/msm6222b.cpp
+++ b/src/devices/video/msm6222b.cpp
@@ -31,14 +31,14 @@ msm6222b_device::msm6222b_device(const machine_config &mconfig, device_type type
msm6222b_device::msm6222b_device(const machine_config &mconfig, const char *tag, device_t *owner, uint32_t clock) :
msm6222b_device(mconfig, MSM6222B, tag, owner, clock)
{
- m_cgrom.set_tag(DEVICE_SELF);
+ m_cgrom.set_tag(*this, DEVICE_SELF);
}
msm6222b_01_device::msm6222b_01_device(const machine_config &mconfig, const char *tag, device_t *owner, uint32_t clock) :
msm6222b_device(mconfig, MSM6222B_01, tag, owner, clock)
{
// load the fixed cgrom
- m_cgrom.set_tag("cgrom");
+ m_cgrom.set_tag(*this, "cgrom");
}
const tiny_rom_entry *msm6222b_01_device::device_rom_region() const
diff --git a/src/devices/video/ppu2c0x.h b/src/devices/video/ppu2c0x.h
index 95c929ccdab..a516cbb5a2a 100644
--- a/src/devices/video/ppu2c0x.h
+++ b/src/devices/video/ppu2c0x.h
@@ -59,7 +59,7 @@
#define MCFG_PPU2C0X_SET_SCREEN MCFG_VIDEO_SET_SCREEN
#define MCFG_PPU2C0X_CPU(_tag) \
- downcast<ppu2c0x_device &>(*device).set_cpu_tag("^" _tag);
+ downcast<ppu2c0x_device &>(*device).set_cpu_tag(_tag);
#define MCFG_PPU2C0X_COLORBASE(_color) \
downcast<ppu2c0x_device &>(*device).set_color_base(_color);
diff --git a/src/devices/video/ramdac.h b/src/devices/video/ramdac.h
index 55471af0431..d6be006ab35 100644
--- a/src/devices/video/ramdac.h
+++ b/src/devices/video/ramdac.h
@@ -20,7 +20,7 @@
#define MCFG_RAMDAC_ADD(_tag, _map, _palette_tag) \
MCFG_DEVICE_ADD(_tag, RAMDAC, 0) \
MCFG_DEVICE_ADDRESS_MAP(0, _map) \
- downcast<ramdac_device &>(*device).set_palette_tag("^" _palette_tag);
+ downcast<ramdac_device &>(*device).set_palette_tag(_palette_tag);
#define MCFG_RAMDAC_COLOR_BASE(_color_base) \
downcast<ramdac_device &>(*device).set_color_base(_color_base);
diff --git a/src/devices/video/tms9927.h b/src/devices/video/tms9927.h
index 90da2ff414a..9ee746bc522 100644
--- a/src/devices/video/tms9927.h
+++ b/src/devices/video/tms9927.h
@@ -20,7 +20,7 @@
downcast<tms9927_device &>(*device).set_char_width(_pixels);
#define MCFG_TMS9927_REGION(_tag) \
- downcast<tms9927_device &>(*device).set_region_tag("^" _tag);
+ downcast<tms9927_device &>(*device).set_region_tag(_tag);
#define MCFG_TMS9927_OVERSCAN(_left, _right, _top, _bottom) \
downcast<tms9927_device &>(*device).set_overscan(_left, _right, _top, _bottom);
diff --git a/src/devices/video/vic4567.h b/src/devices/video/vic4567.h
index 2b94e93f0cd..5d24654ac21 100644
--- a/src/devices/video/vic4567.h
+++ b/src/devices/video/vic4567.h
@@ -237,7 +237,7 @@ DECLARE_DEVICE_TYPE(VIC3, vic3_device)
#define MCFG_VIC3_CPU(tag) \
- downcast<vic3_device &>(*device).set_cpu_tag(("^" tag));
+ downcast<vic3_device &>(*device).set_cpu_tag(tag);
#define MCFG_VIC3_TYPE(type) \
downcast<vic3_device &>(*device).set_vic3_type((vic3_device::vic3_type::type));