5'DIR.DVI by Joel Orr [72126,1613] 6'Modified for SCREEN print option by Mark Kushinsky [70466,1511] with midwifery by Maddi Durholz [70136,1317] 10 GOTO90:'Direct SORT 20 CLEAR256,58060:LOADM"sort":DEFINTJ,Z:DEFSTRF-I:E$=CHR$(27) 30 CLS:A$="Direct":FORW=1TO8:READX%:POKEW+63108,X%:NEXT 40 PRINT@120,"Sorting...":J=0:CALLHIMEM+5,0,VARPTR(J):IFJTHENSOUND9394,10ELSE450 50 IFJ=1THENPRINT@120,E$"p File not found "E$"q"ELSEPRINT"...":PRINT:PRINTE$"p Line too long "E$"q" 60 IFINKEY$=""THEN60ELSEMENU 90 CLEAR(FRE(0))*2/3:MAXFILES=2 100 DEFSTRA-M:DEFINTN-Z:R=0:DIMA(55),B(55) 110 CLS 120 F1=DATE$:F2=TIME$ 130 OPEN"0:DIRECT"FORINPUTAS1:INPUT#1,E1,E2,E3 140 FORN=1TO15:FORP=0TO1:FORQ=0TO15 150 A(R)=MID$(DSKI$(0,20,N,P),1+16*Q,10):H=MID$(A(R),1,1) 160 IFH=CHR$(255)THEN190 170 IFH=" "ORH=CHR$(0)ORLEN(A(R))=0THEN180ELSER=R+1:PRINT@130,R-1;A(R-1);SPACE$(20):IFR>55THENPRINT"DIRECT FULL":GOTO190 180 NEXT:NEXT:NEXT 190 T=0:C=" " 200 IFEOF(1)THEN210ELSELINEINPUT#1,B(T):PRINT@80,"Old: ";T:PRINTB(T);SPACE$(20):T=T+1:GOTO200 210 CLS:PRINT@133,"Thinking...":T1=T:FORU=0TOR-1:V=0 220 IFMID$(A(U),1,9)=LEFT$(B(V),9)THENB(V)=B(V)+"*":GOTO230ELSEV=V+1:IFV>TTHENB(T1)=A(U)+F1+F2:T1=T1+1ELSEGOTO220 230 NEXT 240 CLS:IFT=T1THEN250ELSEFORW=TTOT1-1:PRINT"NEW ENTRY:":PRINTB(W):INPUT"Comment";G:B(W)=B(W)+G:G=" ":NEXT 250 CLS:PRINT"Disk Comment:":PRINTE3:INPUT"New";E3 260 CLOSE:OPEN"DIRECT.DO"FOROUTPUTAS1:PRINT#1,F1;","F2;",";E3 270 FORW=0TOT-1:D=RIGHT$(B(W),1):IFD<>"*"THEN280ELSEPRINT#1,MID$(B(W),1,LEN(B(W))-1) 280 NEXT 290 IFT<>T1THENFORW=TTOT1-1:PRINT#1,B(W):NEXT 300 CLOSE:GOTO20 310 CLOSE:CLS:H=" ":INPUT"

rint creen (CR=Exit)";H:ONINSTR("PpSs",H)+1GOTO320,330,330,390,390 320 KILL"DIRECT.DO":CLS:FILES:MENU 330 OPEN"DIRECT.DO"FORINPUTAS1:INPUT#1,G:LPRINT"Disk Directory as of ";G;" at ";:INPUT#1,G:LPRINTG:INPUT#1,G:LPRINTG:LPRINT 340 LPRINT"File P/D Created At Bytes Comments":LPRINTSTRING$(80,95) 350 IFEOF(1)THENLPRINT:LPRINT"TOTAL BYTES: ";256*T0;CHR$(12):GOTO320 360 LINEINPUT#1,G:F=MID$(G,10,1):I=CHR$(128)+CHR$(01):Z=INSTR(I,F):I=MID$("DPM",Z+1,1):IFZ<>0THENZ=1 370 CLOSE2:OPEN"0:"+LEFT$(G,9)FORINPUTAS2:J8=LOF(2):T0=T0+J8 380 LPRINTMID$(G,1,9);" ";I;" ";MID$(G,10+Z,8);" ";MID$(G,18+Z,8);" ";256*J8,MID$(G,26+Z):GOTO350 390 CLS:OPEN"DIRECT.DO"FORINPUTAS1:INPUT#1,G:PRINT"Disk Directory as of ";G;" at ";:INPUT#1,G:PRINTG:INPUT#1,G:PRINTG:PRINT 400 PRINT"File P/D Created At Bytes Comments":PRINTSTRING$(80,95) 410 IFEOF(1)THENPRINT:PRINT"TOTAL BYTES: ";256*T0:GOTO 412:ELSE 420 412 PRINT:PRINTCHR$(27);"p";" Any Key to continue. ";CHR$(27);"q"; 415 Y$=INKEY$:IF Y$="" THEN 415 ELSE320 420 LINEINPUT#1,G:F=MID$(G,10,1):I=CHR$(128)+CHR$(01):Z=INSTR(I,F):I=MID$("DPM",Z+1,1):IFZ<>0THENZ=1 430 CLOSE2:OPEN"0:"+LEFT$(G,9)FORINPUTAS2:J8=LOF(2):T0=T0+J8 440 PRINTMID$(G,1,9);" ";I;" ";MID$(G,10+Z,8);" ";MID$(G,18+Z,8);" ";256*J8,MID$(G,26+Z):GOTO410 450 OPEN"0:DIRECT"FOROUTPUTAS1:OPEN"DIRECT.DO"FORINPUTAS2 460 IFEOF(2)THEN310 470 LINEINPUT#2,G:PRINT#1,G:GOTO460 480 DATA68,73,82,69,67,84,0,65