SUBROUTINE MAIN LOGICAL*1 BUF(402) INTEGER OPEN, GETARG, LENGTH, ALLDIG INTEGER TABS(402), INT, I, K, L LOGICAL*1 ST001Z(42) 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 *00/,ST001Z(10)/101/,ST001Z(11)/116/,ST001Z(12)/97/,ST001Z(13)/98/, *ST001Z(14)/32/,ST001Z(15)/91/,ST001Z(16)/60/,ST001Z(17)/116/,ST001 *Z(18)/49/,ST001Z(19)/62/,ST001Z(20)/46/,ST001Z(21)/46/,ST001Z(22)/ *46/,ST001Z(23)/93/,ST001Z(24)/32/,ST001Z(25)/91/,ST001Z(26)/43/,ST *001Z(27)/60/,ST001Z(28)/110/,ST001Z(29)/62/,ST001Z(30)/93/,ST001Z( *31)/32/,ST001Z(32)/91/,ST001Z(33)/102/,ST001Z(34)/105/,ST001Z(35)/ *108/,ST001Z(36)/101/,ST001Z(37)/93/,ST001Z(38)/32/,ST001Z(39)/46/, *ST001Z(40)/46/,ST001Z(41)/46/,ST001Z(42)/0/ CALL QUERY(ST001Z) CALL ARGTAB(BUF) CALL SETTAB(BUF, TABS) INT = -3 I=1 23000 IF (.NOT.(GETARG(I, BUF, 402) .NE. -1))GOTO 23002 IF (.NOT.(BUF(1) .EQ. 43 .OR. ALLDIG(BUF) .EQ. 1))GOTO 23003 GOTO 23001 23003 CONTINUE IF (.NOT.(BUF(1) .EQ. 45 .AND. BUF(2) .EQ. 0))GOTO 23005 INT = 1 GOTO 23006 23005 CONTINUE INT = OPEN(BUF, 1) 23006 CONTINUE IF (.NOT.(INT .EQ. -3))GOTO 23007 CALL CANT(BUF) 23007 CONTINUE CALL DETAB (TABS, INT) IF (.NOT.(INT .NE. 1))GOTO 23009 CALL CLOSE(INT) 23009 CONTINUE 23001 I=I+1 GOTO 23000 23002 CONTINUE IF (.NOT.(INT .EQ. -3))GOTO 23011 CALL DETAB(TABS, 1) 23011 CONTINUE RETURN END SUBROUTINE DETAB (TABS, INT) INTEGER INT LOGICAL*1 GETCH LOGICAL*1 C INTEGER TABS(100) INTEGER TABPOS INTEGER COL COL = 1 23013 IF (.NOT.(GETCH(C, INT) .NE. -1))GOTO 23014 IF (.NOT.(C .EQ. 9))GOTO 23015 23017 CONTINUE CALL PUTCH(32,2) COL = COL + 1 IF (.NOT.(TABPOS(COL, TABS) .EQ. 1))GOTO 23020 GOTO 23019 23020 CONTINUE 23018 GOTO 23017 23019 CONTINUE GOTO 23016 23015 CONTINUE IF (.NOT.(C .EQ. 10))GOTO 23022 CALL PUTCH(10,2) COL = 1 GOTO 23023 23022 CONTINUE CALL PUTCH(C,2) COL = COL + 1 23023 CONTINUE 23016 CONTINUE GOTO 23013 23014 CONTINUE RETURN END