start tok64 d64-VmMQ11 0 REM"{cm n}M{space*5}{cm n}M{space*3}{cm n}M 1 REM"{cm n*2}{space*5}{cm n*2}{space*3}{cm n*2} 2 REM"{cm n}Nouble{cm n}Nisk{cm n}Nirectory{space*4}v1.1 3 REM 1991.07.22 4 REM (c) 1991 mr.p. and softwolves 5 REM software public domain 6 REM for sys pd 7 REM 8 REM ------------------------------- this program is public domain 9 REM and may be copied freely. ------------------------------- 10 DIMa$(150,1),bl(150,1) 20 POKE53280,.:POKE53281,. 30 PRINT"{gray}{clear} double disk directory 40 PRINT"{down}{right}{yellow}(c) 1991 mr.p. and softwolves software 50 PRINT,,"public domain":PRINT"{green}for sys pd 60 PRINT"{down}{156}please enter: 70 PRINT"1. screen 80 PRINT"2. printer 90 POKE198,.:WAIT198,1:GETa$:IFa$<"1"ORa$>"2"THEN90 100 IFa$="1"THENdv=3:sk=0:pw=40:GOTO150 110 INPUT"printer device #? 4{left*3}";dv:IFdv<4ORdv>7THEN110 120 INPUT"2nd address{space*5}? 0{left*3}";sk:IFsk<0ORsk>255THEN120 130 INPUT"paper width{space*5}? 80{left*4}";pw:IFpw<>40ANDpw<>80THEN130 140 PRINT"is this correct ?":POKE198,.:WAIT198,1:GETa$:IFa$="n"THEN110 150 INPUT"dual disk drive ? n{left*3}";dd$:IFdd$<>"y"ANDdd$<>"n"THEN150 155 INPUT"two drives{space*6}? n{left*3}";td$:IFtd$<>"y"ANDtd$<>"n"THEN150 160 INPUT"disk device{space*5}? 8{left*3}";dd:IFdd<8ORdd>15THEN160 161 IFtd$="n"THEN170 165 INPUT"2nd disk device ? 9{left*3}";td:IFtd<8ORtd>15THEN165 170 IFdd$="y"ORtd$="y"THENPRINT"{down}{cyan}please insert disks in drive >> 180 IFdd$="n"ANDtd$="n"THENPRINT"{down}{cyan}insert first disk in drive >> 190 POKE198,.:WAIT198,1 200 CLOSE8:OPEN8,dd,0,"$0 210 dr=.:PRINT"{156}{down}{right}reading disk 1":GOSUB1000:d1=de 220 CLOSE8:IFtd$="y"THENOPEN8,td,0,"$0":GOTO260 230 IFdd$="n"THENPRINT"{down}{cyan}insert second disk in drive >>":POKE198,.:WAIT198,1 240 IFdd$="y"THENOPEN8,dd,0,"$1 250 IFdd$="n"THENOPEN8,dd,0,"$0 260 dr=1:PRINT"{156}{down}{right}reading disk 2":GOSUB1000 270 CLOSE8 280 d2=de:IFd1>deTHENde=d1 285 IFdv=3THENPRINT"{green}{clear}"; 290 CLOSE4:OPEN4,dv,sk:CMD4,"double disk directory (c) 1991 mr.p. 300 IFpw=40THEN320 310 PRINT"disk: "a$(0,0)TAB(40)"disk: "a$(0,1):GOTO330 320 PRINTLEFT$(a$(0,0),19)TAB(20)LEFT$(a$(0,1),19) 330 FORi=1TOde 340 IFi>d1THENPRINTTAB(pw/2):GOTO400 350 IFpw=80THEN370 360 PRINTa$(i,0)TAB(20):GOTO400 370 PRINTLEFT$(a$(i,0),17)bl(i,0); 380 b$=RIGHT$(a$(i,0),1):GOSUB2000:PRINT"("b$")"TAB(40) 400 IFi>d2THENPRINT:GOTO500 410 IFpw=80THEN430 420 PRINTa$(i,1):GOTO500 430 PRINTLEFT$(a$(i,1),17)bl(i,1); 440 b$=RIGHT$(a$(i,1),1):GOSUB2000:PRINT"("b$") 500 IFdv>3THEN550 510 rw=rw+1:IFrw<17THEN550 520 PRINT"{white}any key{up}":POKE198,.:WAIT198,1:PRINT"{green}{space*7}{up}":POKE198,.:rw=. 550 NEXT 600 PRINT#4,bl(d1+1,0)"blocks free"TAB(pw/2)bl(d2+1,1)"blocks free 610 CLOSE4 620 END 1000 GET#8,a$,a$,a$,a$ 1010 GET#8,a$:IFa$<>CHR$(34)THEN1010 1020 FORi=1TO16:GET#8,a$:a$(0,dr)=a$(0,dr)+a$:NEXT 1030 GET#8,a$,a$,b$,c$,d$,e$,f$,a$ 1040 a$(0,dr)=a$(0,dr)+","+b$+c$+d$+e$+f$:PRINT"{down}{right}{yellow}title: "a$(0,dr)"{down*2} 1090 de=1 1100 GET#8,a$,a$,l$,h$:bl(de,dr)=ASC(l$+CHR$(.))+256*ASC(h$+CHR$(.)) 1110 GET#8,a$:IFa$="b"THENde=de-1:RETURN 1115 PRINT"{up}{right}{gray}files:"de 1120 IFa$<>CHR$(34)THEN1110 1130 GET#8,a$:IFa$<>CHR$(34)THENa$(de,dr)=a$(de,dr)+a$:GOTO1130 1140 GET#8,a$:IFa$=" "THEN1140 1150 a$(de,dr)=LEFT$(a$(de,dr)+"{space*16}",16)+" "+a$ 1160 GET#8,a$:IFa$THEN1160 1170 de=de+1:GOTO1100 2000 IFb$="p"THENb$="program":RETURN 2010 IFb$="s"THENb$="sequential":RETURN 2020 IFb$="r"THENb$="relative":RETURN 2030 IFb$="d"THENb$="deleted":RETURN 2040 IFb$="u"THENb$="user":RETURN 2050 IFb$="*"THENb$="not closed":RETURN 2060 b$="error":RETURN stop tok64 (bastext 1.0)