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 >
Commodore BASIC  |  2023-02-26  |  3KB  |  99 lines

  1. 10 rem disk-retter====c16/c64/c128
  2. 20 rem (p) commodore disc
  3. 30 rem ===========================
  4. 40 rem (c) by werner fuchs
  5. 50 rem
  6. 60 rem basic v2.0/3.5/7.0
  7. 70 rem floppy 1541/1551/1570/1571
  8. 80 rem c16/116/plus4/c64/c128
  9. 90 rem ===========================
  10. 100 gosub 800
  11. 110 printchr$(14)
  12. 120 gosub660:re%=0
  13. 130 printcl$bk$" [194]eginn der [211]uche [211]pur "di%",1"c4$
  14. 140 sp%=1:tr%=di%:open15,8,15,"i0
  15. 150 [159]8,8,2,"#2":fi%[178]0
  16. 160 [152]15,"u1:"2;0;tr%;sp%:[141]600
  17. 170 [129]i[178]0[164]1:[161]#8,a$:[141]570:p%(i)[178][198](a$):[130]:a[178]2:[141]590
  18. 180 [161]#8,a$:[141]570:a[178][198](a$)[175]7
  19. 190 h$[178]"":[129]i[178]0[164]1:[161]#8,a$:[141]570:l%(i)[178][198](a$):[130]
  20. 200 [129]i[178]3[164]18:[161]#8,a$:h$[178]h$[170]a$:[130]
  21. 210 [139]h$[178]""[167]230
  22. 220 [153] ki$(a);" ";co$;h$;[163]11)co$;;l%(0);l%(1):[139]a[178]0[167][137]400
  23. 230 fi%[178]fi%[170]1:[139]fi%[179]8[167]a[178]fi%[172]32[170]2:[141]590:[137]180
  24. 240 [139]p%(0)[178]0[167]260
  25. 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
  26. 260 [160]8:[153]rn$c4$"str$irectory valnde"rf$,:[139]re%[167][153]"lenollect str$rive 1":[152]15,"v0
  27. 270 gosub600:close15:end
  28. 280 rem**  retrieve a file **
  29. 290 print#15,"u1:"2;0;l%(0);l%(1):return
  30. 300 d%=2:printc4$"[211]pur, [211]ektor";
  31. 310 gosub290:fori=0to1:get#8,a$:gosub570:z%(i)=asc(a$)
  32. 320 printz%(i)c1$" ";:next:print:printc2$"[211]pur, [211]ektor";
  33. 330 ifz%(0)=0thenprint:return
  34. 340 print#15,"b-f"0;z%(0);z%(1):l%(0)=z%(0):l%(1)=z%(1):z%(d%)=z%(0)
  35. 350 z%(d%+1)=z%(1):d%=d%+2
  36. 360 ifds=0then310
  37. 370 print:printrn$"[196]as [198]ile wurde bereits ueberschrieben"rf$"!":x%=not(x%):a=fi%*32+2
  38. 380 fori=2tod%-4step2:print#15,"b-f:"0;z%(i);z%(i+1):next
  39. 390 l%(0)=tr%:l%(1)=sp%:gosub290:goto590
  40. 400 print"[218]urueckholen? ([202]/[206])"left$(q2$,4)
  41. 410 get a$:if a$="" then 410
  42. 420 if a$<>"j"then230
  43. 430 x%=0:printc4$"[194]locks wiederbelegen...":z%(0)=l%(0):gosub300:ifx%then230
  44. 440 printc4$"[201]st dies ein "rn$"[208]"rf$"rogramm,"rn$"[211]"rf$"equenielles, "rn$"[213]"rf$"ser,";
  45. 450 print"oder "rn$"[210]"rf$"elatives [198]ile";
  46. 460 get ja$:ifja$<>"p"andja$<>"s"andja$<>"u"andja$<>"r"then460
  47. 470 print:print
  48. 480 print:ifja$="p"thenprintrn$+"[208]rogramm"+rf$+"-":ki%=130:goto520
  49. 490 ifja$="u"thenprintrn$+"[213]ser"+rf$+"-":ki%=131:goto520
  50. 500 ifja$="r"thenprintrn$+"[210]elatives"+rf$+"-":ki%=132:goto520
  51. 510 printrn$"[211]equentielles"rf$"-":ki%=129
  52. 520 print"[198]ile wiederholen..."
  53. 530 l%(0)=tr%:l%(1)=sp%:gosub290
  54. 540 a=fi%*32+2:gosub590:print#8,chr$(ki%);
  55. 550 bl%=((d%-2)/2)+1:printc4$bl%"[194]loecke ";
  56. 560 print#15,"u2:"2;0;tr%;sp%:print"[215]iederhergestellt !"c4$:re%=1:goto230
  57. 570 ifa$=""thena$=chr$(0)
  58. 580 return
  59. 590 print#15,"b-p:"2;a
  60. 600 input#15,en%,em$,et%,es%:ifen%=0thenreturn
  61. 610 printc4$c4$rn$"disk fehler"rf$
  62. 620 printc4$"[198]ehler [205]eldung"rf$": "en%" "em$","et%","es%
  63. 630 print"bitte '[195][207][206][212]' geben.
  64. 640 [128]
  65. 650 [142]
  66. 660 [134]p%(1),l%(1),z%(300),ki$(4):co$[178][199](34)
  67. 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)"
  68. 680 pg$[178]bk$[170]cl$[170]rn$[170]" str$isk ascile (NULL)etter (NULL)len1551/1541/1570/1571 "[170]rf$
  69. 690 [153]pg$c4$:[153]"str$ieses (NULL)rogramm ermoeglicht das (NULL)ieder-"
  70. 700 [153]"herstellen von geloeschten asciles.
  71. 710 print"[197]s wird vorausgesetzt,dass die [196]isk noch";
  72. 720 print"nicht wieder beschrieben wurde.
  73. 730 [153]c4$"100% valrfolg ist nur nach '(NULL)len(NULL)atn(NULL)lenleft$' ge-"
  74. 740 [153]"waehrleistet.
  75. 750 printc4$"[194]eim [211]uchen werden nur die geloeschten  [196]ateien abgefragt"
  76. 760 printc4$c4$c4$"   [212]aste druecken !"
  77. 770 get td$:if td$="" then 770
  78. 780 di%=18:return
  79. 790 printleft$(qu$,4):goto760
  80. 800 rem nachspann ===============
  81. 810 rem * farbcodes/steuercodes *
  82. 820 c4$=chr$(017):rn$=chr$(018)
  83. 830 bk$=chr$(000):c2$=chr$(145)
  84. 840 rf$=chr$(146):cl$=chr$(147)
  85. 850 c1$=chr$(157)
  86. 860 rem *** zeichensatz/graphik *
  87. 870 s2$=chr$(160)
  88. 880 rem ********* zeichenfolgen *
  89. 890 for q=1 to 40
  90. 900 q2$=q2$+s2$:qu$=qu$+c2$
  91. 910 next q
  92. 920 return
  93. 930 rem ==========================
  94. 950 rem 03282 bytes program
  95. 960 rem 00217 bytes variables
  96. 970 rem 00653 bytes arrays
  97. 980 rem 00509 bytes strings
  98. 1000 rem =========================
  99.