(* SWAPPING PASCAL COMPILER INCLUDE FILES *) (*$C COPYRIGHT (C) 1978 REGENTS UCSD I.5.A.1*) (*$T+*) (*$S+*) (*$I COMPGLBLS.TEXT*) (*$I COMPINIT.TEXT*) (*$I DECPART.A.TEXT*) (*$I DECPART.B.TEXT*) (*$I DECPART.C.TEXT*) (*$I BODYPART.A.TEXT*) (*$I BODYPART.B.TEXT*) (*$I BODYPART.C.TEXT*) (*$I BODYPART.D.TEXT*) (*$I BODYPART.E.TEXT*) (*$I UNITPART.TEXT*) (*$I PROCS.A.TEXT*) (*$I PROCS.B.TEXT*) (*$I BLOCK.TEXT*) BEGIN (* PASCALCOMPILER *) COMPINIT; TIME(LGTH,LOWTIME); BLOCK(BLOCKBEGSYS+STATBEGSYS-[CASESY]); IF SY <> PERIOD THEN ERROR(21); IF LIST THEN BEGIN SCREENDOTS := SCREENDOTS+1; SYMBUFP^[SYMCURSOR] := CHR(EOL); SYMCURSOR := SYMCURSOR+1; PRINTLINE END; USERINFO.ERRBLK := 0; TIME(LGTH,STARTDOTS); LOWTIME := STARTDOTS-LOWTIME; UNITWRITE(3,IC,7); IF DLINKERINFO OR CLINKERINFO THEN BEGIN SEGTABLE[SEG].SEGKIND := 1; WRITELINKERINFO(TRUE) END; CLOSE(LP,LOCK); IF NOISY THEN WRITELN(OUTPUT); WRITE(OUTPUT,SCREENDOTS,' lines'); IF LOWTIME > 0 THEN WRITE(OUTPUT,', ',(LOWTIME+30) DIV 60,' secs, ', ROUND((3600/LOWTIME)*SCREENDOTS),' lines/min'); IF NOISY THEN BEGIN WRITELN(OUTPUT); WRITE(OUTPUT,'Smallest available space = ',SMALLESTSPACE,' words'); END; IC := 0; FOR SEG := 0 TO MAXSEG DO WITH SEGTABLE[SEG] DO BEGIN GENWORD(DISKADDR); GENWORD(CODELENG) END; FOR SEG := 0 TO MAXSEG DO WITH SEGTABLE[SEG] DO FOR LGTH := 1 TO 8 DO GENBYTE(ORD(SEGNAME[LGTH])); FOR SEG := 0 TO MAXSEG DO GENWORD(SEGTABLE[SEG].SEGKIND); FOR SEG := 0 TO MAXSEG DO GENWORD(SEGTABLE[SEG].TEXTADDR); FOR LGTH := 1 TO 80 DO IF COMMENT <> NIL THEN GENBYTE(ORD(COMMENT^[LGTH])) ELSE GENBYTE(0); FOR LGTH := 1 TO 256 - 8*(MAXSEG + 1) - 40 DO GENWORD(0); CURBLK := 0; CURBYTE := 0; WRITECODE(TRUE) END (* PASCALCOMPILER *) ; BEGIN (* SYSTEM *) END. { +------------------------------------------------------------------+ | | | F I N I S | | | +------------------------------------------------------------------+ }