summaryrefslogtreecommitdiffstatshomepage
path: root/src/devices/bus/einstein/pipe/pipe.cpp
diff options
context:
space:
mode:
Diffstat (limited to 'src/devices/bus/einstein/pipe/pipe.cpp')
-rw-r--r--src/devices/bus/einstein/pipe/pipe.cpp15
1 files changed, 15 insertions, 0 deletions
diff --git a/src/devices/bus/einstein/pipe/pipe.cpp b/src/devices/bus/einstein/pipe/pipe.cpp
index 106dbe0f8ec..51169544ba7 100644
--- a/src/devices/bus/einstein/pipe/pipe.cpp
+++ b/src/devices/bus/einstein/pipe/pipe.cpp
@@ -11,6 +11,7 @@
// supported devices
#include "silicon_disc.h"
+#include "speculator.h"
#include "tk02.h"
@@ -55,6 +56,9 @@ tatung_pipe_device::~tatung_pipe_device()
void tatung_pipe_device::device_start()
{
+ // get inserted module
+ m_card = dynamic_cast<device_tatung_pipe_interface *>(get_card_device());
+
// resolve callbacks
m_int_handler.resolve_safe();
m_nmi_handler.resolve_safe();
@@ -70,6 +74,16 @@ void tatung_pipe_device::device_reset()
}
//-------------------------------------------------
+// host to module interface
+//-------------------------------------------------
+
+WRITE_LINE_MEMBER( tatung_pipe_device::host_int_w )
+{
+ if (m_card)
+ m_card->int_w(state);
+}
+
+//-------------------------------------------------
// set_program_space - set address space we are attached to
//-------------------------------------------------
@@ -117,5 +131,6 @@ device_tatung_pipe_interface::~device_tatung_pipe_interface()
SLOT_INTERFACE_START( tatung_pipe_cards )
SLOT_INTERFACE("silicon_disc", EINSTEIN_SILICON_DISC)
+ SLOT_INTERFACE("speculator", EINSTEIN_SPECULATOR)
SLOT_INTERFACE("tk02", TK02_80COL)
SLOT_INTERFACE_END