Path: utzoo!utgpu!jarvis.csri.toronto.edu!clyde.concordia.ca!uunet!wuarchive!udel!mmdf From: Peter_Van_Epp@cc.sfu.ca Newsgroups: comp.os.minix Subject: Re: 3.5" disks, PS/2 model 50Z Message-ID: <7317@nigel.udel.EDU> Date: 3 Jan 90 18:11:36 GMT Sender: mmdf@udel.EDU Lines: 38 >From: paula@BCSAIC.UUCP >Subject: Re: 3.5" disks, PS/2 model 50Z ... >I got tired of the glacial speed of the floppy driver under 1.3 and >decided to add interleaving. But since all my existing floppies were >written by the old driver, needed to be able to deal with both >interleaved and non-interleaved floppies. Also, in order to do >interleaving, you need to know the sectors per track, which depends on >the drive/media combination. But the driver tries different >combinations if if gets errors. It seems like the driver ought to >return EOF (or something) if you try to access beyond the end of the >media, but you can't know what type of media you've got until you have >a successful transfer, which you can't have if the requested block is >off the end of the disk! Aaaagh! I am also having problems with 1.44m disks on a PS/2 mod 55, I have modified bootblok.s to boot from a 1.44M (and will post it after I test it on all possible combintions of disks), I have something semi working with floppy.c modified to only recognize 1.44m disks but mkfs can't make a root file system that 1.5.0 will accept (the one I use was built on an XT on 360k floppy and moved via DOS to a 1.44m), I am still working on why this is. In any case floppy.c seems to attack the density problem all wrong, I would rather see it do the same as bootblok.s to determine what kind of floppy you have got: when the drive is reset because of an error, or at initalization, read track 0 sector 18 to see if it is 1.44m sector 15 for 1.2m etc (see table below). This data would then be saved and used every time a floppy is accessed, and if the disk is changed then and error should occur and the reset should reset the disk type (not foolproof but seems better than current!). Table of disk characteristics 1.44m 3.5" 80 tracks 18 sectors/track(read track 0 sector 18) 1.2m 5.24 40 tracks 15 sectors/track(read track 0 sector 15) 720k 3.5" 9 sectors/track 80 tracks (read track > 40 sector 1) 360k 5.25 40 tracks 9 sectors/track (if all the others fail this must be it!).