summaryrefslogtreecommitdiffstatshomepage
path: root/src/mame/machine/naomim4.h
diff options
context:
space:
mode:
Diffstat (limited to 'src/mame/machine/naomim4.h')
-rw-r--r--src/mame/machine/naomim4.h13
1 files changed, 8 insertions, 5 deletions
diff --git a/src/mame/machine/naomim4.h b/src/mame/machine/naomim4.h
index 28ef730a1b3..1ecab27a87b 100644
--- a/src/mame/machine/naomim4.h
+++ b/src/mame/machine/naomim4.h
@@ -5,16 +5,19 @@
#include "naomibd.h"
-#define MCFG_NAOMI_M4_BOARD_ADD(_tag, _key_tag, _eeprom_tag, _irq_cb) \
- MCFG_NAOMI_BOARD_ADD(_tag, NAOMI_M4_BOARD, _eeprom_tag, _irq_cb) \
- downcast<naomi_m4_board &>(*device).set_tags(_key_tag);
class naomi_m4_board : public naomi_board
{
public:
- naomi_m4_board(const machine_config &mconfig, const char *tag, device_t *owner, uint32_t clock);
+ template <typename T, typename U>
+ naomi_m4_board(const machine_config &mconfig, const char *tag, device_t *owner, uint32_t clock, T &&eeprom_tag, U &&keyregion_tag)
+ : naomi_m4_board(mconfig, tag, owner, clock)
+ {
+ eeprom.set_tag(std::forward<T>(eeprom_tag));
+ m_key_data.set_tag(std::forward<U>(keyregion_tag));
+ }
- void set_tags(const char *key_tag) { m_key_data.set_tag(key_tag); }
+ naomi_m4_board(const machine_config &mconfig, const char *tag, device_t *owner, uint32_t clock);
virtual void submap(address_map &map) override;