summaryrefslogtreecommitdiffstatshomepage
path: root/src/devices/bus/coco/cococart.h
diff options
context:
space:
mode:
Diffstat (limited to 'src/devices/bus/coco/cococart.h')
-rw-r--r--src/devices/bus/coco/cococart.h11
1 files changed, 10 insertions, 1 deletions
diff --git a/src/devices/bus/coco/cococart.h b/src/devices/bus/coco/cococart.h
index 107894c6d23..56da91cb897 100644
--- a/src/devices/bus/coco/cococart.h
+++ b/src/devices/bus/coco/cococart.h
@@ -193,11 +193,18 @@ public:
virtual uint8_t* get_cart_base();
void set_cart_base_update(cococart_base_update_delegate update);
+ virtual void interface_config_complete() override;
+ virtual void interface_pre_start() override;
+
protected:
device_cococart_interface(const machine_config &mconfig, device_t &device);
void cart_base_changed(void);
+ // accessors for containers
+ cococart_slot_device &owning_slot() { assert(m_owning_slot); return *m_owning_slot; }
+ device_cococart_host_interface &host() { assert(m_host); return *m_host; }
+
// CoCo cartridges can read directly from the address bus. This is used by a number of
// cartridges (e.g. - Orch-90, Multi-Pak interface) for their control registers, independently
// of the SCS or CTS lines
@@ -210,7 +217,9 @@ protected:
void set_line_value(cococart_slot_device::line line, cococart_slot_device::line_value value);
private:
- cococart_base_update_delegate m_update;
+ cococart_base_update_delegate m_update;
+ cococart_slot_device * m_owning_slot;
+ device_cococart_host_interface * m_host;
};