perm filename RUNP2.SAI[PUB,TES] blob
sn#229495 filedate 1976-07-30 generic text, type C, neo UTF8
COMMENT ⊗ VALID 00005 PAGES
C REC PAGE DESCRIPTION
C00001 00001
C00002 00002 BEGOF("RUNP2")
C00003 00003 PUBLIC SIMPLE PROCEDURE INTERMEDIATEFILES $"#
C00008 00004 PUBLIC PROCEDURE RUNPASS2 $"#
C00011 00005 FINISHED
C00012 ENDMK
C⊗;
BEGOF("RUNP2")
COMMENT
*** Variations at Different Sites are Extensive ***
;
PROCEDURES
PUBLIC SIMPLE PROCEDURE INTERMEDIATEFILES ;$"#
BEGIN "INTERMEDIATEFILES"
L ← WRITEON(FALSE,IFC TENEX THENC IFILENAME&".FILES" ELSEC "PUPSEQ"&PUIEXT ENDC) ;
OUT(L, TMPFILE&ALTMODE&OUTFILE&ALTMODE&CVSR(DEBUG)&CVSR(ABS(DEVICE))&DELINT&ALTMODE) ;
OUT(L, CVSR(LOFONT)&CVSR(HIFONT)) ; TES 8/24/74 ;
FOR J ← LOFONT THRU HIFONT DO OUT(L, FNTNAME[J]&ALTMODE) ; TES 8/24/74 ;
TES 1/7/74 ;
IFC PARCVER THENC
IF ABS(DEVICE)=XGP THEN
BEGIN
CMDFILE ← NULL ;
FOR J ← 1 THRU HIFONT DO CMDFILE ← CMDFILE &
(IF NULSTR(XFNTNAME[J]) THEN "F DEFONT" & CR
ELSE "F " & XFNTNAME[J] & CR) ;
OUT(L,CMDFILE&ALTMODE)
END
ELSEC
IFC SAILVER THENC
IF ABS(DEVICE)=XGP THEN
OUT(L,CMDFILE&(IF SIMLOOK("!XGPCOMMANDS") THEN
EVALV("!XGPCOMMANDS", SYMIX, SYMTYPE) ELSE NULL)
& ALTMODE)
ELSEC
IFC ITSVER THENC PJ 8/24/74 ;
IF ABS(DEVICE)=XGP THEN
BEGIN "WRITECMD"
STRING CMDLINE; INTEGER BRC;
CMDFILE ← NULL ;
FOR J ← 1 THRU HIFONT DO CMDFILE ← CMDFILE&XFNTNAME[J]&",";
CMDFILE ← ";KSET "&CMDFILE[1 TO ∞-1]&CR;
IF SIMLOOK("!XGPCOMMANDS") THEN
BEGIN
CMDLINE←EVALV("!XGPCOMMANDS",SYMIX,SYMTYPE);
SETBREAK(LOCAL_TABLE,"↔",NULL,"IS");
DO OUT(L,SCAN(CMDLINE,LOCAL_TABLE,BRC)&CR) UNTIL BRC NEQ "↔";
SETBREAK(LOCAL_TABLE,NULL,NULL,"IS");
END;
OUT(L,CMDFILE&ALTMODE);
END "WRITECMD"
ELSEC
IFC CMUVER THENC RKJ: 6-FEB-75;
IF XCRIBL AND SIMLOOK("!XGPCOMMANDS") THEN
OUT(L,MASH(EVALV("!XGPCOMMANDS",SYMIX,SYMTYPE))&ALTMODE)
ELSEC
IF FALSE THEN BEGIN END
ENDC ENDC ENDC ENDC
ELSE OUT(L, ALTMODE) ;
OUT(L, VUNDERLINE & ALTMODE) ; TES 10/22/73 ;
OUT(L,CVSR(CHARW));
OUT(L, CVSR(IF NEEDMILLVERTI THEN -MILLVERTI ELSE MILLVERTI)) ;
TES 11/2/74 NORMAL INTER-LINE SPACING ;
OUT(L,CVSR(BASELINE));
OUT(L,CVSR(DOPASS3)); RKJ: 1-4-74;
OUT(L, CVSR(VBPI)&CVSR(HBPI)&CVSR(MINLFTMAR)) ;
OUT(L, CVSR(TOPBORDER) & CVSR(BOTTOMBORDER)) ; TES 1/26/74 ;
OUT(L,LF);
IFC TENEX THENC COMMENT PASS2 COMMUNICATION FILE ;
J←OPENFILE(JOBNO&".PASS2","WT") ;
OUT(J, IFILENAME & ALTMODE) ;
RELEASE(J) ;
ENDC
J ← PORSEQ(PORTLL) ;
IFC NOT TENEX THENC OPEN(K ← GETCHAN, "DSK", 0,1,0,20, BRC, EOF) ; ENDC
WHILE J > 0 DO
BEGIN
M← PORSTR(J) ; TES 3/20/74 ;
IF FULSTR(PORINT(M)) THEN OUT(L, PORINT(M) & ALTMODE) ;
IF PORCH(J) = -5 OR PORSEQ(J) < 0 THEN WARN("=","INSERT PORTION not found") ;
IF FULSTR(PORFIL(M)) THEN
FOR N←0,1 DO IF N=0 OR PORCH(J)=-6 THEN
BEGIN COMMENT DELETE GENERATED FILES ;
IFC TENEX THENC
K ← OPENFILE(IFILENAME&(CASE N OF (GENEXT,ALFEXT))&PORFIL(M)&";*", "RO*") ;
DO DELF(K) UNTIL NOT INDEXFILE(K) ;
ELSEC
LOOKUP(K, PORFIL(M) & (CASE N OF(PUGEXT,PUZEXT)), DUMMY) ;
RENAME(K, NULL, 0, DUMMY) ;
ENDC
END ;
J ← PORSEQ(J) ;
END ;
RELEASE(L) ; RELEASE(K) ;
END "INTERMEDIATEFILES" ;
PUBLIC PROCEDURE RUNPASS2 ;$"#
BEGIN "RUNPASS2"
IFC TENEX THENC TES 10/25/73 ;
BEGIN "PASS 2"
SETPRINT(NULL,"T"); JFR 7-30-76 SO LOG FILE GETS CLOSED;
IF (EQU(CONDIR,"PUB") OR EQU(CONDIR,"TESLER")) AND (J←GTJFN("PUB2.SAV",0))>-1 THEN
BEGIN
RLJFN(J) ;
RUNPRG("PUB2.SAV",1,0) ;
END
ELSE RUNPRG("<SUBSYS>PUB2.SAV",1,0) ;
END "PASS 2"
ENDC
IFC CMUVER THENC
BEGIN "PASS 2" TES 10/8/74 CHANGED TO CALL RUNLIBPROG ;
STRING S;
SETPRINT(NULL,"T"); JFR 7-30-76 SO LOG FILE GETS CLOSED;
S←CVXSTR(CALL('777777000003,"GETTAB"))&"2";
SETBREAK(1,NULL," ","IS");
RUNLIBPROG(SCAN(S,1,DUMMY)); RKJ: 28-SEP-74 NEW CALLING SEQUENCE ;
START!CODE CALLI 0,'12 END ;
END "PASS 2"
ENDC
IFC SAILVER OR ITSVER THENC
BEGIN "PASS 2"
IFC SAILVER
THENC DEFINE PUB2!DMP=["PUB2.DMP"];
ELSEC DEFINE PUB2!DMP=["TS PUB2"]; ENDC PJ 5/27/74 ;
INTEGER SIMPLE PROCEDURE CORELOC(INTEGER ARRAY A) ; START!CODE MOVE 1,A ; END ;
INTEGER ARRAY SECONDPASS[0:4] ;
EXTERNAL SIMPLE PROCEDURE K!OUT ; K!OUT ; COMMENT * * * * * * * * * * * ;
IFC SAILVER
THENC SETPRINT(NULL,"T"); JFR 7-30-76 SO LOG FILE GETS CLOSED;
ENDC
SECONDPASS[0] ← CVSIX("DSK") ;
SECONDPASS[1] ← CVFIL(
IFC SAILVER THENC JOBNAM&"2.DMP" ELSEC "TS "&JOBNAM&"2" ENDC
&LIBPPN, SECONDPASS[2], SECONDPASS[4]) ;
BH 3/14/75 IF PASS1 WAS NPUB PASS2 SHOULD BE NPUB2;
SECONDPASS[3] ← 1 ; COMMENT Do an RPGSTART so DEVICE will be taken from PUI file ;
CALL(CORELOC(SECONDPASS), "SWAP") ;
END "PASS 2"
ENDC
END "RUNPASS2" ;
FINISHED
ENDOF("RUNP2")