summaryrefslogtreecommitdiffstatshomepage
path: root/src/devices/bus/isa/isa.h
diff options
context:
space:
mode:
Diffstat (limited to 'src/devices/bus/isa/isa.h')
-rw-r--r--src/devices/bus/isa/isa.h16
1 files changed, 7 insertions, 9 deletions
diff --git a/src/devices/bus/isa/isa.h b/src/devices/bus/isa/isa.h
index 95aaefc9df6..fff65de82f6 100644
--- a/src/devices/bus/isa/isa.h
+++ b/src/devices/bus/isa/isa.h
@@ -123,7 +123,8 @@ public:
isa8_device(const machine_config &mconfig, const char *tag, device_t *owner, uint32_t clock);
// inline configuration
- template <typename T> void set_cputag(T &&tag) { m_maincpu.set_tag(std::forward<T>(tag)); }
+ template <typename T> void set_memspace(T &&tag, int spacenum) { m_memspace.set_tag(std::forward<T>(tag), spacenum); }
+ template <typename T> void set_iospace(T &&tag, int spacenum) { m_iospace.set_tag(std::forward<T>(tag), spacenum); }
auto iochck_callback() { return m_write_iochck.bind(); }
auto irq2_callback() { return m_out_irq2_cb.bind(); }
auto irq3_callback() { return m_out_irq3_cb.bind(); }
@@ -156,7 +157,7 @@ public:
bool is_option_rom_space_available(offs_t start, int size);
// FIXME: shouldn't need to expose this
- address_space &memspace() const { return m_maincpu->space(AS_PROGRAM); }
+ address_space &memspace() const { return *m_memspace; }
DECLARE_WRITE_LINE_MEMBER( irq2_w );
DECLARE_WRITE_LINE_MEMBER( irq3_w );
@@ -181,7 +182,6 @@ public:
void eop_w(int channels, int state);
void nmi();
- void set_nmi_state(bool enabled) { m_nmi_enabled = enabled; }
virtual void set_dma_channel(uint8_t channel, device_isa8_card_interface *dev, bool do_eop);
@@ -197,15 +197,14 @@ protected:
template<typename R, typename W> void install_space(int spacenum, offs_t start, offs_t end, R rhandler, W whandler);
// device-level overrides
+ virtual void device_config_complete() override;
+ virtual void device_resolve_objects() override;
virtual void device_start() override;
virtual void device_reset() override;
- // internal state
- required_device<cpu_device> m_maincpu;
-
// address spaces
- address_space *m_iospace, *m_memspace;
- int m_iowidth, m_memwidth;
+ required_address_space m_memspace, m_iospace;
+ int m_memwidth, m_iowidth;
bool m_allocspaces;
devcb_write_line m_out_irq2_cb;
@@ -220,7 +219,6 @@ protected:
device_isa8_card_interface *m_dma_device[8];
bool m_dma_eop[8];
- bool m_nmi_enabled;
std::forward_list<device_slot_interface *> m_slot_list;
private: