Your Browser is not longer supported

Please use Google Chrome, Mozilla Firefox or Microsoft Edge to view the page correctly
Loading...

{{viewport.spaceProperty.prod}}

RSOFEI - Request POSSIG signal (event)

&pagelevel(3)&pagelevel

General

Application area:

(Optimized) eventing; see "Eventing"

Macro type:

R-Typ; see "R-type macros"


Forward eventing (FEV) is an optimized form of synchronous eventing. FEV avoids the need for repeated validation of the operands when either SOLSIG or POSSIG calls to a particular event item are repeated. Instead, an event list, EVENTLST, is set up and in order to request signals from an event item (a SOLSIG function), for example, a SOLSIG entry is made in the list. The entry may be explicitly deleted again (DELFEI).
The task of the calling program must be enabled for the event item (using ENAEI).

Macro description

The macro RSOFEI refers to a SOLSIG entry in the EVENTLST and requests a signal (event) from an event item. The task of the calling program is put into a wait state if the requested signal has not yet been received, but for not longer than the duration of the specified waiting time (using the macro DSOFEI).

Macro format and description of operands

RSOFEI

REFNUM=(r)

REFNUM=r
Identifies a register which (directly) contains the reference number of a SOLSIG entry.

(r)
Register containing the reference number.

Return information and error flags

During the execution of the macro, register R1 contains the reference number. Register R0 is overwritten with an internal function code.

R15:

+---------------+
|   |   |   |   |
|b|b| | | | |a|a|
+---------------+

A structured return code relating to the execution of the macro is transferred in register R15 (aa = primary return code, bb = secondary return code).

X'bb'

X'aa'

Meaning

X'00'

X'00'

Normal execution: the event has occurred. A post code has been transmitted, if it
was specified

X'30'

X'00'

Function executed: the post code could not be transmitted because the receiver
had not prepared a receiving field

X'34'

X'00'

Function executed: the post code was not transmitted because it had the
value X' 00000000'

X'38'

X'00'

Function executed: post code truncated from the right (receiving field too small)

X'3C'

X'00'

Function executed: post code entered left-justified (receiving field too long).
This return information does not occur if the RPOSTNUM operand is used in the
DSOFEI macro.

X'04'

X'04'

No action: incorrect reference number (SOLSIG entry already deleted?)

X'20'

X'04'

No action: the event did not occur within the waiting time

X'28'

X'04'

No action: the event item was disabled (using the macro DISEI) before the event
occurred

X'50'

X'04'

No event available.