home *** CD-ROM | disk | FTP | other *** search
- "I put in a floppy, do DIR, put in another floppy, do DIR, and get
- the directory of the *first* floppy!"
-
- This is called Phantom Directory, and it is dangerous. DOS did not
- notice that you changed disks, so it will write the right thing to the
- wrong disk, scrambling both the directory and the files. DOS dectects that
- you have changed the disk with a switch and wire called ChangeLine.
-
- This is normally a problem only on AT-class machines (286, 386,
- 486, etc), and with 720K, 1.2M and 1.44M drives. XT-class machines did not
- usually support changeline, and 360K drives did not have the switch.
-
- CHKDRV.ZIP in IBMHW forum LIB 1 (22K) is a program to test the
- floppy change line. However it only tests A: and B:. External drives such
- as D: etc. are not supported the same way, so cannot be tested as simply.
-
- "What do I do to avoid trashing my disks?"
- If you are at the DOS prompt, A:> or B:> or C:>, you can press ^C
- (hold down the Ctrl key and tap the C key) right after changing the disk.
- This tells DOS to "flush the buffers", to forget all it knows about the
- current disk. Next time you ask to read or write the disk DOS will have to
- physically read it, not rely on it's buffers.
- If you are in an application program, don't switch disks while the
- program is running. It may do it's own buffering. Exit completely out of
- the program to DOS, change the disk, and do ^C. Then you can re-start your
- application.
-
- "Why does this happen?"
- All drives (except 360K drives) have a switch that detects either
- door opened or disk ejected. On AT-class machines , most versions of DOS
- rely on this switch to tell when the disk has been changed, and DOS needs
- to re-read the disk. If the disk has not been changed, DOS uses the copy
- of the disk's directory held in memory. The wire in the drive cable that
- carries this signal is called ChangeLine.
-
- "Can I fix it so I don't have to be doing ^C all the time?"
-
- DC JUMPER
- If this happens on a newly installed or seldom used drive, check
- the DC jumper, usually at the rear of the drive. There should be a jumper
- on the DC pins. Some drives do not support DC on pin 34, but instead carry
- a Standard Ready (SR) signal on the same pin, just the opposite of DC! If
- your drive has pin 34 set to SR, then even if you change your disk, your AT
- think it has the first disk. If there is a jumper on the drive labeled
- "SR", put it in the other position if available, otherwise remove it. If
- your drive has always had ChangeLine problems then odds are that one of
- these jumpers is the problem.
-
- "But it USED to work!"
- What if the drive used to work correctly, but has just started this
- Phantom Directory trouble?
-
- STICKY SWITCH
- The most common cause seems to be a sticky switch. Sometimes it
- gets jammed with dust, and a blast of compressed air in the disk slot frees
- it. On 3.5" drives, the switch is often a tiny pin at the lower left of
- the drive slot, next to the switch that detects 1.44M or 720K diskettes.
- On other drives it is an infrared photo detector, and a scrap of oxide or
- a clump of dust gets in its eye. The switch or detector is tiny, and not
- available separately, so if blowing and jiggling doesn't fix it you are in
- trouble.
-
- CABLES AND CONTROLLERS
- Another possibility is that pin 34 in the drive cable is bad.
- Because it is on the edge of the cable, it is slightly more likely to be
- not plugged in all the way, or to have been pinched. Look at the cable,
- and wiggle both ends to loosen any tarnish on the pins. If you have a
- continuity tester, check that wire 34 conducts. Cables are cheap and
- should be considered replaceable.
- It is possible for a controller to go bad.
- I tend to doubt that bad cables or bad controllers cause most of
- the phantom directory problems we see. Why should pin 34 go bad so much
- more often than any other? We don't see data pin troubles nearly as often
- as pin 34 related troubles. I think the switch goes bad.
-
- CUSTOM DOS
- Some versions of DOS are customized for certain non-standard
- hardware. Many laptops are much happier with the DOS supplied with them
- than with any other version. Try the original DOS if you have phantom
- directory troubles.
-
- OTHER SOFTWARE
- One of the reasons a DISKCHANGE failure can occur is a conflict
- with a memory-resident program that affects access to the disk, such as
- disk cacheing software, network drivers, and computer viruses. To rule out
- the possibility of a software-related problem, try cold-booting your PC
- from an original DOS boot diskette (i.e., one with no memory resident
- programs or viruses on it) and see if the disk drives work as normal. If
- so, you may want to look into a software conflict or virus problem. (Thanks
- to A. Goretsky (McAfee) 76702,1714 for this tip!)
-
- DRIVPARM
- Here is a trick that worked for me with a $10 720K drive and DOS
- 5.0. The drive did not reliably detect disk change. In CONFIG.SYS I put:
-
- DRIVPARM=/d:1 /h:2 /s:9 /t:80
-
- and now it is safe to use. Other suggestions I have seen:
-
- DEVICE=C:\DOS\DRIVER.SYS /D:1 /F:7
-
- DRIVPARM=/D:0 /F:1
-
- DRIVPARM modifies DOS's drive parameter table for an existing
- drive. /d:1 means B:, A: would be /d:0. /h:2 is 2 heads, /s:9 is 9
- sectors per track, /t:80 is 80 tracks. Note that I did *not* use the /c
- switch, which enables Disk Change detection. Now DOS thinks B: is some odd
- 2 head, 9 sector 80 track device, and doesn't assume it has a Disk Change
- switch.
- DRIVPARM was introduced in DOS 3.2. It is an internal DOS command,
- do not use DEVICE= to load it. My book says it does not work correctly in
- 3.3. It worked for me in 5.0, but I have not tried it in 6.0, nor with
- DR-DOS. It may not work correctly with backup programs that need to know
- the true state of Disk Change.
- DRIVER.SYS was introduced in DOS 3.2. It is a device driver so you
- must use DEVICE= to load it. (If it works you can then try DEVICEHIGH= to
- load the driver in high memory.) It's main purpose is to assign a new
- letter to an existing drive. It can make your B: also function as D:.
- (this is handy for copying disks in the same drive (COPY B:*.* D:), but
- SUBST will do the same with less fuss.) You must specify either the
- drive's physical type, or the head, sector and track count. You may have
- to modify (or add) your LASTDRIVE line in CONFIG.SYS.
- If you already use DRIVER.SYS to set up an unusual drive, and you
- have changeline problems, be sure you don't have "/C" on the DRIVER.SYS
- command line.
- If you don't use DRIVER.SYS on the troublesome drive already (most
- internal drives should have no need for it), try DRIVPARM first. Test it.
- If it doesn't work try DRIVER.SYS, but note that it creates a new logical
- drive, and you will have to access the drive through it's new "name"
- (generally D:) to get the benefit.
-
- A NEW DRIVE
- This used to be the last resort, but the way drive prices have
- fallen it makes a lot of sense. Remember, the data is often worth more
- than the drive. Buy a new drive, and insist on documentation for the DC
- jumper, and test it after you install it.
-
- AUTHOR:
- If any part of this document is unclear, or incomplete, or if you
- know anything I have not mentioned, please tell me. Leave a message either
- on the IBMHW forum or in my E-Mail box. If I don't reply in a few days,
- post a message on IBMHW to ALL or Sysop.
-
- Paul Reid 71031,3603
-
-