diff options
Diffstat (limited to 'src/mess/machine')
-rw-r--r-- | src/mess/machine/c1541.c | 27 | ||||
-rw-r--r-- | src/mess/machine/c1541.h | 12 | ||||
-rw-r--r-- | src/mess/machine/cbmipt.c | 1 |
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) |