[comp.binaries.mac] Macintosh Technical Notes - 294 Me And My pIdle Proc

bytebug@dhw68k.cts.com (Roger L. Long) (05/13/91)

[4/91 Macintosh Technical Notes - 294 Me And My pIdle Proc]

Written by: Pete "Luke" Alexander			      April 1991

This Technical  Note  discusses  how  to  defensively  program  a  pIdle
procedure to work with the majority of print drivers in existence today,
and how to install it at print time.

---
(This file must be converted with BinHex 4.0)

:#P41,M)j0#jcDA3!8dP8)90*9#%!N!3BjJ#3"+"r8dP8)3!"!!!BjR*-BA8"!*!
)!KP86Lib163Z6ANJ8%PNE'8J8(*[Bf9NGA*P!*!$!`#3#@"4lJ"GH3!!B,ZD!jS
"#`!G!!%!N!0J8JKA6e*%68&$33%!T%VKIU4+iUX!N!BX*J#3"KKJ!!$p,`#3"[#
Q!!`!)!-J!!!#!",q@rL2Am'%+r`"3$%4SJS!#$!Qh*K``%BN!%"Z&+"0!)TriIk
*%j!!6i#4!8F+S"MJ8-$(N!!F5CTmQ*!!B%+$!B*Z$($L`81$(*0Z9!!J3`")5B%
S(6UekNqU(*'1S!*!+S!48LRmN`I!`eJ!l-B'd2@2fdD'#hR+"4$h+b8!%(k#&($
@,0QdmYDfI3YA,P+X*A`Cm$U#P!!0IFm#AX[a(ef'2md0!0V!XN!!$"*5+0JjB-,
3!%CRE3$10!#QU8PAF3elG*J4-R,3d!%#4*-b))+i)H-l$`Ji5FL`!3j&cTXa)&#
mN3-#cCXl)1Lm!E'F$SJkFmV)Q30LMC[V)1kJ#81R'[NcEp+i132LM4X3C1V)N8m
IcRihhY'44KYP**0#!L2!8CmC)-cJ@8+eC4B!E"Z4J"-E!%"&#`$B!-"2!#!%3%3
!D&K&43$L"'$6!3#`Z%8!k833!#J!#%)M)k%!B%P!"B`%3ikDB23224YTN!!3MCJ
Ba"5,,X,S%380!!!$46B%)%X!m0#B#BfAh*MMMJEdQ*!!!$m#%'4'R`%3aC%!B")
P"K4a!)!$#M34aKMbD6F('JeS#D53!1jXY#B!5+U!`308P$%''QkN-8BBE)$Ja"Y
dP$'(PPaqbD12Ib,3d%BB%YTQP"+X%-m('a"4KKePX2%'(1+"N!$SSSdq'ZN8GF!
"ah4dB!V!*5cD*!!)!2J!3!,&"T!!$Bf0-%[M)*C*%)"Q#,f&#`"XL%LL999PJCY
Z1L6`@h$$&AGFFXZ"d0acd8eA(AVDF9H'Gq#*4jjjk+R(RRXJ`-GIIIIPpeprr`8
iB)%T0!#&Dp,'*UeQ0R'%4!$8F'Ya!!d3qaPUScdmJ%I@CNLaa9@eF-9qG&4kRaK
jK![&[-"*`d3GDj3a6A$,i4('F1)P%)4rD83D3`ija"#PDaaR0N$%'d%5!#`N@i@
aaUH*TM5&#9N)%SBDFZJKL0U@b0%V9+#4"RQc-ZSST**5#K`CCim"ARMN@BGG['5
8B8BCEXb4"UYX'1II'fI)%8BE))4aVR,!$6j''3)$&qmGdkf4AKTdS*%G'X#e%BB
Ddf&Zh"X-!JdJI[Za1Ki)mS&3"KjRUraiGQq3!"&'(L`NAUlGY,2H0af3!%D+HH,
HQ@i`J5idB0$'9KF%F9*13ahe9"JRa(aX'1Ger@J0*!'JFrQ0)D"p'E[QJ%'M9Bq
dD!&dF!ARpi(hVq,)-AkFFip(6[cpH@ChF1kC%`p``L#(!B*JEhFcfhc)NcRf!!`
iHhT$(GK!R!)5U!eLL&@m-JL#-EbK$A"J6aV%N!#Z1f"1F`(N(i"L4BE8f@Yc$L6
J!1d3KU#&JB55UphYA0#EXTe09ST5QkhD9LRma'eZP[,G()$("ME-Eh(TFKcNp$2
!!(%1"2Xj!aU10m"bT6"cr'(JGLaB"Jc'5Mem5`r+rQ@I-[!3"%IE(QQX9cAXaE'
1Sp'!pjBB[(q9VA(SBJlqS[5CmpQ4MU"ThV3'J$8!D!eE'3,!KMVdS4#05'`rD33
6jR8#m["4$YjKQ4+Ck-6jE!k3!2D6S[iFQ-)XEY&rb1Y0&L3)JMD!ac[bi@-63C!
!"`P5Thj4a0m8#qLlH+A3H&K8e(5)Nd%c6!FiYLSPICVc"&LjJ3M2H@-5'06,1Z"
R1qI"jHq#adYI3V&a`Y4I-jpC6[edN!#FmD+Q0E%j"J"HdAJXG#&eb2#'*)DcAhq
6h"A$S#XR2QTmEZMN1HrhR'&fd6J#LU@XVZM-*PlRAal-f`%0G`B#!BJmH@Z$ICC
SZ#,QNT6r1QBJ'CSr+[VZP&K-JaD,aiBlP8%(TI%!(J(3#04B3%G*`iC2!4#1T$R
[08Pj*0FNkE9+KLdT'(Y3)Q1cJ#C!i3VU#X-FE0@!#5!0I9G,kS8L1FQ[@A*E('P
#EhV$!al8NTh)G0@VdL0"#LC19f8JB1,%m!C@j5im`%NE%B%cJKMB)!B(G&IHJ"F
dm[M!"kA"3%+3!!@!Ra)J!3EjU3%Sqe-PB,DbT*%UC`'JK,@#B!mU8%&[pNM+a"d
R2LZN6VbkqFZ91UkBfk'Y#Ve63!r+J3`m6'dI#$RCK2`dUUiCE4"-fj`mm@F+`+-
$H)L3!!C)%3i%1ZJ"#)i`,bH8i3l8YHiC8##$'Y`JGdj)!K0b"i8R*-%*9#L#&&$
3JKLN)!8l+-eR4JX%d`D`19*3&"+8i`8[Z-!r5RL$'!iFb(9"*lXJ!-+L&,@'*Z5
KZ3!+Vk[1))3kT-`qq8fZF8-VBY$1`,qFD`i8H)9GlFU6Er4%`ArP%1!a$*J0k&9
[MTQ!h`DXS-6(e@pa3D[@YEEeVF5-ka[Q5VN*%UHLVX*1"U2mec)%0SL$"8&K$j[
BIFkVKQa`,'3Y)pPMMILbQ3h)D$fEjU-f8UPNE5VB,JR9"QMf0'"&lXE!DJ#VBR8
)a!80@*h(5,&Z,Fk8R$0D0r)%dl,9V5*0FX'iXf3&0GQZ")@9AQrBec*8qFU,b[+
@%HY-,c-fc#"iE'4hZYNd)f#d62MX6peXD%Kf,G&RaH42K'aQd#l"Y#p)l@V(Z8[
k`EC5XXfY1B'*6REP5GRZ4'C[PrR'e,k!ek29mj!!IcS%jKEXZG'GER8h$!,YFTF
1hJA[Z!P(A[2QVP%iMXi9j-221d#"$R*)!3MUff24MVLrDd9"DQGFiaZRi-"b52#
#QHhJFRH3!(0MU2#&#kCK`RAi`fi)mAj(V1eHre3'+#k$LPRXBMP8%mE2NA'+D5a
JjE`lD#pR3iq"61+0JjE3EalVVFhke,5DpXL44QIrj'VTZMlj$4D9FUZZmfNJKRT
544aePr(cjFDQ'V)*+I0Sd3cDcBkBcD$e@#-Pi%LG-aAA)UTcLH5S2MR+`JMZ8T`
(3GJGS32SAd5(SAI@-jcPN!"(2-jCR314'G%Z%XGc05-218N(8eGk*jTLK#Q'"@4
+1lNK$'F36qi+Z,GN1ef)E)-kB3dEJp`YGr)JB%+P*qV!)FK`$Lk)ID#6e[DGeRk
USe'"$aFSUqd%q))CT%i3q1VKK6VBSA-)Y#(6ei$Cb&%I5F$Phr'!lc+fbMJ$fK8
SGaDJlH60EfHicmk)Ne(Jk*EC,(9SiN#U0llj$A$'dHTVjq!h(1EZP!88*H,r03H
A0K#AhN%jFV!'j'&#QE0qYE3cJP-`q443JNFHZd*r)l3FEq4$RU3S#%9eTkCi"r4
GQa0'[80'CN3GD(3IBe"!)Q4+k+G+9!4lXfFe(CFd*M!&B@!(rb)Fa"&J5a3kT[4
()$!%qP&!Tl0LS$4lHAC(Z#F!'""pV$0pe8FJJF-k)-3Vh0FlFe#$!Q9hb)Bk$XJ
[4f!iCN#%G*!!1lPL(klc24!&EE@95ZRN8Z1A6$Y)6-06K[Ia1TMc4Zq6"cm!!Y[
86Ym%!Z&N6eVBJ+V6'jG'(#d8"YMaE$$eK@%3KLc'H,S&0q)&!Rb&"k189m6"H*L
M8)i)LD$%!ZVK+*TM3V[d+28#!R2`3F!K"Q&33CBb3A3!Hcfd(9I)+M#&6h,JK@!
SKVR66DTS(8lf6V[d"HFQKZN"2fH)E2pbIQeB3'mN"(V$6X"SKplKM!d91Ep)5iG
)M*(b"9-`,mJB,q&K4Bh$BQEJ()JcLHY'(jGSLAGL1FCd6`bi6rV%Liq)M#L3!!B
Zi%D#q%"qH)Z3!(-j"fL-iXJV"aFPCV"60c"83*!!0,X`9-13!$6R-&6``$%"S!)
q&3!bJ*&%X*&-J*'EX*'MJ*(QX*(Z`$%#d!!q*3!93(ZmPM3d3)-fD%Si#!)kU"d
$-e'#P#Ha3J6h5"ikk%Z2NhaIC8FPX$kT)3"Md)FTP'N'*8*QZ#JlNhN-G%8&Y)V
k-6Y8f6S'U%#X3`F+YB,2k'PqH!G95)jBU$Z`')GCZ&Z%+"lmNT9%#8hV)4piL!C
kf"Y6`)T`DBm1U(Md9`F%SRHRP!E83CGEDCFe&$$p4"lr4*AcBCCL8(aJ4"kHBac
ra%(i9JI!8B)`e8)1k)eAL8V"P)dZG9,"-j!!S[58"E8f'6KiNeCi&EJGGc*hF1"
%Hr+"$+49Dj!!1p%%!Pm!K#`h"dB30'CjLbPe48P!"!Z5LrA)KDScPjC5P`H%R2Z
63KPd"[,4++BNLFYQ@f@CPfP8ME$M(HRi3HfdKUIC8J@dHCDLNfqTQ(,!PAHj-[(
B1mF8RD)jRH4"RrECQ!5T1A)(6p[a"983(MTiR"6B'cQ&4`'3!!BE53FU538Yq38
`+98B@39"B%8rY#YjXShHe!Bbp8SF4$NmXj2kiKdN1P-29jAc@Cf,qD*ibBIF4%[
40*!!Ah"bEV#Jf1NZ#+UJPX+J`)%##JK'T[4rG$@-NTPj-%9$E1#Cc`P689C,C63
GaR%'VZ++N8)&Vf)RF'"`!pSkVTQEX*N'pM'@iSQDl`P6AANIhFK"63SjfR5MhL4
$J%JT,cSIb`NF!-UBmL')i8'D5fTAQ`NFEQ"PH30F-3Q$-3P@,S!%ibG0)&!%FK"
ij'%%kJJ#miDN`@&mC@Q%GU5KSL%!3$",hK4"`eL$m8&qI@4+c@'TJ6HQph&qDqU
HCE!$VR1Tdh'9$[3FFN1#CT-Z`r0$Vk-S(MBra!3HG4!m%&9'fNG!Z-1@ULJHZ'J
I85Kr2LN(PaFTCP"6Cd!HTGC"(f4,Y5+9F(T#C%U2fbUGiK%0!44ra2422XNc4bG
E!r@D"i@QEP#RIRK$UaLPP4+&YV4%hUJZFL#Vl[+9VD0EDF#'E'U@ElJcZcUV`+S
IFr"ZUa)VR!C+Zr8[$(XI+I5`lDPqQ"-HE'!'H&K$p(*hNC*#0@@`18SFa[-[,%K
-"54Gh*UaTf5#%#H2YQKPV--J+34ilV*%34-T&Y5BY"JF+31YP%FImG+aaI0YTK5
bZX-k%)ZV6HKDCp#XKV0#`-&iMl0pVC-hl)%'b9-@1j8"3`8#'#N"'qQfMST)5D-
#VZF'Md1T6d!G8"!'mY1$9c4jrh*mp#HUc'HhSM%!(G#(`+LDaCCqqM1ZI+FFre*
!FH#C5a4jMk+hVI+amj%lAjQeVj+"m4*#UELIcU@#`N4rZC0"D%P-M&Gi%P5e#VB
FE9#!bPLc5ESG+F3%@L8H*i-ji[&'3e#ZGA#Z'CK"G(!(9LDb9f3RH!)JEl#EErL
l`5X(`lZ&"4Y+RG1BM*@Sa('k"F3UTk-iS#-'p8%GLS1@`d1l(ZD[!55(N!#TT`T
)VQeJVQGUKZ0+2q+"TTY)Y!I6,SAB[0Y"SQlJBCD5![qSLl#84,9,VDTl1ZQE(H+
"`1b442Q43klP[Yla`,Al4RfE1fP!Y1a+`3U@6*Q,Q%N8G$!%[3A81I+K`*&R2!d
mD4@-E"KF+5!PT9-,!MPm-#(-Pr,a1)*)[hRU(BS$(l9MTCR6a(J$-h+!`"bmSYQ
4"l$bR!j-X9#j[rIaS9Cl"L3XI3cPLL38IrfbC-6aX(R91r`N0ajPM[0AId%M1Xq
T1-!E(YU,-KSd)'a8I2hl(AUFM0Za+%Y'0eEB+KJ)!Y+!ZZ&a-q2DDE*&1E8d`cb
mYNUCZ*N-!$A3Pi8jH6qT6q5"683%!VLL+bb'IXFA1FP(GRXfUTNF!-IJbB-)Q+S
$8Z#NTrf(bKj,PK(,Xr)AVrI6ITjAZHQL8PYVXY"E"SKC(hG`(jlM"SP+JLF8`Ga
CNr6"aIU+V[cLbeal[l6C3fEM5CM6V"QSUSDUTaa%2mk"3iJMIkjL5[)(M2b8a1[
AIi@TT,DDc2Vc3j!!JTCj3"icZcq%Gc!9b$QFpd`L'Sa'"c"4H)*j986lA,,kJcG
RNjZh%jVYD)P[J)P[Q*@liN@f+FLaiXMm!Ccf3APeF0,VqdkH5kRXh$rTQcbN#XY
XekK8GEak'k9q3cj5YA`ePa$,&`$&m$jT",Q81Y(09NpK@8ZhC)R!JG5X1Bh%9+C
4QB'3!)H`2%T2Ei5UkC'@"a`'0D1+rVFHedK,!NQY@5QIMGL,,%D')Ef-FK"rj@+
0ckR8NNY&!"6@Bper9@h@d0QZrAP'55Z&Q"I9e1ZQdp&EaF0L!Y1RZ`A%#[C'apQ
YJ82#GTSia05NN!$pTc5k-XB46IqbSpENSqN#T!PD"JZD"-Zad'Kj1['#H""8eJi
%M'RpdI(*6UdNSr8*U2d+4cA0I$ppK-%Ge,MR5)Y%)@3(Cc[R9(6'%40J"2Sa[cK
*c(cc1$LPSB1@h,@f9'APh)Z@%$43#JQ`4fcX'hIbE(Z51eD!G)3*(%Q3!!5jii1
%@hNlFpKb3#Sl*3!-B"-GNc3b30jTFkk4)RTD4RUQKl$pShTc96DYphUaYlCb4'L
(84!9-ce9%B1+T"N92M)B,M8-%"S"%1)!`0q#B$'2b!3Mm"8k*3)EJ4S!m)TJX1)
"`!5J)3-'%4UKmBTF310BF1-')9Q5&3CP!!dd6K"XJ10*mBK%X1)L!!m!i1*+)3!
6F1)r3H*M`J"@AK"BAZ*D2K3N2Z)LrJ"')HCH2JKF,Z*K6ZCT[K%%`!!0)!J`EZC
QrK-,X!!&FHGjMZF"S1GpcZGq(ZL!2ZKJVZD'2K30F$4l[ZKrcZL#lZKiEZH4hZC
QEZ+8[ZCP6Z,mMHCd(ZDDhJ#'F1Q(EJ!--!JX+3K48ZN-3!LLhZB&`*)X13L(hZQ
K`Gq)d1UUAJLicZB"`1EmVHZpRZQ(IZ9clZR&$Z-IRZc+[Zc-hZc1rZcFmSTS%!)
&!3e4VK#XX"'[L!9J8"#"35%Q!!"FmBKB-!B!-!!k43Be`$4k%12+XH)#i""5RNM
YrSK8X1)$3!UJ-31(%HU[#!IiIZ,c,PRqEJBiJ1r5!!!i`1mEi3RZ6JIi$MAc(KS
1riK!X1)%`!,lIKLUi1jiJ2&--I!!d2'2b!)BV`8!S!X-Ra$#i1k%J2%iF1e9dr,
jZ1)&B!-ERdM1i1lh$J!&)!3jEa6Di1j3B201!!!B3!-f%4VTi1iUl[-,b3!-Eb(
ei1j)B20b%!!S`2!-%!!Ci1j0(K"")[8j(J"*qBSA(a#Q%23"%!2ZcJ-VEJ#bi%K
+,fK5mBS((a$@N!$c"@(MViJ)0MmDmilMINm'0,$L"d!!6l-C2q%(lXi)F5m1-Lp
SM[q+-,$L#,$hC#pSLZ$Z*Sm4NQm"-a!a!E!MV`J*a))!'c,[#e$klSi#a*)!4U)
'%C!!%+fI)kp)!V(2kJ`J)`$3qYRqLVea,&"""ElIqVIJlK`3qq3!'XFI!$42"KJ
3qe$1"-rI$1j1!F5L!$a!@XrI)Dm)!GXIkVe[%+dr$Zl1!0X[#FAbr)(bLJL`rGC
HrVmI!2RJlJ5`r@j"qb1"%+p)#CJ2(dbqrZEr#-++@`!P3ZSY23'3!"IZ"$miJ(4
Jhbe!1A%Rm-%""!4iBI50#BV`LM!"X9J!4Q$b0B#GF#IS`3HFHk&L603!GmF*$L"
8B(d#B!AH#AL`iKL!9+"r#m"8aEJa`!jUS)fc!XG2!#b"(BJ1DU!SF(lQ6`"BJ4e
)$QUJ+`!!6L!)KS%G#!jUS%03!N%33p`*EV$L'N!)a)%#i!lX3'c3"D8!!1!"3I$
%h3PUd!8G!4)F%ih!hB%#BX%!@Ya'b)&am%j!!f,4!(J"!1"rB`)6Z$Y8d!@$a-3
6!),`6M#$&HF!3-,QkfrklNiJ!dE)&6DIC1PkGi)B--*Za`Zi(R+l%m"Ja6d!1I%
)T83!Z"1m3"45K-eR&(M!+4`$Z%!8dJ!!3!2UAQKB!Uq3!"D)`J3ip3$!&AL&X%!
8dS%!3!!mi4jiKDaJa8%!2*!!md,$)AL&K"![X$SBS!&$`b4iKD4!'@k)cAId2X%
V"!A+%"J)!%(!q%*$1hL&,4!!6!#J9`Vc`5[%"#YZ!K`p(e!0!d!"H)8!8"dbJTa
R"3+!M,J6N!!J(Q)#!@!)bQ%!1!1[%2*9&Tfbq@"!!*J$Va$`94B9%!$!!0F,!+2
J&Eim!(!"1Tm#&$5[i"8#JK9h!AE%`PYk!@!A[%)q3"*hhZC6!V+X)L+$chF"5S)
B+)F#3%D!!@4!!PDF"ZKqMe!!G!#CU'8!J!B!#65J'JU!&#!61B"2j!-j$`c%3*Q
)!A`L)KJ!@br(#B"+)"-T`)VV!&!M+)B#Q3J"[U)I"!,9%$3)J*h)!,kL3pKmh3m
$V%9NJ!"@R!G!!!&!'RK#+M!A#F#+q`"$Va4+aChi&3$!"c!(33pEV-9Mm!!0)eQ
`!(A2+1b"a@J"!3!)b!J-S1je2d@`'1R"LJ-"&#!!3!1'Ca5-`@+NJ3!J"$5rc,M
d!%!e@)`p-$9#Z9)B$KCM%5`)3((P!B"f)!"H86+F%q&ZiZh'aGJ%Spa&m!!D-#'
dK%Gdq+*F4K#1,3%-()-U'1A8!'QC!ALQ!#a',KMP0J32@(RqX$HDJFXAj8$#a!Z
2dT%-&J3B`2FbdNEi$!&!#Bb%K"!#(%)G'3&NTik`!"0!!,#"!1!%!Di!!!:
---