Google
 

Trailing-Edge - PDP-10 Archives - bb-bt99g-bb - algfun.c08
There are 14 other files named algfun.c08 in the archive. Click here to see a list.
 REP 3/1	;08C1
	;COPYRIGHT (C) 1975,1981,1982 BY
 WIT
	;COPYRIGHT (C) 1975,1982,1983 BY
 INS 15/62	;08C2
		  IF SYM IS IN A NON-ZERO AC	;[352]
	EDT352:			TRNE	SYM,-1	;[352] ANY LOCATION ASSIGNED TO SYM?
				TRNE	SYM,^-17 ;[352] IS IT AN AC?
				 JRST	FALSE	;[352] NO TO EITHER ONE
		  THEN			;[352] YES, CHECK FOR POSSIBLE AC CONFLICT
		    BEGIN		;[352] AND POKE LAC IF NECESSARY.  THEN LET
		      IF; AC CONFLICT	;[352] GLOAD FIGURE OUT WHAT AC TO USE
				PUSH	SP,SYM	;[352] SAVE SYM FOR A MOMENT
				HRLI	SYM,0	;[352] SYM HAS ONLY AC NUMBER NOW
				SUB	SYM,LAC	;[352] SPACE UNTIL AC CONFLICT
				SKIPGE	SYM	;[352] NO CONFLICT IF SYM .GE. LAC
				CAMGE	SYM,[-3];[352] L.R. WANTS 3 AC'S, OTHERS LESS
				 JRST	FALSE	;[352] NO CONFLICT POSSIBLE, OK
		      THEN; LAC := AC(SYM)	;[352] POKE LAC SO GLOAD ALLOCATES OK
				POP	SP,SYM	;[352] RESTORE SYM
				HRRM	SYM,LAC	;[352] AND SET LAC
		      ELSE; RESTORE SYM	;[352]
				POP	SP,SYM	;[352]
		      FI		;[352]
		    ENDD		;[352]
		  FI			;[352]
 SUM 134526