summaryrefslogtreecommitdiffstatshomepage
diff options
context:
space:
mode:
author AJR <ajrhacker@users.noreply.github.com>2018-08-01 17:07:40 -0400
committer AJR <ajrhacker@users.noreply.github.com>2018-08-01 17:07:40 -0400
commit768a48ff60e430d929800d7000065a0b54cef2a8 (patch)
tree50391cec351bd78fae9c7107b6e3a38121b9b3c7
parentbe9c4ead94f3006d84fc00d1980579cfa68efd98 (diff)
ripple_counter: Finish devcb3 conversion (nw)
-rw-r--r--src/devices/bus/ss50/mpc.cpp4
-rw-r--r--src/devices/machine/ripple_counter.h15
-rw-r--r--src/mame/drivers/mermaid.cpp8
-rw-r--r--src/mame/drivers/ms6102.cpp6
-rw-r--r--src/mame/drivers/rainbow.cpp6
-rw-r--r--src/mame/machine/vt100_kbd.cpp6
6 files changed, 15 insertions, 30 deletions
diff --git a/src/devices/bus/ss50/mpc.cpp b/src/devices/bus/ss50/mpc.cpp
index 25a6ed43951..ff606f5e087 100644
--- a/src/devices/bus/ss50/mpc.cpp
+++ b/src/devices/bus/ss50/mpc.cpp
@@ -121,8 +121,8 @@ MACHINE_CONFIG_START(ss50_mpc_device::device_add_mconfig)
MCFG_INPUT_MERGER_ANY_HIGH("loopback")
MCFG_INPUT_MERGER_OUTPUT_HANDLER(WRITELINE("outgate", input_merger_device, in_w<1>))
- MCFG_DEVICE_ADD("counter", RIPPLE_COUNTER, 0) // CD4024AE (IC3)
- MCFG_RIPPLE_COUNTER_STAGES(7) // only Q5 (÷32) and Q4 (÷16) are actually used
+ RIPPLE_COUNTER(config, m_counter); // CD4024AE (IC3)
+ m_counter->set_stages(7); // only Q5 (÷32) and Q4 (÷16) are actually used
MACHINE_CONFIG_END
diff --git a/src/devices/machine/ripple_counter.h b/src/devices/machine/ripple_counter.h
index e61c1ec5ef8..5a4ad3e1295 100644
--- a/src/devices/machine/ripple_counter.h
+++ b/src/devices/machine/ripple_counter.h
@@ -12,19 +12,6 @@
#pragma once
//**************************************************************************
-// CONFIGURATION MACROS
-//**************************************************************************
-
-#define MCFG_RIPPLE_COUNTER_STAGES(_stages) \
- downcast<ripple_counter_device &>(*device).set_stages(_stages);
-
-// output callbacks
-#define MCFG_RIPPLE_COUNTER_COUNT_OUT_CB(_devcb) \
- downcast<ripple_counter_device &>(*device).set_count_out_cb(DEVCB_##_devcb);
-#define MCFG_RIPPLE_COUNTER_ROM_OUT_CB(_devcb) \
- downcast<ripple_counter_device &>(*device).set_rom_out_cb(DEVCB_##_devcb);
-
-//**************************************************************************
// TYPE DEFINITIONS
//**************************************************************************
@@ -38,8 +25,6 @@ public:
// configuration
void set_stages(u8 stages) { m_count_mask = (1U << stages) - 1; set_rom_addr_width(stages); }
- template<class Object> devcb_base &set_count_out_cb(Object &&cb) { return m_count_out_cb.set_callback(std::forward<Object>(cb)); }
- template<class Object> devcb_base &set_rom_out_cb(Object &&cb) { return m_rom_out_cb.set_callback(std::forward<Object>(cb)); }
auto count_out_cb() { return m_count_out_cb.bind(); }
auto rom_out_cb() { return m_rom_out_cb.bind(); }
diff --git a/src/mame/drivers/mermaid.cpp b/src/mame/drivers/mermaid.cpp
index 4ae015c8fee..fd8c2a7e8c8 100644
--- a/src/mame/drivers/mermaid.cpp
+++ b/src/mame/drivers/mermaid.cpp
@@ -484,10 +484,10 @@ MACHINE_CONFIG_START(mermaid_state::rougien)
MCFG_MSM5205_PRESCALER_SELECTOR(S96_4B)
MCFG_SOUND_ROUTE(ALL_OUTPUTS, "mono", 1.00)
- MCFG_DEVICE_ADD("adpcm_counter", RIPPLE_COUNTER, 0)
- MCFG_DEVICE_ROM("adpcm")
- MCFG_RIPPLE_COUNTER_STAGES(12)
- MCFG_RIPPLE_COUNTER_ROM_OUT_CB(WRITE8(*this, mermaid_state, adpcm_data_w))
+ RIPPLE_COUNTER(config, m_adpcm_counter);
+ m_adpcm_counter->set_device_rom_tag("adpcm");
+ m_adpcm_counter->set_stages(12);
+ m_adpcm_counter->rom_out_cb().set(FUNC(mermaid_state::adpcm_data_w));
MACHINE_CONFIG_END
/* ROMs */
diff --git a/src/mame/drivers/ms6102.cpp b/src/mame/drivers/ms6102.cpp
index e7ab393ffb6..320e27d9c85 100644
--- a/src/mame/drivers/ms6102.cpp
+++ b/src/mame/drivers/ms6102.cpp
@@ -346,9 +346,9 @@ MACHINE_CONFIG_START(ms6102_state::ms6102)
MCFG_AY31015_WRITE_DAV_CB(WRITELINE(*this, ms6102_state, irq<1>))
MCFG_AY31015_AUTO_RDAV(true)
- MCFG_DEVICE_ADD("ie5", RIPPLE_COUNTER, XTAL(16'400'000) / 30)
- MCFG_RIPPLE_COUNTER_STAGES(2)
- MCFG_RIPPLE_COUNTER_COUNT_OUT_CB(WRITE8(*this, ms6102_state, kbd_uart_clock_w))
+ ripple_counter_device &ie5(RIPPLE_COUNTER(config, "ie5", XTAL(16'400'000) / 30));
+ ie5.set_stages(2);
+ ie5.count_out_cb().set(FUNC(ms6102_state::kbd_uart_clock_w));
MS7002(config, m_keyboard, 0).signal_out_callback().set(m_kbd_uart, FUNC(ay31015_device::write_si));
diff --git a/src/mame/drivers/rainbow.cpp b/src/mame/drivers/rainbow.cpp
index 91ea68f198b..61a9ca1b30d 100644
--- a/src/mame/drivers/rainbow.cpp
+++ b/src/mame/drivers/rainbow.cpp
@@ -3342,10 +3342,10 @@ MACHINE_CONFIG_START(rainbow_state::rainbow)
MCFG_DEVICE_ADD(LK201_TAG, LK201, 0)
MCFG_LK201_TX_HANDLER(WRITELINE("kbdser", i8251_device, write_rxd))
- MCFG_DEVICE_ADD("prtbrg", RIPPLE_COUNTER, 24.0734_MHz_XTAL / 6 / 13) // 74LS393 at E17 (both halves)
+ ripple_counter_device &prtbrg(RIPPLE_COUNTER(config, "prtbrg", 24.0734_MHz_XTAL / 6 / 13)); // 74LS393 at E17 (both halves)
// divided clock should ideally be 307.2 kHz, but is actually approximately 308.6333 kHz
- MCFG_RIPPLE_COUNTER_STAGES(8)
- MCFG_RIPPLE_COUNTER_COUNT_OUT_CB(WRITE8(*this, rainbow_state, bitrate_counter_w))
+ prtbrg.set_stages(8);
+ prtbrg.count_out_cb().set(FUNC(rainbow_state::bitrate_counter_w));
MCFG_TIMER_DRIVER_ADD_PERIODIC("motor", rainbow_state, hd_motor_tick, attotime::from_hz(60))
diff --git a/src/mame/machine/vt100_kbd.cpp b/src/mame/machine/vt100_kbd.cpp
index c7cdd6d5141..b1c22f2845a 100644
--- a/src/mame/machine/vt100_kbd.cpp
+++ b/src/mame/machine/vt100_kbd.cpp
@@ -199,9 +199,9 @@ MACHINE_CONFIG_START(vt100_keyboard_device::device_add_mconfig)
MCFG_DEVICE_ADD("uart", AY31015, 0)
MCFG_AY31015_WRITE_SO_CB(WRITELINE(*this, vt100_keyboard_device, signal_out_w))
- MCFG_DEVICE_ADD("counter", RIPPLE_COUNTER, 0) // 2x 74LS93
- MCFG_RIPPLE_COUNTER_STAGES(8)
- MCFG_RIPPLE_COUNTER_COUNT_OUT_CB(WRITE8(*this, vt100_keyboard_device, key_scan_w))
+ RIPPLE_COUNTER(config, m_scan_counter); // 2x 74LS93
+ m_scan_counter->set_stages(8);
+ m_scan_counter->count_out_cb().set(FUNC(vt100_keyboard_device::key_scan_w));
MACHINE_CONFIG_END