DISPLAY

CMS Commands

display.helpcmd.txt
DISPLAY                                                   CP Privilege Class  G

Use the DISPLAY command to display the following virtual machine components at
your terminal:
o   Virtual storage locations (1st-level virtual storage only; see Usage notes)
o   Storage keys
o   General registers
o   Floating-point registers
o   Control registers
o   Program status word (PSW)
o   Channel address word (CAW)
o   Channel status word (CSW).
Note:  Use the NETWORK DISPLAY command to display the content of 3704/3705
storage.

The format of the DISPLAY command is:
+----------+------------------------------------------------------------------+
| Display  | [[0|[K|L|T]hexloc1 [[[- :][END hexloc2]]|[[.][END bytecount]]]   |
|          | Greg1|Yreg1|Xreg1 [[[- :][END reg2]]|[[.][END regcount]]]        |
|          | Psw                                                              |
|          | CAW                                                              |
|          | CSW                                                              |
+----------+------------------------------------------------------------------+
where:

0 | hexloc1 | Lhexloc1 | Thexloc1 | Khexloc1
         is the first, or only, hexadecimal storage location that is to be
         displayed at the terminal.  If L or no letter prefix is specified, the
         storage contents are displayed in hexadecimal.  If T is specified, the
         storage contents are displayed in hexadecimal, with EBCDIC translation
         beginning at the next lowest X'0' address.  If K is specified, the
         storage keys are displayed in hexadecimal.

         If hexloc1 is not on a fullword boundary, it is rounded down to the
         next lower fullword.

         If L, T, or K is entered either without any operands, or followed
         immediately by a blank, the contents of all storage locations or all
         the storage keys are displayed.  The address, hexloc1, may be 1 to 6
         hexadecimal digits; leading zeros are optional.

         0 is the default storage location.

- | : END hexloc2
         is the last of the range of hexadecimal storage locations whose
         contents are to be displayed at the terminal.  Either a - or a : must
         be specified to display the contents of more than one location by
         storage address.  If - or : is the first character of the operand,
         then hexloc1 defaults to zero.  If hexloc2 is not specified, the
         contents of all storage locations from hexloc1 to the end of virtual
         storage are displayed.  If specified, hexloc2 must be equal to or
         greater than hexloc1 and within the virtual storage size.  (See Usage
         notes for a discussion on discontiguous saved segments.)  The address,
         hexloc2, may be from 1 to 6 hexadecimal digits; leading zeros are
         optional.

[.] END bytecount
         is a hexadecimal integer designating the number of bytes of storage
         (starting with the byte at hexloc1) to be displayed at the terminal.
         The period (.) must be specified to display the contents of more than
         one storage location by bytecount.  The sum of hexloc1 and bytecount
         must be an address that does not exceed the virtual machine size.
         (See Usage notes for a discussion on discontiguous saved segments.)
         If this address is not on a fullword boundary, it is rounded up to the
         next higher fullword.  The value, bytecount, must have a value of at
         least 1 and may be from 1 to 6 hexadecimal digits; leading zeros are
         optional.

Greg1    is a decimal number from 0 to 15 or a hexadecimal integer from 0 to F
         representing the first, or only, general register whose contents are
         to be displayed at the terminal.  If G is specified without a register
         number, the contents of all the general registers are displayed at the
         terminal.

Yreg1    is an integer (0, 2, 4, or 6) representing the first, or only,
         floating-point register whose contents are to be displayed at the
         terminal.  If Y is specified without a register number, the contents
         of all of the floating-point registers are displayed at the terminal.

Xreg1    is a decimal number from 0 to 15 or a hexadecimal number from 0 to F
         representing the first, or only, control register whose contents are
         to be displayed at the terminal.  If X is specified without a register
         number, the contents of all of the control registers are displayed at
         the terminal.  If Xreg1 is specified for a virtual machine without
         extended mode operations available, only control register 0 is
         displayed.

- | : END reg2
         is a number representing the last register whose contents are to be
         displayed at the terminal. The dash (-) or colon (:) following reg1 is
         used to specify a range of register values to be displayed.  If reg2
         is not specified, the contents of all registers from reg1 through the
         last register of this type are displayed.  The operand, reg2, must be
         equal to or greater than reg1.  If Greg1 or Xreg1 is specified, reg2
         may be a decimal number from 0 to 15 or a hexadecimal number from 0 to
         F.  If Yreg1 is specified, reg2 may be 0, 2, 4, or 6.  The contents of
         registers reg1 through reg2 are displayed at the terminal.

[.]END   regcount
         is a decimal number from 1 to 15 or a hexadecimal number from 1 to F
         specifying the number of registers (starting with reg1) whose contents
         are to be displayed at the terminal.  If the display type G or X is
         specified, regcount can be a decimal number from 1 to 15 or a
         hexadecimal number from 1 to F. If display type Y is specified,
         regcount must be 1, 2, 3, or 4.  The sum of reg1 and regcount must be
         a number that does not exceed the maximum register number for the type
         of registers being displayed.

Psw      displays the current virtual machine  PSW (program status word) as two
         hexadecimal words.

CAW      displays the contents of the CAW (channel address word at hexadecimal
         location 48) as one hexadecimal word.

CSW      displays the contents of the CSW (channel status word at hexadecimal
         location 40) as two hexadecimal words.


Usage notes:

1.  First level storage (storage that is real to the virtual machine) can be
    displayed.  Operating systems running in a virtual machine such as DOS/VS
    and OS/VS have virtual storage of their own.  This second-level virtual
    storage cannot be displayed directly.  The user or the virtual operating
    system is responsible for converting any third-level storage locations to
    second-level storage locations before issuing the command.

2.  If a command line with an invalid operand is entered, the DISPLAY command
    terminates when it encounters the invalid operand; however, any previous
    valid operands are processed before termination occurs.  Multiple storage
    locations, registers, and control words can be displayed using a single
    command line.

3.  When multiple operands are entered on a line for location or register
    displays, the default display type is the same as the previous explicit
    display type. The explicit specification of a display type defines the
    default for subsequent operands for the current display function.  Blanks
    are used to separate operands, or sets of operands, if more than one
    operand is entered on the same command line.  If a dash or a colon is
    omitted between the hexloc1 and hexloc2 operands, and the two operands are
    separated by one or more blanks, CP only displays the storage contents at
    those two specific addresses.  Blanks must not be used to the right or left
    of the range  or length delimiters (: or - or .), unless the user wants the
    default value of the missing operand defined by the blank. For example:
       display 10 20 T40 80 G12 5 L60-100
    displays the following, respectively:
       hexadecimal location 10
       hexadecimal location 20
       hexadecimal location 40 with EBCDIC translation
       hexadecimal location 80 with EBCDIC translation
       general register 12
       general register 5
       hexadecimal locations 60 through 100

4.  To terminate the DISPLAY function while data is being displayed at the
    terminal, press the attention key (or its equivalent).  When the display
    terminates, another command may be entered.

5.  The DISPLAY command does not distinguish between shared and nonshared
    storage; it displays any of the virtual machine's addressable storage
    whether shared or not.

6.  Use the DISPLAY command to display the contents of various storage
    locations, registers, and control words at the terminal.  By examining this
    type of information during the program's execution, you may be able to
    determine the cause of program errors.  Usually, an address stop is set to
    stop the program execution at a specified point.  The system enters the CP
    environment and you may then issue the DISPLAY command.

7.  When you must examine large portions of storage, use the DUMP command
    rather than the DISPLAY command.  Because the terminal operates at a much
    slower speed than the printer, only limited amounts of storage should be
    printed (via the DISPLAY command) at the terminal.

8.  When running with a discontiguous saved segment (DCSS), you can display
    storage locations outside the range of your virtual machine size if they
    are within the DCSS.  If there exist locations between the upper limit of
    your virtual machine and the address at which the DCSS was saved, an
    attempt to display those locations (or associated keys) results in a
    "nonaddressable storage" message.

Responses

One or more of the following responses is displayed, depending upon the
operands specified.

Displaying Storage Locations

xxxxxx word1 word2 word3 word4 (key) *EBCDIC TRANSLATION*
   This is the response you receive when you display storage locations; xxxxxx
   is the hexadecimal storage location of word1.  Word1 is displayed (word-
   aligned) for a single location specification.  Up to four words are
   displayed on a line, followed, optionally, by an EBCDIC translation of those
   four words.  Periods represent nonprintable characters.  Multiple lines are
   used (if required) for a range of locations.  If translation to EBCDIC is
   requested (Thexloc), alignment is made to the next lower 16-byte boundary;
   otherwise, alignment is made to the next lower fullword boundary.  If the
   location is at a 2K page boundary, the key for that page is also displayed.

Displaying Storage Keys

xxxxxx TO xxxxxx   KEY = kk
   This is the response you receive when you display storage keys; xxxxxx is a
   storage location and kk is the associated storage key.

Displaying General Registers

GPR n = genreg1 genreg2 genreg3 genreg4
   This is the response you receive when you display general registers; n is
   the register whose contents are genreg1.  The contents of the following
   consecutive registers are genreg2, genreg3, and so on.  The contents of the
   registers are displayed in hexadecimal.  Up to four registers per line are
   displayed for a range of registers.  Multiple lines are displayed if
   required, with a maximum of four lines needed to display all 16 general
   registers.

Displaying Floating-Point Registers

FPR n = xxxxxxxxxxxxxxxx  .xxxxxxxxxxxxxxxxx  E xx
   This is the response you receive when you display floating-point registers;
   n is the even-number floating-point register whose contents are displayed on
   this line.  The contents of the requested floating-point registers are
   displayed in both the internal hexadecimal format and the E format.  One
   register is displayed per line.  Multiple lines are displayed for a range of
   registers.

Displaying Control Registers

ECR n = ctlreg1 ctlreg2 ctlreg3 ctlreg4
   This is the response you receive when you display control registers; n is
   the register whose contents are ctlreg1.  The contents of the following
   consecutive registers are ctlreg2, ctlreg3, and so on.  The contents of the
   requested control registers are displayed in hexadecimal.  Up to four
   registers per line are displayed.  Multiple lines are displayed if required.

Displaying the PSW

PSW = xxxxxxxx  xxxxxxxx
   The contents of the PSW are displayed in hexadecimal.

Displaying the CAW

CAW = xxxxxxxx
   The contents of the CAW (hexadecimal location 48) are displayed in
   hexadecimal.

Displaying the CSW

CSW = xxxxxxxx  xxxxxxxx
   The contents of the CSW (hexadecimal location 40) are displayed in
   hexadecimal.