From 0ab6ef3f39e7fc5a2a136d24137e09b8e7859a2a Mon Sep 17 00:00:00 2001 From: Ivan Vangelista Date: Wed, 26 Sep 2018 18:16:02 +0200 Subject: metro.cpp: removed MCFG macros for puzzlet_io_device (nw) --- src/mame/drivers/metro.cpp | 12 +++--------- 1 file changed, 3 insertions(+), 9 deletions(-) diff --git a/src/mame/drivers/metro.cpp b/src/mame/drivers/metro.cpp index 0ae0ebbea43..4ec8f31ea33 100644 --- a/src/mame/drivers/metro.cpp +++ b/src/mame/drivers/metro.cpp @@ -1142,12 +1142,6 @@ void metro_state::mouja_okimap(address_map &map) Puzzlet ***************************************************************************/ -#define MCFG_PUZZLET_IO_ADD(_tag) \ - MCFG_DEVICE_ADD(_tag, PUZZLET_IO, 0) - -#define MCFG_PUZZLET_IO_DATA_CALLBACK(_devcb) \ - puzzlet_io_device::set_data_cb(*device, DEVCB_##_devcb); - class puzzlet_io_device : public device_t { public: puzzlet_io_device(const machine_config &mconfig, const char *tag, device_t *owner, uint32_t clock); @@ -1155,7 +1149,7 @@ public: DECLARE_WRITE_LINE_MEMBER( ce_w ); DECLARE_WRITE_LINE_MEMBER( clk_w ); - template static devcb_base &set_data_cb(device_t &device, Object &&cb) { return downcast(device).data_cb.set_callback(std::forward(cb)); } + auto data_callback() { return data_cb.bind(); } protected: virtual void device_start() override; @@ -3805,8 +3799,8 @@ MACHINE_CONFIG_START(metro_state::puzzlet) MCFG_DEVICE_IO_MAP(puzzlet_io_map) /* Coins/service */ - MCFG_PUZZLET_IO_ADD("coins") - MCFG_PUZZLET_IO_DATA_CALLBACK(WRITELINE("maincpu:sci1", h8_sci_device, rx_w)) + puzzlet_io_device &coins(PUZZLET_IO(config, "coins", 0)); + coins.data_callback().set("maincpu:sci1", FUNC(h8_sci_device::rx_w)); MCFG_DEVICE_MODIFY("maincpu:sci1") MCFG_H8_SCI_TX_CALLBACK(WRITELINE("coins", puzzlet_io_device, ce_w)) MCFG_H8_SCI_CLK_CALLBACK(WRITELINE("coins", puzzlet_io_device, clk_w)) -- cgit v1.2.3