summaryrefslogtreecommitdiffstatshomepage
diff options
context:
space:
mode:
author Ivan Vangelista <mesgnet@yahoo.it>2018-09-26 18:16:02 +0200
committer Ivan Vangelista <mesgnet@yahoo.it>2018-09-26 18:16:02 +0200
commit0ab6ef3f39e7fc5a2a136d24137e09b8e7859a2a (patch)
treec49c013e5b759e5f81805c18b46f7fa174245f29
parentb983fa0d7686ec5d9c88810592c8322159885d10 (diff)
metro.cpp: removed MCFG macros for puzzlet_io_device (nw)
-rw-r--r--src/mame/drivers/metro.cpp12
1 files 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 <class Object> static devcb_base &set_data_cb(device_t &device, Object &&cb) { return downcast<puzzlet_io_device &>(device).data_cb.set_callback(std::forward<Object>(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))