diff --git a/hash/adam_flop.xml b/hash/adam_flop.xml index d1de2273982..79fddc6cc7c 100644 --- a/hash/adam_flop.xml +++ b/hash/adam_flop.xml @@ -2,6 +2,42 @@ + + Disk Doctor v1.4 + 1987 + AJM Software + + + + + + + + + + Disk Manager + 1984 + Coleco + + + + + + + + + + Disk Manager (Alt) + 1984 + Coleco + + + + + + + + Best of B.C. Featuring B.C's Quest For Tires and B.C. II: Grog's Revenge 1985 diff --git a/src/emu/bus/adamnet/fdc.c b/src/emu/bus/adamnet/fdc.c index 106f315e46c..cb7b778e8aa 100644 --- a/src/emu/bus/adamnet/fdc.c +++ b/src/emu/bus/adamnet/fdc.c @@ -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 diff --git a/src/emu/bus/adamnet/fdc.h b/src/emu/bus/adamnet/fdc.h index fee37379622..b8ec89575a6 100644 --- a/src/emu/bus/adamnet/fdc.h +++ b/src/emu/bus/adamnet/fdc.h @@ -71,5 +71,9 @@ protected: extern const device_type ADAM_FDC; +// default inputs +extern const input_device_default DEVICE_INPUT_DEFAULTS_NAME( drive2 )[]; + + #endif diff --git a/src/lib/formats/adam_dsk.c b/src/lib/formats/adam_dsk.c index 57150e79934..19d285be3f9 100644 --- a/src/lib/formats/adam_dsk.c +++ b/src/lib/formats/adam_dsk.c @@ -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 diff --git a/src/mess/drivers/adam.c b/src/mess/drivers/adam.c index 67e94cbde2e..01bf3663d4a 100644 --- a/src/mess/drivers/adam.c +++ b/src/mess/drivers/adam.c @@ -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)