(Image: DOS Logo)



Sixty-Plus Helpful Hints to Allow You and
Your System to Operate Quickly and Efficiently

(Image: Checkbox)



The following suggestions are chiefly aimed at
having DOS and your computer run much faster with
less hassle and fewer problems. Some tips are more general
though, and so may be applied to non-DOS computer platforms.

    This article presumes that the reader has basic knowledge of DOS, and of its path and directory structure. Some tips apply to DR, MS or PC DOS Versions 5 through 8 or newer, and/or to the very powerful 4DOS up to and including Version 8. However, most will function well with little or no modification for most manufacturers and versions of DOS.


    I use a disc cache with very aggressive settings, plus a high-end memory manager for my lower, upper, high, expanded, and extended memory areas. I also run a large RAM drive. All this is coupled with a combination of batch files, keyboard macros and aliases, plus program/utility scripts and macros to gain maximum speed of operations with fewer keystrokes and minimum tedium. These are briefly explained below along with other helpful hints that will allow one to work towards becoming a DOS Power User.

    For computers running at 800 MHz or faster some of these suggestions may result in little difference unless the processor is overworked. However, on slower systems, or when doing any long complicated chores, each little tweak will add up to noticeable time saved. Implementing the recommendations on this webpage will make your DOS system run amazingly fast on a slow processor. Even with faster ones, doing the following will keep things running efficiently, if for no other reason than to reduce most tasks to just a few keystrokes, thus speeding you up.

    Many of the DOS programs mentioned here are still available because they have been placed onto the Internet. See DOS Websites for these and many, many others. A high number of DOS programs are share- or free- ware, so the cost is minimal to try some wonderful software.


  Let Us Begin the Tips...

Extra Tip:
Shortcut Usage

  Since it's tedious to type full path names, place your commonly used commands with their full paths into aliases, batch files or macros. This way you will only need enter a few keystrokes to have DOS go directly to work.

For really frequent usage, assign the batch
file or macro to a key. (See #47 farther on.)

Implementing Numbers Three through Ten, above,
means that you and the operating system and its
programs will do less looking and more doing.
This speeds operations.

Extra Tip:
Password Protection

  IF you use passwords at the command line that do not display as asterisks and the command history utility you use caches them, anyone that knows how to view the history list could see those passwords. Even with asterisks, if they are cached, an unintended person would know at least password lengths.

    To prevent this, see if your utility can:
  1. Not cache the entry.
  2. Clear the command history.
  3. Lock the cache.
    The first method uses Control-Enter or other key combination to prevent the command from being cached, while the second employs Alt-F7 or similar to completely clear the cache. The third uses a key combination to stop commands from being saved, but keeps all previous ones up to the limit of the cache. The first is the preferred method because it maintains the current command history and does not make the user have to remember to unlock the history afterwards. Just remember to use the key combination to not cache secretive entries.

Extra Tip:
Defragmented File Order

  Have your defrag program place the largest files first on the hard drive. Large files tend to often be program executables, most of which usually don't change unless attacked by a virus.

    If available, you may request that the defrag program place .exe and .com files first; these are your main program files. These never change size (unless you are experimenting with programming or have a virus), and never increase/decrease in number (unless you add/remove software). So for the most part, they never move.

    The defrag program will gloss right over these unchanging files and only deal with the fluctuating file space on the drive. This lessens the time the program takes to complete its operation.

Extra Tip:

  Before swapping to another task always save your work. If anything goes wrong or you lose power, your work will have been written to disc. This is very important if you are running several tasks at once, each of which has work or changes that will need to be kept.

    This is a good rule even when not task swapping. Save often while working, not just after completion. I set "ALT-S" to save work in any program that allows such a setting to be made. Then while working, I often hit "ALT-S". It's very, very rare that I ever lose work, and then it's only a few sentences, or one change in a graphics program.

Extra Tip:
Temp Directory

  Point your "temp" and "tmp" variables to the RAM Drive. DOS and its programs make & erase files as they operate and they use a "temp" directory to do so, unless one has not been set up. In that case, the program's executable directory is typically used, slowing things more due to the number of files through which the program must look.

    Either way, it takes longer to write these files to the hard drive than to memory, so set your "Temp" variables to point to the RAM Drive. In the AUTOEXEC.bat:


    A nice advantage of this is that when the computer is turned off or rebooted, any temporary files remaining are deleted automatically. This is because the RAM drive only exists in memory until power is removed or it is re-initialised by a reboot.

Here's an Extra-Extra Tip:
  Place DOS' COMMAND.com or your choice of command interpreter on to the RAM drive. It will run much faster from there. During startup, after the RAM drive has been created, have your AUTOEXEC.bat copy the file from the DOS directory to the RAM drive and then have it issue the Command Specification:


    Some users do this via the SHELL command in CONFIG.sys, but that might cause an error message (or possible lockup with older DOS versions). This happens if the SHELL statement is issued before the RAM drive has been created and/or before COMMAND.com has been copied to it. To avoid any problems, I prefer to have the directories in the SHELL statement be the same (usually C:\DOS), and to then set COMSPEC after my RAM drive command interpreter has been copied.

Should it be different, substitute your
RAM drive's letter for the `F' as shown
in the examples here. To have the changes
take affect, run your AUTOEXEC.bat file, or
reboot if you have modified the CONFIG.sys file.

Extra Tip:
Protecting Configuration Files

  Be sure to use ATTRIB to make your configuration files Read-Only. Programs that modify the AUTOEXEC.bat and CONFIG.sys files will not usually try to remove that attribute in order to make changes. This trick provides a measure of protection, allowing one to decide if and when such changes can be made.

    As well, this method provides some protection against attempts by users, other than yourself, to modify your configuration files. Only knowledgeable users will figure out that the Read-Only attribute is blocking them. In any case though, it is best to have backup copies of configuration files in addition to protective measures.

  COLOUR                  COLOUR
   CODE                    CODE
   ----                    ----
    30         Black        40
    31         Red          41
    32         Green        42
    33         Yellow       43
    34         Blue         44
    35         Magenta      45
    36         Cyan         46
    37         White        47

To remember this,
simply use the following phrase:

Boys  Ride  Green  Yaks,  But  Mary  Can  Wait

Extra Tip:
A Mouse Substitute

  Think about dumping your mouse altogether and going with a full-size, weighted, desktop trackball. Now, you may be thinking: "Oh, those horrible little balls...". No, I don't mean one of those laptop finger-balls, nor do I mean one of those mouse thumb-balls. They are horrible. I am referring to a stand-alone, large, desktop unit containing a trackball the size of at least a billiard ball. In some models, the size approaches that of a softball.

    The advantages of it are that it is always on the same spot on your desk, you can never run out of `mouse' pad, and arm/wrist movements are greatly diminished. If a weighted one is used, one may also spin & release it to quickly park the on-screen pointer in one corner or another of the screen.

    I also find a trackball better during sensitive work, such as pixel-level graphic manipulations. After positioning the pointer, I can easily lift my hand or fingers off the ball and then click without disturbing the pointer location. The trackball housing is rooted to the desk and is much more solid and stable than the movable mouse. I use the excellent Kensington "Expert Mouse", Model #64215 both at work and at home.

Another Extra-Extra Tip:

    When the trackball begins to skip, becomes sluggish, or is slippery to grip, remove the ball and clean it with methanol or rubbing alcohol. Then take fine-grit sandpaper and cup it in the palm of your hand. Turn the ball within the sandpaper while applying pressure so that the ball's surface becomes dull. Lightly sand the entire surface of the ball. Clean once more with alcohol and replace. You will find the trackball will work as new. Do this whenever the ball becomes shiny from usage.

Extra Tip:
A Memory and Time Saver

  For those environment variables that you issue via your AUTOEXEC.bat, be sure to place "SET" commands after those loading drivers or other programs whenever possible.

    If they are located before the lines used to load drivers or other programs, DOS passes the information to each of those that follow, whether those programs use the information or not. This takes time and uses memory unnecessarily.

Extra Tip:
`Invisible' Screen Messages
and Prompts

To learn to hide output, read up
on the following possible methods:

  1. Redirect output to nothing via `> Nul'.
  2. Redirect output to a file via `> filename.ext'.
  3. See if the utility you use has a quiet or non-verbose mode via issuing `/q' or `/v-'.
  4. Use `CTTY NUL' before the command which output you want muzzled and `CTTY CON' afterwards. (Note that these two commands must be used in a batch file because typing `CTTY NUL' would transfer control away from your keyboard and monitor, thus no input from the user would be recognised when typing `CTTY CON' afterwards.)


Bypass the Long Discussion of Examples

    Coming up are just a few of the reassigned keys that I use to implement batch files and utilities while working in DOS. Some of them function under specific circumstances, but I won't get into those here. Nor will I discuss what is going on behind these commands. I just want these descriptions to give you an idea of the capabilities I have available by using this method. I hope they will inspire you to use more time-saving keystrokes in your daily computer operations.

    Since all my key reassignments are in memory, and so is every batch file and the DOS commands they call upon, these execute instantly. I love to watch a GUI (Graphic User Interface) user's jaw drop when he or she sees how fast things happen using this method -- even on slower processors. You've heard the term: "Greased Lightning" ? Well, this setup is Teflon Lightning! (-:

    Here we go...

  1.     F1 invokes my DR-DOS "Help" system, while Alt-F1 adds a space and `/?' on the command line, and presses "Enter" for me. That's great when I need to get a fast list of switches for any command. I hated having to type that space, `/?' and "Enter" after a command name every time, so I programmed that sequence to a function key.

        In a similar fashion, I programmed Alt-8 to type `*.*' because I hated typing that all the time too. Note that the asterisk is above the `8' on the number row above the alphabet keys, hence my reasoning for using that key to invoke the macro.

  2.     Control-F1 clears the screen. It saves typing "CLS" and hitting "Enter". Control-F2 clears the screen and presents a wide-format, alphabetical listing of the current directory with each file type in a different colour. Control-F3 returns to the root directory of the current drive, clears the screen, and presents a colour directory listing of files there.

  3.    Alt-d and Alt-u go to my DOWNLOAD or UPLOAD directories, which I use constantly while on and off line. A list of files is then displayed alphabetically in wide format with each file type in a different colour.

  4.     I sometimes play audio CDs when I am at the computer. To gain maximum memory efficiency, I usually don't leave the player program in memory. Instead, I have it able to be started via a batch file that I then assigned to Alt-c. It's a simple matter to shell out of a program, hit Alt-c, adjust the volume or change the disc or track number, quit the CD program, and then type "EXIT" to return to my program.

    But wait!
    That's just not good enough.
    Let's go farther:

  5.     I also assigned "EXIT" to Alt-x, so I don't even have to type that. Also, I have the batch file that is keyed to Alt-c, set up to automatically unload the player program from memory, so I preserve maximum memory. Once the CD is playing, it will continue until it receives another command, so the program is not required to be in memory during playback.

        but..., you think: There's still a lot of typing to shell out of one program, start the CD program, and then return to where you were.

        You are absolutely correct. That's why I assigned a key macro within those programs to automatically shell out and start the CD program. When I exit the CD program, I am automatically returned to where I was working with no further input required from me. So, with one keystroke, I am in the CD program, and one more within the CD program will exit, remove it from memory, and return me to where I was.

        Should I ever need to go to the CD program a lot, I could still simply leave it in memory and have direct access to it all the time through its own hot keys. The point is I have a variety of choices -- all of which are fast & efficient, and not a desk rodent in sight. (-:

  6.     I use Alt-v to load the listing of the current directory into my file viewer from which I may select one to look at. I use Central Point's VIEW.exe for this. It comes with PC Tools and is capable of showing text, spreadsheet, database, word processing and other files types from a variety of software manufacturers. (There are other file viewers available that allow manipulation of the files, as well.) File viewing from the command line is extra handy because I don't need to load the original program if all I need is to quickly look at a particular file.

  7.     Alt-g starts a simple graphics viewer in any directory for a quick look at any .bmp, .gif, .jpg, .pcx, .tga, etc file.

  8.     Alt-r returns to my desktop and resets to my standard prompt, colour scheme, cursor size and flash rate, and text type.

  9.     F9 is my Auto-Complete key. I type the first few letters of a directory or executable file name in the current directory, press F9 and that name will be completed. It is directory aware so that I can auto complete a directory name, add a backslash and a letter, and it will auto complete a subdirectory name within that directory regardless of the drive on which it resides. Finishing up, I can type a few letters of a file name within that remote directory and it too will be completed.

        In addition, I can type a command such as REN, the first few letters of a file, then F9, and the file name I wish to change is completed for me. This is done for me via Toddy, a command-line utility similar to DOSKEY, but much more powerful. Toddy also allows me to type the first few letters of a previous command, hit TAB and it will be completed automatically as well.

  10.     F10 displays the current directory in wide format, alphabetical order, and with each file type in a different colour.

  11.     F11 tags a directory to which I wish to return. F12 returns me there whenever I want, from any drive or directory, anywhere on my computer. This can occur even after a reboot! When returned, a list of the files in that directory is displayed. (See "RETURN.bat" in Advanced Batch Files for a look at how the F11 & F12 batch files work.)

        I also have three other key assignments that can be programmed to return to any one of three directories. These are programmed on the fly so that when in any directory, I can hit Alt-Delete, Alt-End, or Alt-Page Down, to tag a directory, To return to any of the three, I hit the equivalent key but instead coupled with the Control key. So as an example, to tag a directory, I can hit Alt-End and to return to it I press Control-End. These three are independent of the F11 & F12 keys described above. I use these three assignments during operations in which I need fast access among several directories -- regardless of the drive on which those directories reside. These assignments also survive reboots.

        What happens if I forget where these key assignments take me? To the Page Down key, I programmed a list that displays the current assignments, and it is updated whenever I change any one of them. This only happens in DOS so any software that uses Page Down, such as a word processor, is unaffected. I can even shell out of that word processor and the Page Down key will revert to its DOS assignment, but yet it returns to its regular Page Down operation after I return to the word processor. Slick, huh?

  12.     In keeping with the above, Control-F12 toggles back & forth between the current and last directory accessed. This changes as I change directories, so that if I am in my E:\GRAPHICS directory and wish to change to my C:\UTIL directory, I do so via whatever method I choose. Then I can hit Control-F12 to return to E:\GRAPHICS. If however, while in E:\GRAPHICS, I change to E:\TEST, pressing Control-F12 still returns me to C:\UTIL, but pressing Control-F12 again now returns me to the new `last' directory: E:\TEST.

        I call this the last example the `A-B' method. The idea was taken from television remote controls that work in the same manner. To explain further: If one is on Channel 3 and wishes to change to Channel 29, `29' is pressed. Hitting the `Recall' button returns one to Channel 3. Further, if one is on 3, goes directly to 29, as above, and while there presses the `Up' button to check the temperature on Channel 30, then presses the `Down' button to return to 29, hitting the recall button still returns one to channel 3 and not 30. This is because the `A' side of the `Recall' operation was never changed from Channel 3 to something else.

        Essentially, Channel 3 was programmed into the `A' side of the `Recall' operation, while 29 was programmed to the `B' side. Moving from 29 to 30 and back again via the `Up' and `Down' buttons only changed the `B' side. If the remote had been left on Channel 30 and the `Recall' button pressed to go to Channel 3 then pressed again, Channel 30 would have been the result. Thus pressing `Recall" at any time always returns one to the channel programmed into the opposite slot. In this case, it will be Channel 3 until one either changes 3 by moving up or down and staying at the new channel or by directly entering another number while on Channel 29. Sadly, few remotes work this way any more. They all want to return to the immediately previous channel even if using the `Up' and `Down' buttons. )-:

        Getting back to my computer setups, this, and the previous `Directory Return' macros, are examples of dynamic batch file writing in which additional batch files are actually being written (or rewritten) in the background as I press various keys. Each is then ready to return me to where ever I was last, or to any of several directories I had chosen previously. These extra batch files allow me to access information about these changing key assignments and to display them on screen at the touch of a key macro.

        Although I won't go into detail here, I use the same technique for a number of other operations such as file editing. Regarding the latter, additional batch files are automatically written during file viewing that will automatically place the name of the most recent one viewed into a batch file so I can edit it should I choose. For all cases, these "sister" batch files track along with the primary ones in that they change as do the primary ones while I work.

  13.     Alt-i moves down one level into an IMAGES directory and shows a list. I have many directories containing files that have associated images. This is especially true with my Internet html directories. Whenever I am in any of those directories, a simple ALT-i immediately places me into the images directory associated with those .htm files. To then view any graphic image, I can press ALT-g, as mentioned farther back.

  14.     Alt-k. Similar to the above Alt-i, this shortcut moves down one level into a WORK directory and displays any files contained therein. As with the IMAGES directories, I often create WORK subdirectories within many directories. I copy files to the WORK from its parent directory when I wish to preserve a parent directory file as-is until I replace it with the version being worked upon.

        This allows me to keep the parent directory uncluttered. Plus, one quick check of any work directory immediately shows me if I have anything on going. The Alt-k shortcut allows this quick check in an effortless way. (I don't use `Alt-w' for this macro because that is programmed to start my word processor.)

  15.     Control-l invokes a small DOWN utility that moves down one level to the first available subdirectory. To go to the next sister directory, I have Control-n run a NEXT utility. This way, I can move into each subdirectory without ever having to type the path or even the directory name! Alt-l moves up one level to the next highest directory.

        With a combination of the above three, I can move up & down my directory structure at will just by Alt and Control key combinations - again never having to type a path or directory name, should I so choose. In all cases, the directory contents are displayed in alphabetical order, wide format with different colours for each file type. I often employ these after using the Alt-i or Alt-k shortcuts, to quickly return me to the parent directory or move to an adjacent or lower directory.

  16.     Alt-4 Takes me into 4DOS, while leaving DR-DOS suspended in the background.

  17.     Alt-z expands any .zip files in the current directory. It keeps the zip file, but my varied key reassignment, Control-z, expands the contents and deletes the .zip file afterwards.

  18.     Control-f deletes all files in the current directory with absolutely no questions or prompts. BANG! All gone! An automatic listing after the operation confirms the directory is empty.

That was just a small sampling of the many keyboard reassignments
I have at hand. They do all of my repetitive work and much of the
less typical work I do at the computer. Initially, there was some
thinking involved to recall them all, so of course, I wrote a batch
file to list the macros, in case I forget. (-:

After a while, the key shortcuts become so ingrained that one
no longer really thinks about them. At that point, one becomes
a true power user and can run circles around any GUI interface.


    ...and now, one final tip:

Be sure to check
DOS Websites
to see links to some of the
programs listed in this article.

Main DOS Page