[comp.sys.ibm.pc] screwed up directories on floppies

ncperson@ndsuvax.UUCP (Missing Person) (07/29/88)

Can anyone tell me why DOS will sometimes overwrite the directory of 
obe floppy with that of another? I've had this happen several times in the 
last week. 
 it seems to simply be replacing the directory information with a copy of 
what was on the previously inserted disk. I've heard of this happening before, but have never heard why it happens. Can somwone enlighten me?
thaks .
-- 
Brett G. Person
North Dakota State University
uunet!ndsuvax!ncperson | ncperson@ndsuvax.bitnet

Ralf.Brown@B.GP.CS.CMU.EDU (07/29/88)

In article <1060@ndsuvax.UUCP>, ncperson@ndsuvax.UUCP (Missing Person) writes:
}Can anyone tell me why DOS will sometimes overwrite the directory of 
}obe floppy with that of another? I've had this happen several times in the 
}last week. 
} it seems to simply be replacing the directory information with a copy of 
}what was on the previously inserted disk. I've heard of this happening before, but have never heard why it happens. Can somwone enlighten me?

What is happening is that you are switching disks while there are still files 
open on the first disk.  As long as files are open, DOS will not flush its 
disk buffers and update the directory and FAT.  When you then put in a 
different disk, DOS doesn't read the new directory and FAT (since it thinks it 
already has them), and the next directory update writes out the directory of 
the old disk onto the new one.

The cure is to make sure that all files are closed before switching disks.  
Note that some programs which use overlays keep files open until the program 
terminates.  ProComm 2.4.2 is one such program, and it uses the Plink overlay 
linker, so presumably all programs linked with that linker will show the 
problem.  Running 'strings' on the file should show you the Plink copyright 
notice on programs using it.
--
UUCP: {ucbvax,harvard}!cs.cmu.edu!ralf -=-=-=- Voice: (412) 268-3053 (school)
ARPA: ralf@cs.cmu.edu  BIT: ralf%cs.cmu.edu@CMUCCVMA  FIDO: Ralf Brown 1:129/31
Disclaimer? I     |Ducharm's Axiom:  If you view your problem closely enough
claimed something?|   you will recognize yourself as part of the problem.

len@csd1.milw.wisc.edu (Leonard P Levine) (07/30/88)

From article <1060@ndsuvax.UUCP>, by ncperson@ndsuvax.UUCP (Missing Person):
> Can anyone tell me why DOS will sometimes overwrite the directory of 
> obe floppy with that of another? I've had this happen several times in the 
> last week. 
>  it seems to simply be replacing the directory information with a copy of 
> what was on the previously inserted disk. I've heard of this happening before,
>but have never heard why it happens. Can somwone enlighten me?
> thaks .


If you were working with a 1.2 meg floppy, the problem is with the inability
of your system to detect the removal of the media.

for the 360K drive, the system will not recheck the directory if you reuse the
disk in less than 2 seconds from the last use.  Are you working that fast?


+ - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - +
| Leonard P. Levine                  e-mail len@evax.milw.wisc.edu    |
| Professor, Computer Science                Office (414) 229-5170    |
| University of Wisconsin-Milwaukee          Home   (414) 962-4719    |
| Milwaukee, WI 53201 U. S. A.               Modem  (414) 962-6228    |
+ - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - +

creps@silver.bacs.indiana.edu (Steve Creps) (07/30/88)

In article <6332@uwmcsd1.UUCP> len@csd1.milw.wisc.edu (Leonard P Levine) writes:
>From article <1060@ndsuvax.UUCP>, by ncperson@ndsuvax.UUCP (Missing Person):
>> Can anyone tell me why DOS will sometimes overwrite the directory of 
>> obe floppy with that of another?
...
>>  it seems to simply be replacing the directory information with a copy of 
>> what was on the previously inserted disk. I've heard of this happening before,
>If you were working with a 1.2 meg floppy, the problem is with the inability
>of your system to detect the removal of the media.
>for the 360K drive, the system will not recheck the directory if you reuse the
>disk in less than 2 seconds from the last use.  Are you working that fast?

   I believe this is actually a bug (or inconvenience) in DOS. I've also seen
this happen before, usually when the disks were changed before exiting
whatever program happened to be running at the time. At least, in my opinion
it was an unfortunate choice to allow DOS to buffer changes to the disk
directory, which I would guess is what is happening to cause the problem.
   As for the system being able to detect a disk change, this feature is not
present in PCs or XTs. According to Norton's programmer's guide, DOS interrupt
13H service 16H is specific to ATs. The reason I note this is because when
I've seen this happen, it has been on a PC or XT.
   Comments welcome, a lot of what I've just said is hypothesis.

-	-	-	-	-	-	-	-	-	-
Steve Creps, Indiana University, Bloomington, home of the "Hoosiers"
	creps@silver.bacs.indiana.edu (192.12.206.2)
	{inuxc,rutgers,pyramid,pur-ee}!iuvax!silver!creps
	creps@iubacs.bitnet (forwarded)

vojta@BOSCO.BERKELEY.EDU (07/30/88)

In article <1060@ndsuvax.UUCP> Brett G. Person writes:
|Can anyone tell me why DOS will sometimes overwrite the directory of 
|obe floppy with that of another? I've had this happen several times in the 
|last week. 
| it seems to simply be replacing the directory information with a copy of 
|what was on the previously inserted disk. I've heard of this happening before, but have never heard why it happens. Can somwone enlighten me?
|thaks .
|-- 
|Brett G. Person
|North Dakota State University
|uunet!ndsuvax!ncperson | ncperson@ndsuvax.bitnet

it does this if you try to write to a write-protected disk, receive the
infamous "...Abort, Retry, Ignore" message, switch the disks, and respond with
'r'.  The solution in this case is to abort and start over.

Hope this helps.

chasm@killer.DALLAS.TX.US (Charles Marslett) (08/05/88)

In article <1060@ndsuvax.UUCP>, ncperson@ndsuvax.UUCP (Missing Person) writes:
> Can anyone tell me why DOS will sometimes overwrite the directory of 
> obe floppy with that of another? I've had this happen several times in the 
> last week. 
>  it seems to simply be replacing the directory information with a copy of 
> what was on the previously inserted disk. I've heard of this happening before, but have never heard why it happens. Can somwone enlighten me?
> thaks .
> -- 
> Brett G. Person

The copying of the FAT and/or directory from one disk to another is a result of
DOS failing to realize that the diskette that was in there is removed and has
been replaced.  Some PCs (like the true blues) have sense information that
let them know if the diskette has stopped spinning -- so no real extra effort
is needed to be fairly sure of a "media change".  Other hardware does not have
this extra bit of data available, so the BIOS usually decides a "media change"
may have taken place if not I/O to the drive has been active in perhaps 1 or
2 seconds.  Then it makes sure of the fact by comparing some data on the
diskette with internal copies of that same area of the disk (assuming no two
diskettes will match) -- I think this is a chunk of the FAT, but I may be
wrong).  A bit of a kludge, but it often works !?!? (:^}].

Charles Marslett
chasm@killer.dallas.tx.us
> North Dakota State University
> uunet!ndsuvax!ncperson | ncperson@ndsuvax.bitnet