[comp.sys.ibm.pc] Disk holes and other strange things

ttang@puff.cs.wisc.edu (Theodore Tang) (02/19/88)

The index hole on the floppy disk is used only for formatting purposes so all
tracks remain in sync.  When the disk is read, the hole is not used.  I'm not
sure about writes.


Theodore Tang
University of Wisconsin at Madison

USENET:       ttang@puff.wisc.edu.UUCP
FIDONET:      1:121/3 (Opus's Internat'l Archives BBS)
BBS:          Opus's Internat'l Archives BBS
	      (608)251-4755 9600 USR HST MNP 5

"No, no, it wasn't me!" -anonymous

greg@gryphon.CTS.COM (Greg Laskin) (02/21/88)

In article <1412@puff.cs.wisc.edu> ttang@puff.cs.wisc.edu (Theodore Tang) writes:
>The index hole on the floppy disk is used only for formatting purposes so all
>tracks remain in sync.  When the disk is read, the hole is not used.  I'm not
>sure about writes.
>
Don't do a term paper on index holes without some more research.

The index hole to which you refer, as opposed to index holes that
demarcate sectors on a hard sectored diskette, allows the controller
to determine:
   1)  That the diskette is moving.
   2)  That the diskette has made a complete revolution (the hole went by
       twice.)
In addition, it provides a convenient start-of-track reference marker
when formatting the diskette.  Diskette tracks are not in sync with
anything, by the way.

If, for example, you were looking for sector 4 and two index holes
went by, it would be a good bet that you weren't going to find sector 4.
Thanks to our friend, the hole, sectors don't have to be recorded
sequentially on the diskette.

If you see two index holes while formatting a track, you've written too
much formatting on the track, although many controllers don't recognize
this one.

-- 
Greg Laskin           
"When everybody's talking and nobody's listening, how can we decide?"
INTERNET:     Greg.Laskin@gryphon.CTS.COM
UUCP:         ihnp4!scgvaxd!cadovax!gryphon!greg rutgers!marque!gryphon!greg 
                        codas!ddsw1!gryphon!greg

ttang@puff.cs.wisc.edu (Theodore Tang) (02/22/88)

In article <2660@gryphon.CTS.COM>, greg@gryphon.CTS.COM (Greg Laskin) writes:
> In article <1412@puff.cs.wisc.edu> ttang@puff.cs.wisc.edu (Theodore Tang) writes:
> >The index hole on the floppy disk is used only for formatting purposes so all
> >tracks remain in sync.  When the disk is read, the hole is not used.  I'm not
> >sure about writes.
> >
> Don't do a term paper on index holes without some more research.
> 
> The index hole to which you refer, as opposed to index holes that
> demarcate sectors on a hard sectored diskette, allows the controller
> to determine:
>    1)  That the diskette is moving.
>    2)  That the diskette has made a complete revolution (the hole went by
>        twice.)
> In addition, it provides a convenient start-of-track reference marker
> when formatting the diskette.  Diskette tracks are not in sync with
> anything, by the way.

If FORMAT uses the index hole as a reference to the start of track, I do
believe that is syncronizing the tracks so they all start right after the
appearance of the index hole.
 
> If, for example, you were looking for sector 4 and two index holes
> went by, it would be a good bet that you weren't going to find sector 4.
> Thanks to our friend, the hole, sectors don't have to be recorded
> sequentially on the diskette.

First of all, try this out on your PC.  Cover the index hole of any formatted
disk.  If it can boot, boot it.  Surprise!  Your PC is reading the disk quite
well without the aid of the hole.  Try DIR, surprise again!  It also works
and it didn't even have to use the index hole.  Now try to create a file.  Hey!
That works too, and it didn't even complain with an error like INDEX HOLE
COVERED STUPID, I CAN'T READ YOUR DISK.  The ONLY time DOS uses that index hole
is when it formats.  At least we agree on that.

Hole or no hole, sectors are scewed (scrambled) so access time is faster to
find sectors.

> If you see two index holes while formatting a track, you've written too
> much formatting on the track, although many controllers don't recognize
> this one.
> 
> -- 
> Greg Laskin           

Theodore Tang
University of Wisconsin at Madison

USENET:       ttang@puff.wisc.edu.UUCP
FIDONET:      1:121/3 (Opus's Internat'l Archives BBS)
BBS:          Opus's Internat'l Archives BBS
	      (608)251-4755 9600 USR HST MNP 5

"No, no, it wasn't me!" -anonymous

wheels@mks.UUCP (Gerry Wheeler) (02/23/88)

In article <1414@puff.cs.wisc.edu>,
 ttang@puff.cs.wisc.edu (Theodore Tang) writes:
> The ONLY time DOS uses that index hole
> is when it formats.

Well, that is OK on a good disk, but what about a disk with a bad
sector? I think the previous poster was right -- the disk controller
uses the index hole as a timeout if it can't find the requested sector. 
If you request sector 2, and the controller hasn't found sector 2 after
seeing a couple of index pulses, it has to assume sector 2 isn't there. 
-- 
     Gerry Wheeler                           Phone: (519)884-2251
Mortice Kern Systems Inc.               UUCP: uunet!watmath!mks!wheels
   35 King St. North                             BIX: join mks
Waterloo, Ontario  N2J 2W9                  CompuServe: 73260,1043

ttang@puff.cs.wisc.edu (Theodore Tang) (02/24/88)

In article <404@mks.UUCP>, wheels@mks.UUCP (Gerry Wheeler) writes:
> In article <1414@puff.cs.wisc.edu>,
>  ttang@puff.cs.wisc.edu (Theodore Tang) writes:
> > The ONLY time DOS uses that index hole
> > is when it formats.
> 
> Well, that is OK on a good disk, but what about a disk with a bad
> sector? I think the previous poster was right -- the disk controller
> uses the index hole as a timeout if it can't find the requested sector. 
> If you request sector 2, and the controller hasn't found sector 2 after
> seeing a couple of index pulses, it has to assume sector 2 isn't there. 
> -- 
>      Gerry Wheeler                           Phone: (519)884-2251

The keyword here is TIMEOUT.  This is exactly what DOS does, it will time,
not wait for the hole to reappear.  It doesn't have to use the hole, just know
that it take x usecs for a complete pass and if it hasn't found the desired
sector by that time, bingo!, you get a TIMEOUT.  This is kind of like when
you don't close the drive door.

Theodore Tang (Ted) @ University of Wisconsin at Madison

TEL:     (608) 251-4325 (voice)
Bang:    ...!uwvax!geowhiz!uwspan!circle!121!3!sysop
UUCP:    ttang@puff.wisc.edu.UUCP (uw puff)
	 ttang@gosset.wisc.edu.UUCP (uw gosset)
Fidonet: Sysop, 1:121/3 Opus International Archives HST (608) 251-4755

mjg@ecsvax.UUCP (Michael Gingell) (03/02/88)

In article <1412@puff.cs.wisc.edu>, ttang@puff.cs.wisc.edu (Theodore Tang) writes:
> The index hole on the floppy disk is used only for formatting purposes so all
> tracks remain in sync.  When the disk is read, the hole is not used.  I'm not
> sure about writes.
> 
> 
Perfectly correct. The PC controller does not use the index hole if
it is reading or writing unless you have a bad disk. In that case
it may time out after a certain number of tries. 

On older disk drives you can actually cover the index hole with an
opaque write protect tab and still read or write. However you need
the index hole for formatting.

However modern half height disk drives have more sophisticated
electronics which times the intervals between successive index hole
pulses. If it is not 200 millisecs +/- 5% then the drive says to
itself "Oh - no disk in drive". It then lowers the drive ready line
and disables read/write signal lines.

Mike Gingell   ...ecsvax!mjg

martyn@garfield.UUCP (Martyn Quigley) (03/05/88)

In article <4709@ecsvax.UUCP> mjg@ecsvax.UUCP (Michael Gingell) writes:
>In article <1412@puff.cs.wisc.edu>, ttang@puff.cs.wisc.edu (Theodore Tang) writes:
>> The index hole on the floppy disk is used only for formatting purposes so all
>> tracks remain in sync.  When the disk is read, the hole is not used.  I'm not
>> sure about writes.
>
>On older disk drives you can actually cover the index hole with an
>opaque write protect tab and still read or write. However you need
>the index hole for formatting.
>

Any comments about 3.5" discs?  I have just formatted one, and I can't find
any index hole in it.  

ray@micomvax.UUCP (Ray Dunn) (03/09/88)

[Please excuse late news processing]

To protect the rude and the ignorant, I shall leave off names...

Mr A:
 >The index hole on the floppy disk is used only for formatting purposes so all
 >tracks remain in sync.  When the disk is read, the hole is not used.  I'm not
 >sure about writes.

Mr B:
 > Don't do a term paper on index holes without some more research.
 > 
 > The index hole to which you refer, as opposed to index holes that
 > demarcate sectors on a hard sectored diskette, allows the controller
 > to determine:
 >    1)  That the diskette is moving.
 >    2)  That the diskette has made a complete revolution (the hole went by
 >        twice.)
 > In addition, it provides a convenient start-of-track reference marker
 > when formatting the diskette.  Diskette tracks are not in sync with
 > anything, by the way.

Mr A:
 >First of all, try this out on your PC.  Cover the index hole of any formatted
 >disk.  If it can boot, boot it.  Surprise!  Your PC is reading the disk quite
 >well without the aid of the hole.  Try DIR, surprise again!  It also works
 >and it didn't even have to use the index hole.  Now try to create a file.
 >  Hey!
 >That works too, and it didn't even complain with an error like INDEX HOLE
 >COVERED STUPID, I CAN'T READ YOUR DISK.
 >The ONLY time DOS uses that index hole
 >is when it formats.  At least we agree on that.
 >

If you guys would stop shouting at each other, you Mr A would learn
something, and you Mr B would be able to communicate your ideas better and
receive some respect from your peers.

The **facts** are quite simple, and are as stated by Mr B:

On an IBM type disk drive and controller:

On a soft sectored diskette, the index hole is used as a start of track
marker to indicate to the FORMAT process when it should start writing the
soft sectoring information.  Within the track, the sectors can be ordered in
any way you like.  I know of no disk controller which will abort the track
format command if the index hole is seen again during the track format.

During disk READING, the required sector is searched for by reading the
sector headers written during the formatting, the controller does not need
to wait for the index hole before it starts its search.  If the sector is
found *BY THE TIME THE INDEX HOLE IS SEEN FOR THE SECOND TIME* then the data
is read.  Otherwise an error is flagged, as the addressed sector cannot be
found.

A similar process takes place when the controller is searching for the
sector header of the sector to be written.

If you cover the index hole and then attempt to read an illegal sector, or
one whose header has been corrupted, the search will continue ad pensionem!

If I remember the distant past, the 1791 controller also used the index hole
to determine whether a disk was loaded & spinning.

Thus Mr A, it is only when things start to go *wrong* that the index hole
has a bearing on reading or writing.  But it is *IS* required!!!  Stop
shouting - start thinking!!!  If you Mr B had not opened your response with
an insult, Mr A might have listened to you!!

Ray Dunn.  ...{philabs, mnetor, musocs}!micomvax!ray

ray@micomvax.UUCP (Ray Dunn) (03/12/88)

In article <1424@puff.cs.wisc.edu> ttang@puff.cs.wisc.edu (Theodore Tang) writes:
>The keyword here is TIMEOUT.  This is exactly what DOS does, it will time,
>not wait for the hole to reappear.  It doesn't have to use the hole, just know
>that it take x usecs for a complete pass and if it hasn't found the desired
>sector by that time, bingo!, you get a TIMEOUT.  This is kind of like when
>you don't close the drive door.
>
>Theodore Tang (Ted) @ University of Wisconsin at Madison
>

RIGHT AND WRONG!!   The *CONTROLLER* uses the index hole to know it isnt
going to find the requested sector on a spinning disk.  Under this
circumstance, an error is returned to DOS which does *NOT* have to wait for
a timeout to occur, the error will be reported within 2 revolution times.
Under other circumstances, when the controller does not give an error return
to DOS, *THEN* DOS will timeout!

Ray Dunn.  ..{philabs, mnetor, musocs)!micomvax!ray