SUBROUTINE MAIN LOGICAL*1 BUF(400) INTEGER GETARG, OPEN INTEGER I, FILES DATA FILES /0/ I=1 23000 IF(.NOT.(GETARG(I, BUF, 400) .NE. -1))GOTO 23002 IF(.NOT.(BUF(1) .EQ. 63 .AND. BUF(2) .EQ. 0))GOTO 23003 CALL ERROR (20Husage: dspc [file].) GOTO 23004 23003 CONTINUE IF(.NOT.(BUF(1) .EQ. 45 .AND. BUF(2) .EQ. 0))GOTO 23005 INT = 1 GOTO 23006 23005 CONTINUE IF(.NOT.(BUF(1) .EQ. 45))GOTO 23007 CALL REMARK (26Hignoring invalid argument.) GOTO 23001 23007 CONTINUE INT = OPEN(BUF, 1) IF(.NOT.(INT .EQ. -3))GOTO 23009 CALL CANT(BUF) 23009 CONTINUE 23008 CONTINUE 23006 CONTINUE 23004 CONTINUE CALL SHOWC (INT) FILES = 1 IF(.NOT.(INT .NE. 1))GOTO 23011 CALL CLOSE(INT) 23011 CONTINUE 23001 I=I+1 GOTO 23000 23002 CONTINUE IF(.NOT.(FILES .EQ. 0))GOTO 23013 CALL SHOWC (1) 23013 CONTINUE RETURN END SUBROUTINE SHOWC (INT) LOGICAL*1 C, GETCH INTEGER INT 23015 IF(.NOT.(GETCH(C, INT) .NE. -1))GOTO 23016 IF(.NOT.(C .NE. 10 .AND. C .LT. 32))GOTO 23017 CALL PUTC(94) C = C + 64 23017 CONTINUE CALL PUTC(C) GOTO 23015 23016 CONTINUE RETURN END