home
***
CD-ROM
|
disk
|
FTP
|
other
***
search
/
Tiger Disk 121
/
Tiger_Disk_121_20xx_Tiger-Crew-Disk_de_Side_B.d64
/
disk-retter
(
.txt
)
< prev
next >
Wrap
Commodore BASIC
|
2023-02-26
|
3KB
|
99 lines
10 rem disk-retter====c16/c64/c128
20 rem (p) commodore disc
30 rem ===========================
40 rem (c) by werner fuchs
50 rem
60 rem basic v2.0/3.5/7.0
70 rem floppy 1541/1551/1570/1571
80 rem c16/116/plus4/c64/c128
90 rem ===========================
100 gosub 800
110 printchr$(14)
120 gosub660:re%=0
130 printcl$bk$" [194]eginn der [211]uche [211]pur "di%",1"c4$
140 sp%=1:tr%=di%:open15,8,15,"i0
150 [159]8,8,2,"#2":fi%[178]0
160 [152]15,"u1:"2;0;tr%;sp%:[141]600
170 [129]i[178]0[164]1:[161]#8,a$:[141]570:p%(i)[178][198](a$):[130]:a[178]2:[141]590
180 [161]#8,a$:[141]570:a[178][198](a$)[175]7
190 h$[178]"":[129]i[178]0[164]1:[161]#8,a$:[141]570:l%(i)[178][198](a$):[130]
200 [129]i[178]3[164]18:[161]#8,a$:h$[178]h$[170]a$:[130]
210 [139]h$[178]""[167]230
220 [153] ki$(a);" ";co$;h$;[163]11)co$;;l%(0);l%(1):[139]a[178]0[167][137]400
230 fi%[178]fi%[170]1:[139]fi%[179]8[167]a[178]fi%[172]32[170]2:[141]590:[137]180
240 [139]p%(0)[178]0[167]260
250 [153]c4$"(NULL)echsel auf (NULL)pur";:tr%[178]p%(0):sp%[178]p%(1):fi%[178]0:[153]tr%;sp%c4$:[137]160
260 [160]8:[153]rn$c4$"str$irectory valnde"rf$,:[139]re%[167][153]"lenollect str$rive 1":[152]15,"v0
270 gosub600:close15:end
280 rem** retrieve a file **
290 print#15,"u1:"2;0;l%(0);l%(1):return
300 d%=2:printc4$"[211]pur, [211]ektor";
310 gosub290:fori=0to1:get#8,a$:gosub570:z%(i)=asc(a$)
320 printz%(i)c1$" ";:next:print:printc2$"[211]pur, [211]ektor";
330 ifz%(0)=0thenprint:return
340 print#15,"b-f"0;z%(0);z%(1):l%(0)=z%(0):l%(1)=z%(1):z%(d%)=z%(0)
350 z%(d%+1)=z%(1):d%=d%+2
360 ifds=0then310
370 print:printrn$"[196]as [198]ile wurde bereits ueberschrieben"rf$"!":x%=not(x%):a=fi%*32+2
380 fori=2tod%-4step2:print#15,"b-f:"0;z%(i);z%(i+1):next
390 l%(0)=tr%:l%(1)=sp%:gosub290:goto590
400 print"[218]urueckholen? ([202]/[206])"left$(q2$,4)
410 get a$:if a$="" then 410
420 if a$<>"j"then230
430 x%=0:printc4$"[194]locks wiederbelegen...":z%(0)=l%(0):gosub300:ifx%then230
440 printc4$"[201]st dies ein "rn$"[208]"rf$"rogramm,"rn$"[211]"rf$"equenielles, "rn$"[213]"rf$"ser,";
450 print"oder "rn$"[210]"rf$"elatives [198]ile";
460 get ja$:ifja$<>"p"andja$<>"s"andja$<>"u"andja$<>"r"then460
470 print:print
480 print:ifja$="p"thenprintrn$+"[208]rogramm"+rf$+"-":ki%=130:goto520
490 ifja$="u"thenprintrn$+"[213]ser"+rf$+"-":ki%=131:goto520
500 ifja$="r"thenprintrn$+"[210]elatives"+rf$+"-":ki%=132:goto520
510 printrn$"[211]equentielles"rf$"-":ki%=129
520 print"[198]ile wiederholen..."
530 l%(0)=tr%:l%(1)=sp%:gosub290
540 a=fi%*32+2:gosub590:print#8,chr$(ki%);
550 bl%=((d%-2)/2)+1:printc4$bl%"[194]loecke ";
560 print#15,"u2:"2;0;tr%;sp%:print"[215]iederhergestellt !"c4$:re%=1:goto230
570 ifa$=""thena$=chr$(0)
580 return
590 print#15,"b-p:"2;a
600 input#15,en%,em$,et%,es%:ifen%=0thenreturn
610 printc4$c4$rn$"disk fehler"rf$
620 printc4$"[198]ehler [205]eldung"rf$": "en%" "em$","et%","es%
630 print"bitte '[195][207][206][212]' geben.
640 [128]
650 [142]
660 [134]p%(1),l%(1),z%(300),ki$(4):co$[178][199](34)
670 ki$(0)[178]rn$[170]"str$val(NULL)"[170]rf$:ki$(1)[178]"(NULL)val(NULL)":ki$(2)[178]"(NULL)(NULL)chr$":ki$(3)[178]"(NULL)(NULL)(NULL)":ki$(4)[178]"(NULL)val(NULL)"
680 pg$[178]bk$[170]cl$[170]rn$[170]" str$isk ascile (NULL)etter (NULL)len1551/1541/1570/1571 "[170]rf$
690 [153]pg$c4$:[153]"str$ieses (NULL)rogramm ermoeglicht das (NULL)ieder-"
700 [153]"herstellen von geloeschten asciles.
710 print"[197]s wird vorausgesetzt,dass die [196]isk noch";
720 print"nicht wieder beschrieben wurde.
730 [153]c4$"100% valrfolg ist nur nach '(NULL)len(NULL)atn(NULL)lenleft$' ge-"
740 [153]"waehrleistet.
750 printc4$"[194]eim [211]uchen werden nur die geloeschten [196]ateien abgefragt"
760 printc4$c4$c4$" [212]aste druecken !"
770 get td$:if td$="" then 770
780 di%=18:return
790 printleft$(qu$,4):goto760
800 rem nachspann ===============
810 rem * farbcodes/steuercodes *
820 c4$=chr$(017):rn$=chr$(018)
830 bk$=chr$(000):c2$=chr$(145)
840 rf$=chr$(146):cl$=chr$(147)
850 c1$=chr$(157)
860 rem *** zeichensatz/graphik *
870 s2$=chr$(160)
880 rem ********* zeichenfolgen *
890 for q=1 to 40
900 q2$=q2$+s2$:qu$=qu$+c2$
910 next q
920 return
930 rem ==========================
950 rem 03282 bytes program
960 rem 00217 bytes variables
970 rem 00653 bytes arrays
980 rem 00509 bytes strings
1000 rem =========================