SUBROUTINE MAIN INTEGER LEVEL, DESC, DEPTH, PTR(5), J, I, STATUS, NXTCOL, JUNK, PA *T(132) INTEGER OPENDR, GETPAT, GDRPRM, LENGTH, MATCH, GETARG, GTFTOK, IMP *UT, IMGET LOGICAL*1 PPATH(36), FILE(36), BUF(36), OBUF(402) INTEGER MEM( 5000) LOGICAL*1 CMEM(10000) INTEGER SARRAY INTEGER IMINIT LOGICAL*1 DEFPAT(2) LOGICAL*1 ST001Z(22) LOGICAL*1 ST002Z(34) LOGICAL*1 ST003Z(16) LOGICAL*1 ST004Z(34) COMMON /CDSMEM/ MEM EQUIVALENCE (CMEM(1),MEM(1)) DATA DEFPAT(1)/37/,DEFPAT(2)/0/ DATA ST001Z(1)/117/,ST001Z(2)/115/,ST001Z(3)/97/,ST001Z(4)/103/,ST *001Z(5)/101/,ST001Z(6)/58/,ST001Z(7)/32/,ST001Z(8)/32/,ST001Z(9)/1 *02/,ST001Z(10)/100/,ST001Z(11)/32/,ST001Z(12)/91/,ST001Z(13)/112/, *ST001Z(14)/97/,ST001Z(15)/116/,ST001Z(16)/104/,ST001Z(17)/93/,ST00 *1Z(18)/32/,ST001Z(19)/46/,ST001Z(20)/46/,ST001Z(21)/46/,ST001Z(22) */0/ DATA ST002Z(1)/69/,ST002Z(2)/114/,ST002Z(3)/114/,ST002Z(4)/111/,ST *002Z(5)/114/,ST002Z(6)/32/,ST002Z(7)/105/,ST002Z(8)/110/,ST002Z(9) */105/,ST002Z(10)/116/,ST002Z(11)/105/,ST002Z(12)/97/,ST002Z(13)/10 *8/,ST002Z(14)/105/,ST002Z(15)/122/,ST002Z(16)/105/,ST002Z(17)/110/ *,ST002Z(18)/103/,ST002Z(19)/32/,ST002Z(20)/105/,ST002Z(21)/110/,ST *002Z(22)/45/,ST002Z(23)/109/,ST002Z(24)/101/,ST002Z(25)/109/,ST002 *Z(26)/111/,ST002Z(27)/114/,ST002Z(28)/121/,ST002Z(29)/32/,ST002Z(3 *0)/115/,ST002Z(31)/111/,ST002Z(32)/114/,ST002Z(33)/116/,ST002Z(34) */0/ DATA ST003Z(1)/73/,ST003Z(2)/108/,ST003Z(3)/108/,ST003Z(4)/101/,ST *003Z(5)/103/,ST003Z(6)/97/,ST003Z(7)/108/,ST003Z(8)/32/,ST003Z(9)/ *112/,ST003Z(10)/97/,ST003Z(11)/116/,ST003Z(12)/116/,ST003Z(13)/101 */,ST003Z(14)/114/,ST003Z(15)/110/,ST003Z(16)/0/ DATA ST004Z(1)/84/,ST004Z(2)/111/,ST004Z(3)/111/,ST004Z(4)/32/,ST0 *04Z(5)/109/,ST004Z(6)/97/,ST004Z(7)/110/,ST004Z(8)/121/,ST004Z(9)/ *32/,ST004Z(10)/102/,ST004Z(11)/105/,ST004Z(12)/108/,ST004Z(13)/101 */,ST004Z(14)/115/,ST004Z(15)/32/,ST004Z(16)/102/,ST004Z(17)/111/,S *T004Z(18)/114/,ST004Z(19)/32/,ST004Z(20)/105/,ST004Z(21)/110/,ST00 *4Z(22)/45/,ST004Z(23)/109/,ST004Z(24)/101/,ST004Z(25)/109/,ST004Z( *26)/111/,ST004Z(27)/114/,ST004Z(28)/121/,ST004Z(29)/32/,ST004Z(30) */115/,ST004Z(31)/111/,ST004Z(32)/114/,ST004Z(33)/116/,ST004Z(34)/0 */ CALL QUERY(ST001Z) LEVEL = 0 CALL INPACK(NXTCOL, 80, OBUF, 2) 23000 CONTINUE LEVEL = LEVEL + 1 STATUS = GETARG(LEVEL, PPATH, 36) IF (.NOT.(STATUS .EQ. -1 .AND. LEVEL .GT. 1))GOTO 23003 GOTO 23002 23003 CONTINUE IF (.NOT.(STATUS .EQ. -1))GOTO 23005 CALL GWDIR(PPATH, 5) 23005 CONTINUE 23004 CONTINUE SARRAY = IMINIT(5000, 12) IF (.NOT.(SARRAY .EQ. 0))GOTO 23007 CALL ERROR(ST002Z) 23007 CONTINUE CALL STRCPY(DEFPAT, FILE) IF (.NOT.(OPENDR(PPATH, DESC) .EQ. -3))GOTO 23009 CALL STRCPY(PPATH, BUF) CALL MKPATH(BUF, PPATH) CALL EXPPTH(PPATH, DEPTH, PTR, BUF) J = PTR(DEPTH) JUNK = GTFTOK(PPATH, J, FILE) J = PTR(DEPTH) PPATH(J) = 0 IF (.NOT.(OPENDR(PPATH, DESC) .EQ. -3))GOTO 23011 CALL CANT(PPATH) 23011 CONTINUE 23009 CONTINUE CALL FOLD(FILE) IF (.NOT.(GETPAT(FILE, PAT) .EQ. -3))GOTO 23013 CALL ERROR(ST003Z) 23013 CONTINUE 23015 IF (.NOT.(GDRPRM(DESC, FILE) .NE. -1))GOTO 23016 I = LENGTH(FILE) + 1 FILE(I) = 10 FILE(I+1) = 0 CALL FOLD(FILE) IF (.NOT.(MATCH(FILE, PAT) .EQ. 1))GOTO 23017 FILE(I) = 0 IF (.NOT.(IMPUT(SARRAY, FILE) .EQ. -3))GOTO 23019 CALL REMARK(ST004Z) GOTO 23016 23019 CONTINUE 23017 CONTINUE GOTO 23015 23016 CONTINUE CALL CLOSDR(DESC) CALL IMSORT(SARRAY) 23021 IF (.NOT.(IMGET(SARRAY, FILE) .NE. -1))GOTO 23022 CALL DOPACK(FILE, NXTCOL, 80, OBUF, 2) GOTO 23021 23022 CONTINUE CALL FLPACK(NXTCOL, 80, OBUF, 2) 23001 GOTO 23000 23002 CONTINUE RETURN END