INTEGER C INTEGER OBA(1454) INTEGER OBF(1454) INTEGER OUL(1454) INTEGER OUBF(1454) INTEGER IBUF(1454) INTEGER I,IBP,OBP,NEWLI0,TOPCH0,EMPTY INTEGER PAGES0,LINEC0,OVERS0 INTEGER GETLIN INTEGER A$BUF(200) INTEGER AAAAA0 INTEGER PARSCL INTEGER AAAAB0(8) INTEGER AAAAC0(34) INTEGER AAAAD0(22) INTEGER AAAAE0(23) INTEGER AAAAF0(21) INTEGER AAAAG0(21) INTEGER AAAAH0(6) INTEGER AAAAI0(18) INTEGER AAAAJ0(23) INTEGER AAAAK0(33) INTEGER AAAAL0(15) INTEGER AAAAM0 INTEGER AAAAN0 INTEGER AAAAO0 INTEGER AAAAP0(5) INTEGER AAAAQ0(6) DATA AAAAB0/233,160,236,188,242,233,190,0/ DATA AAAAC0/213,243,225,231,229,186,160,236,250,160,219,173,233,22 *1,160,219,173,236,160,188,240,225,231,229,160,236,229,238,231,244, *232,190,221,0/ DATA AAAAD0/160,160,160,196,202,196,197,160,196,213,208,204,197,21 *6,189,217,197,211,172,170,238,0/ DATA AAAAE0/160,160,160,196,202,196,197,160,198,207,206,212,201,20 *6,196,197,216,189,176,172,170,238,0/ DATA AAAAF0/160,160,160,196,202,196,197,160,198,207,210,205,189,20 *6,207,206,197,172,170,238,0/ DATA AAAAG0/160,160,160,196,202,196,197,160,198,207,210,205,193,21 *2,189,170,243,172,170,238,0/ DATA AAAAH0/199,212,208,198,182,0/ DATA AAAAI0/160,160,160,196,202,196,197,160,194,207,198,189,170,23 *3,172,170,238,0/ DATA AAAAJ0/160,160,160,196,202,196,197,160,196,193,212,193,189,16 *8,177,172,170,233,169,172,170,238,0/ DATA AAAAK0/160,160,160,196,202,196,197,160,211,201,196,197,189,16 *8,206,213,194,193,195,203,172,206,207,198,198,211,197,212,169,172, *170,238,0/ DATA AAAAL0/160,160,160,196,202,196,197,160,197,206,196,187,170,23 *8,0/ DATA AAAAP0/177,177,170,238,0/ DATA AAAAQ0/160,170,227,170,238,0/ IF((PARSCL(AAAAB0,A$BUF).NE.-3))GOTO 10001 CALL ERROR(AAAAC0) 10001 IF((A$BUF(236-225+1).EQ.2))GOTO 10002 A$BUF(236-225+27)=87 10002 PAGES0=A$BUF(236-225+27) LINEC0=PAGES0 OVERS0=0 NEWLI0=1 TOPCH0=0 IBP=0 IBUF(1)=0 DO 10003 I=1,1454 OBA(I)=160 OBF(I)=160 OUL(I)=160 OUBF(I)=160 10003 CONTINUE 10004 CALL PRINT(-11,AAAAD0) CALL PRINT(-11,AAAAE0) CALL PRINT(-11,AAAAF0) CALL PRINT(-11,AAAAG0,AAAAH0) CALL PRINT(-11,AAAAI0,PAGES0) CALL PRINT(-11,AAAAJ0,100) CALL PRINT(-11,AAAAK0) CALL PRINT(-11,AAAAL0) 10005 OBP=0 EMPTY=1 10006 IBP=IBP+(1) C=IBUF(IBP) 10007 IF((C.NE.0))GOTO 10008 IF((GETLIN(IBUF,-10,1454).NE.-1))GOTO 10009 GOTO 10010 10009 IBP=1 C=IBUF(IBP) GOTO 10007 10008 AAAAM0=C GOTO 10011 10012 GOTO 10013 10014 AAAAA0=1 GOTO 10000 10015 LINEC0=PAGES0 GOTO 10016 10017 OBP=OBP-(1) GOTO 10016 10018 OBP=OBP+(1) GOTO 10016 10011 AAAAN0=AAAAM0-7 GOTO(10017,10019,10019,10019,10014),AAAAN0 IF(AAAAM0.EQ.32)GOTO 10018 AAAAN0=AAAAM0-135 GOTO(10017,10019,10012,10019,10014),AAAAN0 IF(AAAAM0.EQ.160)GOTO 10018 10019 IF((OR(C,128).LT.160))GOTO 10020 OBP=OBP+(1) EMPTY=0 IF((0.GE.OBP))GOTO 10021 IF((OBP.GE.1454))GOTO 10021 IF((C.NE.223))GOTO 10022 IF((OUL(OBP).NE.C))GOTO 10023 OUBF(OBP)=C GOTO 10024 10023 OUL(OBP)=C 10024 GOTO 10025 10022 IF((OBA(OBP).NE.C))GOTO 10026 OBF(OBP)=C GOTO 10027 10026 OBA(OBP)=C 10027 CONTINUE 10025 IF((TOPCH0.GE.OBP))GOTO 10028 TOPCH0=OBP 10028 CONTINUE 10021 CONTINUE 10020 CONTINUE 10016 CONTINUE GOTO 10006 10013 AAAAA0=2 GOTO 10000 10029 CONTINUE GOTO 10005 10010 CALL SWT 10000 LINEC0=LINEC0+(1) IF((LINEC0.LE.PAGES0))GOTO 10030 IF((NEWLI0.LE.0))GOTO 10031 CALL PRINT(-11,AAAAP0) OVERS0=1 NEWLI0=0 10031 LINEC0=1 10030 IF((EMPTY.NE.0))GOTO 10032 GOTO 10035 10033 NEWLI0=NEWLI0-(1) 10035 IF((NEWLI0.LE.0))GOTO 10034 CALL PRINT(-11,AAAAQ0,177) GOTO 10033 10034 AAAAO0=1 GOTO 10038 10036 AAAAO0=AAAAO0+(1) 10038 IF((AAAAO0.GT.TOPCH0))GOTO 10037 IF((OBF(AAAAO0).EQ.160))GOTO 10039 OBA(AAAAO0)=160 10039 IF((OUBF(AAAAO0).EQ.160))GOTO 10040 OUL(AAAAO0)=160 10040 IF((A$BUF(233-225+1).EQ.0))GOTO 10041 IF((OUL(AAAAO0).EQ.160))GOTO 10042 OUL(AAAAO0)=OBA(AAAAO0) OBA(AAAAO0)=160 10042 CONTINUE 10041 GOTO 10036 10037 CALL TRIM(OBA,TOPCH0) IF((OVERS0.NE.1))GOTO 10043 CALL PUTCH(171,-11) GOTO 10044 10043 CALL PUTCH(160,-11) 10044 CALL PUTCH(177,-11) CALL PUTLIN(OBA,-11) CALL CLEAR(OBA,TOPCH0) OVERS0=0 CALL TRIM(OBF,TOPCH0) IF((OBF(1).EQ.138))GOTO 10045 CALL PUTCH(171,-11) CALL PUTCH(178,-11) CALL PUTLIN(OBF,-11) 10045 CALL CLEAR(OBF,TOPCH0) CALL TRIM(OUL,TOPCH0) IF((OUL(1).EQ.138))GOTO 10046 CALL PUTCH(171,-11) IF((A$BUF(233-225+1).NE.0))GOTO 10047 CALL PUTCH(177,-11) GOTO 10048 10047 CALL PUTCH(179,-11) 10048 CALL PUTLIN(OUL,-11) 10046 CALL CLEAR(OUL,TOPCH0) CALL TRIM(OUBF,TOPCH0) IF((OUBF(1).EQ.138))GOTO 10049 CALL PUTCH(171,-11) CALL PUTCH(178,-11) CALL PUTLIN(OUBF,-11) 10049 CALL CLEAR(OUBF,TOPCH0) GOTO 10050 10032 NEWLI0=NEWLI0+(1) 10050 TOPCH0=0 GOTO 10051 10051 GOTO(10015,10029),AAAAA0 GOTO 10051 END SUBROUTINE TRIM(BUF,TOP) INTEGER BUF(1454) INTEGER TOP INTEGER I I=MIN0(TOP,1454-2) GOTO 10054 10052 I=I-(1) 10054 IF((I.LE.0))GOTO 10053 IF((BUF(I).EQ.160))GOTO 10055 GOTO 10053 10055 GOTO 10052 10053 BUF(I+1)=138 BUF(I+2)=0 RETURN END SUBROUTINE CLEAR(BUF,TOP) INTEGER BUF(1454) INTEGER TOP INTEGER I I=1 GOTO 10058 10056 I=I+(1) 10058 IF((I.GT.TOP+2))GOTO 10057 BUF(I)=160 GOTO 10056 10057 RETURN END C ---- Long Name Map ---- C newlines newli0 C topchar topch0 C linectr linec0 C overstrike overs0 C dumpbuffer dumpb0 C pagesize pages0