Spaced Out (PC Magazine Vol 5 No 1 January 14, 1986 User-to-User) DOS uses a space character to delimit its command and operands. If a space is part of a filename, DOS will become confused. If you enter: COPY A:MY PROG.BAS B:MY PROG.BAS, DOS will assume you want the program called MY on drive A: copied to the default drive using the filename PROG.BAS and will ignore the B:MY PROG.BAS completely. Many otherwise excellent programs allow an unsuspecting user to create filenames containing spaces. This is because assembly language uses an apostrophe, a comma or a zero to delimit filenames. Similarly, BASIC uses quotes to delimit its filenames. Most programs that allow you to create filenames containing spaces will also allow you to read those files. However, if you try to perform certain DOS-level operations such as COPY or REName on these files, you will either not succeed or will make a confused mess of your files. In addition, while the DOS DIR command can at least read filenames with spaces, BASIC's FILES command will display the filename only up to the space character. If you do create filenames containing spaces, there are two methods you can use to remove the space or rename the file completely. Let's assume you have a file called "PROG 1.BAS" and you want to call it "PROG-1.BAS". Method 1 (DOS): Use the wildcard character "?" and the DOS REName command: REN PROG?1.BAS PROG-1.BAS. Method 2 (BASIC): Use the BASIC NAME command, which uses quotes as a delimiter and isn't confused by space characters: NAME "PROG 1.BAS" AS "PROG-1.BAS". Editor's Note: An interesting BASIC but that's actually a feature. BASIC really shouldn't allow the creation of DOS files with spaces inside them, but since it does, it can also correct space/filename errors. ----------------------------------------------------------------- More and Better (PC World January 1986 Star-Dot-Star) If you have ever used the TYPE command to examine the contents of a file, you know that it is difficult to prevent the text from scrolling off the screen before you have had a chance to read it. (Note: Ctrl-NumLock will pause any file TYPEd.) You have probably also made the mistake of trying to TYPE a file created with WordStar, only to find it displayed as gibberish. The solution to the first problem is the program MORE.COM, included in DOS 2.00 and later versions. The program displays text 24 lines at a time, pausing between screenfuls until you press a key. Instead of using the TYPE command, you just type MORE < filename. Unfortunately, MORE.COM displays everything exactly as stored in the file, so you still have to hack your way through the gibberish produced by word processing codes. TYPEMORE.COM is almost the same as MORE.COM, but it displays legible WordStar files. You can use TYPEMORE.COM exactly the same way you used MORE.COM. Undocumentation (PC Magazine Vol 5 No 3 Feb 11, 1986 User-to-User) A hard disk's tree-structured directory system is helpful, but it can be very discouraging to get deep into a directory that has many subdirectories and then try to back out to the previous one. If you are logged into a subdirectory called \D1\D2\D3\D4\D5 and you want to get to \D1\D2\D3\D4, you could type: CD \D1\D2\D3\D4. But there is an undocumented trick that will step back one subdirectory at a time -- just type: CD.. Editor's Note: The DOS manual says that you can see what files are in the parent directory by typing DIR.. but doesn't mention the use of the double dot in moving upward through subdirectories. IBM pictures its tree-structured directories upside-down, with the roots at the top and the branches spreading down. When IBM uses the term downward, it means away from the root; upward means toward the root. To move downward, type CD and the name of the next lower subdirectory -- without a backslash. To move upward, type: CD.. (This works only until you reach the level directory below the root directory -- try it in the root and all you'll get is an "Invalid directory" message.) So if you're logged into \D1\D2\D3 and want to move to \D1\D2\D3\D4, just type: CD D4. You couldn't get to the same place with: CD \D4 since DOS would think you wanted to get to a directory called \D4 that was just one level down from the root. The reason for the confusion is that in the above case you're really not trying to get to a subdirectory called \D4; the full name of the desired subdirectory is \D1\D2\D3\D4. You need the full path before every subdirectory. But to get from \D1\D2\D3 to \D1\D2\D3\D4 all you type is: CD D4. ----------------------------------------------------------------- Command Line Redirection (PC Tech Journal January 1986 by Stan Mitchell) To see how COMMAND.COM handles command line redirection, a simple program called BRK.EXE can be executed using IBM's Professional Debug Facility (RDT). The assembly language for BRK.EXE is: PUSH DS, ;place INT 20H XOR AX,AX ;address on stack for return PUH AX ; NOTE: This is not a typo. INT 3 ;enter RDT Could it be PUSH AX ? RET ;terminate program After the break, the window facility of RDT displays the Program Segment Prefix (PSP) and DOS's list of open file handles. Each file handle returned by the DOS open function (3DH) is a 16-bit word in the range 0000H to 0013H. DOS allows each process a maximum of 20 active file handles at one time. Five of them have default assignments: standard input device = 0000 standard output device = 0001 standard error device = 0002 standard aux device = 0003 standard prn device = 0004 For an IBM PC, these file handles initially map into the physical devices, CON, AUX, and PRN; the CON device uses handles 0000 to 0002. A single device or file can be mapped into multiple file handles using the DUP function 45H. DOS keeps an internal sequential list of devices and files opened using function 3DH. The list is a series of data structures, one for each file or device. DOS allocates space for eight entries by default, but this can be changed by the FILES= command in CONFIG.SYS. For files, an entry is made up of directory information; for devices, the entry contains the device header pointer and attribute information. Because one entry in this list may map into several file handles, an additional data structure is needed to define the mapping. This structure is an array at offset 18H in the PSP. The value of the element in the array is the file handle, and the sequence of the elements is the order that DOS opened the files or devices. File handle numbering starts at 0; a value of FFH indicates an unused file handle. If BRK.EXE is executed using the command "BRK", the file handle in the PSP will look like the following when the break occurs: 01 01 01 00 02 FF FF FF FF .....FF and the list of open devices and files will be AUX, CON, PRN. This shows that AUX, the first device that was opened by DOS, has been assigned file handle 0003. If BRK.EXE is executed with redirection using the command "BRK < CC.BAT >> TEXT", DOS opens the files CC.BAT and TEST and assigns to them file handles 0005 and 0006, so that the PSP looks like: 01 01 01 00 02 03 04 FF FF FF FF .....FF The input file (CC.BAT) handle is 0005 and the output file (TEST) handle is 0006 with corresponding list entries 03 and 04. The, the redirection is done by mapping file handles 0000 and 0001 into entries 03 and 04, freeing up file handles 0005 and 0006. Thus, the corresponding elements are set to FFH, and the PSP becomes: 03 04 01 00 02 FF FF FF FF .....FF which corresponds to the following open devices and files: AUX, CON, PRN, CC.BAT, TEST. This is the form of the PSP at the break point. Standard input is obtained from the file CC.BAT, and the standard output is sent to the file TEXT, by mapping file handles 0000 and 0001 to the corresponding files. The redirection to TEST is an append operation, so COMMAND.COM not only opens TEST, but it also performs a file seek to the end of the file. This is accomplished using DOS function 42H with subfunction 02H and CX=DX=0. The IOCTL function allows the user to switch devices between raw, or binary, mode an ASCII mode so that ^Z is either passed or filtered when a device is read. A similar toggle is not available for files, so that the file seek treats the file as binary without any detection of ^Z. Thus, for a WordStar file, which pads the last 128-byte block of the file with ^Zs, any number of end-of-file marks may precede the append point. For that matter, if a single ^Z is the last character of the file, the appended data will start at the next byte. File pointer seeks cannot be done in binary and ASCII modes. A method of looking through a file in ASCII that searches for ^Zs would need to look for the first end-of-file mark of the last byte file, whichever comes first. The routine that does the file seek is in the transient portion of COMMAND.COM. Patching it to high memory after it is relocated requires changing the transient checksum routine in the resident portion of COMMAND.COM, which is not desirable. An alternative is to use the ASCII mode feature of the CON device by doing a redirected type with the batch file: type %1 . temp del %1 ren temp %1 Eliminating the ^Zs from file would allow the append operation to work as intended. ----------------------------------------------------------------- Hard Disk Park 'N Lock (PC Magazine Vol 5 No 6 Mar 25, 1986 Power User) Hard disk heads should be parked before moving the machine from one desk to another or across the country. Some manufacturers supply programs to do this, or you can use DEBUG to create PARK.COM that moves your hard disk's heads to the last (inmost) cylinder, which is reserved by the IBM BIOS for parking and testing. PARK.COM uses a Hard Disk BIOS call to determine the size of the drive. It then adds one to the cylinder to get the number of the reserved cylinder. Having determined where to park the head, it then issues a different BIOS call to move the head to the parking cylinder. The process is repeated for a second drive; if either drive is not present, the BIOS calls have no effect. To make sure that the heads don't accidentally get unparked, the last instruction in the program is a jump to itself. This locks up the computer, requiring it to be turned off or reset via Ctrl-Alt-Del. The program is only 48 bytes and will work on the IBM PC, XT and AT computers as well as most compatibles. A>DEBUG -A xxxx:0100 MOV AX,800 MOV DX,80 INT 13 MOV DX,80 XCHG CH,CL xxxx:010D INC CX XCHG CH,CL MOV AX,C01 INT 13 MOV AX,800 xxxx:0118 MOV DX,81 INT 13 MOV DX,81 XCHG CH,CL INC CX xxxx:0123 XCHG CH,CL MOV AX,C01 INT 13 JMP 12A xxxx:012C -RCX CX 0000 :30 -NA:PARK -2 Writing 0030 bytes -Q A>RENAME PARK PARK.COM ----------------------------------------------------------------- Hard Disk Elbowroom (PC World April 1986 Star-Dot-Star) If you're a PC XT user who works with DOS 3.1, you may have more room to rattle around your hard disk than you thought. While it's impossible to physically enlarge a hard disk, you can reduce the average file size by at least 1024 bytes. If, for example, your disk contains 500 files, you can gain access to as much as half a megabyte of otherwise unused space. This recovery trick is possible because of the way DOS allocates disk space. Space on a disk consists of many sectors, each 512 bytes in size. DOS apportions that space in clusters. A cluster is made up of one or more sectors; DOS sets the number of sectors per cluster when the disk is formatted. In DOS version 2.x the cluster size for a 10MB disk is eight sectors (4096 bytes). Thus, a file containing only one character will occupy 4096 bytes of disk space, and a file 4097 characters long will occupy two clusters -- 8192 bytes. DOS 3.0 and later reduce the number of sectors per cluster to four -- provided you have a 20MB disk. The cluster size for a 10MB disk remains set at 4096 bytes. Reducing the cluster size from 4096 to 2048 bytes will trim 2048 bytes off all files whose last cluster is less than half full. On the average, half your files probably have a half-full (or less) last cluster. If your disk is littered with short files (that is, less than 2048 bytes), the savings is even greater. In this procedure to change the cluster size of your hard disk, you must use DOS 3.1, not 3.0. First, display a directory of your hard disk and note the amount of available space. Because adjusting the cluster size involves erasing all the files on your hard disk, back up the entire disk. When you've finished the backup, put an exact copy (unmodified) DOS 3.1 disk in and restart the computer. Run the FDISK program to create a DOS partition on the hard disk, then format the hard disk using the FORMAT command. Do not use the /V or /S options. When formatting is complete, place a copy of the DOS Supplemental Programs disk in and enter the commands listed in DISKSIZE below. Substitute the appropriate hard disk drive number for n -- drive B: is 1, drive C: is 2, drive D: is 3, and so on. Next, insert the DOS 3.1 disk and reboot the computer. Format the hard disk again, but this time specify the /S option to transfer DOS to that disk. You may also use the /V option to assign a volume label. Finally, reload your files onto the hard disk from the backup you made. Do not reload files IBMBIO.COM and IBMDOS.COM because they'll be placed in the wrong location, forcing you to reformat the hard disk and start over. If your backup contains a version of COMMAND.COM other than DOS 3.1, do not reload it either. If you are relying on the RESTORE command, you can use the /P option, which prompts you before any system files are reloaded. Now remove the last backup disk and restart the computer from the hard disk. You should see a significant increase in available space. Editor's Note: This procedure applies only to 10MB disks; DOS 3.1 automatically formats 20MB disks with 2048-byte clusters. If your hard disk contains any copy-protected software, be sure to "uninstall" it before you begin this process. DOS 3.1 was expressly designed to use the larger cluster size on 10MB disks. Without probing the reason for that design decision, you should consider that implementing a smaller cluster size might conflict with some existing or future products. DISKSIZE: A>DEBUG -L 0 n 0 1 -E 0D xxxx:000D 08.04 -E 16 xxxx:0016 08.15 -W 0 n 0 1 -Q ----------------------------------------------------------------- Volume Please? (PC Magazine Vol 5 No 8 Apr 29, 1986 User-to-User) Although it's not documented, it's possible to change the volume label of a disk under DOS 2.1. The trick uses DEBUG to load the directory, changes the volume label, and writes the directory back. First, load DEBUG. Once you see the hyphen prompt, type: L 100 0 5 1 Then hit D to dump the contents, showing the label at &h160. Type the following line, where "labelname" is the new name you want (be sure to make this new name exactly 11 characters; if it's shorter, add spaces at the end to pad it out): E 160 "labelname " Then, to write the revised directory back to disk, type: W 100 0 5 1 Finally, hit Q to exit DEBUG. Using this method will also allow otherwise illegal characters such as a period or small letters. Editor's Note: Sort of. The instructions above are only for a floppy disk in drive A: that has just three files on it (presumably the two system files IBMBIO.COM and IBMDOS.COM, and COMMAND.COM) plus the volume label. A gutted version of the DEBUG dump of such a disk's directory would look something like this: xxxx:0100 IBMBIO COM'.... xxxx:0110 ......`mg...\%.. xxxx:0120 IBMDOS COM'.... xxxx:0130 ......4a....pl.. xxxx:0140 COMMAND COM .... xxxx:0150 ......'mg.(..Z.. xxxx:0160 LABELNAME (.... xxxx:0170 ................ However, to your system, a volume label is simply one directory entry identified in a special way. DOS uses the 12th byte of the directory listing (actually byte 11, since the first byte is byte 0) to mark the file attribute(s). This byte will tell DOS whether a file is a hidden file, a system file, a read-only file, etc. It also identifies directory entries that are subdirectory names (by giving this byte a value of 10) of volume labels (by giving it a value of 8). And it lets DOS know whether the file was changed since the previous backup. The value of the attribute byte for LABELNAME in the above example is 28, which means that it is a volume label and that the archive bit is set. However, LABELNAME doesn't have to be the fourth entry in the directory. It will be the fourth entry if you format a fresh disk using the /S option (or if you format it without /S but then immediately use SYS to transfer the system files), and then immediately add a volume label. But the volume label could be anywhere on the directory. If it is the fourth entry, you will indeed find it at address &h160. But if you don't have system files on your disk, the label could be at a lower address. And if you add the label after creating several files, the label could be at a higher address. To find it, after using the DEBUG L command to load the directory, use the D command to examine the twelfth bytes -- and look for a value of 8 or 28. But be very careful. Note the DEBUG refers to drive A: as drive 0, drive B: as drive 1, etc. So "L 100 0 5 6" would mean "load six sectors of drive A: starting with sector 5 -- all into memory starting at address 100". The W command uses the same format. It's simple to type in an errant value and write a scrambled directory back to your disk. So if you try this, do it on a copy of a floppy disk only. And to be perfectly safe, don't ever write to a hard disk unless you're really sure of yourself and have a perfect backup copy handy. Recent versions of DOS supply you with a LABEL utility to do what you want. And while this method does allow you to put illegal characters in the volume name, DOS will probably be confused by it. Upgrading Your DOS (PC Magazine Vol 5 No 11 June 10, 1986 PC Tutor) Generally it's a good idea to keep pace with the most current DOS releases. For the most part, DOS versions are upwardly compatible -- programs written for an earlier DOS version almost always run under later DOS versions. (The exceptions, which were significant back in the days when DOS 2.0 came out, often resulted from clumsy copy- protection schemes or dumb programming practices.) Ostensibly, DOS upgrades have been released to support hardware changes and additional members to the PC family: DOS 1.1: Double-sided diskettes 2.0: PC-XT and hard disk 2.1: PCjr 3.0: PC AT 3.1: IBM Network 3.2: Version 2.0 represented a major step over 1.1 since it introduced support of subdirectory disk organization. Version 2.1 fixed some bugs in 2.0 besides supporting the PCjr. Version 3.0 was not as great an advance as 2.0 was, but it added a few commands such as ATTRIB (which can mark files as Read-Only to protect them from changes) and LABEL, which changes the volume label on a disk. DOS 3.0 also included a RAMdisk program called VDISK. DOS 3.1 fixes some of the buggy parts of 3.0. The new commands in DOS 3.1 are SUBST, which can define a new drive letter to refer to a subdirectory, and JOIN, which can make one disk drive appear as a subdirectory of another disk drive. The DOS 3.1 SUBST command proved to be a real blessing to WordStar users, for it allowed us to refer to directories by new disk letters. While WordStar knows nothing about subdirectories, it can easily recognize new disk letters and so works fine with SUBST. The change in the TREE command that lets it list files in the root directory is another illustration of something that hadn't worked right since DOS 2.0 and was finally fixed in DOS 3.1. Upgrading a hard disk to a new DOS version is no big deal. If you're concerned that some of your existing programs may not run under DOS 3.1, you can experiment with DOS 3.1 before installing it on your hard disk. To do this, intead of booting from the hard disk (as you probably do now), just put a copy of the DOS 3.1 system disk (including your CONFIG.SYS and AUTOEXEC.BAT files) in drive A: and boot from that. Try using your PC with the new DOS for a few days or weeks until you satisfy yourself that all is well. (If you have a PATH that points to a directory where the DOS programs are located, you should change that part of the PATH to point to drive A:.) Until you have completed your changeover, a few DOS 2.0 programs (such as CHKDSK and TREE) will give you an "Incorrect DOS Version" message under DOS 3.1. (Most (like EDLIN and DEBUG) will run fine. When you've satisfied yourself that everything works under the new DOS version, installing the new DOS on the hard disk is a fairly simple process. You do not need to use FDISK or FORMAT again. Instead, use the SYS command, which transfers DOS to a disk that has already been formatted with room for the operating system. After you've booted from drive A: with the new DOS version and ensured that your current drive is A:, enter the following three commands: SYS C: COPY COMMAND.COM C:\ COPY *.* C:\DOS The last line assumes you keep the programs included with DOS in a directory called DOS. You could alternatively just copy them to C:\ if you keep them in the root directory. Or you could create a directory called DOS for this purpose: MD C:\DOS After you're done, you'll be able to boot the new DOS version from the hard disk. ----------------------------------------------------------------- Dumping Graphics (PC Magazine Vol 5 No 11 June 10, 1986 PC Tutor) The Print Screen routine coded in the ROM BIOS works only with characters. If the display is in a graphics mode, it will only print characters that it can recognize but will not translate the graphics. This is a reasonable restriction, since graphics protocols for printers vary widely and the ROM BIOS surely cannot be expected to support them all. GRAPHICS.COM supplements the ROM BIOS Print Screen routines. GRAPHICS.COM remains resident in memory, so you only need load it once during your PC session. It prints 320 x 200 four-color graphics (video modes 4 and 5), and 640 x 200 black-and-white graphics (video mode 6) to an IBM Graphics Printer or compatible. GRAPHICS.COM uses different dot densities for the four colors of the 320 x 200 mode to simulate color. DOS 3.0 and 3.1 versions of GRAPHICS also support the IBM Color Printer (with black, RBG, or CMY ribbons) and the IBM Compact Printer. One would expect GRAPHICS.COM to support the additional video modes of the IBM Enhanced Graphics Adapter, but it does not. Since IBM didn't bother to add the PCjr video modes to GRAPHICS when the machine was being manufactured, don't look for future support. Graphics screen dump programs are generally considered printer utilities rather than screen utilities. ----------------------------------------------------------------- Backing Up Selected Directories (PC World The Help Screen June 1986) To each file that BACKUP saves, it adds a header that contains the full path to the directory from which the file is being copied. Should it become necessary to replace a hard disk file with its backup, or to recreate your entire directory structure on a newly formatted hard disk, RESTORE will read each backup file's header to determine the directory into which the file should be copied. If the directory does not exist, BACKUP will create it. There's no need to worry about maintaining your hard disk's directory structure on the backup floppies -- BACKUP and RESTORE do it for you. Just type: BACKUP C:\*.* A: /S to back up your files. C:\ tells BACKUP to save all the files in the root directory of drive C:; the A: indicates the target drive, and teh /S indicates that all files in the subdirectories under the specified directory, C:\, are to be backed up. Although BACKUP does not violate DOS syntax, it has its own syntactical restrictions. BACKUP's first parameter lets you choose a specific directory and/or file (or group of files, using the global file name characters ? and *) from the drive to be backed up; the command's second parameter simply notes the drive destined to contain the backup files. Because BACKUP keeps track of the directory of each backup file, backing up files into a particular directory on the target disk is unnecessary. ----------------------------------------------------------------- Overlays From a Hard Disk (PC World The Help Screen June 1986) A menu system can be used with a hard disk such that applications can be selected and run by pressing one key (PC World Volume 2 Number 11). Although the menu system works, some applications that use overlay files require that the program's disk be placed in drive A: even though the overlay files reside on the hard disk. DOS can be instructed to look to drive C: when an application requests an overlay file from drive A:. You should note, however, that you must temporarily relinquish use of drive A: while running that application. Find the command in the menu system's batch file that calls the application. Insert the command "ASSIGN A=C" before the application call and the command "ASSIGN" after the application call. Be certain that the DOS command ASSIGN resides in the same directory as the application, or in a directory listed in the last PATH command, and your menu system is ready for action. ----------------------------------------------------------------- Hard Disk Organization (PC Magazine Vol 5 No 12 June 24, 1986 PC Tutor) Hard disk organization is important for a variety of reasons. It's generally a good practice to put each large application program and install on your hard disk in its own directory. The hard disk installation programs usually assume that you're doing this. Many will not work unless all the files the program needs are in the same directory. It's often easiest to keep the data files you create with the application program in the same subdirectory as the application program itself. If you start getting too many data files, separate them into categories and split off some subdirectories from the application directory. For starters, then, depending upon the applications you use, you might create the following directories on your hard disk: DOS - All PC-DOS programs UTIL - Small utility programs BATCH - Batch files LOTUS - Lotus 1-2-3 and worksheets DBASE - dBASE II or III and databases WS - WordStar and text files BASIC - Compiler and programs The DOS directory contains all the programs included on the two DOS disks. Keeping all these files isolated in one directory will help if you upgrade to a higher DOS version in the future. UTIL might contain small utility programs. Batch files go in the BATCH directory, and the other four directories would contain all the files associated with those well-known packages. The only files you really need in the root directory (besides the two hidden PC-DOS files) are COMMAND.COM, AUTOEXEC.BAT, and CONFIG.SYS. You can create the CONFIG.SYS and AUTOEXEC.BAT files with EDLIN or any text editor that creates an unformatted ASCII file. At a minimum, your hard disk CONFIG.SYS should contain: FILES=20 BUFFERS=20 If you've been using a hard disk without a BUFFERS statement in a CONFIG.SYS file, you are ging to be amazed at the difference in disk access time that simple statement makes. You may also have some DEVICE= lines in the CONFIG.SYS if you have a mouse, use a RAMdisk, have an expanded memory board, or use ANSI.SYS. Although CONFIG.SYS must be in the root directory of your hard disk, these device files themselves don't have to be. For instance, to install a 128K RAMdisk under DOS 3.0 or 3.1, use the line: DEVICE=C:\DOS\VDISK 128 in your CONFIG.SYS. The VDISK program would be located in your DOS directory. The AUTOEXEC.BAT file should contain at least a PATH command that will look something like: PATH=C:\BATCH;C:\UTIL;C:\DOS The PATH command is one of the most important ingredients of effective hard disk organization. If you want to run a program not in your current subdirectory, DOS will search for it in any directories listed in your PATH command. Another statement you'll probably want in the AUTOEXEC.BAT is: PROMPT $p$g This displays the current directory as part of the DOS prompt. Another important tool for navigating around the hard disk is a collection of small batch files that you could keep in the BATCH directory. Although the PATH command is fine for simple one-file programs, many application programs load additional driver files, overlay files, and what-not when you execute them. They generally require that these files be in a current directory; the PATH command alone wouldn't suffice. These small batch files can help where the PATH command cannot. For instance, if you use 1-2-3, you can create a batch file in your BATCH subdirectory called L.BAT. This file would contain the lines: CHDIR \LOTUS LOTUS Then, to run 1-2-3 from any directory, all you need to type is L. Hard disk organization may be somewhat different if more than one person uses the PC. If everybody who uses the PC works with different applications, then you could start off with directories of the people's names, and each of these directories would have subdirectories with the applications they use. Creating hard disk directories dedicated to various multiapplica- tion jobs (for instance, family finances) also makes sense. But because you could be using different applications with the same job, you'll have to make sure the applications can get at these different directories. The need to create such directories will become apparent if you find that files connected with specific jobs are scattered all over the hard disk. ----------------------------------------------------------------- Burning in a Screen Image (PC Magazine Vol 5 No 2 June 24, 1986 PC Tutor) Phosphor burn is when you see a spreadsheet on the display even though the machine is off. The best way to prevent phosphor burn on the monochrome display is to use the bottom knob on the front of the monitor. Leaving the knob turned to the right causes the problem, particularly if a single unchanging image is left on the screen. Turning the knob counter-clockwise during periods when you're not using the machine prevents the problem from occurring. Proper use of this brightness knob should allow the monochrome display to last for years. Leaving the display sitting for hours with a blindingly bright spreadsheet on it could cause burns with a few days. Several public-domain utilities are available that shut off a monochrome display attached to the IBM Monochrome Adapter after a certain period has elapsed when nothing has been typed on the keyboard. Pressing any key turns the display back on. These utilities will not work on the Enhanced Graphics Adapter. Technically, screen-blanking utilities for the Monochrome Adapter can shut off the display by writing a 0 to bit 3 of output port 3B8h. This bit disables the video signal. Port 3B8h does not exist on the EGA. Although these screen- blanking utilities have no effect on the EGA, some of them have a very serious effect when used with a Hercules Monochrome Graphics Adapter. Like everything with the EGA, disabling the video signal is more complex than with the Monochrome or Color Graphics Adapters. If you do accidently do leave the display at high intensity and cause some phosphor burns on your monochrome monitor, that will give you an excuse to buy an Enhanced Color Display, which is the perfect companion for the EGA. ----------------------------------------------------------------- Strange Files When Piping (PC Magazine Vol 5 No 12 June 24, 1986 PC Tutor) After upgrading to DOS 3.1 and entering the command: TREE/F | MORE an unusual display occurred. The root directory file listing, which is displayed for the first time under DOS 3.1, shows up normally when the MORE filter is not used, but it contains two 8-digit hex numbers when MORE is used. Repeating the command produces different hex numbers. The answer is that DOS filter programs work by directing output from one program, in this case TREE, to become input for another program, in this case MORE. COMMAND.COM manages the piping by saving the output from TREE in a temporary disk file and then retrieving this file for input to MORE. The 8-digit hex strings you get are actually filenames created during this process. DOS 3.x uses the PC's clock to derive names for the temporary files. That's why they look like numbers. (DOS 2.x uses temporary filenames with the word PIPE in them, which at least gives a hint of what they are.) If you pipe DIR through MORE on the root directory, you'll see these two files listed as having 0 bytes because they've been created but not yet closed. After MORE runs, COMMAND.COM deletes the files. If you undelete the files, you'll find that one of the files has all the piped data in it. Since only one file is needed, the question then becomes, what does the second file contain? The answer is nothing. In this case, solving one mystery reveals another.