1  REM ****  HP BASIC PROGRAM LIBRARY  ********************************
2  REM
3  REM       FILOAD:    LOADS A FILE FROM THE TELETYPE   
4  REM
5  REM       36010  REV C  --  2/73
6  REM
7  REM ****  CONTRIBUTED PROGRAM **************************************
9000  PRINT "IS T/S AN HP 2000 'A', 'B', 'C', 'E', 'F', OR 'S'=ACCESS"
9001  INPUT F$
9002  GOSUB 9080
9003  IF  END #1 THEN 9069
9004  DIM A$[72],B$[72],F$[1]
9005  LET B$="0123456789+-E."
9006  LET J=0
9007  GOSUB 9071
9008  INPUT A$
9009  IF A$#"^" THEN 9012
9010  GOSUB 9071
9011  GOTO 9008
9012  REM TEST FOR NUMBER
9013  LET A1=A2=A3=A4=A5=0
9014  FOR I=1 TO LEN(A$)
9015  IF A$[I,I]=" " THEN 9033
9016  LET A4=A4+1
9017  FOR K=1 TO 14
9018  IF A$[I,I]=B$[K,K] THEN 9021
9019  NEXT K
9020  GOTO 9045
9021  IF K>10 THEN 9025
9022  LET A1=A1*10^(1-SGN(A2))+(K-1)*10^(SGN(A2)*(A2-A4))
9023  LET A5=1
9024  GOTO 9033
9025  IF K#14 THEN 9029
9026  IF A2#0 THEN 9045
9027  LET A2=A4
9028  GOTO 9033
9029  IF K<13 THEN 9032
9030  LET I=I+1
9031  GOTO 9052
9032  IF I#1 THEN 9045
9033  NEXT I
9034  IF A$[1,1]#"-" THEN 9036
9035  LET A1=-A1
9036  LET A1=A1*10^A3
9037  IF A5#1 THEN 9045
9038  LET L=L+2
9039  IF L<N THEN 9043
9040  PRINT '10"LAST ENTRY";
9041  GOSUB 9071
9042  L=2
9043  PRINT #1;A1
9044  GOTO 9008
9045  LET L=L+1+INT((LEN(A$)+1)/2)
9046  IF L<N THEN 9050
9047  PRINT '10"LAST ENTRY";
9048  GOSUB 9071
9049  L=1+INT((LEN(A$)+1)/2)
9050  PRINT #1;A$
9051  GOTO 9008
9052  IF A$[I,I]#"+" THEN 9055
9053  LET I=I+1
9054  GOTO 9057
9055  IF A$[I,I]#"-" THEN 9057
9056  LET I=I+1
9057  FOR I1=I TO LEN(A$)
9058  IF A$[I1,I1]=" " THEN 9064
9059  FOR K=1 TO 10
9060  IF A$[I1,I1]=B$[K,K] THEN 9063
9061  NEXT K
9062  GOTO 9045
9063  LET A3=A3+(K-1)*10^(LEN(A$)-I1)
9064  NEXT I1
9065  IF A$[I-1,I-1]#"-" THEN 9067
9066  LET A3=-A3
9067  IF ABS(A3)>37 THEN 9045
9068  GOTO 9034
9069  PRINT "END OF FILE"
9070  STOP 
9071  LET J=J+1
9072  LET L=0
9073  READ #1,J
9074  PRINT '13'10"STARTED RECORD #"J
9075  RETURN 
9076  STOP 
9080  IF F$="A" THEN 9090
9081  IF F$="E" THEN 9102
9082  IF F$="B" THEN 9094
9084  IF F$="C" THEN 9098
9085  IF F$="F" THEN 9098
9086  IF F$="S" THEN 9098
9087  GOTO 9000
9090  N=65
9092  RETURN 
9094  N=65
9096  RETURN 
9098  N=257
9100  RETURN 
9102  N=129
9104  RETURN 
9999  END 
