Prev Next Home Home Table Of Contents Index


WATCH.COM is a memory-resident program that keeps track of other memory resident programs. As a TSR goes resident, WATCH updates a data area in memory that contains information about what interrupt vectors were taken over. This information can later be used by MAPMEM and DISABLE to show more details about interrupts than normally available.

Installation of WATCH.COM is optional. All of the TSR Utilities except DISABLE can be used whether or not WATCH is installed.

If you want to use it, WATCH.COM should be installed as one of the first TSR's in your AUTOEXEC.BAT file. WATCH may be loaded into low memory or, if a compatible memory manager is in use, into high memory.

WATCH uses about 3100 bytes of memory when it is installed. Most of this memory holds various information about the TSR's installed in the system -- it includes a copy of the interrupt vector table and a data area containing a list of the interrupt vectors taken over by each TSR. This information is used by DISABLE to deactivate and reactivate TSR's without removing them from memory. It is also used by MAPMEM to report more accurately on the interrupt vectors trapped by each TSR.

With DISABLE.EXE, you can disable and reenable specified memory resident programs without removing them from memory. Its function is analogous to that performed by REFEREE from Persoft, although DISABLE has neither a fancy user interface nor an option to work from within other programs. DISABLE can allow conflicting TSR's to coexist, and it can let you run applications whose keystrokes conflict with those of TSR's already loaded. DISABLE also provides a small bonus in that it can be used to detect the presence of a particular TSR in memory, thus allowing the design of semi-intelligent batch files. (Note that as of version 3.0, MAPMEM also can detect the presence of a particular TSR, without requiring that WATCH be loaded.)

In order to use DISABLE, you must install WATCH.COM prior to loading any TSR that you wish to disable. WATCH keeps the detailed information about each memory resident program that DISABLE uses to later control them.

Like the other TSR Utilities, DISABLE is operated from the command line. You specify a single TSR by its name (if you are running DOS 3.0 or later) or by its address as determined from a MAPMEM report (described below). If you specify an address, immediately precede the address with a dollar sign "$" and specify the address in hexadecimal.

The name specified for a TSR is the one reported by MAPMEM in the "Name" column. If this column reports "n/a", then you must instead specify the address from the "PSP" column.

DISABLE accepts the following command line syntax:

  DISABLE TSRname|$PSPaddress [options]

Options may be preceded by either / or -. Valid options are as follows:

     /A     reactivate the specified TSR.
     /C     check for the presence of the specified TSR.
     /H     work with upper memory if available.
     /L     do not look in low memory for the TSR.
     /O     disable the TSR even if dangerous (Override).
     /Q     write no screen output.
     /U     work with upper memory, but halt if none found.
     /?     write a help screen.

You can also put the string DISABLE=options in the DOS environment. For example, if you type


at the DOS command line, DISABLE will use the /U and /Q options as the defaults thereafter.

If no option is specified, DISABLE will disable the named TSR. When /A is specified, a previously disabled TSR is reenabled.

/C causes DISABLE simply to check for the presence of a TSR. It writes an appropriate screen message and returns a DOS ERRORLEVEL to indicate whether the TSR is currently in memory: 0 if the TSR is present, 2 if it is not present, 254 or higher if an error occurs.

/H is like /U (see below), but will continue even if no upper memory blocks are found. With /H you can write a batch file that works on all machines, whether or not they have upper memory blocks.

/U will cause DISABLE to halt if no upper memory blocks are found.

/L prevents DISABLE from searching low memory (memory below 640K) for the specified TSR. Use this option if you only want to act on TSRs found in high memory. Specifying /L also automatically sets the same flag controlled by /H.

/O allows DISABLE to proceed with disabling a TSR even if internal checks indicate that it isn't safe to do so. Use this option only after careful experimentation indicates that it is safe to do so.

/Q prevents DISABLE from writing any screen output. The DOS ERRORLEVEL variable is still set to return status info for use in batch files.

/U allows DISABLE to access upper memory blocks. You cannot disable a TSR which is loaded high without using this option or /H. As with RELEASE and RELNET, you must have a compatible memory manager in order to use the DISABLE /U option. See section 2 for more information.

DISABLE sets the DOS ERRORLEVEL in order to return status information to a batch file. It returns the following values in the DOS errorlevel variable:

  0       success: TSR is present, was disabled, or was reenabled.
  1       TSR is present, but no action was required to enable or disable it.
  2       TSR is not present in memory.
  254     invalid command line.
  255     severe error.

Examples of using DISABLE:

  DISABLE SK              disables SideKick
  DISABLE SK /A           reenables SideKick
  DISABLE SK /C           checks for the presence of SideKick
  DISABLE SK /A /U        reenables SideKick when it was loaded into
                          high memory
  DISABLE $2F2E           disables the TSR at address 2F2E (hex)

Prev Next Home Home Table Of Contents Index