1 'BCKLST.BA by W.H.Calvin [71256,1353] - 5/3/85; bytefought by Bill Templeton 2 'incorporating PRDIR.BA in DL4 3 'which is copyr.1984 by Don Corbitt, rel. for non commercial use only 4 'Makes list of filenames requiring backup 5 MAXFILES=3:GOTO22 6 OPENXX$FOROUTPUTAS2:OPEN"LCD:"FOROUTPUTAS1 7 GOSUB9:IFL(0)=0THENCLOSE:RETURN 8 CC=C(L(0)):CL=L(L(0)):L(0)=L(0)-1:GOTO7 9 T=CC\3:S=(CCMOD3)*6+1:FORX=0TO3STEP2:DR$=DSKI$(0,T,S+X,0)+LEFT$(DSKI$(0,T,S+X,1),127):IFXTHEN12 10 L$(CL)=MID$(DR$,2,9):PRINT#1,"0";:FORZ=0TOCL:PRINT#1,":"L$(Z); 11 NEXTZ:PRINT#1,:PRINT#1,SPACE$(2*CL)"--Name----Created--Modified-Length-" 12 FORY=1*DS+1TO12*DS+1STEPDS:IFMID$(DR$,Y,1)=CHR$(0)THEN19 13 PRINT#1,SPACE$(CL*2);MID$(DR$,Y+1,9)" ";:D$=MID$(DR$,Y+12,2):GOSUB20:D$=MID$(DR$,Y+14,2):GOSUB20 14 IFMID$(DR$,Y,1)<>CHR$(240)THEN16 15 L(0)=L(0)+1:C(L(0))=ASC(MID$(DR$,Y+11,1)):L(L(0))=CL+1:PRINT#1,:GOTO19 16 U=ASC(MID$(DR$,Y+11,1)):FL=ASC(MID$(DR$,Y+10,1)):PRINT#2,MID$(DR$,Y+1,9)" ";:A=ASC(LEFT$(D$,1))+ASC(RIGHT$(D$,1))*256 17 PRINT#2,USING"##/##/## ";INT(A/2^12),INT(A/2^7)AND31,(A-INT(A/2^8)*2^8)AND127 18 U=ASC(MID$(AT$,U+1,1)):IFU<240THENFL=FL+6*256:GOTO18ELSEFL=FL+(U-241)*256:PRINT#1,FL+1 19 NEXTY,X:RETURN 20 A=ASC(LEFT$(D$,1))+ASC(RIGHT$(D$,1))*256 21 PRINT#1,USING"##/##/## ";INT(A/2^12),INT(A/2^7)AND31,(A-INT(A/2^8)*2^8)AND127;:RETURN 22 CLS:PRINT"BACKUP INDEX PROGRAM":INPUT" MOUNT ORIGINAL DISK";XX$ 23 CLEAR2000:DIML(30),C(30),L$(10),NA$(100),DA$(100),DB$(100):DS=18:AT$=DSKI$(0,0,5,0)+LEFT$(DSKI$(0,0,5,1),127) 24 XX$="ORIGZQ":GOSUB6:CLS:PRINT"Finished with original":PRINT "If merely want files modified":PRINT " later than a certain date,":PRINT"Enter MM/DD; otherwise":INPUT" Mount backup disk, press ENTER";XX$:IFXX$<>""THEN200 25 CLEAR3000:DIML(30),C(30),L$(10),NA$(100),DA$(100),DB$(100):DS=18:AT$=DSKI$(0,0,5,0)+LEFT$(DSKI$(0,0,5,1),127) 26 XX$="bckdzq":GOSUB6:PRINT"WAIT PATIENTLY while disks compared":PRINT:PRINT"Filename--Orig.--Backup- 27 OPEN"ORIGZQ"FORINPUTAS1:OPEN"BCKDZQ"FORINPUTAS2:OPEN"DISKZQ"FOROUTPUTAS3:FORN=1TO100:IFEOF(1)THEN29 28 LINEINPUT#1,LN$:NA$(N)=LEFT$(LN$,8):DA$(N)=MID$(LN$,11,5):NEXT 29 FORN=1TO100:IFEOF(2)THEN34 30 LINEINPUT#2,LN$:FORK=1TO100: IFNA$(K)=""THEN33 31 IFLEFT$(LN$,8)=NA$(K)THENDB$(K)=MID$(LN$,11,5) 32 NEXTK 33 NEXTN 34 PRINT#3,DATE$" "TIME$:PRINT#3,"":PRINT#3,"Filename--Orig.--Backup-":PRINT#3,"":FORN=1TO100:IFNA$(N)=""THEN39 35 DB=31*(VAL(MID$(DB$(N),1,2))-1)+VAL(MID$(DB$(N),4,2)) 36 DA=31*(VAL(MID$(DA$(N),1,2))-1)+VAL(MID$(DA$(N),4,2)):IFDB>300ANDDA<60THENDA=DA+12*31 37 IFDB$(N)=""ORDB<=DATHENPRINT#3,NA$(N);" ";DA$(N);" ";DB$(N):PRINTNA$(N);" ";DA$(N);" ";DB$(N) 38 NEXTN 39 KILL"BCKDZQ.DO" 40 KILL"ORIGZQ.DO":MENU 200 'Create file where mod-date>=MM/DD 207 OPEN"ORIGZQ"FORINPUTAS1:OPEN"DISKZQ"FOROUTPUTAS3:PRINT#3,DATE$" "TIME$:PRINT#3,"":PRINT#3,"Filename--Backup >= ";XX$:PRINT#3,"": 220 IFEOF(1)THEN40ELSE LINEINPUT#1,LN$:DA$(0)=MID$(LN$,11,5):DA=31*(VAL(MID$(DA$(0),1,2))-1)+VAL(MID$(DA$(0),4,2)) 230 DB=31*(VAL(MID$(XX$,1,2))-1)+VAL(MID$(XX$,4,2)):IFDB>300ANDDA<60THENDA=DA+12*31 240 IFDB<=DATHENPRINT#3,LEFT$(LN$,8);" ";DA$(0):PRINTLEFT$(LN$,8);" ";DA$(0) 250 GOTO220 999 'BCKLST.BA mod to BESAFE/BACKUP, 5/3/85 W.H.Calvin