summaryrefslogtreecommitdiffstatshomepage
path: root/src/devices/bus/electron/exp.cpp
diff options
context:
space:
mode:
Diffstat (limited to 'src/devices/bus/electron/exp.cpp')
-rw-r--r--src/devices/bus/electron/exp.cpp41
1 files changed, 21 insertions, 20 deletions
diff --git a/src/devices/bus/electron/exp.cpp b/src/devices/bus/electron/exp.cpp
index d2cd0abc824..794e2e0df96 100644
--- a/src/devices/bus/electron/exp.cpp
+++ b/src/devices/bus/electron/exp.cpp
@@ -26,7 +26,7 @@ DEFINE_DEVICE_TYPE(ELECTRON_EXPANSION_SLOT, electron_expansion_slot_device, "ele
//-------------------------------------------------
device_electron_expansion_interface::device_electron_expansion_interface(const machine_config &mconfig, device_t &device)
- : device_slot_card_interface(mconfig, device)
+ : device_interface(device, "electronexp")
{
m_slot = dynamic_cast<electron_expansion_slot_device *>(device.owner());
}
@@ -42,7 +42,7 @@ device_electron_expansion_interface::device_electron_expansion_interface(const m
electron_expansion_slot_device::electron_expansion_slot_device(const machine_config &mconfig, const char *tag, device_t *owner, uint32_t clock) :
device_t(mconfig, ELECTRON_EXPANSION_SLOT, tag, owner, clock),
- device_slot_interface(mconfig, *this),
+ device_single_card_slot_interface<device_electron_expansion_interface>(mconfig, *this),
m_card(nullptr),
m_irq_handler(*this),
m_nmi_handler(*this)
@@ -56,20 +56,9 @@ electron_expansion_slot_device::electron_expansion_slot_device(const machine_con
void electron_expansion_slot_device::device_start()
{
- m_card = dynamic_cast<device_electron_expansion_interface *>(get_card_device());
-
- // resolve callbacks
- m_irq_handler.resolve_safe();
- m_nmi_handler.resolve_safe();
+ m_card = get_card_device();
}
-//-------------------------------------------------
-// device_reset - device-specific reset
-//-------------------------------------------------
-
-void electron_expansion_slot_device::device_reset()
-{
-}
//-------------------------------------------------
// expbus_r - expansion data read
@@ -106,30 +95,42 @@ void electron_expansion_slot_device::expbus_w(offs_t offset, uint8_t data)
// slot devices
+#include "elksd64.h"
+#include "elksd128.h"
#include "fbjoy.h"
-//#include "fbprint.h"
-//#include "jafamode7.h"
+#include "fbprint.h"
+#include "mc68k.h"
+#include "mode7.h"
+//#include "lebox.h"
#include "plus1.h"
#include "plus2.h"
#include "plus3.h"
#include "pwrjoy.h"
#include "rombox.h"
#include "romboxp.h"
+#include "sidewndr.h"
#include "m2105.h"
-//#include "voxbox.h"
+#include "voxbox.h"
void electron_expansion_devices(device_slot_interface &device)
{
+ device.option_add("ap1", ELECTRON_AP1);
+ device.option_add("ap6", ELECTRON_AP6);
+ device.option_add("elksd64", ELECTRON_ELKSD64);
+ device.option_add("elksd128", ELECTRON_ELKSD128);
device.option_add("fbjoy", ELECTRON_FBJOY);
- //device.option_add("fbprint", ELECTRON_FBPRINT);
- //device.option_add("jafamode7", ELECTRON_JAFAMODE7);
+ device.option_add("fbprint", ELECTRON_FBPRINT);
+ device.option_add("mc68k", ELECTRON_MC68K);
+ device.option_add("mode7", ELECTRON_MODE7);
+ //device.option_add("lebox", ELECTRON_LEBOX);
device.option_add("plus1", ELECTRON_PLUS1);
device.option_add("plus2", ELECTRON_PLUS2);
device.option_add("plus3", ELECTRON_PLUS3);
device.option_add("pwrjoy", ELECTRON_PWRJOY);
device.option_add("rombox", ELECTRON_ROMBOX);
device.option_add("romboxp", ELECTRON_ROMBOXP);
+ device.option_add("sidewndr", ELECTRON_SIDEWNDR);
device.option_add("m2105", ELECTRON_M2105);
- //device.option_add("voxbox", ELECTRON_VOXBOX);
+ device.option_add("voxbox", ELECTRON_VOXBOX);
}