Q`CIBM Rfpl `j0<1hJxhfQB0<A@2Awg0<4BgA4BpgA4BgA1AQJfNuh`CIBM Rfpl `j0<1hJxhfQB0<A@2Awg0<4BgA4BpgA4BgA1AQJfNuNH@o0  @`! #@%`')+-/1 3@7;=?A C@E`GKMOQ S@UW[_a c@e`imoqs@u`wy{} @` @ ` / @ ` @ ` @ ` eɠ @ ` ׀ ٠  @` @`!Aa   !a!!#A%a')+-/1!3A5a79;?A!OEGIKOQ!SAUaWY[]_a!cAogikvoquwy{}!Aa!O!Aa!Aaq!Aaǁɡ!Aa١!Aa(@o0  @`! #@%`')+-/1 3@7;=?A C@E`GKMOQ S@UW[_a c@e`imoqs@u`wy{} @` @ ` / @ ` @ ` @ ` eɠ @ ` ׀ ٠  @` @`!Aa   !a!!#A%a')+-/1!3A5a79;?A!OEGIKOQ!SAUaWY[]_a!cAogikvoquwy{}!Aa!O!Aa!Aaq!Aaǁɡ!Aa١!Aa%STOS PRG QO COMPILER  jSTOS  COMPILERACB $cSPRITE ACB t ~RROR REC fcRORBASEACB eUTOEXECBAK ONT_13 BAS Gg L` r`'@O v&'"& &'H D& &'H D(k (((>( (h)*~5 25<5Jf\STOSPIC.PI1PIC.PI3SPRIT???.BINWINDO???.BINFLOAT???.BINMUSIC???.BINBASIC???.BIN*.EXY70Tos 1.62Y7DTos 1.62Y 'STOS has been fixed by theY!' GOODMAN INTERNATIONAL Y"#Public Domain & Shareware ServiceB oAJgR#?<NNT#Hz?<&NN\MATC]0RHRI00M Z, -@ -@?<?<NNX-@?<"NNT"$=-B-@x ng nmTA nmA -AMD?<NNT3K m p, Jyg( yg?</</<?<NN Aa/:?<NN\|$z&J=> J"Kޒ~cRF|dbNz2F|de*EdHp $$$$&&&&QLQ` ABahA4a`AadGN#AaPG~N#AaFfGfNAa*GXN#BGM8|9A|Aaf$AaHG"N#L@<N-`RG|eJ_gAv yfAuaAMa/Aa2,_?<%NNT z0<?BQ yg?</</<?<NN AG(zBN`a:A#a?:r/:j/:f?<NN MK` m p,0Q mp 0Q U*Hz@?<NN\?<%NNTBgNAA@C"p2Q"9#"$09.B#A0 <*#Nu09`ܰ< gprNs0|.|0B(Ns/Hzt?<NA\ _Nu/?<;NA\J@NuBg/?<NNAPAhJ@NuBg/?<=NAPJ@k3Nu 9//?:Z?<?NA JkNu?:D?<>NAXNu/?< NA\NuafNuHppahaf&:ֺ`d~a| zaa"z )Щ$I$ BJg` g<gՒ`` z кgR#LpNuLpNu&R< & "$< ~Y?<NN\|$z&J=> J"Kޒ~cRF|dbNz2F|de*EdHp $$$$&&&&QLQ` ABahA4a`AadGN#AaPG~N#AaFfGfNAa*GXN#BGM8|9A|Aaf$AaHG"N#L@<N-`RG|eJ_gAv yfAuaAMa/Aa2,_?<%NNT z0<?BQ yg?</</<?<NN AG(zBN`a:A#a?:r/:j/:f?<NN MK` m p,0Q mp 0Q U*Hz@?<NN\?<%NNTBgNAA@CxLionpoulos}8 ( * ( * *( * SPRITES DESIGNER *( * *( * By Francois Lionet *( * (c) Jawx/Mandarin 1988 *( * *( * 29/3/1989*  VERSION$1.02SPRMAXNBH&CURINK(),&OLDINK(),$XPAL(),(ROUTINES(),&LEFTAD( ,),#RGB(),$RGBY(),#PAL(),T$( ),S$(SPRMAXNB),"HX(SPRMAXNB),"HY(SPRMAXNB),"TX(SPRMAXNB),"TY(SPRMAXNB),%ANIX1( ),%ANIY1( ),%ANIX2( ),%ANIY2( ),$ANIS(),$ANIV(),%ANISP(,),&ANISUP(),&ANICUR(),&ANIVIT(,),%ANIVV(),!P(),&ANIXSP(),&ANIYSP()::::,:I only work on a color monitor.:::&Use the other sprite editor in Hi res.:,:Sorry! Press any key.:w::j#,f,,::`uX:#PAL(X)(X):X:q:(ͦ:- SPRMAXBANKV: SPRMAXBANK:, :Not enough memory to work!:,:Press any key.:q,,f:w::2()()r::, :I lost my own sprites bank!:,:Press any key.:q,,f:w::J7()():r: Initialise variablesjd TXMAX@: TYMAX@: TX : TY : OLDTX: OLDTYXi XSPR: YSPR: ADSPR XSPR YSPRn XZOOM : |YZOOM: rTXZOOM: fTYZOOM: ZADZOOM XZOOM |YZOOMjs$ XPAL():$ XPAL(): NYPALT: DTXPAL : :TYPAL ^x 0XOP: (YOP: OPXT: OPYT>} XPAINT: YPAINT: TYPAINT RGBXP: RGBTX:$ RGBY():$ RGBY():$ RGBY(): RGBXT: RGBYT< BLOCSP : BLOCMX@: BLOCMY(F ADBLOC(())( BLOCSP)LP:f X:( :ROUTINES( X): Xt@8:g: Y :g1 X:& LEFTAD( Y, X): X: YL SELXT : .  k..  kCOMPACT ECA l T8X16 CR2 o COMP_207PRG ssFLOAT102LIB w, #HIMOUSE SPR z5MUSIC101LIB }6SPRIT101LIB 9>WINDO102LIB I08X8 CR0 V 8X8 CR1 YLOMOUSE SPR \MIMOUSE SPR ]PICHI MBK ^"MOUSE SPR g NOMOUSE SPR jOPTIONS INF kvPICLOW MBK lBASIC205LIB r(COMPILERECC dCONTROL ECW EXTRA ECZ Tt@INK1 ECQ GINK2 ECR Q`4RZ ),,,,,,,,,,,,,,,,,,,`^%P ENupz&m ,&sBkE4%m5|5||gD|g.|g|g&5C&K5C&4`&5C&K5C7|N%CN C"j2*4*6JkfNBa Jkf ?NC0J@fNup m 2<2:2827E JAj2(JBj4(0( @Gb0( BDb/I0(?@><(0( S@7@"0( 7@$IF*H,HprgSA$o?k$"J:+" I8SDk gQpgQrR` I8SDk"gCQpgQrR`QofTk f~O 2"_ _A&C}$Ip2Qg / ?<NN\LxpNuOLxpNuZb&m ,&sEx9L2IA(t40v4t404BZBZ444İ|gE~&4QN/N/E0* |bHA(r204*jAb4jpbp:gj8gd642gZ<> _"_H'I#|c3G3B3C3D 3E 3A3FpE}I&8Q(HKFM}/SE7E$:0)HA(>0<0007@ 07@&SESD0D0)0)/ rBB(W8+$$L6"J4gRQrRBQ"J4"J)gRQrRBQQ&QTk fX"kR #@(_A/rBBgRQrRBcR #@(_ܹc RLp-BNup m ?@ABCDEFGHIJKLMNOPQRSTUVWXYZ[\]^_`abcdefghijklmnopqrstuvwxyz{|}~f ffffff>~``|>~|ffl 06ff8|ll88ppv   `0880`ff<<<<80 8pp8~~~~ p88p<~ff 8|~<<~fff~~f|~ff~|f~|<~ff`ff~<x|nfn|x~~``||`~~~~``||`>~``nnf~<f~~f~~~~ff~<` ~~fffvv~~nnfff<~f~<|~f~|`<~fj|6>~``p8~|~~ f ~<f<<Ƃfff<<<>~ff~>```|~f~|<|`~>>~f~><~ff~``~>~~>~f~>~|```|~f88<< |x88<<l<~f<~f~<|~f~|``>~f~>|~f`>~`p<~|~~f~>f<<Ƃff<<<~|~~ 00~~880880b <$fB<~ff`ff~< 8fff~> <~ff~``~>>~ff~>ff<>>~ff~>`0<>>~ff~>6<>>~ff~><|`~> 8ff<~ff~``~>`0<~ff~``~>ff88<<~`0f~>fff~>~|ff<~f~<fff~<<~f``f~<80000f~<~>~ff~> 88<< <~f~< f~>2zL<~f2zLffv~~nfff<>>~ff~>~<~f~<~00ff~< ~~``` ~~` #&,0n ` #&,2f2? 6ll6 l6lذ2zL<>>~ff~>2zL<~f~<=~ffnnvvff~=~fn~vf~~~~`0<~ff~~f2zL<~ff~~f2zL<~f~<ff  | zz |Ƃ||Ƃ|[_UQ. ???< <,??? < 0 '$ $,' 0 $  PKMON >N*OLHO? N.  ??>|>??|  !!& d&!! d  #'ON0N O&#N  `00```00    00```00` 8~ߧL<~=2<L߻~8<2=~UUUUUUUU33333333( mmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmm`o`@`` ` 1 }WESSAI.BASESSAIRUN.PRGCOMPILER\BASIC???.LIBCOMPILER\SPRIT???.LIBCOMPILER\WINDO???.LIBCOMPILER\MUSIC???.LIBCOMPILER\FLOAT???.LIBCOMPILER\8X8.CR0COMPILER\8X8.CR1COMPILER\8X16.CR2COMPILER\MOUSE.SPRCOMPILER\*.EC?COMPILER\  HVIJ6LLLTDRE EKNK0Jc@X^d__ _@_X D~D FhTrGI,J,VEaabPE HXYlY|Y   YYYYZ<@A\ g N,N2 k0j  a4   kLr\X        QPP          \] \f\t i]lRRcf&                6<     ,gY\NTNZ^kj`CjaJS`C,C:kL\P?^CCRR2R(ShSpPPPP>PDQC&LLLdcc\]],\^\lCJi]dRRc\                6;<0;;; BBBBBBBBBABBxB<BZB     keOZ jfeSkkh@h\X XbZlZ[jZZZZaZfg4g gfggg`ffB____enMMMM`pYMNhNn gSxUU SDZOOL    O>Ta\aVaabbX(P O XbDbPbd~dTcc~dcBcRhhaaK Kj60S(hhi2ii SaknkjjDl\A2jpe V^F]]]] ]^__L`4```RZ^]|\S jeZ`YYYZ`ZfXvXXXCRCVCZC^CbCfRRPnAjKbKZM0V.QM(RR`R<RRQDD$iikVkfMbPvP~ O:>0><Y Y]\]L]D]T]<]4bX8XDCBXP[[XYY(Y4Y@ CNYLYTCFC>kHkjCi|ftCbCC,,,,,,,,,,,,,,,,,,,,, Erreur number in line NN`AE-<prt2;@Bm m rBQ m&P!@/ n(NOI$l& <}e "m KHS@23 Q"K3 b m3 QJf&/ & m&h n(N m QbOA+H+L&T$_E &)Cp Q n(N ntN n@ h8NByB#& |o"|$|&|#L#VBBy####33,3.3@03d2O`#####S@333,3.3032##p+AZQ : k @ hL` @##&Nu33@#"#"###p#t#x JBe### Jg(####EDJg### #4E@### d,Ja% ~Aa%*fza%Vpa% Npa% #Y N#a%,H#*NMh#(NMh#&NMhAa$fZA .fBF(FA>RGNa$pa%:p N+`a%\"N)` . a%F,H'`:MPEa$g#Jf@ y*hL09ACHAHC####@`p~ ya$fj ya$D#BB#4"a[ z Cp f2Q z A"z N#@p"Q0:342:A36A38A3:A3?<NNO3*By>af0:34aJg ~ za##B#`3>a0:34a3>a 0:ja*zJyf AC `ACa[Jyga\a$Jyg ~a" k`p zh"zhJygP$zB.ypt4:JygNuJAdH@B@H@za Nu0:`?209,`aR@Ae3,2NuH z2:4zJy*gHIJ1@&1@*1A(1B,!|!|Bh$1|"1| Jg z(Rjg gp`*LNup`p`p `p` pr`r2:@Ha"LJyg.ypNu??A Ma!*0a A ^a!0a za JBBBBBByBHa3,yt# 9PaX# 9:d <aW# 9PaW# 9PaWJf#Jyf# `B :>Jyf `# dt#|pNu,yJgMN*y(y&y y0<WBQ By yB`# y#B### y#Jy>gB#JByFByH##ByBBByBy3B zZ"zZpJg$Q4$PSBBQ$ACQ"<$X Jyf&l$X` 3&lҍB@aXfJyg0<aW0<aW0<aWppaV/ ` a0,y#aVg2 yaU|g3Jy>f\`0 #C#y "9@aaUgk <:g`AIC@"q f )`L" N$ )a*) re :l zba&"zZ"ISA0aVJQJfERG|e.9,y##&yz|Jy>gBD384 gggVp0ڀ`HF y"yACRFJhf|fHFJFf~``##,h&izG HF`-M$EJy>gH? HF>fк4` zX hШap0zRd zDaD 9D"9HaL"z$IJZfx8غv6ֺd g0aT`0aT |~c aTb@~`aTH. x8غ g6"@HFNF@NHFaTI z hJf RF`aTH yJfr RF`fv6TKI H`lpaSaS#Jy>g0:34a #, $yaSJggaS`2 gaS#praZ* $yԵd0aS $aS`00@aP209 haP(aOppHaPNNupaN<<fJ2aN0<g4<g$<g<gS0`&By@`3@`3@`p{aNXNu<"9R@S@# zJg8 z$p z paM@jb>!BBNupT`aMSJg <:g<NuaMt<g<g<gSpNuB@NupNuB@S@Nu.9*G&y,y(y( $ygV<f~`? "9ab0AfaO4Yf&f:fDfH 3aNY` @ aNY`~aNY`n y"yرdPge\` (aNY`F y"y؛Adbr2(p` z2II p@H 0aN0Y`aN`Y @f aNYR` aNYj$gfJgkXX`BPK +L#*m y aMJf*y | "|$XaMJyf |$X"|&laLNu |&l"|3aLNuLionpoulos``NE`Stos basic compiler V 1.0 by Francois Lionet004Vxwpp 0PU33ss777M,K Ugݝ`*n ]gݝ`*nJgݝ`C0<BYQ-H hL*h n$N(nBG&.$(.(gP<f~`Afݒ`ݒ&Rd~gJGffkfB`&`&&` n*hL+N ,+n < .+@ D+@+L H+O 0+O T T+n P+n X+n+n +H 4+h p+h l+hT `+hX \+h\ d+hh h+h t+h |C,+I ;n" +n$ +n( Bm +@ 8+@ +@ @ "+A  +A @,@+N L@+@ @@+@ A    A#A|# Ax#Ap#Al#JGfFBm &m ,Et m D"mgH >$RB@N" L|J@f%AhEQ+H D+H`"p`p`p ` NupR`p. m $RB@N" L|J@fL%AhEQ+H D+H?<%NNO/- ?<NNO m0<BBQ`09`0<`p` p `NupR`p. m ( (h)*~b( (h)*~fb list listbank`fload"*.bas"`fsave"*.bas"`run`dir`dir$= dir$ + "\`previous`off`full`multi 2`multi 3`multi 4`mode 0`mode 1`accnew:accload"*"`default`env`key list`f1: f2: f3: f4: f5: f6: f7: f8: f9: f10:f11:f12:f13:f14:f15:f16:f17:f18:f19:f20:HH@.|`H.|@< e0??<?<NM\Q?< ?<?<NM\LNuH?< ?<?<NM\?< ?<?<NM\LNuH?<?<NMX<gޘLNu/?< NA\NuHy?<NA\Nua zpr BQQNu? &z>Nu?</?<NNAPJ@fC$ )CA8fBANu?<ONAT`ABg/?<=NAPJ@k / a7@ :'@B&_NuABg/?<NAXNu~aJSg ??<>NAXRG| eNu`a5Ȱ<fa aD?/ /a5<fa^JyfܾB2/a&fܴ _"_4/agk3A6a6 _NuA6a6 _Nu !^ aagk3A6`6--A6`6-a5 <f(ap`2 6Xgp`"/?E a4 W@A7rS@@r@gkrAa6 _aB0<a5a4<,gSNuprta4~<fۜa4ba4nVABSBa4XQ y"Hg$fVEBSB fQ``"yAB0gSe#B(1IXSBEQ yj g3ffNu"NH H /9E aX#L0L(fڐNuf>09 xa5( |~c a4@~`a4a4z# a50Nu/,IH E aL(f,,_a0<`3/ H'9G$K/ a$_Jyfa2Jg<:g <g`SG $_xC JB@RDff <fg(<g<g JkJkR` f f`لJ@fG0Nu?#Lp/ a$_aR fS0Nu?9a2 <(f>/ H'9G$K/ a$_ ygJyf a1`G $_xC JB@RDff <fg(<g<g JkJkR` f f`جJ@fG30Nu?#Lp/ a$_a gR`03NuBy0<`77a>a1.@SbS2AgIA` p:N`ذ<)f ya0NuBga0gjj<gX@@eyHA@ pN0fNuJgkA;R`2(&0<NF--A;l`2DJWf׬>`<(fמya.`H`g,Jk0Jk,Jg3p<@` 3pBa1LpNuLpNu09 a1a/a0>a2BNu3a/09 a1a0a109 a1a0 a1<@Nua/09 a1a0 y a1Jy>g B#Ta/<NuX#pTa/ѹ<NufJNu3Jkvf pa004<@JkdfA<f\/ aaA?Va.B$_4a-<,gʰ<)f*a-<fBZBd/ aJyf09 a.$y5B #X# / a.z*_NuENu?9a,<fӲa$yJgԱg\JZf`09 ~a.6a-~ a.\A@:a-?a,BS<(f`R/ aB$_2gxAafHA@>a-A6JgkA6a-l ygJyfa+<,g`JRf&A@Fa-<43Nu/ $_N/ $_Np(`p'`aa+<fҺaa&?A@a,a+|<,fҚa+p<fҎaa2ABAf|Jgk30<`,(0<`, -a^a+&<fDaaf:A@`,ja,a*<fata~fAA*`,8aa*°<faBgaD09 a,j0<`+a*<(fѬa*<fѠagњ/?a*f<,fф?9a yfn32afd4 _a09 a+0<`agk3p`*p`*AB `+b іagk3p`*p`*AB6`+6 a^gk3p `*p`*a@gk3p `*xp `*raxp `*ha p `*^p`p`p` p`p`p?a0Jgk 3fR@R@a*(BNua*ABa*BNu aAB` aAB` aAC`Fap2``ap0`Vp.`Pp3?a0`Bp4`p5`p6`p7`p8`p9`p:`p;`p<`p=`p>`p?`afp@B`)rpA3<@`)`atgpB`NuaffpC`3pD`a4pE`a(<<(fZ?9aJyfF?a(<,f8a yf(:3aNua0<Jg^RJj^R` a0<` y@fHp{a(LNuJy@gfXY`ќp|Jyg(p}`(~ADv`(p m 1G 09 ~a%a$XplJgR@`$p`--<a09HyFgHna#S<fRa  yJfJyF4( / *hKa%F*_JfAHa$pn`$AIa$po`$EG"<$<EG*<,<&<(<p` a"X N#B3N<<a8gZk yN`yNf/ / a yJA#JyF !_!M!_ 09 ~a$*a#rXpq`# *a#pr`!p`>p`8a.a <fa Xa@0<`!a a00<`!aa8g a0<`!0<`!a0<`!0<`0<` aakǬf0<`!j0<`!ba*f$ yBaUaUJBg #BX`Nu"HavgnjX<g<g<g<fRR`:<d <e.<d(6gR<fX<f?TaDY4Xg f4<Nu4RaJyfXJgkpa`>AN1_ax`0`=<=<"",?<EN`,?<EOaa0`,EO2a0<`(aa<fa<g<g$<g <}g2<`2<`2<` 2<`2<?a0@<gaR<,fpa09 2a0<`a`E a,|g|f:0<`p`@a0EOa0<`aE a|g|f0<`0<`?<`?<E a邰|g|f0`0R@`0<`0<`0<`a0<,`X,,,EPa,|frpHa4<NuEPa|fTpI`EPa|fpJ`pK`a:|f,pN`a(|fpO`a|gpP`pQ`aaΰ<(fa°<faBJj?Ha<,faVBa.f~ yg2Jyfav<,fa&Baf~ yfxaN<fl?a>L4aNu,,,EQa|fpS`pT`apV`xapU`apW`EPa纰|fpX`apZ`ap[`8E a现|g|fp\`Zp]`TE aj|g|fp^`6p_`0azfpd`$pe`a^pgJyg`aJ0<`a>0<`0<`0<`aZa"<f@a\0<`a>a<f$a@0<`a"atk f0<`0<`aaVkf0<`0<`aa<fa0<`0<` 0<`D0<`a0<`f0<`^aa0<`NJf #`/ *ya:*_Y09 taB@a y  #aS<,f<`a09 a a<,f09 2aj0<(a>aS<gB`<g0<fa0<aRa`<;f~aTS<fp`0<a.RBgaaB3V(AV&aRWa<,fa<g`,S09 2a0<J_g0<`Bm;|,=<-aʰ<(faS<#gSa0<)``R?:aZJyfg k0<apa~<,fa. yfg k0<aB30<*`aAV`2B+LB|+LB|a\AVatBgaS<#fRaL0<$aa<,f>aJg<:g<g<f4aS<f( p+JWg0<&` p,JWg0<'aanf TAVaZNuaE a0<`aa(0<`a0<`pa0<`da0<`aEa0<`taEa@e|d@`PaEta`29 0a0<`.apa0<`0<`aXETa&0<`aDah0<`a4E0a0<`0<``0<`Xa0<`La0<`@a0<`4a0<`(0<` 0<`Eap0<`aa0<`naa0<`^a0<`Ra0<`Fa0<`:a|0<`.apak f0<`0<`aR0<`aF0<`a:0<`a.0<`a"E a|f0<`,,,,,aa,f0<`EZ(aޮ@`?<` ?<`?<aakf0`f0R@`^aa0<`Naa0<`>aa0<`.apaìf0<`a0<`aR0<`aF0<`,,3a&Ea°|g<f?<4`?<6aXkfB@>7`>8B@`a<fEaݰ29 0ah0`3aa ekf0<9`^0<:`VBgagEvab|bv>209 a0<;`&0<=`0<>`aXaªkf0<?`0<@`e.a<f"aXBgatgd09 a aWaʰ<,gS09 2a0<A`0<`?<`0<`?<` 0<`?<aa|<fa0`Xaf0<<g0<<gIJ<g`fap0<`"0<&a`vaXa|0<`0<`a@a<f&aX0<`0<`daa<fa40<`0<`@0<`80<`00<`(0<` 0<`0<`0<-`aa0<.`naa0<`^aa0<`NaE a\|fp0<`0arEa.a>0<`a\E a(|f<0<`a>aJkg0<a0< `0< `,,aa`k f0<`E^a0<`aa8kf0<`0<`aE aڔ|g|f0<`b0<`ZEa.a:0<`aEa.aV0<`2atBgBga 8S<f RW?|a|a <,f:alWa <gS09 2a09 2/a02Nua|fJAf0<` 0<` av0<` aj0<` aBgaa <,faWa <;gS09 2a<0<` Ra|f~0<` >a |fj0<` *a|fV0<` a|fB0<` ?<`?<a:E a|f0` ?<"`?<#aE a|f0` aE aİ|f0<!` aE aئ|f0<%` zaakf0<(` d0<)` \aEa.aj0<*` FBAtBCag8a HS<,gHpaܔLRCRA|gaga <,gf:09 a 9 0a 09 a Nuaa0</` aa0<2` ,aEa.a0<3` aܜ0<4`?<5`?<7aagakgW0` jaa0<9` ZagE^af0<;` B0<:` :?<<`?<?arak gWWeP0` aT0<B` aHak*fBg`?<arf 0<C_` aJ0<E_` eE a|g|f0<G` 0<H` ?<I` ,?<Oaa*e k$g W`Waf0` ra0V@` f _OfEbJap0<U` L?<V`?<WaEbJaP0` .a*0<X`E a|fH0<Y`a0<Z`a>0<[` a20<\` a0<]`ba0<^`VaaJgE^a0<`` 0<_` aa0<a` aE aզ|g|f0<b` t0<c` laakf0<d` V0<e` N,,,,,,azEaH|g|fV0<h` 0<g` ,,,Ea0<i`a4Eaа|fa<f a&0<j`,,,,,aEa0<k`a 0<l`aag a0<n`0<m`x,,,a߮Ea|0<o`XaT0<p`aߎaVS<f*RE aL|g|fZ0<q`0<s`a|a<f:E a|g|f"0<r`0<t`,,,,,,,,,,,,,,,,,,,,,,,,,,,,aEaӠ@u`|a޾Eaӌ|g0<{`b0<|`Zaޜaa`<,g<g S0<}`8aע0<~`,a0<` abak fJ0<` e>Eda0<`a8ak f 0<`eEa|b@`aJyg0<`0<D`aa09 2a0<`aa8a<,faBga ga<,fa>09 2aX0<`na0<`aڤaf0<`Pa0<`Da0<`a0<`ٶa0<`٪abaa&<fDav0<`aBaa<,f$BgaTa<fa<faܰ<fa\JjfaXA,a&Wa<,gS09 2ah0<`~-aټaa<,fa0<`Zaٜaa`<,f~aҰ0< `:0< `ؼata҂0< `"adar0< `aTa<f:aV0< `0<`a00<`0<`0<`\a<fa00<`aȰ<fa0<`0<`$,Eav0<`N0<`Faؾa0<`laبEav0<`R?<` ?<`?<Bgagaю>09 2a0`,,,Ea@*`?0gR0NuJyfNu/a>R _NuJyf0Nu/a$0T _NuJyf Nu/a X _NueAd NNuH :":$:Ae e Ђ҂`򐂒`##"aL NvNu~ :haȮ zP :PXLe :RJaȾNu0@09 n` 0@09 haa a0H y!HNu/ |~c a&@~`a # NuJy>gNuJy>gNuRNuH2<`H2<0@gaP`LNu0aBeNuJy>g.Jyg/aR _Te#NudRNuRNuJy>g.Jyg/az0T _e#Nu:dNuTNuJy>g.Jyg/a@ X _e#Nu*FdNuXNuJyg/a X _Nu NueAd MNuHaj :|":|$:Ae e Ђ҂`򐂒`##aƶ zD :DDe :>g z*aL M Nu~ :a| z : e :aƸNu @&      4 p   2   " 2@b        4. ("l $(L. *,>6h,  :  ^":P  X "   80,$d  &  $*&p $,,$,    &  T*08 6  @B:26H "Lv*"  4"8 &rL,  ,B,"4,@ 2"^  "   "B  `TF.|02V(6:,$<   *N"Lx&f.4r(j@VDj h`4(Vxt&Tb0.0 BAD FLOAT TRAP BHz?<&NN\A8NuA #NuHk C"qNJg@CL"qNCNsJgfpNspNspNs&<B(<4VxNs/<B/aXP//<HajP&(<4VxNs/<H/a2P//<BaDP&(<4VxNsv(<4VxNs//aP"<4VxNs//a4P"<4VxNs//aP"<4VxNsJg//aP"<4VxNsNsC/ rg < gQBB)aX"<4VxNs4Vxg/Cdf  _SNsH| ##JEf2JDk.|ex?//a>O JDf (.fB L>Ns<Ae?<`<1e?< `?<Hz/aO "@ -fR I 0g,g<.fJEfpdH<eNs4UBe0|p H?Hz/:aO A"z -f.E2jr`|erg <.gSAfBJDjAg <0g$H`"JE+0< e )B `0B zp L>NsJ@g BBvAb`BC4\?Hzq/:LahO Aa"z8 -fEg<.g<0g` Jp02jr`|er.EJAgg <0g$ISAfJDj"JJCfBE-0`>/a .XNs/a X"<4VxNs//a PgpNspNs//a Pf`//a Pm`//a Po`//a |Pn`//a nPl`/a#aF./9a jP"<4VxNs "<4VxNs/a*X"<4VxNs/a X"<4VxNsNVH..a LN^Nu//a P"<4VxNsNVH..,. a LN^Nu/a X"<4VxNsNVH..a LN^Nu/a X"<4VxNsNVH..a LN^Nu/a X"<4VxNsNVH..Np LN^Nu/a X"<4VxNsNVH..a LN^Nu/a.]B/a ,P"<4VxNs/a X"<4VxNsNV/..N .N^Nua "<4VxNs.//a P@//<Aa Pf//a P/aXNupNua//<Aa P"<4VxNs/a X"<4VxNsNV/..a .N^Nu/a# @.a./9a P/<B/a >P"<4VxNs/a X"<4VxNsNV/..aZ .N^NuNVH-n Jnnp` nop`0.R@8BGB/.N (Pl n -R /.NX-@B/.N (Po.`/<D/.N~P-@SG/<A/.N (Pm`/<D/.N FP-@RG/<D/.N (PlG|0H/N fX-@`/<D/.N FP-@RFDm/<B/.N FP//.N P-@/<D/.N (Pm -|ARGJGl4 n 0R n .R JDlD|` n 0R SFGnBF`j/.N X:0@0"n R Gf n .R 0H/N fX-@//.NP-@/<D/.N~P-@RFDm n BR .JLN^NuNVH KIBnBn`R n  g n  g n -gB@`p=@ n -g n +fR`$ n .fRn` nJngRnR nJg n eg n EfB n eg n EfDR n -gB@`p=@ n -g n +fR` nR nJfB.a-@.N=@Jng 0.D@n`0.ܐn=@/.?.a:T/N~P-@.N -@Jng .JL0N^NuNVJnl,-|A`/<D/.N FP-@RnJnm`*-|A`/<D/.N~P-@SnJnn .N^NuNV-|`D/<D/.N~P-@/. nH@H/N fX/N P-@R n 0m n 9o .N^NuNVHB/.N (PfB`B/.N (Pl/.NX-@z`BEBG`RG/<B/.N FP-@/<A/.N (Pl`SG/<B/.N~P-@/<@/.N (Pm/<Y/.N~P-@/.N X-@ .-@G@0@HJEg .JLN^NuNVH..,. N LN^NuNVH..,. NLN^NuNVH..,. N LN^NuNVHJl| .D-@`BFJfB`^~` .-@R .f` .-@S. g .-@@ JFg .JLN^NuNVH .<JgJFlB`V .:|oJEg <` <`0..F`RFJFm`SFJFnJEg D. JLN^NuNVH..,. N LN^NuNVH..N LN^NuNVH..,. N LN^NuJj Jjf NufNuJNuNuJg NugR kjklf`>k^g>k^g2k8<d,&B<ރeNuRid~S<Nu.NuJNu<oD&B<ރeNukgvgPk<<d&B꫞kBSbHGއ[kgNu~Nu<oD&.<`DgjD`JfJ<NuHFHG`k~Nug(gvEDiBHGHFFkTiHGDL&:ƞHGHF6BŞd&BރSE&HCBGHEk:څS>:.gNugRghEDvi^E]HE:BB8HD&HC؃HF&؃BDHDHGHFHEބj gNuSiex@ބއdRgNu~NujJ<NuNVH*nBGBF`RHH @ +fR` -fRRF` H@G 0m 9oJFg0D@>0JL N^NuNVHJl| .D-@`BFJfB`^~` .-@R .f` .-@S. g .-@@ JFg .JLN^NuNVH .<JgJFlB`V .:|oJEg <` <`0..F`RFJFm`SFJFnJEg D. JLN^NuNVH..,. NR LN^NuNVH..,. N$LN^NuNVH..,. NH LN^NuNVH..,. N LN^NuNVH..,. N@ LN^NuJj Jjf NufNuJNugR kjklf`>k^g>k^g2k8<d,&B<ރeNuRid~S<Nu.NuJNu<oD&B<ރeNukgvgPk<<d&B꫞kBSbHGއ[kgNu~Nu<oD&.<`DgjD`JfJ<NuHFHG`k~Nug(gvEDiBHGHFFkTiHGDL&:ƞHGHF6BŞd&BރSE&HCBGHEk:څS>:.gNugRghEDvi^E]HE:BB8HD&HC؃HF&؃BDHDHGHFHEބj gNuSiex@ބއdRgNu~NujJ<Nu/./.NP-@B/./.NP/NPl/.N`X.B/.NPlD/NX-@ .JLN^NuNVH..,. NTLN^NuNVHJl| .D-@`BFJfB`^~` .-@R .f` .-@S. g .-@@ JFg .JLN^NuNVH .<JgJFlB`V .:|oJEg <` <`0..F`RFJFm`SFJFnJEg D. JLN^NuNVH..,. N LN^NuH~,<AB'ebc FGNCD<c|`8|*< Art`ڄܐ(&䣞j.XRQN .Jg .<ANJgL~Nu/Npi /,.<AN,NgSh~L@Nu/Npi*/,.<AN,NgSh~,.NL@Nu/Jg0Ri0Npi2/,<AN/./N,NX,Nu.<`.<A`Jj Jjf NufNuJNuJj a<NuNJHNL8Np?<`$?<`?<`<bTJNuBgJk<8cH~$<cP<c <L~TNu,<>.NXDxB΄,<CN,.N$(< .BJkFD<c~䯾o$`D<c~DDl`z,k^g>k^g2k8<d,&B<ރeNuRid~S<Nu.NuJNu<oD&B<ރeNukgvgPk<<d&B꫞kBSbHGއ[kgNu~Nu<oD&.<`DgjD`JfJ<NuHFHG`k~Nug(gvEDiBHGHFFkTiHGDL&:ƞHGHF6BŞd&BރSE&HCBGHEk:څS>:.gNu<Jj~`~<L~Nu.<AOJNuH~?g$,<;ANi`D<o< l",k^g>k^g2k8<d,&B<ރeNuRid~S<Nu.NuJNu<oD&B<ރeNukgvgPk<<d&B꫞kBSbHGއ[kgNu~Nu<oD&.<`DgjD` p|T0@6D,6 :"P :   < *80 ( J X$ fBJ|, ((T *6 *8mmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmm??`|?/  ~ _W+ ~_W*mmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmm`\`tt 08Musics M / haw GGp1S$~Z8{fR?- wqjd_YTPKGC?<852/-*(&$"   0#pNua##*Nua 9g#NuH~HC"qNL~Ns0:gRBy:>: ApJ0gS0fQ3FGI4:gyDdydDzgB<:tf Q3H`,f2PAt2ItRAta`M|$zzJVgVg MQ`vK6.:20kJn g@ gJ@`@BDgz0 D`eBDLA0@0@4J   g@RBA0HAb<=CTC=C0Jng(Jn f"Az00@p@gHfp;@ mB@aJng4K mB4`B@a`Mf Jn g n g =n`BV `gE?420H JXC=CJfKH;|a8`0 f=|K ;|a` f=|a` fBA20=A =B`zgr020TC=CE Edn2VAJfBn `H f=| `2 f `$ f@?@ g@ gaf` f2KHBU` f2BnBm ` f2BnBU` f@A``KE|g-eKQ3: zN-d0f0 @gZ24YmY9HghHtR@A`THBA4mjBA` 2c2g0P@A`$BA,mjBA` AcrAA-fP m-0ka`<gB@a`.B`(+HB@p20;AX@B-Nuan cifb#JX3BByDBAM0g =@=@=@=| <BnBnMRA Af#>3:NuBy:ByN3F3HBCp5BQC\pSBQp C.BQI$|8Gt Bf a` t QNu,?@NuAg&SA0:3FAFAPAB(NuAgSA0:3FAB0NuBy1u=.1+yN' N)N! 1c u1>!a}' a' EqXhq uluiuuukG|q XzvdSpBuff @mouse.spr@ P H~## f^# ,H#b#^3\H#f#j @d,SFBQ/aP _pL~Nup`6:A(BABHBBBHBNuxAvCNBGRESEgJPfBQQNu<h dBi` hl3F<( hAd3h`hlDFh3F<h dBi` hl3F<( hCd3h`hlDFh3F<( i@3F"ii3FD<( iB3Ffii3F2RG`>ByVA:ANu?a2BJPg>8(:BdBDB<(>CdBFCBBAPAgJPfRB Bf3VNuhbheܼhb־he`arBBJPg0(@2(HA2(A3VNuJy f>0:2:4:6:zaJJGg"E0HCAJQfJGfNuSGH>:$h&J(z0(@0(i@0:fi"@0)Di"U@:@T@2)ifSA6:(<<E2:P@A3 JEg2)̲hfS@2(@A3 3 Jiga L`:0:S@k>g0z2z2:JEg^> fxp` 8*0+JGk80T\Qg8 8T0\QQNu0zR2zP4:NJEg|> fxpr`8*0+2+JGk802T\T\Qg 8 802T\T\QQNuJEg2C> f xprtv`8*Q0246JGk280246T\T\T\T\Qg8 80246T\T\T\T\QQNu$yNJy f6"z<:v>:SG2:4:a`FCSF04QQNuJy f:2:\4:\$z&a>:.4:PBCSB2:DSA&z06QQNuzorz l4:zl`zo89 zoNzl6:zl>zo::3 3 3 3 <>B3 C3 By Nu3 NuH@<`(H@JgByVBy ,` HBy ,BBD3 A@# (J@jLJPg`BPJy ga4( 6( 8:hhaaJy ,f(1Bhh6agRCJ@gZ @xlREmL BlD3 3 3 3 "3 &3 $1@ 1A1B 1C1D1EJPf0`hgJy g H aL04:̴h m4( 0( h2:z@l8`86:h m6( 0( h2:z풲@l:`:aJHzn(<(6GcaaHaa`R4( 6( 8:hhaaaaad4:6:8:zzaaaa@p`B@3VLNuBy ,B@`aJPf 3VNu4HA62ABByV3 ,B@aJ@fhJy fFH y (C<0:v2:t4:r6:pBDBGa y (Ca$z"aaLB@By , zTBP3VNup`ByV3 ,B@ABaj y (BPJ@fJy f"h$I0(H&J2(zf4(zf?(z6(fSB6Q`BxC::SEUASB<>MTB0,Q>MB 06,QQQ8hSL>(SG:z:6j0 2QQ` y g6< zBA&J$KBDBB0 g RDff Q2QQ`Cg&I0 6QQ>B@Nu0 8LD&I(J8D DNuJy gJy fJyXj?<%NNTNuKEI.BB|64<"MBAxJQgilig m &LBE4)6RERAQf SE4SFQ`JFkr4QNu0HANu3 BNu3 fAp0QpNuByVaa aVBNuABCDJAk`Ac.azFd z>e3 2az,e z(d3 Cc$zd ze3 ze zd3 BNu3 3 3 3 `ڱf zNu# NuByVBy?<NNT3 g* @g3 3( `"3 3( `3 3 3( 3 09 @(3 0<X y f@3 a6By a@aaBy a Ap2<BQQBAa\a@BCa 2<a p3 yPBP3pNu8<0a8žDOdRSESF0:S@k.g04QQ` $QQ` $$QQ`~0S@@LSESF0:S@k.g05#QǗQ`J %#QǗQ`6 %#%#QǗQ` f0AzFef$Ha&JL$Ia4:J(CSFxGgd:ESMgSM0:g @gf K"Jg0H@B@::g& Gg>4QQ` >$QQ`>$$QQ3VNu$DU5(C44K:IABIa랖E.KSDSE0:"g* @g<2QQ` <"QQ`<""QQ Nu DU5(fLA:<Qi680:HKMJAjrUdJBjtVdJEkgUe:JFkgVe<AgkޜBgkDCADDB0HVH:@0HKCDLXAIBa,K0\QQ`^&I(J>028AFDT\T\QQ`6&I(J>02468ABCFDT\T\T\T\QQpNupNuBy f3 # aBNupNu/?<&NN\Nu <+`#-NuByVByBylBy 3X 9.# ޱfAb#PBP yV# 730:HA20SA3b20SA3d y# ,bNuJg yV Ӹ zԔ ӴNu???/  f"zv@d)Ag3@@((f`H0(HA2)(HBJ@lB@` zچo0:ڀJAlBA` zto2:n23A"_420NuH?~HM,VNL~NsByVJAf 3XyXk@f<3Z3h` ByVJAfByXyXd 0<a3VBNuByV3h3j3Z3V3ZBNu z:0z٠2(zٚNu z&0(Nu 9Nga `ByVAC~|JQgkJPf|02)g1A4)g hg|1B6)gV$zܲJy gP8:ܮL 2@gB&@Lr@ b41CKE0!KBD1D1D1D1D` JhfBP|BQACRG GfZ0:PgJFga:۲$h&J0(@0:ۺh 2:۶h AH0:ۤ:@UM2AK3 :(|EJEg2( hzpfS@2:^h g2(@I3 3 6:DSCaBL`zC(xBABBBCJQg f0a~CRD f3V3ZNuByVNu zJCf,BABB6<8< y gJy fKLSCSDByV3^3`AB3b3dK0L1D3VNuByV z\zIJzd0zָzָd1B3VNu0< zޜBBQNu zގJAg AdSAICdEd 0000BNu <Nu AdaRJPg4(6("zH2<JQf PQBBNuQeigdieigdDAABNug& g 0m 9b><Nu ae >EB`:By NuDBJy f A^B`AFTB# 3 3 3 NuByA0<;BXQAB0<YBXQA0<BXQNuByAgMSA4 BVI*z(MBn-MBn 6<a (fOMˌ>,K̬ INupAgaaKH@aNuJUgr2- 0HH2-AANuJBfBVNu BfVNuVNuBCAf `rvan,LBya Q`vAf `rva@,MByaQ`Ag?a2a2BC` aarvaByJBf V`<Q`jAgxaByBft=BCfv=C=D<`03NuJyf(zv`fNu3 3 Bf ?aa43 Nu(zF::g~y fr3Ӵ By A^"yNC}x g> 0@w2Aw@g,vH@HAtJB@BA陰AgbR@`S@@Q0 UUQ3 >:g^Byl<SGAE@0f6Q3l`6(f2(0fBA0BI5IRA AeBA1A`0:g(y f3 z0:20UHQ00:.g0:*k ByVa0:ȸg0:ȲgByACEȞ~JPg ^,VG63G83BFGB[BBRFFgB:ôEg64`"HG&GK:GK:GK:K:G:<4|(K <`(KpB>9޹#,GREEgB>Ĵg4G> I:G*H>3ANu0<NuH0M .EFABa$I A=A2a٢&J24ABa$H A=A2aـ:9 09 H=@ :ESMM8EL<=A=A>=I=I 46.8. J"K2: H0g0 `0 2QLFe Qx`GSDjxSBg Qv` 0.n d0.n SnfBNuByV͝Jg PbE RI:r09 HI>42(A<9 N:9 8LSE$H&I 2H@6C H402g`6Qͽeg`3VNu5    0fL&p@b&  $ (h0 "  @    8  Ɯ0    RCl6mp a.p a(JEg2,gHAA9A2JAg*l8l:l4gel6geHADybEybBl0alHF0a*69:Cydx3$y)JH#By09AVA aZa taFa By~0,2ga8a Xa<09.9#3`Ha /a Nu2,2g@f09@2?,?,?,0Bl03a (BlPE0,2S@Ha22,4SAa&QaR@86,6SC:<B@2a <a0,B@BAa?,?,a>,? 2?,0Bl0BlP$H:,<<,>BCBBJyg 8B`(HD fDf a`Gga>aDRBEeRCFeBy9_08a02aRNu/9~,9A0`4l<yb 6l>yb4,8l@6,:lB9@@B9@89ABC9A:aXaB@NuH9DJygLL:LE`:LDE0a t0a 4LNu309`By@.9gP#3IL$lH&J4,<>•yIL6<.9g>Hf6)JH8,<>LSD4Q0,2,a)HL)ID`RC CfA290B02<J0g0l0QJyf aa09ڰyf$3AB@ gR@ @mByB@Nu @fAB@ gR@ @mB@`^0<`20<`*0<`"0<`0<`0<` 0<`(yNu09Nu9Xp"R@ @m9|Bl Bl.0,9@,@9@*9|Nu0,9@,U@9@*Nu0,9@,HR@9@*Nu3Nu3ByNu3Nu yfXJyfNJyfDH(yJlg.lf$9l0, R@ @mB@9@ 4"aLNu3H2,*"lD.9N<,,l*SF:9SE6KGR8,SD0yJkXaJl.g2$I4 0*NfxTJTMQBfSJQQ9|.`8Jl.g02$I4 0xTJQBfSJQQBl.LByNu<>JyfJl2gRFRG9tp8tp:><NVF"yNuMVJyg* yg@H@`@H@`@H0, gNuaJ,l8, g,l HB80Ȱyg0 2DgSDgSDLSD:lSM29SASC<9>,4SG4 :&Ig0$NTJTKQSKJDk0$N6QQg0$NTJTKQQQ`H0HS@Jyg" yg<HF<.`,.`,.""QLNuSCSB8,<Jyg"0,@@ :$H4QQ` ,@ :$H$QQNuH?4,4B@va~a2aBaLNuH4,46,6B@BAaValBAaRAl6fa aLNu?0,4S@atJyg2,A02Nu2,HABA 2Nul4dl6d a B@Nu0<Nu9@9Aa)HL)IDNu0,H@0,Nul4dPl8HNul6d,4SGSEJyg8$H4 QQ`8$H$ QQNuH Ag(:B@BAa:4,<<69>aLaDGDCaX`0,29R@t4g 2,`a~`F0,g 2,S@`p0,4S@9@`0,2,gSA`PJl0f\2,6SA`>092,RAt6g 0,`"Jl0gSA`0,BA` B@2,`a`BlJyk3/<a Nu9|JlgBy9| yg/0,a Nu0, 9@Nu0, 9@Nu0, 9@0,a)N 0, a)NNu0, 9@`0, 9@Nu0, 9@Nu9@>JygGOOl` lGla)N Nu9@ >JygGOOl?`lOGlaJ)NNuB@` p`p9@PNu9|0NuBl0Nu0,2,`l4l@l6l8aB@Jyg8D d< Nu(HD d< Nu0,SG6y8lSL yfl$I: FJf.UVhQQ gZAlBG` fUhQ`UVhQ` yf$I4 : vFJfF]^hTJQYMYNRHSEjQ gAlBG`SJBfUJ` f]hTJQ"`]^hTJQ `$I4 : vFJfF]^hTJQQMQNRHSEjQ gNAlBG`SJBf]J` fUhTJQ`UVhTJQ`(y0,29R@t4gn9@ yfB0,ѬDL`DJyf L` L29SAI ,D4,SBgAR@Q)@DLNua a`H`hBz ( `f#zNu3~0X` p lLJyg 2,B0Nu2,HABA NuHJzgS@@ yzXd yg*H?,?,a:aaa20abLTABh0,l@2,lBJyfJl2gR@RAHE4, 6,8, gC1B1C g,Gt)6QGG tSXQAJg H L/9N#N #NLNu>< y"yN""""""""""""""""""""""""""""""""QNu( h&  $ "    @$4 8 HL B:   6, Xf B    f6 d 8 8d"N8 dJ ":z<$0L  ( `8>FL @ &N ,mmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmc!  !"#$%&'()*+,-./0123456789:;<=>?@ABCDEFGHIJKLMNOPQRSTUVWXYZ[\]^_`abcdefghijklmnopqrstuvwxyz{|}~lll6666(>h<&|(fl0fF8l8tv00`0 f<f<0 0`0 ~~0  0fff~fff<< xflxpxlf`~|||ff|```|v|ff|ffffff>ff>|``lvfff 8``flxlfl|fff>xl```<`<|00<006f>ff$<ll8lfff>|~ 0~00p008  8` $$B~<``<Bf>f;f<>f;p<>f;<~;<``<<pf>Bfff>|B<@@<4Xfff4XbRJF<>f;< |)B*R$HH$H$ $H4X<~;4Xc~Ɵ|~~c>  UUUU3333*@\z:Lft &lPZNYMXTYMXTXMULYMULXENCREmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmc!  !"#$%&'()*+,-./0123456789:;<=>?@ABCDEFGHIJKLMNOPQRSTUVWXYZ[\]^_`abcdefghijklmnopqrstuvwxyz{|}~fffllll>`<|fl0fF8l8pvp88pf< 80 0 ~~`0 0```nff>fff~fff<<f<flxpxlf`~fv~~nfff<ff<f>``|fff|<```<>fff>ff>|``|f8<p``flxlf8<|ffff>|f```>`<|~f>fff<|lf<|~ 0~0p p` 44b~f><>f>p<>f><~><```<<pf>ffff>|f<``<:0|00~ff<<6f|ff|`0|000` <~> 8< 4X|fff4Xfvnf<>f><000| 6kÆ6n֟6ll6l66l4X<~>4Xc~Ɵ|~~c>UUUU3333 )f )fmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmm?~耘@@ omkDdppp^mmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmm???  `@?0?0;3@?0 @ ?0 :mmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmLionpoubnk "zj^Fcz @`pa73DUffUww@UUVUDK@UVUUVUD@DD@D@UV *UUVUD@DD@D@UV *UUVUD@DDD@UUVUUUUVUUD@DD@D@UUV *  UU??U<0?UVU<<?U<0?D@D@DDD@D<<?@U0 0 0UVU ?U<0 0 0? ?U? 0 0UVU ?U|? 0 0DD@D@DD@ ?@U 0 ??UVU ?U< 0 ??? ?U 0UV5U;@UVU>UV5U;@UVU>UV5U;@UVU>UV5U;@UVU>UV5U;@UVU>UV5U;@UVU>UV5U;@UVU>UV5U;@UU@UU@UU@UUWwvU@UUUWU@U<0<U<0<UW0 U0 @U? U? UW? ?U? ?@U? 0??U? 0??UW? 0U? 0@U0 0U0 0UW<0U<0@UUUWU@UUUWjUD@UUU@UU@UU@UUWwuUWwuU@UVUVUUWUWU@UUUUW<UW<?U<<?@U 00 0U<?U 00 0<?UW ? ?UWU ? ?@U ? UU ? UWUWU@UUUUW0 0UW?U0 0?@U<U0?U<0?UWUWU@UUUUWUWU@UjUjUUUUDD@UU@UU@UU@UD@`6 ``06  ` 5q6p )3`L<›60 9` (8 6.0Î- 0 l 8.þ- ofoo?oY{o|;lV,-  hRh  ``;6  `?`?6?Æ `8886?B У`h886of ٳ`=x6 v s``06  ``06 ``7>6 `76 `?6 ``=6 ``?6 ``?6  `0`0 6  `@`6 `6 `6 `7=x=x=x=x=x=x=x=x `6 `6 `6 00` 6` 00` 6o 3`6 70`;6 7`6 7`?6` 00` 6` 00`6@@ `6 `6 `6 xl 6 0|n 6` 0y6d ?0O6d >0Oy6g 06g 0|n 6` 0|n 6`@ h$ 6 `6 `6 `6 `0~~߿~~~߿~Ã0pÇ8ppÃ8pÇ88p 80`~߷o 8p`Ã߽~߰p 80`c$Qq @`pa73DUffUwwUUU.U{_U.|0 0<U0 0< {\ 0U 0 .| 0U 0 {\< 0U< 0 .|0<0 U0<0  {\00 0U00 0 .|0 0 0U0 0 0 {\0 0<0>U0 0<0<.U{_U.U{ZU.jUD{U(8xxxxx<<c(Bm @`pa73DUffUwwwwwwwwwwwUUUUUUUUUUUU.U{U_.U?{U_ 0.U0{U_?{_ UU ?. 0 UU 0?{_ 0=WUU 0>?. 0\uU 0?{_^U?.TտU?{_^uU?.}ؿU?{ZU.jUD{U߀π߿Ϲ߿Ͽϻw3Dc<" @`pa73DUffUwwUUU.wuU<{_UU<.wuU<{_ 0 0 0UU 0 0 0<. 0<0=wuU 0<0><{_<. 0 0 0\uU 0 0 0<{_^U<.TվU<{_^uU<.}ؾU<{ZU.jUD{ogfcd  w@`pa73DUffUwUUVVDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDUUUUUUVV ?? UUUUUUVV 3  3   ?0?3 UUUUUUVV < 3?   30 UUUUUUVV? 0??0001UUUUUUVV00? `f00?30?3<3000?00<31UUUUUUVV00? 0`0000?300?0001UUUUUUVVUUUUUUWUwUwUwUwUwUwUwUwUwUwUwUwUwUwUwUwUwUwUwUwUwUwUwUwUwUwUwUwUwUwUwUwUwUwUwUwUwUwUwUwUwUwUwUwUwUwUwUwUwUwUUUUU **(*(* **( " 9sL! mmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmm< ?~耘@@ omkDdppp?          pp/oooo  @ @?  (8(8?@=@?q@ @q@@@ y@=@?  ???  `@?0?0;3@?0 @ ?0 xx??L`?0  8````??? @ 0?8 <?? #_??//9m8ؘ|`x`|ymyÀƆ?????????~?8<8?‚8p8??Μ8p?ÇÇ8?sΜ8Ã8|p??ΜÇ8pp@@@㶆ymlx|`xۛ`a`|m?y{n3gmol 3{yoml3Sccg``~><????????? 0 зh6 ;xߴp0 0  6ݭ s 9,  @$ @ 0 0 @$ @    @$ @$ @$    " " " " " "  @P@P ( ( "( (̣(2(2 @`  !r!b!r!r``@P@P ~scP@P /@7 ?  0$< < 0$ `x  `lll``  ``````bP4@P@p  8 ( ( "(  "( (  ````@$ @$ $ @$ ( (  0 0 0 0 0 0 0 @?6ݭ   0 @0??0 @  .. c 0 0 0  ``````! H5wTմ(4 "+⸮+( ⸪*m"8?`bx"@ <" b /?@  ? ."     ```````?|??`<px90 g8p~@>?Bc  @`pa733DUffUw??@}aya}ۛl< |8  B`OJD, ̀ c  @`pa733DUffUw??@<6<fgc`ێ  B`OJD  c  @`pa733DUffUw??@kss `ga`ߟ<  B B`OJJD 逯 Հa 0 !c!  @`pa733DUffUw?>=?OϏO?@~66sysۛ}?#?  B B`OJJqD-݀ q 0 !c]  @`pa733DUffUw/y>9>y "Q((ER>!(}y"b"Q((Q<"y>9(<M|A}<D9DAAAQQdDAdyyPATÁ|ATAA0AQLADAL|A}<DDCD/y>9>y "Q((ER>!(}y"b"Q((Q<"y>9(<M|A}<D9DAAAQQdDAdyyPATÁ|ATAA0AQLADAL|A}<DDCD@1a?1a1a?1a oٷnݻv۳f͛6lٳfmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmm`brd,<0.D*h |d&&& >8>.V8*:&6 ,,2RF*(((JD<":> "&(b(.B"20  & &FFRV..vz"|r,B0BZ4 B<: < $..  "" F"bVD6b>&*@6H,\\86D D&&<  "f8n|Z^Hp$D \\2V&&&t \ hfb 0(.H2* 0    ... H  8,R<"6 &&.d".*6**,6" \tB  666,4$2(*2B8`D0$6 $ @ &^ "(, (H2\xn`z$&tnV4*,>2D.04$$$NJ*H4Hz2\42<z4d2D  tz@D& B",,Nq+m mBX+H,m ,Etg jhH &NLdEQ, n$Ng$<f~`Af`ޝR` n Xg` nJg`A Pg`A ## ###Nu(&$"pNF--Nu&^$^<gD>gDv6GeB|d<NCNu/ &H6< `N&Bg?<NMXJ@fN{Qp m A@p BQNuJf.NuJf.Nu m P PAg dp m NAXNu g"d m PPAg dp m vNFE +J0>N- Nu$?<*NA>v NFE +J0 >N- Nu *>Nf/,m 8NhfB@>OaBg6Nhf.@?@Oa.g"NhfH@@??<-NAXJ@k,_Nu,_p6 m Nf/,m 8NhfF@>_aFg:Nhf2@@_a2g&Nhf@@@_??<+NAXJ@k,_Nu,_p7 m &<NFTBA8-g gRA`S20gR+H0& f `h/?,JN$N<,_:&&fBCgmf$fJf gJg pNF&&`,$"p NF&` JmfAPN~NC.Nup m < NC?0<><NC,m @2-bAfB@BA`0<22<&m |G"m tCJmg4< `4<2<  $IBCJmg  KfSg RCBmlBl RC` RA(|mf `| fB m @><NC0><NC,_Nu>>$H&N&dRS@k(RddzQ,gnNF m0HUQ+H"m$00 R@02SGk R@00QJgk - "- SfNuBSfNu - H SfNup m EAdf$&`&"Ce C$)` P#|#a#ad! !Jfg&E"G~dN SGg<.f" p00 gR`$k$" 0g2S@H2Q`"- H$`$k$`eJ,m Xx g:k&@`" @ g(m0T(TH&LXSgJfg&Jfg. `+ILNuN --NuB - ,g+@Nu R`fX+JNup! m ,THNup m < NC;@zNBmBmBm;|;|N'JmgDB@>< NCJmfp `p N+0<BGNC0<NCN2Jmfp `p N+`.JmFg(B@~ NCpN+pBGNCpNC0<NN++H+h+h 0-HAB60+C60+C60+CBmSC;C;|BmBm0-rAr$m."j p,2Q"jp 2Q - A$!@A( A#$m `&m \4d5|5| 5| 67|7|7|7|7| 7| 7|7|7|7|ps"- hNB0* ;@#N-<N--NBm;|-<-<BBN-<-<N-<-<-<N m pBXQLNu oHg oIg/:Nu <NsBNs@?Rt    ( xXt    ( xXtt    ( xXfr~&dv;C>ABBB0-S@g jTAC^`CxRA0H>1B@g0TR@Ac;G$m `&m \46N 46N 46N Nup m Bd:$m `&m \"m d23C3B3A645| 5|5m N p m -N .dNp m "m d$m `;D2;C3C3B3A4 5|Bj5| 5m N p m ACEG??JAjBAmdJBjBBmdJEkgme:-JFkgme<-AexgvBgrep0_@gGgCE0_@mlLmlFJCj0BCD@@e8g6@JDj0BDD@@e&g$@0Eme@g0Fme@gpNuXpNuN/N C"_zp!NENu *//N/,*$"N C"_&(Nffp!NENuZ(.$"N"C&ACdVdPbJbDe@g>e:g8:MpmmPHx@&NF-$H4Lp3NEgR+@Nup m e&@e8e4JGfp*NENuJmg?pNE2"mp*NE"m mBp!NEpNENup m UBg jAJ6<`AH6<`AF6<ANrNCrNA 0pgNuNLR|gD/$adAJ00 A@@@H@@ @ NN`z/$&grdj>UCg jA~6<`Az6<`Av6<Ctad:J01 @H@NrNCrNA 0pfN fNu-N M / haw GGp1S$~Z8{fR?- wqjd_YTPKGC?<852/-*(&$" v"dN-Nu "dNNu"$epet???<#NN\Nu&JkByBe6<;C@NuD;|B`vNF&gd0+H- Nup m d>d.HAb,2HAFEHL<<-HF<-~NCNpL m p2NENup m < NCJ@fNup m |g|g|f\*,HNNg&NLJ@g|c|g|g|gp m Nf0JEf,}p m}0QN1N&pNEpNENuNp m |g|g|fP*,HNNg NLJ@g|c|g|gp m Xpx|ff&NgbH m B@Nk^;@hA^p NkFL$m 8$%P JpNk, I$m 8 *NkNp `p, m m m `p `p m NAXNjQNu2L>g~|g8SG|g|ffH`??<NMXJ@fN{`??<NMXLNu/Nd*Hz$/<?*?<?NA Jk: _Nup@`p<`p; m * WN$m p>* W!NB$m p* _A*BvN'Nu-- HNu (0BNNg m NfNkNgNup0 m Zd.p?&m 8AN$m $*.*t0g$^4N?-0;|0HatANaVN A m @B(a <Ldr~ - (bN mpr  QBXBQNBmhApNf$m p *fa&Ng m BNf a NgNu mhd m "Hp  QBY"H$m p!j*g*REBAg<.gRA`JAgA g`$m4-hgVSB m "Jg<*f<g<*f<ge EQ`"0-hЭ @geHS@C# Qp m QmhNu*.* .vx m 8 N'BJ-gN).$m 8N%, m 80-@N(BJ-gN).$m 8N%"06$^>J-g$ m 8pSGgQN*.$m 8N%N%(t&m0-԰|g8SGkZ<SF/ ??<NMXN{J@g$W.???<NM\QXNuJGg"/ /?+?<@NA Jk߫NuN$m 8 | ~N%$m 8$ ~N%BmJ@g ;| ;@Ng +J;|Nup; m |fH m CJfg$ \f \fB(/- ?<;NA\apN!Bmja`|f`Բ|fp ~ NCa-- HNu|fHp ~ NCv NFT$m BAg < gRA`2HaL- 0gR+HNu|f a2`n|f aD`^|d>QA??< NMT2BBBCgBgRBRC`??<NAXa m \B` Amjmhd 0a *f."m G?JfSg< geaH`B`BmxaaV"m BABBBCRA< g4fRC| fB;Bx m ~NCaN| g` m"HNuJAfH灀~pNCLNuH灀~pNCLNuH灀~pNC~NC+@rLNuH灀 -r2H@~NC~pNCLNuHJ$m @E"H4~NC0~#NC40~$NC4 I~NC~NC2H@~#NC40~$NC mfP@P@4LNuHaL4HC4Aٴ|dN02aLNuaBpBAaA:0(2(~NCNX m A:Bg/?<GNAP m "HJf|\B~NC m NCaJmvgaNuaH?< NMT,?<NAT:BDBBBCgBgRBRC|e`XE0H0*2*~NCaj0-~rt~'NCrCfraN0*2*R@RA4BCA m @B(aRD|eBmlLaPNuHa 2amj4VApBaJLNua 0-jt BAaR@QaNuHA0(mx2(~NCBmvLNuH m Jf S;H|C0)HmzBA| er@ i~NC;|vLNutp NEp NENutp NEp NENu"""FILE SELECTORSELECTEUR DE FICHIER UP  HAUT  DOWN  BAS PREVIOUSARRIERE DIR. DIR. QUIT QUITTER RETURN OK ?     #=Wi{    ?~ NC;@0~NCNu0-~NCNuH0a|B@AKg000400@g^?Jmg0r~NC0S@ m 8 QBpBGNC m 8~NCpBGNC`pBGNC0r~NC m 8SBQB m 8~NCLNuB@~NCB@~NCJBgp`pBGNCNu^lJmg`vN԰fN/ Bmp r(;|>-|f;|JGgIEGp BZB[QGEBBBCBEp J)g6BD 1@fzRBPCAdRD|gJ1@f46Q`46 mfz;|Jmgf,0<;@mJmgmg;|;EXNpN/0-~NC0-~NCpBNCp BNC m 8p'JmgHR@ QBpBGNCJmgpr~NC m 8~NCpBGNC&_BCAJXgBBN1RC| eN0Nu&6<D\?JmfDvNfZ&<NF&<rtNNvN4<?BQ;|vN԰f >0H&NNupO`pP m &kgb;CN2;_Nup `pO m BEBDJ*g^EB@*R@@|bH2@2J*f3| 3| JZpBAJgRAQAd8RC|eB;D;Cg~!NCTDTEBB0-Hg"A402B><(JmgOGc4Dv2-HA2-RA<-HF<- m @0R@H01@0S@Hhp~NCBpNCpNCBBBCaRCmf~"NCBB6<,m2Jmj:0-ne0A0BAJPg$PeTRA| f`mg aLL`.g Jmf`dBm m @0XeDXb>0.BAJg2PeheXRA`Ag JCkBBaFJBfd6ta8`XJBgBBa*v`H.fJCkN0-R@;@RC;CJm>g6k4GD Tf*S@HA@JgC$"a>L.NuapLNuJmfNuk&/ m2(fBm _Nu _JmgNu;|H,m20-neA0BAJPgPe TRA| fLNup~NC~pNCvN&IB6-N1|$I m0<W Q0<W m QN0aBmNuHBABCHPa\ m 80-S@ QBLB@HB~NCJBg m 8~NCLSB`L m 8gJg`~ m 8NCLNuJfp`pBGNCB@~NCB@~NCJBgp`pBGNCNutp NEp NENutp NEp NENuv6-Bm-Nuv6-Bm-Nu>Nu>Nu>H&NSGp A@"HBQ m P #PAg dp m NuJmg pNE#NNuJmg"m#N mzp!NEpNENu m 4 h0 hN Jy fN$m 4$jD$jE8Np m / /<??<?NAO ??<>NAONNH m pNfLNup0 m 2y 0gI@{$w0!{؜?EH?y bHɓwp/0+=K'`?c 0706 C`oBN o1/ߪ&ߔ!o+DD0Z%4-a0>@kKHs ~|? *@տ?_焀\?~|E>?"}Z# BNn?K'G' )JœB|}|`??5w tcq@_8$G .wT;G1(+WAhB* i|p$<Ԃ ]f G]#|p߉ Uq0@$J x@cPe]/ ?kHp|xLF jctJ$&9!:ުD(||P~!Xt~2)3"?CGKG{8*P dO(ƿx8/@|VDɨLr5WǨ'|"0lIMX"9DR/E[ *3H@|AD%@PڤrC/D $ |][M!$"G]g !]$%-Cr>7@@~$K=C@'2D  ~ <}ڃ@%p $qmK}e#[Ȕ?!>b  rd>q`\Txi !G p$l@"ޒH?_$?_֏<z?p_D ;p촫x l @`8كp$`? t[ `cā>TN -ߐ F8_`|pr? 2:}`@< @C?22|??G_ xp2|p`.<J<F0"0.&+048?CJOSW[fjnrv,,,,,`*$E/ JB _BNuNu&&m ,&sACE fp m 2222222rrrFF >> "&+/37;?CGKOSW[_cgkotx},,,,,,,,,,,,,,,,`ENuHA><NCLNu * Extra V1.70 by M.Cubitt Jul 1993 * H?<NATL-NuH?<:< Df$a @f*RG Gf<< GPm8<`6:<a @f:<a @fRG Gf<< GPm8<?<NN?<?//<?<NN?<?<?<?<?/</<?< NN @f | p~B Q0<aH @f`0<a< @fT0<Nu?/?<?<?<?<?/</<?<NN @fTBBBB9,39*39%9&D†399D3 @f# # 0?<?<?<?<?/</<?<NN @fTBBBB9,39*39%9&D†399D3 @f* 9 f 9 f y n y n yn y nBBB6989SDz?< ???<?/</<?<NN @f?< ???<?/</<?< NN @fh|fZz?< ???<?/</<?<NN @f4?< ???<?/</<?< NN @f DnWINDO102LIB I08X8 CR0 V 8X8 CR1 YLOMOUSE SPR \MIMOUSE SPR ]PICHI MBK ^"MOUSE SPR g HAp6\KQLNu*(&(^/ &^?</NATA Hz?<NA\?< @m4Bg?/?<BNAO < @m/ /??<@NAO <??<>NAXA/?<NA\-&_Nu8mmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmm"p2Q"9#"$09.B#A0 <*#Nu09`ܰ< gprNs0|.|0B(Ns/Hzt?<NA\ _Nu/?<;NA\J@NuBg/?<NNAPAhJ@NuBg/?<=NAPJ@k3Nu 9//?:Z?<?NA JkNu?:D?<>NAXNu/?< NA\NuafNuHppahaf&:ֺ`d~a| zaa"z )Щ$I$ BJg` g<gՒ`` z кgR#LpNuLpNu&R< & "$< ~Y fully working version H, Fg&$" "^ ^/x*.$D&D(D*D,D Am A@l Bm BlE5C 8H f>)GlHE&8>z6m6C0:YJ@gM`D FcfL:`&:<GE45EEL5G:<ȚGEH5EEH5E Bm` Bl* Bn`><BJGjDG4J4<<` Bo<FFLE@Nb AlV Am z2<` Amz2<`r Amz2<`\ Aotz2<`B A@lZ A0mz`. A mz`" Amz` Amz` z` Al> Am z2<` AmSELYT: vSELY: lSELTY5: bSCRCODE$(D)(U)(5)(() TCODEPALPALT HANIHY vSELY::h X :% hANIX1( X), >Y1,% ANIX2( X), 6Y2:% &ANIY1( X) >Y1 HANIHY:% ANIY2( X) 6Y2 HANIHY: X .ANIXST: "ANIYST: ANIXTV!: ANIYTV:i Y:i] X:& ANIVIT( Y, X): X:% ANIVV( Y):& *ANIXSP( Y):& ANIYSP( Y)2: Yȴ::p(<+ > Initialise zones,0 Left boxes: 52-60j1js Y:4 Y,, Y,( Y): Y5 Rigth boxes: 62-796kR Y:kI X:> Y X, X, Y X, Y: X: Y: Palettes: 80/81j;P,$ XPAL(), NYPAL$ XPAL() DTXPAL, NYPAL :TYPALj@Q,$ XPAL(), NYPAL$ XPAL() DTXPAL, NYPAL :TYPAL4D Sprite arrows: left 82/right 83/up 84/down 85FER,,,@:S,0,?,@vJT,,0, YSPR:U,, YSPR TYMAX0, YSPR TYMAXLN Storage arrows TOP: 86/87 - middle 88/89 - bottom 90/91 - storage 92FOV,,,:W,,,FPX,,,:Y,,,FQZ,,,:[,,,&R\,,,S Zoom: 50VT2, XZOOM, |YZOOM XZOOM rTXZOOM, |YZOOM fTYZOOMX Sprite: 51LY3, XSPR, YSPR XSPR TXMAX, YSPR TYMAX:& CURINK():& CURINK() OP TYPEFILL8 OLDZ: NOJUMP: MENNB< BLOCON: BLOCOP: HOTNB: SPRNB: SPRCUR: TMEN0 ~FILEPAL: rFILENAME$H dFLGDEB:y*b: dFLGDEB: OLDGET > Scrollings6,,\,,,4,,\,,,6,,\,,,4,,\,,, > AUTO GRAB yF%NP:LB(NP,):LBX*AB(NP,):FBABLB:(AB)</*:T$()GRABBING:*4LB SPRMAXBANK:*:T$() Not enough:T$()memory:T$()to grab!:*::9NS(AB):NSSPRMAXNB:*:T$()Too many:T$()sprites!:*::>DMIDHI(AB )(AB):NSMID(AB):NSHI(AB):AOTHER(AB)AB:ABABCADAB:NSOPXT,OPYT:Out of;NS:NNS:OPXT,OPYT:Number;N;:IX(AB):IY(AB):"TX(N)IX:"TY(N)IY:"HX(N)(AB):"HY(N)(AB):S$(N)SCRCODE$ (IXIY):(S$(N)),IX:(S$(N)),IY:AAD(AB)IXIY:A,AIXIY(S$(N)):ABAB:N:SPRNBNSH(AB)CODEPALABAB:X:#PAL(X)(AB):ABAB:XMAOTHERFB(NSMIDNSHI)OTHER$(FBAOTHER):AOTHER,FB(OTHER$)^RX:X,#PAL(X):X:,$:,o > Title2 MENNB: OP:x*04:, XSPR, YSPR,::::() ADSPR:() ZADZOOM:()( ):():():()@:()@::()::,, XSPR, YSPR XSPR@, YSPR@D,::::Version ; VERSION$;,:-: DRIVGRABI: DRIVGRAB: DRIVPIC: DRIVSAVE: DRIVBACK: |PATHBACK$ A$: nPATHGRAB$ A$: `PATHGRABI$ A$: PPATHPIC$ A$: BPATHSAVE$ A${::{:< OLDTX:q (n:_': (ފ ~!ߊ MAIN SCREEN( ~! > PlotB *REDO: OP:r2(: SPMOUSED6:|:e.'t: KM:Z26&CURINK(KM)::,,:XZOOMIZOOMXS,YZOOMIZOOMYSXZOOMIZOOM(XS),YZOOMIZOOM(YS):XSPRXS,YSPRYS:XZOOMIZOOMXS,YZOOMIZOOMYSXZOOMIZOOM(XS),YZOOMIZOOM(YS):XSPRXS,YSPRYSVOLDXSXS:OLDYSYS:OLDKMKM:UNDOFLGK > DrawHLOP:(:LINEDRAW:SPMOUSEQ(<:REDO.V:'t:KM:REDO~[X1XS:Y1YS:UNDOFLG:UNDO$(,XSPR,YSPRXSPR@,YSPR@) `Xb ,,,dTX,dTY:( ,,d)SP$re,,,:FIL1,FIL2,::&CURINK(): :LINEDRAWg: ,,d,TX,dTY,XSPR,YSPR: ,,d,TX,dTY,XSPR,YSPRjj':'t:OLDXSXS:OLDYSYS:OLDKMKM:KM6oDXX1XS:DYY1YS tXy ,,,dTX,dTY:( ,,d)SP$x~,,,:FIL1,FIL2,::&CURINK(): :LINEDRAW: ,,d,TX,dTY,XSPR,YSPR: ,,d,TX,dTY,XSPR,YSPRd':'t:OLDXSXS:OLDYSYS:OLDKMKM:KMHKM(n:':::Q2(<:UNDOFLG:t@X1,dY1XS,dYS:PXSDX,dYSDYXS,dYS:  > BoxTOP:(:LINEDRAW:SPMOUSE:QBX1,dY1XS,dYS:RXSDX,dYSDYXS,dYS: > CercleTOP:(:LINEDRAW:SPMOUSE:QVR(XSX1):X1,dY1,R,,:JXSDX,dYSDY,R,,:w > EllipseTxOP:(:LINEDRAW}:SPMOUSE:Qz}RX(XSX1):RY(YSY1):X1,dY1,RX,RY,,:RXSDX,dYSDY,RX,RY,,:ۊ > Clear spriteܙ*:T$()CLEAR :T$()Confirm!:*:+\: , :*5R,,XSPR,YSPRXSPRTX,YSPRTY:,,XSPR,YSPRXSPRTX,YSPRTY:'"(ROUTINES(OP)? > PaintB@REDO:OP:(:SPMOUSE>E:'t:KM:Z2ElJB:UNDOFLG:UNDO$(,XSPR,YSPRXSPR@,YSPR@)lK(XSPRXS,YSPRYS)BB&CURINK(KM)B:KxL,,,:B:::XSPR,YSPRXSPRTX,YSPRTYO&CURINK(KM):FIL1,FIL2,:XSPRXS,YSPRYS:'::XSPR,YSPRXSPRTX,YSPRTYdT:':,XSPR,YSPR,XSPR@,YSPR@,XSPR,YSPRYE > Set paint upDTYPEFILL:TYPEFILLTYPEFILL$  > Set Paint downDTYPEFILL:TYPEFILL$TYPEFILL"  X: Y:: ,FIL1: "FIL2 TYPEFILL: TYPEFILLFIL1:FIL2TYPEFILLZ ,FIL1, "FIL2,: XPAINT, YPAINT?, YPAINT TYPAINT:k > Filled boxTlOP :(:LINEDRAWq:SPMOUSE :QBqX1,dY1XS,dYS:RvXSDX,dYSDYXS,dYS:ϊ > Filled circleTOP :(:LINEDRAW:SPMOUSE :QHR(XSX1):X1,dY1,R:<ڠXSDX,dYSDY,R:3 > Filled ellipseT4OP :(:LINEDRAW9:SPMOUSE :Qn9RX(XSX1):RY(YSY1):X1,dY1,RX,RY:F>XSDX,dYSDY,RX,RY: > UNDO6MENNBMENNB8OPSAVEOLDOP:OP :("REDO(nfUNDOFLGUNUNDO$(,XSPR,YSPRXSPR@,YSPR@)B,,XSPR,YSPRXSPR@,YSPR@UNDOFLG(,XSPR,YSPR)UNDO$:SP$UNDO$(,XSPR,YSPR)UNUNDO$:SP$UNUNDO$OLDTX:OLDTY:':,XSPR,YSPR,XSPR@,YSPR@,XSPR,YSPRLUNDOFLGUNDOFLG::OPOPSAVE:(:: > REDUCE`OP :(:SPMOUSE:REDO:(<:FLINK, UNDOFLG::'t Z2  (n:FLINK:::XSPR,YSPRYSXSPRTX,YSPRYS:XSPRXS,YSPRXSPRXS,YSPRTY:':FLINK(FLINK) KM:*  :( ,,)SP$ X@TX:YTY: ,,,(,XXS),(,YYS):,,: :::XXS,F,2:,YYSF,2:  ,,,TX,TY,XSPR,YSPR: ,,,TX,TY,XSPR,YSPR:':(< $  _ > ZOOMN `OP:(:SPMOUSE:REDO:(<R eUNDOFLG::'t:KM:KM e j:: o't> tKM(n:': e yZ2 o ~ :( ,,)SP$: ,,,TX,TY ,@,@,@TXXS,@TYYS ,@,@,@TX,@TY,XSPR,YSPR: ,@,@,@TX,@TY,XSPR,YSPR:' KM( (<::: e Ê > Flip8 OPSAVEOLDOP:OP:( ɼ()ADSPR:()( )dP:()TX:()TY:(): Θ 28 (OPSAVEOLDOP:OP:( -YTY:,XSPR,YSPRY,XSPRTX,YSPRY ,,dTYY:Y 2 ,,d,TX,dTY,XSPR,YSPR: ,,d,TX,dTY,XSPR,YSPR:' 7(<::( <OPOPSAVE:(: > Rotate^ OPSAVEOLDOP:OP:(:TXTY: 7 ()ADSPR:()( )dP:()TX:()TY:(): ,,d,(TX,@),dTY,XSPR,YSPR: ,,d,(TX,@),dTY,XSPR,YSPR:'  7 > Left palette Z:  > Right palette Z\ X(XM$XPAL(Z))TXPAL:Y(YMYPAL)TYPALD  X X Y Yd & CURINK( FZ) Y X:& CURINK( FZ)& OLDINK( FZ) h ,,,:: @I& OLDINK( FZ): :J& OLDINK( FZ) ::$ XPAL( FZ) @I DTXPAL, NYPAL :J :TYPAL$ XPAL( FZ)( @I) DTXPAL, NYPAL( :J) :TYPAL :$ XPAL( FZ) X DTXPAL, NYPAL Y :TYPAL$ XPAL( FZ)( X) DTXPAL, NYPAL( Y) :TYPAL::,, NYPAL,@, NYPAL :TYPAL,, NYPAL:h & OLDINK( FZ)& CURINK( FZ): MENNB 4FLG::   > Left sprite arrowR ,XSPR,YSPR,XSPRTX,YSPRTY ,,dX ,XSPR,YSPR,XSPR,YSPRTY ,TX,d  ::V ǐ ,,d,TX,dTY,XSPR,YSPR:'J ̐ ,,d,TX,dTY,XSPR,YSPR љ(<:  > Right sprite arrowR ,XSPR,YSPR,XSPRTX,YSPRTY ,,d` !,XSPRTX,YSPR,XSPRTX,YSPRTY ,,d& & ::: , @BY16XMXM  > Up sprite arrowR ,XSPR,YSPR,XSPRTX,YSPRTY ,,dX ,XSPR,YSPR,XSPRTX,YSPR ,,dTY&  :::  > Down sprite arrowR ,XSPR,YSPR,XSPRTX,YSPRTY ,,d` ,XSPR,YSPRTY,XSPRTX,YSPRTY ,,\&  :::i  G > Fix X/Y size HM:):MENNB:)h:*:T$()Fix size:*:OPXT,OPYT: X :;TX:OPXT,OPYT: Y :;TY;:NOJUMP. M):REDO:(<. R't:KM v WZ3 R \X(,(XMXSPR)):YYMYSPR:X@YY@(XTXYTY) R aTXX:TYY:OLDXSXM:OLDYSYM:,,XSPR,YSPRXSPR@,YSPR@:(,XSPR,YSPR)SP$^ fTX@,,XSPRTX,YSPRXSPR@,YSPR@^ kTY@,,XSPR,YSPRTYXSPR@,YSPR@ p,XSPR,YSPR,XSPR@,YSPR@,XSPR,YSPR::OLDTX:':# uOPXT,OPYT: X :;TX; ;:OPXT,OPYT: Y :;TY; ;:OPXT,OPYT: SMALL=FAST;: R0 vM:TMEN:)2 zMENNB:*0:NOJUMP ):(<> OLDOP(ROUTINES(OLDOP)  > REDUCEP M:TMEN:CXTX:CYTY:) CX:XXSPRXSPRTX:(X,YSPR)X: :CX:CX CY:YYSPRYSPRTY:(XSPR,Y)Y: :CY:CY0 M:TMEN:)  M > Set RVB M:):MENNB:)h:*:T$() Set RGB :*:NOJUMP:REDO` ,,,,Ȁ,,: ,,,,Ȁ,, ::RGBXT,RGBYT:R:;:RGBXT,RGBYT:G:;:RGBXT,RGBYT:B:;* OLDC:OLDCP. OLDC&CURINK() b ::::OLDC&CURINK():,,:OLDC:: Š,,:,, RGB(OLDC):#RGB()(RGB):#RGB()(RGBp):#RGB()RGBn ϝY:RGBXT,RGBYTY:(#RGB(Y)) :Yz ԝX:X,RGBXRGBTX#RGB(X),$RGBY(X), :X:. ٙ't:KM h ڢZ2CPOINT(XSPRXS,YSPRYS)CPOINTOLDC ܢCPOINTOLDCPOLDCPCPOINT:Z:XCPOINT:YCPOINT:FLG: :FLG:&CURINK()OLDCT ݢKMZ2&CURINK()CPOINT: KM F X(,,):X Z C:(C,X)C: V X(XMRGBX)RGBTX:XX  C,XM,$RGBY(C), :#RGB(C)X:RGBXT,RGBYTC:(#RGB(C)) ;:C#RGB()#RGB()#RGB():#PAL(OLDC)C:OLDC,C ::  End of set RGBZ M:TMEN:):X:X:X, : ,,,,Ȁ,.  ..  BASIC206BIN -FLOAT102BIN  #RUN__206BIN @ SPRIT101BIN  ?WINDO102BIN 0q1MOUSE SPR = 8X8 CR0 @ 8X8 CR1 C8X16 CR2 F MUSIC101BIN JPIC PI1 EB}CONTROL EXW m COMPACT EXA ppEDITOR ENV urCOMPILEREXC sMEXTRA EXZ XtTBASICMH4PRG  TICKS EXB ~ITMANIAEXN  ISTY EXM 0-ASIC206PRG TARS EXH INK1 EXQ OINK2 EXR R`"`^Bdebut TLine Ligne : =, Sure ? (Y/N) 1.BAS.BAK*.*.ACBneopi1pi2pi3mbkmbsprgvarasc.PRGRUN__206.BINSTOS\Insert a disk which has a STOS folder into drive, then press any key... Introduisez dans le lecteur un disque contenant le dossier STOS, puis pressez une touche... Drive Lecteur , path: , dir: bytes used. octets utiliss. byte used octet utilise* - > stos\editor.envautoexec.basrun "autoexec"` Loading : Je charge :  SAVE file. SAUVER un fichier. LOAD file. CHARGER un ficher."""FILE SELECTORSELECTEUR DE FICHIER UP  HAUT  DOWN  BAS PREVIOUSARRIERE DIR. DIR. QUIT QUITTER RETURN OK ?     'A[m    LionpoulosLionpoubnkLionpouvarB  STOS BASIC V 2.6 By F. Lionet & C. Sotiropoulos 1988 Jawx / Mandarin All Rights Reserved. BASIC STOS V 2.6 Par F. Lionet et C. Sotiropoulos 1988 Jawx / Mandarin Tous droits rservs. Bytes Free. Octets libres. pp 0PU33ss77wWfff0ff defwWRUc(000,2)(220,2)(440,2)(550,2)(660,2)(770,2)(772,2)(774,2)(776,2)(777,2)(557,2)(446,2)(335,2)(113,2)(002,2)(001,2)(PP( P P( P P ( ( (( (( ( ( (( ((((((PP(PP(PP(PP(PP @      7(g7x (gx ( 7(g7(gx7x (g<g7xHwx ((7Hw (g7(gx7x 7(gHw(g7xHwx 7(Hw(7HwThis multi-screen mode DOES NOT contain windows selected for program # Ce mode d'ecran ne PERMET PAS l'dition du programme ! Editing program : Programme dit: |P| Size |Wd #1|Wd #2|Wd #3|Wd #4| |P| Taille |Fn #1|Fn #2|Fn #3|Fn #4| Basic accessories loaded : Accessoires basic chargs: Remaining memory: bytes.Mmoire restante: bytes. -$ | | | | | | | -$ |1| | | | | | |2| | | | | | |3| | | | | | |4| | | | | | -$ f1- f5- f9-  f2- f6- f10-  f3- f7- f11-  f4- f8- f12-  end                ` Ok Reserved memory banks: Banques mmoire rserves: work screen program data dscreen sprites icons music 3D  menus chr set S: E: L:" ""\" "&"/""e"8"A"J"S` list listbank`fload"*.bas"`fsave"*.bas"`run`dir`dir$= dir$ + "\`previous`off`full`multi 2`multi 3`multi 4`mode 0`mode 1`accnew:accload"*"`default`env`key list`f1: f2: f3: f4: f5: f6: f7: f8: f9: f10:f11:f12:f13:f14:f15:f16:f17:f18:f19:f20:HP(HP( t|d t|d t|d t|dScantb   !"#$%&'()  *+,-./0123 + !"#$%&'()  *+,-./0123Tspeciff>Rftff        w  P       2   /// M / haw GGp1S$~Z8{fR?- wqjd_YTPKGC?<852/-*(&$" tostepthenelsexororandgotogosub<>><<==<>==>=<>+-mod*/^astostepnextwenduntildimpokedokelokereadrem'returnpopresume nextresumeon errorscreen copyswapplotpiedrawpolylinepolymarkgotogosubthenelserestoreforwhilerepeatprint?ifupdatespritefreezeoffonlocatepaperpenhome.b.w.lcupcdowncleftcrightclsincdecscreen swappsgscrndregaregpointdrive$dir$abscolourfkeysincosdrivetimerlogicfnnotrndvalascchr$inkey$scancodemid$right$left$lengthstartlenpipeekdeekleekzonex spritey spritex mousey mousemouse keyphysicbacklogpofmodetime$date$screen$default xor or and <>><<==<>==>=<>+- mod */^hsinhcoshtanasinacosatanupper$lower$currentmatcherrnerrlvarptrinput$flip$freestr$hex$bin$string$space$instrmaxminlofeofdir first$dir next$btstcollideaccnblanguagehunttruefalsexcursycursjupjleftjrightjdownfirejoymovonicon$tabexpcharlenmnbarmnselectwindonxtextytextxgraphicygraphicsqrdivxdivylntandrvmapfile select$dfreesgnportpvoiceintdetectdegraddir/wpfadeqbcopyrsquarespreviousttransposeushiftvwait keywdirxldirybloadzbsave{qwindow|as set}charcopy~undermenu$menutitleborderhardcopywindcopyredrawcentretempovolumeenvelboomshootbellplaynoisevoicemusicboxrboxbarrbarappearbclrbsetrolrorcursclwbchgcalltraprunclear keyline inputinputcleardataenderasereserveas datascreenas workas screenas datacopydefhideshowchange mouselimit mousemove xmove yfixbgrabfillkey listkey speedmoveanimunfreezeset zonereset zonelimit spritepriorityreduceput spriteget spriteloadsavepalettesynchroerrorbreakletkeyopen inopen outopenclosefield asput keyget palettekillrenamerm dirmk dirstopwait vblsortgetflashusinglprintauto backset linegr writingset markset paintset patterncliparcpolygoncircleearcepieellipsewritingpaintinkwaitclickputzoomset cursscroll downscroll upscrollinverseshadewindopenwindowwindmovewindellistbankllistbankfollowfrequencycontchangesearchdeletemergeauto new unnew fload fsave resetsystemenvrenummultifullgrablistllisthexaaccloadaccnewlowerupperenglishfrancaisJinstr@$* $hŒXHP4Ǟ͒|ʬ˜JZŦX^dj,* ~$ݎծ՚HbTܲ$VJfonct 4lFzݨ<>:bJ"<ت ,84z,:|jxNH|\<PdpZJfctex>HR\fp۞únvXNش׺jx @P~"6   (2<(FXB lJdireczBxxt|kvwh{`bdhyutPtFppltJexten(z :<*b6`TF $   j Z z  B RtB"lvκJ62JPJ T PjVj6B{f°N̔d"҈ BT&l"Nt,xx,(2p  n^578:89:@DS(T>>?@AB߰Bc,cҼV "& &extension #@?Rt    ( xXt    ( xXtt    ( xXVditab>>?@A   ;B@'d 0800010203040506070809101112131415E+000 This line can't be changed: Cette ligne n'a pu etre change: Please redo from start. Recommencer au dbut S.V.P. ?? Not doneNon effectuBad file formatMauvais format de fichierOut of memoryMmoire pleineThis line does not existCette ligne n'existe pasThis line already existsCette ligne existe djSearch failedLa recherche a chouLine too longLigne trop longueCan't continueImpossible de continuerOut of memoryMemoire pleineFollow too longFollow trop longPrinter not readyL'imprimante n'est pas prteCan't renumRenumrotation impossibleSyntax errorErreur de syntaxeIllegal function callAppel illgal de fonctionIllegal direct modeInstruction interdite en mode directDirect command usedInstruction interdite en mode programmeIn/Out errorErreur d'entre/sortieBreakStopNon declared arrayTableau non dclarType mismatchTypes de variable incompatiblesFunction not implementedFonction non implmenteOverflow errorDpassement de capacitFor without nextFor sans nextNext without forNext sans forWhile without wendWhile sans wendWend without whileWend sans whileRepeat without untilRepeat sans untilUntil without repeatUntil sans repeatArray already dimensionedTableau dja dfiniUndefined line numberNumero de ligne non dfiniString too longChaine trop longueBus errorErreur de busAddress errorErreur d'adresseNo data on this linePas de 'data' sur cette ligneNo more dataPlus de donneToo many gosubsTrop de gosubsReturn without gosubReturn sans gosubPop without gosubPop sans gosubResume without errorResume sans erreurUser function not definedFonction utilisateur non definieIllegal user-function callMauvais appel de fonction utilisateurMemory bank already reservedBanque mmoire dj rserveMemory bank not defined as screenBanque mmoire non cranBad screen addressMauvaise adresse d'cranMemory bank not reservedBanque mmoire non rserveResolution not allowedRsolution non autoriseDivision by zeroDivision par zroIllegal negative operandOprande ngatifFile not foundFichier introuvableDrive not readyLecteur pas prtDisc is write protectedDisquette protgeDisc fullDisquette pleineDisc errorErreur disquetteBad file nameMauvais nom de fichierBad timeMauvaise heureBad dateMauvaise dateSprite errorErreur de spriteMovement declaration errorMauvais appel de MOVEAnimation declaration errorMauvais appel d'ANIMFile not openFichier non ouvertFile type mismatchMelange de types de fichiersInput string too longChaine en entree trop longueFile already openFichier dj ouvertFile already closedFichier dj fermEnd of fileFin de fichierInput string too longChaine en entre trop longueField too longChamp trop longFlash declaration errorMauvais appel de FLASHWindow parameter out of rangeParamtre de fenetre trop grandWindow already openedFentre dj ouverteWindow not openedFentre non ouverteWindo ?w too smallFentre trop petiteWindow too largeFentre trop grandeCharacter set not definedJeux de caractres non dfiniNo more text buffer spaceBuffer texte pleinMusic not definedMusique non dfinieSystem window calledAppel d'une fentre systmeSystem character set calledAppel d'un jeu de caractres systmeCharacter set not foundJeu de caractres introuvableMenu not definedMenu non dfiniBank 15 already reservedLa banque 15 est dj rserveBank 15 is reserved for menusLa banque 15 est rserve pour les menusIllegal instructionInstruction illegaleDrive not connectedLecteur non connectExtension not presentExtension non chargeSubscript out of rangeIndice trop grandScrolling not definedScrolling non definiString is not a screen blocLa chaine n'est pas un bloc ecran in line en ligne Varsys & y"y$ypO3SL#Z#SN#SR#Sf#SV#SZ#S^#Sb#S(B?< NA\aO <" @#U 9.#T#T#UU#U BBBBBBBBBBBBBBBBQByUAU<#U"9U #U#UU"AU $ B#U*#U.T0< TQAU#U0< 2<BQQA& C"0<$If(Qa3U4BySByZ3S3SlB9 3UA&pafA&pak3SA <a&/a: JkjM3U?<NNT|gVg?/</<?<NN T03 03033Sl0<A"QOBySjByT<NC*yZBEMZJg("UA<NCOBySaJgkZBySv`@BySv< g:< ḛ<g?JySrf~NC2H@~NC<f ~0NC`0BGNC`~NC`AIA)( pN`|MS,,, ,,,## #c##VpASzNE~NCpNG yS^3S|#SH# Nu#SHpNG~NCpNE##p3e>By>By>3T>N$#MS,## ###Nu,yZ|Jg nhg HNL@@XQNuJf[*a$fa)aa8 yS(.yTONNvA~NCa\Jg?BySa 0<yg<YNuH&9TNd 9T#T#T?<NCLNu g><NC`Nu<4k,6fBDBEX`8:BCDE20<NERF`NuA!><NCNuBySv>< A0<NCJ@faaL`jBySvJySrf3Sr~NCNuBySr~NCNuJySjf*ySv ySvfByTXa>09TDgNBySvNu09SpgLS@A"0g,<`g BAySpNu< <BySpJyStfnNuBySpJyStgaZ?< NC?0<><NCK29SAfB@BA`0<22<G&GC"CJyTg4< `4<2<  $IBCJyTg  KfSg RCBmlBl RC` RA(|mf `| fBA><NC0><NC*_Nug< g<ae 0Nu<Nuaf d4BANuBBBC Na´< d&2 H@ H@J@f ЁeЂkRC`,H2<NuSJCgBANu2<NCNu?0 gB0*Nu0<`T(NSgHkB< gg"j<.< g<Ae <[d fgj<g<fR`B@NupNuMK BEagjRkB]:gR jdrg$fP<"fBf"Ba8#TByT` yTB09T!@`gyT`< ggG+ agVfG+uagD"yZEZtJg&RagXPRB|f`~f`BA`,<f<g<f۲<e <dBaZ,LgB@`<f`fg,S`S<ae <{d <f4<Aeְ<ZbBaA#T 3T`ΰ<_g<Zb&<Ad <9b<0eyT yTeS69Tf08.aS@QJySgySe 3Sa `BySa:LNuJySgByS0<`P0Uge Uad0`B0Va80`*I`*yU2gmge (M`BANu2<Nu2"$/ 6<14xza6 _" SA .g Eg Q.0BAX`X<d<d<eJg <f3Sx<fI/` <f I-ffU$jfvR`r<g<fTTB@. yZHJfI=#=/9A=/`4IZH(t.gҴfSJ$j`I+ufS$jRkJySg<ae <zb `BLNu"yUBD:<g"<g(H@aBJL dL\8gLDfJDg*:`&<fL0RgH @aBL0dL&:,IJDg0a,MNuajJg< g<g H@<gB@Nu0<NCNH&H6<`NBg?<NMXJ@fNQ`KB@g?Bg?<NM\6<` KLN/Jf|  B( _Nu3S`BySaBBIY09UH09Yg0JySf(a.HS@HTeNlbHTd8lc:,aJVg,ne*aAata agkagk`aq`aDJDg*|g"*NJVg ne` a^a5v`t0<`Ka6xNVfv `a@tJgJzdJp3NVfv ` ,fJDa@FJgJLdJB3NVg ,fJa#33"N$yU"&yU&4969dIJQg0)@e44Ce.`U"g496*"yUJQg0)DdBdEeCc` yUJPgCBBgXj<g<g<g<fRR`ܰ<d <e"<d2 gR<fXX<c`<g `` fR2 gR"b&yU"SgXe`2+#A ,f^R`"y:94969JQg렺ie3BC`p NH yU#SBP#Uaf/9U*#U.U* yUCS0<"BQa34#S3 S3 SLpNu yU f0<JfQ 9U&U*fz 9Sgp#U*AS йU#U"yU0<"Q yU Sa2`AK BA85g0ggR@`RAR@`4<NuJg2a=(dGvA a] ,gSa3S3SA JSgfJg`<9S09Sa,Ma(kKJVg@ne8a>JVfBS`3SB@a>gA><NCaV`BS0<`Ga<*g` `JGg HaLaj`JXADO><NCaANCaN`^JfEyT y TeByTA"yT}$Ip4Q09T yTgAH"` A H2au yTg A$rp(NENu yTgE\y Nu/<?<NA\Nu?/?<NNAPAJ@Nu?<ONATAJ@Nu/?<ANAJ@Nu/ /Bg?<VNA J@Nu?/?<NAXJ@NufNua:fJBg6|?dDHSB2CQB I .g \gQ IBNuRpNuAa.aaB$C4gbag Bf (Af (Sf S"HB`pa`azang@aJ@g|cذ|g ް|g f|g|g ڰ| gB`jJySjf1`A/ aACa"_AaAB@af0AB@afAakACakJySjf0acB@Aak^3SA < a kD yUXpak2 yU <@ak"yU Y ak a"abNu/ab ` xJyU2g apNu|g|g|g|gp4`Clp0`Cfp3`C`p1`CZp2`CTp>`CNp?`CHp<`CBp;`CaJ@g6|c|g|gְ|g,|g || g`VJySjf-LAaY@ܹUU.d>a yUXpak: yU <@ak& yU ( yUankaa_NB@NuaHB``JySjf,ApafvpAak`3S"9A0<Hpa kLS ( f  g2 ( f  g$  g  g  d RJgVQ`/B(A~NCaA< g<1e <9b 9U*Uea"fVa`aaf Aa` aJ@fABaf?9U09U4|d3U2a^LACafnY@ܹU U.ea`Ra2fD09U4Y@C!fA0<g<.gQ` QyU4ag\0a]ByU2NuEpr"H<Ae <Zb fQNuJfR@| fBNu yTBAasg6 ,f/BAafBAaLk3S# 9#a&a[ng9 #I )Щ$I$ JgB` g<gՒ``NuAaApakJg`ApakNVg$ ,f9Fa/HJg9Nb9D#&9aZ|f JyZf:&9@caM&9a[H"9&/$9/a\&aZL I a,k4a>`[AaApa kJfzJyZf9Apak 9U.U*&9@caMaV^CS yUX$Hp"QpNAXaVjQNu>g|ggjagB8LB62@ gBaCL r@* 2/ /?*?<?NA Jk0 gR#U"RG|eNuagDj:a>B2IB62 gfI r* PB8Cge8//?*?<@NA Jk릸Cd*aB  SCf//?*?<@NA JkxRG|eaLe%@Nu?<Hy?<6NAPJ@fFA,( ( &BNua^Hy?<9NA\J@fNuaDHy?<:NA\J@fNu f-la"Hy?<;NA\J@fNu&<aB TBg/?<GNAPJ@fAJfS U2`EBgHy?<GNAPJ@fApR@JfJ@g \gfB(Hy?<;NA\Nu?<NATBBAN?<NATB6BNu f,a"` f,a"B|aeC CA?< NMTd,gf??<NAXJ@kNu?< NMTBB&NuaaB|f,8/a @epAa`aJ@fD(v,a@2- Ip, Q IEf| / E **I a0E>* IaHE>* I!aHBE**I*a*_ I-U`CvH a3 BgHy ?<GNAPJ@fJ9 f3\ L#*.*JBgSBC( J6<:g<\f $H6SC( R<*g<?g QB`"DB JCJCkQBJ9g0E *:fvT/ a,$_Jg/ ?<;NA\J@f(Nuv69 aHy ?<;NA\J@fNuByS `3SB9 `BySB9 a#*.*ta`ga Xa?9TX3TXHaHAaa@aNAAB(a(AaaBgHy?<GNAPJ@fAa`aaBT$yU"SyZkJ9 g, *ѹT JaA !| aݬ`T *fAaݘAaݐa݆`4Aa݂ *ѹTK: / aӜB$_AaZaPEagfk\agkR`Va0 9TKaZBAaJTg TfA`AaaaaLp3TXNuaha\gAaffFakapgNua>a2gACa f(\agAafCaPka gNu 9U& (U"ba;> yU"pr  QBXBQaByZApafE *fa"agABaf a agNu yZdA "Hp  QBY"HE!j*g*REBAg<.gRA`JAgA g`$yU"49Zg\SBA "Jg<*f<g<*f<ge EQ`&09ZйU" @geHS@C# QpA QyZNu yU""HNuJAfH灀~pNCLNuH灀~pNCLNuH灀~pNC~NC#ZLNuH灀 9Z2H@~NC~pNCLNuHJE"H4~NC0~#NC40~$NC4 I~NC~NC2H@~#NC40~$NC yTfP@P@4LNuHaH4HC$ Y|da02aLNuaBpBAaA\0(2(~NCaAA:Bg/?<GNAPA"HJf|\B~NCANCaJyZga NuaH?< NMT,?<NAT:BDBBBCgBgRBRC|e`^Ed0H0*2*~NCab09Zrt~'NCrCfraD0*2*R@RA4BCAAB(azRD|eByZLaDNuHa2ayZ4VApBa>LNua09Zt BAaR@QaNuHAT0(yZ2(~NCByZLNuHAJf3ZC\0)HyZBA| er@ i~NC3ZLNuC f3Z3Z3Za?9S`:JySjg#ByZByZ3Z (f#?9SBySaaa$pARJf3ZJyZf ySgvJySf#d ,f#\aa|@d#^A a93Z ySg6JySf#$ ,f#3SaVJg#d#3Z3SAp?BQa[09T Ap 29ZHA2468:<9THF<9T~NCJ@gN ~pNCpNCJyZfAa L~NC` A ~NCEv02~NC2409Z~'NCQB@BAa>R@|eByZA p BQaaHaaByZ3Zata4J9Szj$9SzgSzgp ~ NCaZNpNEBBAPehe hdhePRB| eJyZf3Z`nJyZgyZg^BA49Z3Z`3Zr3Z|d0aaPa`&|e 0@yZyZd aataaɘgajJ@fH@<Hg <Pg`< fJyZgfVJyZfC 29Z<f,JAgSA3Z1 A~NC< g`<.f2| d|g p ~NCRA`3Z<.`8<ae <_g<0eX<:e<AeJ<[dB|g:| d2RA3Z~NC`C29Z<f JAgSA3ZB1A~NC`<ae <*g0<.g*<?g$<_g<0e°<:e<Ae<[d| d4yZ|p ~ NCv NnTE BAg < gRA`2HaVLNז|f a`|f a`|d@QA??< NMT2BBBCgBgRBRC`??<NAXaRA\B`AyZyZd0a *f0CJfSg< gea``B`ByZaaC BABBBCRA< g4fRC| fB3ZA ~NCa| g`:9YATŰgJjNu29YA@0NuA@0NuA 09Yg6a@g.49UJ0SAIAAYJgaka`pNE$~%NCJ@kB~&NCJ@kt2~NC@fH@@g0><NC`V09UHCY09Yg.aX40R@|f0<24SAIJgaka6` ?49UJCY4<JfRB|f2B@Nu02?ak26<NuJfJyYgB@BAa`a edyYgj209Y:apgargaP`L09U@1>Aa><NCA>NC` 29Yf 3Y`ByY09YH49YIBCm4<B@k2aJ@g0><NCQL3Y?a"03Y~NC ySra^NNu09YgS@l29T$AE`aJgdg <,fhRSCKCU<"QaJVgnea.``(A!02 IA><NCG0S@IY0H2SAIANuH BEaA!><NCa2IAU< 0UK?a*8BA><NC`H BEREajA!"KaL0,g|fA! "Ka4` *K?a8 K><NC|fL0NuAY0<BQ8<:REa(9|QNuH 0<BGNCazL0NuBySvJyZf$ 9TưTfa7a7~ NC3U:paJ@f A2a `~pNCB@r~NCAna~NCB@r ~NCAav~NCB@r~NCAa`~NCBDaRD|fE!fxBa<NC89U:<B@BA~NCADa~NC0@1BGNC0<BGNCaFaBCaXJg"HA<bg̲<ag< g<;e@<Ee<Te0<Vd(7B@yU4da8>3U6`v<Kgj<Mgp<Hgz<Pg<g&< mh<l`|gXRCBGNC`LJCgF0<BGNC0< NC0<NCSC< `(SEf:<`RE|f :<`aSDj8<`aRD|fBD`a`?:<a,Kajgjg<eg <EgB@`0<9@BTRE|f:<ahBB04 g|gP9 t e XB9 `< <<0NCRF|e89U80a6J29Yg09YaAYS@H09UHJf~0anga`nB@BAa@`b>< NCJ@fRNu?<NNTNuJySlgJfNuBySlNu3SlNua4a4 yZpJg "PH瀀NLXQByU6#U*U& yUBX#U"3T3T3ThByTjBS#]T#]TByTByT#]T"BT0BT4BT8BT@BTFByTDByT>ByTNBTPBTTBSByTBTByTByTXByZByZfAZhp BQaj\BySvNuaa Nu6<`BC yU2g0<0j<gR<g<g<gz<d <dr<elfR@<gV<fp<bHf:`< 0f8JT4f0<f*#T0#T4"HT#T8`JCfB`X@T@R@R@R@AeX`HBySNuaIg2/a<,_Jg jaaf AaζaӮ` a Xa` yU/aaaa*_3SjOJUfJySjg`^JySjgTJUgN,MXgk <:g(N`@HA5 pJ9Szjaa|JyT-yTZeҾyT\bH~NC/A^a~NCB0-KarBA~NCAmNCM Jgt"NR0 gR/ X@AS@QB~ANCApNCBySaoBySaoA~NC _JgAr~NC`Au~NC 2H@~NCa^\aJgL`R0gR f"yU&$ (9U*BBdPfRf N0@S@f Q `B0@RԀg"B ` pgXԀ"B`fr 9U&@U"da!"yU&g&j#9U`HH0<NFL##L`B 2A NSA Q2 gB!#U&"@3S4Cfg k &()Nu&Nu&NuJyTgNu?9S?BX?Bg/ RBySa"JkgaLo4/8/Db "WYbDd B<RRB`ׯJySf<,f R` ySf "_48Bf &4g3S`6<f da0<`xByT 8Xf jByT,/?0@RaJJk FgaJg .d $yT,/JySf<,f R` ySf JyT,g &<A>9T,SG, RQ$8g 9U&e e U"da"yU&$Ipg&kH0<NF "L##Sf` 9U#Sf09T,S@A"3Q39T,Y" _0@S@ Q0 gB!#U&<,fR<g` Nu (f f a )f Jk& BNuTBNu0gR&BNu0gR&(4<@Nu0gRTJySjf$$NB6a T0g RCKSC0Q#U"& ` &JVf&9U<NuBgg FjF<g2A7@@e ,H pN0gJg k 0<NFNuDNuJWf >`<(f ySa`GByS0<`H87a~@SbS2AgIA8: pLN`ذ<)f ySNuJk gaJk gH8p "$NF,BLNuJk ~f Jk vfaܺfJNuJk bJk \f"0<NF&(<@NuH8"0<NF,.L<@NuBySGa`aJySf Jk g`@Nua`aJySf Jj $CB4NuaJySf Jk g/ "$0< NF&"_BNuaJySf Jk f/ "0<NF&("_<@Nu g .f R g?$f FJySjg T f 4aJf *" N<:<a,HNu f aJg $C?9S<(f (gf <f (g v`lJ/ fax$_J/ H @BySaL a$_JySf ,fJ ,f` ySfJ )f  fnJ/ByS,JaJySfT,_3SNu fBGaH @<f*aBJySfL fJg k "#DNu"Nu"NuJkJkfat`aB` fGaH @ ,f fGadL fJgk )#j%@ "$Nu f3Ta*ByTg,B0H@R?9S?az0S@JySf ,gf< ySf0J@f*3SLE~kg~]NuGat&gpz(H@ IS"H,.(&()H atLJg&Jgk (!i#@  "Lgd`LR c`Nu (f~aH#@ ,fn?9S3SaJySfR3SLgJk\JkVga`aB"H@چ,.)H?a&JfhLaJgL`LچJg`d6H@,.)H?aJf$LadJfLR`L&RDBNuLL&ֆBNu fGa0JfiNu fdGa JfrizNuagkp"$NF&(<@NuֆiXNu$C/B6gT$FB0gDրdha00gS@Q$_0gS@Q0gR#U"& <Nu&<NuX&<Nuajgkp`ti&Nu($FB6"ap0g RCKSC0Q#U"T$DB4BH``aLJg6 I( S*ւÒځSkQ0gR#U""D3E"`<& UNuag kp`ڶd dNuBDJjDFDJjDFD2kHF0H@k J@fҀiHC0fHF0H@kJ@fҀiJDgD&NuaPkgp`XJgNBGJjFGDdJjFGD iv6`"JjFGDzxB㑲eLQ&JGgDNuap`aa&Nu F"CBBB02g&J@gfS@gSAf|NuSAgvNudeJAgfJ@gfagk"0<a&BNugBBNu&aHfNup`.a8f Jgj &p:`8pC`2pL`,pM`&pN` pO`pP`pQ`pR`pU`8HEDS@kJfQHN{*BSByTByS#TNL ySvgJySjf4JySLfdByT<NC<.BGNCNbByTN#TP#TT#TJ3TDJyT>fBJT@g:|g43T>#TF*yT@O``"yTFByTDBySv`&JySLf yUX"HdY#TFByT>BySja0 Ja><NCAS apNCB0)Ka.BA><NC3TNa-v yTDgVByT<NCNb f80gR&f,BySHna"Jga6& _JySf `/a&#T@Nua궼Vd `JyT>gZa3g aa BTFByTDByT>`(yTJ,LS*yTFBTFByTDByT>`pJyT>g yTJ*yTFBTFBTDBT>gl<:gh<gb<gNJj<g<g<g<fTR`Ĵ<d <e<d6gR<fXX`,MX`S,H`vt 9TFg @6(NuB69TDBNua2Rkf 3TXNuByTXNuSzJyTXf0<``JJyTNf0<`ByTN3Sj`0gR f@/XBySaLad"_ JySjf/aza8 3Sj` JySf"*@,MX09T yT29TAg$Jhg4<`4<&be RAAfNu#T3TNuJySjg0gR f./BySaa"_ JySf"#@BA."yT"]&e#9T39T#TT3TT# ##T"*@MNu yT"]g,X*X3T#T#T"` yT"]gP` f .ga<g<f?0gR(f2/ N<:a&( <, NzagREe-D&B.bJf T,DNu N/<,(Sg agT`,HaRaj ,_2<g&`Ta/k&fZf _ONZf _ON f0gRXr CZhBQr CZhH@@aaL" ,fRQ3ZfNua f0gR Jg2f|.gX<eHnaha"_ `TJg<gb@aB ` NX3T&<<ag2k yT&`yT&fY |eB,Ha `fJySjg,MXaX`*Jk춼d*JCg$ yU`JPghfNua&f JySjg yT(JPg #T(X`Nu"HgdjN<g<g<g<fRR`0<d <e$<d6gR<fX<fXg f4<Nu4< INC JNCaa g kagk (QNu0gRJySjg f>a(g.ByS/aa"_ JySf&",I` 9T0-@.A#T4 @ hf\#T8NuJySjgX`޾JySjg fbGa H BJT4g,yT8<,fJkBB`8&9U`0aB<,g&Jf,yT4JVg nfg#T4ZR#T8LB a ,gzSNuByS`3,SByS<#g<g0<fa$C4g SBBGNCQ ;f f`<?BGNC<BGNCBBCH0@3SajBySL Jg"k8<fJBgSBB1 pBGNCp NCpNC`|d RBB1 BGNC`<fB1 `3SBySabgB g/ a$_ ,f3S3S f#S$yS2<49S69S89SGa~JggJf< gQ`hf`aXBEGByS/ a $_H @JjB&<aTBA89Sg gRA`S20gR#U"L `R/,Ja $N,_L B@gySfa`,JySfADaٜ><NC,LRJySgf<,f, f ,gFJySfAD><NC`Jg<:g<g <;gfnSJySfaNuaJg4H@3T.`ByT.&9U<NuB69T.BNu (f" #fRa|g|f/&a~gڰ|g(&kgd@a0aSf`$*a,eg&kgȶdc&at/ 0//?*?<?NA Jk"_ IT`r&Jk|g~da00SCH3SaNBySLJk g| e0Q`"aJfBySpNua.|?dSBe"A%< d< QB3!SpNuH*<,.9UT"G*yU*,yU&tx& C dfAJkf XgX``gX0S@x2RQS&NX eBd> EAdf$&`&"Ce C$)` P#|#a#ad! !Jfgf&E"G~dP SGg>.f" p00 gR`$k$" 0g2S@H2Q`"9U$`$k$`el,yU&x$dXfAJkf XgX``gX0S@x2RQS&NXgJfg&Jfg. `#U"LU"e2Nu 9U&"yU" IYeNua4,LSO`\G (f faۘJjB$C4Ud./ v6a"_"0H SBQ0gR#U"`H ,faH faLpLNu?9SB@ByS|bd?a߆Jgkta0/R@JySf ,g`: ySf.|g |g&$"3SNua/ ,fa(Nua|f,B`<eg <Ef2|e< g<+g<-f < g<0e<9cJCgHS?/B J0< NF&(,_0<@2<L`XB@NuRaJ4<`Ran4<`a4<AJBf&JDgDL`XBNuSBBL`,_0<Nua&ga0SC<Ae <Zb Q`a&ga0SC<ae <zb Q`?<,NAT?vaf0>/ *H_0a:_0?ax:_0H@?af M*_`J?<*NAT?&< a0 >/ *H0a4/Oa"/OvBa``vB`T faa\/MafB@>Oa>g4azf.@?@Oa*g affH@@??<-NAXJ@k,_Nu,_`Lg< gNu fla؊a/MafF@>_ag8af2@@_ag$af@@@_??<+NAXJ@k,_Nu,_` faJk #SNuB&9SNu ySLgJHBp NEp NEpNEpNErpNEpNG<9UAD~0NCRF|fAD~NCLNuaaNuvafCD IpNEz`z&yUXv<9U f JEf a>` fa  I~NC|dRFXRC|fvafCD I~NCNuHa I$ )Щ$I!HJgB` g<gՒ``LNue"H0g'"SfJg"SfL Nug&SfJgSfNuH&9UU yU 2< gրQ yU!CLNu&yU.$K"yU@2<&!g$ JkB`÷g H0aHL QַU*g#U*a afNua yU&yU$yU**<<&gjڃa` BQ"yU#ENu yU"yU$P#U#U (B&@#U.&(#U*aaDaNuH|d29UAg3UaNAU<4J#UAe*&֩$)CRA$Q&J"&)a:Af`&$)&֩$Q&J"&)aSACAf yUCUH#UaLNuB69UJyU6g69U8RBNuBBJyU6g69URCNuB69SlBNu yU"yU*/JgnddX2UAk gQ" NuSd:KCU U*$yU&&J#U&& aNuaragH fXaZaf|f JyZfJ$LCgv"&BAHABYHa^La$I&a&I&a8`.av|g|fSyUgR&a"QH&a\|f JyZfܼ&@/&a*&ca^&aLag/ $&//a&a&I&$_a`SyUgJyZf@R&aH 9U.U*&)@caaL&)"Q$yUX0<$QH@&yU.$yU&&9U*#U&a#U*La` (fڠa$|g|fڎ&a`SyUgR&aB"Q&a& BNu&a` (fTaذ|g|fB&a`SyUgR&a"Q&a&BNu&a`춼dagڦ& Nuaa/ ,faa/ faa&C&$_eaNuaϲa/ fٞaϠa/ ,fٌaώ$ _eِg SfAgSAfNu (fZ?9SBySaϐa>/ fa#T CpNE C~NCNuB69TBNuad yTgӴa`\pNEa& yT0<B Qa yT0< Qa3T?/< NC3UaByYByYByS3T3TJySjf NNyNJyZgHB@>< NCJyZfp `p Ne0<BGNC0<NCNJyZfp `p Ne`< NC0<Ne0<BGNC0<NC0<Nh0Nea#T#T# T09THA=2B60#T60#T60#TByTSC3T3TByTByT09TrA=J$ySV"j p,2Q"jp 2Q##p3d>3>3 >3>3>3>3>3>3>3>3>3>3>3>3>a09>3T#a vavaZByT3Trtv8ACEG??JAjBAyTdJBjBByTdJEkgĺyTe:9TJFkgyTe<9TޚAegBge0_@gGgCE0_@yTlbyTlXJCj0BCD@@eHgF@JDj0BDD@@e6g2@0EyTe@g0FyTe@gpNuXpNua*Sd*? ,fa|fBH` fav|fB*,LCDD҃Ԅaf0AB000000 NuaSdɮAB2468:g<g. yT"Hp!NENupV`ʊ<g<g<gSpNuB@NupNuB@S@NuJg :g Nuakfrp0NENurp0NENup1NENuak fByT~(pNCNu3T~(pNCNuepNENup/NENuark(fBB`t?ag a"p`p4NEJ@fɊNueȬa.|g|fȚCB`DCp NEJ@f^Nuae kzfBB`t`t?a(g ah"p `p 4NEJ@f.Nu?<`BgaHf>/ ,f4aRJBg<|dȂaޤA"40< NEJ@fNuaJgk "p-NE&BNuaek,fBB`t`t?ag a"p`p 4NEJ@fȞNuBgafǮ/ ,fǤaJBgǬ|daA"40<NEJ@f\Nu (fna|fbJknTddTdZpNEB&NupNGtp NEp NENupNGtp NEp NENuaJk&"pNE6HBNuaJk"pNE6HBNuaJk"pNEyTdTd4Td*g$e geHx faz|g |f`H&a"CLDCTdִTd̶Td¸Tdøgòeîgèeä4C6D:<L _eÐeÊ|fp*NENuJyTg?pNE2"yT`"yTp*NE`aȰ|g|f4/vGa|Jg"$/&a C"yT"g Pbp+NENuad|g?af yTA}pBXQ2<`J<g<,f² yTA}af`&aaX C"yTA}C}p2Q2< yT"yTA}C}p2Q42p5NENuak fLp'NENueBaD/ ,f4aRaز"Ap(NEJ@fNuak frp.NENuea터|g |f$rd 9TS@dBp.NENuJyTgpNE#TNa@JyTg"yT#N yTBp!NEpNENuJyTgpNE#TNNuHps"<BNBLNuBy>3>3T>`akATBBB09TS@g jTACB`CBRA0H>1B@g0TR@Ac3T3>3>aN3>3>a<3>3>a*NuaJgb3TyT3 >3>aNuaҰ|g|f>TdF>"$`>9T yT0Td&Td yT03T1A3TJyTgpNE#TN#TNJyTgpNENu (fa<|fTdTd yT03T1B3TJyTgpNE#TN#TNB6BJyTg0<)NENu g4aİ|f6Td>Td43T3T fRaꎰ|fTdTd yT1yT&1yT(1B*3T1A,3T!yT!yT1yT$1|"1| JyTgpNE#TN#TN`a kflxv$9T"9T``eVaذ|fJTdRTdHH` f*a鬰|f0Td&TdLAdBd 3?3?3?3?3>3>3 >3>3T>aBNua4|f3>3>a43q>3>a"3>3>By>3T>3?a3l>By>3>3T>B3>A3>aNuBGf49T29T`*RHaL|fTdTd0HA?13T13TRGg<:g<gg`|g3>Nu<<at3>By>3T>`a|ffJgrdh3>3>aJkP3>3>By>3T>By?3?aNuBG?a>|fTdTd0HA?3T13T1RGag ;gf3>3>By>3T>`a|fd3>3>aJgx%dn3>3>a첼dR3h>3>aNuaDr09TS@gjTARA0H3>Jk f"?a2"CSAA>0Q`F"C4|e DU5(f Yf Yf0HSAA>t$I0QTQ3p>By>a Nu<<an3 >By>3T>`a|f`TdhTd^3>3T3?3T3?3g>3>3>3T>`<<<a3>|f3 >By>3T>`<<a3>`<<a3 >`a,|fTdTdH` f~a|frTdzTdpL3?3?3?3?3?3?3?3?3?3?3>3>By>3T>`03>` 3>ah|fںTd⸹Td3T3?3T3?B?B?Jk3?By?̴bb3>3>3 >3>3>3T>`a̰|f>TdFTd3>By>3>3T>`3>` 3>a<|fTdTdJkJkbb3T3?3T3?3?3?3>3>3 >3>3>3T>`Za⦰|fTd TdJkJk 3T3?3T3?3?3?3 >3>By>3>3T>`at2a"A)`.a|fd d?0r a<6r a2Kr a(NuaP|g@|fd6UUUr0a0r a0r aNudJg|d~02AU^AaNuaذ|g"|fD| dNA*AaN`^Jg6g, d">UBgjA*$6<`A*,6<` A*46<AaraCra(AU 0pgNua@/|gJ|fadA*^J00 A*<@@@H@@ @ aa`Jgtdj>UCgjA*L6<`A*R6<` A*X6<C*^ad0J01 @H@a*raFCraTAU 0pfa&f.Nu&H<da*`Nur a r aNuA?Bg?<NN\NuA???<NN\NuGajd fx/ax0"`a@dh2aBBNuaʰ|f<e0<e4BEBDJ*g^EB@*R@@|bH2@2J*f3| 3| JZpBAJgRAQAd8RC|eB3Z3Zg~!NCTDTEBB09ZHg*AZ&402B><(JyTgOGc4Dv29ZHA29TRA<9Z HF<9Z"A0R@H01@0S@Hhp~NCBpNCpNCBBBCazRCyZf~"NCBB6<,ySZJ9Szj"9SzgSzgaRLNJyZjB09Z ne6AZF0BAJPg(PeTRA| f`yZgaLN.gJyZ f `hByZ A0XeDXb>0.BAJg2PeheXRA`Ag JCkBBaJBf(6ta`JBgBBavv` .fJCkj09ZR@3ZRC3ZJySjgJJyZfgBk@f8S@HAZhJg(/0a,Zf*_MNĈONaLNup~NC~pNCva&IB69Za:|$I yT0<W Q0<W yT Qa6aByZ NuH0a4B@AZ&Kg000400@gh?JyZg4r~NC0S@A QBpBGNCA~NCpBGNC`pBGNC0r~NCASBQBA~NCLNuHBABCHPaA09ZS@ QBLB@HB~NCJBgA~NCLSB`LAgJg`~ANCLNu?~ NC3Z$0~NCNu09Z$~NCNuJfp`pBGNCB@~NCB@~NCJBgp`pBGNCNuJyZf@vaf&<aF&<rtaΖva I$@Ba3Zvaΰf4/ (f(Ga|g|fByZ3ZSe d"_/ apBQ fa"WTJBg pSBgQ"_apg0/ ,fa&"_|fTdTdNuSe d~"_ASeldbaj`/ BBabpBQ f a>"WAZJBg"p<f yTgSBgQ`0fB)Nu|Nu09T29TNuaZekfDByZByZByZByZJyZg ByZvaˎJyZg ByZNNuJyZg&JyZfJyZfaf09Zg3ZNuJyZg>vaȰf.3ZaN3Z"3Z ?a&3ZNuJyZg3ZZByZNuJyZgvafx/ ByZp r(3Z >9T|f3Z JGgIEZFGZ&p BZB[QGZFEZ&BBBCBEp J)g6BD 1@fzRBPCAdRD|gJ1@f46Q`46 yTfz3Z JyZg$f80<3Z yZ JyZgźyZg3Z3ZXNpa09Z"~NC09Z ~NCpBNCp BNCAp'JyTgHR@ QBpBGNCJyZgpr~NCA~NCpBGNC&_BCAZ&JXgBBa.RC| eaJNuaJgd?va60`aJg춼da0SC Q`aSCed ~NC&Jg"CB6)CBNuaaJgl/ / fdaff JyZf\/agaȦax&/a2<$at&aǸ&I&$_a\aRNuaј|g"|g H~L` H|Lt29TRA g԰d찼dHAb2HAFEHL<<9THF<9Tbb~NCJ@g|b@C`NuaAS@`H?L~djd>0Q0A~NC`a8d:d ~NC`~ NCB6BNuaЊ|fJkJk0~NC`ZaJg̶d䶼d~ NC`2a@|f~ kJkNCJ@fNu~NCH@B6BNu~NCB6BNua\~% NC&BNuaL~&`aB~#`a8~$`BJyTgvNuvNuB yTfvNuvNu (f$a|f k$"k~NCJ@k@BBNuaTd3T ~NCNuaܶTd3T ~NCNuJyTg f(aHkfByT yTg p'NEap` 3T yTg A$rp(NEpBNCNua|g|fR k^JkX~NCNup `p `p`p `aټkvfp`p`p`p`p`p `az|f gd"eⲼPdشeδPd~'NCNuahfJySjfNe(aaN/Bv ,fRaTd.v ,ftRa|fXH` fLaΰ|f@(&LBACTd6Td,Tb"Tbegeg* _p2NENua|kfp`np`hafkfp`Xp`RaPkfp`Bp`JGg$yTHy/?*?<@NA Jk ߪ`N}BSBTByTNu9Sf9SfPAgΰ<:gư<g<f: .f2Ta|xdBySBySA a3T ;gByTalJySfF/ KJgk 09ThNj` / Ni(_`&C6f ` / K0<xSCgQS M*_` S`ByT9SfFg2<:g,<g&<,g <;gf   Ra\g `  SB.9Sf#S0<NuB@Nu M*_JyTgzBCEp QAC, E . g<.g<;g <EgRR`g<.g <EgR`HgP"<#g<-g&<+g&`f< `!<0e<9b`&F`&F<-g<+`LB .fRg<;g<#g <^g,`fJBg `0`а<0e<9bR`JBkf,g <Eg R`4<`4<gR< g`GDH <gzRB`t M*_JyTgBACpQACE g<~g`f `R`$>   \ G  v , 6        8  :$      .D "   t         (@   "\ |&|$2* @ ^$ > 24 6$6 "$,   >h (& &("    >, "(@"(d& 2,  (~       " 2J  $ d,   *8J<6$*"$TB:`  & &   L    p 4   > " P f&""L .. @4    "$. * B 4  > < . F0        "      &  (@ >R X    ,&\(  X<80    ,  2$  ,> 6 z   D x (& *  " ( &F(   $ Df F , L&  6 "2 *~"J,$,FDF L: " $VF0  Z          0"    &z (0 " |$  t   ,   "  26B   X Z( 2&"& ( ,  ,  l  &.2&""     &*H v0 $:~rj *" B<0  Z  D 2* pj :h&r . 6L, *@ 6  (.  j*h  . 2    "  &$   l< h $ J &*: 6~,rސ2 t 0"< . .  T D:<,LH    "      "   "     "       ((  "<  "        * Nh<,4 0 D 2h       "4  | 6   n  &"*&:B p .  &4   L  f>80J   "L $6   "@, 8  H     mmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmm`"P`@2^ 6$20Vtf>Tb0.0 BAD FLOAT TRAP BHz?<&NN\A8NuA #NuHk C"qNJg@CL"qNCNsJgfpNspNspNs&<B(<4VxNs/<B/aXP//<HajP&(<4VxNs/<H/a2P//<BaDP&(<4VxNsv(<4VxNs//aP"<4VxNs//a4P"<4VxNs//aP"<4VxNsJg//aP"<4VxNsNsC/ rg < gQBB)aX"<4VxNs4Vxg/Cdf  _SNsH| ##JEf2JDk.|ex?//a>O JDf (.fB L>Ns<Ae?<`<1e?< `?<Hz/aO "@ -fR I 0g,g<.fJEfpdH<eNs4UBe0|p H?Hz/:aO A"z -f.E2jr`|erg <.gSAfBJDjAg <0g$H`"JE+0< e )B `0B zp L>NsJ@g BBvAb`BC4\?Hzq/:LahO Aa"z8 -fEg<.g<0g` Jp02jr`|er.EJAgg <0g$ISAfJDj"JJCfBE-0`>/a .XNs/a X"<4VxNs//a PgpNspNs//a Pf`//a Pm`//a Po`//a |Pn`//a nPl`/a#aF./9a jP"<4VxNs "<4VxNs/a*X"<4VxNs/a X"<4VxNsNVH..a LN^Nu//a P"<4VxNsNVH..,. a LN^Nu/a X"<4VxNsNVH..a LN^Nu/a X"<4VxNsNVH..a LN^Nu/a X"<4VxNsNVH..Np LN^Nu/a X"<4VxNsNVH..a LN^Nu/a.]B/a ,P"<4VxNs/a X"<4VxNsNV/..N .N^Nua "<4VxNs.//a P@//<Aa Pf//a P/aXNupNua//<Aa P"<4VxNs/a X"<4VxNsNV/..a .N^Nu/a# @.a./9a P/<B/a >P"<4VxNs/a X"<4VxNsNV/..aZ .N^NuNVH-n Jnnp` nop`0.R@8BGB/.N (Pl n -R /.NX-@B/.N (Po.`/<D/.N~P-@SG/<A/.N (Pm`/<D/.N FP-@RG/<D/.N (PlG|0H/N fX-@`/<D/.N FP-@RFDm/<B/.N FP//.N P-@/<D/.N (Pm -|ARGJGl4 n 0R n .R JDlD|` n 0R SFGnBF`j/.N X:0@0"n R Gf n .R 0H/N fX-@//.NP-@/<D/.N~P-@RFDm n BR .JLN^NuNVH KIBnBn`R n  g n  g n -gB@`p=@ n -g n +fR`$ n .fRn` nJngRnR nJg n eg n EfB n eg n EfDR n -gB@`p=@ n -g n +fR` nR nJfB.a-@.N=@Jng 0.D@n`0.ܐn=@/.?.a:T/N~P-@.N -@Jng .JL0N^NuNVJnl,-|A`/<D/.N FP-@RnJnm`*-|A`/<D/.N~P-@SnJnn .N^NuNV-|`D/<D/.N~P-@/. nH@H/N fX/N P-@R n 0m n 9o .N^NuNVHB/.N (PfB`B/.N (Pl/.NX-@z`BEBG`RG/<B/.N FP-@/<A/.N (Pl`SG/<B/.N~P-@/<@/.N (Pm/<Y/.N~P-@/.N X-@ .-@G@0@HJEg .JLN^NuNVH..,. N LN^NuNVH..,. NLN^NuNVH..,. N LN^NuNVHJl| .D-@`BFJfB`^~` .-@R .f` .-@S. g .-@@ JFg .JLN^NuNVH .<JgJFlB`V .:|oJEg <` <`0..F`RFJFm`SFJFnJEg D. JLN^NuNVH..,. N LN^NuNVH..N LN^NuNVH..,. N LN^NuJj Jjf NufNuJNuNuJg NugR kjklf`>k^g>k^g2k8<d,&B<ރeNuRid~S<Nu.NuJNu<oD&B<ރeNukgvgPk<<d&B꫞kBSbHGއ[kgNu~Nu<oD&.<`DgjD`JfJ<NuHFHG`k~Nug(gvEDiBHGHFFkTiHGDL&:ƞHGHF6BŞd&BރSE&HCBGHEk:څS>:.gNugRghEDvi^E]HE:BB8HD&HC؃HF&؃BDHDHGHFHEބj gNuSiex@ބއdRgNu~NujJ<NuNVH*nBGBF`RHH @ +fR` -fRRF` H@G 0m 9oJFg0D@>0JL N^NuNVHJl| .D-@`BFJfB`^~` .-@R .f` .-@S. g .-@@ JFg .JLN^NuNVH .<JgJFlB`V .:|oJEg <` <`0..F`RFJFm`SFJFnJEg D. JLN^NuNVH..,. NR LN^NuNVH..,. N$LN^NuNVH..,. NH LN^NuNVH..,. N LN^NuNVH..,. N@ LN^NuJj Jjf NufNuJNugR kjklf`>k^g>k^g2k8<d,&B<ރeNuRid~S<Nu.NuJNu<oD&B<ރeNukgvgPk<<d&B꫞kBSbHGއ[kgNu~Nu<oD&.<`DgjD`JfJ<NuHFHG`k~Nug(gvEDiBHGHFFkTiHGDL&:ƞHGHF6BŞd&BރSE&HCBGHEk:څS>:.gNugRghEDvi^E]HE:BB8HD&HC؃HF&؃BDHDHGHFHEބj gNuSiex@ބއdRgNu~NujJ<Nu/./.NP-@B/./.NP/NPl/.N`X.B/.NPlD/NX-@ .JLN^NuNVH..,. NTLN^NuNVHJl| .D-@`BFJfB`^~` .-@R .f` .-@S. g .-@@ JFg .JLN^NuNVH .<JgJFlB`V .:|oJEg <` <`0..F`RFJFm`SFJFnJEg D. JLN^NuNVH..,. N LN^NuH~,<AB'ebc FGNCD<c|`8|*< Art`ڄܐ(&䣞j.XRQN .Jg .<ANJgL~Nu/Npi /,.<AN,NgSh~L@Nu/Npi*/,.<AN,NgSh~,.NL@Nu/Jg0Ri0Npi2/,<AN/./N,NX,Nu.<`.<A`Jj Jjf NufNuJNuJj a<NuNJHNL8Np?<`$?<`?<`<bTJNuBgJk<8cH~$<cP<c <L~TNu,<>.NXDxB΄,<CN,.N$(< .BJkFD<c~䯾o$`D<c~DDl`z,k^g>k^g2k8<d,&B<ރeNuRid~S<Nu.NuJNu<oD&B<ރeNukgvgPk<<d&B꫞kBSbHGއ[kgNu~Nu<oD&.<`DgjD`JfJ<NuHFHG`k~Nug(gvEDiBHGHFFkTiHGDL&:ƞHGHF6BŞd&BރSE&HCBGHEk:څS>:.gNu<Jj~`~<L~Nu.<AOJNuH~?g$,<;ANi`D<o< l",k^g>k^g2k8<d,&B<ރeNuRid~S<Nu.NuJNu<oD&B<ރeNukgvgPk<<d&B꫞kBSbHGއ[kgNu~Nu<oD&.<`DgjD` p|T0@6D,6 :"P :   < *80 ( J X$ fBJ|, ((T *6 *8mmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmm ``'@O v&'"& &'H D& &'H D(k (((>( (h)*~b( (h)*~f\STOSPIC.PI1PIC.PI3SPRIT???.BINWINDO???.BINFLOAT???.BINMUSIC???.BINBASIC???.BIN*.EXB oAJgR#?<NNT# Hy?<&NN\M6?<NNT3K m p, J"Kޓ~cRF|dbZz2F|de.EdHp $$$$&&&&QLQ` AaAGaGN#ATaGN#Aaaf GNAnabGN#BGM9AAaf(Aa(HGN#L@<N-`RG|eA{a/Aan,_?<%NNT y 0<?BQ yg?</</<?<NN ACEGpN`anAa?9/9 /9 ?<NN M6K m p,0Q mp 0Q m*Hy?<NN\?<%NNTBgNAA@Cp2Q"9#h$09.B#ArXg QAEp$QA#Nu09`°< gprNs0|.|0B(Ns//<?<NA\ _Nu/?<;NA\J@NuBg/?<NNAP |J@NuBg/?<=NAPJ@k3Nu 9//?9?<?NA JkNu?9?<>NAXNu/?< NA\NuafnNuHppa^a|f&9ֹ` d@an ya~a"y )Щ$I$ BJg` g<gՒ`` y йgR#LpNuLpNu$    & ~     " $ t, 6 >mmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmm`=`Sprite 2.1 "+"!!X6676646r6d3: --..6.J##01R1"00b,6,0#1@p:f2<2R."<=16 3b.T7H7P)T*"*7bDhV YeyE Mgw+5Ckw)/u >1u=.1+yN' N)N! 1c u1>!a}' a' EqXhq uluiuuukG|qzvdSpBuff @mouse.spr@ P ##BHyn?<NA\BgHy?<NNAPJ@fZBgHy?<=NAP:kDHy=/9??<?NA JkA= f # .??<>NAXA="H#b#^p0:Hހ#f#j @ @2SABQ/aX _Nu6: A(BABHBBBHBNuxACBGRESEgJPfBQQNu<h dBi` hl3F<( hAd3h`hlDFh3F<h dBi` hl3F<( hCd3h`hlDFh3F<( i@3F"ii3FD<( iB3Ffii3F2RG`>ByVA:ANu?a2BJPg>8(:BdBDB<(>CdBFCBBAڴAgJPfRB Bf3VNuhbheܼhb־he`arBBJPg0(@2(HA2(A3VNuJy f>0:z2:x4:v6:tzaJJGg"ER0HCA2JQfJGfNuSGH>:$h&J(z~0(@0(i@0:fi"@0)Di"U@:@T@2)ifSA6:(<<E2:ڒ@A3 JEg2)̲hfS@2(@A3 3 Jiga L`:0:ZS@k>g0zf2zd2:bJEg^> fxp` 8*0+JGk80T\Qg8 8T0\QQNu0z2z4:JEg|> fxpr`8*0+2+JGk802T\T\Qg 8 802T\T\QQNuJEg2C> f xprtv`8*Q0246JGk280246T\T\T\T\Qg8 80246T\T\T\T\QQNu$yNJy f6"zx<:*>:$SG2:4:aFCSF04QQNuJy f:2:4:$za>:4:ږBCSB2:SA&z06QQNuzorzl4:zl`zo89 z|oNzvl6:pznl>zho::b3 3 3 3 <>B3 C3 By Nu3 NuH@<`(H@JgByVBy ,` HBy ,BBD3 A# (J@jLJPgtBPJy ga(4( 6( 8:hhaaJy ,fPaaaZ`0JAf Jhg 2(JBf Jhg4(JCfJhg8(:(`dJf Cd$z"`C$zJy g8:L 2@g"@Lr@ b1CKE0!IBDBEBG1G1G1A>(1Bhh6agRCJ@gn @xlfEm` BlX3 3 3 3 "3 &3 $1@ 1A1B 1C1D1EJPf0`hgJy g H aL0y "fy $f4:Bh m4( 0( h2:,z2@l8`86:h m6( 0( h2:z@l:`:a6쾾z(n(<(Gcaa4aa|`R4( 6( 8:hhaaaaaP4:6:8:zzaazaa,p`B@3VLNuBy ,B@`aJ@f 3VNu4HA62ABByV3 ,aJ@fhJy fFH y (C0:2:4:6:BDBGa y (Ca$zaaLB@By , zBP3VNup`ByV3 ,B@ABaX y (BPJ@fJy f"h$I0(H&J2(zVf4(zLf?(z6(fSB6Q`BxC::SEUASB<>MB0,Q>M 06,QQQ8hSL>(SG:z6j0 2QQ` y g6< zBA&J$KBDBB0 g RDff Q2QQ`Cg&I0 6QQ>8žDOdRSESF0:jS@k.g04QQ` $QQ` $$QQ`~0S@@LSESF0: S@k.g05#QǗQ`J %#QǗQ`6 %#%#QǗQ` f0Azef$Ha|&JL$Iap4:J(CSFxGgd:ESMgSM0:bg @gf K"Jg0H@B@::g& Gg>4QQ` >$QQ`>$$QQ3VNu$DU5(C44K:IABIa댖EKSDSE0:g* @g<2QQ` <"QQ`<""QQ Nu DU5(fLA:<Qi680::HKMJAjrUdJBjtVdJEkgUe:JFkgVe<AgkޜBgkDCADDB0HH:@0HKC߼LXAIBaߤK0\QQ`^&I(J>028AFDT\T\QQ`6&I(J>02468ABCFDT\T\T\T\QQpNupNuBy f3 # aBNupNu/?<&NN\Nu <,*`#-NuByVByBylBy 3X 9.# ޱfA#PBP yV# 730:RHA20SA3b20SA3d y# ,Nu yV 8 z 4Nu???/  f"z@d)Ag3@@((f`H0(HA2)(HBJ@lB@` zo0:JAlBA` zo2:23A"_420NuH?~HM҆,VNL~NsByVJAf 3XyXk@f<3Z3ٞh` ByVJAfByXyXd 0<a3VBNuByV3h3j3Z3V3ZBNu zҺ0z 2(zNu zҦ0(Nu 9N܂ga `ByVAݞC҆~|JQgkJPf|02)g1A4)g hg|1B6)gV$z2Jy gP8:.L 2@gB&@Lr@ b41CKE0!KBD1D1D1D1D` JhfBP|BQACRG GfZ0:gJFgaDpC2kAܲJPfQ3Z3VNuH@8(:(2(4(hh6aXgRC1@ 1A1B 1CB8C64aJy f24$z,a(J>:2$h&J0(@0::h 2:6h AH0:$:@UM2AK3 :(|EJEg2( hzfS@2:޲h g2(@I3 3 6:SCa8L`zCۨxBABBBCJQg f0atCRD f3V3ZNuByVNu zLJCf,BABB6<8< y gJy fKLSCSDByV3^3`AB3b3dK0L1D3VNuByV zܒzDzDd0z8z8d1B3VNu0< zBBQNu zJAg AdSAICdEd 0000BNu <Nu AdaHJPg4(6("z2<JQf PQBBNuQeigdieigdDAABNug& g 0m 9b><Nu ae >EB`:By NuDBJy f A^B`AFTB# 3 3 3 NuByAX0<;BXQA0<YBXQAh0<BXQNuByAgM͖SA4 BVI*zx(MBn-MBn 6<a (fOM >,K, InNupAgaaKH@aNuJUgr2- 0HH2-AANuJBfBVNu BfVNuVNuBCAf `rvan,LBya Q`vAf `rva@,MByaQ`Ag?a2a2BC` aarvaByJBf V`<Q`jAgxaByBft=BCfv=C=D<`03NuJyf(z`fNu3 3 Bf ?aa43 Nu(z::Fg~y fr34 By A^"yNC}x g> 0@w2Aw@g,vH@HAtJB@BA陰AgbR@`S@@Q0 UUQ3 >:Vg^Byl<SGAHE@0f6Q3l`6(f2(0fBA0BI5IRA AeBA1A`0:Tg(y f3F z@0:@20UHQ00:ήg0:Ϊk ByVa0:8g0:2gByAȞCNE~JPg ^,VG63G83BFGB[BBRFFgB:ôEg64`"HG&GK:GK:GK:K:G:<4|(K <`(KpB>9޹#,GREEgB>Ĵg4G> I:G*H>3ANu0<NuH0M .EFABa$I A=A2a٘&J24ABa$H A=A2av:9 09 H=@ :ESMM8EL<=A=A>=I=I 46.8. J"K2: H0g0 `0 2QLFe Qx`GSDjxSBg Qv` 0.n d0.n SnfBNuByV͝Jg PbE RI:r09 HI>42(A<9 N:9 8LSE$H&I 2H@6C H402g`6Qͽeg`3VNu5   &fL&p@b&  $ (h0 "  @    8  Ɯ0    )0##@#|$j&l&#$,$ $`%%%$$% $r$$%'%&l.'%*"%X*.CR "a/<n?<NA\BGBMf0@9@BgHyNAX Gex3 NNu/<@?<#?<NMPNu3By yN# yV#j!|>Nu yV!yjNuH~OK ,up(yJupg8aHpNELNa,/JygJyfp)`pNE L~NsNL~Nspap@aBC:,2JEg2,RCl6mp a.p a(JEg2,3IBJAgF Ab>SAICJg,"Q)I09@29A9B@9B89CB9C:9D49DgHAA9A2JAg*l8l:l4gel6geHADybEybBl0ajHF0a(69:C E}dx3E0&)JH#By09ARA aZa taFa By0,2ga8a Xa<09.9#3`Ha /a Nu2,2g@f09@2?,?,?,0Bl03a (BlPE0,2S@Ha22,4SAa&QaR@86,6SC:<B@2a <a0,B@BAa?,?,a>,? 2?,0Bl0BlP$H:,<<,>BCBBJyg 8B`(HD fDf a`Gga>aDRBEeRCFeBy9_08a02aRNu/9~,9A0`4l<yb 6l>yb4,8l@6,:lB9@@B9@89ABC9A:aXaB@NuH9DJygLL:LE`:LDE0a t0a 4LNu309`By@.9gP#3IB$lH&J4,<>•yIB6<.9g>Hf6)JH8,<>LSD4Q0,2,a)HL)ID`RC CfA290B02<J0g0l0QJyf aa09ְyf$3AB@ gR@ @mByB@Nu @fAB@ gR@ @mB@`^0<`20<`*0<`"0<`0<`0<` 0<`(yNu09Nu9Xp"R@ @m9|Bl Bl.0,9@,@9@*9|Nu0,9@,U@9@*Nu0,9@,HR@9@*Nu3Nu3ByNu3Nu yfXJyfNJyfDH(yJlg.lf$9l0, R@ @mB@9@ 4"aLNu3H2,*"lD.9N<,,l*SF:9SE6KGR8,SD0yJkXaJl.g2$I4 0*NfxTJTMQBfSJQQ9|.`8Jl.g02$I4 0xTJQBfSJQQBl.LByNu<>JyfJl2gRFRG9tp8tp:><NVF"yNuMRJyg* yg@H@`@H@`@H0, gNuaJ,l8, g,l HB80İyg0 2DgSDgSDLSD:lSM29SASC<9>,4SG4 :&Ig0$NTJTKQSKJDk0$N6QQg0$NTJTKQQQ`H0HS@Jyg" yg<HF<.`,.`,.""QLNuSCSB8,<Jyg"0,@@ :$H4QQ` ,@ :$H$QQNuH?4,4B@va~a2aBaLNuH4,46,6B@BAaValBAaRAl6fa aLNu?0,4S@atJyg2,A02Nu2,HABA 2Nul4dl6d a B@Nu0<Nu9@9Aa)HL)IDNu0,H@0,Nul4dPl8HNul6d,4SGSEJyg8$H4 QQ`8$H$ QQNuH Ag(:B@BAa:4,<<69>aLaDGDCaX`0,29R@t4g 2,`a~`F0,g 2,S@`p0,4S@9@`0,2,gSA`PJl0f\2,6SA`>092,RAt6g 0,`"Jl0gSA`0,BA` B@2,`a`BlJyk3/<a Nu9|JlgBy9| yg/0,a Nu0, 9@Nu0, 9@Nu0, 9@0,a)N 0, a)NNu0, 9@`0, 9@Nu0, 9@Nu9@>JygGOOl` lGla)N Nu9@ >JygGOOl?`lOGlaJ)NNuB@` p`p9@PNu9|0NuBl0Nu0,2,`l4l@l6l8aB@Jyg8D d< Nu(HD d< Nu0,SG6y8lSL yfl$I: FJf.UVhQQ gZAbBG` fUhQ`UVhQ` yf$I4 : vFJfF]^hTJQYMYNRHSEjQ gAbBG`SJBfUJ` f]hTJQ"`]^hTJQ `$I4 : vFJfF]^hTJQQMQNRHSEjQ gNAbBG`SJBf]J` fUhTJQ`UVhTJQ`(y0,29R@t4gn9@ yfB0,ѬDL`DJyf L` L29SAI ,D4,SBgAR@Q)@DLNua a`H`hB ( `f#Nu30X` p lLJyg 2,B0Nu2,HABA NuHJgS@@ yXd yg*H?,?,a:aaa20abLTABh0,l@2,lBJyfJl2gR@RAHE4, 6,8, gC1B1C g,Gt)6QGG tSXQAJg H L/9N#N #NLNu>< y"yN""""""""""""""""""""""""""""""""QNu ( (&  $ "   @$4 8 HL B:   6, Xf B    f6 d 8 8d"N8 dJ ":z<$0L  ( `8>FL @ &N ,mmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmm< ?~耘@@ omkDdppp?          pp/oooo  @ @?  (8(8?@=@?q@ @q@@@ y@=@?  ???  `@?0?0;3@?0 @ ?0 xx??L`?0  8````??? @ 0?8 ?@ABCDEFGHIJKLMNOPQRSTUVWXYZ[\]^_`abcdefghijklmnopqrstuvwxyz{|}~lll6666(>h<&|(fl0fF8l8tv00`0 f<f<0 0`0 ~~0  0fff~fff<< xflxpxlf`~|||ff|```|v|ff|ffffff>ff>|``lvfff 8``flxlfl|fff>xl```<`<|00<006f>ff$<ll8lfff>|~ 0~00p008  8` $$B~<``<Bf>f;f<>f;p<>f;<~;<``<<pf>Bfff>|B<@@<4Xfff4XbRJF<>f;< |)B*R$HH$H$ $H4X<~;4Xc~Ɵ|~~c>  UUUU3333*@\z:Lft &lPZNYMXTYMXTXMULYMULXENCREmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmc!  !"#$%&'()*+,-./0123456789:;<=>?@ABCDEFGHIJKLMNOPQRSTUVWXYZ[\]^_`abcdefghijklmnopqrstuvwxyz{|}~fffllll>`<|fl0fF8l8pvp88pf< 80 0 ~~`0 0```nff>fff~fff<<f<flxpxlf`~fv~~nfff<ff<f>``|fff|<```<>fff>ff>|``|f8<p``flxlf8<|ffff>|f```>`<|~f>fff<|lf<|~ 0~0p p` 44b~f><>f>p<>f><~><```<<pf>ffff>|f<``<:0|00~ff<<6f|ff|`0|000` <~> 8< 4X|fff4Xfvnf<>f><000| 6kÆ6n֟6ll6l66l4X<~>4Xc~Ɵ|~~c>UUUU3333 )f )fmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmc!  !"#$%&'()*+,-./0123456789:;<=>?@ABCDEFGHIJKLMNOPQRSTUVWXYZ[\]^_`abcdefghijklmnopqrstuvwxyz{|}~f ffffff>~``|>~|ffl 06ff8|ll88ppv   `0880`ff<<<<80 8pp8~~~~ p88p<~ff 8|~<<~fff~~f|~ff~|f~|<~ff`ff~<x|nfn|x~~``||`~~~~``||`>~``nnf~<f~~f~~~~ff~<` ~~fffvv~~nnfff<~f~<|~f~|`<~fj|6>~``p8~|~~ f ~<f<<Ƃfff<<<>~ff~>```|~f~|<|`~>>~f~><~ff~``~>~~>~f~>~|```|~f88<< |x88<<l<~f<~f~<|~f~|``>~f~>|~f`>~`p<~|~~f~>f<<Ƃff<<<~|~~ 00~~880880b <$fB<~ff`ff~< 8fff~> <~ff~``~>>~ff~>ff<>>~ff~>`0<>>~ff~>6<>>~ff~><|`~> 8ff<~ff~``~>`0<~ff~``~>ff88<<~`0f~>fff~>~|ff<~f~<fff~<<~f``f~<80000f~<~>~ff~> 88<< <~f~< f~>2zL<~f2zLffv~~nfff<>>~ff~>~<~f~<~00ff~< ~~``` ~~` #&,0n ` #&,2f2? 6ll6 l6lذ2zL<>>~ff~>2zL<~f~<=~ffnnvvff~=~fn~vf~~~~`0<~ff~~f2zL<~ff~~f2zL<~f~<ff  | zz |Ƃ||Ƃ|[_UQ. ???< <,??? < 0 '$ $,' 0 $  PKMON >N*OLHO? N.  ??>|>??|  !!& d&!! d  #'ON0N O&#N  `00```00    00```00` 8~ߧL<~=2<L߻~8<2=~UUUUUUUU33333333( mmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmm)`l`0@HMusics M / haw GGp1S$~Z8{fR?- wqjd_YTPKGC?<852/-*(&$"   0Hy?<&NN\A|Nu#"Nua##:Nua#NuH~HC"qNL~Ns0:gRBy:>:ApJ0gS0fQ3FGI4:gyDdydDzgB<:tf Q3H`,f2PAt2ItRAta`M|$zjJVgVg MQ`vKv6.:20kJn g@ gJ@`@BDgz D`eBDLA0@0@4J   g@RBA0HAR<=CTC=C0Jng(Jn f"Aj00@p@gHfp;@ mB@aJng4K mB4`B@a`Mf Jn g n g =n`BV`gE?420H JXC=CJfKH;|a8`0 f=|K ;|a` f=|a` fBA20=A =B`zgr020TC=CE Edn2VAJfBn `H f=| `2 f `$ f@?@ g@ gaf` f2KHBU` f2BnBm ` f2BnBU` f@A``KE|g-eKQ3: zpN-d0f0 @gZ24YmY9HghHtR@A`THBA4mjBA` 2c2g0P@A`$BA,mjBA` AcrAA-fP m-0ka`<gB@a`.B`(+HB@p20;AX@B-Nuan cifb#JX3BByDBAM0g =@=@=@=| <BnBnMRA Af#>3:NuBy:ByN3F3HBCp5BQCLpSBQp CBQI|8Gt Bf a` t QNu,?@NuAg&SA0:3FA6APAB(NuAgSA0:3FAB0NuByUU2< UPUU*QUUUUEUUUUUUUVvp}UUժ@US0I"G'p# Tn\U>U 5UQAUU@U*UUUUUUUUU>nFHCr:+&xwEް>"!P?iU_~ A@UUT!`Xzksw0ʿ 2`UaᨀWW}U(QAUU*EUUUUUUEUUUS$@0 #`q\? Zwz$3 `p@?ixa.0?s" @bFbgws߅PVx??x2?gM?nw{ul"_B\\  & \Y x6?gL?/s{4 _x kp @?h'?1y&?=fl;_*? i08Ā?@ ?n/P&߁y q?<fm;z?  `{0 400ߠ X6y'e?=fm}V =<>px`?0siWB;`aa8488 K5G~ s0aaa0800)g  ~@ ;4aaa000<(>s`}A0>n=π $syco@"0?Xs9U@jIs4̀|CaJU ?UUUUUUUUUUUUUUUUUUs ` j|`n`2L`_& ízU@et@{@$?UUUUUUUUUUUUUUUUUU_~0p?~UMA0 ~/ ݀@# ?UUUUUUUUUUUUUUUUUUY ?{UqU܏?~H UUUUUUUUUUUUUUUUUU/a}zd11`~0/{A@_w}UU|Ppp?qx3UUUUUUUU݌UPЪUUUUUU91ebA1p ؈Wp?Ѐxvc" ߈ww"({jp@6@@)@ 8wW?j]>$* ߏpp#qQ ?3 W 7@p/hK?5.6 ߈ww"(`?'b`ܿ8P!0| {u|So?>0 CO? pC?x?;LxH0ff003>>>f??_'?lƃP p `€XP?0NaXh099 ;`ğğ??g88.,1G? G??x7x03<0H$>  ~| ?"1@ ffϏ0p0p3>f??<!Y71| [|O~ A'?6/x@?AUvG7 F@<8,mT9 _?/( &@_<A,Y4ϰ?}+n|+~|!L0 =a~B<>?|>L0s urqg>x/оAvAvww(ѸD 30!xM}!2B~~ 55"77 ?)<'`g09`1)-}}<VV"==ݨWWD.@?@{p` ur 3 ?B~~ gg""gg70`X8?@7/N>` f68w`">tt88ww0||xPx86 s(@x\0/d gOp>xxpÐaǞ98H0h/@ .gi00~_80=^?_C?sP 0p>p00)?ژ*D,_?~^P~p0|O@1.^Oo 00 @P:<> OO_:%_~]#pp `Q菄0x?"z?P(4}a?JPpqqU]?>`} 4 gOo%xCqo?9߻8?z_og_΁HO#$bo//t_HF{:[YG'a pVx'Հ?<$8521Ippc??@ ჀpIp&, Հ  rq0)~1~1U? @ ?@D0t %P@!#@`U?:@'qz '!܂*C= P@ "72p>(&?8(? j0&| npŒ;gp@8U?` `?ې O0p9y|(/Cvw2'8 QAt? l4t|;c/#@  Wt?AbϯϿ0`~. l8xN0@81|~ v&@V &VU@ ?G00>7-jP v$ A@5 Cqp?>ɍ~5 < [: & ?0!`p0 zH }D8ggSgSfoW@UUUUU}u0vU?ɒ@``S/lNUUUUUUUUUUUUUUUUU߿@|?Wrh> C0@07W'W*@?UUUUUW*U{@cr ڊڊ%u@j=UUUUUUUUUUUUUUUUUU_33!zHW?ެ?D0sdV7ccx;Qpg*zxXa0:#Əp@O~@*k FU@?HhpWq}|p q}z@oU/>֡@|~\#t p b>lj _MV)"Tw'U %pA>4>cPT[Dq ;P`@ujP /|Ax|UP4f ?@uw~%=j[<to 'PJdxvz?Q9.H}BY04/O C/0q|}@;ǧXPZa%b 3oӈ gxǩ1Y 0(  _K*  OsZ %@K @?@ M_oJ3h(g8g$!?? %_X_`/WA;Ohp8:1x0FW8'C9h (a `8@9l݈_#<s`<WF+W9q09x7C".\CbxN[aCb ߀sra' +{[0  b5>#\U  3 |ځ|@4?]8?+`{1x~@l_#VV tjUUUUUUUUUUUUUUUUUUUUUUU*@x"]RUUUUUUUUUUUUUUUUUUUUUUUP'< yy П`0,{:[:[ gUUUUUUUUUUUUUUUUx?@@ "o9} <0H)UUUU@UUU3#@0qS@.C<l.|/03 ɕ?UUUUUUUUUUUUUUUU???? pC@~L|0? @??Ø@O8$@?|| |B ???@ v* w`@l&8'8?8ꄃ|q ??pE0bSCl@z8GA F"q?>xU  A@t@`jf [P? q???pпR>^\&(~ l8@q GGG>UP,p?@GID0WX pU__p?Hȸw`/PfUU@?߾@t`B~_X???w*  `@5@.U}A~@VψP@8`?ߘ"޺A@ a e>`!W~?!!!` D  W|xCQ !#P}@@@|T /*DT&Xq0DD]~Cc_P@@@ ? /pM08ax?@ @@@U'@=~׃x8 89NQ*@l\< 8A```   @??_ 7`B@/UD^aa```߆x!?rpǃ8|8|M8|<#<#<#8p~     ܀~~~lllppp~ @~ƀ8xG c }  @8@8@|g???>???cIbx=? 87???z" `@af^ <m8P(w$#C @:#BD6) 0zI 0`~CC 1 03 p0`x@w7i8B`KpxtS ' UUUnvvvݪ[[[UUUڮMMMʮ]T]V]TA"Fc Q@( A"Fc a@( A???"m}EZ U@j(1 ???"+]??"jbVUT||D ,: ,,,,Ȁ,,:,$:,o z RGB undo M:TMEN:)::M:TMEN:):OLDC,RGB:OLDC: ( ~! STORAGE ARROWS( ~!0DX:S:.DX:S:0 DX: S:(. DX: S:(0 DX: S:(" DX: SV S DX SPRCUR:,$:,o:Z S DX SPRCUR SPRNB:,$:,o:D SPRCUR DX SPRCUR DX SPRNB^ SPRCUR SPRCUR DX:,$: S,o::$DX,,SELY,,SELYSELTY ,P,: ,,SELY,`,SELYSELTY ,,:X1P:X2:ST)DX,,SELY,,SELYSELTY ,,: ,P,SELY,,SELYSELTY ,,:X1:X2P:ST8.:XXX1X2ST:3 ,XX,,XX,SELTY,,SELY::,,SELY,,SELYSELTY,,SELY8XX:=( ~! BLOCS( ~!ZM:):REDO:NOJUMP:REDO:)ъ > Return to main menuRM:)::REDO(n:'ט z Set bloc center > Draw with bloc$BLOCONh$:REDO (<4:'t:KM Z2"X ,,,dTX,dTY:( ,,d)SP$: : BLOCOP,,::XSBLOCHX,dYSBLOCHYXSBLOCHXBLOCX2BLOCX1,dYSBLOCHYBLOCY2BLOCY1l:,XS,dYS, ::::::,XM,YM,: ,,d,TX,dTY,XSPR,YSPR: ,,d,TX,dTY,XSPR,YSPR:'L"OLDXSXS:OLDYSYS:OLDKMKM:KM' g > GET BLOC.hBLOCON:$:)m(<:REDO>r:'t:KM:KMFwX1XS:Y1YS:BLOCINK:REDO4|:XSX1X2XS,YSY1Y2YSX ,,,dTX,dTY:( ,,d)SP$v,,,::BLOCINK: :X1,dY1X2,dY2: ,,d,TX,dTY,XSPR,YSPR: ,,d,TX,dTY,XSPR,YSPR<':BLOCINK(BLOCINK)"'t:KM(nR,XSPR,YSPR,XSPRTX,YSPRTY ,,d6 : :::,,V,_X1,:X2,_,V,_,dY1:,dY2,h()ADBLOC,:()ADBLOC,:,d, ::vBLOCX1X1:BLOCX2X2:BLOCY1Y1:BLOCY2Y2:BLOCENT:=0BLOCON:BLOCOF񸣚fÐ,XSPR,YSPR,XSPRTX,YSPRTY ,,d: : :rĠ,,:&CURINK():X1,dY1X2,dY2::Ő ,,d,TX,dTY,XSPR,YSPR: ,,d,TX,dTY,XSPR,YSPR:'ƘǠˊ > Transparent/Opaque BLOCOP(BLOCOP)љ$֢BLOCONۘh&/ > Take away origin zone On/Off 0BLOCOF(BLOCOF)5$:BLOCON?h > Centre bloc2BLOCENT:=:5 > Bloc 12BLOCENT:=:5[ > Bloc 22\BLOCENT:=:5 > Bloc 32BLOCENT:=:5# Redraw left menu barf$ , : , ,, ,,,:MENNB %::&BLOCONMM@)):BLOCOPM:)2.BLOCOFM:).3MBLOCENT:)48:,,, ,,,:< Set bloc centerH=BLOCENTXBLOCX2:YBLOCY2H>BLOCENTXBLOCX1:YBLOCY1HBBLOCENTXBLOCX2:YBLOCY1HGBLOCENTXBLOCX1:YBLOCY2L()ADBLOC,X:()ADBLOC,Y:BLOCHXXBLOCX1:BLOCHYYBLOCY1:( ~!  GRAB FROM PROGRAM( ~!,M:):(<JS$:T$()GRAB PRG:*:*$MENNB:)h(:'t:KMxM:):S$:( ) :IMAGELD:FLAGBACK>X1:X:X: z > Select file nameFLGxM:TMEN:):-::DRIVGRAB:PATHGRAB$: #:\j:FILTER$.*:T$ GRAB FROM A PROGRAM:T:+ F$RFILEGRAB$F$:DRIVGRAB:-:PATHGRAB$A$NDGRAB:TXGRAB:TYGRAB:PFGRABLM:TMEN:):FLGP,_ ##::FILEGRAB$:PATHGRAB$:*:T$() Disc error:*::O > Grab from program@PM:TMEN:):FLG(UFILEGRAB$_:T$()Not:T$()enough:T$()memory!:*:*::Vd:: :IMAGELD:XGRAB0:YGRAB:-PLef:-:DRIVGRAB:PATHGRAB$:i fgg:::::,,,(,,:,: Change disk and press mouse key.:::::::@h-::DRIVGRAB:PATHGRAB$i:#,FILEGRAB$:()PFGRAB:S$((),):(S$,)(#,((),>))Zj()()(S$,>)(#,(>,()()))Zk()()(` N@switch oncaseswitch offotherwisecmovewriteparallelcremembercrecalladdctrlpara onpara off <` Control extension V1.01 Copyright L.J.Greenhalgh 1994 type CTRL for command list Le extension de control de L.J.Greenhalgh A CNNu#8AClEGnHa$LNu#< @faHaj g BL y<NCL yJ8$(B 64MQUASHEREX tAESTRO EXD vTICKS EXB ~ITMANIAEXN  ISTY EXM 0-ASIC206PRG TARS EXH INK1 EXQ OINK2 EXR R`"`unpackpack>RPICTURE COMPACTOR extensionExtension COMPACTEUR D'IMAGES0P A"CNu#XACEGNu L/JkJgH yX hNLNuH yX hNLNuH yX hNLNup `p`p yX hN#nE\x9L2IAt40v4t404BZBZ444 @g @ fE\~a>4Qa4aV"Ca*ab CHE\0* @bhHGr234*jAbH4jsb6:g08g*642g <>a &BLx/9nNu#nByvE\4 yX hP%h5|5| @gb @gF @g$ @g$ @faP5CaHK5Ca>4`a65Ca.K5C3vaaT%Caa2 C"j2*4*6HJyvfHp yX hNLavJyvf? yX hN0J@f`#x#|c3G3B3C3D 3E 3A3FpE}G&6Q(HKFM}/SE3:0)HA>0<0003|03SESD0D0)0)rBB&L89$K6"J4gRQrRBQ"J4"J)gRQrRBQQQTy|f"yxR #@(_G/ rBBgRQrRBcR #@(_ܹc RNu cf// JCj6(?gH`Hy?<NN\L](IE0(H>2<2:2823|JAj2(JBj4(0( @Gb0( BDb&I0(?@><(0( S@3~0( 3IF*H,HprgSA$K?y"J:9~ I8SDk gQpgQrR` I8SDk"gCQpgQrR`QofTy|f|\2"_ _A&C}$Ip2Qg / ?<NN\pNupNu 8*V r.  H $TvT ( pmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmfU 'run`$list`#listbank`mode0`"mode1`"dir`$default:keyon:curson:show on` fload"*.*"`fsave"*.*"`full`#multi 2` multi 3` multi 4` mode 0`!mode 1`!accnew:accload"*"`default:key off:curs on:show:list`env`$key list`compiler.acberorbase.acbmmmmmmmmmmmmmmmmmmmmmmmmmmmm`` *' * %* * COMPILED PROGRAM * * %* * Don't change line 65535! * * %* *' compadcomptest offcomptest oncomptest alwayscomptest  COMPILER installed COMPILATEUR prsent ACNu#ACEG`NuNu#HJUfT yNLp yNB&9Nub8  mmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmm`R`dextraprntrcaps lock onndrvcaps lock offwrite protectedlextragemdos version$screen dumpos version$disc verify onleft shift keydisc verify offright shift keyfmt disccntrl keycpy discalt keydepack tinycaps lockblurmem sizeconvert iffmedia statusdeshadepowerset printer datacartridge inputdepack degasdisc sidesdisc trackscookie _cpucookie _fdccookie _fpucookie _frbcookie _mchcookie _sndcookie _swicookie _vdodisc sizedisc freedisc usedvtabltabsetup of printervisible input$>l66d  *jb, <\ T@ @ @ @ H@ v@ @ @@.@@@4@@ @@ n Extra extension V1.70 by Martin Cubitt installed Extra extension V1.70 by M.Cubitt ARCtNu#^ACEG Nu#b @f0HA><NC?<NATHAK><NCL ybN#b @fH?<NATJ@gELJg??<NAXJ@g`EJg??<NAXJ@g`L ybN#b @fHp?<NATJ@jj?<NNTL ybN#b @fXH?<NATaL ybN#b @f.Hp09aL ybN#b @fH?<NAT& yR2| pr.f2| `f2| 8pgpaL ybN#b @fHB?<0NATta*B9+t f< `0+9+u0+.+9+v0+9+w0++3+&<+$<xL ybN#b @fHB"y0)a&B@9+v @n+w+v+wB9+t f< `0+9+u0+.+9+v0+9+w0++3+&<+$<xL ybN#b @f8HBB9aL ybN#b @f H |D0L ybN#b @fH |D0L ybN#b @fHNDNRL ybN#b @fHNDNRL ybN#b @f`H8<N.L ybN#b @f8H8<N.L ybN#b @fH8<N.L ybN#b @S$,})(#,(>,()()))m"sBON: TxXM:YM:KM:,XM,YM,::Z() }KM KMx.ZZxfZ,,,J,O,c,|,,,,,,,x > Loading error p:S$::*b:T$() Disk error:*:: > Save NEORFILTER$.NEO:T$ Save a NEO picture: > Save DEGASHFILTER$.PI1:T$ Save a DEGAS pictureL-::DRIVPIC:PATHPIC$: :::::,,,(,,:,: Change disk and press mouse key.:::::::J:DRIVPIC:-:PATHPIC$: ÎĿ\$Ǐ::::::hF$(*FILTER$,T$,):-:PATHPIC$A$:DRIVPIC ͢F$BҢ(F$,.)F$F$FILTER$2ע(F$,FILTER$).BON: :F$,LᏘ:DRIVGRAB:-:PATHGRAB$: 䤦:::::,,,(,,::,: Change disk and press mouse key.:::::::>:DRIVGRAB:-:PATHGRAB$4揘::BON: :: > QUITS$:LMENNB:OLDTX:q::::*b":I > Reduce / increase TX"JDX:TODXlTTXGRABDXTXGRABDXTXGRABTXGRABDX: Yb > FULL&cTXGRAB: :{ > Up one/10 lines2|DTXGRAB :,DTXGRAB:,DTXGRAB:2DTXGRAB : D: D: D: D: DZDGRABDPFGRABDGRABDDGRAB: :PFGRAB(S$),(S$)}(S$)>:(S$)(S$)>,:PFGRABPFGRAB>:PFGRAB()rv:()PFGRAB:(S$,)(#,(>,()())):4DGRABDGRABD: :`̢DDGRABPFGRAB>DGRABDDGRAB: :0ѢPFGRAB()}֠(S$)>,(S$)(S$):(S$)}(S$),:PFGRABPFGRAB>:PFGRAB()ۏvl()PFGRAB}:(S$,})(#,(()(),>)):4DGRABDGRABD: :u > Load errorv:B::BON: : :::F:KM:KM:KM:srX1:Y1:X2X1:Y2Y1:,,,:::FLINKF:KM:XM:YM:KMs>XMX1X2(X1?,XM)>YMY1Y2(Y1?,YM)Ơ:FLINK:X1,Y1X2,Y2:: ,X1,Y1,X2,Y2,X1,Y1: ,X1,Y1,X2,Y2,X1,Y1lFLINK(FLINK):KM:IXX2X1:IYY2Y1VП:XM:YM:KM:KM::BX1XMIX:X1X1BY1YMIY:Y1Y1 ߠ:FLINK:X1,Y1X1IX,Y1IY:: ,X1,Y1,X1IX,Y1IY,X1,Y1: ,X1,Y1,X1IX,Y1IY,X1,Y1bFLINK(FLINK):KM:TXIX:TYIY`S$:,X1,Y1,X1TX,Y1TY ,,d(TX),,::: ::TX,d?,::TX(TX)NSP$( ,,dTX,dTY):#6MENNB:OLDTX:*b:$ > Draw screen and command box :()(S$)DGRABPFGRAB:():():()TXGRAB:()TYGRAB:v::TXGRAB:,,,:TXGRAB,TXGRAB,"BON%& ,,XGRAB,YGRAB ::XGRAB,YGRAB:FILEGRAB$:XGRAB,YGRAB:P:;DGRAB;:XGRAB ,YGRAB:W:;TXGRAB;%:::(m ~! n GRAB FROM PICTURE(o ~! pM:)Lu:REDO:NOJUMP:REDO:)(z:'t:KM,M:): zӊ > GRABRM:TMEN:):IMAGELD$ٙ(<:::::dޢIMAGEPAL( )::X:#PAL(X)(X):X\X:X,#PAL(X):X: : :<:KM:KM:KM88XM:BY16XMXMxX1XM:Y1:X2X1:Y2Y1:,,,:::FLINKF:KM:XM:YM:KM8>BY16XM((XM))>XMX1X2(X1?,XM)>YMY1Y2(Y1?,YM)FLINK:X1,Y1X2,Y2:: ,X1,Y1,X2,Y2,X1,Y1: ,X1,Y1,X2,Y2,X1,Y1l FLINK(FLINK):KM:IXX2X1:IYY2Y1F:XM:YM:KM:KM8>BY16XM((XM))BX1XMIX:X1X1BY1YMIY:Y1Y1FLINK:X1,Y1X1IX,Y1IY:: ,X1,Y1,X1IX,Y1IY,X1,Y1: ,X1,Y1,X1IX,Y1IY,X1,Y1b$FLINK(FLINK):KM:TXIX:TYIYP),X1,Y1,X1TX,Y1TY ,,d.(TX),,::: ::TX,d?,::TX(TX)N3SP$( ,,dTX,dTY):#V8MENNB:OLDTX:*b:INSOTAU%=u > Load NEOrM:):FILTER$.NEO:T$ ---> Load a NEO picture <---: > Load DEGASdM:):FILTER$.PI1:T$ ---> Load a DEGAS picture <---P-:: DRIVGRABI:PATHGRABI$: \ 2 T:+ F$u2L-:PATHGRABI$A$: DRIVGRABI:F$, 6IMAGELD:FLAGBACK: 27b7::*:T$() Disk error:*::uc > Change/not palette2dIMAGEPAL(IMAGEPAL):fH8<N.L ybN#b @fH8<N.L ybN#b @fH?<NAT6p??< NMXa0L ybN#b @fZH 96"92aL ybN#b @ffN~,H n m |+tR0ST R QR$<&<+txL ybN#b @fN~,H n@ m6 |+tR0ST R QR$<&<+txL ybN#b @fN~H #(n m |+t0"|+v$$IR RQ"|+v$<H@?<?<NMXO"_(| g8|fgSS `| m¸|~nRR.< NCo$<&<+txL ybN#b @fN~"N~ H @m4 @n, Am. A n&vS Am2(*&օ m _ov a L ybN#b @fN~"N~ H @m^ @nV Am Anx68aJ @fL ybN#b @fN~"N~ H @m @n @m @n@g\<>a @f#/t3t#/x3x0a @fj 93t/tf* 93x/xf y /xn& y 3xn y/zn y3zn BBB69/t89/vSDza @fa @f|fza @fa @f DnL ybN#b @fzN~ H @m @na @f(09/ta L ybN#b @f.N~ H @m @na @f09/va L ybN#b @fHa @m a L ybN#b @fHa @ma RL ybN#b @f|Ha z @ma $L ybN#b @fNHa V @ma L ybN#b @f Ha 2 @mTa L ybN#b @fHa  @m&a L ybN#b @fHa @ma lL ybN#b @fHa @ma >L ybN#b @fN~,Hmn??<!NNXL ybN#b @f$H?<:< Df$a @f*RG Gf<< GPm8<`6:<a @f:<a @fRG Gf<< GPm8<?<NN?<?//<+t?<NN?<?<?<?<?/</<+t?< NN @f |+t p~B Q0<aH @f`0<a< @fT0<Nu?/ B disc size (A).: Bytes size on A disc used (A).: Bytes used on A disc free (A).: Bytes free on A mem size. : Memory size (bytes) vtab (X). : True TAB command ltab (X). : Printer tab command blur (8 parms).: Blur bank convert iff S,D,P.: Convert IFF to STOS deshade D,I,S.: Colours to S not I set printer data A: Config printer to A setup of printer..: Return printer data depack degas A,B..: NOT IMPLEMENTED A$=visible input$(A):Input A char to A$ Sorry, function not availableFunction not availableYour printer is not on-linePrinter not on-lineDisc error occurred during formattingError during formatSource drive out of range, must be 0 for A or 1 for BSource drive out of rangeDestination drive out of range, must be 0 for A or 1 for BDestination drive out of rangeSides out of range, must be 1 or 2Sides out of rangeSelected colour must be 0-15Colour 0-15 onlySelected data must be 0-2550-255 onlyNo parameters expectedNo parameters expectedExpected 2 parameters (drive 0-1 and no. sides 1-2)2 parameters required; drive & sidesExpected drive parameter 0-1Drive parameter 0-1 expectedExpected drive parameter, 0-default; 1-A, 2-B etcDrive parameter expectedExpected data, 0-255Data expectedTab value missingMissing tab valueMaximum characters value missingMissing valueExpected source and destination drivesSource and destination drives expectedSource & destination drives must be differentSource & destination drives must be differentExpected 2 parameters (a and b for a^b)2 parameters required; eg POWER (5,2) for 5^2Expected 2 parameters, source & dest addr2 parameters required, source & dest addrExpected 2 parameters, screen addr and colour2 parameters required, screen addr and colourExpected 3 parameters, source, dest addr and palette flag3 parameters required, source, dest addr and palette flagRequire addr,x,y,xf,yf,szx,szy,mRequire addr,x,y,xf,yf,szx,szy,mUnable to format - drive errorDrive errorDisc formats do not matchDisc formats do not matchUnable to format - disc write protectedDisc write protectedBad sectors duringf format - abandonedBad sectors on discValue out of range 0 - 132Range must be 0 - 132Value out of range 1 - 9000Range 1 - 9000First parameter must be 0-32767First parameter must be 0-32767Second parameter must be 0-32Second parameter must be 0-32Unable to copy discUnable to copy discCookie selected not available on this machineCookie not available r V=f6\.""P6   $    $         6( (  ( j r@B  L((&&&&&&&&.,|046 : :    (  &   "  *(     LH 202l,  (*PSPRIT101BIN  ?WINDO102BIN 0q1MOUSE SPR = 8X8 CR0 @ 8X8 CR1 C8X16 CR2 F MUSIC101BIN JPIC PI1 EB}CONTROL EXW m COMPACT EXA ppEDITOR ENV urX,  P `h0 - q??@  `?????@0>?(P0>P<P<  8  x` `0` r`'@O v&'"& &'H D& &'H D(k (((>( (h)*~5 25<5Jf\STOSPIC.PI1PIC.PI3SPRIT???.BINWINDO???.BINFLOAT???.BINMUSIC???.BINBASIC???.BIN*.EXY70Tos 1.62Y7DTos 1.62Y 'STOS has been fixed by theY!' GOODMAN INTERNATIONAL Y"#Public Domain & Shareware ServiceB oAJgR#?<NNT#Hz?<&NN\MATC]0RHRI00M Z, -@ -@?<?<NNX-@?<"NNT"$=-B-@x ng nmTA nmA -AMD?<NNT3K m p, Jyg( yg?</</<?<NN Aa/:?<NN\|$z&J=> J"Kޒ~cRF|dbNz2F|de*EdHp $$$$&&&&QLQ` ABahA4a`AadGN#AaPG~N#AaFfGfNAa*GXN#BGM8|9A|Aaf$AaHG"N#L@<N-`RG|eJ_gAv yfAuaAMa/Aa2,_?<%NNT z0<?BQ yg?</</<?<NN AG(zBN`a:A#a?:r/:j/:f?<NN MK` m p,0Q mp 0Q U*Hz@?<NN\?<%NNTBgNAA@Ci"p2Q"9#"$09.B#A0 <*#Nu09`ܰ< gprNs0|.|0B(Ns/Hzt?<NA\ _Nu/?<;NA\J@NuBg/?<NNAPAhJ@NuBg/?<=NAPJ@k3Nu 9//?:Z?<?NA JkNu?:D?<>NAXNu/?< NA\NuafNuHppahaf&:ֺ`d~a| zaa"z )Щ$I$ BJg` g<gՒ`` z кgR#LpNuLpNu&R< & "$< ~EXW m COMPACT EXA ppEDITOR ENV urto: Billy Allan 66 Highmains Avenue Dumbarton GLASGOW SCOTLAND G82 2PT The Missing Link (c) 1993 Top Notch Software. This program is shareware! Send 10 sterling to: Billy Allan 66 Highmains Avenue Dumbarton GLASGOW SCOTLAND G82 2PT ANCNu#ACEGHA:Cpp"gRgA/Cp"g:gA)Cp"g"gA0~NC1w@RA1f@RA1U@RA1f@RA` This version of the Missing Link has been tampered with! For a wuNJ > 16*16*BY16(BY16):u+ > Auto insertion0,INSOTAU(INSOTAU):u<:KM:KM:KM8 Left grab menutMENNB: , : ,MENNB ,,MENNB ,,,<::IMAGEPALM:)0BY16M:)2INSOTAUM:)8:*:T$()Grab :T$()from :T$()pictures:*(U ~!V ANIMATIONS(W ~!XM:):(<:SPRNB:T$()No:T$()sprites!:*:*:2: z]@:T$()Not:T$()enough:T$()memory!:*:*:d: z"bFRWD:4g,(@,(,))lXSPRNB:()X,:()X,"TX(X):()X,"TY(X):()X,"HX(X):()X,"HY(X):Xq(),()():(),SPRNB::NANINB::: > MAINpM:):::::(),:(),::0X:X:X0MENNB:*b: z > Anim loopRZ():XM:YM:KM:KM KMVƢZVZ[:ZV::ˢZ4Z<&LEFTAD(MENNB,Z4)::&LEFTAD(MENNB,Z4)::NZ4::::2ТZ\:բZZ ZR, ,",%,W,,,,,,:2ڢZ 9:2ߢZ : > Plus one sprite<SSPRCUR:XM8S,XM@HS,SSSPRNBANISUPANICURXANISUPANICUR:$ANIS(X)$ANIS(X):$ANIV(X)$ANIV(X):Xn$ANIS(ANICUR)S:$ANIV(ANICUR)ANIV:ANISUPANISUPHANICURANISUPANICURANICUR4:L:~::: > Delete"ANISUP:ANISUPANICURXANICURANISUP:$ANIS(X)$ANIS(X):$ANIV(X)$ANIV(X):X:ANISUPANISUP:ANICUR:::Y:ANIXST,ANIYSTY:(");:Y::L:~ > Delete all inputs6ANISUP:ANICUR: > Set speed down/up  D:* "D:*%D<*ANIVDANIVD1/:ANIVANIVD:":ANICURANISUPXANICUR:$ANIV(X)ANIV:6:~4458 > Select animation9X(XM(ANIXST))@((YM(ANIYST))):XANISUPXH>X,ANICUR:6:XANICUR:6:Q > Set speed RD:\WD\ANISUPa:XANISUP:$ANIV(X)D$ANIV(X)D2X:XANISUP:$ANIV(X)$ANIV(X)D:Xf:~kkp > Select animNMANINB:):MN:)(ANISUP&ANISUP(N):ANICUR&ANICUR(N):ANIV%ANIVV(N):X:$ANIS(X)%ANISP(N,X):$ANIV(X)&ANIVIT(N,X):X:ANINBN:FRWDM:FRWD::::Y:ANIXST,ANIYSTY:(");:Y::L:~ > Stores current animp&ANISUP(ANINB)ANISUP:&ANICUR(ANINB)ANICUR:%ANIVV(ANINB)ANIVX:&ANIVIT(ANINB,X)$ANIV(X):%ANISP(ANINB,X)$ANIS(X):X > Place spritev&ANIXSP(ANINB)XM:&ANIYSP(ANINB)YM:ANISUP,XM,YM > BackwardfFRWDM::M::FRWD:~ > ForwardlFRWDM::M::FRWD:~ > Step by step"ANISUP:$M::ɦx$OLDCANICUR:OLDAOLDC:ANICUR:FRWDANICURANISUP):XOLDA:6:XANICUR:6:OLDAANICUR:,&ANIXSP(ANINB),&ANIYSP(ANINB),$ANIS(ANICUR)::::KM:KM:Z() .KMG.3Z4Z:G&8Z&:ZT>FRWDANICUR:ANICURANISUPANICUR`@FRWDANICUR:ANICURANICURANISUPBZGANICUROLDC:XOLDA:6:XANICUR:6:M::ɧ:::"K > Poke pseudo sprites bank(L:::ANISUP*QAB()SPRNB,VXANISUPz[XeYX:$ANIS(X)$ANIS(Y)o `Y eL(((S$($ANIS(X))))):ABL()():()$ANIS(X),()SPRNB:()$ANIS(X),(()SPRNB):oj()$ANIS(X),AB():()(S$($ANIS(X))):()AB:()::ABABLoX:} > Start animation~ANISUP|FRWD,&ANIXSP(ANINB),&ANIYSP(ANINB),$ANIS():,AN$L::A$:XANISUP:A$A$(AN$,X,):X:,&ANIXSP(ANINB),&ANIYSP(ANINB),$ANIS(ANISUP):,A$L:: > Load NEOfFILTER$.NEO:T$ ---> Load a NEO picture <---:M : > Load DEGASZFILTER$.PI1:T$ ---> Load a DEGAS picture <---:M Z:-::DRIVBACK:PATHBACK$: Ďɿ\RΠ::::T:+:F$|ӏ:-:PATHBACK$A$:DRIVBACK:F$, :FLAGBACK:IMAGELD0؏::~::⠋: > Display backgroundHM ::FLAGBACK<FLAGBACKM ::F : :( ):::FRWD:~*#::::,,::h(q:::::::,$:,o:~::,-q,#PAL(),#PAL(),#PAL(),#PAL(),#PAL(),#PAL(),#PAL(),#PAL(),#PAL(),#PAL( ),#PAL( ),#PAL( ),#PAL( ),#PAL( ),#PAL(),#PAL()2ۊ > Draw animation screen6ܤ::,, ,@,ANIHYr , :MENNB: ,MENNB ,,MENNB ,,,^, ,,: ,,,`,ANIHY,,ANIHY$:M:X :X,%ANIX1(X),%ANIY1(X)%ANIX2(X),%ANIY2(X):X::ANIXST ,ANIYST:Animation string;: ,(ANIXST),(ANIYST)(ANIXST ),(ANIYST): , ,?,(ANIYST).MANINB:): > Set to white::,,::%ANIX1(M),%ANIY1(M)%ANIX2(M),%ANIY2(M)::& > Print and creates anim string:::TAN$():XANISUP:6:X6"ANIXTV,ANIYTV:##;ANIV;:*5 > Print and creates ONE anim phase6XANISUP(AN$,X) :(AN$,X)((($ANIS(X)) ),(($ANIV(X)) ))67:::XANICUR8XANIXSTX,ANIYST:XANISUP(###,;$ANIS(X);##);$ANIV(X);::<9XANIXST(X),ANIYST:XANISUP(###,;$ANIS(X);##);$ANIV(X);::<:X ANIXST(X),ANIYST:XANISUP(###,;$ANIS(X);##);$ANIV(X);::<;ANIXST(X ),ANIYST:XANISUP(###,;$ANIS(X);##);$ANIV(X);::(<X ; =:> FILE(? ~! @ M:v)tE MENNB: , : , MENNB ,, MENNB ,,, J:2O ~FILEPAL M:v)2T:,,, ,,,Y *REDO: NOJUMP:|F*: T$()FILE: T$() Bank size:: T$()(( BANKSIZE) ) :|*(^-I:e.'t: KM,rM:): z > Get palette ON/OFF4FILEPALFILEPAL:E  > LOAD  M:v)" A$(*.*,)` FILTER$.MBK: T$ LOAD a sprites bank: T :+ F$+E  F$, rFILENAME$:,:,$:,o:|F*: T$()Loading :|*: vFLGMERGEH -: BPATHSAVE$ A$: DRIVSAVE:7 S.  hPAL$:#, rFILENAME$: () SPRMAXBANK::EZ  A$(#,):( A$, ) Lionpoubnk::EN  A$(#,):(( A$))::E  vFLGMERGE DMIDHI(( A$) )(( A$)): ^NSMID(( A$)): TNSHI(( A$))  JNS(( A$)): JNSA((A$)):A()PAL$(#,A()): * *6  OPXT, OPYT:Out of; JNS;@  SPRNB JNS SPRMAXNB::+E BMAP$(#, JNS): 8A(( BMAP$)): 8A() hPAL$(#, 8A()) "5 2N JNS: OPXT, OPYT:Number; 2N;: ,IX(( BMAP$) 2N): $IY(( BMAP$) 2N) $ A$(#, ,IX $IY): A$(#, ,IX $IY): S$( SPRNB 2N) bSCRCODE$(( ,IX))(( ,IX))()( $IY) A$ &" TX( SPRNB 2N) ,IX:" TY( SPRNB 2N) $IY:" HX( SPRNB 2N)(( BMAP$) 2N):" HY( SPRNB 2N)(( BMAP$) 2N), ( 2N: A$: BMAP$ * vFLGMERGE()()( ^NSMID TNSHI)OTHER$(#,()())6 ,:: SPRNB SPRNB JNS . ~FILEPAL hPAL$(( hPAL$)) TCODEPAL77 X:# ا0PAL( X)(( hPAL$) X): X,# 0PAL( X): X: 0 ST$:,$:,o:,0 5 vFLGMERGE F$, rFILENAME$& : vFLGMERGE:+E S X XXSPRNBSPRMAXNB:S$(X):"TX(X):"TY(X):"HX(X):"HY(X):X:F$,FILENAME$d ]:::*:T$() Disc error:*::E k > APPEND l M:v)n q:: FILTER$.MBK: T$ APPEND a sprite bank: T :+ v F$El { SPRCUR SPRNB:,$:,o:|F*: T$()Adding :|*<  vFLGMERGE: F$, rFILENAME$:/P  ϊ > SAVED M:):FILENAME$!9 љ-L ҏ :DRIVSAVE:PATHSAVE$:: ӎ  ԏ:!9: ՙ|F*: T$()Saving:|* ڙ, ߏ! #, rFILENAME$| A$ Lionpoubnk():( A$) ,:( A$), BANKSIZE:#, A$; A$():( A$),:( A$),:( A$), SPRSIZE:( A$) , SPRSIZE DMIDHIt ( A$), SPRNB:( A$), ^NSMID:( A$), TNSHI:#, A$;  SPRNB AD SPRNB$: A$( SPRNB)::? 2N SPRNB:( A$) 2N, AD:( A$) 2N," TX( 2N):( A$) 2N," TY( 2N):( A$) 2N," HX( 2N):( A$) 2N," HY( 2N): AD AD((( S$( 2N)))): 2N:#, A$; A$($):( A$), TCODEPAL:? X:( A$) X,# 0PAL( X): X:#, A$;H  SPRNB OPXT, OPYT:Out of; SPRNB;:@ 2N SPRNB: OPXT, OPYT:Number; 2N;: A$(((( S$( 2N))))):()( S$( 2N)):()( A$):()::#, A$;: 2N.!( OTHER$)#,OTHER$;`!() LBANKA$(LBANK()):#,A$;! :+E ! ]!3 > SAVE AS !4 M:v)l!9-: FILTER$.MBK: T$ SAVE a sprite bank: T:+ !> F$E!C.!H( F$,)!WX!M|F*: T$()Please: T$()confirm :|*.!R}+\: RE*!W rFILENAME$ F$:;N ! > QUITp! M:v):|F*: T$()QUIT: T$()Confirm!:|*.!}+\: RE !:! > QUIT & GRAB!M:TMEN:):*:T$()QUIT:T$()& GRAB:T$()Confirm!:*."+\:RE$":E"BANKSIZEBANKSIZE:T$()Bank too:T$()big!:T$() Use save.:*:*:,:E" *:T$()Grabbing:*:::: : : ::r::,BANKSIZE:A()"A,:A,:A,SPRSIZE:A ,SPRSIZEDMIDHI:A,SPRNB:A,NSMID:A,NSHI:AAN"SPRNBADSPRNB$:NSPRNB:A,AD:A,"TX(N):A,"TY(N):A,"HX(N):A,"HY(N):ADAD(((S$(N)))):AA:N"A,CODEPAL:AA:X:A,#PAL(X):AA:X6"SPRNBOPXT,OPYT:Out of;SPRNB;:NSPRNB:OPXT,OPYT:Number;N;:()(S$(N)):()A:()::AA(((S$(N)))):N~"$(OTHER$)(NSMIDNSHI)(OTHER$),(OTHER$)(OTHER$)A@") de fault:bgrab(),1:erase(),1`".q:::(#% ~!#& HOT POINT(#' ~! #(M:)t#-$:*:T$()HOT SPOT:*:REDO:(<:FLINK #2.#7't:KM#Zr#AFLINK::XSPRHOTX,YSPRHOTY:':FLINK(FLINK)#FKMN#KHOTXXS:HOTYYS:(n:':#2^#ZM:):M:):(n:': z# > Menu options0#HOTNB:#:#-0#HOTNB:#:#-0#HOTNB:#:#-0#HOTNB:#:#-0#HOTNB:#:#-0#HOTNB:#:#-0#HOTNB:#:#-# > Set hot point@#HOTNBHOTNBHOTX`#HOTNBHOTNBHOTNBHOTXTXH#HOTNBHOTNBHOTXTXR#HOTNBHOTNBHOTNBHOTY<$HOTNBHOTYTYZ$ HOTNBHOTNBHOTNBHOTYTY$$ Hot spot menut$MENNB: , : ,MENNB ,,MENNB ,,,@$::MHOTNB:):8(% ~!% STORAGE(% ~! %M:)$%!MENNB :)h%&*:T$()STORAGE :T$() Bank size::T$()((BANKSIZE) ) :*(%+:'t:KM,%NM:): z% > Delete sprite8%M:):%:%!:%SPRCURSPRNBSPRNB:%XSPRCURSPRNB:S$(X)S$(X):"TX(X)"TX(X):"TY(X)"TY(X):"HX(X)"HX(X):"HY(X)"HY(X):X%S$(SPRNB):"TX(SPRNB):"TY(SPRNB):"HX(SPRNB):"HY(SPRNB):SPRNBV%,$:,o:,:.|:::OLDGET:% > Insert spriteH%M:TMEN:):%:%!b%(<:SPRNBSPRMAXNBSPRSIZE(SP$) SPRMAXBANK:<%SPRCURSPRNBNOSC:&%XSPRNBSPRCUR:S$(X)S$(X):"TX(X)"TX(X):"TY(X)"TY(X):"HX(X)"HX(X):"HY(X)"HY(X):X%S$(SPRCUR)SP$:"TX(SPRCUR)TX:"TY(SPRCUR)TY:"HX(SPRCUR)HOTX:"HY(SPRCUR)HOTYL%SPRNB:,$:,o:,:.|:::&G > Get spriteH&HM:TMEN:):&M:%!<&MOLDGET:SPRCURSPRNB:&RSP$S$(SPRCUR):TX"TX(SPRCUR):TY"TY(SPRCUR):HOTX"HX(SPRCUR):HOTY"HY(SPRCUR)&W,,XSPR,YSPRXSPR@,YSPR@:,,XSPR,YSPRXSPR@,YSPR@:(n:OLDTX:' &\OLDGETSPRCUR:& > Put spriteV&M:TMEN:):NOSC:&:%!T&(<:SPRCURSPRNBSPRNBSPRMAXNB:R&SPRSIZE(S$(SPRCUR))(SP$) SPRMAXBANK:&S$(SPRCUR)SP$:"TX(SPRCUR)TX:"TY(SPRCUR)TY:"HX(SPRCUR)HOTX:"HY(SPRCUR)HOTY&SPRCURSPRNBNOSCSPRNB:,$:,o:::,$:,o&,&Ş::NOSC:&݊ > Erase bank &M:)\&*:T$() Erase bank:T$()CONFIRM!:*.&+\:R%!N&,:,$:,o:,:.|:%!"' -' SUB ROUTINES"' -' > ZOOM' TX OLDTX TY OLDTY()::, XZOOM, |YZOOM, XZOOM TX 4IZOOM, |YZOOM TY 4IZOOM, XZOOM, |YZOOM:V',, XZOOM, |YZOOM XZOOM rTXZOOM, |YZOOM fTYZOOMR'`n X: TX X rTXZOOM XR'` Y: TY Y fTYZOOM Y$' 4IZOOM( X, Y)0'$:,,,::') TX 4IZOOM rTXZOOM XZOOM TX 4IZOOM, |YZOOM XZOOM TX 4IZOOM, |YZOOM fTYZOOM'. TY 4IZOOM fTYZOOM XZOOM, |YZOOM TY 4IZOOM XZOOM rTXZOOM, |YZOOM TY 4IZOOMX'3 TX@ XSPR TX, YSPR XSPR TX, YSPR@X'8 TY@ XSPR, YSPR TY XSPR@, YSPR TYV'=:, XSPR, YSPR, XSPR@, YSPR@, XSPR, YSPRr'B2, XZOOM, |YZOOM XZOOM TX 4IZOOM, |YZOOM TY 4IZOOM'G() ADSPR:() ZADZOOM:()( ):():() 4IZOOM:() TX:() TY:'L()::, XZOOM, |YZOOM, XZOOM rTXZOOM, |YZOOM fTYZOOM, XZOOM, |YZOOM.'Q OLDTX TX: OLDTY TY'V's > Mouse in zone <\'t XM: YM: KM: OLDZ FZ: FZ(): K$: SC 'u K$hD'~H'v:MENNBSCa:'t6'wMENNB MENNB'~'x:::SCK(x:.:'tSCM(x:.:'tx'ySCOLDSC(SCHSCPSCSSCR)OLDSCSC:'~'zOLDSC:SCH(x:&M:'tSCP(x:NOSC:&:'tSCS(x:%:'tSCR(x:%:'tp'~ FZ2 MENNB(, XM, YM, SPMOUSE, XM, YM,$': FZ2j>'T' X( XM XZOOM) 4IZOOM: Y( YM |YZOOM) 4IZOOM' X( X TX) Y Y TY( X OLDXS Y OLDYS KM OLDKM)e.'t' XS X: YS Y:,::::X:##; X;:#,:Y:##; Y;:D' OLDZ2 *REDO(n:'' OLDZ2:: ,FIL1, "FIL2,: XPAINT, YPAINT?, YPAINT TYPAINT: OLDZ FZ: MENNB' KM ' FZe.'t ' KMe.'t*' OLDXS: OLDYS' Return to set RGB,' MENNB FZ\' Storage arrowsj' FZV FZ[ MENNB:: FZV:e.'t' Fix size,' FZ3 MENNB' Jump in palettes2' FZP :'t2' FZQ :'t6' MENNB MENNBn'' Jump to fix paint8'Ģ FZ>:'t8'ɢ FZ>:'t"'ʊ Jump to Flip/Upside/Rotated'ˢ FZ> FZ>(ROUTINES(Z>):'t'Ί Jump to UNDO8'Ӣ FZ >:'t'؊ Jumps to sprite arrowsj'ݢ FZR FZU MENNB (ZR)d:'t 'ފ Jump to left menu options'ߢ FZ4 FZ<& LEFTAD( MENNB, FZ4)o:::& LEFTAD( MENNB, FZ4) ' Jump to drawing routines' NOJUMPe.'t')R'Z>Z>:(ROUTINES(Z>)''t(; > Save sprite <N(< SP$(, XSPR, YSPR XSPR TX, YSPR TY):(m > Restore sprite <h(n,, XSPR, YSPR XSPR TX, YSPR TY:(, XSPR, YSPR) SP$T(s, XSPR, YSPR, XSPR@, YSPR@, XSPR, YSPR:.(xREDO(n:'(}"( > Display selected option <( OP XOLDOP (,,, ( XOLDOPXOLDOP:YOLDOP:,,XOPX,YOPYXOP(X),YOP(Y):(,XOPX,YOPY)OP$ ( OP(( X OP: Y OP: NOP$(, 0XOP X, (YOP Y 0XOP( X), (YOP( Y))(::: 0XOP X, (YOP Y 0XOP X, (YOP Y:H(, 0XOP, (YOP,@,, 0XOP, (YOP( XOLDOP OP:() > Set to white left menu command`) UNDO$(, XSPR, YSPR XSPR@, YSPR@): UNDOFLG) )g > Unpack left menu <)h , P)m , MENNB ,, MENNB ,,,P)r , MENNB ,, MENNB ,,,)w*)ˊ > Set to white left menu command M)̠)Ѡ:,,:: >Y1 M: 6Y2 M( TMEN): M TMEN Y2Y2$)֠, >Y1, 6Y2 )۠: TMEN:*/ > Restore Left menu/,*0u)h: MENNB8*5 ,,,@,À, 0XOP, (YOP8*: ,,,@,À, 0XOP, (YOP$*? XOLDOP:r2(*D NOJUMP: *a > Restore SCREEN smooth!0*bq::::x*0,*cq,# 0PAL(),# 0PAL(),# 0PAL(),# 0PAL(),# 0PAL(),# 0PAL(),# 0PAL(),# 0PAL(),# 0PAL(),# 0PAL( ),# 0PAL( ),# 0PAL( ),# 0PAL( ),# 0PAL( ),# 0PAL(),# 0PAL()*g FZ: X& CURINK( FZ): Y& CURINK( FZ):& OLDINK( FZ)(& CURINK( FZ)):| *l FZ: X& CURINK( FZ): Y& CURINK( FZ):& OLDINK( FZ)(& CURINK( FZ)):| *q H*v dFLGDEBOLDTX:(n:',*{ur):,$:,o:"* > Print in right menu zone*::J* 0XOP, (YOP>, (YOP* NOJUMP:"* > Print in right menu zone*: *} Yn+ T$( Y) OPXT( T$( Y)), OPYT Y: T$( Y);6+ T$( Y): Y: NOJUMP:+[> BIG confirmd+\p(<: UNTX TX: UNTY TY: OLDTX: TX@: TY0V+a,, XSPR, YSPR XSPR@, YSPR@:_'::+f::,,: XSPR, YSPR XSPR0, YSPR: XSPR, YSPR XSPR0, YSPR+:::!,:NO:!,:OK+k:_'+p,, XSPR, YSPR XSPR@, YSPR@:,, XSPR, YSPR XSPR@, YSPR@+q(:"+uI:,,,::B+z R:W<t R+,, XSPR, YSPR XSPR@, YSPR@:,, XSPR, YSPR XSPR@, YSPR@: TX UNTX: TY UNTY: OLDTX:q (n:_'++ > File selector++,+Ő :::::8+ F$(* FILTER$, T$, T)+Ϡ: : +ԏ0+٢ F$ FILTER$.*D+ޢ( F$,.)F$F$FILTER$::+㢸( F$, FILTER$)F$++F$:+",# > Draw sprite selector zoneJ,$,, vSELY,, vSELY lSELTY ,, vSELY,) YY vSELY: ,,, YY0, YY lSELTY: ,,@, YY, YY lSELTY: ,,, YY, YY lSELTY$,*:: : ,. A$ :( A$,)( SPRCUR): Y: SELXT, SELYT Y:( A$, Y,);: Y,/ A$ : SPRCUR SPRNB> A$ :( A$,)( SPRCUR) A$ ENDp,0 Y: SELXT , SELYT Y:( A$, Y,);: Y,1:,8 SPRCUR( ," TX( SPRCUR), YY" TY( SPRCUR)) S$( SPRCUR),= SPRNB SPRCUR( ,`" TX( SPRCUR), YY" TY( SPRCUR)) S$( SPRCUR),B SPRCUR SPRNB( ," TX( SPRCUR), YY" TY( SPRCUR)) S$( SPRCUR),G,o ,, vSELY,, vSELY lSELTY,, vSELY: ,, vSELY,, vSELY lSELTY,, vSELY:, > Erases sprite bank,7 X SPRMAXNB: S$( X):" TX( X):" TY( X):" HX( X):" HY( X): Xr, SPRNB: SPRCUR: OTHER$: DMIDHI: NBMID: NBHI:, > Calculate BANK size,, SPRSIZE SPRNB$, SPRNB X SPRNB: SPRSIZE SPRSIZE((( S$( X)))): XJ, BANKSIZE( SPRSIZE( OTHER$)):-O > Set GRABBER zonesJ-P,XGRAB,YGRABXGRAB,YGRAB?-U,XGRAB,YGRABXGRAB%,YGRAB+:,XGRAB%,YGRABXGRABH,YGRAB+:,XGRAB,YGRAB+XGRABH,YGRAB?:,XGRABH,YGRABXGRABm,YGRAB+:,XGRABm,YGRABXGRAB,YGRAB+:,XGRABH,YGRAB+XGRAB,YGRAB?-Z,XGRAB,YGRABXGRAB,YGRAB :,XGRAB,YGRAB XGRAB,YGRAB-_ ,XGRAB,YGRAB)XGRAB,YGRAB3: ,XGRAB,YGRAB3XGRAB,YGRAB?-d ,XGRAB,YGRABXGRAB,YGRAB): ,XGRAB,YGRABXGRAB,YGRAB)-i ,XGRAB,YGRABXGRAB,YGRAB):,XGRAB,YGRABXGRAB,YGRAB)-n- > Get dir$R- A$(*.*,): A$: A$ A$\-. > Auto PUT".DDX:.".DDX&."SPRCURSPRNB:(.'OLDGETSPRCUR: .,NOSC:&f.1SPRCURSPRNBDDXS:DXDDX:.6&M:.{ > Delete all animationsv.|N:&ANISUP(N):&ANICUR(N):$ANIV(N):N:"F -G DATAS"H -O > Routine lines,P,L,,,x,,U@,,,l,,4,Z,, `, , (, .7 > Left menus MAIN SCREEN lines address>8,X,p,,@,#(, , H,%(Ǜ > Left menus BLOCS lines address>ǜ,,h,,0,,,\,& > Left menus ANIM lines address>,,,,,,,,0c > Left menus IMAGE GRABBER lines address>d,,,,,,,,,d2NJ > Left menus PROGRAM GRABBER lines address>Ƞ,P,P,P,P,P,P,,&+ > Left menus FILE lines address>,r,, , l, ,!4,!,!,!*ɏ > Left menus HOT SPOT lines address>ɐ#Z,#,#,#,#,#,#,#,#Z.W > Left menus RGB SELECTOR lines address>X , , , , , , , , .ʻ > Left menus SET XY SIZE lines address>ʼ v, v, v, v, v, v, v, , * > Left menus STORAGE lines address> %N,&,%,%,%,&,&,&H,&H$ > Animation menu coordinates ,,, ,,, ,,, ,,., /,,?, ,,,& ,,,&  ,,>,& !,(,,5 &,(,,5 + ,(,>,54`A$:S:A$Se`NN4tT4t<@??<@PALTfpp 0PU33ss77w?~耘@@ omkDdppp?~yzs@oE?"}]*pp????????@@@@}|~||}|@@@@ ??@?=xA]t]t~||]t]tA?=x@  `?-h]t]t~\t]t]t?-h `  `ml~\tml ` || ?8<? @?.^h} %2)tDB0??@?=xAAA~||AAA?=x@  `?!AA~||AA?! ` Lionpouloscc=$ -  STOS BASIC COMPILER Version 2.07 By Francois LIONET" (c) 1989 Jawx / Mandarin$ -$ Set compiler path in line 10  for automatic finding$ - COMPATH$F2:q:::ͦ:PRGNB:7˦<ZERO1:ZERO24Vx:():():()::()()ZERO1():ZERO2().dCR0$COMPILER\8X8.CR0().iCR1$COMPILER\8X8.CR1()0nCR2$COMPILER\8X16.CR2()"sMOU$():MOU$()COMPILER\MOUSE.SPR():MOU$()COMPILER\NOMOUSE.SPR():MOU$()COMPILER\LOMOUSE.SPR():MOU$()COMPILER\MIMOUSE.SPR():MOU$()COMPILER\HIMOUSE.SPR()xDFO$(0):E`:tX*:Y:(DFO$)X,Y:X:COMPTST:BWIN}:BSPR:CR0:CR1:CR2:MOUV}IMX:IBK :IMX:IBK$DRV$:PAT$\MP:MX*:"NT(MP),"XT(MP,MX),"YT(MP,MX),"IT(MP,MX),T$(MP,MX),"ST(MP,MX),"BT(MP,MX),"CT(MP,MX),"ZT(@)L͝PAGE:HPAGE:T҉X:X"XT(PAGE,T)X:"YT(PAGE,T),"IT(PAGE,T),T$(PAGE,T),"ST(PAGE,T),"BT(PAGE,T),"CT(PAGE,T):T:,"NT(PAGE)T:PAGELq,,w,p,,p, ,0,P&COMPATH$|:(COMPATH$,,):(COMPATH$,):COMPATH$(COMPATH$,)@\:COMPATH$:COMPSET:. P:, :%>>> Searching for compiler folder <<<)h:R:, :COMPILER folder not found,:::please see manual for details.:,:Press mouse key.:::::xX#:CDIR$:CDRIV:CDIR$CDIR$\`A$((COMPILER\COMP?.PRG,), ): COMPILER\A$, \&COMPILER\PICHI.MBK, COMPILER\PICLOW.MBK, @x  ,(ǢSDISK̏: юxIM( ):IMMEMIM(IM):IMDISKIM(IM):IMGEMIM(IM):IMSTSIM(IM ):IMCOMPIM(IM):IMIMXIM7:YIM:DBh:XSOUXIM:YSOUYIM:XOBJXIM :YOBJYIM:XGEMXIM :YGEMYIMDB`XOPTXIM:YOPTYIMDB:XQUTXIM:YQUTYIMDB:YERR:YMES :XWIN1XIM :XWIN2XWIN1:YWIN1YIM<:YWIN2YIMJ:XW1XWIN1:YW1YWIN1:XW2XWIN2:YW2YWIN2XIMXIM:YIMYIM:DBDB:XSOUXSOU:YSOUYSOU:XOBJXOBJ:YOBJYOBJ:XGEMXGEM:YGEMYGEM:XOPTXOPT:YOPTYOPT:XQUTXQUT:YQUTYQUT:XW1XW1:YW1YW1:XW2XW2:YW2YW2"q::.(<(X:IMX:,YERRL] Written by Franois Lionet:: (c) 1989 Mandarin / Jawxvb( ) :::Compiler version(()).((()) )gTIT5*0:DL:Z():K:KL0MTITTIT:1) NZL6QZ,,, ,x,,V::::L:>SDISKSDISK:(A::::>ODISKODISK:/(F::::4x :}:*DRV$: PAT$ }:BFLAGGEMFLAGGEM:0(K::::$ТSDISK46яn:DRV$:PAT$:z ҎՏ T|ڪ:IMX::A$(*.BAS, Please select SOURCE file name,):B$(*.*,)(ߢA$(<:^䢸(A$,)(<:A$FILE NOT FOUND:):*ODISK(<,SOU$:\A$$4ODISK65>6:DRV$:PAT$:J9 699 T>>F$.CMP:FLAGGEMF$.PRGC:IMX::A$(*F$, Please select OBJECT file name,):.(<:B$(*.*,)HA$,MOBJ$:\A$ .CDRIV:CDIR$:  )h :+':@ IMCOMP,,XIM,YW1:-.'t" `() F e:()A$ DISK ERROR:):F f()A$ OUT OF MEMORY:):J g()A$NOTHING TO COMPILE:):L h()A$COMPILATION STOPPED:):L iER$ Error number(()): yH jER$:AD(,Not done):ER()r oAD(AD,()):AD(AD,()):ER:ER oZ tP(AD):AD:PER$ER$(P): t. ySDISK $ ~(::IMX" ,YERR:ER$:L in line(()):A$ERROR DETECTED:):( :ER$; in line;()* list(())`: ĩ,YERR:IMX:A$ Object length::ODISKA$A$(())A$A$(()()) ɩ,YERR::A$ bytes.:: Buffer used:(()) bytes.::(()) instructions in(2) seconds.@ A$COMPILATION FINISHED:1):1) (ODISKJ -F$.CMP:FLAGGEMF$.PRG:  2 0 7DTBK(L)::IMX <:::I:N: :N,(XX),(YY)(XXTX),(YYTY):N AOLDZ FZ():Kp KZOLDZOLDZNOLDZ:I: :OLDZ` PZOLDZNZ:OLDZZ:I: . UKZ F Z::*0 _Z 4 dZ(<:*0:\ i, :>>> GRABBING <<<: n:DRV$:PAT$: s n sT s:():():()Z:( )  T :IMX:::B$(*F$, Save OBJECT file,):(<:A$(*.*,) B$> (B$,.)B$B$F$J A$>>> SAVING <<<:(:{B$,()() (: NYY:TYNYY:TYYY(N):TYF XX:TX%TXM& :XX,YY` IsTX,TY,sTX,TY,V NXX,YY:Save compiled program to disk:( NQUIT:L Grab to program #((N) ):XX,YYh (DTBK(N))PROGRAM AREA USEDEMPTY F T(<:A$>>> DISK ERROR <<<:): Y Y ---> Compiler optionsF :::,:,f PAGE "IT(,):"IT(,):((DFO$) )"IT(,),"IT(,) "IT(,):"IT(,):((DFO$)")"IT(,),"IT(,) "IT(,):"IT(,):((DFO$)$)"IT(,),"IT(,) "IT(,#):"IT(,$):((DFO$)&)"IT(,#),"IT(,$) "IT(, ):"IT(, ):((DFO$)()"IT(, ),"IT(, ) "IT(, ):"IT(,!):((DFO$)*)"IT(, ),"IT(,!) "IT(,):"IT(,):"IT(,):"IT(,COMPTST) <d "IT(,)CR0:"IT(,)CR1:"IT(,)CR2p X:"IT(,X):X:"IT(,MOU) F:P  " PAGE:+\` !,:CHOICEd (CHOICE) : !D &CHOICEd:(<:*0:$ +CHOICEe > 0CHOICEf:2: B 5CHOICEg:t: " CCCCX <:T:+:T:+:::" CCCC  . X:Y: . X:Y: . X:Y: . X:Y: . X:Y: " X:Y A$(((DFO$)CC)w,):C((A$,Y,)):CCX:CC( ТCCl (A$,Y,)(0C):(DFO$)CC,(A$): " PAGE:+\` ,:CHOICEd H(CHOICE) : D CHOICEd:(<:*0:$ CHOICEe > CHOICEf:2: B CHOICEg:t: 6 HBWIN}BWINBWIN> MF:T:+:::6 RBWINpBWINBWIN W M6 \BSPRBSPRBSPR> aP:T:+:::6 fBSPRBSPRBSPR k a(1)h:Rj(#,COMPILER\OPTIONS.INF`#,COMPTST,CR0,CR1,CR2,MOU,BWIN,BSPR,A$H$#::, ::>>> LOADING OPTIONS.INF <<<v)X*:(DFO$)X,($(A$,X,)):X.:Bj:, :>>> OPTIONS.INF NOT FOUND <<<:oo:(t)h:RDy::, :>>> SAVING OPTIONS.INF <<<(~#,COMPILER\OPTIONS.INF#,COMPTST;,;CR0;,;CR1;,;CR2;,;MOU;,;BWIN;,;BSPR;,;A$:X*:A$A$((((DFO$)X),),):X:#,A$#::Π::, :>>> DISK ERROR <<<:onAD(DFO$):AD ,"IT(,):AD","IT(,):AD$,"IT(,):AD&,"IT(,$):AD(,"IT(, ):AD*,"IT(,!):COMPTST:"IT(,)COMPTST"IT(,)COMPTSTCR0"IT(,):CR1"IT(,):CR2"IT(,):MOU:"IT(,MOU)MOU.<T$(,)(CC) AA$(((DFO$)CC),):A$(A$,,) (A$,,) (A$,,):T$(,)A$:LFT$(,)((BWIN),) K-Bytes :DPT$(,)((BSPR),) Bytes :"'---> Set compiler parametersd'(A0):()(MOU$(MOU)):()(CR0$):()(CR1$):()(CR2$):()(DFO$):()PRGNB:()FLAGGEM:()XWIN1:()YWIN1:()(XWIN2XWIN1):()YWIN2YWIN1:()BWIN:()BSPR'( ):'s---> Compile't'y()( ):()( )( ):():()}:():():()COMPTST:()ZERO1:()ZERO2,'zSDISK()(SOU$),'{ODISK()(OBJ$)4'~( ):::.(<:(;---> displays picture&(<:::J(=IM,,XIM,YIM:/8(A:/(F:0(K(>:()(?h(ASDISKIMDISK,,XSOU,YSOU:IMMEM,,XSOU,YSOU:h(FODISK,IMDISK,,XOBJ,YOBJ:IMMEM,,XOBJ,YOBJ:j(KFLAGGEM,IMGEM,,XGEM,YGEM:IMSTS,,XGEM,YGEM:(---> Print in window>(IBK:IMX:,YMES: A$:(---> Erases window<(IBK:XW1,YW1XW2,YW2:d)0(:0(:,YERR::IMX:< press mousekey >&) 1::1::0(.),YERR::();:$)g---> Select COMPILER directory)hCOMPSETF)mE:D:)w:X)r(X,D)((AX):\COMPILER\COMP?.PRG,))|X:\:R: )w)| )|Xr)):A$(COMPILER\COMP?.PRG,):A$R:) ))h)):A$( COMP?.PRG,):A$t:)) ))))6):E:ER:))T), :"Please introduce the COMPILER DISC::: into drive 4),:Press mouse-key when ready):::))ml):A$(*,= Please display the COMPILER folder in the file selector,):))m )Ž)*/---> Set menu zones^*0:,XIM,YIM8XIMd,YIMZ\*5,XIMR,YIM8XIM,YIMZ\*:,XIM,YIMXIM,YIMb*?,XIM,YIMDBXIM,YIMDB b*D,XIM,YIMDBXIM,YIMDB b*I,XIM2,YIMDBXIM,YIMDB *N+[---> Draw menu pageh+\::X@:"ZT(X):X::,,,B+aT"NT(PAGE):+:TZ+fT"NT(PAGE):"ST(PAGE,T)++kT:NZ+pT"NT(PAGE):"BT(PAGE,T)"CT(PAGE,T)X1("XT(PAGE,T)):Y1("YT(PAGE,T)):X2("XT(PAGE,T)(T$(PAGE,T))):Y2("YT(PAGE,T)):NZ,X1,Y1X2,Y2:"ZT(NZ)T:NZ+uT:+z---> Print one menu liner+"XT(PAGE,T)"XT(PAGE,T)((T$(PAGE,T))j+"XT(PAGE,T),"YT(PAGE,T)::"IT(PAGE,T)"+T$(PAGE,T);:+---> Draw square+X1("XT(PAGE,T)):Y1("YT(PAGE,T)):X2("XT(PAGE,T)(T$(PAGE,T))):Y2("YT(PAGE,T))`+Š:X1,Y1X2,Y1X2,Y2X1,Y2X1,Y1+ʋ,$X1("XT(PAGE,T)):Y1("YT(PAbGE,T)):X2("XT(PAGE,T)(T$(PAGE,T))):Y2("YT(PAGE,T))`,):X1,Y1X2,Y1X2,Y2X1,Y2X1,Y1,.,---> Menu loop ,6,:K:Z():KZN,KZT"ZT(Z):,,T,T"ZT(Z):OLDIT"IT(PAGE,T):CPTL,:K:Z():ZZ"ZT(Z),CPT:CPTCPT:"IT(PAGE,T)"IT(PAGE,T):+::"IT(PAGE,T)OLDIT:+T,:KZT:"IT(PAGE,T)OLDIT:+,K,,(,B"BT(PAGE,T) ,B, ,Bd,,A$T$(PAGE,T):X(A$):(A$,X,) A$(A$,X):Xf,LBd:"XT(PAGE,T),"YT(PAGE,T)::':F,΢(R$)LR$R$(L(R$))@,T$(PAGE,T)R$:+:,v,آB"IT(PAGE,T)"IT(PAGE,T):+:::,,,ܢ"IT(PAGE,T),2,"IT(PAGE,T):+&,OLDTT:TB,TOLDTR,"IT(PAGE,T)"IT(PAGE,T):+*,T"BT(PAGE,T):2,"CT(PAGE,T),.,CHOICE"CT(PAGE,T):8`,w,p,,p, ,0,P8eU,3,3,s,s,7,7,7joty~ꃠG---> First page menuHNR,,"> COMPILING OPTIONS PAGE 1 <,,,F\,,, - Compiler tests :,,,,,,+,,,4$6, ,,-,,,4.:, ,,-,,,48>, ,,-,,,DB,,, - Function keys :,,,`,,, - Cursor :,,,ﺠ,,, MAIN MENU ,,,d>Ġ,,, NEXT PAGE ,,,e@Π(,,, LOAD OPTIONS ,,,f@ؠ<,,, SAVE OPTIONS ,,,g/0N:,,"> COMPILING OPTIONS PAGE 2 <,,,LD,,, - Loaded character sets :,,,>N(,,, LOWRES ,,,>X6,,, MIDRES ,,,>bD,,, HIRES ,,,Ll,,, - Loaded mouse pointers :,,,,,, MAIN MENU ,,,dB,,, PREVIOUS PAGE ,,,e@ (,,, LOAD OPTIONS ,,,f@<,,, SAVE OPTIONS ,,,gmmmmmmmmmmmmmmmmmmmmmmmm `a ~||a  `? @?x??x??x??8????6UUUUUUUUUUUUUUUUPPPP        PPPP        PPPP        PPPP        PPPP        PPPP        PPPP        PPPP        ၇̥2g2332gÇ ??` ?3&g9'8'90gÌ??8#?ɓ2dɟs2d 3d<0afwwwÇ 7B^O{_xF7C1{8ٳu׻8?ٻ{?{8nɌuW]mAuh H~x3Z͘0̀3͘<x/`;`llϘ 9Ƚ8,P *@!)@!ȼq@&L(NE (DyQT&D (_Tqm @"6s/x*D"hD"/"Dc[ wpwU33ss77w?c?ƛ??.(? ;u? 0?s]??_s!A2s!2s!>2sA!2!2!2˫ yeY9a9 yy܏Kˈوy;ۻh ``````````````ZNYA$X AFFFLAGSC1fC0c wpwU33ss77w??@ ` =} <`pxY|`x 2> ||~߁񀁀6bND`|y2s#< 0ؘ }|<~|xrjfb eyY`8 x ;ؘ= @ p`ܘ ??>>o`3'3? 31#-  M`o6?>p̈ @΁xˀ 98ٸ`fߙ}T2Pp"<JVtBht&```````````````````ZNYA$X AFFFLAGSC1fC0c( < wpwU33ss77wff? ?ffǏ0a!!q!5? <%#3>p<  /(p$L8p$0 I 5?  /(` I 5?  /(`` I 5?  /( I 5?y  /(`p@_ I Aa5?  /( I AA5?? ?   /(fv~n@p0 I =-!yxo׷`wto999y"."&"9yY9yp AAAy=??88\<ayF_NF_NȈȈ PBp<66@0pp0|AaaAD؞^\\--F߇\٘߃Ҋ>Àܬ޼ټꫀfff--f "&???????? || \N}߼߼߼??ʹ<<ϼϼ&&&"؀ЀЀ߀Ѐǀǀƀ`p!`!``&`?o`` ` ` F` ` ߇` \` `@` `@` @` ` ` ` `L`````( P<_6Q6]VsVs_K_KSSϖPPoo               LLx8H?2H8rH2H~rKrKr3?2c1 ys9s {s syJVtBht&```````````````````Z2NY2A$X AFFFLAGSC1fC0c(@r wppwU33ss77ww0 !a? 0 1a! 0?0 1 A}AyA}<"<(&q"qo(A!aa!IٹyyI`ذ`@`lذ`@π8߀π8        ``0`````````````````````````0`~z`~f~boooo      1c1c1c19s 9s9 c1c1cǾss9s9s9 8tkZֵkZt{3.PZhNYhA$PX AFFFLAGSC1fC0`.  `2`Z$cxHA pNNu>3Lp2I@SA3JSG3H#<#@SB3DSC3F#8 Kx"Htv0r<eJQ2tvQQ`JQ2tvQQ CgJ2RD DfNu"y<$y@29D>9H<9J,y83NgH`49F I&J06xLK@:8(K8IQPQ6xLK@:8(K8IQPQ\QCLQLTTyNfNuH`49F? I&J06xLK@:8(K8IQPQQ6xLK@JCg 8(KBEIQPQ8(KBIQP\QCL4Q|LTTyNf^NuISA0SB&I(J0vx:MVQ8QIQCEQNuISASB0v&I(J0xz>< g8QGIXQGQCSCjEvQNuX>O SGH&Jp2468ABCDF@46666Q$KNuSS&J0QEQNu bZH:HtMMMMMMMMMMMMMMMMMMMZRNYRA$B:X AFFFLAGSC1fC0  } .. WORKZONE   ACBS   CONTROL XXW K  206BAS BIN gt M -FLOAT102BIN qt s #205 BIN tt x " SPRIT101BIN vt z ?MOUSE SPR zt 8X8 CR0 |t 8X8 CR1 t 8X16 CR2 t MUSIC101BIN t PIC PI1 t "}PIC PI3 t B} DhV YeyE Mgw+5Ckw)/u >1u=.1+yN' N)N! 1c u1>!a}' a' EqXhq uluiuuukG|qzvdSpBuff @mouse.spr@ P  H~## f^# ,H#b#^3\H#f#j @d,SFBQ/aP _pL~Nup`6:A(BABHBBBHBNuxAvCNBGRESEgJPfBQQNu<h dBi` hl3F<( hAd3h`hlDFh3F<h dBi` hl3F<( hCd3h`hlDFh3F<( i@3F"ii3FD<( iB3Ffii3F2RG`>ByVA:ANu?a2BJPg>8(:BdBDB<(>CdBFCBBAPAgJPfRB Bf3VNuhbheܼhb־he`arBBJPg0(@2(HA2(A3VNuJy f>0:2:4:6:zaJJGg"E0HCAJQfJGfNuSGH>:$h&J(z0(@0(i@0:fi"@0)Di"U@:@T@2)ifSA6:(<<E2:P@A3 JEg2)̲hfS@2(@A3 3 Jiga L`:0:S@k>g0z2z2:JEg^> fxp` 8*0+JGk80T\Qg8 8T0\QQNu0zR2zP4:NJEg|> fxpr`8*0+2+JGk802T\T\Qg 8 802T\T\QQNuJEg2C> f xprtv`8*Q0246JGk280246T\T\T\T\Qg8 80246T\T\T\T\QQNu$yNJy f6"z<:v>:SG2:4:a`FCSF04QQNuJy f:2:\4:\$z&a>:.4:PBCSB2:DSA&z06QQNuzorz l4:zl`zo89 zoNzl6:zl>zo::3 3 3 3 <>B3 C3 By Nu3 NuH@<`(H@JgByVBy ,` HBy ,BBD3 A@# (J@jLJPg`BPJy ga4( 6( 8:hhaaJy ,f(1Bhh6agRCJ@gZ @xlREmL BlD3 3 3 3 "3 &3 $1@ 1A1B 1C1D1EJPf0`hgJy g H aL04:̴h m4( 0( h2:z@l8`86:h m6( 0( h2:z풲@l:`:aJHzn(<(6GcaaHaa`R4( 6( 8:hhaaaaad4:6:8:zzaaaa@p`B@3VLNuBy ,B@`aJPf 3VNu4HA62ABByV3 ,B@aJ@fhJy fFH y (C<0:v2:t4:r6:pBDBGa y (Ca$z"aaLB@By , zTBP3VNup`ByV3 ,B@ABaj y (BPJ@fJy f"h$I0(H&J2(zf4(zf?(z6(fSB6Q`BxC::SEUASB<>MTB0,Q>MB 06,QQQ8hSL>(SG:z:6j0 2QQ` y g6< zBA&J$KBDBB0 g RDff Q2QQ`Cg&I0 6QQ>B@Nu0 8LD&I(J8D DNuJy gJy fJyXj?<%NNTNuKEI.BB|64<"MBAxJQgilig m &LBE4)6RERAQf SE4SFQ`JFkr4QNu0HANu3 BNu3 fAp0QpNuByVaa aVBNuABCDJAk`Ac.azFd z>e3 2az,e z(d3 Cc$zd ze3 ze zd3 BNu3 3 3 3 `ڱf zNu# NuByVBy?<NNT3 g* @g3 3( `"3 3( `3 3 3( 3 09 @(3 0<X y f@3 a6By a@aaBy a Ap2<BQQBAa\a@BCa 2<a p3 yPBP3pNu8<0a8žDOdRSESF0:S@k.g04QQ` $QQ` $$QQ`~0S@@LSESF0:S@k.g05#QǗQ`J %#QǗQ`6 %#%#QǗQ` f0AzFef$Ha&JL$Ia4:J(CSFxGgd:ESMgSM0:g @gf K"Jg0H@B@::g& Gg>4QQ` >$QQ`>$$QQ3VNu$DU5(C44K:IABIa랖E.KSDSE0:"g* @g<2QQ` <"QQ`<""QQ Nu DU5(fLA:<Qi680:HKMJAjrUdJBjtVdJEkgUe:JFkgVe<AgkޜBgkDCADDB0HVH:@0HKCDLXAIBa,K0\QQ`^&I(J>028AFDT\T\QQ`6&I(J>02468ABCFDT\T\T\T\QQpNupNuBy f3 # aBNupNu/?<&NN\Nu <+`#-NuByVByBylBy 3X 9.# ޱfAb#PBP yV# 730:HA20SA3b20SA3d y# ,bNuJg yV Ӹ zԔ ӴNu???/  f"zv@d)Ag3@@((f`H0(HA2)(HBJ@lB@` zچo0:ڀJAlBA` zto2:n23A"_420NuH?~HM,VNL~NsByVJAf 3XyXk@f<3Z3h` ByVJAfByXyXd 0<a3VBNuByV3h3j3Z3V3ZBNu z:0z٠2(zٚNu z&0(Nu 9Nga `ByVAC~|JQgkJPf|02)g1A4)g hg|1B6)gV$zܲJy gP8:ܮL 2@gB&@Lr@ b41CKE0!KBD1D1D1D1D` JhfBP|BQACRG GfZ0:PgJFga:۲$h&J0(@0:ۺh 2:۶h AH0:ۤ:@UM2AK3 :(|EJEg2( hzpfS@2:^h g2(@I3 3 6:DSCaBL`zC(xBABBBCJQg f0a~CRD f3V3ZNuByVNu zJCf,BABB6<8< y gJy fKLSCSDByV3^3`AB3b3dK0L1D3VNuByV z\zIJzd0zָzָd1B3VNu0< zޜBBQNu zގJAg AdSAICdEd 0000BNu <Nu AdaRJPg4(6("zH2<JQf PQBBNuQeigdieigdDAABNug& g 0m 9b><Nu ae >EB`:By NuDBJy f A^B`AFTB# 3 3 3 NuByA0<;BXQAB0<YBXQA0<BXQNuByAgMSA4 BVI*z(MBn-MBn 6<a (fOMˌ>,K̬ INupAgaaKH@aNuJUgr2- 0HH2-AANuJBfBVNu BfVNuVNuBCAf `rvan,LBya Q`vAf `rva@,MByaQ`Ag?a2a2BC` aarvaByJBf V`<Q`jAgxaByBft=BCfv=C=D<`03NuJyf(zv`fNu3 3 Bf ?aa43 Nu(zF::g~y fr3Ӵ By A^"yNC}x g> 0@w2Aw@g,vH@HAtJB@BA陰AgbR@`S@@Q0 UUQ3 >:g^Byl<SGAE@0f6Q3l`6(f2(0fBA0BXI5IRA AeBA1A`0:g(y f3 z0:20UHQ00:.g0:*k ByVa0:ȸg0:ȲgByACEȞ~JPg ^,VG63G83BFGB[BBRFFgB:ôEg64`"HG&GK:GK:GK:K:G:<4|(K <`(KpB>9޹#,GREEgB>Ĵg4G> I:G*H>3ANu0<NuH0M .EFABa$I A=A2a٢&J24ABa$H A=A2aـ:9 09 H=@ :ESMM8EL<=A=A>=I=I 46.8. J"K2: H0g0 `0 2QLFe Qx`GSDjxSBg Qv` 0.n d0.n SnfBNuByV͝Jg PbE RI:r09 HI>42(A<9 N:9 8LSE$H&I 2H@6C H402g`6Qͽeg`3VNu5    0fL&p@b&  $ (h0 "  @    8  Ɯ0    : ApJ0gS0fQ3FGI4:gyDdydDzgB<:tf Q3H`,f2PAt2ItRAta`M|$zzJVgVg MQ`vK6.:20kJn g@ gJ@`@BDgz0 D`eBDLA0@0@4J   g@RBA0HAb<=CTC=C0Jng(Jn f"Az00@p@gHfp;@ mB@aJng4K mB4`B@a`Mf Jn g n g =n`BV`gE?420H JXC=CJfKH;|a8`0 f=|K ;|a` f=|a` fBA20=A =B`zgr020TC=CE Edn2VAJfBn `H f=| `2 f `$ f@?@ g@ gaf` f2KHBU` f2BnBm ` f2BnBU` f@A``KE|g-eKQ3: zN-d0f0 @gZ24YmY9HghHtR@A`THBA4mjBA` 2c2g0P@A`$BA,mjBA` AcrAA-fP m-0ka`<gB@a`.B`(+HB@p20;AX@B-Nuan cifb#JX3BByDBAM0g =@=@=@=| <BnBnMRA Af#>3:NuBy:ByN3F3HBCp5BQC\pSBQp C.BQI$|8Gt Bf a` t QNu,?@NuAg&SA0:3FAFAPAB(NuAgSA0:3FAB0NuByTb0.0 BAD FLOAT TRAP BHz?<&NN\A8NuA #NuHk C"qNJg@CL"qNCNsJgfpNspNspNs&<B(<4VxNs/<B/aXP//<HajP&(<4VxNs/<H/a2P//<BaDP&(<4VxNsv(<4VxNs//aP"<4VxNs//a4P"<4VxNs//aP"<4VxNsJg//aP"<4VxNsNsC/ rg < gQBB)aX"<4VxNs4Vxg/Cdf  _SNsH| ##JEf2JDk.|ex?//a>O JDf (.fB L>Ns<Ae?<`<1e?< `?<Hz/aO "@ -fR I 0g,g<.fJEfpdH<eNs4UBe0|p H?Hz/:aO A"z -f.E2jr`|erg <.gSAfBJDjAg <0g$H`"JE+0< e )B `0B zp L>NsJ@g BBvAb`BC4\?Hzq/:LahO Aa"z8 -fEg<.g<0g` Jp02jr`|er.EJAgg <0g$ISAfJDj"JJCfBE-0`>/a .XNs/a X"<4VxNs//a PgpNspNs//a Pf`//a Pm`//a Po`//a |Pn`//a nPl`/a#aF./9a jP"<4VxNs "<4VxNs/a*X"<4VxNs/a X"<4VxNsNVH..a LN^Nu//a P"<4VxNsNVH..,. a LN^Nu/a X"<4VxNsNVH..a LN^Nu/a X"<4VxNsNVH..a LN^Nu/a X"<4VxNsNVH..Np LN^Nu/a X"<4VxNsNVH..a LN^Nu/a.]B/a ,P"<4VxNs/a X"<4VxNsNV/..N .N^Nua "<4VxNs.//a P@//<Aa Pf//a P/aXNupNua//<Aa P"<4VxNs/a X"<4VxNsNV/..a .N^Nu/a# @.a./9a P/<B/a >P"<4VxNs/a X"<4VxNsNV/..aZ .N^NuNVH-n Jnnp` nop`0.R@8BGB/.N (Pl n -R /.NX-@B/.N (Po.`/<D/.N~P-@SG/<A/.N (Pm`/<D/.N FP-@RG/<D/.N (PlG|0H/N fX-@`/<D/.N FP-@RFDm/<B/.N FP//.N P-@/<D/.N (Pm -|ARGJGl4 n 0R n .R JDlD|` n 0R SFGnBF`j/.N X:0@0"n R Gf n .R 0H/N fX-@//.NP-@/<D/.N~P-@RFDm n BR .JLN^NuNVH KIBnBn`R n  g n  g n -gB@`p=@ n -g n +fR`$ n .fRn` nJngRnR nJg n eg n EfB n eg n EfDR n -gB@`p=@ n -g n +fR` nR nJfB.a-@.N=@Jng 0.D@n`0.ܐn=@/.?.a:T/N~P-@.N -@Jng .JL0N^NuNVJnl,-|A`/<D/.N FP-@RnJnm`*-|A`/<D/.N~P-@SnJnn .N^NuNV-|`D/<D/.N~P-@/. nH@H/N fX/N P-@R n 0m n 9o .N^NuNVHB/.N (PfB`B/.N (Pl/.NX-@z`BEBG`RG/<B/.N FP-@/<A/.N (Pl`SG/<B/.N~P-@/<@/.N (Pm/<Y/.N~P-@/.N X-@ .-@G@0@HJEg .JLN^NuNVH..,. N LN^NuNVH..,. NLN^NuNVH..,. N LN^NuNVHJl| .D-@`BFJfB`^~` .-@R .f` .-@S. g .-@@ JFg .JLN^NuNVH .<JgJFlB`V .:|oJEg <` <`0..F`RFJFm`SFJFnJEg D. JLN^NuNVH..,. N LN^NuNVH..N LN^NuNVH..,. N LN^NuJj Jjf NufNuJNuNuJg NugR kjklf`>k^g>k^g2k8<d,&B<ރeNuRid~S<Nu.NuJNu<oD&B<ރeNukgvgPk<<d&B꫞kBSbHGއ[kgNu~Nu<oD&.<`DgjD`JfJ<NuHFHG`k~Nug(gvEDiBHGHFFkTiHGDL&:ƞHGHF6BŞd&BރSE&HCBGHEk:څS>:.gNugRghEDvi^E]HE:BB8HD&HC؃HF&؃BDHDHGHFHEބj gNuSiex@ބއdRgNu~NujJ<NuNVH*nBGBF`RHH @ +fR` -fRRF` H@G 0m 9oJFg0D@>0JL N^NuNVHJl| .D-@`BFJfB`^~` .-@R .f` .-@S. g .-@@ JFg .JLN^NuNVH .<JgJFlB`V .:|oJEg <` <`0..F`RFJFm`SFJFnJEg D. JLN^NuNVH..,. NR LN^NuNVH..,. N$LN^NuNVH..,. NH LN^NuNVH..,. N LN^NuNVH..,. N@ LN^NuJj Jjf NufNuJNugR kjklf`>k^g>k^g2k8<d,&B<ރeNuRid~S<Nu.NuJNu<oD&B<ރeNukgvgPk<<d&B꫞kBSbHGއ[kgNu~Nu<oD&.<`DgjD`JfJ<NuHFHG`k~Nug(gvEDiBHGHFFkTiHGDL&:ƞHGHF6BŞd&BރSE&HCBGHEk:څS>:.gNugRghEDvi^E]HE:BB8HD&HC؃HF&؃BDHDHGHFHEބj gNuSiex@ބއdRgNu~NujJ<Nu/./.NP-@B/./.NP/NPl/.N`X.B/.NPlD/NX-@ .JLN^NuNVH..,. NTLN^NuNVHJl| .D-@`BFJfB`^~` .-@R .f` .-@S. g .-@@ JFg .JLN^NuNVH .<JgJFlB`V .:|oJEg <` <`0..F`RFJFm`SFJFnJEg D. JLN^NuNVH..,. N LN^NuH~,<AB'ebc FGNCD<c|`8|*< Art`ڄܐ(&䣞j.XRQN .Jg .<ANJgL~Nu/Npi /,.<AN,NgSh~L@Nu/Npi*/,.<AN,NgSh~,.NL@Nu/Jg0Ri0Npi2/,<AN/./N,NX,Nu.<`.<A`Jj Jjf NufNuJNuJj a<NuNJHNL8Np?<`$?<`?<`<bTJNuBgJk<8cH~$<cP<c <L~TNu,<>.NXDxB΄,<CN,.N$(< .BJkFD<c~䯾o$`D<c~DDl`z,k^g>k^g2k8<d,&B<ރeNuRid~S<Nu.NuJNu<oD&B<ރeNukgvgPk<<d&B꫞kBSbHGއ[kgNu~Nu<oD&.<`DgjD`JfJ<NuHFHG`k~Nug(gvEDiBHGHFFkTiHGDL&:ƞHGHF6BŞd&BރSE&HCBGHEk:څS>:.gNu<Jj~`~<L~Nu.<AOJNuH~?g$,<;ANi`D<o< l",k^g>k^g2k8<d,&B<ރeNuRid~S<Nu.NuJNu<oD&B<ރeNukgvgPk<<d&B꫞kBSbHGއ[kgNu~Nu<oD&.<`DgjD` p|T0@6D,6 :"-P :   < *80 ( J X$ fBJ|, ((T *6 *8c(u  DPPU?>|?? `? `???? 0?>|??|p?~><~?????x? ????<0?<|x?P???*?G@U?T???<08p`x|x<8p>@?PP? (PP*<(@ *>?>**PP8??< 0`xx?>G?PP|T@?(<|@@@0>**>PP0B( (0\8 ɀ`( Du1 D@xHZ'&:@ʐoP, q "T"!  Y@ bHN$H"$ D =."($E1@R%("DI$D^@$BDE@4B -qUPe0$ P@H@`rR9-@Pu~8@A P4yr <1 (@p%yx88 y@Pp8p8 H'.;pa~0 08q$}~möoh Y Y ^ ^ ^ ^ ^ ^ ^ ^ ^ ^ ^ ^ ^ ^ ^ ^ ^ ^ ^Z kNY tA$ SX AFFFLAGSC1wC08X8 CR1 YLOMOUSE SPR \MIMOUSE SPR ]PICHI MBK ^"MOUSE SPR g HHHHHHaaaa DDWyy Wyy 11 W DDw[:K:K;=   DDD?? PPP8X0pP ??@@@8(88|D||999999DDD|DDD|&&>.Q9Q9oUl|ÃD|^D^|ajLDL|rU!m!}=*99}DD|||||0000TzzV ddTxp ? ??1 1?$$$;NNNqNNNq$$$;@@  NN//0*''8`5`[_` NNqDDD{ ???@@@??@@@ AAEEဪ<<ÀՀ==BBDDx ??@@@6mmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmm The Missing Link Map Editor. v1.0. About - This utility was written to make designing maps for use with the Missing Link WORLD and LANDSCAPE commands as easy as possible. It provides the user with extremely powerful features while still remaining easy to use. Instructions - When you first run the program you will be in the map screen, so press SPACE to get to the main menu. The main menu consists of a series of icons along the top of the screen with the rest of the screen being taken up by the blocks you loaded in. The icons are, from left to right: LOAD BLOCKS Select this if you want to load a different set of blocks. LOAD A MAP Click on this to load in some WORLD or LANDSCAPE data you have already saved. SAVE A WORLD This will save out the map in the format needed by the WORLD command. SAVE A LANDSCAPE This saves out the map in LANDSCAPE format. RESIZE MAP You can use this to change the dimensions of the map. After selection you are asked for the new X and Y sizes of the map, so enter the sizes you want and the map will be set to these dimensions. Please note that you cannot load LANDSCAPE data into Eddie! Any attempts to do so will make things go badly wrong. If you are using LANDSCAPE in your game then you will have to make up a special set of WORLD blocks to do the map-editing. This will all be fixed in the registration version (honestly...) To set the blocks which you will actually draw with, use the left and right mousebuttons to click on the desired block. Whichever block you click on will be allocated to the mousebutton you used to select it when you draw on the actual map. You also set up the "brick" data here. By moving the mouse over a block then pressing a number from 1 to 9 that block will be allocated to that number for the brick and column fills in the map screen. To go to the map screen press the SPACE bar. You can exit the program by pressing UNDO. You can also get online help by pressing the "*" key on the numeric keyppad. The map screen is taken up by the current map with the current X and Y position on the bottom-left of the screen. You can move the mouse around to move about the map and pressing the left or right mousebutton will place the block allocated to that button. Pressing SPACE will take you back to the main menu. The extra features of the map-editor are all accessed via the keyboard. Here is a list of the keys and their function: F1/F2 : Use these keys to set the top-left and bottom-right of an "area". "Areas" are the term used in the program for a rectanguler area used for the cut and paste, fill and other features. Once set the blocks in the "area" will be shown with a coloured pattern overlayed on them. F3 : This will clear the area-markers set up with F1/F2. F4 : Use this to paste a copy of an area somewhere on the map. The copy will be placed at the current mouse position. F5 : This will fill the map from the top-left of the area to the current mouseposition with copies of the area. F9 : Use this to save an area to disk. F10 : This will load in a previously saved area. Insert/ : These keys will fill the area with the block allocated Clr Home to the left/right mousebuttons. Backspace : This will fill an area with block 0. Delete : This is the same as Backspace, but the area markers will be cleared as if you had pressed Backspace then F3. Help : Pressing Help will highlight the current area again. This can be very useful if you have drawn over the top of your area and wish to see where it is again. 1-9 : Pressing 1-9 will fill the current area with columns of (keuboard) the blocks you allocated brick-numbers in the main menu. The number you press will define the width of the columns. For instance, pressing 5 will mean you get columns of block 1,2,3,4,5,1,2,3,4,5,1,2... etc. 1-9 : These will fill the area with a brick-wall of the (keypad) blocks you allocated in the main menu. This is an extremely useful function for doing walls which are made up of multiple-block bricks. Last word --------- Bye! ?immmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmm`R?<NN @0<}BQ>NNJA6g|9HP?< NAPOAB a&MM +ЫЫA .GIJgrѓB(g<fG``GPN$^,,,,ܓ,,Cp$L(QGX /KN(K&YdB`BN/K ,HNRK&`:UgdCDE`$|a^g`|aVg E`&`| aDECI&4fLf&e|`@|a$J*g2P`f``BEg EQJENu&`|a84@HJ*fXF`.a2I|aʺ<m|ag |aEA`*`2P:`aDgt@IP$$Q` f&ed&fg^|avg &CrtfTATAQP`Q|aJgCpQP`QBC&&H&&M``NZ,Nu ``````Y %ATOMIK v3.5 by ALTAIR VMAX/MCS8sP}xфhjaNG jStoic'milerV81.8uby8FprancoisX^et^Jd ߔ18ad D] )XTNIcc"́)2BT:dіPI q4VxHMYKŐU'^8]A*\Jgm0!Y=n &Jf`( Hzyw@ f Ч#A\=K$*Hkq9x\2lnFXBz@.v#z(rXg}62idoIQT{;@>!oINo8j("* P.5C< ,!MpI]koN/Z%|#Ehӈu.uM\nd+>K.+S2 |6+kp:LB !n*!SB((O.68p Y@pe$Hdہ#b ۵AFCgظQ,R*-G& (.?zMgP2QfW~q$Bfݒ&Rd~vragGhvkMד&c&&JG`+<{H3P] tX2wEG+JhwY&a]l2(8B\d%AH}%L 6ˀ @B%ހ0L8; !@Bwl BALI!#tC !/| DC,+I;9Y&[D@+(ݰadeL+Q$$ &d9/, ۖ,_1 ˜o (ĴFF;nw#i]ئnaEtsDb$|鄱GX5 4bB0DظAR~6vGƲS;ctW+yAB!M8躉,L;ߠ&,Et8\DҌ>R@ |J@f7 @wq  6 ~P&q4|HJ)GЩ(I pJjg`g%-gՒ9mLX#=P8G~CE p0#DA$!2upueqЮwk1m>r s!-h#b/i($GD!,N xuQ)IC^?`/,B0yHzD?<1B\=JfC.m^gAK,Z/Ig/:ucss^Mn@OB;v!P#?('"C'H D$BkP#(B> $7@b9B eh* ~WsERAf%/XnkBY(fsave.basrBuna( =dir+\reviouszoffz^+NtFuKe@I"<~ԝ@UxdWg.D2Νu'bTH/_=t%ۜܔKQAz \ʐY>Sw|dq0t4MUFx+}&aTb`{pVg% pDQnJB\Rȣbhrtr!)] LX=Դ ˝EM4.Tw= _%;&&lu dL\-l>, XC)i:a)i'RS2f jt ?-M< ;ҴH/$Dd45WHOK4 CDETujD;mNU&S(#H20pN1"cž,i$pDL4ZdO]P]Kܱ"U+"b=arԶL%S#S  wP¢qFT;0Iwٳ"eh{{$-wI_[vl=(>(@"?DM$kXƉ ʸjKCJ9R@WgFLfR@3-g8G@u2S@0 uX"IBk- HBGR=ƎKcwK, QsRIr% sD(lD@6/b,J*ί_Z默u(<հ@R&}P+EhüǙWI8%LEYW$e;@ZZ` w$ t)\uJu8,GZb7JHnH.]rI)0» nxp, DɜNxrR&ټ}4]$91ȕ `O*UQ3e((qN-AfV ! +N-p.M{בJ7n9MT,:gN2Yb&J,@tKKT9#= 6-H)5Y@9ǚLj6fW7|hFvn6&ILT)"1Г,)+ȉi#Ft;. W(^S%I'{F'3ݪI9yN ,]G8e_R]fҌ]x1Mr}L8rq fF{5L?q0B\Zc&K2/@j@@51, 58 X xFYWS eaL$}.L.(E9V"n<Θaf.RxwO2`kHHF#nfS:X,*r'UȂ\^f]QI4W}8)/ż)UǞ@0etw+q󶊒QOEF(|*%m 'cU\QxI'Z((ڵYǘ(RU6LioU n e5'kX@?q;P6PPR;@q Zi+6#g+]փz_P.dbo *Ȭ(QB>19%!ZMTG:R,K}>TNq@(m)6xt@hJN6@2UhR_Y@8;ީ#l@$" NBp 0` Ϝ Ӏ=`@,2> 8Fpc9҄PSh]+jYDҚuB6ތŀdds-N՘}#/$t4$!ƲC,!lBY xYYU Ez$E]jLJ lD'O-@zHדΉ"k[!,<5– a\lıP AL(CF B cP /#% َy# eeH*)R()eR|DIDш*;` v QJeUDIT6mJ8cJj&P +UXQ<@q kS& L30./F'X:9􁊚)4a(|b4jx7 r1(4I$Kka DjPFt`ьa:kM@̰ƬQ@,MVHF-WT!i AH!&&sdD!ñ>N[%?Ed1P8r!@ʒ2գ{t)Z1IŽ\YQgGpbȽNB@9*O*O 5Drؚp dBLȍ2- St23PT]Q,2!`Fm~%h :X F8  lxܑՈ.;ܢp|@x9&a2zI*$I2< ə#$Ktv0*i--4eBd1,A 9#Ni$̱jݍ(jMt0E3U(q'B:k!#*dyDTBDU 0wZJtQVL^!phzAH-VdJC+LryD{GedG.,T!XFNSFSG-KR YU-'ZrjX0WAqpPd1)`FD2k6,(QHChHٷ^+i ^*ЍR+G8=%J{i ljFGc ^V,mp.#,zx8㑲eLQ,[BpNFx!DCLL4YOan2 CmBo؏,lweClu\p,d!x>v(T_&_n%|.iez!vx8@,d@”9!@ FplxSA鼂.?/ ; %Poq.TBa_2cFQӨW ZHx^֗z$Ĵdp, h@";?&NM\6<5_dЁjyyڲSA˷Q:,rPؖ"@|Oji+4Zl"}],(?$, "FE[. c#ah *\ʈRB .T PZgPeo e! $@[Ɣ`FD3TI~H 8kzpW;Pv#k^,2j4Rt)49b RLk,n8 EBw4:QMCjGrvq%|RIv*E+?tTycnm*'2h(pS>D ҀE M ~mbGRY҃gAj K7 LlQjIY*{sCe sNGpʃ$*k1,^, eY*_DR(iApzkFƅźd62k6܅cM|)ćS+.Q3tɑr$^2xʄÉ9gd =f-nyWD$/;n8V.p,W - %^n%W7uYՓkm6#n u Q]NɃ@w-Us>@T5 G.'TO! e.]]+NA5YFb SAހAX՗~RkLL 4* zCjg-NE#dܩ:Hk/;^4T mB ʺv!0h29`{n!A/eUmP^A/ V<T hlHp#* Ij,x(+Lso7qݯxCH.-TYTp7ku֊N9' -Gyd0 PHF@{Y1 ŇKUw WV+ErY#[Ep9ssPnmykey.Rhh?у!Lm]4fNSmae QPzb xЧ%6 j^4ؙG*|xar *4ԓ^8XH2pv pLۣk3uzSˆz dRA6|tǮ1SjGm:z4. j>.87w) SyT2'_҉q>mh?,==Mn?<: j6Vd\/+,>FvIPIPE".e@SF AoU#y_bCu'Gz{p X??oPleaseredoCrstart#Recommencerau'dbutS.V.P. D*2NSc#F!Dxz"aˡS6覽r%2^AątlWԮb'Ó#jLJ;Hp!zDMeP^EB8uePZ-+s- üŒ I…9c*S!,vHzUFu@8|DtR7s6 /D}rŋ@vM .NF0@ڍD9xd~AH.ݞt+lG@ ĀrȔv\X 5,4ob ;9p|uS:2lAyٳ.idA5@lh7N (Edr'n CF)? P#@`@#a!d! !F5EG~GdNSqG<.ɳS8d FnR!@ 2S@H$sHgH5k?讶e,Xx:k@otj@i{( ?(PTHLX&tSAQ7P*>CBeP2ho7X ]]mUC AP݄N(*fxq222E6jnPxEuD:ʃ{+6|. ޺B׽ƾ `0VpdI<}b!&v)&&zeywj(-!GxG e4 e♊K T GER&pt; .)F(@\\p 9qװ rWb!H4+gެH ^ nP6 ?+TSCURB̆cr"r p,Qj 22[(K}#VCd*Y0HN 3 }@ ! @H 7`( R#m+t~~/~<֖Gdغ BHU҈ -Q ީ&ċpXۅDHj oDI/:3< sW_@Рu{lșTß?BR;vrB(H! `!"˛tt[cdLǂ()r:2Op`hA4á' tH(PxXV vJ>ضЁpMpS@jTA ^C#xRAH>1@9RTAc.;GST(6)Ac` W  \Xx b;C`I~+d`ݘ0\-@n~!-T,,[NXUbHUYbAd>d:M23C3s|ޥ T]K( CD6q6]QA2M>|l)M;7 67cNDBHd<d  Tԁkd/Q+"Q3Aqu|t~`3$d@\E6(I%d'Zւ)L h6QB j752ع5m1 9ps- ?hNT:Ep'$R pk`ޖprp(SE~^X<22!{{{66"4@$"0J&f`g B {557446{3H35!1132A{((<1,2) F&262nВ/pMdjkGIbQUaBo! " A~9#BB!"ADl`$"T1A0$( R+BBbHRU C#aT\ "P> GB̑\XC " "Dά7Z0TI!ACFP# B AYXeJ" *8dB(q" @cMZdq:`A 9L Ă-B?]"WET-4Z~Nͥ3GrDeI\Tٴ2g Tu6r&dHG$*vz6N( ex>pCd<d6bT'b*e&$ea~73ud !E2[X D8hK5h`\Y&4f1Pr4`A"HJ >aLϏ"h H6" CL V}m~(,"|"vW;;E{^28ʢ `b%1N05 >ZJEPU۬JA"~&A|}hcMz2~,00 PX"H;M-:z!'[DJf0w8 ά/Z&@Ct$3>=gJ$T&mq9\M8v#FX+KDK,B"sXr`^W"!K+ /"++~^"tMق9Hl"VËr#IЩy{҅$ Jw` 4vw9Ւ`Ԁk`.B5NaLZNV?t? &B]: ܇@ci&!$"&U=nrY3q X$/Yx2 &6ߦ_}Ii xQ AƁݯ~&7?_)J _ /h. 켽t_V@->ApϙwP*,j@Bo pXtcOdPtZ&A-J{@>? ܻ8>CS:-Lk@tzxA.`\tRA(`z5QC>iJ&-BmE^Iw D?$h2jMR$wkZ{T -*u;-~ i &k3pR~k`,"XEv<24Q d|Rme bĬOQ2|0F0i*CݫI$f 2C/2;O\S].YjS}BnԪE~ |-ÛjMՔO ~ Yv iTը $h`2!9ș-p ~.VR+jWm02nPrP yD/f^Vf>Q8?yu2¶@x`l`K?gvקx3I[\Vz{ xshd3p ڥ *s.ZG)N YS]J ed֔5ӶxR*V"qRFYAm{=۰6;M柿;ΘҦ14Z,6ZUQuJ/0Ȱ(pqH+@RAȜr~DiJJ$ ^;^f֌Is%~% 6@~#~$tP@4C[ WࠐL474}ٴd$}2CQUf:or:}ʺXxda:gG)|z+"JYk6\CFՓ؛{ZS CM,NT:</r;eX›~!Jj~rJt_~'rCG{tHN2*ajR-4o/SCmvE@ewuE)/e/flqP(d Q2j42VuyzfסJ"*Ɗ jtHyaa8 ) 7ex2(2Y)ΌJ+ S;||C7mzDZe9.w.b˗Kv\:tP .NE:" 9OScELEC|FIC ~LUP!C~UDOWPS?PVI0OUSRRk>DIR.GQUITTER|RE(TURNO@K_C<%<@p #==LAW /iܠA{ jPۿp8-o6t5hA6h~p p&`vwj￴g/6r(2 >-rGI(F\bZ=[GE Uކ G| E_G0lBPob EDI DE҅z `YdI܇P OCl*>o.\=,✀@|X.螁cPO* Al |ClB gH@ n22q7G qd7S"q n2t& n2Ҥ&# n2&c n2:MFqQ)@dd( 7!MFA .-UQU V z]AW-bA܌psڐe<9LAL8]gZ 78pS062NLl(n `n ' *R2g2 YSǑC$z)Z`I`ءb8"^(]Iض Z*[rPMoҘ^%qXwN T 訐{IȎq:4P}mKt *А!^!+@>T".׶A&2 Mt@A+DuIAO-*XLm`k\~&jZҠ; 6zA-vP&kJ6Ŷo}-Vp_av Jbi-~XAR+ Hf p Z#Fj0( ^R"]ҹK !^I9 3;5  4袐A VcP C*':4j~ft~((УrCuNyH៤")pZCJ1NڮJ+P@u 6!ۺx*zPŀIT4S"OVBP?S j7^v&* %ՄΧ$PK,(U0ު 4Մ8jB".C@D|5|<W'q TTGX(M\(\8B``7q hlPlptBttGq ||G(8Bq`zK(8B#%3hlCj1\$A?A jPA9A}r>NA$ J(Ԡ,5An 4j825L"H>>F;ҶN~" 2c# xzOO4G8D<< `Uz \ŕ~k@fHBA0gp  pPoSA vwDFNUST8=s:(H+2/*I_]R%*J{HamW+bT*3.I싸L$_TJ)TOHLrHUJc~>%TGIK@.2: W.~OjKKIp"HN` CdzLf0HаQ!M8/ 6:aq +o5AKJH%qA!8R{BS&t`Ӣt`k o1 WރM8 8>l&Jm4Dm laJA d4#6TC_HAIJACJn!OGpCHC躈>oq 4u^l(2 h&^|g/ PC>{4Bg/RBP/mM//j\84.'>[q&_-b}UgNdA4"plx*G.G$D&D(D*DD+ WHHl*ȪFy58Hx>1cG/cH E&8>z6m6@Nd:YJgztM ochfL:&ϭ4HL5 G:柚Ge@H5E6,M nS>!BJG jDG4J4\<< su~Go<9FFL4bQVđ (Q(`DA\9?ut hrZA4@.9("t ~nrz;*+>)A m%PЅ==A=0ཬp<0*-mTz0Z4$M'*OvD,o%1+b|"P@"4Fezu&dI2IVͱ2M*IآBQtmzNmA\lIB E'SG$H<&ICCp nxBf/氂փ$Jp.T"(+P䅲TXF @2  hZkDti 0E@f P8 ME&t@ K^HHސH6Ԡ4AEJĀDJ$X$;QāVS[XPJQA0߳|?G>@NGIPNC APJJ"KQp-PN&$0`jbpB`4<lr~o6mNAp xh4j 1$h'RhԔ2j FA0@(C 2LjV AA^H#OĄ Pj5hvJ nAA1B60pݸ#wu>| W  W箿C_zW'!N!"_##/$%&&'))=*++i-. .=/12:283345 567788=9::; =-=z>??߃AA_CDDEFFGCGHIIJKKLMNNOWϿPQ Q=RSSTUUVCVWXXYZZ[[\]]^_:_8u}abbcddeefgghi:i8jjkl lmnoozpqqrWssttuvvwx6yyz{ {|PLTߕ/"˘~|s>uۨT6g-(ڐA-_0(&"^^/~dOP n݀~NC$~ksk[ft|r'`|xRLP!bH J bH ~!b(\rf"yTZFh6!( "DDIB9 N.!}ibprfOt~ wXT^8 BdPy Ehʼ(\B"T Pp\B"tOI98|9EA26JDl1xBo8:D|ǼgYKk(H}Gvf;JNR] gL>%Wo& ҁ݁[REAgͰ¼RHCSW zIySBJBn_3?Z_fRа|f2neoD12Ui3@mgbsprvha|as7cgbEjjml{TB6-p;)X)87)΀?Hk"pAP#RJ+`7|S&,5?hK1V:Z\f$H6VC( R}U?ynؕ":DJ"!j9l`&+Jg $}K:*fvTP$_Jg/;U\Oumta-}(VmsOvpr @BX/BTT3A#p"!|ߟ[T}&A!ńofBtY&g恀5?6w:4C23m"`,}79HPxB#u(z["kyHB^>7 OzS0@=(o˝pPL4?o)_57mdk3R/A~  z}3k-XQ/!#-4\kO$Z+WٻE[63^!,(.3L{,EmY@=܆'ԟP1؆H*xׇNhKl~G?HE1?ֺ8Q?U>=#@3+Μ>4 6OgČ10p'y}lY`a܃CC|ie% `Z  `]~/{ _h,f~(}P&nhO`O{膀t0Aʀ'dioX">5 _B`\ă?@,*+W~-=h}\/#SR>,Pz PvO>C޸9SQP{. %Ӹ&\ [ql=BAm}@gw&#a{T'$c"jmj/EU hzP cU T#1GGsJ$,u 3?8Q'(M` B<5!{;?%_*0=I734ߒN 3t%$b W]>:/Ɋ4Ƴvm5>ƌ88w>lӼ/@Y~$4$Xv&E<.F?B>(d =DnT>J8|t,g?rEl~)*"ŸB /E(+mobQ[ߵ^`{E^b* ~(}*T_EV(Rrw^] nFAjBVrlxp@$F9zb&9:"X@*>(F$349wqpFRxJm^jwyޢ\y.V_lV_n_ XX`Kd#`t#`#`4E#`'Д|uEVPXA=`V{"^,rX=`DLNЖV Xsd,rබ X XN X X X X{W X *8y/^Ʈq!.,!x,!="k"B̅ j^"# ?\#\+VP#X#2Z#J|$2'jϹ*[s&}.&2_'ï'f'W(W$(+|(>( ~~~~()~‡_)ﯯ¯)*W*+|+f>+ ~ -W.-|+|->-[|<⫯..Wꫠꫠꫠ.+/j ]}/ /o:n{tUPUPUPux1W"ꫠ)UPUP1U1B'(**n j11W<10_22T220_2a3VK3 _%_%_%_4A4h|44 55P+5W :6\6{75{*UP7(+|7t77J8J8lJ8J#<*+hG4p92*萿 TJXPp9[h9ʓr'f(:ߵ;*%OzPyʤ;Lrwv>->??ncsmF!( DjZ=zdjAڂ|dA$xB=WA=WA=WA=BWq-C+~nn`xCDR sD& E^\EQW0kQ QQbu Z_S_ ŮS. LT U "AF Uz - lU 6GP' "rͿUU'VU'}eV\'eV'eWX'eW'eX8'|X'S'xYU'xYU'xZU$'xZUh'xZU'x[U"'D'[''U[*A$* ?\+G\N+E\n+d\+\/+i]"+4ARP+>\+<]-+j]+\A]0+^.+^4,+^^+ +(+.^+z_Z+yi_+_Z+$_+ +җ_+l}+莠+}V+,[w}caY(>aRa_|aL Ъ/aߟ$j'N~Hbx~>AWbc Jct ۿjoe(hAl%}Ex1#93  A oM1JS; lo3.c~(.MBK*L*.mbka)DRE2SIZMAP;G OLD= FT1 NEWEbIGHT;/ 3ڂ`plm#Զbrz(dataZ^G3ȱW@ORL"B4B!savĞa,LANDSCAPEIc~9#5:-size mapFxPressan8ykey/mousebutton|P |W VFb!A((2("\u#Q#k&I#/}#y#n #Lju%%k$_*#$g$2$zAV T%^/z(W.%'J0ʢWѰ*.CR G ,0@ `  ()xV8R n* (* 8*gƣy 7d8 _DS`/z #TPĪ2M6kN􏼀, #U!.8NxgYV'!Lt䪢~K>wuɖpt6 pg_pEnCrŽYxffp)`pNE=NL~Np}pEC8gVHA ('| ƚn02^9g8Nn8DX;m[@j$>@lɳ@."(hEg˵zAp HpR&"NABX 49@bM΃*S°uT2*e D "A33MBgN\ BhԤgAT:3,@|Eb\Is2446[:U_ %V G' v Hh@H6=JB."Q̓ 2/ÍB9C{DRB E jfFEs0rƜ%~ T,Lr Ծ&kSG(+_E<ٞDJ 6 >KLbm8Qn[:r@BEBC49W7He L9l:LDE0 tbI 4{lMu,+tP#h3IO7i $!&Jƕ6•I%5L 8>Ha 6)=Hr1>m:a4HNRC C u,?Bj2PJ͠K0#0dVuE5bn ڐjrR AiQK\U @@O^P5"A5e9̕BN-9X*.p 9풀  %\:^Ih4Uj,PH(t]M P!3ɡDҨXr!"݀ 3hٳ $9u5Y R@Kƶv 4 MbS`{3|*_ż."nq#<,c*S2F6 E6GoR @0EX5)L#*N =^$Вy Kʔ.QM8e.S|620 xp`>SQؐ.e^YnFRG <# HžУ8p>QWa庨NpQVFc8Mg V*DV cBHz GkpBלXJ׵ΚA0 h 4 :au{݀N6Ŏƺ0$NTJ.@muH0%a,UR8i\\F<3,.l,M.""f MHSC3SBxY`8D2 8 &A<MR$EbSH DL]CP0THT`Q'Q)4*CJ"$D^Z)G#:*G5)4@/8$H$ | f纨(:hd]!M֦ߚה 6ASElU9E,<ĖAА’L~<=s5>1GƇύXUm E:fF`L鑄pPMjfzC]G>0qRIRt Т"0 0 ?g FX8[!%Q˩ R21%VX%/|``ʍUYB6 dHU!*(R X"c) K}$/ R6 >j(l?-/lOGH[J)NAf{@Cp0p9|c4i^4 @ a6W8Y+@?оDw0O(!8D|pga F`Y$ SC`ӘBR#utHGJ@0O.V( G2%- tdPda; òm %P(UKŚ@;hޖoiQ,DE2`]]( *9A,],B^R`9BPU]Hcv0"jJ :2?fPUX季UF!)gEJITfXC"%=Jb6"5%:*%B DTrO (8*9DߌhZ)@x+_DNN:CSG6ΒbiL3ـ|Ug(<.LPREZDt P̸nt֬lˊ& DYMYb"MU ]4Q"Dq$N! L$I4 : vp9FJfF]^)>RHSEj] @Nl˄GBSJgf]JF?f UVsTQ(WԊ+mҮt4ăy|Lt C:/ǁ 6,@cxXfrBN 6 d 88d"|8 9dJ ":z<$0L ( `cF.L @ &N ,:S~}Z7yR@ift*ՙgp<3j9 %v rZƩiSmjH<ͅ* F*TW04 q<(0TL3xUG*TqNUu%!;\8|8|e Osl#'J{n6#x xȘI0 }^< ?@4~f Z)Ƨ݉?:xeFlk0L6ա8H .+>t?H$#7(3SʑCUXa!)Av=M(_ʉ:?Mr_*w<3Ԛp?=; ?,C,s%G+=8<= ˃΂_v=3[ԋwe]_oMC( 8$_!9 $_Q#Q~/B<ȏ/2lb?q1?x?(ؓ ?1G.>G!Caޙ *DH/ P4Dd @ nKzIƉ,LXMO:f߽e"Co2̇ 9'A<`Y:ZsTBM<'TܻHn5PG W=7>YшO+`ߜD`In,Mlb6fFõlcvp-?(p%8y)|BPX~J+@r(vY\JmyT=zՊOS*~`n`PEҡ[5KqʃM`lR"6ɭC$TpT!Tv)~8~d |\Hv=@%Y`PHV+b"NJS `:ti'6*y|`10|JnC:8qhsˇ|rfx>f3~%#0eߛ"f(| aN{kPÆ6n֟zeRl66lD{Jk}<)>f ~^<<iyX[h-~f4X0?>1<8 \U3Y  ()fc:0x<x<x<x<x<x<x<x<x<x<x<x<x<x<x<x<x<x<x<x<x<x<x<x<x<x<q6 O C&bZ|< x 08f3l;;XąDܢ>%r!QԜ̺ku?0]??Ak?°]5aP$lE` ZTޥNjvxp?G;3jKBĀD 1Ԩ@rV38dُq>]{88- z"Z%@ ;4`Hh|:( o-Q%㎈ SE:1v  Y {A}f_/W:tK>X^t@mYÀ:>hd}2#"@x0p`H E0ep"YdP ex AC5*7E-K&l H@` (0pdupF~8, 0?eprSxF|k 3l9||L_ޓ<c;S?r{ZmHĀfSpև%E` 00 `e(`tO0a<0AB=~&]t]"~c}ċ?p9?ly& vU|m|o%>59-X.l*}te;i W8; <?  @/ ǁv=8@z00>0@0+; 3`9@;=@ܸ~<d  x>"l!0|À<|80 30 `d?8Q 1cň:8^^0`;qZ rE ( rL{5YYGRgO3 OLD z]&URAwXz"lY!MwULaENRE`'=b`S]prite 11:"+(>!|KX!n)#/OuOPu /n` 3LT-VO-)#\JF?1Y1"*C/+SJFe$zZeP 9@1eQ;<ĎW5`^F-(̗ɚӳËoD3VȾYeyױE/ 8M8+ʾ})u d 1u=.1+yN' N)N! 1cgu1>!pap}' a' EqXhq uluisruuk`G|qӠ` vLSpHuff zl*mouse.sprY9pq2@m#ӓA#ዦc## ? _,H bD ^S\mf!j ->d,˘7e/SB?P _Ȇ(kj-HkqFx&v/.N8SJ2Qq [-_v%6R>qP1KlK<(rdq` ҈P%Q3E`L?SlDFla=j/>"KVD"q>]^ݦfF#P?vRx].M Ab!eܼbeeZrV\ wΗH?-<w3@>BRqez2ZJ@F"EȀH:,n>vj(z!%*1="4DR"UT&f{4t(ܕn^E~SТbTTCQw`# Bh@ " aR P6A|J!!`+먊TD+- e9-S`'  T3qȩ.N:Mxpȼtv`8*HQ$JGk 8P$1.".SP)qTuS3D7S&z@ifJboͮC ݴz!l`ao8:h oNCm l>zo؏ Euv MB {,P-8SzL>xSGzjA<KN : LD&I(J- DUzhgfHߋXj%KEIz.|u"MxM-48l {g m}?ƶ{REиR߮?f]47 ` qr>4dD;H)N򠐢8ۀ@l:΁s/NJ6Z-ZZ-`c.E FdD>tG,F(ԡc$dضeqMszqd_T A Ԡ3r kTj0o QA%iNTgI!kD"hPDGl~| ˠQ}z(pXn`ӎȋN V HHp܍&7\\q -no ps0P8<$6<6yIiN"1Gqd zzR.GižDO8Rp=A=4(nRt $ۘDO~ z>1LĀh'.T5&aJJME {%#͕& tMfΰzFe8׈[f 5b&JL~$Z04~J(@SFxzG g%ˏ>ʓNԂf lٶ"8TŚXR߹-GD%Qth& Q`gQ,NE$#Qz0$VUIsiP PRhʌ8ԝjh`wɌ /\D2pD+hD`UP3 ]Q*8Hg[,UH4^,&kxyz{`2("hijk (XQ*PYQYtWTGc׃DIj'SMEøn@>08Pk."N PZ(jCC1L" $h((QkJ!u k iRL)W W/Ŗa id K"JHTg8vse*IT "PdWj&k| LLH^H]HT" jk$N 4 + 3333\Eޮ>g8.SqmXQaQ̗̠ A3 v< d~$g;ѿTSGgRFedg$fJ4< I=p0 GBu4A dHDJ $$K,$44ĘŏοAȞE.SjDg"*UUaAėm(`<="ɞ PΙDU5L?<'QGvv?8'/ 0- rUCJ(jqtrpVnJ_BU ~JVe<9hwٝؒD)uDD V1HK؀ȺTtXI&p,KQ9%j^CRrZcZ" 1+8W#ִ% 4$AЬ@"(J>($F&1JiNۺ(<Ͷ)ݴHDiۤUMÑK J |ќEyn1pFDS^2hFhe{d {D?L8r,zu(xdJ f y\~Vi:f"t>ZA(̤čWo89gD(tXl_զ5q<՘aEU*ՆR_qJ&$R(**ن9;b"RpSG2ΰF4c"zp5TUHk4HvrxXT\ATR@d&Ljd AyH1x59te jrb(z\:bTl*vy>E`OOJDK faȿ[nFFTq #AdJ`a ;U/YT!7SX49WIMRTUi +9,K̬ٷIv`Δʡ h9_0w>v&HHGtJp陰gb}s`+S9>>/ UU@A:@62 C0B *3>^Ql< SwGJf@pam_ڭvQ ^,VÀt8$Wh[RFF2:9qô Q66"Hb|JPȐI :x:):4|K~u(KF*4#w,GREE ĴǠQ4G>IڧGl*H> hR^GG@M74v=ݖHĹĆ4&423A`Y .EFȨ$!I@ &J2A0[Isـ)j:ESMM8E1<<6>.=xI4Za8.J"K!: H j\Pv 2QLǿF4esH;GSDj xS>Q˟?viGd($rѰ n劊ּ.;&H͝JnYyOZP8ZE RI:rHIE>aH27?(A<($N:8LSE$H&I2H@6C H42wx;{6i,ͽe/Ǻ V@xP ffL&3p@b&Nf$Y|e(=h!6h"㛽 a|@/a]82ƏOzP!!U7)Z/V.@.KbqF=(>x*}<,(&HĨy724^ú x<ɎA?s6!~_`R=@@koo/umk[ iDģӤD#NvhJ\ϔԩ=dH.Pƴx?f 8MusicsX@ M / hw=GGɴp1S$PWWW~WZ{wR?- ڼw"jS_YPKG?!852/-(3& "GRpp<ߚOěW>ċP{ #1)Ó#*KT{'r7Ȧ$H~ HC()(4L~Ns/eը>:|QpJSkǺVnFI#I4t0 uyqD@l֟<:t~k;/3 ,Pa2BuIRAy!uSڥȆ|$zJVV[~M?NvK6.:kae zLJ@ kzPDmeDLSͻq4J>t},ڱR{~Hbz@~p=Hfٷ;WE #T4r4nO<)Mf/rD[V5%{.F?4AHJXCCS)R8H6Dq;H9K(cTB==gz ArϣTC=CE$VAJ FQ3HHQf: m22 fv?$IVp?K- *fnQQ :iEIfqȱ:EO:^"b9U%Xl+p4KEm|~\IeKQ?"zNЃ8F_Kf8?Z2S2YNY9 WhH B`і&Tu4 cJ.yf}P@a"i$07rj )N`FOrDKPp58\pS pA n.Qi$|$tA sB/XtJQ_],da?:.)Թ$%F(9PA=?܁pj$:~3 .FSfQ5&: &:@-<@pI+y@{ fp4wG?IF ,Yys<3du:2_dl*~83uA:8ESAqC.eJpu96qA:q="4ӚGVC"K/z@ʠ TƝ4^.Ѐi6@ ԾՕ$2hf Ҡ|+P9gے@tQ~?>_b.PT&.AADFLOATT{RAPli&NN\8at|NuHk~QJ_bL"qT{ՄM ̒ &̹JXT>XCôǖB2g`DID5&F(v(HC44CEJ;yzhH*/ rKeY/'^ωVLgOCedfc_S|#=#xQ21k.Jx?/~&>ɀf(N<ߑAxS1eJ\Ѐ-7 ZE"@ RIy,CdhpO<_i 2@We(}*d/]JEg\H ?O{ ?Vr@^D.f4(5[M'zUisxe~/p H?)JZ$AJ檒N-j)PKh~#ZvSA!2JQ$ HXڥ+A.e\e|)kyv:Cp ->'J@|vb(C49\x?H%q/:Lh]A>a"z8@Ef:E)%.>@=Jp2j |erI.EJA>><$ISAfJDj"JJC@E- >y.vaB^sp?C-+ + r^η|n؇ nY]ٲҚ KFu j=n@*`P`PHR$4aI >,H(8rfa<3z.] ,sQ`Y'M@.4'rD*J╈Brf֣wGyY:-pLi;X}A@^#'i9,/9PsU-A a>@/."<4VxNsKZ~-Rntopc7ox@8&GZ.j-TPo.H c_s8hm̰(t lFG|@hB˜QB07G$C :1zGJGl4JDluD|V#S GnFj2:VS"B1G$ftvSI?!٬؊B# RFDmz'%omzK^`IDuZK apG 7ޣ $9.e'ВJDnI-ȰOh0eIEf!Dvz@p6j-jf:@"Jfg0a>FS.ėůTRQ2;D@$ܐ1=z? a:TӠC.l1n?*ph$l,qR*Am *v*;*2S(JP*nॠC-&d֌)DQ*zFOEGJRV FHAlDSGPI (m/YKB~\NJ ldžJGqE/HFQ WDfIXZSy :G(K4ԀhP*n@G)4B+H@#+!|F-RX|H=e@[GПm~<9o8\ԸD`@>[-:D R$@H@@ :tПR<1["QȰ WS"V[Dg 2WՒ\UTd=W `EI']ebc5F>GP$藇r8v}r})'ۗIJH?or ja&>)&{FABB*A0mR,3+Sh;UYQ@|֜Rwi7$Diӏ 5|/TGA.X‚APl-Li;HHJZ 8p%$lG?`b(q9.8cN0w6cP Xc,y$tT> %!z`XXix.ga΄3Cxc͐yt`JkFo$1 A,Dێl!ab@ (<2CDrDބrt9P|X2~j"Rfa:=Šhi,sq=/a/v,;1{b|sRfy/0m d R⏇<6F*A4ymIzS{(*ȚՁZWRaCF ߢ(όĞf1sGkP]>nӎFkDT\bDݶ:066Fd ރSE0GSk~څ0S>:Dž-.my.yc.Az1&1 tra6 a.YS@ia&>J/jlDrD܅@&AkF4`T~R4(hMJkу8$$ު.j>-a#.~AN3Vn~㎆A,eA@o$hnQРNSCD5wRcM=e\*XOIxxr>P]K:Ql~G|.AHlb/>-kjlf >;qA>^2>k8h,@ (WjhbRid~י0ܰPJuh@uރedkgvPk<Rd&#>꫞kS侼bSHGއ[̇?k(~Nuo0D&p.<ξDqjD;@9eyp|aT@t6D,6:"zP3:t 3)1;  #b`СhP$ 5d -]KqY؁hP h }U(0,E@PC&ТK%h.=daA1pb|5gU'z9 #~Ĉ1 #6.DC,t( ^PE|CP!CCK] Р81t("]ECA1 h0T‡]j@tx EIǡA1pz?&a\0HBECѠ` 4( A0tK . K1Qt'֏ b*BEAAhP  PCxP!CCKh@L%cBC AX"EѡhPt0DC>ہtK . K1Qt*.*H*(V tQt( ŀP N11xy8h.߃wLfwUwDw3w"wwfD3" l7i@v-8Vx N d>R1 6 u 5M:.=84(yP&8@H'fpp;^PU33;ss77wvV/4Pp ~844PEe/7(6t ^a*x]+WؕAB@@ ^aUvA® z 2veWXA] @+{+ ޮ WؕA:xUu%Se= : B{eЭ@ ?J!@[!t RtB:p+ @ G+8@~_)h+p+ @x XWMP~ |P{wpC` Pi, ڈC C38H@(0ʤ   `3H!@$@d@0@ P*V? RT0N9²~0g  `B mmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmLionpoulos:B ** this program grabs sprites from a picture in blocks of 32:::ͦ:(XOFF:YOFF:XIN((())):YIN(()):AM(()):HIGYIN:WIDXIN:AMOAM:DR2h < **F ** grab sprites P **Z:()d: nAM(())xXXOFF:YYOFF:SCO:XLI(@(@XIN)):YLI((YIN)) X,Y,SCOtDRXXXIN:XXLIXXOFF:YYYINtDRYYYIN:YYLIYYOFF:XXXIN:SCO:SCOAM8C(()()(),PALT)XCCC:()},()} C:w:: Ȋ **Ҋ ** show sprites ܊ **::XZ,,,, ,,::,:Use mouse keys(,:To veiw spritesfC(()()(),PALT):C,C }:()X0XAMX*"XX:&,Z$:Z$ 6X, @: J **T ** main menu ^ **8h:,,,, ,,:Vr,, ,0,@,P,p,P,@,0, ,,F|,w:C::Y 6A$:,Y:C:A$:CY:Load picture PI1Load picture NEO Grab spritesAlter 'Y' offset Alter 'X' offset ̠Alter 'Y' increment ֠Alter 'X' incrementࠦ Save spritesꠦ View spritesBuild sprite bankGrab directionEndBICN():&:Z$:Z$ q::::V&ICN:,X,v,,,,, ,R,\,a0h4:F$(*.pi1,LOAD picture.PI1)DF$NF$,:4XF$(*.neo,LOAD picture.NEO)bF$lF$,:vZ:2::Y offset: Use mousekeysZ::,::YOFF:YOFF@YOFF.YOFFYOFF"Z$:Z$ :2::x offset: Use mousekeysZ::,::XOFF:XOFF@XOFF.XOFFXOFF"Z$:Z$ :4д:: Y increment: Use mousekeysVڟ::,::YIN:YIN@YIN,YINYIN"Z$:Z$ :4:: X increment: Use mousekeysV::,::XIN:XIN@XIN, XINXIN"Z$:Z$ :0 F$(*.mbk, SAVE sprites)*F$h4DT:N(F$):(F$,N,).DTNj>N:DTI$F$.mbkI$(F$,,N)mbkHI$,:R:\:a::Choose grab direction: press.:left mousekey for horizontal:or:right mousekey for vertical$bDR:$cDR:db p ** z ** make sprite bank menu  **6,,,, ,,:Y:C:::A$:,Y:C:A$:Y:C:A$Return to MenuWIDTH...HEIGHT..AMOUNT.. MAKE SPRITESʠReturn to Menu$ԩ ,:WID; $ީ ,:HIG; $ ,:AMO; :ICN()::ICN():t:2ICN,.,B,V,j6WIDWIDWID$$.HIGHIG8$BAMOAMOLV`j:2tICN~,,,,6~WID@WIDWID$HIG@HIG$AMOdAMOĘΠ:N؊WID=peek(start(1)+26)*16 : AMO=deek(start(1)+16) : HIG=peek(start(1)+27)4BLK(((WID)HIG) )"MISC(AMO)4LEG(BLKAMO)MISC8BLEG:, : FAR to big!:^ :,LEG:SBK():SBK,:SBK,SBK,AMOv2:ISBKMISC:N:A:IN,A:ND(II:()},()} I&2P,A,L,T,Tr<X:OFSETMISC$:NAMO:SBKX,OFSET0FSBKX,(WID)&PSBKX,HIG$ZSBKX,$dSBKX,NnXX:OFSETOFSETBLK:CO1:NxXOFF:YOFF:XIN((())):YIN(()):AM(()):HIGYIN:WIDXIN:AMOAM :0 LEG=(WID/16)*HIG)*10)*AMO)+(AMO*8)+52,PALTwpp@@0PU33ss77wP0  @x? !eř!RŬ!IEJ!@ EA%!~?XINYOFFXOFFmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmLionpoulos= **" ** example of joey command  **(::ͦ::2,<,w2F()joey.mbk,$P!X(),!Y()U, PVSN:A:()N,A:NhW,w,,,,,,,,,,,,,,UZA:!X(A)((A))((A)):!Y(A)((A))((A))dT:A2d,,@,,,,NnA:I:XC:YC:BXC12xJAM *,(),,, ** ** Main loop **",,,@,T:VNJAM:,(),,!X(BXC1T),!Y(BXC1TT),,:TT:N,,,,8BXC1:BXC1jBXC1JZ$:Z$ ,,,,::ҷ::mmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmLionpoubnk8H $6GwTC2 2Cds*@????>>>``00??????xxxx????<<xx``xx<< ??<<00<<??@@@@ pppp8888||||ǀǀ >>>>``00$??????xxxx mmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmLionpoubnksbd;:;:   ;      ::;    qmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmLionpoulos= ::ͦ::6() landscap.mbk,6() landmap.mbk,(,2 ,,,,,<A(())4FWID:HIG :LY(PYL((),,) Z **d ** Main loop n **2x,(),(), ,LY,Z$:C4LY:LYLYYL Z$ ::::xmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmLionpoubnk L$6GwTC2 2Cds? H$@ Ms!-x ,?@c`~''' e|6_? ~ ? P@ d0d~@     \ @ @ @? %!cq}aaG1F d}~#a n} \+C_ [cYsaaD'5L/@ ?N}~s ~[g!#4HM!0C  ?Lb!A{={Gke/9)W @@U{9ycw+{3oKsKeQUss 4 0,L ۹ =  ,U͞? @>>:3?.3)_SqLLv9)Yg{ ľOPPBkݖ3';O33׉pj'VF I׮Pp@:B,L »!=( =#=34s3434$$$]t]]=u]_}Wߴ]w}wtv][}]]}v߆]FL ]~߀iN9N߀׳pg/PP#f"Noff?@@n?[]~}]ƾ|_w݄]W445넽w|.]34;3535,<@<@xx@00@0XP<(| 0 ` @@@@@48????,<@<@xx@00@0XP<(| 0` @@@@@48Gmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmm The Missing Link Extension Written by Colin Watt and Billy Allan of Top Notch Version 1.0 - 12/02/93 Liff - Let's face it, STOS is really pretty poor. It has some nice commands and it's easy to use, but when it comes down to it, it's just too slow. That is until now! Yes, the Missing Link gives an unimaginable boost in performance to STOS games and demos alike. With new sprite, mapping, joystick and music playing commands you will be able to produce assembly-quality games while still retaining the ease of use you had with STOS! About - The Missing Link contains over 50 commands, each one, we hope, useful to most STOS programmers. The commands are pretty much game- orientated, but they can still be used in demos, intros, menus and whatever else takes your fancy. The extension has taken us about five months of continuous work to write. The commands have all been optimised to a tremendous extent, giving a real boost to the performance of STOS games. We have already written several games using the extension, and also updated old games to work with the new commands. To give you an idea of the performance of these routines against their STOS counterparts, a horizontally scrolling "Zaxxon" type game we wrote in 100% STOS updated at 6 frames per second with five aliens and two bullets now goes at 2 frames with 20 aliens and 16 bullets on screen! We hope that with the release of this extension STOS games will become much closer to the quality of pure 68000 programs. It may require a slight change in programming practices to get the best out of the extension, but it is certainly worth the effort! The release versions of the extensions have had some limitations built-in to encourage registration. In the BASIC extension a message will appear every so often telling you to register. In the Compiler extension you are provented from using many of the commands in programs which are compiled to GEM - programs which are compile to BASIC are unnafected by this. The version you recieve when you register, of course, has these limitations removed. These limitations were added after we saw how many people were using our previous extension "Misty" without registering with us first. The Price of Power - Yes folks, this program is shareware. We have worked extremely hard to make this extension as good as it is, and we hope you will reward our effort to some small degree. If you are cynical about the amount of effort which goes into the making of an extension, then try loading an assembler, loading a source file, assembling it to disk, loading up STOS, running a basic file, compiling it, running it compiled and then repeating all that 5 or 6 times in a row every evening for several months... The registration fee is 10 pounds sterling. Please do not send cash through the post! Pay by postal orders or cheques only! Also, if you are sending a postal order please make sure you fill it in correctly. It causes a lot of problems when you try and cash blank postal orders... If you are from outside Britain, then please do NOT send the registration fee in your own currency! Due to certain exchange-rate problems caused by our government (not that I'm one to critisise of course...) it has become very difficult to judge how much 10 pounds is worth. Still, never mind. So, send your 10 to the following address: Billy Allan, 66 Highmains Ave, Dumbarton, Scotland, G69 9AT. We guarantee that you will recieve your registration package within 28 days for EC deliveries. Outside of that, it depends on the potal service! What you get - Well, I suppose you want something in return eh? Well, here's what you get with the Missing link registration package. The proper BASIC and Compilern Extension Example files for all of the commands The editor version of the Missing Link map-definer Lots of music for use with the new music commands Source code to several games (including "The Race" and "Frank and the lost Aubergine") Various other things Legalities - Nasty I know, but they have to be here. All the code in this extension is copyright to Top Notch Software. It may be freely copied and spread providing this document remains with the copies. Remember that this extension is shareware. PD/Shareware Diskmagazines such as HP Source, Ledgers, DBA Magazine and the like are free to put the install program on their disk if they wish, but commercial magazines should seek our permission first. ST User may under no circumstances use this extension on their coverdisk, due to their use of the Misty Extension without our permission and without any payment to us - glad to see you strongly support the shareware principle. Extra Service - We now provide a custom-extension service for STOS users. If you have a piece of assembly code which you wish to to have turned into an extension, then we will do so for a flat fee of 10 pounds sterling. This service only applies to turning source-code into extensions. Do NOT expect us to hack-out routines from programs and make them into an extension! Also, be warned that some routines are next to impossible to convert, especially things like tracker- routines. For instance, don't send the replay code from Audio- sculpture and say "make this into an extension for me"! Also, remember to send ALL relevant information about the routine, ie, if you want a command which sends codes to a printer then tell us what all the valid codes are! Remember our hardware limitations - we may not have the equipment you do, so if you want a midi-keyboard routine then you're in trouble! (we do NOT have bloody STE's!) If we cannot make an extension from your routine then we will return your disk and money. Updates - The Missing Link will hopefully be updated for the Falcon pretty soon. We have tried STOS and the Missing Link on the Falcon and both work. We hope to add support for all the Falcons standard screen-modes including truecolour and 8-bitplane, and also it's extra hardware like the blitter. If anyone is interested by the way, don't belive the stories you hear about the Falcon being incompatible - we have tried hundreds of programs on it including STOS, Calamus, Starglider, Devpac, Xenon, First Word and found that the machine is almost entirely compatible with the ST. Reference guide - This is a small reference guide which you may want to print out. It just lists the commands and the basic parameters. *| BOB x1,y1,x2,y2,0,1 | BOB scr,gadr,img,x,y,0 | JOEY x1,y1,x2,y2,0,0,1 | SPRITE JOEY scr,gadr,img,colr,x,y,0 | COMMANDS h = B HEIGHT(gadr,img) | w = B WIDTH(gadr,img) | -*| WORLD x1,y1,x2,y2,0,1 | WORLD scr,gadr,madr,x,y,0 | LANDSCAPE x1,y1,x2,y2,0,1 | LANDSCAPE scr,gadr,madr,x,y,0 | SETBLOCK madr,x,y,blk | r = WHICHBLOCK(madr,x,y) | MAPPING REPLACE BLOCKS madr,blk1,blk2 | COMMANDS r = BLOCK AMOUNT(madr,blk) | XY BLOCK madr,xadr,yadr,blk,num | x = X LIMIT(madr,x1,x2) | y = Y LIMIT(madr,y1,y2) | a = MAP TOGGLE(madr) | -*| TEXT scr,font,tadr,x,y | PRINTING tadr = STRING (num) | COMMANDS -*| WIPE scr "| TILE scr,gadr,img,x,y | MOZAIC scr,gadr,img,x1,y1,x2,y2,x,y | MISCELLANEOUS SPOT scr,x,y,colr | GFX COMMANDS REFLECT scr1,y1,y2,scr2,y3 | DISPLAY PC1 gadr,scr | WASH scr,x1,y1,x2,y2 | BLIT scr1,x1,y1,x2,y2,scr2,x3,y3 | M BLIT scr1,x1,y1,x2,y2,scr2,x3,y | -*| r = PALT (gadr) | PALETTE PALSPLIT md,cadr,y,hig,num | COMMANDS FLOODPAL colr | r = BRIGHTEST (padr) | -*| l = DLOAD (fadr,adr,ofs,num) | l = DSAVE (fadr,adr,ofs,num) | r = REAL LENGTH (fadr) | BANK LOAD fadr,adr,num | FILE BANK COPY adr1,adr2,num | COMMANDS r = BANK LENGTH (fadr,num) | r = BANK SIZE (adr,num) |  -*| DIGIPLAY md,sadr,sz,freq,lp | SAMSIGN sadr,sz | SOUND t = MUSAUTO (adr,num,sz) | COMMANDS MUSPLAY adr,num,ofs | -*| P ON &| P STOP $| d = P JOY (n) | d = P UP (n) | JOYSTICK d = P DOWN (n) | COMMANDS d = P LEFT (n) | d = P RIGHT (n) | d = P FIRE (n) | -*| l = DEPACK (adr) | d = COMPSTATE | MISCELLANEOUS RELOCATE padr | COMMANDS r = BOUNDARY (n) | r = OVERLAP (x1,y1,x2,y2,wd1,hg1,wd2,hg2) | REBOOT n "| _*| Command list - Please note that ALL addresses must be "actual". This means that you must pass "start(10)" rather than "10" for memory banks etc. If your program crashes while you are using one of the interrupt commands (mus auto, mus play, digiplay, pal split or any of the joystick commands) then if you change program number (ie, press HELP then move to a different program area) the interupt will be stopped. This can avoid most nasty crashes, but please be careful when using interrupts! It's always a good idea to save your program before trying out a new interrupt section you've just added! Sprite commands - BOB X1,Y1,X2,Y2,0,1 or BOB scr,gadr,img,x,y,0 The BOB command is a replacement for the SPRITE command. It is so much faster than SPRITE that I can't give you any comparisons, but you can display about 25 16x16 sprites in 1 one VBL! The first version of the command, with a 1 as the last parameter, sets the clipping zone for the sprites in a box from X1,Y1 to X2,Y2. The 0 is reserved for future purposes. The second, with a 0 for the last parameter, is used to display a sprite. SCR is the screen address to display it on, ADR is the address of the sprite data, IMG is the sprite number (from 0 onwards) and X,Y are the screen co-ordinates. e.g. 5 rem> BOB's in bank 5 < 10 logic=back 20 bob 16,16,304,184,0,1 : rem> Set clip 16,16 to 304,184) < 20 repeat 30 bob logic,start(5),0,x mouse,y mouse,0 40 screen swap : wait vbl 50 until mousekey=1 JOEY X1,Y1,X2,Y2,0,0,1 or JOEY scr,gadr,img,x,y,colr,0 The JOEY command is very similar to the BOB command. It is specifically for sprites which are only drawn in one colour though. All of the parameters are the same apart from the addition of COLR which contains the colour of the sprite. JOEY's are especially useful for small bullet-type sprites or even bonus score sprites which appear when you kill a baddie or collect something in a game. Certain colours are faster than others. Colour 15 is the fastest for certain technical reasons. e.g. 5 rem> JOEY's in bank 5 < 10 logic=back 20 joey 16,16,304,184,0,0,1 20 repeat 30 joey logic,start(5),0,x mouse,y mouse,15,0 40 screen swap : wait vbl 50 until mousekey=1 w = B WIDTH (gadr,img) h = B HEIGHT (gadr,img) These two commands return the width or height of a given BOB or JOEY. This can be very useful for restoring their backgrounds or for collision detection. GADR is the address of the BOB/JOEY data and IMG is the sprite number to check. Mapping commands - WORLD x1,y1,x2,y2,0,1 or WORLD scr,gadr,madr,x,y,0 WORLD is used for multi-directionally scrolling maps. It is not advisable to use this for anything else, seeing as the block-data for WORLD takes up more memory than that for the MAP command. The first version of the command, with a 1 as the last parameter, is used to set the window-size for the map. The window size is set in the box from X1,Y1 to X2,Y2. The X co-ordinates should be multiples of 16. The second version, with a 0 as the last parameter, is used to actually draw up the map. SCR is the screen address, GADR is the address of the map-blocks, MADR is the address of the map-data, X and Y are the co-ordinates in the map-data. e.g. 10 rem> Assuming the map-data is in banks 6 < 20 rem> and the blocks are in bank 5. < 30 world 32,10,288,190,0,1 40 logic=back 50 X=0 : Y=0 60 repeat 70 world logic,start(5),start(6),X,Y,0 80 if jleft and X>0 then dec X 90 if jright and X<1500 then inc X 100 if jup and Y>0 then dec Y 110 if jdown and Y<2000 then inc Y 120 screen swap : wait vbl 130 until fire LANDSCAPE x1,y1,x2,y2,0,1 or LANDSCAPE scr,gadr,madr,x,y,0 The LANDSCAPE command is used to display vertically scrolling maps. It is also suitable for quickly drawing single-screen maps. The parameters are all the same as in the WORLD command, with the exception of the X parameter in the second version. The X co-ordinate is always rounded down to the nearest 16 pixels. This opens up possibilities for games like "CJ's Elephant Antics" and all the other flick-screen games we see these days. e.g. 10 rem> Assuming the map-data is in banks 6 < 20 rem> and the blocks are in bank 5. < 30 landscape 32,10,288,190,0,1 40 logic=back 50 Y=0 60 repeat 70 landscape logic,start(5),start(6),0,Y,0 80 if jup and Y>0 then dec Y 90 if jdown and Y<2000 then inc Y 100 screen swap : wait vbl 110 until fire r = WHICH BLOCK (madr,x,y) WHICH BLOCK is used to check which block is on the map at co- ordinates X,Y. MADR is the address of the map data. R is returned as the block number. WHICH BLOCK is extremely useful for collision detection. If, for instance, you have to collect diamonds from the screen which don't move, then it would be better to draw them as part of the background and check for them with WHICH BLOCK rather than drawing them as sprites. e.g. 10 rem> Assuming the map-data is in banks 6 < 20 rem> and the blocks are in bank 5. < 30 landscape 32,10,288,190,0,1 40 logic=back 50 Y=0 60 repeat 70 landscape logic,start(5),start(6),0,Y,0 80 if jup and Y>0 then dec Y 90 if jdown and Y<2000 then inc Y 95 if which block(start(6),160,Y+100)=1 then bell 100 screen swap : wait vbl 110 until fire SET BLOCK madr,x,y,blk SET BLOCK is used to set a block in the map. MADR is the address of the map data, X and Y are the co-ordinates and BLK is the new block number. SET BLOCK can be used to great effect in conjunction with WHICH BLOCK to erase blocks from the background which have been picked up or destroyed. e.g. 10 rem> Assuming the map-data is in banks 6 < 20 rem> and the blocks are in bank 5. < 30 landscape 32,10,288,190,0,1 40 logic=back 50 Y=0 60 repeat 70 landscape logic,start(5),start(6),0,Y,0 80 if jup and Y>0 then dec Y 90 if jdown and Y<2000 then inc Y 95 if which block(start(6),160,Y+100)=1 then set block start(6),160,Y+100,0 : bell 100 screen swap : wait vbl 110 until fire REPLACE BLOCKS madr,blk1,blk2 The REPLACE BLOCKS command is used to replace all occurrences of one block with another. MADR is the address of the map data, BLK1 is the block to search for and BLK2 is the block to replace it with. e.g. 10 rem> assuming map-data in bank 6 < 20 replace blocks start(6),5,20 r = BLOCK AMOUNT(madr,blk) The BLOCK AMOUNT command is used to quickly count the number of times a certain block occurs. MADR is the address of the map data and BLK is the block to search for. R is returned as the number of occurrences. e.g. 10 rem> assuming the map data is in bank 6 < 20 A=block amount(start(6),4) 30 print "Block 4 occurs";A;" times!" XY BLOCK madr,xadr,yadr,blk,num The XY BLOCK command will store all of the co-ordinates of of a given block in a STOS array. This can significantly speed up the time taken to work out the co-ordinates of important map-blocks like baddies starting positions or exits. MADR is the address of the map data, XADR is a pointer to the start of the X-array (see note below), YADR is a pointer to the Y- array, BLK is the block to search for and NUM is the number of blocks to check for. e.g. 10 rem> assuming the map data is in bank 6 < 20 A=block amount(start(6),4) 30 dim X(A+1),Y(A+1) 40 xy block start(6),varptr(X(0)),varptr(Y(0)),4,A The XADR and YADR parameters are pointers to the start of two arrays. These are calculated as in the above example, using the VARPTR command. STOS arrays are made up of a series of longwords (ie, 32-bit numbers). If you are using memory banks rather than arrays then just reserve the bank as 4*A. x = X LIMIT(madr,x1,x2) y = Y LIMIT(madr,y1,y2) These commands return the maximum width and height of a map. This is very useful for working out how far your sprites may move around a map before being stopped. MADR is the address of the map data, X1 and X2 or Y1,Y2 are the window sizes you set up with either the WORLD or LANDSCAPE commands. X and Y are returned as the maximum X and Y co-ordinates. e.g. 10 rem> assuming map data in bank 6 < 15 world 0,0,256,160,1 20 MX=x limit(start(6),0,256) 30 MY=y limit(start(6),0,160) 40 print "Max X is";MX 50 print "Max Y is";MY n = MAP TOGGLE(madr) This command will convert 'landscape' map data to 'world' map data and vice versa. Ignore the value returned. Text commands - TEXT scr,font,tadr,x,y The TEXT command is a replacement PRINT command. It only prints the text on 1 bitplane and is much, much faster than PRINT. SCR is the screen address, FONT is the number of the font, TADR is the address of the text, X and Y are the screen co-ordinates of the text. Please note that the text should end with a 0 byte. If it is a STOS string then you should add "chr$(0)" to the end. e.g. 30 T$="Register now!"+chr$(0) 40 text logic,0,varptr(T$),10,10 tadr = STRING (num) The STRING command is used to quickly convert a number to a string. This routine is much faster than STR and is specifically designed for the TEXT command. NUM is the number to convert (integers only!) and TADR is returned as the address of the string. TADR may then used directly by the TEXT command. The string will have two spaces added to the end. e.g. 30 T=12345 : ADR=string(T) 40 text logic,0,ADR,10,11 Miscellaneous GFX commands - WIPE scr The WIPE command is an extremely fast CLS command. It will clear the whole screen in under half the time taken by CLS! SCR is the address of the screen you wish to clear. WIPE can also be used as a quick way of clearing memory banks in multiples of 32k. e.g. 10 wipe logic TILE scr,gadr,img,x,y The TILE command will fill the screen with 16x16 tiles. It will fill the whole screen in about 1/2 a VBL! Using SCREEN COPY to do this takes almost 2 VBL's. It can be used to produce the sinus- tiles as seen in many demos these days. SCR is the screen address, GADR is the address of the tile- data, IMG is the tile image, X and Y are the "virtual" co-ordinates to draw from. e.g. 10 rem> assuming the tile-data is in bank 9 < 20 logic=back 30 repeat 40 tile logic,start(9),0,x mouse,y mouse 50 screen swap : wait vbl 60 until mouse key=1 MOZAIC scr,gadr,img,x1,y1,x2,y2,x,y MOZAIC is very similar to TILE except that it will fill any window rather than just the whole screen. As it is more general- purpose it is somewhat slower than TILE, but it's still much faster than SCREEN COPY and SCREEN$. SCR is the screen address, GADR is the address of the tile data, IMG is the tile image, X1,Y1 are the top-left of the window, X2,Y2 are the bottom left, X and Y are the "virtual" co-ordinates. e.g. 10 rem> assuming the tile-data is in bank 9 < 20 logic=back 30 repeat 40 mozaic logic,start(9),0,32,16,288,176,x mouse,y mouse 50 screen swap : wait vbl 60 until mouse key=1 SPOT scr,x,y,colr The SPOT command is a replacement PLOT command. SCR is the screen address, X and Y are the co-ordinates and COLR is the colour to plot in. e.g. 10 repeat 20 spot logic,x mouse,y mouse,1 30 until mouse key=1 REFLECT scr1,y1,y2,scr2,y3 REFLECT will produce a rippling water effect on the screen. It can be used to great effect in games and demos to give an excellent feeling of depth. SCR1 is the source-screen address, Y1 is the line to start the reflection at, Y2 is the line to stop reflecting at, SCR2 is the destination address and Y3 is the line to start drawing the reflection at. e.g. 10 show on : limit mouse 0,0 to 303,83 20 logic=back 30 repeat 40 reflect logic,0,83,logic,84 50 screen swap : wait vbl 60 until mouse key=1 WASH scr,x1,y1,x2,y2 The WASH command is a very fast version of CLS. SCR is the screen address, X1 and Y1 are the top-left of the area to clear and X2 and Y2 are the bottom-right. All X co-ordinates should be rounded to the nearest 16 pixels. e.g. 10 wash logic,0,0,320,200 BLIT scr1,x1,y1,x2,y2,scr2,x3,y3 BLIT is a new version of SCREEN COPY (it is also much improved from it's previous incarnation from our Misty Extension - SKOPY 4). It's main use is in saving and restoring sprite backgrounds, but is serves just as well for any other screen-copying has to be done. SCR1 is the source address, X1,Y2,X2,Y2 define the top- left/bottom right of the block to be copied, SCR2 is the destinatiion address, X3,Y3 are the destination co-ordinates. Again all X co- ordinates should be multiples of 16. e.g. 10 blit logic,0,0,320,200,back,0,0 If there are any Misty Users out there who use SKOPY 4, then you can just use the CHANGE command to replace SKOPY like this: change "skopy 4" to "blit" M BLIT scr1,x1,y1,x2,y2,scr2,x3,y3 This is almost exactly the same as blit except that the image is source image is merged onto the destination screen. O This command is quite a bit faster than the equivalent "screen$ (logic,0,0)= screen$ (5,0,0 to 160,100)". The parameters are exectly the same as those for BLIT. e.g. 10 m blit logic,0,0,320,200,back,0,0 Palette commands - r = PALT (gadr) The PALT command will get the palette from various .MBK files automatically. It searches for the "PALT" string which is found in STOS sprite banks and also in all of the Missing Link's graphic files. GADR is the address of the .MBK file. R is returned as the address of the palette data. e.g. 10 load "sprite.mbk",1 20 D=palt(start(1)) : wait vbl PALSPLIT md,cadr,y,hig,num PALSPLIT will split the palette at various given points on the screen. This command provides you with the ability to have separate palettes for different areas of the screen. For instance, you could have a 16-colour logo at the top of the screen, a 16-colour scrolling map in the middle of the screen and a score-panel at the bottom, each with it's own palette! MD is the mode - 0 is off/1 is on, CADR is the address of the palette data (each palette is 16 words of colour data), Y is the starting scanline for the palette split, HIG is the number of scanlines to split over and NUM is the number of palette splits to do. e.g. 10 load "picture.neo",back 20 get palette (back) 30 screen copy back to physic 40 palsplit 1,physic,100,1,1 50 repeat : until inkey$=" " 60 palsplit 0,0,0,0,0 FLOODPAL colr FLOODPAL will quickly fill the palette with a given colour. COLR is the colour to use. e.g. 10 for C=$000 to $777 step $111 20 floodpal c : wait vbl 30 next C r = BRIGHTEST (padr) The BRIGHTEST command is used to calculate the brightest colour in a palette. This can be extremely useful for ensuring that you can always see your highscore or lives in a game where the palette changes. PADR is the address of the palette to check. Do not use the hardware palette ($FF8240) for this as it ususally returns the wrong result. e.g. 10 load "bobs.mbk",1 20 D=palt(start(1)) 30 C=brightest(D) 40 print "Brightest bob colour is";C 50 C=brightest(logic+32000) 60 print "Brightest current colour is";C File commands - l = DLOAD (fadr,adr,ofs,num) l = DSAVE (fadr,adr,ofs,num) DLOAD and DSAVE provide for complex file loading and saving. They allow the easy creation of both archives and data-bases. FADR is the address of the filename (with a 0-byte at the end), ADR is the address to load to/save from, OFS is the offset to start loading or saving from within the file and NUM is the number of bytes to read or write. L is returned as the number of bytes read or written to the file. e.g. 10 F$="PIC.DAT"+chr$(0) 20 L=dsave(varptr(F$),physic,0,32032) 30 L=dload(varptr(F$),back,0,32032) 40 get palette(back) r = REAL LENGTH (fadr) REAL LENGTH will return the depacked size of a packed disk- file. The can be vital for programs which have to reserve memory banks exactly the size of a packed file. FADR is a pointer to the filename (again, with a zero-byte at the end). R is returned as the depacked length of the file, or 0 if the file was not packed or didn't exist. e.g. 10 F$=fileselect$("*.*","Select a file",4) 20 if F$="" then end 30 F$=F$+chr$(0) 40 SZ=real length(varptr(F$)) 50 if SZ=0 then print "Not packed!" : end 60 print "Depacked size is";SZ BANK LOAD fadr,adr,num BANK COPY adr1,adr2,num These two commands are for use with Missing Link file-banks. File-banks are special archives in which you store all of the data files which you would normally have lying around on the disk. For example, you might have 20 maps for a game, so rather than have 20 seperate files, you could make up a file-bank which would hold them all in one large file. As well as cutting down the number of files needed for your games, this will also speed up the loading quite considerably. BANK LOAD. This is the version which will load files from the bank from a disk-based file-bank. FADR is a pointer to the filename, ADR is the address to load it to and NUM is the file-number to load from the bank (starting at 0). BANK COPY This version was written to make writing memory enhanced versions of your games. It will "load" a file from a bank which has been previously BLOADed into memory. ADR1 is the address of the file-bank, ADR2 is the address to load it to and NUM is the file number to load. e.g. 10 reserve as work 10,free 15 F$="MY_BANK.BNK"+chr$(0) 20 bank load varptr(f$),start(10),4 30 bload "MY_BANK.BNK",start(10) 40 bank copy start(10),physic,6 r = BANK LENGTH (fadr,num) r = BANK SIZE (adr,num) These commands are for use in conjunction with the two commands above. They will return the length of an individual file from a file-bank. BANK LENGTH is for use with disk-files. FADR is the filename and NUM is the file number to check. R is the filesize. BANK SIZE is for use with file-bank which are already in memory. ADR is the address of the bank and NUM if the file to check. R is the filesize. e.g. 5 F$="MY_BANK.BNK"+chr$(0) 10 L=bank length(varptr(F$),4) 20 reserve as work 10,L 30 bank load varptr(F$),start(10),4 40 erase 10 50 reserve as work 10,10 60 bload "MY_BANK.BNK",10 70 L=bank size(start(10),5) 80 reserve as work 11,L 90 bank copy start(10),start(11),5) The BANK commands provide for a great improvement in games and programs of all descriptions. We hope that they will mean an end to STOS games with hundreds of .MBK files lying around the disk which can cuase people with single drives a great deal of trouble to copy. If you are using STOS 3D then you can turn all of your 3D files and surfaces into one big file-bank by cheating somewhat. You will have to install a small ramdisk, the size of the largest 3D file in your bank. Then BANK LOAD the file you want into memory, BSAVE it into the ramdisk and then TD LOAD it back in! Complicated, but it sure cuts down on the number of files! Sound commands - DIGIPLAY md,sadr,sz,freq,lp The DIGIPLAY command is used to replay sampled sounds. It takes less processor time than Maestro and covers quite a few of its commands in one. MD is the mode - 1 is on/0 is off, SADR is the address of the sample, SZ is the size of the sample (see note below), FREQ is the frequency (3-25Khz) and LP is the loop flag - 1 is on/0 is off. If the sample plays through it's whole length, then it is automatically stopped by the routine, except if the looping is turned on. e.g. 10 bload "sample.sam",back 20 digiplay 1,back,32000,10,1 30 repeat : until inkey$=" " 40 digiplay 0,0,0,0,0 If the length (SZ) is less then 50, then the program will assume you are using a digiplay sample-bank. You can make these using the supplied utility to hold up to 50 samples in one file. SAMSIGN sadr,sz SAMSIGN is used to convert between signed and unsigned sample formats. This is especially useful if you have something like Master Sound 2 where you normally have to press CTRL-S before saving the sample out to use it. SADR is the address of the sample data and SZ is the length of the sample. e.g. 10 bload "sample.sam",back 20 samsign back,32000 r = MUSAUTO (adr,num,size) The MUSAUTO command is to play "good" music back from STOS on interrupt. ADR is the address of the music file, NUM is the music number to play (if available). Pass NUM as zero to turn the music off. SIZE is the size of the music file. The value returned signifies the type of music, as defined here: 1. Mad Max 11. Megatizer 21. Nexus 2. Count Zero 12. Synth Dream 3. Lap #1 13. Big Alec #2 4. Lap #2 14. Ben Daglish 5. Big Alec #1 15. Lary 6. Ninja Turtle 16. Reserved 7. Zound Dragger 17. Reserved 8. TAO (chip #1) 18. Lap (1 scanline) 9. Titan 19. TAO (digidrum) 10. LTK 20. TAO (chip #2) e.g. 10 reserve as work 10,50 20 F$=fileselect$("*.MU?") 30 if F$="" then end 40 open in #1,F$ : L=lof(#1) : close #1 40 bload F$,10 50 N=musauto(start(10),1,L) 60 wait key 70 N=musauto(0,0,0) 80 goto 20 This command was added due to the number of people who registered for the Misty extension and who asked for a command to do this sort of thing. I hope you're all satisfied! MUSPLAY adr,num,offset - If you want to play a bit of music which MUSAUTO doesn't recognise, then you can use MUSPLAY instead providing you know what the play offset is. It is also useful for doing sound effects in games as it doesn't have to work out the music type and hence doesn't take as much time to initialise as MUSAUTO. ADR is the address of the music file, OFFSET is the play- offset (ie 8 for Mad Max) and NUM is the music number. To turn the music off, pass NUM as 0. e.g. 10 reserve as work 10,50 20 bload "COUNT_0.MUS",10 30 musplay start(10),1,6 40 repeat : until inkey$=" " 50 musplay start(10),0,2 Joystick commands - P ON P STOP d = P JOY (n) d = P UP (n) d = P DOWN (n) d = P LEFT (n) d = P RIGHT (n) d = P FIRE (n) All of these commands are for accessing the twin-joystick driver. P ON/P STOP is used to initialise and turn off the driver. P JOY is used to read the joystick in port N (0 or 1). D is returned in much the same format as the STOS command "JOY". P RIGHT, P LEFT, P UP, P DOWN an1d P FIRE are used in the same way as JLEFT, JRIGHT, FIRE etc. N is the port to check (0 or 1). D is returned as true or false. e.g. 10 p on 20 print "press RIGHT on the joystick" 30 repeat 40 until p right(1) 50 p stop Miscellaneous commands - l = DEPACK (adr) The DEPACK command will depack data-files packed with any of the common packers around. It currently depacks the following packers: Atomik v3.5 Ice v2.4 Fire v2.2 Automation v5.1 Speed v2.0 Speed v3.0 ADR is the address of the packed file. L is returned as the length of the depacked file or 0 if it was not packed. The data is depacked on top of itself, so make sure you have enough room at the end of the work-space! e.g. 10 bload "packed.dat",back 20 L=depack(back) 30 if L=0 then print "Not packed!" : end 40 print "depacked size is";L d = COMPSTATE COMPSTATE will return the current state of your program - compiled or interpreted. This can make life much easier when you are writing or debugging programs. For instance, maybe you only want a game to display 10 sprites when you run it in BASIC but 20 when compiled, or perhaps you only want to play music in the compiled version of a demoscreen. D is returned as TRUE if the program is compiled and FALSE otherwise. It is possible to check if your program is compiled to GEM by using the "hidden" command in the compiler extension "COMPAD" which will return a negative number if the program is compiled to GEM. e.g. 10 if not(compstate) then print "In BASIC" : end 20 print "Compiled!" RELOCATE padr RELOCATE will make alter an executable program to run from any given address. Normally STOS will only let you CALL a program if it is reserved as a program bank. With RELOCATE you can load the program to any address or bank and still call it. PADR is the address of the program to relocate. e.g. 10 bload "my_prog.prg",back 20 relocate back 30 call back+28 r = BOUNDARY (n) BOUNDARY will round a number down to its nearest 16-pixel boundary. This is very useful for restoring sprite backgrounds. It is much, much quicker than the STOS "X=X/16*16" equivalent. N is the number you wish to round down. R is the rounded number. e.g. 10 home : print boundary(x mouse);" " 20 wait vbl : goto 10 r = OVERLAP (x1,y1,x2,y2,wd1,hg1,wd2,hg2) The OVERLAP command provides for a fast way of checking collisions between to rectangular blocks. X1,Y1 is the top-left of the first rectangle, X2,Y2 is the top-left of the second, WD1,HG1 is the width and height of the first rectangle and WD2,HG2 are for the second. e.g. 10 repeat 20 if overlap(x mouse,y mouse,144,84,16,16,32,32) then bell 30 until mouse key=1 REBOOT n This was originaly called 'cold boot; but STOS turned it into col DBOOT when you entered it! It will reset the machine and clear everything including ram-disks and reset-resident programs. e.g. 10 reboot 0 There is a double check where the program asks if you want to proceed but if you want to skip this then pass 'n' as $ABCD. e.g. 10 reboot $ABCD And Finally - We would like to thank the following people: Paul for giving us his sample-replay routine. Neil Stewart for his tricks, tips and help (I don't know, texture-mapped 3D screensize truecolour cubes at 50Hz... STOS could beat that any day... Well, if you removed the texture-mapped 3D cube part anyway...) Douglas Little for the all the same reasons (oh, and for lending Colin a meg machine!). Mark of Dimension Zero (If I remember correctly) for his exquisite Top Notch logo. All of those who registered for the Misty Extension - without your support for Misty, this extension would never have been released. (do you know that out of the few hundred registrations we got, there were no females whatsoever? So either there are a lot of dishonest women out there or very few female STOS coders... I wonder which...) Everyone who we know and converse with whenever possible, without whom life would (quite enjoyable?) incomplete, who are: Waldo, Patrick, Agrajag, Graham, Leon (stop mucking up my doc files!), Chris, Eddie, Robert, Neil (TYG), Bruno, Iain and Peter of Phoenix PD (I hope everythings going well with the new stall - I'll try and get in to see you some time, work allowing (sigh)), CP-3-67, Darren of Income PD and finally Twylyte (sorry none of your graphics were used, but they haven't arrived yet...) And special thanks go to Grazey of the PHF who unwittingly helped by ripping of lot's new music drivers which were subsequently placed in the MUS AUTO command. Keep up the good work! (GSR is great! Who'd ever have thought something so useful would come out of Hull?!) - - - - - - - - - - - - - - - - - - - - - - - - - - Registration Form - - - - - - - - - - - - - - - - - - - - - - - - - - Please note that you do not have to fill this in apart from your name and address. We would however appreciate it if you do fill out as much as you can as it makes our life easier when replying to you. We would especially ask people who registered for Misty to fill in the relevant part of the form. The information will NOT be held on a database as it proved too much work! Please don't put any "funny" answers! I don't think I could take any more "Sex: Yes please!"... Name: _F Address: _F _F _F Phone Number: _F Sex (hmm, I wonder...): _F Age: _F Date: _F Are you a Misty Registree? _F Are you in a programming group, and if so what is it called? _F What do you program? _F Do you have any ideas for improvements for existing commands or any ideas for new ones? _F _F _F mmmmmmmmmmmmmmmmmmLionpoulosba0 (> It's a good idea to save this as(> a .CMP file file you've got the> Compiler... ͦ:::::Z #WID(),#HIG(),"LE(),"IM(),#JIM()0 :> Remove this if you've no Compiler <4"IM():#WID(),w,p*LDD:MAK:SAVM$:MC (&2(MC)M$,,*<M2$,FLAG:MC2 F0P(MC,MC2)M2$,,,Z(FLAG)(MC,MC2)$dM2$,FLAG:MC2nM2$QQQxM$:MCM$QQQ$::,:,w,p:&,X,, (TT: DESK ABOUT...,ȠINFO.,ҠQUIT.,ܠQQQ,栦 MAKE   PICTURE...,  BOBS.,  JOEYS.,  W.BLOCKS..,  L.BLOCKS..," empty., , TILES., 1 DIGIBANK..,6QQQ,@ LOAD J PICTURE..., T SPRITES...,^ MAP.DATA..,hQQQ,r SAVE  | PICTURE...,  BOBS.,  JOEYS.,  W.BLOCKS..,  L.BLOCKS.., MAP.DATA..,  TILES., QQQ,̠QQQ֠ۊ>܊> DESK <݊ ,L,?>@> MAKE <A>X, , , ,,,,|>> LOAD < ,@,>> SAVE < 8 @,, , l, ,!4,!> ..ABOUT.. <6蠁:,,,(,,, ABOUT  :*:The Missing Link Convertor,:(C) 1993. Top Notch Software6$::%This program will convert to and from0.:!the various file formats required$8:by The Missing Link.0B::Remember - The Missing Link isD: SHAREWARE!0E:::Press any key or mousebuttonF:G:IJ> ..INFO.. <K6L:,,,(,,,Q INFO R V:.`:The Missing Link is a SHAREWARE6j:&extension for STOS. I can only assume0t"that you already know what it does0~: and how to register, but just in4:%you are using an unregistered version2:#you can register by sending 10 to:6::$Colin Watt, Billy Allan, 4:$14 Lanrig Place, 66 Highmains Ave,4:$Muirhead, Dumbarton, 4:$Scotland. Scotland. 4:$G69 9AT. G82 2PT. .::Press any key or mousebutton::> ..QUIT.. < :يڊ> ..LOAD PICTURE.. <ۊLܠ:F$(*.*, Load a picture (NEO,PI1,PC1,MBK),)&F$"G$(F$,)(G$:G$(F$,)` G$NEOG$PI1G$PC1G$MBK:j:G$PC1zF$,:,"()}:,():;G$MBKF$,:(())c:::,::;F$,";:LDD:=>> ..LOAD SPRITES.. <?@@:F$(*.MBK,Load some sprites,)&JF$"TG$(F$,)(^G$:@4h(F$,)MBK:@FrF$,:(())::@|LDD:> ..LOAD MAP DATA.. <@:F$(*.TNM,Load some map data,)&F$"G$(F$,)(¢G$:4̢(F$,)TNM:2֠#,F$:L(#):#0ࠨ:,L:zF$,LDD:͊Ί> .. MAKE PICTURE .. <ϊ6Р:():: NS(())2ߨ():X:Y:LT(NS,):,X,Y,T:H,X,Y,X,Y,X,YVXX:X0X:YY TDA(()):A,A ()}*:::   Š> .. MAKE BOBS .. < Ê ĊX ɠ:()NS(()):::. ӊcurs off : click off : key off : mode 0 ؠ,pr ݢ"IM()N:"IM(N):#JIM(N):N  , 砰:() ^ NS(()) NNS:ZZ(()((N))):#WID(N)(ZZ):#HIG(N)(ZZ) NB LE&(NS):NNS STLE #HIG(N):IMLE((#WID(N)))STLE:SPLE((IMLE"IM(N)) )STLEB "LE(N)SPLE:LELESPLE:N :,LE (),8H  (),NSD C(()):C,C ()P AD&(NS):CO&:NNS^ #()CO,AD:ADAD"LE(N):COCO:N0 (SN:NNS& -XI("IM(N))( 2STLE #HIG(N)> 7IMLE((#WID(N)))STLE@ <()CO,#WID(N):COCO@ A()CO,#HIG(N):COCO@ F()CO,#JIM(N):COCO8 K()CO,IMLE:COCO8 P()CO,STLE:COCO( UOXI$ Z,O,,SN:R _TWID#WID(N):OTWIDTWID4 dX(TWID)P iY#HIG(N):T(Y)X4 nA1(T):A2(T) sA3(T):A4(T):AA1A2A3A4:A(A):TP,A:TR,A:A(TP)z x()CO,A:COCO:T,T()CO:COCO }Y:X O:SN:N : ** ** Menu **: ,,,, ,,:: :  Make BOB data images quit :. Y:M:M8 õY:Y , , , , Y Ș  ͘ NS(())   :   0 (): ^ A(())2 I::,:images sprite  copy to ALL endF ",:"IM(I); :,,,I:" ',:I; R ,:M:Y:MYY~ 1YM"IM(I)"IM(I)"IM(I):#JIM(I)~ 6YM"IM(I)"IM(I)"IM(I):#JIM(I)B ;YMIID @YMINSI EYMTI"IM(I):TJ#JIM(I):NNS:"IM(N)TI:#JIM(N)TJ:@,:@,:N. JY::: * ON::N T " Y4 ^::@,::@,:   > .. MAKE JOEY .. < F ** This prorgam makes up the data for `joey` one plane sprites. ** for use with The Missing Link part 2 Š **X Ǡ:()NS(()):::r Ѣ"IM()N:"IM(N):#JIM(N):N ֘ ( ۢ() /$ ࠰:NS(()) NNS:ZZ(()((N))):#WID(N)(ZZ):#HIG(N)(ZZ) NB LE&(NS):NNS STLE#HIG(N):IMLE((#WID(N)))STLE:SPLE((IMLE"IM(N)) )STLEB "LE(N)SPLE:LELESPLE:N :,LE (),8H  (),NSD C(()):C,C ()P AD&(NS):CO&:NNS^ ()CO,AD:ADAD"LE(N):COCO:N0 SN:NNS& !XI("IM(N))( &STLE#HIG(N)> +IMLE((#WID(N)))STLE@ 0()CO,#WID(N):COCO@ 5()CO,#HIG(N):COCO@ :()CO,#JIM(N):COCO8 ?()CO,IMLE:COCO8 D()CO,STLE:COCO( IOXI$ N,O,,SN:R STWID#WID(N):OTWIDTWID4 XX(TWID)P ]Y#HIG(N):T(Y)X4 bA1(T):A2(T)f gA3(T):A4(T):AA1A2A3A4P lTP,A:TR,A:A(TP)6 q()CO,A:COCO vY:X {O:SN:N : ** ** Menu **: :,,,, ,,: : Make JOEY data  images quit :. Y:M:M8 Y:Y , , , , *   Ƙ  ˠ:  И 0 բ(): / A(())2 I::,:images sprite copy to ALL endF ,:"IM(I); :,,,I:" ,:I; R :M:Y:MYY~ YM"IM(I)"IM(I)"IM(I):#JIM(I)~ YM"IM(I)"IM(I)"IM(I):#JIM(I)B YMIID YMINSI YMTI"IM(I):TJ#JIM(I):NNS:"IM(N)TI:#JIM(N)TJ:@,:@,:N. Y::: * N::N %  *:4 /::@,::@,:   > .. MAKE BLOCKS .. < J ** this program makes the blocks for the bi-directional map command: ::()::$ IM:SHIM $L :A():A:$ IMSIM@ AM(()):LEAMIM6 ϢLE:$& Ԡ:,LE( و(),y8h އ(),SHIM& (),(AM)F :A(()):A,A () ** ** make blocks CO(:J XIMSIMS:NAM",X,,N:TX:Y:TY:(TTX),(TTX)()CO> COCO:Y:TX:N:X::  **  ** ** MENU*$palette 0,$733 : get palette (logic)6),,,, ,,:.:3 make blocks8=imagesBquitG ,:IM2L::M:Y()QM*VY`, ,e,j[:`LeLnjMIMIMIM:SHIM:N::NnoMIMIMIM:SHIM:N::N"t ,:IM; yL~ ** err`A(@)::@,::N ::N:@,A:&> .. MAKE LANDSCAPE BLOCKS .. <D ** this program makes the blocks for the vertical map command:::()::DMML:A():Az:<AM(()):LEAM:6LEz:<:,LE(:D(())(),L(),IM&Ƈ(),(AM)@ˠ:A(()): A,(), Њ **Պ ** make blocksCO(:"ߝNAM",X,,N:\Y:TY: (T),()CO,,COCO:Y:N::  **  ** ** MENU,3:(): ,,,, ,,::: make blocks quit2%::M:Y()*M$/Y9,9,4:9%Mp%u ** err`zA(@)::@,::N ::N:@,A:> .. MAKE TILES .. <6:()::(:Sprite to Tile convertor,,:16x16 sprites only! AM(()).LE(()AM)& ⠨:,LE6(),= g:(),AM>A(()): A,(), J CO&:NAM:X<,X,,N:,X,,NJ,X,,N:,X,,N:z(Y:TY: T,()CO,:COCO:Y2X:N<yz> .. make digibank .. <{ |:,VMXSAM2Š̠ ,T$ Lionpoubnk.࠮(T$),(T$) ( )4( ) , :( ),F@&: : ,F:( )( )MXSAM,( ),X6NS:H(MXSAM)"&CS:FR 20,,,, ,,:::D"Nsample-bank creatorXblT:T$ v$,T:T$T$:TT$QQQ V()&Y():MPƄ(VV )(MYY )(ТMVYHڧV ,,,j,,,@,b,4䠧> LOAD A SAMPLE <, NSMXSAM:f6F$(*.*, Load a sample,)& F$f2*#,F$:L(#):#&4LLZ>NS:( )NS,H:( )NS ,LH( ),NS RzF$,( )H\HHLf:pz> SAVE A SAMPLE <*NS: : save which sample?h6F$(*.*, Save a sample,)&F$\OFS(( )CS):SIZE(( )CS )BԠ{F$,( )OFS( )OFSSIZEޘ:> LOAD A SAMPLE-BANK <<F$(*.MBK,Load a sample-bank,)&F$B2#,F$:L(#):#($LF:BV.F$F$():R((F$),( ),,L)r8NS(( )):H(( )NS)(( )NS)B:LV> SAVE A SAMPLE-BANK <`*jNS:<tF$(*.MBK,Save a sample-bank,)&~F$L(LH:( ),NSXSIZE(( )NS)(( )NS)8( ),SIZE:( ),*{F$,( )( )F$F$()8R((F$),( ),,SIZE)ؘ:> ERASE A SAMPLE <*NS:  : erase which sample?h$(,: sure (y/n)?:2:G$():G$YG$N&<G$N(FCSNSdVP( )NS,:( )NS,Z4dS10( ):S106S10|nOFS(S106CS):OFS2(S106CS):OFS3(S106NS):xOFS3OFS3(S106NS)0SIZE(S106CS)BS10OFS2,S10OFS3S10OFS`S106CS,S106MXSAMS106CS*TCSNSDS106T,(S106T)SIZE TNSJH(S106NS)(S106NS)Ҙ:܊> ERASE BANK < : sure (y/n)?::G$():G$YG$N&G$N,"" ::,:6"@ ::JT> CHOOSE NUMBER <^hNS,r,:CS; ::: |G$:M2G$ MMG$ 0MCSCS2MCSNSCSrŠ̊֊"ࠦ1.load a sample"ꠦ2.save a sample"3.load a bank"4.save a bank"5.delete a sample"6. clear bank"7.exit"&8.play a sample"09.(un)sign sample:QQQDN> PLAY A SAMPLE <X*bNS:: l: vplay which sample?h*,:which frequency?,,:FR; ::: G$:M2G$ MM&G$ 0ƢMFRFR0ТMFRFRژ\OFS(( )CS):SIZE(( )CS ).,( ),CS,FR, : . ,( ),CS,FR,*:4>>> (UN)SIGN SAMPLE <H>*RNS:: \:"fchange which sample?ph\zOFS(( )CS):SIZE(( )CS )&( )OFS,SIZE:=>> .. SAVE PICTURE .. <?F@F$(*.*,Save a picture (.NEO or .PI1),)&JF$PO(F$,)NEO(F$,)PI1:@@Q(F$,):@*T:::():^F$h::> .. SAVE BOBS .. <4TT$Save the BOB data:#(  > .. SAVE BOBS .. < 4 TT$Save the JOEY data:#( i j> .. SAVE W.BLOCKS .. < k8 lTT$Save the WORLD blocks:#( ͊ Ί> .. SAVE L.BLOCKS .. < ϊ< TT$Save the LANDSCAPE BLOCKS:#(!1!2> .. SAVE L.BLOCKS .. <!3*!4():(())RTWLD񸢛WLD!H:Please wait...:!MWLD()() .. SAVE TILES .. <!0!TT$Save the TILES:#(!#% #&> .. MISC ".MBK" SAVE .. <#'*#(():.#2F$(*.MBK,TT$,)&#<F$4#F(F$,)MBK:#2d#P(F$,)():Out of disk space!::#2#ZF$,#d&^DD|$$@$$}lDDl|Zmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmm MAKE. v1.0. 1.1 INFO The make utility is designed to make conversion between the different Missing Link graphic and data files as easy and convenient as possible. The program assumes that you are not a complete idiot, and so doesn't take kindly to idiotic things being done to it, but it works ok as long as you treat it nicely. 1.2 SPECIFICS Several of the MAKE options refer to the number of "images" which you wish to have. This term may need to be explained to some of you, but if you know what it refers to, then you can skip to section 2.1. The ST's screen is broken into vertical "strips" of 16 pixels. The reasons for this are too involved for discussion here, but I hope you can just my word for it. Anyway, these "strips" mean that all sprites and graphics in general have to be placed with their X co- ordinates on boundaries of 16 pixels, hence the limitations on commands such as SCREEN$ and BLIT. The problem with this is that in order to draw something on screen which isn't on a boundry of 16 pixels we have to scroll the image along by a certain amount before displaying it. Therefore a sprite which is displayed at co-ordinates 165,100 has actually been scrolled 5 pixels to the right then displayed at 160,100. STOS sprites do this in "real time". So every time you draw a sprite it is copied into a buffer in memory, scrolled right by the desired number of pixels then copied back onto the screen at the nearest 16 pixel boudary. This has the advantage of taking up very little memory, but it does take up a lot of the computers time to scroll the sprite around all the time. Missing Link uses a technique called "pre-shifting" for it's graphics however. This means that instead of scrolling the image in "real time" we scroll all possible "shifts" of the image beforehand, eliminating the need to copy the image into a buffer and scroll it. This has the advantage of being extremely fast, but it takes up a lot of memory to hold all of the scrolled images. So, to cut down on the amount of memory used we don't hold images of all 16 possible "shifts" of the image. We can store 8, 4, 2 or even just 1 image. Of course, the more images one holds, the smoother the movement which can be achieved. Say for example we had a game where a central sprite stayed in the middle of the screen moving only vertically (some sort of "defender" game I suppose). Why hold 16 images of the sprite? Holding only one takes up only 1/16th of the memory and results in no loss in quality. The number of images required can become more complicated however. Say you had a game which was scrolling horizontally at 4 pixels. You would obviously hold 4 images of the background blocks (16/4=4), but what about the sprites moving over the top? If your sprites are all going to move in steps of 2 pixels then you will have to hold 8 images of them, but what if they are moving in steps of 16? You> would have to hold more than one image because your landscape will be moving out of sync with the sprite, so you would have to hold 4 images to make sure it always looked ok when moving over the background! The easiest way to work all this out is to try things out. If they don't look right, then try something else. Remember - practice makes perfect! 2.1 THE PROGRAM PROPER The program has four drop-down menus. These are - Desk, Make, Load and Save. 2.2 Desk The Desk menu contains the normal stuff - Information on the program and the Quit option. 2.3 Make The Make menu has sevaral options which I'll go through one by one. 2.3.1 BOBS. This will convert a STOS sprite bank into a BOO bank as required by the BOB command. After you select it you will be taken to a new screen with three options. The first of these is MAKE BOBS which will actually create the data for the BOBS. Next we have IMAGES. After clicking on this you will be taken to a further options sreen. Here you can move through the different sprites and choose how many images of each you wish to store. If you want the same number images for all of your sprites then you can click on COPY TO ALL with both the left AND right mousebuttons simultaneously. Click on EXIT once you have finished. Lastly is QUIT. This will take you back to the main menu. 2.3.2 JOEYS. This is exaclty the same as the BOBS option (2.3.1) except it creates JOEY data. 2.3.3 WORLD BLOCKS. This will create the data required for the WORLD command. It has three options. MAKE BLOCKS is first. This will make the data for the blocks. IMAGES is next. Use the left/right mousebuttons to increase/decrease the number of images you want to make. QUIT will take you back to the menu. 2.3.4 LANDSCAPE BLOCKS This will make the data for the LANDSCAPE command. It has two options. MAKE BLOCKS will create the data. QUIT will exit to the main menu. 2.3.5 PICTURE This will turn a sprite bank into a picture. It assumes your sprites are 16x16 pixels. 2.3.6 DIGIBANK This will allow you to create a DIGIBANK for use with the DIGIPLAY command. It has sevearl options. LOAD SAMPLE will allow you to add a sample to the bank. SAVE SAMPLE will let you save out a sample from the bank. LOAD A DIGIBANK will let yuo load in a previously saved bank. SAVE A DIGIBANK will save out the current bank. CLEAR BANK will delete the current bank. DELETE SAMPLE will delete a sample. PLAY SAMPLE will play a given sample. (UN)SIGN SAMPLE will let you convert between the signed and unsigned samples. EXIT will take you back to the main menu. 2.4 Load Load will let you load in either STOS sprite banks or map- data. 2.5 Save This will let you save out the files you have created with MAKE. 3.1 OTHER MAKE-RELATED PROGRAMS 3.1.1 Grab.bas The grab program will grab a series of sprites from a picture. This is much easier than grabbing them with the grab option from the sprite editor. The only thing which really needs pointing out is that you have to click on MAKE SPRITES twice. Apart from that you're on your own! 3.1.2 Makefbnk.bas This makes up file archives for use with the BANK XXX commands. It reads in an entire directory, then allows you sort them into the order you reqire them and save out a ".BNK" file. As the sort option is rather poor, the easiest way to get your files in the correct order is to copy them into the directory in the order you want them to be in the archive. In the registration package there will hopefully be a better version of this program more along the lines of the MAKE DIGIBANK option (2.3.6), but we don't have the time to write it at the moment, so you'll have to make do! mmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmtLionpoulos j j= ::ͦ:&SF$(d),"LE(d): F$(*.*,Select source directory)4( SD$:\: MSK$@2( F$,.)MSK$(F$,)B< MSK$. MSK$ MSK$.*"F MSK$* MSK$LP F$(*.*,)Select destination directory and filename)Z F$:*d F$:\ F$iReading filenamespnCO:T$(SD$MSK$,):CO:SF$(CO)(T$,, )sT$:ZxT$:T$:CO:SF$(CO)(T$,, ) T$: :,OS((CO)) Reading file lengthsLEOS:NCO:#,SD$SF$(N):"LE(N)()::"LE(N)"LE(N).LELE"LE(N):N$LE()::f:,LE:T$FBNK:(),((T$)):(),COConstructing BankOC:NCO:()OC,OS:()OC,"LE(N):OCOC:zSD$SF$(N),()OS:OSOS"LE(N) N áSaving finished Bank,Ƞ{F$,()()LEҠ::2  ,,,P,,, ̠:"  X: Y ۫:" TCO( X,Y:SF$(T);F Y:YY:XX  T^ ,:DSort files with mouse. Press SPACE to continue or any other to abortR m: X: Y: M: zG$: M zG$ ! zG$  & zG$:$ 0 rX1 X: jY1 Y 5 6: :f D bOWD ZWID: ROX X: JOY Y: X: Y: ZWIDo: M4 F YY( G XXZ I( Xpp) ZWIDWID(Xpp)h N Xpp, Y Xpp ZWID, Y Xh b ROXpp, JOY ROXpp bOWD, JOY l M$ v BX2 X: :Y2 Yh  2ENT1( rX1p)( jY1): (ENT2( BX2p)( :Y2)>  2ENT1 CO (ENT2 CO: 4  2ENT1 (ENT2 2ENT1, (ENT2.  2ENT1 (ENT2: " T$ dSF$( (ENT2)6  T (ENT2 2ENT10 dSF$( T) dSF$( T)  T0 dSF$( 2ENT1) T$: mmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmLionpoulos^^= **$ ** Example of mozaic command  **(::ͦ::22()tile.mbk,<A(())FTPX:Y:,(),,,,@,,X,YU,,,,*ZZ$:Z$ :d::SxPmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmm)Lionpoulos= **$ ** Example of musauto command  **(::ͦ:42F$(*.mu?,load some music)<F$^FL((F$)):L#,F$:L():#P:,L,ZzF$,:D(())*dA((),,L)pnA$ Music is type(A) see manual for details.( )Press any key.()*x,,(A$),,*,,(A$),,w:(A((),,)2mmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmLionpoulos= **& ** Example of palsplit command  **(::ͦ::<2 ,`:( )( )( ),J<::CLAD( ):,CLAD,,P,fFN:CLAD,N:F::F:NlPN:CLAD ,N:F::F:NZN:CLAD,(N):CLAD ,(N):CLAD@,N:F::F:NdNCLAD@,N:F::F:N:,,,,mmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmLionpoulos= **" ** example of spot command  **(::ͦ::62SPAM>SPAM$319 then X(T)=0 80 next T 90 goto 50 A bit contrived I grant you, but you get the idea. Now we can re-write line 70 in assembly with extreme ease, which should speed the loop up considerably. As you know, STOS provides us with the DREG(x)/AREG(x) arrays for access to the 68000's data and address registers. We can use these to make interfacing with assembly really easy providing we know how STOS holds it's variables. I will restrict myself to integers here as these are the most common type of variable you will have to deal with. A simple integer variable is held as one longword in memory. An array of integers is held as a continuos block of longwords. As we want to actually modify the variables we have to pass thier address to our assembly program, so to do this we use the VARPTR command. So, for instance, varptr(X) gives the address of the variable X and varptr(X(0)) gives the address of the array X() (notice that the SORT command needs "sort Q(0)"!). So, if we go back to the example program, this is the line we want to change to assembly: 70 X(T)=X(T)+4 : if X(T)>319 then X(T)=0 As we know how to get the address of the array this becomes very easy to do using the AREG array. ; "line 70" in 68000 ; start: move.l #99,d0 ; ie, size of the array moveq.l #4,d1 ; amount to add to each element loop1: move.l (a0),d2 add.l d1,d2 ; add to array element cmp.l #319,d2 ; if X>319... ble.s next1 moveq.l #0,d2 next1: move.l d2,(a0)+ dbra.w d0,loop1 ; loop d0 times rts ; and back to STOS To integrate this in STOS we would change our program to something like this (having loaded our assembled program into memory bank 15): 10 dim X(99),Y(99) 20 for T=0 to 99 30 X(T)=rnd(319) : Y(T)=rnd(199) 40 next T 45 areg(0)=varptr(X(0)) : call 15 50 for T=0 to 99 60 plot X(T),Y(T) 80 next T 90 goto 45 Line 45 is where we call our assembly routine. Using this assembly routine to handle the array is at least 8 times faster than it's STOS equivalent! We could make the assembly routine more general purpose by removing the two lines from "start:" and passing these using DREG(n) which would men the routine could handle any size of array and any size of addition. I hope this little doc has been of some use to you. Providing you know a little assembly it is very easy to write large parts of the average main-loop, and therefore speed up your games by many times. If you don't know any assembly language then I strongly advise you to learn some! You'll be surprised how easy it is to learn and at what a difference it can make to your programs! mmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmLionpoulos= ::ͦ::2()tile.mbk,2()bob.mbk,,(,,@,,,2A(())$>* Acc""AAAAU*>>*  11`` qqq     11`` qqq    @0`0`H888@@??????PU   @0`0`H888@@??????PU    ` `@00$Hppp  ????*@@  ` `@00$Hppp  ????*@@ 00  $888??T@@ 00  $888??T@@    PP@@@@@ @   PP@@@@@ @UߨPpppp P UߨPpppp P DDǪT||(88T88( DDǪT||(88T88( Acc"A"AAUA*>>* Acc"A"AAUA*>>*  11`` qqq     11`` qqq    @`0`0H888@@??????UP   @`0`0H888@@??????UP   $6GwTC2 2Cds??Çß@@*??? ?ppp 00H$ ` ` @4:F$hmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmm LionpoulosNN= ::ͦ::" ** Example of world command  **4(() world.mbk,62() worldmap.mbk,2<()bob.mbk,FA(())PSP,Z,,@,,,,d,,@,,,>nX:Y:BX:BYd(xLW((),, )(LH((),,) ** ** Main loop ***Z$:Z$ :AȢA((),XBX ,YBY):AXXSP:XLWXLW`ҢA(),XBX ,YBY,:AܢA((),XBX,YBY):AXXSP:XXZA(),XBX,YBY,:A𢸦A((),XBX,YBY):AYYSP:YY:BYBY:BYBYfA(),XBX,YBY,:AA((),XBX,YBY):AYYSP:YLHYLH:BYBY:BYBYXA(),XBX,YBY,4,(),(),X,Y,0",(),,BX,BY,c,::mmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmLionpoubnkAy8h$6GwTC2 2Cds? H$@ Ms!-x ,?@c`~''' e|6_? ~? P@ d0d~@    \@ @ @? %!cq}aaG1F d}~#a n} \+C_ [cYsaaD'5L/@ ?N}~s ~[g!#4HM!0C  ?Lb!A{={Gke/9)W @@U{9ycw+{3oKsKeQUss 4 0,L ۹ =  ,U͞? @>>:3?.3)_SqLLv9)Yg{ ľOPPBkݖ3';O33׉pXj'VF I׮Pp@:B,L »!=( =#=34s3434$$$]t]]=u]_}Wߴ]w}wtv][}]]}v߆]FL ]~߀iN9N߀׳pg/PP#f"Noff?@@n?[]~}]ƾ|_w݄]W445넽w|.]34;3535,<@<@xx@00@0XP<(| 0` @@@@@48  ? 8@@@0׀p0000 ? 0  _?/eP )pP`   p@88 h@ @]B@ppp @> `p`7  00P`=p~$p`g         Pm7000gq&p˰00a*`Z @9&/7Ȑ@п?߰00>        p@Bp]_p0 0 r3@`2Q10PP04 2j`$װp0PP        aa0pqpo`0^ ӐWp@Ȁ7pB0 @ 0@ fP` P+70@ߠ0@@            @@0|P S `0/p ~```\ 0c0 0781o           aa0p@@!нc0!sc0c0 p p p?mp-p{kk pp p}p/p-p       @@0+pҀ00P``p3@@?P3@3@Op@@@@P`@p@@p@@wp@@@`аP0@` ```         okk pp ppp p;k+wgg q@0f`" f`f`@      u ߠ00`PPp@@p@@s@@@гP`@p@@p@@p3@@@3P3Pp@@   J@@H q@:|t(8s@? $@!- H Msx ,?'''@c`~e|6 _?~P 0~ ? @dd@  \  @ @ @?q} }#  \+C_ [Y%!caaG1Fd~an} csaaD5L@?N~[g#MC?{=k'/ }s ~!4H!0  Lb!A{Ge/9)W @@U{c{oQs 9yw+3KsKeUs40,L ,U @>>:)_SLLv = ?3?.3q9){ PPBk'Opj'VF IPp@:BYgO3;33,L!==3s33$$$]]]]}]]}]]}] ( #=444t=u_Ww}wtv[vFL ]~iN9Npg/PPN?@@#f"off]}]_]|3;33n?[~|wW445w.]455,<<@xx000 #@@@XP<(|0` @@@@@48?  8@  @@0p0000?  0 _?/e P )FpP`8 8 h  ]B@p@@@ppp> `` 7@p0 =~$p`g 0P`p  m7 gq&a * Z  9 & / 7?  >  P000p00`@@00@B ] _r3 2  Q1 P42j$  ppp0 0 @`0P0 `p0PP a aq  o ^ W  7B  f` +7 0pp`0 p@p0@0@ P P0@0@@ 0 | S 0 / p  ~ ``\    c  78 1 o@@P  `` 000 a a ! c!s cc     ?m-{ kk       }/-0p@@000ppppppppppp 0 +  3?33O@@  w   @@p00P``p@@P@@p@@@@@P`@p@@p@@p@@@`P0@` ``` okk      ; k+wgg   q  f"ff  pppppp@0` ``@u   s   333 00`PPp@@p@@@@@P`@p@@p@@p@@@PPp@@   Hq@:|(8s@@ 7@????,<@<@xx@00@0XP<(| 0` @@@@@48GmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmLionpoubnkRTbd;;;;7    ;        ;      ;;      qmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmm Animation declaration error The ANIM string command has not been properly set. File not open The program is trying to transfer data to or from a file but the file has not been opened. File type mismatch A file command has been used which does not correspond with the correct filing system. The error would occur when you try and use the GET and PUT statements on a sequential file. EInput string too long An incoming string is too long for a dimensioned variable. Or you may have triedto INPUT # a line more than 500 characters long. zFile already open An attempt to open a file is aborted because it is already open. File already closed An attempt to close a file is aborted because it is already closed. End of file The end of a file on a disc has been reached. Input string too long An incoming string is too long for a dimensioned variable. Or you may have triedto INPUT # a line more than 500 characters long. zField too long The size of the record you have created with FIELD is greater than 65535 bytes. It is also possible that you have used more than the maximum of 16 fields. `Flash declaration error The FLASH command has been called incorrectly. Window parameter out of range One of the windows paramters is not valid and must be set to a legal value. Window already opened An attempt to open a window has failed because it is already open. Window not opened You have referenced a window which does not exist. Window too small An attempt to open a window has failed because it is too small. The minimum sizeis 3x3. Window too large A window cannot be opened because it is too big. Character set not defined A character set has been referenced which does not exist. No more text buffer space If you open over 10 windows the size of a full screen in either mode 1 or mode2 then the space reserved for the data in each window gets used up and causes thiserror. TMusic not defined Musi c cannot be played because there is not a tune in memory. System window called The system windows have been used in one of the WINDOW commands. These windows are 0 and 14 and 15. System character set called You have attempted to replace a system character set with a custom character set Character set not found You have tried to access a character set which does not yet exist. Menu not defined The MENU ON command has been called up but no menu has yet been set up. Bank 15 already reserved This bank is already reserved and must be erased if you wish to reserve it for another purpose. Bank 15 is reserved for menus Menus are used in the current program and thus you cannot use this bank for anything else. Illegal instruction When STOS is running a machine code program this error will occur if it finds that the code is invalid. Drive not connected The current drive is not available. Check your leads and power. Extension not present This occurs when you try to run a program which incorporates a new STOS Basic command without loading the relevant extension file first. pSubscript out of range A subscript has been accessed which is not dimensioned to the called size. Here is an example: DIM A$(10):A$(12)="HELLO" Scrolling not defined The SCROLL command has been used but STOS does not have the information necessary to scroll the screen. See DEF SCROLL. {String is not a screen block A string has been used in the SCREEN$ command which has not been designed as a screen block string. Not done A procedure has been attempted but due to some condition the job was not carriedout. Quitting the file selector and returning to the editor is an example of this error. OK > DrawHLOP:(:LINEDRAW:SPMOUSELionpoulos\\= :Loading: ERRORBASE ERORBASE.ACB4:&ERRORBASE v1.0 - (c) MARTIN WRIGHT '92(:' When an error occurs, type: ?ERRN, and:Ayou will be given a number. Select Errorbase from the HELP menu, :)and enter the munber you have been given.:/You will then get information on the problem... 2 :: ,,d,TX,dTY,XSPR,YSPR: ,,d,TX,dTY,XSPR,YSPRjj':'t:OLDXSXS:OLDYSYS:OLDKMKM:KM6oDXX1XS:DYY1YS tXy ,,,dTX,dTY:( ,,d)SP$x~,,,:FIL1,FIL2,::&CURINK(): :LINEDRAW: ,,d,TX,dTY,XSPR,YSPRLionpoulos *P *HP *** B***P *** This is the world fuckin best ASCII ARTIST and TEXT EDITOR ***P( *** on the Atari ST and FALCON computers. ***P2 *** B***P< *** (C) Richard Davey 1994 - July 21st ***PF *** 'Developer Version 1.8 ***PP *** B***PZ *H d:::ͦ:::.n,:,( ):w:: x:::ͦ:::K$JA:B:C:,w,p,7,:::O ASCii ARTiST | TEXT EDiTOR | v1.4 | HELP for the Help Menu | RiCH 94 ::,::: ;; | ;;5 | Edit | CLR-HOME to wipe screen | Shareware ::$ LOOP STARTS HEREȞK$jGX(A):GY(B)::GX,GY(GX2,GY(jGX(A):GY(B)::GX,GY(GX2,GY($K$:K$(K$)N,::: ;; | ;; ::  LOOP ENDS HERE,": >>> QUIT <<<: ,Gx 6b  @,JHl:,TP:,^K:,hM:*r(K$)*|(K$)+*(K$)-*(K$) *(K$)a>*(K$)bz*(K$)c*(K$)d*¢(K$)e.*̢(K$)fj*֢(K$)g*(K$)h*(K$)i*(K$)jZ*(K$)k*(K$)l*(K$)m*(K$)nJ*&(K$)o*0(K$)p*:(K$)q*D(K$)r:*N(K$)sv*X(K$)t*b(K$)u*l(K$)v**v(K$)wf*(K$)x*(K$)y*(K$)z $*(K$)! `*(K$). *(K$)& *(K$)*LƢAHA:CC:BC&ТC0B$K$:K$:, * END OF CHECK KEY,A,B: :B, A,B: :B,A,B: :B, A,B: :B,*A,B: :B,4AA:BC:*>A,B: _ :B*HA,B:/ ._. \:B*RA,B:| |_| |:B*\A,B:| ._. |:B*fA,B:|_| |_|:B,pAA:BC:*zA,B: _ :B*A,B:| ___ ):B*A,B:| ._ \:B*A,B:| |_) |:B*A,B:|_/:B,AA:BC:*A,B: _:B*A,B:/ .___|:B*ʩA,B:| | :B*ԩA,B:| |_:B*ީA,B:\_|:B,AA:BC:*A,B:._ :B*A,B:| ._ \:B*A,B:| | | |:B*A,B:| |_| |:B*A,B:|_/:B,$AA:BC:*.A,B:_:B*8A,B:| _|:B*BA,B:| ._| :B*LA,B:| |_:B*VA,B:|_|:B,`AA:BC:*jA,B:_:B*tA,B:| _|:B*~A,B:| __| :B*A,B:| | :B*A,B:|_| :B,AA:BC:*A,B: _.:B*A,B:/ ___|:B*A,B:| | ._.:B*ĩA,B:| |_| |:B*ΩA,B:\_|:B,AA:BC:*A,B:._. ._.:B*A,B:| | | |:B*A,B:| |_| |:B*A,B:| ._. |:B* A,B:|_| |_|:B,AA:BC:*A,B:._.:B*(A,B:|_ _|:B*2A,B: | | :B*<A,B:._| |_.:B*FA,B:|_|:B,PAA:BC:*ZA,B: ._.:B*dA,B: | |:B*nA,B:._. | |:B*xA,B:| |_| |:B*A,B:\_/:B,AA:BC:*A,B:._. ._.:B*A,B:| |/ / :B*A,B:| / :B*A,B:| . \ :B*A,B:|_|\_\ :B,AA:BC:*ҩA,B:._. :B*ܩA,B:| | :B*A,B:| | :B*A,B:| |___.:B*A,B:|_|:B,AA:BC:,A,B:.__ ._.:B,A,B:| \/ |:B,"A,B:| |\/| |:B,,A,B:| | | |:B,6A,B:|_| |_|:B,@AA:BC:*JA,B:._. ._.:B*TA,B:| \| |:B*^A,B:| |:B*hA,B:| |\ |:B*rA,B:|_| \_|:B,|AA:BC:*A,B: ___ :B*A,B: / _ \ :B*A,B:| | | |:B*A,B:| |_| |:B*A,B: \___/ :B,AA:BC:*©A,B:._ :B*̩A,B:| _ \ :B*֩A,B:| |_) |:B*A,B:| .__/ :B*A,B:|_| :B,AA:BC:*A,B: _ :B*A,B:/ ._. \:B*A,B:| | | |:B*A,B:| |_| |:B*&A,B:\___\_\:B,0AA:BC:*:A,B:._ :B*DA,B:| ._ \:B*NA,B:| |_) |:B*XA,B:| ._ < :B*bA,B:|_| \_\:B,lAA:BC:*vA,B: _.:B*A,B:/ ___|:B*A,B:\___ \ :B*A,B:.___) ):B*A,B:|_/ :B,AA:BC:*A,B:._.:B*A,B:|_. ._|:B*ƩA,B: | | :B*ЩA,B: | | :B*کA,B: |_| :B,AA:BC:*A,B:._. ._.:B*A,B:| | | |:B*A,B:| | | |:B* A,B:| |_| |:B*A,B: \___/ :B, AA:BC:,*A,B:__ __:B,4A,B:\ \ / /:B,>A,B: \ \/ / :B,HA,B: \ / :B,RA,B: \/ :B,\AA:BC:fAF.pA,B: __ __:B.zA,B: \ \ / /:B.A,B: \ \/\/ / :B.A,B: \ / :B.A,B: \/\/ :B,AA :BC:,A,B: __ __ :B,A,B: \ \/ / :B,A,B: \ / :B,ʩA,B: / \ :B,ԩA,B: /_/\_\ :B,AA:BC:,A,B: __ __:B,A,B: \ \ / /:B,A,B: \ V / :B, A,B: | | :B, A,B: |_| :B, AA:BC:* $A,B:._:B* .A,B:|__. /:B* 8A,B: / / :B* BA,B: / /_.:B* LA,B: /_|:B, VAA:BC:* `A,B: _ :B* jA,B: | | :B* tA,B: | | :B* ~A,B: |_| :B* A,B: (_) :B, AA:BC:* A,B: :B* A,B: :B* A,B: :B* A,B: _ :B* ĩA,B: (_) :B, AA:BC:, ةA,B: ___ :B, A,B: ( _ ) :B, A,B: / _ \/\ :B, A,B: | (_> < :B, A,B: \___/\/ :B, AA:BC:   *** HELP SCREEN *** ( 2:,w,w <,:::O ASCii ARTiST | HELP SCREEN | v1.4 | CHOOSE OPTION |  RiCH 94 :: F,N PB BN ZB Welcome to the ASCii ARTiST TEXT EDiTOR N dB BN nB This program is based on the Unix utility called 'Banner' N xB which allowed the user to create their own big text out N B of nothing but ASCII characters and save this for use in N B their own files, bulletin boards, games, etc... N B BN B Known bugs are reported in the BUGGY.BOY file that should N B have come with this program. Instructions are integrated N B BN B Please select an option: "N ȡB BN ҡB F1 - Keyboard Short-Cuts F4 - Shareware notice N ܡB F2 - System Information F5 - Quit help screen N B F3 - Greetings & credits F6 - Work in progress N B B :: ,:F1: ,:F2: ,:F3:',:F4:',:F5:',:F6::2 Ø , , , ,x,   J  */ KEYBOARD SHORT CUTS ":,:::O ASCii ARTiST | HELP SCREEN | v1.4 | KEYBOARD COMMANDS |  RiCH 94 :::,N ,B Key Command Side Effect N 6B Work Screen: 5N @B HELP Enter HELP MENU Erases' screen N JB CLR-HOME Wipe the canvas No UNDO option N TB ESCAPE Quit the program Work NOT saved N ^B - Toggle Palette White on Black N hB + Toggle Palette Black on White N rB * Save Screen N |B / UP Move Cursor Up N B Cursor _| DOWN Move Cursor Down N B Keys | LEFT Move Cursor Left N B \ RIGHT Move Cursor Right N B B w: J */ System information ´:,:::O ASCii ARTiST | HELP SCREEN | v1.4 | SYSTEM INFORMATION | RiCH 94 :::,:MEMMYN ̡B SYSTEM INFORMATION -N ֡B BN B Memory 9. ;MEMMY; bytes8 ;MEMMYB@; megabytesN B BN B TOS Type 7 COS#()0 COS#OS$1.00: &COS#A4VxOS$ 1.2 Blitter6 0COS#A4VxOS$1.6 STE@ :COS#\)A4Vx OS$1.62 STE (Fixed)H DCOS#COS#OS$ Mega STEB NCOS#COS#OS$TT6 XCOS#OS$ Falcon b  l ;OS$ vw: @ */ GREETINGS :,:::O ASCii ARTiST | HELP SCREEN | v1.4 | GREETINGS |  RiCH 94 :::,N B BN B MANY THANKS AND GREETING'S FLY TO:- N B BN B  N B CIH from MAGGIE  Internet N ơB MUGWUMPS (Hi Manuel)  EMAIL ME AT: N СB NEW TREND (Hi Lig Lury)  N ڡB SNOWI  requiem@armory.com N B RINCEWIND  N B JSTER & all at STAFFS Until Oct 95 N B  N B BN B Press any key - w: @ */ SHAREWARE * 4,:::O ASCii ARTiST | HELP SCREEN | v1.4 | SHAREWARE |  RiCH 94 :::,N >B BN HB ASCii ARTiST TEXT EDiTOR IS SHAREWARE N RB BN \B If you use this program a lot and would like to see moreN fB features then register now. Send a cheque or postal orderN pB for 2.00p sterling, a blank disk and 1st class stamp to :N zB BN B RiCH DaVEY, 10 Oak Drive, Portishead, Bristol, BS20 8QS N B BN B For details about what version 2 will contain see 'Work inN B Progress' from the help screen menu (option F6). N B BN B Press any key - w: F ʊ */ THINGS TO COME Դ:,:::O ASCii ARTiST | HELP SCREEN | v1.4 | COMING SOON pg 1 |  RiCH 94 :::,N ޡB BN B Coming soon to ASCii ARTiST TEXT EDiTOR N B BN B This is only a pre-release version of ASCii ARTiST, the NB next version will contain the following features: NB BNB  Larger Work Screens %N$B BN.B  Design your own ASCII fonts N8B BNBB  Cut 'n Paste options $NLB BNVB  Free-hand drawing with the mouse N`B BNjB  Multiple work screens #NtB BN~B BNB Press any key for next page w:,:::O ASCii ARTiST | HELP SCREEN | v1.4 | COMING SOON pg 2 |  RiCH 94 :::,NB BNB Coming soon to ASCii ARTiST TEXT EDiTOR cont. NB BNġB  A selection of typefaces including: NΡB BNءB . __ _ . _ _ NB () ___ /|/ \ | | /|/ \ (_) | NB /\ / (_) | ___/ | | |__/ | NB / \ | | \ _ |/ | _ | NB /(__/ \___/ | \_/\_/\/ | (_/ [Script] N B BNB BNB _ _/ _ _ ' _ _/ %N(B (_( / (_( / / _) / [Mini] N2B ' ' &N<B BNFB BNPB Press any key for the next page Zwd:,:::O ASCii ARTiST | HELP SCREEN | v1.4 | COMING SOON pg 3 |  RiCH 94 :::,NnB BNxB Coming soon to ASCii ARTiST TEXT EDiTOR cont. NB BNB  A selection of typefaces including: NB BNB ___ __ __ ___ ___ _ ___ NB | \ | T T | \ | \ | T / _] NB | o ) | | | | o ) | o ) | | / [_ NB | T | | | | T | T | l__ Y _] NȡB | O | | : | | O | | O | | T | [_ NҡB | | 1 | | | | | | | | T NܡB l_j \__'_j l_j l_j l_j l_j [Bubble] NB BNB BNB BNB BNB BNB Press any key for next page "w,:,:::O ASCii ARTiST | HELP SCREEN | v1.4 | COMING SOON pg 4 |  RiCH 94 :::,N6B BN@B Coming soon to ASCii ARTiST TEXT EDiTOR cont. NJB BNTB  A selection of typefaces including: N^B BNhB BNrB .dMMMb dMP .aMMMb dMb dMP N|B dMP' VP dMP dMP'dMP dMP dMP dMP NB VMMMb dMP dMP dMP dMP dMP NB dP .dMP dMP dMP dMP dMP dMP dMP NB VMMMP' dMP dMP dMP dMP dMP dMP [Super Slant]NB BNB BNB BN¡B Press any key for next page ̠wִ:,:::O ASCii ARTiST | HELP SCREEN | v1.4 | COMING SOON pg 5 |  RiCH 94 :::,NB BNB Coming soon to ASCii ARTiST TEXT EDiTOR cont. NB BNB  A selection of typefaces including: NB BNB BNB ___ _ ___ _ __ __ _ N&B // \\ | || | // \\ || \\ || (( \ | || | N0B ||=|| || ||=|| ||_// || \\ || N:B || || || || || || \\ || \_)) || o NDB :[Gothik]NNB BNXB BNbB BNlB Press any key for next page vw:,:::O ASCii ARTiST | HELP SCREEN | v1.4 | C ;OMING SOON pg 6 |  RiCH 94 :::,NB BNB Coming soon to ASCii ARTiST TEXT EDiTOR cont. NB BNB  A selection of typefaces including: NB BNB BNơB BNСB _ _ _ _ !NڡB / ___> |_ _| / _ \ | _ \ NB \___ \ | | | _ | | / NB <_/ |__| \_/ \_/ |__|__\ [Super-SD]NB BNB BN B BNB Press any key for next page  w*:,:::O ASCii ARTiST | HELP SCREEN | v1.4 | COMING SOON pg 7 |  RiCH 94 :::,N4B BN>B Coming soon to ASCii ARTiST TEXT EDiTOR cont. NHB BNRB  A selection of typefaces including: N\B BNfB .__ .__ .__ .__ __. .__ .__. __ .__ NpB | \ [_ [_ [__) (__ [__) [__] / ' [_ NzB |__/ [__ [__ | .__) | | | \__. [__ NB . . ._. . . .__ %NB |\ | | |\ | [__ %NB | \| _|_ | \| [__ [Bones]NB BNB BNB BNB Press any key for next page ʠwԴ:,:::O ASCii ARTiST | HELP SCREEN | v1.4 | COMING SOON pg 8 |  RiCH 94 :::,NޡB BNB Coming soon to ASCii ARTiST TEXT EDiTOR cont. NB BNB  A selection of typefaces including: NB BNB BNB BN$B ___ ___ __ ___ _ _ N.B |\/| | |\ | | - (_ | /_\ |_) N8B | | _|_ | \| _|_ __) | / \ | \ NBB <[Mini]NLB BNVB BN`B BNjB Press any key for next page tw~:,:::O ASCii ARTiST | HELP SCREEN | v1.4 | COMING SOON pg 9 |  RiCH 94 :::,NB BNB Coming soon to ASCii ARTiST TEXT EDiTOR cont. NB BNB  A selection of typefaces including: NB BNB _ _.___. _ _ NġB \_ ___ \ \__ | | \_ \ \_ _/ \_ \ NΡB / \ \/ / | | | | _/ | __)_ | _/ NءB \ \___ \___ | | | \ | \ | | \ NB \_ / / _| |_ / /_ / |_|_ / NB \/ \/ \/ \/ \/ [Cyber]NB BNB BN B BNB Press any key for next page w(:,:::O ASCii ARTiST | HELP SCREEN | v1.4 | COMING SOON pg 10 |  RiCH 94 :::,N2B BN<B Coming soon to ASCii ARTiST TEXT EDiTOR cont. NFB BNPB Plus an amazing set of ASCII tools including circles, NZB boxes, lines, diamonds, eraser, horizontal flip, vertical NdB flip, shrink, grow, VT52 colour pictures, VT52 Animations NnB and hell of a lot more. #NxB BNB Register now, you can't really afford not to. NB BNB BNB 0 NB 0 RiCH '94 NB 0 NB Press any key for the menu Ƞw: NҡB BTܠw,,,7:::,:Desk:::T,w,p,7:::,:Edit:::RA,B: :A:CC:BC:  * FUCKING BACKSPACE SHIT*(B$)w^4A,B: :AA2AAA:,"A,B: :B,,A,B: :B,6A,B: :B,@A,B: :B,JA,B: :BTBC:4^A,B: :AA 2hAAA :.rA,B: :B.|A,B: :B.A,B: :B.A,B: :B.A,B: :BBC: * save dis shitv,:NEnter filename to save as: Does not check if file already exists;:,P$( )̠#,P$h֩,:N N;@TX:TY:O$.:J$.lL$((TX,TY)):TX,TY::: ;::TX,TY:L$;4,:: Scanning ;O$;TXTXA$A$L$&TXO&&TX:TY&0TYb:O$O$J$D#,A$:NA$Xb#:,::N File Saved - Press Any Key to Start Again ;:w:xJl -? upvDBBBB:BBD:J -> downDBBBB:BBD:J -= leftDABAA:AAD:ڋJ -< rightDABAA:AMAD:c(u  DPPU?>|?? `? `???? 0?>|??|p?~><~?????x? ????<0?<|x?P???*?G@U?T???<08p`x|x<8p>@?PP? (PP*<(@ *>?>**PP8??< 0`xx?>G?PP|T@?(<|@@@0>**>PP0B( (0\8 ɀ`( Du1 D@xHZ'&:@ʐoP, q "T"!  Y@ bHN$H"$ D =."($E1@R%("DI$D^@$BDE@4B -qUPe0$ P@H@`rR9-@Pu~8@A P4yr <1 (@p%yx88 y@Pp8p8 H'.;pa~0 08q$}~möoh Y Y ^ ^ ^ ^ ^ ^ ^ ^ ^ ^ ^ ^ ^ ^ ^ ^ ^ ^ ^Z kNY tA$ SX AFFFLAGSC1wC0 dpNONT_9 BAS  MANUAL ENG NGLBUGGY BOY hOKl ICH TXT ,eTICHDATAASC Start animation~ANISUP|FRWD,&ANIXSP(ANINB),&ANIYSP(ANINB),$ANIS():,AN$L::A$:XANISUP:A$A$(AN$,X,):X:,&ANIXSP(ANINB),&ANIYSP(ANINB),$ANIS(ANISUP):,A$L:: > Load NEOfFILTER$.NEO:T$ ---> Load a NEO picture <---:M : > Load DEGASZFILTER$.PI1:T$ ---> Load a DEGAS picture <---:M Z:-::DRIVBACK:PATHBACK$: Ďɿ\RΠ::::T:+:F$|ӏ:-:PATHBACK$A$:DRIVBACK:F$, :FLAGBACK:IMAGELD0؏::~::⠋: > Display backgroundHM ::FLAGBACK<FLAGBACKM ::F : :( ):::FRWD:~*#::::,,::h(q:::::::,$:,o:~::,-q,#PAL(),#PAL(),#PAL(),#PAL(),#PAL(),#PAL(),#PAL(),#PAL(),#PAL(),#PAL( ),#PAL( ),#PAL( ),#PAL( ),#PAL( ),#PAL(),#PAL()2ۊ > Draw animation screen6ܤ::,, ,@,ANIHYr , :MENNB: ,MENNB ,,MENNB ,,,^, ,,: ,,,`,ANIHY,,ANIHY$:M:X :X,%ANIX1(X),%ANIY1(X)%ANIX2(X),%ANIY2(X):X::ANIXST ,ANIYST:Animation string;: ,(ANIXST),(ANIYST)(ANIXST ),(ANIYST): , ,?,(ANIYST).MANINB:): > Set to white::,,::%ANIX1(M),%ANIY1(M)%ANIX2(M),%ANIY2(M)::& > Print and creates anim string:::TAN$():XANISUP:6:X6"ANIXTV,ANIYTV:##;ANIV;:*5 > Print and creates ONE anim phase6XANISUP(AN$,X) :(AN$,X)((($ANIS(X)) ),(($ANIV(X)) ))67:::XANICUR8XANIXSTX,ANIYST:XANISUP(###,;$ANIS(X);##);$ANIV(X);::<9XANIXST(X),ANIYST:XANISUP(###,;$ANIS(X);##);$ANIV(X);::<:X ANIXST(X),ANIYST:XANISUP(###,;$ANIS(X);##);$ANIV(X);::<;ANIXST(X ),ANIYST:XANISUP(###,;$ANIS(X);##);$ANIV(X);::(<X ; =:> FILE(? ~! @ M:v)tE MENNB: , : , MENNB ,, MENNB ,,, J:2O ~FILEPAL M:v)2T:,,, ,,,Y *REDO: NOJUMP:|F*: T$()FILE: T$() Bank size:: T$()(( BANKSIZE) ) :|*(^-I:e.'t: KM,rM:): z > Get palette ON/OFF4FILEPALFILEPAL:E  > LOAD  M:v)" A$(*.*,)` FILTER$.MBK: T$ LOAD a sprites bank: T :+ F$+E  F$, rFILENAME$:,:,$:,o:|F*: T$()Loading :|*: vFLGMERGEH -: BPATHSAVE$ A$: DRIVSAVE:7 S.  hPAL$:#, rFILENAME$: () SPRMAXBANK::EZ  A$(#,):( A$, ) Lionpoubnk::EN  A$(#,):(( A$))::E  vFLGMERGE DMIDHI(( A$) )(( A$)): ^NSMID(( A$)): TNSHI(( A$))  JNS(( A$)): JNSA((A$)):A()PAL$(#,A()): * *6  OPXT, OPYT:Out of; JNS;@  SPRNB JNS SPRMAXNB::+E BMAP$(#, JNS): 8A(( BMAP$)): 8A() hPAL$(#, 8A()) "5 2N JNS: OPXT, OPYT:Number; 2N;: ,IX(( BMAP$) 2N): $IY(( BMAP$) 2N) $ A$(#, ,IX $IY): A$(#, ,IX $IY): S$( SPRNB 2N) bSCRCODE$(( ,IX))(( ,IX))()( $IY) A$ &" TX( SPRNB 2N) ,IX:" TY( SPRNB 2N) $IY:" HX( SPRNB 2N)(( BMAP$) 2N):" HY( SPRNB 2N)(( BMAP$) 2N), ( 2N: A$: BMAP$ * vFLGMERGE()()( ^NSMID TNSHI)OTHER$(#,()())6 ,:: SPRNB SPRNB JNS . ~FILEPAL hPAL$(( hPAL$)) TCODEPAL77 X:# 0PAL( X)(( hPAL$) X): X,# 0PAL( X): X: 0 ST$:,$:,o:,0 5 vFLGMERGE F$, rFILENAME$& : vFLGMERGE:+E S X XXSPRNBSPRMAXNB:S$(X):"TX(X):"TY(X):"HX(X):"HY(X):X:F$,FILENAME$d ]:::*:T$() Disc error:*::E k > APPEND l M:v)n q:: FILTER$.MBK: T$ APPEND a sprite bank: T :+ v F$El { SPRCUR SPRNB:,$:,o:|F*: T$()Adding :|*<  vFLGMERGE: F$, rFILENAME$:/P  ϊ > SAVED M:):FILENAME$!9 љ-L ҏ :DRIVSAVE:PATHSAVE$:: ӎ  ԏ:!9: ՙ|F*: T$()Saving:|* ڙ, ߏ! #, rFILENAME$| A$ Lionpoubnk():( A$) ,:( A$), BANKSIZE:#, A$; A$():( A$),:( A$),:( A$), SPRSIZE:( A$) , SPRSIZE DMIDHIt ( A$), SPRNB:( A$), ^NSMID:( A$), TNSHI:#, A$;  SPRNB AD SPRNB$: A$( SPRNB)::? 2N SPRNB:( A$) 2N, AD:( A$) 2N," TX( 2N):( A$) 2N," TY( 2N):( A$) 2N," HX( 2N):( A$) 2N," HY( 2N): AD AD((( S$( 2N)))): 2N:#, A$; A$($):( A$), TCODEPAL:? X:( A$) X,# 0PAL( X): X:#, A$;H  SPRNB OPXT, OPYT:Out of; SPRNB;:@ 2N SPRNB: OPXT, OPYT:Number; 2N;: A$(((( S$( 2N))))):()( S$( 2N)):()( A$):()::#, A$;: 2N.!( OTHER$)#,OTHER$;`!() LBANKA$(LBANK()):#,A$;! :+E ! ]!3 > SAVE AS !4 M:v)l!9-: FILTER$.MBK: T$ SAVE a sprite bank: T:+ !> F$E!C.!H( F$,)!WX!M|F*: T$()Please: T$()confirm :|*.!R}+\: RE*!W rFILENAME$ F$:;N ! > QUITp! M:v):|F*: T$()QUIT: T$()Confirm!:|*.!}+\: RE !:! > QUIT & GRAB!M:TMEN:):*:T$()QUIT:T$()& GRAB:T$()Confirm!:*."+\:RE$":E"BANKSIZEBANKSIZE:T$()Bank too:T$()big!:T$() Use save.:*:*:,:E" *:T$()Grabbing:*:::: : : ::r::,BANKSIZE:A()"A,:A,:A,SPRSIZE:A ,SPRSIZEDMIDHI:A,SPRNB:A,NSMID:A,NSHI:AAN"SPRNBADSPRNB$:NSPRNB:A,AD:A,"TX(N):A,"TY(N):A,"HX(N):A,"HY(N):ADAD(((S$(N)))):AA:N"A,CODEPAL:AA:X:A,#PAL(X):AA:X6"SPRNBOPXT,OPYT:Out of;SPRNB;:NSPRNB:OPXT,OPYT:Number;N;:()(S$(N)):()A:()::AA(((S$(N)))):N~"$(OTHER$)(NSMIDNSHI)(OTHER$),(OTHER$)(OTHER$)A@") default:bgrab(),1:erase(),1`".q:::(#% ~!#& HOT POINT(#' ~! #(M:)t#-$:*:T$()HOT SPOT:*:REDO:(<:FLINK #2.#7't:KM#Zr#AFLINK::XSPRHOTX,YSPRHOTY:':FLINK(FLINK)#FKMN#KHOTXXS:HOTYYS:(n:':#2^#ZM:):M:):(n:': z# > Menu options0#HOTNB:#:#-0#HOTNB:#:#-0#HOTNB:#:#-0#HOTNB:#:#-0#HOTNB:#:#-0#HOTNB:#:#-0#HOTNB:[#:#-# > Set hot point@#HOTNBHOTNBHOTX`#HOTNBHOTNBHOTNBHOTXTXH#HOTNBHOTNBHOTXTXR#HOTNBHOTNBHOTNBHOTY<$HOTNBHOTYTYZ$ HOTNBHOTNBHOTNBHOTYTY$$ Hot spot menut$MENNB: , : ,MENNB ,,MENNB ,,,@$::MHOTNB:):8(% ~!% STORAGE(% ~! %M:)$%!MENNB :)h%&*:T$()STORAGE :T$() Bank size::T$()((BANKSIZE) ) :*(%+:'t:KM,%NM:): z% > Delete sprite8%M:):%:%!:%SPRCURSPRNBSPRNB:%XSPRCURSPRNB:S$(X)S$(X):"TX(X)"TX(X):"TY(X)"TY(X):"HX(X)"HX(X):"HY(X)"HY(X):X%S$(SPRNB):"TX(SPRNB):"TY(SPRNB):"HX(SPRNB):"HY(SPRNB):SPRNBV%,$:,o:,:.|:::OLDGET:% > Insert spriteH%M:TMEN:):%:%!b%(<:SPRNBSPRMAXNBSPRSIZE(SP$) SPRMAXBANK:<%SPRCURSPRNBNOSC:&%XSPRNBSPRCUR:S$(X)S$(X):"TX(X)"TX(X):"TY(X)"TY(X):"HX(X)"HX(X):"HY(X)"HY(X):X%S$(SPRCUR)SP$:"TX(SPRCUR)TX:"TY(SPRCUR)TY:"HX(SPRCUR)HOTX:"HY(SPRCUR)HOTYL%SPRNB:,$:,o:,:.|:::&G > Get spriteH&HM:TMEN:):&M:%!<&MOLDGET:SPRCURSPRNB:&RSP$S$(SPRCUR):TX"TX(SPRCUR):TY"TY(SPRCUR):HOTX"HX(SPRCUR):HOTY"HY(SPRCUR)&W,,XSPR,YSPRXSPR@,YSPR@:,,XSPR,YSPRXSPR@,YSPR@:(n:OLDTX:' &\OLDGETSPRCUR:& > Put spriteV&M:TMEN:):NOSC:&:%!T&(<:SPRCURSPRNBSPRNBSPRMAXNB:R&SPRSIZE(S$(SPRCUR))(SP$) SPRMAXBANK:&S$(SPRCUR)SP$:"TX(SPRCUR)TX:"TY(SPRCUR)TY:"HX(SPRCUR)HOTX:"HY(SPRCUR)HOTY&SPRCURSPRNBNOSCSPRNB:,$:,o:::,$:,o&,&Ş::NOSC:&݊ > Erase bank &M:)\&*:T$() Erase bank:T$()CONFIRM!:*.&+\:R%!N&,:,$:,o:,:.|:%!"' -' SUB ROUTINES"' -' > ZOOM' TX OLDTX TY OLDTY()::, XZOOM, |YZOOM, XZOOM TX 4IZOOM, |YZOOM TY 4IZOOM, XZOOM, |YZOOM:V',, XZOOM, |YZOOM XZOOM rTXZOOM, |YZOOM fTYZOOMR'`n X: TX X rTXZOOM XR'` Y: TY Y fTYZOOM Y$' 4IZOOM( X, Y)0'$:,,,::') TX 4IZOOM rTXZOOM XZOOM TX 4IZOOM, |YZOOM XZOOM TX 4IZOOM, |YZOOM fTYZOOM'. TY 4IZOOM fTYZOOM XZOOM, |YZOOM TY 4IZOOM XZOOM rTXZOOM, |YZOOM TY 4IZOOMX'3 TX@ XSPR TX, YSPR XSPR TX, YSPR@X'8 TY@ XSPR, YSPR TY XSPR@, YSPR TYV'=:, XSPR, YSPR, XSPR@, YSPR@, XSPR, YSPRr'B2, XZOOM, |YZOOM XZOOM TX 4IZOOM, |YZOOM TY 4IZOOM'G() ADSPR:() ZADZOOM:()( ):():() 4IZOOM:() TX:() TY:'L()::, XZOOM, |YZOOM, XZOOM rTXZOOM, |YZOOM fTYZOOM, XZOOM, |YZOOM.'Q OLDTX TX: OLDTY TY'V's > Mouse in zone <\'t XM: YM: KM: OLDZ FZ: FZ(): K$: SC 'u K$hD'~H'v:MENNBSCa:'t6'wMENNB MENNB'~'x:::SCK(x:.:'tSCM(x:.:'tx'ySCOLDSC(SCHSCPSCSSCR)OLDSCSC:'~'zOLDSC:SCH(x:&M:'tSCP(x:NOSC:&:'tSCS(x:%:'tSCR(x:%:'tp'~ FZ2 MENNB(, XM, YM, SPMOUSE, XM, YM,$': FZ2j>'T' X( XM XZOOM) 4IZOOM: Y( YM |YZOOM) 4IZOOM' X( X TX) Y Y TY( X OLDXS Y OLDYS KM OLDKM)e.'t' XS X: YS Y:,::::X:##; X;:#,:Y:##; Y;:D' OLDZ2 *REDO(n:'' OLDZ2:: ,FIL1, "FIL2,: XPAINT, YPAINT?, YPAINT TYPAINT: OLDZ FZ: MENNB' KM ' FZe.'t ' KMe.'t*' OLDXS: OLDYS' Return to set RGB,' MENNB FZ\' Storage arrowsj' FZV FZ[ MENNB:: FZV:e.'t' Fix size,' FZ3 MENNB' Jump in palettes2' FZP :'t2' FZQ :'t6' MENNB MENNBn'' Jump to fix paint8'Ģ FZ>:'t8'ɢ FZ>:'t"'ʊ Jump to Flip/Upside/Rotated'ˢ FZ> FZ>(ROUTINES(Z>):'t'Ί Jump to UNDO8'Ӣ FZ >:'t'؊ Jumps to sprite arrowsj'ݢ FZR FZU MENNB (ZR)d:'t 'ފ Jump to left menu options'ߢ FZ4 FZ<& LEFTAD( MENNB, FZ4)o:::& LEFTAD( MENNB, FZ4) ' Jump to drawing routines' NOJUMPe.'t')R'Z>Z>:(ROUTINES(Z>)''t(; > Save sprite <N(< SP$(, XSPR, YSPR XSPR TX, YSPR TY):(m > Restore sprite <h(n,, XSPR, YSPR XSPR TX, YSPR TY:(, XSPR, YSPR) SP$T(s, XSPR, YSPR, XSPR@, YSPR@, XSPR, YSPR:.(xREDO(n:'(}"( > Display selected option <( OP XOLDOP (,,, ( XOLDOPXOLDOP:YOLDOP:,,XOPX,YOPYXOP(X),YOP(Y):(,XOPX,YOPY)OP$ ( OP(( X OP: Y OP: NOP$(, 0XOP X, (YOP Y 0XOP( X), (YOP( Y))(::: 0XOP X, (YOP Y 0XOP X, (YOP Y:H(, 0XOP, (YOP,@,, 0XOP, (YOP( XOLDOP OP:() > Set to white left menu command`) UNDO$(, XSPR, YSPR XSPR@, YSPR@): UNDOFLG) )g > Unpack left menu <)h , P)m , MENNB ,, MENNB ,,,P)r , MENNB ,, MENNB ,,,)w*)ˊ > Set to white left menu command M)̠)Ѡ:,,:: >Y1 M: 6Y2 M( TMEN): M TMEN Y2Y2$)֠, >Y1, 6Y2 )۠: TMEN:*/ > Restore Left menu/,*0u)h: MENNB8*5 ,,,@,À, 0XOP, (YOP8*: ,,,@,À, 0XOP, (YOP$*? XOLDOP:r2(*D NOJUMP: *a > Restore SCREEN smooth!0*bq::::x*0,*cq,# 0PAL(),# 0PAL(),# 0PAL(),# 0PAL(),# 0PAL(),# 0PAL(),# 0PAL(),# 0PAL(),# 0PAL(),# 0PAL( ),# 0PAL( ),# 0PAL( ),# 0PAL( ),# 0PAL( ),# 0PAL(),# 0PAL()*g FZ: X& CURINK( FZ): Y& CURINK( FZ):& OLDINK( FZ)(& CURINK( FZ)):| *l FZ: X& CURINK( FZ): Y& CURINK( FZ):& OLDINK( FZ)(& CURINK( FZ)):| *q H*v dFLGDEBOLDTX:(n:',*{ur):,$:,o:"* > Print in right menu zone*::J* 0XOP, (YOP>, (YOP* NOJUMP:"* > Print in right menu zone*: *} Yn+ T$( Y) OPXT( T$( Y)), OPYT Y: T$( Y);6+ T$( Y): Y: NOJUMP:+[> BIG confirmd+\p(<: UNTX TX: UNTY TY: OLDTX: TX@: TY0V+a,, XSPR, YSPR XSPR@, YSPR@:_'::+f::,,: XSPR, YSPR XSPR0, YSPR: XSPR, YSPR XSPR0, YSPR+:::!,:NO:!,:OK+k:_'+p,, XSPR, YSPR XSPR@, YSPR@:,, XSPR, YSPR XSPR@, YSPR@+q(:"+uI:,,,::B+z R:W<t R+,, XSPR, YSPR XSPR@, YSPR@:,, XSPR, YSPR XSPR@, YSPR@: TX UNTX: TY UNTY: OLDTX:q (n:_'++ > File selector++,+Ő :::::8+ F$(* FILTER$, T$, T)+Ϡ: : +ԏ0+٢ F$ FILTER$.*D+ޢ( F$,.)F$F$FILTER$::+㢸( F$, FILTER$)F$++F$:+",# > Draw sprite selector zoneJ,$,, vSELY,, vSELY lSELTY ,, vSELY,) YY vSELY: ,,, YY0, YY lSELTY: ,,@, YY, YY lSELTY: ,,, YY, YY lSELTY$,*:: : ,. A$ :( A$,)( SPRCUR): Y: SELXT, SELYT Y:( A$, Y,);: Y,/ A$ : SPRCUR SPRNB> A$ :( A$,)( SPRCUR) A$ ENDp,0 Y: SELXT , SELYT Y:( A$, Y,);: Y,1:,8 SPRCUR( ," TX( SPRCUR), YY" TY( SPRCUR)) S$( SPRCUR),= SPRNB SPRCUR( ,`" TX( SPRCUR), YY" TY( SPRCUR)) S$( SPRCUR),B SPRCUR SPRNB( ," TX( SPRCUR), YY" TY( SPRCUR)) S$( SPRCUR),G,o ,, vSELY,, vSELY lSELTY,, vSELY: ,, vSELY,, vSELY lSELTY,, vSELY:, > Erases sprite bank,7 X SPRMAXNB: S$( X):" TX( X):" TY( X):" HX( X):" HY( X): Xr, SPRNB: SPRCUR: OTHER$: DMIDHI: NBMID: NBHI:, > Calculate BANK size,, SPRSIZE SPRNB$, SPRNB X SPRNB: SPRSIZE SPRSIZE((( S$( X)))): XJ, BANKSIZE( SPRSIZE( OTHER$)):-O > Set GRABBER zonesJ-P,XGRAB,YGRABXGRAB,YGRAB?-U,XGRAB,YGRABXGRAB%,YGRAB+:,XGRAB%,YGRABAXGRABH,YGRAB+:,XGRAB,YGRAB+XGRABH,YGRAB?:,XGRABH,YGRABXGRABm,YGRAB+:,XGRABm,YGRABXGRAB,YGRAB+:,XGRABH,YGRAB+XGRAB,YGRAB?-Z,XGRAB,YGRABXGRAB,YGRAB :,XGRAB,YGRAB XGRAB,YGRAB-_ ,XGRAB,YGRAB)XGRAB,YGRAB3: ,XGRAB,YGRAB3XGRAB,YGRAB?-d ,XGRAB,YGRABXGRAB,YGRAB): ,XGRAB,YGRABXGRAB,YGRAB)-i ,XGRAB,YGRABXGRAB,YGRAB):,XGRAB,YGRABXGRAB,YGRAB)-n- > Get dir$R- A$(*.*,): A$: A$ A$\-. > Auto PUT".DDX:.".DDX&."SPRCURSPRNB:(.'OLDGETSPRCUR: .,NOSC:&f.1SPRCURSPRNBDDXS:DXDDX:.6&M:.{ > Delete all animationsv.|N:&ANISUP(N):&ANICUR(N):$ANIV(N):N:"F -G DATAS"H -O > Routine lines,P,L,,,x,,U@,,,l,,4,Z,, `, , (, .7 > Left menus MAIN SCREEN lines address>8,X,p,,@,#(, , H,%(Ǜ > Left menus BLOCS lines address>ǜ,,h,,0,,,\,& > Left menus ANIM lines address>,,,,,,,,0c > Left menus IMAGE GRABBER lines address>d,,,,,,,,,d2NJ > Left menus PROGRAM GRABBER lines address>Ƞ,P,P,P,P,P,P,,&+ > Left menus FILE lines address>,r,, , l, ,!4,!,!,!*ɏ > Left menus HOT SPOT lines address>ɐ#Z,#,#,#,#,#,#,#,#Z.W > Left menus RGB SELECTOR lines address>X , , , , , , , , .ʻ > Left menus SET XY SIZE lines address>ʼ v, v, v, v, v, v, v, , * > Left menus STORAGE lines address> %N,&,%,%,%,&,&,&H,&H$ > Animation menu coordinates ,,, ,,, ,,, ,,., /,,?, ,,,& ,,,&  ,,>,& !,(,,5 &,(,,5 + ,(,>,54`A$:S:A$Se`NN4tT4t<@??<@PALTfpp 0PU33ss77w?~耘@@ omkDdppp?~yzs@oE?"}]*pp????????@@@@}|~||}|@@@@ ??@?=xA]t]t~||]t]tA?=x@  `?-h]t]t~\t]t]t?-h `  `ml~\tml ` || ?8<? @?.^h} %2)tDB0??@?=xAAA~||AAA?=x@  `?!AA~||AA?! `  t `a ~||a  `? @?x??x??x??8????6UUUUUUUUUUUUUUUUPPPP        PPPP        PPPP        PPPP        PPPP        PPPP        PPPP        PPPP        ၇̥2g2332gÇ ??` ?3&g9'8'90gÌ??8#?ɓ2dɟs2d 3d<0afwwwÇ 7B^O{_xF7C1{8ٳu׻8?ٻ{?{8nɌuW]mAuh H~x3Z͘0̀3͘<x/`;`llϘ 9Ƚ8,P *@!)@!ȼq@&L(NE (DyQT&D (_Tqm @"6s/x*D"hD"/"Dc[ wpwU33ss77w?c?ƛ??.(? ;u? 0?s]??_s!A2s!2s!>2sA!2!2!2˫ yeY9a9 yy܏Kˈوy;ۻh ``````````````ZNYA$X AFFFLAGSC1fC0c wpwU33ss77w??@ ` =} <`pxY|`x 2> ||~߁񀁀6bND`|y2s#< 0ؘ }|<~|xrjfb eyY`8 x ;ؘ= @ p`ܘ ??>>o`3'3? 31#-  M`o6?>p̈ @΁xˀ 98ٸ`fߙ}T2Pp"<JVtBht&```````````````````ZNYA$X AFFFLAGSC1fC0c( < wpwU33ss77wff? ?ffǏ0a!!q!5? <%#3>p<  /(p$L8p$0 I 5?  /(` I 5?  /(`` I 5?  /( I 5?y  /(`p@_ I Aa5?  /( I AA5?? ?   /(fv~n@p0 I =-!yxo׷`wto999y"."&"9yY9yp AAAy=??88\<ayF_NF_NȈȈ PBp<66@0pp0|AaaAD؞^\\--F߇\٘߃Ҋ>Àܬ޼ټꫀfff--f "&???????? || \N}߼߼߼??ʹ<<ϼϼ&&&"؀ЀЀ߀Ѐǀǀƀ`p!`!``&`?o`` ` ` F` ` ߇` \` `@` `@` @` ` ` ` `L`````( P<_6Q6]VsVs_K_KSSϖPPoo               LLx8H?2H8rH2H~rKrKr3?2c1 ys9s {s syJVtBht&```````````````````Z2NY2A$X AFFFLAGSC1fC0c(@r wppwU33ss77ww0 !a? 0 1a! 0?0 1 A}AyA}<"<(&q"qo(A!aa!IٹyyI`ذ`@`lذ`@π8߀π8        ``0`````````````````````````0`~z`~f~boooo      1c1c1c19s 9s9 c1c1cǾss9s9s9DtkZֵkZt{3.PZhNYhA$PX AFFFLAGSC1fC0`.  `2`Z$cxHA pNNu>3Lp2I@SA3JSG3H#<#@SB3DSC3F#8 Kx"Htv0r<eJQ2tvQQ`JQ2tvQQ CgJ2RD DfNu"y<$y@29D>9H<9J,y83NgH`49F I&J06xLK@:8(K8IQPQ6xLK@:8(K8IQPQ\QCLQLTTyNfNuH`49F? I&J06xLK@:8(K8IQPQQ6xLK@JCg L8(KBEIQPQ8(KBIQP\QCL4Q|LTTyNf^NuISA0SB&I(J0vx:MVQ8QIQCEQNuISASB0v&I(J0xz>< g8QGIXQGQCSCjEvQNuX>O SGH&Jp2468ABCDF@46666Q$KNuSS&J0QEQNu bZH:HtMMMMMMMMMMMMMMMMMMMZRNYRA$B:X AFFFLAGSC1fC0mmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmm Animation declaration error The ANIM string command has not been properly set. File not open The program is trying to transfer data to or from a file but the file has not been opened. File type mismatch A file command has been used which does not correspond with the correct filing system. The error would occur when you try and use the GET and PUT statements on a sequential file. EInput string too long An incoming string is too long for a dimensioned variable. Or you may have triedto INPUT # a line more than 500 characters long. zFile already open An attempt to open a file is aborted because it is already open. File already closed An attempt to close a file is aborted because it is already closed. End of file The end of a file on a disc has been reached. Input string too long An incoming string is too long for a dimensioned variable. Or you may have triedto INPUT # a line more than 500 characters long. zField too long The size of the record you have created with FIELD is greater than 65535 bytes. It is also possible that you have used more than the maximum of 16 fields. `Flash declaration error The FLASH command has been called incorrectly. Window parameter out of range One of the windows paramters is not valid and must be set to a legal value. Window already opened An attempt to open a window has failed because it is already open. Window not opened You have referenced a window which does not exist. Window too small An attempt to open a window has failed because it is too small. The minimum sizeis 3x3. 5