20 ! +--------------------------------------------------+ 22 ! ! HELKOPIA - [nnu ett pgm som kopierar hela skivor ! 24 ! ! F|r ABC800-serien med UFD-DOS. ! 26 ! ! Visade parametrar f|r ABC832/834 640KB drive. ! 28 ! ! Ver 1.00 86-05-22 Av <5357> Kristoffer Eriksson. ! 30 ! ! F}r kopieras helt utan restriktioner. ! 32 ! +--------------------------------------------------+ 34 ! En l{mplig f|rb{ttring vore att kunna ange vilka drive:ar som ska kopieras. 36 ! Kopierar sexton sektorer i st|ten. 100 ! 110 INTEGER : EXTEND 120 ! 130 ! Systemvariabler: 140 DIM B$=16*256,Dosbuf$=0 150 POKE VAROOT(Dosbuf$),0,SWAP%(256),0,SWAP%(62720),0,SWAP%(256) 160 Adiskselect=64769 170 Adiskerr=64789 180 ! 190 ! Kopieringsparametrar: 200 Dr0=8 210 Dr1=9 220 Dr0$="MF0:" 230 Dr1$="MF1:" 240 Maxsektor=2559 250 ! 260 ; "Kopierar fr}n " Dr0$ " till " Dr1$ 270 ; "Tidigare inneh}ll p} " Dr1$ " kommer att f|rst|ras!" 280 ; "Starta kopieringen (J/N) ? "; 290 GET I$ 300 WHILE I$<>"J" AND I$<>"j" 310 END 320 WEND 330 ; "Ja" : ; 340 ! 350 FOR I=0 TO Maxsektor STEP 16 360 B$=STRING$(16*256,0) 370 POKE Adiskselect,Dr0 380 FOR S=0 TO 15 390 ; I+S CHR$(13); 400 Z=CALL(24678,I+S) ! RD.0 410 IF PEEK(Adiskerr) THEN ; I+S "Diskfel " Dr0$ " kod" PEEK(Adiskerr) 420 MID$(B$,S*256+1,256)=Dosbuf$ 430 NEXT S 440 ! 450 POKE Adiskselect,Dr1 460 FOR S=0 TO 15 470 ; I+15,I+S CHR$(13); 480 Dosbuf$=MID$(B$,S*256+1,256) 490 Z=CALL(24675,I+S) ! WR.0 500 IF PEEK(Adiskerr) THEN ; I+S "Diskfel " Dr1$ " kod" PEEK(Adiskerr) 510 NEXT S 520 NEXT I 530 ; : ; "Klart!" 540 END