home *** CD-ROM | disk | FTP | other *** search
- 10 ON ERROR GOTO 560
- 20 DIM R(50),C(50),P$(50),T(50),S(50),F$(50)
- 30 CLS : KEY OFF
- 40 INPUT "FORMAT FILE ";I$ : PRINT : INPUT "DATA FILE ";O$
- 50 CLS : OPEN I$ FOR INPUT AS 1
- 60 D$=DATE$ : D$=LEFT$(D$,2)+"/"+MID$(D$,4,2)
- 70 T$=TIME$ : T$=LEFT$(T$,2)+":"+MID$(T$,4,2)
- 80 IF EOF(1) THEN 100
- 90 I=I+1 : INPUT #1,R(I),C(I),P$(I),T(I),S(I) : GOTO 80
- 100 LOCATE 25,1 : PRINT D$;" ";T$; : LOCATE 25,35 : PRINT O$;
- 110 FOR J=1 TO I
- 120 IF T(J)<3 THEN LOCATE R(J),C(J) : PRINT P$(J);" ";STRING$(S(J),"_");
- 130 IF T(J)=3 THEN F$(J)=P$(J) : Y%=Y%+LEN(P$(J))
- 140 IF T(J)=4 THEN F$(J)=LEFT$(T$,2)+RIGHT$(T$,2) : TT$=F$(J) : Y%=Y%+4
- 150 IF T(J)=5 THEN F$(J)=LEFT$(D$,2)+RIGHT$(D$,2) : DD$=F$(J) : Y%=Y%+4
- 160 IF (T(J)=1 OR T(J)=2) AND F1=0 THEN F=J : F1=J
- 170 IF T(J)=1 OR T(J)=2 THEN F9=J : Y%=Y%+S(J)
- 180 NEXT J
- 190 OPEN "R",2,O$,Y% : FIELD 2,Y% AS Z$
- 200 W%=LOF(2)/Y% : Z%=1
- 210 GOSUB 400
- 220 '
- 230 GOSUB 1020
- 240 GOSUB 770
- 250 GOSUB 580
- 260 K$=INKEY$ : IF K$="" THEN 260
- 270 IF K$=CHR$(0)+CHR$(81) THEN 870
- 280 IF K$=CHR$(0)+CHR$(73) THEN 920
- 290 IF K$=CHR$(8) AND V$<>"" THEN V$=LEFT$(V$,LEN(V$)-1) : LOCATE R1,POS(0)-1 : PRINT " "; : LOCATE R1,POS(0)-1 : GOTO 260
- 300 IF K$=CHR$(13) OR K$=CHR$(0)+CHR$(80) OR K$=CHR$(0)+CHR$(79) THEN GOSUB 610 : GOTO 250
- 310 IF K$=CHR$(0)+CHR$(117) THEN GOSUB 400 : GOTO 240
- 320 IF K$=CHR$(0)+CHR$(72) OR K$=CHR$(0)+CHR$(71) THEN GOSUB 690 : GOTO 250
- 330 IF K$=CHR$(27) THEN CLOSE : COLOR 7,0 : CLS : KEY ON : PRINT W%;" RECORDS ON ";O$ : CHAIN "MENU.BAS"
- 340 IF T(F)=1 AND (K$<"0" OR K$>"9") THEN PRINT CHR$(7); : GOTO 260
- 350 IF K$<CHR$(32) OR K$>CHR$(126) THEN 260
- 360 V$=V$+K$ : PRINT K$;
- 370 IF LEN(V$)=S(F) THEN GOSUB 610 : GOTO 250
- 380 GOTO 260
- 390 '
- 400 GOSUB 1020
- 410 IF F0=0 THEN F0=1 : RETURN
- 420 COLOR 7,0 : L$=""
- 430 FOR J=1 TO I
- 440 IF T(J)=4 THEN F$(J)=TT$
- 450 IF T(J)=5 THEN F$(J)=DD$
- 460 IF T(J)=1 THEN L$=L$+RIGHT$(STRING$(S(J),"0")+F$(J),S(J))
- 470 IF T(J)=2 THEN L$=L$+LEFT$(F$(J)+SPACE$(S(J)),S(J))
- 480 IF T(J)>2 THEN L$=L$+F$(J)
- 490 IF T(J)=1 OR T(J)=2 THEN LOCATE R(J),C(J)+LEN(P$(J))+1 : PRINT STRING$(S(J),"_");
- 500 IF T(J)<3 THEN F$(J)=""
- 510 NEXT J
- 520 COLOR 0,7 : F=F1 : LSET Z$=L$ : PUT 2,Z% : IF Z%>W% THEN W%=Z%
- 530 GOSUB 1020
- 540 RETURN
- 550 '
- 560 CLOSE : COLOR 7,0 : CLS : PRINT "ERROR ";ERR;" AT ";ERL : KEY ON : END
- 570 '
- 580 R1=R(F) : C1=C(F)+LEN(P$(F))+1 : LOCATE R1,C1 : COLOR 0,7 : V$=""
- 590 PRINT LEFT$(F$(F)+SPACE$(S(F)),S(F)); : LOCATE R1,C1,1 : RETURN
- 600 '
- 610 IF V$<>"" THEN F$(F)=V$
- 620 LOCATE R1,C1 : COLOR 7,0 : PRINT F$(F);SPACE$(S(F)-LEN(F$(F))); : COLOR 0,7
- 630 IF K$=CHR$(0)+CHR$(79) THEN F=F9 : RETURN
- 640 IF F=F9 THEN F=F1 : RETURN
- 650 F=F+1
- 660 IF T(F)=1 OR T(F)=2 THEN RETURN
- 670 GOTO 640
- 680 '
- 690 IF V$<>"" THEN F$(F)=V$
- 700 LOCATE R1,C1 : COLOR 7,0 : PRINT F$(F);SPACE$(S(F)-LEN(F$(F))); : COLOR 0,7
- 710 IF K$=CHR$(0)+CHR$(71) THEN F=F1 : RETURN
- 720 IF F=F1 THEN RETURN
- 730 F=F-1
- 740 IF T(F)=1 OR T(F)=2 THEN RETURN
- 750 GOTO 720
- 760 '
- 770 IF Z%>W% THEN RETURN
- 780 GET 2,Z% : P=1 : COLOR 7,0
- 790 FOR J=1 TO I
- 800 IF T(J)=1 OR T(J)=2 THEN F$(J)=MID$(Z$,P,S(J)) : P=P+S(J)
- 810 IF T(J)>3 THEN F$(J)=MID$(Z$,P,4) : P=P+4
- 820 IF T(J)=3 THEN F$(J)=MID$(Z$,P,LEN(P$(J))) : P=P+LEN(P$(J))
- 830 IF T(J)>0 AND T(J)<3 THEN LOCATE R(J),C(J)+LEN(P$(J))+1 : PRINT F$(J);
- 840 NEXT J
- 850 F=F1 : RETURN
- 860 '
- 870 IF Z%<W% THEN Z%=Z%+1 : GOTO 230
- 880 IF Z%>W% THEN GOTO 230
- 890 IF Z%=W% THEN Z%=Z%+1 : GOSUB 950 : GOTO 230
- 900 GOTO 230
- 910 '
- 920 IF Z%>1 THEN Z%=Z%-1 : GOTO 230
- 930 GOTO 230
- 940 '
- 950 COLOR 7,0
- 960 FOR J=1 TO I
- 970 IF T(J)=1 OR T(J)=2 THEN LOCATE R(J),C(J)+LEN(P$(J))+1 : PRINT STRING$(S(J),"_"); : F$(J)=""
- 980 NEXT J
- 990 COLOR 0,7
- 1000 RETURN
- 1010 '
- 1020 COLOR 7,0 : LOCATE 25,73 : PRINT Z%;"-";W%; : COLOR 0,7 : RETURN