IMD 1.16: 28/05/2007 16:37:34 -FOG/UTL015   åååååååååå  åååååååååå  åååååååååå  -FOG/UTL015OSPLNK70AQMpOSPLNK70COM OSPLNK70DOC4 LISTT AQM{LISTT COMLISTT DOC'/ COMåSWEEP36 DOCi !"#$DIRR COMDIRR DOC%EX12 COM&'OSPATCH DOC(OSPATCH1COM:)*+,DISK DOC-ååååååååååååååååååååååååååååååååååååvÿÃkOSPLNK70.ASM`  ßÿöÿšÿ‹ÿòÿõÿœÿ�ÿ�ÿ–ÿžÿ“ÿŒÿ‘ÿÄÿ™ÿ�ÿ›ÿ’ÿ —ÿ!Šÿ"�ÿ$#&%'Óÿ(˜ÿ)ˆÿ+*-,‰ÿ‡ÿÅÿ.•ÿØÿ”ÿ/0†ÿÎÿ12Òÿ3…ÿÏÿ45ÑÿÍÿ687:9<;Ëÿ=?>A@ÔÿŽÿ×ÿÖÿ¼ÿBDCEoÿÊÿÉÿÌÿ¯ÿGåFÈÿ¾ÿIHKJÇÿ¬ÿ°ÿL²ÿÐÿ¶ÿM«ÿN¡ÿ½ÿPO¨ÿQÝÿúÿÛÿR³ÿ±ÿÀÿºÿS¹ÿÃÿ­ÿÁÿ´ÿ»ÿTUüÿÂÿVûÿÕÿW¦ÿX¸ÿYªÿ[Z§ÿÆÿ·ÿµÿ]¥ÿ^_©ÿ\ùÿÙÿÿþÜÿåÿ¿ÿðÿøÿ¤ÿ¢ÿ¡“ªðÕÉL6ò$D?Xaw6Ç{ :áNnuyIVA:Š@·­Ÿ–³9–õó½=éäV—÷z’“’¬`"*q IUøêd"›läo•ÛéÕ$“8Å�Ëò¬'ðOqÏW­Ô·ÇøÕrZû¥Åñô  ‡âY&‰¾l~V)²ÈNÝ®gÖðrú“4øçÛ‡>õƒ?‹T/-+O‰Ã¾ùKŸ£ï¬s»žÜº¯ºÆ¸ØO®"Æ~ty?ŸÖ~ðsùÃogyó~$±ßº~Þc<žÀ•Õåý|ZûEz5É$n¬¢'ݶÀ£o²ÿñãAíð²ò”8üúá�‹RR¨o—K")ëU<‰¢Þ*·þüåV—ÑÄ�8$Uá«“‰l²‘¿ê.'—Íåüóií'Òx,8ùç½ò üSÜó½:™È&yâðqMWÞc<^—ªç‹o2Ñ�ž<é´örQ*n½H&õHò�žW]Zºm•õs!ñã°ÂH‘Evr뾕/é&qqjŒã“8t›�7¶:žâÎÅ8žþ“«¼DâégÅ?*ÖÃ¥^.é&qqjŒãé?¹ÊKô=X^Ê™�'qÙœ8tï,ϬáyÏ­�"š8‡Kt‰.Ñ%ºD—¨“î¶UÖÏåâÇ›¼k¾‡ý?†?>¯¢IUäYo•—›ÌŠqãÚùyIVAˆC¤Ÿÿ¨|µ­ûÓéðrc=é¶~Q®¬ŽQïç$¿1Ñ÷àE¼öúA½qƒ:‡î85ÆñV¹´¸<ý·þüåV?�+«ãÅiy<øY.]?—hâÐý*®¬Ž·²:š ~sZôb¿Ÿ/©Ì~bãEÞ—Ö÷ª«cñ|QVA…Ö«ˆQŸgÝŸoò~œz.??¯Bu›Ÿ•Zù¿¤˜C¢X©�á"Ykm…QŸg=Ïy•³^<ã’S¿(Ö¦˜wüx‘¬µ¶Â¨Ï³SðKúÖo qˆYñ±ò%=Ò«ID}ÞÎò¬õ|I÷=Ýù¢Læ1çêÿòù°£Fâ�T…¯N&²ÉFþlŽeý|¯GOºê.WÒx^ª.OÿiíWÑ…E/©Ì~‰?Ä!JE“ªÈ¨g½U^n2+Æ��?žµ�øó%‘ß�%){Enõ罺àOÖõy;Ë«hR5š8XWo=›cY?_Z\ž\è —T‰?f¿ÃÇE‰¬âV­\9©‚ ˆC÷Ç‹äYñç%ê‰�ú¼j½ ¾Un—’Î.oN¡>³‹:žÖ;‡n­ýæ/}Ž&Ä!ÒÏŠT>د:ÎKË¡×ûæê_ôàÏ"UÇ÷r^ò¯—ÓÙ³‡n¨7nPÇ賞›�½Un¬ìÆ]F_ûñb?¨wžº<ýOâÐm>žÛ÷,†?/r÷ñþ>^ÅîãU„÷ñ¬ôûxVòy®}ÂK4qèøg¡·Êý</-.O¦¸òô¬±îÌ~Š»äy•²~Ž&Ä!ÒÏŠT&½­·Šû±ú¼²t¼oþ<ï,K4q ýcüêÊÓÛBŒÇ«ÖžOàŸâ¸öHrþÒçõ"K2©hâ`]í·S­?^u—Ë_oIϺÌrMˆC…kš—Y°³Þ–réú¹ÜÎòà#:èú¹\ÕÑoÞÒ/~¼É»æ{Øÿcøã“8T4©Š<ë­òr“Y1n\;?OÿúV?›cY?ßÑ Ñw‘åuA:6ZˆÃMD߃Rº¼85ÆÑå \Yï§*R=ý§µ_¤W“LâÆ*zÒm œ8œÕ‡ƒŸÍš¦èò~>­ý’*ñÇì'6î1|œø¨ÑG."ú"}Duyêv=³†ŸâÎe^zøS]Ù£‰Ã½}Jéòv¼ÆÒÇÓPï<õ«ÑÛð’u¸œúEQ\Ó©cT…º<óñÌž÷쥬y��§ÿ^ü1þ%qð¬øx[/Ò«I&qÃm>¢âégÅ?*'Ï}¼¤UVÞY»á¥ˆ ~ÕÚó­|ðçygyó—~QßOU¤ú¼�%q˜÷ãÅ~+«£@W—?žÖ~èóW¿òXÔçÛål×OËÁÏŠ“fÐõs‰&ÄáÁ{ˆâšNrPoÜ Ž·ÊíC/ââpVê�ÔñdŠ+O¯x)ëçhâp“¢ïA)]^íCú¼²t¼o~VüãàÏóβD‡{-ú" ßÙå¥â笄ŸË^YWžþTWöhâp¯G_¤á;»¼TÜü¥Ï‡?Õ•½D߃RºÆCˆq°®ö3Œ_]yz_èú¹ÜF¿=Ưº¼ŸOk?øó¼³¼±²âÐÑgíYábã.á�š8tDôYÑYáì?ŸU+OLÔÄ¡_‰>ëËõæýx±ßÊK×V—ÄÁàŸOk¿ŒÿFi!Ä!ÒÏŠTV¼+n_zIUøêd"›läOÿEz5É$î!Õ�seü¿>$š8‡H?+þQi][‡;—yé=Xa¤È";³†ŸþCŸ¿ú•Ç¢>?o——ræ#qè–¸l~Q|žµÏs…訷³<³†ç={´>Šhâ@"ý¬øGe¤~0þ¨åw.ó*eý|ßœYÃOÿ¡Ï_ýÊcQŸ£‰ÃYµ>"3——W­=ß./.Ï|<‰ËæÏÛñG-g�u÷ñ¬yX4q ‘~Vü£rò»ÂêR¨½\ìZuÏW¶måéí,oMóÇ•§Ä¡{eøóÊÓ{?+\*Æß2\þ§¸¦SǃÚáå¶Þã¢h½Ê}¡ëgâÐgÕúœ÷ãý</öó¬Ž.϶öÁŸç�å�•=*q æÇûZ;Þ.°ÖA½qƒ:ÞϧµüyÞYÞXÙ¯ºÆ¸Ø‰ülsT—§ÿR!vñÛYžîÏ7–:î1o—ÓÚOqM§ŽÑÄ!©<Ok?³°èA½qƒ:Þ*W`çì2ú*nß³^n£_äîã=ü}¼ŠE‡H?+þQùà Çyi9Å5�:Ô7¨ãé¿Ø½¸FâaÚ§�°ëce?ã.‰×têØž8ía:H7;z¶=R'Ä¡üÙ/©Ì~7>l]  ?â@¼~ü¨Þž8íWˆç¢[Û§�±êó—>Ÿø¨WtkZˆgñQÛ§�±&êó—>Ÿø¨'·nâ@bùËyV|<ñWÖÛYžI3èúùàK/Ä�8ÞÅÛ§�@ˆcùK{â´ã]<ÑkÄèE–—öÄiO¼Ò½¸ž\ååÊcQŸ‰¿1О8í‰×:|áùÌN Æ@{â´'^ïã?³†Kc =qÚVÜAúpõ3k81¢�öÄiG$t@ßòÐá£$®¢�öÄiGLt¨âR?tø(‰gc =qÚæýâgÖpâ@¤›�=ñí,Ï,ò¤›•—®Ÿ q 6·'N;q VœÆ>z¶­ÞÏØÇ î·YtqUœbÅ©ýçžm«÷Óþ3q¿Í¢‹«â”8+NS1ÚŽ»w_Hvü÷S½·tÄ]t÷·9މD ÞyêµÃË™�Iâ鿜ŽAÜEw›ãˆH4qagyų¼±²wYn—«úÄ�¸¼K{â´'Gˆágµ´wï0|ãA½ñâÔÇBÜEw¯ 5qÝýS…š¸‹î6cO;Àð�§n×+ÛægÆžwÑÝÃŒ=íÃ7Þ(zfì)qÝ= k‡³úp;˃zãÁO³÷°¯®Ÿ§¦Cq=¡xúOãÔw©‡l¡HÜþº~&t(+ÙÏ —ÞŽ5±Éí‰Óžè`ÖðË{ö3ˇ¼(è#*±ÑöÄi[q³†Ÿ> ?³|È‹‚>¢»½=qÚÌ~nWÏzfù�}D%ÎØž8íW":d·ë¡ÃGyfù�}D%–qjÚ§ïâ‰*H¨/H7;zr•—‹ScoK‰^ q »ÀZ?+þqPoÜ Ž…8¶'N;AÖ`#®=õC×3±ôÑž8íLÝAúpõ‹‚iüS�Jûí‰ÓNx îûWÖ4ïA—öÄi'TPwˆ7¼±Á‰uÇí‰ÓN°âºCýq%ÿ¬{œî˜Øþs{â´'&êöÊŸê�Ô‘8§@Ü¥²ËJvâöÕõsÄ©éP\O(žþqjˆ»ÔCöˆSSˆ»ÔCöˆSãÄ=ì«ëçÈ/k.wAàÊzeMsåÏ7{){êÄ {Œ®B!ÄaÞ+ßø_â‘_Ö+–†=FÃR/Úá-�Å-sùŸÜºÏàŸ~.8q¿%÷È/kqã ƒ�⇾åÁÏå?¹u7ˆÕ 5q´è{Œ·ÌÁÏŠÔ‰û zä—5©Ã[:‹[æÀÕ;Ëáò ÞHÜWW�PwðQüŠëÙöXòäÖ}ñRâ.º{e¨;ì,¯èG¿•oe‘êA½ñâÔGâ@<òËšdé!wÿT¡îð–Îâc´'N;!¡î�Ó1ê�Ä�8T7æ•§õÆ êxæã�_½Ùç��W­=ŸõeÍä[ß;¿¬<½•áÏ+O‰Ã.°ÖÉ­ûVÖI0‰«¼²¦y�riq<ý'ÐK9kvÏšÉ'ÄUÌeMÛ§ûÄ�8‡~ø‡¿y¯|ÿ÷|ÿðÄ�¸?N;ÞÅM$$ÔÄ�xä—eéa_?ço++ùÂüm~E7¼ü\þpâþ¸{÷›è‘_ÖkĽóêLÝÁGñ“«ÀFy¶=–<¹u_¼”¸a�ÑU€ų<¨7žþƒŸËNÜvܽ;híù`øÆû©ŠTê�§Æ8wÑÝ?U¨‰ñÈ/ë5Kãç¥^´Ã[:‹[æò?¹uŸÁ?ßü¥ÏÄý–Ü#¿¬×‰ö�3tðQüз¼ùKŸOnÝÄ {Œ.ÛæʶùA½ñV>u»^œãxËœ{z?÷ÇÕ$ÔŠëÉ­ûl{,yñRâ.ºû§ u‡¢ýV¾ŸªHõ ÞxqjŒ#q ùe½né!w¯ u‡·t·Ìårë>óñæ/óswÐOÜì]·ê)qK°wÜaü/.ͺÆ%;~âž¿­÷3&î�»�¸ßrr�ü²"ˆqûê"žE7¼\ô­~ãÃWtà q�zÈŽwñDÄ_YOÿEz5É$îm§;NÜþZ>_é0u=ô-Oÿm)ïâ–[¶ì þÊzú~¾¢[Óro³ îRÙ°öH4qaþr™Çƒ=Æm‰…¸å–-;ˆ¿²žþƒŸoå{›q—zÈF€=Mt˜¿\æñ`�q[b!n¹eË⯬§ÿàçû©ÞÛ,ˆ»ÔCv`�Dæ/—y<ØcÜ–Xˆ[nÙ²ƒø+ëé¿Qô~ª÷6 â.õ�}&î�»7q¿‰ùe=@ܰÇèù«íð–Îâ–¹ùKŸÏ>/½85Æñâ´<÷[r�ü² î!w¯ 5qï¼úSw�«ÀFy¶=–<¹u_¼”¸a�ÑÕˆÛŽ»w¾ñV©Ô/N�q$W†š8�ü²°ôÛ,zä—õJÏò¾¹y¯|ãAˆG~Ys±´Œð9Ìó=© _�Ld“�üÙï�è„‹21‘dQ߉G~Ys„¥eÜ€ÏažÃ·Œû=iÖL~äv~9«œ4k9\êgõá’fÍ«‘Õõý ø†¸eÜïI³ÆºÈáÎe^zV­DÒ¬‰¹�ÁÇYµrÒ]°G¢‰ó—Ë<ì1nK,Ä=ì«åó•â–[¶ì þÊzúo½¢[Óro³ îRÙÕ¡°G¢‰ ó—Ë<ì1nK,Ä�¸‡Üm N4Ñ¡¸ß2÷…®Ÿ÷8Å5�:Ô‰ÄꈄºCžâšN‰û-¹§©Ä�¸¸*N»èîos�‰&.ýè§µÔ7¨ãír«œÖž‰ûm]^¬©xäìKߟ€Ïaˆ[Æýž4kŒ¼ä_.§~V­œ4k’9ŸW–ïOÀç0Ïaˆ[Æýžtßòñý øæ9Ì3�8p•'ðƒ—rð³âõÆ êHˆ€¥A¬~¯ø{处ºÃ[:‹û©Þ2Šãœ¸ßrr € âi©»&îa_]?÷cé pe½÷�~�?½’¢¿7ì1º …¸Å]7ì1:L]oçRu$nØct ƒCýo)qï¼ú5Sw˜÷‹_*„ãÁ.NÜ V¿Oþ{‡G/#î·änïàö¥Ä {Œ®`Àaˆ»(tõ1NŒ•_Nÿ­iþè§õ*õÆ ê  HÜèJˆ±˜°4ˆÕïÖ½WNJ¨;¼¥³¸e.=øYñ�J%î·œÜ ‚¸a�ÑEMÅ�˼ôÔízf ?ý7é3q…î >Ɖ±òËé¿5Íý´^å Þ¸A‰]‰±ˆ°4ˆÕï“ÿ^9)¡îð–Îâ–¹üõàgÅ?*‰û-'·x…¸‡ÜmÆž·ìÝ¡ºË-½dÇ_1â~ËÉ-"v‡G/Ä]t·{Ú!ÿçUw¹‰çå_½âöÕõSÀœ—ý‚À•õÖ4ô[þ¼òôЦÆ÷Û,ZDÄÄ�XDlK϶Õû9ÑASÌ÷ó©Ûõʶù™±§Ä]t·{JÜþº´Œð9Ìó½Âm[yz+ßWžžº]oå›}þøøþ|óL 0çe·´Œð9Ìó=²iþ¸òôV†?¯<=u»¾?ŸÃ<ˆ±¡?[ZÆ øæùþ*®¬Ž§:.ïç÷'às˜g±¡ßXZÆ øæùþ*®¬Ž§:.ïóþ|óL  Š£¥eÜ€Ïažï¯âÊêxsZôb¿â¸ö¸ÊK‹_…·Îú_}>‡y&bŠkji7às˜ç{ų:^ý‹Þ†—ü«ÃåÔgÏzÿ,ÔrïÏâ@Šš«¼âYžº]ϬáEÿÍ_ú•85–†=FOMî0u½¼g~ €;\Yï½lÛÊÓ[þ¼òôÔíz+ßìóÇÇwâ@,"bKã«Pˆ»(tõ1NŒ•_Nÿ­iþè§õ*õÆ êHÜèJˆÀ+–±úýaï•“êoé,n™Ë_~Vü£òaÄý–“[L"nØctUãU\ê§n׋ScOÿÉU^ˆ»(7ºb0ÉÒ V¿¿ú^9)¡îð–Îâ–¹üõàgÅ?*q¿åä¯÷�»‡{Jܰw‡ê.·ô’ňû-'·˜´;žþûÂóá°Ìryf 'n«#^{­Ã[:‹[æÌ~ù뙟fIÜoÉ]Ô<@ˆ‹š Kãѷ쀾åe·ë¡ÃGy+ë?§†¸?îÞÞÒYÜ2çYV~SiÖpâ~ËÉ]Ô¼FÜþº~Ê85Ä_YOÿÉU^.N�q$îÙ¶žâ¢&ÂÒó·õ~ÎŒ+Ô—Ý®õÆ3øç“qjˆ{e{×Ä bõ{E|¯œ”PwxKgqËœgYùM¥YÃê�Ô‘¸ß’»¨y�øÛGDƒX=L‡5ÍýI@ˆÀ¤mé!w¯?ªw€Úá宬Ž'>*q\]ABÝá-�Å-sbãÃq¿åä“bâ.º{˜±§4Å|ߘ«è™±§Ä=ì«ë§Q/\Yï}N‹^þz±_q\{¼÷Û,ZLâ@,&Å–žm«÷s¢ƒ¦˜ïç«è™±§Ä]t÷0cO‰{ØW×OB¾ pe½w�+«ãýüNˆÀ$°4ì1º …¸‹BwPãÄXùåôßšæ�~Z¯rPoÜ ŽÄ�®Ä�X¼fi«ß“þ^9)¡îð–Îâ–¹üõàgÅ?*‘¸ßrr €×‰{ØW×Ï‘_ÖqAàÊzèóÊÒÆÊ~Æ]â~Kî¢fq‹´Ô-J•85ÛÒ°Çèù«%î·ä.j"v‡ê^ziÖ5nþÒçË_/NË#q‹/Z”*q‹´Ô-J•¸a�ÑÕ:Tq©Ô7¨ãé¿ùKŸ‰[|Ñ¢T‰ö]èPÅ¥~Poܠާÿàçò‡›ã˜h«;¼¥³¸e.=؈kOýÐ5ÅLÜo9¹‹šIÄ�¸¨yÅÒ°ÇhXêE;@íðrðsùÃOn݇¾å#q¿%wQóÊî�ÿÉ­û´vtâ†=F#@‡©ëÁÏå?¨7nPGâ±ú=Ò{处ºü¬øÇÁíø£–[JÜoÉ]ÔT@ˆ‹šW¶¥a‘¸a�ÑU(Ä]ºƒú'ÆÊ/§ÿÖ4ôÓz•ƒzãu$nt%ÄàuKƒXýþà{处ºÃ[:‹[æò׃Ÿÿ¨ÜÄý–“[<@ܳmõ~v@/úÑOºÙéÐBÜEw›ã˜H4Aܳmõ~ÓÄ]t÷·9ŽˆDÄ=ì«ë§Å5½ pe½wÏêxŠk:u|'nØct qã ú–§¸¦Sǃzãu$¿Íq<&š¸P¶Ío)qƒX‘PwxKgqË\þzð³âõÆ êHÜoZ¼¾‰[¤¥nQªÄ=ÛVïç»5ïêð³âõÆ êHܰÇè*q‹/Z”�ÑóR/Ú¡º—žùxÙízó—>Ô7¨#q¿%wQó qãq†è[Þü¥ÏõÆ êHümŽã±A¬V\Ó©c‡ê^zæã)®éÔñ Þ¸A‰û-'wQó q϶Õû9L‡âYÞ0§ÿàçò‡7ì1º @ˆ‹šI–†=FÃR/Új‡—ƒŸË~rë>ô-‰û-¹‹šI»Ã[:‹[æò?¹u7ì1:L]ê�Ô‘¸A¬~�ô^9)¡î?+þqp;þ¨…¸ß’»¨©€85“¶¥%`C‡ñ¿8­1=ô¢÷ÍÉ85Äý–“»¨‰ î·YtQ3ÑaúoêzÙízèðQžÁ?Ÿ\å*qo¹zRBÝaÞ/~{ˆzÇ® ˆ±x}[ö]èàPÿƒzãu$nØct‰»(tõ1NŒ•_Nÿ­iþè·”¸Ñ•8 €,]ºÃp=1V~¹zg9üö÷µv<øY£¾ôBÜ0q£+q n·ô°¯®Ÿr•¹t¸²Þûü¥Ï—¿ž\~Îêò�¸a�ÑU(Äý6‹Žwñn_zú¯ºq¾ø%Äû±XZÆ øæù^qûÒÓ‘^M2‰«¼�~�?½’¢_”É¿�7Ù¨»÷gq –«ÌÅÒ2nÀç0Ï÷$¾ôùàçì ëç[åÒ õÎS—ïOÀç0Ïâ@,f´…85¯YzØW×Ï¢¦Ì®¬÷nÖð+žåÁŸÅpõwâ†=FW¡7ºâ¢æuKûêúYÔ”‰WÖ{7køå=û9âÇwâ†=FW¡7ºâ¢æKûêúYÔ”ˆWÖ{7køå¯g~šå;qã«Pˆ]‰qQS�¥‡}uý,jÊî pe½w³†_ñ,oÇÕå;qã«Pˆ]‰qQSfK˸ß+º†_ñ,þ,†«¿?ŸÃ<ˆ‹š2ai÷{E×ðË{ösÄ�÷ñvüQߟ€Ïaž ÄEM‰°´Œû½¢køå¯g~šåûð9Ì3�¸¨)ÛÒ2nÀç0Ï÷Š®  áW<ËÛñGuùþ|óL Ä¡l›_å•móƒzã­|êv½85Æñ–93öô~&ÄáγâãÁÏréú¹‡³úÐ}•õÆ êxú¯l›â²mni‘–ºE©÷�»ÍØSâþ¸{÷[Nî²m>AÜâ‹¥JÜèJˆË¶ù„¥Å-J•¸A¬–>:`ÿT/Šôõ*Fܘܽ_YÉNÜ%]=Ñ¡ü«úÉŸõw©/Ò«I&AÜ0‹®;lô«úýTï›ÃÿçŠ÷[r—mówxôò¼Tâ.éêI†o›_ù³þ?_”‰—¨Ä ³èš¸gÛêý¬b.kzÊšæ=~.øašóÊÓû©Þ7WÄ9/û�+뽯iþ¸òôÔíúNܰÇè*â¶ãî݆oü,—®Ÿ‹…8œÕ‡î«<¨7nPÇÓU\êÄ�¸ `i‘–ºE©·HKÝ1q‹´Ô-‰[¤¥îš¸çokxîS׃zãu<óñ ^¿·HKÝ1q`Kã'W9¹ó-½ŸOk¿¢^ˆÛŽ»w¾ñ ÞxqjŒc!W†š¸‹îþ©BMˆCU㫼*.õS·ëÅ©1ާÿä*/Ä�¸ª±¥G=d—•ìÞÒYÜ2§n׋ScÏg¡�Ä=[ïç î�»kâ~KîªÆ¯÷l[ Oô"ËËôâz+ì⇾eåÏ㑸a�ѱü…¸a�ÑS“;L]Ϭá—÷ìÄý]Õøõoé,n™3køå=û9âGâ†=FKÚAúpõûCžYß·ÌíüHܰÇèy¿x‡y¿øe¯žYÉ{ÔCvYÉNÜv¨§ÝAúYá4NÍ••ìÄ=ì«ë§ŒSCÜ"-u×ô‹û—Ë,—?ÞÊK£‰[|Ñqô¢ý Þ¸Aoåâr÷0cO;¨=�+«ãéŸN‡÷ÇÝ›¸!'wu@‡ò²Ä-sÉŽŸ8W&,-¾èš¸Å-‰[|Ñ1q‹/Z”*q£+q ÕWyU\ê7Vуzãu$ÄáγâãÁÏréú¹XˆÃY}(\åA½qƒ:žþ«âR'ÄánÄ©9�ß¶¤—ƒ…�Ž�§Æ8âêK¹{@ÖðÓ¬õÆ êXnå‹Sc‰{eìMÜo9¹«&:¼¥³¸e.N�q¼üõL:qKÀÞÄ=ê!{Ä©)V¼¢õÄ_Y‰{eìÑá¬>tþ2æŠnx9ñWÖrúOÆ©!îa_]?5NM‡zœø+k9ý§qjˆqUã K϶Õ𜈨 ƒ\ååâÔÇ++Ù‰qUãKÏßÖû9w0®P_v»^ü¨~ߜƩ!î•í]·]ëAÜó·õüÜŠ~ô[ùdœâ^ÙÞ5qÛµÄ-ÁÞ²CYÉ~V¸²’ý*o‚¸çoëý”ܾôÆÿâ–¹²’ý¬p Äýq·÷[rW5~…¸%`C‡ñ¿¸4ë'ãÔœIÇ î·œÜU�#ˆö]Å¥Þ¡ŠKýL:ÆÉ85§ÿä*/Äm×ztýâ¾¹¢^.ÿꉿ²–Ó§†¸‡}uý”qjˆÛ®õèÿ"^{�¸K=d�85¥ÃY}èÎòʶ9q ®˜°ô¨‡ì§Æ;ˆ¿²žþó,Sc‰{þ¶žŸÐ¡l›Ô7¨#q¯Œ=:¬ xžå‰¿²:w©‡ì§Æ;œÕ‡Î_¦ã_Äk¯·HKÝ¢T;”móƒzãu<øiVâ@\ {Xö=¹ÊÉu€ÚáåŠn½Ê›¿\f¹¼øñV^MÜwïoé,n™¸²:^þzè[>÷[rW¼BÜ£²GœšÒAü•õô_Ñ�zß\œãHÜó·5<ç"Õƒzãu¼•ˆ{eìÑaeÀ+ºQOü•Õ‘¸K=d�85¥ÃY}èüe:þE  ¼ö:q ®ØÃÒ°ÇèÉUN®ƒÀ•õà*oþr™åòâÇ[yi4q‹/Z”*qKÀÞ¤ü4+q‹´Ô-JµCÙ6?¨7nPǃŸf%î·œÜÕ¡°G�+ë¥Y׸85Æñ|úHÚª•Ϫ•øxWVÇ‹ÓòH\ðŠ¥Å-J•¸‹î�µCÙ6?øiVâFWâ@ÊUú–?—?üŠâÊÓ‹R]ZŸCý£âpçö¥?Ë¥ëçBÎêC㫼œÎ±ã}sPoÜ Žåз¼(I›ˆ¨ *q8«W�«<ñWÖrúoì¢õÆ+úÑåEŒJˆŠ¥‡}uý\qjˆ{¶­ŽŸ Ä�åÌãL¾�å=³|ÈBܳm5<'&ˆñÔä K϶ÕóóýÞ‰{e{×Ä-ˆû-'÷Ôä âöÕõsÅ©é þÊzúoe‘êÅ©1ŽÄ=ì«åÓ@œÈä»P`çûÆœÉg–Iܳm5<­˜8OMްôüm½Ÿsã õe·ëA½ñ þùVœâ^ÙÞ5qƒXýúDÝa™ð<øÙ樧ÿR î7è©É›¸A¬~ ®‰û-COMŽØÄ]ÒÕ 5q žš±- b5`‡·t·Ìy–÷Í�•�¸ß’{jòkÄ bõ{ô{‡·t·Ìy–÷Íå=;q¿%÷ÔäWˆ»è¶·ìà£øýèõ¡LXö�з¼ìv=¨7žÁ?ü\þpâ±ú}ò¼WNJ¨;¼¥³¸e.=k+$î·œÜ%‚¸WÆŽ;¬iþègm…·Ì­85·ú–�ç³ÐGâ–€÷[r#” â–`ﺃ�â'W��òÆ.zPo$Äeb[ö]èàPÿ³¶ÂÓðsùÉ{¶­ÞÏ÷{ïà¸‹ßØEê�Ô‘¸a�ÑUâžm«÷3.Ä {Œ®·츃t@Ÿ=ëÁO³÷Û,¡Ltè�å�ÿq F(–±úÝúß+'%ÔÞÒYÜ2?+þQ™÷[r#”ˆMÜ V¿[Ñ{处ºÃÎò–¹Æ[ùL>³|Hâ^ÙÞ’¸%`C‡ñ¿¸e®‚ûxÃK9¨7–+ÿÌFâ~ËÉ=59‚¸ßfÑS“_ïà£øé~ñsÄ�çö¥Ä�xjò+–öÕòi Ndô.Øù¾1gôÌò!‰{¶­†ç$â@<5y’¥çoëýœ;W¨/»]ê�gðÏ·âÔ÷Êö®‰Äê×'êËÜ€çÁÏ6G=ý—q¿AOMž´‰Äê⚸ß2ôÔäI›¸Kº:"¡&ÄS“'mKƒX Øá-�Å-sžå}sce'î·äžšüqÝö–|¿¢ý Þx+ŸÑ3ˇ$î•í-‰[6tÿ‹[æ^¹�7¼”ƒzcüõàgÅ?*íÄý–“¡¼BˆJĶôÊØq‡5Íý–¹§æö@ßòñ|úHܰcâ~Kn„BˆJDléÙ¶z?ãÒÁGñsÜÅRDÏzce'nØct€¸gÛêý|¿wâ†=FWˆ{¶­Þϸ7ì1º @ܰcâ~ËÉ�P"bâ~›E#â@ŒP^±4ì1º ÐÁ¡þõÆÓðsùÉ{þ¶žŸ»CÑ�~Po¼•oÅ©!ã+úìY~š•¸A¬ìð–Îâ–9؈kOýÐ5ÅLÜoÉ�P&÷üm½Ÿq¨^~š•¸A¬žˆ¨ Ã[:‹[æ’v÷[Nn„¹òÏl$î·œÜS“'÷Û,zjòë|?Ý/~Žøñܾ”8OM~ÍÒvܽ‰»ènq"·w(®çvõ¬—Ó9v<ý—ìø‰»ènq¢ŒŠë¡ÃGy9�cÇÓÉŽŸ¸‹Bw€áÏ?ž{z;ËC×3qà Ä�®Ä�xjòë–. Ý¡¸ž#~<3öôv–‡®)fâFWâ@<5¹HK˸ŸÃ<ßV/¨Oâ²yÅîý™@<5¹LXZÆ øæù~V­\Ñ5<ïÙ+vïÏâ@¾ð|•÷…ç“«¼œYÉñž--ÒRwMÜ"-uKâi©;&îa_-Ÿbâžm«áù�â†=FÇòÊ&îÙ¶z?«˜Ëš^(žå•5Í{7ì1º @ܳmõ~Æ¥Cñ,ÏÚ ‰ûm�P&6q F(¯lK¯lﺃ�â·¥mgðeu$î·Y4B™èÐ;Ëÿ â@ŒP&Yz¶­ÞÏa:¬RR¿±²Ÿq—·³ ÄÄ=ÛVÃÑqãcù q‹/:&nñEKâ_tMÜèJˆŒ_ü*Æ/~r•—3k8q †ñ‹[Z¤¥îš¸EZê–Ä-ÒRwLÜþZ> ÄÄ=ÛVÃŒâ†=FÇòâ_tLÜâ‹–Ä-¾èš¸Ñ•8éC¯ò¤W?¹ÊË™5œ8Kji‘–ºkâi©[·HKÝ1qûjù4÷l[ Oi 7ì1:–¿·ø¢câ_´$nñE×Ä�95¹ÈWÖ{¯Ö ꓸl^±wâ†=FW¡7ì1:L]oçRu<ƒ>ø¹üáÄ {Œ®tp¨ÿ-=ý?—?œ¸w^ýš©;ÌûÅ/Âñ`'n«ß#½WNJ¨;Xéf߹܎?*q¿%÷Ôä׉»¤«ß|¯œ î7è©ÉЧ ýöõŽ]÷[rOM&n«'è°ÇøÕ›xý$.›—‹²Ë­|‘^M2‰‹ˆ¶G%î· =5™¸‹î6â©É±¥‡}uýœš\&:\YïݬáyÏ^±{'nØct qãJô-½ˆŸ‹ßÊúoÅ©!îa_]? ĉL¾ ñØù®Ä�8Tq©_åUq©:|”§ÿä*/Ä�¸ŠKÝÒ"-u×Ä-ÒR·$n‘–ºcâöÕòi &îÙ¶žU4@ܰÇèXþBÜ⋎‰[|Ñ’¸Å]7ºâ0ï¿Ê›÷‹_öêÉU^άáÄ�xÞ/ni‘–ºkâi©[·HKÝ1qûjù4÷l[ ÏÙ nØct,!nñEÇÄ-¾hIÜâ‹®‰]‰q€¥^ô*j‡—ƒŸË~+‹T¯èÖ´bXêE--ÒRwLÜ"-uKâi©»&†¥°‡¥a�Ñ“«œ\‡ùËe–Ë‹oå¥ÑÄýq÷îP\/ÙñŸ{JÜâ‹®‰[|Ñ  ’¸Å7ºv‡dÇfìéÁF\^nçRu$ÄAnÝ·Ñ7q ^jKËÒV©Ô/N�q¼(úcǨÄ?U¨--KOtø©ŠTê�§Æ8^ƒ>X±cTâ@ÔízqjŒ#q 6cO--ãNè n×+ÛægÆž EKËjOtP·ëÅ©1Ž'þÊêH\V²[ZV{¢ƒº]/N�q¼²’�8�+«ãÅ©1ŽÄ�x˜±§––q't¸²:ž{J<âÔKËjOt(ºQOü•Õ‘xÄ©qKËjOtð,Oü•Õ‘x@VK˸:@½qƒ:ü4+q î�ÓŽxíõ‡�er‰"^{>ank <^W>rite <^P>rint <^T>ransmit <^C>ancel <^E>xit <^A>cknowledge <^R>emind Ready þÂ�å!BÍ•áÍ^ͦæ_þYÊ9ÍŸ7Éþ™ÍG7Éþ»:}=®2}!°ö>2}!�Í•7ÉþÂÅÍÇ7ÉþÂø:‚=ÂÚ2‚!âÃó:ö€Âë2‚!úÃó>2‚!ËÍ•7ÉþÂ!ú-j’¯½õ‚ØS¿ø§Yn|$qj,-KG¼öz�+«ãÅ©1ŽÄ�8¬,R½85Æ‘8¯85––¥'"*è°²HõâÔGâ@òr±›�~cÇ>®¬i^fy¹ñaëúùb7ýb_yJæosy;þ6¿Roù«7ûüñ‘8‡ê WyU\ê7éóA½qƒ:âpçYññàg¹tý\ˆÃY}è¾Êƒzãu<ýWÅ¥NˆuKï¼úS·\ÄýSíâ.º{•¸ª=Aܾˆ]‰qÀ®òз¼ùKŸê�Ô‘8‡;·/=øY.]? q8«ÝWyPoܠއ¾%qÍ•7ÉþÂ6> 2~> 2i!!Í•Í^2šþ Ò.õ>^ͦñÆ@ͦÍŸ7É7?É!kÍ•à Exit to CP/M - are you sure (Y or N)? Modem connection is unchanged Saving incoming text in memory Ignoring incoming text Printer toggled on Printer toggled off Prin þ8ƒ¥å"îŸj'÷�»gñQ‰û§ÚÄ틸w^ý€©‰]‰q˜—zÑ«<¨^nþÒç[Y¤zE·¦…8ÿy©µ·\ÄýSíâr÷\t+qÿT{‚¸}÷Ϋ&jâFWâ@æ¯^ô*j‡—›¿ôù~ª"Õ+º5-Ä�øÏ_½¨…¸å"îŸj'÷�»ç¢[‰û§ÚÄ틸w^�Q7ºâ¯qj,í‰Óž\‡¢õ¾9u»^œãHˆƒ'N·z9t3tåé�[×Ïå¶QÇ‹}åéÍßæ’8ìøÛüJ½å¯ÞìóÇGâ@ü�)®–öÄiOJ°jåºC©·üÕ›}þøter must be serial - use SETUP Enter host acknowledgement prompt: ÍhÚ¿ÍþÿÊÆÍ%·Â¸!€€~#þʸþ Ê£õÍe@ÊnñõÍA@ñͦþ £ÍpÊ�Í^þÊÍÍY@Ê‚ÍM@þ ‚> ͦÍpʱÍ^þÊÍ ÂaÃU!ÔÍ•É!éÍ•É!Í•É!Í•ÉFile send complete File name error or aborxߘâJ\tË¥=qÚߘâšèõIƇ=®è†âê –öÄiÝð’h¢ìéØê·¥ÄrÛ¨ãÍßæ§ÿ¾1Å•g°´'N»:C¢�3Tþê ÄóR/jiOœ6Î�èÏK½håLjç¯^ÔÒž8íy©Môç¯^´òÏK½(±Æ©±´'N{þêE}�SSùç¯^”xþ6ý–öÄikœâùÛ Î–öÄi�SC<[YÉ–öÄikœšÊ¢^ˆq{–Ä�ÕHV-ÒRwLÜ"-uKâi©»&†¥°‡¥a�Ñ“«œ\‡ùËe–Ë‹oå¥ÑÄýq÷îP\/ÙñŸ{JÜâ‹®‰[|Ñt File not found File send aborted õ:}·Â5ñÉñþÈþ ÒNþ ÊNþ ÊNþ ÊNÉå*€#"€*~w#"~õ:ּʳּ>ܦñáÉ No room left to save incoming text Writing memory to disk !sÍ•ñáá!Žå¯2{2|*€}´Ê3 ÍÍhÚ:ÍCÍa*€ë!€å!q@€~#ãw#ãz³Ê ÂíÍR1!° q@~+ëw+ë x±Â 1@@*"t"b"­"ä"Õ:]þ ÊcþBÊRþXÊWþUÊ\2šÃc>ÃL>ÃL¯2~2i¯2{2|2}2‚2‡!q@"~!"€! "ƒ"…!áÍ•ÍpʤÍ^þ ÜpÚ¤ö€2{:|·ò´æͦ¯2|ÍY@ÊÅÍM@Í+ö€2|:{·òÞÍe@ÊÞ:{æÍA@¯2{ÃŽ OSPLINK ver 7.0 (11/82) <^Yã!€ãÃëá6#  ÍRÍ4!q@"~!"€!AÍ•!°Í•¯2}É!fÍ•É!zꥃ Text memory buffer saved on disk Text buffer empty File name error or abort ~#·ÈͦÕ> ͦ> õÅÕåOÅÍÁ:‚·Ä¼áÑÁñÉ:‡<ÂË=*ƒ,"ƒ*…q,"…õÍ·Êì*ƒN,"ƒÍñ=õÂÔñ2‡É! Í^þ  Êö+ͦ> ͦ>ͦÃöþÊþÂ:Êñ>ͦ> ͦ>ͦÂ$Ãñͦwþ ÊXxþ€ÂT>ͦ>Ã#Ãö> ͦÉÅÕåÍáÑÁÉ!öÍ•Í^ͦæ_þÊôÖ@ÚhÊhþÒh2\!Í•Íñ!] 6 # ™! ] ~#þaÚ¶þ{Ò¶Ö þ Êêþ.ÊÉ ¨Ãôe~#þaÚÜþ{ÒÜÖ þ Êê ÂÎÃô¯2h2|7?É7É Which dråive? Filename? åÕÅ\ÍÁÑáÉåÕÅ\ÍÁÑáÉåÕÅ\ÍÁÑáÉåÕÅ\ÍÁÑáÉåÕÅ\ÍÁÑáÉåÕÅ\ÍÁÑáÉÅÕåÍ·áÑÁÉÖ@2\!Í•Íñ!] 6 # ™! ] ~#þaÚ¶þ{Ò¶Ö þ Êêþ.ÊÉ ¨Ãôe~#þaÚÜþ{ÒÜÖ þ Êê ÂÎÃô¯2h2|7?É7É Which dråive? Filename? åÕÅ\ÍÁÑáÉåÕÅ\ÍÁÑáÉåÕÅ\ÍÁÑáÉåÕÅ\ÍÁÑáÉåÕÅ\ÍÁÑáÉåÕÅ\ÍÁÑáÉÅÕåÍ·áÑÁÉÖ@2\!Í•Íñ!] 6 # ™! ] ~#þaÚ¶þ{Ò¶Ö þ Êêþ.ÊÉ ¨Ãôe~#þaÚÜþ{ÒÜÖ þ Êê ÂÎÃô¯2h2|7?É7É Which dråive? Filename? åÕÅ\ÍÁÑáÉåÕÅ\ÍÁÑáÉåÕÅ\ÍÁÑáÉåÕÅ\ÍÁÑáÉåÕÅ\ÍÁÑáÉåÕÅ\ÍÁÑáÉÅÕåÍ·áÑÁÉÖ@æóÓ2*ÓûÉóÓ:*ÓûæÉóÓ:*ÓûæÉóÓ:*ÓûæÉååå   OSPLNK70 version 7.0 dated 11/82 by Jim Woolley, FOG Disk Librarian OSPLINK is a CP/M transient program which allows the user to send/receive ASCII text files to/from a remote computer using a modem. Text data will be display BIOS console and printer I/O functions for improved communication speed and reliability. Text files may be transmitted from either disk drive to the host. The host computer's line acknowledgment prompt during file transmission (normally linefeed on the console and may be optionally printed on the CP/M list device. No error checking protocol (such as MODEM7) is accomodated. OSPLINK is intended primarily for the business user who wants a simple program for communication with a corporaed) may be dynamically defined. Text from the host may be captured in memory buffer (about 38K bytes, or over 20 continuous minutes at 300 baud), then saved on disk. The bell will sound when memory buffer is within 1k bytes of full. Incoming tte computer or with a service bureau such as The Source, CompuServe, or Dow Jones. ASCII text is generally the only transmission of interest in such cases. Files are usually small, and the impact of a lost bit during communication is not disastroext capture will be discontinued before the buffer overflows. All transmission is via 7-bit ASCII code; therefore, 8-bit data such as .COM files or MBASIC compressed .BAS files will not transmit properly. The fundamental test is: If use of theus. Besides, the host computer probably does not support a special protocol like MODEM7. OSPLINK is customized especially for the Osborne 1 portable business computer. One unique feature of this version is buffered printing on the CP/M list  CP/M TYPE command with the file of interest produces garbage on the screen, then the file may not be sent using OSPLINK. WordStar Document mode files may be transmitted; however, the result is similar to a Non-Document mode file. In other worddevice interfaced via the Osborne IEEE-488 or Centronics parallel port. Such printers may include Epson MX, NEC 8023, C. Itoh 8510, or Okidata Microline. Another feature is use of direct Osborne serial/modem port input/output (I/O) routines and s, the result may be simulated using PIP CON:=filename.typ[Z]. OSPLINK was derived from the public domain program PLINK originally written by L.E.Hughes (EDCAM) 7/77, with revisions by Keith Petersen (W8SDZ), Tom Jorgenson, Steve Vinokuruff (Van  c CBBS), Dennis Breckenridge (Burnaby CBBS), Bruce Ratoff (Iselin RCPM), and Ben Reagan (Lynnwood, WA). OSPLINK version 6.4 was submitted to the First Osborne Group (FOG) Disk Library by Byron McKay (OxGate, PicoNet, and FOG). That version useding control codes (commands) may be initiated from the keyboard during a session: Control-E Exit OSPLINK to CP/M "warm-boot". Control-T Transmit ASCII file to remote system. Asks for drive (A or B) and  direct Osborne serial/modem port I/O. The author was not identified. Significant additions and corrections were made by Jim Woolley, FOG Disk Librarian, to create version 7.0. In particular: 1. Added buffered printer output to the CP/M lfilename.typ. Control-C Aborts transmission of file to remote system. If used when asked for drive, aborts ^T or ^W. Control-Y Switches between saving and ignoring incoming ASCII data in Rist device configured on the Osborne parallel port. 2. Corrected text file transmit routine. 3. Added ability to change host acknowledge (trigger) character during session. 4. Added help reminder of control commands. 5AM buffer, for later transfer to disk. Control-W Writes RAM buffer to disk. Asks for drive and filename.typ. + + + + + Revisions by Jim Woolley, 11/82 Control-P Toggles list device (printer) on/off. Cleaned up read-console-string routine. 6. Cleaned up modem routines. Added runtime logic to move code above 4000h (shadow memory), thereby keeping size of .COM file to minimum. 7. Improved user interface. 8. Eliminated non-. A 256 character buffer is used to accomodate printer busy conditions. Printer interface must be on Osborne parallel (IEEE-488 or Centronics) port, which is assumed muchOsborne related code. An OSPLINK session is initiated by placing OSPLINK.COM in drive A. At the A> prompt, type OSPLINK followed by . Modem connection with the host computer may be made before or after starting OSPLINK. The follow faster than the modem. Control-A Permits reset of host computer's acknowledgment character. Default is linefeed. May be changed to, for example, > or * or ? or @ or # or &,    etc. Acknowledge prompt is only used during ^T file trasnmission. Control-R Displays reminder of commands. Following apply when prompted for filename (similar to keyboard entry at CP/M level): Control-H Bac Only the first character is scanned. Examples are > or * or ?. Control-A permits trigger character to be reset during a session. kspace when in command mode or <-- arrow (e.g. ^T or ^W). Control-U Aborts current line when in or Control-X command mode. + + + + + Note: all other control codes are passed to modem output and may be interpreted by the remote systeåm as various control functions. A "trigger" character is a response (acknowledgment) sent by the host following receipt of a line (carraige return character) indicating that it is ready for the next line. The "trigger" charcater is set to "lfå" (linefeed) by default. An optional trigger character may be passed via the command line; for example, OSPLINK B will set trigger to "bell" The following options are allowed on the command line: 1. B = bell 07h 2. X = xon å 11h 3. U = upload; no trigger check at all (this option may only be entered via command line) Any other ascii character on the command line will be converted to upper case and taken literally as the trigger. å  å 2òžo#ï9bOÈÔ•Þª<‰Éâ9žêЧB©$¿îV©WuQª{¿#Gä8ëªPIUÄ*<+“_¥©!«"OÞ{e•ú UŠzOYÕ½Bäå8SdW—‚£V1ÕÞÔÄoMݳr婪R¥T÷à9ÎÞPy°«(uejˆšƒxŽš¸ûʪÉ+÷J^‰y«ªê^é½*È •«¬TAŽ3E*®R‹šx*<ÕQèé­œ*ujbˆRÝ{•¢†(ôT Yy¢Sµ7$9rœ)²JÑÊÊ)®R‹šØû9ÎÞxñ`ù-bOuåTxª+ž ¥’¼÷*�ø¶àÁ’Vsä•*ªTW†¬ªû Þ#öTW\U9ΩÂS]ñT(•ä½ß·J_ÕOÅUêî«*WVsªªÞ¢&®‚(½W)jˆÂyª#Ç™"+E Qè©2žêЧB©$ïíÁ;rvÿ²äLISTT.ASMißÿ  oÿõÿòÿºÿ«ÿ¾ÿ­ÿ¶ÿ±ÿÄÿ³ÿ¼ÿ¬ÿ°ÿ! ÷ÿ"¯ÿ#$·ÿ%Óÿ»ÿüÿ&¹ÿ'²ÿ)(*¸ÿ,+-½ÿÏÿ.ªÿ/103254768šÿ§ÿ9Åÿ:Øÿ;‹ÿ¨ÿ<ÑÿÎÿ=žÿ©ÿ´ÿ>µÿ?ûÿ¦ÿ@ŒÿA�ÿB�ÿDCFEÍÿ–ÿ¥ÿGH‘ÿœ½!çÁzeyjâ·F^éM­®$¿J{«î^᪼׽juu%1dä« ÊzJH÷ï Ç™"�B别+ç©b…Ê© ®¬œªÊª½×½juu%1dªªÞRŽXµâäÈq¦HE•ê#VV©¢P9uê·B¦¸Jý-jâU©+§¨'DáªTC<WA¨»G޳7o÷`×[ ½§ÂS}Þ�*u5ñ[SUõ–r•&¯TQ¥º2Ä{Ï©ªzK¹.Þ‘ãì�"<ØõVCï©ðTŸªª·”ƒxÎâ©jU�Uš¼RE•êÊïA<§$&?OÈq¦HÔ••¼#Gä8ëö(Tí=5=U¯û*âuöÿIKJL“ÿÕÿÒÿÌÿñÿM®ÿNúÿ�ÿŠÿ™ÿóÿO’ÿP—ÿËÿ›ÿRQ˜ÿSÀÿœÿôÿùÿUTÖÿÔÿV†ÿW�ÿÈÿÝÿYXÇÿZÐÿÊÿˆÿ×ÿÆÿÂÿ\[Éÿðÿ^]‰ÿ_øÿâÿŽÿìÿa”ÿ`bíÿcáÿÛÿfeghÚÿdëÿàÿÿþîÿÁÿ‡ÿåÿ•ÿ¡ÿçÿêÿéÿq.‹sF”®÷×–<ù–RWVN5„º25DÍ©R÷|K½JñTxªO•:51D©î=+“'Ÿ•]¯·u½ÞFrDŽ350«…šxþûzO*�ï©X•’Ø» ¢œ Oõ¥J�ÚSµ÷T©SC”êÞ«"&¿î«ˆ§J�š‚gÝV«9UžêjOâyªD¡r*¨++§¦§êUŠÚ[á;rD޳nƒ<Ÿ´…JuåªÔ•ƒTÊsžª ÔžÄÞ«”BêîNq•šST9ÕÞJõäÞJÈûv*ÕÜ�ã «Ô•«ìÙ}„Ú“Ø{¯®——U“ß«ëEî}; •jNq•šST9o%d•¢†(DŽ3T°(Ž‚õ¹PpžêSTÍ)ÉSC¨‰ßZ1ù©+«¼½•Š­LMü 9"Çvy°=—ÖÒÍÊäÉ7¡„x¢P¹î=+«VL<ˆBåžãŒhœ§÷neˆ§÷zêÊ•½ëé»U‚܋Р9"ÇY· º,ÎQpÔÞ«š*ujbˆR}ª!Ô•©!jN•ºç[êUŠQXYejoˆ÷ªˆÕœº29rœu«Fª•Þ%ù© ®¬œ'ñÔôT­>UêÔÄ¥úûv*G\¥X¹JUyÏ[YYÙ=DI~ÞžÈqÖ-5d•òT]™üUNYå­æ žƒ¨©JYOYå­æ žSW*V*VT©^¯Š˜üUŽºreÕÞÉ‘ã¬[ˆz„š(Êyª5Ä{ÝW©ªR”º25„Zéý¾eÈ*å©®†ÞSª‘êªÊ•Õ\¥”•+Ï“9κU¥NM Qª{¢°ª·”#V­XQ¥:rœ•7¤Jâ½*Èû&<+§J�š¢T÷žÂ*¢(‘㌨ Z÷ž•U+&ö®çí©X9"^õ¼=+×å…ªžÒý;rDŽ3¤ò`;çÂa–�<ù&”ïA*ç­ªª{åUB*¥T¢¬R¤JQoä8#*žêSQE<ž•É¿oÂS±rªÔ©‰!Juï)¬"Š9ΈJªuïYYµbbïzÞžŠ•#âUÏÛS±r]^¨ê)!Ý¿#Gä¸dK¶dK¶dK¶dK¶dK¶dK¶dK¶dK¶dK¶dK¶dK¶dK¶dK¶dK¶dK¶dK¶dK¶dÈ9"Ï€lô¬ìz  ½úY7È9"Ï@’ÿÌJøÓ9Ì9"Gä8ñ|�¯›8²]úÏI}O–A GäçÒZ:Ò x– ˆ·Ï0jé:~ؑ綳çÒ¡ãÿ!Ÿsá@Ú x– 3Œâ¹úþúØù·í\X,•mM:·ç>¿!ÇwS‹‘ã�ã®Ð9OËpštÓýmWŸßrD†Å¬Ûï±3+ =!9¹W?QËpštÉû¥² ¾ºBi+àY¡WV‘§&~ëmä« ÊQ{“6BýBöÝ•’¶ž%¤J²*ÈTU½¥ÜH¡~!û‚î¢I[ÏUSC¶*ÈTU½¥ÜH¡~!û‚¦"ÍÊž%úL÷_œ=—þË‚´ê²/h/¤YYÀ³Ýj—Ö/äønj‘#rDŽ;rt®þ;ý_šÃusYœèݹŸžäþmtr§¿gùLß0øo¾lÿŠì‘ã:âËawpÅoõ>å´;ñ\ýÅô ƒÿr¿�_ìvŽôïÉú:—¸ŽÜé?rœûé™�ÃnûwÐþ‡Ý  ¿å@ïôd§Ã!ÍÊž%¼f^£ËáOËN8Ke[[1-ŸDdqn;¤­€g ¯™×(ÎmgOËáä@/u—FŽï¦9"Gä¸4»¿þ†Âå@¯¸ç"Gä4»‹Fšu[@g p'MCN³ûîÒ¬Ûž%¼êršÝN#ͺ-àY«~!§Ù}‘ÉH³n x–ðª_È©†Åi¤‘ x–ðª_õ«~Õ¯úU¿êWýª_õ«~!ϼð,áU¿êWýª_õ«~Õ¯úU¿êWýBžy-àY«~Õ¯úU¿êWýª_õ 9¾›Z䈑ãú‹è¹þRÙÖßVLË'9"÷ÿ¤YYÀ³Ýj—Ö.­]Z;_œ,Ãî,åÙÉþß*dø»í#Ç…ÿ‹_,§K”�¶§åp~[Ån‘ÔçÂîÏ¿�ÎA¼{€‘#²�i®‹´å@™•ýÌkÌt�íïôâ¹úO÷·½#Ï€£äYYÔý¿E× D'õ=Y†Étý¿EôàNšþ†‘#rœ/«ÿNÿ—f÷®ÿwC±þß"úmÅ=9¹ÓÿÁ�4ý 9"Ÿ|iË�2+û™×>åÌI}O–y|Y=+oíÏTFúŸ�þO÷·]}~CžÙ3¯Îá¶Ä‘ý&»Cž�$²YÂÉ€¾ÎmOëõ¬›xEÅ“é‡î¹ôGŽÈþÍ�4+õun úÐ3ŽâŸ=·]ÿŸßÄRÙv>tÏ¥?ò èëÜ&*ò3ë&ŠŠüL·z.­÷e:Ù–¦ÅîYøÐ=—þÈ3�ä?³Ò¿9PÍ8^×þ-×ßê¿47qFKYL÷·½#Gäˆ×ßP¸¿+tÎÓýmWŸßrDöo]¤M_ç6úÝÏ8Òÿ,|ètÛÕç7äÐOž•_¦3•ñ‡b2]šÝ_ósQ¸?™Îåð»Cž�$²YB“Çy™qÌ鿨—æ�Eÿ äÐOž•„f*ã�x®þ»éùmiv?\ÿw‡<Id³„“�ó2ã˜Ó%~Qï:·4‡,ú_ Ï€8—²3¯ñ†bâÈö—ÃàNšþ†<9Pfe1óoQ}ƒþƒ;iúÛœÔ÷d�g ÉfåÉÇQÍ8ætAžzZ†“Cç#G䈧û¯+–ʶÍ®˜¾­˜îo»úü&vC±œîi_üp&z ÝoM6äˆ|òq^H›£äYÙש†g¡ýoáúY Ï€_�g%\wuͺ‰¡ãÿM¦Óýmb�"Ãî#Gä“�#GÚr ÌÊ~æ5†O9sRß“eXK³Î!Gdÿæ@EÚô“g%a„™Êø´NôtÛ{wÈ3�¤g þÍ�ÜŒcNä©÷)ù Gdÿæà…´éëÜmù|ªÙ›mùüéþ¶«ÏoÈ3�ä?³Ò¿9tÍ8ÒÿìôáSÎtÛ;r|·9"Gä¸þ†Âý’?-‡“=Ýß&Þ‘#²s GÚô“g¥n3Œú¶–/ý×þé´€<Id³ÿæðväÐOž•iZÌTÆT6éÿò $‘Íü›ƒ"�g@?yVºt†Ñåð—þ_ Ï@Ù,Á¿9(€<úɳò\x¦2ž O÷·]}~Cž�$²Y‚s y’ügVú7‡JÌ8û ×ÿÈ3àËêYyk¦2ÒÿL÷·]}~CžýäYIèŽ0SuÿuÅRÙvCâ ÙÓ·Óýmây’Èf ¿5Ù ³7ñ·&Ûr:þ²X*;¡@ž�B·Y©g^£–�p¦ûÛ®>¿‰¹óÅAž�¤@6+O>ŽÜŒ£“ò|uÅ:Á}!VÈð‘#rDŽÉŒÈÈ9N_§;îž?ÿR²ßñw«ovvp'M›Èd9"ÇdFd䈑gÀQò¬,jq®®@žWÜY RxH5{éRìEûB Ï€èäYIÄÌk|š<_Ÿ´~È3àËêYÙ×w¦2ÒÿìôþÍaÏ¥?ò ˆþdºÓñ'~(&ž¯óuÓýmïÈñÝÔ"Gäˆ×ßP¸?‚n„éþ¶wäˆìßÞNÚôun»°lgÆzÃÙ‘;¿ù9Üó»Cž¿:ÏÊ[ë6ë&¶/Žl§ÿÓýmïÈ3�ä?³Ò¿9x™q¤ÿYø”3ÝßöŽß­DŽÈ9®¿¡p©lþÒÿ‹éþ¶wäˆìßAÚôun»°lgÆzÃÙ‘;¿ù9Üó»CžWÜY™6?-fÛ� EôŽ\*›¿ôÿ¢;ä�íÎÊ‹<I�lVú7‡®Çœ.ÈS/ÓA¶�‘gÀwV:ά›˜ƒnßÿáÌåð§e'äÈ¡ÍÊ‹<âÜYsg¥ÖÏLeG¶¿T¶)¨Ý¿mp'MSy(íÎÊ;óµû·MßÖ—Ó‰�#rDŽÓ×鎻çïôENÓß~ÐGŽþgâ¹úïVßì.ì>rDžÑ�gåGž_VÏJW_äˆ<¾¬ž•·î‘g@Àð¬,�gÀ—Õ³²¯/rDŽÈqiûâ¹úïVßì.ìþ‚„.‡zG¨'äÄ‘í/•mp'M›Èd9"Ï€è]±¥Ù}‘É�#rLfDFŽÈqòùaí{ì|q~±4»¿#×þ-vú¿âž»#ç²8È9&3"#Gäp”<+û:ÕðŒ£“úž,Ãdº4»?-ÃiÒ vRW Ï€£äét8È3 Ÿ<+ϧäH zVú7ºfobNWÈðë�N ë< ºçÒyüê<+oíRäÐ×¹ ÚòùÏìM|ZgáCçrøõ ¹ ÏŠ,w‘g Éf¥sPÄŒ£î¿®Ø¥oÈñÝJ䈑ãú ÷Gp)aº¿M¼#Gdÿæ isÅ�•N‡3ë&æ Û÷8;ýßù”3—ß–�p�g ‡6+/ò ˆsg¥Óá Ï€~ò¬<ŸrfÝDÿR²ßñ:>üÛd:—à Úò $=+ý›ƒ]³71§Kü¢^šCýNÿ÷\ú#Ï€_�gå­]Š<ú:·A[>ß ò èëYYÔ©†ÅiÈ3àWçY©ë.ªY71Èæ_·4»?÷}zäÐ×¹MÙ>rDžJ»³ò"Ï€8wV¦§yØE5ë6†ŽssRß“eX*�“Ðè¥Ùý…ëäçÎÊTÃâ4½P!Ï€ë]±¥Ù}‘É�g@ô®ØÒì¾ûyDïŠ-Íî?§!Ï€_�g¥®»ÞŽ<Ž’geQ§§ÍˆåóÃÒì>ò èëÜR Ï@mV^äH"›%üÖd ³71§ë„ »_ïüæçpÏGŽÈ9&3"#Gä¸+*vaÙ9kÒ¹=÷ù­ž�ƒ¨'Îm'zÏ¥½ô;rDŽÉŒÈÈ9"ÏÜ–CñÙ½‰9?œåtí{ì|q~�<Iþ3+ý›C׌cCáþ‚lþu.9¾[‰‘#rœ%\J˜�ç¶³»ð¡{.ý‘#²sP ‹4}�Û.,Û™q„ÞpväÎo~÷ü íyôunù™uEE~vCât«çÒz_¦“miZìÈg2Ýsé�<OGôÛ# 3•Qžþ7hâVÿéþ¶wäÐ×¹íœ ‹GÝ]±T¶¥²­IçöÜç7äÐ×¹-øp›usÐíû?œ�þï¹ô_èøðoÈ3 ¯s›®Ϭ›Øþ-wäđϮXâ?Ý!Ï€¾Îm9?äˆìß "  ÍQò¬ìëþßbö&ŠŠ�þ/|èžKÿõÿ9ÐÈ3 ¯s›8-ÐðìM,²xÜMÜ Åž–ÃAž}�ÛžK9ã(þY{.ý:>üò èëÜ>ô¡gÅ?ë<{n»þ?¿‰¥²í.|èžKäxä3+�©Œô?;ýŸîo{|uÅ NÊŠ_ìäHòŸYéߨf3dû£ÿ99л :ÝßöŽß­DŽÈ9®¿¡Ø¹ðtÛÕç7�‘ý›¤Í¯Î³òÖ„fÅÅîÄsõ_{ÜÕ2ݹ0ò èëÜmù|ªÙ›Xdñ¸›¸Š=-‡ƒ<®¸³RKç‡Ç4‡6+u…xº�g Ð”YÙ#Gäp”<+‹ºÿ· ç!Õ¬ÛØ2Ý_г"Óù,•mÏ¥ÿBLJCž¿:ÏJ]S!Gd]!*ÒæŠKÙŠ™×¨¥ÿÜöw râ´h1™.t|ø7�<Úf¥�<I�lVê ñx™qÌ銜¦¿ýpêyÖþ-—ørDž�BSfe1óuÿuŧœ™Îy M™•=ò ºÍJ�<I�lVê ñP!GäHòŸYyaÙNrDÖâñBÚùÌJxæ5¶/Žl§ÿkŸïÈ3ðÈgVÈ3ðÈgVöÈ3ÐþAŽï¦9"Gä8Ý]±#'þ_N×þbÐþžié:~@ž�ò¬Ty’Ù¬ôoDÌ8ætAžýêFD½Bîyúß&ž«?ò $ùϬôo]3ŽðÕ;rPÙ*�㻕È9"ÇY<î&NËpštÉuÛÕç7�‘ý›C%HÛÓýöèLe·úïôº¿íyüê<+oMP3Ž¢—Ð݉çë|ÝÔÇ%×ýmï "Ï€¾ÎmЖϧš½‰E�»‰o{ZyùÌÊG@‘gàyV’{õ3•QËPýÛÙ‘{Z'zº¿íyôunƒ¶|>ò $ùϬôo³n"ýϧœéþ¶wäønj‘#rDŽÉŒF޳-wäĹíìi9œè%þƒ‘u…8¤YùtD¿õ3¯QÜê¿ÓÿµO‹wäx:¢ß äx:¢ß`äp”<+ûú¹ôRͺ�·(Úb2�8·�è=—þ»A@CŽÈºBœ.Ò–eVö3¯1Í¡ØéÿZ¦ûãKqVd:äðeõ¬¼µ�<úɳ’0ò $²Y©+ÄéBž�BSfe�‘gÀQò¬,êþß‚œ‡T³ncËt|)ΊLç³T¶=—þ þ yüê<+uM…‘u…8T¤Í—²3¯QKÿ¹íï@åÄi9Ðb2]èøðoy´ÿÌJy’Ù¬Ôâ�›qÌ4"ÇY‘ãŒh5Ù99|1qn;ëû3¢‘ã,�Èq–Fä˜Ìh䈑ã´û·­â'Âò¶b2Ý ‰“§ÿmº¿M¼#Gä ËvH›_�g¥®Å¹§#�g@_ç6¸�yÚmo�g �‘gÀ¯Î³R×Z†f Òÿìôº¿íyôunƒ )�g@?yV4!9¹W?zÃÙ‘;¿ù9Üó»Cž�¤@6+/,Û™qü”|–Óy¦�K®‘#ò…e;]¤9Jž•}í±“ÏìM”§ÿ šÅßùÍÏáž�<ú:·‰ÓýÌÞÄ"‹ÇÝÄÝPìi9œ éÿ¹þÒÿ �‘/,Û¡"ÍQò¬ì銜¦¿ýpêyÖþ-—ørDž�BSfe1óuÿuŧœ™Îy M™•=ò ºÍJ�<I�lVê q¨�#ò ˆsg¥8·�Ç뜄Šõ·ÓòIÜ‘ÓÒ÷Ðy%Ïʾöíeö&žN ë<ëg°»¡b.‡�<ú:·‰Ó ÏÞÄ"‹ÇÝÄÝPìi9äÐ×¹íœ ‹GñÿrºŽÈ�^“Îí¹ÏoÈ3 ¯s[Ågö&æPüp–Óµï±óÅùrDÖâx!mŽ’ge_÷ÿ]È3 ¯s›8-Ð0ò èëÜö\:ÈGñÏrØsé¿Ðñáß�#²®‡i{ä3+k��|Zr/È3 ¯s›8-Ðy’ügV~J>³nbšCý/$9¾›Z䈑ãú ÷w_]!ž«ÿtÛû }v?œßr w—f÷®ÿ‘#2¬+ÄCÚ|Y=+o ÏTFúŸ=Rä“e˜ s9|ä�íÎÊ‹<I�lVºB<]³7ñSòYNwÏrÈ'_7-]ÇÈ3àWçYykÂ3ŽÅwÿü�þO÷·½#Ï@’ÿÌJXWˆÇ rD†u…xºH+t›•ðÌk½„N†?÷…˜–®ã‡uÄ/�g Ð”YÙϼÆâëö¯øƒ;iúÛœÔ÷d�gÀ¯Î³òÖ„�gÀ—Õ³Ò¯ïLelÿá™×ؾ8²ý�þ¯}Z¼#ÏÀ#ŸYY ÏÀ#ŸYÙ#Ï@û9¾›Z䈑£‡–"ÇÙ�ÈqæÕÉ[ìôEK³ûËáÈùß—-±ýÏîtÛ #rœýˆ=´9"YTt‘6×»bK³ûîä èžFž×»bK³ûÏiÈ3àËêYyk‡<¢ÏÊ�<¾¬ž•·î‘g@Àð¬,�g IÏŠ,*ÞŽ‘gÀQò¬ìëò ˆÞ[šÝNCŽÈET¤�¢{y\ïŠ-Íî»�gÀ—Õ³òÖyDž•y|Y=+o] Ï€€áYÙ#Ï@Rг²È¢‚r|ƒ<®wÅ–fqWÿ9Ù2�ÃuÈ3 ¯s´å£õìM„¯®ÏÕ§ÿÓí GdXWˆ‡Š4¿:ÏÊ[ÃbÖMl_ü³Óÿévvé›rD†u…x¼�¦¯s´å£õìM„¶|þŽœnyÚ?ÈñÝÔ"G䈧û¯+väÄÿËéÚ¿E⎜8òÙÓr89ÐKü9"ë ñ�fåÓýÖϼFq«ÿNÿ×>-Þ‘gàéˆ~+�gàéˆ~ƒ‘gÀQò¬ìëçÒߣ‡T³nã-Šö…˜L籓ÏÉ�Þsé¿ô7䈬+ÄÓEÚr ÌÊ~æ5¦9;ý_Ët|)ΊLçƒ<¾¬ž•·ö‘g@?yVF@ž�¤@÷oÑ�g ¸Å¬,�g€¢{yüê<+uM¥ˆY7Qü³Â¿»EѾÈ3 ¯s\H�<Ž’geQ§§!Ï€_�g¥®©^³nbû·˜ø;?œ|ò èëÜR Ï€lwV^äH d³²È¢Â rDžGɳ²¨ÜISäp½+¶4»ÿœ†<Å-fe�<¢wÅ–f÷ŸÓ�g Éfe‘Er|7µÈ9"YTx!m®wÅ–f÷ŸÓ�g@ô®ØÒì¾û9"YT�#mŽ’geQ¸“¦È3àWçY©k*E̺‰âŸþÝ-Šö…@ž}�ÛàB äp”<+ûú…<¢wÅ–f  ÷ŸÓ�#r‘EÅÛIE÷4ò ¸Þ[šÝ¿ECž�â³²@žŠîéÑŸÎYGŽP|ò ¸Þ[šÝw?Ì@¤ÿ™û�>ýdº4»�<¾¬ž•·vÈ3 Û�•=ò øÕyVÞúËtÆñ‡b2]šÝGž�F6SãXÈð—ÓzÂn(Fp„Áòô#ûM"GäpÅ¥lÅÌk¤ÿÙéÿtÛ;ò ¸Þ[šÝN›�wüg§ÿ{dç7±T¶…O9;ÙÿÈ3�eVöÈ3 zWlivÿ9 yÚ?ÈñÝÔ"Gäˆ÷)ù,§ëouôîž&a÷ýÉç‡èÝ¥Ù}äˆü[“�´ùÕyVêº37/¤-‡6+/ò ø²zVúõEžýäYI¨ÁîÇöo‘¸#'ÎmgáSΊLçÓò $²Y|¸‘›qÌé‚<õÒ²è�‘gÀ¯Î³Ò¯ /ÂŒ£<ýoÐ,þü[ñwú,&ÃßÙoy M™•ýÌk„ÊV1>åLK×ñò ºÍJ=óeøs_ˆ9Z"Ï@R ›•Á‡[׌#-WÈ�þ/|Ê™ 9"näH[ûgF41Í!‹þÈñÝÔ"G䈗ӹ§åpê�ïÜ ý=ó/%ûÏ¥ÿ W Gä ŸpH›£äYÙ×¾ ½ÌÞÄÓia�gw°»¡b.‡�<ú:·‰•ñi9œ‰Ór ‘g@_ç6¸�y’ügV~J>³nbû§ÓÂŽÜÓ¤ÿäˆü[“­‘æ(yVµÿ›•3ƒ\šÝ_û;_œ_,ù~k²Í4ò $ùϬü­É†‘k²Ò%ÏÊ¢ökab�K³ûƒwú{®ÿ—|¿5Ùæ y’ügVþÖdCŽÈ¿5Ù ¤9Jž•EíÿÖ 3ƒ4»BßV,ù~k²Í4ò $ùϬü­É†ßM-rDŽÈñSòY“�“ÃGŽÈŸ’iVRÚ�•wæ5Š^Bä~k²‰}J9"J>]¤-Éfåkæ5Êêß -ŸóÃàĉsÛ™L÷Ðþ�Ó­‘gÀQò¬ìk_ÐT³71Íáº=—þó�<ú:·‰Ó­‘gÀQò¬ìëþß‚ò èëÜ&N ´Fž�$ÿ™•Ÿ’Ϭ›x�[!Ã_�Päønj‘#rDŽ+²xÜMÜ Åž–ÃÙéÿžKÿ…Žÿ†‘ŸKIÚüê<+oMaÆQüò ø²zVÂõEžWÜY©¥óÃŒ#ýÏžöÅgZºŽ�gàyVvͼF-ýçqÏ_*ÛÜOÏüÛè¦àK㻩EŽÈ9Žþgwº¿íêóÛÒ&ý�þî¤éoÈ™þG÷¤M_ç¶"‹Š®Ç'ëŠÉ4ÝéÿtÛ;ò Ü�g¥i?SÅiù™LÓÝ�¸ç¶|‘g ýƒßM-rDŽÈq9?œ¥²-|èÜOÏüÛèêåtí{ì|q~�‘s(~8¤=Ño�€ÎTFq«ÿNÿ§ûÛÞ‘gÀQò¬ìkÿ6:äÐ×¹Mœègö&B[>§ÿ§å@#Ï¥ÝYy‘g@œ;+µt~˜ql_ü³Óÿié:~˜–�p�gà‘Ϭ|t¦2¶/Žl§ÿÓýmïÈ3ÐþAŽï¦9"Gä8úŸÝéþ¶«ÏÁiÙ yDž•ðÌkÿ/§kRús?=Ke›x®þy’ô,á¹t�3Ž9]â?»Ažþ·‰çê�‘gÀQò¬ìëþßÂË ÄçÒ¡ãÿMœ–�<Iþ3+Åi�†gob‘Åãnân(ö´N½4‡,ú_ Gäønj‘#rDŽ»¢B¬ú¶,;b;_œ,ƒ˜èè~W¬ÿ·È�®÷\ú/t|ø7QïýŽ‘ã,á\X,•mM:·ç>¿­}��/rD~Z¯I³R_ç¶öÜç·Ù›Ø9ÐkÒ¹=÷ù­;䈑ã,ኊ¥²í†Ä¥Ù¹éþ6ñ¾#w;´ÿÙûé™�rDžoK›ôwú¿ŠŸËÛ äˆœÃÓ9¤íéˆ~ë‘gàéˆ~ƒ‘gÀ¯Î³R×Z†�g@_ç6¸�ynȳR�´Ÿ©Œâ´üL¦énHÜs[>‰È3ðÈgVÂÈ3ðÈgVöÈ3 Ÿ<+½Ì¼F-ÃiÒ%×ëy’Èf –íPÍÞÄœ.ñ‹z´ÜùÍÏáž�<íäønj‘#rDŽÿì¹íúÿü&–ʶ»ð¡{.ý‘#røÐ‡&m”vgåEžqî¬t:œY7±}ñÏNÿw>åLËN8È3 Î�•Z:?Ì8¶/þÙéÿ´t?LËN8È3àŠ;+ŹíÌ8^×þ-÷´NtwÈ3 Û�•Gɳ²¯}AwéˆÐÎÒìÜt›xïyôun§Z#Ï€¾Îm9<�3ãHÿ³ŠŸËÛŠÝ  ¿!Ï€~ò¬$tf*£“Ðßæ²ŸÏdºWòJ Ï@’ž%<­×TÈ3 Ÿ<+ • xØ5ãØyžß沟ÏdºWòJ Ï@Rгòi½¦BžÑɳÒË«Ÿ©Œº¿�þ;rp·%.mÒß:gäˆ<Ž’ge_û·Ñ9 Ï€/«g%\_äð«ó¬¼5aäˆü´^w‘6_VÏJ¿¾3•QÙþî¡wäÈ�2+û™×>åŒÐ;œÔ÷d�g ÐmVÂ3¯Q†?÷…Ø‘£%ò $²y4Ù,AWˆ3ë&ætAžéþëŠAûúßÖþ-$y’ügVæPüpfo¢øg9ì†Ä¹Ÿžù·Ñ9LÜH³ÒQò¬ìëþß‚œ‡TÈ3àWçY©k*ä8#rðáÖEÚ|Y=+oíÏTFúŸ�þ¯úºÎGžýäYIa¦2f±|v'ž«wÈ3�D6K>ܨf?%ŸåtAäÐOž•"Ï0ŠÄ ûéþ¶÷î�g )�ÍÊàÃÍ rD>ܨH›_�gå­ /ÂŒ£<ýoÐ,þôunùìŽì7‰‘ƒYù´^wÍ8ætAž‘ý&ër7ÈÓÿ†‘#rœ%@o8 ²ù×-•Í_úÑrD~Z¯©H›£äYÙ×¾ ½ÌÞÄÓia�gwáCçrøÈ3 ¯s›8-Ðy%ÏʾöÝUÌ@Leó—þ_Ì4ò èëÜ&N ´FŽÈ3 ¯s[OçÌ8Òÿ¬â'Âò¶bº¿íynȳòíi?Suýwä:ÏóÛô9]ø¿øò è'ÏJB"a¦2¦9dÑÿb9¡ýC@ž�¤@6+ŸÖk/È3 Î�•ióÓ9¾[‰‘#rœ%\Q±T¶éNk?œõÿ9Ðo+îùÈùi½öBÚ%Ïʾö  íeö&žN ë<» :—ÃGž}�ÛÄi�ÖÈ3à(yVöµ/è®?±ÿ·È�~[qÏŸ/häÐ×¹Mœh�<~už•pýBžGɳ²¯û *äˆü´^“#mú:·åðtÎŒ#ýÏ*~",o+¦ûÛÞ‘g@?yVê6Øæ�Eÿ‹åt„öy’Èf Oëµ"�g@?yVÂy’Ù¬|Z¯ßŽ<ú:·ÁºB<È3�ä?³òi½&‡‘ŸÖë·“6_VÏJ¿¾È3�eVöÈ3�C›•0ò ø²zVÞFžýäYÙEEÎîÇ&¥¿T¶uQ‘›îoïËap'MCž�$=Kx{.ý‘g@_ç6qZ äHòŸYù)ù̺‰… 9¾›Z䈑ãäs² Ke[“Îí¹Ïo«´îo ¿XzC*]±Ûþ GäöÜç7Ò%ÏʾöÝÏ@¼¢b9]Gä@¯IçöÜç7äÐ×¹Mœh�<ú:·åðtò Ü�gåÛÓ~¦2êþúïÈužç·é+þrºðñ äÐOž•„DÂŒh�g )�ÍÊöܧkÆ1§ òÔû”|�#ò PÚ�•wæ5^}rõ=çß¶sa�<âÜYyÎ…ò 8Jž•}Ýÿ[tÍ@ü.û9Üó»*ærøyDïŠÍ¿9(@åarDnÏZ¯É!Ï€¾Îm°®ò èëÜë ñtÍÞÄB.ȳ뜄îîH™ÜÉ@Ïåð‘g ÉfåÓzM9"Gä8K¸¢b©lç¶“½çÒ9"?­×Š mŽ’ge_û‚ö2{O§…užÝ…�Ëá#Ï€¾Îmâ´@käp”<+ûÚtWŠ<ú:·‰Ó­‘gÀ¯Î³®_È3à(yVöõsé/<¤šuŹíä@ï¹ôŸ8²]ú#Gä§õZÒ¦¯s[Oç Ï€~ò¬Ô y’Èf Oëu%�g@?yVÂy’Ù¬|Z¯‰@ž}�Û`]!äHòŸYù´^+€‘ŸÖk"H›/«}ºH›£äYÙ×¾ ½ yôun§Z#Ï@û9¾›Z䈑ã2dûÓ­žKë¥i1Ùöeº{vä3™î†Ä…Ýsé�‘EE~H³R_ç6úÝÏ8Òÿ,‡§s¦ûÛÞ‘g@?yVê†<Id³Q‘ŸY71§Kü¢ž¨Èò è'ÏJ—"Ï@Ù,ATägÖMÌ鿨'*òƒ<úɳòËy’Èf M:7ë&æt‰_Ô;¿ù9Üó‘g@?yV¦i�<Id³Q‘ŸY71§Kü¢^¦ƒlyÚ?ÈñÝÔ"GäˆwÚ "ýmwâ´èÉtº¿M¼/mÒŸ ·ý»#wƒ<ýoÈYg¥__äÈ�2+{äÈ¡ÍJy|Y=+o #Ï€~ò¬ôâa×Le<}ûþ¥d¿ãï¹ô_èøðoy’ô,ái½Vyôunƒu…x¨�g@_ç6XWˆ§kö&rAž]ç$twGÊäNz.‡�<Iþ3+ŸÖk�#rD޳„+*–Ê6qäóä@ï¹ôGŽÈOëu%H›£äYÙ×¾ ½ÌÞÄÓia�gwáCçrøÈ3 ¯s›8-Ðy%ÏʾöÝE#Ï€¾Îmâ´@käð«ó¬„ëò 8Jž•}ý\ú{ô�jÖmôØÉçä@ï¹ôŸ8²]ú#Gä§õºëEš¾Îm9<�ƒ<Ù>ióeõ¬¼µ�<â\ÊV Ï@”YÙ#Ï@”YY Ï@¡Û¬ÔÈ3�Èf¥8²}ähÿ ÇwS‹‘#rÜÓr8»¡X‘ÅãnâîÄi9ГétÛÕç7�‘Åi�†Ióeõ¬¼µ�<²ÝYy‘g ‘ÍÔ82üåtd¿IäÐ×¹ ÚòùT³7±Èâq7q7{Zgº¿íyr ÌÊ~æ5†O9sRß“e@ž�$ÿ™•â´@ó7±�;ý_ø”3>r|7µÈ9"ÇA[>Wèœ'NË�Þ‘ÓíL—ˆ‘Åi�Ö¤ù²zVÞÚGžÙÈ3ÐÈ�g@_ç6hËGëÙ›XdúɳR7äH"›%<­×]TÈ3 Ÿ<+a�<I�lV>­×]]È3 ¯s¬+ă<Iþ3+ŸÖë®rD~Z¯»ºHóeõ¬ôë‹<9Pfe�<9´Y #Ï€/«gå­aäÐOž•^<ìš©Œ§oÿÏ¿”ìwü=—þ þM Ï@’ž%<­×]/äÐ×¹ Öâ¡Bž}�Û`]!ž®Ù›XÈyv�“ÐÝ)“;è¹>ò $ùϬ|Z¯»^ÈqF$ä§õº‹Š4Gɳ²¯}A{™½‰§ÓÂ:Ïî‡Îåð‘g@_ç6qZ 5ò ´�㻩EŽÈ9®IçÖyö\úïÈ�ßüîñ¸›8\"ò ä@™•=ò $ùϬ§ZÏÞÄB.|Ê™îo{GŽï¦9"G丧åpv'NË�žL§ûÛ®>¿ äˆ,N ôCš/«gå­ý™ÊHÿ³Óÿéþ¶wä�íÎÊ‹<�l¦Æ±�á/§#ûM"Ï€¾ÎmЖÏfoâÓr8ÓýmïÈ3�eVöÈ3�ä?³Rœègö&r§ÿ Ÿr&ÃGŽï¦9"Gä¸[bçß¶sa±T¶5éÜžûü†‘Ϲ° míŸÑDYý´ås~´ÿa‘½&�ÛsŸß�gÀQò¬ìk��|ò èëÜ&N 4<{ÅÅ\º#—æ�E¿Óÿ=ùȹIçH³ÒwVŠsÛ™qìoõôOœÛÎ/ö´NôîÙu®;ä�íÎÊ‹<Id³„ Ÿpfsº O½ó�´¿gþ¥d¿ãï¹ôô äð«ó¬¼µnÈ3 ¯s´åóŸÙ›(~(�#r“Îu‘6WÜYét8È3�C›•yĹ³Òép�g@?yVžO9È3�ô¬lÒ9ª!Ï€_�gå­]Š<ú:·A[>ÿ™½‰â‡y’ügV6é\׌#-WÈÝ OÿÛ:ád·B†�‘›tŽŠ´éëÜvÎ…ÅŒ£î¿®X*ÛοmçÂy%ÏʾöØÉgö&¦9\7—Ã;riYô—þÈ3àWçYykBrò èëÜmù|/È3àŠ;+Ϲp˜q¤ÿYèøðo“éÄsõƒÿ�þv.,�gÀ—Õ³®/rD>碋4¿:ÏÊ[F@ž}�Û -Ÿïy Ýf%Œ<I�lVžsaÑ…‘gÀ¯Î³òÖ„ääÐ×¹ ÚòùTÈ3à(yVöµÇN> yôun§FžJ»³ò"Ï€8wVjéü0ãØ¾øg§ÿÓÒuü0-;áü†<íäønj7䈑ã -Ÿ?Ýßö¾#§ÛAŽÈЖϧ"M?yVŠ<Ã(ƒî§ûÛÞ»Cž�F6Sã˜Ó%~Q/ÓA¶�<úɳ  R7äH"›%@[>ßËìM,ä‚<Ó²ò è'ÏJ—"Ï@Ù,Úòù^fob!ä™–�p�gàéˆ~{t¦2Š[ýwú?Ýßö¾êë:y\qg¥–Î3Ž9èöýÎNÿ§¥ëøaZvÂAž�Ú¬¼È3 Î�•Z:? ÏÀ#ŸYùèLel_ÙþNÿ§ûÛÞW}]ç#Ç‘�#2´åó½�¦¯s´åó5rDŽÈqЖϟîo{ß‘{Zç7äˆ mùü.Òôunƒ¶|þƒ<íäønj‘#rDŽƒ¶|þ®Ð9O÷·]}~Û‘Óí GdhËçkÒ|Y=+}g*£8²ý�þO÷·½åï|ÿyGžWÜY)ÎmgƱý[$îÈY<î&.ñŸî�g@¶;+/ò ø²zVÞúÏTÆöÅ‘íïôº¿íyrD†¶|´&íéˆ~ë‘gàéˆ~+�gàéˆ~ƒ‘gàéˆ~{y|Y=+}‘gÀ¯Î³R×ZÙ93"EhËçïÈ�þO·3-ƒ�î#Ï€¾Împ!ò <ò™•�€"ÏÀ#ŸY #ÏÀ#ŸYY ÏÀ#ŸYÙ#Ï@û9¾›Z䈑ã -Ÿ¿+tÎÓýmWŸßväž–Ãù 9"C[>ÿ!M?yVŠ<Ã(ƒî§ûÛÞ»Cž�F6Sã˜Ó%~Q/ÓA¶�<¾¬ž•¿¾3ÃDAN€  Page  1  1  == No file •ñéœéþ¶÷å0Â'¬}úy\qg¥8·�Çöo‘¸#'Îmg‰ÿt‡<²ÝYy‘g ‘ÍÔ8~J>Ëé‚GîôOËáü†<ú:·Á…È3ðÈgVÂÈ3ðÈgVöÈ3ÐþAŽï¦9"Gä(Ä,�ˆ×L‘ÑÏ!ûâ\]±â?§GŽÈp'Mg ßcgVVš¨=ì¢RÀƒ·uQ‘¬‹Šˆ-ÒÿL†Ý°_ýÞK䈑g@6zVÂ�4EŽÈâ\]AÚ 1Kx!Gd¸“¦¿‘VˆY 9¾›Z䈑gà‡by that name on this disk == $== No file requested == $== No "*" or "?" please == $ LISTT Pgm v1.0 10/10/82 Do you want tear tabs to use roll paper? (Y/N): Number of spaces to augment left margin? (0-9): Ignore FF (Y/N): Heading/date is: StbVŠsÛA&:¬$úò èëÜmù|/È3àŠ;+Ϲp˜q¤ÿYèøðo“éÄsõƒÿ�þv.,�gÀ—Õ³®/rD>碋4¿:ÏÊ[F@ž}�Û -Ÿïy Ýf%Œ<I�lVžsaÑ…‘gÀ¯Î³òÖ„ääÐ×¹ ÚòVöÈ3ÐþAŽï¦9"Gä(Ä,�ˆ×L‘ÑÏ!ûâ\]±â?§GŽÈp'Mg ßcgVVš¨=ì¢RÀƒ·uQ‘¬‹Šˆ-ÒÿL†Ý°_ýÞK䈑g@6zVÂ�4EŽÈâ\]AÚ 1Kx!Gd¸“¦¿‘VˆY 9¾›Z䈑gà‡art at page : Quit at page : HIGHEST PAGE IS: á"š1€!VÍ}!€~·Ê†!ƒ~þ:Êf!€#?#~·Êyþ ÊyÃi!\ #~þ?Ê’ Â~€:Ög2¯“o|šg"!\ Íj¯222*" "Í<ÊŒÍÍÀÍRÃÙÍœþÊþ ÚäͺÃÑþ Êûþ Êþ Ê!þ Ê[ÃkÍz> åÃÞÍz:·ÂÑ:<2þ6Ò8> ÍíÃ:<2þ6Ò8> ÍÐÍ¢ÃÑÍzÍRõÍ‘ÍÑͲÍ¢!3ÍsÍÍÀñÃÙ> ͺ:æÂ[ÃÑõ>^ͺñÆ@ͺÃÈ ÍÐÍþÂz!ã͇!ëÍ}Øx·Â¤> î+> wÍÞ>ÍÞÉåÕÅ!ß#~þ ¸+ѾÂÓ+ ÂÅËÁÑáÉåÕÅ!Ù#~þ ÂÝ+Ѿ + Âê2 !7ÍsÍ‘  Í¢!?ÍsÍÁÑáÉ* ë*}“|šÚg!"ë* {•zœÒY* ëÍÍ·ÂS€*"Ã%*" €Í!"ë* ë* }´>È*#"É ÍØÃ~õÃ~9Ã~¯ÃÍæÉõ!:͇¯2ñÉåÅÍæÁáþÊ‘ɯ22: ·Ì×â!Ñ~þ ÊáþÂã>0 ͺ:G:Æ�Ú!ÊÃsÍ1!¦Í}ͯþ1ÚCþ:ÒCÖ0!:G> w#Â=!7Í}!ØÍ}ͯæ_þYÂ\2!7Í}!ëÍ}!Mͯþ Ê’þ€ÍšÃmw#xþ}ÚmͬͤÃm!7Í}!þÍ}!Ùͯþ ÊÈþ¶Íšãw#xþÚ£ͬͤã!7Í}!Í}!ßͯþ ÊþþÂìÍšÃÙw#xþÚÙͬͤÃÙ!7he program: A>LISTT HELLO.ASM A menu then appears asking several questions: Do you want tear tabs to use roll paper? (Y/N): (1) Number of spaces to augment left margin? (0/9): (2) Í}É: ·Êò> Íí:<2þ6Ò%> ÍíÃÍ‘!ã͇Ø!tÍ}ͯæ_þYÂK¯2‘!?"L!7Í}ÉÍœþ ÊRþ ÊRþÊþ ÊRÉ~# ÂjÉ~·Èͺ#Ãs~·ÈÍÞ#Ã}~·ÈÍí#ÇÉ!îÍs>-ÍÐ:G> ÍС>-ͺ!îÍs¯2ÉþÈþ ÊÐþ ÊÐõ:<2ñÍ×ÍíÉ_: ·{ÈåÕÅõ_ÍñÁÑáÉþÈ_: ·ÈåÅÍÁáÉ Ignore FF (Y/N): (3) Heading/date is: (4) Start at page : (5) Quit at page : (6) å 1) A "Y" gives tear tabs for roll paper. Any other reply (including RET) defaults to fanfold with no tear tabs. 2) Ability to include 0-9 spaces at the left margin for those printers without adjustable margins. A RET de- LISTT -- File utility program for printers -- 10/10/82 Irvin M. Hoff Los Altos Hills, CA 94022 "LISTT" is a printer utility program that lists any requested file on your printer. (The CR faults to no spaces (normal left margin). 3) Responds to form feeds unless a 'Y' is typed. Outputs an appropriate number of line feeds enabling printers without form feed to paginate correctly. 4) Heading desired (s  uch as current date, etc.) Up to 124 characters may be used. The name of the file plus cur- rent page number near the right margin are both automatic. A RET defaults to file name and page number. 5) Asks for starting p c) Can abort at any time with CTL-C, but finishes the cur- rent line first. d) Can change the location of the Page number for use with printers of 72 columns, 80 columns, 132 columns, etc. (Byte at location 0103, via Dage (defaults to page 1). 6) Asks for page to stop at (defaults to end of file). NOTE: There are two options which may be user-set. These are locations 0103 and 0104. They may be set with "DDT", "SID" or by edDT.) e) Can change the spacing between the tear tabs for use with printers of 72 columns, 80 columns, 132 columns, etc. (Byte at location 0104, via DDT.) f) Can indent up to 9 spaces to effectively provide an ad- justiting and reassembling: 1) PAGCOL -- sets the column the Page number starts at. Some printers have 72 columns total, some 80, some 132, etc. able left margin (many printers do not permit changing the margin). g) Can start on any page desired, saving paper (and time!) if you only wish to reproduce certain portions of a file. h) Can stop at any page desired, allowin(Byte 0103) 2) TTABN -- Sets the space between tear tabs for roll paper. Some printers have 72 columns, some 80 columns, etc. (Byte 0104) Thus yog the operator to do other things when only part of the file is needed. i) Shows the total number of pages in the file if you intion- ally (or otherwise) ask for a page number that is too high for the file. j) If a hu can compensate for various printers and also print any portion of the file you wish. FEATURES: a) Shows on the CRT what is being printed. b) Optional fanfold or roll paper. Adds tear tabs if roll paper is selected. eading/date is longer than normal spacing for the page number, it is automatically moved further along. Up to 124 characters may be used for the heading/date. k) An option on the menu allows you to ignore form feed chars. I  t automatically paginates without form feeds in the text. l) Works equally well on printers without form feed since it inserts the correct number of line feeds to paginate. m) Visually prints control characters imbedded in the text å other than CR, LF, form feed or tab. You can thus dis- cover any unknown characters that normally do not print. COMMENT: Line numbers can be added to any ASCII file with PIP.COM and the [N] option: å A>PIP HELLO1.ASM=HELLO.ASM[N] Form feeds can be removed with PIP.COM and the [F] option. You can edit CTL-L (form feed char.) into the file to force a new page wherever desired. * * * * * * * * * * *å * * * * * * * * * * * * * * * * * * * * * * * * *  CTL-L (form feed char.) into the file to force a new page wherever desired. * * * * * * * * * * * DISK.DOC -FOG/UTL.015 First Osborne Group (FOG) Utility Disk This disk contains OSPATCH1 from Mechanized Knowledge of Toronto, Ontario, Canada. They have given FOG written permission to distribåute the program on a non-commercial basis. Its function is to patch the Osborne 1 COPY.COM utility for more reliable disk formatting and copying. Place COPY.COM in drive A and OSPATCH1.COM in drive B. At the A> prompt, type B:OSPATCH1 T  he program is self-prompting. Also, see OSPATCH.DOC. The OSPATCH files were submitted by Jim Crowell of FOG. The remaining files on this disk were submitted by Byron McKay of FOG. Originally version 6.5 of OSPLINK was submitted. This was aa file on the CP/M list device with a versatile selection of options. It zeroes out the parity bit (like PIP option Z), so WordStar Document mode files will be legible. Place LISTT.COM in drive A. At the A> prompt, type LISTT d:filename.ty version of PLINK similar to PLNK0124 found on -FOG/UTL.013, except it used modem input/output routines specific for the Osborne 1. This looked promising as a smart terminal emulator which would be simple to use for ASCII text communication. ThÃÿ Hit Space: ÍKÃK : k Used: /k Not used: k ë*% ÍÔ DMÃf : remain on 1 !erefore, I decided to smooth out some rough spots, clean up the user interface, and improve documentation. I added the ability to simultaneously print on the CP/M list device (for example, an Epson printer) interfaced thru the Osborne 1 parallel9" !Ñ ùÍJÍú> Í# µÊ->! Í. Ò*ͪÍe> Í# µÊ<Í×Í * ùÉv ÍK É ÍK  ÍK É!B r+s+p+qA ? Í Úp*A É*? É:]þ$ÂŽ Ål]ÍQ !]6 !E 6!C 6 :C Í Ú*C &l ~2D þU¼:E 2 :D þSÂÊ:E 2:D þFÂØ:E 2:D þVÂæ:E 2:D þPÂô:E 2 :D ÖNÆÿŸ2E ! (IEEE-488 or Centronics) port; this is a feature which is not available (to my knowledge) on any of the other modem/terminal routines presently in the FOG library. Since the changes were extensive, I named this version 7.0. To use, first estabC 4Ø:Ò!4Ã:Ò!5É( Í µÖŸ! ¦ÒI3Í= ÿÍ: [Í= ÉÍt:\þÊa:\=_Í: :]þ Ât Å?]Í\ : Òƒ! 6?ÃŽÿ Í: 2  Å ]ÍQ  Å?\Í\ ÅÍ: DM, ÍQ !Ñ "= *3 ##)ë*= "; */ &#Íì "! *3 #"#  !! Íò "% >ÿ!1 Í. Ÿ2' É\Ílish communication with your modem. If necessary, use OSFIG from -FOG/UTL.001 to setup the modem/serial interface. Place OSPLNK70.COM in drive A. At the A> prompt, type OSPLNK70 See OSPLNK70.DOC for further information. LISTT will print : 2 : þÿÊ©: 懇‡‡‡Æ€o&"* ~þåÊ›*# +"# ** DMÍY Ò›** DMÍ  å*; Áq#p* " . å** #DM*; ëá -Âe**  å*; Ñw* #" )ë*= å*; ëás#r*; "; Í: 2 ÃÉ!S 6!"V * "n >!S ¾Òd*S &T ) ^#Vë"K O!l ^#Vë"M :S =2S M K Í Òa*K "G *  M "I ë*K Íö )ë*= ^#Vë"O I G Í ÚÇ*G )ë*= N#F*O ëÍ? þÿÂJ*G #"G Ã(*I )ë*= ^#V*O DMÍ? þÿÂm*I +"I ÃJI G Í ÚÄ*G )ë*= ^#Vë"Q *I )ë*= å*G )ë*= ãN#Fáq#p*I )ë*= å*Q ëás#r*G #"G *I +"I ÃK I Í G M åÍ ÑÍ Ò!M G Í Ò:S <2S O!T å*G Ͱ¬Í= ÉÉ. æg æ”ÂS -ÂA É>ÿØ>É!  ~þ?Êl W æº>À#Â^ :·À /æÉ!:' ·Â—  ·Ê‘ #‹ É W ²Ê¢ #™ Éi`N#F�oˆgÉDM!>õ)ë—)ë�‘o|˜gÒÎ ñ=¼ ÉDM!>)ë)ëÒã =ÂÛ É^#Vë) Âì É^#Vë|·g}o Âöëás#r*S &l ) å*M ëás#r*I "M Ã^I K Í ÒX:S <2S O!T å*K ëás#r*S &l ) å*I ëás#r*G "K ÃíûÉ!"„ "†  † Í Ò#*† #"† )ë*= å*„ #"„ )ë*= ãN#Fáq#p † Í Ÿõ*„ )ë*= å*† ) ë*= ^#VáN#FÍ? ÖÖŸÁH¡Ò *† #"† )ë*= ^#Vë";  *; ^#Vë"ˆ *„ )ë*=  É_{•ozœgÉO{‘oz˜gÉi`N#F‘o˜gÉo&•oœgÉ_{–_z#žWëÉà þÈÅOÍK ÁÃ= YÃáã -ÂS Éáã{-Â_ É!¨ s+p+q*¦ å« ͼ 2ª <2© :¨ !© ¾Ú—  ÍK !© 4Ã� !© 6:ª =!© ¾Ú» *© &« NÍK !© 4œ Éáã>õ3ÊÕ Íá Æ0õ3}´ÂÄ Z;ñÂ× {ÉÅ ¯)¹Úî ‘#Âæ ÁÉÇÇÇÇÇÇÇÇÇÇÇÇ^#Vë"; *; ˆ ͪ  å*; Áq#pÃ�Ãn*„ " É!‹ p+q*Š )ë*= ^#Vë"; !Œ 6> !Œ ¾Úi*Œ &ë*; >¦OÍK :Œ <2Œ ÂE:/ÒÖ *; ^#V*% ÍÔ DMÍf kÍK :ÒÖ *; NÍf ÍE*; ~þ€Ú»WÍK þÍE *; ~þ€ÚÓSÍK ÃÖÍEÉ Í= !— 6:!— ¾Ú':/Ò ÇÇÇÇÇÇÇÇÇÇÇÇÇÇÇÇÇÇÇÇÇÇÇÇÇÇÇÇÇÇÇÇÇÇÇÇÇÇÇÇÇÇÇÇÇÇÇÇÇÇÇÇÇÇÇÇÇÇÇÇÇÇÇÇÇÇÇÇÇÇÇÇÇÇÇÇÇÇÇÇÇÇÇÇÇÇÇÇÇÇÇÇÇÇÇÇÇÇÇÇÇÇÇÇÇÇÇÇÇÇÇÇÇÇÇÇÇÇÇÇÇÇÇÇÇÇÇÇÇÇÇÇÇÇÇÇÇÇÇÇÇÇÇÇÇÇÇÇÇÇÇÇÇÇÇÇÇÇÇÇÇÇÇÇÇÇÇÇÇÇÇÇÇÇÇÇÇÇÇÇÇÇÇÇÇÇÇÇÇÇÇÇÇÇÇÇÇÇÇÇÇÇÇÇÇÇÇÇÇÇÇÇÇÇÇÇÇÇÇÇÇÇÇÇÇÇÇÇÇÇÇÇÇÇÇÇÇÇÇÇÇÇÇÇÇÇÇÇ:Ò –Í= !:— ¾Ò‰Í= :— <2— Ââ* "• !"‘ >!• Í. Ò *• ë*&͵ ë"( *• ë*&͵ >Í µÊj*( #"( *DM*( ëÍV"( !"� ( � Í ÒúÍK!"� }2— :— <2— O:¹Úð*� ë*� å*‘ Á "“  “ Í Úâ>!— ¾ÒÓÀÍ= *“ DMÍ**• +"• *( ë*� "� Ø*� #"� Ã*&ëJúß©a‘ÄòOfõo�F”+òƒxË¿h/×iÄ´[ý�cíÁŒ›±Þ¿KJv*tÊ/×iDI %ýÝ©a¿¨w½9Ö f×íxàÃÊIuK�ïxàË_|Ó;‹qÇÏöf*( ÍÔ ë*‘ "‘ Í Ã3É*1 #"ž "  "¢ *5 "œ >œ Í# µÊR :œ ÒB *ž +"ž !œ Íò ë+s#rÃ( !¤ 6Í: "š *š ~2¥ *¢ #"˜ *˜ +"˜ >Í µÊ¶ :¥ 2¥ Ò’ *  +"  :¤ <2¤ O>¹Ò³ !¤ 6*š #"š *š ~2¥ Ãp ̓Í: ÆAOÍK �Í= *ž Ͱ�Í= * Í·›Í= * Ͱ�Í= *# Í·›Í= *  ¹[””P²SAª[zì¥qê×iÄôÍÖÓèÖ»=­vÚZê¿áiNßô¾„¹Ž’� ù÷ÑæÒc�F¼åß;\¹5ú㤄’¢ÅIŽÞk e×íxàÃBܹ�€Í—Íú+E %;zãâWÿczóϱ±sxÇ϶>³ëöÑæþ�õšõWjïÜ‚’� �F¼r”PBI¿�JXl�h‰·'[‹1*Ó«WÜ¿³9Ö JJ(é�vjØ€æòO¢YÈEJJ(iÂN %Áé“£Õ«p�ýní¯*»î•”PBI£‰¯¤Dð©I”4¿SÃ"ÆÂ7[š(­ӈrë¬Èì  º®ýUe×½’Jš¼SÃ"ÆÂ7›Ìê?^¬—&Špë4bé-çíí Ü%Û}˜áv®—”ìT(²öW•]WnR9}‹_ÔÖb¬wÜ4Q„ Ï®[z¬ÉkíîŒ1ª„£d§BOÓ/=VÔÚ_UvÝ´›æÎ?=ø­þG¹�4â­2­§éWÜäâµv)Ù©pÆi¢·ž¦_z,ÄÚ_Uv]I %;Šº•±n�F¼cÇME¸’J(‘„ÊXøJJŸú3J¤{\Á³9Ö ¦oö„pë>/”]·÷Ò8rèðÒcNŸp¯~‰jú(a= FOO.COM in alphabetical order. In the latest version, both file name and file type are recognized. SWEEP B:FOO.C********************************************************************** SWEEP is a utility program for maintaining file directories, and transferring files between drives and user areas under CP/M2.2. The latest version will not run under CP/M1.4. InOM 8 will log in user area 8. Selecting user area * will cause all user areas to be "swept" at once. NEW: If the starting file contains wild card symbols (* or ?), then it will be treated as a directory wild card specification. Only those filesvoking SWEEP and moving about the directory. ---------------------------------------------- When SWEEP is invoked, you will see a menu of 'commands' and the first entry in the directory. You will also be given the total space (in k) occupied by the fi in the selected user area will be handled. At any time, you can recover the menu of functions by typing a question mark (?). Simply typing 'x' exits the program. Note that all characters can be entered in upper or lower case. Functions thatles and the remaining space on the disk. SWEEP also reports the current user area in the prompt, or an asterisk if you have selected all user areas. Typing 'space' or 'return' moves you forward in the directory, typing B (or b) moves you backward.  act on one file. _______________________________ C This allows you to copy the file to the drive and user area of your choice. You will be prompted for the drive and user area. Just enter 'b3', say, to transfer the file to drive B: user  The directory is circular, so typing space at the end of the directory moves you to the beginning. (A line is skipped.) When you first invoke SWEEP, you can specify a drive and a starting place in the directory. The user area can be specified as a sarea 3. If you omit the user area, the current user area of the file is used. Any file of the same name in the target area is first erased, an exception being when you are transferring to the current drive and user area. In the latter   case, the transferred file is copied with its named changed by putting a $ in the last letter of the file type. If an existing file in the target area that must be erased is marked read-only (R/O), then the copy is simply not made. You wit it erased. If the file is read-only (R/O), then you will be given a second chance to back out. R The current file is renamed to the name you specify. Lower case will be converted to upper case, but other 'illegal' characters are ll be told. You may use the delete function to delete the file, and then retry the copy. As an option, sweep will perform a CRC verification of the copy. When you are prompted for the drive and user, add a 'v' or 'V' to request  not trapped. It is quite possible to give names to files that CP/M won't recognize. (You can also change them back again later, however, so no harm is done.) Responding with "*" to the prompt will put you in the batch wildcard renaminverification. Thus specifying: b3 v will copy the file to drive b:, user area 3, with verification. See below for a description of the verification method. BUG: CP/M does not allow two files of the same name to be open on the sameg mode. See below. If the file is read-only, you will be asked if you still want it renamed. It will no longer be read-only after renaming. V The current file is displayed at the terminal. ^S will stop the display until any other  drive, even in different user areas. Thus, when transferring between user areas on the same drive, the target file is first named with the $ convention and then renamed. This can result in an extra file being erased. If there is tokey is typed. Otherwise, any keypress will abort. T Tag a file for later transfer. (See below.) After being tagged, the file will be marked with an asterisk,'*'. The total of all tagged files is displayed both in units they occupy on o little room on the target drive, the transfer is aborted and the directory entry is erased. Any previous file of the same name in the target area is also erased.(Sorry.) D The current file is deleted. You will be asked if you really wanthe current disk and in units they would occupy on a single-density disk with a 1k block size. U Undo the effect of T (and take away the '*' or '#'). Commands that act on many files. -------------------------------- M Mass transfer of al  l tagged files to a selected drive and user area. This is the main reason for the program. If the target drive fills, the operation is aborted, with the untransferred files remaining tagged. This function invokes the copy function used bybe asked whether you want to erase the tagged files or the untagged files. Any answer other than T or t means untagged. You will then be asked whether you want to be prompted or not. If you ask to be prompted, you will be asked for a C, so everything said above applies here. If any key is typed while files are being transferred, the transfer is aborted after the current file. The remaining files remain tagged. After transferring a tagged file, the tag is chang Y or N on each file. Otherwise, the untagged files will be deleted. Be very careful with this one. You can wipe out an entire directory very quickly. You can abort this operation by responding A to the prompt, or typing any ed to '#' so you can tell what has been sent. This is for display only, the file is otherwise considered untagged, but see the A command. The '#' can be removed with the U command, if desired. If no user area is specified, or if "*key in the unprompted mode (if you are quick enough). The TAGGED option is useful after a mass transfer. Use the A command to retag all the transferred files, then use the E command to erase them. The UNTAGGED option is useful if " is specified, the current user area of the file is used. You may request verification on mass transfers just as in the single file copy. Just follow the drive and user specification with a space and a 'v' or 'V'. A Retags all you want to clean up a disk or user area, but retain a few key files. Just tag the files you want to retain and use the E command to erase the others. R * Batch rename. You will be prompted for an "Old name:" and a "New name:". In each the files currently marked with '#'. This allows you to repeat the transfers on another disk. Useful when the same batch of files must be sent to several disks. E The E command erases all untagged files or all tagged files. You will case you may give any "ambiguous file name" in response. The logged-in directory, as currently displayed, is searched for matches with "Old name", and the files are renamed, if possible, by the formula specified in "New name". A '?' in "New   name" means keep that character of the current file name, an * is equivalent to filling out the remainder of the field (filename or filetype) with "?"'s. Any other character replaces the corresponding character in the current file name. Whonly PLI source files. S Calculates space remaining on a drive. X Exit to CP/M. ? Redisplay menu of commands. Tags. ----- * Marks a tagged file. See M and E commands. # Marks a previously tagged file that has been tranen the substitutions are done, embedded spaces are removed. You will be asked to approve each substitution before it is actually made. Old name: SWEEP???.* New name: TEST ???.* These responses would result in SWEEP.COM being rsferred by the M command. It is logically untagged, and the # can be removed with the U command if it bothers you. Files marked with '#' can be retagged with the A command. Unmarked files are untagged. Remarks. -------- Whenevenamed TEST.COM, and SWEEP30.PLI being renamed TEST30.PLI. Other commands. --------------- B Move to previous file. Moves to last file if you are currently on the first file. L Login new drive and user area. If the user area is ommer a drive is asked for (and on start-up), the disk system is reset. This is to prevent a disk from being 'read only' under CP/M, and to allow you to repeat operations on fresh disks (e.g., finish a mass transfer after a disk fills by inserting a seconitted, the current user area is used. You can specify a starting place in the directory. Responding 'b3 foo' will put you in user area 3 of drive B:, beginning at the first file >= FOO in alphabetical order. Selecting "*" for user ared disk). It also means that you should be free to switch density and/or number of sides of a disk in a particular drive. This, however, depends on how well your BIOS is written.It does mean, however that a system disk must be present in drive A:. a, logs in all user areas at once. If the starting file is a wild card specification, it is instead used to select the files to be used. Thus: l New drive (and user area): b1:*.PLI will log you into drive b, user area 1, and select  There is no logical upper limit to directory size, nor to the size of a file that may be transferred. The directory size is limited by available memory, though, as certain information must be kept on each entry. You should be able to use well over 15  00 entries in a 64k system. Figure 20 bytes per entry starting at 26k and running up to within 1k, or so,of the BDOS. (Note: later versions of SWEEP are about 2k larger.) The sort is done with quicksort, so it will not deteriorate too badly with laesult in no action being taken. Exceptions are specifying a drive you do not have (see patch points below) or an illegal file name under the R command. It is legal to include the colon when specifying a drive and user area. Thus responding "B3:" rge directories. (On the order of n*log(n).) The rest of the log-on stuff is either fixed - displaying the menu - or linear in the directory size - reading the directory and compressing it after sorting. On my system, a directory of about 99 entries tis equivalent to just "B3", and "B3:FOO.COM" is the same as "B3 FOO.COM". Copy verification is done by computing a CRC checksum while writing the file. SWEEP then reads the copied file back computing it's checksum. The two checksum's are compared anakes 3.5 seconds to come up. Of this, about 1.1 seconds is used in the sort with the rest split about evenly between the operations before the sort and after the sort. (Disk access is not figured here, since my system uses the Intersystems CACHE BIOS wd you are told if they don't match. The algorithm used is based on the standard CRC-CCITT polynomial: x^16 + x^12 + x^5 + 1. The algorithm is similar to the one in D. Barker's corrections to CRCK, and it is now table driven. It is coded in 8080 assemith track buffering. Once the directory is read, it doesn't need to be read again. Using the standard system raises the total time to 4.9 seconds, the difference being the physical disk access.) File transfers make use of as much memory as possible tbler for speed, and is found in the file SWEEPIO.ASM. The second crc computation is done with a buffer that is offset 3 bytes from the original buffer. This is to help catch memory errors. Any CRC errors which appear but are not flagged as bad disko buffer data. The V command buffers only 4k (or what's available, if 4k is too much for either your file or your RAM).This allows large files to be sampled quickly, without reading in the full file. Invalid or empty answers to any prompt will r sectors are probably due to bad memory. The CRC verification takes approximately 2.5 times as long as the straight copy. Patch points. ------------- Two parameters should be set for your system. If you do not have a PL/I compiler, they can be   set with DDT. number_of_drives should be set to the number of drives in your system. This will eliminate SELECT errors. Patch the byte at location 107H. It is currently set to 4. max_user Set this if you want a number other than 16 (0å-15). Patch the byte at location 10CH. In addition, you may want to patch: CRC_polynomial If you prefer a different choice of polynomial, patch the bytes at locations 356CH and 3570H. If you know enough to have a preference, I assuAltos Hills, CA 94022 3 April 1982 P.S. I did not write this program, nor do I have the source code. However I did modify it extensively to suit my needs and then called it DIRR. me you know what values to put in. choice of polynomial, patch the bytes at locations 356CH and 3570H. If you know enough to have a preference, I assuååååå!  åÍ<Â%!©]Í6.#eÍ6$Ã[*ë!€"Í\Í·Ê%*€ÿ6"}Ö©|ÞÚR¯2222!"*""¨æþ „ÍÃuþÊþ| ÕÑþÊ> ÍÃÊO:þ�yʯþ;Ê7þ^ÊÓþ$̧2þ ÂÊO:·yÊuÍÎÍ,ÃuÍsþ:Êþ?Êþ|Ê þ$Êþ.ÊŽþ#ʉþ<Ê þ>Ê·ùå>…ù>„ù> ÍÎ> ÍÎ2Ãuå!å¯Íá> 2ÍFá> Ã~å!¾wá¹O:þ€yʹ:þ�yʹ#å!:=2þÊ…þ Â`w:·Êá> ÍÎ> Ã~á> Ã~áÃ>ƒÃ¹>€å!¾Â™¯wá>€Ã¹>�2å!¾áÊu22ù>‚2å!¾áÊu22ùõÕå*ëá}»Âà|ºÊjÑñw+É*###>E¾À#>X¾À#>ÿ¾À-Í‚*åù:É6ÿ+}þ Â+6ÿ+6X+6E+:w+:w+6ÃãéÁÍ‚ærÍ‚æ–Í‚æÕÍ‚* ͈ÃÿDÍ‚Ãÿ¢Í‚¶Í‚ÃÿXÍ‚æþ|Èþ`Ú„þ{Ò(Ö þ@Ò¡þ:Èþ?Èþ$Èþ.Èþ#Èþ<Èþ>ÈÃ(Ö@ÐÃ(þ$Èþ^Èþ|Èþ1Ú:þ:Ò:Ö1‡2 Õå!3þÒè_^#Vá{²Êè·Êäw+ÃÙÑ#~Éå!: þÒ1_^#Vá{²Ê1åÃÙþ Èw#ÂÉå*#"!6!6kb"á"Éþ Øæ€À:þ€È:þ�È:<2Éë" ëþ Êzþ ÊMs#r#:¸ÚCþ Êzþ Âg¯ÃM¯> É ÍÉ~þ Èþ“> #å_ÍáÈÿÍ‚ÉÍ‚*ÍàÍŸ*å~#þÊÅþ ¹6áÍÎÃÿ~#·È_åÍÛáÃÎÃåÕÅöÿÿÿ Úé ë|µÄà{Æ0_Í!9"1¨>É2íÍ‚Íå*åÁÅ*ú÷}‘_|˜WÕ!¨x±Ê< ~#Ã/ÑÁåbkx±Êp : <2 æÂZã~#ã2 : 2 Òl…ŒÃAÑ+å"#å�Õ:€o&6 !1å¯ÍáÑ> 2ÍF:€·Âï!">2!¨"ÍŸ*#"Íà:ÍÛ ÍÛ Í€G*·ÊHëÍë6 #6 #"òe!ͯ2|\ÁÑáÉ~#ÂÉÕ_x±{ÑÈ w#ÃSUB error line # $ (Ex Already Present)$ Text buffer empty$ Input/EX Buffer Overlap$ No parameter or default parameter$ Parameter$ File filename.typ$ not there$ Control character$ Too many arguments - $EX 1.2 08-11-82$ "   $ÿ¨¨`pppppppppppppppppppppppppppppppp á"Bá"D"F~þƒÂ+"D2\1B*|Ög."H*"JL Í·*Jë!o Í·1B*D~þÿÊ›*J"*B"å€Í! Íâ:O*HéÃAÃOÃ{ÃG!9"]!BÍO·Ê­ÍRþÊ�þ¨ÍRæ*D#w"D>*]ùÉ:Y2ZÍSþ…Êïþ„ÊþƒÊ5þ€Ê)þ�ÊAþ‚ÊAþ Â߯2Z> O:[þ�y¨ÍUÃ…*F"D¯2[2Y2\Ã…ÍOÊÍRþÊ�þ ÊÍUÃOÍG ÍGí!Y¾Â1¯wí!\¾Â=¯wí2[í:Z·Ày2XÃU*D~+å"DþÿÀ*D#"Dͪ*Bë*{•zœÂog"ÍÀ!Íâ*]ùÃR1B!÷ÍâäÍÀ!ÍâͪÃ*Jë!L Í·É~#·É:Xþ!Øþ0ÚÞþ:ØþAÚÞþ[ØþaÚÞþ{Ø2,É:\þƒÈåá~þ$È#åOÍUÃé >>>Ex Aborted<<< $ (Ex Active)$ (Ex Completed) >$ÃLÃOÃRÃUå ‰  ’ I I�„!$!Bˆ ’H’I!H„‘ ’A$ ‰ I"I$’„ ˆIá"Bá"D"F~þƒÂ+"D2\1B*|Ög."H*"J ‰  ’ I I�„!$!Bˆ ’H’I!H„‘ ’A$ ‰ I"I$’„ ˆIá"Bá"D"F~þƒÂ+"D2\1B*|Ög."H*"Jååå#   Patches for the Osborne I The OSPATCHx programs are a series of programs for installing patches in software for the Osborne I computer. Each OSPATCHx program installs a specific patch. For any one patch changes may be made to ms)®  ZCPÒ  provideó thoså samå functions¬  anä  more¡  Seå � fileó  ZCPR.DOà anä OZCPR.DOà oî youò locaì CP/Í Bulletiî  Boarä � System. OSPATCH2 is expected to be releasved Oct 82. OZCPR is by Micheal M. Rubenstein. Apr 1982 ZCPR is by the CCP-Groore than one program and/or to the system. OSPATCH is a general purpose patching program to handle the transfer of patches to proprietary software under CP/M, including to the system itself. The program performs extensive validation bup: Richard Conn, Ron Fowler, Keith Peterson and Frank Wancho. OSPATCH2, excluding OZCPR, and OSPATCH1 are copyright, 1982 Mechanized Knowledge Corporation. efore and after installing a patch. The program also validates itself, to ensure it has not become corrupted, and that credit is given where due. OSPATCH1 installs corrections to COPY.COM, to correct the way that program formats diskås. This patch will somewhat improve the reliability of disk I/O on the Osborne I. The Copy function of the program is enhanched to show status (reading, formatting and writing). OSPATCH1 runs only on an Osborne. Patches by FranVPatch program, (c) 1982, Mechanized Knowledge corp P.O. Box 298, Sta V, Toronto, Ont. *dùåýáÍÍ}Press 'Y' to proceed any other key to cancel ÍØþY§Í ʧ¯22ÍNÍÕÊ(Í} Do you want to patch anyway? Press 'P' to proceed, any other key to abs Van Duinen, Aug 1982. OSPATCH2 installs OZCPR, the ZCPR adaptation for the Osborne I computer. ZCPÒ ió á replacemenô foò thå CCÐ (Consolå Commanä Processor© foò � CP/M®  CCÐ handleó sucè functionó aó TYPE¬ ERÁ (thå non-transienô � commandort ÍØþP§Í} OK ... good luck!!! ͸:2· pýåáíK*Í*9}» |º([Í}Consistency error, patched version not as expected Patched version not saved >Í<ÃÓ Í‚à!;�í°ÍÃÓ ÍƒPatching !"0*3N#Fx±(##^#V#åýåáëá~#åfoí°*0ÍL0íS0á#ÖýåÑ*0·í$  Rë*,ÍL0@Í}Consistency error patches extend beyond specified length ë"*É̓Loading ÍRýåá\ëÍ€ ëÍ\ · >€…o0$ëìýåÑ·íR"*É̓Saving ÍR**}|ŒG\ýåáëÍ€ ëÍb <(>€…o0$ëìëÍD ÉÍ} +++ Error on write ÃÓ !Ýå!÷éå*7åz!� ·íRåÁ!†ÿÍáÍLáÄÈ̓VÑÉCÕ€ÿÍ@·íRÑBÍ.#CÕ€Í7·íRÑBÍ%+Éw©#ÍIøÉw©+ÍIøÉ©wÍIøÉ©wÍIøÉõÅ:=GÍVûÁñÉ!d~#·È_Íú ö=&-g    G='-g    G=(-g  G=)-g    G=*-g    G=-)erifying *5N#FÍ-ʤ0>Í<çN#Fx±Ê¤Í-ó#^#V#åýåáÍá~#»~# º(ZåN#F#~#foÍ xº y»(Í} is not as expected ö"Í} has already been patched ö7õ!24ñá####É**í[.ÍL(M8$Í}Program longer than expected #Í}Program shorter than expected !24:2Mechanized PO Box 298=.)Knowledge Station "V"=/)Corp. Toronto, Ont.Press any key to continueå!"?áÉõÅåO*?yO}o|g0|îg}î!o ê"?áÁñÉõ¯Í‘ Í‘ í[?ñÉå*?|µáÈ>ÿÉÃë ÅÃË ÅÃË ÅÃË ÅÃË ÅÃË ÅÃË Ã ÅÃË ·É͈ ~Í‘ # x± öÍ· ÉÍþÊÓ þ (þ(*ÍCþÊÓ þ (áþ(ÝÍß ÉÅ4õ x± ûñ= óÁÉ|’À}“É!\Õ$í°ÑÍ> <À̓ +++ Cannot open ÃÓ ãÍ ãÉãÍ ãÍ’Í} É!~þ (ͼ!~þ È.Íß ͼÉÍ}SystemÉ~þ È#_Íß õÉ###~·ÌÓ Ë?#ÍóóÍ÷ ·(ú_õÍú Í} ñþaØþ{Ðæ_É_Ãß Ã÷ 4¡ÃÅÃË ÅÃË Å ÃË Õ~#·(_Íß õÑÉÅ ÃË Å ÃË Å ÃÜ Å ÃË ÅÃË ÅÃË ÅÃË ÅÃË ÅÃË ÅÃË ÅÃË ÅÃË ÅÃË ÅÃË ÅÃÜ ÅÃË ÅÃË ÅÃÜ ÅÃË ÅÃÜ ÅÃË ÅÃÜ Å ÃË Å!ÃË Å"ÃË Å#ÃË Å$ÃË ÅÕÿÅÕåÝåýåÍýáÝááÑÁÉÕÝåýåÍýáÝáÑÁÉõyþ (þ(þ( þ(þ(éÇÑÓÝÏAáåßÏåÃÛAÑÃçAÅËËÝAéÃÛáËåËÉAïÓéÑYÇÃÝÝßéAÇßÝéÓÝëËBGoodbyeÅÕís;å!ãåÍ„þ('Í÷·(úþ(þ (þ( Oáã|µ(ñÚáy~· Ò#í{;ÑÁÉ>Íó:GÍ£·ÈþÈþ ÈÍ÷þÈí>ÉÅåÕK : Íó> ÍóñáÁÉþ ~þ #>ñÆñÕ:A·È¯2A! ".! ",!G "3!‘ "5!.}"9!<  í°öÿÉCOPY COMkÐ, <— K3š �Ùå !fi/l¾msy|VŠ “þ.} <O�nŸ5 !O©gt O©gƒ ¾¶p_ ¼ ¶p#Î Vä‹ �ÙÓÿW à �*â ­¬ �s� /J¡© K ÑãõÒáÕÅëíRë{ÍÍW͈ͬÃ-ÍW͈ͬÃ0Å Å> -!ð¾ ©ÍËÍÕÍ÷ · 4Áx±( àÁ"y·Ê‚�úþ ( > üÃx!o ~#úAÅÃ4ÁÁõͲñÉ!�å*~·(#ù>*�Ox…ùƒ_0Aá~#úÉ> -> õ>ÿ2=ñÍËÍÕõ>(2=ñÉ!ð4ÍßÉ!1ù0ÍÉBÍ%+CÕ€Í7·íRÑBÍ.#CÕ€ÿÍ@·íR3¾€ÉH ÞXRõ kÐG Åm Sector image constantProgram version noProgram bannerTrack image building routineFormat routineCopy routineSector numbering routineSector count fieldCopy read routineCopy format routineCopy write routineTrack messa%  geTrack no display routineOverall program(ÿüÿþ÷ ÿûÿåå÷PN öü2N õþ÷N õûÿåå÷6N Formatt$ Read$ Writ$3.1=",OSBORNE DISK UTILITY Rev 3.1=#(Patches by Mechanized Knowledge Corp.Õ!Ð:/þ (!ôÍÕÍíS-Í specific sequence of characters at the begining of every track, the track header, followed by another specific sequence around each of the sectors (10 on the OC 1). That track header gives the hardware time (every disk revolution) to synchronize with the ëÑÕå·íRåÑ"0:/GýåÁÑáí°Áë·íB"@ÉF#~°#È+x·~#(óüí!:/G:ïw##q øÉÍ1!Í1É!2 ÍF*@ÉÍ,Í, !) ÍF! ÍFÍPing Track $'Patches for COPY.COMThis program patches the Osborne I COPY program, version 3.0, primarily to correct the way it clock and data bits from that header, before sectors of real data arive underneath the read/write head. Version 3.0 of COPY, the Osborne disk formatting program for ROM revision 1.3, only puts out the 10 sector formats, not the track header. (It is actuaformats disks. The program to be patched must exist on the current disk under the name COPY.COM. It is validated to be the correct version of the program. Discrepancies are identified. The updated version replaces the original one. Press any key for fully amazing the disks can be read at all!) The formatting program for ROM revision 1.2 (FORMAT version 1.1), did put out that track header.Ìéíéôáôéïîó While this fix will somewhat improve the reliability of disk I/O, it will not solve all problems. The Irther information, the up-arrow key to go back to a previous pageÂáãëçòïõîä There are several reasons for the somewhat unreliable disk I/O on the Osborne I. One of them is the incorrect way that COPY formats disks. The WD1793 floppy disk controller chip/O routines in the ROM part of the OSBORNE BIOS are at best excedingly convoluted, at worst just plain wrong! Unfortunately, those routines cannot be quite as easily patched as this COPY program. The Copy function of the program is changed to show the acti used in the OC 1 computer has certain specific requirements for the way control information is recorded on each track. This is not the actual sector data, but rather the special sequences of characters that surround those sectors. The hardware requires aon it is performing on the current track (Reading, formatting or writing). Now at least when COPY stops on an error (sorry, they will still occur), it shows at least which disk the problem relates to, i.e. source (reading) or destination.Éîóôòõãôéïîó ïî õ&  óå The changes to COPY.COM should be transparent, except for fewer '... Bad Sector ...' errors and the Reading, Formatting and Writing messages. To change existing disks, merely use the Copy function of COPY to transfer the entire disk content to a blabe patched both before and after patching. The patching program also validates itself. Courtesy of Mechanized Knowledge Corporation, Programming & patches by Frans Van Duinen 18 August 1982, Copyright Mechanized Knowledge Corp� /J¡© K3¾€ÉH nk diskette, and back to the original disk again. The Copy function formats each track before writing to it, and will use the same new format. COPY will, of course, still be able to read either format. Éîôåòîáìó ïî ôèå ðáôãèåó Unlike the original prog¢4B «Aÿro yþ6‰zS_ÍFè~Í*¨!~æÇþ¨#^+ëÍF*¨!~GæÀþ€Â¿xæþÂkÃìþ@ÂÜxþvÊkæþÊøxæ8þ0ÂkÃøxþ6Êøþ4Êìþ5Âþ>=ÍÑ*¦!~Í*¦!Ãæçram, which used an exact layout of the sector image (304 bytes), this patch uses a table (36 bytes). Actually, there are two tables. Also included is a table to build the format for double density. Changing the byte 62Fh from 0Ah (ten) to 12h (eighteen) seåctors per track will cause the program to build the double density track format. This ÷éìì îïô actually cause double density, however! It is merely included for anyone experimenting with double density. Note also that even for DD the character E5h is useåd as data character, since CP/M uses that to signal unused Directory entries.Ãòåäéôó This patching program is expressly written to provide a general purpose patching facility for proprietary software on CP/M systems. The program validates the program to å'  p where d: is the (optional) drive containing filename.typ. The program will prompt for selection of options. See LISTT.DOC for further information. Also, see LIST on -FOG/UTL.003. Squeezed assembly language .AQM files may be unsqueezed usin use of SWEEP36, which may be found on -FOG/UTL.013. Jim Woolley FOG Disk Librarian November, 1982 g utilities found on -FOG/UTL.003, .004, and .014. DIRR is like the Osborne 1 utility XDIR except that it displays four columns across. This may be useful for those who have an 80-column screen and, perhaps, double-density disks. Place DIRR.COåM in drive A. At the A> prompt, type DIRR d:filename.typ Both d: and filename.typ are optional. See DIRR.DOC for further information. Also, see SUPERDIR on -FOG/UTL.005. Using EX12 you may enter a series of CP/M commands and related linåe input to be executed sequentially. Its function is similar to the Osborne 1 utilities SUBMIT.COM and XSUB.COM. Place EX12.COM in drive A. At the A> prompt, type EX12 The program will prompt for each command/input line. Control characteårs may be represented by ^ (carat) followed by the letter defining the control character (for example, ^C, ^P, or ^M). Terminate input by pressing as the first entry of a line. Also, see SUPERSUB on -FOG/UTL.004. SWEEP36.DOC describeså