IMD 1.17: 11/11/2014 12:48:08 82VKXBVERDOS B* VERSADOS/RMS68K OBJECT 4.3 SN=39358 (DRIVERS) 5 OF 11  BT0582VKXBVERDOS 0420¿|-*g>*g RjÇaÞ* f@* g­,fí-`­ ,g` B­X­,AÕa Vfÿfa|`ÿ`HçAP$8 >&68 @HC(HD4<  g 4<8***HB* g2Hçz,* m6a``NqLß8`Lßp&*HC6‚€4*AÕaNqLß ‚R`ÿ|@ç|$©%|ÿÿÿÿ#JFßNuIé L g(@´¬lò%B$€ ŠNu"x ,Aé ?Fü'"HJ‘fNs Q²¨mð°hlê/(?(Bh (RhШ ²€lô!@B€0("((f""x , ©#H!|ÿÿÿÿFßNu9 4ga€î`*_aœ _N`Lßÿ\?_f,J¹gaýžfJ9 [g|øÿa¢AÖa Ö`tNs@ç9 4ga&î HçÿþNi/ /9 b oF,hHV/(@À@ÿ?"h 0P*n6`2 f€\,_( „!TCBgaÄJ@gÿZ @f AÖa7@`ÿJ @fÿBJf&HC4<HBAÖa  Nq`ÿ(HBHA(&64< ‚HB4`àâˆ&T(,_" !TCBga`Cð=C^AÖa6àJ®@gþæ$< ÿÿHCHD6`¤.x Fü aüæMø "NJ© gì|,i 0.,@ÿfæ#n ®-!Î Kî.r?%2 °føB8 [|øÿ1ø T R®-fd.-fh®-fhJ¸ g*n6aú n®ú`þðJngAÖavHzþˆ`>®úHzþÖ`AÖa`Hzþr`JnfB®@ÁAû-oü|úrNuHV,x Hî?ÿ-_8Ni-I<"x =iÿúúNuEø ¦Çìs,)gÇ`"ÂüEø ¦(NGs*r»Îg°$<‡42&26,(gÃáK,$( *,,,p<,.,>, ,"0<2 gB@2g<,*.,(>,°H@0,²H@"@J²f -@g4&@4+HC6+HCAòa@J²gHç@(AÕa „`0Lß raÈ,sf-|çOGB.ûAúþ¶.ˆNuLß,sò Rrì ,NuÇ1G*Bh\è)!|EXEC°!|  ´<(,Æ1F.½Èg$F-ÿ† g†1F,|ð& fa¬Nu1F,X <1Wú!oü`äa aaaaaaaaaa a aaaaNq?/_g/ gºa aþ8 4g @ça ¤ªTKú`ªVLaaaaaaa a aNqNqa Nq`"`6`>?/_gL/ fX—Ns?/_g0/ gNa"/ fÈ?/ _g/ g&aaýr8 4g @ça ªTKú` ˜H.ž•â n2-4.(g^2-,6"’må‰Üz n6a²`Nq`<"FJ‘g6*8 š,.<œ… n6a’`Nq`(F-C<&8 8ß¿Ãfú/?,ÿú<<`B† m n-_¸-_¼.)g".Hg a@ nü|Jfüv n,Cø – 1pfHzüf`üÄ=@=|çGB.û`üDJFfü>AÖaý¤ HzþŸ`új P` €˜`úX~$.HffdfLLîÿ`®z,.P n6a ¬`Nq`&~ F&(.T·„f È®Lg-CT`"R‡È®Lggû¶RnX .X°nXbû¦~Hzû `X oBEgaFßüNu./,x ½üg*/ f".)g.H8gîH,_"—Ns,_"/8 6Nuaè$< 4.&.(.8áL<Aî@aª`®)Lîÿt®-@&Nuî ,`ùv@çHçp "x ,Gé Fü'$K&g&&C´«fò$“JAj.&©#K'|ÿÿÿÿLßTNuJAkô&)fT¯`è&C#SFïB«'@ '@'H'BB«BkgëáIAA 7Aa–Ó«Fü'&© #K LßTNuHøÿÿ@ø!×Ni!ÉH!øL"x :3|•3|µ3| 3|°|`Þ@ç|8 4ga ÈÝFßNu|8 4ga °ÝNsNu|ð%a|`øLHøÿÿ1×!ï|LøÿÿNs@ç|JÐkü0ãHâ@S@0€kFßNua>T.raFß.x AÖaî`÷úî ,B® (f!NNu*@ - fø+N Nu.&|ð&î-HîÿtHç 8 Kï €Poaþà. ‡ÿIöpGr8ÝU@núLß0€Nu@ç|JÐkü0ãHâ@R@o0€FßNu/ "h!i €0€B© © ,"_FßNu/ x NBB8 Z 0àIDAÒx XäIÒ¸ BJ8 Zfà _NupðÀ($@&`h$&@çè-f,Hç@ Eø |(&"* g ʰ*&còÊ!A %H LßFßNuJ¸ tf|Hçÿþ!Ï tFï<.x t|9÷0 À÷0.x tLßÿÿB¸ tNsRx \ xd \k$/ "x :3|3|53|.3|>"_Bx \Nsp þÀˆÀÚÀj€nÀLÀ À€$: 0ÀH(¼€@*ž ‚&À&ì%z ‚%n Â,œ,ܼø(fÀ#R Â+È€,¨$€,²8€*À œÀ” ÂŒ<Â,Þ"ØÔР€#L €#D € €¬ €<´°¬¨"X€BˆTÀ”Œ €$n, ¶ÀŒ€tìÁÀÊ À!> Àê ÀZ ÀXT>€#†€´€HçÀÀ x :| x NPø Z(( B28 VÓ¸ B 8 B€&\k:R¸ >!À B <&\"x ,@ç| i "g‘¨ P`ôFß i"g‘¨ P`ô"x ,J© g0/@'ÿ@ "8 BaóLß8 4gaòÿJx Tg Sx RnPø [`órfNsT €%bû°Ð€0;"Nû %cT—Nu/Ò2; Aû"Nuûˆü"üÈý@&|P”˜,`ÀBûøˆÞ~ ®ö"ä÷B+v˜èœxý ~ò†&ÆûˆònúÜÿäðÆñ.?_fó\aõ¨=n\8 4ga6ÿ.)g".Hg~aú=@|Bn€ÿÿJ@kZåˆ €(n¦EùŠÕÀ4*?g0B…, n6aÎ`NqTn`d(FgAÔan`Vn`N*HÔÒHyÜNÒ$x ($ gND@°jnFS€Àü EòJªg6*f"²®f&?*$jHyÜ@çNÒ0€ãˆAùBNð=|`ôj=|Ns*I"H Q")aÖ`T—Nu"M !TCBfò*H(m@ ”!ASQfì`T—`n !TCBf*H(m@ gÆPø [,fT—`B"á™ÿa ``êHç<ta4gßüHç`ta$ßüJ€g/a:`T¯(¬fNuNuAï6Ø·ìe&lUBgUfìNuUANuHç&B‚4fx`–HC2xƒf6ƒpx ga>KøIøB§$I"x fFJQk$¶1@f&i OJg·Øg`öHSAëaùŽa”Cé QÿÿfÎB„ g| g4´¬o  g($,aœ‚)aØ®- K gT¯Lß88Nu g@î-|ð&Aí-H”|0ãHâ@S@lü0€aùJFü AÖaú$a‚`ñ,R„R„`œ g*$@ g**º‚m´¬nº¬m` º¬o(J*K fÖNu•¬Õ¬ *,áGôXf*, $T ,g"@Û© "Šg%INu*ŠgúBªNuaøänw&Nu"_ g @Aèaù`ðNÑ g  iµèl”µém˜fÿNJQk’*iHUAíaø6 gþðáŠ&J×ÂàŠ(@°Šnþà ,áˆÐŒ°Šn fè`þ̰‹gþˆn gþ¼Šàˆ$`þt&”g"T#K(‹'L'l B¬ ‹àˆ'@‘¬`þJCé QÿÿfÿPgþ¸&JB„`þLa÷Hç $nLß0T—Nu$H"x ÿÿg *iµílµémÜJQkÞá‰Òв­bÎ` Cé QÿÿfÐ`ÀCøAía÷T&g C±Ál"H&fô g )áˆÐ‰µÀm¬%B f -àˆ%@ $ƒ%If*Š`$"Š ‰àˆ©#@ f *Ñ©#j "’$IJƒg$"C#JJª f )Ѫ%i $‘g"R#J- ð"x ²f(i,g Aìa÷H`îCé QÿÿfÜAía÷4Lß0NuT—`îHçÀ@ç&x 0|*S»ëfKëIí&ŒFß+@+H+N (o:”T¯;o+o Uïÿb+o a÷+A2<ù’àHF@@ÀüúÒ@;ALß8NuBƒB€"x gbEé0)gP—ËJj f ·üf$&J` ±êf´’gB* g f4 f& ÕüS@fÄJƒf"0) K·üf J°i m‘ÈR€T—Nu JNu CNuB€*g B…:(0P$f `¾°P g Q… E læ*T—NuB‚BƒB"x $( gd4)´i gRB(pJq fJƒf:& „g04)`*±üg±ñf$lµñf$lµñg"Jq k"€SDf²T—JƒfB€B‚Nu Nu qNu gJg` NNu gø"(g. (f".°®f²®gÚ"x ³üg°©f²©g"i`æT— INu`††ÿÿÿB€&àŽ(o8؃S„àŒB…:(J0Pg¼pPe¼pPb¸pPbÜpPáŽÜNu Q… E lÔ*T—T—,Nu$x ( gTB€0lTD@°jnLS€Àü Eò4,f^Jªf8g .(f‚z,, n6aÿ\`$Nqn NuXnNuZnNu\nNun Nu%FBó5B$®NuJªgÚ .°’g.(gÐBªNu"x f$x jB‡B‚, Jlf„J1 g\nNu~Gòp·êmZnNuJ«g‡`â6üN¹Aúê&Èz,, m6aþ¬` Nqn Nu6‚'M'l 'l ‡ Žü‡ í)GëÿúåŠ B ‹Nu1 g"S‡ÎüP‡Gòp k (°®g.(f=|NuGë,fÿx,f=|Nua0Nu"x f$x j~Gòp·êl¹ëf GëB‚4a ‡`ÞNuAúéf&åŠ B ƒäŠB1 B«Nu*n6., AÕaüÄ`^n`Ò<5P$0@0f22, A0g ŒA g& f.(fn `œn`¾\n`¸,g†, gÆ"$. uP aûÎ`±üf Zn`R\n`LuP$!uP  ‚1A1| Bƒ65PÖuPá‹!C 65P–uPRC1C3@1| , gè NuJ¬6g*l6B…:-5P$gabQ… E lî,)gP"x Ké>)gB,,Jm g.¼•f*­ Jm f0-@ fB2- m aùf`aðnÛüSGfÂNuB„,)gÄ `–>, fz,, n6aüF` Nqn Nu$F,g"z,, m6aü"`"` JEgJ0Ðf^nNu., m6aúþ``êB€00P, f8ÐpPáˆ%@B€$°P 5pP$ª00Páˆ%@B€00Páˆÿ%@ Nuáˆ-@ Nu»Îg -,fn NuZn`r\n`jB¸ b., m6aúx`æJ…gÚ0, 2,A'ÿg f  gÁÁÁ B‡,,g  gB†.8vΆެÞ¸vθzà"FffAø pfRˆ-(fTˆHG>G‡ÿ?HG Gaõn`.S€g^n`®Pn`ön /fè"AÓa÷š`Þaî¢&H.*ág, "F m6aú–`È`ÆJ0PfÀ!¬ P 0, @Oÿ gÀ1€P$1¼Pg1¼P àˆ1€PЇS€1€P ‰àˆ1€PP&ðP$R(-K gá-G$TNu., 8,(M¹Îg,,f n NuB¸ b*l6AÕaøò`^n`´J¬@g ,<àˆ°uPe°uPb n `’05P$@0g@$,25P$ uP aø.`aíœ<(SFÜuP;†PSh B†<(  g†1F JFf.05P$@ f$B€05PÐuPáˆB25P’uPR @aö<`aíDaí¬BµP BuP$B5P'BuPS-Nu*NB¸ b` »Îfn Nu$-2, l a÷’`^n`ÜZn`Ôn `ô\n`î&H$m6.+AÒa÷à`èJ…gÔB…:+á, gº¬d n`*,…ÿB$,,B, g,+ AÒaø˜`”`’J…faì~J0Pf„%«P B2P' àŽ5†PàŠÜBSF5†PD€Ð« àˆ5€P5¼P+g5¼P5«P$òP$R*Rk -k  NuB‚,"x fJ1 n=|NuBƒ,g Co=| Nuá‹à Hz@çåŠ B/?8 5gaõèîNs8 5gaõØÝNu&MB¸ b*n6., AÕaö´`^n`ZJ®@g .<àH°uPe°uPbn `ÜVn`Ö·Îgö"E$F.* k6aöp` J…fZn`\n`ö* ,**fB†<5P* gÜuPáŽB€05PuP$R@*áa÷(` `J…f aën `ªJ0Pfò"( à‰ÔA1P1‚P’u@DAÒu@1P!µ@ P 1µ@&P&65@$*gƒ* gÃÃ1ƒP$1¼Pg1¼PBµ@ Bµ@$Bµ@Bµ@S-R(20PÒpPá‰-A ÉEaêàËD g$$.´«g pP "(Kaôâ`aêP&L$+ ‚Nu,,`*"-6g*,,, Aaö8`` J…gJ0Pfn Nu.Aì aõÒ`^nNu.(f((gn Nu"(6g*,,, Aaõä`` J…gJ0Pfn NuHzÿ¢?,--gGÿg­-g- ,gSs­-f­ ,Ss3g³ gAóaêgl û g+l  g+l  g- ,fAÕaêVNu gí,Nu gÜí ,NuJ­@g\n`h&, ƒÿà‹HC8 nHC Caîþ`Pn`F&H&¼!ASQl«l 'l'l Aë('H'H'H"áŠÔ‹'BBk&+K@Nu&L(m@ fXn`Þ,fn`ìz,+ n6aóð` Nqn `Ò"FB,+ ÜàŽ¼pPbä c6B…,B‡ fY‡+gX ‡fP†PP…B€,¼€cn`X($KaÐ`Zn`H(m@ JÄ(gÇÇtU„a0(g tEèaY„J…g $EîaQ„$I$gaaÆNu6Ú·ìe&lUBnðNu(N¬-J¬@g l@B¬@"(’ˆÿàaïÚ`aæâNu(n@ fXnNuJl&f~`*lB‡-gY‡*, n6aò¶` Nqn Nu&F GfBSNuT‚gX»ìe›ìÛìÇÂn`6Ý»ìe*lUGnð. R‡‡¾¬e.,@ç|)GSl&Fß&F f$k'jJ+g+g7|NuB€00PR@ÐpPሀ‹B‡+°‡l.oÔ|G*,+g7|Nu j6añÚ`"``êàŽÜpPáŽÜ>0PR‡ážƒ|GB‡+*FGë6ÝU‡núNu(n@ fXn`$ . ?,ø€_@Jl&gKÖaNu--f°, g˜", l(gTˆ±ìe l2HA±ìe l2JkL"Az, m6añ`Nq`8)I,- 8 > &\e&\R€HÔNu&F- ,fm NuzNaÿŒ(FCí0<"ÜS@fú+mt+m ”+\ü0-H+\H-Hø-H@ûNuAÖaÞòNu¨ ,fn NuaÞîNu&L- ,fm Nuzaÿ(F­ú+lP+lT+l L+lXBmX-H8-HJg:íú.-Hg*z,-P m6aèÖ` NqnNs†(Ff+TT­ ,0-,@ÿfAÕaÞFNu$, 6,|B„g(,n=|NuB… g *,fÆaÝØCÀg*B†6, gƒg´lJ„gÔ„`ô‚&\`6,$Ô„"x ,Eé&J$S gŒJªf&’aÒê`ê»êfâ*fÚJ†kºªfÐ&’J†f$%M%D %lBj%EÃ5CaÒÄNuRFCf* gêªêaÒœJ†kÿ~NuaÒtJ†kÿrNuJ†f @ç| )g $@#RFß`ˆ=|FßNuSFn=|Nu&Fz`aýL(FCí0<(ÙS@fú(íü8íú -H€ÿÿÿ(À(í,0-H@ø8À(íP(íT(íL(íXNu*H(n@zB, gz.,.< n6aæü` Nq><€™AÖa֘߮<&F, fLÛÿHîÿLÛHî 2Aÿ/gÁ=Aú/[(n@ g gì Jl&gKÖaõ$Nu>,.(f‡J”gz, n6aæn` Nqn NuJ®@fXnNu,‚Eø –J2 g\n`:¼ Eø ¦Äü%Ž %® 5¼ B² %” Br 5‡ 2` ò Nu.(f((gn Nu,°(%cB® h%#n Nu@$@&NuBG`><&,"x $0àH°i lB(¸±0f:Jq0 g4 10f ¾10g,‡0Jq0 j&10JGg Añ0aÙüNuAñ0aÚ˜Nu^nNun Nu,*H"y 0 g i‘É*$ n6aå8` Nqn Nu$F&äŠ$ÙS‚fú$F(M"y 0&Q—ÉÙË$ÌÛÃ$ÍNu.(fn NuLÜ.<&\²‡e’‡R€`ö&(@ç|–¸ B˜¸ >!À >!Á B׸ FÙ¸ JFßB§"x ,Eé&J$S g@*g2&’$—.Š*fä * gÞ²ªn ‘ª²ªgÎmôѪ²ªnö`Àת`¸.g$G$*.aÏNJ‡fðNu=| . €Kª{ûfDJnpg x :(f2 x ‘ü, z n6aä```*FB®LîÿN•B¸ b,x Nuî ,NuJ”f@",g.(f".*y »üg(²­f-(f ½Ígí-gD*m`ØAÔaãf` B® VnNu*H½Íg-(g.(fn Nuí-g\nNu0,gÀí);@*;m,.-m +n°+n´­ ,­-­ ,g2 m”@ç|JÐküCèÿâJ© g»é g"i `î#m RPFßm-ÿ,|ð&­ ,gí-@ç|­-g <  @ ( g °fô!m AÕaØfFßNuî)=H*fî*.(g . (gaÖ†.-g`$.)fÚ=H*=n,.î--n°-n´(N"x ,Eé&J g$@¹êfò&’aÍ`ì,)gaä ,Tg @B¨!x:!È:&,(,ì)"x )-f2¸©f¬),)g) ,g¶©@f¸©Df ><@AÑaÑ‚"i f¾,)gaôNqaö®,)gaõø~Cø –Eø ¦"Âü 1pf2g/aÐ., ,gaÕÞR‡ ‡oÄaîVaä‚J¬gH4<HB4,&,8,HD8,°*,²<,¶HF<<.,*>,\,)g<<$LAìaÚêNq(JCø )g¹Àg"@`ò#laÕ`B¸ rAÔaÝÚNuaÔâ(-gn -hp =h("NuIëÿþ6<€`&LLìpHF>,6.(BAÓaàh``0<`,B€8 oH@0< @aÛ `0<`*H4<B˜QÊÿü+S +fgJ€f `<.p .;Fp+@aæBfDÿ;D(+E l+EüHD0àHgfJg¸.%c.%D%°c@$@&*¼!TCB|€,;|:|úr;|0$MÕü`+J6$¼!TST|5|$5|D x  -"-±üg °¨f²¨g h`ærAÕaÜ|0<`aÓì`0<` +x !Í Nuf=@NuT—Nufg2 .".` ", , g.(g Jg` .".+@+ANu.(fn Nu*<,, n6aß` Nqn Nu,fnNu&Fp&ÝQÈÿüNu@ç, gzR` ,gz,. n6aÞ¼` NqTnFßNuJ”f6".*y »üg,²­f-(f-,g-.fD*m`ÔAÔaÞ(` B® Vn`°*H½Íg-(g.(fn `’-,f \n`„-m -.f`>,aþº+mlü|úr- (gDz,-ü m6aÞ` Nqn `ÿ@+Fü:(0P$g00PÑpPÑpPBpPQ… E làBm., gGìLÛÿHíÿLÛHí |­,0-,@ßfF×AÕaÓ,`þÔ@ç FJf8".*x »üg.²­f-(f½Íg--fí,gL*m`ÐaÜú` B® VnFßNu*H--fê½Íg-(g.(fn `Öí,g\n`È;m,.-m |­-gCø  I"h ³üg ³Ífî!i `’î,®-fNu®,=n^Bn^AÖaÒFNu-n Hî)Nu-n Lî)Nu»Î`ø [¨,g( (Xg "@B©B¨X1h^g 1|Bh^aÑðNuè-Nu(n@ fXn`4î ,.-g® ,AÖaѾ`ìì Jl&gKÖaê–Nu,fz. n6aÛì`NqpaX$F"*fp aJAø ŠAø ŠaÐRGø "SJ“g²©gÒGé`ì f¸, n6B…*çEaÛ’`Nq`¢B€* e c @dpËa„r Âj A fp ar"x fJ1gj°*f¦ *ÿg Jª fpÇaH *b *dpÌa4GêB…*g0 opÎaS…ç2*²sPdpÏa ²sPd pÏaR`NQ…lâp Àjf$ * @fRˆ/<K‚? *(SJ“fp a¤Gì°¬fì*,Ig°,(gp a„ ¬g(l`ð"SJ“gGé`ô j p(R@ @Hç€8aÔÊ` LßpaÿHLß"HíˆB˜S€nú*g)I&‰"¼!CCB*giHLê?Hé?))àáˆ3@B@3@@GêIép)+g(Û(ÛS`öB€*åˆ#@D&j ×Ó#K )ÿf#|Q(*géI*géH`R*fbB€*&x fJ3g:(iD &TGëÿ¶*` &lJ¬g +*²n(K`ê¹Àg #K)I`#K&iD3|N¹J#|QÜLIéJ&ŒB€* x f¼ÿ iÑè*I/N,_`t`Zp aøp aôpað g@o opÁaÜ n6B€S&@B… f )e2 )c )€e" )b;°g,aØ’` Nq`¢×ËGû°ÖÓNÓÿþ Ì¢Úð *a²f´ © ©HfX")D(A&TGëÿ¶ `&lJ¬faÌ(°‹g(K`ê¹Áf&J«g((k)|N¹J)|QÜLIìJ&kD&Œ` )k`B)(&iD&¼¶&x fB3Iø  &TJ”faËÆ°‹gIë`ì(«Aø ŠaÌî IraÔš`8aË paz&Iaî"Kfpal)Hgp‚a`)IgpƒaT)Ig .(gþ†)Igp a6 )c )c )€e )c*g< * d pÆa˜`”j :#j +HPAø ŠaÊü mÑè/N,_J@g>a, )AîDJg"P°©gAé `îF€NuBAø Šaʾ X=@`Aø ŠaʬB€B®Nu,m4B€-9f NpN@`F|q|ptAíp!­< g ­€pX‚€ ­8 T‚´-:cm:pLí<pažNuHç`CípB€ m"-+g|00J)fFÄ)fCéS`â0))gJ0`(©0-&ЈfS€ˆ$J0U@løB0 UBlø@À@FÀ-Hg Hç:aÿ Lß\øLß|NuLß|ÿþNuHç m4pN@`Lßx`LßxNu8 4g @çaÒZîFßHç€Ä*oKíÿ°"m/ N‘*_e -g*@`êLß#X`¿À8 5gaÒîHç€Ä 8 g*@ m ( g / @çN°Fß*_ -`àLß#`¿‚ÞjH091483 4@€€ vØRÄRxþ/ |pN@`p N@*_+HÀp@B˜S€núNu *faÌ`\-qg<ó`pB‡-qg<„`:B…,*:*"mPal` Nq<†`@&F(m",gíq<ó`&(j+mPˆpAúÿF<¼XWÈÿüf Ñü0Nð<‚`øah,+aZ+FŒ Fan1@1AB†ÆaÂaþ2<0‰| |`l -g´a,+a+FŒ Fa"H§À<F@ÀhFAÂh‚@LŸf"<6< Æhf<°hf Aÿó²hg ‚<ˆ`NB†Æa6ar2<@‰ mŒ,g< <€( É B€( f|` |€À@h|`t <€( gÀ( fÀ( gÀ( gÀ@ (&(gÀ@h'h B€É( g €À@|||P` -gþfaÌ,+a¾+FŒAìz"mŒ<aÈF@ÀiFAÂi‚@f”0)ÁiF@Àhi0)âHe3h âHe#h âHe#h âHe#h,g äHeh` îHâHeh&&âHeh''äHeh))"Ba$E PˆP‰ÙQÍÿü|PB`˜<ˆ‚`Žz. -g z*,fz:Nu0<2< -g0<2<',f0<|2-…fJ-äfr²f J-äfh`°-„fPíäí¸`°-‡fJ-áfF-æ`š màôfpê`:2-ò€Smòf;|àòRmô mÚôfí¹í¸`Àí¸`¶Jmüf"@þ;mòü màôfRmü màücBmü`(B(JkÀNu -´fJ-àg -Ê­Â` -Ö­ÎNu$Agpè`gpê`†gÒfæ(Aí¸``¶(gª²fþz` Jíåf˜Fí@­¸f0­¸fˆ­¸f­¸fž­¸f`­¸fž­¸fÀ­¸fÊ­¹fÔ­¹f ­¹f P­¹f z­¹f zFíBJm¸fÿpQíå"|NuJmìgâJmôgÜ m úcPíè`Î2-ð²müf8 md"-Ê’­Â!AmþAíÆ¼ |pB(mþ ata `Œ5Smðf;|àðSmôJ-ãg mÌôbaÊ0-ìNû`ÿ\`Nq`† mʱíÆc aDgpaF`6Á+HÊJ-âga2 -Ê-tg°­Æc­Â+@´`´`a`ÿ -Šá˜g²gB`ô-»À°-¼f -Ê­Â+@´í¸BmìNu mÊaÆf ±íÆb`JJgþÎ c pa°`þ¾g ff±íÂc\ +HÊS­¬J-âgL-ug&JíçfpS­¬ < a0`þPJ-çgQíçp>a,²-ˆf -Ža +mÂÖB­¬+|8p¦`¨²-‰f0+mÂÊJ-âg-ugp\aæ -ŽaÌ`ýì+| 8p¦`p±íÆcpaÄ`DÁ+HÊR­¬J-âg bp^a¤R­¬r@Òa–-tg±íÆc ‘íÂ+H´``ýŒJ-âg J-çgp>ah -ŽaNBmìí¸`ýLFíB)ÁA)f@`ý*@Fí@0-êNû`|`¨`Ø``:`lJ-æg0B-º;|ö;|øBmú -ÒR€+@ÖJ-ÀgB-Á`B-ë`€€)ÁA g fm“ºg aÔíÀ`üœJ-èg Qíèí¸`Jmìfa`ü~H瀀 -¦cœá˜+@¦ /bB­°@ëí¸`x ?b&Qíç0@í-ªf-ugalí¸`LB­¦ md|!m´)€@)QíàQíá mhS('AíÆ¼ |p1|a^LßNu)€@)`èFíB;|àð;|àòBmôBmüFí@J-ãgaNuHçÀQíã-ug -…aŽ`FíB)À@Fí@LßNu mÖ±íÒc aBmê`þ¾`+HÖ`þLJ-àf -Ö­Î+@´Nu mÖ±íÒb g+HÖ cR­°`þBmêa -°B2-vgnüg -Žaè`ý¦J­¬gS­¬ < aÐp`ýÖBmê`þ4 mÖ±íÊfBmê`þ"+HÖR­¬ bR­¬@a¦<^`ý˜-Àf*-Àf&-Àf,-Àf(-Àf8mÁë`ýF`úb­À-„`ýŠ`úPJ-ºf­À`ªpS-º`ý8Jmúf­À`’2-ö5oSmöf;|öSmú`ýá˜g a `aBá˜føNua&íÀí¸2-ø€oSmøf;|øRmúNuJ-Àf mëÁ|ëNu/ -pïf-fNq`Nq|tïí¸`2J-¦c,AíÆ"mdaø‚#@pá@¼ |p1@aLaè"_`ùbJ-îgdJ-¦k^f(AíÔ¼ |€1|aø&À@ | `$ mdaø!@pÆ@AíÆ¼ |p1@FíBaàFí@ax`øô/ AíÆJ-¦f1|`&md|æa÷Ì'@aª1|æFí@¼ |qa2&_`ø¬/ a† mpAèCítpFíB2ØQÈÿüFí@aÆ"_`ø€J-äg aþ¤íÀ`ølQíä­Àí¸`øXPíã-ugaþvíÀí¸`FíB)€@Fí@`ø"Hç€@aüV;|ö;|øBmúBmêB-ÀBmìJ-¦c B­¦"mhS)'QíæQíàQíáQíèQíäB-º"m"|7LßNuHçÀð@çAíl"m"p( f@`À( g( g ( g` FíB@(&p@F×<7(g (gþFíB@(Fß((rðÂA»fpé@¼pÿ( gp@½LßNuHç?|FíB(@Fí@aýíÀAú¶"|,r$ p"N@`p N@Lß>ü`öÈ­Àg(FíB)€€@)Fí@|p¦í¸`ö”AíÆa `öŠaþf`ö‚Hç?üm8!mlB(|$-"9…*²¹…&b\") ²¹…&bHf"J¹…k 9….°¹…b8 )œ°¹…b$") #Á…&")œ#Á…Aù…0<NAfüÒAú"_NuaŽ`òEúr,²*gÕüµü…lfì`ü¤, *6h&vh J,fü’JvhgüŠKöX0+kB- g|á` f|á`JvhlBvh`ýºBvh`aßü!i&B(p ¬fà , f’*, aòaò.6Xg€KöX0B-a J€k¢aTg®GúªB“B«'vx 'vxí¡'vXLX«'|¡7|Aù P0<NA6Xg2J-g,3ü jCí#É X#öXL dP¹ dAù P0<NA3ü jGí#Ë X#öXL d¹ dAù P0<NA¶hB¶XB6X+BvX @gJf 2-AfJ-ga Ô`Ja À`DBy ²#öx ª#öx ®2-Ag#í ¸y€ ²#öXL¡"Aù ª0<#NA6hgAù¡*0<NAgaý¦J¶Xg a†a ¤a¢aša’`F , f<*, a\JvXgav`&öX%¶X%öX%a\a€!vX&6¼€B«7|p-X,aj`‚6hgxaT`Ê6hgf6hfa"`‚aJvXfa,`DCöX0 ia`Öaúª6hg”6hgŠ&la Tf af `a°`òAú $KGúHµËfB¨B¨ 1|`!l!l Bhl!vX&!E!JpÁ¡Á âGú 6B“B«'|¡7|'l 'l'lX«Aù P0<NANua: |‚0<5NAgâ gÚaóa2-Aga Ufÿ*"<Â`ÿ"By ²#ì ª#ì ®2-Ag#í ¸y€ ²#ì¡"Aù ª0<#NANuAú Þ#È |#Æ À#Ç ÄöhöX Aù  r0<#NAg& g f |0<NA`¶atad`ah`ÿB€ y¡&(( f ((!D `*J¶Hg(&6Hg(`ð&„8¸¨lЄ-„8B¶HB¶H-…H-†H¬HB6H-‡H -¬H¬H¬H hº¨f ¸ˆgJ¨kJg P`èöH`F6H¶(b&&H"(Jg A`ä"(gÁ!ANuJ¨l$¨"Á-H6hf-„XNu-„XNu"J«lÁ'A-ˆHNupNuBAú <| `Aú 0B( ¶x!vx| 1|hB¨ mgrçA Aù „0<6NAf’Nu(6X"6H-Xgö.6H -‡XB¶H B¶H=¼ÿX¶HX+&vHë«-¶HXLGúnB« B«'M&¶x'vx'vH'|Aù P0<NAfaØg:B-#öX  ˜#Å¡ü¡Aù ˜0<#NAfÒ2-AgaþðNuAún!vX&!vx!vx !E!vHBhvHaöxprƒ`8afrÅ`2rÇ`0rƒ`*rë`$rá` rä`r†`6hfaH`aJ€f ¬a â=­ Xa øa ð`B-a ¨J€k zg –6hg,g*6h$6Xg JvXo` ~a8aúa ¦`¼a*Áhadfa Ž`¤6hha z` .6hgÁha `0<NAa 6`ÞfhNua $*6h6haa 6Nua Œ6Xf6XgB¶Xb` vXbJCfJDgS¨fJCgjBƒ`DCÖvX"JDgjB„`DDØvX =ƒX"=„X J¶X f$"6Xf J6XPga` ¬gaÖNu6h$g vhB¨ZB¨^hB¶hBvhB6hS6x NuaB-a hJ€g:k66hfaZfa„`ša|`0*6h6haÌ"6XJCfJDf;A ,E;n„"+n†$ÎvX$+vXAú ð!M!l1|(AÐ0<NAføˆa`*JmfšB-aÄJ€o–6hf~6haDJCgˆaªfaÔ`êaÌ`€JŸaÂ2- Ag Ag& Ag ra`"B†algLaLaþ` B¹·–Aú >1| Gú ^!K!mBƒ"y·´"i$4-* g`"6X BfgJRy·˜`  g2-AfÎJ€gk6hfôB2-A€g6ha¢JDkæJCkà"9·ž€g ,g®&(Aía¬J€g"9·žHAAíaîf„B-a´J€k†f¢J-f"9·ž€gl-¶8h-¶8hR6x B2-A€fÚÇFÉGaûøÇFÉG`ÊJ€k8fTJ-f,g",g &(AíaJ€g"9·žHAAíaJfàB-aJ€gâkÞ6hfÒfÊfÂHçB2-A€g6halJDk´JCk®Lß-¶h8-¶h8R6H B2-A€faû,ÇFÉG6hg62-A€g$a¤*6h6haJCgRvX"JDgRvX a¤aœ`²Áh2-AgaR` ÇFÉGaHÇFÉGfan`„2-A€f-¶h8-¶h8R6H aúœaH`üJŸ`ª ,múBaœ gìrAúl4Bÿ‚gJBf¦Jg  PNÐJ˜Sk”`âB†aöa6g¢raV`d ,m ,gdBa6 g†rAú&4Bÿ‚gJBf@Jg: PNÐJ˜Sk.`âB†aa\gþ¹üga!¬(Nu") ,yP²–gMîv½ùTcð`¶a(üa#æa) $yX½Òfê EêVµù\cê`Œù AgFa&~$h µüf $h!J `@Jªg<&R·üg$K`ì&JÕü8µèeB(*AùzKù¤p `•ü&ŠB’Bª)g%i %i` %i %i %i$i)iAB*%| < h ¨ <f µÈgJ¨kJg P`äê#Ê <`b*¶(n&&H"(Jg A`ä" (gÁ!A`2J¨j¨"Á%A#Ê <`" J«jÁ'A%H y B(*`þ>üÿÿ 6B¹ 8EùzGùØ0</6ÚS@fúCùØKù )f |-g )4)eøJfX -&f0@ÀgUÀ-g­a':™ÌÎCùØAù¿ú-2<fJXSAjö`$B€0€º @NÐAùÀ 0JPaý$°XgàJX`òBAùØKù $(&(x"h$-a&ÎAù v!B !CBGú ²gJfø`4ÒÓïãåìíGîV!K gGé$`Gé!K!|AÐ0<NAºg&Á¨!|¨!IX¨!|AÐ0<NA f<,g4Aù Ö ‚!CBh,g !l,1|€#É êAÐ0<#NA`a#Äa#ª f Jªfª B(+`üza$¨B(+`üN¹ AJ¹ B…-% Bg Bg B` e dbfJAg²Ed`ÿ"-'f 0<@'` eÿ-&f 0<@&` bþöBƒ6-"fTƒB„-'Èü¸ƒeþ¾ã……B„-&Èü¸…eþ¾`J­$gþ a4fX#Ê 85m 0-÷@25m"4m&8m'9m%7%m$ -@g -&fa an<aFg`ýìÁ 6B€a(Òg* f -@g -&f aÜa4`Ø"a:Î `Äa:Æf¾-gB¹ 8a0#Ê 8`a$­`ü - ga fTafNa#Aí 0< X fS@fö`aðf0a¢e * g&`ýÀa(f#Ê 8a¦ - g a&âg`ý a¦2-Aa"øfêa^fäÁ 62)a„JjJBg JAg²nfüäaüf¼`ØaÈf²HBaÞfªHB gàaÜfü¾a.²-g¬BÀa”gaÚ`üœAù F ©!i-g+lt(!lt`!m(!ll 1|1| ,|¬tR€!@AÐ0<NAg" fa2`Š g aø ab`ü–+y R0 9 ZS€Ð­(+@,)m(pat9mŒlÿøŒB9 6ƒlŒJEjlÿÇŒ-g )j(8)j,4)i)i)i )iJk*.Mf"Aù ’0<JNA5h<ê JBg5h:aô,g!|2a!œga¢`û¾üÿÿ 6B¹ 8aŽ"i #J3|_Jj©2,ŒA©B()­`ù¦aìfha ¬a`dû`aðfV#Ê 85m 0ah<a@f<Á 6aúf0a,ÒB€a*ffa7¢faaX­`ùD"a7ˆ aè`úªata `>JkS²€g4 fJkÚ Ff<`Î €ÿÿÿÿg ÿÿÿÿg²€e `þ)A4¬Ž ra jg ÂfÌ lfÂ`T)l\8"lt",4B€0*4g ’¬`ÂÀÓÁ`($,`²‚gB€0gR€ÓÀ³ìxb¢R‚`â0g˜B lg€ lg lgÒ lfÐJj4fdT‰ *@gZ,fR,fJBƒ*7–€Dƒ n@îMk±îDb"ÁS€fð`°ƒbîAgð±îDb ü SAfò`àtÁ"n@‘É  g,fB*7ÓÁdB€¸€d tÁaÚ!@(g !I!l AÐ0<NAg gœaç` ì`ü„ ¬t`î f2,ŒA fv¸€fh`H" n@a Ög gRaça òfhgR,gR†¼gb(a (fÎ †R‰`àa f¾ì¬B`ÿp  IJj4fTÑÁ`8 g( n@a ^fˆJfr g a zdð`a pbæ f ,|¬xgBJj4fU€°„e6"lxR‰R¬4 fÐa fÿ6³ì|dBi)Ixpa ¶a €`ÿ\aÜfd)l\8"ltS‰)Ix`´(pÿa ŒìŽ Jj4fT€a-¼f^`ÿ l|Rˆa ¦fþÐ&Ha(L lg$)l\8)A4¬Ž Êf(B€0*4gýz`ý| Âgÿ~ Êf g Ég`Ò)A4)l\8¬Ž I Jj4fT€a(dfÚa °fþV lfpaÜBJgþ‚Sf a&® f²`þtB€Sgpì¬a$Àf”`ýÖa f† f–R¬4B€0*4f 0gR€ÓÀ`ÿ|a -&f "e8S@fò`  f,S@fö0<a8`  gaeS@fòB"_Nu  fS@fö`îp`ì  g 0e 9c Ae ZbJ<þNu<NuHç@"|Ú ?? ÿÿf J_p LßøNu²gJJ™`æJ$/gJ_`Ê<>B * gz6jJgDC8jJgDD2f¢JFg jÿÿTg¢JFjJjTf˜`ÜjTJGg jÿÿRg†JGj JjRfÿ|`ÞjRJCg nÿÿJgÿhJCj JnJfÿ\`ÖnJJDg nÿÿHgÿHJDj JnHfÿ<`ØnHJFg5FTJGg5GRJCg=CJJDg=DHB`ÿJFgjBjT` JjTgSjTJGgjBjR` JjRgSjRJCgjBnJ` JnJgSnJJDgjBnH` JnHgSnH` ÿÿÿÿÿÿÿÿÿÿÿÿÿ$yXJ’gEêVµù\cðp Nu$ŽBNu?0<+BZS@fú0Nu(y`J”gIì¹ùdcðp Nu(ŠBNuHç€a¶0<HB\S@fúLßNuHç€$yX½Òf"Gí Iê ¹Kf0< ¹KfS@fø<þLßNuEêVµù\cÎ<`èHçà 9 6kÁaý®üÿÿ 6$y 8µüg aÿJB¹ 8LßNuH瀀Aùz$h $j(y`°¬ f,RLßNuIì¹ùdcæaßêHç€À yè"yä/a" _S( ©©© y B()LßNuHç€À F"G`È l ¨(gAù î0<NAa߆NuHçÀ@B * g2*2@ f;|""*$R+A$`"+j6$;j4"`"V+i†$;i„"i$aŽCí!I"yüCé!I!|&LßNuHçp€gfVAù ¦J¨ gBhAÐ0<NAB¨ Aù ^R¹ jBA*8f BB*9RBÒBÂü!AAÐ0<NAg gaÞ–p LßNuf&)HtBB*9ÄüS‚ÑÂ)H|)HxÑüì)H@BB*8ÄüS‚ÑÂ)HD)y jlAù ¦!y j 1|1| g1| AÐ0<NAg€ ga gÿp`ÿha`ÿ H瀀Aù ¦ ,lga1|B¬lAÐ0<NAB¨ LßNuH瀀Aù ¦ ,lgD°¨ g>BhJ¨ gAÐ0<NA!ll 1| ,g1| 1| AÐ0<NAaÝ~LßNuH瀀Aù `Â:<ÿÿ * g*2 gEÿJENuHç€0,@` @ f(,Žf,f,f <LßNu<þ`ô @f ,ŽfìÒ‚`è @@fJgÔ ÿÿÿÿgÌS`Ò", lfÆ ÿÿÿÿf¾,f¶"*,`°Hç`aL&lLB‚+’‚gÓª(Ó¬dÓ+ê a(ŠLßJ@NuѪ,Ѭh/ &lLÑk&_ê a(dNu",x’¬tR‚üHA0BAHAJ@gRNuB€#È ŠaÄB‚*7g!B!l AÐ0<NA hJ€Nu/ JgJj4fT‰³fSBføB€"_Nu/a€!D!l !I *@f 2¬U¨T¨AÐ0<NAfÓÄS‰ _NuHç €Jj4f2Ä*I¾„fa²fa'ž fR‰BB€LßNuÉG.Mg"n@aˆfè n@"Mpa"`Èpÿ)@8)@4D€)@aÕÚ´jRfHB´jTLßNuAÐ0<NAg g aÕ°JNu+nf / V+h _;j +j +j+j+j;jNu *@f" ©g Q@i | B€NupNu040584 4&I$ „ü´nepÏNu/ "n ÒÂa"_fîBBHB êˆåˆ$nÕÀpÄ€”D,B€NuJfpÏNuHç>4* .$ff*n Úî“Éa Bƒ»î$cJ"Kaªe8ºƒc axf&aœe `ð"aÿ|f,ÆîMS…gaX`ð$†B€` ÏgJf aDg´ ÏfpÍLß,|Nu*@® Àü"@aÿ8Bƒ"KaFeºƒcªafa:e`òJfÿxagà`ÿpR‹Jf$†Jšµî c / "Kaþü"_Nut,B€NuS`ø f J†g †ÿÿÿÿf6×ÂB‚`4Ö‚×ÂB‚Rƒ<þNu f JFgè FÿÿgÜ` f JgÖ ÿgÊgÒ<NuHç"0$V³ê†epÏ`&I×Á·ê†bòJgîaþxgLß DNu†îMSgaÿNfè`ì$†B€`à/³î$ga4f B®$-|`Na f-I$B€ _Nu-@V-nZ-n^aüÖNu/B€.Mg .$fa `-|`NaÈf®MJ€ _NuHç@àpra`B®JfN ©EXORøfJ ©MACSüf@ g< € g4 yP°¨g($V°ªg Aèv±ùTcæAîp 0ÙS@fúB€LßNup`ö/îM n@"nDHA2<`-ANHîV"Haü _NuHç@ÀpraÌfBCî n@p 0ÙS@fú n@"nDBh>pÿ³H@³H@±Écð n@@>H@@?praˆLßNuHç<ÔHçCBB†B‡ .f0BS2Oï pLß+%KF5BJa Ž`þ /³î0ga4f -|`NB®0a f-I0B€ _Nu-@V-n(Z-n,^aøXNu/B€.Mg .0faŽ`-|`NaÈf®MJ€ _Nu/³î f¸ jÿþ g&Cê p *gS@föBªFBjJBªLBjPp`Š4*P *L`ÿ"Kó JgªAêpa|f pAêKó anf’&HC Cm3 g Cgÿ|¸Efâ5BJ%IFGó pAê0ÛS@fú²Dg JAg|ÿÿ0"n40*PCñpGê 6ÙS@fúB€Lß+NuâHB[S@fú`ØHç@@",HfpÄ`"Aa LßNuHç|Ð$,Hfaê`F l@Cè )IP((p&a8f.aŽf(Jƒf %D$ê J„f %C ê ašB¬H¬Lß >JNuHç`T$ g>raöf6Ké gJ‚j&lPÀâHg:ÛS@fúU‚g`S‚g#D raõÌLß*NugêBSBfú`âHç@@ graõ¬f"ƒ raõ ` %C ê JLßNuHçTA? ma`h&(B€AùófãI00€º"@¬Ž&l@*lD",H lLB€B…NÑ9®9 <=f=f=f)HL¬ŽgabfB€Lß*þNuJfaš`pÂB¬LJ€`æ$*,,<`X~h`$*(,<\T.<ÿÿd fpÿ¶€gÊR‚gÆS‚¶‚bÀJgZºˆg< ,\(J‡k ,`:(Ú€°ƒb¶…d,fÿr`ÂB€afÿtB¬LB…Jƒg¶‚g`ab`aœgš`.¶‚gòaNf$+ AóP ",H¶´`e ¶´pcaž`aÞgä`ÿ( 4`aý BB„HFHG(KðP¶€gDda°`ÿ(2(JGgЄ`аƒb$Ù¬\Ó¬` M*lDW±Íea~`ÌJf¶at`ô)HL gþ¤B… &lt(ÊüS…Ú‹)Ex" Hî#V-|`Naðng ¬@"y`³Ìg$)g"²”f")H²¬Hf ")L’©@²€gCé³ùdcÌ`L/".Za–,g A"it Ù±Åcú`$aî@!it!A R€!@AÐ0<NAaÅÔaz _`$,f-lj-lnîP/aï( _fV0*4gÀè×ÀS‹)Kxaˆgý¨`:,g|g"ER‰BQBB€·ìxbÒ0ggR€RA×À `èW‹²hgºpÈ`þ¶J„fa`òJ*7fa `òJfJª gaVg‚`ý\ºˆgj"B€*7 ltJj4fTˆa2eJf4aLf.Aë CóP ³ìLgAéCñP³ìDeêa²`œaúg` A^ˆaîca0f `üÔJ¬\göB€ahfüÔB¬LAë aÆc† lPaºb†BE+ GóP aúš`,+Û¬\:+Û¬`BE^‹fa2`ˆ×ÅAíÿý·ÈdJ“gAë)KLanbÆ`& *$°¬Hga`ЗÅQ‹+›¬\:+›¬`BE K`ý„J¬Tg‚aì` J“gÿxašgÿJ`ü"p‚`ü/ aÔf~Hî(VB¬Haíìg:"y`¹Ég °”f²©HgCé³ùdcä`a: K"i@ Ù±ÍcúaL`af.)AHB€+ Aó ±ìDea\`pÄJg쎬ŽB€"_NuHçTB€",Hg6"g2aÿdfF ,dR€)@T)@\",hR)AX)A`a jS€SHìd`L`ûRHçTB€",Hgð"+gêaÿfû2 ,T&S€",X(SHìdB€Ba "–€˜HìTHì\`úìHçT * g¦",H²€g"pÿ)@d)@h`ÿ^B@+ Aó J¬\gÊB€aXf&aø²`¼HçTB€",Hg"l@J‘gX"*$gÿVaþ†fúœB€a&fôBBC+ Aó0 a ’Lê(HìdRƒ*–€R„,˜B€%š€0%œ€J¥ MHìxT`ú@",Lg²a gú6`¨HçpÐB€¬g|Lì @ fpÄ`nHîVB‚&HB+ Có J‘f B¬HB¬L`.CéCñ³ìDU‰dJ‘fê“Ë*8Äü €ÂH@J@gRBa &f¬g Jg&pÿaøÈLß Nu *FfaPNuHçÀ"@aòdf$0*J"n(ÓÀAêp2ØS@fúîMª B€LßNu¬fB€NuS€a¶faNuHçXÐLìt R€ˆ@ÿg2<’@R‰âIBYSAfúS‰&lL HîV*2 g\B„*72*4 Bƒ6f6fa ¤`:g RCfa ”`*Gð8& JAfTƒ¶¬xbaØbfaòg<ÿÌ` K`´Lß Nua fô¬B€`êHçÔLìtR‰&lL fa 8`f*2B†B…B„Bƒ*7:*4f$6g*HgRƒÑÃR„±Ébfè`±ÉgJXf`ö( ˜ˆˆÅv*I›ÅHDJDfŽHDaãœB@*9²@ca Ð`p,grJg. fHç„ MKëB„& aLß!eg Jfaf6B€0+‘¬h‘ª,7DÙ¬hÙª,aââgJCgê a „lÿŸŽB€Lß+þNupË`ö,gæ²+fP¸kfJ& 8gÔAëaŠgÊd8"l@B€Aé Cñ ·Ég) ICñ³ìDeìa `¦aXbšazg”`NqpÈ`”/B* gaýŠ"B€aýÄg"aüêg"að–g"að g"aëšf LßNu/B`ÜB@/ *CJg°eg»fS@føB*_Nup¸`öHç|Ô"lL fa r`B…*7gÀGéB€fa X`ºga X`4 l@B‚v Öˆ( Að ±ìDea :`³Èg&^ƒ(Að fâa "`p C& (aÿdbeha‚gJ¬\f\AóP$,DW‚±ÂdRJgN^ˆB‚aÿ:e b>aXgJg6BaNfHç°fSEföLß( gÝSEfúa ÐJ‚gìB€Lß+>NupÌ`ö l@t g¾raëfäAé `ž*2 NuHç>€J*7fa h`^ r‚aõNfT,,`B„*7"ltB…:*4"J‚fa >`4³ìxd>JEf2fa *` gR K0& aþrgepÉ"JEfJaLß|NuÓÁR†`ÀpÊ`èz`âHç?B§B§B§,gR€(fa Ø`B" ‚ga È`2&lx.,|B³Ëcr&a^fv)Mxaà»ì|ga¼ÒB­a¬B€$& IB„"_* ga("_* gaxg("_* gajg(""H f Lß(üNu @ÑË*H±ÇbR‹Rˆ³Ëg1#`øB€Nu lt ˆR€„$”ˆ& –‰Rƒ*,Lfa `„°‚d¶€b¬ aîfì¶‚d~" Jƒg*KJgB€Ò€‡a”gaâ`Æ lta fÿB"HÑÄKð8ÿ&AâKg±Ëgb0ÛSCfú`" ãK×ÃÑÃ1#²‹fú&EB@+Gó·ìDea”` r azgþÚ`þòaTfø FKðHÿ&Er a`fèaýêfrB€`Ø a fÔa,fÐ)Ix&EB a:fÂaf¾œ‰Ø†KðHÿ"H`’)IxS¬xp`)FtB€ìa4aú)HtJNuHçÿÄ. B€B‚"lL³Àfaü`J‘faò`Ø"l@&()) Cñ *,DKéCñ,S†³Ëb$ ³ÆdJ‘fä*7Kñ»ÆbÖgB•P€B†·Éf Cë)IP` !·ÉfúѬP·ìLgB€"lL)Ѭ\0)Ѭ`B„*7)KL"WJ™"f J™"faV`Nu&lD&,@"lL¬$B)“¬d“ª(W‹B€)Kñ»ËdJ•g X‹2Ý»Ëfú`ìB‘B¬L"Bal/ CB€( Að aÀ fJfaîV`ˆaüføa^B€`ðJ*7g.B…:*4fB€0fa$`Ö*HgR€ÑÀ±Áfæ`*A›Åaøˆgÿ&SCT€fÒ &SCT€€ÿ€Ø &BCT&EETBP&EETP.STT&EET€ØVERSAdos VERSION 4.3 8403201138 BBAA >€SYS:0.& CN00LOG OFæ*vLOGOFæ*vOFF*vBYE*zLOAD*ÞSTARô*æSTOP,äCONTéîõå*øTERMéîáôå,T^#ÄDATE.âTIME/~USE-*DEFáõìôó-èARGõíåîôó0^NOARGõíåîôó0€BSTOð.RBTERí.`OPTéïîó.nNEWS1„HELP1œASSIçî2ÔCLOSå2CHAIî9²END:JRETRù<’PROCååä<–R?@ôBATCèA CANCåìD QUERùC€ELIMéîáôåDˆPASS÷ïòä4VSWORD4ÒSECURE7 `0ä` h`#6  Gù Oëf'O^Oë`Iúýì/< OÜ :fø&LùPLùð`@ÙH@@£B€9PãˆÀü#À>'AÚ'BÞ'Cz'D'E7FøAùaÚAùaÐAù0aÆAùJNBgpNA`ðAùB˜±ùköaÌ9 g"0|èaúAëB'H:Aù 'PDAë0p#NAa¦Lë0œº„c8µÉg4<ja4'J¨`ð fa&`æ4¼@LëŒ$*a@g4¼€`ÎR„'Dœa  `´PеùkEùNuLØÿ$+vAë.HàNAfNu `öAë*Hà~NANu <ÿÿB$+v&<€a&`ª |p!`Ø |`ô&SCTêÀ&SCTP&EET&SCT .SCT&SCT .ARG&SCTÚaä (g (g`òLè“ÉAù'C–±üg."g¶gPH`ì³üf"H`ð'Ah'hXp#AëTNA`ª³ügôf𠫬f J«âfa`ôaÜ'@d'@êAël!@aþšAúþîaþ|Aúþþaþt'HªAúÿaþh'H¦ +âg'@zAúÿLØÿAë`& kªÑü`,*+vaþ@Aúþ†aþ0p Aë`NAfþJ#kv"«–`ÐBƒ( g fê6( ¨&BCTgüL ¨&SCTfÐ((Aù¸¨g PH±ükð`´B˜BJ«âfªB«¬`¤/ +¬R@fT@'@¬Aëva5 +vAù°¨gÚPˆ±ùkð _Nu |èpNANua< (g>a Æ`¦a*B+ØÇf/+æ <a '_æ/Gp% |NAp"Aë:NANug.7hÌg/,kª.ÿgÇ,_2(‚kÎ7AÎjÇ"+’²¨f$+ž´¨fB«’B«¢ (gŒ (g < AèJ(f <a ä`ÿh ¨&SCT fÿ\J+ØgÿTS+Ø`ÿLaÿVÇ'h Æ`ÿ:aÿDÇ/h /hfÿ"Ç`ÿ-Mª&NOë`B-;| PaüŒCùRa Æa Èa ÄyiŠMùa ZB,kª=|@þMù$8J«âfšMù$Ç9 g„aÈAúÖ/ a,Z&_,KCú L™?< ga ’gaþHSW`ðCúöL™a |`*Aë* ¼!|Cúè!I Cú!INBT`ÆT‡AëTIúøJÔ  føAëT`a–faZgŒ/,kª®þ,_ +~'@šJ«âgnyiŠaù–g$‡aÜga<`ò‡föadf‡ga&`ðLùžÖ‹'| *af*Mù#ða ´`jMù#óa ¨Nu ægºaêS+Šfþ¨,KGùŠva ¤ <a n` òREJECT NW <` VÚ&EET ÚB‡ kªÑüP'H®LërHëjB«’Lù4ajpJAëÚNAB«¢ <aÜ,Kf GùHva 9rg( «0001vf/+šB«~B«šMùæa€'W~'_šfˆaÂAú­/ a*T&_CùpL™a ’CúîL™a †fCúøL™a xCúÔa 6Múpa(`Ñü, €d. |`$ ytR+Ùf÷> <ÿÿ&<€a Âp0|€NAAë!kâ <`JLëæ'A’'BžB†+'FŠgNug$Aë’ < ‚0000d <a~ë’NuAë!B 0¼!A'A’,+ŽgVgX(+²B… †J†g`R… gúE f fB(E1|€J(g f1|NCgÂa0&HC` 0|5`|6Aë <` pJAë¢NAgkpÎAë`HÐp a®f*,+Ž(+²ÄÌ„'FŽfp$NAJ«’ggðJ€NuAë& <` <>`Ø CHAIN ABORTED(CHAIN)=  =ENTER DEFAULT SYSTEM VOLUME:USER NO.=ENTER USER NO.=LëÂAë*Hà~NAf8NuIùNðg$Lù8%haÌ"<$<‡g.A `(*kª-ÿgSŽ<€KëTaÖLù~%`aŽ* ang ‚fЫg&a^f†/,(AëTCð`ü ü AëöR†!QÎÿüKëTB ae {d/,kª.þf ,_ =f /fÇ \g>±ÍcÁ  fº'M¾, AëTœˆ'F¶ JNuTTõ ,H (g<4fZ‡ kªEèP Ngú  g¦ =g ²gêJfü`â =gF`ò (Rf„ (Xfz ()frXˆÇ0+Êgf` Ça(nJ@g"$kª°nP2Eò  PÇJgþø±Íc0Ú`î/ $kª*$_€ü a H@aÇ`þÒ±Íc0ÀNu   <`H Nf SˆÇ`þÞü~‡ \gÿ =gþŒ !gþ¼ &gþ´4kþ¬`Ôff æg fa`JJNu/,kª.þg,_`,,_f$f fgHçþüUaŽLß?ÇNufrÇ`jKëæB…atAëæ("<$<* +‘fB‚Aë*Hà~NBg8 áfJ«¢k’ ÆfJ«¢k„ÇgÇ` ÂfÇJNuKëTB…aAëT(`’ M/ÞfünS Nu  oášNuB‚aðaîaì`êáš  oNu$< aìaêaè`æ'k–L™a.fÿ&(+ŽÄ'DŽJNuL™afÿ(+²„'D²(+Ž„`ÜAëH pBhNCNu +vLëhB„ kª(þgÄ69jg69n` g69l*+šAëHàü7|`~pAëæBhJNDNuHëæpAëæ!|+‘fB¨NDLëæJ€NuaH@a < aNuáXÀáXÀÅNu  fSˆB†`4k`ê  gö,+¾œˆ'F¶'HºNuRˆ  gøNu$/".âAî,H<ü@<Â<Ã,ÁB^$< ,üPRIV,Â,Û,Û<ÛB^Bž&_NCNuB.Ù?2<a¼g f€X+Ùgx |ôpNAAëNC`Þ|ÿìÙ"<$<Lú8üaÚAë*Hà~NBf>*(AëSÚˆ"<$<Aë*Hà~NBfR+Ùk¶fªMù)Äaú´gžÇ7|Bk7_NCNuJffÀJ€Nug g'k–NuLДªj‚&\S’’NuÔ© ‚&\e‚&\RÒ‘"Á"‚Nuڋ؋֋Nu"+va f&0¼À`Aù±ùj ²¨gPˆ`îJNuÇÇ&<€aÈ+‘g vB‚2<aýFJ«¢f,KGù*Ôvaêìgf Mù#ðaü< <aópNAACCOUNT OWÇ`önalJfø <`üaZÁ²«’f <`û†Bƒp aþ PgNu < J+f < aJgÖgø€Ç`ø~'HAë`ýaüZ" g( ALL g.áš .g( @c Zc <X`ûp"+’f <`ìBaýBg &g.$<0000aûî ‚0000f $+žf$+v´«vgJ«šgX`ðÂ/a""$gØ`à/JgAëHÐpagPNu  f _Nu <=aúæ`äAëHÐNAg$Aë fúf ‚0000d€ J+ÙgúP`R+ÙJ€NuBB‚`>aþþf| <ÿÿ&<€Jf,J‚g ´«vg"<&SCTpa”f <aþ¼B`B«’B«žaêè0<aÿrf.J‚g´«vg <J+f <aþ‚`R+ØaêªJgÄaê¢NuB$+v`aþnpaÿ*gNu < J+f < aþBJgÜNuKëzMë-]J]=] -] -UNuaâ/ az&_/,kª-@òj ,_ <4`Œ,_fî€pf <5aùŽ`HJ«âf €`kdKëz*îJ]:î *î *îL¹-äaúbf6J«âf4<aúRf&'kzâ/,kª.þf",_a&/,kª .ò,_Nu <6aù0<ÿÿNu,_`Þ€a:"+âLë|vAëTHÐ~Lë’Hè <aúTNua <`úF*kª2-þKë|'Mòpg€@R€ cîüÿ'MöNu/,kªîþ`h/,kª®þ`Z$H  c¢ ;fJaüJk8fNf, d&Jg"/,kªf2.þÁ`2.þ=Aþ,_`À <7`÷Ì.þg,_Nu,_`ÿ@/,kª`æagNu‡føfòMù/faõ`‡gÇNuaL € nÒáˆ& /fÈa6 €n¼ /f¶a" €Pm¨€lHCЃH@a¢/AëpJNA'_`rpJ`p ENTER DATE (MM/DD/YR)=atfZ‡fTfNMù/ÞaôȇgÇNua´ €nÒÀü<& :fÆaœ €g6À`âJføB$ // ,kªCîO”‰"_,_µë®eÚÇ`JgÀR`°SfÆ`ªB|  /,kªRŽŽSŽ@,_JfNu <`÷8,_x$kª¸n6KëTü\ apáXÀáXÀü:B@2@MòP/Baöaö(R„`Ƈg¬ <`õp,KGù1’v`÷ŽNEWS NWMù2Naõ\,KGùKîTJgD›fø| ÿÿ Z€€&@ / IîTŒ(_"‚ü HAJAgü R`ì/ Iî„»ÌkP(_S/ &Naõr,K&_Jf¢&NMù2hBaôèAë < ÀBX À À üHELP À0¼LOaõÎf"+æ`ðtNu(_`ÿfSESSION CONTROL COMMANDS:(ENTRY OF LOWER CASE LETTERS OPTIONAL)algJ bD g fgÇgÇ`ô2<BBaõ‡fˆNua(g c <9`óª  f <:`î/,kª-Cò,_aú/ až&_j <4`Ìgg0f'k–`" <)`ª/,kªîò,_gÂg¼ ;g\B‚aôDaô@aô <;`ÿ0$H/ a¾&_kê OfägÞ4 kª&(òƒ`& g fÂ4g kª(òg‚@2<@aó¼fg ,+²Æ'F²NuEREWERPWPREWPRPWEWPWERPR -:]_f +–°¨J—NuJ«šf <aôyiŠaèfDJgaÂLù872Ö‹a gaç¾`&Hç|Lù?5èaõžHë?Lß>AëNBgaò8Aë0¼Bh1|NCNuJ«šfç¼yiŠLù87>Ö‹a¾gaç\Nu KGèÚ/&Ú/&ÒLùžÖˆ!|*/ &Haï0,_--fÆNu KGè"K×ü(Eù5Ð'"·Éfú#hâ&HAëNCNuaÔg f8 |épNAaâ`ê'kšæLù5ÐaôÂAë.HàþNBg Éf <1añ\`ÿCëêNu@ PRIV ACCOUNT PWÿ‰æõ‰æõ  +ÙEJ€fè «0001vfä gŠEÙfHaÿ*fæ8aþ‚JgjLù87&Ö‹a`f AëTaýîgRCëêMëæÝü³Îg@³gøaŽ`ÌJ«Úg(Lù87Ö‹a&fAëTaý´gCëÚ±‰gab`Ö±‰fø+Ùf‚NuLù6îAë&Hà|NBLù6ö(|*Ú†Aë&Hà|NBf$C*(B2PR…¼…döB€Nu0 Æf Hç~aåFLß~S+ŠgåXNuT7J7\T7v7Œê7Ž7Ÿê7^7tENTER SECURITY WORDENTER NEW SECURITY WORDENTER EXISTING PASSWORDENTER NEW PASSWORDJ«šfäîMù8ZaïPLù8˜Ü‹aMù8„aMù8ŒaLù8´Ö‹'|*`ìl+Ùé@ÙBaìlg+Ù0@TKëVaîÒ+T 4dÞ 0eØ 2d+Ùü€@ÙaîŽNuaüð/aüx gÚ gÔJŸaî¤`ÿHLEVELS ARE: 0/NONE,1/SWORD,2/PWORD,3/BOTHUSER=0:USER NOT 0:&EET ÙÙÙ&EET Ù,K2<aðfT'kšTLù92Ö‹Ø‹Aë.HàþNBf6AëtpJNAEëÚañCë|añCëTR©0Lù9JÖ‹Ø‹Aë.HàþNBNu‰T“‰T“faèÇaŠgNu¸9pbtva–g fí Å`Ì Å'EÔ,k®+ÐBfBf'N®aaóZ=|CF/ a ê&_ @ügìaðj <aì¸`lHçÿÿCùpaíòLßÿÿÇHç@€CùXaíÄëµLßJfH«‘/,kª®ÿ,_Ç  gažaö`f BkÊBkÌBkÎNuÇCùpaí†,k®"kªÓüP½ÉgDXŽ'N®<ažëµë‘gaì`¶*+Ô…'EÔf¦´+ÐgžfZfïÂCùXaí뵇ë‘/,kªîÿ,_BkЇ‡gÿ\‡MùA`ì,+Ž*+Ôx f fNuR„  eîDDNu"HAë1| f1|€0¼CDB(B¨B¨ NC INu,k®]ŽB€/,kª.ÐŽ,_½ÀeNuÇX <`ëvfaÌaÿtgNu¸9pb^va‚g fêð Å'EÔ`Ò Å'EÔ,k®gÄ+Ðaa2=f7CÊa"='N®¶nd¢ÇÇNuÇ <`êòf^fÿ~,k®+а.fè6¶ncFRn.f7nÊÇCùpaë–.<AëaþÔ ëµ ë‘Nu‡‡,k®ZŽ'N®2<*+Ô…'EÔaëRNuÇÇ«‘/,kª®ÿ,_gNu <@aê4`ýˆf <2`éÀJB‚aê´ *gl @güz &gzaêœ BENgd BIFgP BELg(gNu BRXgx BRAgx BRDgx BR?gÂaêX ‚ABTg" ‚FORgþ6`æšg6NuÇ*k¾`é2Ç`é^gNuaéRfôMù$aç `âf`é&a><!<&B†< Ba°e f†`ôa`ò†NutB¼dºg¸g ~gìr`èÄNuaögJŸNuaða¦g+ÐëÑÇNu+ЫчNu < `ÿHaé| QfÌa¸a"Ha  f "gÈNÕ³gîNÕ  g¦ "fòNuaŒaÿBf¨NÕ +Ðg¬R+ÐKúÿŠaé* Cgÿx SgÔ Eg–aÿZ Rfb,KaZ (gŠ =gt >gJ g* (=gaîJ€f ¶Rnÿ4NÕ`ÿ.aØJ€f ¶RlðNÕaÊJ€fþt¶RfàNÕ (=ga´J€fæ¶RmÊNÕa¤J€fضRo¼NÕa˜J€fʶRg®NÕaTkÄfgžNÕf˜NÕaèf ‚SEfä¨+ÐkÑ+Ð+ÑgÇNu‡Nuaè: ‚DIFg ‚DFORgü`äp+ЫÑS+Ðk`À <!`ýÆ,KGîÊ`,KGîÌ`,KGîÎ$Ka" (fa¼k6gÄ`„6„&NNu =f aÔk>J€fê6ƒ&NNuRˆ Xg Ag DgJŸ`òEîÊ` EîÌ`EîÎaºNu RfÔaÆ +g@ -g* &g !g`¶ajJ€f„0€C`a\J€fv0ÀC` aPJ€fj0C6€&NNua@J€fZ0ÐC`îa ‚ )f$aP =f Cja@8 0fNu 1fJNu6<ÿÿNuRˆa LJk B€ ƒjJNu <3Nu&N`üŒRˆBA  g  gî4NuJŸ <"`üh&N`ò <#AëÊ`çhEND CHAINg <$`åxB«ÆLùEa>a('yE>(7kœ,LùE$:9naâúfæLù¨aâêfÆLùÀaâÚf¶Kè`'MüLùÜaâÂfžÑü'HøLùŒaâ¨f„ kºaëb=|CF/ aò&_"Haè(kdL¹XaôfTaæ fH8<aøf< I(ÿÿ  b&$aøLùEap*<F&'kÆ*a@‡ A€gAë <*`åL <-aãl <ÿÿ&<€aá <.AëÂ`ã® kª<(üHE8:< aàö‡faÖR`ôNu/Aë$.HG6.HD8HD.Nua6fLùEaÖ*<F¼a¬‡faŽfÜNufø <'`ä²  g$<0000aãÖ ‚0000f$+Æg" ‚0ALLfB‚'B*B†<+œ/,kª-Fú,_Nu —C‚gàJŸ <&`âˆaªLùEaÿP*<FÄaÿ$‡fØafàNu kª!Aò <,f <+f <* f <,HëTAëTaãú/,kª,.ò,_B‚ÇBFJ†NuJ«šfØaè|/ a&_kgB†'F*<+ kª!Fú`ÿV <(`áÐv,+Žg RC Cfô6<ÿNuLëÂAë0ÄHÐ"<taãg /rB‚aâö Nu#&EET€$F &BCT€&EET@€E^p AùEàNA&Hp AùEðNA'HªOë`aÑüLërLëÂHër'Bd'BêB«ÆBkÊBkÌBkÎ.<¡,kª=kÒþ®ÿ'|`ŽaçDL¹-äaâ"fÓð`ÖÞ&BCT .SCT&BCT .ARG  aÓüaÓx,Lù?Gz/aýR _$(aÑ4`ÒþaÓÖLè "k¤,o"<€` ÿÿÁ"Á"³ùkCù'I¤,'B*Lù?G’/aüö _`¢B$(/ a†f&_`Ò˜gp/ &o‘«œ&_Áfà‚C6`ÚaÓPLè J‚g|`L/ aì&_`œ/ aäg4JAk0&<€/" &o/BpaÐpgø"<&BCTpaÐb&_"A€6&_Aë:`ÿZGù·ùj´«gP‹`îJAg ²kgBB‚NuB2Nu0( çˆGùGó·ùjÜJAg ²kgP‹`êJ«gö €æˆR€H@0"$+Nu#&SCT€$¦#&SCT€$¸ Hç8 .gJ4k`ÊÀ6<ÿþ` ƒ€g ƒ'cÀ` =C ` À`À4<aX6< Gî at4<aD n& f| 6< GîaR4<a" (g6<Gîa84<a (fœBBBC4kJ )gg> Pn8AéK†AB`Ø4Bÿg BnÀ BcÀ=C `HÀÀÀBÿ BcÀ`,Rˆ6<Gîa¬4<a|$< Gî &Â&Â&Â&Â6ÂBn $B|gÀ$fÀ fÀ fÀ fÀ fÀ4B|gÀg :f€J€Lß<NuJ€jÀX`’QBgQBÀ`ÀBgÀNu4HB€€»Èg64k.f(f @À`< *fÀÁSCn΀€`$HB´CfÀ`< (*ÿþf<*`ÂSCnúNuHçB€BIúj ,gø4k6 -fÀ`æg0ƒgÁ` =fRŠa`  f@` Lß NuBƒ:< &J $gN4gˆ`&4k&gã‹/å‹ÖŸÖSEnÞ‚4jø  f"+ÿþNu:<4käfgÌ_郆SEnÜ`º€üê`"B€0€ü|?B®@.ÊfV .Ö @g @g-|@ad`=|,latJn<?B†B‡|?aûØ> .?g nBfPR®àSGfÖ`F-nà¬-nä°Aî¬0< NAf.=|<0<NAAî40<6NAg Aø„0<5NA |0<%NAAî¾0< NA~#üÿÿÿÿRtaZAîÌCîšajAîÚCî¬a` .ÖIî±aAî–-H†Aî¶-HŠAîzNBJ‡gAúøè-H†Aúù-HŠAîzNBAúøšNC`ÿnCúø¸-nÐT-YPkAîHNCfòNu2< c {c< ÀSAfèNué˜0 :m^ÁSBfæNuZ"ZDSRV4: UNABLE TO LOAD TASKDUMP.SY $ $ FROM ** EMH ERROR # $ USR SVC IOS FHS LDR ^F^`^V^’^Ì_’^>_>^L^‚^t^d^2ABCIKLTWXYZD˜–€B@† 'èd €Zâ[Y@ ERRORMSGSYADIÿB¹\.:üD-|j|NC|NC .à nä`ö#üZj\2` 5PazYƒ`ÿJ05Pad`ð5PaR`æKîäü$ 5Pa"T…`ü$ 5Pa`ÄB@ü$5Paú`´¹\6g¼0|4B…Kúýš(aR õ@aˆR„S…nòal]ƒ`þÊAúýhKîf2ÐAîø!nì .ð®ìR€ €`b:!@!MpNAf0Aîø hÑÍ ` »ÈdJjöS…fòÝk »Èdþa`ðSŒ`ÿ 0.à@ ÐEH@05P( GîßAúü˜/(!KGî¸a!_J€f"(ÛaÊSfö (a¬&D`þ¼&D`þäU‹pB… 9c éŠQÈÿê]ƒoHù\<Ö‹Rƒþ&C`Gúû aªf&( \f Sƒg KghSƒfê&h &(ü ü  …g … fý .à€€füþAî˜0¼1|nÍ|NCfAîp0¼€|NC#è\Dù\6Aî˜1|NCfÌ`üªAúûr!K &€NBNuà˜4<`4<é˜0 :m^€ÀSBfèNuAúû.H€`AúûHÀ`Aúû J€jü-D€r `Â4eRBÁ`ôИJjBJf JkBÂNuJkÒB`ÐtB… 9n 0lR‹J…fgËü €Ú€SBfÚNuR9[fR9[fR9[fR9[fR9[fR9[fR9[fR9[fR9[fR9[fR9[fR9[fR9[f#À\2Iúùèaÿ :ú¦H@IúùÞaþúazaV:ùÈIúùÄaÿCúøÀAúù¬raøAúøN|0¼!|ZF S‰!INBB9[f`ü#üÿÿÿÿRta÷Èfˆ`ú¾.à€xâ cB€Cúùn#ñZdNu .àIúø !ú„ 6Cø x2¼B©\‰³ü –mîaJ :lf <S€!Àv!üÿÿÿÿz‘¸zB¸r$9Þg |pN@`aˆ!Èra¬ ¼!ASNB¸ $:ðg< BpN@`ad!È aˆ ¼!GST1|1B ኂ„ü1B Eè!JB¸ $$:®g< BpN@`a!È $aB ¼!UST1|1B ኂ„ü1B Eè!J |pN@`aÞ(x f!È ftaütÿ  Â0ÂEø(tÿ¹Úg‚AèµüfîB¸ j$:Dg$ BpN@`aš!È ja¾ ¼!IOVáŠÔˆS‚!B!ü ,$:gD BpN@`ah!È ,aŒ ¼!PATáJ!BEð CèIè(‰#|ÿÿÿÿ(ICéµÉgnêB”B¸ ($:®g& BpN@`a!È (a> ¼!UDRáŠ]‚„ü 1BB¸ 0$:†g2 BpN@`aê!È 0aEè ŠáŠQ‚„üÄüÔŠ!B1úX 4!ü –aºJ¸ fœB¸ Gú”Cë <€pN@`ad4+;B,g +x  !Í EëpBJjgREêQÈÿòGë(m6AIì p(ÛQÈÿü “!TCBg†aœ.x 2<ÀaD/:~NuHVMù,¯@îFü'MîHÖ?ÿ-_8-O<2<¢a`ø,áŽ,FÝÈB†-½ÈnúNu0<`0<F虀2<é™"x :Cé2A022€@02€Nua&a°‹fa†a|°faÿ|Cí!É aÂazNuB€Aú°Pgaÿ^B‡EЇ Eê Rÿÿfð‡#à*(B(:šº„c*„ÿBKúûû" B*AMú ,Bœ°ºjf†` (<B*DB†º„baþöNu hÿÿ g,a2 ÿfaN`aðJga$`a@°‹ga¾a`Ì3|ÿÿ Nu~Aè Cé ((„ÿB*(B*DB†º„baþNu•ÊBB‚BƒIÕKõhHz ?÷ü6÷J9÷üN÷ü>÷ü6÷ü¿÷0OïNuNuuu} ÷ ð¼ÿÿVM02 VERSADOSSY—mVERSqVER0mÿÿÿÿzÿÿ  qNùBo=|NuN¹L!VCTÖÖØÚÜ ì ä xÖ ˆ!"x0ÈŽL‘’“L”R:•/ @ç|Jèf B"x "ˆ!È Fß"_NuJøf@HçÿþAø@ç| g$"@ ‘f!È |øÿ$iQéN’Aø| fÜQøFßLßÿNuPøNQøJ¸f¨NurÒx VÒ¸ B"x ,Gé$S g Jªf&’`ŒNu²ªmøa –²ªmî&’*j--fjª$* Ôª>*g>*g RjÇaÞ* f@* g­,fí-`­ ,g` B­X­,AÕa Vfÿfa|`ÿ`HçAP$8 >&68 @HC(HD4<  g 4<8***HB* g2Hçz,* m6a``NqLß8`Lßp&*HC6‚€4*AÕaNqLß ‚R`ÿ|@ç|$©%|ÿÿÿÿ#JFßNuIé L g(@´¬lò%B$€ ŠNu"x ,Aé ?Fü'"HJ‘fNs Q²¨mð°hlê/(?(Bh (RhШ ²€lô!@B€0("((f""x , ©#H!|ÿÿÿÿFßNu9 4ga€î`*_aœ _N`Lßÿ\?_f,J¹gaýžfJ9 [g|øÿa¢AÖa Ö`tNs@ç9 4ga&î HçÿþNi/ /9 b oF,hHV/(@À@ÿ?"h 0P*n6`2 f€\,_( „!TCBgaÄJ@gÿZ @f AÖa7@`ÿJ @fÿBJf&HC4<HBAÖa  Nq`ÿ(HBHA(&64< ‚HB4`àâˆ&T(,_" !TCBga`Cð=C^AÖa6àJ®@gþæ$< ÿÿHCHD6`¤.x Fü aüæMø "NJ© gì|,i 0.,@ÿfæ#n ®-!Î Kî.r?%2 °føB8 [|øÿ1ø T R®-fd.-fh®-fhJ¸ g*n6aú n®ú`þðJngAÖavHzþˆ`>®úHzþÖ`AÖa`Hzþr`JnfB®@ÁAû-oü|úrNuHV,x Hî?ÿ-_8Ni-I<"x =iÿúúNuEø ¦Çìs,)gÇ`"ÂüEø ¦(NGs*r»Îg°$<‡42&26,(gÃáK,$( *,,,p<,.,>, ,"0<2 gB@2g<,*.,(>,°H@0,²H@"@J²f -@g4&@4+HC6+HCAòa@J²gHç@(AÕa „`0Lß raÈ,sf-|çOGB.ûAúþ¶.ˆNuLß,sò Rrì ,NuÇ1G*Bh\è)!|EXEC°!| ´<(,Æ1F.½Èg$F-ÿ† g†1F,|ð& fa¬Nu1F,X <1Wú!oü`äa aaaaaaaaaa a aaaaNq?/_g/ gºa aþ8 4g @ça ¤ªTKú`ªvLaaaaaaa a aNqNqa Nq`"`6`>?/_gL/ fX—Ns?/_g0/ gNa"/ fÈ?/ _g/ g&aaýr8 4g @ça ªTKú` ¸H.ž•â n2-4.(g^2-,6"’må‰Üz n6a²`Nq`<"FJ‘g6*8 š,.<œ… n6a’`Nq`(F-C<&8 8ß¿Ãfú/?,ÿú<<`B† m n-_¸-_¼.)g".Hg a@ nü|Jfüv n,Cø – 1pfHzüf`üÄ=@=|çGB.û`üDJFfü>AÖaý¤ HzþŸ`új P` €¸`úX~$.HffdfLLîÿ`®z,.P n6a ¬`Nq`&~ F&(.T·„f È®Lg-CT`"R‡È®Lggû¶RnX .X°nXbû¦~Hzû `X oBEgaFßüNu./,x ½üg*/ f".)g.H8gîH,_"—Ns,_"/8 6Nuaè$< 4.&.(.8áL<Aî@aª`®)Lîÿt®-@&Nuî ,`ùv@çHçp "x ,Gé Fü'$K&g&&C´«fò$“JAj.&©#K'|ÿÿÿÿLßTNuJAkô&)fT¯`è&C#SFïB«'@ '@'H'BB«BkgëáIAA 7Aa–Ó«Fü'&© #K LßTNuHøÿÿ@ø!×Ni!ÉH!øL"x :3|•3|µ3| 3|°|`Þ@ç|8 4ga ÈÝFßNu|8 4ga °ÝNsNu|ð%a|`øLHøÿÿ1×!ï|LøÿÿNs@ç|JÐkü0ãHâ@S@0€kFßNua>T.raFß.x AÖaî`÷úî ,B® (f!NNu*@ - fø+N Nu.&|ð&î-HîÿtHç 8 Kï €Poaþà. ‡ÿIöpGr8ÝU@núLß0€Nu@ç|JÐkü0ãHâ@R@o0€FßNu/ "h!i €0€B© © ,"_FßNu/ x NBB8 Z 0àIDAÒx XäIÒ¸ BJ8 Zfà _NupðÀ($@&`h$&@çè-f,Hç@ Eø |(&"* g ʰ*&còÊ!A %H LßFßNuJ¸ tf|Hçÿþ!Ï tFï<.x t|9÷0 À÷0.x tLßÿÿB¸ tNsRx \ xd \k$/ "x :3|3|53|.3|>"_Bx \Nsp þÀˆÀÚÀj€nÀLÀ À€$: 0ÀH(¼€@*ž ‚&À&ì%z ‚%n Â,œ,ܼø(fÀ#R Â+È€,¨$€,²8€*À œÀ” ÂŒ<Â,Þ"ØÔР€#L €#D € €¬ €<´°¬¨"X€BˆTÀ”Œ €$n, ¶ÀŒ€tìÁÀÊ À!> Àê ÀZ ÀXT>€#†€´€HçÀÀ x :| x NPø Z(( B28 VÓ¸ B 8   B€&\k:R¸ >!À B <&\"x ,@ç| i "g‘¨ P`ôFß i"g‘¨ P`ô"x ,J© g0/@'ÿ@ "8 BaóLß8 4gaòÿJx Tg Sx RnPø [`órfNsT €%bû°Ð€0;"Nû %cT—Nu/Ò2; Aû"Nuûˆü"üÈý@&|P”˜,`ÀBûøˆÞ~ ®ö"ä÷B+v˜èœxý ~ò†&ÆûˆònúÜÿäðÆñ.?_fó\aõ¨=n\8 4ga6ÿ.)g".Hg~aú=@|Bn€ÿÿJ@kZåˆ €(n¦EùªÕÀ4*?g0B…, n6aÎ`NqTn`d(FgAÔan`Vn`N*HÔÒHyüNÒ$x ($ gND@°jnFS€Àü EòJªg6*f"²®f&?*$jHyü@çNÒ0€ãˆAùbNð=|`ôj=|Ns*I"H Q")aÖ`T—Nu"M !TCBfò*H(m@ ”!ASQfì`T—`n !TCBf*H(m@ gÆPø [,fT—`B"á™ÿa ``êHç<ta4gßüHç`ta$ßüJ€g/a:`T¯(¬fNuNuAï6Ø·ìe&lUBgUfìNuUANuHç&B‚4fx`–HC2xƒf6ƒpx ga>KøIøB§$I"x fFJQk$¶1@f&i OJg·Øg`öHSAëaùŽa”Cé QÿÿfÎB„ g| g4´¬o  g($,aœ‚)aØ®- K gT¯Lß88Nu g@î-|ð&Aí-H”|0ãHâ@S@lü0€aùJFü AÖaú$a‚`ñ,R„R„`œ g*$@ g**º‚m´¬nº¬m` º¬o(J*K fÖNu•¬Õ¬ *,áGôXf*, $T ,g"@Û© "Šg%INu*ŠgúBªNuaøänw&Nu"_ g @Aèaù`ðNÑ g  iµèl”µém˜fÿNJQk’*iHUAíaø6 gþðáŠ&J×ÂàŠ(@°Šnþà ,áˆÐŒ°Šn fè`þ̰‹gþˆn gþ¼Šàˆ$`þt&”g"T#K(‹'L'l B¬ ‹àˆ'@‘¬`þJCé QÿÿfÿPgþ¸&JB„`þLa÷Hç $nLß0T—Nu$H"x ÿÿg *iµílµémÜJQkÞá‰Òв­bÎ` Cé QÿÿfÐ`ÀCøAía÷T&g C±Ál"H&fô g )áˆÐ‰µÀm¬%B f -àˆ%@ $ƒ%If*Š`$"Š ‰àˆ©#@ f *Ñ©#j "’$IJƒg$"C#JJª f )Ѫ%i $‘g"R#J- ð"x ²f(i,g Aìa÷H`îCé QÿÿfÜAía÷4Lß0NuT—`îHçÀ@ç&x 0|*S»ëfKëIí&ŒFß+@+H+N (o:”T¯;o+o Uïÿb+o a÷+A2<ù’àHF@@ÀüúÒ@;ALß8NuBƒB€"x gbEé0)gP—ËJj f ·üf$&J` ±êf´’gB* g f4 f& ÕüS@fÄJƒf"0) K·üf J°i m‘ÈR€T—Nu JNu CNuB€*g B…:(0P$f `¾°P g Q… E læ*T—NuB‚BƒB"x $( gd4)´i gRB(pJq fJƒf:& „g04)`*±üg±ñf$lµñf$lµñg"Jq k"€SDf²T—JƒfB€B‚Nu Nu qNu gJg` NNu gø"(g.(f".°®f²®gÚ"x ³üg°©f²©g"i`æT— INu`††ÿÿÿB€&àŽ(o8؃S„àŒB…:(J0Pg¼pPe¼pPb¸pPbÜpPáŽÜNu Q… E lÔ*T—T—,Nu$x ( gTB€0lTD@°jnLS€Àü Eò4,f^Jªf8g .(f‚z,, n6aÿ\`$Nqn NuXnNuZnNu\nNun Nu%FBó5B$®NuJªgÚ .°’g.(gÐBªNu"x f$x jB‡B‚, Jlf„J1 g\nNu~Gòp·êmZnNuJ«g‡`â6üN¹Aúê&Èz,, m6aþ¬` Nqn Nu6‚'M'l 'l ‡ Žü‡ í)GëÿúåŠ B ‹Nu1 g"S‡ÎüP‡Gòp k (°®g.(f=|NuGë,fÿx,f=|Nua0Nu"x f$x j~Gòp·êl¹ëf GëB‚4a ‡`ÞNuAúéf&åŠ B ƒäŠB1 B«Nu*n6., AÕaüÄ`^n`Ò<5P$0@0f22, A0g ŒA g& f.(fn `œn`¾\n`¸,g†, gÆ"$. uP aûÎ`±üf Zn`R\n`LuP$!uP  ‚1A1| Bƒ65PÖuPá‹!C 65P–uPRC1C3@1| , gè NuJ¬6g*l6B…:-5P$gabQ… E lî,)gP"x Ké>)gB,,Jm g.¼•f*­ Jm f0-@ fB2- m aùf`aðnÛüSGfÂNuB„,)gÄ `–>, fz,, n6aüF` Nqn Nu$F,g"z,, m6aü"`"` JEgJ0Ðf^nNu., m6aúþ``êB€00P, f8ÐpPáˆ%@B€$°P 5pP$ª00Páˆ%@B€00Páˆÿ%@ Nuáˆ-@ Nu»Îg -,fn NuZn`r\n`jB¸ b., m6aúx`æJ…gÚ0, 2,A'ÿg f  gÁÁÁ B‡,,g  gB†.8vΆެÞ¸vθzà"FffAø pfRˆ-(fTˆHG>G‡ÿ?HG Gaõn`.S€g^n`®Pn`ön /fè"AÓa÷š`Þaî¢&H.*ág, "F m6aú–`È`ÆJ0PfÀ!¬ P 0, @Oÿ gÀ1€P$1¼Pg1¼P àˆ1€PЇS€1€P ‰àˆ1€PP&ðP$R(-K gá-G$TNu., 8,(M¹Îg,,f n NuB¸ b*l6AÕaøò`^n`´J¬@g ,<àˆ°uPe°uPb n `’05P$@0g@$,25P$ uP aø.`aíœ<(SFÜuP;†PSh B†<(  g†1F JFf.05P$@ f$B€05PÐuPáˆB25P’uPR @aö<`aíDaí¬BµP BuP$B5P'BuPS-Nu*NB¸ b` »Îfn Nu$-2, l a÷’`^n`ÜZn`Ôn `ô\n`î&H$m6.+AÒa÷à`èJ…gÔB…:+á, gº¬d n`*,…ÿB$,,B, g,+ AÒaø˜`”`’J…faì~J0Pf„%«P B2P' àŽ5†PàŠÜBSF5†PD€Ð« àˆ5€P5¼ P+g5¼P5«P$òP$R*Rk -k  NuB‚,"x fJ1 n=|NuBƒ,g Co=| Nuá‹à Hz@çåŠ B/?8 5gaõèîNs8 5gaõØÝNu&MB¸ b*n6., AÕaö´`^n`ZJ®@g .<àH°uPe°uPbn `ÜVn`Ö·Îgö"E$F.* k6aöp` J…fZn`\n`ö* ,**fB†<5P* gÜuPáŽB€05PuP$R@*áa÷(` `J…f aën `ªJ0Pfò"( à‰ÔA1P1‚P’u@DAÒu@1P!µ@ P 1µ@&P&65@$*gƒ* gÃÃ1ƒP$1¼Pg1¼PBµ@ Bµ@$Bµ@Bµ@S-R(20PÒpPá‰-A ÉEaêàËD g$$.´«g pP "(Kaôâ`aêP&L$+ ‚Nu,,`*"-6g*,,, Aaö8`` J…gJ0Pfn Nu.Aì aõÒ`^nNu.(f((gn Nu"(6g*,,, Aaõä`` J…gJ0Pfn NuHzÿ¢?,--gGÿg­-g- ,gSs­-f­ ,Ss3g³ gAóaêgl û g+l  g+l  g- ,fAÕaêVNu gí,Nu gÜí ,NuJ­@g\n`h&, ƒÿà‹HC8 nHC Caîþ`Pn`F&H&¼!ASQl«l 'l'l Aë('H'H'H"áŠÔ‹'BBk&+K@Nu&L(m@ fXn`Þ,fn`ìz,+ n6aóð` Nqn `Ò"FB,+ ÜàŽ¼pPbä c6B…,B‡ fY‡+gX ‡fP†PP…B€,¼€cn`X($KaÐ`Zn`H(m@ JÄ(gÇÇtU„a0(g tEèaY„J…g $EîaQ„$I$gaaÆNu6Ú·ìe&lUBnðNu(N¬-J¬@g l@B¬@"(’ˆÿàaïÚ`aæâNu(n@ fXnNuJl&f~`*lB‡-gY‡*, n6aò¶` Nqn Nu&F GfBSNuT‚gX»ìe›ìÛìÇÂn`6Ý»ìe*lUGnð. R‡‡¾¬e.,@ç|)GSl&Fß&F f$k'jJ+g+g7|NuB€00PR@ÐpPሀ‹B‡+°‡l.oÔ|G*,+g7|Nu j6añÚ`"``êàŽÜpPáŽÜ>0PR‡ážƒ|GB‡+*FGë6ÝU‡núNu(n@ fXn`$ . ?,ø€_@Jl&gKÖaNu--f°, g˜", l(gTˆ±ìe l2HA±ìe l2JkL"Az, m6añ`Nq`8)I,- 8 > &\e&\R€HÔNu&F- ,fm NuzNaÿŒ(FCí0<"ÜS@fú+mt+m ”+\ü0-H+\H-Hø-H@ûNuAÖaÞòNu¨ ,fn NuaÞîNu&L- ,fm Nuzaÿ(F­ú+lP+lT+l L+lXBmX-H8-HJg:íú.-Hg*z,-P m6aèÖ` NqnNs†(Ff+TT­ ,0-,@ÿfAÕaÞFNu$, 6,|B„g(,n=|NuB… g *,fÆaÝØCÀg*B†6,  gƒg´lJ„gÔ„`ô‚&\`6,$Ô„"x ,Eé&J$S gŒJªf&’aÒê`ê»êfâ*fÚJ†kºªfÐ&’J†f$%M%D %lBj%EÃ5CaÒÄNuRFCf* gêªêaÒœJ†kÿ~NuaÒtJ†kÿrNuJ†f @ç| )g $@#RFß`ˆ=|FßNuSFn=|Nu&Fz`aýL(FCí0<(ÙS@fú(íü8íú -H€ÿÿÿ(À(í,0-H@ø8À(íP(íT(íL(íXNu*H(n@zB, gz.,.< n6aæü` Nq><€™AÖa֘߮<&F, fLÛÿHîÿLÛHî 2Aÿ/gÁ=Aú/[(n@ g gì Jl&gKÖaõ$Nu>,.(f‡J”gz, n6aæn` Nqn NuJ®@fXnNu,‚Eø –J2 g\n`:¼ Eø ¦Äü%Ž %® 5¼ B² %” Br 5‡ 2` ò Nu.(f((gn Nu,°(%cB® h%#n Nu@$@&NuBG`><&,"x $0àH°i lB(¸±0f:Jq0 g4 10f ¾10g,‡0Jq0 j&10JGg Añ0aÙüNuAñ0aÚ˜Nu^nNun Nu,*H"y 0 g i‘É*$ n6aå8` Nqn Nu$F&äŠ$ÙS‚fú$F(M"y 0&Q—ÉÙË$ÌÛÃ$ÍNu.(fn NuLÜ.<&\²‡e’‡R€`ö&(@ç|–¸ B˜¸ >!À >!Á B׸ FÙ¸ JFßB§"x ,Eé&J$S g@*g2&’$—.Š*fä * gÞ²ªn ‘ª²ªgÎmôѪ²ªnö`Àת`¸.g$G$*.aÏNJ‡fðNu=| . €Kª{ûfDJnpg x :(f2 x ‘ü, z n6aä```*FB®LîÿN•B¸ b,x Nuî ,NuJ”f@",g.(f".*y »üg(²­f-(f ½Ígí-gD*m`ØAÔaãf` B® VnNu*H½Íg-(g.(fn Nuí-g\nNu0,gÀí);@*;m,.-m +n°+n´­ ,­-­ ,g2 m”@ç|JÐküCèÿâJ© g»é g"i `î#m RPFßm-ÿ,|ð&­ ,gí-@ç|­-g <  @ ( g °fô!m AÕaØfFßNuî)=H*fî*.(g . (gaÖ†.-g`$.)fÚ=H*=n,.î--n°-n´(N"x ,Eé&J g$@¹êfò&’aÍ`ì,)gaä ,Tg @B¨!x:!È:&,(,ì)"x )-f2¸©f¬),)g) ,g¶©@f¸©Df ><@AÑaÑ‚"i f¾,)gaôNqaö®,)gaõø~Cø –Eø ¦"Âü 1pf2g/aÐ., ,gaÕÞR‡ ‡oÄaîVaä‚J¬gH4<HB4,&,8,HD8,°*,²<,¶HF<<.,*>,\,)g<<$LAìaÚêNq(JCø )g¹Àg"@`ò#laÕ`B¸ rAÔaÝÚNuaÔâ(-gn -hp =h("NuIëÿþ6<€`&LLìpHF>,6.(BAÓaàh``0<`,B€8 oH@0< @aÛ `0<`*H4<B˜QÊÿü+S +fgJ€f `<.p .;Fp+@aæBfDÿ;D(+El+EüHD0àHgfJg¸.%c.%D%°c@$@&*¼!TCB|€,;|:|úr;|0$MÕü`+J6$¼!TST|5|$5|D x  -"-±üg °¨f²¨g h`ærAÕaÜ|0<`aÓì`0<` +x !Í Nuf=@NuT—Nufg2 .".` ", , g.(g Jg` .".+@+ANu.(fn Nu*<,, n6aß` Nqn Nu,fnNu&Fp&ÝQÈÿüNu@ç, gzR` ,gz,. n6aÞ¼` NqTnFßNuJ”f6".*y »üg,²­f-(f-,g-.fD*m`ÔAÔaÞ(` B® Vn`°*H½Íg-(g.(fn `’-,f \n`„-m -.f`>,aþº+mlü|úr- (gDz,-ü m6aÞ` Nqn `ÿ@+Fü:(0P$g00PÑpPÑpPBpPQ… E làBm., gGìLÛÿHíÿLÛHí |­,0-,@ßfF×AÕaÓ,`þÔ@ç FJf8".*x »üg.²­f-(f½Íg--fí,gL*m`ÐaÜú` B® VnFßNu*H--fê½Íg-(g.(fn `Öí,g\n`È;m,.-m |­-gCø  I"h ³üg ³Ífî!i `’î,®-fNu®,=n^Bn^AÖaÒFNu-n Hî)Nu-n Lî)Nu»Î`ø [¨,g( (Xg "@B©B¨X1h^g 1|Bh^aÑðNuè-Nu(n@ fXn`4î ,.-g® ,AÖaѾ`ìì Jl&gKÖaê–Nu,fz. n6aÛì`NqpaX$F"*fp aJAø ŠAø ŠaÐRGø "SJ“g²©gÒGé`ì f¸, n6B…*çEaÛ’`Nq`¢B€* e c @dpËa„r Âj A fp ar"x fJ1gj°*f¦ *ÿg Jª fpÇaH *b *dpÌa4GêB…*g0 opÎaS…ç2*²sPdpÏa ²sPd pÏaR`NQ…lâp Àjf$ * @fRˆ/<K¢? *(SJ“fp a¤Gì°¬fì*,Ig°,(gp a„ ¬g(l`ð"SJ“gGé`ô j p(R@ @Hç€8aÔÊ` LßpaÿHLß"HíˆB˜S€nú*g)I&‰"¼!CCB*giHLê?Hé?))àáˆ3@B@3@@GêIép)+g(Û(ÛS`öB€*åˆ#@D&j ×Ó#K )ÿf#|QH*géI*géH`R*fbB€*&x fJ3g:(iD &TGëÿ¶*` &lJ¬g +*²n(K`ê¹Àg #K)I`#K&iD3|N¹J#|QüLIéJ&ŒB€* x f¼ÿ iÑè*I/N,_`t`Zp aøp aôpað g@o opÁaÜ n6B€S&@B… f )e2 )c )€e" )b;°g,aØ’` Nq`¢×ËGû°ÖÓNÓÿþ Ì¢Úð *a²f´ ©  ©HfX")D(A&TGëÿ¶ `&lJ¬faÌ(°‹g(K`ê¹Áf&J«g((k)|N¹J)|QüLIìJ&kD&Œ` )k`B)(&iD&¼Ö&x fB3Iø  &TJ”faËÆ°‹gIë`ì(«Aø ŠaÌî IraÔš`8aË paz&Iaî"Kfpal)Hgp‚a`)IgpƒaT)Ig .(gþ†)Igp a6 )c )c )€e )c*g< * d pÆa˜`”j :#j +HPAø ŠaÊü mÑè/N,_J@g>a, )AîDJg"P°©gAé `îF€NuBAø Šaʾ X=@`Aø ŠaʬB€B®Nu,m4B€-9f NpN@`F|q|ptAíp!­< g ­€pX‚€ ­8 T‚´-:cm:pLí<pažNuHç`CípB€ m"-+g|00J)fFÄ)fCéS`â0))gJ0`(©0-&ЈfS€ˆ$J0U@løB0 UBlø@À@FÀ-Hg Hç:aÿ Lß\øLß|NuLß|ÿþNuHç m4pN@`Lßx`LßxNu8 4g @çaÒZîFßHç€Ä*oKíÿ°"m/ N‘*_e -g*@`êLß#X`¿À8 5gaÒîHç€Ä 8 g*@ m ( g / @çN°Fß*_ -`àLß#`¿‚ÞjH091483 4@€€ vØRÄRxþ/ |pN@`p N@*_+HÀp@B˜S€núNu *faÌ`\-qg<ó`pB‡-qg<„`:B…,*:*"mPal` Nq<†`@&F(m",gíq<ó`&(j+mPˆpAúÿF<¼XWÈÿüf Ñü0Nð<‚`øah,+aZ+FŒ Fan1@1AB†ÆaÂaþ2<0‰| |`l -g´a,+a+FŒ Fa"H§À<F@ÀhFAÂh‚@LŸf"<6< Æhf<°hf Aÿó²hg ‚<ˆ`NB†Æa6ar2<@‰ mŒ,g< <€( É B€( f|` |€À@h|`t <€( gÀ( fÀ( gÀ( gÀ@ (&(gÀ@h'h B€É( g €À@|||P` -gþfaÌ,+a¾+FŒAìz"mŒ<aÈF@ÀiFAÂi‚@f”0)ÁiF@Àhi0)âHe3h âHe#h âHe#hâHe#h,g äHeh` îHâHeh&&âHeh''äHeh))"Ba$E PˆP‰ÙQÍÿü|PB`˜<ˆ‚`Žz. -g z*,fz:Nu0<2< -g0<2<',f0<|2<J-×g prAúþŒ` Fg+KL+mPPprAúþT¼XWÈÿüfÒpþNðþr‚(mLAAí´¼ |p1Aí¥FíB`¸í¥FíB`ª,+z:"mPa"F mìaª€m||3|¿ÿ0<ÿ -§f€ 3@Aí\Cép2ØQÈÿür`ÿpAíT(j!lŠ!lŽ0<€2< a~í¤r`ÿF(jAìzB@BAad mX(g8(Ví×g,,(*z"mPazg~C`P+FŽHzýf!_*!M.1mB2 mXaâ€AèCì‚p2ØQÈÿür`þÔ,+z:"mPa"F+IX~ÀifüÂifô~0<@Àifæ0<€ -§fÀ ÀifÎ0)ÁiF@Àhi0)// Aè Cé Eúü’BgâHe SAØQÉÿü`ÑÁÓÁ`æ"_ _~B -§f )&bv~A0<Ài @gf~@)( b)fJ©gL` rðÂé²f>) g )(c)(g )á˜gjB`öm||PìPNu‡rˆ`ý´a°Híp°aFíB+g;|4p’`;|8p’`ZPíÎPíÏQíÔB­˜QíÐ+f -]WíÐNua`Híp¼FíB+gQíÔPíÏ+g;|p’`;|p’"mPR)'í¤"m"Pí«Hz/`.Qí«Fü p.mHNu mìaðf -ôgrá`üæ;k–+gAëpN@`r„`üÈ+HPB­ ,+ *+š†RE"mPaNuagr„`ü¢(Ú†S…NuHçýü?<fJ…g i6pN@BWNqNq0Lß?¿NuaÿnHíp¼,+*+"mPa®Híp°aþÆFíB+g|’`|’+g|4“`|8“|p”`þæí ¤FíB`þæ`.Nq`R`RNq`¦`Nq`>`>Nq`’`Î`¾`ºAò"m"¼(¼8J-×g mŽN¨`~í¤`ÌAò"m")ÿü¼8J-×gÀ-ª mŽN`PJ-ôf¼À-ªfJ-ÒgJ-mgž-\g*`R°-nf í¤`p-mfJ-Òft²f J-Òfj`þ°-lfPíÒí¤`B°-ofJ-ÏfF-Ô`Ö mÈàfpê`Î2-Þ€SmÞf;|ÈÞRmà mÂàfí¥í¤`ðí¤`æJ-õf†À-ª fQíôí¤`ÆF-öfa(`a4PíõFí@AúP"|…r$ p"N@`Qíõ`>/@çFíBQíöp@`/@çFíBPíöpÀ-?ð-ð¼­ðFß Nu/ *AQíõ*_NsJmèf"@ê;mÞè mÈàfRmè mÈècBmè`ÐBrÂ-ógÀJ-ôgÀ -§f-ò-fÒJjÀNu - fJ-Îg -¸­°` -Ä­¼NuAò"m"-óAó³¼¼8J-×g€Àg mŽN¨`BrÂgí¥J-ôf.€À-ógí¤`rAò"m"¼¼0¼8rPÂgpè`ÿ` r Âgpê`þò`èAòí¤`2Aò-f Ò¨ÿö`¨ÿú|pøJk´í¤`NqJíÓf¢Fí@­¤f:­¤f’­¤fì­¤f|­¤f>­¤f|­¤fÆ­¤fЭ¥fÚ­¥f ¦­¥f à­¥f þ­¥f þ­¥f "FíBJm¤fÿfQíÓ"pU@NuJmÚgâJmàgÜ m æcPíÖ`Î2-ܲmèf8 mL"-¸’­°!AmêAí´¼ |pB(mê ara ¼`Œ5SmÜf;|ÈÜSmàJ-Ñg m´àba|0-ÚNû`ÿ\`Nq`† m¸±í´c aDgpa`6Á+H¸J-Ðga -¸-\g°­´c­°+@ `´`a`ÿ -rá˜g²gB`ô-¨À°-©f -¸­°+@ í¤BmÚNu m¸aÆf ±í´b`JJgþÎ c p a„`þ¾g ff±í°c\ +H¸S­˜J-ÐgL-]g&JíÕfpa²-pf -vaÞ+m°ÄB­˜+|8p’`¨²-qf0+m°¸J-Ðg-]gp\aº -va `ýì+| 8p’`p±í´cpa˜`DÁ+H¸R­˜J-Ðg bp^axR­˜r@Òaj-\g±í´c ‘í°+H ``ýŒJ-Ðg J-Õgp>a< -va"BmÚí¤`ýLgýD0-ØNû`rNq`†`¶`ú``JJ-Ôg0B-¦;|â;|äBmæ -ÀR€+@ÄJ-­gB-®`B-Ù`¢@ÿü g fm{¦g aÔí­`üÈJ-Ög QíÖí¤`JmÚfa`üªH瀀 -’c†á˜+@’ /bB­œ@Ùí¤`h ?b&QíÕ0@Û-–f-]gaJí¤`ü`öB­­gFíB¼­ñFí@|p’í¤`öAí´a>`ö-\gí¤pÀ-óg-\g aýÌaó¾Píô`õâaý¼aþ@`õÖHç?üm8!mTB(|$-­q mzS('6< g6<áp<p$-˜C'mÎIí~a8Nu-¸-§f< aJf < a JgJŸHzÿžNuBB)$ f8J-×gB2< )VÉÿøf2@Ì+_ÈU­È+_ÒFíBééNu aûÀB-×JPÃ`J€©éPí×)Fí@Nu"m") g) g|ÿþNu-If-Hg-qf"m"aûRFí@|NuHç:aû@B-×J m-Ì$mÈ&mv(m˜R-ÖHz/-ÒNÒS-ÖLß\þFí@|Nu,~|)m<g X€X‡”€p­8pX€°-:c-:€)‚p9ƒp g9„p g…p B4p LÔüaNuHç m4pJ-ÖfpN@` Lß8+Wr`Lß8B­rNu ``”#È—&Oú¸/Aù–l0<3NAg gabÎ"_"iAú ©.IOS f>!i&B(p ¬fà , f’*, aòaò.6Xg€KöX0B-a J€k¢aTg®GúªB“B«'vx 'vxí—'vXLX«'|—7|Aù–P0<NA6Xg2J-g,3ü–jCí#É–X#öXL–dP¹–dAù–P0<NA3ü–jGí#Ë–X#öXL–d¹–dAù–P0<NA¶hB¶XB6X+BvX @gJf 2-AfJ-ga Ô`Ja À`DBy–²#öx–ª#öx–®2-Ag#í–¸y€–²#öXL—"Aù–ª0<#NA6hgAù—*0<NAgaý¦J¶Xg a†a ¤a¢aša’`F , f<*, a\JvXgav`&öX%¶X%öX%a\a€!vX&6¼€B«7|p-X,aj`‚6hgxaT`Ê6hgf6hfa"`‚aJvXfa,`DCöX0 ia`Öaúª6hg”6hgŠ&la Tf af `a°`òAú $KGúHµËfB¨B¨ 1|`!l!l Bhl!vX&!E!JpÁ—Á–âGú 6B“B«'|—7|'l 'l'lX«Aù–P0<NANua: |‚0<5NAgâ gÚaóa2-Aga Ufÿ*"<Â`ÿ"By–²#ì–ª#ì–®2-Ag#í–¸y€–²#ì—"Aù–ª0<#NANuAú Þ#È–|#Æ–À#Ç–ÄöhöX Aù–r0<#NAg& g f |0<NA`¶atad`ah`ÿB€ y—&(( f ((!D `*J¶Hg(&6Hg(`ð&„8¸¨lЄ-„8B¶HB¶H-…H-†H¬HB6H-‡H -¬H¬H¬H hº¨f ¸ˆgJ¨kJg P`èöH`F6H¶(b&&H"(Jg A`ä"(gÁ!ANuJ¨l$¨"Á-H6hf-„XNu-„XNu"J«lÁ'A-ˆHNupNuBAú <| `Aú 0B( ¶x!vx| 1|hB¨ mgrçA Aù–„0<6NAf’Nu(6X"6H-Xgö.6H -‡XB¶H B¶H=¼ÿX¶HX+&vHë«-¶HXLGúnB« B«'M&¶x'vx'vH '|Aù–P0<NAfaØg:B-#öX –˜#Å—ü—Aù–˜0<#NAfÒ2-AgaþðNuAún!vX&!vx!vx !E!vHBhvHaöxprƒ`8afrÅ`2rÇ`0rƒ`*rë`$rá` rä`r†`6hfaH`aJ€f ¬a â=­ Xa øa ð`B-a ¨J€k zg –6hg,g*6h$6Xg JvXo` ~a8aúa ¦`¼a*Áhadfa Ž`¤6hha z` .6hgÁha `0<NAa 6`ÞfhNua $*6h6haa 6Nua Œ6Xf6XgB¶Xb` vXbJCfJDgS¨fJCgjBƒ`DCÖvX"JDgjB„`DDØvX =ƒX"=„X J¶X f$"6Xf J6XPga` ¬gaÖNu6h$g vhB¨ZB¨^hB¶hBvhB6hS6x NuaB-a hJ€g:k66hfaZfa„`ša|`0*6h6haÌ"6XJCfJDf;A ,E;n„"+n†$ÎvX$+vXAú ð!M!l1|(AÐ0<NAføˆa`*JmfšB-aÄJ€o–6hf~6haDJCgˆaªfaÔ`êaÌ`€JŸaÂ2- Ag Ag& Ag ra`"B†algLaLaþ` B¹­–Aú >1| Gú ^!K!mBƒ"y­´"i$4-* g`"6X BfgJRy­˜`  g2-AfÎJ€gk6hfôB2-A€g6ha¢JDkæJCkà"9­ž€g ,g®&(Aía¬J€g"9­žHAAíaîf„B-a´J€k†f¢J-f"9­ž€gl-¶8h-¶8hR6x B2-A€fÚÇFÉGaûøÇFÉG`ÊJ€k8fTJ-f,g",g &(AíaJ€g"9­žHAAíaJfàB-aJ€gâkÞ6hfÒfÊfÂHçB2-A€g6halJDk´JCk®Lß-¶h8-¶h8R6H B2-A€faû,ÇFÉG6hg62-A€g$a¤*6h6haJCgRvX"JDgRvX a¤aœ`²Áh2-AgaR` ÇFÉGaHÇFÉGfan`„2-A€f-¶h8-¶h8R6H aúœaH`üJŸ`ª ,múBaœ gìrAúl4Bÿ‚gJBf¦Jg  PNÐJ˜Sk”`âB†aöa6g¢raV`d ,m ,gdBa6 g†rAú&4Bÿ‚gJBf@Jg: PNÐJ˜Sk.`âB†aa\gþ¹üga!¬(Nu") ,yþP²–gMîv½ùþTcð`¶a(üa#æa) $yþX½Òfê EêVµùþ\cê`ŒùÿAgFa&~$h µüf $h!J `@Jªg<&R·üg$K`ì&JÕü8µèeB(*AùþzKùþ¤p `•ü&ŠB’Bª)g%i %i` %i %i %i$i)iAB*%|ÿ< h ¨ÿ<f µÈgJ¨kJg P`äê#Êÿ<`b*¶(n&&H"(Jg A`ä" (gÁ!A`2J¨j¨"Á%A#Êÿ<`" J«jÁ'A%H yB(*`þ>üÿÿÿ6B¹ÿ8EùþzGùþØ0</6ÚS@fúCùþØKùÿ)f |-g )4)eøJfX -&f0@ÀgUÀ-g­a':™ÌÎCùþØAùµú-2<fJXSAjö`$B€0€° @NÐAù¶ 0JPaý$°XgàJX`òBAùþØKùÿ$(&(x"h$-a&ÎAùÿv!B !CBGú ²gJfø`4ÒÓïãåìíGîV!K gGé$`Gé!K!|AÐ0<NAºg&Áþ¨!|þ¨!IX¨!|AÐ0<NA f<,g4AùÿÖ ‚!CBh,g !l,1|€#ÉÿêAÐ0<#NA`a#Äa#ª f Jªfª B(+`üza$¨B(+`üN¹ÿAJ¹ÿB…-% Bg Bg B` e dbfJAg²Ed`ÿ"-'f 0<@'` eÿ-&f 0<@&` bþöBƒ6-"fTƒB„-'Èü¸ƒeþ¾ã……B„-&Èü¸…eþ¾`J­$gþ a4fX#Êÿ85m 0-÷@25m"4m&8m'9m%7%m$ -@g -&fa an<aFg`ýìÁÿ6B€a(Òg* f -@g -&f aÜa4`Ø"a:Î `Äa:Æf¾-gB¹ÿ8a0#Êÿ8`a$­`ü - ga fTafNa#Aí 0< X fS@fö`aðf0a¢e * g&`ýÀa(f#Êÿ8a¦ - g a&âg`ý a¦2-Aa"øfêa^fäÁÿ62)a„JjJBg JAg²nfüäaüf¼`ØaÈf²HBaÞfªHB gàaÜfü¾a.²-g¬BÀa”gaÚ`üœAùÿF ©!i-g+lt(!lt`!m(!ll 1|1| ,|¬tR€!@AÐ0<NAg" fa2`Š g aø ab`ü–+yÿR0 9ÿZS€Ð­(+@,)m(pat9mŒlÿøŒB9ÿ6ƒlŒJEjlÿÇŒ-g )j(8)j,4)i)i)i )iJk*.Mf"Aùÿ’0<JNA5h<ê JBg5h:aô,g!|2a!œga¢`û¾üÿÿÿ6B¹ÿ8aŽ"i #J3|_Jj©2,ŒA©B()­`ù¦aìfha ¬a`dû`aðfV#Êÿ85m 0ah<a@f<Áÿ6aúf0a,ÒB€a*ffa7¢faaX­`ùD"a7ˆ aè`úªata `>JkS²€g4 fJkÚ Ff<`Î €ÿÿÿÿg ÿÿÿÿg²€e `þ)A4¬Ž ra jg ÂfÌ lfÂ`T)l\8"lt",4B€0*4g ’¬`ÂÀÓÁ`($,`²‚gB€0gR€ÓÀ³ìxb¢R‚`â0g˜B lg€ lg lgÒ lfÐJj4fdT‰ *@gZ,fR,fJBƒ*7–€Dƒ n@îMk±îDb"ÁS€fð`°ƒbîAgð±îDb ü SAfò`àtÁ"n@‘É  g,fB*7ÓÁdB€¸€d tÁaÚ!@(g !I!l AÐ0<NAg gœaç` ì`ü„ ¬t`î f2,ŒA fv¸€fh`H" n@a Ög gRaça òfhgR,gR†¼gb(a (fÎ †R‰`àa f¾ì¬B`ÿp  IJj4fTÑÁ`8 g( n@a ^fˆJfr g a zdð`a pbæ f ,|¬xgBJj4fU€°„e6"lxR‰R¬4 fÐa fÿ6³ì|dBi)Ixpa ¶a €`ÿ\aÜfd)l\8"ltS‰)Ix`´(pÿa ŒìŽ Jj4fT€a-¼f^`ÿ l|Rˆa ¦fþÐ&Ha(L lg$)l\8)A4¬Ž Êf(B€0*4gýz`ý| Âgÿ~ Êf g Ég`Ò)A4)l\8¬Ž I Jj4fT€a(dfÚa °fþV lfpaÜBJgþ‚Sf a&®f²`þtB€Sgpì¬a$Àf”`ýÖa f† f–R¬4B€0*4f 0gR€ÓÀ`ÿ|a -&f "e8S@fò`  f,S@fö0<a8`  gaeS@fòB"_Nu  fS@fö`îp`ì  g 0e 9c Ae ZbJ<þNu<NuHç@"|Ð ?? ÿÿf J_p LßøNu²gJJ™`æJ$/gJ_`Ê<>B * gz6jJgDC8jJgDD2f¢JFg jÿÿTg¢JFjJjTf˜`ÜjTJGg jÿÿRg†JGj JjRfÿ|`ÞjRJCg nÿÿJgÿhJCj JnJfÿ\`ÖnJJDg nÿÿHgÿHJDj JnHfÿ<`ØnHJFg5FTJGg5GRJCg=CJJDg=DHB`ÿJFgjBjT` JjTgSjTJGgjBjR` JjRgSjRJCgjBnJ` JnJgSnJJDgjBnH` JnHgSnH` ÿÿÿÿÿÿÿÿÿÿÿÿÿ$yþXJ’gEêVµùþ\cðp Nu$ŽBNu?0<+BZS@fú0Nu(yþ`J”gIì¹ùþdcðp Nu(ŠBNuHç€a¶0<HB\S@fúLßNuHç€$yþX½Òf"Gí Iê ¹Kf0< ¹KfS@fø<þLßNuEêVµùþ\cÎ<`èHçà 9ÿ6kÁaý®üÿÿÿ6$yÿ8µüg aÿJB¹ÿ8LßNuH瀀Aùþz$h $j(yþ`°¬ f,RLßNuIì¹ùþdcæaßêHç€À yþè"yþä/a" _S( ©©© yB()LßNuHç€À F"G`È l ¨(gAùÿî0<NAa߆NuHçÀ@B * g2*2@ f;|""*$R+A$`"+j6$;j4"`"V+i†$;i„"i$aŽCí!I"yþüCé!I!|&LßNuHçp€gfVAùÿ¦J¨ gBhAÐ0<NAB¨ Aùÿ^R¹ÿjBA*8f BB*9RBÒBÂü!AAÐ0<NAg gaÞ–p LßNuf&)HtBB*9ÄüS‚ÑÂ)H|)HxÑüì)H@BB*8ÄüS‚ÑÂ)HD)yÿjlAùÿ¦!yÿj 1|1| g1| AÐ0<NAg€ ga gÿp`ÿha`ÿ H瀀Aùÿ¦ ,lga1|B¬lAÐ0<NAB¨ LßNuH瀀Aùÿ¦ ,lgD°¨ g>BhJ¨ gAÐ0<NA!ll 1| ,g1| 1| AÐ0<NAaÝ~LßNuH瀀Aù`Â:<ÿÿ * g*2 gEÿJENuHç€0,@` @ f(,Žf,f,f <LßNu<þ`ô @f ,ŽfìÒ‚`è @@fJgÔ ÿÿÿÿgÌS`Ò", lfÆ ÿÿÿÿf¾,f¶"*,`°Hç`aL&lLB‚+’‚gÓª(Ó¬dÓ+ê a(ŠLßJ@NuѪ,Ѭh/ &lLÑk&_ê a(dNu",x’¬tR‚üHA0BAHAJ@gRNuB€#ÈÿŠaÄB‚*7g!B!l AÐ0<NA hJ€Nu/ JgJj4fT‰³fSBføB€"_Nu/a€!D!l !I *@f 2¬U¨T¨AÐ0<NAfÓÄS‰ _NuHç €Jj4f2Ä*I¾„fa²fa'ž fR‰BB€LßNuÉG.Mg"n@aˆfè n@"Mpa"`Èpÿ)@8)@4D€)@aÕÚ´jRfHB´jTLßNuAÐ0<NAg g aÕ°JNu+nf / V+h _;j +j +j+j+j;jNu *@f" ©gQ@i | B€NupNu040584 4&I$ „ü´nepÏNu/ "n ÒÂa"_fîBBHB êˆåˆ$nÕÀpÄ€”D,B€NuJfpÏNuHç>4* .$ff*n Úî“Éa Bƒ»î$cJ"Kaªe8ºƒc axf&aœe `ð"aÿ|f,ÆîMS…gaX`ð$†B€` ÏgJf aDg´ ÏfpÍLß,|Nu*@® Àü"@aÿ8Bƒ"KaFeºƒcªafa:e`òJfÿxagà`ÿpR‹Jf$†Jšµî c / "Kaþü"_Nut,B€NuS`ø f J†g †ÿÿÿÿf6×ÂB‚`4Ö‚×ÂB‚Rƒ<þNu f JFgè FÿÿgÜ` f JgÖ ÿgÊgÒ<NuHç"0$V³ê†epÏ`&I×Á·ê†bòJgîaþxgLß DNu†îMSgaÿNfè`ì$†B€`à/³î$ga4f B®$-|`Na f-I$B€ _Nu-@V-nZ -n^aüÖNu/B€.Mg .$fa `-|`NaÈf®MJ€ _NuHç@àpra`B®JfN ©EXORøfJ ©MACSüf@ g< € g4 yþP°¨g($V°ªg Aèv±ùþTcæAîp 0ÙS@fúB€LßNup`ö/îM n@"nDHA2<`-ANHîV"Haü _NuHç@ÀpraÌfBCî n@p 0ÙS@fú n@"nDBh>pÿ³H@³H@±Écð n@@>H@@?praˆLßNuHç<ÔHçCBB†B‡ .f0BS2Oï pLß+%KF5BJa Ž`þ /³î0ga4f -|`NB®0a f-I0B€ _Nu-@V-n(Z-n,^aøXNu/B€.Mg .0faŽ`-|`NaÈf®MJ€ _Nu/³î f¸ jÿþ g&Cê p *gS@föBªFBjJBªLBjPp`Š4*P *L`ÿ"Kó JgªAêpa|f pAêKó anf’&HC Cm3 g Cgÿ|¸Efâ5BJ%IFGó pAê0ÛS@fú²Dg JAg|ÿÿ0"n40*PCñpGê 6ÙS@fúB€Lß+NuâHB[S@fú`ØHç@@",HfpÄ`"Aa LßNuHç|Ð$,Hfaê`F l@Cè )IP((p&a8f.aŽf(Jƒf %D$ê J„f %C ê ašB¬H¬Lß >JNuHç`T$ g>raöf6Ké gJ‚j&lPÀâHg:ÛS@fúU‚g`S‚g#D raõÌLß*NugêBSBfú`âHç@@ graõ¬f"ƒ raõ ` %C ê JLßNuHçTA? ma`h&(B€AùéfãI00€°"@¬Ž&l@*lD",H lLB€B…NÑ9®9 <=f=f=f)HL¬ŽgabfB€Lß*þNuJfaš`pÂB¬LJ€`æ$*,,<`X~h`$*(,<\T.<ÿÿd fpÿ¶€gÊR‚gÆS‚¶‚bÀJgZºˆg< ,\(J‡k ,`:(Ú€°ƒb¶…d,fÿr`ÂB€afÿtB¬LB…Jƒg¶‚g`ab`aœgš`.¶‚gòaNf$+ AóP ",H¶´`e ¶´pcaž`aÞgä`ÿ( 4`aý BB„HFHG(KðP¶€gDda°`ÿ(2(JGgЄ`аƒb$Ù¬\Ó¬` M*lDW±Íea~`ÌJf¶at`ô)HL gþ¤B… &lt(ÊüS…Ú‹)Ex" Hî#V-|`Naðng ¬@"yþ`³Ìg$)g"²”f")H²¬Hf ")L’©@²€gCé³ùþdcÌ`L/".Za–,g A"it Ù±Åcú`$aî@!it!A R€!@AÐ0<NAaÅÔaz _`$,f-lj-lnîP/aï( _fV0*4gÀè×ÀS‹)Kxaˆgý¨`:,g|g"ER‰BQBB€·ìxbÒ0ggR€RA×À`èW‹²hgºpÈ`þ¶J„fa`òJ*7fa `òJfJª gaVg‚`ý\ºˆgj"B€*7 ltJj4fTˆa2eJf4aLf.Aë CóP ³ìLgAéCñP³ìDeêa²`œaúg` A^ˆaîca0f `üÔJ¬\göB€ahfüÔB¬LAë aÆc† lPaºb†BE+ GóP aúš`,+Û¬\:+Û¬`BE^‹fa2`ˆ×ÅAíÿý·ÈdJ“gAë)KLanbÆ`& *$°¬Hga`ЗÅQ‹+›¬\:+›¬`BE K`ý„J¬Tg‚aì` J“gÿxašgÿJ`ü"p‚`ü/ aÔf~Hî(VB¬Haíìg:"yþ`¹Ég °”f²©HgCé³ùþdcä`a: K"i@ Ù±ÍcúaL`af.)AHB€+ Aó ±ìDea\`pÄJg쎬ŽB€"_NuHçTB€",H g6"g2aÿdfF ,dR€)@T)@\",hR)AX)A`a jS€SHìd`L`ûRHçTB€",Hgð"+gêaÿfû2 ,T&S€",X(SHìdB€Ba "–€˜HìTHì\`úìHçT * g¦",H²€g"pÿ)@d)@h`ÿ^B@+ Aó J¬\gÊB€aXf&aø²`¼HçTB€",Hg"l@J‘gX"*$gÿVaþ†fúœB€a&fôBBC+ Aó0 a ’Lê(HìdRƒ*–€R„,˜B€%š€0%œ€J¥ MHìxT`ú@",Lg²a gú6`¨HçpÐB€¬g|Lì @ fpÄ`nHîVB‚&HB+ Có J‘f B¬HB¬L`.CéCñ³ìDU‰dJ‘fê“Ë*8Äü €ÂH@J@gRBa &f¬g Jg&pÿaøÈLß Nu *FfaPNuHçÀ"@aòdf$0*J"n(ÓÀAêp2ØS@fúîMª B€LßNu¬fB€NuS€a¶faNuHçXÐLìt R€ˆ@ÿg2<’@R‰âIBYSAfúS‰&lL HîV*2 g\B„*72*4 Bƒ6f6fa ¤`:g RCfa ”`*Gð8& JAfTƒ¶¬xbaØbfaòg<ÿÌ` K`´Lß Nua fô¬B€`êHçÔLìtR‰&lL fa 8`f*2B†B…B„Bƒ*7:*4f$6g*HgRƒÑÃR„±Ébfè`±ÉgJXf`ö( ˜ˆˆÅv*I›ÅHDJDfŽHDaãœB@*9²@ca Ð`p,grJg. fHç„ MKëB„& aLß!eg Jfaf6B€0+‘¬h‘ª,7DÙ¬hÙª,aââgJCgê a „lÿŸŽB€Lß+þNupË`ö,gæ²+fP¸kfJ& 8gÔAëaŠgÊd8"l@B€Aé Cñ ·Ég) ICñ³ìDeìa `¦aXbšazg”`NqpÈ`”/B* gaýŠ"B€aýÄg"aüêg"að–g"að g"aëšf LßNu/B`ÜB@/ *CJg°eg»fS@føB*_Nup¸`öHç|Ô"lL fa r`B…*7gÀGéB€fa X`ºga X`4 l@B‚v Öˆ( Að ±ìDea :`³Èg&^ƒ(Að fâa "`p C& (aÿdbeha‚gJ¬\f\AóP$,DW‚±ÂdRJgN^ˆB‚aÿ:e b>aXgJg6BaNfHç°fSEföLß( gÝSEfúa ÐJ‚gìB€Lß+>NupÌ`ö l@t g¾raëfäAé `ž*2 NuHç>€J*7fa h`^ r‚aõNfT,,`B„*7"ltB…:*4"J‚fa >`4³ìxd>JEf2fa *` gR K0& aþrgepÉ"JEfJaLß|NuÓÁR†`ÀpÊ`èz`âHç?B§B§B§,gR€(fa Ø`B" ‚ga È`2&lx.,|B³Ëcr&a^fv)Mxaà»ì|ga¼ÒB­a¬B€$& IB„"_* ga("_* gaxg("_* gajg(""H f Lß(üNu @ÑË*H±ÇbR‹Rˆ³Ëg1#`øB€Nu lt ˆR€„$”ˆ& –‰Rƒ*,Lfa `„°‚d¶€b¬ aîfì¶‚d~" Jƒg*KJgB€Ò€‡a”gaâ`Æ lta fÿB"HÑÄKð8ÿ&AâKg±Ëgb0ÛSCfú`" ãK×ÃÑÃ1#²‹fú&EB@+Gó·ìDea”` r azgþÚ`þòaTfø FKðHÿ&Er a`fèaýêfrB€`Ø a fÔa,fÐ)Ix&EB a:fÂaf¾œ‰Ø†KðHÿ"H`’)IxS¬xp`)FtB€ìa4aú)HtJNuHçÿÄ. B€B‚"lL³Àfaü`J‘faò`Ø"l@&()) Cñ *,DKéCñ,S†³Ëb$ ³ÆdJ‘fä*7Kñ»ÆbÖgB•P€B†·Éf Cë)IP` !·ÉfúѬP·ìLgB€"lL)Ѭ\0)Ѭ`B„*7)KL"WJ™"f J™"faV`Nu&lD&,@"lL¬$B)“¬d“ª(W‹B€)Kñ»ËdJ•g X‹2Ý»Ëfú`ìB‘B¬L"Bal/ CB€( Að aÀ fJfaîV`ˆaüføa^B€`ðJ*7g.B…:*4fB€0fa$`Ö*HgR€ÑÀ±Áfæ`*A›Åaøˆgÿ&SCT€fÒ &SCT€€ÿ€Ø &BCT&EETB P&EETP.STT&EET€ØVERSAdos VERSION 4.3 8403201215 BBAA>€SYS:0.& CN00LOG OFæ vLOGOFæ vOFF vBYE zLOAD ÞSTARô æSTOP"äCONTéîõå øTERMéîáôå"T^ÄDATE$âTIME%~USE#*DEFáõìôó#èARGõíåîôó&^NOARGõíåîôó&€BSTOð$RBTERí$`OPTéïîó$nNEWS'„HELP'œASSIçî(ÔCLOSå(CHAIî/²END0JRETRù2’PROCååä2–R?6ôBATCè7 CANCåì: QUERù9€ELIMéîáôå:ˆPASS÷ïòä*VSWORD*ÒSECURE- `0ä` h`#6GùOëf'O^Oë`Iúýì/< OÜ :fø&Lù PLùð `@ÙH@@£B€9 PãˆÀü#À>'AÚ'BÞ'Cz'D'E7FøAùaÚAùaÐAù0aÆAùJNBgpNA`ðAùB˜±ùköaÌ9 g"0|èaúAëB'H:Aù 'PDAë0p#NAa¦Lë0œº„c8µÉg4<ja4'J¨`ð fa&`æ4¼@LëŒ$*a@g4¼€`ÎR„'Dœa  `´PеùkEùNuLØÿ$+vAë.HàNAfNu `öAë*Hà~NANu <ÿÿB$+v&<€a&`ª |p!`Ø |`ô&SCTêÀ&SCTP&EET &SCT .SCT&SCT .ARG &SCTÚaä (g (g`òLè“ÉAù'C–±üg."g¶gPH`ì³üf"H`ð'Ah'hXp#AëTNA`ª³ügôf𠫬f J«âfa`ôaÜ'@d'@êAël!@aþšAúþîaþ|Aúþþaþt'HªAúÿaþh'H¦ +âg'@zAúÿLØÿAë`& kªÑü`,*+vaþ@Aúþ†aþ0p Aë`NAfþJ#kv"«–`ÐBƒ( g fê6( ¨&BCTgüL ¨&SCTfÐ((Aù¸¨g PH±ükð`´B˜BJ«âfªB«¬`¤/ +¬R@fT@'@¬Aëva5 +vAù°¨gÚPˆ±ùkð _Nu |èpNANua< (g>a Æ`¦a*B+ØÇf/+æ <a '_æ/Gp% |NAp"Aë:NANug.7hÌg/,kª.ÿgÇ,_2(‚kÎ7AÎjÇ"+’²¨f$+ž´¨fB«’B«¢ (gŒ (g < AèJ(f <a ä`ÿh ¨&SCT fÿ\J+ØgÿTS+Ø`ÿLaÿVÇ'h Æ`ÿ:aÿDÇ/h /hfÿ"Ç`ÿ-Mª&NOë`B-;| PaüŒCùRa Æa Èa Äy iŠMù a ZB,kª=|@þMù8J«âfšMùÇ9 g„aÈAúÖ/ a,Z&_,KCú L™?< ga ’gaþHSW`ðCúöL™a |`*Aë* ¼!|Cúè!I Cú!INBT`ÆT‡AëTIúøJÔ  føAëT`a–faZgŒ/,kª®þ,_ +~'@šJ«âgny iŠaù–g$‡aÜga<`ò‡föadf‡ga&`ðLùžÖ‹'| *af*Mùða ´`jMùóa ¨Nu ægºaêS+Šfþ¨,KGùŠva ¤ <a n` òREJECT NW <` VÚ&EETÚB‡ kªÑüP'H®LërHëjB«’Lù4ajpJAëÚNAB«¢ <aÜ,Kf GùHva 9 rg( «0001vf/+šB«~B«šMùæa€'W~'_šfˆaÂAú­/ a*T&_CùpL™a ’CúîL™a †fCúøL™a xCúÔa 6Múpa(`Ñü, €d. |`$ y tR+Ùf÷> <ÿÿ&<€a Âp0|€NAAë!kâ <`JLëæ'A’'BžB†+'FŠgNug$Aë’ < ‚0000d <a~ë’NuAë!B 0¼!A'A’,+ŽgVgX(+²B… †J†g`R… gúE f fB(E1|€J(g f1|NCgÂa0&HC` 0|5`|6Aë <` pJAë¢NAgkpÎAë`HÐp a®f*,+Ž(+²ÄÌ„'FŽfp$NAJ«’ggðJ€NuAë& <` <>`Ø CHAIN ABORTED(CHAIN)=  =ENTER DEFAULT SYSTEM VOLUME:USER NO.=ENTER USER NO.=LëÂAë*Hà~NAf8NuIùDðg$Lù8haÌ"<$<‡g.A `(*kª-ÿgSŽ<€KëTaÖLù~`aŽ* ang ‚fЫg&a^f†/,(AëTCð`ü ü AëöR†!QÎÿüKëTB ae {d/,kª.þf ,_ =f /fÇ \g>±ÍcÁ  fº'M¾, AëTœˆ'F¶ JNuTTõ ,H (g<4fZ‡ kªEèP Ngú  g¦ =g ²gêJfü`â =gF`ò (Rf„ (Xfz ()frXˆÇ0+Êgf` Ça(nJ@g"$kª°nP2EòPÇJgþø±Íc0Ú`î/ $kª*$_€ü a H@aÇ`þÒ±Íc0ÀNu   <`H Nf SˆÇ`þÞü~‡ \gÿ =gþŒ !gþ¼ &gþ´4kþ¬`Ôff æg fa`JJNu/,kª.þg,_`,,_f$f fgHçþüUaŽLß?ÇNufrÇ`jKëæB…atAëæ("<$<* +‘fB‚Aë*Hà~NBg8 áfJ«¢k’ ÆfJ«¢k„ÇgÇ` ÂfÇJNuKëTB…aAëT(`’ M/ÞfünS Nu  oášNuB‚aðaîaì`êáš  oNu$< aìaêaè`æ'k–L™a.fÿ&(+ŽÄ'DŽJNuL™afÿ(+²„'D²(+Ž„`ÜAëH p BhNCNu +vLëhB„ kª(þgÄ69 jg69 n` g69 l*+šAëHàü7|`~pAëæBhJNDNuHëæpAëæ!|+‘fB¨NDLëæJ€NuaH@a < aNuáXÀáXÀÅNu  fSˆB†`4k`ê  gö,+¾œˆ'F¶'HºNuRˆ  gøNu$/".âAî,H<ü@<Â<Ã,ÁB^$< ,üPRIV,Â,Û,Û<ÛB^Bž&_NCNuB.Ù?2<a¼g f€X+Ùgx |ôpNAAëNC`Þ|ÿìÙ"<$<Lú8üaÚAë*Hà~NBf>*(AëSÚˆ"<$<Aë*Hà~NBfR+Ùk¶fªMùÄaú´gžÇ7|Bk7_NCNuJffÀJ€Nug g'k–NuLДªj‚&\S’’NuÔ© ‚&\e‚&\RÒ‘"Á"‚Nuڋ؋֋Nu"+va f&0¼À`Aù±ùj ²¨gPˆ`îJNuÇÇ&<€aÈ+‘g vB‚2<aýFJ«¢f,KGù Ôvaêìgf Mùðaü< <aópNAACCOUNT OWÇ`önalJfø <`üaZÁ²«’f <`û†Bƒp aþ PgNu < J+f < aJgÖgø€Ç`ø~'HAë`ýaüZ" g( ALL g.áš .g( @c Zc <X`ûp"+’f <`ìBaýBg &g.$<0000aûî ‚0000f $+žf$+v´«vgJ«šgX`ðÂ/a""$gØ`à/JgAëHÐpagPNu  f _Nu <=aúæ`äAëHÐNAg$Aë fúf ‚0000d€ J+ÙgúP`R+ÙJ€NuBB‚`>aþþf| <ÿÿ&<€Jf,J‚g ´«vg"<&SCTpa”f <aþ¼B`B«’B«žaêè0<aÿrf.J‚g´«vg <J+f <aþ‚`R+ØaêªJgÄaê¢NuB$+v`aþnpaÿ*gNu < J+f < aþBJgÜNuKëzMë-]J]=] -] -UNuaâ/ az&_/,kª-@òj ,_ <4`Œ,_fî€pf <5aùŽ`HJ«âf €`kdKëz*îJ]:î *î *îL¹#äaúbf6J«âf4<aúRf&'kzâ/,kª.þf",_a&/,kª .ò,_Nu <6aù0<ÿÿNu,_`Þ€a:"+âLë|vAëTHÐ~Lë’Hè <aúTNua <`úF*kª2-þKë|'Mòpg€@R€ cîüÿ'MöNu/,kªîþ`h/,kª®þ`Z$H  c¢ ;fJaüJk8fNf, d&Jg"/,kªf2.þÁ`2.þ=Aþ,_`À <7`÷Ì.þg,_Nu,_`ÿ@/,kª`æagNu‡føfòMù%faõ`‡gÇNuaL € nÒáˆ& /fÈa6 €n¼ /f¶a" €Pm¨€lHCЃH@a¢/AëpJNA'_`rpJ`p ENTER DATE (MM/DD/YR)=atfZ‡fTfNMù%ÞaôȇgÇNua´ €nÒÀü<& :fÆaœ €g6À`âJføB$ // ,kªCîO”‰"_,_µë®eÚÇ`JgÀR`°SfÆ`ªB|  /,kªRŽŽSŽ@,_JfNu <`÷8,_x$kª¸n6KëTü\ apáXÀáXÀü:B@2@MòP/Baöaö(R„`Ƈg¬ <`õp,KGù'’v`÷ŽNEWS NWMù(Naõ\,KGù KîTJgD›fø| ÿÿ Z€€&@ / IîTŒ(_"‚ü HAJAgü R`ì/ Iî„»ÌkP(_S/ &Naõr,K&_Jf¢&NMù(hBaôèAë < ÀBX À À üHELP À0¼LOaõÎf"+æ`ðtNu(_`ÿfSESSION CONTROL COMMANDS:(ENTRY OF LOWER CASE LETTERS OPTIONAL)algJ bD g fgÇgÇ`ô2<BBaõ‡fˆNua(g c <9`óª  f <:`î/,kª-Cò,_aú/ až&_j <4`Ìgg0f'k–`" <)`ª/,kªîò,_gÂg¼ ;g\B‚aôDaô@aô <;`ÿ0$H/ a¾&_kê OfägÞ4 kª&(òƒ`& g fÂ4g kª(òg‚@2<@aó¼fg ,+²Æ'F²NuEREWERPWPREWPRPWEWPWERPR -:]_f +–°¨J—NuJ«šf <aôy iŠaèfDJgaÂLù8-2Ö‹a gaç¾`&Hç|Lù?+èaõžHë?Lß>AëNBgaò8Aë0¼Bh1|NCNuJ«šfç¼y iŠLù8->Ö‹a¾gaç\Nu KGèÚ/&Ú/&ÒLùžÖˆ!|*/ &Haï0,_--fÆNu KGè"K×ü(Eù+Ð'"·Éfú#hâ&HAëNCNuaÔg f8 |épNAaâ`ê'kšæLù+ÐaôÂAë.HàþNBg Éf <1añ\`ÿCëêNu@ PRIV ACCOUNT PWÿ‰æõ‰æõ+ÙEJ€fè «0001vfä gŠEÙfHaÿ*fæ8aþ‚JgjLù8-&Ö‹a`f AëTaýîgRCëêMëæÝü³Îg@³gøaŽ`ÌJ«Úg(Lù8-Ö‹a&fAëTaý´gCëÚ±‰gab`Ö±‰fø+Ùf‚NuLù,îAë&Hà|NBLù,ö(|*Ú†Aë&Hà|NBf$C*(B2PR…¼…döB€Nu0 Æf Hç~aåFLß~S+ŠgåXNuT-J-\T-v-Œê-Ž-Ÿê-^-tENTER SECURITY WORDENTER NEW SECURITY WORDENTER EXISTING PASSWORDENTER NEW PASSWORDJ«šfäîMù.ZaïPLù.˜Ü‹aMù.„aMù.ŒaLù.´Ö‹'|*`ìl+Ùé@ÙBaìlg+Ù 0@TKëVaîÒ+T 4dÞ 0eØ 2d+Ùü€@ÙaîŽNuaüð/aüx gÚ gÔJŸaî¤`ÿHLEVELS ARE: 0/NONE,1/SWORD,2/PWORD,3/BOTHUSER=0:USER NOT 0:&EETÙÙÙ&EETÙ,K2<aðfT'kšTLù/2Ö‹Ø‹Aë.HàþNBf6AëtpJNAEëÚañCë|añCëTR©0Lù/JÖ‹Ø‹Aë.HàþNBNu‰T“‰T“faèÇaŠgNu¸9 pbtva–g fí Å`Ì Å'EÔ,k®+ÐBfBf'N®aaóZ=|CF/ a ê&_ @ügìaðj <aì¸`lHçÿÿCùpaíòLßÿÿÇHç@€CùXaíÄëµLßJfH«‘/,kª®ÿ,_Ç  gažaö`f BkÊBkÌBkÎNuÇCùpaí†,k®"kªÓüP½ÉgDXŽ'N®<ažëµë‘gaì`¶*+Ô…'EÔf¦´+ÐgžfZfïÂCùXaí뵇ë‘/,kªîÿ,_BkЇ‡gÿ\‡Mù7`ì,+Ž*+Ôx f fNuR„  eîDDNu"HAë1| f1|€0¼CDB(B¨B¨ NC INu,k®]ŽB€/,kª.ÐŽ,_½ÀeNuÇX <`ëvfaÌaÿtgNu¸9 pb^va‚g fêð Å'EÔ`Ò Å'EÔ,k®gÄ+Ðaa2=f7CÊa"='N®¶nd¢ÇÇNuÇ <`êòf^fÿ~,k®+а.fè6¶ncFRn.f7nÊÇCùpaë–.<AëaþÔ ëµ ë‘Nu‡‡,k®ZŽ'N®2<*+Ô…'EÔaëRNuÇÇ«‘/,kª®ÿ,_gNu <@aê4`ýˆf <2`éÀJB‚aê´ *gl @güz &gzaêœ BENgd BIFgP BELg(gNu BRXgx BRAgx BRDgx BR?gÂaêX ‚ABTg" ‚FORgþ6`æšg6NuÇ*k¾`é2Ç`é^gNuaéRfôMùaç `âf`é&a><!<&B†< Ba°e f†`ôa`ò†NutB¼dºg¸g ~gìr`èÄNuaögJŸNuaða¦g+ÐëÑÇNu+ЫчNu < `ÿHaé| QfÌa¸a"Ha  f "gÈNÕ³gîNÕ  g¦ "fòNuaŒaÿBf¨NÕ +Ðg¬R+ÐKúÿŠaé* Cgÿx SgÔ Eg–aÿZ Rfb,KaZ (gŠ =gt >gJ g* (=gaîJ€f ¶Rnÿ4NÕ`ÿ.aØJ€f ¶RlðNÕaÊJ€fþt¶RfàNÕ (=ga´J€fæ¶RmÊNÕa¤J€fضRo¼NÕa˜J€fʶRg®NÕaTkÄfgžNÕf˜NÕaèf ‚SEfä¨+ÐkÑ+Ð+ÑgÇNu‡Nuaè: ‚DIFg ‚DFORgü`äp+ЫÑS+Ðk`À <!`ýÆ,KGîÊ`,KGîÌ`,KGîÎ$Ka" (fa¼k6gÄ`„6„&NNu =f aÔk>J€fê6ƒ&NNuRˆ Xg Ag DgJŸ`òEîÊ` EîÌ`EîÎaºNu RfÔaÆ +g@ -g* &g !g`¶ajJ€f„0€C`a\J€fv0ÀC` aPJ€fj0C6€&NNua@J€fZ0ÐC`îa ‚ )f$aP =f Cja@8 0fNu 1fJNu6<ÿÿNuRˆa LJk B€ ƒjJNu <3Nu&N`üŒRˆBA  g  gî4NuJŸ <"`üh&N`ò <#AëÊ`çhEND CHAINg <$`åxB«ÆLù;a>a('y;>(7kœ,Lù;$:9 naâúfæLù ¨aâêfÆLù ÀaâÚf¶Kè`'MüLù ÜaâÂfžÑü'HøLù Œaâ¨f„ kºaëb=|CF/ aò&_"Haè(kdL¹XaôfTaæ fH8<aøf< I(ÿÿ  b&$aøLù;ap*<<&'kÆ*a@‡ A€gAë <*`åL <-aãl <ÿÿ&<€aá <.AëÂ`ã® kª<(üHE8:< aàö‡faÖR`ôNu/Aë$.HG6.HD8HD.Nua6fLù;aÖ*<<¼a¬‡faŽfÜNufø <'`ä²  g$<0000aãÖ ‚0000f$+Æg" ‚0ALLfB‚'B*B†<+œ/,kª-Fú,_Nu —9‚gàJŸ <&`âˆaªLù;aÿP*<<Äaÿ$‡fØafàNu kª!Aò <,f <+f <* f <,HëTAëTaãú/,kª,.ò,_B‚ÇBFJ†NuJ«šfØaè|/ a&_kgB†'F*<+ kª!Fú`ÿV <(`áÐv,+Žg RC Cfô6<ÿNuLëÂAë0ÄHÐ"<taãg /rB‚aâö Nu#&EET€$< &BCT€&EET@€;^p Aù;àNA&Hp Aù;ðNA'HªOë`aÑüLërLëÂHër'Bd'BêB«ÆBkÊBkÌBkÎ.<¡,kª=kÒþ®ÿ'|`ŽaçDL¹#äaâ"fÓð`ÖÞ&BCT .SCT&BCT .ARGaÓüaÓx,Lù?=z/aýR _$(aÑ4`ÒþaÓÖLè "k¤,o"<€` ÿÿÁ"Á"³ùkCù'I¤,'B*Lù?=’/aüö _`¢B$(/ a†f&_`Ò˜gp/ &o‘«œ&_Áfà‚C6`ÚaÓPLè J‚g|`L/ aì&_`œ/ aäg4JAk0&<€/" &o/BpaÐpgø"<&BCTpaÐb&_"A€6&_Aë:`ÿZGù·ùj´«gP‹`îJAg ²kgBB‚NuB2Nu0( çˆGùGó·ùjÜJAg ²kgP‹`êJ«gö €æˆR€H@0"$+Nu#&SCT€$¦#&SCT€$¸ Hç8 .gJ4k`ÊÀ6<ÿþ` ƒ€g ƒ'cÀ` =C ` À`À4<aX6< Gî at4<aD n& f| 6< GîaR4<a" (g6<Gîa84<a (fœBBBC4kJ )gg> Pn8AéK†AB`Ø4Bÿg BnÀ BcÀ=C `HÀÀÀBÿ BcÀ`,Rˆ6<Gîa¬4<a|$< Gî &Â&Â&Â&Â6ÂBn $B|gÀ$fÀ fÀ fÀ fÀ fÀ4B|gÀg :f€J€Lß<NuJ€jÀX`’QBgQBÀ`ÀBgÀNu4HB€€»Èg64k.f(f @À`< *fÀÁSCn΀€`$HB´CfÀ`< (*ÿþf<*`ÂSCnúNuHçB€BIúj ,gø4k6 -fÀ`æg0ƒgÁ` =fRŠa`  f@` Lß NuBƒ:< &J $gN4gˆ`&4k&gã‹/å‹ÖŸÖSEnÞ‚4jø  f"+ÿþNu:<4käfgÌ_郆SEnÜ`º€üê`"B€0€ü|?B®@.ÊfV .Ö @g @g-|@ad`=|,latJn<?B†B‡|?aûØ> .?g nBfPR®àSGfÖ`F-nà¬-nä°Aî¬0< NAf.=|<0<NAAî40<6NAg Aø„0<5NA |0<%NAAî¾0< NA~#üÿÿÿÿHtaZAîÌCîšajAîÚCî¬a` .ÖIî±aAî–-H†Aî¶-HŠAîzNBJ‡gAúøè-H†Aúù-HŠAîzNBAúøšNC`ÿnCúø¸-nÐT-YPkAîHNCfòNu2< c {c< ÀSAfèNué˜0 :m^ÁSBfæNuP"PDSRV4: UNABLE TO LOAD TASKDUMP.SY $ $ FROM ** EMH ERROR # $ USR SVC IOS FHS LDR TFT`TVT’TÌU’T>U>TLT‚TtTdT2ABCIKLTWXYZD˜–€B@† 'èd €PâQY@ ERRORMSGSYADIÿB¹R.:üD-|j|NC|NC .à nä`ö#üPjR2` 5PazYƒ`ÿJ05Pad`ð5PaR`æKîäü$ 5Pa"T…`ü$ 5Pa`ÄB@ü$5Paú`´¹R6g¼0|4B…Kúýš(aR õ@aˆR„S…nòal]ƒ`þÊAúýhKîf2ÐAîø!nì .ð®ìR€ €`b:!@!MpNAf0Aîø hÑÍ ` »ÈdJjöS…fòÝk »Èdþa`ðSŒ`ÿ 0.à@ ÐEH@05P( GîßAúü˜/(!KGî¸a!_J€f"(ÛaÊSfö (a¬&D`þ¼&D`þäU‹pB… 9c éŠQÈÿê]ƒoHùR<Ö‹Rƒþ&C`Gúû aªf&( \f Sƒg KghSƒfê&h &(ü ü  …g … fý .à€€füþAî˜0¼1|nÍ|NCfAîp0¼€|NC#èRDùR6Aî˜1|NCfÌ`üªAúûr!K &€NBNuà˜4<`4<é˜0 :m^€ÀSBfèNuAúû.H€`AúûHÀ`Aúû J€jü-D€r `Â4eRBÁ`ôИJjBJf JkBÂNuJkÒB`ÐtB… 9n 0lR‹J…fgËü €Ú€SBfÚNuR9QfR9QfR9QfR9QfR9QfR9QfR9QfR9QfR9QfR9QfR9QfR9QfR9Qf#ÀR2Iúùèaÿ :ú¦H@IúùÞaþúazaV:ùÈIúùÄaÿCúøÀAúù¬raøAúøN|0¼!|PF S‰!INBB9Qf`ü#üÿÿÿÿHta÷Èfˆ`ú¾.à€xâ cB€Cúùn#ñPdNu .àIúøFD04.IOS3CRD1ÿÿÿóMgæFD05.IOS3CRD1ÿÿÿóMhŽFD10.IOS3CFD1ÿÿÿóMi6FD11.IOS3CFD1ÿÿÿóMNULLÿÿ:j.CPRTRþxøáqj\SUP1þb÷Œ0jŠ CMPS`þcSUP1÷Œ0j¸ CMP1aþcSUP1÷Œ0jæCRD1þSÿÿÿÿÿƒÿÿkCFD1þSÿÿþÿÿƒÿÿ` IOSG[.|lZ#ü[kJ"|jJ‘gH |kf1i!iLé? Hè? (g (f(p ¼!UDRáŠ]‚„ü 1BB¸ 0$:²g2 BpN@`aê!È 0aEè ŠáŠQ‚„üÄüÔŠ!B1ú„ 4!ü –aºJ¸ fœB¸ GúÌCë <€pN@`ad4+;B,g +x  !Í EëpBJjgREêQÈÿòGë(m6AIì p(ÛQÈÿü “!TCBg†aœ.x 2<ÀaD/:ªNuHVMù,¯@îFü'MîHÖ?ÿ-_8-O<2<¢a`ø,áŽ,FÝÈB†-½ÈnúNu0<`0<F虀2<é™"x :Cé2A022€@02€Nua&a°‹fa†a|°faÿ|Cí!É aÂazNuB€AúH°Pgaÿ^B‡EЇ Eê Rÿÿfð‡#à*(B(:ƺ„c*„ÿBKúûû" B*AMúA,Bœ°º–f†` (<B*DB†º„baþöNu hÿÿ g,a2 ÿfaN`aðJga$`a@°‹ga¾a`Ì3|ÿÿ Nu~Aè Cé ((„ÿB*(B*DB†º„baþNu•ÊBB‚BƒIÕKõhHz ? .gJ4k`ÊÀ6<ÿþ` ƒ€g ƒ'cÀ` =C ` À`À4<aX6< Gî at4<aD n& f|  6< GîaR4<a" (g6<Gîa84<a (fœBBBC4kJ )gg> Pn8AéK†AB`Ø4Bÿg BnÀ BcÀ=C `HÀÀÀBÿ BcÀ`,Rˆ6<Gîa¬4<a|$< Gî &Â&Â&Â&Â6ÂBn $B|gÀ$fÀ fÀ fÀ fÀ fÀ4B|gÀg :f€J€Lß<NuJ€jÀX`’QBgQBÀ`ÀBgÀNu4HB€€»Èg64k.f(f @À`< *fÀÁSCn΀€`$HB´CfÀ`< (*ÿþf<*`ÂSCnúNu/ &HIú B€B"@$@JFf <@@@(_Nua¬J€j €€`šR‹·Èf€@ ;g6  g0a°"H&HazJ€j€€`j ,f€`äR‹·Èf "|€@  g> ;g€  `6$H&HaVk nö€€€`  g ,gâ`êR‹·Èf $|€@(_Nua k0fö #gð€ NuSF4NuJFfò€ÀNu  gNuaê`ôHçB€BIú ,gø4k6 -fÀ`æg0ƒgÁ` =fRŠa`  f@` Lß NuBƒ:< &J $gN4gˆ`&4k&gã‹/å‹ÖŸÖSEnÞ‚4jø  f"+ÿþNu:<4käfgÌ_郆SEnÜ`ºHç~|/UAúêpNAg fÐB€`Ê*H>¨þ o&($h ƒf  fSƒ!C hCò8¼ TˆR‰!QËÿü"JBB€ ae {d -þf \gš±ÉcöÁ  fÐ oS‰& –¨ !CH瀀AúdpNALßf0/f(/LÐHçþ O ¼!|!INBßü T _Lß>~JNu .ARG.ARG&H 0e 9c(EíP Kgú  gL =g ²gìJfü`ä =g`ò/a04 JBg&EÕ´n 2 Eò PJgþî±ÉcÚ`ò <`ÿ < KSˆ`þî€üê`"B€0€ü126Œ00000025…T0GTFRMLEQU†37”GETMULTIPLEBUFFERSFROMFREEQ2127Œ00000026…T0PTFRBFEQU†38”PUTBUFFERINFREEQ<128Œ00000027…T0PTFRMLEQU†39”PUTMULTIPLEBUFFERSINFREEQ1129Œ00000028…T0PTXMQ‚EQU†40”PUTBUFFERONXMITQ3130Œ00000029…T0GTUSQ‚EQU†41”GETBUFFERFROMUSERQ1131Œ0000002A…T0PTUSQ‚EQU†42”PUTBUFFERONUSERQ132™*=133™*„THEFOLLOWINGEQU'SDEFINEENTRIESTOSUBROUTINESONLY5134™*ˆTRAP0ENTRIESFOREXTERNALCALLSDONOTEXIST135™*C136Œ00000003…T0RYEXT1EQU†3•READYROUTINEENTRY-FROMTRAP1EXIT>137Œ00000003…T0RYEXIREQU†3•READYROUTINEENTRY-FROMEXITIRJ138Œ00000003…T0RYCINTEQU†3•READYROUTINEENTRY-FROMCOMMONINTHANDLERG139Œ00000003…T0RYTINTEQU†3•READYROUTINEENTRY-FROMTIMERINTERRUPTI140Œ00000003…T0RYACK‚EQU†3•READYROUTINEENTRY-FROMSERVERACKNOWLEDGEB141Œ00000003…T0RYRELQEQU†3•READYROUTINEENTRY-FROMRELINQUISHI142Œ00000003…T0RYXMONEQU†3•READYROUTINEENTRY-FROMRETURNFROMEXMONB143Œ00000003…T0RYSTRTEQU†3•READYROUTINEENTRY-FROMSTARTTASKM144Œ00000003…T0RYWAKEEQU†3•READYROUTINEENTRY-FROMWAKEUPFOLLOWINGWAIT LMOTOROLAM68000ASMVERSION‚1.30IO‚:ƒ0.ˆ.IOHDRV‚.SA09/16/8214:02:47žPAGEƒ5(VERSADOS4.0I/ODRIVERPROCESSEXAMPLE• I145Œ00000003…T0RYASR‚EQU†3•READYROUTINEENTRY-FROMGOTOASR(ASRINT)K146Œ00000003…T0RYDLAYEQU†3•READYROUTINEENTRY-FROMRESTARTAFTERDELAY LMOTOROLAM68000ASMVERSION‚1.30IO‚:ƒ0.ˆ.IOHDRV‚.SA09/16/8214:02:47žPAGEƒ6(VERSADOS4.0I/ODRIVERPROCESSEXAMPLE• 395™*396™*ˆTASKCONTROLBLOCK397™*398™*7399™*†USEASƒNAME(AX)‚WHEREAX=ADDRESSOFSTARTOFTCB6400™*‰WHERE‚AXISTHEADDRESSOFTHESTARTOFTHETCB'401™*‰ANDNAMEISONEOFTHEFOLLOWING402™*403¢OFFSETƒ0•STARTATZERO9404ƒ0000000000000004…TCB†DS.L…1•'!TCB'‚DUMPEYECATCHER:405ƒ0000000400000004…TCBALLƒDS.L…1•LINKFORALLTCBLISTC406ƒ0000000800000004…TCBGROUPDS.L…1•LINKFORTCB-TH IS-GROUPLIST:407ƒ0000000C00000004…TCBREADYDS.L…1•LINKFORREADYLIST6408ƒ0000001000000004…TCBNAME‚DS.L…1•4-BYTETASKNAME3409ƒ0000001400000004…TCBSESSNDS.L…1•SESSIONCODED410ƒ0000001800000008…TCBMONƒDS.L…2•MONITORTASKNAME+SESSIONCODEB411ƒ0000002000000004…TCBSEMƒDS.L…1•LINKTONEXTSEMAPHOREWAITER;412ƒ0000002400000001…TCBCPRI‚DS.B…1•CURRENTTASKPRIORITY9413ƒ0000002500000001…TCBLPRI‚DS.B…1•TASKLIMITPRIORITYO414ƒ0000002600000001…TCBRPRI‚DS.B…1•PRIORITYUSEDTOENTERTASKINREADYLIST>415ƒ0000002700000001…TCBIOCNTDS.B…1•COUNTOFPENDINGINPUTS5416ƒ0000002800000002…TCBATTR‚DS.W…1•TASKATTRIBUTESK417Œ00000029…TCBATTI‚EQU†TCBATTR+12NDBYTEOFATTRIBUTES(INTERNALFLAGS)1418ƒ0000002A00000002…TCBABORTDS.W…1•ABORTCODE9419ƒ0000002C00000004…TCBSTATEDS.L…1•CURRENTTASKSTATE<420Œ0000002D…TCBSTAT2EQU†TCBSTATE+1Œ2NDBYTEOFSTATEWORD4421ƒ0000003000000006…TCBTSTSMDS.W…3•TSTSEMAPHOREB422ƒ0000003600000004…TCBTSTƒDS.L…1•POINTERTOTASKSEGMENTTABLE4423ƒ0000003A00000006…TCBASQSMDS.W…3•ASQSEMAPHORE3424ƒ0000004000000004…TCBASQƒDS.L…1•POINTERTOASQH425ƒ0000004400000004…TCBCHAN‚DS.L…1•LINKTONEXTCHANNELCONTROLBLOCKG426ƒ0000004800000004…TCBEVECTDS.L…1•ADDRESSOFTASKEXCEPTIONVECTORB427ƒ0000004C00000004…TCBTVECTDS.L…1•ADDRESSOFTASKTRAPVECTOR428™*5429ƒ0000005000000004ŽDS.L…1•RESERVEDFORFUTUREUSEM430ƒ0000005400000004…TCBNAUƒDS.L…1•ADDRESSOFNATENTRYIFTHISTASKISNAUR431ƒ0000005800000004…TCBDLAY‚DS.L…1•ADDRESSOFDELAYENTRYINPERIODICACTTABLEF432ƒ0000005C00000002…TCBUPD0‚DS.W…1•SAVEUPPER1/2OFD0ONTRAP1'SF433ƒ0000005E00000002…TCBISRS‚DS.W…1•ISRERRORCODE-SAVEFORWAKEUP5434ƒ000000600000000CŽDS.L…3•RESERVEDFORFUTUREUSE?435ƒ0000006C00000004…TCBENTRYDS.L…1•TASKINITIALENTRYPOINTF436ƒ0000007000000002…TCBUSER‚DS.W…1•USERNUMBERASSOCIATEDWITHTASK5437ƒ0000007200000001…TCBSSPƒDS.B…1•EXECSTACKDEPTHM438ƒ0000007300000001…TCBUTRP‚DS.B…1•USERTRAPNUMBER-SETWHENTRAPOCCURS439™*440™*†SAVEAREAS441™*5442ƒ0000007400000020…TCBXREGSDS.L…8•EXECREGISTERS5443ƒ0000009400000004…TCBXA0ƒDS.L…1•EXEXREGISTERA0444ƒ0000009800000018ŽDS.L…6*445Œ000000B0…TCBSAFE‚EQU†*•EXECREGISTERSO446ƒ000000B000000004…TCBATSK‚DS.L…1•TASKNAMEOFTASKTHATCAUSEDTERMINATIONM447ƒ000000B400000004…TCBASES‚DS.L…1•SESSIONOFTASKTHATCAUSEDTERMINATIONR448ƒ000000B800000008…TCBBERR‚DS.L…2•INFOPLACEDONSTACKBYBUSORADDRESSERROR449™*‰ORG‚$FA!450ƒ000000C00000003AŽDS.B…$FA-*:451ƒ000000FA00000002…TCBSR„DS.W…1•USER'SSTATUSREGISTER6452Œ000000FB…TCBCC„EQU†TCBSR+1USER'SCONDITIONCODES LMOTOROLAM68000ASMVERSION‚1.30IO‚:ƒ0.ˆ.IOHDRV‚.SA09/16/8214:02:47žPAGEƒ7(VERSADOS4.0I/ODRIVERPROCESSEXAMPLE• :453ƒ000000FC00000004…TCBPC„DS.L…1•USER'SPROGRAMCOUNTER&454Œ00000050…TCBROOM‚EQU†$100-TCBSAFE455™*-456ƒ0000010000000004…TCBD0„DS.L…1•USER'SD0!457Œ00000102…TCBRTCD‚EQU†TCBD0+2/458ƒ000001040000001CŽDS.L…7•USER'SD1THRUD7-459ƒ0000012000000004…TCBA0„DS.L…1•USER'SA05460ƒ0000012400000014…TCBA1„DS.L…5•USER'SA1THRUA5-461ƒ0000013800000004…TCBA6„DS.L…1•USER'SA6.462ƒ0000013C00000004…TCBUSPƒDS.L…1•USER'SA7463™*#464™*‡EXCEPTIONMONITORPARAMETERS465™*@466ƒ0000014000000004…TCBEXMƒDS.L…1•EXCEPTIONMONITORTASKNAME?467ƒ0000014400000004…TCBEXMS‚DS.L…1•EXCEPTIONMONITORSESSION=468ƒ0000014800000004…TCBEMMSKDS.L…1•EXCEPTIONMONITORMASKC469ƒ0000014C00000004…TCBEVMSKDS.L…1•EXCEPTIONMONITORVALUEMASKG470ƒ0000015000000004…TCBEVLOCDS.L…1•EXCEPTIONMONITORVALUELOCATION>471ƒ0000015400000004…TCBEVALUDS.L…1•EXCEPTIONMONITORVALUEQ472ƒ0000015800000004…TCBECNT‚DS.L…1•EXCEPTIONMONITORMAXCOUNTOFINSTRUCTIONS473ƒ0000015C00000004ŽDS.L…1474™*7475Œ00000160…TSTBEGINEQU†*•OFFSETTOBEGINNINGOFTST476™*477™*‰TCBATTRBITDEFINITIONS478™*)479Œ0000000F…TSKASYSTE QU†15”SYSTEMTASK5480Œ0000000E…TSKAMRESEQU†14”TASKISMEMORYRESIDENTN481Œ0000000D…TSKACRITEQU†13”TASKISCRITICALTOOS-CRASHSYSTEMIFABORTEDK482Œ0000000B…TSKARELOEQU†11”TASKISRELOCATEABLE(NOMMU)-CONVERTENTRY<483Œ00000007…TSKIUSEMEQU†7•TASKHASCREATEDUSERSEMAPHORE@484Œ00000006…TSKIEXM‚EQU†6•TASKCONTROLLEDBYEXCEPTIONMONITORG485Œ00000005…TSKIEXMTEQU†5•TASKISEXCEPTIONMONITORFORANOTHERTASK:486Œ00000004…TSKIEVCTEQU†4•TASKHASOWNEXCEPTIONVECTOR5487Œ00000003…TSKITVCTEQU†3•TASKHASOWNTRAPVECTORL488Œ00000002…TSKILASTEQU†2•TASKISLASTTASKINSESSION(SETONLYBYTERM)-489Œ00000001…TSKIABRTEQU†1•TASKWASABORTED9490Œ00000000…TSKIUVCTEQU†0•TASKHASCLAIMEDUSERVECTOR491™*492™*‰TCBSTATEBITDEFINITIONS493™*-494Œ0000000F…TSKSDORMEQU†15”TASKISDORMANT-495Œ0000000E…TSKSBLCKEQU†14”TASKISBLOCKED?496Œ0000000D…TSKSSMWTEQU†13”TASKISBLOCKEDONEXECSEMAPHORE7497Œ0000000C…TSKSEVWTEQU†12”TASKISWAITINGFOREVENTM498Œ0000000B…TSKSAKWTEQU†11”TASKISWAITINGFORSERVICEREQACKNOWLEDGEMENTD499Œ0000000A…TSKSWTEMEQU†10”TASKISWAITINGFORCOMMANDFROMEXMON.500Œ00000009…TSKSSUSPEQU†9•TASKISSUSPENDED501™*9502Œ00000007…TSK2TRMPEQU†7•TASKHASPENDINGTERMINATION5503Œ00000006…TSK2RTEXEQU†6•TASKWILLRETURNTOEXEC3504Œ00000005…TSK2EVWKEQU†5•TASKISHEADEDFORASR2505Œ00000004…TSK2NRDYEQU†4•TASKISONREADYLIST4506Œ00000003…TSK2WKWTEQU†3•TASKHASPENDINGWAKEUPN507Œ00000002…TSK2ACK2EQU†2•TERMMESSAGETOSERVERSENTWHILEACKOUTSTANDING508™*=509Œ0000FF00…TSKSWMSKEQU†$FF00‘MASKOFALLTASKWAITSTATES510™* LMOTOROLAM68000ASMVERSION‚1.30IO‚:ƒ0.ˆ.IOHDRV‚.SA09/16/8214:02:47žPAGEƒ8(VERSADOS4.0I/ODRIVERPROCESSEXAMPLE• 511™*…TCBEMMSKBITDEFINITIONS512™*0513Œ00000001…TEMTRAP1EQU†1•TRAP1ISMONITORED4514Œ00000010…TEMBUSEREQU†16”BUSERRORISMONITORED8515Œ00000011…TEMADDEREQU†17”ADDRESSERRORISMONITORED>516Œ00000012…TEMILLEGEQU†18”ILLEGALINSTRUCTIONISMONITORED5517Œ00000013…TEMZDIV‚EQU†19”ZERODIVIDEISMONITORED8518Œ00000014…TEMCHKƒEQU†20”CHKINSTRUCTIONISMONITORED<519Œ00000015…TEMTRAPVEQU†21”TRAPVINSTRUCTIONISMONITORED=520Œ00000016…TEMPRIV‚EQU†22”PRIVILEGEVIOLATIONISMONITORED4521Œ00000017…TEML1010EQU†23”LINE1010ISMONITORED4522Œ00000018…TEML1111EQU†24”LINE1111ISMONITORED523™*;524Œ0000001B…TEMMCNT‚EQU†27”MAXINSTRUCTIONCOUNTSUPPLIEDK525Œ0000001C…TEMTRAC‚EQU†28”SINGLEINSTRUCTIONTRACEREQUESTED(IFVCHG=0)?526Œ0000001C…TEMVEQU‚EQU†28”VALUE=TESTREQUESTED(IFVCHG=1)8527Œ0000001D…TEMVCHG‚EQU†29”VALUECHANGETESTREQUESTED LMOTOROLAM68000ASMVERSION‚1.30IO‚:ƒ0.ˆ.IOHDRV‚.SA09/16/8214:02:47žPAGEƒ9(VERSADOS4.0I/ODRIVERPROCESSEXAMPLE• "530™*CHANNELCONTROLBLOCK(CCB)I531™*ƒCONTAINSCHANNELDESCRIPTIONANDDATAAREASFORDEVICEINDEPENDENT532™*ƒCMRPORTION.533™*534™*M535™*CHANNELMANAGEMENTDATAAREA*****************************************536™* 537¢OFFSETƒ0538™*5539ƒ0000000000000004ŽDS.B…4•'!CCB'DUMPEYECATCHERD540ƒ0000000400000004…CCBALLƒDS.B…4•ALLLINKFORCCBCHAININORDER541™*¨OFALLOCATIONF542ƒ0000000800000004…CCBPOLL‚DS.B…4•LINKTONEXTCCBFORTHISVECTORL543ƒ0000000C00000004…CCBTLNK‚DS.B…4•LINKTONEXTCCBATTACHEDTOSAMETASKX544ƒ0000001000000004…CCBSUBƒDS.B…4•LINKTOCCBOFNEXTSUBORDINATECHANNEL(MEANINGFUL-545™*§ONLYIFCCBSTROPTIONCCBFGSUPISSET)546™*O547™*THEFOLLOWING24BYTESMUSTBECONTIGUOUSINTHECCB(LOADWITHMOVEM.L)?548ƒ0000001400000004…CCBMNEM‚DS.B…4•MNEMONICFORTHISCHANNEL2549ƒ0000001800000001…CCBTYPE‚DS.B…1•CHANNELTYPE=550ƒ0000001900000001…CCBCMCT‚DS.B…1•RESERVED(USEDBYCHPI)H551ƒ0000001A00000004…CCBUSER‚DS.B…4•I/OHANDLERSERVICEVECTORADDRESSC552ƒ0000001E00000004…CCBRTNI‚DS.B…4•INTERRUPTENTRYPOINTADDRESSD553ƒ0000002200000004…CCBCHBƒDS.B…4•BASEOFMEMORYMAPPEDI/OSPACEU554ƒ0000002600000002…CCBMMEƒDS.B…2•0-R ELNUMBEROFCONSECBYTESINMEMMAPPEDSPACE=555ƒ0000002800000001…CCBVECT‚DS.B…1•INTERRUPTVECTORNUMBERQ556ƒ0000002900000001…CCBPPRIODS.B…1•POLLINGPRIORITY(HARDWAREINTERRUPTPRIO)H557ƒ0000002A00000001…CCBSPRIODS.B…1•SOFTWAREPRIO(POSITIONINCHAIN)E558ƒ0000002B00000001…CCBPECT‚DS.B…1•NUMBEROFPOLLINGTABLEENTRIES559™*U560ƒ0000002C00000008…CCBRQST‚DS.B…8•TASKNAMEANDSESSIONCODETHATORIGINALLYMADE561™*A562ƒ0000003400000004…CCBRQSTADS.B…4•ADDRESSOFREQUESTOR'STCB563™*8564ƒ0000003800000001…CCBKEYƒDS.B…1•REQUESTOR'SI/OKEY;565ƒ0000003900000001…CCBRTNƒDS.B…1•RETURNOPTION(BIT0):566™*§0=PUTRETURNSTATUSIN567™*ªBUFFER,ISSUEWAKEUP568™*§1=PUTRETURNSTATUSON 569™*ªASQ570™*:571ƒ0000003A00000001…CCBASQL‚DS.B…1•MAXASQENTRYLENGTH&572ƒ0000003B00000001ŽDS.B…1•RESERVEDN573ƒ0000003C00000004…CCBSVVC‚DS.B…4•SERVICEVECTORFORRETURNFROMINTERRUPT@574ƒ0000004000000002…CCBSR„DS.B…2•UNMASKSTATUSREGISTERVALUE?575ƒ0000004200000002…CCBISRƒDS.B…2•MASKSTATUSREGISTERVALUE4576ƒ0000004400000004…CCBVADR‚DS.B…4•VECTORADDRESS8577ƒ0000004800000002…CCBSTRƒDS.B…2•CCBSTATUSREGISTERH578ƒ0000004A00000006…CCBJSRƒDS.B…6•HOLDSJSRINSTRUCTIONFORVECTORING;579Œ00000050…CCBIOHƒEQU†*•I/OHANDLERPARAMETERBLOCKINFO=580ƒ0000005000000004…CCBTASKADS.B…4•ADDRESSOFATTACHETCBK581ƒ0000005400000008…CCBTASK‚DS.B…8•ATTACHEETASKNAMEANDSESSIONNUMBER582™*Z583ƒ0000005C00000000…CCBRESV1DC.L…0•FUTUREUSEBUFFERBETWEENCCBINDEPENDENT/DEPENDENTZ584ƒ0000006000000000…CCBRESV2DC.L…0•FUTUREUSEBUFFERBETWEENCCBINDEPENDENT/DEPENDENTZ585ƒ0000006400000000…CCBRESV3DC.L…0•FUTUREUSEBUFFERBETWEENCCBINDEPENDENT/DEPENDENTZ586ƒ0000006800000000…CCBRESV4DC.L…0•FUTUREUSEBUFFERBETWEENCCBINDEPENDENT/DEPENDENTZ587ƒ0000006C00000000…CCBRESV5DC.L…0•FUTUREUSEBUFFERBETWEENCCBINDEPENDENT/DEPENDENT MMOTOROLAM68000ASMVERSION‚1.30IO‚:ƒ0.ˆ.IOHDRV‚.SA09/16/8214:02:47žPAGE‚10(VERSADOS4.0I/ODRIVERPROCESSEXAMPLE• 3588Œ00000070…CCBDDPƒEQU†*•DEVICEDEPENDENTPORTION589™*590™*591™*2592™*POLLINGTABLEANDPOLLINGTABLEENTRYCOUNT593™*$594™*žSTARTOFPOLLINGTABLEINCCBC595Œ00000004…CCBMCNT‚EQU†4•MAXIMUMNUMBEROFPOLLINGTABLEENTRIESM596ƒ0000007000000020…CCBPBASEDS.B…CCBMCNT*8RESERVEREMAININGSPACEINCCB597™*598™*'599™*POLLINGTABLERESIDESWITHINCCB>600™*ƒCONTAINS8-BYTEENTRIESTOALLOWHANDLINGMORETHANONE,601™*ƒINTERRUPTTYPEFROMASINGLECHANNEL.602™* 603¢OFFSETƒ09604ƒ0000000000000002…CCBPOFF‚DS.B…2•POLLINGBYTEOFFSET2605ƒ0000000200000001…CCBMASK‚DS.B…1•POLLINGMASK@606ƒ0000000300000001…CCBPTST‚DS.B…1•POLLING=OR<>TESTVALUE7607ƒ0000000400000002…CCBRESO‚DS.B…2•RESETBYTEOFFSET1608ƒ0000000600000001…CCBRESV‚DS.B…1•RESETVALUE3609ƒ0000000700000001…CCBRESP‚DS.B…1•RESETOPTIONS 610 611612™*613™*CCBSTR(BITFLAGS)614™*BIT”MEANINGIFSET2615™*---”---------------------------------------1616Œ0000000F…CCBFGATHEQU†15”CHANNELISATTACHED0617Œ00000008…CCBFGDIREQU†8•EXCLUSIVEVECTORINGM618Œ00000002…CCBFGSUPEQU†2•THISISASUPERVISORCHANNEL;THEADDRESSOFTHE-619™*§CCBOFTHEFIRSTCHANNELINTHESUBOR-!620™*§DINATECHAINISINCCBSUB.0621Œ00000001…CCBFGOFFEQU†1•CHANNELISOFF-LINEI622Œ00000000…CCBFGSYSEQU†0•ONLYSYSTEMTASKSMAYATTACHTOTHISCHANNEL 623 624625™*626™*CCBRESP--RESETOPTIONS627™*+628Œ00000000…CCBRSWƒEQU†0•WRITERESETBYTE*629Œ00000001…CCBRSRƒEQU†1•READRESETBYTE MMOTOROLAM68000ASMVERSION‚1.30IO‚:ƒ0.ˆ.IOHDRV‚.SA09/16/8214:02:47žPAGE‚11(VERSADOS4.0I/ODRIVERPROCESSEXAMPLE• 633™**634™*”**************635™*”*‚03/26/82‚*636™*”**************637™*T638™*------------------------------------------------------------------------------639™*640™*B641™*ˆERRORMESSAGEHANDLEREQUATESFORNON-TRAPRELATEDMESSAGES642™*643™*’ASOF8/31/81644™*645™*+646Œ0 0000100…EM_NVEƒEQU†$100’INVALIDENTRYB647Œ00000101…EM_SCBO‚EQU†$101’SUBSTITUTIONCAUSEDBUFFEROVERFLOW1648Œ00000102…EM_NOARGEQU†$102’NOARGUMENTFOUND,649Œ00000103…EM_NVOƒEQU†$103’INVALIDOPTION3650Œ00000104…EM_NOMEMEQU†$104’INSUFFICIENTMEMORY/651Œ00000105…EM_OPTCFEQU†$105’OPTIONCONFLICT8652Œ00000106…EM_CLSE‚EQU†$106’COMMANDLINESYNTAXERROR?653Œ00000107…EM_NVDEVEQU†$107’INVALIDDEVICENAMEFORREQUEST654™*655™*T656™*-----------------------------------------------------------------------------*657™*ˆDATASTRUCTURESANDEQUATESFORI/O658™*659™*)660™*FHSPARAMETERBLOCKDATASTRUCTURE661™*$662¢OFFSETƒ0•STARTWITHZEROOFFSET,663ƒ0000000000000002…FHSCMDƒDS.W…1•COMMAND,664ƒ0000000200000002…FHSOPTƒDS.W…1•OPTIONS+665ƒ0000000400000001…FHSSTAƒDS.B…1•STATUS8666ƒ0000000500000001…FHSLUNƒDS.B…1•LOGICALUNITNUMBER0667ƒ0000000600000004…FHSVOLƒDS.L…1•VOLUMENAME;668Œ0000000A…FHSDLNƒEQU†*•LENGTHFORASSIGNDEFAULTVOLUME0669ƒ0000000A00000002…FHSUSNƒDS.W…1•USERNUMBER1670ƒ0000000C00000008…FHSCLGƒDS.L…2•CATALOGNAME.671ƒ0000001400000008…FHSFILƒDS.L…2•FILENAME.672ƒ0000001C00000002…FHSEXTƒDS.W…1•EXTENSION-673ƒ0000001E00000002…FHSGENƒDS.W…1•RESERVED7674ƒ0000002000000001…FHSWCDƒDS.B…1•WRITEPROTECTCODE6675ƒ0000002100000001…FHSRCDƒDS.B…1•READPROTECTCODE:676ƒ0000002200000002…FHSLRLƒDS.W…1•LOGICALRECORDLENGTHN677ƒ0000002400000004…FHSSIZƒDS.L…1•CONTIGUOUSFILESIZE/DIR.ENTRYPOINTER4678¢OFFSETƒFHSSIZREDEFINEDFORNONCONTIGUOUSFILES+679ƒ0000002400000001…FHSRESƒDS.B…1•UNUSED>680ƒ0000002500000001…FHSKEYƒDS.B…1•KEYLENGTH(0IFNOKEYS)-681ƒ0000002600000001…FHSFABƒDS.B…1•FABSIZE4682ƒ0000002700000001…FHSDATƒDS.B…1•DATABLOCKSIZE0683Œ00000028…FHSBLNƒEQU†*•LENGTHOFPARAMBLOCK/684™*REDEFINEDFHSBLOCKFORCHANGELUREQUEST685¢OFFSETƒFHSLUN0686ƒ0000000500000001…FHSLUAƒDS.B…1•CHANGELUA0687ƒ0000000600000001…FHSLUBƒDS.B…1•CHANGELUB&688ƒ0000000700000001ŽDS.B…1•RESERVED6689ƒ0000000800000004…FHSTSKƒDS.L…1•CHANGELUTASKID;690ƒ0000000C00000004…FHSSESƒDS.L…1•CHANGELUTASKSESSION MMOTOROLAM68000ASMVERSION‚1.30IO‚:ƒ0.ˆ.IOHDRV‚.SA09/16/8214:02:47žPAGE‚12(VERSADOS4.0I/ODRIVERPROCESSEXAMPLE• B691Œ00000010…FHSCLNƒEQU†*•LENGTHOFPARAMETERBLOCKFORCHANGELU4692™*REDEFINEDFHSBLOCKFORFETCHDEVICEMNEMONICS693¢OFFSETƒFHSVOL>694ƒ0000000600000004…FHSPTRƒDS.L…1•POINTERTORETURNEDINFO.C695ƒ0000000A00000004…FHSLENƒDS.L…1•LENGTHOFRETURNEDINFO.BLOCK<696Œ0000000E…FHSFLNƒEQU†*•LENGTHFORFETCHDEVICEMNEMONICS:697™*ADDITIONALFHSPARAMETERSFORSHAREDSEGMENTREQUEST698¢OFFSETƒFHSBLNE699ƒ0000002800000004…FHSSADƒDS.L…1•SEGMENTSTARTINGLOGICALADDRESSA700ƒ0000002C00000004…FHSEADƒDS.L…1•SEGMENTENDINGLOGICALADDR.1701ƒ0000003000000004…FHSSNMƒDS.L…1•SEGMENTNAMEK702Œ00000034…FHSNLNƒEQU†*•LENGTHOFPARM.BLOCKFORSHAREDSEGMENTREQUEST703™*704™*FHSCMDEQUATES(16BITS)705™*5706Œ00000080…FHALLOƒEQU†$80“ALLOCATE(CREATEAFILE)*707Œ00000040…FHASGNƒEQU†$40“ASSIGN(OPEN)5708Œ00000020…FHCHNGƒEQU†$20“CHANGEACCESSPERMISSION#709Œ00000010…FHRENMƒEQU†$10“RENAME#710Œ00000008…FHPROTƒEQU†$8”PROTECT!711Œ00000004…FHCLOSƒEQU†$4”CLOSE"712Œ00000002…FHDELTƒEQU†$2”DELETE&713Œ00000001…FHCKPTƒEQU†$1”CHECKPOINT1714Œ00000180…FHRATTƒEQU†$180’RETRIEVEATTRIBUTES3715Œ00000140…FHFDENƒEQU†$140’FETCHDIRECTORYENTRY4716Œ00000120…FHFDMNƒEQU†$120’FETCHDEVICEMNEMONICS2717Œ00000110…FHCHLUƒEQU†$110’CHANGELUASSIGNMENT1718Œ00000108…FHFDV„EQU†$108’FETCHDEFAULTVOLUME-719Œ00000280…SPLCANC‚EQU†$280’CANCELSPOOLER'720Œ00000240…SPLCONT‚EQU†$240’CONTINUE$721Œ00000220…SPLFORM‚EQU†$220’FORMS$722Œ00000210…SPLPRNT‚EQU†$210’PRINT%723Œ00000208…SPLCOPY‚EQU†$208’COPIES+724Œ00000204…SPLQUEƒEQU†$204’DISPLAYQUEUE1725Œ00008001…FHDVOLƒEQU†$8001‘SETDEFAULTVOLUME726™*!727™*ˆEQUATESFORLUASSIGNMENT S728™*.729Œ00000005…CDFLUNƒEQU†5•CMDDEVICE/FILELUN.730Œ00000006…LDFLUNƒEQU†6•LOGDEVICE/FIELLUN731™*732™*FHSOPTEQUATES(16BITS)(733™*ACCESSPERMISSIONFIELD(BITS0-2)734™*7735Œ00000007…FAPBITƒEQU†$7”BITSFORACCESSPERM.FIELD%736Œ00000000…FOPPR„EQU†0•PUBLICREAD(737Œ00000001…FOPER„EQU†1•EXCLUSIVEREAD&738Œ00000002…FOPPW„EQU†2•PUBLICWRITE)739Œ00000003…FOPEW„EQU†3•EXCLUSIVEWRITE-740Œ00000004…FOPPRPW‚EQU†4•PUBLICREAD-WRITE8741Œ00000005…FOPPREW‚EQU†5•PUBLICREAD,EXCLUSIVEWRITE8742Œ00000006…FOPERPW‚EQU†6•EXCLUSIVEREAD,PUBLICWRITE0743Œ00000007…FOPEREW‚EQU†7•EXCLUSIVEREAD-WRITE744™*745™*OVERWRITEFIELD(BIT3)*746Œ00000008…FOPOVRT‚EQU†8•OVERWRITEFILE747™*748™*TRUNCATEFIELD(BIT4) MMOTOROLAM68000ASMVERSION‚1.30IO‚:ƒ0.ˆ.IOHDRV‚.SA09/16/8214:02:47žPAGE‚13(VERSADOS4.0I/ODRIVERPROCESSEXAMPLE• 8749Œ00000010…FOPTRNƒEQU†$10“TRUNCATEFILEATCLOSETIME750™*)751™*ALLOCATEDATABUFFERFIELD(BIT5)8752Œ00000020…FOPABFƒEQU†$20“ALLOCATESHAREDDATABUFFER753™*754™*POSITIONFIELD(BIT6)8755Œ00000000…FOPBEGƒEQU†0•POSITIONATBEGINNINGOFFILE4756Œ00000040…FOPENDƒEQU†$40“POSITIONATENDOFFILE&757™*RESERVEDFIELD(BITS7NOTUSED)758™*!759™*FILETYPEFIELD(BITS8-10)0760Œ00000700…FFTBITƒEQU†$700’BITSFORFILETYPE%761Œ00000000…FOPCONƒEQU†0•CONTIGUOUS2762Œ00000100…FOPSEQƒEQU†$100’SEQUENTIAL(FRL/VRL)Q763Œ00000200…FOPISKƒEQU†$200’KEYEDRECORD,INDEXEDSEQUENTIAL,NODUPLICATEKEYS:764Œ00000300…FOPISDƒEQU†$300’",",DUPLICATEKEYSALLOWED765™*I766Œ00000800…FOPADRƒEQU†$800’RETURNPHY.ADRFORSHAREDDATABUFFERREQ.767™*(768™*USERATTRIBUTESFIELD(BITS15-12)7769Œ0000F000…FUSBITƒEQU†$F000‘BITSFORUSERATTRIBUTES770™*771™*CHANGELUOPTIONS"772Œ00000000…FOPSLUƒEQU†0•SENDLU%773Œ00000001…FOPRLUƒEQU†1•RECEIVELU.774Œ00008000…FOPKEPƒEQU†$8000‘KEEPASSIGNMENT775™**776™*SETANDFETCHDEFAULTVOLUMEOPTIONS0777Œ00000000…FOPDSYƒEQU†0•SYSTEMVOLUMEDEFAULT$778Œ00000001…FOPDTMƒEQU†1•TEMPORARY"779Œ00000002…FOPDSPƒEQU†2•SPOOLER780Œ00000003…FOPDUSƒEQU†3•USER781™*$782™*FETCHDEVICEMNEMONICSOPTIONS5783Œ00000004…FOPFRAƒEQU†4•FETCHRANDOMACCESDEVICES3784Œ00000005…FOPFINƒEQU†5•FETCHINTERATCIEDEVICES0785Œ00000006…FOPFPRƒEQU†6•FETCHPRINTERDEVICES786™*787™*FHSSTAEQUATES(8BITS)788™*$789Œ00000000…FSTAOKƒEQU†$0”NOERROR790™*'791™*ERRORCODE1ISRESERVEDFOREXEC792™*(SERVERDOESNOTEXIST)793™*+794Œ00000002…FSTAIFƒEQU†$2”INVALIDCOMMAND1795Œ00000003…FSTAILU‚EQU†$3”INVALIDLOGICALUNIT)796Œ00000004…FSTAVOL‚EQU†$4”VOLUMEERROR0797Œ00000005…FSTADNM‚EQU†$5”DUPLICATEFILENAME1798Œ00000006…FSTAFDƒEQU†$6”FILEDESCRIPTORERROR.799Œ00000007…FSTAPCƒEQU†$7”PROTECTCODEERROR/800Œ00000008…FSTARLƒEQU†$8”RECORDLENGTHERROR0801Œ00000009…FSTASEƒEQU†$9”SHAREDSEGMENTERROR8802Œ0000000A…FSTADSƒEQU†$A”INSUFFICIENTDIRECTORYSPACE3803Œ0000000B…FSTAAPƒEQU†$B”ACCESSPERMISSIONERROR5804Œ0000000C…FSTASSƒEQU†$C”INSUFFICIENTSYSTEMSPACE.805Œ0000000D…FSTAASƒEQU†$D”INVALIDASSIGNMENT/806Œ0000000E…FSTADTƒEQU†$E”INVALIDDEVICETYPE MMOTOROLAM68000ASMVERSION‚1.30IO‚:ƒ0.ˆ.IOHDRV‚.SA09/16/8214:02:47žPAGE‚14(VERSADOS4.0I/ODRIVERPROCESSEXAMPLE• +807Œ0000000F…FSTABOƒEQU†$F”BUFFEROVERFLOW.808Œ00000010…FSTATNƒEQU†$10“INVALIDTASKNAME4809Œ00000011…FSTAADD‚EQU†$11“INVALIDBUFFERADDRESS.810Œ00000012…FSTAFTƒEQU†$12“INVALIDFILETYPE/811Œ00000013…FSTAIEƒEQU†$13“INTERNALFHSERROR8812Œ00000014…FSTAIPƒEQU†$14“INVALIDPARAMBLOCKADDRESS4813Œ00000015…FSTADLƒEQU†$15“DATABLOCKLENGTHERROR'814Œ00000016…FSTASZƒEQU†$16“SIZEERROR4815Œ00000017…FSTANNM‚EQU†$17“NON-EXISTENTFILENAME.816Œ00000018…FSTAEOD‚EQU†$18“ENDOFDIRECTORY-817Œ00000019…FSTAKYƒEQU†$19“KEYLENGTHERROR-818Œ0000001A…FSTAFLƒEQU†$1A“FABLENGTHERROR8819Œ0000001B…FSTANDV‚EQU†$1B“DEFAULTVOLUMENOTDEFINED@820Œ0000001C…FSTAWSƒEQU†$1C“WRONGSTATEFORSPOOLS TARTCOMMANDD821Œ0000001D…FSTAIUƒEQU†$1D“SPOOLCOMMANDS-INVALIDUSER#SPECIFIED822™**823™*FETCHDIRECTORYENTRYRETURNEDINFO.824™*$825¢OFFSETƒ0•STARTWITHZEROOFFSET/826ƒ0000000000000002…FDUSN„DS.W…1•USERNUMBER+827ƒ0000000200000008…FDCLG„DS.L…2•CATALOG-828ƒ0000000A00000008…FDFIL„DS.L…2•FILENAME-829ƒ0000001200000002…FDEXT„DS.W…1•EXTENSION&830ƒ0000001400000002ŽDS.W…1•RESERVED4831ƒ0000001600000004…FDFS…DS.L…1•FILESTARTINGPSN2832ƒ0000001A00000004…FDFE…DS.L…1•FILEENDINGPSNE833ƒ0000001E00000004…FDEOF„DS.L…1•ENDOFFILELOGICALSECTORNUMBERE834ƒ0000002200000004…FDEOR„DS.L…1•ENDOFFILELOGICALRECORDNUMBER5835ƒ0000002600000001…FDWCD„DS.B…1•WRITEACCESSCODE5836ƒ0000002700000001…FDRCD„DS.B…1•READACCESSSCODE.837ƒ0000002800000001…FDATT„DS.B…1•ATTRIBUTESU838ƒ0000002900000001…FDLBZ„DS.B…1•LASTDATABLOCKSIZE(FILETRUNCATEDIF<>FDDAT)M839ƒ0000002A00000002…FDLRL„DS.W…1•RECORDSIZE(0=>VARIABLERECORDLENGTH)&840ƒ0000002C00000001ŽDS.B…1•RESERVED;841ƒ0000002D00000001…FDKEY„DS.B…1•KEYSIZE(0=>NOKEYS),842ƒ0000002E00000001…FDFAB„DS.B…1•FABSIZE3843ƒ0000002F00000001…FDDAT„DS.B…1•DATABLOCKSIZE6844ƒ0000003000000002…FDDTECƒDS.W…1•DATEFILECREATED<845ƒ0000003200000002…FDDTEAƒDS.W…1•DATEFILELASTASSIGNED&846ƒ0000003400000008ŽDS.B…8•RESERVED1847Œ0000003C…FDLEN„EQU†*•FETCHDIR.ENTRYLENGTH848™*+849™*FETCHDEVICEMNEMONICSRETURNEDINFO.850™* 851¢OFFSETƒ04852ƒ0000000000000004…FDVDEVƒDS.L…1•DEVICEMNEMONIC.853ƒ0000000400000004…FDVVOLƒDS.L…1•VOLUMEID-854ƒ0000000800000001…FDVVALƒDS.B…1•RESERVED2855ƒ0000000900000001…FDVSTSƒDS.B…1•DEVICESTATUS7856Œ0000000A…FDVLENƒEQU†*•FETCHDEVICEMNEOMICSLENGTH MMOTOROLAM68000ASMVERSION‚1.30IO‚:ƒ0.ˆ.IOHDRV‚.SA09/16/8214:02:47žPAGE‚15(VERSADOS4.0I/ODRIVERPROCESSEXAMPLE• 858™*$859™*IOSPARAMETERBLOCKSTRUCTURE860™*$861¢OFFSETƒ0•STARTWITHZEROOFFSET-862ƒ0000000000000002…IOSFCTƒDS.W…1•FUNCTION,863ƒ0000000200000002…IOSOPTƒDS.W…1•OPTIONS+864ƒ0000000400000001…IOSSTAƒDS.B…1•STATUS8865ƒ0000000500000001…IOSLUNƒDS.B…1•LOGICALUNITNUMBER>866Œ00000006…IOSSRVƒEQU†*•SERVICEADDRESSFORATTENTIONEVENT&867ƒ0000000600000001ŽDS.B…1•RESERVEDD868ƒ0000000700000001…IOSPKLƒDS.B…1•RESERVEDFORPARTIALKEYLENGTHE869ƒ0000000800000004…IOSRRNƒDS.L…1•RANDOMRECORDNUMBER:LRNORLSN9870ƒ0000000C00000004…IOSSADƒDS.L…1•STARTBUFFERADDRESS7871ƒ0000001000000004…IOSEADƒDS.L…1•ENDBUFFERADDRESS7872ƒ0000001400000004…IOSLENƒDS.L…1•LENGTHOFTRANSFER7873ƒ0000001800000004…IOSCADƒDS.L…1•COMPLETIONADDRESS0874Œ0000001C…IOSBLNƒEQU†*•LENGTHOFPARAMBLOCK875™*$876™*IOSPARAMETERBLOCKSTRUCTURE*Ÿ¤¨¬°´¸¼ÀÄÈÌÐÔØÜ1à3ä1èìðôøü )877™*ˆFORCONFIGUREANDSTATUSCOMMANDS.878™*879¢OFFSETƒIOSRRN7880ƒ0000000800000004…IOSDBPƒDS.L…1•DATABLOCKPOINTER'881Œ0000000C…IOSCSLƒEQU†*•LENGTHOFPB 882883™*F884™*‚IOSConfigurationBlockstructureforCONFIGURE,CHANGEDEFAULT0885™*‚CONFIGURATION,&REQUESTSTATUScommands."886™*‚Device-independentportion:887™* 888¢OFFSETƒ02889ƒ0000000000000001…IOSDSTƒDS.B…1•DEVICESTATUSM890Œ00000000…IOSCECƒEQU†IOSDSTCONFIGURATIONERRORCODE(returnedinlieuof-891™*§devicestatusifISTACNFerrorstatus)1892ƒ0000000100000001…IOSCTPƒDS.B…1•CHANNELTYPE0893ƒ0000000200000001…IOSDTPƒDS.B…1•DEVICETYPE0894ƒ0000000300000001…IOSDRCƒDS.B…1•DRIVERCODE4895ƒ0000000400000002…IOSATMƒDS.W…1•ATTRIBUTESMASK4896ƒ0000000600000002…IOSPRMƒDS.W…1•PARAMETERSMASK4897ƒ0000000800000002…IOSATWƒDS.W…1•ATTRIBUTESWORD2898ƒ0000000A00000002…IOSRECƒDS.W…1•RECORDLENGTH0899ƒ0000000C00000004…IOSRSZƒDS.L…1•DEVICESIZE2900ƒ0000001000000004…IOSWTOƒDS.L…1•WRITETIMEOUT 1901ƒ0000001400000004…IOSRTOƒDS.L…1•READTIMEOUT9902Œ00000018…IOSDDCƒEQU†*•DEVICEDEPENDENTCONFIGURATION 903904™*K905™*‚BitequatesforIOSPRMfordevice-independentpartofconfiguration.906™*=907Œ00000000…IOSRECB‚EQU†0•Parameter#forIOSRECparameter. 908Œ00000001…IOSRSZB‚EQU†1•etc.909Œ00000002…IOSWTOB‚EQU†2910Œ00000003…IOSRTOB‚EQU†3 911912™*E913™*‚Device-dependentportionofconfigurationblockforterminals:914™*915¢OFFSETƒIOSDDC MMOTOROLAM68000ASMVERSION‚1.30IO‚:ƒ0.ˆ.IOHDRV‚.SA09/16/8214:02:47žPAGE‚16(VERSADOS4.0I/ODRIVERPROCESSEXAMPLE• 4916ƒ0000001800000001…IOSXOFƒDS.B…1•X-OFFCHARACTER3917ƒ0000001900000001…IOSXONƒDS.B…1•X-ON‚CHARACTER?918ƒ0000001A00000001…IOSBRCƒDS.B…1•BREAKEQUIVALENTCHARACTER=919ƒ0000001B00000001…IOSDOPƒDS.B…1•DISCARDOUTPUTCHARACTER;920ƒ0000001C00000001…IOSRLNƒDS.B…1•REPRINTLINECHARACTER:921ƒ0000001D00000001…IOSCLCƒDS.B…1•CANCELLINECHARACTER5922ƒ0000001E00000004…IOSRTVƒDS.L…1•READTERMINATORS7923ƒ0000002200000004…IOSEOLƒDS.L…1•ENDOFLINESTRING3924ƒ0000002600000001…IOSBRTƒDS.B…1•BAUDRATECODE7925ƒ0000002700000001…IOSNLSƒDS.B…1•NULLPADDINGCOUNT5926ƒ0000002800000001…IOSTRCƒDS.B…1•TERMINATORCLASSF927ƒ0000002900000001…IOSTCDƒDS.B…1•TERMINALCODE(SEEEQUATESBELOW)&928ƒ0000002A00000006ŽDS.B…6•RESERVEDD929Œ00000030…IOSTLNƒEQU†*•LENGTHOFDATABLOCKFORTERMINALDEVICES 930931™*;932™*ˆCONFIGURATIONPARAMETERSSPECIFICTOPRINTERDEVICES933™*934¢OFFSETƒIOSDDCX935ƒ0000001800000002…IOSLRLƒDS.W…1•LOGICALRECORDLENGTH<=IOSREC(PHYSICALREC.LEN.)N936ƒ0000001A00000001…IOSELCƒDS.B…1•ENDOFLINECHARACTER(WITHAUTOLFONLY)'937ƒ0000001B0000000FŽDS.B…15”RESERVEDC938Œ0000002A…IOSPLNƒEQU†*•LENGTHOFDATABLOCKFORPRINTERDEVICES939™*S940™*‚BitequatesforIOSDST(devicestatus);alsoforXRPDSTinchannelcommands.941™*A942Œ00000000…XDSBRKƒEQU†0•BREAKCONDITION(onlyusedinternally).943Œ00000005…XDSWPBƒEQU†5•WRITE-PROTECTEDBIT/944Œ00000007…XDSNRBƒEQU†7•DEVICENOTREADYBIT945™*5946™*‚EquatesforIOSCEC(configurationerrorcode).+947™*‚$01-$3F‚errorscommontoalldrivers5948™*‚$40-$7F‚errorsspecifictoaparticulardriver949™*‚$80-$FF‚reserved950™*J951Œ00000001…CECCDOƒEQU†1•ACONFIGUREspecifiedanattributeorparameter2952™*ŸwhichisrecognizedbyCHANGEDEFAULTonly.H953Œ00000002…CECUAPƒEQU†2•Anattemptwasmadetochangeanunrecognized954™*Ÿattributeorparameter.4955™*„(IOSCECequatesspecifictoterminaldevices)956™*F957Œ00000040…CECTTIƒEQU†$40“Terminationwouldbeimpossiblegiventhe958™*Ÿsuggestedconfiguration.L959Œ00000041…CECTIMƒEQU†$41“Modemoperationandsomeincompatibleparameter#960™*Ÿorattributewerespecified.L961Œ00000042…CECTBRƒEQU†$42“Thedevicecannotbesoftware-configuredtothe962™*Ÿspecifiedbaudrate.963™*964™*3965™*…(IOSCECequatesspecifictoprinterdevices)966™*A967Œ00000040…CECPNIƒEQU†$40“NULLisinvalidforanEOLcharacterK968Œ00000041…CECPRLZ‚EQU†$41“Logicaland/orphysicalrecordlengthiszeroL969Œ00000042…CECPLGP‚EQU†$42“Logicalrecordlength>physicalrecordlengthN970™*‚EquatesforIOSCTP(channeltype);alsoforXIOCTPinchannelcommands.971™*&972Œ00000001…XTACIAƒEQU†1•ACIADEVICE,973Œ00000002…XTPIAAƒEQU†2•PIAA-SIDEDEVICE MMOTOROLAM68000ASMVERSION‚1.30IO‚:ƒ0.ˆ.IOHDRV‚.SA09/16/8214:02:47žPAGE‚17(VERSADOS4.0I/ODRIVERPROCESSEXAMPLE• ,974Œ00000003…XTPIABƒEQU†3•PIAB-SIDEDEVICE&975Œ00000004…XTCRTCƒEQU†4•CRTCDEVICE&976Œ00000005…XTSSDAƒEQU†5•SSDADEVICE&977Œ00000006…XTADLCƒEQU†6•ADLCDEVICE%978Œ00000010…XTDIPCƒEQU†$10“DISKIPC%979Œ00000011…XTMIPCƒEQU†$11“MCCMIPC)980Œ00000020…XTDSASƒEQU†$20“SASICHANNEL981™*¨PRINTERPORTS:$50-$5F)982Œ00000050…XTPEXMƒEQU†$50“PIAEXORMACS*983Œ00000051…XTPVM1ƒEQU†$51“VM01PARALLEL,984Œ00000052…XTPRTLƒEQU†$52“RTTLIOPARALLEL985™*¨SERIALPORTS:$60-$6F 0986Œ00000060…XTS7A2ƒEQU†$60“7201A-SIDEONVM020987Œ00000061…XTS7B2ƒEQU†$61“7201B-SIDEONVM020988Œ00000062…XTS7A8ƒEQU†$62“7201A-SIDEONVM800989Œ00000063…XTS7B8ƒEQU†$63“7201B-SIDEONVM800990Œ00000064…XTS7ARƒEQU†$64“7201A-SIDEONRSIO0991Œ00000065…XTS7BRƒEQU†$65“7201B-SIDEONRSIO992™*M993™*‚EquatesforIOSDTP(devicetype);alsoforXRPDTPinchannelcommands.994™*&995Œ00000001…XDSFDKƒEQU†1•FLOPPYDISK%996Œ00000002…XDSRDKƒEQU†2•RIGIDDISK$997Œ00000003…XDSACIA‚EQU†3•TERMINAL"998Œ00000004…XDSPRTƒEQU†4•PRINTER)999Œ00000005…XDSTAPE‚EQU†5•MAGNETICTAPE1000™*(1001™*‚EquatesforIOSDRC(drivercode).1002™*A1003Œ00000001…IODMPSC‚EQU†1•Asyncterminaldriverfor7201ports.B1004Œ00000002…IODLPRT‚EQU†2•DriverforlocalCentronicsprinteron01005™*£EXORmacsDEBUGorMVME410onI/Ochannel.C1006Œ00000003…IODSASI‚EQU†3•DriverforSASIchannelonI/Ochannel.(1007Œ00000020…IODIPCƒEQU†$20“IPCdriver.1008™*71009™*‚BitequatesforIOSATMandIOSATWforterminals.1010™*%1011Œ00000000…IOAHCPY‚EQU†0•HARDCOPY$1012Œ00000001…IOAXCTL‚EQU†1•XON/XOFF%1013Œ00000002…IOABITS‚EQU†2•7BIT/8BIT%1014Œ00000003…IOASTPB‚EQU†3•STOPBITS"1015Œ00000004…IOAUSEP‚EQU†4•PARITY+1016Œ00000005…IOAPRTY‚EQU†5•ODD/EVENPARITY,1017Œ00000006…IOAECHO‚EQU†6•HALF/FULLDUPLEX&1018Œ00000007…IOATAHD‚EQU†7•TYPEAHEAD11019Œ00000008…IOATFUL‚EQU†8•FULLBUFFERTERMINATE&1020Œ00000009…IOAPNUL‚EQU†9•PASSNULLS11021Œ0000000A…IOAMODM‚EQU†10”MODEM/DIRECTCONNECT*1022Œ0000000B…IOAOFFH‚EQU†11”MODEMOFFHOOK1023™*,1024™*‚BitequatesforIOSPRMforterminals.1025™*=1026Œ00000004…IOSXOFB‚EQU†4•Parameter#forIOSXOFparameter. 1027Œ00000005…IOSBRCB‚EQU†5•etc.1028Œ00000006…IOSDOPB‚EQU†61029Œ00000007…IOSRLNB‚EQU†71030Œ00000008…IOSCLCB‚EQU†81031Œ00000009…IOSRTVB‚EQU†9 MMOTOROLAM68000ASMVERSION‚1.30IO‚:ƒ0.ˆ.IOHDRV‚.SA09/16/8214:02:47žPAGE‚18(VERSADOS4.0I/ODRIVERPROCESSEXAMPLE• 1032Œ0000000A…IOSEOLB‚EQU†101033Œ0000000B…IOSBRTB‚EQU†111034Œ0000000C…IOSNLSB‚EQU†121035Œ0000000D…IOSTRCB‚EQU†131036Œ0000000E…IOSTCDB‚EQU†141037™*)1038™*‚EquatesforIOSTCD(terminalcode)1039™*‚$00-$7F‚reserved1040™*‚$80-$FF‚user-defined1041™*)1042Œ00000000…TCDX155‚EQU†0•EXORterm155.1043™*+1044™*‚BitequatesforIOSATWforprinters.1045™**1046Œ00000000…IOALNFD‚EQU†0•AUTOLINEFEED:1047Œ00000001…IOASNFF‚EQU†1•SUPRESSFORMFEEDAFTERASSIGNA1048Œ00000002…IOATPLL‚EQU†2•TRUNCATEPRINTATLOGICALLINELENGTH1049™**1050™*‚BitequatesforIOSPRMforprinters1051™*G1052Œ00000004…IOSLRLB‚EQU†4•Parameternumberforlogicalrecordlength.K1053Œ00000005…IOSELCB‚EQU†5•Parameternumberfortheend-of-linecharacter.1054™*#1055™*IOSDATABLOCKSTRUCTUREFOR*1056™*‰DISKCONFIGUREANDSTATUSCOMMANDS.1057™*1058¢OFFSETƒIOSDDC61059ƒ0000001800000001…IOSSPTƒDS.B…1•SECTORSPERTRACK11060ƒ0000001900000001…IOSHDSƒDS.B…1•NO.OFHEADS21061ƒ0000001A00000002…IOSTRKƒDS.W…1•NO.OFTRACKS61062ƒ0000001C00000001…IOSILVƒDS.B…1•INTERLEAVEFACTOR21063ƒ0000001D00000001…IOSSOFƒDS.B…1•SPIRALOFFSET'1064ƒ0000001E00000010ŽDS.B…16”RESERVED/1065Œ0000002E…IOSDLNƒEQU†*•LENGTHOFDATABLOCK1066™*1067™*IOSFCTEQUATES(16BITS)1068™*(1069Œ00000001…IOREADƒEQU†$1”READREQUEST)1070Œ00000002…IOWRITƒEQU†$2”WRITEREQUEST-1071Œ00000004…IOOWINƒEQU†$4”OUTPUTWITHINPUT)1072Œ00000008…IOUPDRƒEQU†$8”UPDATERECORD*1073Œ00000010…IODELRƒEQU†$10“DELETERECORD(1074Œ00000020…IOFRMTƒEQU†$20“FORMATDISK+1075Œ00000040…IOTBRKƒEQU†$40“TRANSMITBREAK&1076Œ00000101…IOPOSTƒEQU†$101’POSITION$1077Œ00000102…IOREWDƒEQU†$102’REWIND/1078Œ00000104…IOTESTƒEQU†$104’TESTI/OCOMPLETE'1079Œ00000108…IOWAITƒEQU†$108’WAITONLY&1080Œ00000110…IOHALTƒEQU†$110’HALTI/O+1081Œ00000120…IOBRKSƒEQU†$120’BREAKSERVICE,1082Œ00000140…IOSTATƒEQU†$140’STATUSREQUEST.1083Œ00000180…IOCNFGƒEQU†$180’CONFIGUREDEVICE31084Œ00000201…IONBRKS‚EQU†$201’NEGATEBREAKSERVICE/1085Œ00008001…IOUCBKƒEQU†$8001‘UNCLAIMEDBREAKS;1086Œ00008002…IOCHDCƒEQU†$8002‘CHANGEDEFAULTCONFIGURATION 1087™*1088™*IOSOPTEQUATES(16BITS)1089™* MMOTOROLAM68000ASMVERSION‚1.30IO‚:ƒ0.ˆ.IOHDRV‚.SA09/16/8214:02:47žPAGE‚19(VERSADOS4.0I/ODRIVERPROCESSEXAMPLE• 1090Œ00000000…IOPASCƒEQU†0•ASCII1091Œ00000000…IOPWATƒEQU†0•WAIT*1092Œ00000000…IOPCNPƒEQU†0•CONNECTIONWAIT$1093Œ00000000…IOPFORƒEQU†0•FORMATTED$1094Œ00000000…IOPECHƒEQU†0•ECHOMODE(1095Œ00000000…IOPRECƒEQU†0•RECORDACCESS,1096Œ00000000…IOPLRNƒEQU†0•LOGICALRECORDIO41097Œ00000000…IOPNOKƒEQU†0•RETURNRECORDWITHOUTKEY01098Œ00000000…IOPNOCƒEQU†0•NOCOMPLETIONADDRESS*1099Œ00000000…IOPINFƒEQU†0•INPUTFORMATTED&1100Œ00000000…IOPPMPƒEQU†0•PRIMARYMAP-1101Œ00000000…IOPDSKƒEQU†0•FORMATENTIREDISK!1102Œ00000001…IOPBINƒEQU†1•BINARY"1103Œ00000002…IOPPROƒEQU†2•PROCEED&1104Œ00000004…IOPUNPƒEQU†4•BUSYRETURN 1105Œ00000008…IOPIMGƒEQU†8•IMAGE91106Œ00000010…IOPBRKƒEQU†$10“EXCLUSIVEBREAKNOTIFICATION)1107Œ00000020…IOPNECƒEQU†$20“NOECHOMODE<1108Œ00000040…IOPBLKƒEQU†$40“BLOCKACCESS(LOGICALSECTORIO)81109Œ00000080…IOPRRNƒEQU†$80“RANDOMRECORDI/O-KEYGIVEN41110Œ00000100…IOPRTKƒEQU†$100’RETURNKEYWITHRECORD81111Œ00000200…IOPCADƒEQU†$200’COMPLETION/SERVICEADDRESS)1112Œ00000400…IOPINMƒEQU†$400’INPUTIMAGE+1113Œ00000800…IOPSMPƒEQU†$800’SECONDARYMAP71114Œ00001000…IOPTRKƒEQU†$1000‘FORMATTRACK(PSNGIVEN)61115Œ00001000…IOPCTAƒEQU†$1000‘CLEARTYPEAHEADBUFFER81116Œ00001000…IOPCDOƒEQU†$1000‘CLEARDISCARDOUTPUTMODED1117Œ00006000…IOPPOSƒEQU†$6000‘BITS13-14:LOGICALACCESS/POSITION-1118Œ00000000…IOPNXTƒEQU†$0”NEXT(FORWARD)/>31119Œ00002000…IOPCURƒEQU†$2000‘CURRENTPOSITION/=51120Œ00004000…IOPPRVƒEQU†$4000‘PREVIOUS(BACKWARD)/<@1121Œ00006000…IOPRANƒEQU†$6000‘RANDOM(LRNORLSNGIVEN)/>OR=/1122Œ00008000…IOPTSKƒEQU†$8000‘TASKIDSUPPLIED1123™*1124™*IOSSTAEQUATES(8BITS)1125™*#1126Œ00000000…ISTAOKƒEQU†0•NOERROR1127™*‚PARAMETERBLOCKERRORS-1128Œ00000082…ISTAIFƒEQU†$82“INVALIDFUNCTION21129Œ00000083…ISTAILU‚EQU†$83“INVALIDLOGICALUNIT11130Œ00000084…ISTAADD‚EQU†$84“INVALIDDATABUFFER21131Œ00000085…ISTARRƒEQU†$85“INVALIDRANDOMRECORD81132Œ00000086…ISTAIPƒEQU†$86“INVALIDPARAMBLOCKADDRESS/1133Œ00000087…ISTAPCƒEQU†$87“PROTECTCODEERROR71134Œ00000088…ISTACNF‚EQU†$88“CONFIGURATIONPARAMERROR 1135™*‚DEVICEINDEPENDENTERRORS,1136Œ000000C1…ISTABOƒEQU†$C1“BUFFEROVERFLOW)1137Œ000000C2…ISTAEOF‚EQU†$C2“ENDOFFILE+1138Œ000000C3…ISTAEOV‚EQU†$C3“ENDOFVOLUME21139Œ000000C4…ISTAFAB‚EQU†$C4“INVALIDOREMPTYFAB81140Œ000000C5…ISTATMƒEQU†$C5“INVALIDTRANSFERFORDEVICE-1141Œ000000C6…ISTABRK‚EQU†$C6“BREAKCONDITION.1142Œ000000C7…ISTAIEƒEQU†$C7“INTERNALIOERROR41143Œ000000C8…ISTAFDƒEQU†$C8“FAB/DATABLOCKCONFLICT21144Œ000000C9…ISTARNƒEQU†$C9“RECORDDOESNOTEXIST21145Œ000000CA…ISTAREƒEQU†$CA“RECORDALREADYEXISTSK1146Œ000000CB…ISTAROƒEQU†$CB“RECORDOVERFLOW/TOOMANYRECORDSINDATABLOCK81147Œ000000CC…ISTAKYƒEQU†$CC“KEYERROR,FABKEYCONFLICT MMOTOROLAM68000ASMVERSION‚1.30IO‚:ƒ0.ˆ.IOHDRV‚.SA09/16/8214:02:47žPAGE‚20(VERSADOS4.0I/ODRIVERPROCESSEXAMPLE• 51148Œ000000CD…ISTAIDS‚EQU†$CD“INSUFFICIENTDISCSPACE51149Œ000000CE…ISTAUFƒEQU†$CE“UNRECOVERABLEFILEERRORI1150Œ000000CF…ISTAALƒEQU†$CF“FILESPACEALLOCATION/DE-ALLOCATIONCONFLICT1151™*‚DEVICEDEPENDENTERRORS81152Œ000000D1…ISTAUNR‚EQU†$D1“UNRECOVERABLEDEVICEERROR01153Œ000000D2…ISTACMP‚EQU†$D2“DATACOMPAREERROR21154Œ000000D3…ISTASPE‚EQU†$D3“SECTORPROTECTERROR-1155Œ000000E1…ISTANRƒEQU†$E1“DEVICENOTREADY(1156Œ000000E2…ISTADBƒEQU†$E2“DEVICEBUSY,1157Œ000000E3…ISTACRC‚EQU†$E3“DATACRCERROR31158Œ000000E4…ISTAWPƒEQU†$E4“WRITEPROTECTEDDEVICE81159Œ000000E5…ISTADDM‚EQU†$E5“DELETEDDATAMARKDETECTED$1160Œ000000E6…ISTATOƒEQU†$E6“TIMEOUT31161Œ000000E7…ISTASAƒEQU†$E7“INVALIDSECTORADDRESS,1162Œ000000E8…ISTACSM‚EQU†$E8“CHECKSUMERROR01163Œ000000E9…ISTARES‚EQU†$E9“DISCRESTOREERROR)1164Œ000000EA…ISTADOƒEQU†$EA“DATAOVERRUN21165Œ000000EB…ISTASCƒEQU†$EB“DEVICESTATUSCHANGED71166Œ000000EC…ISTADME‚EQU†$EC“TRACK/SECTORIDNOTFOUND 21167Œ000000ED…ISTAMRK‚EQU†$ED“ADDR.MARKCRCERROR(1168Œ000000EE…ISTASEK‚EQU†$EE“SEEKERROR(1169Œ000000EF…ISTABDS‚EQU†$EF“BADSECTOR1170™*1171™*ˆCHANNELERRORS1172™**1173Œ000000F1…ISTACHN‚EQU†$F1“CHANNELBUSY/1174Œ000000F2…ISTADMA‚EQU†$F2“CHANNELDMAERROR91175Œ000000F3…ISTACDN‚EQU†$F3“UNRECOVERABLECHANNELERROR.1176Œ000000F4…ISTACNT‚EQU†$F4“CONTROLLERERROR81177Œ000000F5…ISTACFG‚EQU†$F5“DEVICECONFIGURATIONERROR+1178Œ000000F6…ISTABUS‚EQU†$F6“DMABUSERROR/1179Œ000000F7…ISTAMAP‚EQU†$F7“DMAMAPPINGERROR21180Œ000000F8…ISTADMC‚EQU†$F8“DMACONTROLLERERROR91181Œ000000F9…ISTAICE‚EQU†$F9“INDETERMINATECHANNELERROR MMOTOROLAM68000ASMVERSION‚1.30IO‚:ƒ0.ˆ.IOHDRV‚.SA09/16/8214:02:47žPAGE‚21(VERSADOS4.0I/ODRIVERPROCESSEXAMPLE• 1183™*1184™*ˆI/OMACROS1185™*1186™*…CALLINGSEQUENCE%1187™*ˆXXXCALL(ADDR.OFPARAMBLOCK)1188™* 1189¢OFFSETƒ01190™FHSCALL‚MACRO1191¢IFNC…'\1',''1192¢IFNC…'\1','(A0)'*1193¢LEA†\1,A0LOADADDRESSOFPARAMBLOCK 1194¢ENDC 1195¢ENDC 1196¢TRAP…#3CALLEXECDIRECTIVE 1197¢ENDM1198™*1199™*1200™IOSCALL‚MACRO1201¢IFNC…'\1',''1202¢IFNC…'\1','(A0)'*1203¢LEA†\1,A0LOADADDRESSOFPARAMBLOCK 1204¢ENDC 1205¢ENDC 1206¢TRAP…#2CALLEXECDIRECTIVE 1207¢ENDM1208™* 1209™*ˆIOSPARAMETERBLOCKMACRO1210™*ŠCALLINGSEQUENCE%1211™*XXX(LABEL,PARAM1...,PARAMN)1212™*1213™IOS†MACRO1214™\0IOS„EQU†*1215¢IFC†'\1',''1216¢DFC.W„0“FUNCTION 1217¢ENDC1218¢IFNC…'\1',''1219¢DFC.W„\1’FUNCTION 1220¢ENDC1221¢IFC†'\2',''1222¢DFC.W„0’OPTIONS 1223¢ENDC1224¢IFNC…'\2',''1225¢DFC.W„\2’OPTIONS 1226¢ENDC1227¢DFC.B„0“STATUS1228¢IFC†'\3',''1229¢DFC.B„0’LUN 1230¢ENDC1231¢IFNC…'\3',''1232¢DFC.B„\3’LUN 1233¢ENDC1234¢DFC.B„0“RESERVED1235¢IFC†'\4',''1236¢DFC.B„0“PARTIALKEYLENGTH 1237¢ENDC1238¢IFNC…'\4','' 1239¢DFC.B„\4’PARTIALKEYLENGTH 1240¢ENDC MMOTOROLAM68000ASMVERSION‚1.30IO‚:ƒ0.ˆ.IOHDRV‚.SA09/16/8214:02:47žPAGE‚22(VERSADOS4.0I/ODRIVERPROCESSEXAMPLE• 1241¢IFC†'\5',''%1242¢DFC.L„0’RECORDNO.-KEYPOINTER 1243¢ENDC1244¢IFNC…'\5',''&1245¢DFC.L„\5”RECORDNO.-KEYPOINTER 1246¢ENDC1247¢IFC†'\6',''!1248¢DFC.L„0’BUFFERSTARTADDRESS 1249¢ENDC1250¢IFNC…'\6',''"1251¢DFC.L„\6“BUFFERSTARTADDRESS 1252¢ENDC1253¢IFC†'\7',''1254¢DFC.L„0“BUFFERENDADDRESS 1255¢ENDC1256¢IFNC…'\7','' 1257¢DFC.L„\7“BUFFERENDADDRESS 1258¢ENDC1259¢DFC.L„0“LENGTHOFTRANSFER1260¢IFC†'\8',''1261¢DFC.L„0’COMPLETIONADDRESS 1262¢ENDC1263¢IFNC…'\8','' 1264¢DFC.L„\8’COMPLETIONADDRESS 1265¢ENDC 1266¢ENDM1267™* 1268™*ˆFHSPARAMETERBLOCKMACRO1269™*1270™FHS†MACRO1271™\0FHS„EQU†*1272¢IFC†'\1',''1273¢DFC.W„0’COMMAND 1274¢ENDC1275¢IFNC…'\1',''1276¢DFC.W„\1“COMMAND 1277¢ENDC1278¢IFC†'\2',''1279¢DFC.W„0“OPTIONS 1280¢ENDC1281¢IFNC…'\2',''1282¢DFC.W„\2”OPTIONS 1283¢ENDC1284¢DFC.B„0“STATUS1285¢IFC†'\3',''1286¢DFC.B„0’LUN 1287¢ENDC1288¢IFNC…'\3',''1289¢DFC.B„\3”LUN 1290¢ENDC1291¢IFC†'\4',''%1292¢DFC.L„$20202020ŒVOLUME-DEVICEID 1293¢ENDC1294¢IFNC…'\4',''1295¢DFC.L„\4’VOLUME-DEVICEID 1296¢ENDC1297¢DFC.W„0“USERNUMBER1298¢DFC.L„$20202020‹CATALOG MMOTOROLAM68000ASMVERSION‚1.30IO‚:ƒ0.ˆ.IOHDRV‚.SA09/16/8214:02:47žPAGE‚23(VERSADOS4.0I/ODRIVERPROCESSEXAMPLE• 1299¢DFC.L„$202020201300¢DFC.L„$20202020‹FILENAME1301¢DFC.L„$202020201302¢DFC.W„$2020EXTENSION1303¢DFC.W„0“RESERVED1304¢IFC†'\5',''1305¢DFC.B„0“WRITECODE 1306¢ENDC1307¢IFNC…'\5',''1308¢DFC.B„\5“WRITECODE 1309¢ENDC1310¢IFC†'\6',''1311¢DFC.B„0’READCODE 1312¢ENDC1313¢IFNC…'\6',''1314¢DFC.B„\6’READCODE 1315¢ENDC1316¢IFC†'\7',''1317¢DFC.W„0’RECORDLENGTH 1318¢ENDC1319¢IFNC…'\7',''1320¢DFC.W„\7”RECORDLENGTH 1321¢ENDC1322¢IFC†'\8',''1323¢DFC.L„0“SIZE/POINTER 1324¢ENDC1325¢IFNC…'\8',''1326¢DFC.L„\8“SIZE/POINTER 1327¢ENDC 1328¢ENDM1329™*1330™*ˆOUTPUTCONSTANTMACRO1331™*1332™DFC†MACRO 1333¢DC.\0„\1 1334¢ENDM  MMOTOROLAM68000ASMVERSION‚1.30IO‚:ƒ0.ˆ.IOHDRV‚.SA09/16/8214:02:47žPAGE‚24(VERSADOS4.0I/ODRIVERPROCESSEXAMPLE• T1338™*******************************************************************************T1339™*******************************************************************************1340™*31341™*ˆDATASTRUCTURESANDEQUATESFORINTERNALI/O1342™*1343™*ˆMODIFICATIONHISTORYB1344™*‰6/15/82‚ModifiedDCBsothatdefaultconfigurationislast.;1345™*‰4/13/82‚Initialupdatetomakeallsystemsthesame.G1346™*‰2/23/82‚AdditionofstructuresusedinCONFIGURE,CHANGEDEFAULT21347™*’CONFIGURATION,andREQUESTSTATUScommands.A1348™*‰9/14/81‚Revision2.0--AdditionalDCBfieldequates.‚R.V.1349™*‰8/12/801350™*T1351™*******************************************************************************T1352™*******************************************************************************1353135461355Œ00000002…IOSTINƒEQU†2•IOSTRAPINSTRUCTIONNUMBER61356Œ00000003…FHSTINƒEQU†3•FHSTRAPINSTRUCTIONNUMBER=1357Œ2E464853…FHSID„EQU†'.FHS'FILEHANDLINGSERVICESTASKID?1358Œ2E464D53…FMSID„EQU†'.FMS'FILEMANAGEMENTSERVICESTASKID<1359Œ2E494F53…IOSID„EQU†'.IOS'INPUT/OUTPUTSERVICESTASKID51360Œ2E494F44…IODID„EQU†'.IOD'I/OCOMPLETIONTASKID61361Œ2E545459…TTYID„EQU†'.TTY'TERMINALDRIVERTASKID51362Œ2E505254…PRTID„EQU†'.PRT'PRINTERDRIVERTASKID51363Œ2E494F49…IOIID„EQU†'.IOI'IOINITIALIZERTASKID.1364Œ2E53504C…SPLID„EQU†'.SPL'SPOOLERTASKID41365Œ00000001…IOSESSƒEQU†1•I/OMODULESESSIONNUMBER,1366Œ00000000…DRVHLTƒEQU†0•HALTI/OSUB-CODE01367Œ00000001…DRVEVTƒEQU†1•DRIVEREVENTSUB-CODE01368Œ00000002…TRMEVTƒEQU†2•IODONEEVENTSUB-CODE71369Œ00000003…STAEVTƒEQU†3•STATUSCHANGEEVENTSUB-CODE91370Œ00000004…BRKEVTƒEQU†4•BREAKCONDITIONEVENTSUB-CODE41371Œ00000005…IOLEVTƒEQU†5•IOSLOGICALCMD.SUB-CODE41372Œ00000006…FHLEVTƒEQU†6•FHSLOGICALCMD.SUB-CODE(1373Œ00000007…SPLEVTƒEQU†7•.SPLSUB-CODE51374Œ00000008…CFGEVTƒEQU†8•RECONFIGUREEVENTSUB-CODE81375Œ494F5347…IOCOMNƒEQU†'IOSG'SHAREDDATASEGMENTNAME13761377™*)1378™*‚DEVICEI/OEVENTMESSAGESTRUCTURE1379™*$1380¢OFFSETƒ0•STARTWITHTEXTOFFSET*1381ƒ0000000000000001ŽDS.B…1•EVENTLENGTH(1382ƒ0000000100000001ŽDS.B…1•EVENTCODE)1383ƒ0000000200000004ŽDS.L…1•SENDERTASK,1384ƒ0000000600000004ŽDS.L…1•SENDERSESSION-1385ƒ0000000A00000001…EVTCODƒDS.B…1•SUB-CODE&1386ƒ0000000B00000001ŽDS.B…1•RESERVED01387ƒ0000000C00000004…EVTDCBƒDS.L…1•DCBADDRESS'1388Œ00000010…EVTLNGƒEQU†*•EVENTLENGTH13891390™*&1391™*‚FMSI/OEVENTMESSAGESTRUCTURE1392™*$1393¢OFFSETƒ0•STARTWITHTEXTOFFSET*1394ƒ0000000000000001ŽDS.B…1•EVENTLENGTH(1395ƒ0000000100000001ŽDS.B…1•EVENTCODE MMOTOROLAM68000ASMVERSION‚1.30IO‚:ƒ0.ˆ.IOHDRV‚.SA09/16/8214:02:47žPAGE‚25(VERSADOS4.0I/ODRIVERPROCESSEXAMPLE• )1396ƒ0000000200000004ŽDS.L…1•SENDERTASK,1397ƒ0000000600000004ŽDS.L…1•SENDERSESSION-1398ƒ0000000A00000001…EVTKODƒDS.B…1•SUB-CODE&1399ƒ0000000B00000001ŽDS.B…1•RESERVED.1400ƒ0000000C00000004…EVTLUEƒDS.L…1•LUTENTRY(1401ƒ0000001000000004…EVTLUTƒDS.L…1•LUT<1402ƒ0000001400000001…EVTTINƒDS.B…1•TRAPINSTRUCTIONNUMBER91403ƒ0000001500000001…EVTPRIƒDS.B…1•REQUESTOR'SPRIORITY:1404ƒ0000001600000004…EVTTSKƒDS.L…1•REQUESTOR'STASKNAME?1405ƒ0000001A00000004…EVTSESƒDS.L…1•REQUESTOR'SSESSIONNUMBER01406ƒ0000001E00000002…EVTUNMƒDS.W…1•USERNUMBER31407ƒ0000002000000004…EVTRD0ƒDS.L…1•REQUESTOR'SD091408ƒ0000002400000004…EVTRA0ƒDS.L…1•ADDRESSOFIOCB(A0).1409ƒ0000002800000001…EVTPSTƒDS.B…1•PBSTATUS.1410ƒ0000002900000001…EVTPSZƒDS.B…1•PBLENGTH,1411Œ0000002A…EVTLENƒEQU†*•LENGTHOFMESSAGE14121413™*(1414™*‚FHSCOMMANDBITEQUATES(16BITS)1415™*$1416Œ00000007…FHALLOB‚EQU†7•ALLOCATE"1417Œ00000006…FHASGNB‚EQU†6•ASSIGN41418Œ00000005…FHCHNGB‚EQU†5•CHANGEACCESSPERMISSION"1419Œ00000004…FHRENMB‚EQU†4•RENAME#1420Œ00000003…FHPROTB‚EQU†3•PROTECT  !1421Œ00000002…FHCLOSB‚EQU†2•CLOSE"1422Œ00000001…FHDELTB‚EQU†1•DELETE&1423Œ00000000…FHCKPTB‚EQU†0•CHECKPOINT/1424Œ00000007…FHRATTB‚EQU†7•RETRIEVEATTRIBUTES11425Œ00000006…FHFDENB‚EQU†6•FETCHDIRECTORYENTRY21426Œ00000005…FHFDMNB‚EQU†5•FETCHDEVICEMNEMONICS01427Œ00000004…FHCHLUB‚EQU†4•CHANGELUASSIGNMENT*1428Œ00000000…FHDVOLB‚EQU†0•DEFAULTVOLUME14291430™*'1431™*‚FHSOPTIONBITEQUATES(16BITS)1432™*&1433Œ00000003…FOPOVRTBEQU†3•OVERWRITE$1434Œ00000004…FOPTRNB‚EQU†4•TRUNCATE21435Œ00000005…FOPABFB‚EQU†5•ALLOCATESHAREDBUFFER51436Œ00000006…FOPBEGB‚EQU†6•POSITIONATBEGINNING/END/1437Œ0000000B…FOPADRB‚EQU†11”RETURNPHY.ADRBIT+1438Œ00000000…FOPSLUB‚EQU†0•SEND/RECEIVELU,1439Œ0000000F…FOPKEPB‚EQU†15”KEEPASSIGNMENT14401441™* 1442™*‚IOSFUNCTIONCODEEQUATES1443™*(1444Œ00000000…IOSFIOƒEQU†0•DATATRANSFER#1445Œ00000001…IOSFCMƒEQU†1•COMMANDS+1446Œ00000080…IOSFPVƒEQU†$80“PRIV.COMMANDS14471448™*'1449™*‚IOSOPTIONBITEQUATES(16BITS)1450™*(1451Œ00000000…IOPASCB‚EQU†0•ASCII/BINARY(1452Œ00000001…IOPWATB‚EQU†1•WAIT/PROCEEDB1453Œ00000002…IOPUNPB‚EQU†2•CONDITIONALPROCEED/UNCONDITIONALPROC MMOTOROLAM68000ASMVERSION‚1.30IO‚:ƒ0.ˆ.IOHDRV‚.SA09/16/8214:02:47žPAGE‚26(VERSADOS4.0I/ODRIVERPROCESSEXAMPLE• +1454Œ00000003…IOPFORB‚EQU†3•FORMATTED/IMAGE81455Œ00000004…IOPBRKB‚EQU†4•EXCLUSIVEBREAKNOTIFICATION(1456Œ00000005…IOPECHB‚EQU†5•ECHO/NOECHO(1457Œ00000006…IOPRECB‚EQU†6•RECORD/BLOCK81458Œ00000007…IOPLRNB‚EQU†7•LOGICALRECORD/RANDOMRECORD61459Œ00000008…IOPNOKB‚EQU†8•NOKEYRETURNED/RETURNKEY>1460Œ00000009…IOPNOCB‚EQU†9•NOCOMPLETIONADDR/COMPLETIONADDR/1461Œ0000000A…IOPINFB‚EQU†10”INPUTFORMAT/IMAGE11462Œ0000000B…IOPSMPB‚EQU†11”SECONDARYMEMORYMAP)1463Œ0000000C…IOPFTRK‚EQU†12”FORMATTRACK41464Œ0000000C…IOPCTAB‚EQU†12”CLEARTYPEAHEADBUFFER61465Œ0000000C…IOPCDOB‚EQU†12”CLEARDISCARDOUTPUTMODE-1466Œ0000000F…IOPTSKB‚EQU†15”TASKIDSUPPLIED14671468™*(1469™*‚ATTENTIONEVENTMESSAGESTRUCTURE1470™*)1471¢OFFSETƒ0•STARTWITHPARAMETEROFFSET*1472ƒ0000000000000001ŽDS.B…1•EVENTLENGTH(1473ƒ0000000100000001ŽDS.B…1•EVENTCODE41474ƒ0000000200000004…EVADEVƒDS.L…1•DEVICEMNEMONIC+1475ƒ0000000600000002…EVASTAƒDS.W…1•STATUS1476Œ00000008…EVALENƒEQU†*14771478™*-1479™*‚ATTENTIONSTATUSBITEQUATES(16BITS)1480™*+1481Œ00000001…EVATNAS‚EQU†1•DEVICEASSIGNED14821483™*%1484™*‚IOSPARAMETERBLOCKEXTENSIONS1485™*.1486¢OFFSETƒIOSBLNSTARTWITHENDOFIOSBLOCK81487ƒ0000001C00000004…IOSTSKƒDS.L…1•REQUESTOR'STASKID81488ƒ0000002000000004…IOSSESƒDS.L…1•REQUESTOR'SSESSION'1489Œ00000024…IOSNLNƒEQU†*•TOTALLENGTH MMOTOROLAM68000ASMVERSION‚1.30IO‚:ƒ0.ˆ.IOHDRV‚.SA09/16/8214:02:47žPAGE‚27(VERSADOS4.0I/ODRIVERPROCESSEXAMPLE• 1491™*À***********:1492™*‚DEVICECONTROLBLOCK(DCB)DATASTRUCTURE•*‚DCB‚*1493™*À***********$1494¢OFFSETƒ0•STARTWITHZEROOFFSET:1495ƒ0000000000000004…DCBPTRƒDS.L…1•POINTERTONEXTBLOCK51496ƒ0000000400000004…DCBAIDƒDS.L…1•ASCIIIDENTIFIERM1497ƒ0000000800000004…DCBDCQƒDS.L…1•ADDRESSOFDCQENTRY(0=NOTHINGPENDING):1498ƒ0000000C00000008…DCBDIDƒDS.L…2•DRIVERID(TASKNAME);1499ƒ0000001400000004…DCBLUTƒDS.L…1•ADDRESSOFCURRENTLUT91500ƒ0000001800000002…DCBATTƒDS.W…1•ATTRIBUTESOFDEVICE71501ƒ0000001A00000001…DCBWCDƒDS.B…1•WRITEPROTECTCODE61502ƒ0000001B00000001…DCBRCDƒDS.B…1•READPROTECTCODE-1503ƒ0000001C00000002…DCBTMOƒDS.W…1•USEFLAG01504ƒ0000001E00000002…DCBWNTƒDS.W…1•WRITECOUNT/1505ƒ0000002000000002…DCBRNTƒDS.W…1•READCOUNT01506ƒ0000002200000002…DCBFLGƒDS.W…1•DEVICEFLAG/1507ƒ0000002400000004…DCBCCBƒDS.L…1•CHANNELID:1508ƒ0000002800000001…DCBCDVƒDS.B…1•CHANNELDEVICENUMBER81509ƒ0000002900000001…DCBPRIƒDS.B…1•CONNECTIONPRIORITY:1510ƒ0000002A00000004…DCBCRNƒDS.L…1•CURRENTRECORDNUMBERO1511ƒ0000002E0000001C…DCBIOSƒDS.B…IOSBLNROOMFORIOCB(EXCLUDINGEXTENSIONS!)C1512ƒ0000004A00000004…DCBLBAƒDS.L…1•LOGICALADDRESSOFPARAMBLOCK  D1513ƒ0000004E00000001…DCBCCFƒDS.B…1•CONFIGURATIONCOORDINATIONFLAG,1514™*0-->DEVICEINDEFAULTCONFIGURATION71515™*1-->DEVICEMAYNOTBEINDEFAULTCONFIGURATION01516ƒ0000004F00000001…DCBBCTƒDS.B…1•BREAKCOUNTA1517ƒ0000005000000004…DCBBRKƒDS.L…1•ADDRESSOFBREAKSERVICELUT:1518ƒ0000005400000004…DCBSRVƒDS.L…1•BREAKSERVICEADDRESS.1519ƒ00000058000000000000DCBRSVƒDC.L…0,0,0,031520™*œRESERVEDBUFFEROF16BYTESFORFUTUREUSAGE01521™*œBETWEENTHEDEVICEINDEPENDENTANDDEVICE1522™*œDEPENDENTINFORMATION1523™*1524™*‚DEVICEDEPENDENTPORTION1525™*91526Œ00000068…DCBDEVƒEQU†*•STARTDEVICEDEPENDENTPORTION41527Œ00000072…DCBLENƒEQU†DCBDEV+IOSREC‰RECORDLENGTH31528Œ00000074…DCBSECƒEQU†DCBDEV+IOSRSZ‰DISKSECTORS71529Œ00000074…DCBSIZƒEQU†DCBDEV+IOSRSZ‰SCREEN/PAGESIZE41530Œ00000078…DCBTMWƒEQU†DCBDEV+IOSWTO‰WRITETIMEOUT31531Œ0000007C…DCBTMRƒEQU†DCBDEV+IOSRTO‰READTIMEOUT1532™*J1533™*DEVICEDEPENDENTPORTIONFORTTYCOMPATABILITYTHATWASTHROWNAWAY1534™*ORIGINALLY1535™*71536Œ00000082…DCBSBSƒEQU†DCBDEV+IOSBRC‰PROGRAMMINGINFO71537Œ00000086…DCBHBSƒEQU†DCBDEV+IOSRTV‰PROGRAMMINGINFOJ1538Œ0000008A…DCBTIMƒEQU†DCBDEV+IOSEOL‰I/OTIMEOUTVALUE-TIME(INMSECS)>1539Œ0000008E…DCBDATƒEQU†DCBDEV+IOSBRT‰I/OTIMEOUTVALUE-DAY?1540Œ00000092…DCBCANƒEQU†DCBDEV+IOSBRT+4‡FLAGFORVERSION3TTY1541™*(1542™*‚DISKDCBDEVICEDEPENDENTPORTION1543™*1544¢OFFSETƒDCBDEVE1545ƒ000000680000002E…DCBDKCƒDS.B…IOSDLNROOMFORCONFIGURATIONINFO-1546Œ00000096…DDCBLNƒEQU†*•LENGTHOFDISKDCB15471548™* MMOTOROLAM68000ASMVERSION‚1.30IO‚:ƒ0.ˆ.IOHDRV‚.SA09/16/8214:02:47žPAGE‚28(VERSADOS4.0I/ODRIVERPROCESSEXAMPLE• ,1549™*‚TERMINALDCBDEVICE-DEPENDENTPORTION1550™*1551¢OFFSETƒDCBDEVE1552ƒ0000006800000030…DCBPTCƒDS.B…IOSTLNROOMFORCONFIGURATIONINFO11553Œ00000098…CDCBLNƒEQU†*•LENGTHOFTERMINALDCB15541555™*+1556™*‚PRINTERDCBDEVICE-DEPENDENTPORTION1557™*1558¢OFFSETƒDCBDEV"1559ƒ000000680000002AŽDS.B…IOSPLN01560Œ00000092…PDCBLNƒEQU†*•LENGTHOFPRINTERDCB156115621563™*#1564™*‚DCBFLGBITEQUATES(16BITS)1565™*D1566Œ00000000…DFLGONƒEQU†0•DEVICEONLINE0-->OFFLINE„1-->ONLINE(1567Œ00000001…DFLGWPƒEQU†1•WRITEPROTECT/1568Œ00000002…DFLGSCƒEQU†2•DEVICESTATUSCHANGE91569Œ00000003…DFLGINƒEQU†3•DEVICEBUSYFORINITIALIZATION81570Œ00000004…DFLGCFƒEQU†4•DEVICEBUSYFORCONFIGURATION61571Œ00000005…DFLGCTƒEQU†5•CANCELTIMER0-->NO‚1-->YESE1572Œ00000006…DFLGITƒEQU†6•SET-->IGNORETIMEREVENTFORTHISDEVICE15731574™*#1575™*‚DCBATTBITEQUATES(16BITS)1576™*(1577Œ00000000…DATREDƒEQU†0•SUPPORTSREAD)1578Œ00000001…DATWRTƒEQU†1•SUPPORTSWRITE*1579Œ00000002…DATBINƒEQU†2•SUPPORTSBINARY*1580Œ00000003…DATRANƒEQU†3•SUPPORTSRANDOM)1581Œ00000004…DATIMGƒEQU†4•SUPPORTSIMAGE,1582Œ00000005…DATHIOƒEQU†5•SUPPORTSHALTI/O31583Œ00000006…DATPOSƒEQU†6•SUPPORTSPOSITIONRECORD,1584Œ00000007…DATFMKƒEQU†7•SUPPORTSFILEMARK-1585Œ00000008…DATINDƒEQU†8•INTERACTIVEDEVICE)1586Œ00000009…DATPRTƒEQU†9•PRINTERDEVICE-1587Œ0000000A…DATSPLƒEQU†10”SUPPORTSSPOOLING91588Œ0000000B…DATWRCƒEQU†11”SUPPORTSWRITEWITHCRCCHECKB1589Œ0000000C…DATSPDƒEQU†12”SUPPORTSSPECIALPURPOSEDEVICEDRIVER15901591™*1592™*‚DCBTMOVALUES(16BITS)1593™*$1594™*ˆ0=NOTACTIVE(ORTIMEDOUT)(1595™*ˆ+=ACTIVEINDATATRANSFERPHASE&1596™*ˆ-=ACTIVEINTERMINATIONPHASE1597™* MMOTOROLAM68000ASMVERSION‚1.30IO‚:ƒ0.ˆ.IOHDRV‚.SA09/16/8214:02:47žPAGE‚29(VERSADOS4.0I/ODRIVERPROCESSEXAMPLE• 1599™*À***********81600™*‚SYSTEMVALUETABLE(SVT)DATASTRUCTURE—*‚SVT‚*1601™*À***********$1602¢OFFSETƒ0•STARTWITHZEROOFFSET71603ƒ0000000000000004…SVTSOPƒDS.L…1•I/OSYSTEMOPTIONSK1604ƒ0000000400000004…SVTQSTƒDS.L…1•STARTOFDEVICECONNECTIONQUEUESPACEF1605ƒ0000000800000004…SVTQNDƒDS.L…1•ENDOFDEVICECONNECTQUEUESPACE.1606ƒ0000000C00000004…SVTQUEƒDS.L…1•FIRSTDCQF1607ƒ0000001000000004…SVTLSTƒDS.L…1•STARTOFLOGICALUNITTABLESPACE! D1608ƒ0000001400000004…SVTLNDƒDS.L…1•ENDOFLOGICALUNITTABLESPACE61609ƒ0000001800000004…SVTLUTƒDS.L…1•FIRSTTABLEENTRY=1610ƒ0000001C00000004…SVTDSTƒDS.L…1•STARTOFDCBTABLESPACE;1611ƒ0000002000000004…SVTDNDƒDS.L…1•ENDOFDCBTABLESPACE61612ƒ0000002400000004…SVTDCBƒDS.L…1•FIRSTTABLEENTRY31613ƒ0000002800000001…SVTSDCB‚DS.B…1•DCBSEMAPHORE31614ƒ0000002900000001…SVTSLUT‚DS.B…1•LUTSEMAPHORE31615ƒ0000002A00000001…SVTSDCQ‚DS.B…1•DCQSEMAPHORE31616ƒ0000002B00000001…SVTSFCB‚DS.B…1•FCBSEMAPHOREF1617ƒ0000002C00000010…SVTSIDƒDS.L…4•I/OSYSTEMIDANDREVISIONNUMBER@1618ƒ0000003C00000008…SVTBRKƒDS.L…2•TASK-IDOFUNCLAIMEDBREAKSM1619ƒ0000004400000004…SVTBSAƒDS.L…1•SERVICEADDRESSFORUNCLAIMEDBREAKTASK16201621™*#1622™*‚EQUATESFORSVTSOP(32BITS)1623™*(1624Œ00000000…SVOPMUƒEQU†0•MULTIPLEUSER&1625Œ00000001…SVOPFMƒEQU†1•FMSPRESENT16261627™*À***********81628™*‚LOGICALUNITTABLE(LUT)DATASTRUCTURE—*‚LUT‚*1629™*À***********•£!%)-159=AEIMQUY]a"eimquy}…‰$1630¢OFFSETƒ0•STARTWITHZEROOFFSET:1631ƒ0000000000000004…LUTPTRƒDS.L…1•POINTERTONEXTTABLE,1632ƒ0000000400000004…LUTTIDƒDS.L…1•TASK-ID81633ƒ0000000800000004…LUTSESƒDS.L…1•TASKSESSIONNUMBER;1634ƒ0000000C00000001…LUTMLUƒDS.B…1•MAXIMUMNUMBEROFLUNS81635ƒ0000000D00000001…LUTCASƒDS.B…1•CURRENTASSIGNMENTS01636ƒ0000000E00000002…LUTUNMƒDS.W…1•USERNUMBER+1637Œ00000010…LUTBEGƒEQU†*•BEGINLUENTRIES1638™*$1639¢OFFSETƒ0•STARTWITHZEROOFFSET>1640ƒ0000000000000001…LUTCAPƒDS.B…1•CURRENTACCESSPERMISSION81641ƒ0000000100000001…LUTCSFƒDS.B…1•CURRENTSTATUSFLAG>1642ƒ0000000200000002…LUTATTƒDS.W…1•ATTRIBUTESOFDEVICE/FILE71643ƒ0000000400000004…LUTDCBƒDS.L…1•ADDRESSOFDCB/FCB/1644Œ00000008…LUTSEGƒEQU†*•LENGTHOFEACHENTRY16451646™*"1647™*‚LUTCSFBITEQUATES(8BITS)1648™*!1649Œ00000000…LUSFACƒEQU†0•ACTIVE&1650Œ00000001…LUSFIOƒEQU†1•I/OPENDING(1651Œ00000002…LUSFCPƒEQU†2•CLOSEPENDING)1652Œ00000003…LUSFASƒEQU†3•ASSIGNPENDING*1653Œ00000004…LUSFCWƒEQU†4•CONNECTIONWAIT,1654Œ00000007…LUSFDVƒEQU†7•DEVICEASSIGNMENT16551656™*À*********** MMOTOROLAM68000ASMVERSION‚1.30IO‚:ƒ0.ˆ.IOHDRV‚.SA09/16/8214:02:47žPAGE‚30(VERSADOS4.0I/ODRIVERPROCESSEXAMPLE• :1657™*‚DEVICECONNECTQUEUE(DCQ)DATASTRUCTURE•*‚DCQ‚*1658™*À***********$1659¢OFFSETƒ0•STARTWITHZEROOFFSET:1660ƒ0000000000000004…DCQPTRƒDS.L…1•POINTERTONEXTTABLE>1661ƒ0000000400000004…DCQNXTƒDS.L…1•POINTERTONEXTDCBENTRY31662ƒ0000000800000004…DCQDCBƒDS.L…1•ADDRESSOFDCB31663ƒ0000000C00000004…DCQLUTƒDS.L…1•ADDRESSOFLUT91664ƒ0000001000000004…DCQLUEƒDS.L…1•ADDRESSOFLUNENTRY<1665ƒ0000001400000004…DCQLADƒDS.L…1•LOGICALADDRESSOFIOCB31666ƒ0000001800000001…DCQTINƒDS.B…1•TRAPINDICATOR21667ƒ0000001900000001…DCQRESƒDS.B…1•RESERVEDBYTE;1668ƒ0000001A00000001…DCQPLNƒDS.B…1•PARAMETERBLOCKLENGTH-1669ƒ0000001B00000001…DCQPRIƒDS.B…1•PRIORITY1670Œ0000001C…DCQLENƒEQU†* MMOTOROLAM68000ASMVERSION‚1.30IO‚:ƒ0.ˆ.IOHDRV‚.SA09/16/8214:02:47žPAGE‚31(VERSADOS4.0I/ODRIVERPROCESSEXAMPLE•  MMOTOROLAM68000ASMVERSION‚1.30IO‚:ƒ0.ˆ.IOHDRV‚.SA09/16/8214:02:47žPAGE‚32(VERSADOS4.0I/ODRIVERPROCESSEXAMPLE• N1674™*************************************************************************1675™*1676™*—***********1677™*—*4/16/82*1678™*—***********1679™*P1680™***************************************************************************1681™*1682™*91683™*ˆDATASTRUCTURESANDEQUATESFOREXEC(CHANNEL)I/O1684™*1685™**1686™*ˆEXECI/OPARAMETERBLOCKSTRUCTURES1687™*$1688¢OFFSETƒ0•STARTWITHZEROOFFSET11689ƒ0000000000000001…XIOCODƒDS.B…1•COMMANDCODE51690ƒ0000000100000001…XIOSCDƒDS.B…1•COMMANDSUB-CODE<1691ƒ0000000200000001ŽDS.B…1•--UPPERBYTEOFOPTIONSWORD!C! 1692ƒ0000000300000001…XIOOPTƒDS.B…1•--LOWERBYTEOFOPTIONSWORD!51693ƒ0000000400000004…XIOCIDƒDS.L…1•CHANNELMNEMONIC+1694Œ00000008…XIOPRMƒEQU†*•STARTPARAMETERS1695™*)1696™*ˆALLOCATEPARAMETERBLOCKSTRUCTURE1697™*/1698¢OFFSETƒXIOPRMSTARTWITHPARAMETERSOFFSET11699ƒ0000000800000001…XIOCTPƒDS.B…1•CHANNELTYPEV1700ƒ0000000900000001…XIOMICƒDS.B…1•MASKEDINTERRUPTINSTRUCTIONCOUNT(USEDBYCHPI)G1701ƒ0000000A00000004…XIOSVAƒDS.L…1•I/OHANDLERSERVICEVECTORADDRESSX1702ƒ0000000E00000004…XIOSUPƒDS.L…1•SUPERVISORCHANNELMNEMONIC(useonlyifoptionbit-1703™*§XOPSUBisset--otherwiseleavethis0)31704ƒ0000001200000004…XIOADDƒDS.L…1•DEVICEADDRESS41705ƒ0000001600000002…XIOMLNƒDS.W…1•#OFBYTESACRO21706ƒ0000001800000001…XIOVNOƒDS.B…1•VECTORNUMBER51707ƒ0000001900000001…XIOPPRƒDS.B…1•POLLINGPRIORITY61708ƒ0000001A00000001…XIOSPRƒDS.B…1•SOFTWAREPRIORITY81709ƒ0000001B00000001…XIOPFCƒDS.B…1•POLLINGFIELDCOUNT!1710Œ0000001C…XIOALNƒEQU†*•LENGTH1711™*1712™*ˆINTERRUPTSEGMENTS1713™* 1714¢OFFSETƒ081715ƒ0000000000000002…XIOPOFƒDS.W…1•POLLINGBYTEOFFSET11716ƒ0000000200000001…XIOMSKƒDS.B…1•POLLINGMASK71717ƒ0000000300000001…XIOTSTƒDS.B…1•POLLINGTESTVALUE11718ƒ0000000400000002…XIOROFƒDS.W…1•RESETOFFSET01719ƒ0000000600000001…XIOREVƒDS.B…1•RESETVALUE&1720ƒ0000000700000001ŽDS.B…1•RESERVED!1721Œ00000008…XIOXLNƒEQU†*•LENGTH1722™*-1723™*ˆEQUATESFOR'XIOOPT'(8BITS)ALLOCATE1724™*E1725Œ00000000…XOPSHRƒEQU†0•Onlysystemtasksmayattachthischannel.31726Œ00000001…XOPEXCƒEQU†1•Reserved(usedbyCHPI)./1727Œ00000004…XOPDIRƒEQU†4•Exclusivevectoring.N1728Œ00000008…XOPSUBƒEQU†8•Thischannelistobesubordinatetothesupervisor#1729™*§whosemnemonicisinCCBSUP.H1730Œ00000010…XOPSUPƒEQU†$10“Thischannelistobeasupervisorchannel.1731™* MMOTOROLAM68000ASMVERSION‚1.30IO‚:ƒ0.ˆ.IOHDRV‚.SA09/16/8214:02:47žPAGE‚33(VERSADOS4.0I/ODRIVERPROCESSEXAMPLE• '1732™*ˆATTACHPARAMETERBLOCKSTRUCTURE1733™*/1734¢OFFSETƒXIOPRMSTARTWITHPARAMETERSOFFSET71735ƒ0000000800000001…XIOKEYƒDS.B…1•USERGENERATEDKEY<1736ƒ0000000900000001…XIOSLNƒDS.B…1•LENGTHOFSTATUSRETURN31737ƒ0000000A00000004…XIOVADƒDS.L…1•VECTORADDRESS21738ƒ0000000E00000002…XIOTOCƒDS.W…1•TIMEOUTCOUNT01739ƒ0000001000000002…XIORETƒDS.W…1•RETRYCOUNT1740™*+1741™*ˆEQUATESFOR'XIOOPT'(8BITS)ATTACH1742™*(1743Œ00000000…XOPWUPƒEQU†0•ISSUEWAKE-UP.1744Œ00000001…XOPASQƒEQU†1•ISSUEASQINTERRUPT*1745Œ00000000…XOPPROƒEQU†0•I/OANDPROCEED'1746Œ00000002…XOPWATƒEQU†2•I/OANDWAIT21747Œ00000003…XOPSRVƒEQU†3•SERVICEVECTORSUPPLIED1748™*+1749™*ˆEQUATESFOR'XIOOPT'(8BITS)DETACH1750™*21751Œ00000000…XOPONEƒEQU†0•DETACHONLYONECHANNEL.1752Œ00000001…XOPALLƒEQU†1•DETACHALLCHANNELS1753™*-1754™*ˆINITIATEI/OPARAMETERBLOCKSTRUCTURE1755™*/1756¢OFFSETƒXIOPRMSTARTWITHPARAMETERSOFFSET,1757ƒ0000000800000004…XIOTSKƒDS.L…1•TASKID81758ƒ0000000C00000004…XIOSESƒDS.L…1•TASKSESSIONNUMBER1759Œ00000010…XIOCHNƒEQU†*)1760™*ˆNON-STANDARDCHANNELUNIQUEFIELDS91761ƒ0000001000000004…XIOSADƒDS.L…1•STARTBUFFERADDRESS51762ƒ0000001400000004…XIOBLNƒDS.L…1•LENGTHOFBUFFER>1763ƒ0000001800000004…XIOBOFƒDS.L…1•ADDRESSOFBUFFERPOINTER=1764ƒ0000001C00000004…XIOCADƒDS.L…1•COMMANDSEQUENCEADDRESS?1765ƒ0000002000000002…XIOCLNƒDS.W…1•LENGTHOFCOMMANDSEQUENCE31766ƒ0000002200000002…XIOCOFƒDS.W…1•COMMANDOFFSET<1767ƒ0000002400000004…XIOTADƒDS.L…1•TRANSIENTSPACEADDRESS>1768ƒ0000002800000002…XIOTLNƒDS.W…1•LENGTHOFTRANSIENTSPACE:1769ƒ0000002A00000004…XIORTNƒDS.L…1•RETURNSTATUSPOINTER!1770Œ0000002E…XIOILNƒEQU†*•LENGTH%1771™*ˆSTANDARDCHANNELUNIQUEFIELDS1772¢OFFSETƒXIOCHNC1773ƒ0000001000000004…XIOUIDƒDS.L…1•USERSUPPLIEDID(DCBPOINTER)A1774ƒ0000001400000004…XIOCPKƒDS.L…1•STARTCOMMANDPACKETADDRESS21775ƒ0000001800000002…XIOPLNƒDS.W…1•PACKETLENGTH$1776Œ0000001A…XIONLNƒEQU†*•PBLENGTH1777™*11778™*ˆEQUATESFOR'XIOOPT'(8BITS)INITIATEI/O1779™*01780" Œ00000000…XOPDCPƒEQU†0•DRIVERCOMMANDPACKET31781Œ00000001…XOPRCPƒEQU†1•REQUESTORCOMMANDPACKET1782™*"1783™*CMRTRAP1EXECERRORCODES1784™*31785Œ0000000B…XSTMNOƒEQU†$0B“CHANNELMNEMONICERROR1786™*1787™*ˆINIT.I/OSUBCODES1788™*'1789Œ00000000…XDSCMDƒEQU†0•INITIATEI/O MMOTOROLAM68000ASMVERSION‚1.30IO‚:ƒ0.ˆ.IOHDRV‚.SA09/16/8214:02:47žPAGE‚34(VERSADOS4.0I/ODRIVERPROCESSEXAMPLE• 1790Œ00000001…XDRESTƒEQU†1•RESET"1791Œ00000002…XDHALTƒEQU†2•HALTIO,1792Œ00000003…XDRESBƒEQU†3•RESUBMITSEQUENCE1793™*01794™*ˆEQUATESFORRETURNSTATUS(D0ANDXRSSTA)1795™*;1796Œ00000081…XSTNATƒEQU†$81“CHANNELNOTATTACHEDTOCALLER=1797Œ00000082…XSTAATƒEQU†$82“CHANNELATTACHEDTOANOTHERTASK-1798Œ00000083…XSTOFFƒEQU†$83“CHANNELOFF-LINE)1799Œ00000084…XSTBSYƒEQU†$84“CHANNELBUSY?1800Œ00000085…XSTINVƒEQU†$85“INVALIDCALLFORTHISCHANNELTYPE1801™*81802Œ00000091…XSTCPSƒEQU†$91“COMMANDPACKETSTRUC.ERROR11803Œ00000092…XSTCMEƒEQU†$92“CHANNELMARKEDERROR01804Œ00000093…XSTADSƒEQU†$93“BUFFERLENGTHERROR/1805Œ00000094…XSTADBƒEQU†$94“BASEADDRESSERROR1806™*71807Œ000000A1…XSTSMBƒEQU†$A1“SHAREDMEMORYBUSY(FATAL)/1808Œ000000A2…XSTUANƒEQU†$A2“UNEXPECTEDACK/NAK,1809Œ000000A3…XSTMANƒEQU†$A3“MISSINGACK/NAK31810Œ000000A4…XSTSYNƒEQU†$A4“IPCACK/NAKSYNCERROR31811Œ000000A5…XSTBCMƒEQU†$A5“BADCMDCOUNTEXCEEDED01812Œ000000A7…XSTSHMƒEQU†$A7“SHAREDMEMORYERROR1813™*91814Œ000000B1…XSTRNGƒEQU†$B1“COMMANDSEQUENCERANGEERROR41815Œ000000B2…XSTIBBƒEQU†$B2“ILLEGALBACKWARDBRANCH41816Œ000000B3…XSTIOPƒEQU†$B3“ILLEGALCOMMANDOP-CODE61817Œ000000B4…XSTHLTƒEQU†$B4“I/OCOMMANDSEQUENCEHALT>1818Œ000000B5…XSTSDAƒEQU†$B5“SOURCEFIELDDEVICEADDRESSERROR>1819Œ000000B6…XSTSBAƒEQU†$B6“SOURCEFIELDBUFFERADDRESSERROR@1820Œ000000B7…XSTSTAƒEQU†$B7“SOURCEFIELDTRANSIENTADDRESSERRO=1821Œ000000B8…XSTDDAƒEQU†$B8“DEST.FIELDDEVICEADDRESSERROR=1822Œ000000B9…XSTDBAƒEQU†$B9“DEST.FIELDBUFFERADDRESSERROR@1823Œ000000BA…XSTDTAƒEQU†$BA“DEST.FIELDTRANSIENTADDRESSERROR1824™*-1825Œ000000C6…XSTSESƒEQU†$C6“BADSESSIONCODE/1826Œ000000C7…XSTBUFƒEQU†$C7“BADBUFFERADDRESS.1827Œ000000C8…XSTBLNƒEQU†$C8“BADBUFFERLENGTH/1828Œ000000C9…XSTCADƒEQU†$C9“CHANNELADR.ERROR1829™*31830™*ˆDATASTRUCTUREFORNON-STANDARDRETURNEVENT1831™*&1832¢OFFSETƒ0•STARTWITHVARIABLEDATA*1833ƒ0000000000000001ŽDS.B…1•EVENTLENGTH(1834ƒ0000000100000001ŽDS.B…1•EVENTCODE01835ƒ0000000200000001…XRSSTAƒDS.B…1•STATUSCODE01836ƒ0000000300000001…XRSKEYƒDS.B…1•CHANNELKEY81837ƒ0000000400000002…XRSPTRƒDS.W…1•LASTCOMMANDNUMBER!1838Œ00000006…XRSLENƒEQU†*•LENGTH1839™*61840™*ˆDATASTRUCTUREFORTYPE(70,71,FF)RETURNEVENT1841™*&1842¢OFFSETƒ0•STARTWITHVARIABLEDATA*1843ƒ0000000000000001ŽDS.B…1•EVENTLENGTH(1844ƒ0000000100000001ŽDS.B…1•EVENTCODE/1845ƒ0000000200000001…XRPSTAƒDS.B…1•EVENTTYPE01846ƒ0000000300000001…XRPKEYƒDS.B…1•CHANNELKEY?1847ƒ0000000400000004…XRPUIDƒDS.L…1•USERSUPPLIEDID(DCBPTR) MMOTOROLAM68000ASMVERSION‚1.30IO‚:ƒ0.ˆ.IOHDRV‚.SA09/16/8214:02:47žPAGE‚35(VERSADOS4.0I/ODRIVERPROCESSEXAMPLE• 11848ƒ0000000800000002…XRPSTVƒDS.W…1•STATUSVALUE,1849Œ0000000A…XRPPRMƒEQU†*•STATUSPARAMETERS1850™*$1851™*ˆEQUATESFOR'XRPSTA'(8BITS)1852™**1853Œ00000070…XPSNRMƒEQU†$70“NORMALRETURN'1854Œ00000071…XPSHLTƒEQU†$71“HALT/ABORT51855Œ00000080…XPSUNSƒEQU†$80“UNSOLICITEDDEVICEEVENT61856Œ000000FF…XPSUNRƒEQU†$FF“UNSOLICITEDCHANNELEVENT1857™*1858™*ˆEQUATESFOR'XRPSTV'1859™*81860Œ00000000…XSTVABT‚EQU†0•INVALITHALTCOMMAND(ABORT))1861Œ00000000…XSTVDST‚EQU†0•DEVICESTATUS71862Œ00000001…XSTVNID‚EQU†1•DEVICESTATUS(NOIDGIVEN)*1863Œ00000000…XSTVRSETEQU†0•CHANNELRESET*1864Œ000000FF…XSTVDWN‚EQU†$FF“CHANNELDOWN1865™*L1866™*‚RemainderofeventifXRPSTA=$80andXRPSTV=0.‚ThisistheformatforM1867™*‚anunsolicitedeventifINITIATEI/Ocommandshavebeendoneandhence1868™*‚thedeviceIDisknown.1869™*/1870¢OFFSETƒXRPPRMSTARTWITHPACKETPARAMETERS21871ƒ00000" 00A00000001…XRPDSTƒDS.B…1•DEVICESTATUS01872ƒ0000000B00000001…XRPDTPƒDS.B…1•DEVICETYPE!1873Œ0000000C…XRPLENƒEQU†*•LENGTH1874™*H1875™*‚RemainderofeventifXRPSTA=$80andXRPSTV=1.‚ThisistheformatO1876™*‚foranunsolicitedeventifnoINITIATEI/Ocommandshavebeendoneyet.1877™*1878¢OFFSETƒXRPLEN218NSƒEQU†$80“UNS000001…XRPDNOƒDS.B…1•DEVICENUMBER&1880ƒ0000000D00000001ŽDS.B…1•RESERVED"1881Œ0000000E…XRP1LEN‚EQU†*•LENGTH1882™*&1883™*ˆCHANNELCOMMANDDIRECTIVECODES1884™*#1885Œ00000001…XDCALLƒEQU†1•ALLOCATE!1886Œ00000002…XDDELTƒEQU†2•DELETE!1887Œ00000003…XDATCHƒEQU†3•ATTACH!1888Œ00000004…XDDTCHƒEQU†4•DETACH'1889Œ00000005…XDONLNƒEQU†5•MARKONLINE(1890Œ00000006…XDOFLNƒEQU†6•MARKOFFLINE'1891Œ00000007…XDINITƒEQU†7•INITIATEI/O1892™*'1893™*ˆDIRECTIVENUMBERFORCHANNELI/O1894™*-1895Œ0000003C…XCAIO„EQU†60”ARBITRARYI/OCODE21896Œ0000003C…XCCMR„EQU†60”CHANNELMANAGEMENTCODE1897™*21898™*ˆDATASTRUCTUREFORCHANNELDATABLOCK(CDB)1899™* 1900¢OFFSETƒ021901ƒ0000000000000004…XCDBPTR‚DS.L…1•NEXTPOINTERI1902ƒ0000000400000002…XCDBOPT‚DS.W…1•OPTIONSTOUSEINALLOCATECOMMAND.61903ƒ0000000600000004…XCDBAID‚DS.L…1•ASCIIIDENTIFIER<1904ƒ0000000A00000014…XCDBPRM‚DS.B…XIOALN-XIOPRM‰PARAMETERS1905™* MMOTOROLAM68000ASMVERSION‚1.30IO‚:ƒ0.ˆ.IOHDRV‚.SA09/16/8214:02:47žPAGE‚36(VERSADOS4.0I/ODRIVERPROCESSEXAMPLE• ,1906™*ˆDRIVERTRANSIENTSPACEDATASTRUCTURE1907™*$1908¢OFFSETƒ0•STARTWITHZEROOFFSET11909ƒ0000000000000004…ZSTAT„DS.L…1•DEVICESTATUS.1910ƒ0000000400000004…ZOPT…DS.L…1•I/OOPTIONS21911ƒ0000000800000004…ZDOPT„DS.L…1•DRIVEROPTIONS81912ƒ0000000C00000004…ZRLEN„DS.L…1•DEVICERECORDLENGTH21913ƒ0000001000000004…ZBCNT„DS.L…1•BUFFERCOUNTER;1914ƒ0000001400000004…ZBPTR„DS.L…1•BUFFERRELATIVEPOINTER51915ƒ0000001800000004…ZEOLC„DS.L…1•ENDOFLINECHAR.21916ƒ0000001C00000004…ZCRNULƒDS.L…1•CRNULLCOUNT<1917ƒ0000002000000004…ZSBITSƒDS.L…1•PROGRAMBYTEFORDEVICE81918ƒ0000002400000004…ZBAL…DS.L…1•BRANCHANDLINKVALUE41919ƒ0000002800000004…ZNCNT„DS.L…1•NULLPADCOUNTER71920ƒ0000002C00000004…ZBUF…DS.L…1•TEMP.STORAGEBUFFER91921ƒ0000003000000004…ZMODE1ƒDS.L…1•2661MODEREGISTER191922ƒ0000003400000004…ZMODE2ƒDS.L…1•2661MODEREGISTER21923Œ00000038…TSPACEƒEQU†*1924™*11925™*ˆDRIVERCHANNELCONTROLAREADATASTRUCTURE1926™*$1927¢OFFSETƒ0•STARTWITHZEROOFFSET31928ƒ0000000000000004…ZCID…DS.L…1•CHANNELMNEMONIC-1929ƒ0000000400000002…ZSTW…DS.W…1•STATEWORD.1930ƒ0000000600000001…ZKEY…DS.B…1•CHANNELKEY.1931ƒ0000000700000001…ZRSET„DS.B…1•RESETFLAG81932ƒ0000000800000004…ZBSAD„DS.L…1•STARTBUFFERADDRESS;1933ƒ0000000C00000004…ZTSAD„DS.L…1•TRANSIENTSPACEADDRESS*1934ƒ0000001000000004…ZPTR…DS.L…1•POINTER1935Œ00000014…ZLEN…EQU†*•LENGTH1936™*1937™*ˆZSTW(STATEWORD)VALUES1938™*)1939™*’-1=TERMINATION(NOTHINGPENDING)1940™*“0=NOTACTIVE1941™*“1=I/OINPROGRESS MMOTOROLAM68000ASMVERSION‚1.30IO‚:ƒ0.ˆ.IOHDRV‚.SA09/16/8214:02:47žPAGE‚37(VERSADOS4.0I/ODRIVERPROCESSEXAMPLE• O1944™**************************************************************************1945™*1946™*P1947™*ƒThefollowingcodehasbeenextractedfromanoperatingI/OdriverandisS1948™*meanttoserveonlyasanaidtounderstandingchannelI/OdriversandtheirR1949™*interfacetoVERSAdosandthetaskrequestingtheI/O.ThestructureoftheQ1950™*codeandthetechniquesusedthereinareneitherrecommendednorsupportedR1951™*byMOTOROLA.AlthoughthecodesuppliedisbelievedtoberelativelydeviceS1952™*independent,noguaranteeismadethattheadditionofonlydevicedependent41953™*codewillproduceafunctionaldevicedriver.1954™*,1955™*ƒPURPOSE:‚CHANNEL(DEVICE)I/OHANDLER1956™*41957™*ƒENTRY:‚JSRFROMCMRHANDLER(COMMANDSERVICE)%1958™*‹JSRFROMCMRINTERRUPTHANDLER1959™*21960™*ƒEXIT:-ALWAYSEXITSWITHARTSINS# TRUCTION1961™*1962™*1963™*ƒCODEISRE-ENTRANT1964™*1965™*M1966™*-----------------------------------------------------------------------1967™* MMOTOROLAM68000ASMVERSION‚1.30IO‚:ƒ0.ˆ.IOHDRV‚.SA09/16/8214:02:47žPAGE‚38(VERSADOS4.0I/ODRIVERPROCESSEXAMPLE• 1969™DRVORG:1970™*-1971™****************************************-1972™*EQUATESFORSPECIALASCIICHARACTERS*-1973™****************************************1974™*1975Œ00000000…NUL†EQU‡$00‘Null1976Œ00000007…BEL†EQU‡$07‘Bell"1977Œ00000008…BS‡EQU‡$08‘Backspace"1978Œ0000000A…LF‡EQU‡$0A‘Linefeed"1979Œ0000000C…FF‡EQU‡$0C‘Formfeed(1980Œ0000000D…CR‡EQU‡$0D‘Carriagereturn!1981Œ00000020…SPACE„EQU‡$20‘Blank19821983™*1984™******************1985™*DEVICEEQUATES*1986™******************1987™*91988Œ00000002…DEV1ACƒEQU‡2“A-sidecontrolregisteroffset91989Œ00000006…DEV1BCƒEQU‡6“B-sidecontrolregisteroffset61990Œ00000000…DEV1ADƒEQU‡0“A-sidedataregisteroffset61991Œ00000004…DEV1BDƒEQU‡4“B-sidedataregisteroffset1992™*.1993Œ00000004…STRBSYƒEQU‡%00000100‹Devicebusy21994Œ00000001…STRSELƒEQU‡%00000001‹Deviceselected1995™*71996Œ0000003E…DSDVIAƒEQU‡$3E‘DisabledA-sideinterrupts71997Œ0000003C…DSDVIBƒEQU‡$3C‘DisabledB-sideinterrupts19981999™*2000™*************************2001™*MISCELLANEOUSEQUATES*2002™*************************2003™*)2004Œ00000001…IOEVCD„EQU„1’I/Oeventcode  62006Œ00000007…VALATM„EQU„%111Maskofdriversupported2007™*£attributes.F2008Œ0000FFF8…NVALATMƒEQU„$FFFF-VALATM‡Maskofunsupportedattributes.  92010Œ00000007…VALPRM„EQU„1<214470000002734•DC.Bƒ'4'’ThisistheminimummajorVERSAdos+2145™*£revisionlevelwithwhichthedriver.2146™*£iscompatible.Themajorrevisionlevel.2147™*£isthenumbertotheleftoftheperiod2148™*£asinVERSADOS4.XX. MMOTOROLAM68000ASMVERSION‚1.30IO‚:ƒ0.ˆ.IOHDRV‚.SA09/16/8214:02:47žPAGE‚43(VERSADOS4.0I/ODRIVERPROCESSEXAMPLE• O2150™**************************************************************************2151™*!2152™*‰COMMANDTABLE&JUMPTABLE2153™*?2154™*‰Theseareusedbythecommandserviceroutinetojumpto32155™*‰theappropriateroutinetohandleacommand.2156™*O2157™**************************************************************************2158™* 2159™CMDTBL:/21607000000280002“DC.WƒIOWRITWRITEcommand.8216170000002A0140“DC.WƒIOSTATREQUESTSTATUScommand.3216270000002C0180“DC.WƒIOCNFGCONFIGUREcommand.F216370000002E8002“DC.WƒIOCHDCCHANGEDEFAULTCONFIGURATIONcommand.2164K2165Œ00000004…NUMCMDSƒEQU„(*-CMDTBL)/2‡Thenumberofcommandsinthetable.2166O21677000000300086‰JMPTBL:ƒDC.WƒWRITE-*ŒBiasestothecorrespondingroutines.#216870000003200A6“DC.WƒREQSTAT-*$216970000003400DC“DC.WƒCONFIGUR-*#217070000003600F6“DC.WƒCHNGDEF-*2171E2172Œ00000008…JMPOFF„EQU„JMPTBL-CMDTBL†Offsetbetweenthetwotables. MMOTOROLAM68000ASMVERSION‚1.30IO‚:ƒ0.ˆ.IOHDRV‚.SA09/16/8214:02:47žPAGE‚44(VERSADOS4.0I/ODRIVERPROCESSEXAMPLE• O2174™**************************************************************************2175™*2176™*C2177™*‹ThisistheI/OHandlerInitializationServiceRoutine.ThisI2178™*‰routineiscalledbyCMRwheneverachanneltobeservicedbythisA2179™*‰driverisallocated.CMRdeterminestheentrypointoftheI2180™*‰initializationroutinebyaddingthedriveroriginrelativeoffsetG2181™*‰inthethirdlongwordoftheservicevectortabletothedriver2182™*‰originaddress.2183™*I2184™*‹ThefunctionofthisroutineistoperformhardwareinitializationF2185™*‰ofthedeviceandsoftwareinitializationofanycontroltablesH2186™*‰requiredbythedriver.Notethatuponentrytothisroutine,theI2187™*‰interruptmaskiszero,soitiswisetodisableinterruptsbeforeJ2188™*‰performinghardwareinitialization.Howevertheinterruptmaskmust32189™*‰bereturnedtozerobeforereturningtoCMR.2190™*)2191™*ˆENTRY:‚ALLREGISTERSAREAVAILABLE2192™*A5=CCBPOINTER2193™*N2194™*************************************************************************2195™* 2196™DEVINIT:2197™*02198™*Executedeviceinitializationsubroutine.2199™*2200700000038—INHIBA…70000003846ED0042†MOVE.WCCBISR(A5),SRSetprocessorpriority.:220170000003C6106’BSR.S…DEVINITLŒInitializethedevice.220270000003E—ENABLH…70000003E46ED0040†MOVE.WCCBSR(A5),SRDropprocessorprioritybyone.2203 22047000000424E75’RTS›Return. MMOTOROLAM68000ASMVERSION‚1.30IO‚:ƒ0.ˆ.IOHDRV‚.SA09/16/8214:02:47žPAGE‚45(VERSADOS4.0I/ODRIVERPROCESSEXAMPLE• Q2206™****************************************************************************2207™*2208™*‚DEVICEINITIALIZATION2209™*G2210™*…FUNCTION:‚THISSUBROUTINECLEARSANYPENDINGINTERRUPTSFROMTHE#2211™*DEVICE,PROGRAMSTHEDEVICE.2212™*P2213™***************************************************************************2214™*2215™DEVINITL:2216P2217™*„Anydevicedependent,hardwareinitializationcoderequiredbythedriver'2218™*wouldnormallybeinsertedhere.2219 22207000000444E75’RTS›Return. MMOTOROLAM68000ASMVERSION‚1.30IO‚:ƒ0.ˆ.IOHDRV‚.SA09/16/8214:02:47žPAGE‚46(VERSADOS4.0I/ODRIVERPROCESSEXAMPLE• O2222™**************************************************************************2223™**2224™*ˆTHISIST$ HECOMMANDSERVICEROUTINE2225™*I2226™*ŒWhenausermakesanI/Orequest(TRAP#2),IOSissuesanInitiateJ2227™*‰I/OrequesttoCMRpassingtherequestingtasksTCBaddressandtheJ2228™*‰logicaladdressoftheusersIOCB.AllprocessingrelatedtoaccessL2229™*‰permission,proceedI/O,connectionwait,etc.ishandledbyIOSpriorK2230™*‰tosendingtheI/OrequesttoCMR.AsmuchprocessingaspossibleisH2231™*‰performedbythecommandroutineuptothepointwherethedriverG2232™*‰wouldbewaitingforthedevicetotransmitorreceivedata.TheI2233™*‰driverwouldthenenabletransmit/receiveinterruptsonthedeviceJ2234™*‰andreturntoCMR.NotethattheprocessorinterruptmaskissettoC2235™*‰zerouponentrytothisroutine.Therefore,interruptsshouldD2236™*‰bedisabledpriortoanyreprogrammingofthedevice,andtheK2237™*‰processorinterruptmaskshouldbesetbacktozerobeforereturningL2238™*‰toCMR.AlsonotethatalthoughcontrolisreturningtoCMR,IOSwillI2239™*‰notnotifytherequestingtaskofI/Ocompletion,untilthedriver)2240™*‰returnsacompletioneventtoIOS.2241™*"2242™*ƒENTRY:‚JSRFROMCMRHANDLERF2243™*‹A2-PhysicaladdressofInitiateI/OParameterblock(fromIOS)?2244™*‹A5-PhysicaladdressoftheCCBoftherequesteddevice=2245™*‹A6-Physicaladdressoftheattachedtask'sTCB(IOS)2246™*:2247™*ƒEXIT:‚RTS-PARAMETERBLOCKVALIDATIONSTATUSIND02248™*2249™*ƒREGISTERSUSED:ƒ012345672250™*”D********2251™*”A**P**PP2252™*/2253™*”A3=InitiateI/OCommandPacketaddress52254™*™(ThisistheIOCBoftheusersrequesttoIOS)2255™*”A0,A1=Miscellaneous2256™*$2257™*ƒEXECROUTINESCALLED:‚QEVENTT 2258™*šLOGPHY 2259™*šGETTCB2260™*2261™*ƒCODEISRE-ENTRANT2262™*O2263™**************************************************************************2264™* 2265™DEVUSER:2266™*.2267™*ConvertlogicalPBaddresstophysical.2268™*22697000000464285“CLR.L‚D5V22707000000482C2A0014MOVE.LXIOCPK(A2),D6†Setupaddressofcommandpacket(IOCB).O227170000004C3A2A0018MOVE.WXIOXLEN(A2),D5…Setuplengthofcommandpacket.C2272700000050226D0050MOVE.LCCBTASKA(A5),A1„SetupTCBpointer.>227370000005461000250BSR„IOHADRCK‹Callconversionroutine./22747000000586008“BRA.S‚DEVU010ŒGoodreturn.A227570000005A123C0086MOVE.B#ISTAIP,D1‰SetupIOSerrorcode.*227670000005E60000226BRA„NRMEXITŒExit.R22777000000622646‰DEVU010ƒMOVE.LD6,A3ŽSavephysicaladdressofcommandpacket.2278™*2279™*‚CheckforHALTcommand. MMOTOROLAM68000ASMVERSION‚1.30IO‚:ƒ0.ˆ.IOHDRV‚.SA09/16/8214:02:47žPAGE‚47(VERSADOS4.0I/ODRIVERPROCESSEXAMPLE• 2280™*@22817000000640C530110CMP.Wƒ#IOHALT,IOSFCT(A3)…HALTcommand?9228270000006867000142BEQ…HALT“BranchifHALTcommand.2283™*2284™*Seeifchannelisbusy.2285™*E228670000006C082D00070071‹BTSTW‚#CCBFGBSY,CCBFG(A5)‚Channelbusy?022877000000726708“BEQ.S‚DEVU020ŽBranchifno.N2288700000074103C0084MOVE.B#XSTBSY,D0‹Busy,setupchannelerrorcodeand-22897000000786000022ABRA„IOHUSRTNReturn. ‘–šž¢¦ª®²¶º¾ÂÆÊÎÒÖÚÞâæêîòö"úþMMOTOROLAM68000ASMVERSION‚1.30IO‚:ƒ0.ˆ.IOHDRV‚.SA09/16/8214:02:47žPAGE‚48(VERSADOS4.0I/ODRIVERPROCESSEXAMPLE• 2291™*P2292™***************************************************************************2293™*-2294™*‚Findthecommandinthecommandtable.2295™*2296™*2297™*2298 2299™DEVU020:T230070000007C3B6B0002009C‹MOVE.WIOSOPT(A3),CCBCOPT(A5)SaveIOCBoptionsinCCB.R23017000000822B6A00100098‹MOVE.LXIOUID(A2),CCBCID(A5)‚SaveDCBpointerinCCB.@23027000000882B4B00% 76MOVE.LA3,CCBCCB(A5)†SaveIOCBpointer.B230370000008C286A0010MOVE.LXIOUID(A2),A4†PickupDCBpointer.U23047000000902B6D0050007A‹MOVE.LCCBTASKA(A5),CCBTASKB(A5)‚SetupbuffertaskTCB.2305A23067000000967003“MOVEQ‚#NUMCMDS-1,D0†Setuptheloopcounter.G230770000009841FAFF8ELEA„CMDTBL,A0ŠA0<--addressofcommandtable.C230870000009C3C13“MOVE.WIOSFCT(A3),D6†Setupusercommandcode.2309M231070000009EBC58‰CMDSRCHƒCMP.W‚(A0)+,D6‹Searchthetableforthecommand.*23117000000A057C8FFFCDBEQƒD0,CMDSRCH‰*2312G23137000000A46608“BNE.S‚CMDERRIfwefoundthecommandinthetable,L23147000000A65C88“ADD.L‚#JMPOFF-2,A0‡getthecorrespondingentryfromtheI23157000000A83010“MOVE.W(A0),D0Œjumptableandjumptotheroutineto:23167000000AA4EF00000JMP„(A0,D0.W)Šhandlethecommand.2317X23187000000AE123C0082…CMDERR„MOVE.B#ISTAIF,D1‰Wedidn'tfindit,soexitwitherror.$23197000000B2600001D2BRA„NRMEXIT MMOTOROLAM68000ASMVERSION‚1.30IO‚:ƒ0.ˆ.IOHDRV‚.SA09/16/8214:02:47žPAGE‚49(VERSADOS4.0I/ODRIVERPROCESSEXAMPLE• Q2321™****************************************************************************2322™* 2323™*‰WRITE2324™*2325™*12326™*‚Entry:A2=addressofCMRparameterblock2327™*‰A3=addressofIOCB2328™*‰A4=addressofDCB2329™*‰A5=addressofCCB*2330™*‰A6=addressofattachedtask'sTCB2331™*2332™*2333™*Q2334™****************************************************************************2335™* 2336™WRITE:M23377000000B661000162ŽBSR‡IOSCOMNDothestuffcommontoallI/Ocommands.2338I23397000000BA08ED00070071ŠBSETW…#CCBFGBSY,CCBFG(A5)Markchannelbusy.  Q2341™*ƒBeforeinitiatinganyI/O,performanynecessarydevicepreparationand/or2342™*specialbookeeping.  U23447000000C0206D007AŽMOVE.L„CCBTASKB(A5),A0‡PickuptheTCBaddressofIOCBownerS23457000000C452280027ŽADD.B…#1,TCBIOCNT(A0)…andincrementhispendingI/Ocount.  D23477000000C8206D0090ŽMOVE.L„CCBPTR(A5),A0‡Setupbufferpointer.  2349823507000000CC610001FCŽBSR‡OUTPUTŽStartbufferoutput.2351)23527000000D0—UNMASK˜Enableinterrupts.E…7000000D046FC2000†MOVE.W#$2000,SRSetprocessorprioritytozero.123537000000D4600001CCŽBRA‡CMDEXITGOFINISHUP MMOTOROLAM68000ASMVERSION‚1.30IO‚:ƒ0.ˆ.IOHDRV‚.SA09/16/8214:02:47žPAGE‚50(VERSADOS4.0I/ODRIVERPROCESSEXAMPLE• R2355™*****************************************************************************2356™*2357™*‰REQUESTSTATUS2358™*)2359™*‰Entry:A3=addressofuser'sIOCB2360™*A5=addressofmyCCB2361™*2362™*‰ExitstoNRMEXIT2363™*R2364™*****************************************************************************2365™* 2366™REQSTAT:23672368™*J2369™*‚Gettheaddressofhisdatablockandmoveourconfigurationthere.2370™*J23717000000D86100018ABSR„CNFGADRŒGetthephysicaladdressoftheusers2372™*£configurationblock.  H23747000000DC611C“BSR.S‚STATYPSetupthedevicestatus,channeltype,+2375™*£devicetype,anddrivercodesinthe2376™*£user'sconfigureblock.  Z23787000000DE317C00070004‹MOVE.W#VALATM,IOSATM(A0)„Returnthesupportedattributesand^23797000000E4317C00070006‹MOVE.W#VALPRM,IOSPRM(A0)‚parametersmasksintheusersconfigure 2380™*¤block.  V23827000000EA700F“MOVE.L#(IOSXLN/2)-1,D0ƒD0<--loopcontroltomoveentireblock.<23837000000EC32D8‰REQLOOPƒMOVE.W(A0)+,(A1)+ˆMoveaword.M23847000000EE51C8FFFCDBRAƒD0,REQLOOP‰Keepmovinguntilwholeblockmoved.2385?23867000000F2123C0000MOVE.B#ISTAOK,D1‰ExitwithOKstatus.&23877000000F66000018EBRA„NRMEXITŒ* MMOTOROLAM68000ASMVERSION‚1.30IO‚:ƒ0.ˆ.IOHDRV‚.SA09/16/8214:02:47žPAGE‚51(VERSADOS4.0I/ODRIVERPROCESSEXAMPLE• Q2389™****************************************************************************2390™*2391™*„RETURNDEVICESTATUS2392™*72393™*„ThissubroutinestoresthecurrentdevicestatusJ% 2394™*‚channeltype,devicetype,anddrivercodeintotheusersconfigureQ2395™*‚block.NotethatthesevaluesarereturnedonlyonRETRIEVEDEVICESTATUS/P2396™*‚CONFIGURATION,CONFIGUREDEVICE,andCHANGEDEFAULTCONFIGURATIONrequestsP2397™*‚onlywhennoconfigurationerrorwasdetected.Notethatinthisexample,R2398™*‚azeroisreturnedinthestatusbytetoindicatethatthedeviceisalwaysO2399™*‚assumedtobeready.Ingeneral,however,thestatusvaluereturnedbyaP2400™*‚driverisapplicationdependentandmanydifferentvaluesmaybereturned&2401™*‚dependingonthecircumstances.2402™*S2403™******************************************************************************2404 2405™STATYP:2406C24077000000FA4210“CLR.B‚IOSDST(A0)ŽReturnon-linedevicestatus.]24087000000FC116D00180001‹MOVE.BCCBTYPE(A5),IOSCTP(A0)‚Returnthechanneltypedefinedin2409™*¨theCCB.N2410700000102117C00470002‹MOVE.B#XDSDEV,IOSDTP(A0)†Returnthedevicetype.M2411700000108117C00080003‹MOVE.B#IODDEV,IOSDRC(A0)†Returnthedrivertype241270000010E4E75“RTS MMOTOROLAM68000ASMVERSION‚1.30IO‚:ƒ0.ˆ.IOHDRV‚.SA09/16/8214:02:47žPAGE‚52(VERSADOS4.0I/ODRIVERPROCESSEXAMPLE• R2414™*****************************************************************************2415™*2416™*‰CONFIGURE2417™*E2418™*‰ThiscommandchangestheCCBconfiguration,theonefromwhichA2419™*‰thedriversetsupthedeviceandunderwhichitperforms.2420™*12421™*‰Entry:A2=addressofCMRparameterblock"2422™*A3=addressofuser'sIOCB2423™*A5=addressofmyCCB2424™*2425™*‰ExitstoNRMEXIT2426™*R2427™*****************************************************************************2428™*2429™CONFIGUR:24302431™*G2432™*‚Getthephysicaladdressoftheuser'sconfigurationdatablock.2433™*J243470000011061000152BSR„CNFGADRŒGetthephysicaladdressoftheusers 2435™*£configurationdatablock.  I2437700000114286A0010MOVE.LXIOUID(A2),A4†A4<--baseaddressofDCB.2438U2439700000118143C0001MOVE.B#CECCDO,D2ŠIfhe'stryingtochangethewritetimeout[244070000011C082900020007‹BTSTW‚#IOSWTOB,IOSPRM(A1)value,returnaconfigurationerror."24417000001226664“BNE.S‚CNFGERR  `2443700000124216C00780010‹MOVE.LDCBDEV+IOSWTO(A4),IOSWTO(A0)Update(intheCCB)thetimeoutC244470000012A6010“BRA.S‚CMNCNFGŒvaluesfromtheDCB,sotheycan12445™*£becopied,anddothecommonconfiguration2446™*£processing. MMOTOROLAM68000ASMVERSION‚1.30IO‚:ƒ0.ˆ.IOHDRV‚.SA09/16/8214:02:47žPAGE‚53(VERSADOS4.0I/ODRIVERPROCESSEXAMPLE• R2448™*****************************************************************************2449™*#2450™*‰CHANGEDEFAULTCONFIGURATION2451™*;2452™*‰ThiscommandchangestheDCBconfiguration,towhich92453™*‰IOSwillrestoreus(viaaCONFIGUREcommand)when42454™*‰FHSclosesthelastallocationofthedevice.2455™*)2456™*‰Entry:A3=addressofuser'sIOCB2457™*A5=addressofmyCCB2458™*2459™*‰ExitstoNRMEXIT2460™*R2461™*****************************************************************************2462 2463™CHNGDEF:24642465™*M2466™*‚Firstgetthephysicaladdressoftheuser'sconfigurationdatablock.2467™*P246870000012C6100013ABSR„CNFGADR2‹Gettheaddressoftheusersconfiguration12469™*£datablock.ThisentrypointpreservesA0.  O2471700000130206A0010MOVE.LXIOUID(A2),A0ˆLoadtheaddressoftheDCBinA4J24727000001342848“MOVE.LA0,A4ŽandtheaddressoftheDCBconfiguration:2473700000136D1FC00000068‹ADD.L‚#DCBDEV,A0‰blockinA0.2474 MMOTOROLAM68000ASMVERSION‚1.30IO‚:ƒ0.ˆ.IOHDRV‚.SA09/16/8214:02:47žPAGE‚54(VERSADOS4.0I/ODRIVERPROCESSEXAMPLE• R2476™*****************************************************************************2477™*#2478™*‰COMMONCONFIGURATIONROUTINE2479™*<2480™*‰Thisroutinedoestheworkcommontothetwocommands22481™*‰CONFIGUREandCHANGEDEFAULTCO& NFIGURATION.2482™*<2483™*‰Entry:A0=AddressofCCBorDCBconfigurationblock12484™*A1=Addressofuser'sconfigurationblock2485™*R2486™*****************************************************************************2487 2488™CMNCNFG:2489™*Q2490™*ƒFirst,boththeattributesandparametersmasksarecheckedtoseeifbitsQ2491™*correspondingtounsupportedattributesorparametersareset.Ifanysuch72492™*bitsareset,aconfigurationerrorisreturned.2493™*O249470000013C343C0002MOVE.W#CECUAP,D2‹Setupforanerrorexitincasethe+2495™*£useristryingtochangeunsupported 2496™*£attributesorparameters.  Q2498700000140303CFFF8MOVE.W#NVALATM,D0ŠZerothebitsoftheusersattributesT2499700000144C0690004AND.W‚IOSATM(A1),D0†maskthatcorrespondtosupportedpara-I2500700000148663E“BNE.S‚CNFGERRŒmeters.Ifanyremainingbitsareset,2501™*£returnanerror.  Q250370000014A303CFFF8MOVE.W#NVALPRM,D0ŠZerothebitsoftheusersattributesT250470000014EC0690006AND.W‚IOSPRM(A1),D0†maskthatcorrespondtosupportedpara-I25057000001526634“BNE.S‚CNFGERRŒmeters.Ifanyremainingbitsareset,2506™*£returnanerror. MMOTOROLAM68000ASMVERSION‚1.30IO‚:ƒ0.ˆ.IOHDRV‚.SA09/16/8214:02:47žPAGE‚55(VERSADOS4.0I/ODRIVERPROCESSEXAMPLE• J2508™*‚Nextweneedtoseewhathisproposedconfigurationwilllooklike.I2509™*‚Plugintohisdatablockthecurrentvaluesforthoseattributes&D2510™*‚parametershedoesn'twanttochange.‚TheappropriatecurrentR2511™*‚configurationisatA0andtheusersconfigure/configuredefaultdatablock2512™*‚isatA1.2513™* 2514£OPT„BRSN251570000015430290004MOVE.WIOSATM(A1),D0†Setuptheusersattributemask.S2516700000158C1690008AND.W‚D0,IOSATW(A1)†ZeroouttheattributesofhisthatheB251770000015C4640“NOT.W‚D0‘doesn'twanttochange,zeroouttheT251870000015EC0680008AND.W‚IOSATW(A0),D0†attributesofminethathedoeswanttoR251970000016281690008OR.WƒD0,IOSATW(A1)†change,andcombinetheminhisspace.2520X252170000016630290006MOVE.WIOSPRM(A1),D0†Getmaskofparametershewantstochange.2522E252370000016AE248“LSR.W‚#1,D0ŽIfhe'snotchangingtheLINEWIDTH,+2524£IFTHENcopythecurrentsetting.9252570000016E3368000A000A‹MOVE.WIOSREC(A0),IOSREC(A1) 2526£ENDI2527E2528700000174E248“LSR.W‚#1,D0ŽIfhe'snotchangingtheLINES/PAGE,+2529£IFTHENcopythecurrentsetting.925307000001782368000C000C‹MOVE.LIOSRSZ(A0),IOSRSZ(A1) 2531£ENDI2532G253370000017EE248“LSR.W‚#1,D0ŽIfhe'snotchangingtheWRITETIMEOUT22534£IFTHENŽvalue,copythecurrentsetting.92535700000182236800100010‹MOVE.LIOSWTO(A0),IOSWTO(A1) 2536£ENDI2537 2538£OPT„BRL2539™*N2540™*ƒNowthattheusersconfigurationblockcontainstheproposedattributesL2541™*andparameters,theywillbecheckedforvaliditybeforecopyingthem2542™*intotheDCBorCCB.2543™*2544Q2545™*ƒAconfigurationerrorshouldbereturnedwheneverattributesorparametersQ2546™*specifiedbytheuserareinvalidorinconflictwithoneanother.IfsuchQ2547™*anerroroccurs,agenericerrorcodeisplacedintheusersIOSparameterR2548™*blockandaspecificconfigurationerrorcodeisplacedinthestatus/errorF2549™*byteoftheusersconfigure/configuredefaultsparameterblock.2550C2551™*‰MOVE.B#IOSXXX,D2ŠStorethespecificconfigurtionerrorcode 2552™*£inD2.  Z2554700000188123C00F5…CNFGERRƒMOVE.B#ISTACFG,D1‰ReturnaconfigurationerrorstatusinR255570000018C1282“MOVE.BD2,IOSCEC(A1)†theusersIOSparameterblockandreturnL255670000018E6018“BRA.S‚CNFGEXIT‹thespecificconfigurationerrorcodein%2557™*£theusersconfigurationblock. MMOTOROLAM68000ASMVERSION‚1.30IO‚:ƒ0.ˆ.IOHDRV‚.SA09/16/8214:02:47žPAGE‚56(VERSADOS4.0I/ODRIVERPROCESSEXAMPLE• K2559™*…SettheconfigurationflagbyteinthedeviceDCBtoindicatethataP2560™*‚C& ONFIGUREorCONFIGUREDEFAULTSrequestwasprocessed.FHSwillchecktheR2561™*‚flagwhenitclosesthelastassignmenttothedevicetoseeifitneedstoM2562™*‚tellIOStoissueaconfigurerequest.IOSwillthenissueaCONFIGUREO2563™*‚requestusingthedeviceDCBdefaultconfigurationparameters.ThiswillN2564™*‚alwaysforcethecurrentconfigurationtothedefaultwheneverthelast2565™*‚assignmentisclosed.2566™*N2567™*…SubroutineSTATYPiscalledtostorethecurrentdevicestatus,channelM2568™*‚type,devicetype,anddrivercodeintotheusersconfigurationblock.2569™*U257070000019050EC0092…OKCNFG„ST…DCBCAN(A4)‰FlagtheDCBthataCONFIGUREwasdone.  K25727000001946100FF64BSR„STATYPReturnthedevicestatus,channeltype,02573™*£devicetype,anddrivercodeintheusers2574™*£configurationblock.  M2576™*„TheproposedconfigurationhasbeenvalidatedsoitmaybecopiedintoO2577™*‚theCCBifprocessingaCONFIGURErequest,orintotheDCBifprocessingQ2578™*‚aCONFIGUREDEFAULTSrequest.AllfieldsbuttheattributesandparametersR2579™*‚masksarecopied.ThesefieldsmustremainunchangedfromboottimeastheyR2580™*‚areneededbyFHSandIOStorestoretheproperconfigurationwhenthelastL2581™*‚assignmenttothedeviceisclosedfollowingaCONFIGUREorCONFIGURE2582™*‚DEFAULTSrequest.  U2584700000198700B“MOVE.L#(IOSXLN-IOSATW)/2-1,D0„Setup#ofwords-1totransferO258570000019A5088“ADD.L‚#IOSATW,A0‰andthestartaddressesoftheATTRIBUTESP258670000019C5089“ADD.L‚#IOSATW,A1‰WORDintheusersconfigurationblock(A0),/2587™*£andtheCCB/DCBconfigurationblock(A1).2588X258970000019E30D9‰CNFGLOOP‚MOVE.W(A1)+,(A0)+ŠCopytheusersconfigurationdatablockO25907000001A051C8FFFCDBRAƒD0,CNFGLOOPˆintotheCCB/DCBconfigurationblock.  Q25927000001A4123C0000MOVE.B#ISTAOK,D1‹Ifaconfigurationerrorhasoccurred,V25937000001A8600000DC…CNFGEXIT‚BRA„NRMEXITŒtransfertothenormalexitroutinewith-2594™*£aConfigurationError($F5)codeinD1.*2595™*£elsereturnnoerrorstatusof$00. MMOTOROLAM68000ASMVERSION‚1.30IO‚:ƒ0.ˆ.IOHDRV‚.SA09/16/8214:02:47žPAGE‚57(VERSADOS4.0I/ODRIVERPROCESSEXAMPLE• M2597™************************************************************************2598™*2599™*‰HALTI/O2600™*82601™*‰ThiscommandstopstheI/Ocurrentlyinprogress.2602™*"2603™*‰Entry:A3=addressofIOCB2604™*A5=addressofCCB2605™*O2606™**************************************************************************2607 2608™HALT:H26097000001AC082D00070071ŠBTSTW‚#CCBFGBSY,CCBFG(A5)„AnyI/Opending?026107000001B2671A’BEQ.S‚HALTOK‘Branchifyes.2611!2612™*¦Therewasnothingtohalt.B26137000001B449ED007EŽLEA‡CCBPKT(A5),A4‡Setupqueueworkarea.526147000001B87006’MOVE.L„#6,D0Setuppacketsize.=26157000001BA123C0071ŽMOVE.B„#XPSHLT,D1ŠSetupeventtype.;26167000001BE242A0010ŽMOVE.L„XIOUID(A2),D2‡SetupPBid.@26177000001C2363C0000ŽMOVE.W„#XSTVABT,D3‰Setupstatusvalue.226187000001C6610001F8ŽBSR‡QEVNTGoqueueevent.,26197000001CA600000D6ŽBRA‡CMDEXITReturn.2620?26217000001CEŽHALTOK:ƒINHIB˜Inhibitinterruptsatthislevel.A…7000001CE46ED0042†MOVE.WCCBISR(A5),SRSetprocessorpriority.2622O26237000001D2266D0076MOVE.LCCBCCB(A5),A3‰SetpointeroftheoriginalIOCB.2624I26257000001D6226D0022MOVE.LCCBCHB(A5),A1‰Setupdevicebaseaddress.<26267000001DA6100FE68BSR„DEVINITLŽInitializethedevice.N26277000001DE08AD00070071‹BCLRW‚#CCBFGBSY,CCBFG(A5)ƒClearbusyflaginCCB.262826297000001E4˜UNMASKE…7000001E446FC2000†MOVE.W#$2000,SRSetprocessorprioritytozero.2630Z26317000001E8176D00BF0014‹MOVE.BCCBRLEN(A5),IOSLEN(A3)UpdateusersIOCBlengthfield.*2632' 7000001EE42AD00BFCLR.L‚CCBRLEN(A5)  U26347000001F2202D007AMOVE.LCCBTASKB(A5),D0‡PickuptheTCBaddressofIOCBownerS26357000001F653280027SUB.B‚#1,TCBIOCNT(A0)‡anddecrementhispendingI/Ocount.  2637™*&2638™*‚Preparetheeventandqueueit.2639™*T26407000001FA177C00E60004‹MOVE.B‚#ISTATO,IOSSTA(A3)ƒUpdatetheIOCBstatusfield.D2641700000200363C00E6MOVE.W‚#ISTATO,D3‹SetupeventstatusfieldE2642700000204123C0071MOVE.B‚#XPSHLT,D1‹Setupeventstatusvalue.526437000002087006“MOVE.L‚#6,D0Setupinfolength.>264470000020A242D0098MOVE.L‚CCBCID(A5),D2ˆSetupeventID.F264570000020E49ED007ELEA…CCBPKT(A5),A4ˆSetupeventbuildpointer./2646700000212610001ACBSR…QEVNTQueueevent.+26477000002166000008ABRA…CMDEXITŽRETURN2648 MMOTOROLAM68000ASMVERSION‚1.30IO‚:ƒ0.ˆ.IOHDRV‚.SA09/16/8214:02:47žPAGE‚58(VERSADOS4.0I/ODRIVERPROCESSEXAMPLE• Q2650™****************************************************************************2651™*2652™*H2653™*‰ROUTINECOMMONTOALLI/OCOMMANDS(READ,WRITE,OUTPUTW/INPUT)2654™*"2655™*‚Entry:A3=addressofIOCB2656™*‰A5=addressofCCB2657™*2658™*Q2659™****************************************************************************2660™* 2661™IOSCOMN:[266270000021A082B00070002‹BTSTW‚#IOPTSKB,IOSOPT(A3)Ifthebuffersresideinadifferent626637000002206718“BEQ.S‚IOSC005ŒtaskfromtheIOCB,2664Q266570000022241EB001CLEA„IOSTSK(A3),A0†Pointtothetaskname&sessionoftheF2666700000226˜TR0$.GETTCB‚,Œbufferowner&callexectogetaddress.00000002….009ASET2$…7000002267006ŠMOVE.L#T0GETTCB,D0…7000002284E40ŠTRAP#0žOPTCL6266770000022A600A“BRA.S‚OKTCBŽIfit'sgood,branch.%266870000022C4E71“NOP—Ifit'sbad,N266970000022E123C0094MOVE.B#XSTADB,D1‰setstatusinIOCBtoaddresserror-26707000002324A9F“TST.L‚(A7)+Žadjuststack326717000002346050“BRA.S‚NRMEXITŒandexittoCMR.2672S26737000002362B48007A…OKTCB…MOVE.LA0,CCBTASKB(A5)„SavephysicaladdressofTCB.26742675™*A2676™*‚ValidatetheinfointheIOCBabouttheprimarybufferand%2677™*‚converttophysicaladdresses.2678™*[267970000023A2C2B000C…IOSC005ƒMOVE.LIOSSAD(A3),D6†D6<--bufferphysicalstartaddress.C268070000023E2A2B0010MOVE.LIOSEAD(A3),D5†D5<--bufferlength."26817000002429A86“SUB.L‚D6,D5Ž*!26827000002445245“ADDQƒ#1,D5Ž*  I26847000002462F05“MOVE.LD5,-(A7)‹Savethebufferlengthonthestack.  V2686700000248226D007AMOVE.LCCBTASKB(A5),A1„A1<--addressofTCBofbufferowner.6268770000024C6158“BSR.S‚IOHADRCK‹Checktheaddress.8268870000024E6008“BRA.S‚IOSC010ŒIfit'sgood,branch.M2689700000250508F“ADDQ.L#8,A7ŽIfit'sabadbaseaddress,removesavedD5+2690™*£andadjustthestackreturnaddress.  L2692700000252123C0084MOVE.B#ISTAADD,D1ˆSetIOCBstatustoADDRESSERRORJ2693700000256602E“BRA.S‚NRMEXITŒandexitwithappropriateerrorstatus.2694Y26957000002582B460090…IOSC010ƒMOVE.LD6,CCBPTR(A5)†SavephysicalstartaddressinCCB.F269670000025CDC9F“ADD.L‚(A7)+,D6‹Savethephysicalendaddressplus>269770000025E2B460094MOVE.LD6,CCBEAP1(A5)…oneintheCCB.26987000002624E75“RTS MMOTOROLAM68000ASMVERSION‚1.30IO‚:ƒ0.ˆ.IOHDRV‚.SA09/16/8214:02:47žPAGE‚59(VERSADOS4.0I/ODRIVERPROCESSEXAMPLE• P2700™***************************************************************************2701™*B2702™*‰VALIDATECONFIGURATIONBUFFERADDRESS&CONVERTTOPHYSICAL2703™*)2704™*‰Entry:D5=bufferlengthinbytes22705™*D6=bufferlogicalstartaddr(toconvert)2706™*A3=addressofIOCB2707™*A5=addressofCCB2708™*/2709™*‰Exit:‚D6ƒ=bufferphysicalstartaddress2710™*D5ƒ=bufferlength2711™*P2712™***************************************************************************2713™*\27147' 0000026441ED009E…CNFGADRƒLEA.L‚CCBCFIG(A5),A0…ThisentrypointloadstheCCBconfig.2715™*£datablockintoA0.  C27177000002682F08‰CNFGADR2‚MOVE.LA0,-(A7)‹SaveA0onthestack.W271870000026A2C2B0008MOVE.LIOSDBP(A3),D6†D6<--logicaladdrofuser'sdatablock.C271970000026E7A20“MOVE.L#IOSXLN,D5‰D5<--lengthofdatablock.  V2721700000270226D007AMOVE.LCCBTASKB(A5),A1„A1<--addressofTCBofbufferowner.627227000002746130“BSR.S‚IOHADRCK‹Checktheaddress.927237000002766008“BRA.S‚CNFGADR3‹Ifit'sgood,branch.  K2725700000278508F“ADD.L‚#8,A7ŽIftheaddressorlengthisbad,cleantheT272670000027A123C0084MOVE.B#ISTAADD,D1ˆstack,setIOCBstatustoADDRESSERROR,J272770000027E6006“BRA.S‚NRMEXITŒandexitwithappropriateerrorstatus.  R27297000002802246‰CNFGADR3‚MOVE.LD6,A1ŽStorethephysicaladdressoftheusersM2730700000282205F“MOVE.L(A7)+,A0‹datablockinA1,restoreA0andreturn.27317000002844E75“RTS MMOTOROLAM68000ASMVERSION‚1.30IO‚:ƒ0.ˆ.IOHDRV‚.SA09/16/8214:02:47žPAGE‚60(VERSADOS4.0I/ODRIVERPROCESSEXAMPLE• T2733™*******************************************************************************2734™*2735™*ˆNORMALEXIT2736™*12737™*‚Entry:A2=addressofCMRparameterblock2738™*‰A3=addressofIOCB2739™*‰A4=addressofDCB2740™*‰A5=addressofCCB 2741™*‰A6=addressofusersTCB2742™*‰D1=IOSerrorcode2743™*N2744™*************************************************************************2745™* 2746™NRMEXIT:B274770000028649ED007EŽLEA‡CCBPKT(A5),A4‡Setupqueueworkarea.5274870000028A7006’MOVE.L„#6,D0Setuppacketsize.;274970000028C242A0010ŽMOVE.L„XIOUID(A2),D2‡SetupPBid.;2750700000290024100FFŽAND.W…#$FF,D1Maskforwordvalue.627517000002943601’MOVE.W„D1,D3Setupstatusvalue.G275270000029617410004ŽMOVE.B„D1,IOSSTA(A3)‡UpdateIOCBstatusfield.=275370000029A123C0070ŽMOVE.B„#XPSNRM,D1ŠSetupeventtype.2275470000029E61000120ŽBSR‡QEVNTGoqueueevent.%27557000002A24280‰CMDEXIT‚CLR.L…D02756™*=2757™*UserrequestsideofIOHalwaysexitsfromthispoint.2758™*27597Š000002A4…IOHUSRTN‚EQU„*+27607000002A44E75“RTS—RETURNTOMAINLINE MMOTOROLAM68000ASMVERSION‚1.30IO‚:ƒ0.ˆ.IOHDRV‚.SA09/16/8214:02:47žPAGE‚61(VERSADOS4.0I/ODRIVERPROCESSEXAMPLE• P2762™***************************************************************************2763™*G2764™*ƒSubroutinetocheckaddressboundariestoseeifentirelywithin#2765™*callingtasksaddressspace.2766™*+2767™*‚Entry:D5-‚numberofbytestocheck"2768™*‰D6-‚68000address(logical)2769™*‰A1-‚TCBaddress2770™*2771™*2772™*2773™*2774™*EXECROUTINE(2775™*REGISTERSUSED:D0-D1,D3,D6/A0-A12776™*2777™*<2778™*EXIT:„D6-PHYSICALADDRESSOFBUFFERBASE(IFLEGAL)$2779™*ŠRETURNTOPC„FORGOODADDRESS2780™*”PC+2‚FORBADLENGTH2781™*”PC+4‚FORBADADDRESS2782™*K2783™**********************************************************************2784™*2785™IOHADRCK:=27867000002A608060000BTSTƒ#0,D6‘Mustbeonworkboundary.=27877000002AA660E“BNE.S‚IOHADR6Branchifbadbufferbase.327887000002AC4A85“TST.L‚D5”Lengthcan'tbezero.F27897000002AE670C“BEQ.S‚IOHADR8Don'tgotologphywithzerocount.27907Š000002B0…IOHADR2ƒEQU„*I27917000002B020690036MOVE.LTCBTST(A1),A0‰Addressoftaskseg.table.27927000002B4˜TR0$.LOGPHY00000002….010ASET2$…7000002B47008ŠMOVE.L#T0LOGPHY,D0…7000002B64E40ŠTRAP#0žOPTCLB27937000002B86002“BRA.S‚IOHADR8Branchforgoodaddressreturn.H27947000002BA5497‰IOHADR6ƒADD.L‚#2,(A7)AdjustPCforinvalidreturn.(27957000002BC4E75‰IOHADR8ƒRTSšReturn. MMOTOROLAM68000ASMVERSION‚1.30IO‚:ƒ0.ˆ.IOHDRV‚.SA09/16/8214:02:47žPAGE‚62(VERSADOS4.0I/ODRIVERPROCESSEXAMPLE• N2797™*************************************************************************2798™*2799™*ˆGETTCBROUTINE2800™*.28( 01™*’ENTRY:A0=POINTERTOTASKANDSESSION2802™*2803™*2804™*’EXECROUTINE"2805™*’REGISTERSUSED:D0-D1/A0-A12806™*2807™*2808™*’EXIT:A0=TCBADRESS/2809™*˜RETURNTOPC„FORGOODTASKSPECIFICATION&2810™*¢PC+2‚FORBADTASKSPECIFICATION2811™*2812™*O2813™**************************************************************************2814™* 2815™GETTCB:28167000002BE˜TR0$.GETTCB00000002….011ASET2$…7000002BE7006ŠMOVE.L#T0GETTCB,D0…7000002C04E40ŠTRAP#0žOPTCL:28177000002C26004“BRA.S„GETT10ŽGoodtaskspecification.028187000002C44E71“NOPšBadtaskspecification.:28197000002C65497“ADD.L„#2,(A7)Badtaskspecification.'28207000002C84E75‰GETT10„RTSšReturn. MMOTOROLAM68000ASMVERSION‚1.30IO‚:ƒ0.ˆ.IOHDRV‚.SA09/16/8214:02:47žPAGE‚63(VERSADOS4.0I/ODRIVERPROCESSEXAMPLE• Q2822™****************************************************************************2823™* 2824™*‚OUTPUT2825™*)2826™*ˆThisisthedevice‚outputroutine.2827™*2828™*$2829™*ˆENTRY:‚A0=addressofbuffer"2830™*A1=addressofdevicebase2831™*A3=addressofIOCB2832™*A4=addressofDCB2833™*A5=addressofCCB2834™*R2835™*****************************************************************************2836 2837™OUTPUT:2838R2839™*ƒThisroutinewouldcontrollogicaloutputcontrolandwouldpossiblycallaR2840™*routinesuchasDEVOUTtohandlethephysical(i.e.characterbycharacter)-2841™*outputandhardwarecontrolfunctions.2842!28437000002CA6138“BSR.S‚DEVOUT2844 2845™OUTEND:2846™*72847™*‚Finishedtransfer,nowqueueeventtorequestor.2848™*G28497000002CC08AD00070071‹BCLRW‚#CCBFGBSY,CCBFG(A5)ƒClearbusyflag.D28507000002D2206D007AMOVE.LCCBTASKB(A5),A0‡PickupTCBaddress.K28517000002D653280027SUB.B‚#1,TCBIOCNT(A0)‡DecrementI/Opendingcount.2852E28537000002DA363C0000MOVE.W#ISTAOK,D3ŒSetupokIOSstatuscode.*28547000002DE4A00“TST.B‚D0”Anyfaults?728557000002E06704“BEQ.S‚OUTEND1Branchifnofaults.I28567000002E2363C00E1MOVE.W#ISTANR,D3ŒFault,setupIOSstatuscode.C28577000002E67006‰OUTEND1ƒMOVE.L#6,D0‘Setupeventinfolength.B28587000002E8123C0070MOVE.B#XPSNRM,D1ŒSetupeventtypecode.A28597000002EC242D0098MOVE.LCCBCID(A5),D2‰SetupDCBaddress.G28607000002F017430004MOVE.BD3,IOSSTA(A3)‰UpdateIOCBstatusfield.T28617000002F4276D00BF0014‹MOVE.LCCBRLEN(A5),IOSLEN(A3)‚UpdateIOCBlengthfield.2862B28637000002FA49ED007ELEA„CCBPKT(A5),A4‰Setupeventdataarea.G28647000002FE610000C0BSR„QEVNT‘Queuecompletioneventtorequestor.286528667000003024E75“RTS MMOTOROLAM68000ASMVERSION‚1.30IO‚:ƒ0.ˆ.IOHDRV‚.SA09/16/8214:02:47žPAGE‚64(VERSADOS4.0I/ODRIVERPROCESSEXAMPLE• T2868™*******************************************************************************2869™* 2870™*‚DEVOUT2871™*,2872™*ˆThisroutinewilloutputadatabyte,32873™*ˆandcheckforbusyandreprogramthedevice.2874™*2875™*ˆENTRY:„D0‚=databyte2876™*’A1‚=devicebaseaddress2877™*‘(SP)=returnaddress$2878™*4(SP)=DEVOUTreturnaddress#2879™*DEVICE=Interruptsdisabled2880™*12881™*ˆEXIT:…D0‚-Devicestatusregistercontents&2882™*NORMAL-D3.B=0ƒNormalreturn@2883™*FAULT-D3.B=$FFCleardeviceinterrupts,Normalreturn=2884™*BUSY‚-SavestackedsubroutinereturnaddressesinCCB%2885™*˜ReturntoCMRifcommandentry62886™*˜Returntointerruptroutineifinterruptentry.P2887™***************************************************************************2888™* 2889™DEVOUT:B28907000003044203’CLR.BƒD3“ClearD3inpreparationforanormal2891™*£return.  D2893™*‚Testthedevicetoseeifitisbusyorafaulthasoccurred.2894Q28957000003061B4000BE…DEVBSYƒMOVE.B‚D0,CCBSAVB(A5)ˆYes-busy,savedatabyte.F289670000030A2B5F00C3ŽMOVE.L‚(A7)+,CCBIRTN(A5)…Savereturnaddress.E289770000030E59AD00C3ŽS( UB.Lƒ#4,CCBIRTN(A5)ˆAdjustserviceaddress.  Y28997000003122B5F00C7ŽMOVE.L‚(A7)+,CCBISTK(A5)…SavesubroutinereturnaddressintoCCB  )2901700000316—INHIB™Disableinterrupts.A…70000031646ED0042†MOVE.WCCBISR(A5),SRSetprocessorpriority.2902™*Q2903™*ƒReprogramthedeviceasnecessarytogenerateaninterruptwhenthedevice2904™*isnolongerbusy.2905™*2906 290770000031A4E75’RTS›Return.2908™*#2909™*ƒAdevicefaulthasoccurred.2910™*2911L291270000031C20290004…DEVFLTƒMOVE.L‚DEV1BD(A1),D0‰Setupstatusregister.I29137000003206100FD22ŽBSR…DEVINITLŽReprogramdevicefornointerrupts.?291470000032450C3’ST†D3”SetD3non-zerotoindicateanerror829157000003266006’BRA.SƒDEVOEXandpreparetoreturn.2916B29177000003281280‰DEV020ƒMOVE.B‚D0,DEV1AD(A1)‰Outputdatabyte.29182919™*<2920™*‚Performanynecessaryhardwarecontrolofthedevice.2921™* MMOTOROLAM68000ASMVERSION‚1.30IO‚:ƒ0.ˆ.IOHDRV‚.SA09/16/8214:02:47žPAGE‚65(VERSADOS4.0I/ODRIVERPROCESSEXAMPLE• 2922H292370000032A10290004ŽMOVE.B‚DEV1BD(A1),D0‰Getstatusregisteragain.  @292570000032EŽDEVOEXƒENABL™EnableinterruptsandreturntotheH…70000032E46ED0040†MOVE.WCCBSR(A5),SRDropprocessorprioritybyone.)29267000003324E75’RTS™callingroutine. MMOTOROLAM68000ASMVERSION‚1.30IO‚:ƒ0.ˆ.IOHDRV‚.SA09/16/8214:02:47žPAGE‚66(VERSADOS4.0I/ODRIVERPROCESSEXAMPLE• ‡• #'+/37;$?%C"G&K(O#S)W-[+_+c)g$k)o%s&w&{('O2928™**************************************************************************2929™*,2930™*ƒTHISISTHEINTERRUPTSERVICEROUTINE2931™*H2932™*‹Whenaninterruptoccurs,thehardwareinterruptvectortransfersJ2933™*‰controltoalocationwithinthefirstCCBintheinterruptpollingI2934™*‰chainforthevectorcausingtheinterrupt.ThislocationcontainsJ2935™*‰aJSRtoCMRthusgivingCMRapointertotheCCBonthestack.CMRE2936™*‰thenperformsaprocessorstatesaveandaninterrupttraceifF2937™*‰tracingisenabled.CMRthentransferscontroltothedriverbyI2938™*‰addingthedriveroriginrelativeoffsetinthefirstlongwordof92939™*‰servicevectortabletothedriveroriginaddress.2940™*G2941™*‹Onentrytothedriverattheinterruptserviceentrypoint,theF2942™*‰processorinterruptmaskissettothehardwarepriorityoftheE2943™*‰interruptcausingentry.ThedrivermustinterrogatetheCCB'sF2944™*‰devicetodetermineiftheinterruptwascausedbythatdevice.I2945™*‰Ifnot,thedrivershouldreturnimmediatelytoCMRwiththecarryI2946™*‰bitcleartoindicatethatthedriverdidnotclaimtheinterrupt.E2947™*‰CMRthenjumpstothedriverforthenextCCBintheinterruptF2948™*‰pollingchainandtheprocessrepeates.IftheinterruptisnotH2949™*‰claimedbyanydriver,controlistransferedtotheRMS68KCommonG2950™*‰InterruptHandlertodetermineiftheinterruptistobehandledI2951™*‰byausermodetask.Ifnotaskisprocessingtheinterrupt,itisF2952™*‰discardedandcontrolisreturnedtothepointofinterruption.2953™*F2954™*‹Iftheinterruptisclaimedbythedriver,theremainderoftheG2955™*‰registersaresaved,checksaremadetoseeiftheinterruptwasC2956™*‰spurious,causedbyafault,orcausedbyatransmit/receiveF2957™*‰completion.InthecaseofaspuriousinterrupttheappropriateH2958™*‰actionisapplicationdependent.IftheinterruptwascausedbyaK2959™*‰devicefaultduringI/O,anerrorcodewouldbewrittentotheusersH2960™*‰IOCB,anI/OCompletioneventwouldbesenttoIOS,theinterrupt;2961™*‰wouldbeclearedandthedriverwouldreturntoCMR.2962™*J2963™*‹Iftheinterruptwascaus) edbythecompletionofatransmit/receiveH2964™*‰operationonthedevice,awidevarietyofmethodsmaybeusedtoJ2965™*‰resumeprocessingoftheuserI/Orequest.However,inallcasesitJ2966™*‰isessentialthat,assoonaspossible,theprocessorinterruptmaskI2967™*‰bereturnedtothelevelineffectpriortotheinterrupt.FailureI2968™*‰todothiscouldseverelyhampersystemthroughput.WhentheusersH2969™*‰I/Otransactioniscompleted,azeroiswrittenintheusersIOCBH2970™*‰statusbyteandanormalI/OcompletioneventissenttoIOS.The*2971™*‰driverthenreturnscontroltoCMR.2972™* MMOTOROLAM68000ASMVERSION‚1.30IO‚:ƒ0.ˆ.IOHDRV‚.SA09/16/8214:02:47žPAGE‚67(VERSADOS4.0I/ODRIVERPROCESSEXAMPLE• 02974™*ƒENTRY:‚JSR‚FROMINTERRUPTHANDLERROUTINE2975™*‹A0-WORKREGISTER2976™*‹A1=SELF2977™*‹A5=ADDRESSOFCCB2978™*‹D0=WORKREGISTER2979™*42980™*ƒEXIT:‚RTS-BACKTOINTERRUPTHANDLERROUTINE2981™*2982™*ƒREGISTERSUSED:ƒ012345672983™*”D********2984™*”A*****P**2985™*$2986™*ƒEXECROUTINESCALLED:‚QEVENTI2987™*2988™*ƒCODEISRE-ENTRANT2989™*K2990™*---------------------------------------------------------------------2991™*92992™*Ifchannelisoff-lineornotattached,justexit.2993™* 2994™DEVISR:F2995700000334226D0022MOVE.LCCBCHB(A5),A1‰Getdevicebaseaddress.2996M299770000033810290002MOVE.BDEV1AC(A1),D0‰PickupA-sidestatusregister.;299870000033C02000081AND.B‚#$81,D0Maskinterruptbits.:29997000003400C000081CMP.B‚#$81,D0Interruptpending?130007000003446714“BEQ.S‚DEVI010Branchifyes.M300170000034610290006MOVE.BDEV1BC(A1),D0‰PickupB-sidestatusregister.;300270000034A02000081AND.B‚#$81,D0Maskinterruptbits.:300370000034E0C000081CMP.B‚#$81,D0Interruptpending?130047000003526706“BEQ.S‚DEVI010Branchifyes.3005J3006700000354027CFFFEAND.W‚#$FFFE,SRNointerruptsosetconditionand 30077000003584E75“RTSšreturn.3008J300970000035A082D00010049DEVI010ƒBTSTW‚#CCBFGOFF,CCBSTR(A5)‚Off-line?130107000003606610“BNE.S‚DEVI020Branchifyes.Q3011700000362082D00070048‹BTSTW‚#CCBFGATH,CCBSTR(A5)‚Isthechannelattached?030127000003686708“BEQ.S‚DEVI020Branchifno.D301370000036A082D00070071‹BTSTW‚#CCBFGBSY,CCBFG(A5)ƒI/Opending?130147000003706612“BNE.S‚DEVI100Branchifyes.3015Q3016700000372226D0022…DEVI020ƒMOVE.LCCBCHB(A5),A1‰Setupdevicebaseaddress.@30177000003766100FCCCBSR„DEVINITLŽDisabledeviceinterrupts.3018301970000037A˜ENABLH…70000037A46ED0040†MOVE.WCCBSR(A5),SRDropprocessorprioritybyone.9302070000037E007C0001OR.Wƒ#$0001,SRSetconditionand 30217000003824E75“RTSšreturn. MMOTOROLAM68000ASMVERSION‚1.30IO‚:ƒ0.ˆ.IOHDRV‚.SA09/16/8214:02:47žPAGE‚68(VERSADOS4.0I/ODRIVERPROCESSEXAMPLE• S3023™******************************************************************************3024™*!3025™*INTERRUPTLEVELPROCESSING3026™*53027™*ˆIthasbeendeterminedthatI/Oisinprogress!3028™*ˆandtheinterruptisours.3029™*3030™*S3031™******************************************************************************3032™* 3033™DEVI100:U303470000038448E77F3AMOVEM.LD1-D7/A2-A4/A6,-(A7)Savetherestoftheregisters.I30357000003886100FCBABSR…DEVINITLReprogramdevicefornointerrupts.E303670000038C206D0090MOVE.L‚CCBPTR(A5),A0ˆRestorebufferpointer.I3037700000390102D00BEMOVE.B‚CCBSAVB(A5),D0‡Restorecurrentdatabyte.M3038700000394246D00C3MOVE.L‚CCBIRTN(A5),A2‡Getinterruptserviceaddress.?3039700000398266D0076MOVE.L‚CCBCCB(A5),A3ˆGetIOCBaddress.>304070000039C286D0098MOVE.L‚CCBCID(A5),A4ˆGetDCBaddress.P30417000003A0522D00CBADD.Bƒ#1,CCBICNT(A5)‡Incrementpendinginterruptcount.R30427000003A4487A0008PEA…DEVINRTN(PC)‰StacktheinterruptroutineexitaddressV30437000003A82F2D00C7MOVE.L‚CCBISTK(A5),-(A7)„Restoresubroutinereturnaddresson ) 3044™*¦stack.530457000003AC4ED2“JMP…(A2)‘Jumptooutputroutine.30463047™*33048™*DEVinterrupthandlerexitsfromthispoint.3049™*3050™DEVINRTN:O30517000003AE532D00CBSUB.Bƒ#1,CCBICNT(A5)‡DecrementpendinginterruptcountH30527000003B24CDF5CFEMOVEM.L(A7)+,D1-D7/A2-A4/A6Restoreregisters.30537000003B6˜ENABLH…7000003B646ED0040†MOVE.WCCBSR(A5),SRDropprocessorprioritybyone.@30547000003BA007C0001OR.Wƒ#$0001,SRSetreturnconditionand530557000003BE4E75“RTSšreturntointerrupthandler. MMOTOROLAM68000ASMVERSION‚1.30IO‚:ƒ0.ˆ.IOHDRV‚.SA09/16/8214:02:47žPAGE‚69(VERSADOS4.0I/ODRIVERPROCESSEXAMPLE• O3057™**************************************************************************3058™* 3059™*QEVNT3060™*#3061™*„Placemessageonuser'sASQ.3062™*!3063™*ˆA4=addressofeventarea3064™*ˆA5=addressofCCB,3065™*ˆD0=eventlength(minusheaderinfo)3066™*ˆD1=eventtype3067™*ˆD2=4byteid(DCB)"3068™*ˆD3=statusvalue(2bytes)#3069™*ˆD4=devicestatus(2bytes)"3070™*ˆD5=devicenumber(1byte)3071™*O3072™**************************************************************************3073™* 3074™QEVNT:.30757000003C02C00“MOVE.LD0,D6ŽSavelength.I30767000003C27E02“MOVE.L#2,D7ŽOffsetforstaging(noservicevector).K30777000003C4197C00010001‹MOVE.B#IOEVCD,1(A4)†Code(noservicevector).E30787000003CA296D003C0002‹MOVE.LCCBSVVC(A5),2(A4)‚Servicevector.?30797000003D0670A“BEQ.S‚QEVNT10ŒBranchifnoservicevector.C30807000003D25880“ADD.L‚#4,D0ŽCorrectlengthforservicevector.K30817000003D45887“ADD.L‚#4,D7ŽCorrectoffsetstagingforservicevector.N30827000003D6069400800000‹ADD.L‚#$00800000,(A4)„Correctforservicevector.3083J30847000003DC19817000…QEVNT10ƒMOVE.BD1,0(A4,D7)ˆCompletioneventtype.F30857000003E019AD00387001‹MOVE.BCCBKEY(A5),1(A4,D7)User'sidkey.A30867000003E65880“ADD.L‚#4,D0ŽCompletelengthofreturnevent.N30877000003E8B02D003ACMP.B‚CCBASQL(A5),D0…User'smaximumASQentrylength.730887000003EC6304“BLS.S‚QEVNT20ŒBranchiflengthok.H30897000003EE102D003AMOVE.BCCBASQL(A5),D0…User'slengthissmaller.3090;30917000003F21880‰QEVNT20ƒMOVE.BD0,(A4)ŒCorrectlength.3092H30937000003F429827002…QEVNT40ƒMOVE.LD2,2(A4,D7)ˆSetupstatusvalue.<30947000003F839837006MOVE.WD3,6(A4,D7)ˆSetupid(DCB).230957000003FC0C060006CMP.B‚#6,D6Ž6byteinfo?130967000004006712“BEQ.S‚QEVNT50ŒBranchifyes.A309770000040239847008MOVE.WD4,8(A4,D7)ˆSetupdevicestatus.230987000004060C060008CMP.B‚#8,D6Ž8byteinfo?1309970000040A6708“BEQ.S‚QEVNT50ŒBranchifyes.B310070000040C1985700AMOVE.BD5,10(A4,D7)‡Setupdevicenumber.>31017000004104234700BCLR.B‚11(A4,D7)ŠClearreservedfield.3102™*N3103™*Nowlet'sputthecompletionintoregistersandsendeventtothetask.3104™*31057Š00000414…QEVNT50ƒEQU„*+31067000004144CD400FCMOVEM.L(A4),D2-D7#31077000004186102“BSR.S‚IOHQEVNT310870000041A4E75“RTS MMOTOROLAM68000ASMVERSION‚1.30IO‚:ƒ0.ˆ.IOHDRV‚.SA09/16/8214:02:47žPAGE‚70(VERSADOS4.0I/ODRIVERPROCESSEXAMPLE• P3110™***************************************************************************3111™*3112™*>3113™*ROUTINETOQUEUEEVENT(ALREADYSTAGEDINREGISTERS)TO3114™*ƒ-DRIVINGTASK.%3115™*ƒ-EVENTBEGINSINREGISTERD2.3116™*3117™*3118™*ˆEXECROUTINE43119™*ˆREGISTERSUSED:D0-D1/A0,A3-A6‚WORKREGISTERS3120™*˜D2-D7‹STAGINGREGISTERS3121™*3122™*P3123™***************************************************************************3124™*3125™IOHQEVNT:<312670000041C48E7001CMOVEM.LA3-A5,-(A7)‡Ssveregisters.E3127700000420206D0034MOVE.LCCBRQSTA(A5),A0„Caller'sTCBaddress.  J31297000004247018“MOVE.L#T0QEVNTI,D0‰IfthisroutinewascalledduringN31307000004264A2D00CBTST.B‚CCBICNT(A5)ˆinterruptprocessing,usetheQEVNTG313170000042A66* 02“BNE.S‚IOHQ4Žinterruptroutine,elseusethenormal7313270000042C7017“MOVE.L#T0QEVNTT,D0‡QEVNTroutine."313370000042E4E40‰IOHQ4…TRAPƒ#073134700000430600A“BRA.S‚IOHQ5ŽBranchifqueueingok.?31357000004324CDF3800MOVEM.L(A7)+,A3-A5‡Restoreregisters.Q31367000004362B570072MOVE.L(A7),CCBQVER1(A5)‚Savecallersaddressfordebug."313770000043A6008“BRA.S‚IOHQRTN3138E313970000043C4CDF3800…IOHQ5…MOVEM.L(A7)+,A3-A5‡Restoreregisters.F314070000044042AD0072CLR.L‚CCBQVER1(A5)‡Clearqueueerroraddress.3141'31427000004444E75‰IOHQRTNƒRTS—RETURN3143£END ******TOTALERRORS†0--******TOTALWARNINGS„0-- MMOTOROLAM68000ASMVERSION‚1.30IO‚:ƒ0.ˆ.IOHDRV‚.SA09/16/8214:02:47žPAGE‚71(VERSADOS4.0I/ODRIVERPROCESSEXAMPLE• SYMBOL TABLE LISTING  .SYMBOLNAME…SECTƒVALUE‡CROSS-REF(LINENUMBERS)  .009A‘00000002‚-2666†1ƒ2666.010A‘00000002‚-2792†1ƒ2792.011A‘00000002‚-2816…-1ƒ2816BEL“00000007‚-1976BRKEVT00000004‚-1370BS”00000008‚-1977CCBALL00000004ƒ-540CCBASQL0000003Aƒ-571ƒ3087ƒ3089$CCBCCB00000076‚-2060ƒ2302ƒ2623ƒ3039CCBCFIG0000009E‚-2067ƒ2714#CCBCHB00000022ƒ-553ƒ2625ƒ2995ƒ3016)CCBCID00000098‚-2065ƒ2301ƒ2644ƒ2859ƒ3040CCBCMCT00000019ƒ-550CCBCOPT0000009C‚-2066ƒ2300CCBDDP00000070ƒ-588ƒ2054CCBEAP100000094‚-2064ƒ2697CCBEXTRPŽ00000001‚-2019ƒ21162CCBFG‘00000070‚-2058ƒ2286ƒ2339ƒ2609ƒ2627ƒ2849ƒ3013CCBFGATHŽ0000000Fƒ-616ƒ30115CCBFGBSYŽ00000007‚-2078ƒ2286ƒ2339ƒ2609ƒ2627ƒ2849ƒ3013CCBFGDIRŽ00000008ƒ-617CCBFGOFFŽ00000001ƒ-621ƒ3009CCBFGSUPŽ00000002ƒ-618CCBFGSYSŽ00000000ƒ-622%CCBICNT000000CB‚-2073ƒ3041ƒ3051ƒ3130CCBIOH00000050ƒ-579%CCBIRTN000000C3‚-2070ƒ2896ƒ2897ƒ3038#CCBISR00000042ƒ-575ƒ2200ƒ2621ƒ2901 CCBISTK000000C7‚-2071ƒ2899ƒ3043CCBJSR0000004Aƒ-578CCBKEY00000038ƒ-564ƒ3085CCBMASK00000002ƒ-605CCBMCNT00000004ƒ-595„596CCBMME00000026ƒ-554CCBMNEM00000014ƒ-548CCBPBASEŽ00000070ƒ-596CCBPECT0000002Bƒ-558)CCBPKT0000007E‚-2062ƒ2613ƒ2645ƒ2747ƒ2863CCBPOFF00000000ƒ-604CCBPOLL00000008ƒ-542CCBPPRIOŽ00000029ƒ-556$CCBPTR00000090‚-2063ƒ2347ƒ2695ƒ3036CCBPTST00000003ƒ-606!CCBQVER1Ž00000072‚-2059ƒ3136ƒ3140CCBRESO00000004ƒ-607CCBRESP00000007ƒ-609CCBRESV00000006ƒ-608CCBRESV1Ž0000005Cƒ-583CCBRESV2Ž00000060ƒ-584CCBRESV3Ž00000064ƒ-585CCBRESV4Ž00000068ƒ-586CCBRESV5Ž0000006Cƒ-587 MMOTOROLAM68000ASMVERSION‚1.30IO‚:ƒ0.ˆ.IOHDRV‚.SA09/16/8214:02:47žPAGE‚72(VERSADOS4.0I/ODRIVERPROCESSEXAMPLE• %CCBRLEN000000BF‚-2069ƒ2631ƒ2632ƒ2861CCBRQST0000002Cƒ-560CCBRQSTAŽ00000034ƒ-562ƒ3127CCBRSR00000001ƒ-629CCBRSW00000000ƒ-628CCBRTN00000039ƒ-565CCBRTNI0000001Eƒ-552 CCBSAVB000000BE‚-2068ƒ2895ƒ3037CCBSPRIOŽ0000002Aƒ-557'CCBSR‘00000040ƒ-574ƒ2202ƒ2925ƒ3019ƒ3053CCBSTR00000048ƒ-577ƒ3009ƒ3011CCBSUB00000010ƒ-544CCBSVVC0000003Cƒ-573ƒ3078CCBTASK00000054ƒ-581 CCBTASKAŽ00000050ƒ-580ƒ2272ƒ2304:CCBTASKBŽ0000007A‚-2061ƒ2304ƒ2344ƒ2634ƒ2673ƒ2686ƒ2721ƒ2850CCBTLNK0000000Cƒ-543CCBTYPE00000018ƒ-549ƒ2408CCBUSER0000001Aƒ-551CCBVADR00000044ƒ-576CCBVECT00000028ƒ-555CDCBLN00000098‚-1553CDFLUN00000005ƒ-729CECCDO00000001ƒ-951ƒ2439CECPLGP00000042ƒ-969CECPNI00000040ƒ-967CECPRLZ00000041ƒ-968CECTBR00000042ƒ-961CECTIM00000041ƒ-959CECTTI00000040ƒ-957CECUAP00000002ƒ-953ƒ2494CFGEVT00000008‚-1374CHNGDEF‹7ƒ0000012C‚-2463ƒ2170CMDERRŒ7ƒ000000AE‚-2318ƒ2313'CMDEXIT‹7ƒ000002A2‚-2755ƒ2353ƒ2619ƒ2647CMDSRCH‹7ƒ0000009E‚-2310ƒ2311&CMDTBLŒ7ƒ00000028‚-2159ƒ2165ƒ2172ƒ2307CMNCNFG‹7ƒ0000013C‚-2488ƒ2444"CNFGADR‹7ƒ00000264‚-2714ƒ2371ƒ2434CNFGADR2Š7ƒ00000268‚-2717ƒ2468CNFGADR3Š7ƒ00000280‚-2729ƒ2723'CNFGERR‹7ƒ00000188‚-2554ƒ2441ƒ2500ƒ2505CNFGEXITŠ7ƒ000001A8‚-2593ƒ2556CNFGLOOPŠ7ƒ0000019E‚-2589ƒ2590CONFIGURŠ7ƒ00000110‚-2429ƒ2169CR”0000000D‚-1980DATBIN00000002‚-1579DATFMK00000007‚-1584DATHIO00000005‚-1582DATIMG00000004‚-1581DATIND00000008‚-1585DATPOS00000006‚-1583DATPRT00000009‚-1586DA* TRAN00000003‚-1580DATRED00000000‚-1577DATSPD0000000C‚-1589DATSPL0000000A‚-1587DATWRC0000000B‚-1588 MMOTOROLAM68000ASMVERSION‚1.30IO‚:ƒ0.ˆ.IOHDRV‚.SA09/16/8214:02:47žPAGE‚73(VERSADOS4.0I/ODRIVERPROCESSEXAMPLE• DATWRT00000001‚-1578DCBAID00000004‚-1496DCBATT00000018‚-1500DCBBCT0000004F‚-1516DCBBRK00000050‚-1517DCBCAN00000092‚-1540ƒ2570DCBCCB00000024‚-1507DCBCCF0000004E‚-1513DCBCDV00000028‚-1508DCBCRN0000002A‚-1510DCBDAT0000008E‚-1539DCBDCQ00000008‚-1497LDCBDEV00000068‚-1526ƒ1527ƒ1528ƒ1529ƒ1530ƒ1531ƒ1536ƒ1537ƒ1538ƒ1539ƒ1540ƒ1544¡1551ƒ1558ƒ2443ƒ2473DCBDID0000000C‚-1498DCBDKC00000068‚-1545DCBFLG00000022‚-1506DCBHBS00000086‚-1537DCBIOS0000002E‚-1511DCBLBA0000004A‚-1512DCBLEN00000072‚-1527DCBLUT00000014‚-1499DCBPRI00000029‚-1509DCBPTC00000068‚-1552DCBPTR00000000‚-1495DCBRCD0000001B‚-1502DCBRNT00000020‚-1505DCBRSV00000058‚-1519DCBSBS00000082‚-1536DCBSEC00000074‚-1528DCBSIZ00000074‚-1529DCBSRV00000054‚-1518DCBTIM0000008A‚-1538DCBTMO0000001C‚-1503DCBTMR0000007C‚-1531DCBTMW00000078‚-1530DCBWCD0000001A‚-1501DCBWNT0000001E‚-1504DCQDCB00000008‚-1662DCQLAD00000014‚-1665DCQLEN0000001C‚-1670DCQLUE00000010‚-1664DCQLUT0000000C‚-1663DCQNXT00000004‚-1661DCQPLN0000001A‚-1668DCQPRI0000001B‚-1669DCQPTR00000000‚-1660DCQRES00000019‚-1667DCQTIN00000018‚-1666DDCBLN00000096‚-1546DEV020Œ7ƒ00000328‚-2917DEV1AC00000002‚-1988ƒ2997DEV1AD00000000‚-1990ƒ2917DEV1BC00000006‚-1989ƒ3001DEV1BD00000004‚-1991ƒ2912ƒ2923DEVBSYŒ7ƒ00000306‚-2895'DEVDRVR‹7ƒ00000000‚-2107ƒ2108ƒ2109ƒ2110DEVFLTŒ7ƒ0000031C‚-2912 MMOTOROLAM68000ASMVERSION‚1.30IO‚:ƒ0.ˆ.IOHDRV‚.SA09/16/8214:02:47žPAGE‚74(VERSADOS4.0I/ODRIVERPROCESSEXAMPLE• "DEVI010‹7ƒ0000035A‚-3009ƒ3000ƒ3004"DEVI020‹7ƒ00000372‚-3016ƒ3010ƒ3012DEVI100‹7ƒ00000384‚-3033ƒ3014DEVINIT‹7ƒ00000038‚-2196ƒ21102DEVINITLŠ7ƒ00000044‚-2215ƒ2201ƒ2626ƒ2913ƒ3017ƒ3035DEVINRTNŠ7ƒ000003AE‚-3050ƒ3042DEVISRŒ7ƒ00000334‚-2994ƒ2108DEVOEXŒ7ƒ0000032E‚-2924ƒ2915DEVOUTŒ7ƒ00000304‚-2889ƒ2843DEVU010‹7ƒ00000062‚-2277ƒ2274DEVU020‹7ƒ0000007C‚-2299ƒ2287DEVUSER‹7ƒ00000046‚-2265ƒ2109DFCˆMACRƒ*-1332DFLGCF00000004‚-1570DFLGCT00000005‚-1571DFLGIN00000003‚-1569DFLGIT00000006‚-1572DFLGON00000000‚-1566DFLGSC00000002‚-1568DFLGWP00000001‚-1567DRVEVT00000001‚-1367DRVHLT00000000‚-1366DRVORG00000014‚-1969DSDVIA0000003E‚-1996DSDVIB0000003C‚-1997EM_CLSE00000106ƒ-652EM_NOARGŽ00000102ƒ-648EM_NOMEMŽ00000104ƒ-650EM_NVDEVŽ00000107ƒ-653EM_NVE00000100ƒ-646EM_NVO00000103ƒ-649EM_OPTCFŽ00000105ƒ-651EM_SCBO00000101ƒ-647(ENABL†MACRƒ*-2035†1ƒ2202ƒ2925ƒ3019ƒ3053EVADEV00000002‚-1474EVALEN00000008‚-1476EVASTA00000006‚-1475EVATNAS00000001‚-1481EVTCOD0000000A‚-1385EVTDCB0000000C‚-1387EVTKOD0000000A‚-1398EVTLEN0000002A‚-1411EVTLNG00000010‚-1388EVTLUE0000000C‚-1400EVTLUT00000010‚-1401EVTPRI00000015‚-1403EVTPST00000028‚-1409EVTPSZ00000029‚-1410EVTRA000000024‚-1408EVTRD000000020‚-1407EVTSES0000001A‚-1405EVTTIN00000014‚-1402EVTTSK00000016‚-1404EVTUNM0000001E‚-1406EXECPRIOŽ000000F0„-42FAPBIT00000007ƒ-735FDATT‘00000028ƒ-837FDCLG‘00000002ƒ-827 MMOTOROLAM68000ASMVERSION‚1.30IO‚:ƒ0.ˆ.IOHDRV‚.SA09/16/8214:02:47žPAGE‚75(VERSADOS4.0I/ODRIVERPROCESSEXAMPLE• FDDAT‘0000002Fƒ-843FDDTEA00000032ƒ-845FDDTEC00000030ƒ-844FDEOF‘0000001Eƒ-833FDEOR‘00000022ƒ-834FDEXT‘00000012ƒ-829FDFAB‘0000002Eƒ-842FDFE’0000001Aƒ-832FDFIL‘0000000Aƒ-828FDFS’00000016ƒ-831FDKEY‘0000002Dƒ-841FDLBZ‘00000029ƒ-838FDLEN‘0000003Cƒ-847FDLRL‘0000002Aƒ-839FDRCD‘00000027ƒ-836FDUSN‘00000000ƒ-826FDVDEV00000000ƒ-852FDVLEN0000000Aƒ-856FDVSTS00000009ƒ-855FDVVAL00000008ƒ-854FDVVOL00000004ƒ-853FDWCD‘00000026ƒ-835FF”0000000C‚+ -1979FFTBIT00000700ƒ-760FHALLO00000080ƒ-706FHALLOB00000007‚-1416FHASGN00000040ƒ-707FHASGNB00000006‚-1417FHCHLU00000110ƒ-717FHCHLUB00000004‚-1427FHCHNG00000020ƒ-708FHCHNGB00000005‚-1418FHCKPT00000001ƒ-713FHCKPTB00000000‚-1423FHCLOS00000004ƒ-711FHCLOSB00000002‚-1421FHDELT00000002ƒ-712FHDELTB00000001‚-1422FHDVOL00008001ƒ-725FHDVOLB00000000‚-1428FHFDEN00000140ƒ-715FHFDENB00000006‚-1425FHFDMN00000120ƒ-716FHFDMNB00000005‚-1426FHFDV‘00000108ƒ-718FHLEVT00000006‚-1372FHPROT00000008ƒ-710FHPROTB00000003‚-1420FHRATT00000180ƒ-714FHRATTB00000007‚-1424FHRENM00000010ƒ-709FHRENMB00000004‚-1419FHSˆMACRƒ*-1270FHSBLN00000028ƒ-683„698FHSCALL„MACRƒ*-1190FHSCLG0000000Cƒ-670FHSCLN00000010ƒ-691FHSCMD00000000ƒ-663 MMOTOROLAM68000ASMVERSION‚1.30IO‚:ƒ0.ˆ.IOHDRV‚.SA09/16/8214:02:47žPAGE‚76(VERSADOS4.0I/ODRIVERPROCESSEXAMPLE• FHSDAT00000027ƒ-682FHSDLN0000000Aƒ-668FHSEAD0000002Cƒ-700FHSEXT0000001Cƒ-672FHSFAB00000026ƒ-681FHSFIL00000014ƒ-671FHSFLN0000000Eƒ-696FHSGEN0000001Eƒ-673FHSID‘2E464853‚-1357FHSKEY00000025ƒ-680FHSLEN0000000Aƒ-695FHSLRL00000022ƒ-676FHSLUA00000005ƒ-686FHSLUB00000006ƒ-687FHSLUN00000005ƒ-666„685FHSNLN00000034ƒ-702FHSOPT00000002ƒ-664FHSPTR00000006ƒ-694FHSRCD00000021ƒ-675FHSRES00000024ƒ-679FHSSAD00000028ƒ-699FHSSES0000000Cƒ-690FHSSIZ00000024ƒ-677„678FHSSNM00000030ƒ-701FHSSTA00000004ƒ-665FHSTIN00000003‚-1356FHSTSK00000008ƒ-689FHSUSN0000000Aƒ-669FHSVOL00000006ƒ-667„693FHSWCD00000020ƒ-674FMSID‘2E464D53‚-1358FOPABF00000020ƒ-752FOPABFB00000005‚-1435FOPADR00000800ƒ-766FOPADRB0000000B‚-1437FOPBEG00000000ƒ-755FOPBEGB00000006‚-1436FOPCON00000000ƒ-761FOPDSP00000002ƒ-779FOPDSY00000000ƒ-777FOPDTM00000001ƒ-778FOPDUS00000003ƒ-780FOPEND00000040ƒ-756FOPER‘00000001ƒ-737FOPEREW00000007ƒ-743FOPERPW00000006ƒ-742FOPEW‘00000003ƒ-739FOPFIN00000005ƒ-784FOPFPR00000006ƒ-785FOPFRA00000004ƒ-783FOPISD00000300ƒ-764FOPISK00000200ƒ-763FOPKEP00008000ƒ-774FOPKEPB0000000F‚-1439FOPOVRT00000008ƒ-746FOPOVRTBŽ00000003‚-1433FOPPR‘00000000ƒ-736FOPPREW00000005ƒ-741 MMOTOROLAM68000ASMVERSION‚1.30IO‚:ƒ0.ˆ.IOHDRV‚.SA09/16/8214:02:47žPAGE‚77(VERSADOS4.0I/ODRIVERPROCESSEXAMPLE• FOPPRPW00000004ƒ-740FOPPW‘00000002ƒ-738FOPRLU00000001ƒ-773FOPSEQ00000100ƒ-762FOPSLU00000000ƒ-772FOPSLUB00000000‚-1438FOPTRN00000010ƒ-749FOPTRNB00000004‚-1434FSTAADD00000011ƒ-809FSTAAP0000000Bƒ-803FSTAAS0000000Dƒ-805FSTABO0000000Fƒ-807FSTADL00000015ƒ-813FSTADNM00000005ƒ-797FSTADS0000000Aƒ-802FSTADT0000000Eƒ-806FSTAEOD00000018ƒ-816FSTAFD00000006ƒ-798FSTAFL0000001Aƒ-818FSTAFT00000012ƒ-810FSTAIE00000013ƒ-811FSTAIF00000002ƒ-794FSTAILU00000003ƒ-795FSTAIP00000014ƒ-812FSTAIU0000001Dƒ-821FSTAKY00000019ƒ-817FSTANDV0000001Bƒ-819FSTANNM00000017ƒ-815FSTAOK00000000ƒ-789FSTAPC00000007ƒ-799FSTARL00000008ƒ-800FSTASE00000009ƒ-801FSTASS0000000Cƒ-804FSTASZ00000016ƒ-814FSTATN00000010ƒ-808FSTAVOL00000004ƒ-796FSTAWS0000001Cƒ-820FUSBIT0000F000ƒ-769GETT10Œ7ƒ000002C8‚-2820ƒ2817GETTCBŒ7ƒ000002BE‚-2815HALTŽ7ƒ000001AC‚-2608ƒ2282HALTOKŒ7ƒ000001CE‚-2620ƒ2610HIBIT‘0000000F„-43#INHIB†MACRƒ*-2028†1ƒ2200ƒ2621ƒ2901IOABITS00000002‚-1013IOAECHO00000006‚-1017IOAHCPY00000000‚-1011IOALNFD00000000‚-1046IOAMODM0000000A‚-1021IOAOFFH0000000B‚-1022IOAPNUL00000009‚-1020IOAPRTY00000005‚-1016IOASNFF00000001‚-1047IOASTPB00000003‚-1014IOATAHD00000007‚-1018IOATFUL00000008‚-1019IOATPLL00000002‚-1048IOAUSEP00000004‚-1015 MMOTOROLAM68000ASMVERSION‚1.30IO‚:ƒ0.ˆ.IOHDRV‚.SA09/16/8214:02:47žPAGE‚78(VERSADOS4.0I/ODRIVERPROCESSEXAMPLE• IOAXCTL00000001‚-1012IOBRKS00000120‚-1081IOCHDC00008002‚-1086ƒ2163IOCNFG00000180‚-1083ƒ2162IOCOMN494F5347‚-1375+ IODDEV00000008‚-2016ƒ2411IODELR00000010‚-1073IODID‘2E494F44‚-1360IODIPC00000020‚-1007IODLPRT00000002‚-1004IODMPSC00000001‚-1003IODSASI00000003‚-1006IOEVCD00000001‚-2004ƒ3077IOFRMT00000020‚-1074IOHADR2‹7ƒ000002B0‚-2790IOHADR6‹7ƒ000002BA‚-2794ƒ2787"IOHADR8‹7ƒ000002BC‚-2795ƒ2789ƒ2793(IOHADRCKŠ7ƒ000002A6‚-2785ƒ2273ƒ2687ƒ2722IOHALT00000110‚-1080ƒ2281IOHQ47ƒ0000042E‚-3133ƒ3131IOHQ57ƒ0000043C‚-3139ƒ3134IOHQEVNTŠ7ƒ0000041C‚-3125ƒ3107IOHQRTN‹7ƒ00000444‚-3142ƒ3137IOHUSRTNŠ7ƒ000002A4‚-2759ƒ2289IOIID‘2E494F49‚-1363IOLEVT00000005‚-1371IONBRKS00000201‚-1084IOOWIN00000004‚-1071IOPASC00000000‚-1090IOPASCB00000000‚-1451IOPBIN00000001‚-1102IOPBLK00000040‚-1108IOPBRK00000010‚-1106IOPBRKB00000004‚-1455IOPCAD00000200‚-1111IOPCDO00001000‚-1116IOPCDOB0000000C‚-1465IOPCNP00000000‚-1092IOPCTA00001000‚-1115IOPCTAB0000000C‚-1464IOPCUR00002000‚-1119IOPDSK00000000‚-1101IOPECH00000000‚-1094IOPECHB00000005‚-1456IOPFOR00000000‚-1093IOPFORB00000003‚-1454IOPFTRK0000000C‚-1463IOPIMG00000008‚-1105IOPINF00000000‚-1099IOPINFB0000000A‚-1461IOPINM00000400‚-1112IOPLRN00000000‚-1096IOPLRNB00000007‚-1458IOPNEC00000020‚-1107IOPNOC00000000‚-1098IOPNOCB00000009‚-1460IOPNOK00000000‚-1097IOPNOKB00000008‚-1459 MMOTOROLAM68000ASMVERSION‚1.30IO‚:ƒ0.ˆ.IOHDRV‚.SA09/16/8214:02:47žPAGE‚79(VERSADOS4.0I/ODRIVERPROCESSEXAMPLE• IOPNXT00000000‚-1118IOPOST00000101‚-1076IOPPMP00000000‚-1100IOPPOS00006000‚-1117IOPPRO00000002‚-1103IOPPRV00004000‚-1120IOPRAN00006000‚-1121IOPREC00000000‚-1095IOPRECB00000006‚-1457IOPRRN00000080‚-1109IOPRTK00000100‚-1110IOPSMP00000800‚-1113IOPSMPB0000000B‚-1462IOPTRK00001000‚-1114IOPTSK00008000‚-1122IOPTSKB0000000F‚-1466ƒ2662IOPUNP00000004‚-1104IOPUNPB00000002‚-1453IOPWAT00000000‚-1091IOPWATB00000001‚-1452IOREAD00000001‚-1069IOREWD00000102‚-1077IOSˆMACRƒ*-1213#IOSATM00000004ƒ-895ƒ2378ƒ2499ƒ25152IOSATW00000008ƒ-897ƒ2516ƒ2518ƒ2519ƒ2584ƒ2585ƒ2586IOSBLN0000001Cƒ-874ƒ1486ƒ1511IOSBRC0000001Aƒ-918ƒ1536IOSBRCB00000005‚-1027IOSBRT00000026ƒ-924ƒ1539ƒ1540IOSBRTB0000000B‚-1033IOSC005‹7ƒ0000023A‚-2679ƒ2663IOSC010‹7ƒ00000258‚-2695ƒ2688IOSCAD00000018ƒ-873IOSCALL„MACRƒ*-1200IOSCEC00000000ƒ-890ƒ2555IOSCLC0000001Dƒ-921IOSCLCB00000008‚-1030IOSCOMN‹7ƒ0000021A‚-2661ƒ2337IOSCSL0000000Cƒ-881IOSCTP00000001ƒ-892ƒ2408IOSDBP00000008ƒ-880ƒ2718!IOSDDC00000018ƒ-902„915„934ƒ1058IOSDLN0000002E‚-1065ƒ1545IOSDOP0000001Bƒ-919IOSDOPB00000006‚-1028IOSDRC00000003ƒ-894ƒ2411IOSDST00000000ƒ-889„890ƒ2407IOSDTP00000002ƒ-893ƒ2410IOSEAD00000010ƒ-871ƒ2680IOSELC0000001Aƒ-936IOSELCB00000005‚-1053IOSEOL00000022ƒ-923ƒ1538IOSEOLB0000000A‚-1032IOSESS00000001‚-1365IOSFCM00000001‚-1445IOSFCT00000000ƒ-862ƒ2281ƒ2308IOSFIO00000000‚-1444IOSFPV00000080‚-1446 MMOTOROLAM68000ASMVERSION‚1.30IO‚:ƒ0.ˆ.IOHDRV‚.SA09/16/8214:02:47žPAGE‚80(VERSADOS4.0I/ODRIVERPROCESSEXAMPLE• IOSHDS00000019‚-1060IOSID‘2E494F53‚-1359IOSILV0000001C‚-1062IOSLEN00000014ƒ-872ƒ2631ƒ2861IOSLRL00000018ƒ-935IOSLRLB00000004‚-1052IOSLUN00000005ƒ-865IOSNLN00000024‚-1489IOSNLS00000027ƒ-925IOSNLSB0000000C‚-1034IOSOPT00000002ƒ-863ƒ2300ƒ2662IOSPKL00000007ƒ-868IOSPLN0000002Aƒ-938ƒ1559(IOSPRM00000006ƒ-896ƒ2379ƒ2440ƒ2504ƒ2521IOSREC0000000Aƒ-898ƒ1527ƒ2525IOSRECB00000000ƒ-907ƒ2010IOSRLN0000001Cƒ-920IOSRLNB00000007‚-1029IOSRRN00000008ƒ-869„879#IOSRSZ0000000Cƒ-899ƒ1528ƒ1529ƒ2530IOSRSZB00000001ƒ-908ƒ2010IOSRTO00000014ƒ-901ƒ1531IOSRTOB00000003ƒ-910IOSRTV0000001Eƒ-922ƒ1537IOSRTVB00000009‚-1031IOSSAD0000000Cƒ-870ƒ2679IOSSES00000020‚-1488IOSSOF0000001D‚-1063IOSSPT00000018‚-1059IOSSRV00000006ƒ-866#IOSSTA00000004ƒ-864ƒ2640ƒ2752ƒ2860IOSTAT00000140‚-1082ƒ2161IOSTCD00000029ƒ-927IOSTCDB0000000E‚-1036IOSTIN00000002‚-135, 5IOSTLN00000030ƒ-929ƒ1552IOSTRC00000028ƒ-926IOSTRCB0000000D‚-1035IOSTRK0000001A‚-1061IOSTSK0000001C‚-1487ƒ2665#IOSWTO00000010ƒ-900ƒ1530ƒ2443ƒ2535IOSWTOB00000002ƒ-909ƒ2010ƒ2440)IOSXLN00000020‚-2014ƒ2067ƒ2382ƒ2584ƒ2719IOSXOF00000018ƒ-916IOSXOFB00000004‚-1026IOSXON00000019ƒ-917IOTBRK00000040‚-1075IOTEST00000104‚-1078IOUCBK00008001‚-1085IOUPDR00000008‚-1072IOWAIT00000108‚-1079IOWRIT00000002‚-1070ƒ2160 ISTAADD00000084‚-1130ƒ2692ƒ2726ISTAAL000000CF‚-1150ISTABDS000000EF‚-1169ISTABO000000C1‚-1136ISTABRK000000C6‚-1141ISTABUS000000F6‚-1178 MMOTOROLAM68000ASMVERSION‚1.30IO‚:ƒ0.ˆ.IOHDRV‚.SA09/16/8214:02:47žPAGE‚81(VERSADOS4.0I/ODRIVERPROCESSEXAMPLE• ISTACDN000000F3‚-1175ISTACFG000000F5‚-1177ƒ2554ISTACHN000000F1‚-1173ISTACMP000000D2‚-1153ISTACNF00000088‚-1134ISTACNT000000F4‚-1176ISTACRC000000E3‚-1157ISTACSM000000E8‚-1162ISTADB000000E2‚-1156ISTADDM000000E5‚-1159ISTADMA000000F2‚-1174ISTADMC000000F8‚-1180ISTADME000000EC‚-1166ISTADO000000EA‚-1164ISTAEOF000000C2‚-1137ISTAEOV000000C3‚-1138ISTAFAB000000C4‚-1139ISTAFD000000C8‚-1143ISTAICE000000F9‚-1181ISTAIDS000000CD‚-1148ISTAIE000000C7‚-1142ISTAIF00000082‚-1128ƒ2318ISTAILU00000083‚-1129ISTAIP00000086‚-1132ƒ2275ISTAKY000000CC‚-1147ISTAMAP000000F7‚-1179ISTAMRK000000ED‚-1167ISTANR000000E1‚-1155ƒ2856$ISTAOK00000000‚-1126ƒ2386ƒ2592ƒ2853ISTAPC00000087‚-1133ISTARE000000CA‚-1145ISTARES000000E9‚-1163ISTARN000000C9‚-1144ISTARO000000CB‚-1146ISTARR00000085‚-1131ISTASA000000E7‚-1161ISTASC000000EB‚-1165ISTASEK000000EE‚-1168ISTASPE000000D3‚-1154ISTATM000000C5‚-1140ISTATO000000E6‚-1160ƒ2640ƒ2641ISTAUF000000CE‚-1149ISTAUNR000000D1‚-1152ISTAWP000000E4‚-1158JMPOFF00000008‚-2172ƒ2314JMPTBLŒ7ƒ00000030‚-2167ƒ2172LDFLUN00000006ƒ-730LEVEL0000000002„-48LEVEL0100000003„-49LEVEL0200000004„-50LEVEL0300000005„-51LEVEL0400000006„-52LEVEL0500000007„-53ƒ2080LF”0000000A‚-1978LUSFAC00000000‚-1649LUSFAS00000003‚-1652LUSFCP00000002‚-1651LUSFCW00000004‚-1653 MMOTOROLAM68000ASMVERSION‚1.30IO‚:ƒ0.ˆ.IOHDRV‚.SA09/16/8214:02:47žPAGE‚82(VERSADOS4.0I/ODRIVERPROCESSEXAMPLE• LUSFDV00000007‚-1654LUSFIO00000001‚-1650LUTATT00000002‚-1642LUTBEG00000010‚-1637LUTCAP00000000‚-1640LUTCAS0000000D‚-1635LUTCSF00000001‚-1641LUTDCB00000004‚-1643LUTMLU0000000C‚-1634LUTPTR00000000‚-1631LUTSEG00000008‚-1644LUTSES00000008‚-1633LUTTID00000004‚-1632LUTUNM0000000E‚-1636&LVLBASE00000002„-47…48…49…50…51…52…53MULTPROCŽ00000000„-39;NRMEXIT‹7ƒ00000286‚-2746ƒ2276ƒ2319ƒ2387ƒ2593ƒ2671ƒ2693ƒ2727NUL“00000000‚-1975NUMCMDS00000004‚-2165ƒ2306NVALATM0000FFF8‚-2008ƒ2498NVALPRM0000FFF8‚-2012ƒ2503OKCNFGŒ7ƒ00000190‚-2570OKTCB7ƒ00000236‚-2673ƒ2667OUTENDŒ7ƒ000002CC‚-2845OUTEND1‹7ƒ000002E6‚-2857ƒ2855OUTPUTŒ7ƒ000002CA‚-2837ƒ2350PDCBLN00000092‚-1560PRTID‘2E505254‚-1362*QEVNT7ƒ000003C0‚-3074ƒ2618ƒ2646ƒ2754ƒ2864QEVNT10‹7ƒ000003DC‚-3084ƒ3079QEVNT20‹7ƒ000003F2‚-3091ƒ3088QEVNT40‹7ƒ000003F4‚-3093"QEVNT50‹7ƒ00000414‚-3105ƒ3096ƒ3099REQLOOP‹7ƒ000000EC‚-2383ƒ2384REQSTAT‹7ƒ000000D8‚-2366ƒ2168RTCDADR1Ž0000000C„-81RTCDADR2Ž0000000D„-82RTCDALOWŽ00000009„-78RTCDDIRNŽ00000001„-70RTCDDPRQŽ00000006„-75RTCDENABŽ0000000E„-83RTCDLGCFŽ0000000B„-80RTCDNFNDŽ00000007„-76RTCDNMEMŽ00000008„-77RTCDNTBLŽ00000004„-73RTCDOPT0000000F„-84RTCDPBLKŽ00000002„-71RTCDPCNTŽ00000010„-85RTCDSTATŽ0000000A„-79RTCDTASKŽ00000003„-72RTCDTFULŽ00000005„-74SHARMEM00000001„-40SPACE‘00000020‚-1981SPLCANC00000280ƒ-719SPLCONT00000240ƒ-720SPLCOPY00000208ƒ-723ƒ&ˆ)Œ(”(˜+œ) )¤&¨*¬*°, SPLEVT00000007‚-1373SPLFORM00000220ƒ-721 MMOTOROLAM68000ASMVERSION‚1.30IO‚:ƒ0.ˆ.IOHDRV‚.SA09/16/8214:02:47žPAGE‚83(VERSADOS4.0I/ODRIVERPROCESSEXAMPLE• SPLID‘2E53504C‚-1364SPLPRNT00000210ƒ-722SPLQUE00000204ƒ-724SRMODE0000000D„-38STAEVT00000003‚-1369!STATYPŒ7ƒ000000FA‚-2405ƒ2374ƒ2572STRBSY00000004‚-1993STRSEL00000001‚-1994SVOPFM00000001‚-1625SVOPMU00000000‚-1624SVTBRK0000003C‚-1618SVTBSA00000044‚-1619SVTDCB00000024‚-1612SVTDND00000020‚-1611SVTDST0000001C‚-1610SVTLND00000014‚-1608SVTLST00000010‚-1607SVTLUT00000018‚-1609SVTQND00000008‚-1605SVTQST00000004‚-1604SVTQUE0000000C‚-1606SVTSDCB00000028‚-1613SVTSDCQ0000002A‚-1615SVTSFCB0000002B‚-1616SVTSID0000002C‚-1617SVTSLUT00000029‚-1614SVTSOP00000000‚-1603T0ADDPA0000001Eƒ-119T0ASRINTŽ0000000A„-99T0CRTCB0000001Fƒ-120T0DASQX00000011ƒ-106T0DIOVX0000001Dƒ-118T0DMONX00000014ƒ-109T0DSEGX00000012ƒ-107T0DSEMX00000010ƒ-105T0DSRVX0000000Fƒ-104%T0EXABRTŽ00000015ƒ-110ƒ2666ƒ2792ƒ2816T0EXEQDQŽ00000013ƒ-108$T0FNDGSGŽ00000009„-98ƒ2666ƒ2792ƒ2816$T0FNDSEGŽ00000007„-96ƒ2666ƒ2792ƒ2816%T0FNDSEMŽ0000000Cƒ-101ƒ2666ƒ2792ƒ2816T0FREEPAŽ00000021ƒ-122$T0GETTCBŽ00000006„-95ƒ2666ƒ2792ƒ2816T0GTFRBFŽ00000024ƒ-125T0GTFRIRŽ00000023ƒ-124T0GTFRMLŽ00000025ƒ-126T0GTUSQ00000029ƒ-130%T0GTXTCBŽ0000000Dƒ-102ƒ2666ƒ2792ƒ2816T0KILLERŽ00000020ƒ-121%T0LOGPHOŽ0000001Aƒ-115ƒ2666ƒ2792ƒ2816$T0LOGPHYŽ00000008„-97ƒ2666ƒ2792ƒ2816T0P“00000001„-90ƒ2666ƒ2792ƒ2816#T0PAGAL00000004„-93ƒ2666ƒ2792ƒ2816%T0PAGALLŽ0000001Bƒ-116ƒ2666ƒ2792ƒ2816T0PAUSE0000000Eƒ-103"T0PGFR00000005„-94ƒ2666ƒ2792ƒ2816T0PTFRBFŽ00000026ƒ-127T0PTFRMLŽ00000027ƒ-128 MMOTOROLAM68000ASMVERSION‚1.30IO‚:ƒ0.ˆ.IOHDRV‚.SA09/16/8214:02:47žPAGE‚84(VERSADOS4.0I/ODRIVERPROCESSEXAMPLE• T0PTUSQ0000002Aƒ-131T0PTXMQ00000028ƒ-129*T0QEVNTIŽ00000018ƒ-113ƒ2666ƒ2792ƒ2816ƒ3129%T0QEVNTNŽ0000000Bƒ-100ƒ2666ƒ2792ƒ2816*T0QEVNTTŽ00000017ƒ-112ƒ2666ƒ2792ƒ2816ƒ3132T0RDTIM0000001Cƒ-117#T0READY00000003„-92ƒ2666ƒ2792ƒ2816T0RQPA00000022ƒ-123T0RYACK00000003ƒ-140T0RYASR00000003ƒ-145T0RYCINTŽ00000003ƒ-138T0RYDLAYŽ00000003ƒ-146T0RYEXIRŽ00000003ƒ-137T0RYEXT1Ž00000003ƒ-136T0RYRELQŽ00000003ƒ-141T0RYSTRTŽ00000003ƒ-143T0RYTINTŽ00000003ƒ-139T0RYWAKEŽ00000003ƒ-144T0RYXMONŽ00000003ƒ-142T0UPDATQŽ00000019ƒ-114T0V“00000002„-91ƒ2666ƒ2792ƒ2816%T0WAKEUPŽ00000016ƒ-111ƒ2666ƒ2792ƒ2816TCB“00000000ƒ-404TCBA0‘00000120ƒ-459TCBA1‘00000124ƒ-460TCBA6‘00000138ƒ-461TCBABORTŽ0000002Aƒ-418TCBALL00000004ƒ-405TCBASES000000B4ƒ-447TCBASQ00000040ƒ-424TCBASQSMŽ0000003Aƒ-423TCBATSK000000B0ƒ-446TCBATTI00000029ƒ-417TCBATTR00000028ƒ-416„417TCBBERR000000B8ƒ-448TCBCC‘000000FBƒ-452TCBCHAN00000044ƒ-425TCBCPRI00000024ƒ-412TCBD0‘00000100ƒ-456„457TCBDLAY00000058ƒ-431TCBECNT00000158ƒ-472TCBEMMSKŽ00000148ƒ-468TCBENTRYŽ0000006Cƒ-435TCBEVALUŽ00000154ƒ-471TCBEVECTŽ00000048ƒ-426TCBEVLOCŽ00000150ƒ-470TCBEVMSKŽ0000014Cƒ-469TCBEXM00000140ƒ-466TCBEXMS00000144ƒ-467TCBGROUPŽ00000008ƒ-406%TCBIOCNTŽ00000027ƒ-415ƒ2345ƒ2635ƒ2851TCBISRS0000005Eƒ-433TCBLPRI00000025ƒ-413TCBMON00000018ƒ-410TCBNAME00000010ƒ-408TCBNAU00000054ƒ-430TCBPC‘000000FCƒ-453TCBREADYŽ0000000Cƒ-407 MMOTOROLAM68000ASMVERSION‚1.30IO‚:ƒ0.ˆ.IOHDRV‚.SA09/16/8214:02:47žPAGE‚85(VERSADOS4.0I/ODRIVERPROCESSEXAMPLE• TCBROOM00000050ƒ-454TCBRPRI00000026ƒ-414TCBRTCD00000102ƒ-457TCBSAFE000000B0ƒ-445„454TCBSEM00000020ƒ-411TCBSESSNŽ00000014ƒ-409TCBSR‘000000FAƒ-451„452TCBSSP00000072ƒ-437TCBSTAT2Ž0000002Dƒ-420TCBSTATEŽ0000002Cƒ-419„420TCBTST00000036ƒ-422ƒ2791TCBTSTSMŽ00000030ƒ-421TCBTVECTŽ0000004Cƒ-427TCBUPD00000005Cƒ-432TCBUSER00000070ƒ-436TCBUSP0000013Cƒ-462TCBUTRP00000073ƒ-438TCBXA000000094ƒ-443TCBXREGSŽ00000074ƒ-442TCDX15500000000‚-1042TEMADDERŽ00000011ƒ-515TEMBUSERŽ00000010ƒ-514- TEMCHK00000014ƒ-518TEMILLEGŽ00000012ƒ-516TEML1010Ž00000017ƒ-521TEML1111Ž00000018ƒ-522TEMMCNT0000001Bƒ-524TEMPRIV00000016ƒ-520TEMTRAC0000001Cƒ-525TEMTRAP1Ž00000001ƒ-513TEMTRAPVŽ00000015ƒ-519TEMVCHG0000001Dƒ-527TEMVEQU0000001Cƒ-526TEMZDIV00000013ƒ-517TESTIM…MACRƒ*Ž-387TR0ˆMACRƒ*Ž-259!TR0$‡MACRƒ*Ž-152†1ƒ2666ƒ2792ƒ2816TR02X†MACRƒ*Ž-366TRCA0‘00000008„-26TRCA6‘0000000C„-27TRCCODE00000000„-23TRCD0‘00000010„-28TRCENTRSŽ00000008„-16TRCENTSZŽ0000001A„-31TRCFDSPTŽ0000000A„-62TRCFEXCPŽ0000000B„-61TRCFIO0000000E„-58TRCFMMU00000008„-64TRCFSINTŽ00000007„-65TRCFTIMRŽ0000000D„-59TRCFTRAPŽ0000000C„-60TRCFTRP1Ž0000000F„-57TRCFUIO00000009„-63TRCLNG00000004„-15TRCPC‘00000004„-25TRCPTR00000000„-14TRCSR‘00000002„-24TRCTBL00000000„-13 MMOTOROLAM68000ASMVERSION‚1.30IO‚:ƒ0.ˆ.IOHDRV‚.SA09/16/8214:02:47žPAGE‚86(VERSADOS4.0I/ODRIVERPROCESSEXAMPLE• TRCTIM200000018„-30TRCTIME00000014„-29TRMEVT00000002‚-1368TRMODE0000000F„-37TSK2ACK2Ž00000002ƒ-507TSK2EVWKŽ00000005ƒ-504TSK2NRDYŽ00000004ƒ-505TSK2RTEXŽ00000006ƒ-503TSK2TRMPŽ00000007ƒ-502TSK2WKWTŽ00000003ƒ-506TSKACRITŽ0000000Dƒ-481TSKAMRESŽ0000000Eƒ-480TSKARELOŽ0000000Bƒ-482TSKASYSTŽ0000000Fƒ-479TSKIABRTŽ00000001ƒ-489TSKIEVCTŽ00000004ƒ-486TSKIEXM00000006ƒ-484TSKIEXMTŽ00000005ƒ-485TSKILASTŽ00000002ƒ-488TSKITVCTŽ00000003ƒ-487TSKIUSEMŽ00000007ƒ-483TSKIUVCTŽ00000000ƒ-490TSKSAKWTŽ0000000Bƒ-498TSKSBLCKŽ0000000Eƒ-495TSKSDORMŽ0000000Fƒ-494TSKSEVWTŽ0000000Cƒ-497TSKSSMWTŽ0000000Dƒ-496TSKSSUSPŽ00000009ƒ-500TSKSWMSKŽ0000FF00ƒ-509TSKSWTEMŽ0000000Aƒ-499TSPACE00000038‚-1923TSTBEGINŽ00000160ƒ-475TTYID‘2E545459‚-1361UNMASK…MACRƒ*-2042†1ƒ2352ƒ2629VALATM00000007‚-2006ƒ2008ƒ2378VALPRM00000007‚-2010ƒ2012ƒ2379WAITMEM00000001„-41WRITE7ƒ000000B6‚-2336ƒ2167XCAIO‘0000003C‚-1895XCCMR‘0000003C‚-1896XCDBAID00000006‚-1903XCDBOPT00000004‚-1902XCDBPRM0000000A‚-1904XCDBPTR00000000‚-1901XDATCH00000003‚-1887XDCALL00000001‚-1885XDDELT00000002‚-1886XDDTCH00000004‚-1888XDHALT00000002‚-1791XDINIT00000007‚-1891XDOFLN00000006‚-1890XDONLN00000005‚-1889XDRESB00000003‚-1792XDREST00000001‚-1790XDSACIA00000003ƒ-997XDSBRK00000000ƒ-942XDSCMD00000000‚-1789XDSDEV00000047‚-2015ƒ2410 MMOTOROLAM68000ASMVERSION‚1.30IO‚:ƒ0.ˆ.IOHDRV‚.SA09/16/8214:02:47žPAGE‚87(VERSADOS4.0I/ODRIVERPROCESSEXAMPLE• XDSFDK00000001ƒ-995XDSNRB00000007ƒ-944XDSPRT00000004ƒ-998XDSRDK00000002ƒ-996XDSTAPE00000005ƒ-999XDSWPB00000005ƒ-943XIOADD00000012‚-1704XIOALN0000001C‚-1710ƒ1904XIOBLN00000014‚-1762XIOBOF00000018‚-1763XIOCAD0000001C‚-1764XIOCHN00000010‚-1759ƒ1772XIOCID00000004‚-1693XIOCLN00000020‚-1765XIOCOD00000000‚-1689XIOCOF00000022‚-1766XIOCPK00000014‚-1774ƒ2270XIOCTP00000008‚-1699XIOILN0000002E‚-1770XIOKEY00000008‚-1735XIOMIC00000009‚-1700XIOMLN00000016‚-1705XIOMSK00000002‚-1716XIONLN0000001A‚-1776XIOOPT00000003‚-1692XIOPFC0000001B‚-1709XIOPLN00000018‚-1775XIOPOF00000000‚-1715XIOPPR00000019‚-1707)XIOPRM00000008‚-1694ƒ1698ƒ1734ƒ1756ƒ1904XIORET00000010‚-1739XIOREV00000006‚-1719XIOROF00000004‚-1718XIORTN0000002A‚-1769XIOSAD00000010‚-1761XIOSCD00000001‚-1690XIOSES0000000C‚-1758XIOSLN00000009‚-1736XIOSPR0000001A‚-1708XIOSUP0000000E‚-1702XIOSVA0000000A‚-1701XIOTAD00000024‚-1767XIOTLN00000028‚-1768XIOTOC0000000E‚-1738XIOTSK00000008‚-1757XIOTST00000003‚-17173XIOUID00000010‚-1773ƒ2301ƒ2303ƒ2437ƒ2471ƒ2616ƒ2749XIOVAD0000000A‚-1737XIOVNO00000018‚-1706XIOXLEN00000018‚-2017ƒ2271XIOXLN00000008‚-1721XOPALL00000001‚-1752XOPASQ00000001‚-1744XOPDCP00000000‚-1780XOPDIR00000004‚-1727XOPEXC00000001‚-1726XOPONE00000000‚-1751XOPPRO00000000‚-1745 MMOTOROLAM68000ASMVERSION‚1.30IO‚:ƒ0.ˆ.IOHDRV‚.SA09/16/8214:02:47žPAGE‚88(VERSADOS4.0I/ODRIVERPROCESSEXAMPLE•-  XOPRCP00000001‚-1781XOPSHR00000000‚-1725XOPSRV00000003‚-1747XOPSUB00000008‚-1728XOPSUP00000010‚-1730XOPWAT00000002‚-1746XOPWUP00000000‚-1743XPSHLT00000071‚-1854ƒ2615ƒ2642XPSNRM00000070‚-1853ƒ2753ƒ2858XPSUNR000000FF‚-1856XPSUNS00000080‚-1855XRP1LEN0000000E‚-1881XRPDNO0000000C‚-1879XRPDST0000000A‚-1871XRPDTP0000000B‚-1872XRPKEY00000003‚-1846XRPLEN0000000C‚-1873ƒ1878XRPPRM0000000A‚-1849ƒ1870XRPSTA00000002‚-1845XRPSTV00000008‚-1848XRPUID00000004‚-1847XRSKEY00000003‚-1836XRSLEN00000006‚-1838XRSPTR00000004‚-1837XRSSTA00000002‚-1835XSTAAT00000082‚-1797XSTADB00000094‚-1805ƒ2669XSTADS00000093‚-1804XSTBCM000000A5‚-1811XSTBLN000000C8‚-1827XSTBSY00000084‚-1799ƒ2288XSTBUF000000C7‚-1826XSTCAD000000C9‚-1828XSTCME00000092‚-1803XSTCPS00000091‚-1802XSTDBA000000B9‚-1822XSTDDA000000B8‚-1821XSTDTA000000BA‚-1823XSTHLT000000B4‚-1817XSTIBB000000B2‚-1815XSTINV00000085‚-1800XSTIOP000000B3‚-1816XSTMAN000000A3‚-1809XSTMNO0000000B‚-1785XSTNAT00000081‚-1796XSTOFF00000083‚-1798XSTRNG000000B1‚-1814XSTSBA000000B6‚-1819XSTSDA000000B5‚-1818XSTSES000000C6‚-1825XSTSHM000000A7‚-1812XSTSMB000000A1‚-1807XSTSTA000000B7‚-1820XSTSYN000000A4‚-1810XSTUAN000000A2‚-1808XSTVABT00000000‚-1860ƒ2617XSTVDST00000000‚-1861XSTVDWN000000FF‚-1864 MMOTOROLAM68000ASMVERSION‚1.30IO‚:ƒ0.ˆ.IOHDRV‚.SA09/16/8214:02:47žPAGE‚89(VERSADOS4.0I/ODRIVERPROCESSEXAMPLE• XSTVNID00000001‚-1862XSTVRSETŽ00000000‚-1863XTACIA00000001ƒ-972XTADLC00000006ƒ-977XTCRTC00000004ƒ-975XTDIPC00000010ƒ-978XTDSAS00000020ƒ-980XTMIPC00000011ƒ-979XTPEXM00000050ƒ-982XTPIAA00000002ƒ-973XTPIAB00000003ƒ-974XTPRTL00000052ƒ-984XTPVM100000051ƒ-983XTS7A200000060ƒ-986XTS7A800000062ƒ-988XTS7AR00000064ƒ-990XTS7B200000061ƒ-987XTS7B800000063ƒ-989XTS7BR00000065ƒ-991XTSSDA00000005ƒ-976ZBAL’00000024‚-1918ZBCNT‘00000010‚-1913ZBPTR‘00000014‚-1914ZBSAD‘00000008‚-1932ZBUF’0000002C‚-1920ZCID’00000000‚-1928ZCRNUL0000001C‚-1916ZDOPT‘00000008‚-1911ZEOLC‘00000018‚-1915ZKEY’00000006‚-1930ZLEN’00000014‚-1935ZMODE100000030‚-1921ZMODE200000034‚-1922ZNCNT‘00000028‚-1919ZOPT’00000004‚-1910ZPTR’00000010‚-1934ZRLEN‘0000000C‚-1912ZRSET‘00000007‚-1931ZSBITS00000020‚-1917ZSTAT‘00000000‚-1909ZSTW’00000004‚-1929ZTSAD‘0000000C‚-1933Z_L1.000Š7ƒ00000174‚-2526ƒ2524Z_L1.003Š7ƒ0000017E‚-2531ƒ2529Z_L1.006Š7ƒ00000188‚-2536ƒ2534 éG*************************************************************************CLEARTHELOADPOINTINTERRUPT*5*ˆTheMVME435magtapeadapterboarddoesnotcomeup7*ˆ"quiet".‚Ifthereisatapeatloadpointonthefirst6*ˆtransportonaƒboard(MT00,MT10,MT20,...),thenan:*ˆinterruptfromthattransportwillmakeitimpossibleto*ˆbootupthesystem.*:*ˆItisnecessarytocleartheinterruptbeforethedriver'*ˆforthatboardisloadedintomemory.*?*ˆHereweinsertcodetodothat,assumingthatwehaveatmost;*ˆtwoMVME435boardsinthesystem.Thisiseasilyextended*ˆtolargernumbersofboards.*+‰PEA‡MTA0OUT(PC)ŠIfbuserroroccurs,goto*¦codefornextboard.)‰MOVE.W„#'BE',-(SP)‰Save'buserror'flag* ‰IFGE†\NOMTA0/MT00STATEQU‡\LMTA$00ŒSTAT2registeronMVME435‰TST.B…MT00STATŒReadtoclear‰ENDC* ‰LEA‡6(A7),A7 MTA0OUT‚EQU‡***+‰PEA‡MTA1OUT(PC)‰Ifbuserroroccurs,goto *¦nextdriver)‰MOVE.W„#'BE',-(SP)‰Save'buserror'flag ‰IFG. E†\NOMTA1/MT10STATEQU‡\LMTA$01ŒSTAT2registeronMVME435‰TST.B…MT10STATŒReadtoclear‰ENDC* ‰LEA‡6(A7),A7 MTA1OUT‚EQU‡**G***********************************************************************ééé´** XDEF BUFTBL,BEGBUF,ENDBUF*PRTB IDNT 11,7 BUFFERS FOR .PRT SECTION 0TSPACE EQU $38 BSPACE EQU 4 ZLEN EQU $14*9*ˆI/OBUFFERAREAS-ASSEMBLEDANDLINKEDATSYSGENTIME**BUFFERTABLESTRUCTURE**ˆ(4)-CHANNELMNEMONIC*ˆ(2)-STATEWORD*ˆ(1)-CHANNELKEY*ˆ(1)-RESERVED*ˆ(4)-STARTBUFFERADDRESS*ˆ(4)-TRANSIENTSPACEADDRESS*ˆ(4)-POINTER*!*STATEWORD:-1=INTERNALSTATE*š0=NOTACTIVE *š1=I/O**CNT SET \NOLPRT IFEQ CNT CNT SET 1 FORCE AT LEAST 1 ENTRY ENDC7BUFTBLƒDS.BƒCNT*ZLENˆRESERVEAREAFORSUPPORTEDDEVICESBEGBUFƒEQU…*“STARTI/OBUFFERS‰DS.B„(TSPACE+BSPACE)*CNTENDBUF EQU * END OF BUFFERS‰ENDééééé½#* XDEF BUFTBL,BEGBUF,ENDBUF*TTYB IDNT 11,7 BUFFERS FOR .TTY SECTION 0TSPACE EQU $38 BSPACE EQU 4 ZLEN EQU $14*9*ˆI/OBUFFERAREAS‚-ASSEMBLEDANDLINKEDATSYSGENTIME**BUFFERTABLESTRUCTURE**ˆ(4)-CHANNELMNEMONIC*ˆ(2)-STATEWORD*ˆ(1)-CHANNELKEY*ˆ(1)-RESETFLAG*ˆ(4)-STARTBUFFERADDRESS*ˆ(4)-TRANSIENTSPACEADDRESS*ˆ(4)-POINTER**STATEWORD:-1=TERMINATION*š0=INITIALIZATION *š1=I/O**CNT SET \NOLTERM IFEQ CNT#CNT SET . 1 INSURE AT LEAST ONE ENTRY ENDC7BUFTBLƒDS.BƒCNT*ZLENˆRESERVEAREAFORSUPPORTEDDEVICESBEGBUFƒEQU…*“STARTI/OBUFFERS‰DS.B„(TSPACE+BSPACE)*CNTENDBUFƒEQU…*“ENDOFBUFFERS ENDéééééÆ#=LINK ,CHID,\LINKLS;IXHMSEGMENT CHID:7 \CHIDRVR INPUT CHPIEND=ENDéééééééÏ/ =LINK ,IPCD,\LINKLS;HAMIXSSEGMENT IPCD:7 \IPCDRVR INPUT IPCDRVEND=ENDéééééééØ=LINK ,MTAD,\LINKLS;HAMIXSSEGMENT MTAD:8 \MTADRVR INPUT MTADRVREND=ENDéééééé/ éá=LINK ,EPCID,\LINKLS;HAMIXSSEGMENT EPCI:0-15 \EPCIDRVR INPUT EPCIDRVEND=ENDéééééééê=LINK ,M315D,\LINKLS;HAMIXSSEGMENT M315:7 \M315DRVR INPUT M315DRVEND=ENDéééé0 éééó=LINK„,WIND,\LINKLS;HAMIXSSEGMENT‚WIND:0-15\WINDRVR INPUT WINDRVEND=ENDéééééééü=/*I=/*‚MPSCSUP.LF--SysgenchainfiletolinktheNEC7201supervisordriver=/*‚fortheVM02.=/*<=/*‚SysgenparameterLINKLS=\LINKLS=file/devicetowhich=/*‚tosendthelinkerlisting.=/*J=/*‚SysgenparameterMPSCSUP=\MPSCSUP=addressatwhichtolinkdriver.=/*=LINK ,MPSCSUP,\LINKLS;HAMIXSSEGMENT MPSC:0-15 \MPSCSUP INPUT MPSCSUPEND=ENDé0 ééééé=LINK„,SASIDRV,\LINKLS;HAMIXSSEGMENT‚SASI:0-15\SASIDRV INPUT SASIDRVEND=ENDééééééé=/*G=/*‚MPSCDRV.LF--SysgenchainfiletolinkNEC7201subordinatedriver.=/*<=/*‚SysgenparameterLINKLS=\LINKLS=file/devicetowhich=/*‚tosendthelinkerlisting.=/*J=/*‚SysgenparameterMPSCDRV=\MPSCDRV=addressatwhichtolink1 driver.=/*=LINK ,MPSCDRV,\LINKLS;HAMIXSSEGMENT MPSC:0-15 \MPSCDRV INPUT MPSCDRVEND=ENDéééééé =/*I=/*‚MPSCSPR.LF--SysgenchainfiletolinktheNEC7201supervisordriver=/*‚fortheMVME400.=/*<=/*‚SysgenparameterLINKLS=\LINKLS=file/devicetowhich=/*‚tosendthelinkerlisting.=/*J=/*‚SysgenparameterMPSCSPR=\MPSCSPR=addressatwhichtolinkdriver.=/*=LINK ,MPSCSPR,\LINKLS;HAMIXSSEGMENT MPSC:0-15 \MPSCSPR INPUT MPSCSPREND=ENDéééééé1  =LINK ,PRTD,\LINKLS;HAMIXSSEGMENT PRTD:7 \PRTDRVR INPUT PRTDRVEND=ENDééééééé)=LINK ,TTY,\LINKLS;HAMIXSSEGMENT .TTY:0,1,2,3,4 \TTYSTR INPUT TTYINPUT TCCIINIT INPUT TCCINPMINPUT TCCIREADINPUT TCCIWRIT INPUT TTYBEND=ENDééééé2 éé2 =LINK ,TNT,\LINKLS;IXHMSSEGMENT .TNT:0 \TNTSTRSEGMENT NTS:14DEFINE NNTDCBS,\NOTNTINPUT &.TNTD.ROINPUT NTS.NTSSERV.ROEND=ENDééééééé;=LINK„,VM22DRV,\LINKLS;HAMIXSSEGMENT‚VM22:0-15\VM22DRV INPUT VM22DRVEND=ENDééé2 ééééD=/*:=/*‚GPIBDRV.LF--SysgenchainfiletolinkMVME300driver.=/*<=/*‚SysgenparameterLINKLS=\LINKLS=file/devicetowhich=/*‚tosendthelinkerlisting.=/*J=/*‚SysgenparameterGPIBDRV=\GPIBDRV=addressatwhichtolinkdriver.=/*=LINK ,GPIBDRV,\LINKLS;HAMIXSSEGMENT GPIB:0-15 \GPIBDRV INPUT GPIBDRV INPUT GPIBXTREND=ENDééééééM81IOH ,ASREL' CHPI SA!G@„VERSADOS 3.02GLVL5PCH â' F3 " Nu*J*gT *g, *g *F3g>TCCINPM ROGGTCCIREADROPPTCCIWRITROYYTNTD RObb TTY ROss VM22DRV RO„„VMPRT RO•• VMTTY RO¦¦C1EPCIDRV ASREL' EPCIDRV SA!PX„SIG2661 TERMINAL DRIVER2 êF3vžV081983 4@F3@€€ÞÀ†Øæ4V0NqNqNqNq+O`-Aúÿìr°WÉÿüg|ù¿|ÿü¦F3NuB­¦QíåFíBB-îB„í¹`Ì+O`+jl|`î,*B…:*"mPaF3&F-¿g+Kd`,< Fg+Kd+mPhpAúÿR¼XWÈÿüf0( Nð r‚(mdAF3AíÆ¼ |p1Aí¹FíBB„`Fí¹FíBB„`6,+z:"mhaF3˜"F m"a€€m||3|ÿ0<ÿ3@AítCép2ØQÈÿürF3`ÿxAíl(j!lŠ!lŽr a2í¸r`ÿT(jAìzBAa mpAèCì‚F3p2ØQÈÿür`ÿ.,+z:"mhaþ"F+Ip~ÂifÞ~0<ðÀifÐ0<€ÀiF3fÄ0)ÁiF@Àhi0)// Aè Cé EúýþBgâHe SAØQÉÿü`F3ÑÁÓÁ`æ"_ _~B~A0<Ài @gl~@)( b)fJ©gR` rðÂéÂF3²fD) g )(c)(g )á˜g$jB`öa€m||F3PìPNu‡rˆ`þ,a¸HípÂa FíB+g;|4p¦`;|8p¦<ÿÿ`^PíàF3PíáQíæB­¬Qíâ+f -uWíâNuadHípÎFíB+gQíæPíáF3+g;|p¦`;|p¦<ÿÿ"mhR)'í¸"m"Pí¾Hz/`ÚQí¾FüF3 p.m`Nu m"a:grá`ý^;kª+gAëpN@`r„`ý@+HhF3B­´,+ *+š†RE"mhaNuHçñüfJ…g/ i6pN@`Nqr„`ý(*Ú†F3S…Lß?Nua€HípÎ,+*+"mhaºHípÂaþÖFíB+g|¦`|F3¦+g|4§`|8§|p¨<ÿÿ`þöí ¸FíBB„`þô/ m"(F3(ff"|ÿþNu/"H8fV$f2ff‚F3fv`Ê"m"(Aí¸`t"m"À-½fJ-ägJ-…gœ-tF3gî`R°-†f í¸`>-…fJ-äfr²f J-äfh`°-„fPíäí¸F3`°-‡fJ-áfF-æ`š màôfpê`:2-ò€Smòf;|àòRmô mÚF3ôfí¹í¸`Àí¸`¶Jmüf"@þ;mòü màôfRmü màüF3cBmü`(B(JkÀNu -´fJ-àg -Ê­Â` -Ö­ÎNu$F3Agpè`gpê`†gÒfæ(Aí¸``¶(F3gª²fþz` Jíåf˜Fí@­¸f0­¸fˆ­¸f­F3¸fž­¸f`­¸fž­¸fÀ­¸fÊ­¹fÔ­¹fF3 ­¹f P­¹f z­¹f zFíBJm¸fÿpQíå"kt||NuJmìgâJmF3ôgÜ m úcPíè`Î2-ð²müf8 md"-Ê’­Â!AmþAíÆ¼ |pF3B(mþ ata `Œ5Smðf;|àðSmôJ-ãg mÌôbaÊ0-ìNûF3`ÿ\`Nq`† mʱíÆc aDgpaF`6Á+HÊJ-âga2 -Ê-F3tg°­Æc­Â+@´`´`a`ÿ -Šá˜g²gB`ô-»À°-¼f -Ê­F3Â+@´í¸BmìNu mÊaÆf ±íÆb`JJgþÎ c pa°`þ¾g F3ff±íÂc\ +HÊS­¬J-âgL-ug&JíçfpS­¬ < a0`þPJ-çgQíçp>a,²-F3ˆf -Ža +mÂÖB­¬+|8p¦`¨²-‰f0+mÂÊJ-âg-ugp\aF3æ -ŽaÌ`ýì+| 8p¦`p±íÆcpaÄ`DÁ+HÊR­¬J-âg bp^F3a¤R­¬r@Òa–-tg±íÆc ‘íÂ+H´``ýŒJ-âg J-çgp>ahF3 -ŽaNBmìí¸`ýLFíB)ÁA)f@`ý*@Fí@F30-êNû`|`¨`Ø``:`lJ-æg0B-º;|ö;|øBmú -ÒR€F3+@ÖJ-ÀgB-Á`B-ë`€€)ÁA g fm“ºg aÔíF3À`üœJ-èg Qíèí¸`Jmìfa`ü~H瀀 -¦cœá˜+@¦ /bB­°F3@ëí4 ¸`x ?b&Qíç0@í-ªf-ugalí¸`LB­¦ mdF3|!m´)€@)QíàQíá mhS('AíÆ¼ |p1|F3a^LßNu)€@)`èFíB;|àð;|àòBmôBmüFí@J-ãgaF3NuHçÀQíã-ug -…aŽ`FíB)À@Fí@LßNu mÖ±íÒc F3aBmê`þ¾`+HÖ`þLJ-àf -Ö­Î+@´Nu mÖ±íÒb g+HÖF3 cR­°`þBmêa -°B2-vgnüg -Žaè`ý¦J­¬gS­¬ < F3aÐp`ýÖBmê`þ4 mÖ±íÊfBmê`þ"+HÖR­¬ bR­¬@aF3¦<^`ý˜-Àf*-Àf&-Àf,-Àf(-Àf8mÁë`ýF`úbF3­À-„`ýŠ`úPJ-ºf­À`ªpS-º`ý8Jmúf­À`’2-ö5oF3Smöf;|öSmú`ýá˜g a `aBá˜føNua&íÀí¸2-ø€oSmøF3f;|øRmúNuJ-Àf mëÁ|ëNu/ -pïf-fNq`Nq|tïF3í¸`2J-¦c,AíÆ"mdaø‚#@pá@¼ |p1@aLaè"_`ùbF3J-îgdJ-¦k^f(AíÔ¼ |€1|aø&À@ | `$ mdaø!@F3pÆ@AíÆ¼ |p1@FíBaàFí@ax`øô/ AíÆJ-¦f1|F3`&md|æa÷Ì'@aª1|æFí@¼ |qa2&_`ø¬/ a† mpF3AèCítpFíB2ØQÈÿüFí@aÆ"_`ø€J-äg aþ¤íÀ`ølQíä­ÀF3í¸`øXPíã-ugaþvíÀí¸`FíB)€@Fí@`ø"F3Hç€@aüV;|ö;|øBmúBmêB-ÀBmìJ-¦c B­¦"mhS)'QíæQíàQíF3áQíèQíäB-º"m"|7LßNuHçÀð@çAíl"m"p( f@`F3À( g( g ( g` FíB@(&p@F3F×<7(g (gþFíB@(Fß((rðÂA»fpé@¼pÿF3( gp@½LßNuHç?|FíB(@Fí@aýíÀAú¶"|F3,r$ p"N@`p N@Lß>ü`öÈ­Àg(FíB)€€@)Fí@|F3p¦í¸`ö”AíÆa `öŠaþf`ö‚Hç?üm8!mlB(|$-ÿHÿJÿRÿVÿXÿZF3ÿbÿjÿlÿpÿuÿ’ÿxÿ†ÿšÿªÿtÿzÿ~ÿ„ÿ€ÿŒÿœÿ¤ÿ”ÿbÿdÿhþÚþÜþÞÿbÿdF3ÿ ÿÿ ÿ8@€€@F3@@@ @!@0@1@2@3@4@5@6@@@A@B@D@E@F@G@H@I@J@K@L@M@N@O@P@Q@R@S " !F3 c€€€$d$d$DJ"I!$$(( $$$$$”$$ $$($$F3FíB -Jf"m"aa¬fa6g íj|FüF3 Nup@ -(A9A;A=A?-)A1A3A5A7@F3|= |€'|—'|'p@y@x;@j;@PAíè+HH+HL;|7ërAíF3ppB˜QÈÿüAíz+H^Nu"m"| I1 !p2-rA0‰!;Ar@-@+F3| '| 4 '|')/-kg| '+@fR@t@ué1é3éF35aNu2<)f )QÉÿòrÕNurNup@R@ @g$)gì;@vpF3)²fR@)gîrNurÕNu"m"I1€f|ÿþNu-If-HgF3-jg|NuHç:R-x mL±íHf Iíp(l—Ë`(h&hg$gF3öé5 mL±íHgfröa¸`\| ) !0-rÂ@@0‰!;@réF33 mL±íHg*-kg$)%g | ')/` mV f| '?aF3 ,p)á€)á€) mV g fD Sf†`‡'@",´g.0< F3g0< AJ°gHçþN°LßþJgrÖaì`a$:JEg†` !ÊmréF31g0mÿüj­kgB-y)%gík`)%gík g@F3"-H²­Lg0 mV f&| 'i/laæ-kfml aš`vaF3 g0-kg"J­fg"S­fg mb+Hbap` ab`vaÒg8íF3k"-H²­Lf(Hç—ËIíp(lAílx* ,. a .Lßðgaö g)%AF3Àpa‚gŠAíp P)- f(( gj|'aÊ;|jpaHF3|'`P f|'`<p `f(‚Aa ò` pgF3 f |€|-|'grAíp P)-„•‚"(,)%g"((F3f|'`F|' -kfrÀÂ-yfík`„By)%gíkF3`)%gíkg pa l|'gaÒBmjpa R|'F3ga¸Bmjpa 8 g -m¿@+g mL±íLgrØaZS-xLß\þF3|Nu-kfrÀÂ-yfík-?y`2-yg(-yg> mL h P@ gF3 P@!f rÂ-y²( ga ¨íyíkp2<ÿÂ-ya œ` íkaNua $F3|ymÿ¼jNuHç?~,mL.f\+mZV mZ+HZ gDAúø^ $nF3¦@ÿã@00Hç¿þ"m"N°LßýJft mV l¦®fžLß~üNu-kF3fÆrp,*?2-P;AP2.f.græA<pa l-kgNF3Cíp-iBVB®Cíl-I |B®Bn`Hç?~,mL­kíkAú÷:F3+HR-t@u``aàgÿ`,mL.fÿX&n(na˜fÿHa "fÿ@a ¤F3fÿ8`þÌ.fP-lfP-tR fp°-ug2€ÿ@tç€Aíp(pF3 p gÐ-L( gÄ+mRZ`þt­k`ÿfpa Ú"m")'gä-tF3R fp@u`žHç?~,mL­kgþ¦`ÿ*rÛ`êp@a e| ,´g @J¨F3gHçþN¨LßþJf\ta„$Ha  G|Š'| '2+Ag@*F3g0*"gS@ašJ@g­r2-r‰!ÂBrNuî`ô*F3g0* fÀ`¶p€aúe ,´g @JgHçþNLßþJf¦aâ$HaîF34+ Sg G B` F B*6*$JBg*6*&tgj`F3g| ` g| ÂgJCg ¶@lr„`*0a¶|‰'ÂF3­r2-r‰!| 'BrNu2+Af@a2((AínpgüF3 R€gü R€g ÂR€t‘À`þ¦J€fôîrNuaè(0+@F3g(g|'|þ|ÿ t`þtî-kg| 'rNu<_F3` <?`a `ø| 'aþ@`æ+ ``ÖAíp$PF3ê|-<`¼+ a<A``¤<`œ<p`”<F3`Œ<`„<`|<`t< `l<`d<`\<`TaöŠF3HçÿþAú8"|èr-B$ p"N@`p N@Lßÿík|‰'| 'rNuHçF3*A mL±íHg4­kg,(h&h"m"| ')/-kfèB-laF3úÎLß8Ns­kHçÿþAúÿª“É$ -B€p"N@`p N@LßÿNua0 FF3+Ef+Hb`Š-kf4-kf@y+mVZr`8-yÂg,gv+F3 ÂÆ¶faõ|fB-y­kr<þNurÝ<Nu/F@@àH@ @àˆF3@àˆ@ Nu+|fA/rNuaz(Nu mZP'R­ZrNu|F3';|j0<–QÈÿþ|'rNu|Ž'0<QÈÿþi- |'rNu+ @+F3@mrNurÞa+ (ÿï€@aÂrNu)'j­k|'rF3NurÙNu)'k­k­kík| 'rNurÙNu)'j­k­k|F3 'rNurÙNu)'k­k­kík|'rNurÙNuax$I"Fa1|F31|ÿpÐh82ØQÈÿürNu$IaN"FAìz`r$Ia@"Fa(±üf^/ EíF3pp,*ç€ m^%ˆ%Œ0,²gR@Eð>+J^$_J,*f(/ aó"_) F3gJ*)j© ` / "Jaþf"_4<0<ÿàÀifR0<ðÀifF0)ÁiF@F3Àhip0)HçàAè Cé EúñêrgâHe SAØQÉÿü`ìÑÁÓÁ`æLß4<BF3) bðJ,*f4*)F fA)A)g)k @F3aä©ÿÿÿ(©5 ÿÿÿ,Jl²g"4<C ,´g$@JªgHçþNªLßþJf|J©F3(VÀJ©,VÁtD±fjJ,*f0-rÀJ©(f€;@rŠ!p0,²€HçF3ÀAèCé0ÙQÈÿüLßÃHa*|PJ,*fÃHtA( gJ*)krNu‚rˆNuF3aXpJ,*f*%þ€l{l||JNu/ t(kff€F3Â"m"B-"_Nufæ`ìp,*Aípç€ pNu mL.( ,(z:(xF38(NuHç‚€0<$Aúï¢<r‚¼XWÈÿüf 4<$”@ãBrJLßANuAíH"mL³íHgÓüF3³ÈfCíè+IL³íHNu/ CíH mHBP!L!K!G !F1D1EÑüF3±ÉfAíè±íLg+HHp"_NuAúïb80  ,K|fpÆg¶g±D4BgaF3ÿ6Æh¶f 4BgB0-j ,K|g f f*rÙ`pfö@gF3ggä`  ggÖg, ,K|g-sgÀaþ¬$((f$(,+F3 rÜggrÚAíp hJ¨ grNuHç?~,mL½íHg¨aï aúAíHîF3Ýü±ÎfMíè½íHfæ­k-kfB-y,mL(n&naô–`T,mLF3½íHgNHç?~AøH¹îgÝü±ÎfMíè½íHfæ`.î½íLfaï&naF3ôN-kf-?yLß~ürNu<ÿLß~üNu0AúíŒr$°XgQÉÿúrÛNup$ã€AúìàF3-kfAúí20gàAð+HR+HZrNuHç?þ<4< * áD-8†ÿ&-aBf< g ,K|grÞ`*gF3rÞAíp P( g g ,J|grÚ`rJNuHç½þfJ…g i6pN@`3Nqr„`rLß½Nu4ééééééd1IOHDRV ASREL' IOHDRV SA"D„VERSAdos 4.0 I/O Driver Process Example V 4.0 - 09/16/822'FF34F8090782 4@€€†¦ÜöFíBaFíF3@NuNuB…,*:*"mPaP`<†`&&F SgB-qg<„`*;kF3œ+j˜+Kv(j+mPzpAúÿŽ<¼XWÈÿüf\ˆ0Nð<‚`ÒabíqF3 mzR(' maüFü `ÌaŠa1|1|p2ØQÈÿü<`ŽBmF3|G|NuaR(j<)fd!lŠ`a: j(HÑüz4<F30<ÿøÀif>0<ÿøÀif40)ÁiF@Àhi0)âHe3h âHe#h âHF3e#h<õ‚`Pì¤aÿdp PˆP‰0ÙQÈÿü<`Ü-qgIí~p<q$*F36<aø`ÖFíB&mv"m"aþh­qFü m¿B­¿ -zS('|æF36<æ<qp$-˜Ií~a¬`Š+gAëpN@` Nq<”JŸ`P+Hz,+ *+F3š†RE/"mzaX5 `P<„`.+FÜŸ+F”NuAíž/,+z "mza0`P<„`F3"F _NuIí~p$*Aÿ6A<pa B€NufJ…g i6pN@`T—NupF3N@`NqT—Nua8­q mzS('6<Jg6<áp<p$-˜C'm¿Ií~aF3ÀNuB@¾+_ÃY­Ã+_ÇFíBNu )aý"PÃ`€)Fí@Nu"m")F3 g) g|ÿþNu-If-Hg-qf"m"aüÌFí@|F3NuHç:aüº m-¾$mÃ&mv(m˜R-ËHz/-ÇNÒS-ËLß\þFí@|NuF3,~|)m<g X€X‡”€p­8pX€°-:c-:€)‚p9ƒp F3g9„p g…p B4p LÔüaNuHç m4pJ-ËfpN@` Lß8+Wr`Lß8 3B­rNu4éé¥`1IPCDRV ASREL' IPCDRV SA"„VERSAdos IPC I/O Handler Process Ver. 4.3 - 09/14/832'XF3ÞjH091483 4@€€ vØRÄF3Rxþ/ |pN@`p N@*_+HÀp@B˜S€núNu *faÌ`\-qF3g<ó`pB‡-qg<„`:B…,*:*"mPal` Nq<†`@&F(m"F3,gíq<ó`&(j+mPˆpAúÿF<¼XWÈÿüf Ñü0Nð<‚`F3øah,+aZ+FŒ Fan1@1AB†ÆaÂaþ2<0‰| |F3`l -g´a,+a+FŒ Fa"H§À<F@ÀhFAÂh‚@LŸf"F3<6< Æhf<°hf Aÿó²hg ‚<ˆ`NB†Æa6ar2<@‰F3 mŒ,g< <€( É B€( f|` |€À@hF3|`t <€( gÀ( fÀ( gÀ( gÀF3@ (&(gÀ@h'h B€É( g €À@|F3||P` -gþfaÌ,+a¾+FŒAìz"mŒ<aÈF@F3ÀiFAÂi‚@f”0)ÁiF@Àhi0)âHe3h âHe#h âHe#hF3âHe#h,g äHeh` îHâHeh&&âHeh''äHeh)F3)"Ba$E PˆP‰ÙQÍÿü|PB`˜<ˆ‚`Žz. -g z*,fF3z:Nu0<2< -g0<2<',f0<|2<J-×F3g prAúþŒ` Fg+KL+mPPprAúþT¼XWÈÿüfÒpþNðþr‚(mLAF3Aí´¼ |p1Aí¥FíB`¸í¥FíB`ª,+z:"mPa"F mF3ìaª€m||3|¿ÿ0<ÿ -§f€ 3@Aí\Cép2ØF3QÈÿür`ÿpAíT(j!lŠ!lŽ0<€2< a~í¤r`ÿF(jAìzB@BAF3ad mX(g8(Ví×g,,(*z"mPazg~C`P+FŽHzýf!_*!M.F31mB2 mXaâ€AèCì‚p2ØQÈÿür`þÔ,+z:"mPa"F+IX~ÀiF3füÂifô~0<@Àifæ0<€ -§fÀ ÀifÎ0)ÁiF@ÀhF3i0)// Aè Cé Eúü’BgâHe SAØQÉÿü`ÑÁÓÁ`æ"_ _~B -§fF3 )&bv~A0<Ài @gf~@)( b)fJ©gL` rðÂé²f>F3) g )(c)(g )á˜gjB`öm||PìPNu‡F3rˆ`ý´a°Híp°aFíB+g;|4p’`;|8p’`ZPíÎPíÏQíÔB­˜QíF3Ð+f -]WíÐNua`Híp¼FíB+gQíÔPíÏ+g;|p’F3`;|p’"mPR)'í¤"m"Pí«Hz/`.Qí«Fü p.mHNu mìaðF3f -ôgrá`üæ;k–+gAëpN@`r„`üÈ+HPB­ ,+ *+F3š†RE"mPaNuagr„`ü¢(Ú†S…NuHçýü?<fJ…g i6pN@BWNqNqF30Lß?¿NuaÿnHíp¼,+*+"mPa®Híp°aþÆFíB+g|’`|F3’+g|4“`|8“|p”`þæí ¤FíB`þæ`.Nq`R`RNq`F3¦`Nq`>`>Nq`’`Î`¾`ºAò"m"¼(¼8J-×g mŽN¨`~F3í¤`ÌAò"m")ÿü¼8J-×gÀ-ª mŽN`PJ-ôf¼À-ªfJ-ÒF3gJ-mgž-\g*`R°-nf í¤`p-mfJ-Òft²f J-Òfj`þF3Øáé°-lfPíÒí¤`B°-ofJ-ÏfF-Ô`Ö mÈàfpê`Î2-Þ€SmF3Þf;|ÈÞRmà mÂàfí¥í¤`ðí¤`æJ-õf†À-ª F3fQíôí¤`ÆF-öfa(`a4PíõFí@AúP"|…r$ p"N@`Qíõ`>F3/@çFíBQíöp@`/@çFíBPíöpÀ-?ð-ð¼­ðFß Nu/ *AQíõ*_F3NsJmèf"@ê;mÞè mÈàfRmè mÈècBmè`ÐBrÂ-ógÀJ-ôF3gÀ -§f-ò-fÒJjÀNu - fJ-Îg -¸­°` -ÄF3­¼NuAò"m"-óAó³¼¼8J-×g€Àg mŽN¨`BrÂF3gí¥J-ôf.€À-ógí¤`rAò"m"¼¼0¼8rPÂgpèF3`ÿ` r Âgpê`þò`èAòí¤`2Aò-f Ò¨ÿö`¨ÿú|F3pøJk´í¤`NqJíÓf¢Fí@­¤f:­¤f’­¤fì­F3¤f|­¤f>­¤f|­¤fÆ­¤fЭ¥fÚ­¥F3f ¦­¥f à­¥f þ­¥f þ­¥f "FíBJm¤fÿfQíÓ"pF3U@NuJmÚgâJmàgÜ m æcPíÖ`Î2-ܲmèf8 mL"-¸’­°!AmêAíF3´¼ |pB(mê ara ¼`Œ5SmÜf;|ÈÜSmàJ-Ñg m´àF3ba|0-ÚNû`ÿ\`Nq`† m¸±í´c aDgpa`6Á+H¸J-ÐgaF3 -¸-\g°­´c­°+@ `´`a`ÿ -rá˜g²gB`ô-¨ÀF3°-©f -¸­°+@ í¤BmÚNu m¸aÆf ±í´b`JJgþÎ c pF3a„`þ¾g ff±í°c\ +H¸S­˜J-ÐgL-]g&JíÕfpa²-pf -vaÞ+m°ÄB­˜+|8p’`¨²-qf0+m°¸J-ÐgF3-]gp\aº -va `ýì+| 8p’`p±í´cpa˜`DÁ+H¸R­˜J-ÐF3g bp^axR­˜r@Òaj-\g±í´c ‘í°+H ``ýŒJ-Ðg F3J-Õgp>a< -va"BmÚí¤`ýLgýD0-ØNû`rNq`†`¶`F3ú``JJ-Ôg0B-¦;|â;|äBmæ -ÀR€+@ÄJ-­gB-®`B-Ù`¢F3@ÿü g fm{¦g aÔí­`üÈJ-Ög QíÖí¤`JmÚfaF3`üªH瀀 -’c7 †á˜+@’ /bB­œ@Ùí¤`h ?b&QíÕ0@Û-F3–f-]gaJí¤`ü`öB­­gFíB¼­ñF3Fí@|p’í¤`öAí´a>`ö-\gí¤pÀ-óg-\g aýÌF3aó¾Píô`õâaý¼aþ@`õÖHç?üm8!mTB(|$-Eé#kŠ #kŽ`aÿR042<ÿxýJÑg g<F3 2< ÂBfh2<ÿ<ÂBfZÈ@fTÁPF@ÀZP0Vé0`ÿâZF3 JBk’± QÈÿôRA;âH€læ(ÿü g g <A`Pp QÈÿüJ(F3 f|J(f|Jf#F2Pé`0jQéQéPëPaþŠ`F3 F Fƒrˆ`>SrÔJ)g2EéT mP5,jAì/ pN@``ú"_JgF3 ,, *,š†R…aÈ#E6*Hâ˜R('@çFíBAíœ0!‰ÞXPJ@fAú2+HvF3 m"aB#i:6 ©6c|NqNqNqNq@FíF3 Ba€až©6atg®|ÿàa„J)"f\ ©6b aš`DF3 g`Ö<ô@a,`na(©6`¸`a fagPFíB|F3 ÿàa"J(ÿøj |%`|%)%J)g B$QéJ)"g®|ÿèF3 i*ÿðaÀf <ã`òS),gFíB|ÿàa¼`þä<ãJ)-gÌaŠF3 f <ã`¼FíB|ÿàaŽalg¦FíBQé"|ÿàatJ)"g|F3 ÿèi*ÿð<Ã(ÿøfrJ)(fjS)-`þh<Ã(ÿøfTJ)(fL<F3 `DHç&iB&< ÈÿØ ÈÿØ ÈÿØ ÈÿØ ÈÿØ ÈÿØ ÈÿØ ÈF3 ÿ؃ fÈ#KBLß NuHç†*)6&iB,äg ÈÿØ…`î gF3 [ÿØ`î@#KBLßaNuJ)/g$J)0g )f ƒ`ÃF3 CÿðNu(ÿøVé.`(ÿøfPé&a$g^FíB|ÿèa0é*iF3 *ÿðQé#|$aøg2FíBaÐ|ÿàaQížJ(ÿøk~|%|)F3 Pé&aÂgüFíB|ÿèaΩ*i*ÿða gÚFíBax|ÿàa¨F3 QížJ(ÿø[é/ )$f ©*`é*i*ÿð` |%Qé/Pé,)F3 2/a÷€ _Pé&a8grFíB|ÿèaD))`\HçàÀp"BA-)$ Aú""|F3 ˆN@` LßQíž` LßPížNu/ *AJ-žg|ÿè*_Nsi+#i6:F3 Qé"Qé#Qé(#i:6#i>Ba®gèFíB@|ÿàQé'a²J)'gF3 f`æav<ô`´až`ÔJ(ÿøj |%`|%J)#g<ÂF3 f (ÿØ`ò`tJ)"fJ)(grÃ`raÒ`TS)+f aÂF3 rã`Baf <ã`2FíB|ÿàa|ÿèi*ÿð`ÿHçü&)6&iBF3 („*ä4< Bg …gHÿØ&ÀYBS…Yƒ`à Bg,<`F3 gèÿØSƒS`(ÿØR oàYB Bg HÿØYB`ð#C6#KBLß?NuF3 Hç&)6&iBf$ ƒg èÿØSƒ`æ<ÁRƒ(ÿØgô#KBLß NuF3 |ÿè/(<@S„fü(ÿøgî|ÿè(Nu+_vJ-Ÿg QíŸLß8üNsLßþF3 pUNu<pLé >–€)Ca÷ÀS)'Líþ~HíþzYmœbøüa²Pít`ø<`F3 <`<ä(ÿøVé.f¬(ÿøVégaûðQé"Qé(aRgŒFíBDF3 ÿàaÿbJ(ÿøj |%`|%)%J)g B$Qé<ãJ)"fÿJF3­q mzS('6< g6<áp<p$-˜C'mÎIí~a8Nu-F3¸-§f< aJf < a JgJŸHzÿžNuBB)$ f8J-×gBF32< )VÉÿøf2@Ì+_ÈU­È+_ÒFíBééNu aûÀB-×JPÃF3`J€©éPí×)Fí@Nu"m") g) gF3|ÿþNu-If-Hg-qf"m"aûRFí@|NuHç:aû@B-×J mF3-Ì$mÈ&mv(m˜R-ÖHz/-ÒNÒS-ÖLß\þFí@|Nu,~|)m3p B4p LÔüaNuHç m4pJ-ÖfpN@` Lß8+Wr`Lß8B­rNu4,1SASIDRV ASREL' SASIDRV SA")C„2(F3 Æ‚(022484 4Aú¤+HŒAí¤pVB˜QÈÿü(m"F3 Gì|€pU€°VítFF-tf|NuîìT@¨€š€Þ F3 +Op,*z:*a²(F&j|+*róJ-tf6Cí¦pNÀÆÓÀ0Aúÿ²r‚4g °XF3 føzNð Eéa üóp0ÚQÈÿüra.mppNu,,z.aR FJ)WЀF3 ízÊRgzRÅüNuEë‚2<ý `Eé#kŠ #kŽ2<ý zHça®04F3 v@ÂBfZvA2<ýèÂ@fPJÑfpÿtÿÁPF@ÀZP(WİX`"ÿâZF3 JBk’± QÈÿöRA;ÜH€lèvC(ÿðSèf®vD0(ÿògHr@å1AÿÞ‚ÀHA@€AfàF3 HAvEp(ÿì4âcÿ   !!ÿ  !F3  Fÿ +!ÿ\!ÿ   F!ÿ F3  F!ÿ ÿ ;ÿ !ÿ F3!ÿ!ÿ   F!ÿ   F!&ÿ!! F3ÿ 5 ÿ @ÿ C!ÿ\F3ÿ>ÿ   !ÿ ?ÿ F3  !ÿ G >34ééééH,1TCCIWRIT ASREL' TCCIWRITSA"W%„B2PWRITCL ¨DWRITCS DWRPIF1 \DWRPIF2 ]$¨F3ÿ ÿ  !ÿ!!ÿ PF3!€xHH‚ƒÿIÿ !@&ÿF3  >!ÿ   2 F3ÿÿ " $ÿ $! F3!ÿ   2! !ÿ   2! !F3 < <ÿ /!ÿ !AØA ¬!l F3!m (þ CìJ!I0<NAg @gdEúÿþ`þÊÔAì!DN¹(`HHçF3ÿþaBR.QaVa²LßÿNuAì (ÿÿgÔ`a`"h¼!|N¹RZc3‚¨€(NuLßÿNwB9* B9* Gù* ”#Û* ŽgköAù* Š0<NA'<ÿÿÿÿ`âNu/ Gù* ” gk °¬J3  gJ›`ð&¬ &_Nu=|ÿÿ#Î* lAù*0<#NAgEúÿþ`ýôNuCú¼B€J® gÀN3H3À* v#î* rBiJ®Rf2 y* üJ¨ , g¼`º f²`n#üÿÿÿÿ* P#üÿÿÿÿ* \ y* ˆ"h ©.TTYF3 fÒKé0J)¤fJioX UgØJ©Šg² )œgª") ²¬nvfL°¬nnF3* KöX0.6X"6X&až&vh J)¤g*Jvhfa*`aP"E|¤#|œ#|H3 `P3|ÿÿ* KöX0a "E|¤#|œ#|  )œg"") ²¹* \bfN3J°¹* Pb #À* P#Á* \"Q fÿ ¹ÿÿÿÿ* Pgža `–J©ŽgÜ`ÿ**, KöX0.6XF3"6X&aÞ&vh JvhgjþV|ó`ZAú|B€-'@B«$B«=¼F3h"-’­ 'A!vx!vx !vh!m !A!vh $1|8(Cë!IB6H3¤XQ$+ & UfR,E#îŽ* ŒÎa¼2-AfÂ( Ã(!!|(1|  `LH3T‚JÂ(Ã(!|(1|  `0,E#îŠ* ŒÎaj !|(1|  Â(Ã(,EF3J.¤gB.¤Îp Çg Èfý"|„Bvh`R3 (B"`$ ¹* ŒgÎ"9* Œ&\k #ü&\* ŒAù* `0<JNA"9* `,E-A "9* dÒ¹T3€!(D* Œ-Aœ&\k-Aœ"9* `R-A J¹* \k>"9* `²¹* \b`". ²¹* \bLf"J¹* Pk 9R3¡ * d°¹* Pb< .œ°¹* Pb(". #Á* \".œ#Á* PAù* F0<NAgÎ`ü<ÎAúNuaJH3`òB,až*6h&vh J,füJvhf4 gü,E|¤Î#üô* ŒaF3þÞ`üR6XQa†aNuKöX0 g4J+/f.,E|¤Î`Â|Æ2-AF3fR6XQaJaÎaNu"-+kB- g|è`6  g|êF3`& @g|è` g|á` Ug,EJ.¤g|¤Îa``"9**²¹*&b\") ²¹*&bHf"J¹*k 9*.°¹*b8 )œ°¹*b$") #Á*&M3")œ#Á*Aù*0<NAfüÒAú"_NuaŽ`òEúBü,²*gÕüµü(fì`F3ü¤, *6h&vh J,fü’JvhgüŠKöX0+kB- g|á` I3f|á`JvhlBvh`ýºBvh`aßü , gl`j fb`2#üÿÿÿÿ*¸#üJ3(ÿÿÿÿ*Ä y*ð"h ©.TTY fÒKé0J)¤fJioX UgØJ©Šg² )œgF3ª") ²¬nvfL°¬nn* KöX0.6X"6X&aJ&vh J)¤g*Jvhfaî`aF3"E|¤#|œ#| `P3|ÿÿ* KöX0a¼"E|¤#|œ#|P3€€  )œg"") ²¹*Äbf°¹*¸b #À*¸#Á*Ä"Q fÿ ¹ÿÿÿÿ*¸gNaL`FJ©F3ŽgÜ`ÿ**, KöX0.6X"6X&aŠ&vh JvhgjþV|ó`Aú¨|B€F3-'@B«$B«=¼h"-’­ 'A!vx!vx !vh!m !A!vJ3@h $1|8(Cë!IB6XQ Uf:,E#îŽ*ôÎaŒ2-Af!|* ò1|À L3 `,!|* j1|ˆ `,E#îŠ*ôÎaR!|*²1| ,E|¤Îp"9*Ȳ¹*Äb\") ²¹*ÄbHf"J¹*¸k 9*̰¹*¸b8 )œ°¹*¸b$") #ÁL3Š*Ä")œ#Á*¸Aù*®0<NAfüxAú Ô"_Nua2`òB,a†*6h&vh J,füPH3€Jvhf8  gü@,E|¤Î#üF*ôaþà`èR6XQanBvhaNuKöX0F3  g8J+/f2,E|¤Î`¾|Æ2-AfR6XQa.BvhaÀaæNuF3"-+kB-  g|è`& g|ê` g|è` UF3g Bvhan`8:¼+m +mÓ­S­.6X2-0@AfQ@;@F3Aú ¨B(`ýaßüÿ  Dÿ (!ÿ#!ÿ\!ÿ F3  d!ÿ#!ÿ  d!ÿ ÿ :F3ÿ !ÿ !ÿ!ÿ#!ÿ  d!ÿ#F3!ÿ  d!ÿ#!&ÿ!ÿ"ÿ 4 F3ÿ Aÿ E!ÿ#!ÿ\!ÿ"ÿF3>ÿ   d  !ÿ&!ÿF3 !&8 ! !ÿ#!ÿ F3!ÿ"ÿ _   F3       ÿF3 H!ÿ"!ÿ ?ÿ   !ÿ#!ÿF3!ÿ" f F3ÿ F3ÿ  !ÿ&!ÿ =!ÿ €8GF3G‚''ƒÿHÿ !ÿ7!@&ÿ F3 >ÿ   1 ÿÿ F3 " $ÿ $!ÿ'!ÿ  1F3!ÿ'!ÿ  1!ÿ' ; ;F3ÿ .!ÿ ;!ÿ&ÿ ;!ÿ F3!ÿ"?ÿ :!ÿ' 5!ÿ 2F3  !ÿ!ÿ !ÿ2!ÿ!ÿ  FF3ÿ F!ÿ  2!ÿ2 F3J3.IOS*à*èH3*b8.TTY ÿÿÿÿÿÿÿÿ&34ééé' WINDRV ROÃà > ,1WINDRV ASREL' WINDRV SA' „2(úF3 fœ(022484 4Aú@+H| m"g:|F3 fúgVítNu2<ÿAQÉÿú2<ÿ²(fQÉÿø`VítNuAí”pZB˜QÈÿüF3 NuþT@®€ €ð +Op,*z:*a8(F&j|+*róJ-tF3 f6Cí¢pRÀÆÓÀ0Aúÿ²r‚4g °XføzNð Eéa üóp0ÚQÈÿüra.mpF3 pNu,,z.aØ FJ)WЀízÊRgzRÅüNuüNuEë‚2<å `F3 Eé#kŠ#kŽ2<å zHça¨04v@ÂBfZvAràÂ@fRJéfpÿtÿÁPF@ÀZPF3 (WİX`"ÿâZJBk’± QÈÿöRA;ÜH€lèvC(ÿðSèF3 fºvD0(ÿògHr@å1AÿÞ‚ÀHA@€AfàHAvEp(ÿì4âc éééé' VMES10 CRTINIT ROØØEDITMODEROááFEEDER ROêêINCHAR ROóóKEYBOARDROüüOUTCHS ROPAGEMODEROPOUTCHS ROTERMDRV RO88N1CRTINIT ASREL' VMES10 CRTINIT SAC „Configure the virtual display areañ2PCRTCREG ñ #ATOPLINE ALPERSCRN KSCRNINIT KCRTINIT $ARIGHTCOL AB.LINE AC.LINE AE.LINE "AE.SCRN PSCREEN ñpAPB.LINE  &AS.LINE AL.SCRN (AS.SCRN PCRTCADD ñ !e2APAGEFLAG ,ABPERLINE ALEFTCOL ACPERLINE ABOTLINE AFACS *1.+ø43P OñpñO ñpñp DO3%)AI 1üP 1ü!Bx! 1ü!Bx!1üO! Bx!,H瀀B€1üD!*08 ãˆ!À!B€08! R3Q(•U x!1À!R@ãH!À!B€08 x!S@ãH1À!&B€08!x! 1À!( 8!Àø! Ðx!Ðx!L3 ¨ €ñp!À! 8!Àø!Ðx! Ðx! €ñpT€!À!B€üñ !9ñ #áHüñ !C3$T€ 9ñ #ãH @ÑüñpâH€ø H@x!ãHÀ!È!Ðø!Ðø!TH!È!"LßNu4éééé? ÐS1EDITMODE ASREL' VMES10 EDITMODESAU „VME/10 edit mode emulation for TERMDRV.Â2pFEEDER_A pFEEDER_C pCRTCREG @KB_LOCK pFEEDER pC.LINE pE.LINE pE.SCRN pSCREEN pOUTCHS pS.LINE @DUP_CHAR ZpS.SCRN pCRTCADD @EDITMODE \pBPERLINE F3ÝÿÿPÞÿÿHçÀÀ°zÿøg@-…g²gjBA; AúJNðxxxxxxxxttF3t~xxxxxxxxxxxxxxxxxxLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLF3LLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLL$xxxxxxxxxxxxF3xxxxxxxxxxxxxxxxxxxxttxxxxxxxF3xxxxnnxxxxxttxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxpü(9(R3P áHü(9(ЀNu :BþX°ºBþTgŽa΀(ºBþD @pÀP`LpÂa¦aBþ2`aš[3 IJ`p aBþ pÕaBþ` a–€(°ºBþ gpaBþp aBýþpaBýøPù(`,Pù(aBýæaW3(”Dÿd€(°ºBýØfpÁaBýÐ`Pù(aBýÄLßNua* :Bý¸°ºBý´f üÙ)`üß)p aP3€€$Býšp aBý”`~Hç€ÀPù)CúýˆPÙÀaþþ€úBýz ÀH@âH ÀJ9(g.Qù(úý\P3¨ ) zBýN0:BýJrÂXÁQÈÿø0:Bý? ÐÖÕÔÑ×0123456789ABCDEF3,.4éééôR1OUTCHS ASREL' VMES10 OUTCHS SA@ „Output a character to the display RAM.ü2pFEEDER_A pFEEDER_C pTOPLINE KPROMODE $pREL_PAGE pLPERSCRN pSCRNINIT KRABSOLUT xpCRTINIT KEDIT_FLA "pPOUTCHS pRIGHTCOL pKB_LOCK KRESET_SC |pFEEDER pB.LINE pC.LINE pE.LINE pE.SCRN KOUTCHS 0pPB.LINE ™2pS.LINE pL.SCRN pDUP_CHAR pS.SCRN pPAGEFLAG pBPERLINE pLEFTCOL pCPERLINE pREL_ADDR pBOTLINE pREL_FLAG KCLEAR_SC >pFACS + F3€UA Hçÿða ¢Cø ,Eø !,8 *8 &(8 ˜ˆâLSDBƒ68 "M3*’@ tJ8 %fA  Jy) $fA –J9) g4J9( gQù( ÀÂ` f Pù( ` 6Qù) F3 &zÿdNÓ0Ð@0;Nû        .RÆl         F3    x     L L L L L L L L L L L L L L L L L L L L L L LF3 L L L L L L L L L L L L L L L L L L L L L L L L L L L L L L L LF3 L L L L L L L L L L L L L L L L L L L L L L L L L L L L L L L LF3 L L L L L L L L               „¨       F3                                F3         ²Æì&Œ¸Ìì&<ڰ¾ÞîøF3 P .ÄÞ   lŒ¬Ììü , J j ˆ ¦      Ô     F3H Ü        Pÿ€ `  Àñ 1Nu±ø !g±ø $f x Uˆ`ÈG3 @ &HTˆ`0Jk±ø f x !·Èfì`ÒUˆ`¤ €ñp€ø!&°x *f`B`‚QH3 % D x !`~aÔÀ`ý4aÈ ÿf 3üÿÿ(#`3Â(#Pù) "`vQù) "`l x $F3P¤ !È !!È ݪ`0‘Å›’›ª±ø $l x !È !’!È RDãLÄ` ÑÅÛ’Ûª±øG3•$ m x $!È !!È ݪRDãLš„ÐÅ`àTˆ±ø f x !`Ða&À) arF3ˆ  ²x 'eÚ²x bÒp:ûü °x eÀ°x *b¸ÀÅ€ñpÒAÒ€ Ar28I3‰P 'ÒAÒ€!Á !Ò†!Á `ja”‚ÅHAïIÝ ÞAúûº 3ü(#È(aB û˜`f1üÿÿO3¢¢ˆ" %Qù) $0<À`B û€Bx %Qù) $`þÚPù) $Bx %0<À`B û`a` ´x *b"1 aI3€ˆ B ûH`þ¬aD ´x d´x eþ1 *`Úa& ´x bè1 '`ÄaF3"  ´x (dÒ´x 'eÊ1 `¦àHJ@fB€ €ñpâH€ø (Nu>âOžD`BCBGJPkG3© šPÿ€X QÌÿðÐø 88 ±ø o x $QËÿÚ8QÏÿÔ`naœ Ýfö3Ñ) *aŒH3@@" À) a‚r ²x (d@p:újý °x b.#È) ÀÅ€ñpÒAÒ€ Ar28I3‰D! 'ÒAÒ€!Á !Ò†!Á Pù) Gú #Ë) `Ê Þf8 :ú"€ñp€ø!&B@H@’€08 'I3€‚ Ð@Ò€!Á !Ò¸ !Á  zùò1úú ,`ŒPù)  àe ëdJ9) ,f|ÿPù) ,`J3"‚D úbJ9) ,gTˆQù) ,08 ÀÅ€ñp„x ,0°ˆb```4aŠÀ) a€À) avH3D¨B À) alÀ) p |“ÉN@``"Pù(+#È()#È($H#ü(üÝ3ü(0:F3@@ ù&@ ad"H0:ù@ aX"Ò…²ˆf üùRy(Ò…J(f üùRy( (fTˆ`I3ˆ (ÀTˆRy(³Èf¾¼ÞRy(aB ø¼`Š/B†<@ÿ°x (nàŽ¼x nÌÅãHF3 ܆ñp F,Nup rÂPPÿ€X0QÌÿ@ ò`J0(@XPÿ€QÌÿðP `0QùF3ˆ  (`&Pù(`aý\x –@a` BC`ô x ±ø c"H“Å/08 1!QÈÿü _F3 ‘Å`ä08  € <DQÈÿò`¦ x !"HÓÅ08 ³ø d/0ÙQÈÿü _ÑÅ`äüDF3A € QÈÿò x !`nHçÿð68 " x $88 a`û xÿÿ %fJXkP€XDQÌH3($D ÿê88 Ðø QËÿÞNu&H±ø !f x 0 Jk·Èfì`B¹) &` T¹) & :÷‚°¸ &e BG3 ‚€ gaP`ô`aF68 SC  f"J¹) &fAùñp:8 Êø (XÿQÍÿú`æ zF3 ÷6Ñüñp  gž gèÑÅQËÿö`ЍÑÅQËÿö`ÿ| (fÑ`F3 ¼d¸ ,|`’¸ ,| (f‘`¼,`r (fÑ`F3 ¼L¸ ,|`R¸ ,| (f‘`¼D`2ø‚`F3 "ø‚` (fÑ`¼T¸ ,|`˜¸ ,| (F3 @ f‘`¼,`x (f‘`¼¸ ,|`´¸ ,| (F3A fÑ`¼D`: (fÑ`¼Ä¸ ,|`¸ ,| (f‘J3Q@ `¼D`XHçÿðEø !,8 `3ü) .aB õlAùñp4f@€î^` ž` ¢o+O\-Aúÿôr°WÉÿüg|ùÀ|L3Pÿü¦NuB­¦Qíçp÷aBÿnaBÿjf í¹`|ÿü¦|ÑÀNu+O\+jh,*F3B…:*"mPaD&F-Àg+K``><J-ëg p rAúÿf` Fg°+K`+mPdF3pr Aúÿ2¼XWÈÿüfÒpþNðþr‚(m`AAíȼ |p1Aí¹FíB`F3t,+z:"mdaÂ"FBm||3|ƒÁ0ÀifÊ0<ˆÀif¾0)ÁiF@Àhi0)// Aè CéF3 Eúý¤BgâHe SAØQÉÿü`ÑÁÓÁ`æ"_ _~A0<Ài @gh~@)( bF3)fJ©gN` rðÂé²f@) g )(c)(g )á˜g jBF3`öBm||PìPNu‡rˆ`ýøa°HípÄaFíB+g;|4pF3¦`;|8p¦`ZPíâPíãQíèB­¬Qíä+f -qWíäNua`HípÐFíBF3+gQíèPíã+g;|p¦`;|p¦"mdR)'í¸"m"Pí¿HzF3/`,Qí¿Fü p.m\Nu;kª+gAëpN@`r„`ý(+HdB­´,+ F3*+š†RE"mdaNuagr„`ý(Ú†S…NuHçýü?<fJ…g i6pN@BWNqF3Nq0Lß?¿NuaŠHípÐ,+*+"mda°HípÄaþäFíB+g|¦`|I3¦+g|4§`|8§|p¨`ÿí ¸FíB`ÿ/aBûJjJ-ëg F3 m¢N¨`¤í¸`g–J-ëgÀ-¾ m¢N`‚À-¾fJ-ægJ-gF3š-pgd`R°-‚f í¸`Ô-fJ-æfp²f J-æff`8°-€fPíF3æí¸`¦°-ƒfJ-ãfF-è` mÜôfpê`82-ò€Smòf;|ÜòI3Rmô mÖôfaBúrí¸`Xí¸`NJmüf"@þ;mòü mÜôfRmüF3 mÜücBmü`  -´fJ-âg -Ì­Ä` -Ø­ÐNuJíçfxFí@­F3¸f­¸fh­¸fð­¸fD­¸f‚­¸f¤­¸fI3®­¹fBù¶­¹f6­¹f6FíBJm¸fŽQíç"|NuJmîgäJmôF3gÞ B 09Am úcPíê`Ð2-ð²müf8 m`"-Ì’­Ä!AmþAíȼ |pB(I3mþ a8aÒ`Ž5Smðf;|ÜðSmôJ-åg mÈôbaBù 0-îNûF3`ÿ^`Nq`† m̱íÈc aDgpa®`6Á+HÌJ-ägaš -Ì-pF3g°­Èc­Ä+@´`´`a`ÿ -†á˜g²gB`ô-¼À°-½f -Ì­ÄF3+@´í¸BmîNu mÌaÆf ±íÈb`JJgþÎ c pa`þ¾g F3ff±íÄc\ +HÌS­¬J-ägL-qg&Jíéfpa”²-„F3f -Šar+mÄØB­¬+|8p¦`¨²-…f0+mÄÌJ-äg-qgp\aNF3 -Ša4`ýì+| 8p¦`p±íÈcpa,`DÁ+HÌR­¬J-äg bp^aF3 R­¬r@Òaþ-pg±íÈc ‘íÄ+H´``ýŒJ-äg J-égp>aÐ -F3Ša¶Bmîí¸`ýN0-ìNû`xNq`F`v`º`Ø` J-èg0B-º;|I3ö;|øBmú -ÔR€+@ØJ-ÁgB-Â`B-í`ªaBö”í¸ g fF3mºg ajíÁ`üÌJ-êg Qíêí¸`Jmîfa`ü®H瀀 -¦c†F3á˜+@¦ /bB­°@íí¸`h ?b&Qíé0@ï-ªf-qgaJF3í¸`ASQSENTUEQU„15†QEVENTROUTINECALLEDBYNON-INTERRUPTROUTINE**ˆASQEVENTCODES* EVNTOWN‚EQU„1EVNTIOƒEQU„2‡I/OCOMPLETIONEVNTMSG‚EQU„3‰MESSAGEEVNTTIMEEQU„4‰TIMEREVENTEVNTTASKEQU„5‰SUB-TASKEVENTEVNTATTNEQU„6C ‰ATTENTIONEVENTééc'ŠPAGE1************************************************* *&.BAB.EQ¦*1*************************************************O********************************************************************************Í*D*‰EquatesrelatingtoBAB=BackgroundActivationBlockforRMS68K„**Í*O******************************************************************************* *J*‚InterruptserviceroutinesinsupervisormodemayschedulearoutineforL*‚executioninbackgroundbypreparingaBABwhichpointstotheroutineandK*‚isnotcurrentlyinuse,andcallingtheexec'sBKG_SCHEDULEroutinewith*‚theBABaddressinA0.*I*‚TheBKG_SCHEDULEroutinesetstheINUSEflagintheBABandaddsittoI*‚theendofaqueueofBAB'swhichwillbedispatchedwhentheinterruptF*‚levelreturnstozero.‚YoumayNOTaltertheBABLNKorBABUSEfieldsJ*‚whiletheBABisinuse.‚AnattempttoscheduleusingaBABwhoseINUSE$*‚flagisalreadysethasnoeffect.*I*‚Whentheroutineisdispatched,A1willpointtotheBAB,andallotherH*‚registersareavailable;onlythestackpointermustbepreserved.‚YouJ*‚willbeatinterruptlevel0andyoumustexitatinterruptlevel0with*‚withanRTS.* ŠOFFSET0 0BABLNK„DS.Lƒ1’ForwardlinktonextBABinqueue.8BABPTR„DS.Lƒ1’Pointertocodetoexecutedinbackground.0BABUSE„DS.Bƒ1’Flag:‚true(nonzero)meansINUSE."ŠDS.Bƒ3’Reserved(shouldbezero). BABBLN„EQU„*’LengthofaBAB.éél#‰PAGE1************************************************* *&.CCB.EQ¦*1*************************************************ééD éééééu~7†-* CHANNEL CONTROL BLOCK (CCB)D*ƒCONTAINSCHANNELDESCRIPTIONANDDATAAREASFORDEVICEINDEPENDENT*ƒCMRPORTION.**H* CHANNEL MANAGEMENT DATA AREA ****************************************** ‰OFFSET…0*ŠDS.B„4Š'!CCB'DUMPEYECATCHER-CCBALL„DS.B„4ŒALLLINKFORCCBCHAININORDER*¨OFALLOCATION/CCBPOLL‚DS.B„4†LINKTONEXTCCBFORTHISVECTOR5CCBTLNK‚DS.B„4†LINKTONEXTCCBATTACHEDTOSAMETASKACCBSUBƒDS.B„4†LINKTOCCBOFNEXTSUBORDINATECHANNEL(MEANINGFUL(*§ONLYIFCCBSTROPTIONCCBFGSUPISSET)*J* THE FOLLOWING 24 BYTES MUST BE CONTIGUOUS IN THE CCB (LOAD WITH MOVEM.L)(CCBMNEMƒDS.B„4ŒMNEMONICFORTHISCHANNELCCBTYPEƒDS.B„1ŒCHANNELTYPE&CCBCMCTƒDS.B„1ŒRESERVED(USEDBYCHPI)1CCBUSERƒDS.B„4ŒI/OHANDLERSERVICEVECTORADDRESS,CCBRTNIƒDS.B„4ŒINTERRUPTENTRYPOINTADDRESS-CCBCHB„DS.B„4ŒBASEOFMEMORYMAPPEDI/OSPACE>CCBMME„DS.B„2Œ0-RELNUMBEROFCONSECBYTESINMEMMAPPEDSPACE&CCBVECTƒDS.B„1ŒINTERRUPTVECTORNUMBER:CCBPPRIODS.B„1‰POLLINGPRIORITY(HARDWAREINTERRUPTPRIO)1CCBSPRIODS.B„1‰SOFTWAREPRIO(POSITIONINCHAIN).CCBPECTƒDS.B„1ŒNUMBEROFPOLLINGTABLEENTRIES*>CCBRQST‚DS.B„8†TASKNAMEANDSESSIONCODETHATORIGINALLYMADE**CCBRQSTA‚DS.B„4ŒADDRESSOFREQUESTOR'STCB*!CCBKEYƒDS.Bƒ1ˆREQUESTOR'SI/OKEY$CCBRTN„DS.B„1ŒRETURNOPTION(BIT0):*§0=PUTRETURNSTATUSIN*ªBUFFER,ISSUEWAKEUP*§1=PUTRETURNSTATUSON*ªASQ*#CCBASQLƒDS.B„1ŒMAXASQENTRYLENGTHŠDS.B„1ŒRESERVED7CCBSVVCƒDS.B„4ŒSERVICEVECTORFORRETURNFROMINTERRUPT)CCBSR…DS.B„2ŒUNMASKSTATUSREGISTERVALUE(CCBISR„DS.B„2ŒMASKSTATUSREGISTERVALUECCBVADRƒDS.B„4ŒVECTORADDRESS!CCBSTR„DS.B„2ŒCCBSTATUSREGISTER1CCBJSR„DS.B„6ŒHOLDSJSRINSTRUCTIONFORVECTORING-CCBIOH„EQU…*ŒI/OHANDLERPARAMETERBLOCKINFO&CCBTASKA‚DS.B„4ŒADDRESSOFATTACHETCB4CCBTASKƒDS.B„8ŒATTACHEETASKNAMEANDSESSIONNUMBER*HCCBRESV1DS.L†1ƒFUTUREUSEBUFFERBETWEENCCBINDEPENDENT/DEPENDENTDATAHCCBRESV2DS.L†1ƒFUTUREUSEBUFFERBETWEENCCBINDEPENDENT/DEPENDENTDATAHCCBRESV3DS.L†1ƒFUTUREUSEBUFFERBETWEENCCBINDEPENDENT/DEPENDENTDATAHCCBRESV4DS.L†1ƒFUTUREUSEBUFFERBETWEENCCBINDEPENDENT/DEPENDENTDATAHCCBRESV5DS.L†1ƒFUTUREUSEBUFFERBETWEENCCBINDEPENDENT/DEPENDENTDATA%CCBDDP„EQU…*ŒDEVICEDEPENDENTPORTION***-* POLLING TABLE AND POLLING TABLE ENTRY COUNT**žSTARTOFPOLLINGTABLEINCCB5CCBMCNTƒEQU…4ŒMAXIMUMNUMBEROFPOLLINGTABLEENTRIES6CCBPBASE‚DS.B„CCBMCNT*8„RESERVEREMAININGSPACEINCCB**"* POLLING TABLE RESIDES WITHIND  CCB9*ƒCONTAINS8-BYTEENTRIESTOALLOWHANDLINGMORETHANONE'*ƒINTERRUPTTYPEFROMASINGLECHANNEL.* ŠOFFSET‚0"CCBPOFFƒDS.B„2ŒPOLLINGBYTEOFFSETCCBMASKƒDS.B„1ŒPOLLINGMASK)CCBPTSTƒDS.B„1ŒPOLLING=OR<>TESTVALUE CCBRESOƒDS.B„2ŒRESETBYTEOFFSETCCBRESVƒDS.B„1ŒRESETVALUECCBRESPƒDS.B„1ŒRESETOPTIONS  ** CCBSTR (BIT FLAGS)*BIT”MEANINGIFSET-*---”---------------------------------------#CCBFGATHEQU…15ŠCHANNELISATTACHED"CCBFGDIREQU…8‹EXCLUSIVEVECTORING?CCBFGSUP‚EQU„2‹THISISASUPERVISORCHANNEL;THEADDRESSOFTHE(*§CCBOFTHEFIRSTCHANNELINTHESUBOR-*§DINATECHAINISINCCBSUB."CCBFGOFFEQU…1‹CHANNELISOFF-LINE;CCBFGSYSEQU…0‹ONLYSYSTEMTASKSMAYATTACHTOTHISCHANNEL  ** CCBRESP -- RESET OPTIONS*CCBRSWƒEQU…0‹WRITERESETBYTECCBRSRƒEQU…1‹READRESETBYTEéé1**************************************************&.CONNECT.EQ¢*1*************************************************éééééé鎗0ŸM§;¯O*v*****************************************************************************O*******************************************************************************O**********************************************************************************É***E G***…FILENAME:CONNECT.EQ--EQUATESFORCONNECT'SCOMMONDATAAREA.…******É***G***…ENVIRONMENT:Thisisincludedintheassemblyofthetwohalves…***?***‡oftheVERSAdosutilityCONNECT:‚CONNECT1andCONNECT2.Š******É***,***…EXTERNALDATASTRUCTURESREFERENCED: ******É***)***…EXTERNALENTRYPOINTSREFERENCED:£******É***O*******************************************************************************O*******************************************************************************O*^***************************************************************************** *,*‚Revisionhistory(addnewchangestotop).*…Date†Author‰ChangesI*…--------‚-------------‚------------------------------------------------G*†7/22/83‚SteveFranckƒChangednamefromTMDATA.EQ,andaddedstufffor*žsupportofoptionL.'*†5/31/83‚SteveFranckƒInitialwriting.*ŠPAGEO*********************************************************************************‰THECHARACTERQUEUES*O******************************************************************************* *&*‚Equatesdescribingcharacterqueues.J*‚Thewaythequeuesareused,theyareemptywhenGET=PUT,andtheyareL*‚fullifaddinganothercharwouldmakeGET=PUT.‚Thatis,thereisalwaysK*‚a'deadspace'of1chartokeepthePUTptrfromcatchinguptoGET.‚TheK*‚pointersintothequeuesadvancebydecrementing:‚eachpointermovesfrom0*‚Q_MAXdownto0andthenstartsoveratQ_MAX.*5Q_MAX…EQU„2047Highestindexvalueinthequeue;size"*§ofqueuewillbethisvalue+1. ŠOFFSET0.GET‡DS…1’Indexofnextchartogetfromqueue./PUT‡DS…1’Indexwherenextchargoesintoqueue.=QUEUE…DS.BƒQ_MAX+1ŒThedataarea:indexrangesfrom0..Q_MAX. #QUEUE_SIZEEQUƒ*’Sizeofthequeue.ŠPAGEO********************************************************************************(*‰OFFSETFORDATASHAREDBYTMANDTMSUP*O******************************************************************************* ŠOFFSET0 *%*‚Characterqueuesforthetwoports.*ŠDS…0APORT1_QUEUEDS.BQUEUE_SIZE‰Queueforchar'scominginonport1.APORT2_QUEUEDS.BQUEUE_SIZE‰Queueforchar'scominginonport2.  *9*‚Areatosavedatapassedinregistersattaskcreation.F*‚Thesevaluesareinatask'sregistersonlyifSCTcreatedthetask.*ŠDS…0SCT_REGISTERS: *-------- D0 - D3"SCT_MTSK‚DS.Lƒ1’Monitortaskname."SCT_MSES‚DS.Lƒ1’Monitorsession#.#SCT_VOLƒDS.Lƒ1’Defaultvolumename.ŠDS.Wƒ1’Unused.SCT_USNƒDS.Wƒ1’Defaultuser#. *-------- D4 - D7SCT_CLGƒDS.Lƒ1’Defaultcatalog. ŠDS.Lƒ1’*$SCT_COML‚DS.Lƒ1’Commandlinelength.(SCT_LUMK‚DS.Lƒ1’Logicalunitusagemask. *-------- A0 - A3SCT_TASK‚DS.Lƒ1’Taskname.$SCT_TERM‚DS.Lƒ1’Associatedterminal.ŠDS.Wƒ1’Unused.SCT_LUSN‚DS.Wƒ1’Logonuser#.SCT_SESS‚DS.Lƒ1’Session. *-------- A4 - A5SCT_DATE‚DS.Lƒ1’Systemdate.SCT_TIME‚DS.Lƒ1’Systemtime. **‚Flags.*5READY…DS.Bƒ1’Flagcheckedbythesupervisormodecode(*§toseewhetherornotwearereadyfor%*§ittodoitsstuff.‚Initiallyitis'*§false(we'renotready),butgetsset%*§trueafterwehavelinkedourselves*§tobothdrivers. ;EXORTERM‚DS.Bƒ1’Thisflagissetiftheterminalfromwhich(*§wewereinvokedisanEXORterm155,or%*§emulatesone.‚Actually,ifoptionL*§isspecified,thisgetsset. BREAK2„EQU„BREAKS+1‹(Trueifabreakisbeingsenttoport2.)  ***************** ŠDS…0;DATA_SIZEEQU„*’Amountofspacerequiredforallthisdata.ééééééé*D* Crash macro will generate a conditional long branch to any addressD*ƒwithinrange.‚ItisnormallyusedtogenerateaconditionalbranchC*ƒtoanoddaddress.(TheassemblerwillnotallowsuchabranchtoC*ƒbecodeddirectly).‚ThisisagoodwayF toconditionallycrashtheB*ƒsystem(insupervisormode)orforceataskabort(inusermode)** Example of usage:**‰CRASH.NE*+1*E* The above would generate a DC.W $66FF - the equivalent of BNE.S *+1*T‰EQU„0F‰EQU„1HIˆEQU„2LSˆEQU„3CCˆEQU„4 HSˆEQU„CCCSˆEQU„5 LOˆEQU„CSNEˆEQU„6EQˆEQU„7VCˆEQU„8VSˆEQU„9 PLˆEQU„$A MIˆEQU„$B GEˆEQU„$C LTˆEQU„$D GTˆEQU„$E LEˆEQU„$F CRASH…MACROŠNOLIST \@A‡SET„\0\@B‡SET„\1-*-2ŠLIST*ŠDC.Lƒ(((6<<4)!(\@A&$0F))<<24)!(\@B&$FFFF)ŠENDM*8* ILLEGAL macro generates a two-byte illegal instruction* ILLEGALƒMACRO ŠDC.Wƒ$4AFCŠENDMéééé·,*2*‰EQUATESSPECIFICALLYFORMVM605DRIVER(D605.SA)*DACOPENƒEQU„1’OPENCOMMANDCODEDACCLS„EQU„2’CLOSECOMMANDCODE#DACCNVRT‚EQU„3’CONVERTCOMMANDCODE7ZEROL…EQU„0’Lowbytenecessarytosetconverterto0v.7ZEROH…EQU„08‘HI‚bytenecessarytosetconverterto0v.;DAC1_OFFSETEQU‚0’OffsetstochannelsfromtheI/Oaddress.DAC2_OFFSETEQU‚4’*DAC3_OFFSETEQU‚8’*DAC4_OFFSETEQU‚$C‘*8SAVEREGS„EQU‚13‘Numberofregstosaveforperiodicact.* *‰DACCOMMANDPARAMETERSOFFSETS* ŠOFFSET0 CMDSTA„DS.Wƒ1’DCOcommandstatusCMDCOD„DS.Wƒ1’DCOcommandcodeCMDCHN„DS.Wƒ1’#ofchannels CMDNXT„EQU„**7*ˆDEFINETHEOPENDEPENDANTPARTOFTHEPARAMETERBLOCK*ŠOFFSETCMDNXTNUMCHANƒDS.Wƒ1’channelnumber4OPNTRY„EQU„*-CMDNXT‹#ofbytesforeachopenchannel*9*ˆDEFINETHECONVERTDEPENDANTPARTOFTHEPARMATERBLOCK*‰OFFSET„CMDNXT'CHANL„DS.W†1Channelnumbertoconvert.4NUMCONV‚DS.W†1Numberofconversionforthischannel4DATADDR‚DS.L†1Addressofdelayinformationanddata*£tobeconverted.CNVRTLNGEQU‡*-OPNTRY+CHNLCONF‚DS.Wƒ1’channelwakeupinformation8CNVRTBLKEQU‡*-OPNTRY‰Lengthofconvertparameterblock.**‰DACTBLOFFSETS8*‰headerinformationsetupduringsysteminitialization9*‰allDACentriessetto$FFduringsysteminitialization* ŠOFFSET0DACEYE„DS.Lƒ1’!DACeyecatcher!DACLNG„DS.Wƒ1’#ofbytesintable4DACOFSTƒDS.Wƒ1’offsettonextavailableDAC-IDentryB*DACIO is an offset which points to a location within DACTBL which<*‡containsavaluewhichistheoffsetrelativetoDCACBLto6*‡theIOimagemapswithinDACTBL.‚DACTBLitselfisan4*‡absoluteaddresssetinSYSGEN.‚Itisaccessedby:6*‡MOVE.L‚DACTBL,An‚(movesaddressofDACTBLtoaddress?*‡registern).‚MOVE‚DACIO(An),Dn‚(DACIOistheoffsettodata).'DACIO„DS.Wƒ1’offsettostartofIOmaps"DACNAL„DS.Bƒ1’#ofCCB'sallocated*DACNMAXƒDS.Bƒ1’max#ofCCB'scanallocate"DACNTRYƒEQU„*’tableentriesfollowŠOFFSETDACNTRYDACID…DS.Lƒ1’DACmoduleIDF À;É;Ñ76*‚---ƒ---ƒStartofchannelconfigurationtable‚---ƒ---8*ˆEachchannelconfigurationentryconsistsof2fields;/*ˆ(1)UserID(theuser'sTCBaddress)4bytes.'*ˆThereisspacereservedfor4entries*)ŠDS.Lƒ1’usertaskTCBaddress-channel0&ŠDS.Wƒ1’OffsettochannelinIOspace.0ŠDS.Bƒ3*6restofchannels(6bytesperchannel)3DACIDLNG‚EQU„*-DACNTRYŠlengthof1DACmoduleentry* ŠOFFSET0*/*‚Offsetstofieldswithinconfigurationtable:*#DACTCB„DS.Lƒ1’usertaskTCBaddress+IOADR…DS.Wƒ1’OffsettochannelinIOspace.'CHANLNGƒEQU„*’lengthof1channelentry**‰IOaddressforthisDAC.**F*ƒBeginIOimagemap------------------------------------------------- ŠOFFSET0&IODDR„DS.Lƒ1’memorymappedI/Oaddress$IOLNG„EQU„*’lengthof1IOmapentryF*‚EndIOimagemap--------------------------------------------------- PAGE**ˆDACDRIVERERRORCODES*DACDVB„EQU„$F0devicebadDACBSY„EQU„$F1devicebusy,DACICU„EQU„$F2invalidcommandforthisuser1DACCNM„EQU„$F3invalidchannel#forthiscommand$DACINVDƒEQU„$F4invalidcommandcode-DACMEM„EQU„$F5nomemoryspaceleftinDACTBL+DACICNSƒEQU„$F6illegalchannel#specified.DACINC„EQU„$F7invalid#ofchannelsspecified/DACCNFGƒEQU„$F8invalidconfigurationspecified/DACICC„EQU„$F9invalidcommandforthischannel:DACMAX„EQU„$FAexceededSYSGENspecifiednumberofdevicesDACIINTƒEQU„$FB(notused)#DACNTBLƒEQU„$FCnoDACtableexists'DACNID„EQU„$FDDACmodulenotallocated%DACPND„EQU„$FEchannelalreadyopened PAGE*!*†---†---…STANDARDƒMACROS…---…---*H*Allocate macro allocates local storage as long words on the stack,(A7).,*Up to 6 variables may be allocated by name.C*These variables may then be referred to by name offset to stack orH*they may be stored to (by macro STORE) and loaded from (by macro LOAD).*3*Prior to exit, the variables must be de-allocated.*ALLOCATE MACRO*B*Allocate reserves storage on the stack for local named variables,8*‚whicharereferredtoasanoffsetfromstackpointer.\1 SET 2‰IFGT(NARG-1)\2 SET 6‰ENDC‰IFGT(NARG-2) \3 SET 10‰ENDC‰IFGT(NARG-3) \4 SET 14‰ENDC‰IFGT(NARG-4) \5 SET 18‰ENDC‰IFGT(NARG-5) \6 SET 22‰ENDC*ƒSUB.Lƒ#(NARG*4)+4,A7NUM_RESERVED SET (NARG*4)+4*ƒENDM*I*LOAD macro allows loading a register from local storage named variables. *Thesyntaxis:‚LOADRn,VARNAME.9*The storage is DYNAMICALLY ALLOCATED by macro 'ALLOCATE'* LOAD‚MACRO‰MOVE.L„\2(A7),\1‰ENDM*H*STORE macro allows storing a register to local storage named variables.!*Thesyntaxis:‚STORERn,VARNAME.?*The local storage is DYNAMICALLY ALLOCATED by macro 'ALLOCATE'* STORE MACRO‰MOVE.L„\1,\2(A7)‰ENDM**PUSHPOINTŠMACRO‰MOVEM.LƒA0-A6,-(A7)‰ENDM*POP_POINTŠMACRO‰MOVEM.Lƒ(A7)+,A0-A6‰ENDM* PUSHALLŒMACRO‰MOVEM.LƒA0-A6/D0-D7,-(A7)‰ENDM* POPALLƒMACRO‰MOVEM.Lƒ(A7)+,A0-A6/D0-D7‰ENDMéééG éŠPAGE*ˆINCLUDE‚D610CCB.EQ ‰NOFORMAT L*****************************************************************************8*‰InputModule(VME610/620)DriverCCBDeviceDependent*šDataStructures*H*ƒThefollowingequatesdefinethecontrollingdatastructuresstoredinF* each input module CCB allocated at system initialization time. TheseJ* structures reside in the device dependent portion of the CCB. The device8* independent CCB data structures are defined in CCB.EQ.*N******************************************************************************ŠPAGE*-*‚InterruptInputChannelControlTableEntry*L*ƒTheseequatesdefinethechannelcontrolinformationstoredintheCCBforN* each interrupt channel (0-3) of an input module. If the attached TCB addressJ* field is zero, the channel is not assigned by any task so all other data$* fields are treated as Don't Cares. ŠOFFSET0 6ICCBAB„DS.BƒBABBLNThisBackgroundActivationBlockis)*£usedbytheDebounceTimeoutHandlerto-*£scheduleabackgroundprocessforexecution**£thatwillhandleinterruptnotificiation%*£andreenablingofinterruptsonthe-*£channel.ThisBABisplacedatthefrontof)*£eachinterruptchannelcontrolentryso**£that,whenthebackgroundprocessbegins(*£executing,A1pointstotheapropriate)*£InterruptChannelControlentryforthe*£channelthattimed-out.ŠSPC„25ICCTCB„DS.Lƒ1”Thisfieldcontainszeroifthechannel)*£isnotattachedtoanytaskorcontains+*£theTCBaddressoftheowningtaskifthe*£channelisallocated.ŠSPC„22ICCB†DS.Lƒ1”ThisfieldcontainstheCCBaddressin'*£whichtheinputchannelcontrolentry'*£resides.Thisinformationissupplied,*£heretoallowtheDebounceTimeoutHandler**£toeasilydeterminetheCCBaddressfrom)*£interruptchannelcontrolentryaddress)*£withoutperformingoffsetcalculations.ŠSPC„23ICCBKGST‚DS.Lƒ1”Thisfieldcontainstheentrypoint-*£addressoftheRMS68KBackgroundSchedulingÙ5â:ê6ò2ú &*£routine.Thisaddressisusedbythe**£interruptlevelDebounceTimeoutHandler**£toscheduleactivationoftheBackground*£DebounceTimeoutHandler.ŠSPC„23ICCNUM„DS.Bƒ1”Thisfieldcontainstheinputchannel**£number(0-3)associatedwiththechannel)*£controlentry.Thisinformationisalso**£suppliedforthebenefitoftheDebounce*£TimeoutHandler.ŠPAGE6ICCENABL‚DS.Bƒ1”Thisflagisset($FF)wheninterrupts-*£areenabledonthechannelandisclear(0)%*£wheninterruptsaredisabledonthe(*£channel.Thisflagisnotchangedwhen+*£interruptsonthechannelaredisabledby,*£thedriverforsoftwaredebouncehandling.ŠSPC„25ICCEDGEƒDS.Bƒ1”Thisflagisset($FF)wheninterrupts,*£aretooccuronadeenergizedtoenergized(*£inputtransitionandisclear(0)when+*£interruptsaretooccuronaenergizedto*£todeenergizedtransition.ŠSPC„25ICCDBINT‚DS.Wƒ1”Thisfieldcontainsthelengthofthe+*£DebounceIntervalinmilliseconds.Azero**£inthisfieldindicatesthatnosoftware-*£debounceistobeperformedonthechannel.ŠSPC„29ICCQEVNT‚DS.Bƒ1”Thisflagisset($FF)ifthetaskowning-*£thechannelistobenotifiedofinterrupts**£viaaneventinitsASQandisclear(0)+*£ifaWakeupistobeissuedforthetask.ŠSPC„22ICCDBACT‚DS.Bƒ1”ThisflagissetbytheBackground'*£InterruptHandleratthestartofthe+*£debouncetimeoutperiodandisclearedby**£theBackgroundDebounceTimeoutHandler.-*£ThisflagisusedbytheCloseChannelsand-G *£DisableInterruptsCommandstodetermineif+*£thereisapendingdebouceoperationona *£channelthatmustbecanceled.ŠSPC„24ICCDBSTƒDS.Lƒ1”Thisfieldcontainsthestartingtime,*£(inmSpastmidnight)ofthelastsoftware+*£debounceintervalorthatoftheinterval*£inprogress.ŠSPC„23ICCENTLN‚EQU„*”Thisequatedefinesthelengthofan'*£InterruptInputChannelControlTable*£entry.ŠPAGE*%*‚CCBDeviceDependentDataStrucures* ŠOFFSETCCBDDP 6CCBBAB„DS.BƒBABBLNThisBackgroundActivationBlockis)*£usedbytheForegrondInterruptHandler&*£toScheduleexecutionoftheChannel**£ShutdownHandlerinbackground.Onentry,*£tothebackgroundprocess,theCCBaddress!*£maybeobtainedas-CCBDDP(A1).ŠSPC„26CCBQCTAD‚DS.Lƒ1”Thisfieldcontainstheaddressofthe**£InterruptQueueControlTablewithinthe*£GlobalVariableArea.ŠSPC„2**ƒMiscellaneousDataFields*ŠSPC„24CCBCMDST‚DS.Lƒ1”Thisfieldcontainsthevalueofthe,*£thesupervisorstackpointer(A7)onentry,*£tothedriverscommandprocessingroutine.-*£Thisvalueissavedsothattheentrystate(*£ofthestackcanbeeasilyrestoredif(*£anerrorexitmustbeperformedfroma*£nestedsubroutine.ŠSPC„24CCBINTCR‚DS.Bƒ1”Thisfieldcontainstheimageofthe%*£lastvaluewrittentotheInterrupt**£Mask/SenseRegisteroftheinputmodule.(*£Anychangestobemadetothehardware+*£registerarefirstmadetothisimagevia+*£aRead-Modify-Writeclassinstructionand)*£theimageisthenmovedtothehardware,*£registerviaamemorytomemorymove.This,*£allowsthebackgroundinterrupthandlerto&*£updatethehardwareregisterwithout)*£maskinginterrupts.UseofRead-Onlyor**£Write-Onlyinstructionstomodifyeither(*£theimagebyteorthehardwarecontrol*£registerisprohibited.ŠPAGE7CCBIQENA‚DS.Bƒ1”ThisbitmaskisusedbytheForeground&*£InterruptHandlertoblockInterrupt%*£ProcessingQueueentriesfrombeing%*£generatedasaresultofinterrupts&*£occuringonselectedchannels.Ifan$*£InterruptQueueEnablebitisset,**£interruptsforthecorrespondingchannel,*£willbeplacedintheInterruptProcessing,*£Queueastheyoccur.IfanInterruptQueue,*£Enablebitisclear,interruptsthatoccur&*£onthecorrespondingchannelwillbe *£discarded.ŠSPC„22CCBCHTYP‚DS.Bƒ1”ThisbitmasktellstheForeground&*£InterruptHandlerwhichoftheinput&*£channelsareconfiguredforsoftware+*£debounce.Bits0-4ofthemaskcorrespond(*£tochannelnumbers0-4respectively.A+*£clearmaskbitindicatesthatnodebounce,*£istobeperformed(i.e.tasknotification'*£ismadeonallinterrupts).Asetbit+*£indicatesthatsoftwaredebounceistobe*£performedonthechannel.ŠSPC„25CCBSHTDN‚DS.Bƒ1”WhentheForegroundInterruptHandler**£disablesinterruptsononeormoreinput)*£channelsasaresultofInterruptQueue,*£overflow,itsetstheshutdownflagbit(s)+*£correspondingtothechannelnumber(s)of**£theinterrupt(s)thatwerelostduetoa**£fullInterruptProcessingQueue.Eachof$*£theseflagbitsareclearedbythe,*£BackgroundInterruptHandlerwhenthetask'*£owningthechannelisnotifiedofthe *£shutdown.ŠPAGE*M*ƒThefollowingtablescontaininformationpertainingtotheindividualinputN* channels of a single input module. The first table pertains to non-interruptJ* channels 4-7 and contains only channel ownership information. The secondM* table pertains to interrupt channels 0-3 with each entry containing channel.* ownership and interrupt control information.*ŠSPC„28CCBNICCT‚DS.Lƒ4”Thistablecontainsone32-bitentryfor+*£eachnon-interruptchannel4-7.Theentry)*£foreachchanneliszeroifnotaskhas**£thechannelassignedorcontainstheTCB**£addressoftheoftheowningtaskifthe*£channelisassigned.ŠSPC„29CCBNICCE‚EQU„*-1’ThisistheoffsetwithintheCCBofthe(*£lastbyteoftheNon-InterruptChannel*£ContH rolTable.ŠSPC„2=CCBICCTƒDS.BƒICCENTLN*4‹Thistableinputchannelcontroldata,*£foreachinterruptchannel0-3.Eachtable**£entrycontainsmultiplefieldsforwhich*£equatesweredefinedearlier.ŠSPC„28CCBICCTE‚EQU„*-1’Thisequatespecifiestheoffsetofthe,*£lastbyteoftheInterruptChannelControl*£TablewithintheCCB.ŠSPC„2J*ƒThefollowingfieldscontaintheentrypointaddressesofvariousRMS68KL* routines that are normally accessed via a TRAP 0 call. These addresses areO* obtained by the driver initialization routine so that low time overhead JSR'sI* may be used in place of much higher overhead TRAP 0 calls. The order ofM* these entries may not be changed without also changing the Trap 0 Directive* number table (TRAP0TBL).ŠSPC„23CCBGUARD‚DS.Lƒ1”Thisfieldcontainstheentrypoint**£addressoftheRMS68KGuardedSubroutine*£Callroutine.ŠSPC„23CCBBKGST‚DS.Lƒ1”Thisfieldcontainstheentrypoint-*£addressoftheRMS68KBackgroundScheduling *£routine.ŠSPC„23CCBLOGPY‚DS.Lƒ1”Thisfieldcontainstheentrypoint+*£addressiftheRMS68Klogicaltophysical*£addresstranslationroutine.ŠSPC„22CCBRQPAƒDS.Lƒ1”Thisfieldcontainstheentrypoint**£addressoftheRMS68KExecutivePeriodic*£ActivationRequestroutine.ŠSPC„23CCBQEVNT‚DS.Lƒ1”Thisfieldcontainstheentrypoint,*£addressoftheRMS68KQueueEventroutine.ŠSPC„23CCBWAKUP‚DS.Lƒ1”Thisfieldcontainstheentrypoint'*£addressoftheRMS68KWakeuproutine.ŠSPC„23CCBLEN„EQU„*”Thisisthelengthofacompleteinput&*£moduleCCBincludingboththedevice,*£independentanddevicedependentportions.ŠSPC„2 éééŠPAGE*‰INCLUDED610CMD.EQ )*‰InputModuleDriverCommandErrorCodes K*ƒThefollowingequatesspecifythesinglebyteerrorcodesreturnedbytheN* driver command handler in D0 and in the Input Driver Command Parameter BlockL* (IPB) when an error is detected during preliminary processing of a command:* passed to the driver via an Initiate I/O command to CMR. =INPPBLKƒEQU„RTCDPBLKTheaddressboundariesspecifiedforthe,*£IPBdonotlieentirelywithintheaddress*£spaceoftherequestingtask.ŠSPC„26INPBAWBƒEQU„$86’ThebaseaddressspecifiedfortheIPB"*£doesnotlieonawordboundary.ŠSPC„28INPISC„EQU„XSTINVThefunctionsub-codespecifiedinthe)*£InitiateI/OParameterBlockisinvalid*£forthisdriver.ŠSPC„23INPPBLNƒEQU„$10’ThelengthspecifiedfortheIPBis*£invalidforthiscommand.ŠSPC„25INPICMDƒEQU„$F4’ThecommandcodespecifiedintheIPB$*£doesnotmatchanyofthecommands*£supportedbythisdriver.ŠSPC„25INPOWNRƒEQU„$F2’Oneormoreofthechannelsspecified&*£inthiscommandarenotownedbythe'*£requestingtask.Allchannelsmustbe-*£assignedbyanOpenChannelscommandbefore*£theymaybeaccessed.ŠSPC„22INPUNKWN‚EQU„$F6’Oneormorechannelsnumberswere)*£specifiedthatarenon-existantforVME-*£610/620modules(i.e.notintherange0-7). ŠSPC„26INPICHNƒEQU„$F3’Achannelnumberwasspecifiedthatis'*£invalidforthegivencommand(i.ean'*£Enable/DisableInterruptscommandwas)*£specifiedforanon-interrupH tchannel).ŠSPC„28INPMAXCH‚EQU„$F7’OnanOpenChannelscommand,thenumber,*£ofchannelsspecifiedwasnotintherange*£1-8.ŠPAGE8INPINTRƒEQU„$FF’AnEnable/Disableinterruptscommandwas+*£issuedforoneormorechannelsthatwere+*£alreadyintherequestedstate.Thiscode&*£isonlyonewherecommandprocessing-*£continuesaftertheerrorisdetected.Thus-*£thiscodemaybeinterpretedasanerroror$*£warningattheoptionoftheuser.ŠSPC„2 8 6 9 9INPAOPNƒEQU„$FE’OneormorechannelsspecifiedinanOpen**£Channelscommandarealreadyassignedto+*£requestingtask.Achannelmustbeclosed**£beforeanewopencommandcanbeissued.ŠSPC„28INPDUPLƒEQU„$FD’Duplicatechannelnumberswerespecified+*£inanOpenChannelscommand.Eachchannel+*£numbermayonlybespecifiedonceineach*£commandparameterblock.ŠSPC„2G*ƒThefollowingequatesdefinethecommandcodesthatareplacedintheF* CMDCOD field of the IPB. The command mnemonics are restricted to sixH* characters in length to maintain compatibility with the variable names * used in ANSI Standard FORTRAN.ŠSPC„26INOPEN„EQU„$01’ThisistheOpenChannelsCommandcode.ŠSPC„26INCLOS„EQU„$02’ThisistheCloseAllChannelsorClose!*£SelectedChannelsCommandcode.ŠSPC„24INSTAT„EQU„$05’ThisistheReadInputStatusCommand*£codeŠSPC„24INENAB„EQU„$06’ThisistheEnableInterruptsCommand*£code.ŠSPC„25INDSAB„EQU„$07’ThisistheDisableInterruptsCommand*£code.ŠPAGEF*ƒThefollowingoffsetsdefinetheformatoftheStandardInputDriverL* Parameter Block used for the following commands: Close All Channels, CloseF* Selected Channels, Read Input Status, Enable Interrupts, and Disable * Interrupts.ŠSPC„2 ŠOFFSET06CMDSTA„DS.Wƒ1”Thisfieldcontainsan8-bitstatuscode(*£thatisreturnedbythedrivercommand+*£handleruponcompletionofthecommandor,*£whenanerrorconditionhasbeendetected.+*£WiththeexecptionofstatuscodeINPINTR)*£($FF)describedabove,anon-zerovalue+*£returnedinthisfieldmeansanerrorwas%*£detectedintheIPBandnoneofthe#*£requestedcommandoperationswere *£performed.ŠSPC„22CMDCOD„DS.Wƒ1”ThisfieldcontainsoneoftheInput'*£ModuleDriverCommandcodesdescribed *£earlier.ŠSPC„21CMDCHM„DS.Wƒ1”Thisfieldcontainsabitmaskthat+*£identifiesthechannelstobeaffectedby%*£thecommand.Bits0-7correspondto'*£channels0-7oftheinputmodule.All)*£channelscorrespondingtosetmaskbits,*£willbeaffectedbythecommand.Maskbits**£8-16arereservedandmustallbeclear.ŠSPC„21CMDLEN„EQU„*”ThisisthestandardIPBlengththat%*£appliestoallcommandsexceptOpen"*£ChannelsandCloseAllChannels.ŠPAGEG*ƒThefollowingoffsetsdefinetheformatoftheOpenChannelscommand.K* The IPB for this command specifies the number of channels to be opened byM* the command to a maximum of 8. Following the number of channels is a seriesO* of 4 byte data blocks. Each data block specifies the number of the channel toL*beopened.‚Whenaninterruptchannel(0-3)isbeingopened,thedatablockK* also contains a channel configuration word. The IPB may contain more data@* blocks than necessary for the number of channels to be opened.ŠSPC„22ŠOFFSETCMDCHMTheCommandStatusandCommandCode-*£fieldsoftheOpenChannelsCommandarethe'*£sameasspecifiedinthestandardIPB *£format.ŠSPC„25CMDNCO„DS.Wƒ1”Thisfieldcontainsthenumberofinput+*£channelstobeopenbythiscommand.This$*£valuemustbeintherangeof1-8.ŠSPC„24CMDCHL„EQU„*”Thisisthestartingoffsetofthelist+*£ofdatablocksspecifyingthechannelsto *£beopened.ŠPAGEK*‚ThefollowingoffsetsI definetheformatofeachdatablockinthelistof* channels to open.ŠSPC„2 ŠOFFSET02OPNCHN„DS.Wƒ1”Thisfieldcontainsthenumberofan)*£inputchanneltobeopened.Thisnumber*£mustbeintherange1-8.ŠSPC„24OPNCFG„DS.Wƒ1”Thisfieldspecifieshowtheinterrupt+*£channelbeingopenedistobeconfigured.)*£Thisfieldisignoredfornon-interrupt-*£channels.Thisfieldisbrokenintoseveral*£sub-fieldsasfollows:**¦Bit(s)‚Function**§0†Reserved(mustbezero)**§1=1‚DisableInterrupts*«0‚EnableInterrupts*#*§2=1‚Interruptondeenergizedto*°energizedtransition*«0‚Interruptonenergizedto*°deenergizedtransition*(*§3=1‚WAKEUPtaskonchannelinterrupt!*«0‚Queueaneventtothetaskon*®channelinterrupt**§5-7„Reserved(mustbezero)*&*§8-14ƒLengthofthesoftwaredebounce*®intervalinunitsof4milli-!*®seconds.Zeroifnodebounceis *®desired.* *§15=1Usethedefaultchannel*®configurationspecifiedbelow"*¬0Usetheuserspecifiedchannel*®configurationŠSPC„24OPNCDB„EQU„*”Thisisthelengthofadatablockthat#*£specifiesachanneltobeopened.ŠSPC„23DEFLTCFG‚EQU„0”Thedefaultchannelconfigurationis*£definedasfollows:**¨InterruptsEnabled'*¨Interruptonenergizedtodeenergized *ªtransition*¨Queueeventoninterrupt*¨Nosoftwaredebounce ééééé‰PAGE*ˆINCLUDEƒD610INTQ.EQ * Interrupt Queue Control Table*G*ƒTheseequatesdefinetheoffsetsoffieldswithintheInterruptQueueI* Control Table. This table resides in the Global Variable Area allocatedH* by the system initialization routine. It is used by the Foreground andJ* Background Interrupt handlers to control the Interrupt Processing Queue.L* The queue length in bytes must be an power of two. This restriction speedsG* up queue processing by minimizing the time necessary to perform queue* pointer wraparound.* ŠOFFSET‚03QID‡DS.Lƒ1”Thisfieldisinitializedtocontainthe'*£ASCIIstring'IQCT'alloweasyvisual(*£locationofthequeuecontroltablein*£memorydumps.ŠSPC„21QBAB†DS.BƒBABBLNThisBABisusedtoactivatethe'*£backgroundinterrupthandlerwhenthe)*£queuecontainsaninterruptentrytobe *£processed. /QPTR†DS.Lƒ1”Thisfieldcontainsthebasememory(*£addressoftheinterruptqueueitself. J*ƒThequeueinputandoutputoffsetfieldsmustbeadjacentinmemorywithK* the input offset at the lower address and the output offset at the higherG*address.‚ThisisrequiredbecauseaCMPM.W(Ax)+,(Ax)+instructionisM* used to check for an empty queue without requiring interrupts I to be masked. 4QINOFSTƒDS.Wƒ1”Thisfieldcontainstheoffsetofthe$*£firstfreequeuelocationwherean *£interruptentrycanbeplaced. 5QOUTOFST‚DS.Wƒ1”Thisfieldcontainstheoffsetofthe)*£nextinterruptentrytoberemovedfrom *£thequeue. 6QWAMSK„DS.Wƒ1”Thisfieldcontainsthequeuelength-1%*£andisANDedtoeithertheinputor)*£outputoffsetfieldtoforcewraparound+*£fromthehighaddressendofthequeueto*£thelowaddressend. 4QMAXIL„DS.Wƒ1”Thisupperbyteofthisfieldcontains%*£thehardwareinterruptlevelofthe**£highestpriorityinputmodulecontrolled,*£bythisdriverandthelowerbyteiszero.&*£ThisfieldisusedbytheForeground**£InterruptHandlertoraisetheprocessor #5 ,2,*£interruptmaskwhileanewentryisplaced$*£intheInterruptProcessingQueue. 0IQCTLN„EQU„*”ThisisthelengthoftheInterrupt*£QueueControlTable.ŠPAGE*"* Interrupt Processing Queue Entry*I*ƒTheseequatesdefinetheformatofaninterruptentrywithinthequeue.L* the entry length in bytes must be a power of 2 so the entry is padded withM* several reserved bytes to make a total of 16 bytes per entry. The order andM* offsets of the interrupt queue entry sub-fields must be maintained since anK* instruction of the form MOVEM.L Dx/Dx/Ax, or MOVEM.L ,Dx/Dx/Ax isN* use to place interrupt entries into the queue and to remove entries from the* queue respectively. ŠOFFSET02IQETIMEƒDS.Lƒ1”Thisfieldcontainstheapproximate,*£timeatwhichtheinterruptoccurred.This,*£timeisobtainedfromtheTIMEODparameter**£inSYSPARandisaccuratetothenearest+*£millisecondsubjecttothegranularityof$*£theRMS68Kreal-timeclocksource. ,ŠDS.Bƒ3”Thisfieldactsasaplaceholderso+*£thestatusbytebelowwillbeloadedinto,*£thelow-orderbyteofadataregistereven'*£thoughallqueueentriesarereadand(*£writtenviaaMOVEM.Linstruction.‚The)*£contentofthesethreebytesisassumed *£tobeUNDEFINEDbythedriver. 8IQESTATƒDS.Bƒ1”Thisfieldcontainsabitmaskspecifying%*£theinputchannelorchannelswhich*£generatedtheinterrupt(s). 4IQECCB„DS.Lƒ1”ThisfieldcontainstheCCBaddressof%*£theinputmodulethatgeneratedthe *£interrupt. -ŠDS.Bƒ4”Thesereservedbytesarenecessaryto**£padthequeueentrylengthinbytestoa*£poweroftwo. 0IQENTLNƒEQU„*”Thisisthelengthofaninterrupt*£processingqueueentry.   é*2*‰EQUATESSPECIFICALLYFORMVM615DRIVER(D615.SA)*ACOPEN„EQU„1’OPENCOMMANDCODEACOCLS„EQU„2’CLOSECOMMANDCODE"ACOUT…EQU„3’OUTPUTONCOMMANDCODE$ACOOFF„EQU„4’OUTPUTOFFCOMMANDCODE"ACOSTA„EQU„5’OUTPUTSTATUSCOMMANDX1ˆEQU„6’(notused)X2ˆEQU„7’(notused)"ACOPLS„EQU„8’PULSEDOUTPUTCOMMAND* *‰ACOCOMMANDPARAMETERSOFFSETS* ŠOFFSET0 CMDSTA„DS.Wƒ1’ACOcommandstatusCMDCOD„DS.Wƒ1’ACOcommandcodeCMDCHN„DS.Wƒ1’#ofchannels CMDNXT„EQU„*ŠOFFSETCMDNXTNUMCHANƒDS.Wƒ1’channelnumber$CHNCNFGƒDS.Wƒ1’channelconfiguration4OPNTRY„EQU„*-CMDNXT‹#ofbytesforeachopenchannel**‰ACOTBLOFFSETS8*‰headerinformationsetupduringsysteminitialization9*‰allACOentriessetto$FFduringsysteminitialization* ŠOFFSET0ACOEYE„DS.Lƒ1’!ACOeyecatcher!ACOLNG„DS.Wƒ1’#ofbytesintable4ACOOFSTƒDS.Wƒ1’offsettonextavailableACO-IDentryB*ACOIO is an offset which points to a location within ACOTBL which<*‡containsavaluewhichistheoffsetrelativetoACOTBJ Lto6*‡theIOimagemapswithinACOTBL.‚ACOTBLitselfisan4*‡absoluteaddresssetinSYSGEN.‚Itisaccessedby:6*‡MOVE.L‚ACOTBL,An‚(movesaddressofACOTBLtoaddress?*‡registern).‚MOVE‚ACOIO(An),Dn‚(ACOIOistheoffsettodata).'ACOIO…DS.Wƒ1’offsettostartofIOmaps"ACONAL„DS.Bƒ1’#ofCCB'sallocated*ACONMAXƒDS.Bƒ1’max#ofCCB'scanallocate"ACONTRYƒEQU„*’tableentriesfollowŠOFFSETACONTRYACOID…DS.Lƒ1’ACOmoduleID6*‚---ƒ---ƒStartofchannelconfigurationtable‚---ƒ---8*ˆEachchannelconfigurationentryconsistsof2fields;/*ˆ(1)UserID(theuser'sTCBaddress)4bytes.%*ˆ(2)Channelconfiguration,2bytes.5*ˆThereisspacereservedfor8configurationentries*)ŠDS.Lƒ1’usertaskTCBaddress-channel0)ŠDS.Wƒ1’channelconfiguration-channel00ŠDS.Bƒ7*6restofchannels(6bytesperchannel)3ACOIDLNG‚EQU„*-ACONTRYŠlengthof1ACOmoduleentry*‰PAGE ŠOFFSET0/*‚Offsetstofieldswithinconfigurationtable:#ACOTCB„DS.Lƒ1’usertaskTCBaddress 4; =H E $ACOCNIFƒDS.Wƒ1’channelconfiguration'CHANLNGƒEQU„*’lengthof1channelentry*$*‰IOoffsetswithinIOmapinACOTBL*‰onesetforeachACOmodule*>*ƒTheIOimagemapcontainsacopyofthedatainthedatareg*F*ƒBeginIOimagemap------------------------------------------------- ŠOFFSET0&IODDR„DS.Lƒ1’memorymappedI/Oaddress'DODR07ƒDS.Wƒ1’dataoutputreg.chan0-7$IOLNG„EQU„*’lengthof1IOmapentryF*‚EndIOimagemap---------------------------------------------------*+*‰IOOFFSETSwithinmemorymappedI/Ospace* ŠOFFSET0IOADRƒDS.Wƒ1’dataregister**ˆDCODRIVERERRORCODES*ACODVB„EQU„$F0devicebadACOBSY„EQU„$F1devicebusy,ACOICU„EQU„$F2invalidcommandforthisuser1ACOCNM„EQU„$F3invalidchannel#forthiscommand$ACOINVDƒEQU„$F4invalidcommandcode-ACOMEM„EQU„$F5nomemoryspaceleftinACOTBL+ACOICNSƒEQU„$F6illegalchannel#specified.ACOINC„EQU„$F7invalid#ofchannelsspecified/ACOCNFGƒEQU„$F8invalidconfigurationspecified/ACOICC„EQU„$F9invalidcommandforthischannel:ACOMAX„EQU„$FAexceededSYSGENspecifiednumberofdevicesACOIINTƒEQU„$FB(notused)#ACONTBLƒEQU„$FCnoACOtableexists'ACONID„EQU„$FDACOmodulenotallocated%ACOPND„EQU„$FEchannelalreadyopened*!*†---†---…STANDARDƒMACROS…---…---*H*Allocate macro allocates local storage as long words on the stack,(A7).,*Up to 6 variables may be allocated by name.C*These variables may then be referred to by name offset to stack orH*they may be stored to (by macro STORE) and loaded from (by macro LOAD).*3*Prior to exit, the variables must be de-allocated.*ALLOCATE MACRO*B*Allocate reserves storage on the stack for local named variables,8*‚whicharereferredtoasanoffsetfromstackpointer.\1 SET 2‰IFGT(NARG-1)\2 SET 6‰ENDC‰IFGT(NARG-2) \3 SET 10‰ENDC‰IFGT(NARG-3) \4 SET 14‰ENDC‰IFGT(NARG-4) \5 SET 18‰ENDC‰IFGT(NARG-5) \6 SET 22‰ENDC*ƒSUB.Lƒ#(NARG*4)+4,A7*ƒENDM*I*LOAD macro allows loading a register from local storage named variables. *Thesyntaxis:‚LOADRn,VARNAME.9*The storage is DYNAMICALLY ALLOCATED by macro 'ALLOCATE'* LOAD‚MACRO‰MOVE.L„\2(A7),\1‰ENDM*H*STORE macro allows storing a register to local storage named variables.!*Thesyntaxis:‚STORERn,VARNAME.?*The local storage is DYNAMICALLY ALLOCATED by macro 'ALLOCATE'* STORE MACRO‰MOVE.L„\1,\2(A7)‰ENDM**PUSHPOINTŠMACRO‰MOVEM.LƒA0-A6,-(A7)‰ENDM*POP_POINTŠMACRO‰MOVEM.Lƒ(A7)+,A0-A6‰ENDM* PUSHALLŒMACRO‰MOVEM.LƒA0-A6/D0-D7,-(A7)‰ENDM* POPALLƒMACRO‰MOVEM.Lƒ(A7)+,A0-A6/D0-D7‰ENDMJ ééééé*2*‰EQUATESSPECIFICALLYFORMVM625DRIVER(D625.SA)*DCOPEN„EQU„1’OPENCOMMANDCODEDCOCLS„EQU„2’CLOSECOMMANDCODE"DCOUT…EQU„3’OUTPUTONCOMMANDCODE$DCOOFF„EQU„4’OUTPUTOFFCOMMANDCODE"DCOSTA„EQU„5’OUTPUTSTATUSCOMMANDX1ˆEQU„6’(notused)X2ˆEQU„7’(notused)"DCOPLS„EQU„8’PULSEDOUTPUTCOMMAND* *‰DCOCOMMANDPARAMETERSOFFSETS* ŠOFFSET0 CMDSTA„DS.Wƒ1’DCOcommandstatusCMDCOD„DS.Wƒ1’DCOcommandcodeCMDCHN„DS.Wƒ1’#ofchannels CMDNXT„EQU„*ŠOFFSETCMDNXTNUMCHANƒDS.Wƒ1’channelnumber$CHNCNFGƒDS.Wƒ1’channelconfiguration4OPNTRY„EQU„*-CMDNXT‹#ofbytesforeachopenchannel**‰DCOTBLOFFSETS8*‰headerinformationsetupduringsysteminitialization9*‰allDCOentriessetto$FFduringsysteminitialization* ŠOFFSET0DCOEYE„DS.Lƒ1’!DCOeyecatcher!DCOLNG„DS.Wƒ1’#ofbytesintable4DCOOFSTƒDS.Wƒ1’offsettonextavailableDCO-IDentryB*DCOIO is an offset which points to a location within DCOTBL which<*‡containsavaluewhichistheoffsetrelativetoDCOTBLto6*‡theIOimagemapswithinDCOTBL.‚DCOTBLitselfisan4*‡absoluteaddresssetinSYSGEN.‚Itisaccessedby:6*‡MOVE.L‚DCOTBL,An‚(movesaddressofDCOTBLtoaddress?*‡registern).‚MOVE‚DCOIO(An),Dn‚(DCOIOistheoffsettodata).'DCOIO„DS.Wƒ1’offsettostartofIOmaps"DCONAL„DS.Bƒ1’#ofCCB'sallocated*DCONMAXƒDS.Bƒ1’max#ofCCB'scanallocate"DCONTRYƒEQU„*’tableentriesfollowŠOFFSETDCONTRYDCOID…DS.Lƒ1’DCOmoduleID6*‚---ƒ---ƒStartofchannelconfigurationtable‚---ƒ---8*ˆEachchannelconfigurationentryconsistsof2fields;/*ˆ(1)UserID(theuser'sTCBaddress)4bytes.%*ˆ(2)Channelconfiguration,2bytes.5*ˆThereisspacereservedfor8configurationentries*)ŠDS.Lƒ1’usertaskTCBaddress-channel0)ŠDS.Wƒ1’channelconfiguration-channel0 M4 V' ^H0ŠDS.Bƒ7*6restofchannels(6bytesperchannel)3DCOIDLNG‚EQU„*-DCONTRYŠlengthof1DCOmoduleentry*‰PAGE ŠOFFSET0/*‚Offsetstofieldswithinconfigurationtable:#DCOTCB„DS.Lƒ1’usertaskTCBaddress$DCOCNIFƒDS.Wƒ1’channelconfiguration'CHANLNGƒEQU„*’lengthof1channelentry*$*‰IOoffsetswithinIOmapinDCOTBL*‰onesetforeachDCOmodule*J*ƒTheIOimagemapcontainsacopyofthedataintheIOcontrol&ddrrgs*F*ƒBeginIOimagemap-----------------------------------K -------------- ŠOFFSET0&IODDR„DS.Lƒ1’memorymappedI/Oaddress'DODR07ƒDS.Wƒ1’dataoutputreg.chan0-7$IOLNG„EQU„*’lengthof1IOmapentryF*‚EndIOimagemap---------------------------------------------------*+*‰IOOFFSETSwithinmemorymappedI/Ospace* ŠOFFSET0IOADRƒDS.Wƒ1’dataregister**ˆDCODRIVERERRORCODES*DCODVB„EQU„$F0devicebadDCOBSY„EQU„$F1devicebusy,DCOICU„EQU„$F2invalidcommandforthisuser1DCOCNM„EQU„$F3invalidchannel#forthiscommand$DCOINVDƒEQU„$F4invalidcommandcode-DCOMEM„EQU„$F5nomemoryspaceleftinDCOTBL+DCOICNSƒEQU„$F6illegalchannel#specified.DCOINC„EQU„$F7invalid#ofchannelsspecified/DCOCNFGƒEQU„$F8invalidconfigurationspecified/DCOICC„EQU„$F9invalidcommandforthischanneléé:DCOMAX„EQU„$FAexceededSYSGENspecifiednumberofdevicesDCOIINTƒEQU„$FB(notused)#DCONTBLƒEQU„$FCnoDCOtableexists'DCONID„EQU„$FDDCOmodulenotallocated%DCOPND„EQU„$FEchannelalreadyopened*!*†---†---…STANDARDƒMACROS…---…---*H*Allocate macro allocates local storage as long words on the stack,(A7).,*Up to 6 variables may be allocated by name.C*These variables may then be referred to by name offset to stack orH*they may be stored to (by macro STORE) and loaded from (by macro LOAD).*3*Prior to exit, the variables must be de-allocated.*ALLOCATE MACRO*B*Allocate reserves storage on the stack for local named variables,8*‚whicharereferredtoasanoffsetfromstackpointer.\1 SET 2‰IFGT(NARG-1)\2 SET 6‰ENDC‰IFGT(NARG-2) \3 SET 10‰ENDC‰IFGT(NARG-3) \4 SET 14‰ENDC‰IFGT(NARG-4) \5 SET 18‰ENDC‰IFGT(NARG-5) \6 SET 22‰ENDC*ƒSUB.Lƒ#(NARG*4)+4,A7*ƒENDM*I*LOAD macro allows loading a register from local storage named variables. *Thesyntaxis:‚LOADRn,VARNAME.9*The storage is DYNAMICALLY ALLOCATED by macro 'ALLOCATE'* LOAD‚MACRO‰MOVE.L„\2(A7),\1‰ENDM*H*STORE macro allows storing a register to local storage named variables.!*Thesyntaxis:‚STORERn,VARNAME.?*The local storage is DYNAMICALLY ALLOCATED by macro 'ALLOCATE'* STORE MACRO‰MOVE.L„\1,\2(A7)‰ENDM**PUSHPOINTŠMACRO‰MOVEM.LƒA0-A6,-(A7)‰ENDM*POP_POINTŠMACRO‰MOVEM.Lƒ(A7)+,A0-A6‰ENDM* PUSHALLŒMACRO‰MOVEM.LƒA0-A6/D0-D7,-(A7)‰ENDM* POPALLƒMACRO‰MOVEM.Lƒ(A7)+,A0-A6/D0-D7‰ENDMé‰PAGE1************************************************* *&.ENV.EQ¦*1************************************************* ‰LLEN120**ˆChip-orientedequates*‰IFEQ‚CHIPTYPE-680000USERSRƒEQU‡-6ˆDistancefromstack-toptouserSRVORLNGTHEQU‡0‰LengthofVOR:INTSTATEEQU‡8‰LengthofBuserrorandaddresserrorstate‰ENDC‰IFEQ‚CHIPTYPE-680100USERSRƒEQU‡-8ˆDistancefromstack-toptouserSRVORLNGTHEQU‡2‰LengthofVOR;INTSTATEEQU‡50ˆLengthofBuserrorandaddresserrorstate‰ENDK Cééééé fPAGEÃ1************************************************* *&.EXE.EQ¦*1*************************************************ééééééé o xN €O ˆA UL  ‰LLEN120*Ç*‘**************¨*‘*‚03/28/82‚**Ç*Ç-*ˆDATASTRUCTURESANDEQUATESFOREXECCALLS•*Ç*INTERRUPTEVENT(CODE1)¢*Ç!‰OFFSET0STARTWITHZEROOFFSET£EVLENGƒDS.B1EVENTLENGTH¬EVCODEƒDS.B1EVENTCODE®EVDATA„EQU*VARIABLEDATA«*Ç/*…INTERRUPTSTRUCTUREDEFINEDIN$.XIOEQU.DATA–*Ç*I/OCOMPLETEEVENT(CODE2)Ÿ*Ç%‰OFFSETEVDATASTARTOFVARIABLEDATAEVIOCBƒDS.L1ADDRESSOFIOCB©EVIONDƒEQU*EVENTLENGTH­*Ç*QUEUEEVENT(CODE3)¦*Ç%‰OFFSETEVDATASTARTOFVARIABLEDATAEVQTSKƒDS.L1SENDERTASKNAME¨$EVQSESƒDS.L1SENDERSESSIONNUMBER£EVQTXTƒEQU*MESSAGETEXT­*Ç*TIMEREVENT(CODE4)¦*Ç%‰OFFSETEVDATASTARTOFVARIABLEDATAEVTDATƒDS.L1DATEOFEVENT«EVTTIMƒDS.L1TIMEOFEVENT=EVTPRMƒEQU*EVENTPARAMETERLENGTHIFNOUNIQUEIDSPECIFIED"EVTUIDƒDS.L†1‰UNIQUEACTIVATIONID EVTTACƒDS.W†1‰ACTIVATIONCOUNTER6EVTIDLƒEQU‡*‰EVENTPARAMETERBLOCKLENGTHIFUNIQUEID *œSPECIFIED*Ç*SUBTASKEVENT(CODE5)£*Ç%‰OFFSETEVDATASTARTOFVARIABLEDATAEVSTSKƒDS.L1SUBTASKNAME«&EVSSESƒDS.L1SUBTASKSESSIONNUMBER¡ EVSCTNƒDS.L1CALLINGTASKNAME§*EVSCTSƒDS.L1CALLINGTASKSESSIONNUMBEREVSCODƒDS.B1EVENTSUBCODEª‰DS.B1RESERVED°EVSACDƒDS.W1ABORTCODE®*Ç *ˆEQUATESFOR'EVSCOD'(8BITS)¢*Ç SEVCNTƒEQU1NORMALTERMINATION§SEVCABƒEQU2ABORTED²SEVCSPƒEQU3SUSPENDED°SEVCSTƒEQU4STOPPED²5SEVCSRƒEQU5STARTEDBYTASKOTHERTHANMONITORTASK’SEVCDLƒEQU6DELETED²‰PAGE»*Ç*ATTENTIONEVENT(CODE6)¢*Ç%‰OFFSETEVDATASTARTOFVARIABLEDATA#EVAPRMƒEQU*PARAMETERINFORMATION¤*Ç*USER/SERVEREVENT(CODE7) *Ç%‰OFFSETEVDATASTARTOFVARIABLEDATA&EVUTINƒDS.B1TRAPINSTRUCTIONNUMBER¡#EVUPRIƒDS.B1REQUESTOR'SPRIORITY¤$EVUTSKƒDS.L1REQUESTOR'STASKNAME£)EVUSESƒDS.L1REQUESTOR'SSESSIONNUMBERž&EVUUNMƒDS.W1REQUESTOR'SUSERNUMBER¡&EVURD0ƒDS.L1REQUESTOR'SREGISTERD0¡&EVURA0ƒDS.L1REQUESTOR'SREGISTERA0¡!EVUPSTƒDS.B1PARAMBLOCKSTATUS¦ EVUPSZƒDS.B1PARAMBBLOCKSIZE§EVULENƒEQU*LENGTHOFMESSAGE¨*Ç *ˆEQUATESFOR'EVUTIN'(8BITS)¢*Ç'EVTNOSƒEQU‡7‰REQUESTORISANO.S.TASK’EVTNEOT‚EQU‡6‰EOTNOTIFICATION›*EVTNEOS‚EQU‡5‰ENDOFSESSIONNOTIFICATION*Ç *ˆEQUATESFOR'EVUPST'(8BITS)¢*ÇEVPSTOK‚EQU0OK·EVPSTPM‚EQU1PARTOFPBMOVED©EVPSTBA‚EQU2BADPBADDRESS«EVPSTNR‚EQU3PBNOTREQUESTED©*Ç *ˆEQUATESFOR'EVCODE'(8BITS)¢*Ç(EVCIOIƒEQU1EVENTCODE-I/OINTERRUPTŸ'EVCIOCƒEQU2EVENTCODE-I/OCOMPLETE &EVCQUEƒEQU3EVENTCODE-QUEUEEVENT¡&EVCTIMƒEQU4EVENTCODE-TIMEREVENT¡)EVCSUBƒEQU5EVENTCODE-SUBTASKEVENTž*EVCATNƒEQU6EVENTCODE-ATTENTIONEVENT,EVCSRVƒEQU7EVENTCODE-USER/SERVEREVENT›ŠPAGEº*Ç*ŽQUEUEEVENTPARAMETERBLOCKž*Ç!‰OFFSET0STARTWITHZEROOFFSET£$QEVTSKƒDS.L1TASKTORECEIVEEVENT£"QEVSESƒDS.L1TASKSESSIONNUMBER¥ QEVOPTƒDS.W1DIRECTIVEOPTIONS§&QEVPKTƒDS.L1POINTERTOEVENTPACKET¡ QEVIADƒDS.L1INTERRUPTADDRESS§*Ç!*ˆEQUATESFOR'QEVOPT'(16BITS)¡*Ç"QVOPASƒEQU$8000ADDRESSSUPPLIED¥*Ç(*ˆEQUATESFORRETURNFROMEVENTOPTIONSš*ÇRVOPENƒEQU1ENABLEASQ¯*Ç*CREATETCBPARAMETERBLOCK *Ç!‰OFFSET0STARTWITHZEROOFFSET£CRTTSKƒDS.L1TASKNAME¯"CRTSESƒDS.L1TASKSESSIONNUMBER¥CRTOPTƒDS.W1OPTIONS±CRTMONƒDS.L2MONITORTASK¬CRTIPRƒDS.B1INITIALPRIORITY¨CRTLPRƒDS.B1LIMITPRIORITYªCRTATTƒDS.W1TASKATTRIBUTES©CRTENTƒDS.L1TASKENTRYPOINT¨"CRTUIDƒDS.W1USERIDOFNEWTASK¥*Ç!*ˆEQUATESFOR'CRTOPT'(16BITS)¡*Ç#CTOPMSƒEQU$8000MONITORSPECIFIED¤$CTOPMPƒEQU$4000MONITORPROPAGATED£*Ç!*ˆEQUATESFOR'CRTATT'(16BITS)¡*ÇCTATSTƒEQU$8000SYSTEMTASKª!CTATMRƒEQU$4000MEMORYRESIDENT¦*Ç*‹STARTTASKPARAMETERBLOCK¢*Ç!‰OFFSET0STARTWITHZEROOFFSET£STRTSKƒDS.L1TASKNAME¯"STRSESƒDS.L1TASKSESSIONNUMBER¥STROPTƒDS.W1OPTIONS±STRMONƒDS.L2MONITORTASK¬STRREGƒDS.L15REGISTERS®*Ç!*ˆEQUATESFOR'STROPT'(16BITS)¡*Ç#STOPMSƒEQU$8000MONITORSPECIFIED¤L $STOPMPƒEQU$4000MONITORPROPAGATED£$STOPRGƒEQU$2000REGISTERSSUPPLIED£‰PAGE»*Ç#*ŒSEGMENTDIRECTORPARAMETERBLOCK›*Ç!‰OFFSET0STARTWITHZEROOFFSET£&SEGTCBƒDS.L1TASKTORECEIVESEGMENT¡"SEGSESƒDS.L1TASKSESSIONNUMBER¥SEGOPTƒDS.W1OPTIONS±SEGATTDS.W1ATTRIBUTES°SEGNAMƒDS.L1SEGMENTNAME¬)SEGLADƒDS.L1LOGICALADDRESSOFSEGMENTž+SEGLENƒDS.L1LENGTH(INBYTES)OFSEGMENTœ*SEGPTRƒDS.L1POINTERTORECEIVINGBUFFER*Ç'*ˆRECEIVINGBUFFERFOR'REC.SEG.ATTR.'›*Ç ‰OFFSET‚0SRENAMƒDS.L1SEGMENTNAME¬SREATTƒDS.W1ATTRIUBTES®$SRELSAƒDS.L1LOGICALSTARTADDRESS£"SRELEAƒDS.L1LOGICALENDADDRESS¥SREPADƒDS.L1PHYSICALADDRESS¨SRELENƒEQU*LENGTH³*Ç!*ˆEQUATESFOR'SEGATT'(16BITS)¡*ÇSGATROƒEQU$4000READONLY¬SGATRWƒEQU0READ/WRITE­"SGATSSƒEQU$2000SESSIONSHARABLE¥"SGATNSƒEQU0NOTSESSIONSHARABLE¥#SGATGSƒEQU$1000GLOBALLYSHARABLE¤#SGATNGƒEQU0NOTGLOBALLYSHARABLE¤&SGATDPƒEQU$800SEGMENTISDUPLICATED¡'SGATNDƒEQU0SEGMENTISNOTDUPLICATED /SGATSDƒEQU$400SEGMENTSHARABLEIFDUPLICATED˜0SGATNNƒEQU0SEGMENTNOTSHARABLEIFDUPLICATED—*Ç!*ˆEQUATESFOR'SEGOPT'(16BITS)¡*Ç9SGOPATEQU$800015ATTRIBUTESGIVEN:TRSEG,DCLSHR,SETSABSGOPLAEQU$400014LOGICALADDRESS(NOTNAME):TRSEG,SETSA,RCVSA‡ESGOPPAEQU$200013SETLOGICALADDR.=PHYSICALADDR.(RETADRINA0):„"*¡GTSEG,TRSEG,ATTSEG,SHRSEG,SETSA‡1SGOPSPEQU$100012MAKEPERMANENT:DCLSHR,SETSA˜9SGOPRPEQU$080011REMOVEPERMANENTSTATUS:DESEG,SETSA2SGOPSLEQU$040010SEGMENTLENGTH:SHRSEG,ATTSEG—‰PAGE»*Ç**MOVELOGICALTOLOGICALPARAMETERBLOCK“*Ç!ŠOFFSET0STARTWITHZEROOFFSET¢MVSTSKƒDS.L1SOURCETASK­%MVSSESƒDS.L1SOURCESESSIONNUUMBER¢%MVSADDƒDS.L1SOURCELOGICALADDRESS¢MVDTSKƒDS.L1DESTINATIONTASK¨)MVDSESƒDS.L1DESTINATIONSESSIONNUMBERž*MVDADDƒDS.L1DESTINATIONLIGICALADDRESSMVLENGƒDS.L1LENGTH²*Ç*ALLOCATEASQPARAMETERBLOCKž*Ç!‰OFFSET0STARTWITHZEROOFFSET£ASQTSKƒDS.L1TASKNAME¯"ASQSESƒDS.L1TASKSESSIONNUMBER¥$ASQSTAƒDS.B1INITIALSTATUSOFASQ£%ASQMMLƒDS.B1MAXIMUMMESSAGELENGTH¢&ASQQLNƒDS.L1QUEUELENGTH(INBYTES)¡ASQASRƒDS.L1ADDRESSOFASRª*Ç *ˆEQUATESFOR'ASQSTA'(8BITS)¢*ÇAQSTQDƒEQU0ASQDISABLED­AQSTQEƒEQU1ASQENABLED®AQSTMDƒEQU0MESSAGEDISABLED©AQSTMEƒEQU2MESSAGEENABLEDªAQSTRDƒEQU0ASRDISABLED­AQSTREƒEQU4ASRENABLED®*Ç&*REQUESTTASKATTRIBUTESPARAMBLOCK—*Ç!ŠOFFSET0STARTWITHZEROOFFSET¢TATTIDƒDS.L1TASKID±TATSESƒDS.L1TASKSESSION¬*Ç*ˆSETPRIORITY³*Ç ‰OFFSET0ºSPRTSKƒDS.L1TASK´SPRSESƒDS.L1SESSION±SPRPRIƒDS.B1PRIORITY°‰DS.B1RESERVED°*Ç*DATEANDTIMEROUTINES±*Ç OFFSET0ÂGTDATEDS.L1DATE¶GTTIMEDS.L1TIME¶‰PAGE»*Ç#*ESTABLISHSERVERPARAMETERBLOCKš*Ç!‰OFFSET0STARTWITHZEROOFFSET£*Ç&SRVADRƒDS.L1REQUESTSERVICEADDRESS¡*SRVTRPƒDS.B1TRAPINSTRUCTIONIDENTIFIER!SRVPLNƒDS.B1PARAMBLOCKLENGTH¦*Ç*ˆEQUATESFORSRVTRP(8BITS)¤*Ç)SRTREOT‚EQU$40ENDOFTASKNOTIFICATIONŸ%SRTRPRM‚EQU$20MOVEPARAMETERBLOCK£*Ç.*ACKNOWLEDGESERVICEREQUESTPARAMETERBLOCK*Ç!‰OFFSET0STARTWITHZEROOFFSET£ACKTSKƒDS.L1TASKNAME¯"ACKSESƒDS.L1TASKSESSIONNUMBER¥ACKOPTƒDS.W1OPTIONS±ACKTINƒDS.B1TRAPNUMBER­ACKCCDƒDS.B1CONDITIONCODEªACKRD0ƒDS.L1REGISTERD0­ACKRA0ƒDS.L1REGISTERA0­*Ç!*‰EQUATESFOR'ACKOPT'(16BITS) *ÇAKOPSCƒEQU$4000SETCC¯AKOPLCƒEQU0LEAVECC±AKOPSDƒEQU$2000SETD0¯AKOPLDƒEQU0LEAVED0±AKOPSAƒEQU$1000SETA0¯AKOPLAƒEQU0LEAVEA0±%AKOPRTƒEQU$800REACTIVATTETHETASK¢AKOPWTƒEQU$400WAITTHETASK©!AKOPSTƒEQU$200SUSPENDTHETASK¦"AKOPAAƒEQU$100ACK.ALLREQUESTS¥*Ç-*ˆEQUATESFORSETUSER/SERVERREQUESTSTATUS•*ÇAKRSERƒEQU$80ENABLEREQUEST©‰PAGE»*Ç%*ŽSEMAPHOREDIRECTORPARAMETERBLOCK—*Ç!‰OFFSET0STARTWITHZEROOFFSET£SEMNAMƒDS.L1SEMAPHORENAMEªSEMKEYƒDS.L1SEMAPHOREKEY«SEMCNTƒDS.B1INITIALCOUNT«SEMTYPƒDS.B1SEMAPHORETYPEªM PAGEÃ1************************************************* *&.FME.EQ¦*1*************************************************ééééééé ˜ ¡E ©@ ± ‰LLEN120·**ˆFILE:FME.SA*"FABMAXEQU20MAXIMUMSIZEOFFAB§(DATMINEQU4MIMIMUMSIZEOFDATABLOCK¡"MACSCDE1EQU'EXOR'MACSSDISKID§MACSCDE2EQU'MACS'µSECSZEƒEQU‡256‡SECTORSIZE**"*…DATASTRUCTURESEQUATESFORFMS£ *Š01/28/80µ*Ç***Ç*DIRECTORYBLOCKEQUATES°*Ç OFFSET0Â2DIRFPTDS.L1POINTERTONEXTDIRECTORYBLOCKSTA—+DIRUSNDS.W1USERNO.FORTHISDIR.BLOCKž/DIRCLGDS.L2CATALOGNAMEFORTHISDIR.BLOCKšDS.B2RESERVED¸ DIRSTREQU*STARTOF1STENTRY©!DBSZEEQU4DIRECTORYBLOCKSIZE¨** '*DIRECTORYENTRY(DIR)DATASTRUCTURE–*Ç!‰OFFSET0STARTWITHZEROOFFSET£DIRFILƒDS.L2FILENAME°FILLENƒEQU*-DIRFIL³DIREXTƒDS.W1EXTENSION¯EXTLENƒEQU*-DIREXT³5DIRRS1ƒDS.W1RESERVED(2BYTEGENERATIONDATASET?)’2DIRFSDS.L1FILESTARTINGPSNOR1STFABPOINTER—@DIRFEDS.L1PHYSICALENDOFFILELSNORLASTFABPOINTER(PSN)‰7*ˆTHEFOLLOWINGTWOFIELDSMUSTBEINGIVENORDERELSE‹*ˆCODEHASTOBECHANGED©&DIREOFƒDS.L1LOGICALENDOFFILELSN¡0DIREORƒDS.L1ENDOFFILELOGICALRECORDNUMBER— DIRWCDƒDS.B1WRITEACCESSCODE§DIRRCDƒDS.B1READACCESSCODE¨DIRATTƒDS.B1ATTRIBUTES®;DIRLBZDS.B1LASTDATABLOCKSIZE(TRUCATEDIF<>DIRDSZ)Ž%DIRLRLƒDS.W1RECORDSIZE(0IFVRL)¢DIRRS2DS.B1RESERVED²'DIRKEYƒDS.B1KEYSIZE(0IFNON-ISAM) DIRFABƒDS.B1FABSIZE°DIRDATƒDS.B1DATABLOCKSIZE©(DIRDTEC DS.W 1 DATA FILE CREATED/UPDATED'DIRDTEADS.W1LASTDATEFILEASSIGNED¢=DIRRS3ƒDS.L2RESERVED(4BYTEDATABLOCKPSNLISTPOINTER?)ŠDIRLENƒEQU*DIR.ENTRYLENGTH¨ADIRENTEQU(DBSZE*SECSZE-DIRSTR)/DIRLENNO.OFDIRENTRIES/BLOCKˆ*Ç*DIRATTEQUATES¹*FILETYPEFIELD(BITS0-2)­ DFTBITEQU7BITSFORFILETYPE©DATCONEQU0CONTIGUOUS±"DATSEQEQU1M SEQUENTIAL(VRL/FRL)§,DATISKEQU2KEYEDISAM,NODUPLICATEKEYES)DATISDEQU3KEYEDISAM,DUPLICATEKEYES *Ç$*USERDEFINEDATTRIBUTES(BITS7-4)¥0DUSBITEQU$F0BITSFORUSERDEFINEDATTRIBUTES™PAGEÃ*Ç#*SECONDARYDIRECTORYBLOCKEQUATES¦*Ç OFFSET0Â/SDBFPTDS.L1POINTERTONEXTSDB(=0IFNONE)šDS.B12RESERVED· SDBSTREQU*STARTOF1STENTRY©,SDBSZEEQU1SECONDARYDIRECTORYBLOCKSIZE*Ç0*SECONDARYDIRECTORYENTRY(SDB)DATASTRUCTURE™*ÇOFFSET0STARTWITH0OFFSET®SDBUSNDS.W1USERNUMBER¯USNLENEQU*-SDBUSNµSDBCLGDS.L2CATALOGNAME®CLGLENEQU*-SDBCLGµ+SDBFLNEQU*LENGTHOFINFORMATIONFORFCBžDSDBPDPDS.L1PSNOF1STPDBFORCATALOG(=0IFEMPTYENTRYINSDB)…%SDBACTDS.B1SDBENTRYACCESSCOUNT¤SDBRS1DS.B1RESERVED²!SDBLENEQU*LENGTHOFSDBENTRY¨HSDBENT EQU (SDBSZE*SECSZE-SDBSTR)/SDBLEN NO. OF SEC. DIR. ENTRIES/BLOCK ‰PAGE»*Ç3*VOLUMEIDENTIFICATIONBLOCK(VID)DATASTRUCTUREŠ*Ç!‰OFFSET0STARTWITHZEROOFFSET£VIDVOLƒDS.L1VOLUMEID¯VOLLENEQU*-VIDVOLµVIDUSNƒDS.W1USERNUMBER­/VIDSATDS.L1STARTOFSECTORALLOCATIONTABLEš0VIDSALƒDS.W1LENGTHOFSECTORALLOCATIONTABLE—#VIDSDSDS.L1SECONDARYDIR.START¦/VIDPDLDS.L1PRIMARYDIRECTORYPSNLISTSTARTš(VIDEOD EQU * LENGTH OF FMS REQUIRED DATAVIDOSSƒDS.L1OSORBOOTSTARTVIDOSLƒDS.W1OSORBOOTLENGTH!VIDOSEDS.L1OSEXECUTIONADDR.¨VIDOSA DS.L 1 OS LOAD ADDR.VIDDTE DS.L 1 GENERATION DATEVIDVD DS.L 5 VOLUME DESCRIPTOR$VIDVNO DS.L 1 INIT. VERSION/REVISIONVIDCHK DS.W 1 VID CHECKSUM&VIDDTP DS.B 64 DIAGNOSTIC TEST PATTERN"VIDDTA DS.L 1 DIAG. TEST AREA DIR. VIDDAS DS.L 1 START OF DUMP AREA!VIDDAL DS.W 1 LENGTH OF DUMP AREA+VIDSLT DS.L 1 START OF SECTOR LOCKOUT TABLE,VIDSLL DS.W 1 LENGTH OF SECTOR LOCKOUT TABLE)VIDCAS DS.L 1 START OF CONFIGURATION AREA*VIDCAL DS.B 1 LENGTH OF CONFIGURATION AREA,VIDIPC DS.B 1 IPC INITIALIZED DISK TYPE CODEVIDRS1L EQU 98VIDRS1 DS.B VIDRS1L RESERVED1VIDMAC DS.L 2 SPECIAL CODE TO INDICATE MACSS DISK VIDLENEQU*¼*Ç*Ç VIDDAEQU0DISKADDRESSOFVID©‰PAGE»*Ç)*‚FILEACCESSBLOCK(FAB)DATASTRUCTUREŸ*Ç‚OFFSET0FABHEADER¶@FABFLKDS.L1FORWARDLINK(PSN)TONEXTFAB,0=>ENDOFCHAIN‰BFABBLKDS.L1BACKWARDLINK(PSN)TOPREVIOUSFAB,0=>FIRSTFAB‡HFABUSE DS.B 1 FRACTIONS OF FAB IN USE: 0 THRU 16 16THS IN USE (0=>EMPTY);FABPKYDS.B1BCTOFNEXTFIELD:0=NULLFIELD,OTHERWISEŽ7*…LASTKEYOFPREVIOUSFABIFANY(ZEROFORFISRTFAB)ŽHFABSEG EQU * OFFSET TO FIRST SEGMENT DESCRIPTOR (SD) FOR NON-ISAM FILES #*‚ASEGMENTDESCRIPTORLOOKSLIKE:¥OFFSET0FABENTRYEQUATES°*‚BITS31-28USEDFORFLAGS:«;FABPSN‚DS.L1PSNOFFIRSTSECTORALLOCATEDTOTHESEGMENT"FABMSKEQU$0FFFFFFFMASKFORPSN§#FABBIT EQU $F0000000 BIT FIELD MASK8FABDATEQU0BITS31-28=0=>PSNPOINTSTODATABLOCK‘@FABFAB EQU $80000000 BITS 31-28 = 8 => PSN POINTS TO ANOTHER FAB.FABRECDS.W1NUMBEROFRECORDSINDATABLOCK›1FABSGSDS.B1#OFSECTORSINUSEINTHESEGMENT˜EFABKEYDS.B1LENGTHOFNEXTFIELD,0IFNULLFIELD,ELSEATLEAST4„,FABSSLEQU*SDLENGTHFORSEQUENTIALFILESA*SDLENGTHISVARIABLEFORISAMFILES,KEYFOLLOWSFABKEYFIELDˆ*ÇéééN é‰PAGE»1************************************************* *&.FMI.EQ¦*1*************************************************ééééééé ¹ Â= Ê2 Ò6 ÚJ â ***…INTERNALFMSEQUATES® *Š5/21/80¶*Ç*Ç*GENERALEQUATES¸*Ç4NLEQU$FFFFFF00NEGATIVELONGWORDFORERRORCODES•8FEVTLN EQU EVTLEN+FHSNLN LENGTH OF MAXIMUM FMS ASQ ENTRY KEYMINEQU4MINIMUMKEYLENGTH©6KEYMAXEQU100MAXIMUMKEYLENGTH(2MUSTFITINFAB)“(BCTFLDEQU2LENGTHOFBYTECOUNTFIELD¡+SATSZEEQU1NO.OFMEMORYBUFFERSFORSATž.SPOOLFEQU$40'@'-1STCHAR.FORSPOOLERFILE›+TEMPFEQU$26'&'-1STCHAR.FORTEMP.FILEž&FMSDEQU'FMSD'FMSDATASEMGNETNAME£@*FILEATTRIBUTES-ALLBUFINTERACTIVEANDHALTI/OANDFILEMARK‰FILEATTEQU$5F¹"STKSZEEQU256SIZEOFSTACKAREA§PAGEÃ*Ç/*VOLUMEDESCRIPTORTABLE(VDT)DATASTRUCTUREŽ*Ç!‰OFFSET0STARTWITHZEROOFFSET£VDTDCBDS.L1DCBADDRESS¯$VDTVIDDS.BVIDEODVIDDEFINEDDATA¥!VDTSMADS.L1SATMEMERYADDRESS¨,VDTSMEDS.L1SATMEMORYBLOCKPHYSICALEND(VDTSMDDS.L1SATMEMORYBLOCKDATAEND¡)VDTSMBDS.L1PSNOFSATBLOCKINMEMORY -VDTDMADS.L1PRIMDIRECTORYMEMTORYADDRESSœ*VDTDMEDS.L1PRIM.DIR.MEMORYBLOCKENDŸ5VDTDMBDS.L1PSNOFPRIM.DIRECTORYBLOCKINMEMORY”'VDTSDADS.L1SEC.DIR.MEMORYADDRESS¢)VDTSDEDS.L1SEC.DIR.MEMORYBLOCKEND 4VDTSDBDS.L1PSNOFSEC.DIRECTORYBLOCKINMEMOYR•(VDTTMADS.L1STARTOFTEMPORARYBUFFER¡&VDTTMEDS.L1ENDOFTEMPORARYBUFFER£!VDTWCTDS.W1VOLUMEWRITECOUNT¨ VDTRCTDS.W1VOLUMEREADCOUNT©VDTFLGDS.W1FLAG¶'VDTIOSDS.BIOSNLNIOSPARAMETERBLOCK¢"VDTSSPDS.L1SAVEDSTACKPOINTER§DS.BSTKSZESTACKAREA±VDTSTKEQU*-4N STARTOFSTACK«VDTLENEQU*LENGTHOFVDT®*Ç *VDTFLGBITS¼*Ç.VDFLSBEQU0BIT0=1->SATINMEMORYCHANGED›3VDFLDBEQU1BIT1=1->PRIM.DBINMEMORYCHANGED–2VDFLCBEQU2BIT2=1->SEC.DBINMEMORYCHANGED—0VDFLBBEQU3BIT3=1->DEVICEISBUSYWITHI/O™,VDFLTB EQU 4 BIT 4=1 -> TEMP. BUFFER ALTERED)VDFLNW EQU 5 BIT 5=1 -> DISK NOT WRITABLE‰PAGE»*Ç**FILECONTROLBLOCK(FCB)DATASTRUCTURE“*Ç!‰OFFSET0STARTWITHZEROOFFSET£#FCBVDTDS.L1ADDRESSOFVDTENTRY¦<*KEEIPFCBDCQANDFCBFLGATBEGINNINGSINCEUSEDBYIOSFOR*…CONNECTIONWAIT³FCBDCQDS.L1POINTERTODCQ¬FCBFLGDS.W1FLAGWORD±3FCBSDBDS.BSDBFLNUSERNO./CATALOGFROMSDBENTRY–)FCBDIRDS.BDIRLENDIRECTORYENTRYIMAGE "FCBDBPDS.L1DIRECTORYBLOCKPSN§%FCBDBODS.W1DIRECTORYBLOCKOFFSET¤(FCBSDBPDS.L1SECONDARYDIR.BLOCKPSN¡*FCBSDBODS.W1SECONARYDIR.BLOCKOFFSETŸ3*MUST KEEP FCBWCT AND FCBRCT TOGETHER IN THAT ORDERFCBWCTDS.W1FILEWRITECOUNTªFCBRCTDS.W1FILEREADCOUNT«FCBLENEQU*FCBLENGTH±*Ç *FCBFLGBITS¼*Ç@FCFLDBEQU0BIT0=1->DIR.INFO.CHANGEDINFCB(CALLUPTDIR)‰DFCFLWBEQU1BIT1=1->VOLUMEWRITEOCCURRED(CAN'TDOFETCHDIR.)…AFCFLCBEQU2BIT2=1->DEVICESTATUSCHANGE-FILEMUSTBECLOSEDˆ@FCFLUBEQU3BIT3=1->UNRECOVERABLEERROR-FILEMUSTBECLOSED‰.FCFLBBEQU4BIT4=1->FILEISBUSYWITHI/O›4FCFLOBEQU5BIT5=1->FILEOVERWRITEHASOCCURRED•‰PAGE»*Ç-*FILEASSIGNMENTTABLE(FAT)DATASTRUCTURE*Ç!‰OFFSET0STARTWITHZEROOFFSET£FATFCBDS.L1FCBPOINTER¯FATTSKDS.L1CALLERTASKID¬FATSESDS.L1CALLERSESSION¬FATLUEDS.L1LUNENTRY±%FATLUTDS.L1STARTOFLUTTHISTASK¤,FATIOSDS.BIOSBLNCOPYOFUSERI/OREQUEST(FATUPBDS.L1USERPARAMETERBLOCKADDR¡,FATCLRDS.L1CURRENTLOGICALRECORDS'SLRNHFATCLS DS.L 1 CURRENT LOGICAL SECTOR (1ST SECTOR OF CURRENT DATA BLOCK) (FATBCTDS.L1NO.OFBLOCKSTRANSFERRED¡:*ˆTHENEXT5FIELDSMUSTBEINTHEGIVENORDER,ELSECODEˆ*ˆHASTOBECHANGED®0FATFAADS.L1FABMEMORYBLOCKSTARTINGADDRESS™#FATFAEDS.L1FABMEMORYBLOCKEND¦#FATFABDS.L1PSNOFFABINMEMORY¦FFATCFPDS.L1CURRENTFABENTRYPOINTER(->CURRENTDATABLOCKINFO.)ƒ4FATKEYDS.L1POINTERTOLASTFABENTRY'SKEYFIELD•6*ˆTHENEXT6FIELDSMUSTBEINGIVENORDER,ELSECODEŒ*ˆHASTOBECHANGED®%FATFLSDS.L11STLSNOFCURRENTFAB¤8FATFLRDS.L11STLOGICALRECORDNUMBERFORCURRENTFAB‘.FATSLSDS.L1STARTINGLSNOFCURRENTSEGMENT›9FATSLRDS.L1STARTINGLOGICALRECORDOFCURRENTSEGMENT&FATLLSDS.L1LASTLSNOFCURRENTFAB£&FATLLRDS.L1LASTLRNOFCURRENTFAB£*Ç%FATBSN DS.L 1 SEGMENT NAME FOR BUFFER3FATSLADS.L1USER'SBUFFERSTARTINGLOGICALADDR.–>*ˆTHENEXT3FIELDSMUSTBEINTHEGIVENORDER,ELSECODEHAS„*ˆHASTOBECHANGED®+FATSBSDS.L1SECTORBUFFERSTARTINGADDR.ž(FATSBLDS.L1SECTORBUFFERLOGICALEND¡(FATSBEDS.L1SECTORBUFFERENDINGADDR¡*Ç(FATDBPDS.L1FETCHNEXTDIR.BLOCKPSN¡+FATDBODS.W1FETCHNEXTDIR.BLOCKOFFSETž-FATSDBPDS.L1FETCHNEXTDIR.ENTRYSDBPSNœ0FATSDBODS.W1FETCHNEXTDIR.ENTRYSDBOFFSET™6FATASNDS.W1ASSGN.OPTION(OVERWRITE/SHAREDBUFFER)“FATFLGDS.W1FLAGWORD±FATLENEQU*FATLENGTH±*Ç *FATFLGBITS¼*Ç2FAFLSBEQU0BIT0=1->FMSSECTORBUFFERCREATED—(FAFLSBVEQU1VALUEASSOCIATEDWITHBIT¡3FAFLBBEQU1BIT1=1->1STI/OWASBLOCKTRANSFER–FAFLBBVEQU2»4FAFLRBEQU2BIT2=1->1STI/OWASRECORDTRANSFER•FAFLRBVEQU4»>FAFLFBEQU3BIT3=1->FABINMEMORYCHANGED-‚TOBEUPDATEDŠFAFLFBVEQU8»5FAFLDBEQU4BIT4=1->DATABLOCKINMEMORYCHANGED”FAFLDBVEQU$10¹DFAFLUBEQU5BIT5=0/1->DON'TUPDATE/UPDATEFABENTRYONWRITEDB…FAFLUBVEQU$20¹BFAFLCBEQU6BIT6=0/1->DON'TCHECK/CHECKFABENTRYONWRITEDB‡FAFLCBVEQU$40¹-FAFLKBEQU7BIT7=1->LASTFABKEYCHANGEDœFAFLKBVEQU$80¹0FAFLLBEQU8BIT8=1->LASTI/OWASFORDELETE™FAFLLBVEQU$100¸HFAFLIB EQU 9 BIT 9=1 -> INPUT FAB DURING GETFDB, TRY TO MERGO E W/NEXT FABFAFLIBVEQU$200¸5FAFLMBEQU10BIT10=1->NEXTFABTOOBIGFORMERGE”FAFLMBVEQU$400¸'*DATABLOCKANDFABMERGEPARAMETERS:¢/DATFRCEQU3CURRENTDB.LE.1/3FULLTOMERGEš?DATFRNEQU2NEXTDATABLOCK1/2FULLFORMERGE,IFMOREDON'TŠEFABFRCEQU3CURRENTFABFRACTIONINUSE-1/3=>MERGE,MORE=DON'T„?FABFRNEQU8NEXTFAB8/16THFULLORLESS=>MERGE,ELSEDON'TŠPAGEÃ*Ç*PDBPSNLISTBLOCKEQUATES­*Ç OFFSET0Â9PDLFPTDS.L1POINTERTONEXTPDBPSNBLOCK(=0IFNONE)"PDLSTREQU*PSNFORADIR.BLOCK§1PDLSZEEQU1SIZEOFPDBLISTBLOCK(INSECTORS)˜"PDLLENEQU4LENGTHOFEACHENTRY§;PDLENT EQU (PDLSZE*SECSZE-PDLSTR)/PDLLEN NO. OF PSN'S/BLOCK‚PAGEÂ*Ç*Ç7*‚FILEALLOCATION/DEALLOCATION(FBALLC/FBDEAL)EQUATES‘*Ç*Ç*‚GETFDBDIRECTIVESIND1.L:«(*‚(USEDTOGETOFFSETINTOJUMPTABLE) *Ç*…DIRECTIVEINBITS0-5­.LSNFDBEQU0FABCORRESPONDINGTOLSNIND0.L›.LRNFDBEQU1FABCORRESPONDINGTOLRNIND0.L›GKEYFDBEQU2FABCORRESPONDINGTOKEYPOINTEDTOBYD0.L(BCTIND2.B)‚PGTFDBEQU3PARTIALKEY(>)¬PGETDBEQU4PARTIALKEY(>=)«PLTFDBEQU5PARTIALKEY(<)¬6*…BIT7USEDTOINDICATEIFDATABLOCKSHOULDBEREAD)RDBFLGBEQU7BIT7=1->READDATABLOCK RDBFLGEQU$80º%*…BIT6USEDTOINHIBITLSN/EOFTEST ;EOFFLGBEQU6BIT6=1->DON'TCOMPAREGIVENLSNTODIREOFŽEOFFLGEQU$40ºPAGEÃ*Ç*DEFAULTVOLUMEEQUATES±*Ç OFFSET0ÂDEFVOLDS.L1DEFAULTVOLUME¬%DEFTYPDS.L1TYPEOFDEFAULTVOLUME¤!DVLENEQU*LENGTHOFEACHENTRY¨*Ç*VALUESFORDEFAULTTYPE°*Ç SYSDEFEQU'SYST'SYSTEMVOLUME©TMPDEFEQU'TEMP'TEMP.VOLUMEª"SPLDEFEQU'SPOL'SPOOLERVOLUME'§PAGEÃ*Ç7*MACROTOSETIOSPARAMETERBLOCKFUNCTIONANDOPTIONS’*…PARAMETERS:·*…1-FUNCTION¶*…2-OPTIONS·-*…3-EFFECTIVEADDR.OFIOSPARAMETERBLOCK˜ SETFOMACRO½! MOVE.L #(\1*$10000)+\2,IOSFCT+\3ENDMÃ<*‚SETRFOSAMEASSETFOEXCEPTFIRSTPARAMETERINAREGISTERŒ SETRFOMACRO¼SWAP\1FUNCTIONHIGHWORD­MOVE.W#\2,\1OPTIONS²MOVE.L\1,IOSFCT+\3‚SETBOTHªENDMÃ*ÇC*‚SETSBASETSRANDOMSECTORNUMBERANDBUFFERADDRESSINIOSBLOCK… SETSBAMACRO¼8MOVEM.L\1/\2/\3,IOSRRN+\4IOSRRN,IOSSAD,IOSEADSETUP‘ENDMÃ*Ç:*‚THEFOLLOWINGMACROSAREUSEDTOSETORGETVALUESFROMŽ-*‚FIELDSINFATWHICHMUSTBEINGIVENORDER› GET2MACRO¾‚MOVEM.L\1,\2/\3¶ENDMà GET3MACRO¾MOVEM.L\1,\2/\3/\4´ENDMà GET4MACRO¾MOVEM.L\1,\2/\3/\4/\5±ENDMà SAVE2MACRO½MOVEM.L\1/\2,\3·ENDMà SAVE4MACRO½MOVEM.L\1/\2/\3/\4,\5±ENDMÃ*DCNT MACRO NEED FOR MASK3 DCNT MACRO SUB.W #1,\1 BNE.S \2 ENDMéééééO éé‰TTLGPIBDRIVER-GPIBEQUATES‰PAGEE********************************************************************* *EQUGPIBŸ*E**********************************************************************>*…THISEQUATETABLECONTAINSALLINFORMATIONPERTAININGTOTHE?*ƒGPIBI/ODRIVERFORTHEVERSADOS4.0ANDABOVEI/OSCHEME.IT>*ƒCONTAINSINTERNALHARDWAREEQUATES,CCBSTORAGEALLOCATIONS,>*ƒANDENTRIESSPECIFICTOTHEOPERATIONANDMAINTENANCEOFTHE*ƒIEEE-488BUS.*E********************************************************************* *žHISTORYž*E**********************************************************************(*…24JAN83…STEVEFEITELSON/CHRISMARRINC*ƒINITIALEQUATEFILE.EQUATESAREBROKENOUTFROMTHEMAINSOURCE.@*ƒALLGENERALSYSTEMEQUATESFORTHEDRIVERDEFINEDTHUSFARARE *ƒPRESENT.* PAGEE**********************************************************************E**********************************************************************@*‚THEFOLLOWINGDEFINESTHEQUEUINGSTRUCTUREANDTHEASSOCIATED;*‚POINTERSFORHANDLINGCOMMANDFLOWFORTHISCHANNEL.ONLYB*‚ONEQUEUEENTRYPERDEVICECONNECTEDTOTHISCHANNELISALLOWED.?*‚THEREFORETHEMAXIMUMNUMBEROFQUEUEDENTRIESIS15(ONEFORD*‚EACHDEVICE).THEQHEADPOINTERISAPOINTERTOTHENEXTAVAILABLE<*‚QUEUEENTRYLOCATIONANDQTAILISAPOINTERTOTHECURRENT*‚OPERATIONBEINGEXECUTED.*%*ˆEACHENTRYCONSISTSOFSEVENITEMS:**Œ(1)COMMANDSTATUS*Œ(2)DCBPOINTER*Œ(3)IOSPBPOINTER%*Œ(4)PRIMARYBUFFERPHYSICALADDRESS5*Œ(5)SECONDARY/CONFIGURATIONBUFFER‚PHYSICALADDRESS*Œ(6)PRIMARYBUFFERLENGTH*Œ(7)SECONDARYBUFFERLENGTH*3*ˆIFQTAILANDQHEADAREEQUAL,THEQUEUEISEMPTY.*E********************************************************************* * *‚OFFSETSWITHINA'GPIBQ'ENTRY* OFFSET 06CSTQOFSTDS.W1‡FIRST‚ENTRYISCOMMANDSTATUSOFENTRY+DCBQOFSTDS.L1‡SECONDENTRYISDCBPOINTER,IPBQOFSTDS.L1‡THIRD‚ENTRYISIOSPBPOINTER ê7ééééé