Path: utzoo!attcan!uunet!lll-winken!lll-ncis!helios.ee.lbl.gov!pasteur!ucbvax!hplabs!felix!dhw68k!macintosh From: bytebug@dhw68k.cts.com (Roger L. Long) Newsgroups: comp.binaries.mac Subject: Macintosh Technical Notes - 208 Setting and Restoring A5 Message-ID: <18153@dhw68k.cts.com> Date: 8 Jan 89 18:00:19 GMT Sender: macintosh@dhw68k.cts.com Organization: Wolfskill residence; Anaheim, CA (USA) Lines: 152 Approved: bytebug@dhw68k.cts.com (Roger L. Long) Supersedes: <14365@dhw68k.cts.com> [208 Setting and Restoring A5 (12/88)] The routines SetupA5 and RestoreA5 do not work properly when used with some optimizing Pascal and C compilers. Two new routines, SetCurrentA5 and SetA5, are provided here, and they should work with any compiler. Changes since August 1, 1988: Added warning about use of the new routines with optimizing compilers. --- (This file must be converted with BinHex 4.0) :#P41)$)`1#jcDA3!8dP8)90*9#%!N!3CU3#3"(P*8dP8)3!"!!!CUA*-BA8"!*! )!KNb-$JJ8f9dGA""05"KEQ3J8Q9cG'pbC8%e!*!$!`!*MFi!!2d@!!NGVJ!$A0i !#BGD!eS""`!8!!%!N!-*(FKA6e*%68&$33%!Rm#+mCr#c(B!N!BU(J#3"KNM!!$ m(J#3"Y`F!!`!q!-J!)!"!",qq`IJ(lq##9-i!`#&BM)!+,3!3,!aSFH%#"-L!6$ 5S`"Y!P$m#rG2R)"m!S`-1&)!aB#(!Mb1,*R`C%U)#FPi0"LJk0!6$b!Dr-M8*)! -!5!a"G+dUY@Q16X!b0V8!c)!-"*k`!$!!3!H!1,pN`H!hYS!`[b&8GK`)F1P3,[ L!`!KBB#4!YB#-#(BV6biFMrDCDJ(`!B!M4mc$H(Y!,b%(a!)X#DB-&[$F"8$5*! !d%*2$J0b*K3)J%(##N-E-'6Y'J$XM`%DV%kSi$@!(I@#,,YK$"5pFL%HM*Mh!XD m4`R-fB[MXFZ$'I!q6C&`iXFC!cNH5-&3iSMh"d(Q9@6GfcEBl!QdI%S2C4kdHM& H$,P(*BJ-HKr8)-mM+Fcc5`,C[5!2+)'!m%`G4%`!`KXe2+##22rSaKTT!*Kf!hc dI20%2@m8)Fml6$b3!!#!!Mj$`i$TrC%#I0RYJ%!*3453!!TkkU(4`$e6#&-($%% m8SFSm%!68%)FQTDE3DbCj9jZFdATf`FMb!!$$MSN-%8CG0#4KKYRJ"#''f5!)%8 CFp$aKKaMPKP%$3fmX@4C[Z@f'jlZ*4#!131`0KS!1J!J#!#Q"1"!!((!*B!*Mek &`jGPQ-R'('pdQB3EFk4"4U90K$('Q'l1J3B,)&Ma"KYeY&&T%NQJ5J8DP6ia"3K 9L-P''Q+bUCX%#8N*Q`)1j!5E"X)#i%)#9*3a"KTZT$&'''b!i-3EG&3k3J`ce)$ U%@#+55B)XmVa4KeRS!(#%&9-3F8EEFbKBE#q,G[XXp&1@qfefB+`,3i`S0T%(@b )DF5BRmS"3K0Tc$&''@b`F@BCBFc,*faq!UVDS&Si#UN*9eQPjjh*XR!&R''@i3B )BZ64C4"SbP('(5"-3DXBClja4`)*")&Z(@f#%!1U-H5!!`i@*hX$chZ!!!-H-KK "!a'S2Jh$e648$I@F4S$3a`iJm2b##JY$FF@k)+!`J`X`61J''hQN!))+,c4JFC1 Mr4QS4k39HQLLLcBUc+14LU`EbEj9-fZPjYBK,TXeJeN(((1DLDDDE,STFq9N[!' #'pL#F-HEDi!!KlP`P#%(h+,6ZM,3CD4j"krUBZVUK(#)f8BDHX3*!K4K1%bYj@N 1!F)Bm-+4"KZUcq%##151r[R-)$6qq"bSINR(%(A))E-EG&4qCTVDciPU'$+EEUi GRXB1!UdbRhmj(E6Q!B+Tjl)K1qQLdfkjrFKVJr+B*`FA(-i'p(*2!k4N'JSN+`- -")!)NL@)#$SL@C1))#D5CBBKS1&-Ci"FTpc`-"$il!a!Si23L'Bd,N%[#'6iP1c 3&keaK8%-je)Kl#CN"K$3Ve*ZS*leaJ5jfG%2GlVMRHm#1-$Q'E!e`6))E$U3!+b -$D!pJiS"!$6b0`!m!`$h#!!)rX+S!'5#F##$63-f43GcND%1Ba$6'p`J'j**X5" eT-eV!X#'aB&J6#hB94""F!C@-5k(4*a$j1J`1I&GENeYHP-Ca*Hq0jJK@kqEJrY DGVcN-8q1+aYL%,'A+L%``BI"@`-TarG(m+P1$T06i3I44%"&hJ&PQ'`PfPJ*21& 9bdf%$-1Bc$5'Kme"NF!mNjRJ!)GG63Z8e9"N)Gq!XfVC!AeTZ#(cR!Hp+VM"$'p LT"[#N!!YZ+(UKjUX(L*(D6U*fFm-`9-K+pR`KMHNdiMUqZ(pk##UdX(K$D45hI2 54LPb13YDdKSH[l39!i#"!*`+3f(l"!Qj14,6Q#188`eD)$1*LFN1P5)$1F-!JMU J5A8,)jM"%#E3&1K'"3QTcE&UBjS3b(3`0!A!#f3DJ#230!"*Z1R)p'LE!(M##60 6(DVD)-Rl[3%1D'LBQ*iC1e3p0BQp'aF6PpHmY*A""@G`JF$-KVDe`8"ZXiXB$h2 *[$#!p+%QM@-D,!S(p)A"9GQ5Jb)YUXmfpC1BjMSQ#0UJdM3dXe*QL#XSMdHY5k& +CNaPhlMdL6i8ZJTmLS6SrFS!8MN-,l%N"+8Yr8I5M$+[P@f#T9cR10"C0HaqD6K $Y-b3!&$`X8jQEc4Q*cm&@ce8LT9P`)1c($IAPHQZ$1G6S6k$QcT19FU5CVTI'aT V*UDD9)A3$8--H9AFiIPe$+8$@KK#10!J+,+dl30"'FaJ"QI4iCa4h@[ZdV!l2C! !XlJXNeNB91P$@LfbN68J(ZBLZEN!&l)1AheT62Gi"`C)-3"pi+NJITS)RMVLTjF 3kZ')@S%!q-#eLP`S#$lP-$L*!A)NV@XD&!CG3&+8N!#'9#GafAQ(U$lVI@kY&&2 6"pV9MR0AG,!IrC5T23!,'*+DQk5hqNHr(!jf[li,hKaD0GmjRKH(MS[Z9JNBcAh qGCCN%'4BSEHiG)S5aHNlh4[B*d-cRGI,D%*IQZSU"qcf8*p0)'X[p38#X`SicfF cRTrV#YlaXJP9`p3REEF*!P[PDRR1Ji1!(DdVjjfUHQa+R9a"#VFRHQ$"lVP#6Ve `dc(NP!dDhP1Ulh46"[Ma#IS$`4A#N!#(T0eaU+#'63MmQ!3R-+(A4GJYBYrdAmS &q!l"dm(K2Je&pa!JT`Ui+39bZS&9FaJ!3'M#%ka3""F`S@IHDJ%+JR#$&2!-E'e pkkV59$Q,IRF01J!"%8#)dLXXVeT5S1DB-1@'%&LX2DBaJEDjlHd%F-pl+JZIYqC dlXfUF!cGqji+jr6[dZ"4eEjC`CVBTmNdYHaP-D1HcFU!-p$Y,!&%F&BCfR"LK4A YD"Y1B!AqB3N!M)$A[JDfX"p+E#4,XR,)RS1baC*V!$cEiY(fcE3YhJ&V&ad&!qr fYmGGlK@`J1%*!0Xr*EeZ%`EBNMemGm8lG(&@ll'2rP@c'*MAKMmLmi-U,,+a3C! !EXMTXq[AM$&dffeFrljEIQRbHB(G2'9A[CfFrDh8Zdd(8&FUl,9YZMF)mZkTJ5E KcQNheaNmf`CA+@ahIPf$bPLRVdX01-P!Tpd`59TkpdeC$'H'EkAbMZ$q)[ke@dp GQX#HH#q$9m!%GYm`8kr@%`G6$MJM,r5Hd%2NG8q6XJH"0-k![Z5AB4UG**M(&3m [-%9eA%a0'$NKCMrB*CB0U0U9k+-V-dE+B@AD*B2-M[P%)44pk@5[YQpSN!"6'p` dU"BR"6GP#MRe#M`9!$me!%lAE,#"D``)!"VJ4dKe"l+#,BeP2d036p8bDl9Q4e- 5F``B!!EJ4jM#+SX&626c@Q3J9I1A8HT$6@cRGLr)CTXNC0)64$66Bk+92@"bF", R513$*R-b8%+!,HS#AHL%@)T9A)V8IYh6Gmm9Dl6hA$e815MSAkfR--($IQbL8S$ AAkme,5YMI-'hHq`PB21AC'Q#H,C6+FHP5rS%1R63!Qlb"Lf`JRi&2R$PIJN'!$$ eJ%Z3!&1LjKYFN!"6BA"6P*!!8jD`J$GP"Ri88()!6b@N@GVMJ`PR2TBb4f@#6hp %"iU%2!Jh"rq%*Vj$AiGe@Ibd@&YB@R8!HqY8+D@(D%,h+d8R!6RP!BcS'b+3!!" '8!91-!48N!!%6q!%Lf5*i&-jmFB%`hJ%[8B&1h!h&ZF"p'!0ab!$@!!,`6%FaA% F)3!Gm2%2$h!i`&)@G`4"[X%"'0!AX#%!#3#0C,H,GH9,G+H*a4KaPeJ$+'!(!%8 'FY-$lQJD0X!d6J-e4B!$9$13!$*!EMLJ06#3!!-`3!0HX`0L3cD!KMCU`cCZ!cG b3cIrZ"AYH#Gi3`4C9c1YH'D6ecciT9P0GNpSi$RSSc)RS%-Zb(V*`e8+-beeYAC Pd*%[-*,3"@CL0PL&G9LLmbCTdQZrjJ6"TS0-U'bc`53@T`&HdS2fH)`eN!!!8#! &6f!m4B!&82!%8N!&(4Q3!!N3G39R2M4!GHE@F-%h)E%Q2TQeK"BeIbV&NcaMPYp QM!ThG9I*PQ$LG6lN1ITP6G5#B(N%P@4R!$`6PP23N3V!-dAJ"%53!*9EfC'jmC3 2b!GAi$SJN!!(jb)kCk*FJTNj6A9h8PLB91Ke9U8`DT!!3U#TKm$d,23'Q-$8KK2 b3`ScKDMLQAA!@*RNK[j92J&fCN2hKcHP!MR&!MG9"$RP8ll4"MNP"lRS(Lh!Lli )M-*)M-+C0ML)M##JM%l!M%j!"A+6M-[BM-qi*hKM49K%'PV%4BML4@!N4Q68+'I d-4l"%4%`!*I4!%d3"-`i"!!4$%!%"3(2[Q!$ab'Id0#lEL3)0@LEG@32pf*% a`$0)UA-N%$96JbSNF$82kD%*@30'!$B6@6CRXfI$`j(U@4Ti`iiG+C*J-`8PqBS RU9FT5@`V@5NejT,I%j-P0C1G*%!fb9Jjb6af#6Br16j"59J&BeLR06TbF*3jTj4 `&9T0#B*i-`&6UA"BUC9FkC9J+CBY5RBUF*IE*R8*S*C@&`3``$-M13FjKQRZ"hm ae))@LU&9'Q`E@T!!"lQK#ZQK$IQ3!#DD!'1$SVm62(c'SL$TSKBRN@@CTJA(TR` *Tf#M54-AB-!8MadhHDL*+PYR*R*J@3QRT4EA!$bM"(NfU@lU8Q9U'SqC!*%jQ@" UQ5"i8qc*0`$`RSB5Rem84Q1%"'9dRiA6%86!R`$JR`"+S!0DS!GDFh*J"+Y#6l- c,Up9@Y1P9XUMFMad2hG&P-Mc+DKb5lb55m2R"&13!!6V-UifTLkI`P5FdNEMpfC "TMamYN0)5#YQpSUcD(BIL((Z33%*-!*M-JDX`PXm3!9jN!!kPZB$(5Q`"%Y#"eX T2(!`fq3#D1#`M8Tf&M#`"6Za)-!$P!CT'+Za'f*a-,UaTY'6`C9A+d-UCR)%p&4 0N!"UU'4$8Y086Ci+*pT8+BakXQ5AXN"V'J4JXafC!3N`0`Z6"aNS3*p8A2NfBf8 `G#TVG%QV!KhC!eG,,[%PBimMJkhRFIDM6&+fFQYR2a*$*R9JD2[8LVC("kC+GLZ `YI`NHSV%+iT%ChF&*PhPC0"&"'h$5Qlk4&9E!&GE0krUN4hT!`UUU-1MMjkbY%e l@+!8YBq$!X!M"fdJ"'b`"P$34UBM"UKL+dAJ2CJfC3AMUN0l%!Q`"h&V'Jl!-a( UPQ3`*qQjZN+,Q#[,-qY@16e3M`KRP5L3!!)5HDLBHMa9+8m"pV1kLa%m%`Bb5dh $mlXY%!-eHkLGie5h)k9Vi!,H1cH)ZlSb`$2jZ)pb)j`Sd,X8#UQ(QSC0G6UF09G !BbE,'ll01`!*d!H[@hEACJGA`$M1!LqAP5C$TN+mH6p'G'0VKP*A#%4#a+pZjP3 @YBArG%aTS*1S!MT2PM)+8f1)pbQFpP5SH$pjd#BVejQI#6Y2G'd1H&-f!"GAT+X M!CqQ)*r!@TpQK%B#-!!,e5@KiJEfFeAdT84D9C1eK'J5@`FV1&Rq9C('`dZ1@be EeMa,4@ZQNf@8GDGXXPFpK,-cqlMBe,0T8km*&6&jF$jd9eQrj6e@6'`b!iVmf%V *K'PR)&8SG@)395QmHC28"8b9Q,cYTM$#DAQBpeSIa%`U3dS&qbC[V%)bdelISe[ !Y-F`*Vh9)P,mp'6fBh`K&%5HP5eNd&SZ#EN%h,9UahDlqCPL1'*T3)-Sh$e$5VR iCC+NiMPd)$fDT,IpFQC#"cecj)DHFlb6JiDNQ6j!k$E!2'+fl&qL`NM$`d42De( FfeTBq!DmT9RRSM$"pDe4QMqPV$,cq!DPdiBT1#lU"j`03l9Sd4Th9!!hP3S1jKi 'k"ZpN!"6bA"6cC!!8p,!8aP@'QD%U`(!$c%-PEcD4Ep+Rm*URdc4`Vka0+3XEfm `ZG(X"TC,4*L,2T[EZCqV-(!JZSdf"D@V-(5CZ[Z,[kkEZ#M`[0'VXp4V[A#+[F( FI88T"phl[5bkZ[LV[iQEZi0#GSblS)qlMj,V5@!#YDpidCV,ZCi,ZKdpZL"YZL0 0"kTl[kfl[l'E!,1V[VIE[$b00a)3d&[K%9qG#Am5-QDGdkql[lZ)FK&0e*9le%d GeF6ENH1lTU4m[N+)MqT,[#IU[QNQ-qac,ZG9[ahT&`cJ'JKB'ajK!er3f)lpf*! !(GQ52GQ82GQf4RD-AGQD[GQF(GQAE4T@Y$'NJ3f-)J!3B0TQ(6)fi!"B-!)!i!% e,!)HSGJfS!!%i0S"`!5YS33'i4UZB3-,!!BV8""B!!!i`0Y-832r!!SJ!!!GB!F 5Y0!2N!!8!G!"@K%!ded3fBhG5H%AfrhGhDhGe!hH3j(G![!!Jl!9$h!Sh#hH"H% !CY(HLQ)@!Z!!KI$Hp'hIq,d9$N!)qchIlJhJ!JlI"A(B"BlB")iE"#lJ"JlJpAh I!alIfdhJpHhI$Zi!l,hJ#l!!"E(K(FlK!H$K)3lL)PlL*(lL(jlL&jlKm@hL+Zl L)rlL+"lM0!lM#@i5'2lI-,lM-mlM-[lM0GlM3JlN&*lM!0i6$S!)3k(K3alN31l M6NlM0jlD9&lP9RlP@*lP@VlPA0lPA[lP69(E$1$D!Q!&dCd3i4f3!163h"jJ"YK '!eb4&$B3!93`h"$!"mT5%NR"!J!!h+fp&463'NaJ%%Qa!hd1!2kb&FfY!S-1!%Q K"(dH!1"!jT!!cJ#0RK"C!!!e-!DFi0S$J%#bMHB!N!$T#%3"C)i(!1"VSSi'IEi !1%$QaQ$FMCi8Gp$U9%$QrL$VH'%)V3i%RXi0CqlS!-$V`-d'RPlFPNlS!&!*VBi 'RLi80M$V!%!+V3i(VVd!X4lYH$%,VFi$VPd!8K(U`XlY`)d(RTlVb3i!,3!!`Y$ UI1$D"+!!!3!""'!3RrB1V3i)hki"!'!(ZZhSH[,#k-$Q)!-%F!l`(+$TB`!-C-i 4kEiS``hFL)$ED-%!5d$S!C!!!kh1#0p1#`#!!8b3!"1,-K,!$3RIcJbYFI%!B!3 "B1E!63RI6YUD-!!'X5LFS2$k$J!()!FTEa!XV`TpVJ$Fi0S(i!F"`!`KX5LA%C! !1Cm!PDlb1"!!Z3lFS1$D#@!&!3!'0&m@!S"!`%d+VUd!YY$cA%m%VBi+BGrZ&Nr S!L!&VFi+B6m4&K$bA$mA`!d,B8m1C&mXGJ,FY"$fPh'X05m!ID$`a($Y0%$f$#! !Lp$UZ($Y9+%%-Y$E!R!*VFi,eki)B$(jA$m+VFl`!,!!ZN$f@a%,V3i&VMd"2"r Urr!1!Q$k`-d&U8m*C*G!!3$FKarkZ5i608q1`)d-VXd!CVrf8-3"Ylm!c"$m&5% $R'm@+($l#6$aVA%Sa'm%N3lFd"$mMK!!XV$eCX%(adm0VZd!9%(mCU%)aim0ikr Ea*m8Q($l%1$XC9(F*%$hCR%+m'rXCB(Ra)m$!&!,m-rDP39%%!"SJ2F$!1d!rY% "erB!H!(C5hMl)!"X1SlRk,i#(r"q!H!#`$pcaaH'RmTE!!'J"-#rGmFA+J),L!% '!36#!2LAmbK!VZ-"+$$d"B!G!2m)J@Z$!'2["+E!!-$bE!!%N!"q%%!FB*XB#!+ M!2bMJ"&!YM%!)KJ!Z!$d%hm!)!+iJ&6("-m!r$0j84$2k3!Q+!IJ(mb,JQ12"$$ "2J$r-)&VL`$DB!MZ3!,S!cXG!*!!!2aZ#ql!53$rUYiET!*mJ3PkJYZR!)L!Dj- !3S%#a-"&N3VJ(pKlJkL1q"Qr@`$rd0iEp'qU!!01!rJ(p`$!"*L#a!m%KJ2iKrF XBD(!!8b3!"hF2V#3!2U``9PJJQ%N)#8r5mJ+!)!1$(d#3!$![lph%$3"!"!#4&! !0!$iprJ!!!8J#dX`"3S!$!$r-*m[*!&88"L1!2J(qLJ!cj1$X0!&`,rF4`&DS3I )K6N!rJ%rAkJ-!!!0b)9%!2iaJq%@!,i#%-L&6`$qC6rEi!0@ALlX'$i3#PB!riB "FQ%CJ(rUccEF2%%iq1!!r"YkYJ%@N!!q!@$dJ*XIY!d1N!$em3+#b!GPRfh`"V8 2!#5mVH!$*jeYS!F!J!qS2,2!!ESH"#!(VXd#`!'baq&8J%G%"b%4ceh$&+MT2#) l#)QfF#@'2QcM%H&"5-3&L)i)!S!Pi"(T38JdKF&`*PS"MiJ23U,HJiBF,Jai4(l JfLl!T`Q+()i0G,d)B(-!`!@!+3j!*pk"UAMEV+,r%i-X84"-4363&,P!@G#*M@! UMMQVU!C)JNl%"&-4!M4&@G$RG1)SQ)UQcLULJcc)%Ph"9-3!6A%[3%8!N!!,TL) (F'dBJ!#i4CC)$+CLSJ0jCj%P2S1T5!)3SdDSKb`4*F`j&)!BHGjJ,!G6N38J4Mp !+(3L2*L+-!!aiN3CS"2h`95N!BK4(Cc#(@J!TZ+VH`SJ)b[@[!!3!DDLYhX+L8m 4"S!2-"9ph91J#S"J)ml!UAJ3-`!`)(e!THXY!#6JfM)!bK0hrM!*6%8Q8"hGJ3! i9N1K-!)hlLJ4C8#`@a6L-3&X3`k!"c0K!$J'A8m",%#*#!CZ)418"Pe[4EJf$L! +)U--l!Ejd3C+4)()'RFJ1XL2S)m$#%(G+!2R3Aa-M4,a-N"&U6F9UD0%I!K))"F QJ+Q)qTbEf@13!!Y!!&#!VZF+A9X(F(ZB%4B5apTQ)5%!d)1+!X!NeMB)3!kP!LJ 8KM8J2al#$L!3Af')"!,am6Gf!'!(!i8K6e4ZqUm$B!,r@#b'BQfVLJ%J,#J!P9F 3rY#G#!#3!+iR*)3#3"HeC1Kl#&jb!J!p,dN"!Pe#8)bfS9#FbB63!GSLU1N!0B` h*!39m'Q%!$q`"J1)!!!: ---