The format of the MSGDISP macro with the GEN parameter is:
>>-+-------+--MSGDISP--GEN--,UCB=-(reg)------------------------->
'-label-'
>--+---------------------+--+-----------------+----------------->
| .-BLINK---. | '-,MF=-+-L------+-'
'-,FLASH=-+-STEADY--+-' '-E,addr-'
+-STEADY2-+
+-BLINK2--+
'-ALT-----'
>--+-----------------+--+----------------+---------------------->
| .-YES-. | | .-NO--. |
'-,INDEX=-+-NO--+-' '-,TEST=-+-YES-+-'
>--+--------------------+--+------------------------+----------->
'-,TXT=-+-'msgtxt'-+-' '-,TXT2=-+-'altmsgtxt'-+-'
'-addr-----' '-addr--------'
>--+------------------+--+----------------+--------------------><
| .-STATIC-. | | .-YES-. |
'-,VOL=-+-REMOVE-+-' '-,WAIT=-+-NO--+-'
+-INSERT-+
'-SWAP---'
- GEN
- Specifies the full range of display options.
- UCB=(reg)—(2-12)
- Specifies a register containing the UCB address for the device.
Use the address of a UCB, not a UCB copy.
- FLASH=STEADY or STEADY2 or BLINK or BLINK2 or ALT
- Specifies message display mode.
Hint: If
you specify VOL=SWAP, messages will always be displayed as if you
had specified FLASH=ALT.
- STEADY
- Specifies that the primary message (TXT) is to be displayed without
flashing.
- STEADY2
- Specifies that the alternate message (TXT2) is to be displayed
without flashing.
- BLINK
- Specifies that the primary message (TXT) flash on and off at a
rate of approximately two seconds on and one-half second off.
- BLINK2
- Specifies that the alternate message (TXT2) flash on and off at
a rate of approximately two seconds on and one-half second off.
- ALT
- Specifies that the primary and alternate messages (TXT and TXT2)
flash on and off alternately, at a rate of approximately two seconds
on and one-half second off.
- MF=L or (E,addr)
- Specifies either the execute or the list form of MSGDISP. If you
do not specify this parameter, the standard form of the macro is used.
- L
- Specifies the list form of MSGDISP. This generates a parameter
list that can be used as input to the execute form. The execute form
can modify the parameter list.
- (E,addr)
- Specifies that the execute form of the macro and an existing parameter
list is to be used.
- addr
- Specifies the address of the parameter list. Specify either an
RX-type address or a register in the range of 2 through 12.
- INDEX=NO or YES
- Specifies whether the ACL should be indexed to satisfy a scratch
mount request.
- NO
- Specifies that indexing should not be done regardless of the state
of the ACL.
- YES
- Specifies that indexing should be done if:
- The ACL is present and loaded, and
- The request is for SCRTCH or PRIVAT.
- TEST=NO or YES
- Specifies whether to test the UCB to determine if the device is
capable of displaying messages.
- NO
- Specifies that the macro expansion is not to include code that
tests the UCB to determine whether the device supports message display.
- YES
- Specifies testing the UCB by the MSGDISP macro before attempting
to invoke the message display service routine.
Requirement: TEST=YES requires you to include
the UCB mapping macro (IEFUCBOB) in the source code. If this provision
is not followed, a program check in expansion code might result. Programs
running in AMODE 24 and invoking the MSGDISP macro with the TEST=YES
parameter cannot pass the actual address of a UCB that resides above
the 16 MB line. These programs must pass the captured UCB address
or, if an actual address is passed, the UCB must reside below the
16 MB line.
- TXT='msgtxt' or addr
- Specifies 8 characters to be shown in positions 1 through 8 of
the display. If you do not specify TXT, blanks are displayed.
- 'msgtxt'
- Specifies the 8 characters as literals. Apostrophes are required.
- addr—RX-type address, A-type address,
or (2-12)
- Specifies the address of an area containing the 8 characters.
For MF=L, you can only specify an A-type address.
- TXT2='altmsgtxt' or addr
- Specifies 8 alternate characters to display in positions 1 through
8 of the display. If you do not specify TXT2, blanks are displayed.
- 'altmsgtxt'
- Specifies the 8 characters as literals. Apostrophes are required.
- addr—RX-type address, A-type address,
or (2-12)
- Specifies the address of an area containing the 8 characters.
For MF=L, you can only specify an A-type address.
- VOL=STATIC or REMOVE or INSERT or SWAP
- Specifies message display mode, based on volume status.
- STATIC
- Specifies that messages display without regard to volume status
until the next message request is executed, or until the next command
initiates volume movement.
- REMOVE
- Specifies that messages display until the current volume is demounted.
This parameter is ignored if a volume is not mounted when the request
is executed.
- INSERT
- Specifies that messages display until a volume is present, the
tape is threaded, and the active/inactive switch is in the active
position. This parameter is ignored if a volume is loaded and ready
when the request is executed.
- SWAP
- Specifies that messages always display as if FLASH=ALT were specified.
The data from TXT and TXT2 displays alternately (flashing) until the
current volume has been demounted. Then only TXT2 displays (flashing)
until a new volume is loaded and ready. If no volume is mounted when
this parameter is specified, only TXT2 data displays (flashing) until
a new volume is loaded and ready.
- WAIT=NO or YES
- Specifies when control is to be returned to you.
- NO
- Specifies that the MSGDISP function is not to wait for completion
of I/O initiated on the caller's behalf. When MSGDISP returns, the
I/O request might still be running. I/O return codes are not returned,
and I/O errors are recorded in the same manner as any permanent error
by the error recovery procedure.
- YES
- Specifies that control is to be returned after I/O is complete.
This is the default.