INTEGER A$BUF(200) INTEGER PRIME0(180) INTEGER FILEN0(180) INTEGER BINARY(180) INTEGER LISTI0(180) INTEGER GETARG,LENGTH,INDEX,FILTST INTEGER I,J INTEGER PARSCL INTEGER AAAAA0(30) INTEGER AAAAB0(5) INTEGER AAAAC0(5) INTEGER CTOC INTEGER CTOC INTEGER AAAAD0(15) INTEGER AAAAE0(15) INTEGER AAAAF0(25) INTEGER AAAAG0(11) INTEGER AAAAH0(12) INTEGER AAAAI0(13) INTEGER AAAAJ0(3) DATA AAAAA0/226,188,239,240,244,160,243,244,242,190,160,236,188,23 *9,240,244,160,243,244,242,190,160,227,188,230,236,225,231,190,0/ DATA AAAAB0/170,243,174,226,0/ DATA AAAAC0/170,243,174,236,0/ DATA AAAAD0/170,243,186,160,227,225,238,167,244,160,239,240,229,23 *8,0/ DATA AAAAE0/195,195,160,173,206,207,195,207,206,214,197,210,212,16 *0,0/ DATA AAAAF0/195,195,160,173,206,207,195,207,206,214,197,210,212,16 *0,173,195,200,197,195,203,207,213,212,160,0/ DATA AAAAG0/173,201,206,208,213,212,160,170,243,160,0/ DATA AAAAH0/173,194,201,206,193,210,217,160,170,243,160,0/ DATA AAAAI0/173,204,201,211,212,201,206,199,160,170,243,160,0/ DATA AAAAJ0/170,238,0/ IF((PARSCL(AAAAA0,A$BUF).NE.-3))GOTO 10000 CALL ERROR('usage: xcc [-c] [-b []] [-l []].') 10000 IF((GETARG(2,FILEN0,180).NE.-1))GOTO 10002 IF((GETARG(1,FILEN0,180).EQ.-1))GOTO 10002 GOTO 10001 10002 CALL ERROR('usage: xcc [-c] [-b []] [-l []].') 10001 I=LENGTH(FILEN0) J=INDEX(FILEN0,174) IF((J.NE.I-1))GOTO 10003 IF((FILEN0(I).EQ.227))GOTO 10003 CALL ERROR('xcc: source program must be in a @.c file.') GOTO 10004 10003 IF((J.EQ.0))GOTO 10005 FILEN0(I-1)=0 10005 CONTINUE 10004 CALL ENCODE(BINARY,180,AAAAB0,FILEN0) CALL ENCODE(LISTI0,180,AAAAC0,FILEN0) IF((J.NE.0))GOTO 10006 I=I+(2) 10006 FILEN0(I-1)=174 FILEN0(I)=227 FILEN0(I+1)=0 IF((A$BUF(226-225+1).EQ.2))GOTO 10007 A$BUF(226-225+27)=A$BUF(53) A$BUF(53)=A$BUF(53)+(1+CTOC(BINARY,A$BUF(A$BUF(53)),200)) 10007 IF((A$BUF(236-225+1).EQ.2))GOTO 10008 A$BUF(236-225+27)=A$BUF(53) A$BUF(53)=A$BUF(53)+(1+CTOC(LISTI0,A$BUF(A$BUF(53)),200)) 10008 IF((A$BUF(226-225+1).EQ.0))GOTO 10009 CALL CTOC(A$BUF(A$BUF(226-225+27)),BINARY,180) 10009 IF((A$BUF(236-225+1).EQ.0))GOTO 10010 CALL CTOC(A$BUF(A$BUF(236-225+27)),LISTI0,180) 10010 IF((FILTST(FILEN0,0,0,1,0,1,0,0).NE.0))GOTO 10011 CALL PRINT(-15,AAAAD0,FILEN0) CALL ERROR('.') 10011 IF((A$BUF(227-225+1).NE.0))GOTO 10012 CALL PRINT(-11,AAAAE0) GOTO 10013 10012 IF((A$BUF(226-225+1).NE.0))GOTO 10014 IF((A$BUF(236-225+1).NE.0))GOTO 10014 CALL PRINT(-11,AAAAF0) GOTO 10015 10014 CALL ERROR('xcc: -c disallows -b and -l.') 10015 CONTINUE 10013 CALL TREEN0(FILEN0,PRIME0) CALL PRINT(-11,AAAAG0,PRIME0) CALL TREEN0(BINARY,PRIME0) CALL PRINT(-11,AAAAH0,PRIME0) IF((A$BUF(236-225+1).EQ.0))GOTO 10016 CALL TREEN0(LISTI0,PRIME0) CALL PRINT(-11,AAAAI0,PRIME0) 10016 CALL PRINT(-11,AAAAJ0) CALL SWT END SUBROUTINE TREEN0(PATH,PRIMF0) INTEGER PATH(1),PRIMF0(1) INTEGER TEMP1(102),TEMP2(102) CALL EXPAND(PATH,TEMP1,102) CALL MKTR$(TEMP1,TEMP2) CALL CTOC(TEMP2,PRIMF0,102) RETURN END C ---- Long Name Map ---- C primefile prime0 C filename filen0 C primepath primf0 C listing listi0 C treename treen0