File KREF.AS (Source fil)

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

11 	START	;K R E F --CROSS REFERENCE PROGRAM
21 		
31 ;DIGITAL EQUIPMENT CORPORATION
41 ;MAYNARD, MASS.  01754
51   
61 ;THIS SOFTWARE IS FURNISHED TO PURCHASER UNDER A LICENSE FOR USE
71 ;ON A SINGLE COMPUTER SYSTEM AND CAN BE COPIED (WITH INCLUSION
81 ;OF DEC'S COPYRIGHT NOTICE) ONLY FOR USE IN SUCH SYSTEM, EXCEPT 
91 ;AS MAY OTHERWISE BE PROVIDED IN WRITING BY DEC.
101   
111 ;THE INFORMATION IN THIS DOCUMENT IS SUBJECT TO CHANGE WITHOUT
121 ;NOTICE AND SHOULD NOT BE CONSTRUED AS A COMMITMENT 
131 ;BY DIGITAL EQUIPMENT CORPORATION.
141   
151 ;DEC ASSUMES NO RESPONSIBILITY FOR THE USE OR RELIABILITY OF
161 ;ITS SOFTWARE ON EQUIPMENT WHICH IS NOT SUPPLIED BY DEC.
171 	START	;FLOWCHART CROSS REFERENCE PROGRAM 
181 ;...		TITLE	;FLOWCHART CROSS REFERENCE PROGRAM
191 	RECORD	INPUT 
201 SRTLBL,	A6
211 SRTPGE,	D3
221 DEFREF,	A1
231   
241 	RECORD	OUT 
251 LABEL, A6 
261 ,	A2
271 REF,	14A5 
281   
291 	BLOCK
301 OLDLBL,	A6
311 CTR,	D2 
321 LNECTR,	D2,99 
331 MAXCTR,	D2,54 
341   
351 	BLOCK
361 SRTPGA,	A3
371 DFRF,	A1
381 ,	A1
391 	BLOCK	,X 
401 RF,	A5
411 	PROC	1	;MAIN KREF LOOP 
421 ;...		SBTTL	;MAIN KREF LOOP 
431   
441 ;...		DISK		;OPEN $KREF FOR INPUT 
451 ;...	LOOP,	DISK		;READ A KREF RECORD
461 ;...		IF YES:EOF	;END OF FILE?
471 ;...		IF YES:SAMELB	;SAME AS LAST LABEL?
481 ;...		CALL PRINT	;PRINT CURRENT LINE
491 ;...		PROC		;SET UP NEW LABEL AS OLD LABEL
501 ;...	SAMELB, IF NO:SAMELN	;IS THIS LINE FULL? 
511 ;...		CALL PRINT	;PRINT CURRENT LINE
521 ;...	SAMELN, IF NO:LOOP	;IS PAGE # NUMERIC? 
531 ;...		PROC		;ADD REFERENCE TO PRINT LINE
541 ;...		GOTO LOOP 
551 	INIT(1,I,'$KREF',2)
561 LOOP,	XMIT(1,INPUT,EOF) 
571 	IF(SRTLBL.EQ.OLDLBL)GO TO SAMELB 
581 	CALL PRINT 
591 	OLDLBL=SRTLBL
601 	LABEL=SRTLBL 
611 SAMELB,	IF(CTR.LT.14)GO TO SAMELN 
621 	CALL PRINT 
631 SAMELN,	ON ERROR LOOP 
641 	SRTPGA=SRTPGE
651 	DFRF=DEFREF
661 	INCR CTR 
671 	REF(CTR)=RF
681 	GO TO LOOP 
691   
701 ;...	EOF,	IF YES:DONE	;LAST LINE PRINTED? 
711 ;...		CALL PRINT	;PRINT LAST LINE 
721 ;...	DONE,	DISK		;CLOSE $KREF 
731 ;...		STOP		;END OF PGM 
741 EOF,	IF(CTR.EQ.0)GO TO DONE 
751 	CALL PRINT 
761 DONE,	FINI(1) 
771 	STOP 
781 	START		;SUBROUTINES
791 ;...		SBTTL	;SUBROUTINES
801   
811 ;...		START		;PRINT LINE
821 ;...	PRINT,	IF NO:SAMEPG	;IS PAGE FULL? 
831 ;...		I/O		;OUTPUT A FORM FEED
841 ;...		PROC		;RESET LINE COUNT 
851 ;...	SAMEPG, I/O		;PRINT THE LINE 
861 ;...		PROC		;CLEAR THE PRINT BUFFER 
871 ;...		PROC		;RESET REFERENCE COUNTER
881 ;...		PROC		;INCREMENT LINE COUNT 
891 ;...		STOP		;RETURN 
901 PRINT, IF(LNECTR.LT.MAXCTR)GO TO SAMEPG 
911 	FORMS(6,0) 
921 	LNECTR=
931 SAMEPG,	XMIT(6,OUT) 
941 	OUT= 
951 	CTR= 
961 	INCR LNECTR
971 	RETURN 



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