	.title	delay60 Pause for some length of time
	.sbttl	Documentation
;
;	This procedure provides a user-defined delay for such programs
;	as EYE to use, to avoid interference with the RTL.
;	default delay is previously set time. If no previous time
;	was set the default is 1 minute.
;
;	Eric F. Richards, 20-May-84
;
;	Calling format (from FORTRAN)
;
;		For default delay:	CALL delay60
;		To set a delay:		CALL delay60('--ascii system time--')
;
	defsecs = 60			; default second count
;
	.ident	/V1.04/
	.disable traceback, debug
	.sbttl	Main Code
	.psect	$code, nowrt, exe, long, pic, shr
	.entry delay60, 0		; entry point DELAY60, no regs saved
	tstw	(ap)			; any args supplied?
	beql	5$			; no: same time as before
	$bintim_s timbuf = @4(ap), -	; set time for wait as specified
		  timadr = qtime	; and write it into buffer
	blbc	r0, 10$			; on error go back...
5$:	$schdwk_s daytim = qtime	; set a wakeup, 
	blbc	r0, 10$			; on error go back...
	$hiber_s			; and fall asleep
10$:	ret				; all done, you can go on now...

	.psect	$local, long, noexe, wrt, pic
qtime:	.long	-10*1000*1000*defsecs	; time buffer with delay
	.long	-1			; built in...
	.end
