summaryrefslogtreecommitdiffstatshomepage
path: root/src/devices/bus/bbc/tube/tube.cpp
diff options
context:
space:
mode:
Diffstat (limited to 'src/devices/bus/bbc/tube/tube.cpp')
-rw-r--r--src/devices/bus/bbc/tube/tube.cpp19
1 files changed, 14 insertions, 5 deletions
diff --git a/src/devices/bus/bbc/tube/tube.cpp b/src/devices/bus/bbc/tube/tube.cpp
index 13a7318d7ef..f72b1072731 100644
--- a/src/devices/bus/bbc/tube/tube.cpp
+++ b/src/devices/bus/bbc/tube/tube.cpp
@@ -29,8 +29,8 @@ DEFINE_DEVICE_TYPE(BBC_TUBE_SLOT, bbc_tube_slot_device, "bbc_tube_slot", "BBC Mi
device_bbc_tube_interface::device_bbc_tube_interface(const machine_config &mconfig, device_t &device)
: device_interface(device, "bbctube")
+ , m_slot(dynamic_cast<bbc_tube_slot_device*>(device.owner()))
{
- m_slot = dynamic_cast<bbc_tube_slot_device *>(device.owner());
}
@@ -59,9 +59,6 @@ bbc_tube_slot_device::bbc_tube_slot_device(const machine_config &mconfig, const
void bbc_tube_slot_device::device_start()
{
m_card = get_card_device();
-
- // resolve callbacks
- m_irq_handler.resolve_safe();
}
@@ -95,6 +92,7 @@ void bbc_tube_slot_device::host_w(offs_t offset, uint8_t data)
#include "tube_80286.h"
#include "tube_a500.h"
#include "tube_arm.h"
+#include "tube_arm7.h"
#include "tube_casper.h"
#include "tube_cms6809.h"
//#include "tube_pmsb2p.h"
@@ -111,6 +109,8 @@ void bbc_tube_slot_device::host_w(offs_t offset, uint8_t data)
void bbc_tube_devices(device_slot_interface &device)
{
device.option_add("6502", BBC_TUBE_6502); /* Acorn ANC01 6502 2nd processor */
+ device.option_add("6502p", BBC_TUBE_6502P); /* Acorn 6502 2nd processor (pre-production) */
+ device.option_add("6502e", BBC_TUBE_6502E); /* Acorn Extended 6502 2nd processor */
device.option_add("z80", BBC_TUBE_Z80); /* Acorn ANC04 Z80 2nd processor */
device.option_add("z80w", BBC_TUBE_Z80W); /* Acorn ANC04 Z80 2nd processor (Winchester) */
device.option_add("16032", BBC_TUBE_16032); /* Acorn 16032 2nd processor */
@@ -119,6 +119,7 @@ void bbc_tube_devices(device_slot_interface &device)
device.option_add("arm", BBC_TUBE_ARM); /* Acorn ANC13 ARM Evaluation System */
device.option_add("80286", BBC_TUBE_80286); /* Acorn 80286 2nd Processor */
device.option_add("a500", BBC_TUBE_A500); /* Acorn A500 2nd Processor */
+ device.option_add("a500d", BBC_TUBE_A500D); /* Acorn A500 (Dual MEMC) 2nd Processor */
device.option_add("casper", BBC_TUBE_CASPER); /* Casper 68000 2nd Processor */
//device.option_add("cms6502", BBC_TUBE_CMS6502); /* CMS 6502 2nd processor */
device.option_add("cms6809", BBC_TUBE_CMS6809); /* CMS 6809 2nd processor */
@@ -132,6 +133,7 @@ void bbc_tube_devices(device_slot_interface &device)
/* Acorn ANC21 Universal 2nd Processor Unit */
device.option_add("65c102", BBC_TUBE_65C102); /* Acorn ADC06 65C102 co-processor */
device.option_add("80186", BBC_TUBE_80186); /* Acorn ADC08 80186 co-processor */
+ device.option_add("arm7", BBC_TUBE_ARM7); /* Sprow ARM7 co-processor */
device.option_add("rc6502", BBC_TUBE_RC6502); /* ReCo6502 (6502) */
device.option_add("rc65816", BBC_TUBE_RC65816); /* ReCo6502 (65816) */
}
@@ -144,6 +146,7 @@ void bbc_tube_devices(device_slot_interface &device)
void bbc_extube_devices(device_slot_interface &device)
{
device.option_add("6502", BBC_TUBE_6502); /* Acorn ANC01 6502 2nd processor */
+ device.option_add("6502e", BBC_TUBE_6502E); /* Acorn Extended 6502 2nd processor */
device.option_add("z80", BBC_TUBE_Z80); /* Acorn ANC04 Z80 2nd processor */
device.option_add("z80w", BBC_TUBE_Z80W); /* Acorn ANC04 Z80 2nd processor (Winchester) */
device.option_add("32016", BBC_TUBE_32016); /* Acorn ANC05 32016 2nd processor */
@@ -152,12 +155,14 @@ void bbc_extube_devices(device_slot_interface &device)
device.option_add("80286", BBC_TUBE_80286); /* Acorn 80286 2nd Processor */
device.option_add("pcplus", BBC_TUBE_PCPLUS); /* Solidisk PC-Plus co-processor */
device.option_add("a500", BBC_TUBE_A500); /* Acorn A500 2nd Processor */
+ device.option_add("a500d", BBC_TUBE_A500D); /* Acorn A500 (Dual MEMC) 2nd Processor */
//device.option_add("pmsb2p", BBC_TUBE_PMSB2P); /* PMS B2P-6502 */
device.option_add("zep100m", BBC_TUBE_ZEP100M); /* Torch Z80 Communicator (ZEP100) (Master) */
/* Acorn ANC21 Universal 2nd Processor Unit */
device.option_add("65c102", BBC_TUBE_65C102); /* Acorn ADC06 65C102 co-processor */
device.option_add("80186", BBC_TUBE_80186); /* Acorn ADC08 80186 co-processor */
+ device.option_add("arm7", BBC_TUBE_ARM7); /* Sprow ARM7 co-processor */
device.option_add("rc6502", BBC_TUBE_RC6502); /* ReCo6502 (6502) */
device.option_add("rc65816", BBC_TUBE_RC65816); /* ReCo6502 (65816) */
}
@@ -171,7 +176,7 @@ void bbc_intube_devices(device_slot_interface &device)
{
device.option_add("65c102", BBC_TUBE_65C102); /* Acorn ADC06 65C102 co-processor */
device.option_add("80186", BBC_TUBE_80186); /* Acorn ADC08 80186 co-processor */
- //device.option_add("arm7", BBC_TUBE_ARM7); /* Sprow ARM7 co-processor */
+ device.option_add("arm7", BBC_TUBE_ARM7); /* Sprow ARM7 co-processor */
device.option_add("rc6502", BBC_TUBE_RC6502); /* ReCo6502 (6502) */
device.option_add("rc65816", BBC_TUBE_RC65816); /* ReCo6502 (65816) */
}
@@ -184,13 +189,17 @@ void bbc_intube_devices(device_slot_interface &device)
void electron_tube_devices(device_slot_interface &device)
{
device.option_add("6502", BBC_TUBE_6502); /* Acorn ANC01 6502 2nd processor */
+ device.option_add("6502e", BBC_TUBE_6502E); /* Acorn Extended 6502 2nd processor */
device.option_add("z80", BBC_TUBE_Z80); /* Acorn ANC04 Z80 2nd processor */
device.option_add("32016", BBC_TUBE_32016); /* Acorn ANC05 32016 2nd processor */
device.option_add("32016l", BBC_TUBE_32016L); /* Acorn Large 32016 2nd processor */
device.option_add("arm", BBC_TUBE_ARM); /* Acorn ANC13 ARM Evaluation System */
device.option_add("65c102", BBC_TUBE_65C102); /* Acorn ADC06 65C102 co-processor */
device.option_add("80186", BBC_TUBE_80186); /* Acorn ADC08 80186 co-processor */
+ device.option_add("a500", BBC_TUBE_A500); /* Acorn A500 2nd Processor */
+ device.option_add("a500d", BBC_TUBE_A500D); /* Acorn A500 (Dual MEMC) 2nd Processor */
device.option_add("pcplus", BBC_TUBE_PCPLUS); /* Solidisk PC-Plus co-processor */
+ device.option_add("arm7", BBC_TUBE_ARM7); /* Sprow ARM7 co-processor */
device.option_add("rc6502", BBC_TUBE_RC6502); /* ReCo6502 (6502) */
device.option_add("rc65816", BBC_TUBE_RC65816); /* ReCo6502 (65816) */
}