(MESS) adam: Added a second floppy drive and verified 160KB floppy image gap sizes. [Curt Coder]

(MESS) adam_flop.xml: Added disk utilities. [Curt Coder]
This commit is contained in:
Curt Coder 2013-11-18 19:31:27 +00:00
parent 37bc93a3e3
commit 3677fc1652
5 changed files with 76 additions and 5 deletions

View File

@ -2,6 +2,42 @@
<!DOCTYPE softwarelist SYSTEM "softwarelist.dtd">
<softwarelist name="adam_flop" description="Coleco Adam diskettes">
<software name="diskdoc">
<description>Disk Doctor v1.4</description>
<year>1987</year>
<publisher>AJM Software</publisher>
<part name="flop1" interface="floppy_5_25">
<dataarea name="flop" size="52231">
<rom name="diskdoc.imd" size="52231" crc="33bf7050" sha1="413e091fb915c713f56004cbedc2be9dca9e12d6" offset="0" />
</dataarea>
</part>
</software>
<software name="diskman">
<description>Disk Manager</description>
<year>1984</year>
<publisher>Coleco</publisher>
<part name="flop1" interface="floppy_5_25">
<dataarea name="flop" size="162897">
<rom name="diskman1.imd" size="162897" crc="160d75a1" sha1="cb43a4c16abc24de4692038c94f7836c25fa495a" offset="0" />
</dataarea>
</part>
</software>
<software name="diskmana" cloneof="diskman">
<description>Disk Manager (Alt)</description>
<year>1984</year>
<publisher>Coleco</publisher>
<part name="flop1" interface="floppy_5_25">
<dataarea name="flop" size="163410">
<rom name="diskman2.imd" size="163410" crc="4db60438" sha1="9c1b815833726457d54c9bfc8848434cdbd2145e" offset="0" />
</dataarea>
</part>
</software>
<software name="bestbc">
<description>Best of B.C. Featuring B.C's Quest For Tires and B.C. II: Grog's Revenge</description>
<year>1985</year>

View File

@ -9,6 +9,16 @@
**********************************************************************/
/*
TODO:
- 320KB DSDD 5.25"
- 720KB DSDD 3.5"
- 1.44MB DSHD 3.5"
*/
#include "fdc.h"
@ -113,7 +123,7 @@ FLOPPY_FORMATS_MEMBER( adam_fdc_device::floppy_formats )
FLOPPY_FORMATS_END
static SLOT_INTERFACE_START( adam_fdc_floppies )
SLOT_INTERFACE( "525dd", FLOPPY_525_DD )
SLOT_INTERFACE( "525ssdd", FLOPPY_525_SSDD )
SLOT_INTERFACE_END
@ -128,7 +138,7 @@ static MACHINE_CONFIG_FRAGMENT( adam_fdc )
MCFG_WD2793x_ADD(WD2793_TAG, XTAL_4MHz/4)
MCFG_FLOPPY_DRIVE_ADD(WD2793_TAG":0", adam_fdc_floppies, "525dd", adam_fdc_device::floppy_formats)
MCFG_FLOPPY_DRIVE_ADD(WD2793_TAG":0", adam_fdc_floppies, "525ssdd", adam_fdc_device::floppy_formats)
MACHINE_CONFIG_END
@ -348,3 +358,12 @@ WRITE8_MEMBER( adam_fdc_device::p2_w )
m_bus->txd_w(this, BIT(data, 4));
}
//-------------------------------------------------
// DEVICE_INPUT_DEFAULTS( drive2 )
//-------------------------------------------------
DEVICE_INPUT_DEFAULTS_START( drive2 )
DEVICE_INPUT_DEFAULTS("SW3", 0x01, 0x01)
DEVICE_INPUT_DEFAULTS_END

View File

@ -71,5 +71,9 @@ protected:
extern const device_type ADAM_FDC;
// default inputs
extern const input_device_default DEVICE_INPUT_DEFAULTS_NAME( drive2 )[];
#endif

View File

@ -30,12 +30,23 @@ const char *adam_format::extensions() const
return "dsk";
}
// Unverified gap sizes
const adam_format::format adam_format::formats[] = {
// track description
// 100x4e 12x00 3xf5 fe 2x00 01 02 f7 22x4e 12x00 3xf5 fb 512xe5 f7
// 100x4e 12x00 3xf5 fe 2x00 02 02 f7 22x4e 12x00 3xf5 fb 512xe5 f7
// 100x4e 12x00 3xf5 fe 2x00 03 02 f7 22x4e 12x00 3xf5 fb 512xe5 f7
// 100x4e 12x00 3xf5 fe 2x00 04 02 f7 22x4e 12x00 3xf5 fb 512xe5 f7
// 100x4e 12x00 3xf5 fe 2x00 05 02 f7 22x4e 12x00 3xf5 fb 512xe5 f7
// 100x4e 12x00 3xf5 fe 2x00 06 02 f7 22x4e 12x00 3xf5 fb 512xe5 f7
// 100x4e 12x00 3xf5 fe 2x00 07 02 f7 22x4e 12x00 3xf5 fb 512xe5 f7
// 100x4e 12x00 3xf5 fe 2x00 08 02 f7 22x4e 12x00 3xf5 fb 512xe5 f7
// 859x4e
{ /* 160K 5 1/4 inch double density single sided */
floppy_image::FF_525, floppy_image::SSDD, floppy_image::MFM,
2000, 8, 40, 1, 512, {}, 1, {}, 100, 22, 84
2000, 8, 40, 1, 512, {}, 1, {}, 100, 22, 100
},
// Unverified gap sizes -->
{ /* 320K 5 1/4 inch double density */
floppy_image::FF_525, floppy_image::DSDD, floppy_image::MFM,
2000, 8, 40, 2, 512, {}, 1, {}, 100, 22, 84

View File

@ -1135,7 +1135,8 @@ static MACHINE_CONFIG_START( adam, adam_state )
MCFG_ADAMNET_SLOT_ADD("net2", adamnet_devices, "prn")
MCFG_ADAMNET_SLOT_ADD("net3", adamnet_devices, "ddp")
MCFG_ADAMNET_SLOT_ADD("net4", adamnet_devices, "fdc")
MCFG_ADAMNET_SLOT_ADD("net5", adamnet_devices, NULL)
MCFG_ADAMNET_SLOT_ADD("net5", adamnet_devices, "fdc")
MCFG_DEVICE_CARD_DEVICE_INPUT_DEFAULTS("fdc", drive2)
MCFG_ADAMNET_SLOT_ADD("net6", adamnet_devices, NULL)
MCFG_ADAMNET_SLOT_ADD("net7", adamnet_devices, NULL)
MCFG_ADAMNET_SLOT_ADD("net8", adamnet_devices, NULL)