Nascom: Add floppy softlist

This commit is contained in:
Dirk Best 2015-05-18 19:55:22 +02:00
parent 18e90bc313
commit 00142ca341
5 changed files with 123 additions and 10 deletions

72
hash/nascom_flop.xml Normal file
View file

@ -0,0 +1,72 @@
<?xml version="1.0"?>
<!DOCTYPE softwarelist SYSTEM "softwarelist.dtd">
<softwarelist name="nascom_flop" description="Nascom disk images">
<software name="asteroid">
<description>Asteroids</description>
<year>1985</year>
<publisher>Richard C. Espley</publisher>
<part name="flop1" interface="floppy_5_25">
<dataarea name="flop" size="655360">
<rom name="asteroid.dsk" size="655360" crc="96d6b7b6" sha1="ecf667413ec6fdec7a421ececcf572a00354ff10" offset="0" />
</dataarea>
</part>
</software>
<software name="avc-demo">
<description>AVC Demo Disk</description>
<year>1982</year>
<publisher>Lucas Logic</publisher>
<part name="flop1" interface="floppy_5_25">
<dataarea name="flop" size="655360">
<rom name="avc-demo.dsk" size="655360" crc="81877f78" sha1="11fadb5ea69a949fdeadac3938683b14728b18df" offset="0" />
</dataarea>
</part>
</software>
<software name="divtools">
<description>Tools &amp; Toolkits</description>
<year>198?</year>
<publisher>&lt;unknown&gt;</publisher>
<part name="flop1" interface="floppy_5_25">
<dataarea name="flop" size="655360">
<rom name="divtools.dsk" size="655360" crc="58751dc6" sha1="7078e928c2ef17fccd53e1d1eb2fd9bfe9371c2c" offset="0" />
</dataarea>
</part>
</software>
<software name="dosadv">
<description>Nascom Disk Adventure</description>
<year>1983</year>
<publisher>Richard C. Espley</publisher>
<part name="flop1" interface="floppy_5_25">
<dataarea name="flop" size="655360">
<rom name="dosadv.dsk" size="655360" crc="bd37aa35" sha1="b9483567951830955c6fe944c934c5b3ddf2007c" offset="0" />
</dataarea>
</part>
</software>
<software name="nas-sem">
<description>NAS-Sembler 1.5</description>
<year>1982</year>
<publisher>Lucas Logic</publisher>
<part name="flop1" interface="floppy_5_25">
<dataarea name="flop" size="655360">
<rom name="nas-sem.dsk" size="655360" crc="997e014a" sha1="ce86f41ebbb57322ff026b693dd49603e104f55c" offset="0" />
</dataarea>
</part>
</software>
<software name="utd1066">
<description>NAS-DOS Utility Disk</description>
<year>1982</year>
<publisher>M F Hessey</publisher>
<part name="flop1" interface="floppy_5_25">
<dataarea name="flop" size="655360">
<rom name="utd1066.dsk" size="655360" crc="ad1bf5b1" sha1="99c15344cdf4bdfe628a237f6e1759dc5b023e32" offset="0" />
</dataarea>
</part>
</software>
</softwarelist>

View file

@ -21,7 +21,8 @@ FLOPPY_FORMATS_MEMBER( nascom_fdc_device::floppy_formats )
FLOPPY_FORMATS_END
static SLOT_INTERFACE_START( nascom_floppies )
SLOT_INTERFACE("525qd", FLOPPY_525_QD)
SLOT_INTERFACE("55e", TEAC_FD_55E)
SLOT_INTERFACE("55f", TEAC_FD_55F)
SLOT_INTERFACE_END
//-------------------------------------------------
@ -32,10 +33,12 @@ SLOT_INTERFACE_END
static MACHINE_CONFIG_FRAGMENT( nascom_fdc )
MCFG_FD1793x_ADD("fd1793", XTAL_16MHz / 4 / 4)
MCFG_FLOPPY_DRIVE_ADD("fd1793:0", nascom_floppies, "525qd", nascom_fdc_device::floppy_formats)
MCFG_FLOPPY_DRIVE_ADD("fd1793:1", nascom_floppies, NULL, nascom_fdc_device::floppy_formats)
MCFG_FLOPPY_DRIVE_ADD("fd1793:2", nascom_floppies, NULL, nascom_fdc_device::floppy_formats)
MCFG_FLOPPY_DRIVE_ADD("fd1793:3", nascom_floppies, NULL, nascom_fdc_device::floppy_formats)
MCFG_FLOPPY_DRIVE_ADD("fd1793:0", nascom_floppies, "55f", nascom_fdc_device::floppy_formats)
MCFG_FLOPPY_DRIVE_ADD("fd1793:1", nascom_floppies, "55f", nascom_fdc_device::floppy_formats)
MCFG_FLOPPY_DRIVE_ADD("fd1793:2", nascom_floppies, NULL, nascom_fdc_device::floppy_formats)
MCFG_FLOPPY_DRIVE_ADD("fd1793:3", nascom_floppies, NULL, nascom_fdc_device::floppy_formats)
MCFG_SOFTWARE_LIST_ADD("floppy_list", "nascom_flop")
MACHINE_CONFIG_END
machine_config_constructor nascom_fdc_device::device_mconfig_additions() const
@ -71,6 +74,7 @@ nascom_fdc_device::nascom_fdc_device(const machine_config &mconfig, const char *
void nascom_fdc_device::device_start()
{
save_item(NAME(m_select));
}
//-------------------------------------------------

View file

@ -99,8 +99,8 @@ const device_type SONY_OA_D32V = &device_creator<sony_oa_d32v>;
#if 0
const device_type TEAC_FD_55A = &device_creator<teac_fd_55a>;
const device_type TEAC_FD_55B = &device_creator<teac_fd_55b>;
const device_type TEAC_FD_55E = &device_creator<teac_fd_55e>;
#endif
const device_type TEAC_FD_55E = &device_creator<teac_fd_55e>;
const device_type TEAC_FD_55F = &device_creator<teac_fd_55f>;
const device_type TEAC_FD_55G = &device_creator<teac_fd_55g>;
@ -1774,6 +1774,41 @@ void sony_oa_d32v::handled_variants(UINT32 *variants, int &var_count) const
variants[var_count++] = floppy_image::SSDD;
}
//-------------------------------------------------
// TEAC FD-55E
//
// track to track: 3 ms
// average: 94 ms
// setting time: 15 ms
// motor start time: 400 ms
//
//-------------------------------------------------
teac_fd_55e::teac_fd_55e(const machine_config &mconfig, const char *tag, device_t *owner, UINT32 clock) :
floppy_image_device(mconfig, TEAC_FD_55F, "TEAC FD-55E FDD", tag, owner, clock, "teac_fd_55e", __FILE__)
{
}
teac_fd_55e::~teac_fd_55e()
{
}
void teac_fd_55e::setup_characteristics()
{
form_factor = floppy_image::FF_525;
tracks = 80;
sides = 1;
set_rpm(300);
}
void teac_fd_55e::handled_variants(UINT32 *variants, int &var_count) const
{
var_count = 0;
variants[var_count++] = floppy_image::SSSD;
variants[var_count++] = floppy_image::SSDD;
variants[var_count++] = floppy_image::SSQD;
}
//-------------------------------------------------
// TEAC FD-55F
//

View file

@ -242,6 +242,7 @@ DECLARE_FLOPPY_IMAGE_DEVICE(epson_sd_321, "floppy_5_25")
DECLARE_FLOPPY_IMAGE_DEVICE(sony_oa_d31v, "floppy_3_5")
DECLARE_FLOPPY_IMAGE_DEVICE(sony_oa_d32w, "floppy_3_5")
DECLARE_FLOPPY_IMAGE_DEVICE(sony_oa_d32v, "floppy_3_5")
DECLARE_FLOPPY_IMAGE_DEVICE(teac_fd_55e, "floppy_5_25")
DECLARE_FLOPPY_IMAGE_DEVICE(teac_fd_55f, "floppy_5_25")
DECLARE_FLOPPY_IMAGE_DEVICE(teac_fd_55g, "floppy_5_25")
DECLARE_FLOPPY_IMAGE_DEVICE(alps_3255190x, "floppy_5_25")
@ -293,6 +294,7 @@ extern const device_type EPSON_SD_321;
extern const device_type SONY_OA_D31V;
extern const device_type SONY_OA_D32W;
extern const device_type SONY_OA_D32V;
extern const device_type TEAC_FD_55E;
extern const device_type TEAC_FD_55F;
extern const device_type TEAC_FD_55G;
extern const device_type ALPS_3255190x;

View file

@ -31,14 +31,14 @@ const char *nascom_format::extensions() const
const nascom_format::format nascom_format::formats[] =
{
{ // 360k 5 1/4 inch double density single sided
floppy_image::FF_525, floppy_image::SSQD, floppy_image::MFM,
2000, 16, 80, 1, 256, {}, 1, {}, 32, 22, 54
},
{ // 720k 5 1/4 inch double density double sided
floppy_image::FF_525, floppy_image::DSQD, floppy_image::MFM,
2000, 16, 80, 2, 256, {}, 1, {}, 32, 22, 54
},
{ // 360k 5 1/4 inch double density single sided
floppy_image::FF_525, floppy_image::SSQD, floppy_image::MFM,
2000, 16, 80, 1, 256, {}, 1, {}, 32, 22, 54
},
{}
};