@L `}/j5  $% l0?$)$$Hȱ$ ShL$ `e$$%` h?/ `  !I PR@1 YL I`! S S) H$ЙH 0}Џ$%`@ $% CC$$%e%dU$% ]0%$% DDmLp   % J)Lz J  (( o L (y/)  [L< ( yL Z 0o Tya y }4IB [y32C/10m?4 V V  wLL a ` V y/})23LzA! ߰")-݈ y" $zzG@LL 08` k")};1k0 -G$Ș݈ SL! 9 y8(()(0˥)Nk`$GȘ݈LS )L ݈ L GzȘ} ݈LL )W>Z   HH)H o h  yhy00hy11/ V  }L> L JJaHJJJh) yLT J u (`  IBLH % 6h HHGH`LdJ })LJJLw!,"!,/@F  L! ! 0E^  }^ E E7EȩEdE/EȩE / ! Vΐ )L   mx n wym }?x7x?4 ( ) w y32 R V LL n w ) V  L y / o   }E` , ny/) / V Ly/) 0BM݌L݋ ML  N݈ L }NLML [ fEqEHȱEqEh 3Gȹ G KLL GzɛL  L}FREE SECTORSy /H) *Gȩ GȽ4G GȌyh%*J >G<-+=!*?%% &%z3%$$HEL{*DIR*LOC.CLR.LOA-VER%INI+UNL.FMS.SAV,MODg%CARR*REN?,FME.H"}EAP)BAC_%BONo1DEL.FMD.SUM(RUNm*BOF|1COP3&FMQ.TYP.)EXE$ 1Y5P" O."8""@R'S15%#}0i5i5501ȊԢx5"JFJPWy"HH *5")IAY54 4> 4,0$}L#N #L|*J #L*J #14"4`J # 1Lk*v} 4 *%H$H`)?4 $ 4 #$0 %} 2 4 $ y$, L$LL-19" !"H "H` $ $Ѻ Ѻ걺 2ȱ 4ɛL"ȱH&}H 2e滠滱 u2`> 8e滐`+"`e` y$ 2" 2Execute: W. /p O. '}/ 1L"*ԆՎ l$ 2 \*L#L)4 % HJJJJ 3. 4h 3 3XFHSEX; 4L4(}"݅pq y$ 2ݹp` %ݱp 3`,5 2`N5 l$ /0 / 1 l$L$$8n" }$ 2pq y$I eppq> )}4pq 3 3p,"0 ' 4 3L& 3`p8pqŠ 2ݑpȥpȄ(` /5D . 5 - #( l*}$ / #(莉5 2Reading: . .ii e֥iש 0( . `1,P3 1S / / 1&+}& 5$?♵5 -8tu E( rȥs(0 O. .Еߥ .8 ' 0( 2Writing: rȱsr* / /,} ,` / 1rs8 E($0 O. . .C .L'5  e . 'Lx&,5PJC`,50 2I-}nsert ( 2sourceL' 2destination 2 & hit key ! #ڭ ҍ5L25`5օtׅu` S2tu /.} 1HrettIseuu(` (x / / O.L1`$0'5 / S2 1XY O./}8` W.r n( (errstuvw 2LEN: vw 3u 3 2 SUM: st 3rL3 W.$0 * n( ( 4LB)0}N` W.ʆ n( ($0,F (!$0բ 2No COM-File !LO. (8ԨՐυلإ5 * 1}2# 2RUN: E* 3 2INIT: E*L^) * 3 2. ԥ 3- 4֥ 3 2 LEN:إ 3 (L)إL^) 2}( ( 3L3 1 y$T 4T l y$l 2l *" 4 3 * $ $ 4 2 *ݥURL4` 3}, /$0"I" 1 n+,"0e+Di5Ei Q2 1 2 V/8," 24}LV+ԩ 3: 4 4I 4L+ 2D5:1 4 2: $;0+ 2SINGLE 2 DENSITY 2 RAMDISKL* 2ENH5}ANCEDp 2DOUBLE 2QUAD }/5,5$ 1 O.$0 `DOS.SYS8f5ȩU5ȩP5婿t"Y56}L, / - l$ / /X,L. /,55 5.5 橛5L/LL$ }/ l$ 2 2刄t( 287}$, 2RUN : y-ft 2INIT: y-ft 1 -$tP`$tPF$6ee8}ȄԄՠ$0֩ /$0 q- /8ਥi S2 L15 4ɛ 2` y$ 2 " 2Load: W.9} /$莞 1 -5 lL"0L2`")i"` 1 . / Q2 1'  Q2 1٠:}0 V/ .L.L2 BLVhihi / -i(i( -8((((.. . `1 1 - .;}`5  e`,,,,"H 0hZ,!,#,$/ /$0 $0ZL/ -/L. / /"L11/2/5<} 5 H.5h5ک5`5c/d/ 5? $08`$0`45 [2519 5=}55 /$05455 /5ED` *50 4`5008f [2R0/@ 2.>}/ȱ 280@0  eiȱ/\FȢɛ  o- *  D.8;+"/+ȱ0"?}LL$V ȱ+F/ڊ u2 80 ? 00 0/+$0Wy`5 ` 2Sure ? 1Q`$O 2es, @}o or bort? 81YN 4(` 'ɛ)YN A 2AL"` * 4 `)  ӆiA}j O.+ /  /$0Ș,J, 1B V0`1 O.:>ݩ,".U * 2 is locked !Unlock file? 1ݐ`B}$ 1УԢ5 )p O. * * 2# 4 3L"IH`:;:` ,ɛ`` u2` *C}hihi 4eiHH` ," 4 2 8`0:` 3` 2iԥiդ o$ԥ(`LL$ 2ԍ2Ս2D}Ԇՠ+22ȱ.6'`0#: AG6  &&`8`芄  (` }$ 2 2 3 E}2=' 38nɛL4ԥ 3 2=.݆ކ&բuݕت 3ߊ, 3HJJJJ 3h) 0:i,  F}4,500 BHI V,L2,"p:ɛUR.* t4 t4^ 81 t4( $x0Nhh`S8R^`倈G}HH`p@BDE-HI V0H-` O. 4L2L"ȱ 4ɛ`D1:*.*pB 5H}0#452"/ $/38%by("arth&"ruchhaeuserc -2eitershan#omputertechnikI"L2L"ȱ 4ɛ`D1:*.*pB 5[eeFILE VERSION OF ACTION!BY PAUL AND I.C 4/8/85H0e1:`pppppppppGcepppBvepppBeAHe!#4)/.J},oadingpleasestandby0en ȱK}AȱŇ) ņ ]Ŋȱ勰98ƋŇ'ņ!ȱ`L}`eȱe8冑ȱ凑…ňȱ剰㥄eȱ)eŅ!M}qȱqȱ ȥqȥqʼnqȱqȱ`ȥ`i膇  i`N} ᰭ  ֠L aLk8L֠ С`i ~ii:ȑO}ȑ ``ȱȥL" n`ȱȱ P}Lȥ Lȥ ֠``Lx `````LWޠ`"L,` Lų`l `Q} L L:ɢ m ~Ά腳 8 z ɛ R},L_ՠ ~L_2 *km~,`{줛Wj}MZG.QZϷ2g{ɪظc9HުS}g˾W  WŌ" ȑČ ݲLiȑČ٥H  ,T}hL[ K ϵ LȩȄL { mH 8 Kh桩 栤挤ġ ϵ ѩLй ϵ ² *LU} K N С Ȅ b ӵ Lȩɧ` G nLG ²L X'8ȱV}Ð ݲL K`  k åлL  ؠ . ӵ qȄ梤ģ bLѩW}ȑ8ȑȑ `ʕÍ`  Z1 2Ȅ88  X}@ 2 L8ACTION! (c)1983 ACS t z~<}8i$ģ%USّE +Y}LƦȘ`8 [ E + [~}Р`  0  LRead?  !Z} ² ʰ0 ӵ ~ ѰL9 LWrite?  a ȩ  ~S:Ȍ: ?[}D /Ƞ 0 I`hhLhh` ~0LK:I`+H ZhLLD1H K La` \} & K  & nÎLĩ v ²L ߢ &Ю vЧ̟1 vLCLEAR? Delete windo]}w? Not saved, Delete?  æ L ` y` L b L Km^}`m` K K ϵ  ϵ ĩ *L K RUeT aT ӵ_}厅"! T ӵƪ Ѱ Lߢ8嚅 ݲRLHeR8S嚅 ݲ8h8eRL88e`}Ʈ K յƮL =6 K ϵ d = β  X Ѱ ӵLȩ`NƚL0EL㢪ܢL8INSa}ERTREPLACE K յU ݲL²hh` Ǝ0LO接 P L 몦LS P ݲLe` b}Ō . ` XRUeƍ ݲ _L[ XߥUS ݲ [L_8eeU8R`؄(T ʥee'c}` GG K  ȥȥ  `;L8 tag not setNLtag id: d} G9 K ʠ ׬LE`Š馅`ȱ ڠe}` `Š馣` Z N Tʎ c W   a  W cf} = ~L (é 1 L_ vLE 欥 3` H,  = g}  H HL` ` &LBoot?  ` `h} TeemƮm Ů BDEHI V0/ ŮL~i} n0` LHH c T`hhL c / L9 Lh`$ &*i0:0i Ƣ`#bj}cθd^eqoprхȍ Li桍k}ƿL膼w`ces +~L~Ld~ +~L~nLd~ +~L~Ld~*~ +~LM~I~J~K~~~l}~~`*~ n^I^L~~~~~I~J~K~`m}L,Lij0 B V`jBQDEn}JK V B VLE:ACTION! BY PAUL LEEK V B V DLjklm孳  LGo} l E: L lʆ &e J Jp}ꅆ8冨凪`ʆ ee` 9E…¥ 9` l'&&&8儨児q}祂*L2&&*ń8&&L2 ` Fj`hihiHHȱȱLڧ`r}膥ɠQ-ĮȐ`此į۠ŲLlȄ.70Q- Ġ7`eޠ Ȅs} e _ 嘠ƍ iť +иΦ +У +Ж꥾ +ȑȑȑɦt}Ș 9`5h{DObFIcIFPODdORTOeANDFORTINT"LSHMOD RSHSETDXORBYTE!CARD#CHAR ELSEaEXITSFUNCAPROCBSTEPfTHEN`TYPEFARRAYu}@UNTILXWHILEQDEFINE&ELSEIFjMODULEWRETURNRINCLUDECPOINTEREiI^I^Lࢠ]I^+ 8+ _0)v}?ʈ LbACTION! (c)by Paul Lee }Computer Services (PCS) April , 1985  L r c c ! W_ u` 8}9ЅЅ එЊȑȥqЅȥqЅХӥ` ඍ K LL\ Lơ    c c}[8嵅嶅 c &i荙% M c]٠ AГ  c  `F' {ө&Rፙ}%A@qEg  0 Ң c M cL!  ci 9 c c cѠ}Li c `Ӧd`ЦѠ ݢ cȩa cг6 0Ц M cL! }0 Ң ච cL4ɓ  Ї$hhLcɈ 'p⥸ KɈLơө g8hm)} Lc cWL Ңee𪥠Lȑ`H ui mh0xL ɋ))}` [# ½]   c cLɉ 6) 1Ɉ .p nL x L L~ ߻ L}I $I=  c( )ɘ) ȱࠐరP c è LK L Ɉ cШ F `w }j   A L$a  A  c;   ½   cLKȱ` L PɈ}L P b X  A dѠ LȱHh ALС F ԧ cɉɐɖ婌 ȥ} $ e©  A)   yf yb ච ½ >Ɉȱ 3 }Lե ۦ ɋܩ ۦ j     A   Ɉ  9 H }A A ˫ H h*hX&HnȱonohLȤH >h LɈ  L )}0) 栥,,þ( ٦ɋ H ȄhL`  Ϳ ɋ L٦Ɉ؄ චȑ} 5ɋ LM L5 F ԧ ච L½ u) / c  ` LL HH *} hHd 9    9 A h` ` n t 6`ȱ`Ȋ` ) " 6}`Ȋ`ȱ``LL8堅ͣL L L< ee`夠`}`PTQcRbS c … i ̪{`mLo}'p nPx LTɀɐ} ɈDɆ $К< LT Хª) ̪   cLè ̪6` .Њ1 дL iq /ƍ cн}Lǩ FƠ H ơE ߻栤 h ȱ ) } LTLƚ0`…8ݠ‘ȥL 5 c c)pл)©L{Lϼ L K`LǼ L}H / h `Ȑ ` < 5` B>)Ċ6,b&  ˫` u`  }L̪`i`暙` 5Lc) )ž) Lg ٬9c.0} & LF f cL <  eL ٬cܩ   LL <  }R6,þOɈ1ɐ+#  p  L)ɠڥW)F  } )` I ¿  L^)@К 9㥣 І  ½Ѐ <Ɉ"dp)ɰɘip}``DɈ>) q qLD8񹅩 1-+ վ  3 3 } LKɈEׅ J վ  ơ Lv վ   } [ ½ Lv  9   n t 68 V < )iȱi 6  " 9L }Hi h i     ½LHšŢ`hhLWL  "A  " t ( A 3} tH Lv     )x88񹑹ȩ񹑹`  LɈɘ} A `)pLa8A!0ĭ̭E Ů Ṷ̊W 7hACTION! (c)by Paul Lee Comp}uter Servicesn6. : BLV`  B JKIHi}DiELV䄦 eRU _椤E +ƣ`𑛊 0H8`L }L² 9  P t LWError: Ԇ ؠPIPP`/`"/ԭ` PLnH ~h}:,'iԥiՠiɨɑԈȩDȩ:ɥɤ LGLʰ򅡆ԅդ800) 0 0!Ԧՠ e}Ԇ ٰԦդ` LLؠ L.8e膥 'eR壐Q8SRŦQ}H)`h) ȭL{QI` T`TU`TU  [L_` ` 赠}`eLXYT i(`]^_`]^` ~ 'LE: BHILV}ߩ۩שөϥҦǤȆńƅĥ…ɤʥӆ 9!A }%) )[^] 0 ӢtL~Ӧ` } d .Eƍ ౐ LɆéнӤ ɩЪ >П =Ж d кƍL} " L "줩L󳤙UČF0F !LƘꤑ ²Ǧ ӵ} ʰȄȱ``ō` 昩 T L :  :ȑLL L}L g L``)ͳ+  @ȳ >B>A>WRCD~} &` `i膡`U[W'pxOɈm  g ee + c}н^ ȱL2ƍ` L* HH L*]5 Ș M c gȱ ~  L'LhhL* ɁɅɦ}` HHɑɑ Mhh`eHeh`Ȋ`ѡl ) 00:0`H ha0{0}`e澥ž=Le ~ cLɤ e8q膉ȱ``deldErro}rEOFcolorLISTdeviceTRACE ~L ~ H !~h(` h L# ~ HL }{ ~ {LL ~ L ~ KL# #  ~` h L# ~ L ~Ln #L H ~ {h } ȱʝL ~  ~L hL a\( (EȄĠ(((Ġ ӵ ²}͍ Ѱ ²R 8` 2` not foundFind? a})H h  ` }8}(ee(ČȱĢeL Substitute? for? m9; } L200`@  g;` g9D` 8JJJ)0`BA`W i8 c } 9 9 ½I Ң  c c c !LH c !}h0A u L i 0 LBL [ 5 䠧  M } u M KLɐmLɪeM࢐^ > L/ 5 c cNQȝP} / Λ0B࣐ .ɣɢɡ ½ 9 L j j jLHL L L >/LH }0h L^hLLL L^3^/ɘ L5ɘ A  ` * $^ kgH}  FZ<`J‘@!PBP}(BH RhD#(^}6՟ REy DUPr "um5xbHj4TC9C0H@0"f A&m:ϡG֜Bجi#zfe}<KvVSv.G |7v }\)_%F!R !֔2J!הBJ!ؔRJ!} 558TQ( 0u#45c\>E]((\)$ C2:D4`dLZr%b ӤI  8dnDcn м\tQä=d}0(:W$d+s5B`+5žV,׈f5#L2JlVp] !=NLmL\w ,$0Цst0״ S.m20@"r}n @Ev+-0pzs&<0Xp ;t"pէJd6٩ q5W+njh5tWHs sE70`N( B} <(ltM8 DL1QۄCN\{d2 LR]hń/%Vb bϔ`s&=ViHxEV+IUg _}*YZLb;3%N3ͳL  BD8ᧂ\{5W+7^E L֊Xo˵= Au&#tgŎ 0ގ}}(D#*щR- FQ&7ACTRNTM.V03v !`3 0@*NԀ q  Q ؀2%CLWA`(0q0H)!e2TJB }*5HdPPAҀH!TTR GTI54eⴇ̡BJ2u!a@"B *UUEVP߿  LơHiBA,q-GUC $ }zԠLdg#si8AA9tn]R#H64}?e(!Q"f*@ F  4ڜ"(R)D+}((RH2ƒL  @+$` ) 4ۀ2@)# <  /.P} " 1NA)*x3`#J} "YI/J B$DB@S&jL#  Ŕ < 2)B(RJ,JC)ϸ (À %M K$K$( "Q"sh)xK)}ʈ+퉦bHu˶`|#JUIAIPA=)z x8 XJ' ,8CL2#+@2/P_)  G*@2q 7" }`B4ʈ0"*3Ҋ-L<1(84(@2Ⱦ` <ItHtHt  'u( UH$ |1 <.C"J@'&}S@I`HH!IS@,f04P(>,b"(B"6L Fϟ%c@2EĘ& 8C B"xK< 0Cc0S@I $P }HP0p@À@By΃duE(" T |I| '@@X0HQ)BQ[rD)bqQp=hQ0Z@B 1 4h< " 4#!DqCBS}E)H ! *@: Oϧ[gX^M@ Ё cl `<8)0XB:M({"EC`%W<(Zjb*U *"0 l`%/U} TjC #xtBu |!/hx6( \,.It(x4E|(Z'lv QLҜ\X-(ɀD,E*@hAkR=J@)(l@Q8%}: p1HJBҶh(C(  "4#2J! x4/LCa,O0AGi@p"1^0aE-\XԉZME <QC}@Ųh4R1@)A8Ws#-M` ])@ o0E+!FC*D)RSPB2x`.B !@*X5vຂLph2 `"((}m@', Pb`g]i$2y T8wd HE& 0BH;F<@eA@'6}$ Fp h l}@5t+"? b6C)w82_^H=HaQ14ScVL Q@#≲,X}(8OjR@#{3z0 ( &.=i@!}TbP)VAj }@_U,ڧYOԓ!+1s"J2lB"P"`\ A@m6 \*Xi&psRE\U b ]ɀ6& EQT}0Fc ")`RP,s!E[fnTjA9 &OG!R z95Ȩ0+~qxVE1 6Q)6`s{ BL}0*@VDH_Di[ER '09+_Vp HR4PÅ+L3}7__ PLu|3D Pp  @ O_b A0TO!(0)93A0to 0opPtPrS vcPs}%8NvPm B4l0( ^`p54QƊkd*魫NQ*”REx_X1HǴoؚtxhj:p&BGջ FA }Ju$ ~edqsYoygwJEWm ygo1_% ub'0a d,!SEtXԍ\֋)";nJ~i$sPpgLE˫aӖe$eX]w }aE1P*u>0$Y-_0 YU (/B:Nuk*fxh18~ #xc9YFz,>q~Q^s⃫kA"a*k*yk}lyFyrćNңku[fn2Þ0ዸn&"?|T^r㏃Dβ?eAvdžc9L~嚧9E/H$y  }@No* .y2}PtE! @0|KN A[gf0 NQ ծGCh!{vk` fYݥR@%|eY,a͐" }C̕" M9Q cG Yd fLP<02fx@$vtدfUbBm PîD?$@wr):8ǎk WʲG:N!8tI }^ A @;n ds p0m]n֮TŔ\~Y'  Aa@֍ %#/ 9O>'LLץ0H[8)7ԡ ĺs$0?"a_ tx`%EM@@1Mn }PyqE9ChFsAQ!hS 6 HHt9hJ\c!_n6UnUcX"2э?$YVu4qe"꺢Ih ̹!4}b1P9"|\Ir|I\ 3ʺEMa }:$AoW&?aP,c`P:G$jf*8a ڽ68KuW"Os*| [s Zo(@'}zJƃZ1M|_i_ \ Zhք7J|`$%4 h'#i3 ] vo݊}@'}I /+ˋI< DBM9uvE M/C}.잝]iK>0ǧpC0#Lh昔=ëo9o |a+ߥLrX}ni]* h+d&ACTLONG.PRT!`Y TД1 UIsM2 qsD7tʜ)#'b1rɳ Ft R0'!6T 0c }| 9D9L&CNAL67sBS ,$B2fA pk l*$7oQ[V-kRѩߘQ\fP}< Nd&Fq4f6#g*G}eݪd{1YٌʩJ@f"ϛ:'`&tސ-ՁY:9o΄l3G@|Ci`, S:\e3MS7 (SmSaERpY.dRMTe4}.g@kc@WkFi߅7^Y`1@ieTRvGftxFE9XLBBpF buXeҵdx%O?1XvA.Yorgd黔+#}&frH1#1 /U<'n*"ٹYY07zt+vǑM+0dV RWЗh;"Q֐&RM'hBPZ #Q൏"$}ވk䀗i3OCPr-: 0A^\0'4a]:ZZz]o S׽vz![cgE$CZ Mm,b"(B"6L Fϟ%c@2EĘ2}& 8C B"xK< 0Cc0S@I $P HP0p@À@By΃duE(" T |I| '@@X0HQ)BQ[rD)b3}qQp=hQ0Z@B 1 4h< " 4#!DqCBSE)H ! *@: Oϧ[gX^M@ Ё cl `<8)0X4}B:M({"EC`%W<(Zjb*U *"0 l`%/U TjC #xtBu |!/hx6( \,.It(x4E|(Z'lv QLҜ5}\X-(ɀD,E*@hAkR=J@)(l@Q8%: p1HJBҶh(C(  "4#2J! x4/LCa,O0A6}Gi@p"1^0aE-\XԉZME <QC@Ųh4R1@)A8Ws#-M` ])@ o0E+!FC*D)RSP7}B2x`.B !@*X5vຂLph2 `"((Ԏm@', Pb`g]i$2y T8wd HE& 0BH8};F<@eA@'6}$ Fp h l@5t+"? b6C)w82_^H=HaQ14ScVL 9}Q@#≲,X}(8OjR@#{3z0 ( &.=i@!TbP)VAj }@_U,ڧYOԓ!+1s"J2lB"P"`\ :}A@m6 \*Xi&psRE\U b ]ɀ6& EQT0Fc ")`RP,s!E[fnTjA9 &OG!R ;}z95Ȩ0+~qxVE1 6Q)6`s{ BL0*@VD=}H_Di[ER '09+_Vp HR4PÅ+L37__ PLu|3D Pp  @ O_b A0T>}O!(0)93A0to 0opPtPrS vcPs%8NvPm B4l0( ^`p5D) H jS K?z\:%:\zO*J a *eE})`oZztڥsʠ`wJkz)jiwZ@*Y ` DRװF Tِ"Ԑ  ֐ t0"^!PYMp  PM*Upc  UyF} 7Ph3 Ӭ PNHnPn n@ɞeI @9J>Jjf t Y 99jZ t ր֊ `H =p T!$G}z "аbg$hts$uB@"[RPpO왲 +-$['n1 p5{쩳0@F+A0 QJ:6 8ٜ0+I+0@"`&H}K˵Yr"۹PHKo"@@B ;}a +n Ҹ$ yǙ+ #PI}긃 8@ 9 @ %p qPUכ  A`L %0MWp ӛ6pIP;9I9Np M LP90dJ}==PɾٰYB`ԫqD`ٻ iɞ  /u; ̷)*Í@{9=H Ъ@̝B pL&кK}٨&Bq "lG0S pk Ѐp@G LG K uIsP D##ȣi PIǭ0&]pBHv L} L~TY e  ̩P \{IL {I GP4d@98t ap9o` @1TP;Usge@Ǟ3G@A9|IAxWi ,M}ylf 4h( ΀ϧ>)(mb xUiLm ؅LS\lppy0R4P (R0 @ө`7- :-=@=C ҩ "]:= L OPN}{D "I&MK|ADD=7em5 P]֢7s 6`A@m-e 7`SPB|.7Mv]V ة "}J`}aPWP?=O} yZp&]Xxt0J <}Ӎpڊ U@lPa0=ho`݉$  0 JP J ^B Jz T ݩ P}d   pޅp, J 0 fL@KF?lr@ЎT= C K T@T Π HP- . @Y}$n@*HQ} 2n5~:<> @ CF߶ d fWZp!` 4Ӱ@6 Z@ SJ1p %'N+W14~Pi;?R}g^ HLL)-.[Ӣ}a>ei^lo䯮Ps `x `| ~P 葾2lL .(^堎ZN5 BS}~I᳞>n>C^`d f~3(}8LMM Y0YL钞30L n1bNT}Y\^HOo͎mqҎ %N*NN  5NN@> _u._Lk>PU}!NqoY=souxO65LO@AOOǍ䒿_UPNpnwj^PznP ^?/V}?5^|na5oV?Yndg_穯F *P{7@oV? PoaL0Poӟ9_/OW}um *QQ{8L L`QohNpoV?Y梟d/jLQpp 2 Q X}I{n/LRpp>p  ӪI{R/ J 1 R 'I &,@un y{9r oV? PRoaL0 Y}RoӟR梟dg_穯M *RR ߩ3yS@HPh00m`!۠TEST.ACT !`<8 6شC$A)cZ}&2 Ny a`A% " "#{lD 1XĎ*n9Ig41y蔙 ǰ 噓i7u8\&(R Ѧ/V{VA@y[} "R0bLiZB4eȥ  &O/`bUu@'À/P}3'MN9wa{]0bi;; WL;(}Fu y}7pp\}:|g䯃x#g}'l|0na]tA'|&_  &ŕ2G`{G]ʀ_ Q\~%hYU8Vv0ap~hpqG]}9HzN!BeHEOVrtuDb"r8tFYNTфj3@vlYtp sB & 6 A A\ CEGrA&H)ueбdP*Dc^}qج !$,( Fjze,,"@ 0FGJıB kdVDi~h8D.4$m :˯뫣ъ{Vps0ps,_} #C l$ CP_Ql& o[En dEsXgt@T N:T"C#:%tcr©u>`}c e. .% ^ P45Xp$L-З[B &ZC連>2#:;Z~;3~AێQo/|Ϋ^ a} <6p~U>gaEL AS]+f 퇅B>("r^߄V39 l(CF 24QaaR-apH0y`6Ahb}0Ot$$!S`4r ;@I)>iLBi>8 D֐`$@ q 4k.&j5a+]i  PǡqM{Ȁ ?L :ԅ:c}&KALy+,CFJo*Jz8 ,&,\;ժW R,@6hjŒ8wϱtC(OmpI*  ܆O Kd}M1A*CMSSC9ϙu+<<%fO%Vd?#O[ '˃.ٖ!9̥FӘDƔ,S lCN:ge`CyuUBM.e}v&$ ZSa(i3n'&ZϏsl?-Tt 8PtnաݧDYD Lr<֐UrЍ+Q֕e;A ej:) xS Dmf*wʓ*f}UgUfծ\;*ױլE+GJ= qUЮ-+E?QjAseIPf8ll7YNNըMq8l =)߂:Tfx]4_=Hp@+9_[\قUd+>sQg}Ak;\ոmrkv^_EJa7c[ݘ fslhjq^n5'lUl=kw;" kJ-ka X&xq}BDOS SYSB(!DUP SYSbIACTION1 COMbACTION1 TXTBACTLIL ARCbACTLIL TXTBCSTRINGSACTb%CSTRINGSDOCB INSTR ACTB NEWDIVI ACTb4ACTINFO COM(2txu)$kZV,gHֽ'؞x/y<>_R5<[.cp]UOY-_xm 2(Je>\bʢҎ[qy]^϶'(ߞr}dګo%4 i"_yYp@ :9ɍM1k-bCX0%>l0TJƪTKr(;5S_?pvit?Jʕr|s}'unFGusf[|ZğܽOvxhvZP4`odt& b6TEST.COM!` Ao 30$ 1pHL`$Q T :  NJ`v}d@"ID @'$0\SIr5oty O@ #UȀRp#PTP !hTg.F"b4DTvʦԀ\bD>wr[MҐ5w}*Pņb0 L+1R7= xm۸uNQܻapOt\;b6>Uc?_ ?]>n_ y ^~G`l9x}['\9 ~wu0`!b *J}w`F#T3PA@Dmti f@elc*!tBK3tRKYN4&Ȅ!38y}T O8qI8AEG!ŜI!ERda%%^)Ԙ;ń&9j桩h*]~D;38e  *uQpQeAFn $lکb陦2z}A `*44i*i^Р*"Q zFtBa FJs`zڞR$Bb QFtq앁i?[LB-hvjCa+{}Q QGo Gijcr*"t\ 0h@-`Ra<Cc0U2І 4 cTb0XEI w:rm7tЁ؝LwuߝNcsG|}N8$#8"0PSk>yW9 PxOx^{Plj( i 0!5ߜsC #햩i)#S_WR똉^bv}-(7uWa C2XFk:(cC ^^)$D Wq̄A&xsjS ӹdSW (Oa]uK1}h;zh h $L젊W;i@Jwԧt7S)pwFlqԤ. Tj=^Y*WY׶eBvosk=Ww}v'^󉌽jKҠ젊W;i@Jwԧt7S)pwFlqԤ. Tj=^Y*WY׶eBvosk=Ww- this is the ACTION! Long-Integer Library (ACTLIL) programmed by CTH Enterprises (Tom Hunt);- use Bob Puff's UNARC pr}ogram to depack this archive;- the library contains a few demo programs which will run without the ACTION! cartridge i}nstalled; however for the full use of it, you should plug-in your ACTION! cart...;- for further instructions refer t}o the original docs, written by the author Tom Hunt (they are included in this archive!);further instructions refer t_; C style strings - arbitrary ; length ending with a null byte;--------------------------------; Written Sept 3rd, 1987;} by John DiMarco ;--------------------------------; Complete permission is given to ; duplicate this work, so long as ; t}his message is included in any; duplicate. MODULEBYTE NULL=0BYTE ARRAY C_TMP(255)PROC AtoC(BYTE ARRAY A,C) ; Conver}t from Action-style string ; to C style string ; Assume A,C are defined and ; C is as long as A. BYTE i FOR i=1 TO} A(0) DO C(i-1)=A(i) OD C(A(0))=NULLRETURNCARD FUNC AC(BYTE ARRAY A) ; Convert an Action-style string }; to a C style string BYTE i,j j=A(0) FOR i=1 TO j DO A(i-1)=A(i) OD A(j)=NULLRETURN (A) CARD F}UNC CSLength(BYTE ARRAY C) CARD i i=0 WHILE C(i)<>NULL DO i==+1 ODRETURN (i) CARD FUNC CA(BYTE ARRAY C) ; Co}nvert a C style string to an ; Action style string BYTE i,j j = CSLength(C) FOR i=0 TO j-1 DO C(j-i)=C((j-i)-1)} OD C(0)=jRETURN (C)PROC CtoA(BYTE ARRAY C,A) ; Convert from C style strings to ; Action style strings ; Assume }C,A are defined and ; C is less than 255 bytes long. BYTE i FOR i=0 TO 255 DO IF C(i)=NULL THEN EXIT FI } A(i+1)=C(i) OD A(0)=iRETURNPROC CPrintD(BYTE Channel,BYTE ARRAY C) CARD i i=0 WH}ILE C(i)<>NULL DO PutD(Channel,C(i)) i==+1 ODRETURNPROC CPrint(BYTE ARRAY C) CPrintD(0,C)RETURNPROC CPrint}DE(BYTE Channel,BYTE ARRAY C) CPrintD(Channel,C) PutD(Channel,155) RETURNPROC CPrintE(BYTE ARRAY C) CPrintDE(0,C)RE}TURN PROC CInputSD(BYTE Channel,BYTE ARRAY C) InputSD(Channel,C_TMP) AtoC(C_TMP,C)RETURN }PROC CInputS(BYTE ARRAY C) CInputSD(0,C)RETURNPROC CInputMD(BYTE Channel, BYTE ARRAY C, BYTE max) InputMD(Channel,C_TM}P,max) AtoC(C_TMP,C)RETURNPROC COpen(BYTE channel, BYTE ARRAY filestring, BYTE mode, aux2) CtoA(filestring, C_TMP) O}pen(channel, C_TMP, mode, aux2)RETURNPROC CXIO(BYTE channel, mystery, cmd, aux1, aux2, BYTE ARRAY filestring) CtoA(files}tring,C_TMP) XIO(channel,mystery,cmd,aux1,aux2,C_TMP)RETURNINT FUNC CSCompare(BYTE ARRAY C1,C2) INT r1,r2 CARD i i}=0 WHILE C1(i)=C2(i) AND C1(i)<>NULL AND C2(i) <> NULL DO i==+1 OD r1=C1(i) r2=C2(i)RETURN (r1-r2) PROC} CSCopy(BYTE ARRAY DEST,SRC) ; Make sure DEST is big enough!!! CARD i BYTE X i=0 DO DEST(i)=SRC(i) IF S}RC(i)=NULL THEN EXIT FI i==+1 OD RETURNPROC CSCopyS(BYTE ARRAY DEST,SRC, CARD START,STOP) ; Make} sure DEST is big enough!!!! ; Also make sure START and STOP are ; within SRC. CARD i i=START WHILE SRC(i-1)<}>NULL AND i<=STOP DO DEST(i-START)=SRC(i-1) i==+1 OD DEST(i-START)=NULLRETURN PROC CSAssign(BYTE ARRAY} DEST,SRC,CARD START,STOP) ; Make sure DEST is big enough!!!! ; Also make sure START and STOP are ; within SRC. CARD }i i=0 WHILE SRC(i-1)<>NULL AND i<(STOP-START+1) DO DEST(i+START-1)=SRC(i) i==+1 ODRETURNPROC CStrB(BYTE numb}er, BYTE ARRAY C) StrB(number,C_TMP) AtoC(C_TMP,C)RETURNPROC CStrC(CARD number, BYTE ARRAY C) StrC(number,C_TMP) A}toC(C_TMP,C)RETURNPROC CStrI(INT number, BYTE ARRAY C) StrI(number,C_TMP) AtoC(C_TMP,C)RETURN BYTE FUN}C CValB(BYTE ARRAY C) CtoA(C,C_TMP)RETURN (ValB(C_TMP))CARD FUNC CValC(BYTE ARRAY C) CtoA(C,C_TMP)RETURN (ValC(C_TMP)})INT FUNC CValI(BYTE ARRAY C) CtoA(C,C_TMP)RETURN (ValI(C_TMP)) CValC(BYTE ARRAY C) CtoA(C,C_TMP)RETURN (ValC(C_TMP)E When I first purchased an Action!cartridge, I was favourably impressedwith the clarity, power, and - most especially -} with the speed of thelanguage and the compiler. But I have come across what I consider tobe two major shortcomings with t}helanguage which have made it less thanwonderful. Firstly, nested functioncalls are prohibited. This makes it necessary t}o store function results in temporary variables for use in subsequent function calls. This makes source code unnecessarily}lengthy and can detract from its clarity. Secondly, because the firstbyte of an Action! string is thelength of that strin}g, strings canbe no longer than 255 characters.This detracts from the usefulness ofaction strings for storage of any larg}e amounts of data. I much preferstrings as they are managed in C, where a string is any number of characters terminated by} a null (ASCII 0) byte. In C, strings canbe arbitrarily long, and thus canbe used for word processor text buffers, for ex}ample. There was really nothing I coulddo about Action!'s inability to support nested function calls, butC-style stri}ngs were really quite easy to implement in Action!, and so I wrote and tested this packagein a couple of hours. All I did }wasrewrite all the standard Action!string functions (Scopy, SCompare,SAssign, etc.) and the standard input/output routine}s (PrintE, InputS, even Open and XIO) to supportC-style strings rather than Action!strings. I also included a coupleof co}nversion routines to convertAction! strings to C strings and viceversa. With this package, it is possible to support both }Action! andC style strings in the same program, and convert between them at will. To include these routines in yourprogr}am, simply add an 'INCLUDE"CSTRINGS.ACT"' to the beginningof your program.The routines are as follows:PROC AtoC(BYTE AR}RAY A,B) - This routine assumes that A is an Action! string and B isa BYTE ARRAY which is at least asbig as A. It w}ill convert the Action!string A to the same string in Cstyle format, which it will store inB. A should not contain a null.}(ATASCII 0 or '')PROC CtoA(BYTE ARRAY A,B) - This routine assumes A is aC style string, and converts it toan Act}ion! string which it stores inB. The C style string should not belonger than 255 characters, otherwiseonly the first 255 c}haracters willbe converted. CARD FUNC AC(BYTE ARRAY A) - This routine converts thestring A from an Action! string }to aC style string. A should not containa null. CARD FUNC CA(BYTE ARRAY A) - This routine converts thestring A fr}om a C style string to anAction! string. A should not belonger than 255 characters. CARD FUNC CSLength(BYTE ARRAY A) } - Returns the length of theC style string A. The NULL byte is not included in this figure.PROC CPrint, CPrintE, CPrint}DE, CPrintD - Print out a C style string. Any C style string of arbitrary length may be printed. Syntax isexa}ctly the same as in the Action!manual.PROC CInputS, CInputSD, CInputMD - Input a C style string. Only strings of l}ength less than orequal to 255 characters may be input.Syntax is as in Action! manual.PROC COpen, CXIO - Open a ch}annel or performan XIO function where the filespecis a C style string. Only filespecsof length less than or equal to 255 }characters are permitted (butwhy you'd need more, I don't know!)Syntax as in Action! manual.PROC CSCompare, CSCopy, CSCop}yS, CSAssign - Compare or copy C style strings. Numerical arguments to these functions are CARDs ratherthan B}YTEs, since C style strings arenot limited to a length of 255 characters. Syntax as in Action!manual.PROC CStrB, CStrC, }CStrI - Convert a BYTE, CARD, or INTto a C style string. Syntax as inAction! manual.BYTE/CARD/INT FUNC CValB, CVal}C, CValI - Convert a C style string toa BYTE, CARD, or INT. Syntax as inAction! manual. MISC}ELLANOUS NOTES: You may easily change the NULLbyte to some value other than ATASCII0 by changing the NU}LL variable atthe beginning of the CSTRINGS.ACTfile. Note, however, that the CSCompare routine will not work correctly if} you do so. The routinesuse BYTE ARRAY C_TMP(255) as a globaltemporary buffer, and thus no globalvaria}ble of the name C_TMP is permitted. I hope these routines help you in making better use of the Action!programming langua}ge.Thurs, Sept. 3, 1987. -- John DiMarcoUUCP: jdd@csri.toronto.eduaking better use of the Action!programming languaK; INSTR.ACT ; in-string? function for Action! ; By Bill Kendrick New Breed Software 1994 ; (Originally written for Glen!}n Saunders ) ; Accepts string to search in, string to look for, ; starting point in string to start searching; ; r!}eturns first location that string to look for is ; found in the string to search in, or 0 if it cannot ; be found. Byte !}Func InStr(Char Array String, Sub Byte Start) Byte Where,TempWhere,InSub,Look Where=0 ; init for this call T!}empWhere=0 InSub=1 If String(0)>=Start+Sub(0)-1 And String(0)>0 And Sub(0)>0 Then ; be sure enough room for it! !} For Look=Start To String(0) Do If String(Look)=Sub(InSub) Then If InSub=1 Then TempWhere=Look !} Fi ; this might be it InSub=InSub+1 If InSub>Sub(0) Then Where=TempWhere ; it IS it! !} Look=String(0) ; easy way to POP a FOR loop :) Fi Else If TempWhere<>0 Then Look=T!}empWhere Fi InSub=1 ; no, that's not it! TempWhere=0 Fi Od ; Look Fi Return(Where)!} PROC TEST() CHAR ARRAY A(100),B(100) BYTE W DO PRINTE("ENTER STRING") INPUTS(A) PRINTE("ENTER S!}EARCH") INPUTS(B) W=0 DO W=INSTR(A,B,W+1) PRINTBE(W) UNTIL W=0 OD ; SEARCH UNTIL NO MORE !} PUTE() UNTIL B(0)=0 OD RETURN W=INSTR(A,B,W+1) PRINTBE(W) UNTIL W=0 OD ; SEARCH UNTIL NO MORE (;The following Action! routine will provide you with a fix for the bugs ;in divide in Action! It should be self-explanatory.%}.. MODULE ; NEWDIVI.ACT ; (c) 1983 ACS ; Copyright (c) 1983 ; by Action Computer Services (ACS) ; Permission is granted to%} duplicate ; and/or distribute the contents of ; this file to any licensed user of ; OSS ACTION. This copyright notice ; mus%}t be replicated in all such ; copies. Copies of this file may ; not be sold or otherwise used for ; monetary gain. ; This f%}ile fixes the problems with ; the ACTION! divide routine and ; should be included within all your ; ACTION! programs until su%}ch time ; as an update ROM is available. ; TO USE: ; 'INCLUDE' this file in front ; of all your PROCedures and ; %} FUNCtions. ; e.g. INCLUDE "D2:NEWDIVI.ACT" PROC DivI=*() [ $20 $A06C $85 $86 $A2 $10 $26 $82 $26 $83 $26 $86 $26 $8%}7 $38 $A5 $86 $E5 $84 $A8 $A5 $87 $E5 $85 $90 $04 $85 $87 $84 $86 $CA $D0 $E5 $A5 $82 $2A $26 $83 $A6 $83 $4C%} $A032] PROC REMI=*() [$20 DivI $86A5 $87A6 $60] SET $4EA=DivI SET $4EC=RemI ; End of MODULE NEWDIVI.ACT 3 $A6 $83 $4C$l).GG (c)1983 ACS  B JKIHiDiELV`LM. M. B)}LV`L..l  L. &` Fj`8冨凪` .EӅӥ .`ʆǪ)}Ʃ Ɛee` .ƦʆǢ &Ɛeǐ / /L. .'&&&8儨児祂*L.)}&&*ń8&&L. k/`hihiHHȱȱL.c !#3`L.JJJJ)}`H .h`Hȩh .L0 .L0 5.L0 =.L0 C.H8`HhH)}h m0L0 BHI V䅠L0 L0 M.L0Ԇ ؠPIPP` 0P =.L0 0L)}0 0L1 1L0H- 08塪墨hL1 -1L0 41L0 0ȹP`텠8堨塪 )}0芨Oȩ-`PP 0P棩 Ѥģ0-ģ6000:,80H & &ehe&e)}ģ0ʥ 8堅塅`$ 0&*i0:0i 0Ʀ`¢ 护°ڱ%ȱ%E)} 0Ln2担CS `0Ln2I -1Ln2H (2Ln2 0Ln2 &B V 0NLMȑ` MLN)}%B VL0S:3E:3H Z0 33 %0 Z0h)0I33L%0[\ZUVT` N333` U3L0 H3L0 )}N3L0) ` U3L0 6/` 0d .ҥ ``҅`0)9)}4`@0)ӈJJJJ)`Ѕ`ȱ`` 84ȥ`HhƣĢ`)}ƥĤ`Ѣ 4`ȱѢĦ`膡``ťƤ)}e8夰L4Ƥ8`ŦeѠe桊L4HGP    )}     !       "  "!" ""#       # )} #!)}$Optimized Systems Software presents:Now the fastest 8-bit language( Anothe)}r first from OSS! ACTION! is a'brand new language designed to run on'6502-based computers. A powerful,'structured l)}anguage, ACTION! can draw'out a new, higher dimenension of'performance from these machines, with'speeds never se)}en before. ACTION!'combines some of the best features of'such languages as Pascal, C, and Algol,'and offers speeds o)}ver 100 times'faster than BASIC interpreters. ' ACTION! is ideal for games, music'processing, real-time contr)}ol, and many'other applications. But if what you're'really looking for is raw speed in'compiled code, ACTION! is just f)}or you.' There's more . . . ACTION! comes with'a 128-column screen editor which rivals'word processing programs, as well as)} a'monitor mode which allows you to choose'between on-line activities. ACTION!'s'unique one-pass compiler will accept'co)}de from memory, disk, or cassette,'and ACTION! has the ability to include'source library files. ACTION!)} is a trademark ofAction Computer ServicesCopyright (c) 1983byAction Computer Services(ACS)press START to freeze displa)}y666 757]77777%8M8u88889=9e9999:-:U:}::::;;;/;5;  S;"L;;;)};;;(Ϳ;L;(;;M5InLR<8);J;;LR<;8;*<*<;LR<; mX5*(mY5S5R5)};L<;;h`?)}?LW=)Lr= U5T5LW=)L> Z0L=P:= %0L=T16[= T0P5iV5Q5iW5'=)}'=L>L=S0320=Ω g0/=.=?.=/=L>W5_5V5^5-=/=.= .+=.=)/=) .,=(=(=L*}>^5_53=2=^5i^5_5i_5N-=2=m+=3=i-,=L>-= -=(=L8>-= 0.=/=L= 0_5W5^5V5*}'=i'=L= Z0)=P5i^5Q5i_5L5InLa?O5i)O5O5L?P)=^5i^5_5i_5La?O5ILA?()=^5ix^5_5i*}_5La?O5ILa?)=^5i<^5_5i_5/=Ȍ.=T5?U5??.=?/=L?.=/=Lv?^5_5W5V5)='='=*}L A_5]5^5\5^5i^5_5i_5^5_53=2=K5InL@'=`5+='=6,=2=m+=3=i-=+=L{@8+=*=8*}2=*==3==*= =2=m+=3=i,==4=-=,==<=L@8(+=*=2=m+=3=i8!="=*= =2=m+=*}3=i,==D=-=,==L=L@Ȍ-=-=L@-=L@\5]53=2='=L?'='=L[A_5]5^5\5^5i^5*}_5i_5\5]5^5_5'=LAN5LA'=''=LA'= mX5*(mY51=0=V5m'=W5i0=mN*}51=i'=LjALA(W5V5 K4^5_5W5V5`LAO5yL5yK5yM5 3  3  3  3*}0/Ԍ8ij )A)A8AP5A Q5 AA K4Q5]5P5\5\5]5pp m\5*(m]5* }p\5i\5]5i]5AALLC\5]5O\5]5\5]5AȑA\5i\5]5i]5Ai(AAiAA* }IdLFCAiAi)A)AALB\5]5A\5]5\5]5Q5ȑP5Q51P50Q5ԭP5Ԍ0"/* })R5)S5@ ``X5* }* }LD AM5CnM5LDACTION!D ;CM5CCLEmCDCiDCCLEC mX5*}*(mY5DDDmCDiC CCL~E8CCDmCDiC)DNCNCLDEDi DDiDCL*}DCLDCU5T5IL