From f6f8fe56b275a33aa76c0ff49c43c34ba67aeebb Mon Sep 17 00:00:00 2001 From: Curt Coder Date: Wed, 4 Jun 2014 11:37:59 +0000 Subject: [PATCH] (MESS) ql: Expansions WIP. (nw) --- .gitattributes | 20 +++++++ src/emu/bus/bus.mak | 10 ++++ src/emu/bus/ql/cst_q_plus4.c | 84 ++++++++++++++++++++++++++++ src/emu/bus/ql/cst_q_plus4.h | 56 +++++++++++++++++++ src/emu/bus/ql/cst_qdisc.c | 88 ++++++++++++++++++++++++++++++ src/emu/bus/ql/cst_qdisc.h | 56 +++++++++++++++++++ src/emu/bus/ql/cumana_fdi.c | 88 ++++++++++++++++++++++++++++++ src/emu/bus/ql/cumana_fdi.h | 56 +++++++++++++++++++ src/emu/bus/ql/exp.c | 18 ++++++ src/emu/bus/ql/kempston_di.c | 86 +++++++++++++++++++++++++++++ src/emu/bus/ql/kempston_di.h | 56 +++++++++++++++++++ src/emu/bus/ql/miracle_gold_card.c | 88 ++++++++++++++++++++++++++++++ src/emu/bus/ql/miracle_gold_card.h | 56 +++++++++++++++++++ src/emu/bus/ql/miracle_hd.c | 86 +++++++++++++++++++++++++++++ src/emu/bus/ql/miracle_hd.h | 56 +++++++++++++++++++ src/emu/bus/ql/mp_fdi.c | 86 +++++++++++++++++++++++++++++ src/emu/bus/ql/mp_fdi.h | 56 +++++++++++++++++++ src/emu/bus/ql/opd_basic_master.c | 84 ++++++++++++++++++++++++++++ src/emu/bus/ql/opd_basic_master.h | 56 +++++++++++++++++++ src/emu/bus/ql/pcml_qdisk.c | 86 +++++++++++++++++++++++++++++ src/emu/bus/ql/pcml_qdisk.h | 56 +++++++++++++++++++ src/emu/bus/ql/qubide.c | 86 +++++++++++++++++++++++++++++ src/emu/bus/ql/qubide.h | 56 +++++++++++++++++++ src/emu/bus/ql/rom.c | 3 + 24 files changed, 1473 insertions(+) create mode 100644 src/emu/bus/ql/cst_q_plus4.c create mode 100644 src/emu/bus/ql/cst_q_plus4.h create mode 100644 src/emu/bus/ql/cst_qdisc.c create mode 100644 src/emu/bus/ql/cst_qdisc.h create mode 100644 src/emu/bus/ql/cumana_fdi.c create mode 100644 src/emu/bus/ql/cumana_fdi.h create mode 100644 src/emu/bus/ql/kempston_di.c create mode 100644 src/emu/bus/ql/kempston_di.h create mode 100644 src/emu/bus/ql/miracle_gold_card.c create mode 100644 src/emu/bus/ql/miracle_gold_card.h create mode 100644 src/emu/bus/ql/miracle_hd.c create mode 100644 src/emu/bus/ql/miracle_hd.h create mode 100644 src/emu/bus/ql/mp_fdi.c create mode 100644 src/emu/bus/ql/mp_fdi.h create mode 100644 src/emu/bus/ql/opd_basic_master.c create mode 100644 src/emu/bus/ql/opd_basic_master.h create mode 100644 src/emu/bus/ql/pcml_qdisk.c create mode 100644 src/emu/bus/ql/pcml_qdisk.h create mode 100644 src/emu/bus/ql/qubide.c create mode 100644 src/emu/bus/ql/qubide.h diff --git a/.gitattributes b/.gitattributes index f0969606792..a60c02fc01a 100644 --- a/.gitattributes +++ b/.gitattributes @@ -1258,8 +1258,28 @@ src/emu/bus/plus4/std.c svneol=native#text/plain src/emu/bus/plus4/std.h svneol=native#text/plain src/emu/bus/plus4/user.c svneol=native#text/plain src/emu/bus/plus4/user.h svneol=native#text/plain +src/emu/bus/ql/cst_q_plus4.c svneol=native#text/plain +src/emu/bus/ql/cst_q_plus4.h svneol=native#text/plain +src/emu/bus/ql/cst_qdisc.c svneol=native#text/plain +src/emu/bus/ql/cst_qdisc.h svneol=native#text/plain +src/emu/bus/ql/cumana_fdi.c svneol=native#text/plain +src/emu/bus/ql/cumana_fdi.h svneol=native#text/plain src/emu/bus/ql/exp.c svneol=native#text/plain src/emu/bus/ql/exp.h svneol=native#text/plain +src/emu/bus/ql/kempston_di.c svneol=native#text/plain +src/emu/bus/ql/kempston_di.h svneol=native#text/plain +src/emu/bus/ql/miracle_gold_card.c svneol=native#text/plain +src/emu/bus/ql/miracle_gold_card.h svneol=native#text/plain +src/emu/bus/ql/miracle_hd.c svneol=native#text/plain +src/emu/bus/ql/miracle_hd.h svneol=native#text/plain +src/emu/bus/ql/mp_fdi.c svneol=native#text/plain +src/emu/bus/ql/mp_fdi.h svneol=native#text/plain +src/emu/bus/ql/opd_basic_master.c svneol=native#text/plain +src/emu/bus/ql/opd_basic_master.h svneol=native#text/plain +src/emu/bus/ql/pcml_qdisk.c svneol=native#text/plain +src/emu/bus/ql/pcml_qdisk.h svneol=native#text/plain +src/emu/bus/ql/qubide.c svneol=native#text/plain +src/emu/bus/ql/qubide.h svneol=native#text/plain src/emu/bus/ql/rom.c svneol=native#text/plain src/emu/bus/ql/rom.h svneol=native#text/plain src/emu/bus/ql/sandy_superdisk.c svneol=native#text/plain diff --git a/src/emu/bus/bus.mak b/src/emu/bus/bus.mak index f4dd109f991..284d034d31a 100644 --- a/src/emu/bus/bus.mak +++ b/src/emu/bus/bus.mak @@ -1145,9 +1145,19 @@ endif ifneq ($(filter QL,$(BUSES)),) OBJDIRS += $(BUSOBJ)/ql BUSOBJS += $(BUSOBJ)/ql/exp.o +BUSOBJS += $(BUSOBJ)/ql/cst_qdisc.o +BUSOBJS += $(BUSOBJ)/ql/cst_q_plus4.o +BUSOBJS += $(BUSOBJ)/ql/cumana_fdi.o +BUSOBJS += $(BUSOBJ)/ql/kempston_di.o +BUSOBJS += $(BUSOBJ)/ql/miracle_gold_card.o +BUSOBJS += $(BUSOBJ)/ql/mp_fdi.o +BUSOBJS += $(BUSOBJ)/ql/opd_basic_master.o +BUSOBJS += $(BUSOBJ)/ql/pcml_qdisk.o +BUSOBJS += $(BUSOBJ)/ql/qubide.o BUSOBJS += $(BUSOBJ)/ql/sandy_superdisk.o BUSOBJS += $(BUSOBJ)/ql/sandy_superqboard.o BUSOBJS += $(BUSOBJ)/ql/trumpcard.o BUSOBJS += $(BUSOBJ)/ql/rom.o +BUSOBJS += $(BUSOBJ)/ql/miracle_hd.o BUSOBJS += $(BUSOBJ)/ql/std.o endif diff --git a/src/emu/bus/ql/cst_q_plus4.c b/src/emu/bus/ql/cst_q_plus4.c new file mode 100644 index 00000000000..b75e8214ed9 --- /dev/null +++ b/src/emu/bus/ql/cst_q_plus4.c @@ -0,0 +1,84 @@ +// license:BSD-3-Clause +// copyright-holders:Curt Coder +/********************************************************************** + + CST Q+4 emulation + + Copyright MESS Team. + Visit http://mamedev.org for licensing and usage restrictions. + +**********************************************************************/ + +#include "cst_q_plus4.h" + + + +//************************************************************************** +// DEVICE DEFINITIONS +//************************************************************************** + +const device_type CST_Q_PLUS4 = &device_creator; + + +//------------------------------------------------- +// ROM( cst_q_plus4 ) +//------------------------------------------------- + +ROM_START( cst_q_plus4 ) + ROM_REGION( 0x2000, "rom", 0 ) + ROM_LOAD( "qplus4.rom", 0x0000, 0x2000, CRC(53a078fb) SHA1(53d6828c1b6ba052b862fd80ac8a364b0078330d) ) +ROM_END + + +//------------------------------------------------- +// rom_region - device-specific ROM region +//------------------------------------------------- + +const rom_entry *cst_q_plus4_t::device_rom_region() const +{ + return ROM_NAME( cst_q_plus4 ); +} + + + +//************************************************************************** +// LIVE DEVICE +//************************************************************************** + +//------------------------------------------------- +// cst_q_plus4_t - constructor +//------------------------------------------------- + +cst_q_plus4_t::cst_q_plus4_t(const machine_config &mconfig, const char *tag, device_t *owner, UINT32 clock) : + device_t(mconfig, CST_Q_PLUS4, "CST Q+4", tag, owner, clock, "ql_qplus4", __FILE__), + device_ql_expansion_card_interface(mconfig, *this) +{ +} + + +//------------------------------------------------- +// device_start - device-specific startup +//------------------------------------------------- + +void cst_q_plus4_t::device_start() +{ +} + + +//------------------------------------------------- +// read - +//------------------------------------------------- + +UINT8 cst_q_plus4_t::read(address_space &space, offs_t offset, UINT8 data) +{ + return data; +} + + +//------------------------------------------------- +// write - +//------------------------------------------------- + +void cst_q_plus4_t::write(address_space &space, offs_t offset, UINT8 data) +{ +} diff --git a/src/emu/bus/ql/cst_q_plus4.h b/src/emu/bus/ql/cst_q_plus4.h new file mode 100644 index 00000000000..da66d6c4d02 --- /dev/null +++ b/src/emu/bus/ql/cst_q_plus4.h @@ -0,0 +1,56 @@ +// license:BSD-3-Clause +// copyright-holders:Curt Coder +/********************************************************************** + + CST Q+4 emulation + + Copyright MESS Team. + Visit http://mamedev.org for licensing and usage restrictions. + +**********************************************************************/ + +#pragma once + +#ifndef __CST_Q_PLUS4__ +#define __CST_Q_PLUS4__ + +#include "exp.h" + + + +//************************************************************************** +// TYPE DEFINITIONS +//************************************************************************** + +// ======================> cst_q_plus4_t + +class cst_q_plus4_t : public device_t, + public device_ql_expansion_card_interface +{ +public: + // construction/destruction + cst_q_plus4_t(const machine_config &mconfig, const char *tag, device_t *owner, UINT32 clock); + cst_q_plus4_t(const machine_config &mconfig, device_type type, const char *name, const char *tag, device_t *owner, UINT32 clock, const char *shortname, const char *source, int ram_size); + + // optional information overrides + virtual const rom_entry *device_rom_region() const; + +protected: + // device-level overrides + virtual void device_start(); + + // device_ql_expansion_card_interface overrides + virtual UINT8 read(address_space &space, offs_t offset, UINT8 data); + virtual void write(address_space &space, offs_t offset, UINT8 data); + +private: +}; + + + +// device type definition +extern const device_type CST_Q_PLUS4; + + + +#endif diff --git a/src/emu/bus/ql/cst_qdisc.c b/src/emu/bus/ql/cst_qdisc.c new file mode 100644 index 00000000000..90b95b8125d --- /dev/null +++ b/src/emu/bus/ql/cst_qdisc.c @@ -0,0 +1,88 @@ +// license:BSD-3-Clause +// copyright-holders:Curt Coder +/********************************************************************** + + CST QL Disc Interface emulation + + Copyright MESS Team. + Visit http://mamedev.org for licensing and usage restrictions. + +**********************************************************************/ + +#include "cst_qdisc.h" + + + +//************************************************************************** +// DEVICE DEFINITIONS +//************************************************************************** + +const device_type CST_QL_DISC_INTERFACE = &device_creator; + + +//------------------------------------------------- +// ROM( cst_ql_disc_interface ) +//------------------------------------------------- + +ROM_START( cst_ql_disc_interface ) + ROM_REGION( 0x2000, "rom", 0 ) + ROM_DEFAULT_BIOS("v116") + ROM_SYSTEM_BIOS( 0, "v113", "v1.13" ) + ROMX_LOAD( "cst_qdisc_controller_v1.13_1984.rom", 0x0000, 0x2000, CRC(e08d9b5b) SHA1(ec981e60db0269412c518930ca6b5187b20a44f5), ROM_BIOS(1) ) + ROM_SYSTEM_BIOS( 1, "v116", "v1.16" ) + ROMX_LOAD( "cst_qdisc_controller_v1.16_1984.rom", 0x0000, 0x2000, CRC(05a73b00) SHA1(de8c5a4257107a4a41bc94c532cbfb7c65bfb472), ROM_BIOS(2) ) +ROM_END + + +//------------------------------------------------- +// rom_region - device-specific ROM region +//------------------------------------------------- + +const rom_entry *cst_ql_disc_interface_t::device_rom_region() const +{ + return ROM_NAME( cst_ql_disc_interface ); +} + + + +//************************************************************************** +// LIVE DEVICE +//************************************************************************** + +//------------------------------------------------- +// cst_ql_disc_interface_t - constructor +//------------------------------------------------- + +cst_ql_disc_interface_t::cst_ql_disc_interface_t(const machine_config &mconfig, const char *tag, device_t *owner, UINT32 clock) : + device_t(mconfig, CST_QL_DISC_INTERFACE, "CST QL Disc Interface", tag, owner, clock, "ql_qdisc", __FILE__), + device_ql_expansion_card_interface(mconfig, *this) +{ +} + + +//------------------------------------------------- +// device_start - device-specific startup +//------------------------------------------------- + +void cst_ql_disc_interface_t::device_start() +{ +} + + +//------------------------------------------------- +// read - +//------------------------------------------------- + +UINT8 cst_ql_disc_interface_t::read(address_space &space, offs_t offset, UINT8 data) +{ + return data; +} + + +//------------------------------------------------- +// write - +//------------------------------------------------- + +void cst_ql_disc_interface_t::write(address_space &space, offs_t offset, UINT8 data) +{ +} diff --git a/src/emu/bus/ql/cst_qdisc.h b/src/emu/bus/ql/cst_qdisc.h new file mode 100644 index 00000000000..e422dcf10ab --- /dev/null +++ b/src/emu/bus/ql/cst_qdisc.h @@ -0,0 +1,56 @@ +// license:BSD-3-Clause +// copyright-holders:Curt Coder +/********************************************************************** + + CST QL Disc Interface emulation + + Copyright MESS Team. + Visit http://mamedev.org for licensing and usage restrictions. + +**********************************************************************/ + +#pragma once + +#ifndef __CST_QL_DISC_INTERFACE__ +#define __CST_QL_DISC_INTERFACE__ + +#include "exp.h" + + + +//************************************************************************** +// TYPE DEFINITIONS +//************************************************************************** + +// ======================> cst_ql_disc_interface_t + +class cst_ql_disc_interface_t : public device_t, + public device_ql_expansion_card_interface +{ +public: + // construction/destruction + cst_ql_disc_interface_t(const machine_config &mconfig, const char *tag, device_t *owner, UINT32 clock); + cst_ql_disc_interface_t(const machine_config &mconfig, device_type type, const char *name, const char *tag, device_t *owner, UINT32 clock, const char *shortname, const char *source, int ram_size); + + // optional information overrides + virtual const rom_entry *device_rom_region() const; + +protected: + // device-level overrides + virtual void device_start(); + + // device_ql_expansion_card_interface overrides + virtual UINT8 read(address_space &space, offs_t offset, UINT8 data); + virtual void write(address_space &space, offs_t offset, UINT8 data); + +private: +}; + + + +// device type definition +extern const device_type CST_QL_DISC_INTERFACE; + + + +#endif diff --git a/src/emu/bus/ql/cumana_fdi.c b/src/emu/bus/ql/cumana_fdi.c new file mode 100644 index 00000000000..1e62f98010b --- /dev/null +++ b/src/emu/bus/ql/cumana_fdi.c @@ -0,0 +1,88 @@ +// license:BSD-3-Clause +// copyright-holders:Curt Coder +/********************************************************************** + + Cumana Floppy Disk Interface emulation + + Copyright MESS Team. + Visit http://mamedev.org for licensing and usage restrictions. + +**********************************************************************/ + +#include "cumana_fdi.h" + + + +//************************************************************************** +// DEVICE DEFINITIONS +//************************************************************************** + +const device_type CUMANA_FLOPPY_DISK_INTERFACE = &device_creator; + + +//------------------------------------------------- +// ROM( cumana_floppy_disk_interface ) +//------------------------------------------------- + +ROM_START( cumana_floppy_disk_interface ) + ROM_REGION( 0x4000, "rom", 0 ) + ROM_DEFAULT_BIOS("v116") + ROM_SYSTEM_BIOS( 0, "v114", "v1.14" ) + ROMX_LOAD( "cumana114.rom", 0x0000, 0x4000, CRC(03baf164) SHA1(e487742c481be8c2771ab2c0fc5e3acd612dec54), ROM_BIOS(1) ) + ROM_SYSTEM_BIOS( 1, "v116", "v1.16" ) + ROMX_LOAD( "cumana116.rom", 0x0000, 0x4000, CRC(def02822) SHA1(323120cd3e1eaa38f6d0ae74367a4835a5a2a011), ROM_BIOS(2) ) +ROM_END + + +//------------------------------------------------- +// rom_region - device-specific ROM region +//------------------------------------------------- + +const rom_entry *cumana_floppy_disk_interface_t::device_rom_region() const +{ + return ROM_NAME( cumana_floppy_disk_interface ); +} + + + +//************************************************************************** +// LIVE DEVICE +//************************************************************************** + +//------------------------------------------------- +// cumana_floppy_disk_interface_t - constructor +//------------------------------------------------- + +cumana_floppy_disk_interface_t::cumana_floppy_disk_interface_t(const machine_config &mconfig, const char *tag, device_t *owner, UINT32 clock) : + device_t(mconfig, CUMANA_FLOPPY_DISK_INTERFACE, "Cumana Floppy Disk Interface", tag, owner, clock, "ql_cumanafdi", __FILE__), + device_ql_expansion_card_interface(mconfig, *this) +{ +} + + +//------------------------------------------------- +// device_start - device-specific startup +//------------------------------------------------- + +void cumana_floppy_disk_interface_t::device_start() +{ +} + + +//------------------------------------------------- +// read - +//------------------------------------------------- + +UINT8 cumana_floppy_disk_interface_t::read(address_space &space, offs_t offset, UINT8 data) +{ + return data; +} + + +//------------------------------------------------- +// write - +//------------------------------------------------- + +void cumana_floppy_disk_interface_t::write(address_space &space, offs_t offset, UINT8 data) +{ +} diff --git a/src/emu/bus/ql/cumana_fdi.h b/src/emu/bus/ql/cumana_fdi.h new file mode 100644 index 00000000000..fac6a1b0bc4 --- /dev/null +++ b/src/emu/bus/ql/cumana_fdi.h @@ -0,0 +1,56 @@ +// license:BSD-3-Clause +// copyright-holders:Curt Coder +/********************************************************************** + + Cumana Floppy Disk Interface emulation + + Copyright MESS Team. + Visit http://mamedev.org for licensing and usage restrictions. + +**********************************************************************/ + +#pragma once + +#ifndef __CUMANA_FLOPPY_DISK_INTERFACE__ +#define __CUMANA_FLOPPY_DISK_INTERFACE__ + +#include "exp.h" + + + +//************************************************************************** +// TYPE DEFINITIONS +//************************************************************************** + +// ======================> cumana_floppy_disk_interface_t + +class cumana_floppy_disk_interface_t : public device_t, + public device_ql_expansion_card_interface +{ +public: + // construction/destruction + cumana_floppy_disk_interface_t(const machine_config &mconfig, const char *tag, device_t *owner, UINT32 clock); + cumana_floppy_disk_interface_t(const machine_config &mconfig, device_type type, const char *name, const char *tag, device_t *owner, UINT32 clock, const char *shortname, const char *source, int ram_size); + + // optional information overrides + virtual const rom_entry *device_rom_region() const; + +protected: + // device-level overrides + virtual void device_start(); + + // device_ql_expansion_card_interface overrides + virtual UINT8 read(address_space &space, offs_t offset, UINT8 data); + virtual void write(address_space &space, offs_t offset, UINT8 data); + +private: +}; + + + +// device type definition +extern const device_type CUMANA_FLOPPY_DISK_INTERFACE; + + + +#endif diff --git a/src/emu/bus/ql/exp.c b/src/emu/bus/ql/exp.c index 6bcd4ece585..1d8ffe5db84 100644 --- a/src/emu/bus/ql/exp.c +++ b/src/emu/bus/ql/exp.c @@ -78,14 +78,32 @@ void ql_expansion_slot_t::device_start() //------------------------------------------------- // slot devices +#include "cst_qdisc.h" +#include "cst_q_plus4.h" +#include "cumana_fdi.h" +#include "kempston_di.h" +#include "miracle_gold_card.h" +#include "mp_fdi.h" +#include "opd_basic_master.h" +#include "pcml_qdisk.h" +#include "qubide.h" #include "sandy_superdisk.h" #include "sandy_superqboard.h" #include "trumpcard.h" SLOT_INTERFACE_START( ql_expansion_cards ) + SLOT_INTERFACE("qdisc", CST_QL_DISC_INTERFACE) + SLOT_INTERFACE("qplus4", CST_Q_PLUS4) + SLOT_INTERFACE("cumanafdi", CUMANA_FLOPPY_DISK_INTERFACE) + SLOT_INTERFACE("kdi", KEMPSTON_DISK_INTERFACE) + SLOT_INTERFACE("mpfdi", MICRO_PERIPHERALS_FLOPPY_DISK_INTERFACE) + SLOT_INTERFACE("gold", MIRACLE_GOLD_CARD) + SLOT_INTERFACE("pcmlqdi", PCML_Q_DISK_INTERFACE) + SLOT_INTERFACE("qubide", QUBIDE) SLOT_INTERFACE("sdisk", SANDY_SUPER_DISK) SLOT_INTERFACE("sqboard", SANDY_SUPERQBOARD) SLOT_INTERFACE("sqboard512k", SANDY_SUPERQBOARD_512K) + SLOT_INTERFACE("opdbasic", OPD_BASIC_MASTER) SLOT_INTERFACE("trump", QL_TRUMP_CARD) SLOT_INTERFACE("trump256k", QL_TRUMP_CARD_256K) SLOT_INTERFACE("trump512k", QL_TRUMP_CARD_512K) diff --git a/src/emu/bus/ql/kempston_di.c b/src/emu/bus/ql/kempston_di.c new file mode 100644 index 00000000000..5fd32282f87 --- /dev/null +++ b/src/emu/bus/ql/kempston_di.c @@ -0,0 +1,86 @@ +// license:BSD-3-Clause +// copyright-holders:Curt Coder +/********************************************************************** + + Kempston Disk Interface emulation + + Copyright MESS Team. + Visit http://mamedev.org for licensing and usage restrictions. + +**********************************************************************/ + +#include "kempston_di.h" + + + +//************************************************************************** +// DEVICE DEFINITIONS +//************************************************************************** + +const device_type KEMPSTON_DISK_INTERFACE = &device_creator; + + +//------------------------------------------------- +// ROM( kempston_disk_system ) +//------------------------------------------------- + +ROM_START( kempston_disk_system ) + ROM_REGION( 0x2000, "rom", 0 ) + ROM_DEFAULT_BIOS("v114") + ROM_SYSTEM_BIOS( 0, "v114", "v1.14" ) + ROMX_LOAD( "kempston_disk_system_v1.14_1984.rom", 0x0000, 0x2000, CRC(0b70ad2e) SHA1(ff8158d25864d920f3f6df259167e91c2784692c), ROM_BIOS(1) ) +ROM_END + + +//------------------------------------------------- +// rom_region - device-specific ROM region +//------------------------------------------------- + +const rom_entry *kempston_disk_interface_t::device_rom_region() const +{ + return ROM_NAME( kempston_disk_system ); +} + + + +//************************************************************************** +// LIVE DEVICE +//************************************************************************** + +//------------------------------------------------- +// kempston_disk_interface_t - constructor +//------------------------------------------------- + +kempston_disk_interface_t::kempston_disk_interface_t(const machine_config &mconfig, const char *tag, device_t *owner, UINT32 clock) : + device_t(mconfig, KEMPSTON_DISK_INTERFACE, "Kempston Disk Interface", tag, owner, clock, "ql_kdi", __FILE__), + device_ql_expansion_card_interface(mconfig, *this) +{ +} + + +//------------------------------------------------- +// device_start - device-specific startup +//------------------------------------------------- + +void kempston_disk_interface_t::device_start() +{ +} + + +//------------------------------------------------- +// read - +//------------------------------------------------- + +UINT8 kempston_disk_interface_t::read(address_space &space, offs_t offset, UINT8 data) +{ + return data; +} + + +//------------------------------------------------- +// write - +//------------------------------------------------- + +void kempston_disk_interface_t::write(address_space &space, offs_t offset, UINT8 data) +{ +} diff --git a/src/emu/bus/ql/kempston_di.h b/src/emu/bus/ql/kempston_di.h new file mode 100644 index 00000000000..2bde84e00be --- /dev/null +++ b/src/emu/bus/ql/kempston_di.h @@ -0,0 +1,56 @@ +// license:BSD-3-Clause +// copyright-holders:Curt Coder +/********************************************************************** + + Kempston Disk Interface emulation + + Copyright MESS Team. + Visit http://mamedev.org for licensing and usage restrictions. + +**********************************************************************/ + +#pragma once + +#ifndef __KEMPSTON_DISK_INTERFACE__ +#define __KEMPSTON_DISK_INTERFACE__ + +#include "exp.h" + + + +//************************************************************************** +// TYPE DEFINITIONS +//************************************************************************** + +// ======================> kempston_disk_interface_t + +class kempston_disk_interface_t : public device_t, + public device_ql_expansion_card_interface +{ +public: + // construction/destruction + kempston_disk_interface_t(const machine_config &mconfig, const char *tag, device_t *owner, UINT32 clock); + kempston_disk_interface_t(const machine_config &mconfig, device_type type, const char *name, const char *tag, device_t *owner, UINT32 clock, const char *shortname, const char *source, int ram_size); + + // optional information overrides + virtual const rom_entry *device_rom_region() const; + +protected: + // device-level overrides + virtual void device_start(); + + // device_ql_expansion_card_interface overrides + virtual UINT8 read(address_space &space, offs_t offset, UINT8 data); + virtual void write(address_space &space, offs_t offset, UINT8 data); + +private: +}; + + + +// device type definition +extern const device_type KEMPSTON_DISK_INTERFACE; + + + +#endif diff --git a/src/emu/bus/ql/miracle_gold_card.c b/src/emu/bus/ql/miracle_gold_card.c new file mode 100644 index 00000000000..d18e764d55b --- /dev/null +++ b/src/emu/bus/ql/miracle_gold_card.c @@ -0,0 +1,88 @@ +// license:BSD-3-Clause +// copyright-holders:Curt Coder +/********************************************************************** + + Miracle Systems Gold Card emulation + + Copyright MESS Team. + Visit http://mamedev.org for licensing and usage restrictions. + +**********************************************************************/ + +#include "miracle_gold_card.h" + + + +//************************************************************************** +// DEVICE DEFINITIONS +//************************************************************************** + +const device_type MIRACLE_GOLD_CARD = &device_creator; + + +//------------------------------------------------- +// ROM( miracle_gold_card ) +//------------------------------------------------- + +ROM_START( miracle_gold_card ) + ROM_REGION( 0x10000, "rom", 0 ) + ROM_DEFAULT_BIOS("v249") + ROM_SYSTEM_BIOS( 0, "v228", "v2.28" ) + ROMX_LOAD( "goldcard228.bin", 0x00000, 0x10000, CRC(fee008de) SHA1(849f0a515ac32502f3b1a4f65ce957c0bef6e6d6), ROM_BIOS(1) ) + ROM_SYSTEM_BIOS( 1, "v249", "v2.49" ) + ROMX_LOAD( "sgcandgc249.bin", 0x00000, 0x10000, CRC(963c7bfc) SHA1(e80851fc536eef2b83c611e717e563b05bba8b3d), ROM_BIOS(2) ) +ROM_END + + +//------------------------------------------------- +// rom_region - device-specific ROM region +//------------------------------------------------- + +const rom_entry *miracle_gold_card_t::device_rom_region() const +{ + return ROM_NAME( miracle_gold_card ); +} + + + +//************************************************************************** +// LIVE DEVICE +//************************************************************************** + +//------------------------------------------------- +// miracle_gold_card_t - constructor +//------------------------------------------------- + +miracle_gold_card_t::miracle_gold_card_t(const machine_config &mconfig, const char *tag, device_t *owner, UINT32 clock) : + device_t(mconfig, MIRACLE_GOLD_CARD, "Miracle Gold Card", tag, owner, clock, "ql_gold", __FILE__), + device_ql_expansion_card_interface(mconfig, *this) +{ +} + + +//------------------------------------------------- +// device_start - device-specific startup +//------------------------------------------------- + +void miracle_gold_card_t::device_start() +{ +} + + +//------------------------------------------------- +// read - +//------------------------------------------------- + +UINT8 miracle_gold_card_t::read(address_space &space, offs_t offset, UINT8 data) +{ + return data; +} + + +//------------------------------------------------- +// write - +//------------------------------------------------- + +void miracle_gold_card_t::write(address_space &space, offs_t offset, UINT8 data) +{ +} diff --git a/src/emu/bus/ql/miracle_gold_card.h b/src/emu/bus/ql/miracle_gold_card.h new file mode 100644 index 00000000000..8decf3157ca --- /dev/null +++ b/src/emu/bus/ql/miracle_gold_card.h @@ -0,0 +1,56 @@ +// license:BSD-3-Clause +// copyright-holders:Curt Coder +/********************************************************************** + + Miracle Systems Gold Card emulation + + Copyright MESS Team. + Visit http://mamedev.org for licensing and usage restrictions. + +**********************************************************************/ + +#pragma once + +#ifndef __MIRACLE_GOLD_CARD__ +#define __MIRACLE_GOLD_CARD__ + +#include "exp.h" + + + +//************************************************************************** +// TYPE DEFINITIONS +//************************************************************************** + +// ======================> miracle_gold_card_t + +class miracle_gold_card_t : public device_t, + public device_ql_expansion_card_interface +{ +public: + // construction/destruction + miracle_gold_card_t(const machine_config &mconfig, const char *tag, device_t *owner, UINT32 clock); + miracle_gold_card_t(const machine_config &mconfig, device_type type, const char *name, const char *tag, device_t *owner, UINT32 clock, const char *shortname, const char *source, int ram_size); + + // optional information overrides + virtual const rom_entry *device_rom_region() const; + +protected: + // device-level overrides + virtual void device_start(); + + // device_ql_expansion_card_interface overrides + virtual UINT8 read(address_space &space, offs_t offset, UINT8 data); + virtual void write(address_space &space, offs_t offset, UINT8 data); + +private: +}; + + + +// device type definition +extern const device_type MIRACLE_GOLD_CARD; + + + +#endif diff --git a/src/emu/bus/ql/miracle_hd.c b/src/emu/bus/ql/miracle_hd.c new file mode 100644 index 00000000000..604938e5923 --- /dev/null +++ b/src/emu/bus/ql/miracle_hd.c @@ -0,0 +1,86 @@ +// license:BSD-3-Clause +// copyright-holders:Curt Coder +/********************************************************************** + + Miracle Hard Disk emulation + + Copyright MESS Team. + Visit http://mamedev.org for licensing and usage restrictions. + +**********************************************************************/ + +#include "miracle_hd.h" + + + +//************************************************************************** +// DEVICE DEFINITIONS +//************************************************************************** + +const device_type MIRACLE_HARD_DISK = &device_creator; + + +//------------------------------------------------- +// ROM( miracle_hard_disk ) +//------------------------------------------------- + +ROM_START( miracle_hard_disk ) + ROM_REGION( 0x2000, "rom", 0 ) + ROM_DEFAULT_BIOS("v202") + ROM_SYSTEM_BIOS( 0, "v202", "v2.02" ) + ROMX_LOAD( "miraculous_winny_v2.02_1989_qjump.rom", 0x0000, 0x2000, CRC(10982b35) SHA1(1beb87a207ecd0f47a43ed4b1bcc81d89ac75ffc), ROM_BIOS(1) ) +ROM_END + + +//------------------------------------------------- +// rom_region - device-specific ROM region +//------------------------------------------------- + +const rom_entry *miracle_hard_disk_t::device_rom_region() const +{ + return ROM_NAME( miracle_hard_disk ); +} + + + +//************************************************************************** +// LIVE DEVICE +//************************************************************************** + +//------------------------------------------------- +// miracle_hard_disk_t - constructor +//------------------------------------------------- + +miracle_hard_disk_t::miracle_hard_disk_t(const machine_config &mconfig, const char *tag, device_t *owner, UINT32 clock) : + device_t(mconfig, MIRACLE_HARD_DISK, "Miracle Hard Disk", tag, owner, clock, "ql_mhd", __FILE__), + device_ql_rom_cartridge_card_interface(mconfig, *this) +{ +} + + +//------------------------------------------------- +// device_start - device-specific startup +//------------------------------------------------- + +void miracle_hard_disk_t::device_start() +{ +} + + +//------------------------------------------------- +// read - +//------------------------------------------------- + +UINT8 miracle_hard_disk_t::read(address_space &space, offs_t offset, UINT8 data) +{ + return data; +} + + +//------------------------------------------------- +// write - +//------------------------------------------------- + +void miracle_hard_disk_t::write(address_space &space, offs_t offset, UINT8 data) +{ +} diff --git a/src/emu/bus/ql/miracle_hd.h b/src/emu/bus/ql/miracle_hd.h new file mode 100644 index 00000000000..4d7503128a5 --- /dev/null +++ b/src/emu/bus/ql/miracle_hd.h @@ -0,0 +1,56 @@ +// license:BSD-3-Clause +// copyright-holders:Curt Coder +/********************************************************************** + + Miracle Hard Disk emulation + + Copyright MESS Team. + Visit http://mamedev.org for licensing and usage restrictions. + +**********************************************************************/ + +#pragma once + +#ifndef __MIRACLE_HARD_DISK__ +#define __MIRACLE_HARD_DISK__ + +#include "rom.h" + + + +//************************************************************************** +// TYPE DEFINITIONS +//************************************************************************** + +// ======================> miracle_hard_disk_t + +class miracle_hard_disk_t : public device_t, + public device_ql_rom_cartridge_card_interface +{ +public: + // construction/destruction + miracle_hard_disk_t(const machine_config &mconfig, const char *tag, device_t *owner, UINT32 clock); + miracle_hard_disk_t(const machine_config &mconfig, device_type type, const char *name, const char *tag, device_t *owner, UINT32 clock, const char *shortname, const char *source, int ram_size); + + // optional information overrides + virtual const rom_entry *device_rom_region() const; + +protected: + // device-level overrides + virtual void device_start(); + + // device_ql_rom_cartridge_card_interface overrides + virtual UINT8 read(address_space &space, offs_t offset, UINT8 data); + virtual void write(address_space &space, offs_t offset, UINT8 data); + +private: +}; + + + +// device type definition +extern const device_type MIRACLE_HARD_DISK; + + + +#endif diff --git a/src/emu/bus/ql/mp_fdi.c b/src/emu/bus/ql/mp_fdi.c new file mode 100644 index 00000000000..a5094df13e3 --- /dev/null +++ b/src/emu/bus/ql/mp_fdi.c @@ -0,0 +1,86 @@ +// license:BSD-3-Clause +// copyright-holders:Curt Coder +/********************************************************************** + + Micro Peripherals Floppy Disk Interface emulation + + Copyright MESS Team. + Visit http://mamedev.org for licensing and usage restrictions. + +**********************************************************************/ + +#include "mp_fdi.h" + + + +//************************************************************************** +// DEVICE DEFINITIONS +//************************************************************************** + +const device_type MICRO_PERIPHERALS_FLOPPY_DISK_INTERFACE = &device_creator; + + +//------------------------------------------------- +// ROM( micro_peripherals_floppy_disk_interface ) +//------------------------------------------------- + +ROM_START( micro_peripherals_floppy_disk_interface ) + ROM_REGION( 0x8000, "rom", 0 ) + ROM_DEFAULT_BIOS("v53e") + ROM_SYSTEM_BIOS( 0, "v53e", "v5.3E" ) + ROMX_LOAD( "microp_disk system_v5.3e_1985.rom", 0x0000, 0x8000, CRC(9a8d8fa7) SHA1(f9f5e5d55f3046f63b4eae59222b81290d626e72), ROM_BIOS(1) ) +ROM_END + + +//------------------------------------------------- +// rom_region - device-specific ROM region +//------------------------------------------------- + +const rom_entry *micro_peripherals_floppy_disk_interface_t::device_rom_region() const +{ + return ROM_NAME( micro_peripherals_floppy_disk_interface ); +} + + + +//************************************************************************** +// LIVE DEVICE +//************************************************************************** + +//------------------------------------------------- +// micro_peripherals_floppy_disk_interface_t - constructor +//------------------------------------------------- + +micro_peripherals_floppy_disk_interface_t::micro_peripherals_floppy_disk_interface_t(const machine_config &mconfig, const char *tag, device_t *owner, UINT32 clock) : + device_t(mconfig, MICRO_PERIPHERALS_FLOPPY_DISK_INTERFACE, "Micro Peripherals Floppy Disk Interface", tag, owner, clock, "ql_mpfdi", __FILE__), + device_ql_expansion_card_interface(mconfig, *this) +{ +} + + +//------------------------------------------------- +// device_start - device-specific startup +//------------------------------------------------- + +void micro_peripherals_floppy_disk_interface_t::device_start() +{ +} + + +//------------------------------------------------- +// read - +//------------------------------------------------- + +UINT8 micro_peripherals_floppy_disk_interface_t::read(address_space &space, offs_t offset, UINT8 data) +{ + return data; +} + + +//------------------------------------------------- +// write - +//------------------------------------------------- + +void micro_peripherals_floppy_disk_interface_t::write(address_space &space, offs_t offset, UINT8 data) +{ +} diff --git a/src/emu/bus/ql/mp_fdi.h b/src/emu/bus/ql/mp_fdi.h new file mode 100644 index 00000000000..7e6280e2b6b --- /dev/null +++ b/src/emu/bus/ql/mp_fdi.h @@ -0,0 +1,56 @@ +// license:BSD-3-Clause +// copyright-holders:Curt Coder +/********************************************************************** + + Micro Peripherals Floppy Disk Interface emulation + + Copyright MESS Team. + Visit http://mamedev.org for licensing and usage restrictions. + +**********************************************************************/ + +#pragma once + +#ifndef __MICRO_PERIPHERALS_FLOPPY_DISK_INTERFACE__ +#define __MICRO_PERIPHERALS_FLOPPY_DISK_INTERFACE__ + +#include "exp.h" + + + +//************************************************************************** +// TYPE DEFINITIONS +//************************************************************************** + +// ======================> micro_peripherals_floppy_disk_interface_t + +class micro_peripherals_floppy_disk_interface_t : public device_t, + public device_ql_expansion_card_interface +{ +public: + // construction/destruction + micro_peripherals_floppy_disk_interface_t(const machine_config &mconfig, const char *tag, device_t *owner, UINT32 clock); + micro_peripherals_floppy_disk_interface_t(const machine_config &mconfig, device_type type, const char *name, const char *tag, device_t *owner, UINT32 clock, const char *shortname, const char *source, int ram_size); + + // optional information overrides + virtual const rom_entry *device_rom_region() const; + +protected: + // device-level overrides + virtual void device_start(); + + // device_ql_expansion_card_interface overrides + virtual UINT8 read(address_space &space, offs_t offset, UINT8 data); + virtual void write(address_space &space, offs_t offset, UINT8 data); + +private: +}; + + + +// device type definition +extern const device_type MICRO_PERIPHERALS_FLOPPY_DISK_INTERFACE; + + + +#endif diff --git a/src/emu/bus/ql/opd_basic_master.c b/src/emu/bus/ql/opd_basic_master.c new file mode 100644 index 00000000000..21955a61ba8 --- /dev/null +++ b/src/emu/bus/ql/opd_basic_master.c @@ -0,0 +1,84 @@ +// license:BSD-3-Clause +// copyright-holders:Curt Coder +/********************************************************************** + + OPD Basic Master emulation + + Copyright MESS Team. + Visit http://mamedev.org for licensing and usage restrictions. + +**********************************************************************/ + +#include "opd_basic_master.h" + + + +//************************************************************************** +// DEVICE DEFINITIONS +//************************************************************************** + +const device_type OPD_BASIC_MASTER = &device_creator; + + +//------------------------------------------------- +// ROM( opd_basic_master ) +//------------------------------------------------- + +ROM_START( opd_basic_master ) + ROM_REGION( 0x10000, "rom", 0 ) + ROM_LOAD( "opd_basic_master_1984.rom", 0x00000, 0x10000, CRC(7e534c0d) SHA1(de485e89272e3b51086967333cda9de806ba3876) ) +ROM_END + + +//------------------------------------------------- +// rom_region - device-specific ROM region +//------------------------------------------------- + +const rom_entry *opd_basic_master_t::device_rom_region() const +{ + return ROM_NAME( opd_basic_master ); +} + + + +//************************************************************************** +// LIVE DEVICE +//************************************************************************** + +//------------------------------------------------- +// opd_basic_master_t - constructor +//------------------------------------------------- + +opd_basic_master_t::opd_basic_master_t(const machine_config &mconfig, const char *tag, device_t *owner, UINT32 clock) : + device_t(mconfig, OPD_BASIC_MASTER, "OPD Basic Master", tag, owner, clock, "ql_opdbm", __FILE__), + device_ql_expansion_card_interface(mconfig, *this) +{ +} + + +//------------------------------------------------- +// device_start - device-specific startup +//------------------------------------------------- + +void opd_basic_master_t::device_start() +{ +} + + +//------------------------------------------------- +// read - +//------------------------------------------------- + +UINT8 opd_basic_master_t::read(address_space &space, offs_t offset, UINT8 data) +{ + return data; +} + + +//------------------------------------------------- +// write - +//------------------------------------------------- + +void opd_basic_master_t::write(address_space &space, offs_t offset, UINT8 data) +{ +} diff --git a/src/emu/bus/ql/opd_basic_master.h b/src/emu/bus/ql/opd_basic_master.h new file mode 100644 index 00000000000..8d262b8e493 --- /dev/null +++ b/src/emu/bus/ql/opd_basic_master.h @@ -0,0 +1,56 @@ +// license:BSD-3-Clause +// copyright-holders:Curt Coder +/********************************************************************** + + OPD Basic Master emulation + + Copyright MESS Team. + Visit http://mamedev.org for licensing and usage restrictions. + +**********************************************************************/ + +#pragma once + +#ifndef __OPD_BASIC_MASTER__ +#define __OPD_BASIC_MASTER__ + +#include "exp.h" + + + +//************************************************************************** +// TYPE DEFINITIONS +//************************************************************************** + +// ======================> opd_basic_master_t + +class opd_basic_master_t : public device_t, + public device_ql_expansion_card_interface +{ +public: + // construction/destruction + opd_basic_master_t(const machine_config &mconfig, const char *tag, device_t *owner, UINT32 clock); + opd_basic_master_t(const machine_config &mconfig, device_type type, const char *name, const char *tag, device_t *owner, UINT32 clock, const char *shortname, const char *source, int ram_size); + + // optional information overrides + virtual const rom_entry *device_rom_region() const; + +protected: + // device-level overrides + virtual void device_start(); + + // device_ql_expansion_card_interface overrides + virtual UINT8 read(address_space &space, offs_t offset, UINT8 data); + virtual void write(address_space &space, offs_t offset, UINT8 data); + +private: +}; + + + +// device type definition +extern const device_type OPD_BASIC_MASTER; + + + +#endif diff --git a/src/emu/bus/ql/pcml_qdisk.c b/src/emu/bus/ql/pcml_qdisk.c new file mode 100644 index 00000000000..9a9298adc5f --- /dev/null +++ b/src/emu/bus/ql/pcml_qdisk.c @@ -0,0 +1,86 @@ +// license:BSD-3-Clause +// copyright-holders:Curt Coder +/********************************************************************** + + PCML Q+ Disk Interface emulation + + Copyright MESS Team. + Visit http://mamedev.org for licensing and usage restrictions. + +**********************************************************************/ + +#include "pcml_qdisk.h" + + + +//************************************************************************** +// DEVICE DEFINITIONS +//************************************************************************** + +const device_type PCML_Q_DISK_INTERFACE = &device_creator; + + +//------------------------------------------------- +// ROM( pcml_q_disk_interface ) +//------------------------------------------------- + +ROM_START( pcml_q_disk_interface ) + ROM_REGION( 0x4000, "rom", 0 ) + ROM_DEFAULT_BIOS("v114") + ROM_SYSTEM_BIOS( 0, "v114", "v1.14" ) + ROMX_LOAD( "pcml_diskram system_v1.14_1984.rom", 0x0000, 0x4000, CRC(e38b41dd) SHA1(d2038f0b1a62e8e65ec86660d03c25489ce40274), ROM_BIOS(1) ) +ROM_END + + +//------------------------------------------------- +// rom_region - device-specific ROM region +//------------------------------------------------- + +const rom_entry *pcml_q_disk_interface_t::device_rom_region() const +{ + return ROM_NAME( pcml_q_disk_interface ); +} + + + +//************************************************************************** +// LIVE DEVICE +//************************************************************************** + +//------------------------------------------------- +// pcml_q_disk_interface_t - constructor +//------------------------------------------------- + +pcml_q_disk_interface_t::pcml_q_disk_interface_t(const machine_config &mconfig, const char *tag, device_t *owner, UINT32 clock) : + device_t(mconfig, PCML_Q_DISK_INTERFACE, "PCML Q+ Disk Interface", tag, owner, clock, "ql_pcmlqdi", __FILE__), + device_ql_expansion_card_interface(mconfig, *this) +{ +} + + +//------------------------------------------------- +// device_start - device-specific startup +//------------------------------------------------- + +void pcml_q_disk_interface_t::device_start() +{ +} + + +//------------------------------------------------- +// read - +//------------------------------------------------- + +UINT8 pcml_q_disk_interface_t::read(address_space &space, offs_t offset, UINT8 data) +{ + return data; +} + + +//------------------------------------------------- +// write - +//------------------------------------------------- + +void pcml_q_disk_interface_t::write(address_space &space, offs_t offset, UINT8 data) +{ +} diff --git a/src/emu/bus/ql/pcml_qdisk.h b/src/emu/bus/ql/pcml_qdisk.h new file mode 100644 index 00000000000..46e15d67036 --- /dev/null +++ b/src/emu/bus/ql/pcml_qdisk.h @@ -0,0 +1,56 @@ +// license:BSD-3-Clause +// copyright-holders:Curt Coder +/********************************************************************** + + PCML Q+ Disk Interface emulation + + Copyright MESS Team. + Visit http://mamedev.org for licensing and usage restrictions. + +**********************************************************************/ + +#pragma once + +#ifndef __PCML_Q_DISK_INTERFACE__ +#define __PCML_Q_DISK_INTERFACE__ + +#include "exp.h" + + + +//************************************************************************** +// TYPE DEFINITIONS +//************************************************************************** + +// ======================> pcml_q_disk_interface_t + +class pcml_q_disk_interface_t : public device_t, + public device_ql_expansion_card_interface +{ +public: + // construction/destruction + pcml_q_disk_interface_t(const machine_config &mconfig, const char *tag, device_t *owner, UINT32 clock); + pcml_q_disk_interface_t(const machine_config &mconfig, device_type type, const char *name, const char *tag, device_t *owner, UINT32 clock, const char *shortname, const char *source, int ram_size); + + // optional information overrides + virtual const rom_entry *device_rom_region() const; + +protected: + // device-level overrides + virtual void device_start(); + + // device_ql_expansion_card_interface overrides + virtual UINT8 read(address_space &space, offs_t offset, UINT8 data); + virtual void write(address_space &space, offs_t offset, UINT8 data); + +private: +}; + + + +// device type definition +extern const device_type PCML_Q_DISK_INTERFACE; + + + +#endif diff --git a/src/emu/bus/ql/qubide.c b/src/emu/bus/ql/qubide.c new file mode 100644 index 00000000000..b29f5283c33 --- /dev/null +++ b/src/emu/bus/ql/qubide.c @@ -0,0 +1,86 @@ +// license:BSD-3-Clause +// copyright-holders:Curt Coder +/********************************************************************** + + Qubbesoft QubIDE emulation + + Copyright MESS Team. + Visit http://mamedev.org for licensing and usage restrictions. + +**********************************************************************/ + +#include "qubide.h" + + + +//************************************************************************** +// DEVICE DEFINITIONS +//************************************************************************** + +const device_type QUBIDE = &device_creator; + + +//------------------------------------------------- +// ROM( qubide ) +//------------------------------------------------- + +ROM_START( qubide ) + ROM_REGION( 0x4000, "rom", 0 ) + ROM_DEFAULT_BIOS("v201") + ROM_SYSTEM_BIOS( 0, "v201", "v2.01" ) + ROMX_LOAD( "qb201_16k.rom", 0x0000, 0x4000, CRC(6f1d62a6) SHA1(1708d85397422e2024daa1a3406cac685f46730d), ROM_BIOS(1) ) +ROM_END + + +//------------------------------------------------- +// rom_region - device-specific ROM region +//------------------------------------------------- + +const rom_entry *qubide_t::device_rom_region() const +{ + return ROM_NAME( qubide ); +} + + + +//************************************************************************** +// LIVE DEVICE +//************************************************************************** + +//------------------------------------------------- +// qubide_t - constructor +//------------------------------------------------- + +qubide_t::qubide_t(const machine_config &mconfig, const char *tag, device_t *owner, UINT32 clock) : + device_t(mconfig, QUBIDE, "QubIDE", tag, owner, clock, "ql_qubide", __FILE__), + device_ql_expansion_card_interface(mconfig, *this) +{ +} + + +//------------------------------------------------- +// device_start - device-specific startup +//------------------------------------------------- + +void qubide_t::device_start() +{ +} + + +//------------------------------------------------- +// read - +//------------------------------------------------- + +UINT8 qubide_t::read(address_space &space, offs_t offset, UINT8 data) +{ + return data; +} + + +//------------------------------------------------- +// write - +//------------------------------------------------- + +void qubide_t::write(address_space &space, offs_t offset, UINT8 data) +{ +} diff --git a/src/emu/bus/ql/qubide.h b/src/emu/bus/ql/qubide.h new file mode 100644 index 00000000000..f7986790433 --- /dev/null +++ b/src/emu/bus/ql/qubide.h @@ -0,0 +1,56 @@ +// license:BSD-3-Clause +// copyright-holders:Curt Coder +/********************************************************************** + + Qubbesoft QubIDE emulation + + Copyright MESS Team. + Visit http://mamedev.org for licensing and usage restrictions. + +**********************************************************************/ + +#pragma once + +#ifndef __QUBIDE__ +#define __QUBIDE__ + +#include "exp.h" + + + +//************************************************************************** +// TYPE DEFINITIONS +//************************************************************************** + +// ======================> qubide_t + +class qubide_t : public device_t, + public device_ql_expansion_card_interface +{ +public: + // construction/destruction + qubide_t(const machine_config &mconfig, const char *tag, device_t *owner, UINT32 clock); + qubide_t(const machine_config &mconfig, device_type type, const char *name, const char *tag, device_t *owner, UINT32 clock, const char *shortname, const char *source, int ram_size); + + // optional information overrides + virtual const rom_entry *device_rom_region() const; + +protected: + // device-level overrides + virtual void device_start(); + + // device_ql_expansion_card_interface overrides + virtual UINT8 read(address_space &space, offs_t offset, UINT8 data); + virtual void write(address_space &space, offs_t offset, UINT8 data); + +private: +}; + + + +// device type definition +extern const device_type QUBIDE; + + + +#endif diff --git a/src/emu/bus/ql/rom.c b/src/emu/bus/ql/rom.c index 85122c1642b..690f2a7a6c6 100644 --- a/src/emu/bus/ql/rom.c +++ b/src/emu/bus/ql/rom.c @@ -128,9 +128,12 @@ void ql_rom_cartridge_slot_t::get_default_card_software(astring &result) //------------------------------------------------- // slot devices +#include "miracle_hd.h" #include "std.h" SLOT_INTERFACE_START( ql_rom_cartridge_cards ) + SLOT_INTERFACE("mhd", MIRACLE_HARD_DISK) + // the following need ROMs from the software list SLOT_INTERFACE_INTERNAL("standard", QL_STANDARD_ROM_CARTRIDGE) SLOT_INTERFACE_END