summaryrefslogtreecommitdiffstatshomepage
path: root/src/devices/bus/lpci/mpc105.h
diff options
context:
space:
mode:
Diffstat (limited to 'src/devices/bus/lpci/mpc105.h')
-rw-r--r--src/devices/bus/lpci/mpc105.h10
1 files changed, 8 insertions, 2 deletions
diff --git a/src/devices/bus/lpci/mpc105.h b/src/devices/bus/lpci/mpc105.h
index 94f9181a2d7..65ab5a59637 100644
--- a/src/devices/bus/lpci/mpc105.h
+++ b/src/devices/bus/lpci/mpc105.h
@@ -17,6 +17,11 @@
#define MPC105_MEMORYBANK_COUNT 8
+#define MCFG_MPC105_CPU( _tag ) \
+ downcast<mpc105_device &>(*device).set_cpu(_tag);
+
+#define MCFG_MPC105_BANK_BASE_DEFAULT( bank_base_default ) \
+ downcast<mpc105_device &>(*device).set_bank_base_default(bank_base_default);
// ======================> mpc105_device
@@ -27,7 +32,7 @@ public:
// construction/destruction
mpc105_device(const machine_config &mconfig, const char *tag, device_t *owner, uint32_t clock);
- template <typename T> void set_cpu(T &&tag) { m_maincpu.set_tag(std::forward<T>(tag)); }
+ void set_cpu(const char *tag) { m_cpu_tag = tag; }
void set_bank_base_default(int bank_base_default) { m_bank_base_default = bank_base_default; }
virtual uint32_t pci_read(pci_bus_device *pcibus, int function, int offset, uint32_t mem_mask) override;
@@ -41,12 +46,13 @@ protected:
void update_memory();
private:
+ const char *m_cpu_tag;
int m_bank_base_default;
int m_bank_base;
uint8_t m_bank_enable;
uint32_t m_bank_registers[8];
- required_device<cpu_device> m_maincpu;
+ cpu_device* m_maincpu;
};