PRIMITIVEDUMP (Primitive Dump Analysis)

The PRIMITIVEDUMP command analyzes stacks that are in a state that cannot be analyzed using the STACK command. The PRIMITIVEDUMP command performs the same type of analysis as the STACK command, but unlike the STACK command, the PRIMITIVEDUMP command can be used to analyze primitive environments and can be used while DUMPANALYZER is running in MEMONLY mode.

Syntax

── PRIMITIVEDUMP ──────────────────────────────────────────────────────►
►─┬────────────────────────────────────────────────────┬───────────────┤
  ├─ ? ────────────────────────────────────────────────┤
  ├─<stack ID>─┬───────────────────────────────────────┤
  │            ├─ ? ───────────────────────────────────┤
  │            └─<primitive stack options>─────────────┤
  ├─ INITIALIZE ───────────────────────────────────────┤
  │ ┌◄───────────────────────────────────────────────┐ │
  └─┴─┬─/1\─ D0 ────────┬─┬─────┬─<absolute address>─┴─┘
      └─/1\─ MAXSTACKS ─┘ └─ = ─┘

<primitive stack option>

──┬─ DEFAULT ─────────────────────────────────────────┬────────────────┤
  ├─ RESTORE ─────────────────────────────────────────┤
  ├─ ─ ───────────────────────────────────────────────┤
  │ ┌◄──────────────────────────────────────────────┐ │
  └─┴─┬─/1\─ HISTORY ─────────────────────────────┬─┴─┘
      ├─/1\─ OFFSET ──<offset>─┬──────────────────┤
      │                        └─ ─ ──<offset>────┤
      ├─/1\─ BOSR ─┬─────┬─<absolute address>─────┤
      │            └─ = ─┘                        │
      ├─/1\─ F ────┬─┬─────┬─┬─<absolute address>─┤
      ├─/1\─ S ────┤ └─ = ─┘ └─ # ──<offset>──────┘
      └─/1\─ LOSR ─┘

Explanation

The PRIMITIVEDUMP command modifies the default behavior of DUMPANALYZER. The command is useful primarily for analyzing MEMONLY dumps, and for analyzing dumps from primitive environments, which is sometimes useful early in system initialization.

The following text describes the meaning of each construct:

PRIMITIVEDUMP PRIMITIVEDUMP?

Displays the current settings.

PRIMITIVEDUMP <stack ID> PRIMITIVEDUMP <stack ID>?

Returns a display of the current stack references. The ASD for the stack number is used to set default values for the base of the stack area (BOSR) and the upper limit of the stack area (LOSR). The BOSR location is checked for a top-of-stack control word or CPM number to set the initial F and S registers. These default values can be overridden by the <PRIMITIVE STACK options> construct.

PRIMITIVEDUMP <stack ID> <primitive stack options>

Enables you to override the default values for BOSR, the F and S registers, and LOSR.

The <primitive stack options> construct includes the following options:

Option

Effect

DEFAULT RESTORE -

Restores the BOSR, F, S, and LOSR default settings.

HISTORY

Causes analysis of stack linkage words only.

OFFSET <offset> - <offset> OFFSET <offset>

Dumps a subrange of the stack, where the first <offset> is the top offset, and the second is the bottom offset. If only the first offset is used, the bottom offset is accepted as zero.

BOSR <absolute address> BOSR = <absolute address>

Overrides the current address of the base of the stack area (BOSR) with the address specified by <absolute address>.

F S LOSR

The F and S registers and the address of the upper limit of the stack area (LOSR) can each be specified as either an absolute address or as an offset from BOSR.

<absolute address> = <absolute address>

Specifying F, S, or LOSR in front of this construct overrides the current F, S, or LOSR address with the address specified by <absolute address>.

# <offset> = # <offset>

Specifying F, S, or LOSR in front of this construct overrides the current F, S, or LOSR address with the specified offset from BOSR.

PRIMITIVEDUMP INITIALIZE

Reinitializes the stack structures. This option is useful for retrying initialization after you have used the D0 option or the MAXSTACKS option to override the previous D0 address or MAXSTACKS value. If the INITIALIZE operation is successful, MEMONLY will be reset if previously set.

PRIMITIVEDUMP D0 <absolute address>

Overrides the current D0 address with the address specified by <absolute address>. After you use the D0 option to change the address, it is recommended that you use the INITIALIZE option to update the global variables.

PRIMITIVEDUMP MAXSTACKS <absolute address> PRIMITIVEDUMP MAXSTACKS = <absolute address>

Overrides the current MAXSTACKS value.

Example

The following is an example of a PRIMITIVEDUMP inquiry and the response. For examples of stack output, refer to the “STACK Command,” later in this section.

INPUT: PRIM 13
PRIMITIVE INFO FOR STACK 0013
BOSR = 002FEE7FE4  LOSR = 002FEE893E  LENGTH = 000000095A (2394)
F = 002FEE8123  OFFSET = 000000013F  (  1 001301 3A8600)
S = 002FEE812F  OFFSET = 000000014B  (  7 E00002 20102A)
D0 = 00020A9AA0, MAXSTACKS = 00FFB, ASDTABLELENGTH = 52A3D7