1000  REM PILOTF, 36756B, 6/74
1002  DIM A$[72],B$[72],C$[72],D$[15],E$[72],F$[72],G$[50],H$[50],I$[50]
1003  DIM K$[18],L$[26],R$[9],S$[18],Y$[7],Z$[6]
1004  DIM R[2],T[23],U[6],V[26]
1005  REM
1006  READ Z,W,T,H,Q,V,X,D$,K$,L$,M$,P$,R$
1007  DATA 0,1,2,3,4,5,6,"0123456789+-.E ","LISPURSTOSIZNUMRUN"
1008  DATA "ABCDEFGHIJKLMNOPQRSTUVWXYZ"," ","+","<>=#+-*/^"
1009  REM
1010  DEF FNL()=INT((+W)/T)+H
1011  REM
1012  PRINT "NAME OF PILOT PROGRAM ";
1013  INPUT Y$
1014  PRINT "NAME OF SCRATCH FILE  ";
1015  INPUT Z$
1016  REM
1017  FILES *,*
1018  ASSIGN Y$,1,Y1
1019  ASSIGN Z$,2,Y2
1020  REM
1025  LET S$="RETAMJUC.YNGB("
1026  LET Q=4
1027  PRINT '10'10'10;
1030  FOR F=1 TO 2
1035  IF  END #F THEN 1055
1040  FOR R=1 TO 99999.
1045  READ #F,R
1050  NEXT R
1055  LET R[F]=R-W
1060  NEXT F
1065  FOR F=1 TO 2
1070  IF R[F]<T THEN 1085
1075  NEXT F
1080  GOTO 1095
1085  PRINT "F #";F;"TOO SMALL"
1090  STOP 
1095  LET U=S1=N=Z
1105  LET F1=F=1
1110  FOR R1=W TO R[F1]
1115  READ #F1,R1
1120  IF TYP(F1)#W THEN 1180
1125  FOR N=0 TO 12
1130  IF TYP(-F1)#W THEN 1145
1135  READ #F1;S1,A$
1140  NEXT N
1145  LET U=U+N
1150  NEXT R1
1170  LET R1=R[1]
1175  GOTO 1215
1180  IF N THEN 1195
1185  LET F1=R1=W
1190  GOTO 1215
1195  LET R1=R1-W
1215  LET M=Z
1220  READ #F1,R1
1225  FOR I=W TO N
1230  READ #F1;S1,A$
1235  LET M=M+FNL(LEN(A$))
1240  NEXT I
1245  LET D=Z
1250  INPUT A$
1255  FOR K=1 TO 6
1260  IF A$[1,3]=K$[K*3-2,K*3] THEN 2900
1265  NEXT K
1270  LET K=W
1275  GOSUB 3365
1280  IF S AND S<10000 THEN 1295
1285  PRINT "????"
1290  GOTO 1250
1295  FOR J=I TO LEN(A$)
1300  IF A$[J,J]#" " THEN 1315
1305  NEXT J
1310  GOTO 2240
1315  LET A$=A$[J]
1320  LET I=W
1325  IF A$[I,I]#"*" THEN 1400
1330  FOR I=T TO LEN(A$)
1335  IF A$[I,I]=" " THEN 1385
1340  IF A$[I,I]>"Z" THEN 1375
1345  IF A$[I,I]<"0" THEN 1375
1350  IF A$[I,I] <= "9" THEN 1360
1355  IF A$[I,I]<"A" THEN 1375
1360  NEXT I
1365  PRINT "UNRECOGNIZED"
1370  GOTO 1245
1375  PRINT "LBL ERR"
1380  GOTO 1245
1385  IF I=T THEN 1375
1390  GOSUB 3320
1395  IF J THEN 1365
1400  FOR K=W TO 11
1405  IF A$[I,I]=S$[K,K] THEN 1420
1410  NEXT K
1415  GOTO 1365
1420  IF K<9 THEN 1495
1425  GOSUB 3320
1430  IF J THEN 1365
1435  IF K=9 THEN 1455
1440  IF A$[I,I]#":" THEN 1525
1445  LET K=H
1450  GOTO 1720
1455  IF A$[I,I]="D" THEN 1495
1460  LET K=V
1465  IF A$[I,I]="M" THEN 1495
1470  LET K=10
1475  IF A$[I,I]="I" THEN 1495
1480  IF A$[I,I]="X" THEN 1495
1485  IF A$[I,I]#"T" THEN 1365
1490  LET K=H
1495  GOSUB 3320
1500  IF J THEN 1365
1505  IF A$[I,I]=":" THEN 1720
1510  FOR C=10 TO 14
1515  IF A$[I,I]=S$[C,C] THEN 1535
1520  NEXT C
1525  PRINT "NO COLON"
1530  GOTO 1245
1535  GOSUB 3320
1540  IF  NOT J THEN 1555
1545  PRINT "CON ERR"
1550  GOTO 1245
1555  IF C<14 THEN 1715
1560  IF A$[I,I]<"A" THEN 1545
1565  IF A$[I,I]>"Z" THEN 1545
1570  GOSUB 3320
1575  IF J THEN 1545
1580  IF A$[I,I]=")" THEN 1705
1585  FOR C=W TO Q
1590  IF A$[I,I]=R$[C,C] THEN 1605
1595  NEXT C
1600  GOTO 1545
1605  GOSUB 3320
1610  IF J THEN 1545
1615  IF C>T THEN 1635
1620  IF A$[I,I]#"=" THEN 1635
1625  GOSUB 3320
1630  IF J THEN 1545
1635  IF A$[I,I]>"Z" THEN 1545
1640  IF A$[I,I] >= "A" THEN 1690
1645  IF A$[I,I]#"+" THEN 1675
1650  IF I=LEN(A$) THEN 1545
1655  LET A$[I]=A$[I+W]
1660  LET I=I-W
1665  GOSUB 3320
1670  IF J THEN 1545
1675  GOSUB 3460
1680  IF J OR C THEN 1545
1685  GOTO 1700
1690  GOSUB 3320
1695  IF J THEN 1545
1700  IF A$[I,I]#")" THEN 1545
1705  GOSUB 3320
1710  IF J THEN 1525
1715  IF A$[I,I]#":" THEN 1525
1720  IF K<Q THEN 2255
1725  GOSUB 3320
1730  IF K>Q THEN 1865
1735  IF J THEN 2255
1740  IF A$[I,I]#"#" THEN 1790
1745  GOSUB 3320
1750  IF  NOT J THEN 1765
1755  PRINT "OBJ ERR"
1760  GOTO 1245
1765  IF A$[I,I]<"A" THEN 1755
1770  IF A$[I,I]>"Z" THEN 1755
1775  GOSUB 3320
1780  IF J THEN 2255
1785  GOTO 1755
1790  IF A$[I,I]#"$" THEN 1755
1795  GOSUB 3320
1800  IF J THEN 1755
1805  FOR J=I TO LEN(A$)
1810  IF A$[J,J]=" " THEN 1850
1815  IF A$[J,J]>"Z" THEN 1755
1820  IF A$[J,J]<"0" THEN 1755
1825  IF A$[J,J] <= "9" THEN 1835
1830  IF A$[J,J]<"A" THEN 1755
1835  NEXT J
1840  IF J-I>50 AND K=Q THEN 1755
1845  GOTO 2255
1850  IF J-I>50 AND K=Q THEN 1755
1855  LET I=J-W
1860  GOTO 1775
1865  IF J THEN 1755
1870  IF K>V THEN 1935
1875  LET I=I+W
1880  IF I >= LEN(A$) THEN 2255
1885  IF A$[I,I]="," THEN 1895
1890  IF A$[I,I]#" " THEN 1875
1895  GOSUB 3320
1900  IF J THEN 1925
1905  IF A$[I,I]#"," THEN 1875
1910  IF A$[I-W,I-W]#" " THEN 1895
1915  LET I=I-T
1920  GOTO 1895
1925  IF A$[LEN(A$)]#" " THEN 2255
1930  GOTO 1915
1935  IF K>7 THEN 1950
1940  IF A$[I,I]#"*" THEN 1755
1945  GOTO 1795
1950  GOTO K-7 OF 1990,1955,1765
1955  FOR C=W TO T
1960  IF A$[I,I]<"0" THEN 1755
1965  IF A$[I,I]>"9" THEN 1755
1970  GOSUB 3320
1975  IF J THEN 2255
1980  NEXT C
1985  GOTO 1755
1990  LET L1=Z
1995  IF A$[I,I]<"A" THEN 1755
2000  IF A$[I,I]>"Z" THEN 1755
2005  GOSUB 3320
2010  IF J THEN 1755
2015  IF A$[I,I]#"=" THEN 1755
2020  GOSUB 3320
2025  IF J THEN 1755
2030  IF A$[I,I]<"A" THEN 2080
2035  IF A$[I,I]>"Z" THEN 1755
2040  GOSUB 3320
2045  IF J THEN 2255
2050  IF A$[I,I]="=" THEN 2020
2055  GOTO 2190
2060  PRINT "EXP ERR:  ";A$[I-W,I]
2065  GOTO 1245
2070  GOSUB 3320
2075  IF J THEN 2060
2080  IF A$[I,I]="-" THEN 2165
2085  IF A$[I,I]#"+" THEN 2110
2090  IF I=LEN(A$) THEN 2060
2095  LET A$[I]=A$[I+W]
2100  LET I=I-W
2105  GOTO 2070
2110  IF A$[I,I]<"A" THEN 2120
2115  IF A$[I,I] <= "Z" THEN 2180
2120  IF A$[I,I]#"(" THEN 2135
2125  LET L1=L1+W
2130  GOTO 2070
2135  LET L=C=W
2140  GOSUB 3490
2145  IF C THEN 2060
2150  IF J THEN 2225
2155  LET I=I-W
2160  GOTO 2180
2165  GOSUB 3320
2170  IF J THEN 2060
2175  GOTO 2110
2180  GOSUB 3320
2185  IF J THEN 2225
2190  FOR K=V TO 9
2195  IF A$[I,I]=R$[K,K] THEN 2165
2200  NEXT K
2205  IF A$[I,I]#")" THEN 2060
2210  LET L1=L1-W
2215  IF L1<Z THEN 2230
2220  GOTO 2180
2225  IF L1=Z THEN 2255
2230  PRINT "PAR ERR"
2235  GOTO 1245
2240  LET D=W
2245  IF S>S1 THEN 1245
2250  GOTO 2350
2255  LET L=FNL(LEN(A$))
2260  IF S <= S1 THEN 2350
2265  IF N<13 AND M+L <= 256 THEN 2320
2270  IF R1<R[F1] THEN 2305
2280  PRINT "FILES FULL"
2285  GOTO 1215
2305  LET R1=R1+W
2310  READ #F1,R1
2315  LET N=M=Z
2320  PRINT #F1;S,A$
2325  LET S1=S
2330  LET N=N+W
2335  LET U=U+W
2340  LET M=M+L
2345  GOTO 1245
2350  IF S<S1 THEN 2390
2360  LET I=R1
2365  GOTO 2410
2390  LET I=INT((R1+1)/2)
2395  READ #1,I;S4
2400  IF S >= S4 THEN 2410
2405  LET I=W
2410  PRINT #2,2; END 
2415  FOR R=I TO R[1]
2420  READ #F,R
2425  PRINT #2,1
2430  LET L1=J=Z
2435  IF TYP(-F)#W THEN 2475
2440  READ #F;S4,B$
2445  LET L2=FNL(LEN(B$))
2450  IF S4 >= S THEN 2480
2455  PRINT #2;S4,B$
2460  LET L1=L1+L2
2465  LET J=J+W
2470  GOTO 2435
2475  NEXT R
2480  LET C=W
2485  IF D THEN 2720
2490  IF R1<R[1] THEN 2500
2495  LET D=W
2500  IF L1+L <= 256 THEN 2520
2505  IF D THEN 2280
2510  READ #2,2
2515  LET L1=J=Z
2520  PRINT #2;S,A$
2525  LET J=J+W
2530  LET L1=L1+L
2535  IF S4>S THEN 2550
2540  IF L2>L THEN 2720
2545  GOTO 2585
2550  IF L1+L2<256 AND J<13 THEN 2570
2555  IF D THEN 2280
2560  READ #2,2
2565  LET L1=J=Z
2570  PRINT #2;S4,B$
2575  LET L1=L1+L2
2580  LET J=J+W
2585  IF TYP(-F)#W THEN 2640
2590  READ #F;S4,B$
2595  LET L2=FNL(LEN(B$))
2600  IF L1+L2 <= 256 AND J<13 THEN 2620
2605  IF D THEN 2280
2610  PRINT #2,3-C
2615  LET L1=J=Z
2620  PRINT #2;S4,B$
2625  LET L1=L1+L2
2630  LET J=J+W
2635  GOTO 2585
2640  GOSUB 3415
2645  LET C=H-C
2650  READ #2,C
2655  LET L1=J=Z
2660  IF TYP(-2)#1 THEN 2685
2665  READ #2;S4,B$
2670  LET L1=L1+FNL(LEN(B$))
2675  LET J=J+W
2680  GOTO 2660
2685  IF L1=Z THEN 1095
2690  LET R=R+W
2710  READ #F,R
2715  GOTO 2585
2720  IF S4>S THEN 1215
2725  LET F1=F
2730  LET R1=R
2735  IF TYP(-F1)#W THEN 2835
2740  READ #F1;S1,A$
2745  LET L2=FNL(LEN(A$))
2750  IF L1+L2>256 OR J=13 THEN 2775
2755  PRINT #2;S1,A$
2760  LET L1=L1+L2
2765  LET J=J+W
2770  GOTO 2735
2775  GOSUB 3415
2780  LET R=R+W
2800  READ #F1,R1;S4,B$
2805  IF S4=S1 AND R=R1 THEN 1095
2810  IF S4=S1 THEN 2825
2815  READ #F1;S4,B$
2820  IF S4<S1 THEN 2815
2825  LET L1=J=Z
2830  GOTO 2755
2835  IF R1=R[1] THEN 2870
2840  LET R1=R1+W
2860  READ #F1,R1
2865  IF TYP(-F1)=W THEN 2740
2870  GOSUB 3415
2880  IF R=R[1] THEN 1095
2890  PRINT #F,R+W; END 
2895  GOTO 1095
2900  GOTO K OF 3050,3255,1090,3285,3045,5010
2905  IF L1>Z THEN 2915
2910  LET L1=10
2915  IF L2 AND L2<9999 THEN 2925
2920  LET L2=10
2925  IF L1+L2*U-L2 <= 9999 THEN 2940
2930  PRINT "NO NUM"
2935  GOTO 1095
2940  LET L1=L1-L2
2945  LET F=1
2950  FOR R=W TO R[F]
2955  READ #F,R
2960  READ #2,1
2965  FOR I=0 TO 12
2970  IF TYP(-F)#W THEN 2995
2975  READ #F;S1,A$
2980  LET L1=L1+L2
2985  PRINT #2;L1,A$
2990  NEXT I
2995  READ #F,R
3000  READ #2,1
3005  FOR S=W TO I
3010  READ #2;S1,A$
3015  PRINT #F;S1,A$
3020  NEXT S
3025  NEXT R
3035  PRINT #2,1; END 
3040  GOTO 1215
3045  LET D=W
3050  LET L2=9999
3055  LET L1=Z
3060  FOR I=W TO LEN(A$)
3065  IF A$[I,I]="-" THEN 3080
3070  NEXT I
3075  GOTO 3125
3080  LET K=I+W
3085  GOSUB 3365
3090  LET L1=S
3095  IF L1>9999 THEN 1285
3100  IF I >= LEN(A$) THEN 3125
3105  IF A$[I,I]#"," THEN 1285
3110  LET K=I+W
3115  GOSUB 3365
3120  LET L2=S
3125  IF D THEN 2905
3135  READ #F,W
3140  READ #F,T
3150  PRINT '10'10'10'10'10'10'10'10
3160  READ #F,W
3165  IF TYP(F)#1 THEN 3245
3170  READ #F;S4,A$
3175  IF S4<L1 THEN 3165
3180  IF S4>L2 THEN 3245
3185  LET R=W
3190  LET J=1000
3195  LET I=INT(S4/J)
3200  IF R AND I=Z THEN 3220
3205  PRINT D$[I+W,I+W];
3210  LET R=Z
3215  LET S4=S4-I*J
3220  LET J=J/10
3225  IF J >= W THEN 3195
3230  PRINT TAB(5);A$
3231  LET D=D+1
3232  IF D#50 THEN 3165
3233  PRINT '10'10'10'10'10'10'10'10'10'10'10'10'10'10'10
3234  LET D=0
3235  GOTO 3165
3245  PRINT 
3250  GOTO 1215
3255  FOR R=1 TO R[1]
3265  PRINT #F,R; END 
3270  NEXT R
3280  GOTO 1095
3285  PRINT U;"STMNTS,";R1;"RCRDS;";S1;"LAST"
3310  GOTO 1245
3315  REM
3320  LET J=W
3325  LET I=I+W
3330  IF I>LEN(A$) THEN 3355
3335  IF A$[I,I]#" " THEN 3350
3340  LET A$[I]=A$[I+W]
3345  GOTO 3330
3350  LET J=Z
3355  RETURN 
3360  REM
3365  LET S=Z
3370  FOR I=K TO LEN(A$)
3375  FOR J=W TO 10
3380  IF A$[I,I]=D$[J,J] THEN 3395
3385  NEXT J
3390  RETURN 
3395  LET S=S*10+J-W
3400  NEXT I
3405  RETURN 
3410  REM
3415  PRINT #F,R; END 
3420  READ #2,C
3425  IF TYP(-2)#1 THEN 3445
3430  READ #2;S4,B$
3435  PRINT #F;S4,B$
3440  GOTO 3425
3445  PRINT #2,C; END 
3450  RETURN 
3455  REM
3460  LET L=W
3465  LET C=W
3470  IF A$[I,I]="+" THEN 3480
3475  IF A$[I,I]#"-" THEN 3490
3480  GOSUB 3320
3485  IF J THEN 3555
3490  IF A$[I,I]<"0" THEN 3510
3495  IF A$[I,I]>"9" THEN 3510
3500  LET C=Z
3505  GOTO 3480
3510  GOTO L OF 3515,3525,3555
3515  LET L=T
3520  IF A$[I,I]="." THEN 3480
3525  IF C THEN 3555
3530  IF A$[I,I]#"E" THEN 3555
3532  LET C=1
3535  GOSUB 3320
3540  IF J THEN 3555
3545  LET L=H
3550  GOTO 3465
3555  RETURN 
5000  REM PILOT
5010  LET S$="TAMJUCE.RYNGB(TMDI"
5011  LET Q=2
5055  IF  END #Q THEN 5085
5060  FOR R=1 TO 99999.
5065  PRINT #Q,R; END 
5070  NEXT R
5075  PRINT "SCR FILE OVRFLW"
5080  GOTO 1025
5085  READ #Q,W
5090  IF  END #Q THEN 5075
5100  READ #F,W
5105  IF TYP(1)#1 THEN 5145
5110  READ #F;S,A$
5115  GOSUB 7165
5120  IF I=W THEN 5105
5125  PRINT #Q;S,A$[T,I-T]
5130  GOTO 5105
5145  PRINT #Q; END 
5150  FOR R9=W TO R-W
5155  READ #Q,R9
5160  IF TYP(Q)=H THEN 5170
5165  NEXT R9
5170  PRINT '10'10" "," ","PILOT"
5180  READ #F,W
5185  IF TYP(F)#1 THEN 5270
5190  READ #F;S,A$
5195  GOSUB 7165
5200  IF A$[I,I]="J" THEN 5210
5205  IF A$[I,I]#"U" THEN 5185
5210  FOR J=I+T TO LEN(A$)
5215  IF A$[J,J]="*" THEN 5225
5220  NEXT J
5225  LET B$=A$[J+W]
5230  READ #Q,W
5235  IF TYP(Q)=H THEN 5255
5240  READ #Q;J,A$
5245  IF A$#B$ THEN 5235
5250  GOTO 5185
5255  PRINT "UNREF JMP,";S
5260  GOTO 1025
5270  LET K=4
5275  LET R=R9-W
5285  READ #F,W
5290  IF TYP(F)#1 THEN 5375
5295  READ #F;S,A$
5300  GOSUB 7165
5305  IF A$[I,I]#"A" THEN 5290
5310  FOR J=I+T TO LEN(A$)
5315  IF A$[J,J]="$" THEN 5330
5320  NEXT J
5325  GOTO 5290
5330  IF K=4 THEN 5345
5335  LET K=K+1
5340  GOTO 5360
5345  LET R=R+W
5350  READ #Q,R
5355  LET K=1
5360  PRINT #Q;A$[J+W],""
5365  GOTO 5290
5375  FOR J=K TO 3
5380  PRINT #Q;P$,""
5382  NEXT J
5385  LET M=N=W
5390  LET D=U=0
5395  MAT V=ZER
5400  PRINT '10'10'10;
5415  IF  END #1 THEN 6775
5420  READ #F,W
5425  READ #F;S,A$
5430  LET A1=LEN(A$)
5435  GOSUB 7165
5440  FOR K=W TO 11
5445  IF A$[I,I]=S$[K,K] THEN 5455
5450  NEXT K
5455  LET I=I+W
5460  IF K<9 THEN 5480
5465  LET J=K-8
5470  LET K=W
5475  GOTO J OF 5425,5540,5550
5480  IF K<8 THEN 5510
5485  FOR K=15 TO 18
5490  IF A$[I,I]=S$[K,K] THEN 5500
5495  NEXT K
5500  LET K=K-7
5505  LET I=I+W
5510  IF A$[I,I]=":" THEN 5745
5515  FOR S=10 TO 14
5520  IF A$[I,I]=S$[S,S] THEN 5530
5525  NEXT S
5530  LET I=I+W
5535  GOTO S-9 OF 5540,5550,5560,5570,5580
5540  IF M THEN 5745
5545  GOTO 5425
5550  IF M THEN 5425
5555  GOTO 5745
5560  IF N THEN 5745
5565  GOTO 5425
5570  IF N THEN 5425
5575  GOTO 5745
5580  GOSUB 7205
5585  LET T1=V[J]
5590  LET I=I+W
5595  FOR R=W TO 4
5600  IF A$[I,I]=R$[R,R] THEN 5625
5605  NEXT R
5610  LET I=I+W
5615  IF T1 THEN 5745
5620  GOTO 5425
5625  LET I=I+W
5630  IF A$[I,I]#"=" THEN 5645
5635  LET R=R+4
5640  LET I=I+W
5645  IF A$[I,I]<"A" THEN 5670
5650  GOSUB 7205
5655  LET V2=V[J]
5660  LET I=I+T
5665  GOTO 5685
5670  LET C$=A$[I]
5675  GOSUB 7275
5680  LET I=I+S
5685  GOTO R OF 5690,5700,5710,5720,5730,5740
5690  IF T1<V2 THEN 5745
5695  GOTO 5425
5700  IF T1>V2 THEN 5745
5705  GOTO 5425
5710  IF T1=V2 THEN 5745
5715  GOTO 5425
5720  IF T1#V2 THEN 5745
5725  GOTO 5425
5730  IF T1>V2 THEN 5425
5735  GOTO 5745
5740  IF T1<V2 THEN 5425
5745  LET I=I+W
5750  GOTO K OF 5760,5990,6260,6360,6415,6480,6770,6815,6890,7100,7130
5755  GOTO 7145
5760  LET S=A1
5765  IF A$[A1]#P$ THEN 5775
5770  LET S=S-W
5775  LET L1=I
5780  LET L8=Z
5785  FOR L=I TO S
5790  IF A$[L,L]=M$ THEN 5835
5795  IF A$[L,L]="$" THEN 5825
5800  IF A$[L,L]="#" THEN 5815
5805  NEXT L
5810  GOTO 5855
5815  LET L8=W
5820  GOTO 5855
5825  LET L8=T
5830  GOTO 5855
5835  LET Z4=L
5840  FOR L=Z4 TO S
5845  IF A$[L,L]#M$ THEN 5855
5850  NEXT L
5855  PRINT A$[L1,L-W];
5860  LET I=L1=L
5865  IF L8 THEN 5890
5870  IF I <= S THEN 5780
5875  IF S<A1 THEN 5425
5880  PRINT 
5885  GOTO 5425
5890  LET Z3=W
5895  LET I=I+W
5900  FOR L2=I TO S
5905  IF A$[L2,L2]=M$ THEN 5920
5910  IF A$[L2,L2]=P$ THEN 5925
5915  NEXT L2
5920  LET Z3=Z
5925  IF L8=T THEN 5960
5930  IF L2-L#T THEN 5780
5935  GOSUB 7205
5940  IF  NOT J THEN 5780
5945  PRINT V[J];
5950  LET I=L1=L2+Z3
5955  GOTO 5870
5960  READ #Q,R9
5965  IF TYP(Q)=H THEN 5780
5970  READ #Q;G$,C$
5975  IF G$#A$[L+W,L2-W] THEN 5965
5980  PRINT C$;
5985  GOTO 5950
5990  INPUT B$
5995  IF B$="@" THEN 6775
6000  LET L=Z
6005  LET L=L+W
6010  IF L=LEN(B$) THEN 6030
6015  IF B$[L,L+W]#"  " THEN 6005
6020  LET B$[L]=B$[L+W]
6025  GOTO 6010
6030  IF I>A1 THEN 6245
6035  IF A$[I,I]="#" THEN 6130
6040  READ #Q,R9
6045  LET R=R9
6050  LET J=1
6055  READ #Q;G$,C$
6060  IF G$=A$[I+W] THEN 6090
6065  IF J=4 THEN 6080
6070  LET J=J+1
6075  GOTO 6055
6080  LET R=R+W
6085  GOTO 6050
6090  READ #2,R;A$,A$,G$,C$,H$,E$,I$,F$
6092  GOTO J OF 6095,6100,6105,6110
6095  READ #2,R;A$
6096  PRINT #2;B$,G$,C$,H$,E$,I$,F$
6097  GOTO 6245
6100  READ #2,R;A$,A$,A$
6101  PRINT #2;B$,H$,E$,I$,F$
6102  GOTO 6245
6105  READ #2,R;A$,A$,A$,A$,A$
6106  PRINT #2;B$,I$,F$
6107  GOTO 6245
6110  READ #2,R;A$,A$,A$,A$,A$,A$,A$
6111  PRINT #2;B$
6112  GOTO 6245
6130  LET I=I+W
6135  FOR L=W TO LEN(B$)
6140  IF B$[L,L]<"0" THEN 6150
6145  IF B$[L,L] <= "9" THEN 6165
6150  NEXT L
6155  LET N=Z
6160  GOTO 6245
6165  LET Z2=Z
6170  FOR L1=L-W TO W STEP -W
6175  IF B$[L1,L1]#M$ THEN 6190
6180  NEXT L1
6185  LET L1=W
6190  IF B$[L1,L1]#"." THEN 6210
6195  IF Z2 THEN 6220
6200  LET L=Z2=L1
6205  GOTO 6170
6210  IF B$[L1,L1]#"-" THEN 6220
6215  LET L=L1
6220  LET C$=B$[L]
6225  GOSUB 7275
6230  LET N=W
6235  GOSUB 7205
6240  LET V[J]=V2
6245  LET D=Z
6250  LET M=W
6255  GOTO 5425
6260  LET M=Z
6265  LET L2=W
6270  FOR L1=I TO A1
6275  IF A$[L1,L1]="," THEN 6285
6280  NEXT L1
6285  IF A$[I,I]#"$" THEN 6315
6290  READ #Q,R9
6295  IF TYP(Q)#T THEN 6315
6300  READ #Q;G$,C$
6305  IF G$#A$[I+W,L1-W] THEN 6295
6310  GOTO 6320
6315  LET C$=A$[I,L1-W]
6320  GOSUB 7235
6325  IF L THEN 6345
6330  LET I=L1+W
6335  IF I>A1 THEN 5425
6340  GOTO 6270
6345  LET M=W
6350  LET D=D+W
6355  GOTO 5425
6360  READ #Q,W
6365  READ #Q;J,C$
6370  IF C$#A$[I+W] THEN 6365
6390  READ #F,W
6400  READ #F;S,A$
6405  IF S=J THEN 5430
6410  GOTO 6400
6415  LET U=U+W
6420  IF U<7 THEN 6435
6425  PRINT "USE ERR"
6430  GOTO 6775
6435  IF TYP(F)=W THEN 6470
6440  LET F=F+W
6445  IF F#Q THEN 6460
6450  LET U[U]=Z
6455  GOTO 6360
6460  READ #F,W
6465  IF TYP(F)#W THEN 6450
6470  READ #F;U[U]
6475  GOTO 6360
6480  LET L=I
6485  FOR L1=A1 TO I STEP -W
6490  IF A$[L1,L1]="=" THEN 6500
6495  NEXT L1
6500  LET T1=L2=Z
6505  LET R=W
6510  LET G$[R]=M$
6515  LET I=L1
6520  LET I=I+W
6525  IF I <= A1 THEN 6545
6530  IF R=W THEN 6745
6535  GOSUB 7440
6540  GOTO 6530
6545  IF A$[I,I]#"(" THEN 6570
6550  LET R=R+W
6555  LET G$[R]=M$
6560  LET L2=Z
6565  GOTO 6520
6570  IF A$[I,I]#")" THEN 6600
6575  IF G$[R,R]=M$ THEN 6590
6580  GOSUB 7440
6585  GOTO 6575
6590  LET R=R-W
6595  GOTO 6735
6600  GOSUB 7205
6605  IF  NOT J THEN 6625
6610  LET T1=T1+W
6615  LET T[T1]=V[J]
6620  GOTO 6735
6625  IF A$[I,I]="." THEN 6640
6630  IF A$[I,I]<"0" THEN 6670
6635  IF A$[I,I]>"9" THEN 6670
6640  LET C$=A$[I]
6645  GOSUB 7275
6650  LET T1=T1+W
6655  LET T[T1]=V2
6660  LET I=I+S-T
6665  GOTO 6735
6670  LET C$=A$[I,I]
6675  IF L2 THEN 6690
6680  LET T1=T1+W
6685  LET T[T1]=Z
6690  GOSUB 7530
6695  LET L8=K
6700  LET C$=G$[R,R]
6705  GOSUB 7530
6710  IF L8>K THEN 6725
6715  GOSUB 7450
6720  GOTO 6700
6725  LET R=R+W
6730  LET G$[R]=A$[I,I]
6735  LET L2=W
6740  GOTO 6520
6745  FOR I=L TO L1 STEP T
6750  GOSUB 7205
6755  LET V[J]=T[W]
6760  NEXT I
6765  GOTO 5425
6770  IF U>Z THEN 6795
6775  PRINT "END "'10'10"TRY AGAIN ";
6780  INPUT A$
6785  IF A$[W,W]="Y" THEN 5270
6790  GOTO 1025
6795  IF U[U]=Z THEN 6775
6800  LET J=U[U]
6805  LET U=U-W
6810  GOTO 6390
6815  LET S=A1
6820  IF A$[A1]#P$ THEN 6830
6825  LET S=S-W
6830  FOR L=I TO S
6835  IF A$[L,L]=M$ THEN 6850
6840  NEXT L
6845  GOTO 6870
6850  LET Z4=L
6855  FOR L=Z4 TO S
6860  IF A$[L,L]#M$ THEN 6870
6865  NEXT L
6870  PRINT A$[I,L-W];
6875  LET I=L
6880  IF I <= S THEN 6830
6885  GOTO 5875
6890  LET M=Z
6895  LET L2=W
6900  FOR L1=I TO A1
6905  IF A$[L1,L1]="," THEN 6920
6910  IF A$[L1,L1]="*" THEN 6930
6915  NEXT L1
6920  LET Z3=W
6925  GOTO 6935
6930  LET Z3=Z
6935  LET Z4=L8=W
6940  LET S=I
6945  IF A$[I,I]#"[" THEN 6960
6950  LET S=I+W
6955  LET Z4=Z
6960  LET I=L1+W
6965  LET L1=L1-W
6970  IF A$[L1,L1]#"]" THEN 6985
6975  LET L1=L1-W
6980  LET L8=Z
6985  LET C$=A$[S,L1]
6990  GOSUB 7235
6995  LET L2=L+S+W
7000  IF L THEN 7045
7005  IF I>A1 THEN 5425
7010  IF Z3 THEN 6895
7015  FOR L1=I TO A1
7020  IF A$[L1,L1]="," THEN 7035
7025  NEXT L1
7030  GOTO 5425
7035  LET I=L1+W
7040  GOTO 6895
7045  IF Z4 THEN 7070
7050  LET L=L-W
7055  IF L=Z THEN 7070
7060  IF B$[L,L]<"A" THEN 7070
7065  IF B$[L,L] <= "Z" THEN 6990
7070  IF L8 THEN 7090
7075  LET L=L2
7080  LET L8=W
7085  GOTO 7060
7090  IF Z3 THEN 6345
7095  GOTO 6900
7100  LET C$=A$[I]
7105  GOSUB 7275
7110  LET M=W
7115  IF D >= V2 THEN 5425
7120  LET M=Z
7125  GOTO 5425
7130  GOSUB 7205
7135  LET V[J]=INT(V[J])
7140  GOTO 5425
7145  GOSUB 7205
7150  LET V[J]=RND(K)
7155  GOTO 5425
7160  REM
7165  LET I=W
7170  IF A$[I,I]#"*" THEN 7195
7175  FOR I=H TO LEN(A$)
7180  IF A$[I,I]=M$ THEN 7190
7185  NEXT I
7190  LET I=I+W
7195  RETURN 
7200  REM
7205  FOR J=W TO 26
7210  IF A$[I,I]=L$[J,J] THEN 7225
7215  NEXT J
7220  LET J=Z
7225  RETURN 
7230  REM
7235  LET S=LEN(C$)-W
7240  IF S<0 THEN 7260
7245  FOR L=L2 TO LEN(B$)-S
7250  IF C$=B$[L,L+S] THEN 7265
7255  NEXT L
7260  LET L=Z
7265  RETURN 
7270  REM
7275  LET V2=Z4=Z5=Z
7280  LET Z1=Z2=Z3=W
7285  FOR S=W TO LEN(C$)
7290  FOR J=W TO 15
7295  IF C$[S,S]=D$[J,J] THEN 7310
7300  NEXT J
7305  GOTO 7425
7310  IF J=15 THEN 7420
7315  IF J>10 THEN 7355
7320  GOTO Z2 OF 7325,7335,7345
7325  LET V2=10*V2+J-W
7330  GOTO 7420
7335  LET Z5=Z5+W
7340  GOTO 7325
7345  LET Z4=10*Z4+J-W
7350  GOTO 7420
7355  GOTO J-10 OF 7360,7360,7395,7410
7360  IF Z2<H AND V2 THEN 7425
7365  IF Z2=H THEN 7380
7370  LET Z1=23-T*J
7375  GOTO 7420
7380  IF Z4>Z THEN 7425
7385  LET Z3=23-T*J
7390  GOTO 7420
7395  IF Z2>W THEN 7425
7400  LET Z2=T
7405  GOTO 7420
7410  IF Z3=H THEN 7425
7415  LET Z2=H
7420  NEXT S
7425  LET V2=Z1*V2*10^(Z3*Z4-Z5)
7430  RETURN 
7435  REM
7440  LET C$=G$[R,R]
7445  GOSUB 7530
7450  LET S=T[T1]
7455  LET T1=T1-W
7460  LET K=T[T1]
7465  GOTO J-4 OF 7470,7480,7490,7500,7510
7470  LET T[T1]=K+S
7475  GOTO 7515
7480  LET T[T1]=K-S
7485  GOTO 7515
7490  LET T[T1]=K*S
7495  GOTO 7515
7500  LET T[T1]=K/S
7505  GOTO 7515
7510  LET T[T1]=K^S
7515  LET R=R-W
7520  RETURN 
7525  REM
7530  FOR J=5 TO 9
7535  IF C$=R$[J,J] THEN 7550
7540  NEXT J
7545  LET J=H
7550  LET K=INT((J-H)/T)
7555  RETURN 
7560  END 
