File ENDTSS.PA (PAL assembler source file)

Directory of image this file is from
This file as a plain text file

/END TIME SHARING				27-AUG-79
/
/THIS PROGRAM SEND MESSAGES TO EACH TERMINAL TELLING THE
/OPERATOR TO LOG OFF ASAP..... WHEN NO JOBS ARE LOGED IN
/OTHER THAN THE CONSOLE OR 5 MIN IS UP....TIME SHARING WILL END
/
	/DEFINATIONS
/
	TSS=6111	/SKIP IF IN TIME SHARING
	SPR=6125	/READ SYSTEM PARAMETERS
	TALK=6124	/SEND MESSAGE TO ANOTHER TERMINAL
	RSA=6123	/RETURN TO STAND ALONE OPERATION
	STM=6121	/SUSPEND TASK
/
	*20
/
BUF,	ZBLOCK 4
CLKCNT,	ZBLOCK 2
/
/
	*200
/
	CLL CLA
	TSS		/ARE WE IN TIME SHARING
	JMP EXIT	/NOT SO PROGRAM IS INVALID
	SPR		/READ THE SYSTEM PARAMETERS
	BUF		/INTO BUF
	CLL CLA CMA	/SET AC = -1
	TAD BUF		/GET THE TASK NO....
	SZA CLA		/MUST BE TASK ONE
	JMP EXIT
	TAD BUF+2
	AND (1700
	SNA CLA		/IF NO JOBS ARE ACTIVE EXIT
	JMP ENDTSS	/DO IT NOW....!!!!!
	JMS GMSG	/GIVE 1 ST 5 MIN WARNING
	DECIMAL
	4
	3945		/CLOCK FOR 3 MIN SUSPENSION
	OCTAL
	TXMS1		/FIRST WARING MESSAGE
	SPR		/READ THE BUFFER AGAIN
	BUF
	TAD BUF+2
	AND (1700
	SNA CLA		/IF NO JOBS ARE ACTIVE EXIT
	JMP ENDTSS	/DO IT NOW....!!!!!
	JMS GMSG	/GIVE 2 ND  WARNING
	DECIMAL
	1
	1904		/CLOCK FOR 1 MIN SUSPENSION
	OCTAL
	TXMS2		/FIRST WARING MESSAGE
	SPR
	BUF		/READ THE STATUS AGAIN
	TAD BUF+2
	AND (1700
	SNA CLA		/IF NO JOBS ARE ACTIVE EXIT
	JMP ENDTSS	/DO IT NOW....!!!!!
	JMS GMSG	/GIVE  1 MIN WARNING
	DECIMAL
	0
	3000		/CLOCK FOR 3 SEC SUSPENSION
	OCTAL
	TXMS3		/FIRST WARING MESSAGE
/
ENDTSS,	JMS I (PTXT
	TXMSG5		/TIME SHARING IS NOW OVER!
	RSA		/RETURN TO OS 8
/
EXIT,	CIF CDF 0
	JMP I (7600	/RETURN TO MONITOR
/
	PAGE

GMSG, 0 TAD I GMSG /GET THE HIGH ORDER TIME DCA CLKCNT ISZ GMSG TAD I GMSG DCA CLKCNT+1 ISZ GMSG TAD I GMSG DCA .+2 JMS I (PTXT NOP STM /SUSPEND FOR THE TIME BEING CLKCNT /AMOUNT OF TIME TO SUSPEND FOR ISZ GMSG JMP I GMSG /GO BACK FOR THE NEXT ONE / /TEXT UNPACKING AND OUTPUTTING ROUTINE. /ASSUMES CALLING FIELD IS DATA FIELD AND THAT THE TEXT /TO BE PRINTED IS IN THAT FIELD. /SAVES CONTENTS OF THE AC. AND MQ. / PTXT, 0 TAD I PTXT /GET POINTER DCA COL ISZ PTXT /ADVANCE RETURN POINTER PXT, TAD I COL /GET 1 WORD BSW JMS PTST /UNPACK,TEST,PRNT TAD I COL JMS PTST /UNPACK,TEST,PRNT ISZ COL JMP PXT /GET NXT PNT STRA, CLL CLA JMP I PTXT / PTST, 0 /UNPACK,TEST,PRNT AND (77 /NO. IN AC SO MASK IT MQL /TEMP SAVE IT MQA /GET IS AGAIN & TEST IT SNA /WAS IT ZERO ?? JMP STRA /JMP OUT FINISHED !! TAD (-43 /FOR A LINE FEED '#' IMPLIES L.F. SZA CLA JMP PTSA TAD (212 /DO THE LINE FEED FIRST JMS TERM /OUTPUT IT TAD (215 /NOW MAKE IT A RETURN JMS TERM /OUTPUT IT CLA JMP I PTST /GET NXT CHARCTER PTSA, MQA AND (40 /WAS IT A NUMBER ? SNA CLA /NON ZERO = NUMBER TAD (100 /CONVER TO ASCII TAD (200 MQA /PUT IN CHARCTER PART NOW JMS TERM /OUTPUT IT JMP I PTST / COL, 0 / / TERM, 0 TAD (1000 /SEND FIRST TO TERM 1 TALK NOP TAD (1000 /SEND NO TO TERM 2 TALK NOP TAD (1000 /SEND TO TERM 3 TALK NOP TAD (1000 /SEND TO TERM 4 TALK NOP CLL CLA JMP I TERM / PAGE
TXMSG5, TEXT *TIME SHARING IS NOW OVER !!!!!!!#######* TXMSG4, TEXT *##OPERATOR; PLEASE LOGOFF....TIME SHARING ENDS IN 30 SECONDS !##* TXMS3, TEXT *##OPERATOR; PLEASE LOGOFF....TIME SHARING ENDS IN 1 MINUTE !##* TXMS2, TEXT *##OPERATOR; PLEASE LOGOFF....TIME SHARING ENDS IN 2 MINUTES !##* TXMS1, TEXT *##OPERATOR; PLEASE LOGOFF....TIME SHARING ENDS IN 5 MINUTES !##*



Feel free to contact me, David Gesswein djg@pdp8online.com with any questions, comments on the web site, or if you have related equipment, documentation, software etc. you are willing to part with.  I am interested in anything PDP-8 related, computers, peripherals used with them, DEC or third party, or documentation. 

PDP-8 Home Page   PDP-8 Site Map   PDP-8 Site Search