LINEDIT Macro results in the display of the first nine bytes at the address in
register 6, in the format:
hhhhhhhh hhhhhhhh hh CHARA,address substitutes the character data at the specified address into the
message text. For example:
LINEDIT TEXT='NAME IS •• •••••••••• '··,SUB=(CHAR1,NAME) causes the 10 characters at location NAME to be substituted into
the message text. Kultiple blanks are removed.
CHARA, (reg)
substitutes the character data at the address indicated in the
specified register into the message text. For example:
LINEDIT TEXT=' CODE IS •••• ', SUB= (CHARA, (7) ) the first four characters at the address indicated in register 7
are substituted in the message line.
CHAR8A,address
substitutes the character data at the specified address into the
message text, and inserts a blank character following each eight
characters of output. When vou code the message text, you must code enough periods to
allow for the blanks that will be substituted.
This substitution list is convenient for displaying eMS parameter
lists. For example, to display a fileid in an FSCB, you might code
LINEDIT TEXT='FILEID IS •••••••••••••••••••• ', SUB=(CHAR8A,OUTFILE+8) where OUTFILE is the label on an FSCB this file were TEST OUTPUT Al, then the
would result in the display:
macro. If the fileid for
LINEDIT macro instruction
FILEID IS TEST OUTPUT A1.
In the final edited multiple blanks are reduced to a single blank. (reg)
substitutes the character data at the address indicated in
specified register and inserts a blank character following
eight characters of output.
the
each When vou code the message text, you must include sufficient periods
to allow for the blanks. For example:
LINEDIT TEXT=IPLIST: ••••••••••••••••••••••••••••••••••• , SUB= (CHARS!, (1) )
results in a display of four doublewords of character data,
beginning at the address indicated in register 7.
Section 6. CMS Macro Instructions 325
LINEDIT r'lacro 1BE 1EN2Tli 1I!EQIX In all the
examples shown r the length of the argument being sUbstituted was
determined by the number of periods in the message text. The number of
periods indicated the size of the output field r and indirectly
determined the size of the input data area.
For hexadecimal and decimal .substitutionsr the input data is
truncated on the left. To ensure that a decimal number will never be
truncated r you can code 10 periods (11 for negative numbers) in the
message text where it will be sUbstituted. For hexadecimal data
w
code
eight periods to ensure that no characters are truncated when a fullword
is substituted. When you are coding sUbstitution lists with the CHARA r HEX4A options r howeverr you can specify the length of the
field. You must code the SUB operand as follows: SUB=(typer(addresswlength» CHAR8A w and
input data
Both address and length may be specified using register notation. For
example: SUB= (HEX4A w (LOC w (4» 1 shows that the characters at location
message text; the number of characters
contained in register 4 r but it cannot
periods coded in the message text. are substituted into the
is determined by the value
be larger than the number of You can use this method in the special case where only one character
is to be substituted. Since you must always code at least two periods
to indicate that substitution is to be performed w you can code two
periods and specify a length of one r as follows:
LINEDI'I TEXT='INVALID LETTER •• 'rSUB=(CHARAw (PLIST+24 w When you want to make several
substitutions in the same liner you must enter a sUbstitution list for
each set of periods in the message text. For example:
LINEDIT TEXT='VALUFS ARE ••••• and •••••• 'w SUB= (DEC r (3) r HEXA w LOC) might generate a line as follows: VALUES ARE -45 AND FFE3C2. You should remember that if you are using the standard form of the
macro instructionr and you want to perform more than one sUbstitution in
a single line, the LINEDIT macro will not generate reentrant code. If
you code RENT=NO on the macro linew then you will not receive the message indicating that the code is not reentrant. If you want reentrant coder you must use the list and execute forms of the macro instruction.
326 Vr'I/370 CMS Command and Macro Reference
Previous Page Next Page