267B TimeOut¶
Stub MON 267B (183 decimal) · Mnemonic TMOUT · Group: Not grouped in manual
Available from: All programs (manual compatibility box)
Emulation source: src/handlers/mon_267B_TimeOut.c
Description¶
Suspends the execution of your program for a given time. The execution then continues after the monitor call. The restart cause is indicated. Avoid using Time Out from ND-500, use ND500TimeOut instead.
- No reserved files or devices are released.
- The execution continues immediately if the program has its restart flag set.
- You may use NoWaitSwitch. Then the program restarts when a break occurs.
- If a program has been rescheduled by the monitor call SET (mon 101, DelayStart) or ABSET (mon 102, StartupTime), this rescheduling will be destroyed when you use TimeOut.
Parameters¶
| Name | Type | Direction | Description |
|---|---|---|---|
NoTimeUnits |
INTEGER | In | Number of time units to suspend the program. |
UnitType |
INTEGER | In | The type of time units: 1=basic time units (1/50th sec), 2=seconds, 3=minutes, 4=hours. |
RestartReason |
INTEGER | Out | Restart cause: 0=time elapsed, 1=break restarted, -1=scheduled for repeated execution. |
Direction: In = the program supplies the value, Out = the call returns it, In/Out = both.
See also¶
SuspendProgram, WaitforRestart, and ND500TimeOut
Compatibility¶
| Machines | Users | Programs |
|---|---|---|
| ND-100 and ND-500 | All users | All programs |
The manual's compatibility box for this call, word for word.
Yes/no fields from the YAML extraction (not in the manual's words):
| ND-100 | ND-500 | User programs | RT programs | System programs |
|---|---|---|---|---|
| Yes | Yes | No | No | No |
Examples¶
From the manual (OCR text, not corrected).
INTEGER : NoTimeUnits, UnitType, ReturnStatus
...
ON ROUTINEERROR DO
IF ErrCode > 0 THEN ...
ENDON
Monitor_Call('TimeOut', NoTimeUnits, UnitType, ReturnStatus)
INTEGER NoTimeUnits, UnitType, ReturnStatus
...
Monitor_Call('TimeOut', NoTimeUnits, UnitType, ReturnStatus)
IF (ErrCode .NE. 0) THEN ...
NoTimeUnits, UnitType, ReturnStatus : INTEGER2;
...
TimeOut(NoTimeUnits, UnitType, ReturnStatus);
IF ErrCode <> 0 THEN ...
01 NoTimeUnits COMP.
01 UnitType COMP.
01 ReturnStatus COMP.
01 ErrCode COMP.
...
MONITOR-CALL "TimeOut" USING NoTimeUnits, UnitType, ReturnStatus.
CALL "CbError" USING ErrCode.
IF ErrCode NOT = 0 GO ...
NoTimeUnits : W BLOCK 1
UnitType : W BLOCK 1
RestartReason : W BLOCK 1
ErrCode : W BLOCK 1
TimeOut : EQU 37B9 + 267B
...
CALLG TimeOut, 3, NoTimeUnits, UnitType, RestartReason
IF K GO ERROR
...
ERROR : W1 =: ErrCode %ErrorCode in W1 register.
LDA (PAR %Load register A with address of parameter list.
MON 267 %Monitor call TimeOut.
STA STAT %Store status returned.
...
STAT, 0
PAR, TIME %Number of time units.
BASE %Unit base type.
...
TIME, ...
BASE, ...
Scanned by Jonny Oddene for Sintran Data © 2020
ndmonlib implementation¶
Stub Registered MON_STATUS_NOT_IMPLEMENTED: the handler is a stub. mon_dispatch() in src/core/mon_dispatch.c reports the call as unimplemented without calling it.
| Handler | mon_267B_TimeOut |
| Code lines | 7 (non-blank, non-comment lines in the file) |
Source¶
SINTRAN III Monitor Calls (ND-860228.2 EN), page 541.