barbay@spp2.UUCP (Chris Barbay) (05/04/85)
Can anybody help me with this problem or at least explain what is happening. I am using the Beagle Bros. program GPLE. When I BLOAD the program, the disk sometimes bangs. It doesn't always do it, just sometimes. There doesn't seem to be a pattern. What could cause this? Also, I once did a BSAVE on screen memory, and when I BLOADed it back using the same drive it was saved with, it doesn't rattle. When I use another drive it rattles. Does anybody know what is going on? Thanks in advance, Chris Barbay
barry@ames.UUCP (Kenn Barry) (05/13/85)
>I am using the Beagle Bros. program GPLE. When I BLOAD the program, >the disk sometimes bangs. It doesn't always do it, just sometimes. >There doesn't seem to be a pattern. What could cause this? DOS keeps pointers that inform it about the disk currently being accessed (slot, volume, drive) in a few unused bytes of the main text screen page ($400-$7FF). If the file being loaded overwrites these locations, DOS temporarily loses track of where things are. One of the things that happens is that the read/write head recalibrates (goes back to track 0, the only track on the disk it can locate absolutely; other tracks are found by offset from the current track), which is the banging noise you hear - the head bangs against the stopping point at track 0. This is also why the noise occurs when you boot a disk - DOS has no previous information on the location of the read/write head, and must recalibrate. >Also, I once did a BSAVE on screen memory, and when I BLOADed it back >using the same drive it was saved with, it doesn't rattle. When >I use another drive it rattles. Does anybody know what is going on? Yup. When you reload the file from the same drive, the bytes DOS uses in screen memory are overwritten with the *same values* they had when the file was saved, which are also the same values as the ones being overwritten when you reload the file from the same slot, drive, volume. If you switch drives, the "drive" pointer gets changed from "1" to "2" (or 2 to 1) by the loading of the file, causing the recalibration. What to do about it? Ignore it. It does no harm. The only time I know of where it's a problem is with some hard disk systems. Programs that overwrite these locations may not load properly from a hard disk, because DOS will lose track of the correct volume number permanently. If this happens, resave the problem file with the appropriate volume number in place. - From the Crow's Nest - Kenn Barry NASA-Ames Research Center Moffett Field, CA ------------------------------------------------------------------------------- USENET: {ihnp4,vortex,dual,nsc,hao,hplabs}!ames!barry