Classic Computer Magazine Archive COMPUTE! ISSUE 71 / APRIL 1986 / PAGE 86

Apple Disk Duper

Jason Coleman

Here's a program that lets you duplicate Apple disks quickly and conveniently. Though it can copy disks formatted for either DOS 3.3 or ProDOS, it must be run with ProDOS. It also requires 128K RAM.


Everyone knows the value of backing up disks. But how many of us take the time to make archive copies of important disks on a regular basis? "Apple Disk Duper" simplifies the process by making it possible to copy an entire disk in only two passes. It works on one-or two-drive systems with at least 128K RAM.
    After typing in the program and saving a copy, simply run it and follow the instructions on the screen. Apple Disk Duper prompts you every step of the way.
    Although the program runs only under ProDOS, it can copy DOS 3.3 disks as well as ProDOS disks. It works with any Apple Disk II-compatible drive, but not with the new 3½-inch UniDisk.

Apple Disk Duper
For instructions on entering this listing, please refer to "COMPUTEI's Guide to Typing In Programs" in this issue of COMPUTE!.

74 100 FOR X = 768 TO 785: READ
       Y: POKE X,Y: NEXT
AA 110 DATA 32,0,191,129,9,3,176
       ,249,96,3,96,0,32,0,0,0,0
       ,0,
58 120 TEXT : HOME
47 130 VTAB 12: HTAB 12: PRINT "
       DISK DUPLICATOR"
AA 140 VTAB 20: HTAB 9: PRINT "(
       HIT ANY KEY TO BEGIN)";:
       POKE - 16368,0: GET ST$
4E 150 HOME
1C 160 VTAB 12: INPUT "ENTER NUM
       BER OF DRIVES:";ND$:ND =
       VAL (ND$)
CB 170 IF ND < > 1 AND NO < > 2
       THEN 390
Fl 180 HOME : VTAB 12: PRINT "PU
       T SOURCE DISK IN DRIVE 1"
7A 190 IF ND = 2 THEN VTAB 17: P
       RINT "PUT DESTINATION DIS
       K IN DRIVE2"
D0 200 VTAB 20: POKE - 16368,0:
       PRINT "PRESS ANY KEY TO M
       AKE COPY.": GET AK$
91 210 FB = 0: MX = 3
91 220 FOR N = 1 TO MX
C4 230 POKE 771,128
11 240 POKE 780,32: POKE 778,96
lE 250 FOR I = FB TO FB + 55
25 260 P2 = INT (I / 256):P1 = I
        - 256 * P2
DE 270 POKE 782,P2: POKE 781,P1
50 280 CALL 768: POKE 780, PEEK
       (780) + 2: NEXT I
B4 290 IF N < MX THEN PRINT CHRS
        (4)"BSAVE/RAM/COPY"N",A$
       2000,L$6FFF":FB = FB + 56
62 300 NEXT N
28 310 IF ND = 1 THEN VTAB 12: P
       RINT "PUT DESTINATION DIS
       K IN DRIVE 1": GET AK$
ED 320 FOR N = MX TO 1 STEP - 1
F8 330 POKE 771,129: POKE 780,14
       2
15 340 IF ND = 2 THEN POKE 778,2
       24
6B 350 IF N < MX THEN PRINT CHR$
        (4)"BLOAD/RAM/COPY";N
79 360 FOR I = FB + 55 TO FB STE
       P - 1:P2 = INT (I / 256):
       P1 = I - 256 * P2
DF 370 POKE 782,P2: POKE 781,P1
71 380 CALL 768: POKE 780, PEEK
       (780) - 2: NEXT I
0B 390 FB = FB - 56
63 400 NEXT N
1B 410 IF MX = 2 THEN 440
6D 420 MX = 2:FB = 168: IF ND =
       1 THEN VTAB 12: PRINT "PU
       T SOURCE DISK IN DRIVE 1
           ": GET AK$
16 430 GOTO 220
17 440 HOME : VTAB 12: HTAB 15:
       INVERSE : PRINT "COPY COM
       PLETE": NORMAL : END