[net.sources.mac] MassCopy -- Copy and Verify program

stew@harvard.ARPA (Stew Rubenstein) (10/05/85)

Here is a short utility which may be useful to someone out there.  It is
called "MassCopy".  MassCopy is primarily useful for making multiple
copies of a single disk.  It will optionally verify the copy operation.
You have the option of always formatting, formatting only if necessary,
or rejecting unmountable disks.  Disks may be compared without copying
anything, as well.  I wrote it myself, in MegaMax C.  It is copyrighted
by me, but may be freely distributed for non-profit purposes.

(This file must be converted with BinHex 4.0)
:#%eKFh0$Eh"j!%&38%`JN!3!N!JF0j*K!*!%!3#3!aQe!!!BY3!!!S)!!"@`!&`
!!"@X!"i!!"@#!$dH!*!'"D$p-!#3$!@J!*!'(J#3"JK`r6!!N!`)F!#3"Ki!N!B
#d2d`!*!-!Y!!N!B$%!"!2H![d2rr"D!bS!@J**!!1Irr)!(8pJ#3"!%krrmJ!G8
8!*!%!6[rrb!"e8J!N!3"22rr)!(9I!#3"!%prrmJ!G@1!*!%!6lrrb!"eDB!N!3
"2rrr)!(9d!#3"!&!rrmJ!GB!N!8"3Irr)!(@0!#3"!&#rrm!N!-6!#J![J""!8)
!![rr!*!+$!""!(m!I!'"!)"993#3!``!8J#U!)`"9J#"c-`!N!--!%S!X`#'!8d
!JXc-!*!$$!"4!,-!L`&0!)2-c!#3!``!6!"c!)-"M3#%998!N!--!$)!4J$Z!ES
!K84%!*!$$!!b!'8!JJ'E!)C%4!#3!``!C!#0!0F"F`2S998!N!--!'3!P`$-!@N
%#999!*!$$!"N!*B!Z3&U"!T993#3!``!C!#6!0i"E33-998!N!--!'3!L`$H!A8
%$999!*!$$!"N!*-!ZJ&Y"!p993#3!``!C!#0!+m"F`35998!N!--!'3!M3#[!A-
%%e99!*!$$!"N!')!f!'H""4993#3!``!C!"m!-3"K!39998!N!--!'3!M3$,!A-
%'999!*!$4!!"!*!&)!$,!$%!p33#6dX!N!8+!!S!'3$eL#0%DA0V)&CPFQPQD@0
KG'P[EL"&FR*[FL"TEL"#E'pMDb"H-!S!N!-i!!%!N!8J!$N!-3"Y"!44G@Pd!*!
&#J!+!"N!SSJ@5@jcCA*d)(4SC5"YBA0dCA)JC'PcD`#3!cJ!!3#3"5)!-J!c!'J
%"&&eDA3!N!8+!!S!'3#3!)J95@jcCA*d)(4SC5"QDA*cG#"NDA0VjJ#3!cB!!3#
3"5-!-J!d!'N%"&&eDA3!N!8+!!S!'J#4L"4*ER0PFR3JG'KP)'jPH(3JC'PcD`#
3!f!!!J#3"4m!jJ!`!4!%!Np,!*!&#J!+!"S"%iJT9'KKG#"TFb"ZEh3JB@iJD@j
TG'PKE'PkC@3J6@&MD@jdEh0S)'4TFf[F!*!&'`!+!#`!8)J(583J25"H-!#3!`(
H!!B!N!@J!!S!XJ"3"!4$Eh"j!*!&S!"j!,)!q`323fp`H5"KEQ3J9Q9bD@Cj#J#
3"D!"*!#b!@S%"PCPFQPQH3#3"3S!#J!D!6D)+NeKFh-J3fp`H5!Y,5"$Eh"j)'&
ZC#p[FL"fCA*TCRNJE@&ZH5"NDA0VF`#3"4`!#J!X!0L)(DNJ-6Ni05`J8h4PGf&
bG#"%,L"5G@*PER0dC@PZ%J#3"5i!#J"q!@U)m94SDA-JF(*[Ch*KE5"YBANJBQ8
JCR*PC@aj)'4TFh4bD@*eG'9N,#"`FQpfD@4PC#"dD'Pc)'0[F(PbD@GSG#"ZEh4
TBf8JDA-JE@&TER4KD@jPC#`JB@jN)(4SBA3JDA3JDA-JEQpd)(0[E'3JCQpb)("
bEfCTG#"ZEh)JD@jME(9NC@3JGfPdD#"KERNJFhPcG'9Y)(0[E'3JCQpb)("bEfC
TG#"hDA4SEh9d)(GbDA4dC@iJF'9bE@PcFfP[EL"QFQpY)(4SC5"KGA4SEh)Z)#"
"E'`JEh4SCA)JFQPRD(4c)'&bC5"bCA0PFRCPC#i!N!D0!!S!R!%XL#96C@aPBh3
JG'KP)'p`CA*KG'P[EL"dEb"LC5"`CA*QEh*YC@3Zh!#3!iB!!`#3"63!#J"'!&!
%"8jPGQ9b`!#3"63!@J"'!0`%$PGSC@iJ6Q9MCA0cBA*j!*!&0!$Q!%B",!3'3@a
hBAPc!*!&#J!+!#S",)Jb9@jNCA)JGfKKG#"MEfjNDA4TEfjc)(0SEh9XC#"NDA0
VFb"LC5"TEQPdD@&XDATPC$m!N!0F!!)!N!99!+!!D3$F"!*25`#3"3S!8!"1!0b
)*N&Z)(9ZCAK`C@0dC@3JCA*bEh)JEf0MGA*bC@3JGfKTE'8JAM!Z!*!&@!!8!'J
!AiJ(583J25"H-HB!N!0-!!%!N!9+!)J!AJ$)"!*25`#3"3S!8!!q!-L)+d4TFQ9
MG'pbH5"QG@aX1L!J9'p[)'eKERNJCQPXCA-JEfiJG'KP)'4TFf[!!*!$2J!"!*!
&0`#-!%X!c!3#6dX!N!8+!&!!,J$-L"j1Eb"QFQ9P)(0`B@0P)'aPCR3JEfiJG'K
P)'4TFfX!N!08!!%!N!9F!*!!!(!!d!3#6dX!N!8+!&!!9J$3L$0)BA*N)'9bFQp
b)(GSD@aP)&i`1L!J9(*j)'9UC@0dD@jR)'&ZC#"bC@PZFf9bG'PZCbjS!*!$6!!
"!*!&0`#K!%X!i33#6dX!N!8+!&!!,J$KL#Y6Eh*bH5`JG'KKG#"TFb"ZEh3JB5"
XC@GKE#"ZB@eP)'C[FL"K)'CTE'8Z`!#3!d!!!3#3"6J!N!!!6!$3"!*25`#3"3S
!8!!Z!0#))%9ZC#"[CL"QD@aP)(*PB@0SC@3JG@jPH("PBh4PC'aj!*!$0!!"!*!
&,3#F!%%!h!3#6dX!N!8+!&!!)!$FL"08EfmJE@&ZH5"QD@aPFb"[F'9Z%J#3!bi
!!3#3"5d!R!""!0`%!Np,!*!&#J"3!#!!h)J14QPXC5"ZEh3JCQpeEQ3!N!1@!!%
!N!9@!2)!DJ%b"!*25`#3"3S!8!"-!6+)G84TFfXJDA-JF(*[G'9MG'9N)'&RB@P
ZFh3JGh*TG'PZCbiJ)%0SC@0V)(4SC5"hFQPdC5e`FQpdC@0d)(4KBL"KEQ3JG'K
P)#*-Ef0VC@3L)'*eG(4[EL"TEL"dD'8JC'PcDbGc)#*(CA3J5@jQEb)JBQpi,J#
3"'3!!3#3"8)!`3"@!2d%!Np,!*!&#J"3!$X!rBK%9'KKG#"QD@aP)'Pc)'a[BfY
PC#iJ)%0SC@0V)(4SC5"-Ef0VC@3JBR9dG'pZ)'PZ)'PdFb!L4f9d)%PZCQmL)'*
[H#i!N!0B!!%!N!9*!*`!A3$F"!*25`#3"3S!8!!r!0b)0dCTE'8JDA-JB@abC@&
NH5"[F'9Z)'C[FL"hFQPdD@jR)'*j)'&ZEh4SCA)JBA"`E'PMBA4TEflF!*!$#!G
5C@&ND@jR!*!$#JP@CA*TCRPTEQF!N!-*#%9UC@0dD@jR!*!$'"G6CA4dD@jR)(4
SC5"dB@Gc)'*eCQCPFJ#3!`J(9h*TG'PZC`#3!`X+4QpbE@&dG'PZC`#3!b!!N!-
`!*!(%!#3!b!!!$mm!!'Tm!!!2c`!!UR`!!!21!#3!`'J0PQ2,ca%394"2c`!!+Q
J*PpCMbm,UD8S(cSmrNj)a85&)!A3K+-H+%MCa5(-!VBJ8b*-)!5J,Lm,UD01V3!
U3Hd!+MJSrri[#+Ra@Bm[2%024%8r"+QJ)&qJ5D!G5'crqNKXrrj1ZJ@F8)m[,2r
k2bcrrNkk#Ej1ZJ-5A)mr2!!!6VS+5%j@rpBr"cm'5'lrjNkk#JjBMb"ZrqC$k!!
33Hlrp(!$6VS*HNKZrr41ZJcb@)mr2!!42c`!&%kk#R4BMbmZ!!K1ZJKf@)p)E[r
m6VS+8PL2-#lrrPT!28$rpJCZ!!VrrL"m!!!"(#"3,@J!%2r@3NFJ,J!)X+crN!"
Q"M!m!%&J"$!m!!%j32r@3NB-4J-JE!!![!a(!!"Q!!#d-!C)`11!iB!T32rB)#c
rS0#XrpJT32r+)#crR$)'`r`!$%M"d)%Y32rD5'lrfMmm!!Jr22rl6VS+*&#22J!
r!$mm!)01ZJ8F@)p+3'F#B'*)E[rU-!C)`#m!6VS(9&#25'lrp%kk$"aBMcmZrr`
r,[rq6VS*RPL25'lrkNkk"k"BMb!Z!!L`V2q8CK""l2qU)RVreN+!S!-q!'!13Hc
rUL*krpC#J+!#2J$FI!!8B!$r3$!'N!"m!"4)`11!iB$4V2r5-!Fm(ciI6Pj1G8j
@rr")ja!)+(J#YNKZrr!r2!#!6VS'lPb2$'i!"rr`CMi[,[rb6VS*-&L218$rU#m
Zrr*1ZJNd@)mj32r!$'`!!2qSCJSJEJ!)-,`!!Q!))'i!#$#m!!-`22rrB"*J%!a
X!!$rU&I!`(`!!6!m!!"-ha!)6PiLAplm!!`HJ%l46PEri$mXrm![2!#3"%kk$*K
FMcm!2c`!JNkk!rTBMdT!C`Sr2!!#6VS)0P525(Vr8$mZ!!K1ZJ[SA)mp32rZ$'`
!!2qSC`J-E!!#rk4R#!aX!!2rT'CX5'lri%kk"pKBMb"Zrq""k!!3,`K1ZJV)@)m
r2!!42c`!&%kk#%TBMbmXria1ZJC-@)mr,2r!6VS&N!"8McP!rkJ-E!!!rkKQ&Ja
X!!(rTQF12bcr`%kk"BK8McP!rkJ-E!!!rkKQ"Mem!!,rlJaX!!$rU'Fk5'lrj$!
XrkK)`#m!6VS&LP#25'`!"%KX!!*)E!!!5'lrj%kk#U$Hr!!3,c`!N!3r2!#%6VS
,(Pb2$'`!!2qSCJ$qpJaZ!!,rlPI!`(`!!8jH6R919[rS,Aa3380,rqK1ZJ5Z3QF
r22rr6VS&C&L25'lrpN+R6VS&)&#22c`!J%kk!Na8MbP!rjJr2!#"6VS#2P52+8$
rN!!r2!#%6VS#-&52+8$rP$mm!)91ZJ)L9)mT32q-,c`!N!3r2!#&6VS+P&b218$
rTJaX!!2rTQB)1A`!!IqNB$)[2!#3"$mm!)C1ZJT`A)mj32qN$'`!!IqNCaBr2!!
#5'lrk%kk")*FMbm!6VS&)PL22c`!J8kkrL48MdS!CJK#Cdkk"RK8Mbmmrj!%,c`
!N!3r2!#!6VS&*Ylm!!SY32rX,blrl%kk"KTBMd*R6VS%VP52,c`!"N!!6VS'fPL
2+8$rS#mm!!!PJ%kk"XTBMbP!rj`-V!#3"2qJC`S-V!#3"2qFCK3r2!!&6VS++P5
22c`!!Nkk"J*8Md*XrlT#V2qm1Acrqrr#3Lcra%)Xrm8TI2q3"FBTI!!!+!$rcLm
XrjK1Z[Z-@)mr!$mm!)"1ZJ&m@)p+3'F+2c`!!Nkk"EK8Mcem!),rm$mZrr"1Z[e
)9)p+!'F!!-`pI!#$rr!-E!!$rkCQ&LmXrj!!6VVl4&L228$rp$em!)(rmQ!i,bc
rP%kkqbjBMce!rr3pI!#%rr)-EJ!!rr4Q(!aX!!,rTQB8,bcrN!"1Z[X+@)mp32r
d2A`!JIrb-#lrp,"m!!"R!Q!%B&aJ#,"mrlaR!Q"35'lrpL!Xrp,LJ1#!9B![!%k
k!aa3MdKX!!T)E!!)5'`!"NKZrrC1ZJJbh[`!%#mm!*!%2c`!J%kk#,"FMf!52bl
rp$mZrr*1ZJ#@@)pJ!Q$ZB!$r+%*R6VS%d&526Pj1G8je6PErr#m,2bi!#%kk#&4
8Mbe!rr`-VJ#3"2rmCJ!!$$!m!!")`'!!!%iJE[rm)&!3%%L!8N!r!%kk"I*8MbC
!)'lrr#"3%"")J$m!)'lrr#!38S![!#m,6VS$lYlm!!SJE[rm)&!3%%L!)%[3`%)
3)!YJ!!!#*Pp1ANje6PErm!aZ!*!$#QB!!!i`2!!!B!!"R'!!!"3-EJ#!!!TQ!!!
+-$crrf!!!BBr,J!)6VVr8P52,8$rr%KZrr)`,J!+5-![!%kk!JC3MdKX!!j)E!!
-5'lrmLmZrra1ZJFFh[`!%$!Z!!TJ!!!#X(crhQF!!!CJ!!!32A`%#[r`B!!"$Q!
!!!k`I2r6C`!!"Q!!!"!pI!39rr"J!!$dB!!!'V"mrp4R!!!5B!!!!V"mrp*R!!!
'B!!!%$em""6rm'!!!-jJ!!!1X(crhfF!!!CJ!!!32A`%#Ir`B!!!Y'!!!!k`I2r
EC`!!"Q!!!"!pI!30rr"J!!#DB!!!$V"mrpPR!!!'B!!!%$em"!rrm'!!!)"J!!!
1X(cre@F!!!CJ!!!32A`%%rr`B!!!CQ!!!!k`I2rFC`!!"Q!!!"!pI!3-rr"J!!"
-B!!!$V"mrmpR!!!'B!!!%$em""Rrm'!!!$*J!!!1X(creQF!!!CJ!!!H2A`%%[r
`B!!!''!!!!)pI!2Srr"J!!!+B!!!"Q!!rr![2!#3"$mZrr"1ZJD'A)m[,[rm6VS
%[&L2-$crrf!!!!*1ANje6PB!!$mm!!*1ZJ+-9)p1ANje6PB!!%KXrha1ZJ)d@)p
1ZJBU6VS"&Nkk"KK1ZJ+f5(VrcNkk"SaBMdkk!G)r22r[6VS!T&525'crJNkk!2j
BMdjH6R919J!!98mr,J!)2c`!"URT-"p1ANje6PB!!&922bi!#$mm!!LTk6!I6Pj
1G8j@!!"CMb"Z!!J[%$mZ!!bTS#!I6Pj1G8j@!!!JEJ!-)#i!#$mm!!#TlLmZ!!a
1ZJ%!@)p1ANje6PB!!&922bi!##mZ!!UTF"!I5)"1ANje6PB!!$!Z!!VKL1')-#i
!#+!b6Pj1G8j@!!!JI!!!!83`VJ!)6Pj1G8j@!!!r,J!)U)G1ANje6PB!!#mZ!!K
1ZJ"L@)m[,J!)U)3[,J!)6VS!N!"BMdjH6R919J!!)'i!#+"+18$qT%jH6R919J!
!U4)jI!!"ri"1ANje6PB!!#mZ!!LT%%jH6R919J!!@8mr,J!),bi!#LmZ!!kT[5!
I6Pj1G8j@rrS[#bCZ!!Jr"cm',8[rqL!,Cai3%dL!2!!`"aE!2JB`"QE`)!Z3!+l
rqP0!)'lrqK#!2"mq(bCI6Pj1G8j@!!![#bCZ!!Jr"bm+)!YR(L!,8SXN3#"!%"$
!I!$r2J!`"e0(5N"R""6EB24#%L4I2KmQAdjH6R919J!!,`N`f9()rr`LAdjH6R9
19J!!6Pj1G8j@!!"1ANje6PB!!+K36Pj1G8j@rr`[#bm+2`FQEJ!)*'i!$$iZ!"!
Y5rrm-!G64dT!C`J3'KE!C`*Jm#!Zrr`q(b4I*Pp1ANje6PB!!#mZ!!LSENjH6R9
19J!!,bi!#+Kc6Pj1G8j@!!![,J!)U(41ANje6PErr#eY!"$rr#"Zrr`J8$#Z!!K
1ZJ4!6Pj1G8j@rri[#d*Zrri-EJ!9rrjX,$!ZrrlPJ%(XrNl3`!a3!!"[&$!Zrrl
PJ%(XrNl3`$m36VS#iP528QlrrQ$-2bi!#%kkrk"8MbCI6Pj1G8j@!!#Tc%jH6R9
19J!!,bi!#+LD6Pj1G8j@!!!r,J!)2bi!#UL66Pj1G8j@!!"9MbmZ!!LSDM!I6Pj
1G8j@!!"9MbmZ!!LSDc!I6Pj1G8j@!!!J,J!)S4ij32kN)!K1ANje6PErX$eZ!!M
rb$eZ!!VrbLmm!*!$$%KZrm`[,J!-6VS#&0lm!!a#CdKZrl"1ZJ!)A)p1ANje6PB
!!#"Z!!K+,J!0C`5N"'!#S!41ANje6PB!!#m,,`Sr"c!m!)!b,J!)dR`!J&0"`V`
!!2rrJ[`!J-$"2J!`"m$m!!Br!%kk!Vj8MbC!)!X-32rrCJJJ2!#3"'!B)!XN3$9
(!!3J#Pb!,`"1ZJ$#@)mJ,2kQ2KmNAbCI6Pj1G8j@!!![#bm+2`F`2!!"-Li!#&a
"8d(#[!!!rrq#r!!'d%%q!#!XrUBN3!b!!*!%CK4"l2kU)!JN3#P!rUBT32kU3Qc
qVLC5-#X!","(C5S`+`!%X%GQ"#56B"3`"j&V!!3`+`!%`2`!"YI!0dF!"#P+rUB
J#eb!B#`J#l#XrUCQ'Mm(6VVr%P52*N!-J!#3"'B))$`!N!4J#L!,*%!J%bC!B+)
q(b4I*Pp1ANje6PB!!#m,,`SJ,J!)AB!Q3#4XrUBJ#l#+E`BJ#l#5E4JJ#V#5E3i
J#l#+EJBJ#l#5E!*J"#45B0`J#c)V!!6#r!!'d)'`NQB3)&)`+!!%d@X!"#"5*T!
!B!)QNL!+-LS!"-,m!!E3JE#,CJ``+`!%d@S!"#56B!)NLbP+rUBNAbCI6Pj1G8j
@!!!JEJ!),bJ!%Nkkr$CBMb"Z!!K+,J!0C`5N&f!#S"FJEJ!),bJ!%Nkkr&CBMb"
Z!!J`+!!36Pj1G8j@!!![,J!)U+01ANje6PB!!#"Z!!JLEJ!-)#i!%+!Z18$qT%j
H6R919J!!)'i!#%SZ!!eR"+3"B!+J!8jH6R919[q`2@i!#2r)3QG)E[q`6VVrePb
26Pj1G8j@!!![,J!)6VVlT&L2,bi!$%kkqjTBMbmZ!""1Z[Z3!&L2,bi!&%kkqiC
BMbmZ!!J[,J!-,bi!%#mZ!"5TLbmZ!!K1Z[ZS@)m[,J!-6VVlRPL2,bi!%%kkqj4
BMbmZ!"41Z[Z+@)p1ANje6PB!!&Q22bi!#+Qk)"p1ANje6PB!!+N`6Pj1G8j@!!#
SrNjH6R919J!!98mr,J!),bi!#UQ&-"p1ANje6PB!!&922bi!##mZ!!UTKM!I6Pj
1G8j@rr``,J!)`,`!!2rr,`"1Z[bH@)mY32rm1@cqT2k`C`JJ22q3"'!%)#lrr%j
H6R919J!!2bi!#+R)6Pj1G8j@!!![,J!)UAY1ANje6PB!!%kkqc#Tp%jH6R919[q
`,@i!#2r#2@i!$2r'3QG)E[q`6VVq1Pb26Pj1G3#3!b`!#!!"3qcrKK,m!$%5r!!
Z%[`!-",m!$J5r!!!+A`!N!6qTMPm!!$qSNje!*!$(!#3%&088L-!!%024%8!N!3
"!*!$'E8!!"Le!!!#JJ!")4`!HJ#3!a`#JJ!&9dP14!#3!c*"6&*8!"%!2N4*9%`
!%3%@8e45)!!&!Hj$6d4&!!)#0N4"9%%!!!*D!)$rr`3!N!3")@J%'Irr"!!"*`!
")B!%&Irr"!!"&`!")B3%&2rr"!!""`!")BJ%%rrr"!!!p`!")B`%%[rr"!!!j`!
")C!!"!rrr`3!!0F!!5'8"!hrr`3!!-F!!5'B"!crr`3!!,F!!5'F"!Vrr`3!!+F
!!5'J"!Rrr`3!!*F!!5'N!qMrr`3!!)F!!5'S!)Err`3!!(F!!5'X!)Arr`3!!'F
!!5'`!)6rr`3!!&F!!5'd!)2rr`3!!%F!!5&B!),rr`3!!$F!!5&F!)(rr`3!!#F
!!5&J!)$rr`3!!"F!!5&N""Rrr`3!#%X!!5()""Arr`3!"q-!!5(-""6rr`3!"dN
!!5(3""2rr`3!"aF!!5(8"",rr`3!"Ym!!5(B"!rrr`3!"TX!!5(F"!hrr`3!"NX
!!5(J"!crr`3!"I-!!5(N"!Vrr`3!"E%!!5(S"!Rrr`3!"@%!!5(X!qMrr`3!"3%
!!5(`!)Err`3!"(F!!5(d!)Arr`3!!T8!!5(i!)6rr`3!!M%!!5(m!)2rr`3!!IF
!!5&`!),rr`3!!EX!!5&d!)(rr`3!!Am!!5&i!)$rr`3!!6F!!5&m!)Arr`3!#2B
!!5&-!)6rr`3!#1S!!5)!!)2rr`3!#-i!!5'i!),rr`3!#-%!!5'm!)(rr`3!#,-
!!5(!!)$rr`3!#+F!!5(%!!,rr`!!''8!N!8"rrm!!!NT!*!'rrm!!!N&!*!'rrm
!!"L9!!%L"0i'!: