The ISPF TSO command table (ISPTCM) describes the TSO commands
that are invoked under ISPF. When a TSO command is issued, ISPF searches
ISPTCM. If the command is found, it uses the information in the table
to process the command. If the command is not in ISPTCM, ISPF uses
default values, which are in the table.
To change the list of TSO commands, their characteristics, or both,
customize ISPTCM using the ISPMTCM macro. The assembler source of
ISPTCM is member ISPTCMA in ISP.SISPSAMP. You must rename ISPTCMA
to ISPTCM before assembling it. The macro ISPMTCM is in ISP.SISPMACS.
ISP.SISPSAMP and ISP.SISPMACS are the default data set names for the
ISPF data sets. Contact your system programmer for the names of the
data sets containing ISPTCMA and ISPMTCM on your system. Customizing
the ISPTCM involves modifying ISPTCMA, assembling it, and link-editing
the ISPTCM module. When you use the ISPMTCM macro, remember that:
- If you modified ISPTCM in prior ISPF releases, you have to regenerate
the table by using this macro.
- The first macro call must be HEADER, followed by one ENTRY macro
call for each table entry desired, followed by a macro call of END.
- Use High Level Assembler to assemble ISPTCM.
- You can add up to four additional user-flag bytes for each entry
in ISPTCM for your installation's use.
- The entry names in the IBM-supplied ISPTCM source, ISPTCMA, are
arranged in alphabetical order. You must maintain alphabetical order
for the entries within the ISPTCM.
- You can delete or modify any of the ISPF-provided entries in the
table. ISPF allows you to have up to 1000 entries in ISPTCM.
The syntax of the macro is as follows:
>>-+--------+--ISPMTCM--HEADER--+------------------+------------>
'-symbol-' '-,NOUSRFLG=number-'
>--+------------------+--+--------------+----------------------->
'-,DFUSRFLG=number-' '-,DFFLAG=flag-'
>--+------------------+----------------------------------------><
'-,DFCLRLNS=number-'
.-ENTRY-.
>>-+--------+--ISPMTCM--+-------+--ENTNAME=entry--name---------->
'-symbol-'
>--+------------+--+--------------------+--+----------------+--><
'-,FLAG=flag-' '-,USRFLG=user--flag-' '-,CLRLNS=number-'
>>-+--------+--ISPMTCM--END------------------------------------><
'-symbol-'
- Operand
- Description
- HEADER
- Parameter values are as follows:
- NOUSRFLG
- The number of user flag bytes defined. The value can be a number
between 0 and 4, inclusive. The default is 0.
- DFUSRFLG
- The user flag that is to be used for an entry when the USRFLG
operand is not specified. This must be a hexadecimal string, whose
length in bytes must be NOUSRFLG. If you define a default user flag
with this operand, the value for the NOUSRFLG operand must be greater
than 0. If you do not define a default user flag and you indicated
on the NOUSRFLG operand that a user flag exists, ISPF uses a string
of binary zeros of whatever the length is in NOUSRFLG for the default
user flag.
- DFFLAG
- The value of the ISPF flag to be used for the default entry in
ISPTCM. The default entry determines the characteristics of commands
not found in ISPTCM. The value should be a 1-byte hexadecimal string.
The default is 61.
- DFCLRLNS
- The number of lines to clear from the bottom of the physical screen
for line I/O when the CLRLNS operand is not specified. The value must
be in the range from 0 to 99. The default is 3.
- ENTRY
- Parameter values are as follows:
- ENTNAME
- A valid TSO command name. This operand is required for ENTRY calls.
The alphabetic characters in ENTNAME must be in uppercase letters.
Duplicate entry names cause an error message to be issued.
- FLAG
- The value of the ISPF flag byte for the current entry. The default
is 02.
- Flag Field
- Flag Field Description
- B'1.......'
- Reserved.
- B'.1......'
- Command requires function pool. Set this bit on for a command
processor program that issues dialog services.
- B'..1.....'
- Command requires authorization check. Set this bit on for a command
processor that must be invoked as an authorized command.
- B'...1....'
- Command is not to be logged. Set this bit on if the TSO command
buffer should not be written to the ISPLOG data set.
- B'....1...'
- Command is not supported by ISPF. Set this bit on for commands
that cannot be invoked under ISPF.
- B'.....1..'
- Command is command procedure (CLIST). Set this bit on if this
is the name of a CLIST member.
- B'......1.'
- Command is a command processor. Set this bit on if this is the
name of a command processor program module.
- B'.......1'
- Command requires a BLDL to be issued. Set this bit on if a BLDL
is to be issued to determine whether this is a command processor module
or a CLIST.
- USRFLG
- The value of the user flag for the current entry. Specify this
parameter only if NOUSRFLG is not 0. If you do not specify a value
and NOUSRFLG is greater than 0, ISPF uses the default user flag (DFUSRFLG).
If specified, USRFLG must be a hexadecimal string with a length equal
to the value of NOUSRFLG.
- CLRLNS
- The minimum number of lines to clear if line mode is entered for
this entry. The value should be an integer from 0 to 99. Specifying
a value of 0 causes the entire physical screen to be erased. If you
do not specify a value for CLRLNS, the DFCLRLNS value in the type
HEADER call is used.
When the value for the number of lines to
clear is nonzero, ISPF determines where to clear the screen according
to:
- ISPF calculates a value = (number of lines in the visible portion
of the active logical screen - 1) - CLRLNS
- The lesser of this calculated value and the number of lines in
the panel displayed on the active logical screen (but not less than
0) is the number of the line after which the screen is cleared. Thus,
ISPF will clear more than the CLRLNS number of lines if it can do
so without overlaying the displayed panel.
Note: - If a CLRLNS value is larger than the visible portion of the active
logical screen, ISPF erases the screen beginning at the top of the
logical screen.
- In split-screen mode, if line mode is entered when the top screen
is active, the bottom screen will always be cleared. If the bottom
screen is active, the bottom screen will be cleared (even if CLRLNS
is greater than the physical screen size).
- For DBCS devices, ISPF always erases the screen beginning at the
top of the current logical screen, regardless of the CLRLNS value.
- For 3290 devices, the entire physical screen is always cleared
before going into line mode.
- END
- Must be last macro call.