Previous Topic: RESUMENext Topic: SNAP


SET

Purpose

Modifies selected areas of storage and debugger symbols.

Syntax

MEMORY Format

►►─┬─ Set ──┬─┬──────────┬─ debug-expression ─┬──────────┬───────────────────►
   └─ Vary ─┘ └─ Memory ─┘                    ├─ EQUals ─┤
                                              └─ = ──────┘

 ►─┬─ data-field-name ────┬─┬──────┬─┬─────────────┬──────────────────────────►◄
   ├─ H halfword ─────────┤ ├─ C ──┤ ├─ RESEt ─────┤
   ├─ F fullword ─────────┤ ├─ X ──┤ └─ NOReset ◄ ─┘
   ├─ X hex-value ────────┤ └─ XC ─┘
   ├─ C character-string ─┤
   └─ P packed-value ─────┘

ATTRIBUTES Format

►►─── Set ─┬─ CHAr ─┬─────────────────────────────────────────────────────────►◄
           ├─ HEX ──┤
           └─ BOTh ─┘

Parameters

debug-expression

Specifies the beginning location of the entity to be modified. Debug-expression can include multiple debug expressions, and it resolves to an address for which you have update security.

For information on the security methods used by the debugger, see CA IDMS Security Administration Guide.

For more information on the values used in a debug expression, see Expression Components in Chapter 2, "Command Considerations."

data-field-name

Identifies a specific data field value. Can be used in CA ADS dialogs only.

For a complete discussion of the use of field names, see Program Symbols in Chapter 2, "Command Considerations."

Hhalfword

Is a halfword number. H specifies the halfword format; halfword represents the actual data content and must be enclosed in single quotation marks.

Ffullword

Is a fullword number. F specifies the fullword format; fullword represents the actual data content and must be enclosed in single quotation marks.

Xhex-value

Is a hexadecimal string. X specifies the hexadecimal format; hex-value represents the actual data content and must be enclosed in single quotation marks.

Ccharacter-string

Is a character literal used to assign alphanumeric or symbolic character values. C specifies the character format; character-string represents the actual data content and must be enclosed in single quotation marks.

Ppacked-value

Is an assigned packed decimal value. P specifies the packed decimal format; packed-value represents the actual data content and must be enclosed in single quotation marks.

C

Requests a display in character format.

X

Requests a display in hexadecimal format.

XC

Requests a display in both hexadecimal and character format.

RESEt

Specifies that the named storage be reset to its original value at the end of the debugging session. This option is not supported for release 10.2 of the debugger.

NOReset

Specifies that the storage is not to be reset to its original value at the end of the debugging session. This option does not affect storage in the debugged program itself since a special copy of the program is loaded for the debugging session. NORESET is the default.

CHAr

Requests a display in character format for ATTRIBUTES format.

HEX

Requests a display in hexadecimal format for ATTRIBUTES format.

BOTh

Requests a display in both hexadecimal and character format for ATTRIBUTES format.

Usage

Two formats

The SET command has two formats. The MEMORY format specifies the values assigned to a given debug expression; the ATTRIBUTES format specifies the debugger session attributes to be established.

When debug expression is a symbol with data characteristics (for example, :REGS), the length of the symbol is used in the set. When the expression does not have data characteristics (for example, $ + 10), the data characteristics of the source field are used in the set.

Important! The debugger does not allow a set across resource boundaries.

Character and hexadecimal format

C/X/XC in the MEMORY format specifies how the information is to be listed. This specification can override the session attributes previously established for the session; the override is valid only for the duration of this command. To reestablish the session attributes more permanently use the ATTRIBUTES format.

Example 1

This command modifies the contents of a program register:

DEBUG >
set :r7 x'00000001' x

The debugger responds to the X parameter with the hexadecimal display of the original value and the reset value:

SET :R7 X'00000001' X
OLD
00000000
NEW
00000001
DEBUG >

Example 2

This command modifies storage at an offset address:

DEBUG >
set $ + 8 = x'58' x

The debugger responds:

SET $ + 8 = X'58' X
OLD
000BF008  41
NEW
000BF008  58
DEBUG >

Example 3

This command modifies storage at the same address with a fullword value:

DEBUG >
set $ + 8 equ f'58' x

The debugger responds:

SET $ + 8 EQU F'58' X
OLD
000BF008  4130C050
NEW
000BF008  0000003A
DEBUG >

Example 4

This is an example of the ATTRIBUTES format:

DEBUG >
set char

SET CHAR
SET ATTRIBUTE CHAR
DEBUG >