The input fields in the header line of the standard dump window are the “Symbolic address”, “Relative address”, “Absolute address”, “ASEL”, “ASID”, “Output format” and “Window length”.
In the special windows activated with the SHOW-EDITED-INFORMATION statement and the FIND, LIST, OPTS or PRODAMP window, additional or different types of input are possible (see "Output of system trace tables (special window: TRACE)").
Module names, control block names and control block field names can be entered in the input field “Symbolic address” (see figure 26).
By default, the output always shows the module name. If the memory area cannot be allocated to any module, blanks are displayed.
If a control block (field) name is displayed (CBA/CBM output format), the module name can be shown by entering “NAM” in the “Output format” field.
The names of CSECTs in subsystems or in a loaded user program may also be specified.
If the current task is connected to the nonprivileged subsystem or if the CSECT is contained in the user program, the memory area is localized automatically. If privileged subsystems are loaded, the memory area is localized by DAMP even if the task is not connected.
If the module-relative display is not desired, it can be deactivated by entering “ALT” in the “ASEL” field. DAMP then relates all addresses to the current start address in this window. Furthermore, in this format, output extends beyond the module boundary.
In order to indicate that the module-relative display has been switched off, the module name is deleted.
This output format is retained during paging and if a relative or absolute address is entered.
Relative address
The current displacement between the start of the module and “Absolute address” is displayed. If the relative address is changed within the CSECT/control block area, only the relative address and the start address of the window contents change (“Absolute address”). If, however, this displacement exceeds the boundaries of the module area, the relative and absolute address outputs are adapted automatically (this also occurs when paging in the dump window).
Absolute address
The input field “Absolute address” displays the start address of the current contents of the window.
Output format
The following output formats are available:
D | Dump format (default value or value after “D” is entered) Each screen line displays 16 bytes in both hexadecimal and printable form. The 4 word fields in hexadecimal format can be marked. |
ASC | Dump-Format(ASCII); Each screen line displays 16 bytes in both hexadecimal and printable ASCII form. The 4 word fields in the hexadecimal format can be marked. |
HEX | Hexadecimal format (after “H” is entered) Each screen line displays 32 bytes in hexadecimal form. All 8 word fields can be marked. |
CHR | Character format (after “C” is entered) Each screen line displays 64 bytes in the form of printable characters; non-printable characters are displayed as smudges. By setting the user option “Trash character” (see "Modification by the user (special window: OPTIONS)"), any other printable character can be selected instead of the smudge). |
ASS | Instruction display (after “A” is entered). Each line displays one instruction both in “disassembled” form and in machine code. In the case of x86 objects, DAMP selects the disassembly mode in accordance with the processor mode of the CSECT (PMODE byte). If this results in meaningless outputs, the CAS or XAS mode can be set explicitly. In the output, ASS indicates that the /390 disassembly was used. |
CAS | Input: the /390 disassembly is to be used (ASS then appears in the output). |
XAS | Input: the x86 disassembly is to be used. Output: the x86 disassembly was used. |
CBA | Symbolic format with automatic localization of the control block (control block automatic). |
CBM | Symbolic format with manual localization of the control block (control block manual). |
NAM | Symbolic format where the name of the module containing the control block is displayed in the symbol field in place of the name of the control block. |
Window length
The input field “Window length” displays the current window length of the window, including the header line. The separator line which results from a user option is not included in the displayed window size. Inputs greater than 19 are reduced to the maximum permissible size of 19 lines.
The program keys to (9750 Data Display Terminal) can be used to position the cursor to the input fields “Window size” of the following diagnostic windows, provided that at least three windows are open on screen:
positions on the “Window length” field of the first diagnostic window on screen | |
positions on the “Window length” field of the second diagnostic window on screen | |
positions on the “Window size” field of the third diagnostic window on screen |
If only two windows are displayed on the screen, the key positions the cursor on the command line, and if only one window is open, the key also positions the cursor on the command line.
ASEL and ASID
The memory areas shown in the standard dump windows can be sections of the following areas:
a virtual address space
the main memory area (real/absolute addresses)
the hardware system area (HSA)
a protected processor status (PSS)
data spaces
dumpfile sections (SCT).
The data spaces exist alongside the task-specific and system-specific virtual address spaces and thus represent, in effect, a duplication of the virtual address spaces.
In DAMP, even a task or system-specific address space can be set as a data space. In such cases, DAMP omits the module-specific qualification.
Addressing data spaces
In addition to the 16 general-purpose registers, each process has a further 16 access registers. Depending on the way in which a particular option is set (AR mode), these access registers (with the exception of register 0) are also used for addressing memory areas.
The access register with the same name as the base register is used to address a data space if it contains any value other than zero. This data space can be up to 2 Gbytes in size and is addressed in the normal way using the base register, index register and offset.
For addressing purposes, the access registers are given an ALET (access list entry token) which uniquely identifies the data space for an address space (task or system address space). Throughout the system, the data space is identified uniquely by the SPID (space identification).
The names ASEL (Address Space Selector) and ASID (Address Space Identifier) refer to fields which can contain the following symbols:
ASEL | ASID | Meaning of the symbols |
TID | <tid> (hexadecimal) | The address space is a user address space specified by its <tid> (task identifier). |
TSN | <tsn> (string) | The address space is a user address space specified by its <tsn> (task sequence number). |
SYS | ignored | The address space is the system address space. |
ALT | <alet>-<tid> (hexadecimal) | The address space is a data space identified by <alet> (plus <tid> for user data spaces). |
SPI | <space-id> (hexadecimal) | The address space is a data space identified by the (system-wide) <space-id> . |
RM | <segm> (hexadecimal) | The address space is the real main memory in the selected object. <segm> identifies the 4GB segment (0, 1, ...) in which the address is located. |
ABS | <segm> (hexadecimal) DISTANCEDISTA | The address space is the absolute main memory in the selected object. <segm> identifies the 4GB segment (0, 1, ...) in which the address is located (only for complete VM2000 SLED files). |
PSS | <processor> (hexadecimal) | The address space is the processor save area of the specified processor. |
HSA | ignored | The address space is the hardware system area. |
SCT | <section-name> (string)DISTANC | The address space is a dumpfile section identified by <section-name>. |
The fields “ASEL” and “ASID” are highlighted and can be overwritten.
If ALET is specified together with TID, the TID must be appended to ALET with a hyphen. If you want to set a task- or system-specific address space as the data space, you only need to enter “ALT” as “ASEL” (plus <tid> as “ASID”).
By default, the TID is displayed in the “ASID” field for areas in the user address space. If you want to have the TSN displayed, you must enter it in the “ASEL” field.
The “ASEL” field is switched to SYS when areas in the user address space are output. The TID, which is still assigned to the window, continues to be displayed in the “ASID” field. This TID can be modified as before by entering “TID” in the “ASEL” field and <tid> in the “ASID” field.
In the case of a complete VM2000 SLED, entering “ABS” - beginning at the hypervisor - causes absolute addressing to be performed regardless of whether a VM was selected. With the input “RM”, addressing is performed within a selected VM.
Abbreviated entries
All entries in the “ASEL” field can be abbreviated as desired as long as they remain unambiguous.
The TID can always be entered in abbreviated form in the “ASID” field, provided the relevant task is uniquely identified. As a rule, the last four digits of the TID are sufficient for this purpose. The TID is always output in its entirety.
Examples of entries in the “Symbolic address” and “Output format” fields
This section describes a number of important applications by providing examples of various combinations of entries in the “Symbolic address” and “Output format” fields.
The entries in the “Output format” field can be abbreviated, provided they remain unambiguous.
Localizing a control block which can be found automatically (e.g. EXVT)
Input: Control block name in the “Symbolic address” field Output: Control block name in the “Symbolic address” field
CBA in the “Output format” fieldLocalizing a control block which can be found manually
Assuming: The memory area is already set
Input: Control block name in the “Symbolic address” field Output: Control block name in the “Symbolic address” field
CBM in the “Output format” fieldLocalizing a field in the control block currently displayed
Assuming: The control block name is already set in the window
Input: Field name in the “Symbolic address” field Output: Control block name in the “Symbolic address” field
CBM or CBA in the “Output format” fieldLocalizing a field in an “automatic” control block
Input: Field name in the “Symbolic address” field Output: Control block name in the “symbolic address” field
CBA in the “Output format” fieldLocalizing an “automatic” control block manually
Assuming: The memory area is already set.
Input: Control block name in the “Symbolic address” field
CBM in the “Output format” field or input in the “Absolute address” fieldOutput: Control block name in the “Symbolic address” field
CBM in the “Output format” fieldOverlaying an area with a control block as of a field name
Assuming: The memory area is already set
Input: Field name in the “Symbolic address” field
CBM in the “Output format” fieldOutput: Control block name in the “Symbolic address” field
CBM in the “Output format” fieldOverlaying an area with a control block as of a relative address
Assuming: The memory area is already set
Input: Control block name in the “Symbolic address” field
Relative address (relative to start of control block)Output: Control block name in the “Symbolic address” field
CBM in the “Output format” fieldDisplaying the module in which a control block is located
Input: NAM in the “Output format” field Output: Module name in the “Symbolic address” field
NAM in the “Output format” fieldSwitching from symbolic representation to dump format
Input: D in the “Output format” field Output: Module name in the “Symbolic address” field
D in the “Output format” fieldDisplaying an area in a module
Input: Module name (plus relative address if required) in the “Symbolic address” field Output: Module name in the “Symbolic address” field
Display in the “Output format” field is retained; CBA, CBM or NAM is changed to DSwitching from dump format to disassembled format
Input: ASS in the “Output format” field Output: Module name in the “Symbolic address” field
ASS in the “Output format” field