diff --git a/src/lib/formats/flex_dsk.c b/src/lib/formats/flex_dsk.c index 4691822ff08..69522315af1 100644 --- a/src/lib/formats/flex_dsk.c +++ b/src/lib/formats/flex_dsk.c @@ -87,7 +87,10 @@ bool flex_format::load(io_generic *io, UINT32 form_factor, floppy_image *image) sdatapos += bps; } // gap sizes unverified - build_wd_track_fm(track, head, image, cell_count, spt, sects, 24, 16, 11); + if(total_tracks == 35 && spt == 18 && (track >= 1 && track <= 2)) // handle Gimix Flex 3.6 disk image, which the boot sector loads tracks 1 and 2 as MFM + build_wd_track_mfm(track, head, image, cell_count*2, spt, sects, 50, 32, 22); + else + build_wd_track_fm(track, head, image, cell_count, spt, sects, 24, 16, 11); } return true; } diff --git a/src/lib/formats/flex_dsk.h b/src/lib/formats/flex_dsk.h index 17718a8c59f..056f53ea9e7 100644 --- a/src/lib/formats/flex_dsk.h +++ b/src/lib/formats/flex_dsk.h @@ -20,8 +20,6 @@ public: virtual int identify(io_generic *io, UINT32 form_factor); virtual bool load(io_generic *io, UINT32 form_factor, floppy_image *image); private: -// static const format formats[]; - struct sysinfo_sector { UINT8 unused1[16];