From 991987f325a680f99815b2cc8b0225567eec5e4d Mon Sep 17 00:00:00 2001 From: Curt Coder Date: Sun, 12 Apr 2015 13:01:54 +0300 Subject: [PATCH] (MESS) c64. Added FSD-1 disk drive ROMs. [Ray Carlsen] --- src/emu/bus/cbmiec/c1541.c | 29 +++++++++++++++++++++++++++++ src/emu/bus/cbmiec/c1541.h | 14 ++++++++++++++ src/emu/bus/cbmiec/cbmiec.c | 1 + 3 files changed, 44 insertions(+) diff --git a/src/emu/bus/cbmiec/c1541.c b/src/emu/bus/cbmiec/c1541.c index a2dc778bbd5..095b707d029 100644 --- a/src/emu/bus/cbmiec/c1541.c +++ b/src/emu/bus/cbmiec/c1541.c @@ -168,6 +168,7 @@ const device_type C1541 = &device_creator; const device_type C1541C = &device_creator; const device_type C1541II = &device_creator; const device_type SX1541 = &device_creator; +const device_type FSD1 = &device_creator; const device_type FSD2 = &device_creator; const device_type CSD1 = &device_creator; const device_type C1541_DOLPHIN_DOS = &device_creator; @@ -318,6 +319,26 @@ const rom_entry *sx1541_device::device_rom_region() const } +//------------------------------------------------- +// ROM( fsd1 ) +//------------------------------------------------- + +ROM_START( fsd1 ) + ROM_REGION( 0x4000, M6502_TAG, 0 ) + ROM_LOAD( "fsd1.bin", 0x0000, 0x4000, CRC(57224cde) SHA1(ab16f56989b27d89babe5f89c5a8cb3da71a82f0) ) +ROM_END + + +//------------------------------------------------- +// rom_region - device-specific ROM region +//------------------------------------------------- + +const rom_entry *fsd1_device::device_rom_region() const +{ + return ROM_NAME( fsd1 ); +} + + //------------------------------------------------- // ROM( fsd2 ) //------------------------------------------------- @@ -1011,6 +1032,14 @@ sx1541_device::sx1541_device(const machine_config &mconfig, const char *tag, dev : base_c1541_device(mconfig, SX1541, "SX1541", tag, owner, clock, "sx1541", __FILE__) { } +//------------------------------------------------- +// fsd1_device - constructor +//------------------------------------------------- + +fsd1_device::fsd1_device(const machine_config &mconfig, const char *tag, device_t *owner, UINT32 clock) + : base_c1541_device(mconfig, FSD1, "FSD-1", tag, owner, clock, "fsd1", __FILE__) { } + + //------------------------------------------------- // fsd2_device - constructor //------------------------------------------------- diff --git a/src/emu/bus/cbmiec/c1541.h b/src/emu/bus/cbmiec/c1541.h index 86f05529ac2..ce232372b3f 100644 --- a/src/emu/bus/cbmiec/c1541.h +++ b/src/emu/bus/cbmiec/c1541.h @@ -171,6 +171,19 @@ public: }; +// ======================> fsd1_device + +class fsd1_device : public base_c1541_device +{ +public: + // construction/destruction + fsd1_device(const machine_config &mconfig, const char *tag, device_t *owner, UINT32 clock); + + // optional information overrides + virtual const rom_entry *device_rom_region() const; +}; + + // ======================> fsd2_device class fsd2_device : public base_c1541_device @@ -264,6 +277,7 @@ extern const device_type C1541; extern const device_type C1541C; extern const device_type C1541II; extern const device_type SX1541; +extern const device_type FSD1; extern const device_type FSD2; extern const device_type CSD1; extern const device_type C1541_DOLPHIN_DOS; diff --git a/src/emu/bus/cbmiec/cbmiec.c b/src/emu/bus/cbmiec/cbmiec.c index b79556e21fa..c12d22fcd0d 100644 --- a/src/emu/bus/cbmiec/cbmiec.c +++ b/src/emu/bus/cbmiec/cbmiec.c @@ -501,6 +501,7 @@ SLOT_INTERFACE_START( cbm_iec_devices ) SLOT_INTERFACE("c1541", C1541) SLOT_INTERFACE("c1541c", C1541C) SLOT_INTERFACE("c1541ii", C1541II) + SLOT_INTERFACE("fsd1", FSD1) SLOT_INTERFACE("fsd2", FSD2) SLOT_INTERFACE("csd1", CSD1) SLOT_INTERFACE("c1541dd", C1541_DOLPHIN_DOS)