STIMERM - Execute form

Use the execute form of the STIMERM macro together with the list form of the macro for applications that require reentrant code. The execute form of the macro stores the parameters into the storage area defined by the list form.

Syntax

The execute form of the STIMERM macro is written as follows:

Syntax Description
   
   name name: Symbol. Begin name in column 1.
   
One or more blanks must precede STIMERM.
   
STIMERM  
   
One or more blanks must follow STIMERM.
   
  Valid parameters (Required parameters are underlined)
SET For SET: ID, BINTVL or DINTVL or GMT or MICVL or TOD
TEST or TUINTVL or LT, ERRET, WAIT, EXIT, PARM, RELATED
CANCEL For TEST: ID, TU or MIC, ERRET, RELATED
  For CANCEL: ID, TU or MIC, ERRET, RELATED
   
,ID=stor addr stor addr: A-type address or register (2) - (12).
,ID=ALL Note: ID=ALL is valid only on the CANCEL request.
   

,TU=stor addr
,MIC=stor addr

stor addr: A-type address or register (2) - (12).
   

,BINTVL=stor addr
,DINTVL=stor addr
,GMT=stor addr
,MICVL=stor addr
,TOD=stor addr
,TUINTVL=stor addr
,LT=stor addr

stor addr: A-type address or register (2) - (12).
   
   ,ERRET=err rtn addr err rtn addr: A-type address or register (2) - (12).
   

   ,WAIT=YES
   ,WAIT=NO

Default: WAIT=NO
   
   ,EXIT=exit rtn addr

exit rtn addr:  A-type address or register (2) - (12).
Note:  EXIT must not be specified if WAIT=YES is specified.

   
   ,PARM=stor addr stor addr: A-type address or register (2) - (12).
  Note: If PARM is specified, EXIT must be specified and WAIT=YES must not be specified.
   
,MF=(E,ctrl addr) ctrl addr: A-type address or register (0), (2)-(12) for TEST and CANCEL, register (1)-(12) for SET.
   
   ,RELATED=value  
   

Parameters

The parameters are explained in the standard form of the STIMERM macro, with the following exception.

,MF=(E,ctrl addr)
Specifies the execute form of the STIMERM macro using a remote problem-program parameter list.

Example 1

Set a timer to a time interval of 15 microseconds, specifying the address of a 4-byte area in which the identifier assigned to this request by timer service will be returned. Specify:
  • The address of an 8-byte area in INTERVAL that contains the time interval (represented as an unsigned 64-bit binary number)
  • The address of a program to receive asynchronous control after the requested timer interval expires
  • The address of a 4-byte parameter to be passed to the exit routine when the requested time interval expires
  • The address of the appropriate parameter list in REMOTE
Include the address of an error routine in register 9.
          STIMERM SET,ID=(4),MICVL=(INTERVAL),EXIT=ROUTE,PARM=DATA,     X
                MF=(E,REMOTE),ERRET=(9)
DATA      DC CL4'WXYZ'             PARAMETER PASSED TO THE EXIT ROUTINE
INTERVAL  DC X'000000000000F000'   TIME INTERVAL

Example 2

Test the remaining time interval for a timer request established with the SET parameter, specifying the address of a 4-byte area from which the identifier assigned by timer service will be obtained. Specify that register 3 will point to the appropriate list. Specify that the time be returned in microseconds in an 8-byte area at the address named INTERVAL. Include the address of an exit error routine called ERR.
          STIMERM TEST,ID=ADDR,MIC=INTERVAL,MF=(E,(3)),ERRET=ERR
INTERVAL  DS XL8     REMAINING TIME

Example 3

Cancel the timer request established with a SET parameter. Specify the address of a 4-byte identifier (assigned by timer service) named ADDRESS and that the time interval remaining be returned as an unsigned binary number in a 4-byte area named INTERVAL. Specify that register 0 will point to the appropriate list. Specify an error exit routine named ERROR.
          STIMERM CANCEL,ID=ADDRESS,TU=INTERVAL,MF=(E,(0)),ERRET=ERROR
ADDRESS   DS F         ID TO BE CANCELLED
INTERVAL  DS XL4       REMAINING TIME