10  COM A$[72],B$[72],D$[52],F$[24],L$[72],M$[72],N$[72],O$[72],P$[72]
15  COM Q$[72],Y$[10],Z$[72]
20  COM A[10],B[6],C[6],D[6],E[6],I[64,2],L[10],M[64,2],P[6],R[6],S[6]
25  COM T[6],A,E,Q,U,D2,F0,F1,M,Q1,X
26  REM EDIT2K, HP 36838A, 6/74, 5 PROGS-EDIT2K,EDITA,EDITB,EDITC,EDITD
30  DIM C$[72],E$[72],G$[72],H$[72],S$[72]
35  CHAIN "$EDIT2K"
40  FILES *,*
45  ASSIGN F$[1,6],1,X
50  IF F$[7,12]="      " THEN 60
55  ASSIGN F$[7,12],2,X
60  GOSUB D2 OF 1000,1300,2000
65  CHAIN "$EDITA",40
999  CHAIN "$EDIT2K",3000
1000  REM < FIND >
1004  Z1=1
1005  IF C[6] THEN 1020
1010  E=16
1015  GOTO 999
1020  MAT T=C
1025  GOSUB 6200
1030  MAT P=T
1035  IF Q THEN 1070
1040  GOSUB 7005
1045  PRINT SPA(A[2]-1);B$[A[2],A[3] MIN LEN(B$) MAX A[2]]
1050  PRINT TAB(T[4]-1+9*(LEN(B$)<64));
1055  PRINT  USING 1060;T[4]
1060  IMAGE "^(",DD,")"
1070  RETURN 
1300  REM < HOLD >
1305  I9=0
1306  IF F$[7,12]#"      " THEN 1310
1307  E=11
1308  GOTO 999
1310  IF C[6]=0 AND D[6]=0 AND C[5]=D[5] THEN 1500
1315  MAT T=C
1320  IF A$[A]="" THEN 1365
1325  IF A$[A,A+6]=",APPEND" THEN 1340
1330  IF A$[A,A+6]#",append" THEN 1490
1340  IF  END #2 THEN 1370
1345  READ #2,1
1350  READ #2;B$
1355  I9=I9+1
1360  GOTO 1350
1365  READ #2,1
1370  IF  END #2 THEN 1475
1375  GOSUB 6200
1380  MAT P=T
1385  J=A[2] MAX (C[4]*T[5]=C[5])
1390  Z1=(T[5]=D[5])
1395  K=(LEN(B$) MIN A[3] MIN (D[4]*Z1 MAX A[6]* NOT Z1)) MAX A[2]
1400  IF Q THEN 1415
1405  GOSUB 7005
1410  PRINT SPA(J-1);B$[J,K]
1415  PRINT #2;B$[J,K], END 
1420  I9=I9+1
1425  IF T[5] >= D[5] THEN 1450
1430  GOSUB 5100
1435  IF E THEN 1450
1440  T[5]=X
1445  GOTO 1380
1450  P[4]=K
1455  IF  NOT Q THEN 1470
1460  PRINT  USING 1465;I9
1465  IMAGE "THE HOLD FILE CONTAINS ",5D," RECORDS"
1470  RETURN 
1475  B$=F$[13,18]
1480  E=19
1485  GOTO 999
1490  E=2
1495  GOTO 999
1500  PRINT #2,1; END 
1505  RETURN 
2000  REM < GATHER >
2005  IF  NOT C[6] AND  NOT D[6] AND C[5] >= D[5] THEN 2990
2010  D6=D7=1
2015  G9=0
2025  GOSUB 7305
2030  GOSUB 7105
2035  MAT S=T
2040  GOSUB 7405
2045  GOSUB 5100
2048  IF T[5]<C[5] OR D[5]<S[5] THEN 2050
2049  G9=1
2050  IF  NOT E THEN 2070
2055  E=0
2060  D9=10000
2065  GOTO 2085
2070  D9=X
2085  T[5]=D[5]
2090  GOSUB 5500
2095  GOSUB 5100
2097  IF  NOT E THEN 2101
2098  E=0
2099  G3=10000
2100  GOTO 2104
2101  G3=X
2104  IF  NOT G9 THEN 2160
2111  D9=G3
2160  REM * REC CNT *
2165  MAT T=C
2170  GOSUB 6200
2175  IF C[1]#D[1] OR C[2]#D[2] THEN 2190
2180  D7=D7+D[3]-C[3]
2185  GOTO 2230
2190  D7=D7+L[7]-C[3]
2195  MAT  READ #1,L[10];L
2200  IF D[5] >= L[L[7]] THEN 2215
2205  D7=D7+D[3]
2210  GOTO 2225
2215  D7=D7+L[7]
2220  IF D[5]#L[L[7]] THEN 2195
2225  GOSUB 6905
2230  GOSUB 7205
2240  IF E THEN 999
2245  IF G9 THEN 3180
2250  REM <FREE SPACE COUNT>
2255  MAT P=ZER
2260  GOSUB 5005
2265  P[1]=T1
2270  GOSUB 5005
2275  P[2]=T1
2280  MAT T=C
2285  GOSUB 6200
2290  GOSUB 5005
2295  C[6]=L[8]=R[3]=T1
2300  IF C[1]#D[1] OR C[2]#D[2] THEN 2315
2305  L[7]=D[3]
2310  D[6]=-L[8]
2315  T3=T[3]
2320  T[3]=1
2325  FOR I=1 TO T3-1
2330  GOSUB 6300
2335  NEXT I
2340  GOSUB 6800
2345  IF C[1]=D[1] AND C[2]=D[2] THEN 2390
2350  MAT T=D
2355  GOSUB 6200
2360  GOSUB 5005
2365  D[6]=L[8]=T1
2370  IF C[1]=D[1] AND D[2]-C[2]=1 THEN 2380
2375  R[3]=L[9]
2380  L[7]=D[3]
2385  GOSUB 6800
2390  Z3=P[1]
2395  GOSUB 4900
2400  Z3=P[2]
2405  GOSUB 4900
2410  REM < DELETE >
2420  MAT T=C
2425  GOSUB 6200
2430  T5=I[63,2]
2435  T6=L[8]
2500  IF T[3]=1 THEN 2540
2505  T6=L[10]
2510  IF C[1]=D[1] AND C[2]=D[2] THEN 2525
2515  L[7]=T[3]-1
2520  T[3]=1
2525  T[2]=T[2]+1
2540  IF T[2]=1 THEN 2575
2545  T5=I[64,2]
2550  IF C[1]=D[1] THEN 2565
2555  I[63,1]=T[2]-1
2560  T[2]=1
2565  T[1]=T[1]+1
2575  MAT C=T
2580  MAT T=D
2585  GOSUB 6200
2590  T7=I[63,2]
2595  T8=L[8]
2620  T[3]=C[3]
2625  FOR I=C[3] TO D[3]
2630  GOSUB 6305
2635  NEXT I
2640  IF  NOT L[7] THEN 2665
2645  GOSUB 6800
2650  I[D[2],1]=L[1]
2655  D[2]=D[2]-1
2660  T8=L[9]
2665  IF D[2]=I[63,1] AND C[2]=1 THEN 2680
2670  D[1]=D[1]-1
2675  T7=I[64,1]
2680  T[3]=C[3]
2685  IF D[2]<C[2] THEN 2720
2690  FOR I=D[2]+1 TO I[63,1]
2695  I[I-D[2]+C[2]-1,1]=I[I,1]
2700  I[I-D[2]+C[2]-1,2]=I[I,2]
2705  NEXT I
2710  I[63,1]=I[63,1]-D[2]+C[2]-1
2715  MAT  PRINT #1,I[63,2];I
2720  IF  NOT D[1] THEN 2730
2725  IF M[D[1],2]=I[63,2] THEN 2740
2730  M[D[1]+1,1]=I[1,1]
2735  GOTO 2745
2740  M[D[1],1]=I[1,1]
2745  IF C[1]>D[1] THEN 2775
2750  FOR I=D[1]+1 TO M
2755  M[I-D[1]+C[1]-1,1]=M[I,1]
2760  M[I-D[1]+C[1]-1,2]=M[I,2]
2765  NEXT I
2770  M=M-D[1]+C[1]-1
2775  GOSUB 2815
2780  T[5]=D[5]
2785  F=0
2790  GOSUB 5505
2795  T[4]=T[6]=1
2800  T[5]=L[T[3]]
2805  MAT P=T
2810  GOTO 3000
2815  REM *** RETURN FREE SPACE ***
2820  IF D[2]<C[2] AND D[1]<C[1] THEN 2990
2825  T9=T8
2830  GOSUB 6700
2835  T2=L[10]
2840  L[10]=F0
2845  T9=T6
2850  GOSUB 6700
2855  F0=L[8]
2860  IF  NOT L[9] THEN 2880
2865  T9=L[9]
2870  GOSUB 6700
2875  L[10]=T2
2880  IF  NOT T2 THEN 2905
2885  T3=L[8]
2890  T9=T2
2895  GOSUB 6700
2900  L[9]=T3
2905  GOSUB 6800
2910  IF D[1]-C[1]<0 THEN 2990
2915  MAT  READ #1,T7;I
2920  T2=I[64,2]
2925  I[64,2]=F0
2927  MAT  PRINT #1,T7;I
2930  MAT  READ #1,T5;I
2935  F0=I[63,2]
2940  IF  NOT I[64,1] THEN 2960
2945  MAT  PRINT #1,I[63,2];I
2950  MAT  READ #1,I[64,1];I
2955  I[64,2]=T2
2960  IF  NOT T2 THEN 2985
2965  T3=I[63,2]
2970  MAT  PRINT #1,I[63,2];I
2975  MAT  READ #1,T2;I
2980  I[64,1]=T3
2985  MAT  PRINT #1,I[63,2];I
2990  RETURN 
3000  REM < GATHER CONT'D>
3005  GOSUB 6800
3010  Z4=C[6]
3015  MAT T=S
3020  T[5]=D8
3025  F=1
3026  GOSUB 5500
3028  T[5]=D8
3030  MAT  READ #1,Z4;S
3031  READ #1;Z2,Z3,Z,Z4,C$,E$,G$,H$,S$,A$
3035  Z1=Z2
3040  GOTO Z2-Z1 OF 3055,3065,3075,3085,3095
3045  B$=C$
3050  GOTO 3100
3055  B$=E$
3060  GOTO 3100
3065  B$=G$
3070  GOTO 3100
3075  B$=H$
3080  GOTO 3100
3085  B$=S$
3090  GOTO 3100
3095  B$=A$
3100  Z1=Z1-1
3103  GOSUB 4000
3104  IF Q THEN 3110
3105  PRINT S[Z2-Z1];":";
3107  X=T[5]
3108  GOSUB 7005
3109  PRINT 
3110  GOSUB 7900
3115  IF Z1 THEN 3040
3120  IF C[6]<0 THEN 3135
3125  GOSUB 4900
3130  C[6]=-C[6]
3135  IF Z3#ABS(D[6]) THEN 3155
3140  IF D[6]<0 THEN 3170
3145  GOSUB 4900
3150  GOTO 3170
3155  IF Z3#R[3] THEN 3030
3160  Z4=ABS(D[6])
3165  GOTO 3030
3170  GOTO 65
3175  REM * RENUMBER *
3180  T[1]=C[1]
3182  GOSUB 6000
3185  FOR J=C[2] TO I[63,1]
3190  T9=I[J,2]
3195  GOSUB 6700
3200  FOR I=C[3] TO L[7]
3205  IF L[I]>D[5]-.001 THEN 3262
3206  IF Q THEN 3214
3207  PRINT L[I];":";
3210  L[I]=X=D8
3212  GOSUB 7005
3213  PRINT 
3214  L[I]=X=D8
3215  GOSUB 7900
3220  NEXT I
3225  C[3]=1
3230  I[J,1]=L[1]
3235  NEXT J
3240  M[C[1],1]=I[1,1]
3245  C[2]=1
3250  C[1]=C[1]+1
3255  MAT  PRINT #1,I[63,2];I
3260  GOTO 3180
3262  IF Q THEN 3269
3263  PRINT L[I];":";
3265  L[I]=X=D8
3267  GOSUB 7005
3268  PRINT 
3269  L[I]=X=D8
3270  I[J,1]=L[1]
3275  M[C[1],1]=I[1,1]
3280  MAT P=D
3285  RETURN 
4000  REM * ADD A LINE *
4005  GOSUB 6005
4010  GOSUB 6105
4015  IF L[7]<6 THEN 4070
4020  A1=A2=0
4025  IF T[3]<6 THEN 4035
4030  A2=1
4035  IF I[63,1]<62 OR T[2]<62 THEN 4045
4040  A1=1
4045  GOSUB 4195
4050  IF  NOT A2 THEN 4070
4055  GOSUB 6405
4065  RETURN 
4070  IF T[3]=L[7] AND L[7]=5 THEN 4155
4075  T1=5-T[3]
4080  Q$=P$
4085  P$=B$
4090  T1=T1-1
4095  IF  NOT T1 THEN 4160
4100  P$=O$
4105  O$=B$
4110  T1=T1-1
4115  IF  NOT T1 THEN 4160
4120  O$=N$
4125  N$=B$
4130  T1=T1-1
4135  IF  NOT T1 THEN 4160
4140  N$=M$
4145  M$=B$
4150  GOTO 4160
4155  Q$=B$
4160  T[3]=T[3]+1
4165  FOR I=L[7] TO T[3] STEP -1
4170  L[I+1]=L[I]
4175  NEXT I
4180  L[7]=L[7]+1
4185  L[T[3]]=T[5]
4190  RETURN 
4195  REM * BLOCK SPLIT *
4200  GOSUB 5000
4205  IF I[63,1]<62 THEN 4425
4210  IF M<64 THEN 4225
4215  E=14
4220  GOTO 999
4225  T2=T1
4230  GOSUB 5000
4235  FOR I=M TO T[1]+1 STEP -1
4240  M[I+1,1]=M[I,1]
4245  M[I+1,2]=M[I,2]
4250  NEXT I
4255  M=M+1
4260  T3=I[64,2]
4265  I[64,2]=T2
4270  IF A1 THEN 4280
4275  I[63,1]=T[2]
4280  MAT  PRINT #1,I[63,2];I
4285  IF A1 THEN 4320
4290  FOR I=1 TO 62-T[2]
4295  I[I,1]=I[I+T[2],1]
4300  I[I,2]=I[I+T[2],2]
4305  NEXT I
4310  M[T[1]+1,1]=I[1,1]
4315  M[T[1]+1,2]=T2
4320  I[64,1]=I[63,2]
4325  I[63,2]=T2
4330  I[64,2]=T3
4335  IF  NOT A1 THEN 4360
4340  I[63,1]=0
4345  M[T[1]+1,1]=T[5]
4350  M[T[1]+1,2]=T2
4355  GOTO 4365
4360  I[63,1]=62-T[2]
4365  MAT  PRINT #1,I[63,2];I
4370  IF  NOT I[64,2] THEN 4385
4375  MAT  READ #1,I[64,2];I
4380  I[64,1]=T2
4385  IF  NOT A1 THEN 4420
4390  T[1]=T[1]+1
4395  T[2]=0
4420  GOSUB 6005
4425  FOR I=I[63,1] TO T[2]+1 STEP -1
4430  I[I+1,1]=I[I,1]
4435  I[I+1,2]=I[I,2]
4440  NEXT I
4445  I[63,1]=I[63,1]+1
4446  T3=L[10]
4447  L[10]=T1
4450  IF A2 THEN 4470
4455  L[7]=T[3]
4470  GOSUB 6800
4480  IF  NOT A2 THEN 4500
4485  L[1]=T[5]
4490  T[3]=L[7]=1
4495  GOTO 4535
4500  L[7]=6
4505  T2=T[3]
4510  T[3]=1
4515  FOR I=1 TO T2
4520  GOSUB 6300
4525  NEXT I
4535  I[T[2]+1,1]=L[1]
4540  I[T[2]+1,2]=T1
4545  L[9]=L[8]
4550  L[8]=T1
4555  L[10]=T3
4560  IF A2 THEN 4580
4565  T[3]=T2
4580  IF  NOT L[10] THEN 4600
4585  T9=L[10]
4590  GOSUB 6700
4595  L[9]=T1
4600  IF  NOT A2 THEN 4615
4605  T[2]=T[2]+1
4615  GOSUB 6105
4620  RETURN 
4900  REM <RETURN FREE SPACE>
4901  Z5=L[10]
4902  Z6=L[8]
4905  L[10]=F0
4910  L[8]=F0=Z3
4915  GOSUB 6800
4916  L[10]=Z5
4917  L[8]=Z6
4920  RETURN 
5000  REM * GET FREE SPACE *
5005  IF F0 THEN 5040
5010  IF F1 <= A[8] THEN 5025
5015  E=14
5020  GOTO 999
5025  T1=F1
5030  F1=F1+1
5035  GOTO 5085
5040  T1=F0
5045  READ #1,F0;X,X,X,X,X,X,X,X,X,X
5050  IF TYP(1)=2 THEN 5080
5055  T2=I[63,2]
5060  MAT  PRINT #1,T2;I
5065  MAT  READ #1,T1;I
5070  X=I[64,2]
5075  MAT  READ #1,T2;I
5080  F0=X
5085  RETURN 
5100  REM * GET NEXT *
5115  IF T[3]+1 <= L[7] THEN 5171
5120  IF L[10] THEN 5135
5125  E=16
5126  T[6]=0
5130  GOTO 5175
5135  T[3]=0
5140  T[2]=T[2]+1
5145  IF T[2] <= I[63,1] THEN 5165
5150  T[1]=T[1]+1
5155  GOSUB 6010
5160  T[2]=1
5165  T9=L[10]
5170  GOSUB 6700
5171  T[3]=T[3]+1
5172  T[4]=1
5175  GOSUB 6215
5185  RETURN 
5200  REM * GET LAST REC *
5205  IF  NOT L[T[3]] THEN 5260
5207  T[3]=T[3]-1
5210  IF T[3] THEN 5255
5215  T[2]=T[2]-1
5220  IF T[2] THEN 5240
5225  T[1]=T[1]-1
5230  GOSUB 6010
5235  T[2]=I[63,1]
5240  T9=L[9]
5245  GOSUB 6700
5250  T[3]=L[7]
5255  IF L[T[3]] THEN 5270
5260  E=20
5262  T[6]=0
5270  GOSUB 6215
5275  T[4]=LEN(B$)
5285  RETURN 
5500  REM * FIND POS *
5505  IF T[5] THEN 5520
5510  E=20
5515  GOTO 999
5520  T[6]=0
5525  T[1]=1
5530  T1=M
5535  T2=INT((T[1]+T1)/2)
5540  IF T2=T[1] THEN 5570
5545  IF T[5]<M[T2,1] THEN 5560
5550  T[1]=T2
5555  GOTO 5535
5560  T1=T2
5565  GOTO 5535
5570  IF T[5]<M[T1,1] THEN 5580
5575  T[1]=T1
5580  GOSUB 6000
5585  T[2]=1
5590  T1=I[63,1]
5595  T2=INT((T[2]+T1)/2)
5600  IF T2=T[2] THEN 5630
5605  IF T[5]<I[T2,1] THEN 5620
5610  T[2]=T2
5615  GOTO 5595
5620  T1=T2
5625  GOTO 5595
5630  IF T[5]<I[T1,1] THEN 5640
5635  T[2]=T1
5640  GOSUB 6100
5645  FOR I=1 TO L[7]
5647  T[3]=I
5650  IF ABS(T[5]-L[I])<.00001 THEN 5670
5655  IF T[5]<L[I] THEN 5680
5660  NEXT I
5662  GOSUB 5100
5665  GOTO 5680
5670  T[6]=1
5680  GOSUB (T[6] OR  NOT F OR E)+1 OF 5205,6215
5685  E=0
5695  RETURN 
6000  REM * GET I[] *
6005  IF M[T[1],2]=I[63,2] THEN 6020
6010  MAT  PRINT #1,I[63,2];I
6015  MAT  READ #1,M[T[1],2];I
6020  RETURN 
6100  REM * GET RECORDS *
6105  IF I[T[2],2]=L[8] THEN 6120
6110  T9=I[T[2],2]
6115  GOSUB 6700
6120  RETURN 
6200  REM * GET LINE *
6205  GOSUB 6005
6210  GOSUB 6105
6215  GOTO T[3] OF 6220,6230,6240,6250,6260,6270
6220  B$=L$
6225  GOTO 6275
6230  B$=M$
6235  GOTO 6275
6240  B$=N$
6245  GOTO 6275
6250  B$=O$
6255  GOTO 6275
6260  B$=P$
6265  GOTO 6275
6270  B$=Q$
6275  T[5]=X=L[T[3]]
6280  RETURN 
6300  REM * DELETE LINE *
6305  GOTO T[3] OF 6310,6315,6320,6325,6330,6340
6310  L$=M$
6315  M$=N$
6320  N$=O$
6325  O$=P$
6330  P$=Q$
6335  IF T[3]=L[7] THEN 6355
6340  FOR J=T[3]+1 TO L[7]
6345  L[J-1]=L[J]
6350  NEXT J
6355  L[7]=L[7]-1
6360  RETURN 
6400  REM * REPLACE LINE *
6405  GOTO T[3] OF 6410,6420,6430,6440,6450,6460
6410  L$=B$
6415  GOTO 6465
6420  M$=B$
6425  GOTO 6465
6430  N$=B$
6435  GOTO 6465
6440  O$=B$
6445  GOTO 6465
6450  P$=B$
6455  GOTO 6465
6460  Q$=B$
6465  RETURN 
6600  REM * FIND E *
6605  T[1]=M
6610  GOSUB 6005
6615  T[2]=I[63,1]
6620  GOSUB 6105
6625  T[3]=L[7]
6630  GOSUB 6215
6635  T[4]=LEN(B$)
6640  T[6]=1
6645  MAT E=T
6650  RETURN 
6700  GOSUB 6800
6705  GOSUB 6900
6710  RETURN 
6800  MAT  PRINT #1,L[8];L
6805  PRINT #1;L$,M$,N$,O$,P$,Q$
6810  RETURN 
6900  MAT  READ #1,T9;L
6905  READ #1;L$,M$,N$,O$,P$,Q$
6910  RETURN 
7000  REM * PRINT NO. *
7005  Y=INT(X)
7010  IF Y THEN 7025
7015  PRINT SPA(4);
7020  GOTO 7030
7025  PRINT  USING "#,4D";Y
7030  Y=X-INT(X)+.001
7040  GOTO ((Y*10)-INT(Y*10))>.05 OF 7070
7045  GOTO Y>.005 OF 7060
7050  PRINT SPA(5);
7055  RETURN 
7060  PRINT  USING "#,.DXXX";Y-INT(Y)
7065  RETURN 
7070  PRINT  USING "#,.DDXX";Y-INT(Y)
7075  RETURN 
7100  REM * FIND LINE *
7105  GOSUB 9000
7110  F=1
7115  IF F2 THEN 7130
7120  E=3
7125  GOTO 999
7130  IF N THEN 7145
7135  E=20
7140  GOTO 999
7145  D8=T[5]=INT((N+.001)*100)/100
7150  GOSUB 5505
7155  IF  NOT T[6] OR (T[5] >= C[5] AND T[5] <= D[5]) THEN 7170
7160  E=19
7165  GOTO 999
7170  E=T[6]=0
7175  RETURN 
7200  REM * DELTA *
7205  X=INT((D7-D6+1.001)*100)/100*D0
7210  Y=INT((D9-D8+.001)*100)/100
7215  IF X <= Y THEN 7240
7220  IF D THEN 7235
7225  D0=D0/10
7230  IF D0 >= .01 THEN 7205
7235  E=19
7240  RETURN 
7300  REM * 'TO' *
7305  IF A$[A]="" THEN 7335
7310  IF A$[A,A]="," THEN 9986
7312  IF A$[A,A+1]="to" THEN 7320
7315  IF A$[A,A+1]#"TO" THEN 7335
7320  A=A+1
7325  GOTO 9986
7335  E=3
7340  GOTO 999
7400  REM * 'BY' *
7405  D0=A[4]
7410  D=0
7415  IF A$[A]="" THEN 7475
7420  IF A$[A,A]="," THEN 7435
7422  IF A$[A,A+1]="by" THEN 7430
7425  IF A$[A,A+1]#"BY" THEN 7475
7430  A=A+1
7435  GOSUB 9986
7440  GOSUB 9000
7445  N=INT((N+.001)*100)/100
7450  IF N THEN 7470
7455  E=2
7460  A=C4
7465  GOTO 999
7470  D=D0=N
7475  RETURN 
7900  T9=INT(((D8-INT(D8))+D0+.001)*100)/100
7905  D8=T[5]=INT(D8)+T9
7910  RETURN 
9000  REM < NUMBER >
9010  N=D3=F2=0
9015  P=1
9020  GOSUB 9982
9025  C4=A
9030  GOSUB 9100
9035  P=1
9040  IF A$[A,A]#"." THEN 9065
9045  A=A+1
9050  D3=N
9055  N=0
9060  GOSUB 9100
9065  N=N/P+D3
9070  GOSUB 9982
9075  IF N<10000 THEN 9095
9080  A=C4
9085  E=7
9090  GOTO 999
9095  RETURN 
9100  FOR I=1 TO 10
9105  IF A$[A,A]=Y$[I,I] THEN 9120
9110  NEXT I
9115  RETURN 
9120  N=N*10+I-1
9125  P=P*10
9130  F2=1
9135  A=A+1
9140  GOTO 9100
9980  REM < MOVE POINTER >
9982  IF A>LEN(A$) THEN 9990
9983  IF A$[A]="" THEN 9990
9984  IF A$[A,A]#" " THEN 9990
9986  A=A+1
9988  GOTO 9982
9990  RETURN 
9999  END 
