	.TITLE LTSH
	.GLOBL LTSH,%START,%STOP,%ENTER
/LOAD TIMER ONCE AND SET HANDLER SUBROUTINE
/EXECUTION TIME:  81 TO 96 MICROSECONDS
/CALLING SEQUENCE:  CALL LTSH(TIME,HANDLER,ERROR)
/   TIME:  POSITIVE INTEGER CLOCK INTERVAL
/          (IN UNITS OF 16 2/3 MILLISECONDS)
/   HANDLER:  PARAMETERLESS FORTRAN IV SUBROUTINE NAME
/             (CLOCK INTERRUPT HANDLER)
/   ERROR=0:  NO ERROR
/        =1:  TIME NOT > 0
LTSH	0
	ISZ LTSH
	LAC* LTSH
	DAC TIME
	SPA
	LAC* TIME	/INDIRECT
	DAC TIME	/INTERVAL LOCATION
	ISZ LTSH
	LAC* LTSH
	DAC HANDLER
	SPA
	LAC* HANDLER	/INDIRECT
	DAC HANDLER	/USER SUBROUTINE
	ISZ LTSH
	LAC* LTSH
	DAC ERROR
	SPA
	LAC* ERROR	/INDIRECT
	DAC ERROR
	DZM* ERROR	/ERROR=0
	ISZ LTSH	/BUMP TO EXIT
	LAC* TIME
	SPA!SNA
	JMP ERROR1	/TIME NOT > 0
	JMS* %START	/START THE CLOCK
	LAC* TIME	/DESIRED INTERVAL
	JMS* %ENTER	/NOTIFICATION REQUEST
	CLOCK
	JMP* LTSH
CLOCK	0
	JMS* %STOP	/STOP THE CLOCK
	JMS* HANDLER	/GO TO USER
	JMP* CLOCK
ERROR1	ISZ* ERROR	/ILLEGAL TIME REQUESTED
	JMP* LTSH
TIME
HANDLER
ERROR
	.END
