1  H$='29'31'13'26'30
10  DIM A$[30],B$[30],C$[10],D$[10],H$[5],T$[10]
11  DIM C[4,8],S[16],R[16],D[8],P[13]
12  DIM U[30]
100  FILES C1,C0
110  C$="0123456789"
200  READ C9,C8,C7,P9
210  DATA 13,4,8,13
220  GOSUB 9100
240  MAT  READ P
245  DATA 1000,3800,4300,4900,6500,7500,7560,7760,8760,9760,9870,10350,10400
250  MAT  READ U
255  DATA 2100,3101,3300,3200,3400,4100,4200,0,1102,1104,1106,1108,1114,1118,1122
260  DATA 1126,1400,1401,1402,1403,1404,1405,1420,1300,1301,1302,1303,1200,1201,3120
265  DATA "C1","C2","C3","C4","C5","C6","C7","C8","C9","C10","C11","C12","C13"
300  PRINT H$[1,2];
310  B$="CURRENT DATE (MDDYY)"
320  GOSUB 4600
330  D5=Z
400  T$="A"
410  T0=T1=T2=0
420  MAT S=ZER
430  MAT R=ZER
1000  PRINT H$[1,2]"ENTER CONSTANTS"
1010  K3=2
1015  F1=0
1017  B$="CUST#"
1020  K1=1
1025  K2=9999
1030  GOSUB 4500
1035  B$="TRANSACTION"
1040  K2=9
1045  K1=0
1050  GOSUB 4500
1055  B$="SALES LOCATION"
1060  K2=99
1065  K3=5
1070  GOSUB 4500
1075  B$="CUST# UNIT LOCATION"
1077  K1=1
1080  K2=9999
1085  GOSUB 4500
1090  B$="INVOICE#"
1092  K1=0
1095  K2=99999.
1100  GOSUB 4500
1110  B$="LEASE STATUS"
1115  K2=9
1120  GOSUB 4500
1125  B$="FIELD SERVICE LOC."
1130  K2=99
1135  GOSUB 4500
1140  GOSUB 4900
1141  B$="TAX RATE"
1142  K2=999
1143  F1=1
1144  GOSUB 4500
1145  K3=K3+1
1146  R[16]=INT(Z/100)
1147  R[11]=Z-S[16]*100
1148  B$="SALESMAN"
1150  K1=1001
1155  K2=1400
1160  F1=0
1165  GOSUB 4500
1170  B$="AGREEMENT"
1175  F1=1
1180  K1=100000.
1185  K2=999999.
1190  GOSUB 4500
1195  E7=Z
1200  B$="MAINT. PRICE"
1201  K1=0
1202  K2=999
1203  GOSUB 4500
1204  S6=Z
1205  B$="EQ. RENTAL PRICE"
1210  K2=9999
1215  F1=0
1220  K3=15
1222  GOSUB 4500
1240  PRINT 
1245  PRINT "IS THE ABOVE CORRECT";
1250  INPUT A$
1255  IF A$[1,1]#"Y" THEN 1000
1260  PRINT 
1265  B$="DATE"
1270  GOSUB 4600
1275  IF B2 THEN 1000
1280  R[4]=(D3-INT(D3/10)*10)*10^4+D1*100+D2
1285  PRINT 
1290  B$="ADD "
1295  GOSUB 4400
1297  IF B2 THEN 1260
1300  IF  NOT B1 THEN 1325
1305  PRINT '7'7'7"UNIT IN USE";H$[3,4];H$[4,4];H$[2,2];
1310  GOTO 1290
1325  MAT S=R
1327  S[1]=C0
1330  C[R2,7]=E7
1340  GOSUB 4300
1345  GOSUB 9200
1350  GOTO 1285
4000  B1=0
4002  P=C0
4004  IF C0<9 THEN 4022
4006  P=9
4008  IF C0 >= 9 AND C0 <= 16 THEN 4022
4010  P=10
4012  IF C0 >= 17 AND C0 <= 23 THEN 4022
4014  P=11
4015  IF C0 >= 24 AND C0 <= 27 THEN 4022
4016  P=12
4018  IF C0=28 OR C0=29 THEN 4022
4020  P=13
4022  R=C1
4023  IF P#5 THEN 4025
4024  R=R-900
4025  IF P=1 THEN 4028
4026  R=R+P[P-1]
4028  IF R <= P[P] THEN 4036
4029  PRINT '7'7"SER#>";
4030  X=P[P]
4031  IF P=1 THEN 4033
4032  X=X-P[P-1]
4033  PRINT X;H$[3,5];
4034  B1=1
4035  RETURN 
4036  X=R/C8
4038  X1=INT(X)
4040  X2=INT((X-X1)*100)
4042  FOR I=1 TO (C8-1)
4044  IF X2=I*25 THEN 4054
4046  NEXT I
4048  R1=X1
4050  R2=C8
4052  GOTO 4057
4054  R1=X1+1
4056  R2=I
4057  RESTORE 265
4058  FOR N=1 TO C9
4060  READ A$
4062  IF R1<201 THEN 4070
4063  R1=R1-200
4065  NEXT N
4067  PRINT "**";
4068  STOP 
4070  ASSIGN A$,1,W5
4080  RETURN 
4100  B1=0
4102  MAT  READ #1,R1;C
4105  IF C[R2,1]=-1 THEN 4180
4107  B1=1
4180  RETURN 
4200  Z=B1=0
4210  FOR I1=1 TO LEN(A$)
4220  FOR I2=1 TO 10
4230  IF A$[I1,I1]=C$[I2,I2] THEN 4280
4240  NEXT I2
4250  PRINT '7"BAD DATA";H$[3,5];
4260  B1=1
4270  RETURN 
4280  Z=Z*10+I2-1
4290  NEXT I1
4295  RETURN 
4300  S[13]=INT(S6/10)
4302  C[R2,1]=S[1]*10^4+S[2]
4305  C[R2,2]=S[3]*10^5+S[4]
4310  C[R2,3]=S[5]*10^4+S[6]
4315  C[R2,4]=S[7]*10+S[8]
4320  C[R2,5]=(S[9]*10^4+S[10]*100+S[11])*S5
4325  C[R2,6]=S[12]*100+S[13]
4327  C[R2,8]=(S6-S[13]*10)*10^5+S[15]*10+S[16]
4330  MAT  PRINT #1,R1;C
4340  RETURN 
4400  B2=0
4402  PRINT B$;"PRODUCT TYPE";
4405  INPUT A$
4410  IF A$#"END" THEN 4425
4415  B2=1
4420  RETURN 
4425  GOSUB 4200
4430  IF B1 THEN 4400
4435  IF Z>0 AND Z<31 THEN 4450
4440  GOSUB 4250
4445  GOTO 4400
4450  C0=Z
4452  GOSUB 5000
4453  IF B3 THEN 4400
4460  PRINT "SERIAL#";
4462  INPUT A$
4465  IF A$="END" THEN 4415
4470  GOSUB 4200
4475  IF B1 THEN 4460
4476  C1=X=Z
4477  IF C0#5 THEN 4480
4478  X=X-900
4480  IF X>0 THEN 4485
4482  GOSUB 4250
4483  GOTO 4460
4485  GOSUB 4000
4490  IF B1 THEN 4497
4495  GOSUB 4100
4497  RETURN 
4500  PRINT TAB(2);B$;
4505  INPUT A$
4507  IF A$="END" THEN 9999
4510  GOSUB 4200
4515  IF B1 THEN 4500
4520  IF Z >= K1 AND Z <= K2 THEN 4535
4525  GOSUB 4250
4530  GOTO 4500
4535  IF F1 THEN 4545
4537  R[K3]=Z
4540  K3=K3+1
4545  RETURN 
4600  B2=1
4602  PRINT TAB(2);B$;
4605  INPUT A$
4607  IF A$="END" THEN 4660
4608  B2=0
4610  GOSUB 4200
4612  IF B1 THEN 4600
4615  IF Z<10^6 AND Z>9999 THEN 4630
4620  GOSUB 4250
4625  GOTO 4600
4630  D1=INT(Z/10^4)
4635  IF D1<1 OR D1>12 THEN 4620
4640  D2=INT((Z-D1*10^4)/100)
4645  IF D2<1 OR D2>31 THEN 4620
4650  D3=Z-D1*10^4-D2*100
4655  IF D3<68 OR D3>77 THEN 4620
4660  RETURN 
4900  PRINT TAB(2)"TERMS";
4905  INPUT A$
4910  L=LEN(A$)
4915  IF L>1 THEN 4930
4920  GOSUB 4250
4925  GOTO 4900
4930  S5=1
4935  IF A$[L,L]="M" THEN 4950
4940  IF A$[L,L]#"A" THEN 4920
4945  S5=-1
4950  A$=A$[1,L-1]
4955  GOSUB 4200
4960  IF B1 THEN 4900
4965  IF Z<0 OR Z>99 THEN 4920
4970  GOTO 4537
5000  B3=0
5010  IF C0#8 THEN 5050
5040  PRINT "VT06";
5045  GOTO 5105
5050  X=INT(U[C0]/1000)
5055  X1=U[C0]-X*1000
5060  GOTO X OF 5065,5070,5075,5080
5065  X=2200
5067  GOTO 5090
5070  X=3000
5072  GOTO 5090
5075  X=3300
5077  GOTO 5090
5080  X=3360
5090  PRINT X;"-";X1;
5105  INPUT A$
5110  IF A$[1,1]="Y" THEN 5118
5115  B3=1
5117  PRINT H$[4,4];
5118  PRINT H$[4,5];
5120  RETURN 
9100  IF  END #2 THEN 9160
9110  FOR I=1 TO 100
9115  READ #2,I
9120  FOR I1=1 TO 4
9125  READ #2;C0,C1,T$,T0,T1,T2,D5,T3
9130  NEXT I1
9135  NEXT I
9140  PRINT "TRANSACTION FILE FULL--PLEASE EMPTY"
9145  STOP 
9160  IF  END #2 THEN 9170
9165  RETURN 
9170  PRINT "*";
9175  STOP 
9200  T3=S[3]
9205  PRINT #2;C0,C1,T$[1,1],T0,T1,T2,D5,T3
9210  IF TYP(-2)=3 THEN 9140
9220  PRINT #2; END 
9230  RETURN 
9999  END 
