.MCALL .MODULE .MODULE ISLEEP,VERSION=03,COMMENT=,IDENT=NO,LIB=YES ; Copyright (c) 1998 by Mentec, Inc., Nashua, NH. ; All rights reserved ; ; This software is furnished under a license for use only on a ; single computer system and may be copied only with the ; inclusion of the above copyright notice. This software, or ; any other copies thereof, may not be provided or otherwise ; made available to any other person except for use on such ; system and to one who agrees to these license terms. Title ; to and ownership of the software shall at all times remain ; in Mentec, Inc. ; ; The information in this document is subject to change without ; notice and should not be construed as a commitment by Digital ; Equipment Corporation, or Mentec, Inc. ; ; Digital and Mentec assume no responsibility for the use or ; reliability of its software on equipment which is not supplied ; by Digital or Mentec, and listed in the Software Product ; Description. .SBTTL ISLEEP - FORTRAN CALLABLE SUBROUTINE ; ; CALL ISLEEP( IHRS, IMIN, ISEC, ITCK ) ; ; SUSPENDS EXECUTION OF THE MAINLINE CODE OF THIS JOB ; FOR THE AMOUNT OF TIME SPECIFIED BY THE ARGUMENTS. ; ; ERRORS ARE POSSIBLE. ; 0 NORMAL ; 1 NO QUEUE ELEMENT ; ; MAS .PSECT SYS$I .GLOBL $SYSLB ; Include system library work area. .GLOBL $TIME$ SLEEP:: ISLEEP::TST (R5)+ ;SKIP ARGUMENT COUNT JSR PC,$TIME$ ;CONVERT ARGS -> (R0,R1) TIME MOV R1,-(SP) ;STACK TIME MOV R0,-(SP) MOV SP,R0 MOV R0,-(SP) ;STAY MACHINE-INDEPENDANT MOV #24*400,-(SP) ;SET .TWAIT CODE MOV SP,R0 ;R0 -> ARG BLOCK EMT 375 ;.TWAIT BIC R0,R0 ;R0=0 ADC R0 ;C=1 IF ERROR ADD #10,SP ;POP ARG BLOCK RTS PC .END