home
***
CD-ROM
|
disk
|
FTP
|
other
***
search
/
CP/M
/
CPM_CDROM.iso
/
enterprs
/
c128
/
util
/
diskmgr.c64
(
.txt
)
< prev
next >
Wrap
Commodore BASIC
|
1991-01-05
|
6KB
|
384 lines
8103 CLR
8105 CLOSE15
8107 CLOSE5
8109 CLOSE1
8111 FR=FRE(0)
8114 IF(FR<0)THEN:FR=(FR+65536)
8128 S=((FR-400)/2)
8136 AK$=(" [160] [192][192][192][192][192][192][192][192][192][192][192][192][192][192][192][192][192][192][192][192][192][192][192][192][192][192][192][192][192][192][192][192][192][192] "+CHR$(13))
8181 DIMTE%(S)
8188 POKE53280,0
8196 POKE53281,0
8204 DN$="[158]"
8228 PRINT"[147]";
8231 PRINTCHR$(14);
8234 PRINTCHR$(158);
8238 PRINT
8239 PRINT
8240 PRINT
8241 PRINTTAB(9)
8243 PRINT"[176][192][192][192][192][192][192][192][192][192][192][192][192][192][192][192][192][192][192][192][192][174]"
8269 PRINTTAB(9)
8271 PRINT"[221] [212][200][197] [196][201][211][203] [205][193][206][193][199][197][210] [158] [221]"
8299 PRINTTAB(9)
8301 PRINT"[173][192][192][192][192][192][192][192][192][192][192][192][192][192][192][192][192][192][192][192][192][189]"
8327 PRINT
8328 PRINT
8329 PRINTAK$
8331 PRINT" 1 [196]IRECTORY 2 [206]EW [196]ISK"
8364 PRINT" 3 [201]NITIALIZE 4 [195]OPY [198]ILE ON [196]ISK"
8406 PRINT" 5 [195]OPY TO [206]EW [196]ISK 6 [210]ENAME [198]ILE"
8442 PRINT" 7 [196]ELETE A [198]ILE 8 [195]OLLECT [194][193][205]"
8478 PRINT" 9 [209]UIT TO [194]ASIC [193] [193][211][195][201][201]-[195][194][205] [195]ONVERT"
8520 PRINT" [195] [195]OMBINE [198]ILES [208] [208]RINT [196]ISK [198]ILE"
8560 PRINT" [211] [211]PLIT [196]ISK [198]ILE [214] [214]IEW [196]ISK [198]ILE"
8599 PRINT
8600 PRINTAK$
8602 PRINTTAB(12)
8604 PRINT"-=[ [211]ELECT ]=-[146]"
8625 GOSUB9484
8628 DI$=""
8630 IF(W$="A")THEN:PRINTW$:GOSUB10468:GOTO8741
8644 IF(W$="C")THEN:PRINTW$:GOSUB10780:GOTO8741
8658 IF(W$="P")THEN:PRINTW$:GOSUB10064:GOTO8741
8672 IF(W$="S")THEN:PRINTW$:GOSUB10169:GOTO8741
8686 IF(W$="V")THEN:PRINTW$:GOSUB10365:GOTO8741
8700 IF((W$<"1")OR(W$>"9"))THEN8625
8712 PRINTW$
8714 CH=(ASC(W$)-48)
8720 ONCHGOSUB8744,8945,9036,9119,9509,9193,9264,9302,9495
8741 GOTO8204
8744 PRINT"[147][155]"
8748 PRINTTAB(11)
8750 PRINT"[196] [201] [210] [197] [195] [212] [207] [210] [217]"
8770 PRINTCHR$(13);
8773 PRINTAK$
8775 OPEN1,8,0,"$"
8782 GET#1,A$
8786 GET#1,B$
8790 PRINT"";
8793 GET#1,A$
8797 GET#1,B$
8801 GET#1,A$
8805 GET#1,B$
8809 C=(ASC((A$+CHR$(0)))+(ASC((B$+CHR$(0)))*256))
8825 IF(ST<>0)THEN8932
8831 PRINTTAB(7)
8833 PRINTMID$(STR$(C),2,255);
8840 PRINTTAB(11)
8842 GET#1,B$
8846 IFSTTHEN8908
8850 IF(B$<>CHR$(34))THEN8842
8858 GET#1,B$
8862 IF(B$<>CHR$(34))THEN:PRINTB$;:GOTO8858
8874 GET#1,B$
8878 IF(B$=CHR$(32))THEN8874
8886 PRINTTAB(29)
8888 C$=""
8890 C$=(C$+B$)
8894 GET#1,B$
8898 IF(B$<>"")THEN8890
8904 PRINTLEFT$(C$,3)
8908 IF(ST=0)THEN8793
8914 PRINTTAB(21)
8916 PRINT"[194]LOCKS [198]REE"
8930 PRINTAK$
8932 CLOSE1
8934 GOSUB9390
8937 IF(VAL(A$)<>0)THENRETURN
8942 GOTO9454
8945 PRINTDN$;
8947 PRINTTAB(7)
8949 PRINT"[201]NSERT DISK TO BE FORMATTED"
8979 INPUT"[196]ISK NAME";DI$
8994 IF(LEN(DI$)=0)THENRETURN
8999 INPUT"[196]ISK [201][196]";EX$
9011 IF(LEN(EX$)=0)THENRETURN
9016 CLOSE15
9018 OPEN15,8,15,((("N:"+DI$)+",")+EX$)
9033 GOTO9397
9036 PRINTDN$;
9038 PRINTTAB(5)
9040 PRINT"[201]NSERT DISK TO BE INITIALIZED"
9072 PRINTTAB(7)
9074 PRINT"[208]RESS [210][197][212][213][210][206] TO INITIALIZE"
9103 PRINT
9104 GOSUB9484
9107 CLOSE15
9109 OPEN15,8,15,"I"
9116 GOTO9397
9119 PRINTDN$
9121 PRINT
9122 INPUT"[211]OURCE FILE NAME";DI$
9144 IF(LEN(DI$)=0)THENRETURN
9149 INPUT"[206]EW FILE NAME";NW$
9168 IF(LEN(NW$)=0)THENRETURN
9173 CLOSE15
9175 OPEN15,8,15,((("C:"+NW$)+"=")+DI$)
9190 GOTO9397
9193 PRINTDN$
9195 PRINT
9196 INPUT"[207]LD FILE NAME";DI$
9215 IF(LEN(DI$)=0)THENRETURN
9220 INPUT"[206]EW FILE NAME";NW$
9239 IF(LEN(NW$)=0)THENRETURN
9244 CLOSE15
9246 OPEN15,8,15,((("R:"+NW$)+"=")+DI$)
9261 GOTO9397
9264 PRINTDN$
9266 INPUT"[198]ILE NAME";DI$
9282 IF(LEN(DI$)=0)THENRETURN
9287 CLOSE15
9289 OPEN15,8,15,("S:"+DI$)
9299 GOTO9397
9302 PRINTDN$;
9304 PRINT" [215][193][210][206][201][206][199]: [207]PEN FILES WILL BE DELETED"
9345 PRINT
9346 PRINTTAB(8)
9348 PRINT"[208]RESS [210][197][212][213][210][206] TO VALIDATE"
9375 GOSUB9484
9378 OPEN1,8,15,"V"
9385 CLOSE1
9387 GOTO9390
9390 CLOSE15
9392 OPEN15,8,15
9397 INPUT#15,A$,B$,C$,D$
9407 IF(VAL(A$)=0)THENRETURN
9412 ER$=((((((B$+" #")+A$)+" ON TRK ")+C$)+" SEC ")+D$)
9442 PRINTTAB(((40-LEN(ER$))/2))
9450 PRINTER$
9452 CLOSE15
9454 PRINTTAB(7)
9456 PRINT"[208]RESS ANY KEY TO CONTINUE"
9484 W$=""
9486 GETW$
9488 IF(W$="")THEN9484
9494 RETURN
9495 PRINT"[147]"
9498 CLOSE1
9500 CLOSE5
9502 CLOSE4
9504 CLOSE15
9506 CLOSE6
9508 END
9509 PRINT"[147]"
9512 CLOSE15
9514 MA=INT((S/256))
9521 PRINT"[205]AXIMUM SIZE OF FILE WHICH CAN"
9554 PRINT" BE COPIED IS ";
9572 PRINTMA;
9574 PRINT" BLOCKS."
9585 PRINT
9586 PRINT"[197]NTER NAME OF FILE TO BE COPIED"
9620 INPUTFI$
9623 IF(LEN(FI$)=0)THENRETURN
9628 PRINT
9629 PRINT" [197]NTER FILE TYPE:"
9651 PRINT" [208] PROGRAM"
9668 PRINT" [211] SEQUENTIAL"
9688 PRINT" [213] USER"
9702 PRINT" [210] RELATIVE"
9720 INPUTTY$
9723 PRINT
9724 PRINT"[201]NSERT SOURCE DISK AND PRESS [210][197][212][213][210][206]"
9762 GOSUB9484
9765 GOSUB9859
9768 IF(VAL(A$)<>0)THENRETURN
9773 PRINT
9774 PRINT"[201]NSERT DESTINATION DISK AND PRESS RETURN"
9817 GOSUB9484
9820 GOSUB9972
9823 PRINT
9824 INPUT"[205]AKE ANOTHER COPY?[160]";W$
9849 IF(LEFT$(W$,1)="Y")THEN9773
9858 RETURN
9859 I=1
9861 CLOSE15
9863 OPEN15,8,15
9868 CLOSE5
9870 OPEN5,8,5,(((("0:"+FI$)+",")+TY$)+",R")
9889 GOSUB9397
9892 IF(VAL(A$)<>0)THENRETURN
9897 PRINT"[210]EADING ";
9908 PRINTFI$
9910 GET#5,A$
9914 TE%(I)=ASC((A$+CHR$(0)))
9922 I=(I+1)
9926 IF(ST=0)THEN9910
9932 PRINT
9933 PRINT"[198]ILE LENGTH IS";
9950 PRINTI;
9952 PRINT"[211]TATUS IS";
9964 PRINTST
9966 CLOSE5
9968 GOTO9390
9971 RETURN
9972 CLOSE15
9974 OPEN15,8,15
9979 OPEN5,8,5,(((("0:"+FI$)+",")+TY$)+",W")
9998 GOSUB9397
10001 IF(VAL(A$)<>0)THENRETURN
10006 PRINT"[215]RITING ";
10017 PRINTFI$
10019 J=1
10021 CMD5,;
10023 PRINTCHR$(TE%(J));
10028 PRINT#5,;
10029 J=(J+1)
10033 IF(J<I)THEN10021
10039 PRINT
10040 PRINT"[198]ILE LENGTH IS";
10057 PRINTJ
10059 CLOSE5
10061 GOTO9390
10064 PRINT
10065 PRINT
10066 INPUT"[206]AME OF FILE TO BE PRINTED";DI$
10098 IF(LEN(DI$)=0)THENRETURN
10103 CLOSE15
10105 OPEN15,8,15
10110 CLOSE5
10112 OPEN5,8,5,(("0:"+DI$)+",S,R")
10128 GOSUB9397
10131 IF(VAL(A$)<>0)THENRETURN
10136 OPEN4,4,7
10141 GET#5,A$
10145 CK=ST
10147 CMD4,;
10149 PRINTA$;
10151 PRINT#4,;
10152 PRINTA$;
10154 IF(CK=0)THEN10141
10160 PRINT#4
10162 CLOSE5
10164 CLOSE15
10166 CLOSE4
10168 RETURN
10169 PRINTDN$
10171 INPUT"[211]OURCE FILE NAME";DI$
10194 IF(LEN(DI$)=0)THENRETURN
10199 CLOSE15
10201 OPEN15,8,15
10206 CLOSE5
10208 OPEN5,8,5,("0:"+DI$)
10218 GOSUB9397
10221 IF(VAL(A$)<>0)THENRETURN
10226 SL=0
10228 INPUT"[194]LOCK LENGTH OF EACH SEGMENT";SL
10263 IF(SL=0)THEN10358
10269 SL=(SL*254)
10274 A=64
10277 PRINT"[147]"
10280 A=(A+1)
10284 DO$=((DI$+".")+CHR$(A))
10292 CLOSE6
10294 OPEN6,8,6,(("0:"+DO$)+",S,W")
10310 CT=1
10312 GOSUB9397
10315 IF(VAL(A$)<>0)THENRETURN
10320 PRINT"[211]AVING ";
10329 PRINTDO$
10331 GET#5,A$
10335 CK=ST
10337 CMD6,;
10339 PRINTA$;
10341 PRINT#6,;
10342 CT=(CT+1)
10346 IF(CT=SL)THEN10280
10352 IF(CK=0)THEN10331
10358 CLOSE5
10360 CLOSE6
10362 CLOSE15
10364 RETURN
10365 PRINT
10366 PRINT
10367 INPUT"[206]AME OF FILE TO BE VIEWED";DI$
10398 IF(LEN(DI$)=0)THENRETURN
10403 CLOSE15
10405 OPEN15,8,15
10410 CLOSE5
10412 OPEN5,8,5,(("0:"+DI$)+",S,R")
10428 GOSUB9397
10431 IF(VAL(A$)<>0)THENRETURN
10436 PRINT"[147]"
10439 GET#5,A$
10443 PRINTA$;
10445 GETW$
10447 IF(W$<>"")THEN10463
10453 IF(ST=0)THEN10439
10459 PRINT
10460 GOSUB9454
10463 CLOSE5
10465 CLOSE15
10467 RETURN
10468 PRINTDN$
10470 INPUT"[211]OURCE FILE NAME";DI$
10493 IF(LEN(DI$)=0)THENRETURN
10498 CLOSE15
10500 OPEN15,8,15
10505 CLOSE5
10507 OPEN5,8,5,("0:"+DI$)
10517 GOSUB9397
10520 IF(VAL(A$)<>0)THENRETURN
10525 INPUT"[196]ESTINATION FILE NAME";DI$
10552 IF(LEN(DI$)=0)THENRETURN
10557 DO$=(DI$+".CONV")
10566 CLOSE6
10568 OPEN6,8,6,(("0:"+DO$)+",S,W")
10584 GOSUB9397
10587 IF(VAL(A$)<>0)THENRETURN
10592 CO=0
10594 INPUT"0 FOR [195][194][205] > [193][211][195][201][201]. 1 FOR [193][211][195][201][201] > [195][194][205]";CO
10637 GET#5,A$
10641 CK=ST
10643 IF(CO=1)THEN:GOSUB10677:GOTO10657
10654 GOSUB10719
10657 PRINTA$;
10659 CMD6,;
10661 PRINTA$;
10663 PRINT#6,;
10664 IF(CK=0)THEN10637
10670 CLOSE5
10672 CLOSE6
10674 CLOSE15
10676 RETURN
10677 A=ASC((A$+CHR$(0)))
10683 IF(A<65)THENRETURN
10688 IF(A>90)THEN10702
10695 A$=CHR$((A+128))
10701 RETURN
10702 IF(A<97)THENRETURN
10707 IF(A>122)THENRETURN
10712 A$=CHR$((A-32))
10718 RETURN
10719 A=ASC((A$+CHR$(0)))
10725 IF(A<65)THENRETURN
10730 IF(A>90)THEN10744
10737 A$=CHR$((A+32))
10743 RETURN
10744 IF(A<97)THENRETURN
10749 IF(A>122)THEN10763
10756 A$=CHR$((A-32))
10762 RETURN
10763 IF(A<193)THENRETURN
10768 IF(A>218)THENRETURN
10773 A$=CHR$((A-128))
10779 RETURN
10780 PRINT"[147]"
10783 INPUT"[211]OURCE FILE NAME #1";D1$
10808 IF(LEN(D1$)=0)THENRETURN
10813 INPUT"[211]OURCE FILE NAME #2";D2$
10838 IF(LEN(D2$)=0)THENRETURN
10843 DC$=((D1$+",")+D2$)
10850 INPUT"[211]OURCE FILE NAME #3";D3$
10875 IF(LEN(D3$)=0)THEN10928
10882 DC$=((DC$+",")+D3$)
10889 INPUT"[211]OURCE FILE NAME #4";D4$
10914 IF(LEN(D4$)=0)THEN10928
10921 DC$=((DC$+",")+D4$)
10928 INPUT"[196]ESTINATION FILE NAME";DO$
10955 CLOSE15
10957 OPEN15,8,15,((("C:"+DO$)+"=")+DC$)
10972 GOTO9397
10975 END