z/OS ISPF Planning and Customizing
Previous topic | Next topic | Contents | Contact z/OS | Library | PDF


Customizing the ISPF TSO command table (ISPTCM)

z/OS ISPF Planning and Customizing
GC19-3623-00

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:

Read syntax diagramSkip visual syntax diagram
>>-+--------+--ISPMTCM--HEADER--+------------------+------------>
   '-symbol-'                   '-,NOUSRFLG=number-'   

>--+------------------+--+--------------+----------------------->
   '-,DFUSRFLG=number-'  '-,DFFLAG=flag-'   

>--+------------------+----------------------------------------><
   '-,DFCLRLNS=number-'   

Read syntax diagramSkip visual syntax diagram
                        .-ENTRY-.                        
>>-+--------+--ISPMTCM--+-------+--ENTNAME=entry--name---------->
   '-symbol-'                                            

>--+------------+--+--------------------+--+----------------+--><
   '-,FLAG=flag-'  '-,USRFLG=user--flag-'  '-,CLRLNS=number-'   

Read syntax diagramSkip visual syntax diagram
>>-+--------+--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:

  1. ISPF calculates a value = (number of lines in the visible portion of the active logical screen - 1) - CLRLNS
  2. 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:
  1. 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.
  2. 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).
  3. For DBCS devices, ISPF always erases the screen beginning at the top of the current logical screen, regardless of the CLRLNS value.
  4. For 3290 devices, the entire physical screen is always cleared before going into line mode.
END
Must be last macro call.

Go to the previous page Go to the next page




Copyright IBM Corporation 1990, 2014