0 CLS:ONERRORGOTO16:PRINT:FILES:PRINT@280,"Name Kill Filn Sort Repl Dbas Bank Menu";:KEYON 2 ONKEYGOSUB4,6,22,98,48,8,40,16:A3$=INKEY$:IFA3$=CHR$(13)THEN16ELSE2 4 CLS:PRINT:FILES:LINEINPUT"reNAME which file?:";A$:IFA$=""THEN0ELSELINEINPUT"as what file?:";B$:NAMEA$ASB$:GOTO4 6 CLS:PRINT:FILES:LINEINPUT"KILL which file?:";C$:IFC$=""THEN0ELSEKILLC$:GOTO6 8 CLS:PRINT:FILES:LINEINPUT" DBASE File: *.DO : ";D$:IFD$=""THEN0 10 DEFINTA-Z:PR=1:PG!=0:FORN=0TO3:READX:POKEVARPTR(PG!)+N,X:NEXT 12 DATA235,195,116,91 14 FORI=1TOLEN(D$):POKE64984+I,ASC(MID$(D$,I,1)):NEXT:POKE64985+LEN(D$),0:CALLVARPTR(PG!),PR,64985 16 KEY8,"Menu"+CHR$(13)+CHR$(254)+CHR$(13)+CHR$(245)+CHR$(62)+CHR$(10)+CHR$(204)+CHR$(63)+CHR$(109)+CHR$(241)+CHR$(201) 18 MAXFILES=1:CLEAR256,MAXRAM:DATE$=LEFT$(DATE$,6)+"84" 20 A=64228:B=63066:POKEA,127:POKEA+1,248:POKEB,1:MENU 22 CLS:DEFINTA-Z:DEFSTRD-F:DIMF(23),A(23) 24 FORX=-1408TO-1639STEP-11:IFPEEK(X)THENFORZ=0TO7:F(Y)=F(Y)+CHR$(PEEK(X+3+Z)):NEXT:GOSUB38 26 NEXT:F(Y-1)="NonameBA":F(Y-2)="Paste BF":X=-1103:GOSUB38:Y=Y-1:X=Y\2 28 FORZ=0TOY-X:W=Z 30 IFA(W)>A(W+X)THENB=A(W):A(W)=A(W+X):A(W+X)=B:E=F(W):F(W)=F(W+X):F(W+X)=E:W=W-X:IFW>-1THEN30 32 NEXT:X=X\2:IFXTHEN28ELSEF(Y)="Reserved":F(Y+1)="File BF":A(Y+1)=A(Y)+MAXRAM-HIMEM:Y=Y+2:A(Y)=A(Y-1)+MAXFILES*267:Z=0 34 CLS:FORW=ZTO15+Z:PRINT@(W-Z)*20,LEFT$(F(W),6)"."RIGHT$(F(W),2);:PRINTUSING" #####";A(W+1)-A(W);:IFW+1=YTHENW=98 36 NEXT:E=INPUT$(1):Z=W:IFW=99THENCLEAR:GOTO0ELSE34 38 A(Y)=PEEK(X+2)*256+PEEK(X+1)-65536:Y=Y+1:RETURN 40 C$="84/09/01":REM Enter C$= 3 months after batteries installed. 42 D$=RIGHT$(DATE$,2)+"/"+LEFT$(DATE$,5):IFD$"."THENF$=F$+".DO" 102 ONERRORGOTO16:A$="Lines in Header ":GOSUB128:INPUTM:OPENF$FORINPUTAS1:FORJ=1TOM+1:LINEINPUT#1,Z$:NEXT 104 CLS:PRINT"----.----1----.----2----.----3----.----4";:PRINTZ$ 106 A$="Begin at position: ":GOSUB128:INPUTB:IFB=0THEN106 108 A$="End at position: ":GOSUB128:INPUTE:N=M+1 110 N=N+1 112 LINEINPUT#1,Z$:IFEOF(1)THEN114ELSE110 114 CLOSE:DIMD$(N):DIMY$(M):OPENF$FORINPUTAS1 116 IFM=0THEN120 118 FORJ=1TOM:LINEINPUT#1,Y$(J):NEXT 120 FORI=M+1TON:LINEINPUT#1,D$(I):NEXT:CLOSE1:GOSUB130:KILLF$:OPENF$FOROUTPUTAS1 122 IFM=0THEN126 124 FORJ=1TOM:PRINT#1,Y$(J):NEXT 126 FORI=M+1TON:PRINT#1,D$(I):NEXTI:CLOSE:GOTO0 128 PRINT@240,SPACE$(40);:PRINT@240,A$;:RETURN 130 Z5=N 132 Z5=INT(Z5/2):IFZ5=0THEN148 134 Z2=1:Z3=N-Z5 136 Z1=Z2 138 Z4=Z1+Z5 140 IF(MID$(D$(Z1),B,(E-B)+1))<(MID$(D$(Z4),B,(E-B)+1))THEN144ELSE142 142 Z6$=D$(Z1):D$(Z1)=D$(Z4):D$(Z4)=Z6$:Z1=Z1-Z5:IFZ1<1THEN144ELSE138 144 Z2=Z2+1 146 IFZ2>Z3THEN132ELSE136 148 RETURN