TSR manual

2023 by C. Masloch. Usage of the works is permitted provided that this instrument is retained with the works, so that any entity that uses the works is notified of this instrument. DISCLAIMER: THE WORKS ARE WITHOUT WARRANTY.

This document has been compiled on 2023-11-18.

1: Switches #

The switches described here are common to all of the following TSRs:

1.1 Switch /U or /R - Uninstall (Remove) #

Attempts to uninstall a resident instance of the program. This requires all downlinks referencing interrupt handlers owned by this instance to be reachable. Reachable means that the handlers are the topmost handlers, or a chain of IBM Interrupt Sharing Protocol (IISP) headers stretches from the topmost handlers to the resident instance's, or a hidden chain of IISP headers does which is found by searching the interrupt lists of other resident AMIS multiplexers.

If the downlinks are not all reachable then uninstallation is aborted. Usually, this condition is detected before actually uninstalling any handlers, so the resident instance is not "half way uninstalled" if this happens.

1.2 Switch /O - Apply options only, do not install #

Specifying this switch will abort the program in case there is not yet a resident instance installed. So the program will never install itself resident if this switch is used. Must not be used along with the /N switch.

1.3 Switch /N - Install new instance even if already resident #

With this switch an already resident instance is ignored and the program installs itself resident, as if it didn't detect a resident instance. This switch has no effect if in fact no resident instance is installed yet. Must not be used along with the /O switch.

1.4 Switch /X= - Specify preferred multiplex number #

This switch must be followed by a one-digit or two-digit hexadecimal number. The specified number is used as the preferred multiplex number in all scans for AMIS multiplex numbers. This includes the detection of the debugger (for the Update IISP Header function), the detection of a resident instance of the TSR, as well as the search for an unused multiplex number for installation of the TSR.

If no /X= switch is specified then the search order for the debugger and the resident instance is 255 to 0, and the order for searching a free multiplex number is 0 to 255.

If the switch is specified, the preferred number may be queried twice, once as the first number checked and then another time during the default search.

1.5 Switch /J - Jettison features #

This switch allows to disable or force enabled certain features. Specifying a letter ‘x’ like in /Jx or /J+x will disable the corresponding feature. Conversely, /J-x will force a feature enabled.

These are the supported feature letters:

/JB
Disable installing handlers at the bottom of an IISP chain
/JD
Disable detecting the debugger for the Update IISP Header function
/JE
Disable calling an invalid exec subfunction during process relocation (interrupt 21h function 4B7Fh)
/JP
Disable process relocation during installation
/JS
Disable system check (interrupt 21h function 4Dh CY returning NC)
/JU
Disable DOS UMB allocation for installation

Using the switch /J without a feature letter is similar to using /JU and disables UMB allocation.

Source Control Revision ID #

hg e3245eb7505f, from commit on at 2023-11-18 10:01:35 +0100

If this is in ecm's repository, you can find it at https://hg.pushbx.org/ecm/tsr/rev/e3245eb7505f