summaryrefslogtreecommitdiffstatshomepage
path: root/src/devices/bus/spectrum/exp.h
diff options
context:
space:
mode:
author andreasnaive <andreasnaive@gmail.com>2019-03-25 23:13:40 +0100
committer andreasnaive <andreasnaive@gmail.com>2019-03-25 23:13:40 +0100
commitb380514764cf857469bae61c11143a19f79a74c5 (patch)
tree63c8012e262618f08a332da31dd714281aa2c5ed /src/devices/bus/spectrum/exp.h
parentc24473ddff715ecec2e258a6eb38960cf8c8e98e (diff)
Revert "conflict resolution (nw)"
This reverts commit c24473ddff715ecec2e258a6eb38960cf8c8e98e, reversing changes made to 009cba4fb8102102168ef32870892438327f3705.
Diffstat (limited to 'src/devices/bus/spectrum/exp.h')
-rw-r--r--src/devices/bus/spectrum/exp.h22
1 files changed, 12 insertions, 10 deletions
diff --git a/src/devices/bus/spectrum/exp.h b/src/devices/bus/spectrum/exp.h
index aee398d1ab4..1d8eb5f21f2 100644
--- a/src/devices/bus/spectrum/exp.h
+++ b/src/devices/bus/spectrum/exp.h
@@ -69,20 +69,22 @@ public:
spectrum_expansion_slot_device(machine_config const &mconfig, char const *tag, device_t *owner, uint32_t clock = 0);
+ void set_io_space(address_space *io);
+
// callbacks
auto irq_handler() { return m_irq_handler.bind(); }
auto nmi_handler() { return m_nmi_handler.bind(); }
- void opcode_fetch(offs_t offset);
- uint8_t mreq_r(offs_t offset);
- void mreq_w(offs_t offset, uint8_t data);
- uint8_t iorq_r(offs_t offset);
- void iorq_w(offs_t offset, uint8_t data);
+ DECLARE_READ8_MEMBER( mreq_r );
+ DECLARE_WRITE8_MEMBER( mreq_w );
+ DECLARE_READ8_MEMBER( port_fe_r );
DECLARE_READ_LINE_MEMBER( romcs );
DECLARE_WRITE_LINE_MEMBER( irq_w ) { m_irq_handler(state); }
DECLARE_WRITE_LINE_MEMBER( nmi_w ) { m_nmi_handler(state); }
+ address_space *m_io;
+
protected:
// device-level overrides
virtual void device_validity_check(validity_checker &valid) const override;
@@ -106,14 +108,14 @@ public:
device_spectrum_expansion_interface(const machine_config &mconfig, device_t &device);
// reading and writing
- virtual void opcode_fetch(offs_t offset) { };
- virtual uint8_t mreq_r(offs_t offset) { return 0xff; }
- virtual void mreq_w(offs_t offset, uint8_t data) { }
- virtual uint8_t iorq_r(offs_t offset) { return 0xff; }
- virtual void iorq_w(offs_t offset, uint8_t data) { }
+ virtual DECLARE_READ8_MEMBER(mreq_r) { return 0xff; }
+ virtual DECLARE_WRITE8_MEMBER(mreq_w) { }
+ virtual DECLARE_READ8_MEMBER(port_fe_r) { return 0xff; }
virtual DECLARE_READ_LINE_MEMBER(romcs) { return 0; }
protected:
+ address_space &io_space() { return *m_slot->m_io; }
+
spectrum_expansion_slot_device *m_slot;
};