diff options
Diffstat (limited to 'src/devices/bus/lpci/mpc105.h')
-rw-r--r-- | src/devices/bus/lpci/mpc105.h | 10 |
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; }; |