summaryrefslogtreecommitdiffstatshomepage
path: root/src/mess/machine
diff options
context:
space:
mode:
Diffstat (limited to 'src/mess/machine')
-rw-r--r--src/mess/machine/c1541.c27
-rw-r--r--src/mess/machine/c1541.h12
-rw-r--r--src/mess/machine/cbmipt.c1
3 files changed, 40 insertions, 0 deletions
diff --git a/src/mess/machine/c1541.c b/src/mess/machine/c1541.c
index 31ed513dc33..b9dc61a2ebc 100644
--- a/src/mess/machine/c1541.c
+++ b/src/mess/machine/c1541.c
@@ -173,6 +173,7 @@ const device_type C1541C = &device_creator<c1541c_device>;
const device_type C1541II = &device_creator<c1541ii_device>;
const device_type SX1541 = &device_creator<sx1541_device>;
const device_type FSD2 = &device_creator<fsd2_device>;
+const device_type CSD1 = &device_creator<csd1_device>;
const device_type C1541_DOLPHIN_DOS = &device_creator<c1541_dolphin_dos_device>;
const device_type C1541_PROFESSIONAL_DOS_V1 = &device_creator<c1541_professional_dos_v1_device>;
const device_type C1541_PROLOGIC_DOS_CLASSIC = &device_creator<c1541_prologic_dos_classic_device>;
@@ -213,6 +214,10 @@ void base_c1541_device::device_config_complete()
m_shortname = "fsd2";
break;
+ case TYPE_CSD1:
+ m_shortname = "csd1";
+ break;
+
case TYPE_1541_DOLPHIN_DOS:
m_shortname = "c1541dd";
break;
@@ -338,6 +343,17 @@ ROM_END
//-------------------------------------------------
+// ROM( csd1 )
+//-------------------------------------------------
+
+ROM_START( csd1 )
+ ROM_REGION( 0x4000, M6502_TAG, 0 )
+ ROM_LOAD( "ic14", 0x0000, 0x2000, CRC(adb6980e) SHA1(13051587dfe43b04ce1bf354b89438ddf6d8d76b) )
+ ROM_LOAD( "ic15", 0x2000, 0x2000, CRC(b0cecfa1) SHA1(c67e79a7ffefc9e9eafc238cb6ff6bb718f19afb) )
+ROM_END
+
+
+//-------------------------------------------------
// ROM( c1541dd )
//-------------------------------------------------
@@ -400,6 +416,9 @@ const rom_entry *base_c1541_device::device_rom_region() const
case TYPE_FSD2: // aka Excelerator PLUS / Oceanic OC-118N
return ROM_NAME( fsd2 );
+ case TYPE_CSD1:
+ return ROM_NAME( csd1 );
+
case TYPE_1541_DOLPHIN_DOS:
return ROM_NAME( c1541dd );
@@ -1042,6 +1061,14 @@ fsd2_device::fsd2_device(const machine_config &mconfig, const char *tag, device_
//-------------------------------------------------
+// csd1_device - constructor
+//-------------------------------------------------
+
+csd1_device::csd1_device(const machine_config &mconfig, const char *tag, device_t *owner, UINT32 clock)
+ : base_c1541_device(mconfig, CSD1, "CSD-1", tag, owner, clock, TYPE_CSD1) { }
+
+
+//-------------------------------------------------
// c1541_dolphin_dos_device - constructor
//-------------------------------------------------
diff --git a/src/mess/machine/c1541.h b/src/mess/machine/c1541.h
index bf560c7ee3e..7ca9d62e15c 100644
--- a/src/mess/machine/c1541.h
+++ b/src/mess/machine/c1541.h
@@ -57,6 +57,7 @@ public:
TYPE_1541II,
TYPE_SX1541,
TYPE_FSD2,
+ TYPE_CSD1,
// extended hardware
TYPE_1541_DOLPHIN_DOS,
@@ -180,6 +181,16 @@ public:
};
+// ======================> csd1_device
+
+class csd1_device : public base_c1541_device
+{
+public:
+ // construction/destruction
+ csd1_device(const machine_config &mconfig, const char *tag, device_t *owner, UINT32 clock);
+};
+
+
// ======================> c1541_dolphin_dos_device
class c1541_dolphin_dos_device : public base_c1541_device
@@ -237,6 +248,7 @@ extern const device_type C1541C;
extern const device_type C1541II;
extern const device_type SX1541;
extern const device_type FSD2;
+extern const device_type CSD1;
extern const device_type C1541_DOLPHIN_DOS;
extern const device_type C1541_PROFESSIONAL_DOS_V1;
extern const device_type C1541_PROLOGIC_DOS_CLASSIC;
diff --git a/src/mess/machine/cbmipt.c b/src/mess/machine/cbmipt.c
index 9fc7bc96715..1757e465d3d 100644
--- a/src/mess/machine/cbmipt.c
+++ b/src/mess/machine/cbmipt.c
@@ -1040,6 +1040,7 @@ SLOT_INTERFACE_START( cbm_iec_devices )
SLOT_INTERFACE("c1541c", C1541C)
SLOT_INTERFACE("c1541ii", C1541II)
SLOT_INTERFACE("fsd2", FSD2)
+ SLOT_INTERFACE("csd1", CSD1)
SLOT_INTERFACE("c1541dd", C1541_DOLPHIN_DOS)
SLOT_INTERFACE("c1541pd", C1541_PROFESSIONAL_DOS_V1)
SLOT_INTERFACE("c1541pdc", C1541_PROLOGIC_DOS_CLASSIC)