OcN!p @`  @`! #@o')-/1 3@5`79;=?A C@E`GIKMOQ SU`WY[_ac@e`gikm o @ ` @ ` @ o ` @ ` ׀ ٠  @!Aa   !Aa!!#A%a')+-/1!3A5a79;?A!CUaWY[]_a!cAeagikmoq!sAuawy{}!Aa!Aa!Aa!A !Aaǁɡ!Aaׁ!Aa!Aa " B b  !B!b!!!!!"!""#B"%b"'""+"-"/#1"#3B#5b#7#9#;#=#?$A"$CB$Eb$G@`  @`! #@o')-/1 3@5`79;=?A C@E`GIKMOQ SU`WY[_ac@e`gikm o @ ` @ ` @ o ` @ ` ׀ ٠  @!Aa   !Aa!!#A%a')+-/1!3A5a79;?A!CUaWY[]_a!cAeagikmoq!sAuawy{}!Aa!Aa!Aa!A !Aaǁɡ!Aaׁ!Aa!Aa " B b  !B!b!!!!!"!""#B"%b"'""+"-"/#1"#3B#5b#7#9#;#=#?$A"$CB$Eb$GARC TTP dt FONT1 MBK  t % ICON ACB t @MBACK MBK 6t ]PRITE ARC t oASCII ACB at ^ASM ACB pt rASM DOC 4t ASM PRG t \DBACKGRNDMBK 3 t -COMPACT ACB Zt 1DUMP ACB ct INPDATA ACB yt MOUSE ACB ft OUTDATA ACB |t SCANASCIACB ht STOSCOPYACB t :TYPE ACB jt " FONT2 MBK  t ( FONT3 MBK t + FONTS ACB t .EICON MBK  t T"MAP ACB t bhrMAP DOC c t MAP MAP t .FUNFARESMBK Kt MUSIC ACB t MUSIC MBK t =TUNES MBK &t @ SPRITE ACB t TANIMALS1MBK Ot LhANIMALS2MBK Ot ,uDROID MBK Pt iFONTSET MBK Pt b2SPRDEMO MBK Pt $SPRITE2 ACB Ft )x `y@c^N6NWNNUNWNVNW4NV$NUNsl*O*m - ЭЭм!"ҍ¼.A// Bg?<JNA m"m -So Q m -SBQ(m)M*mN0 lHhN]X/,?,N\?<NPD?<A?<NAXNuNVB. nl:HlNkvXHl8NklXHlPNkbXHlrNkXXHlNkNXHlNkDXHlNk:XHlNk0XHl4Nk&XHlHNkXHlzNkXHlNkXHlNjXHlNjXHlNjXHl*NjXHlbNjXHlvNjXHlNjXHlNjXHlNjXHl.NjXHlFNjXHlrNjXHlNjXHlNj|XHlNjrXHlNjhXHl8Nj^XHl`NjTXHlNjJXHlNj@XHlNj6XHlNj,XHlDNj"XHlVNjXHl|NjXHlNjXHlNiXHl NiXHl:NiXHllNiXHlNiXHlNiXHlNiXHl(NiX nf\ n -h`H nH|Hg nH|hf(HlXNizXHlNNX?<NbTHlrNi\XR nfBgNMTHltNLX)@fHl|N0. n /NbXJ@g"0,g0. n /HlvN^PRlRn0.nm0.N^NuNVBnHl/.NLBP-@f0,g/.HlN]PRl` /. HnNaPBBnHnHn/.N F ,gP/,NNX-@`HnHnNaPJ@fP=|0.f0.g>0.ne0.nf*0.nb Bg/./,NN, /.NBX`zHnHnN`P @m`D/,HnNDP/./,/,N /,NNX-@/,HnN PJ@fF0.g*0,g/. HlN\P?</./,NM `N0.g"Bg/./,NM| /.NAVX``&0,g/. HlN\PPBg/./,NMF `*0.g/.NAX``0,g/. HlN\P/,NMPX-@|/,HnNBPHn/,/.N& Bg/./,NL /,HnNP?</./,NL /.N@XN^NuNV/BX/././,N7 BgB/.NI /,NJX-@|/,/.NP/./,/.N# Bg/./,NI /,/.N P?< n/(/,NIz /.N=TXHlN]XJ@g0,gHlHl dNXFPRlN^NuNV0.f Hl vNdXBn`0.ABPRn0.nm/. ?.N"f\?<N4~T`BnBn`80. n /HnN PJ@g=|0.A0`Rn0.nm0.g*?</./,NH 0,gHnHl NWrP`"/,HnN P/./,/,N. /,HnN PJ@fPB,/,HnN zP?<N4T0,g@Bn`00.A0f0. n /Hl NVPRlRn0.nmN^NuNV g@Hlx?<NPN\?. /.?<NNP A HH?N2TA HA HH|YgA HH|Nf`0<fA HH|Nf*Hn4Hl 8NNvP?< n/(/,N?f `Hl LHn4N9|²9|°N^NuNV0,°g,Bl°/.NX9@®0,® lh(H9@¬`0,f/.NzX=@=@ @f0<`0. lhA-H nf"=l®0. lhA-H?,¬NT`. n(H?NT n=h0. lhA-H n hf n(H9@¬?NT0,²g?,¬?,®NpXSl²9n®NN^NuNV/.NlX/. NbX` n n HHAgb n H|?gT n H|*g 0<` `:`R ng nH|.f`R n g n H|.f`:`RR ng nH|.fl n g n H|.fT ng nH|.fR n g n H|.fR `H n n HHAg, n H|?g n H|*g0<`&`0<``RR nf n f0<N^NuNVBn`v?<\0. n /N9\-@f:?</0. n /N9\-@f?<:0. n /N9\-@ .g .R2. n Rn0.nmN^NuNVB?<N+T)@h ,h)@d ,h)@`0,f0,g Hl dN4XHlNX ,gHn/,Hl rN` `HnHlxHl ~NJ Hl HnN"P-@fHnHl NPBlp <-@)@¨BlvN4/./.NPNP`R?.NT/.?.NT\/.NX=@ @fN-@/.NX-@`&B¨ <-@-@-@0,g Hl N3XBgB/.N$ n1lv n!l¨BlpN؆ ,¨n ,¨n ,¨n0,g .¨/Hl N3jP0,g Hl N3ZXHlNX|0<9@vH)@¨`/. ?.Nf\/.N&X=@ @f n1lv ,¨ n!@ n!@` .lv .ll0,g ./Hl N2P0,g Hl N2XHlNX| n!n`/. ?.N\/.NX=@ @f` .lT0,g ./Hl N2RP0,g Hl N2BXHlNvX|/. /.NpP n!@`0,g ./Hl N1P0,g Hl N1XHlN"X| n!n .g6BgB/.N" `/. ?.N\/.NDX=@ @f`<=G=G`.0A첚02.nAcRn0A첚0nRG Gm0.R@=@B.BG`80A첚=P0.2.Ad ng0A첚0|RG Gm.fh no$BG`0A첚00RG GmLN^NuNV?>. UGHǏ`0. S@??/.NPSG Gl>N^NuNVH>< RG<. n<0nn|0nl&0 n?(0 n?N`XJ@gRG0 n??NFXJ@g60 n02. n00 n0?.?/.N`PLN^NuNV0.A첚02. A첚Pc0<`F0.A첚02. A첚Pf$0.A천02. A천Po0<`0<N^NuNVH><` n=PSn 0. n0 n00. S@?Bg/.NP n=P0A첚A&H0RG n07n7n0.A첚02.A첚P60.A천?0.A천?N>X"0<A7@0. S@?Bg/.NP n n8 n9PLN^NuNV0.n o0.`0. N^NuNV?BG`0A찖BPRG Gm>N^NuNVH>. A첞><. A철< GfX FfR0. A찖00<2<nh=@0,n2. A쮔0 no0.A첞><.A철< Gl0R@D@`0,G> Fl0R@D@`0,F</.?N@\/.?N4\Rn0.Sn0.0.nm0<2.AHLN^NuNVBn=|0,nmD nf0.`0,2<n`n0,6.h9@0.l0.|` lo0,2<n`n0,n llfBl nf0<`0.|`>/.NX9@l @f9|l0,lA쮔9P0,lA찖9P`0N^NuNV/. N:X-@`/. ?.N\R/.NX=@ @f .N^NuNVHlHlxNP)@f$0.gHlxHlN#JP`HlxHlNtP0.g"HlHlNP)@fHlHlNLPN^NuNV ,g /,NX0.g/,NXHlHlN>P)@g?,?,/,NаP/,NX ,gb0,g@HlN'LXHlHlxN%PJ@gHlHlxHlNٸ HlHlN"nP`HlxN' XJ@gHlxHl*NيPHlxHlN%HPJ@gHlxHlHlJNf N^NuNV0.@|2.. HA|A쨊6@N^NuNVBgNzT?<B/,N /,NX-@BgB/,N `h/,NXЮoHnHlbN!PRl`R`>HnHlN!PHlNXHnB/,Nf J@gRl` HlN!RX/,HnNӎPJ@f ll HlN!.X`" lf HlN!X`?,HlN! \N^NuNV?<NT)@h ,h)@d ,h)@`Blv n)hrBlpNŬ,H|g|g`*`/. ?.N\/.NX=@ @f``|g`*`/. ?.N\/.NlX=@ @f`X`|g`4/.NX`/. ?.N\/.NX=@ @f``|g`2BgNT`/. ?.N>\/.NX=@ @f``|g`2BgNT`/. ?.N4\/.NX=@ @f``|g`2?<NbT`/. ?.N\/.N|X=@ @f`l`|g``/. /.NdP`R0,g nA/HlNDPHlN:XRl?< n/(/.N& /,hNlX0<`B``/,hNXX0,v nhg"0,g nA/Hl&NPRl0<`0<N^NuNV. H??,vNX9@v/. . H?Nզ\N^NuNV0,p|g`2. H| @f9|p`/. . H9@?N\`N`|g`B. g`/. ?,Nt\S. f`/. ?<N^\Blp`?,pHlHNH\``N^NuNV ,rf0<`Sr/.NX?NTN^NuNV/.NX//.NX" AAN^NuNV9|c/.NX9@ lm lm HlfNԾX9|9|Bn`6/.NX2.A줄0/.NxX2.A줄1@Rn0.lmN^NuNVBn`zRl0, @o@/.N X9@l @f0<`Bl0<ll2.A줄A=P`,0,l@9@l=@0<n2.A줄A=P nl~0.R@D@=@ nf0<`0.=@0.N^NuNV?.NT nn0<`?.?<>NX9@2g0<`0<N^NuNV nam nzn 0.| ``0.N^NuNVHl/.NPJ@g`Hl/.NPJ@gNHl/.N~PJ@g\=@0.N^NuNV?.?<LNXN^NuNV/ A&H`0+ |g/ N*X A"Ҽm?.NT&_N^NuNV/ &n/ NDXJ@g0<`00+ |g /+NXBk ?+ NhTJ@g0<`0<&_N^NuNVH&n0+ |f0<`.0+ |gV0+ |f0<`v0+ |g?<B?+ NP?/+?+ NP @f0<`@k 0Hѫ`$ k o?<0+D@H/?+ NXP'@&Bk0<LN^NuNV/ &n0+ |fk@ 0+ |`g0<`&Bk`R0+ |g A̐A잀A &'@`*0+H/NzX&'@ fk `k g-K?<?+ B?<BN n!@& k f HlN~X0+ |g0<`0+?/?+ NP7@Sk0+ @l kfk `k@ Bk0<` SRH|&_N^NuNV/ &n Bk0+ |fk@ 0+ |@g0<` `R0+ |g A̐A잀A &'@`*0+H/NNX&'@ fk `k g0+ |g SR k `<0+ |g2k SR . H| g kl . H|`T/ N,XJ@g k@ 0<`<0+ |gBk. H|`"` 0+S@7@k . SRH|&_N^NuNV/ &n 0+ |f f0<`Rk. S SH&_N^NuNV nSh0( @m n R @H|` /.N*XN^NuNV n Sh0( @m. n "R AH|`/. . H?N\N^NuNV fBC`&SCdTC0|g0|gԼdRC`|CHBC0|@HB LN^NuNVNVH n " n $&JjFFJjFFLN^@hNuNVH n"n $0(H@6C|g.0)H@:E|gE|BB0<まef bRAQ$0P`HNVH n$0(H@6C|gd"n .0)H@:E|gD|E(HD*HE20HGHBBB8:BGBBЇӄЂӅJg$0P`B`NVH"n 0<9@fQ`NVH"n Blf n,0(H@8D|fB.0)H@:E|fB2$60Enfl8,:.6$0Jg0Eg|n0@gDԇ0,fQ fBB`HSCdTC0|g0|gԼdRC`|"|CHB|C0|@HB AHABA LN^NuNVH0.|=@n n f n0H-@HnNXA-H`> n(g nf. n-P n(f HnNX` HnN>XA-H/./. 0.AB PNPLN^/W DhNuN^NuNVH nB fB`м8 LN^NuNVH n$fBCB`nD6< f႖|NzN^NuNVH0&n$n Bn-J @)P^)hb-l^-lbBEG>O|g|JGn|m` REHlx/ NRPO`SEHlx/ NPO`&0+H@JGgDG0<0dR@0.BAQ,>QQֆG|0QB`Rn0.g$nB`0R 2.HmB`b .6.HЃR$@ nH|0fRZ"` R"H|9n nH|0f$n R&@fSE .6.HЃ @B n0L N^NuNVH0&n BnH|bf=| RH|rgH|wgH|ag <`F ,>$@ f*A$H`0* |f` A"Ҽm A"Ҽm <`B>Bj Bn+H|+f =|j H|wf?./.N\>j `hH|afB0<n?/.N \\> @f?./.N|\>?<B?NPj `0.n?/.N \>j Gf Bj <`05G Bj <$%@?<B?* NTP%@5l L N^NuNV)n>/.NX/. /.NLPN^NuNVH&n>. <`N nSh0( @m n R @H|` /.NX=@ @f 0FH ` 0.SF Fn no0.`0<LN^NuNVH>. <`,/. nRH?N \ @f 0FH `SF Fn no0.`0<LN^NuNV/ &n/ N*XJ@g0<` k ?./. ?+ NP'@0<&_N^NuNV/ &n +"Ё"+&_N^NuNVH0&n$K`0.H| f`HSn 0. @o: nSh0( @m n R @H|` /.N:X=@ @fB nf f <` L N^NuNV`H0BnBnBB9| nRH|=@ .&@$@BG`TH| g(H| gH| gH| g H| f0.f0.gBnB` `H|"f< nfBn`*0.f 0.f=|0,RlA` `"`H|'f: nfBn`*0.f 0.f=|0,RlA` `'`r0.fj0.fd=|H|f. R @H|>f T-@=|` R-@Bn`0,RlA`  R0RG0nmB .g,A H1| A H1|HlHl/.N@ .g2A H1| Hl0.gA `A //.N 0,R@H/?<HN\)@><`0A` 2 l RG0lm l 0, lBL N^NuNVH$.f BB`J". BnJlVnDJlRnDvd`Bbd nmDdD-@-A LN^NuNV/BnJlRnDJ lRnD 0. -@0.n0. nngD -n N^.JNuN^NuNV nl <`?.?./. ?<BN8 -@ m .`?<?.B?<BN -@?<?.B?<BN -@ nf .Ю -@ `$ nf .Ю -@ `0.g <`b . oHn . /?.?<@N Bg?./. ?<BNx ]|9@2g <` `Bl2 . N^NuNVH0><2.|SA¼0?N T&@f <` $@5G \/NX ,4L N^NuNVH0><2.\ASA¼A ,4$@ fA8 $@)@4)@8Bl<&R0+Ge*0+Gf$`0k0+7G)J4 \`, 4f?NT&@ f <` $@ &@`L N^NuNVH0 .]&@$l4` m n l`$R o l 2+Ёf R0(k R&`& 2*Ёf 0+j$`$)J4L N^NuNV/.?<HN\N^NuNV/.?<IN\N^NuNVBn`60.A0f"0.A00.A0 ` Rn nLmN^NuNVBn`&0.A0nf0.ABPRn nLmN^NuNV?>.=|0A"HPgXHf0(>N^NuNVHl/.N PJ@f =|`Hl/.N PJ@f =|`Hl/.N PJ@f=|`f0. |g0/.N XJ@g0<``Bg/.?<NLX0. |?/.?<=N4P=@9@2 @l0<`0. | ??.N~X0.N^Nu)I)J)_NA"l$l/,NuNVH&n Bn0.|dg`>< `.`|ug`>< ``|og`><``|xg`>< l* ndf SR- .D-@`0. f Gf .`& Gf .` ./0H/NX 2.RnA0 Gf .`( Gf .` ./0H/N X-@ .fp`FSn0.A P m0.A0| |A`0.A0|0 SR0.fLN^NuNVH&n n f=| )n^)nbHlHl^?<N]|@0. R@?HnHnHnN.g SR-.H|0f.f SR`J nff>.n RG0ljo0,j`0> Gl0<`0?HnHnHnN BF`0RFA SRSGSn0g nl` SR0Sn nl0. g SR.` SR0RnSn 0. g nm`" Go0RFAH`0<0 SRSG0. Sn J@f`` SR0. g SR.><`0RGA SR0. Sn J@f SRE?.Hl/N: /NXHѓLN^NuNVBn`"0. n PHC|0=@ nR n PH|0m n PH|9o0.N^NuNVH0&n -n @$PX`R` nRg H|%fH|%f,RBn=|Bn| H|-f=|RH|0f|0R-JHnN$X=@$nH|.fR-JHnNX=@$nH|lf=|RgH-n Gdg Gog Gxg GufB0.g @ ` @0H/Hn?.?NV 0.g0<`0<H` Gcf R @ nRT` Gsf4 @-PX<.` nR nRSF0g nf`J Geg Gfg Ggf, @)P^)hb/,b/,^Hn?.?NP` 0 nR .nl0.g$<.".A` nRSF0f`b .2.SAHЁ-@-@,.` .2SAHЁ @ nSSF0f` nR .o .R-@f nB .L N^NuNV/. HnNhP=@/.HnN8P0.N^NuNVHnHlNPN^NuNVHn /.N&PN^NuNV`/. nRH?N\ nfN^NuNV nf:0,lf0<9@9@`?<NT=@ nf*0,g Sl?<?<NX?<D?<NX` n f00,RlA윦 ?< ?<NX?< ?<NX`v nf ?<NT nf20.2,RlA윦?< ?<NfX?< ?<NXX`*0.2,RlA윦?.?<N4X0<fA윦윢H|f0<`0,RlA윦H`` nf?<NT``0. `Rg HGfg ` <`LN^NuNVH0&n>. $|`HGf$KRf `L N^NuNV/.?<AN\9@2g0<``0<N^NuNV`4 nH| f?< ?<NX nRH??<NX0. Sn J@fN^NuNV` nRH??<N`X0. Sn J@fN^NuNV` nRH??<N2X0. Sn J@fN^NuNVH0&n $KA-H nf?./ N4\=n`L nf?./ N`\=n`. nf?./ Np\=n`-KBn?.NTJ@f`H| f |o@ H-@/./.?.?<@N\ 9@2Hg0<`0,2n/./<?.?<@N& 9@2 @g0<`tRnR -@`R ned` 6.ƼЃ$@ H-@/./.?.?<@N 9@2Hg0<`0,2nBl20.L N^Nu9|9|9|9|9|9|9|9|9|CA r"A v"A z"A ~"A "A "A "A "A "A "A "A "9|C222222222C2222222?22A`)H\9|9|¾C쨊2222@2222A2222A222ā2@22 2 2A222΁2@2 22ˁ2 @22 22A2222A222ځ2@222߁2@2222A222Ձ2@2222A2222A222Ё2@220212A232222@262227@225242A2<222=@22?2>2A22:2;2A292228@2(222)@22+2*2A22.2/2A2-222,@22$2%2A2'222&@2"222#@22!2 2A22`2a2A2c222b@2f222g@22e2d2A2l222m@22o2n2A22j2k2A2i222h@2x222y@22{2z2A22~22A2}222|@22t2u2A2w222v@2r222s@22q2p2A2P222Q@22S2R2A22V2W2A2U222T@22\2]2A2_222^@2Z222[@22Y2X2A22H2I2A2K222J@2N222O@22M2L2A2D222E@22G2F2A22B2C2A2A222@@C"2"2 2"2"2"22"2"2"22"2x9|)lx)l|)lt)ll)lp9|jCBA"A"A"A$"A*"A"A ")|>)|49|9|Nu(C) COPYRIGHT 1985,86 by System Enhancement Associates; ALL RIGHTS RESERVED Please refer all inquiries to: System Enhancement Associates 21 New Street, Wayne NJ 07470 You may copy and distribute this program freely, provided that: 1) No fee is charged for such copying and distribution, and 2) It is distributed ONLY in its original, unmodified state. If you like this program, and find it of use, then your contribution will be appreciated. You may not use this product in a commercial environment or a governmental organization without paying a license fee of $35. Site licenses and commercial distribution licenses are available. A program disk and printed documentation are available for $50. If you fail to abide by the terms of this license, then your conscience will haunt you for the rest of your life. ARC - Archive utility, 5.12 - Atari ST Usage: ARC {amufdxerplvtc}[bswnh][g] [ . . .] Where: a = add files to archive m = move files to archive u = update files in archive f = freshen files in archive d = delete files from archive x,e = extract files from archive r = run one file with arguments from archive p = copy files from archive to standard output l = list files in archive v = verbose listing of files in archive t = test archive integrity c = convert entry to new packing method b = retain backup copy of archive s = suppress compression (store only) w = suppress warning messages n = suppress notes and comments h = hold screen before returning to Desktop g = Encrypt/decrypt archive entry Atari ST version developed by Harvey Johnson press any key to continue ARCTEMPTEMP.ARC.$$$.BAKAMUFDXEPLVTCRCannot mix %c and %c %c is an unknown command I have nothing to do! I don't know how to do %c yet! press any key to continue =*.*No files match: %s No files were added. Duplicate filenames: %s %sCannot unsave %s brCannot read file: %s Updating file: %-12s Adding file: %-12s Adding file: %-12s %s\ARCTEMP.CVTARCTEMP.CVTFile not found: %s bw+Unable to create temporary file %s Converting file: %-12s reading,Cannot unsave %s You must tell me which files to delete! Deleting file: %s File not found: %s \\File not found: %s Extracting file: %s brWARNING: File %s already exists! Overwrite it (y/n)? %s not extracted. bwCannot create %s brAn entry in %s has a bad header. %s is not an archive %d bytes skipped. Invalid header in archive %sI don't know how to handle file %s in archive %s I think you need a newer version of ARC. Write fail (disk full?) press any key to continue Name Length Storage SF Size now Date Time CRC = = = = = = = = = = = = Total %6ld %8ld %3d%% %8ld File not found: %s JanFebMarAprMayJunJulAugSepOctNovDec%-12s %8ld -- Packed SqueezedcrunchedCrunchedUnknown! %3d%% %8ld %2d %3s %02d %2d:%02d%c %04x File packed with %d bits, I can only handle %d Stack overflow analyzing, ARCTEMP.CRNARCTEMP.CRNbw+Unable to create temporary file %s (%ld) storing, (%ld) packing, (%ld) squeezing, (%ld) crunching, Cannot delete temporary file %s done. Bug - bad ncr state .RSCbrTemporary file %s already exists bw+Unable to create temporary file %s Extracting file: %s .*File not found: %s I have nothing to do! Cannot delete temporary file %s .TTP.PRG.TOSbrTemporary file %s already exists bw+Unable to create temporary file %s Invoking file: %s%s Cannot delete temporary file %s brCreating new archive: %s Cannot read archive: %s bwCannot create archive copy: %s brCannot rename %s to %s Keeping backup archive: %s Cannot delete old archive: %s Cannot rename %s to %s Archive truncated in file %s Testing file: %-12s okay No errors detected One error detected %d errors detected I don't know how to unpack file %s I think you need a newer version of ARC WARNING: File %s fails CRC check Bad NCR unpacking state (%d) File has an invalid decode tree CON:AUX:PRT:@$??rawCON:AUX:PRT: %d ALionpoubnk c!  !"#$%&'()*+,-./0123456789:;<=>?@ABCDEFGHIJKLMNOPQRSTUVWXYZ[\]^_`abcdefghijklmnopqrstuvwxyz{|}~fffllll>`<|fl0fF8l8pvp88pf<d80 0 ~~`0 0`+&nw>C#|7"`c>n3&xk33n<_<0x7 cg:2V<$mn, 0lH0:W8.gn8X03a~t**V;]62zW8.gnv:n|?L <vfn~r2fd80FԨ\#w\fcvnl4p"@`0 xx8l `0(f, 8t*j<2ffL< |6``"d8<049Y24rdx0uij7#Ub26f:xzD"\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*@\z:Lft &lPZNYMXTYMXTXMULYMULXENCREHJ"x)T̔tMAh R@S- FbX&jUbDkf]eR` ! Š OQFVĢ "3S+S7}*"cIF`F*2IAD7$ASM.PRG6t B\D  ! "$#&%('*),+.-/0132456879:<;=?>A@CBDFEGIHKJLMNoOQPRTSVUXWZY\[]_^`acbedfghij?klmnoprqtsuwvxyz{|}~}/7wgF.-M>+Lionpoubnk c!  !"#$%&'()*+,-./0123456789:;<=>?@ABCDEFGHIJKLMNOPQRSTUVWXYZ[\]^_`abcdefghijklmnopqrstuvwxyz{|}~fffllll>`<|fl0fF8l8pvp88pf<||&  || 80q3xx 2"# 1x3c??#1x 3b 3| 0 )S 293|>093"2&2|ǎ0 3|& %I#&9"!' <@`0 xx8l `0 2"# 1x3c??#1x 3b 3| 0 )S 293|>093"2&2|ǎ0 3|& %I#&9"!' <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>UUUU3333e la souris.+a Pressez une touche de la souris.,Erreur diquette.,Ce n'est pas jeu de caractres!,Caractres trop grands !,Je charge le jeu par defaut...&+f%MXTYMXTXMULYMULXENCREso"b ԑb|/np0}NCv47Ci{:צE@tR ?$EaNXam:X äş'[g$ Z^0O~!9ϽC!X#m kS9rNX!n"L4p /4O}+5#ܼC+<TkQ:5"}̻P&[<8R -22Eѣ|"`b>}z<{?G^Ho~_`iDu lNX+!cVxcx"6{͌T|o.эߴt#Wt#I^%X_umRPnBO(äɰUEb|J>~ TTQ‡I1,rbv{[ڹ  ?u±~<>N86`Ӫ:3KmIZmsxx1p!"|=dON:0픻2*Dft] o2#dg_n+mیiwQ) ό}̘ώ4Z'Gq*ACZ9''L$;񨅩dbrO (?W:;ߏl266߁e? 1K=0[:8bN#W:K R@sfw8fwAj+ٳkk'(4v2M=1JP'oPvl2 jLionpoubnk c!  !"#$%&'()*+,-./0123456789:;<=>?@ABCDEFGHIJKLMNOPQRSTUVWXYZ[\]^_`abcdefghijklmnopqrstuvwxyz{|}~ww3vvvv(~~/(w~8wg>w>ps>ww>.n|||888>ww>ww>>ww?w>88p8~~~~p88p>w~~>wwwww~ww~ww~>wpppw>~w~pp|pppp|ppp>wpwww?wwwwww>>|wwv|vwwp|||~ww~ppp|v~ww~wwww6|8l|888>8|88888|~~pp~www~>wpw>?www?>wp>>wp|ppp?ww?~pp~w|ppwvxvw<>l>w>www>~ww~pp?ww?~wppp>p>~pp~ppw>w?www>l|www?~888p88xxp66c<``<Bf>f;f<>f;p<>f;<~;<``<<pf>Bfff>|B<@@<4Xfff4XbRJF<>f;< |)B*R$HH$H$ $H4X<~;4Xc~Ɵ|~~c>  UUUU3333  C$<GRYCARGRXCAROLDCCCCBAUR MXTYMXTXMULYMULXENCREX'緞?)F[ATP JWfk7: Y<߂Ҫ~f6g愣mqA\DϳC6m  ZEVnl"m=]x.(vS(u_S4fߞVFstӞ|-!8~Ņ]4ߞ)4g- 8~Кjy'?ߢJHRLDX  ;a9eX)b Default set: system!2ENCREf7MULX:MULY:MXCX:MXCY:~n<BAUR:CC:OLDCC:GRXCAR :GRYCARp:C$()LA#CAR( ),T$(,(),!X( ),!Y( )F*:XoX:Y:X_:A$:T$(X,Y)A$:YY:A$:Xc ---> Menus*dL'd:LFiXX:A$:(X)A$:XpnYX:N:YYN:A$,Z:(X,Y)A$<sZ(X,Y)(X,Y)xY:X}բ(,):(, ):(, ):(,):(,):(,):BPS:BITPLANl~(,):(, ):(, ):BPS:BITPLAN8BPSP:BITPLAN&(,):,,,p,X,@#:$T觠:"() \&"()  "()  [ϊ---> Fenetre d'edition!Р:|"() [XX(()):YY(()):XXCXXXYYCYYY\8 XX,YYC$;:ENCRE:GRXCARXX,GRYCARYY:CXXX,#CAR(YY)~ ;::GRXCARXX,GRYCARYY:CXXX,#CAR(YY)\8 ---> Select a character< :MK:MK() |:CC(())CY(())CX:CCCCCCOLDCCCCOLDCC$TT MK::() CCCCC:$T: ǢMKCXYCY:ADY,#CAR(Y):Y:$T: ̢MKCXYCY:ADY,#CAR(Y):Y:$T:h ѢCXYCY:#CAR(Y)(ADY):Yn ֢CXYCY:#CAR(Y)(ADY):Y0 ۙ$:CCCCC: ---> changement de bordureL :BAURBAUR:BAURBAUR& () :* |:BAUR:  ---> Informations!8:,MULX,,(, :,:FONT GENERATOR:,:By F. Lionet & C. Sotiropoulos:,:(c) Jawx / Mandarin:&:%:---> File6:c,K,P,,,---> Load from disk~R$(*.mbk,T$(,),):%:R$츕(R$,.MBK):FJR$,:(())cT1 :f((())MXCX)(())MXCYT1 :*NOMFILE$R$:#:4~::T2 :&H,#:~:#:8F:T1 :T2 :&H:#J---> Save char setNKNOMFILE$PR$NOMFILE$:UO---> Save as...~PR$(*.mbk,T$(,),):%:R$츕(R$,.MBK):UZR$,_::T1 :T2:&H::(f%:R::---> quit and grabN,MULX,,(,, ::T$(, ),::T$(,):%:"R:$:@'::BGRAB(),5:erase(),5`:o--->Character setNp:,,,8,,,,d,,,u"ӊ--->Copy system set #1,#2,#3"SSYS:"SSYS:SSYS(%:R.蠨:~SSYS:#:7---> Grab from a programL8,MULX,,(,, :T$(,):h=Z:X:Y:X񸈚V*B(X,Y)V.G((X,Y))cVLTTX((X,Y)):TTY((X,Y)):TTYMXCYTTXMXCXVQ:Z; ;::-;T$(,);X;, ;T$(,);Y;:;TTX; X;TTY:!X(Z)X:!Y(Z)Y:ZZVY:XX[Z,:T$(,):::jT`,:T$(,);:X:!X(X)je:},(!X(X),!Y(X)):(!X(X),!Y(X)),(!X(X),!Y(X))(!X(X),!Y(X))():,::#:j:%:---> erase character set(%:R #(:#:---> 8X8(%:R*:},F (),c:(),:(),8#(:,d::#:c---> 16X8(d%:R*i:},Fn(),c:(),:(),8s#(:,d::#:NJ---> 8X16(ș%:R*͠:},F҈(),c:(),:(),8י#(:,d::#:+---> 16X16(,%:R01:},F6(),c:(),:(),8;#(:,d::#:W---> Character editX::2], ,,,,Lb---> EraseXXCY:#CAR(X):X:$:---> Inversef XCY:#CAR(X)(#CAR(X)):X:$:---> RenverserzXCY:#CAR(X),#CAR(CYX):X:$:---> MiroirYCY:XCX:A(X,#CAR(Y)):B(CXX,#CAR(Y))xACXX,#CAR(Y)CXX,#CAR(Y)PBX,#CAR(Y)X,#CAR(Y)$X:Y:$:0L::X1:Y1.QX2:Y2:DVX2X1X2X1~D[Y2Y1Y2Y1>`$:X1X2:Y1Y2:Qn~CXYCY:,#CAR(Y):Y:[ZYCY:,#CAR(Y):Y:[nCXYCY:,#CAR(Y):Y:[ZYCY:,#CAR(Y):Y:[X#CAR():YCY:#CAR(Y)#CAR(Y):Y:#CAR(CY)X:`X#CAR(CY):YCY:#CAR(Y)#CAR(Y):Y:#CAR()X:`<@:|:NP:TX:TY&Tzr,, &, &6^ :$:%:[h---> Draw liner} lz|:IXGRXCAR:IYGRYCAR:IXTX,IYTYIXBX,IYBY:---> Draw Box} lz :IXGRXCAR:IYGRYCAR:IXTX,IYTYIXBX,IYBY: ---> Fill &|:x 0K:() KXX(()):YY(()) 0v 5XXYYXXCXYYCY(TXXXTYYY) 0X :KXXXXYYYY 0X DIXGRXCAR:IYGRYCAR::IXXX,IYYY NK X$ b---> Get dimensions of object lTX:BX:TY:BY:NP:K:KNPx vK:() K>XX(()):YY(())~ vv XXYYXXCXYYCY(TXXXTYYY)~ v KNPXX,YY:():NPNP:NP&TXXX:TYYYBXXX:BYYY K : ---> Read char from screen@ PS(IX)BITPLANIYBPS( ƝICYX ТCX"#CAR(I)(PS)#CAR(I)(PS) PSPSBPS ڂI: ,#'---> efface tout le jeu de caracteres<#(CX(()):CY(())H#-X:()X,:XH#2X:()(X,X:Xh#7X()()CXCY:X,:XX#<XXX?CXCY:X,:XR#AXXXCXCY:X,:X#F$# affiche l'ecran de l'editeur#@#CX(()):CY(()):#,,,CX,CY,,,,,CX,CY,,f#:: ,(),()(CX),(CY)@#,,,,,,#(CY)CX,(,,,,,,,,,,,#CYCX,(,,,,,,,,,,,P#:: ,(),()(),( )CY`# ,(),()CY(),( )CY4#,,,",,::>##:CC:OLDCC :$Tb#;YCY:#CAR(Y)(ADY):Y:$#.#ܠ:~SSYS:#:#---> Write all char set@#|::X :(X);:X:$S---> Inverse chosen charP$T|::OLDCC,OLDCC:(OLDCC );P$Y:OLDCCCC:CC,CC:(CC );$^Z$cX(()(CC):AD()XCYCXj$h|:,:T$(,);(CC ); / Ascii:;CC ; $m($---> Affichage ZOOME du caractereb$|:,:T$(,);(CC ); / Ascii:;CC ;b$|:,:T$(,);(CC ); / Ascii:;CC ;$|::ZYCY:RXCX:(X,#CAR(Y))C$;:ENCRE ;:P$’GRXCARCXX,GRYCARY:X:Yh$à:GRXCAR,GRYCARGRXCARCX,GRYCARCY$Nj,%---> reaffiche le caractere en petit!%YCY:XCX:(X,#CAR(Y))ENCREP%!GRXCARCXX,GRYCARY:X:Yh%":GRXCAR,GRYCARGRXCARCX,GRYCARCY%&%---> Sure? (Y/N)D%, MULX, ,,,::6%T$(,):::T$(,)@%,(),()( ),()H%,( ),()(),()8%s:(()()):%R:()R\%:%:,,,:,,,:&G ---> Dialog box!z&H,MULX, ,(,,:T$(,T1)::T2T$(,7T2)&M::T$(,),&R:::$:' ---> English menuH' STOS , FILE , SYSTEM , TOOLS , DRAW &', About FONTS,', Load char set,, Save char set,, Save as ...,, - ,,Quit,, Quit and grab,' ,Copy system set #1,,Copy system set #2,,Copy system set #3,,Grab from program,, Erase set,~' -,,Edit 8X8,, Edit 16X8,, Edit 8X16,, Edit 16X16,'$,Clear,,Inverse,,Flip,,Mirror,, - ,,Scroll ,R'),Line,,Box,,-,,Fill,'s ---> Menus francaisP't STOS , DISQUE , SYSTEME , OUTILS , DESSINER ,'y,A propos de FONTS,'~,Charger un jeu,, Sauver le jeu,,Sauver comme ...,,-,,Quitter,,Quitter / GRAB,' ,Copie jeu systme #1,,Copie jeu systme #2,,Copie jeu systme #3,,Copier d'un pgm,,Effacer le jeu,'-,, Edition 8X8,, Edition 16X8,, Edition 8X16,, Edition 16X16,',Effacer,,Inverser,, Renverser,,Miroir,, - ,,Scroller,Z',Ligne,,Boite,,-,,Remplir,*---> Messages* Character: ,Sure ?, NO | | YES ,!--->CHARACTER SET IN PROGRAMS<---, Program #,Bank #,Type a number: ,Press mouse key...*Press mouse key to go on..., Disk error!,!This bank is not a character set!,Character too large !, Loading default character set...+#CAUTION! Character set is copied in,memory bank number 5!,Memory banks present on disk:,Enter chosen name :,? LOAD CHARACTER SET File name must end with .MBK!,? SAVE CHARACTER SET File name must end with .MBK!,+\ Caractre: , Certain ?, NON | | OUI ,"->JEUX DE CARACTERES DISPONIBLES<-, Programme #,Banque #,Entrez un chiffre, Pressez une touche de la souris.+a Pressez une touche de la souris.,Erreur diquette.,Ce n'est pas jeu de caractres!,Caractres trop grands !,Je charge le jeu par defaut...&+f%ATTENTION! Les caractres sont copis,dans la banque numro 5!, Banques prsentes sur le disque:,Entrez le nom choisi ,? CHARGER UN JEU DE CARACTERES Le nom doit se finir par .MBK!,? SAUVER LE JEU DE CARACTERES Le nom doit se finir par .MBK!, s`?}H& 4aVTmF D{ `0PЃ'@GxBhFgp|b:$ҙ p (hb OA(?a&!l]*rĢG&iY>%Z٢1&f3x&U9@8ɣ0| `p#:jB! .)p{rơ&OEr (q@Âi,˩ = G8` dz[ ܖET@r5k|)Z Ųs_~_:Ut,4w bt& GT`24ä \80&Ԯ7P˽:O g<#?!B+<;~R1Gr1XbG  *p[*bw?Y@ м t %ppAhPa`V-$r\pc\B0b)g@jD" cÑ d3I v^iƝG I !O0 tkaGNLionpoulosMVMV= ICONS EDITOR" Stos Basic accessory& By F.Lionet & C. Sotiropoulos( -!T T$(2),!I(),!C(),!M(),!U()25:<,A7COL:HCAR:NLINE:NCOL:BITPLAN:BPS:CL:F<COL:HCAR:NLINE(:NCOL:BITPLAN:BPS:CL:6FzACOL:HCAR:NLINE(:NCOL:BITPLAN:BPSP:CLJFNPAGENLINENCOL:PARAM:C$()c---> Initialise menusdw PdFi7X:A$:(X)A$:Xn8.X:N:8&YN:A$,Z:(X,Y)A$:Z(X,Y)sY:X&x(,)}:&p,X,@,#(NJ---> Initialise textȜ|P8dTX:8:T$(X):X:T$(X) +---> Reserves memory bank*,:,S1t*6,:2;ADW()T d\'BB:(B,) Main loopo)h폘򠁧:@() <, ,,,,|< ϊ---> Mouse in ICON windowР:|<ՙlH':XXYY Mouse in MASK window :| ::< ':XXYY ©XX,YY:KC$;:XX,!M(YY) ;:XX,!M(YY) ј ---> Previous page6:|:,::T$();T() |::,:T$();:<?\"PAGE8PAGEPAGE:i&'t:?\ъ---> Next page6Ҡ:|:,::T$();Tע() |::,:T$();:<ܢ@n0PAGE0PAGEA~0PAGE8PAGEPAGE:i&'t:@n---> Chose / Put iconb:|::T$( )(PAGENPAGENUM):NNNUM|:()I:NNN:nj):q):NUMPAGEPAGENNUM:I:nj):AD()T(PAGENPAGEN) :KEX:!U(X)!C(X):!M(X)(ADX):!C(X)(ADX):X:m@(<:o)h:NUMN:NUMPAGEPAGEKFX:ADX,!M(X):ADX,!C(X):X:I:nj):HEIGHT(HEIGHT,PAGENPAGEN)B4{---> UNDO|:|BGE()::<GX:T!U(X):!C(X)!U(X):!U(X)T::m@(<:o)h:NUMN:NUMPAGEPAGE<o---> STOS*p:Hb,u,8,u ӊ---> About icons generatorԠ,(),,(,, ::, ,:(),()(%),( )HCAR|٩,:T$():,:T$():,:T$():, :T$()&ޞ::::7---> Quit,8r^*0:R:=::---> Quit and grab,*0:R:X::(),()():LHEIGHTTTT:,L:,L():(),HEIGHT::bgrab(),2:erase(),2`W---> File<X:,, ,],,],]---> Load a banklR$(*.MBK,T$( ),):R$츕(R$,.MBK):ZƠ#,R$:X()::XT@T:pˠ,:*:zR$,():(())( `T:РjNOMFILE$R$:HEIGHT(()):(),:+\:'tAD():X:!M(X)(ADX):!C(X)(ADX):X:(<:T:.:::*::,---> Save bankNNOMFILE$ R$NOMFILE$:%---> Save as...l R$(*.MBK,T$( ),):R$츕(R$,.MBK):%MX*::(),()():LHEIGHTTTd/:,L:,L():(),HEIGHT:R$,V4:,S:,()():,: 9Ȁ:>8M4::T:*:>---> Grab from program,*0:R:R,(),,, ,:T$()::NZ:B:B񸈚*(B,),((B,))( `PB,Z:T$();B;T$();(B,) B>Z:T:*:V,:T$();:B:BB,(B,Z):|:::*:L(((B,)))T:(B,),(B,)L():,::R$:: ---> Erase icons bank,*0:R:6*:'t:(:(<? ---> tools6@:T, , l, ,E,!4E Clear,r^*0:R: m(:m@(<:  ---> InverseR Y:!C(Y)(!C(Y)):Y (<: k ---> FlipP lY:!C(Y),!C(Y):Y q(<: ϊ ---> Mirror НY:Z:X:(X,!C(Y))X,Z, ՂX:!C(Y)Z:Y ڙ(<:!3 ---> scrolls0!4::X1:Y1.!9X2:Y2:D!>X2X1X2X1!f!pD!CY2Y1Y2Y1!z!J!H(<:)h:X1X2:Y1Y2:!9@!fY:,!C(Y):YX!hX:(X,!C(Y))X,Z!k!C@!pY:,!C(Y):YX!rX:(X,!C(Y))X,Z!u!C!zZ!C():Y:!C(Y)!C(Y):Y:!C()Z!!H!Z!C():Y:!C(Y)!C(Y):Y:!C()Z!!H#'---> Draw Menu<#(:|:NP:TX:TY`#-WTX():WTY():WBX():WBY(),#2[#,$T,$,%,%*#7c~&:m@(<: Draw line#at%#ߠ:|:IX():IY():MXIX:MY():IXTX,IYTYIXBX,IYBY::MXTX,MYTYMXBX,MYBY:$S---> Draw ellipse$Tat%X$^|:IX():IY():MXIX:MY()$hDX(BXTX):DY(BYTY):XCDX(TX,BX):YCDY(TY,BY):R1DX:R2DY$r:IXXC,IYYC,R1,R2,,::MXXC,MYYC,R1,R2,,:$---> Draw Box$%X$ |:IX():IY():MXIX:MY()$֠:IXTX,IYTYIXBX,IYBY::MXTX,MYTYMXBX,MYBY:%---> Fill%|:a:D%&() () lH'؛%&X%0KXXXXYYYY%&%5|:IX():IY():MXIX:MY()::IXXX,IYYY::MXXX,MYYY%:K%D$%---> Get dimensions of object%TX:BX:TY:BY:NP:K:cZKNPD%() () lH'؛a%P%XXYY(TXXXTYYY)a%%KNPXX,YY:():NPNP:NP&TXXX:TYYYBXXX:BYYY%K%: &---> Read icon from screen@&PS(IX)BITPLANIYBPS&| &d*I:&!C(I)(PS):PSPSBPS&ʂI:''---> Displays screen'':dv','$',,,,,:,,,, ,:,,,(,,:,,,(,,:,, ,,,,:')',,,,,:,3,,, ,:,,,(,,:,,,P,,:,1, ,,,,:f')'$,, ,,,,:,3,,, ,:,,,(,,:,,,P,,:,0, ,,,,v'):UNDO;:|::: ,(),()(),():T$()'.|::'3|::: ,(),()(),()HCAR: ,(),()('),()HCAR'8q)T'=|:::,(),(),T'>|:::,(),(),*'Bi&'t:m(:m@(<'G's---> Displays icons'tq)*'y|:::i`',''~Y:X:X,Y:ZPAGE(YX:Z(Z);"'X:Y:''jY:jX':X,Y:ZPAGEPY(X:Z(Z);"'X:Y:k''Y:X':X,Y:ZPAGEY(X:Z(Z);'X:YP'NUMPAGEPAGENNUM:I:nj)'4'׊---> Calculate X and Y coordinates in windowsH'XX(()):XXXXH'YY(()):YYYY:'K:KXXYY'lH'(;---> Display new icon(<|:z(AmY:mX:(X,!C(Y))C$;: ;(FX:Y(KL(---> New iconV(nCX:!C(X):!M(X):X:)---> displays icon #N()NNN)|:X(NNLINE):YNNLINE:F) X,YX,Y)Ib)XPAGENPAGEN:XX(X);)&)g---> displays icon in background)hpIX:ADWX,!M(X):ADWX,!C(X):XP)m|:::,:();::,:();:)n:qI:LX():LY(I):MX(()())LX:MY(I):LX,LYMX,MY:I:)ˊ---> Previous/page/nextR)̠|::,:T$();:,:T$();P)A$T$():(A$,)(PAGE):A$:*/---> Confirm`*0:,(), ,,, ::::T$( )*5,(),()@,()HCAR:,@,()(),()HCAR0*:sM:(()())>*?()RRX*D:,,,:,,,:t::*---> Alert~*,(),,(,, :::,:T$(T):,:T$( ) *::::**---> Erases bankZ*(),( `:(),:()()(),*uX()()TT:X,:X XJ,:XN+NUM:PAGE:NUMPAGE:HEIGHT:$+[---> Erases bank up to the endL+\()HEIGHTT()T,+aX()HEIGHTT()TT:X,:X XJ,:X+fO ---> English menus:P STOS , FILE , TOOLS , DRAW jU, ICONS !,,-,, Quit,, Quit and grab,Z, Load icon bank,, Save icon bank,, Save as...,,-,, Grab from program ,,-,, Erase bank,_, Clear,, Inverse,, Flip,, Mirror,,-,, Scroll,fd,Line,,Ellipse,,Box,,-,,Fill,ó ---> Menu Francais<ô STOS , BANQUE , ICONE , DRAW vù, ICONES !,,-,, Quitter,, Quitter/rcuprer,þ, Charger une banque,, Sauver la banque,, Sauver comme ...,,-,, Copier d'un prg,,-,, Effacer la banque,Ƞ, Effacer,, Inverser,, Renverser,, Miroir,, - ,, Scroller,nҠ,Ligne,,Ellipse,,Boite,,-,,Remplir,7---> English messages`8 ICONS EDITOR, By F. Lionet,& C. Sotiropoulos,(c) Jawx/Database 1988= icon , mask , previous , next , Page: 1 ,Icon #, ABANDON :: CONFIRM B? LOAD ICON BANK File name must end with .MBK!,? SAVE ICON BANK File name must end with .MBK!,Press mouse key to go on.,This bank is not an icon bank!, DISK ERROR!GIcons present in memory:, Program #, , length:,No icons present in memory!, Input program number: ,Grabbing bank from program #1.,Ǜ---> Messages FranaisfǜEDITEUR D'ICONES, Par F. Lionet,& C. Sotiropoulos,(c) Jawx/Database 1988ǡ icne , masque , prcdente, suivante , Page: 1 ,Icne , ANNULER :: CONFIRMER Ǧ? CHARGER DES ICONES Le nom doit se finir par .MBK!,? SAUVER DES ICONES Le nom doit se finir par .MBK!, Pressez une touche de la souris.,%Cette banque ne contient pas d'icne!,ERREUR DISQUE!ǫIcnes en mmoire:, Programme #, , longueur:,Pas d'icne en mmoire!, Entrez le numro du prg:,#Je copie la banque du programme #1., I N6P03< T`6Fv!_ 0095OTW`ł01>5!80\`@N'  3Q[p>u'xxލ|d@Rdk#>|0Ck~c /%1>oʡcG?*|`2Bx/>8~ PEL*0cN  `P$ &&LBht0 < ;x 8A@ $dBԐqkLE0he(KT,wUl|!@lD&` kfFP2lm\<3@!HdFONT2.MBK*t   LҼqM1n4! 8a , @&"H`@ a .`Ƞa>!b&NHb.^!c6nȡc>~ "d"F Id &N@"e *V`ɢe .^ #f 2fΠIf 6n#g:vɣLionpoubnk"( `d  ?? < D"8 3dBi&fi&df3 8&I6H3II 8 ;sg`pp88 ;sg DDDDD  9 9  `00 `q?P?P? 000  9 ~??  ?>~? ~?? UUUU ?? $ ??Rx @*?$   ?@  ?sw;  @ @ @ @ @ x>>p |>?x~      )Q!A :{? /AA  0@g `0`>`7`3`3`3`3`6`>`< z}Bz}Bz}Bz}bfC  x8x =xn?  ??`0b0 `p`0??? )TUVcccc =? xg_^|||<| >>| g~ |~x  3g  ```````````  ?  ?? ?  7777777  s@ >?x ?~~<< @;w ?___AAaa*?7 CpGG''p 4jTTP @ @ ?~~~~  H$>N|>pp88p Æ``< /OD"8    ??? ???  ? ??? ??? ?  ??? ??? ? ?  @   y ?ax? ?ag? ?a?x<< ??OOggsyy?  a` ww88 ;޻޻ @ b  T$2Tfx8~ >N^ 'O 3'PfP;!QN `upA뗼XA Oͺpxq_/F#>]-yEˮZ ,""Z+W[(]I-L#97ӯAw;[VA TƤWzX0<|TƤWz , #>߉9Z eLZxWZ ,_1Fp#oh`AlA`aaMz AbjX A #` U5m-+Y[f|%Fɇ9VhֲreZb|c%V# x66 >,t>҄ɢSsFҢS?||sFf3ࣁfiA # |c%1BV2d]uI!>hF]l>#>h07Go%C_73ࣁfif3ࣁfLionpoubnk,l L,l   L   ,  l LPALT3Uw0Pp0Pp          $? `|>@@@|>? L3H#@;\&l%gޙ-_`/0 /0 ????@@@ /=_?y_?{_???'?;Ày}}=C@? @O LH$d,Jb= |   >?  h|@ T@D] F{}""  !TBTI "~BB~$$~BBB~$@{?HHKJQz_ǰ@@z_K>HHKJQz_ǰ$ws/w֏:/gwc֜9k1wUsUx2   ")%0//0//$0//0//0// ?0p0//=0//$1))))%=1%)%)%)%)=&{{{{{# 11 #8;\<<|>n|>?o?wbFqs ?bFqs?w|>?o<<|>n8;\ވ oPFN@isEu\#a^JDJ&n$ dB0"i IFWaeFnԡa} p =|rodܵ_,D ]X( k%؜A>¶ BjJ8w::wy #Fc!0FT)5]Tk'Tye1oP3z=Ǫ ks p(m)^ $ `X?˜a?xc x^=pDABLionpoulosr^ * Mapper V1.3. A room definer written by Stephen Hill : Select file\ B3This program only works on a COLOUR Monitor. SORRY!: >$>,:()-j=\:SF$(D$*.mbk, Load Sprites,):SF$:::(SF$,).MBK:,:This is NOT a sprite FILE!:,:Press any key to try again::w:' Load file(SF$,:(()):,:This is NOT a sprite BANK!:,:Press any key to try again::w:, Load palette2 S: : NSܚ:,:!Too many sprites! Maximum is 220 :,:Press any key to try again::w:< ڢSZ(@ SW)( ھSH): ڢSZ:,:&Sprites too small! Minimum size = 16x8:,:Press any key to try again::w:VA#PAL(): NI:# VPAL( NI)( NI): NIBFq::?':>:<:P S: :" : NI:# TRFM$Map Truncated at ((TRF) ):M1$Due to lack of space:M2$ Press any key:TF: :NROOMTRFj::q::,<: FHD:/P: FHD::X:ϊ Save rooms to disc,Й" : RESULTՙH֠: :CU$(,,CTY@,CBY):ڙ\:MF$(D$*.map, Save Maps,):(MF$,).MAPMF$:"ۢMF$ߏ >::#,MF$:#,a:#,NROOM&,: Saving roomsL:INROOM:LL(ROOM$(I)):I:LM$Not enough space:TF: :#:pINROOM:#,ROOM$(I):CNI::I:#Fq::::HD::HD: ::(06)츊A:M$ Disc error::M1$Please hit a key:TF: ::#:d:M$Error ():M1$Please hit a key:TF: :::X:S: %:d3 Save ascii program,4" : RESULTh> >NL: 6LSZ::: CU$(,, ,CTY@, CBY):+:H=\: AF$( D$*.asc,Save room as data statements,):( AF$,).ASC AF$:H"M AF$R:: M$Data saved at 50-: &T$Yes!: F$Abort?: TF: FHD:. : FHD::: RESULTW TL:4 NI NROOM: TL TL( ROOM$( NI)): NI: TLM$Not enough space:TF: :$X,: Saving data.[ Open file and output redraw subroutinev\:F[:#, AF$: xN:W NI xN: C$:#, C$: NI,e Output number of rooms and their sizeVf#, 50005 data (( >NL) ),(( NROOM) )o Save data$p= `R NROOM"u pCN `R:>,y Write size of room and the grid sizez hRM$ ROOM$( `R): LRM( hRM$): D$(( 6LS) )data ( hRM$,,),( hRM$,,),: LRM( LRM): LM: LF(~ Output each individual data lineB TL( LRM): LL?( LRM LL): D$ D$((( hRM$, LM,))!) ,: LM: LRM: LL:H( D$,), D$( D$,( D$)).( D$) #, D$. LRM 6LS: LFj D$(( 6LS) )data : TL: 6LS 6LS >NL LF: `R:#: FHD:/P: FHD: S, SO: S:% %: S SO:! :  Quit," : RESULT~ TF: M$ Really Quit?: &T$YES!: F$NO: : RESULT񸣚 : : Set Grid," : RESULT~  `:SH1SHSW1SWM$ Same size!:TF: : : ROW@SW1:COLSH1:ROWCOLM$Sprite too small!:TF: : : SZROWCOL:MXSZ(SZ,MXSZ):M$Warning!:M1$This option erases:M2$ your current room!:TF: $M$ New size = ((SW1) ) by ((SH1) ):TF:F$Abort!:T$Ok: :RESULT : L:SHSH1:SWSW1:HSH1:ROOM$(ROOM):: : _ Get sprite parameters ` CSP SP( S): SW1( CSP): SH1( CSP): ڶHOTX( CSP): ڬHOTY( CSP):  SPB(): SP SPB( SPB): NS( SPB ): CSP SP( S): SW( CSP): ھSH( CSP): ڶHOTX( CSP): ڬHOTY( CSP):T ( .R$( `R) : .R$(0, TL( .R$)) .R$: Switch out control panel :,,, ,CTY@, CBY:,,, ,CTY@, CBY:(,, ,CTY) CU$:(,, ,CTY) CU$: Create aANIMALS1.MBK5t OyLh LҼqM1n4 @ id0@cC#G&Bؔ<9JH 0zI0N2.=a^@NEG(+hx L^+ZP$!VLB"El SלaBEf R38@H((p ?`<?> >q^^<>g4>@ha{!ϟy1?ӎC2809 $ p &h !0pj!00h` C  #! d|8:hp`cd@ASL IO8R@ @('yIdBIqRNxG&'!@xy22$ YY($ x73xv;q3 m<#<<? ? #Nhs7+<?1$,@NtiA{^%2g]B ' D `cŚ]" a2F  C˯_!;~s`OH 1r<:nfig' &0d 2 8d'hdbB h"L}@x|V]sJ'sAC?/p7 ? #09)wg<=CB#d6M `#2!L `@Hv: !5#Q!4#3cj1 ;6|Lv-D*@M|HE@P5! #Vq%pIU@a P4K#r4;Š3ŭ39>c}4 <#8όW3G<:G[Bi=ϞSMIhȄŧ_|AO 0` @,~( :Ȃ.L,a{!e~G@OC)ίgG@@}yUKd:%Hɦ5Z QCg !Adi` $kY B> J4g&يL6vb]4+MЙ(3 T@3<́P|#j(?5ROqРġgc&%seEE#A!@34sWYX|, uShPKDF?M xG}U9c9-#(N?6UghZ7 Vv``U|J@0 du" :G^}, ,@>42i1˦7d72 @(VZ==V`z~/GQ+NF9\?/DEvaCVo6p rG<ЉLP*.Gp *Rh@ Nr''>l|i8qhs>?#0q2/b?,xNq?0x9ba2y)g@<]er uSj,~<4$i'<Q--OylC kVd? o@_e/K~ 0i!#pka+[n{ 'љ3GܱߏΠ%0 ~|ayꈵ` *&H p?P@5g!2~"O0 `RBi o^@~3 drZp @`%8= a593^l~fej$C]s%eCƂ=[cOFZ[T43., . =`,Yf$]цG q 'v O]!JQP@lx _0 @`{y&<&wa"vw p&^%Fb'Y(2t253, ˧vNY5jްVe`5[3t-0F*d! %t DrLrY6^sys1_O7tDNO0 'd% uCix7w vqpWQ#7#Q+'B `RfRRIQ McSxRGTt IUyƙ{ydRUtU)z_EwҘ7r{{Xיx||qȚ} }i0t :H  Cc+2xgpC*;2C`yud("W%gpTb6Bbb"`nf%0m{>Uꂧ~puh`a0Nh__|O20 h_&nE  whSV w~[˨'T1e[榬֊LT!q4DuTl K+ k΢tbmkb#p`p^"`l60-;:&^n`ۥ(Pܾ\G‰*< 59`j7äĐtr-ړ0yu_'!Yq0 u376ORPJ=sDaDP!O tt-d^iuu{̐~aǕ6۪AyQ #V VZɕc9gKjixnxT0;yv9ŬyS~ z@yK؈kLc(@K8d z%~SRunUϠ(I` jQ^@̨`qtҦ_Քڋz'vеQNC  bl5Qz((J+jc66ʬ: a1MxdN~7MIN"24MLON)Iy:yx@ %17.!@ `ȶ,F 0p13K0HV(9j| # `@(k'=@qS /3Z#d p(ep;s&4zRSa\_$f/+{ @DT.\P!st@;z!' `r`|( 0X'x' {@`jp50 Pu-i*/,I*60-h# ` NЂ6B,PdbSF `&|lм Wo p SoPf z_t0 ѓO_M4=0 >p Wl4W{y#{>plT  qLa5"K^pu0b Kp>(r(Rqr 9C0qS+q`YM " 0+zu]G?,O̒PMA`"A3 @ /l^'ypT,0W pӀSж;_p `'jr0/ŁdbS Tlм`<(@0(@0 ̂Xhp Ϥ`0 LA a0(@4=0% b o WV0K^{ `  @8F'{>'tVWWPJHWWLu0(r u'GG̔GsWN)y#)-=G&ڐ sR;d;d#ɹB4יؒ|,@_,2j "ɼeeL0O]" 1^,pRcR1UcZxm>S7nEN{>q[ fU+&_  :7?`5UK~Y~3j0Yd'tK G 7Fc"T韁7)PEIp_KŌTq2: .pKUz$uR 2 PIanB"{PP kXwde7VT<)+CN@',+ ;&eW{]20 ,wwh(!xN7tDGT  (,`q {U0@@c{ P,+0)20 W&{ +ٛ#̓lNq@a؎6j{}i60^~U p ` B, 0;`zC 0-~ iO`! `p pn) Ld5 ȄLQp q8V ALy-1w7sdr 0'J)[+δC7f7f~'L^Oq[|˗ ]CδCt&B#Gʢ,hxg`qKW& v#Zxm>S7nEN{>q[ fU+&_  :7?`5UK~Y~3j0Yd'tK G 7Fc"T韁7)PEIp_KŌTq2: HBZp*Kkjt 2 C0+" ``rpY]7qc %OMz ;N'bS73"۾kZpt`m0/kbsT<:ޞk sPp cڤ7@ %zpZ l0:*  Kk KbG,p xKC<){Ox8-{Sj[^.`[1.?ka'9.19.|!Re>j!W#i)Wz5M:4͵2+#Y Y ̔GsWN)y#)-=G&ڐ sR nD+ pL+]+`G")asasasqn̐uXYvɝAq55q"?y20RRwh RGpm>S7nEN{>q[ fU+&_  :7?`5UK~Y~3j0Yd'tK G 7Fc"T韁7)SIp_K=$;7@,U( p.2 pCk;&,i7V33_򴦯/ qka? [3:epp J.Q -cb9N'C2FYOyx 6K>0n0lVk`LRk@ KUk UtZ#f pZe3 \Yh#Fva v8LϮ.Y h pZVV̕ʾ쫉Y(=ֆ YcmO'A&HZB&`RꌈesS7nEN{>q[ fU+&_  :7?`5UK~Y~3j0Yz@ipT ~#+^yeSy2(&RI% ^l<'OpfU( 7 0dp Et\sRS0ڤ7`0/eہk pձ9ྦp`P9ྦ͠ pECvk@{ `'p ,+2&tZ@vo-ej0N pZ.+P-N i~8 8`-εqW WVC@S7nEN{>q[ fU+&_  :7?`5UK~Y~3j0Yd'tK G 7Fc"T韁7)SIp_K=$;7@,U( p.2 pCk;&,i7V33_򴦯/ qka? [3:epp J.Q -cb9N'C2FYOyx 6K>0n0lVk`LRk@ KUk UtZ1b.YUa,ei'O;8jxᱏ85uן 9jKcr CzsC1>87'Qb 0q70\%]W:4͵2+#Y Y ̔GsWN)y#)-=G&ڐ sRL;LccwRQat',8G| A`;L;LGi"7rX !P4\wqV )n/|f0 e,qGܦxi3:%XzV4ꄈ'5jp`VnUKs V=_ !Oᗟ7NvH@ipT ~a:&RIxCrU] GUTYXI7@,?$]pKz4^F-:k2) __QK oP /@ +%u>~8 Yڤ7a " Oy*@ X0Uqs<#>@G b F/1Gţɻ0U׮=MzPh(QZΆ~brppDZ&g ̡3N p ~@ ̡S  2_EiU_@AynhQxhp p"Zx0 @WO@ťQF:Ǽ0PLd[7pp 9`a 9@~ eaJ'Q`8`ƀ b Wr%0dv? P`%gU"J? t @U<,0tCG" YOOaA&"2"@QPܠGp$O @ MY`Y| 2-Ztw w  w  wˇ-0}|زb, p ﻫN տpCpspp$ P^z$ P^j @T(PcK 7 n& &0 2krt;p M ,2?TP*N$eDPۄ<tMt^xpT|T<2="epTPJZMPڐ L8rlg"Q&J4Q àZ  NQ wCS  b'O'7df{兒pq720} )kU 0}0 pmGp ¨%00q2Q ! +P3*`r611Uq8pN Ay>+ uXK_f,/@g` otT\asK@QLy Vзñ"c#6`5p A!@T," + 2 ` 0"\ 2Q$"j txcp _ p  y Pp q/ Q0A4P/pED'"pз z3JRp a5W|ꛧ8K=k:Ug"f cgb{bWVi"b);4ЦCOb/pжYSZ5:C= >'!c=v@[yq#z@TOcN OAN":C`pznnpn@? AA ɚLb 0 +Z+\+\+P+,=G:c(-4ezeBQsQsᔤu LLpe0oP)C u u(QO0QZxm&3:s{ Znj'Vaq6n8d'nU0ت =_ Z$ma73^*vH@i_9FbU]9FrXI_KŌTq^D]p aEwbxp6{R 2nB" pp0 ppr05$4t:71 3 jpggpwh0t#dw @0@ R3FGtT t=4{@ P @+#N {}]]v#! + { +i+`"2"2p{ʀ &Ŀ ' 'Ys' DW`v=j{pϨkص nO'O :N6j5-fK a"~- [vcN.ppK0  0`pm sa7[ fn 21ew2 !߰`7^`h־ LK"+p>R2 5]ؐ+(t(tN%Q s 0DZ sO))QsPfOB~( QTTe"ábsΫP `L2( 1&(l4V5"   l54`CÏD"x< =} <@ / @ !, x$p0?*HtGL?:6f?wO >?Z Ѷme9s>d7ak^ h޽xN =d ]:x8tXc@r;3?nvQJ}? S!L Ճc?̵D 3[s$0= 8 c3j]{-Ʊ?=i?ApW!D?\ŔTRJ㕽X`4C]gn%L WL?z@RpI'?ĵb Ǚ} bgH7jA }Hx߀S*G0Y "! ǀ+p :0!m}P«- %!<k=Xbu֔ dPL=(]{ `H!R>S>}ANIMALS2.MBK5t O],,u LҼqM1n4 @ vd0cA#G FB<T 5c "=WP$zp Mlڄg)@bԋѦd6MaBEf R38@H((B@@  Rxʐ fΞ8O#jיSԘliھA7q>8?;~0?X-3(@?<_ϺY^V f[icis0k>R<]L #Y?fAe e h4slh!YZro`,$ Z`%az <ʙذ .b!@4H9ejڛtpN{fٛhB%"<2=me όZ*`?aBAjP0-<,8tttcx,sәkږ@1?Cqs0QO0:@<BÀ>/!!q0?2e? j$rp@@@x3 R28&|=~<|%pN<pFUf8cѯ3n?` On=|V< o&o%P"+hDu0s U $hP?@A?iJ!/r<2˽;Yg 6 1e## O̐?YvP5$7??bo'\X W%OX G*;@<iHS5"1B B<$9tÆ@ 8xЃCDO 9>`|-@,G$GtQ7|{XhK` ~)`8%H0`er4E@H$8fF2Ԡ,H4 RB mbr7$@pxs8yFV`&<9y(A A;4 8]t&Cw_/r*g# S7Bg ֌5Bͅj*GADQ_|*p " ] 8@|tPq"|d/ "0C!H!bB?oҟk~< @T dEPB p&U|:} mËM=!>8D>1GL'FqW-~ы#͈F5эhG@ѵ#@"L"/HHJ% 1،tIncf8C !ۺ)ݚPv}}zҙA~_ C |98E8Pp&8qL 71oM n'ycrKP7m~ܓ!K'sHs9+ $8TT> 0 (JpwhJwXZW04:ht9W l  mcA~09=¬ Ԉ2^m,OLi"@ q CG ` A>?Á C0<@C<"1pP ?_`9G & P*"W7 S$[X MP ] p@5Dg ! ^XhAa=Q_PW8KcAa=0]8 hX?UDf4#t" sk9 f?yD@!ggvg`yTg@yAdn  Bh+B/SvCWeiiDi6VjP$ETT>VEF#kBkiFkk}TGTrGyyGdlHfll0I3RQI J&J-K0gqQQa GYq,AyQ3vm q!7$'r%s),/A!2s4s79g;ss #@"HQF$J NQSb Y%]%z `Rg&k&O'sur'y&4uv( x<>("TXfG))""*]eu(U\*"+2[T|Αcu,ɲ,,#-b-|--ߢWJW܁0.,%|u/ //f0 01Ff1 0!32%s2Rw0#34c383904Es44K4O5@5^Üa36sP<>27us77{s~&9أ8c @p@=:! ::c?S;;aFA6c<ɳ<ϳ&k=u=g>>>XhFxfS7fuGgDy~A&XBxhxi&*9iFDDLDjjĨEEXFQkF#VvuDl(HݘH#Im (ƨ6솏ЏK 1QAxP֑4 qZ (rr/s"3is+sل>s0t> )D)QGYQ+MIQPQ\nre)& 0%36jYxm T2TB%BJŗyiKu~U9U+˜fj%4 Wre".W)XBXsX//9Z1C1AiI2At3|ę3;Ú)] l`Q]5h%`:.tc7x IXP @eß MOQ p\ ^88> sá#Gc>,*ffHp@xg8=g?8ThhHzBR hƊO6HiEHċ]jj(4jdEf3F˸xkoGkzv xjl1j炎mب$b6P2 mi :@@*oq#٫j s)Cźr*rs1ɬ5"jJP9I`Ii0l>s[w};kώ ;FJ#Ѱ;љѾ+# w|knm/MTC4}yzNj:wX{sdKn{BLGOtN~*UDQJbm#Ynmqf 4AA )q xxA$BdMAZ'BH^I8mmv" u' q'w)wb OB I$.?Dt%OIH AHGUz#OBH= `0P=`{pVi0P=l`{0 >+ʗR6ɐ@>?zV@r=Ҕ2T΂p9.0P*G.jp@ .:& 0ao fAp G4h 12#pH>_0 Wc W?l{PBp7#:C? ?  G i`Zk2d`d ^?F60 7tgkGrmqqFQ*X.t>lʹ'M$ti'Qs գq0 CW >OBG<EG WB>H|kAo>OBG#  >>k }8 ka#Xws@`@0 p sG %y>X$OUX @ȟƟ˿Kx&KR/>FjЏ08m"" p' q'w)wb OB I$.?Dt%OIH AHGUz#OBH= `0P=`{pVi0P=l`{0 >+ʗ# y$#0ϒ$) %V2T0p0 0?@p r%3p) l6:p.!@ hAh O vcS/?Cp p 'qA$?iywt` Po`tA0W0!tA`pX 0e0@ PyAZ adFpKS |W0 6 ؖ^ 3p$Y9 6zT)'Mܤ1) Q184DHEH WϒCHtzWϒCHtzWϒCHt4 >>R$m!@ @XP>pHǐO$4GzO4Gy>'gNlP=t$$@FMu$bp ď l l˿9nďo.n m+ʗ# y$#0ϒ$) %V2T0p0 0?@p r%3p) l6:p.!@ hAh O vcS/?Cp p 'qA$?iywt` Po`tA0W0!tA`pX 0e0@ PyAZ adFpKS |W0 6 ؖ^ 3p$Y9 6zT)'Mܤ1) Q18@HGOBH gAy 0|, >DG WϒCHtt@HW>ps#zO$ z4#X$0 @ @XaS9Q9gX*CwULionpoulos= ASCII table STOS Basic accessory& By F. Lionet & C. Sotiropoulos  (c) 1988 Jawx / Mandarin>  ,(),,$,,$:: ASCII codes::2:" 0 1 2 3 4 5 6 7 8 9 A B C D E F; (dBY*2:(Y)$; ;: <d6XXFZYX:Z  ; ;(Z); PX ZYdwn :Lionpoulos$$=( ** 68000 ASSEMBLER for STOS BASIC  ** Sotiropoulos & Lionet  **4#:˦:ͦ:"SV( ):%J:I$:"SV(J)(I):J:I:,FP:I()()():I,:I:(ASM.PRG,:,:I()()():I,:I:,@:I()()():I,:IJ2,:,W:,W:,W7::ͦ:LINE ASSEMBLER 68000::: MEM START : ;((),): MEM END : ;(()(),)::PRESS ANY KEY TO RUN 'ASM.PRG':w:<::,,,: ,,,: ,,,E::():::::J:I$:I,"SV(J):J:I:,,, P:-@ Line assembler/disassembler accessory -@ Introduction This accessory allows you to enter 68000 machine code instructions into memory. As the name implies, while each instruction is typed in, it is immediately assembled. This is a crude way of writing machine-code routines, but it provides a gateway to the basics of assembly language if you don't have a proper assembler. The disassembler side of this program allows you to decode routines elsewhere in memory:to disassemble the STOS Basic itself or even the ST's operating system. Using the assebler First you must load the Basic accessory file with the command: accload"asm.acb" Press the HELP key and then select the appropriate function key to call up the asm accessory. The accessory will now load up the main program "asm.prg". You will now enter into the line assembler's editor. From here you can assembler or disassemble using the following commands: A [address] (Begin line assembly) The value 'address' is the position from which you would like the line assembly to begin. You can express values in two different bases: 1 Decimal -> 10 145 800 2 Hexadecimal -> $0A $91 $320 The pseudo-instructions of the assembler are: BDF num of bytes eg DBF 200,0 DC.n values eg DC.B "STOS string" DC.L 20,$f62,2342,1000 EVEN (Forces the current address to be on a word boundary) ORG address eg ORG $60040 Z [address] (Disassemble from address) Press for screen output or CONTROL+C for printer output. D [range] (Display memory) Displays the contents of a specified region of memory. The dump is displayed in two portions : hexadecimal and an ASCII portion. Again for screen and CONTROL+C for printer. W (Write a binary file to disc) CONTROL+C (Exit assembler) Pressing these keys will return you back to the STOS editor screen. N`A`M4A=D a=^AOD#Aa~#C#C#C|a:#A@ fB?< NAOM4a,a;BCBCBB#O<A#O(AByA#+Aa;rOM4A=LByCnByCpBGa: f MDg am KZgk'pXHJUj afa 9Cgg ag6 aN`| fXBGa`p?a;p?a;a;a:`:09Cpg k3Cra`>ADa;ja;a:n`(Ha LaOM(a JfyC/a,_ xg`A>`f(J-(`.z®b(j#,%&+t:F6A=`&"9A$9AA=va("9A$9Aa"9C$9Ca "9C$9Ca9 a8D a8> "Ha I`9 Sg Fg' Lg0`aB yA\#A#A#Cx<3CrNua yA#A NuA>a89D Yg ygA=`JNu yCx*NJgMD0<0QB  dSMD gd RyCr#Cx"HJg g`A=X`aXRyCr yCxf#Cx09Craa7a8 fNu09Cra yCx"H,|D*N g0fS(Na8BP TBCT LBCU DBEW bg f`adfNu/ga,_RRyCpB#Ct```09CgNua`az/a agpJf*Sg2 Bg, Wg LfXByD8aQNuByD8adQNuByD8azQNu  g .f  g adNuSBANu NuA@`aC Bna Jg affa`Nu 9WCg 9LCg^Jk8BJfRCAD82XH"9C Akf #CNuf2A @b0#CNuJkXC9CfNAD82XH "9C Akrfa #CBJgl 9Cf 6"9C AfC CY`" 9CC o `#C#CCJGk 9CfRCNuf "9C Af C CB#CNuBC#CCNuf f NuйCNuйCNu 9C#CйC"9CAHЁ#C#CйC#C yCBh!z!z",!z!H!yC NuJkDBJfTC9CfAD82XH0"9C AkfR0#CNuBJg< Bc"HB"yC|2<a^R A #CNuBB@a* #CNuH@aH@2A A?b00#CNu"9C Af.0#CNu yC9Cfj"BNuA+6`A@` a Aaa AgH69D@gB9Cf Aghf4C3D@Aa*azUAgRA`a89DAfa\fyD@A}`yD@a8A#}`0C3D@BBRB9D@fa AmA|`aA}`9D@@@yD@@3D@Sg~`yD@y<D@B@9C@@yD@`TaAaaAg4?BSAgPByD@az_`apAg ?abAg0@B lB@@2Ag@@BBBBB`lahJAg>Aaa Ag A fByD@aaSA`?a A fBByD@a4`taaAg hDA@faSA`BaJAgAatapaf*AlayD@afg3DHg``3DHgaB AgAd`B?yD@09DHtPQQ3DH` aaAdaaUA`a8Aaa Af ?SfaAar4`naaAgVSAgat`B9D@aA}`2aԀAataBAa$atA`aVafA}a aZSfBB9D@`Taa<Ag`varJAg0<0 A@g0< aa Ab49DAaa AbT8D6CDCCyD@a`f gv3@D@aA}`X3NhD@aA`DyD@Ie IeId:yFD@`yDD@`J@f69D@C CbCN`3D@`f` a:aJ fByD@` aa& Lg Sg Jf>f~C/a*_f C9CHôfD:Hźf 9SCg Ba`H@f DAf yaD@g 3NqD@` <LA%`6&yCSR$KpѹAѹC|ѹC"f.rS`PaLa\Ad`aAa6aFf. f4yD@yD@A|`ag?<`,y D@?` g?SfaSAfyD@yD@4`?aA4 b_`aaAgL`?aU`aJAgA?aSf(B0_`B9C`aAaTafA}a `lA$h`g6C?yD@ Ag AgA `f Nu 9Cg`XCX9D8`TCT9D8AD8<PXH NuED8HHƝC<HNSFBZ$ ga`aQNuaJg Bg Wg Lf2<`r@`BACNuaJg Bg Wg Lfr`r`r``H?><a cg agJfpBaL?Nu BObf 9AfRBBBAA 0 ra`a\ afNuaR cg af<y<?FF f<FB  ffNut -g> *g /g &g, !g* ~g( =g& g& .gr (fja zg f(6HöfNugNuBB (gt -g #f(a$f6|NuaRD8 DfFNuah<x Wg R Lfp`(6a`BEF -g /g|Nua`?a08Dż@g@gR@`a<F cf`X`A f`*aFڀ`aZ`ahʀ`ab`a\`aBW`a:]`a2^HHJgzA R`afJgJfNu,NuBNuafJgfNuafބfNua86H@HEH@CHEBEڄ`ar Bd؀QF`a cf8 g$ >fCf8D9CfH|2aL ,g )fXFHa8 +fPFa,NuaD cf8 l2a WgPB:a )fI {grc``4a bgR *g -g" ~g, [gNu 9C9CraNua (gD` r-NuaF af,JfNua&gNuaDgNurapBBJkJGkNu`GD+ d DgP Af BBrcNuA afNuUS?S=CC>SP>gB g0 eP e eat $g6t @g.t %g& ;g 'g "gNu<v B` vkB0 e e  d dHHJjЄ؀`SB raNuADA g. _g0 e e  d0`  gSrbNuJfSBANuBg6fg,g`raBBNuga`AM`݈A@`݀JGkNJkJa4fFaRfHRyC yC0"4CDjB  @C C#C#CNuA`A`GDj @AECH@"yC| f: I0"gR$ $HGDRf8Jj  @B f ggHB4 HBBraNul$BBANu g09Cg@@yCmByCa&axatAaBF"yC|KCz$M0"gt I$HSFj|a/a@ _r@fp.a JkQRA`p.aQ  @ g (abp Jgp+aa`A#av`TM$MQap  fNuA`ۦ Xg Ig Ogv LgJfT`>ah BaagaSfNuH?<NATLNuH?<NATLJ@Nu$<S.aaT$9Ava @a`T$<`aA`٠A`٘aA`ٌ??<>NAXJ@kNu yA bg< f T`Nuf ?<NATAA(a/<D?<NA9(@?@.D?<6NA 9DaaBo/|(>NNAPJ@fVz 9DA0aav ADg aQ`aQp:a??<ONAT:J@fhQa``A`؎X:*.*`N f <0`6 fB@`& f<$`&9A$9ARaBa`p$@UgbSgfSg6Yg:Sg> 2Aa\0a8aR 9Aaa^a` A3`AJ`09CngS@g`\A`Aa 9Aa ARa 9Aa a29ApRfpWapIgpNa0@@0aa09Aa ~a`lp @ + + <+"$<f X҂ЂjNuJfACA4<aTvalQQaDva\Q 9 Af )a a"aaf4"9CHCCpa p a pa QSQaB@Nu9CHSCa |Q` g 9C*@z a 0?a:Q#CNuAC0?2AH2AH2AH2AAH2AH@ @ @f0R@t mrJ9CV 2C AJgFAC A@g6C AHg*C AgCJf00H@`2< cgV dg @f <BJ( g<W ( g<La Qgahg<,a ~aV` DEB(Ԃa bRSA`T F HILSCCCSNEEQVCVSPLMIGELTGTLE<LJ(yf<R`Jk((` ((H( CN00:JP\`~ `RTNuJgSgSgBSg$Sg0SgzSg:JgzSgSgSg gd`:p-ap(aap)` d2aap(aap,aI arp.apWgpLavp)`ra0ap.adpW``a a|p aRp `Lax0ap)`>HЍUaXp(a.pPa(pC`"aN2Ha`n<Da<0` <A`p#Jfz`x`ap+`p#ap$`ap1`a`g " H`" 0HҀa `a g0` `a0a`pSalpR`fpCa`pCaZpR`TB`4B`pUa pSapP`x`1] `2( `tQPQ2Nu2 (faBBxDaBxAId Jgp/aa0at/R fNua`EXG EXG EXG ILLEGAL   (08>|Hz (D.6bOR.@  AND.@ SUB.@ ADD.@ EOR.@ CMP.@  BTST BCHG BCLR BSET   "*2 08@HBTST BCHG BCLR BSET MOVEP.W MOVEP.L MOVEP.W MOVEP.L MOVE.B MOVE.L MOVE.W JR (D.6NEGX.@ CLR.@ NEG.@ NOT.@ TST.@ MOVEM.W (NBCD.B   SWAP PEA   EXT.W MOVEM.W &.6TRAP LINK UNLK MOVE.L MOVE.L  (b.6>RESET NOP STOP RTE RTS TRAPV RTR JSR CHK.W LEA D$,4MOVE.W MOVE.W  MOVE.W  TAS MOVEM.L JMP   EXT.L MOVEM.L ADDQ.@ SUBQ.@  Scc DBcc   (0.,*(&$" BRA BSR Bcc MOVEQ 2OR.@  SBCD.B SBCD.B OR.@  DIVU DIVS 2SUB.@  SUBX.@ SUBX.@ SUB.@ SUB.@ (CMP.@  EOR.@ CMPM.@ CMP.@ 2AND.@  ABCD.B ABCD.B AND.@  MULU MULS 2ADD.@  ADDX.@ ADDX.@ ADD.@ ADD.@ d (08@HASd.@ LSd.@ ROXd.@ ROd.@ ASd.@ LSd.@ ROXd.@ ROd.@  (0.,*ASd.B LSd.B ROXd.B ROd.B ?unknowna`a`H@a`H@aH@?Ha0a0 9oR`JaHa Lp`MD*N(Nav g^ gH g g g eh NRRafgpaS`g NR`g NS<ag@a`p aS`,LBNug\a`RgLpapS`@  e a\`(N`(aNfNuaBj@`4?< a*< a"0NuByClByCjNuCxJg"pRap aHaQp `Nua\09CjyClg aaazga`a`Ha(ABj09CjyClg0R9CkLNu?< NATJ@g`?<NAJ@f@. g fT gB g g" fp ABj29ClR9CmNuaA$BGaŬ`B<  fH??<NAXadLNuH??<NAXaLLNuA.PNuER vSTOS ASSEMBLER (ABNuTERA  MBM/?< NA\` Unknown command 6 ->BAD ADDRSTART?END? KEY  "  Exit ? (Y/N)  FILENAME?  ! BAD COMMAND    / Be   8N *V B      .   .&  $`(*  BD  "$ 8HH$ 8," 0H*   & ,(\.F8 *           $*  ,* F vVB& "( D ,d,  RjZX X(   6XF2  0  &@(2(L (     <&$8,*( 0>4 v 8.b ''??5̄a2a2Lionpoubnk -c(!* "3DUfwBQPp$[_ޜ}ߟ}xd}|~?߯ϣ3w?G_ &'####?N??TTTTTTTTTTTTTTTT@TTTTTTTTTT߿TTTTTT߿߿Ͽ'wswsr{sw0dĀMuÇ73)as1诮 8x~|9;=~~<={GFD$DTL$dDČdT>^Lߟ?xə+HN .L lL.JH.=>~=H,\t־ \EH$@t`@;3saCY\~9ϼ4:87.;(k}[:$FΎ?O'?Meab% d"e &`e"dBez:ظ~bc"$ '"*/2$#&"!#11&*TdHTDdDČlDDdDܸO .Ln.n *L N, M,  N o^]0x0غ*\Eqp20$ޅjPԴ + ]T[:@LH X $k{V #+-+ a% d"e!f`d!fD!"% ab$e405Pr509z9*#& '*#"'&"!#16!("3"&";3 4$dDTDD>?,),,|fvpؠDq`@ǃ?q9gc?† ?0oLՔ)3RZxɉ`08??߿߿><Z:*1aBCTV>sKݚ*Rb߿s70>|r  # g߿:@|?3s <0O0roHB002@h??`Z&|H0XX0 P@\@Ƹ y -[nr@d-.+)-\ڟ?ie5jUqc ?YhoskW}4544?d6XG\ӯTR`x1N%,)$/!6z΀ p942 sT(J%ؙ:4,(0 \o7?c8  00x4L.  {8qqs3u9x: -) 21ufldlDLTHLHIXP0`?   ;:ZP2elC|sr19<8#329@^&0&+.-  ( ($()  2 38`~wspEӒ"/e@0p%{9;G{|T@|8Ϸ{g/ml]x0`<;yu[g((!yvo-X/%:yhq{|~o/9yq9=^>x٩Y rA%Eɹŭ0ɥ@  @@@A@@`3Ç?0Nc Ύ?_-@@@|{NGFhh`HxXXx0313ɡŹɫ<@C#φxťc<рa7@Ȉ̌  88xXX ?qc`"2pGN\yɡ`D;O_8|q9gc3Ȉ#!1qx>?g'?ߟ 48!cgGO?E)>?p8 ?0qy|?x!0>  `{vlX0bČ!f80a`dfbxprclϟ#3x xA 3@g80`hq,8> VSߏ0?|:"} 91x<NL\X;7/.;?_o7?w?gL?( 9l8qLJ???_qqãCÇ??? >xÅϿߟ?8><|x80@?<Ɉqa10{<A`4y 9I#߯o7O8 0 pTР?^(? 8?Ɔ ! }~p.m0??~>NDE$Rpϟ=_~Ox`|$ b `@``h h  @@  @@  @@  @@  @@  @@  @@  @@   @0 F@@   @0P0p00@8Px080XA  @A@@`        @0Xp808@0Pp08H( (808 0x(8X8X8       w 0X80v܀d?}x?Ls7>|~̇ : ȈȈE)?0?g't?@xr |qcG?gϞ'fd  p`>?VR  =90Xy3ˋ?c8 x~?? >?㳑i? ??gD@D@LDA@OGC@GD@A??s|!q9HJK ˋ KK <>~@Ί `s0a8<>ϯg 1' <@@??G@AECGO_O_1?8?8p|χ>k=܀8<~{1?0spx8`?̀`90?p??'|<a??/?/?023#!qpXHȈ np800 0@   y 1  LĄ0 ~<0 p8p8gca!8  @> 8p@`1qQPp`@` p`@1qpp00@ ` ` TFB`@` }=)+*kcbB`@`@@ ` `c?>< w? 8vܻq`ǃ}    10xmHIHx~3x? &0 g## 1p0p0p`@ }< ? ?p <@` \0 '/.' |@P`p6`@0VSߏ|<|~  >ۻ>|?m? 8<8<08>?08?@d18LaގAx<?a0p0p0p0aÃ@ `  @0~?8?|χ0H<܀ <8<~{1?``,8?p<>6|<xxx~wxTXXUx x~wxx?? π ~o|o?=sߍ 0? 30;S i`90 Ӹ ( 50( ? a?y0c?3ӟ@e/ÃÃ/_@A@A@@ug????e}?]9M7OK(WP=PϨP|v@@@@@@@@@@@@@@@(P|vPϨP=W_./.z_UU<Y/#ހ?ހ?L`l݀Pp߀III }@5{ù/pz'^_ހ`` ?>?>?>? Y5K I I I Initialise menusd{PdFiZaX:A$:(X)A$:Xn[X:N:[YN:A$,Z:(X,Y)A$:Z(X,Y)sY:X&x(,) , ,8:::,C0:,C1:NJ---> Initialise text,Ȝ8d:T$(2)TX:\:T$(X):X:T$(X) +---> Reserves memory bank,:1,p---> Check extension:\,X(,):]4.T :N:' ---> Reads data packingD$HAUT( ),!L(),!H():$ <]X:$HAUT(X):XJ]X:!L(X),!H(X):X菘:,C0:,C1:>򠛦:,:s(,,:::T$():^͊Ί---> STOSϊ*Р:^4,,,՘]3 About Compactor04, ,,6,,:^9, ,::(),()(3),( )|>,:T$():,:T$():,:T$():, :T$()"C, :T$( )H`M:M`\:R:  Quit(y&'t:R,OLDM,(): : Quit and grab.T:N:'( 't:RN :,LPACK:(),()LPACK() : Bgrab() ,5 : Erase(),5`   ---> DISK < : , , , H, , ,   Load NEO picturel ::R$(*.NEO,T$(),):::R$:0 !((R$,)).NEO:" &AFF: Wl ::R$(*.PI1,T$( ),):::R$:0 ((R$,)).PI1:" AFF: Wl ::R$(*.PI2,T$( ),):::R$:0 颸((R$,)).PI2:" AFF: Wl H::R$(*.PI3,T$( ),):::R$:0 M((R$,)).PI3: RAFF W zp \(,):(,):,, ,(,,::,:T$()0 aR$,::(,)\ fAFF::():::::::(,): kAFF:,C0:::():::::,C0:::(,):0 pT:N:':@ z::T :N:':   Save BINARY fileN R$(*.PAC,T$( ),):R$:J (R$,.)R$(R$,).PAC  zN ,, ,(,,::,:T$(). {R$,()()LPACK Š: Save MEMORY BANKNR$(*.MBK,T$(),):R$:.(R$,.MBK):N,, ,(,,::,:T$()B.$:::,LPACKB)(),()LPACK():R$,*.:::Ȁ:3:FB.::T :N:': ---> PICTURE0:,h,,0, Pack whole picture6, ,,<,,:::0 ,:T$():,<C:Z:XY(,,AFF,FLAGS,$HAUT(X),,,!L(AFF),!H(AFF)$HAUT(X)) ;T$();X;T$();Y;T$():YZZY:CXX:d"C:T:N:':(,):(,):(,):'::,:T$()(Z)T$()::,:((Z@T)d) % T$(),LPACK(,,AFF,FLAGS,$HAUT(C),,,!L(AFF),!H(AFF)$HAUT(C))01, :T$( ):'D6(,):(,):(,):; g Pack part of the picture.hT:N:'0mAFF:,C0:$r:::():|wNC():DX:DY:FX:FY:,,,|C::C:DX,DYFX,FY:C:CNCC:MK:K$::MKK$: K$fX(()):Y(()):MK*XFXDXX0YFYDYY|*XDXFXX0YDYFYY|H,C0:,C1:AFF6, ,,<,,:::0,:T$():,<C:Z:X^DFYDY:D$HAUT(X)̛Y(,,AFF,FLAGS,$HAUT(X),DX,DY,(FXDX),D$HAUT(X)): ;T$();X;T$();Y;T$():YZZY:CX̂X:d֢C:T:N:':(,):(,):(,):۠::,:T$()(Z)T$()::,:((Z@T)d) % T$()LPACK(,,AFF,FLAGS,$HAUT(C),DX,DY,(FXDX),D$HAUT(C))0, :T$( ):'Dꠀ(,):(,):(,):/ Erase picture ON/OFFx0,FLAGS:(,FLAGS)(,)T$()(,)T$()5 Change palette ON/OFFx,FLAGS:(,FLAGS)(,)T$()(,)T$()' '---> Alarm box'6', ,,<, ,:::"',:T$( )^'XN:,X:T$(TX):X':'$:')'.'q'r---> Confirn's't,, ,,,::::,:T$():,(),()(),()'y,(, ,,,::::,:T$():,(),()(),()0'~za:(()())@'()RR:('::::O ---> English menus.P STOS , DISK , PICTURE zU, About COMPACT.ACB ,,-,, Quit,, Quit and grab,Z, Load PICTURE.NEO,, Load PICTURE.PI1,, Load PICTURE.PI2,, Load PICTURE.PI3,,-,, Save BINARY FILE,, Save MEMORY BANK,_, Pack whole picture,, Pack portion...,,-,, Erase screen,,*Change palette,ó ---> Menu Francais.ô STOS , DISQUE , IMAGE xù], COMPACTER !,,-,, Quitter,, Quitter/rcuprer,þ, Charger IMAGE.NEO,, Charger IMAGE.PI1,, Charger IMAGE.PI2,, Charger IMAGE.PI3,,-,, Sauver F. BINAIRE,, Sauver B. MEMOIRE,à, Compacter image,, Compacter partie,,-,, Effacer l'cran,,*Changer palette,7---> English messagesj8PICTURE COMPACTOR,Stos basic extension, By F. Lionet,(c) Jawx / Mandarin 1988Z= Erase screen, *Erase screen, Change palette,*Change paletteB LOAD NEO PICTURE, LOAD DEGAS PICTURE,= SAVE BINARY FILE (default extension: .PAC)VG'The COMPACT.EX extension is not loaded!,Press mouse key to go on...L Disk error!,Select an option...,CONFIRM,ABORT,QUIT and GRAB: WARNING!,#packed picture is copied in bank 5!QA moment please...,This picture can't be displayed,with your monitor...,9 SAVE MEMORY BANK Bank number is 5!V Trying best way to pack picture:, - Try, ,size:,"This picture is not worth packing!, Final size:, bytes.,of the initial size.z[3PACK PART OF THE PICTURE: use LEFT and RIGHT button,+to fix corners, then press to pack.,Ǜ---> Messages FranaisrǜCOMPACTEUR D'IMAGES,Extension au Stos basic, Par F. Lionet,(c) Jawx / Mandarin 1988`ǡ Effacer l'cran,*Effacer l'cran, Changer palette,*Changer paletteǦ CHARGER UNE IMAGE NEO, CHARGER UNE IMAGE DEGAS,= SAUVER L'IMAGE COMPACTEE (Extension par defaut: .PAC)nǫ*L'extension COMPACT.EXA n'est pas charge!,1Pressez une touche de la souris pour continuer...ǰErreur disquette!,Selectionnez une option..., CONFIRMER,ANNULER,QUITTER / RECUPERER: ATTENTION!,2L'image compacte est recupre dans la banque #5!ǵUn moment S.V.P...,!Cette image ne peut-etre affiche,avec votre moniteur...,< SAUVER LA BANQUE DE MEMOIRE La banque sauve est la 5!Ǻ"Je cherche la meilleure mthode..., - Essai, ,taille:, Cette image est trop complique!,Taille finale:, octets.,de la taille initiale.~ǿ1COMPACTER UNE PARTIE: Utilisez les boutons GAUCHE,2 et DROIT pour fixer le carre, et pressez .,---> Datas packing8 ,,,, ,,,(,%,,(,,(,Lionpoulosxx= Memory monitor STOS basic accessory& By F. Lionet & C. Sotiropoulos (c) JAWX - MANDARIN ͦ:S$()l\(() Stos :(,) Set address :(,) - :(,):(,) Help:(,) Quit T2\X:(X) Program(X) d<\Y:A$(Y):(A$)A$A$ &FX񸈚[ dP(X,Y)(X,Y) BankA$ empty :(X,Y):\ xnZ(X,Y) BankA$ at ((X,Y),) :xd(Y)(X,Y) BankA$ empty :(X,Y):\ xfn(X,Y) BankA$ at ((Y),) :\ xxY:XAD:kR>---> Main loopNADADPYY:\,,,,4K$:K:K$\l"ȢK$( )6Ң(K$)(K$)$ܢ(K$) 2XXN::d(S$(YY),XX)K$:XX,YY:K$;:XX:TKKXX XX:XX,YY:TKMXXNXX:XX,YY:lKRADPADADP:>:PKGADADP:>: "KHJ@,YYYY:XX,YY:46ADP::@ADPADP:ADADP::,YY::A$;:X:S$(X)S$(X):X:S$()A$:XX,YY: JKPh@TYYYY:XX,YY:^ADPADP:ADADP:::,YY:A$;:X:S$(X)S$(X):X:S$()A$:XX,YY:hKXX XX:XX,YY: ;:XX,YY:(S$(YY),XX) :xrKa:,YY:A$:S$(YY)A$:XX,YY:2|Kb:---> RETURN XX?X:Y($(S$(YY), X,)):YYY2ADX,Y:X:pX:Y((S$(YY),@X,)):Y†ADX,Y ̂XD֩,YY::S$(YY)A$:A$;<XX?XX XX?T&e,,:,\d---> Set address2 ,, ,(,,::J:$:,:Enter start address (hexa):;A$0&AD(A$): :>:0---> Help2: ,,,(, ,::2D,:Move cursor with arrows,8N,: displays previous page4X,: displays next page,<b,:" erases all changes on line,,l,: fix address,<v,:#Press to validate changes.8,:DON'T CHANGE SYSTEM ADDRESS!!!*, :Press any key...:h: ---> Quit :Ɗ---> Bank address X: X: X:X\Y:X񸈚AD(Y)AD(X,Y)>: ---> Print lineA$(AD,)$: :jlX:A$A$(((ADX),)$) :X A$A$ :kX:Y(ADX):Y A$A$()A$A$(Y)&*X:ADAD:4---> Print pagen>ADPAD:::kZ:i:S$(Z)A$:A$:Z:HXX :YY:XX,YY::R---> Error correction0\::AD:>:> LionpoulosZZ=$ *$ * *$ * BANK INPUT *$ * *$ * Part of the STOS basic *$ * By Franois Lionet *$ * (c) 1988 Jawx/Mandarin *$ * *$ * 15/8/88*  ͦ:&!D(),#UNP()0]X:X:X2d,:>>> MEMORY BANK INPUT <<<(i, :Please enter :2n, :- Bank number :;BN2s,:- Bank length :;BLDxBNBNBL:dn,:$When the end of the bank is reached,:::$the program saves it (fortunately!).::::%Enter the numbers as they are listed.:::6You can omit the zero at the beginning of the numbers,:::7but YOU MUST ENTER THE ASTERISK when you encounter one!::8The asterisk means that the following data is compacted::::?It reduces considerably the amount of data you have to enter...(:::Don't loose courage!>,:... Press any key to begin ...::wȴ\ͬ:O-OZҡO| Address | DATAS | Checksum |ZסO-Ohة,:O-O,ܠ,,,P,, c"Xj,X:O| | 8| |; XBN,BL:AP(BN):ADEND(BN)BL jYY:,YY:O| | 8| |;:4Press RETURN to accept address (or type new address):,YY:(AP(BN),)$;,A$:A$d|"A$( )eA$:,YY: ;:,YY:A$:A($A$):AP(BN)A:,YY: | |;:,YY:(AP(BN),)$;DAPADEND::A$:<(7):CHK:h*N, N,YY:D$;(D$,)*#UNP(N):!D(N)($D$):CHKCHK!D(N):N,YY: ;(!D(N),)$; ;:h&(D$,)*D$D$*:#UNP(N):!D(N)($D$):CHKCHK!D(N):N,YY:*;(!D(N),)$; ; NvE,YY:D$;:C($D$):E,YY: ;(C,)$; ;$CCHKCHK::::1--- Checksum error! Please re-enter the line. ---::0)AAP:jN^.#UNP(N)A,!D(N):AA:j=3D!D(N):NB!D(N):(NB)((,NB))C:$H8jXNB:A,D:A:X=N:APA&B:LINE:AADENDL:Q, : HURRAH ! You've reached the end!:V,: Press any key to save your bank. [:wH`F$(*.MBK, Enter the name of your bank,)(eF$w:`@j(F$,.)F$F$.MBK8o(F$,.MBK):`8t:, :... SAVING ...:myF$,BN~n:,:To load it in your program,:::+use the following statement in direct mode:D:::LOAD (")F$(") .,:... Press any key ...0X:X:X:w::4::, : DISK ERROR!:2 ,:, :Check your drive!ĘV\Lionpoulos n n=( * ( * *( * MOUSE ACCESSORY *( * *( * By F. Lionet *( * Part of the Stos Basic *( * (c) 1988 Jawx/Mandarin *( * *( * 2!C()07 =YH: =YD: =COTdͦ:: =DM:]k =X:! =C( =X)( =X): =Xin_s, ,,<,,::,:LOAD A DEGAS PI1 PICTURE:,(),()(9),()x, ,,<,,::,:LOAD A DEGAS PI2 PICTURE:,(),()(9),()}, , ,<,,::,:LOAD A NEOCHROME PICTURE:,(),()(9),(), , ,<,,::,:LOAD A DEGAS PI3 PICTURE:,(),()(9),(), ,,<,,::,:QUIT:,(),()(9),() =OLDZ:a| =Z()$Ң =Z =OLDZax*ע =OLDZ| =OLDZ:$ܢ =Z| =Z: =OLDZ =Z =Z* =OLDZ| =OLDZ:, =Z:@1ZFILTER$.PI1:M@6ZFILTER$.PI2:M@;ZFILTER$.NEO:M@@ZFILTER$.PI3:MNEF$(*FILTER$, Please select picture, )(JF$::O(F$,FILTER$): ^MMc:F$:BmYGH(YH):YGD(YD):TY>rH$(,,YGH,YGHTY)>wD$(,,YGD,YGDTY):|COMAX:COMAX*CO:OLDXM:Z:XM:YM:KM:KMXMOLDXMYMOLDYM<YYHYYDOLDYY,,,YGH,YGHTY:,,,YGD,YGDTY:(,,YGH)H$:(,,YGD)D$::,Y:():OLDYYN:CO:,Y: X:() Y:() bKM::CO(CO)COMAX:XMLOLDXMXM:OLDYMYM::KM BX:X,!C(X):XdH Lionpoulos =$ *$ * *$ * DATA GENERATOR *$ * *$ * Part of the STOS basic *$ * By Franois Lionet *$ * (c) 1988 Jawx/Mandarin *$ * *$ * 15/8/1988*  ͦ:0qX:X:Xc ~~~> Loads bank^dF$(*.MBK,3 Enter the name of the bank to be listed,) iF$::@n(F$,.)F$F$.MBK8s(F$,.MBK):d8x:, :... LOADING ...:s,}F$s<::, : DISK ERROR !:K:dNJ ~~~> Screen or printerȴNͩ, :(S)creen or (P)rinter ?;A$:A$(A$)<PRT:A$SPRT*עA$PPRT"ܢPRT栢+ ~~~> ListingB,tBN:(BN)BN@1A$ ---> Bank number :(BN):zB6A$ ---> Bank length :((BN)):z ;A$:zbA$A-A:zbA$A| Adrs | Datas | Check |:zbA$A-A:z<AD(BN):ADEND(BN)(BN) zrTA$A| | 0| |4B$(AD(BN),)$ (A$,)B$jCHK:zXN:ADADENDB$ 0:yjD(AD):x`X:D(ADX)X:xvB$ ((AD),)$:CHKCHK(AD):ADAD:yX:y:X:(ADX)DXADXADEND:XX:CHKCHKDX:ADADX:B$*((D,)$)((X,)$)Z(A$, N)B$:(A$,;)(CHK,)$ւN:zۄADADENDbA$A-A:z0X:X:X :A$8PRT{RL:A$:w6L::$Printer error! : clearkey : wait key Q:LionpoulosBB=  SCANASCII.ACB( STOS basic accessory&2 By F. Lionet & C. Sotiropoulos< (c) JAWX - MANDARINF`P ,,,,, ,,,,,.Z::,: Press a key..dd:d:A$:A$:Jn: Letter: ;:(A$)A$ Fx Ascii : ###;(A$); / ;((A$),)HX: Scancode: ###;X; / ;(X,)A$( ) ::s}Lionpoulos=6 * Copy system files across * 6 * par Lionet F. & Sotiropoulos C. *6 * (C) JAWX/MANDARIN *f(!A( ),A$( ):x:I :!A(I):Ij2ͦ::::I :A$(I):I,!A(I):IP<EInsert your STOS Basic mater disk into drive A, and then press a key.4F:::\:STOSP:Loading system files...::I :Loading ;A$(I):zA$(I),I:IHZ::Insert a new formatted disc into drive A, and press a key.~d::p::ASorry but this disc does not have enough space left, try another.:dnstos::Saving new system files...::I :Saving ;A$(I):{\stos\A$(I),(I)(I)(I):I:ͧ::Dx8,,>,:,2, (,,, ,X BASIC.BIN,RUN.BIN, FLOAT.BIN, SPRITES.BIN, WINDOWS.BINP MOUSE.SPR,8X8.CR0,8X8.CR1,8X16.CR2, MUSIC.BINLionpoulos = TYPE.ACB STOS basic accessory& By F. Lionet & C. Sotiropoulos (c) JAWX - MANDARIN2hPdhdFicX:A$:(X)A$:XndrX:N:djYN:A$,Z:(X,Y)A$:Z(X,Y)vsY:X:ECR$,IMP$,ERR1$,ERR2$,T1$,T2$,T3$,T4$:e6x y,,,::T4$eNJ---> File ȧeZ,,͘eN$(*.*): :+---> Output,6,;1Z6OUT:(,)ECR$<---:(,)IMP$:Z;OUT:(,)ECR$:(,)IMP$<---:---> Start printing@::=> ;N$::T1$::T2$:w:#,N$pg:A$(#,):(A$) (A$) (A$) A$.,OUTA$;A$;*K$:()K$()"K$( )hw:f. ::::T3$::e---> Errors:::: :ERR2$:::ERR1$::8蠦 File , Output , Start printing T, Choose file ,, - ,, Quit,8, Screen ,, Printer ,*, Start printing , Screen , Printer , Disk error !!!,Printer is not ready!,; stops and restart listing, ends listing.,Press any key to start...<Printing finished...,Choose one option...BL Fichier , Affichage , Debut impression \Q, Choisir fichier,,-,, Sortir,:V, Ecran ,, Imprimante ,,[, Debut impression ,` Ecran, Imprimante , Erreur de disque !!!,L'imprimante n'est pas prete!,G arrete et redemmare le listing, arrete definitivement.,'Appuyer sur une touche pour demmarer...BeImpression terminee...,Choisissez une option... dialogue boxV :: CU$(,, ,CTY@, CBY):::F :::::,: M$:,:: TF: TT ( &T$): xFT ( F$):( TT) &T$( TT);: ,:( xFT) F$( xFT);::::p, WTYp, WTY(X ¢ TF,:M1$:,:M2$:TFD à: TF,:M1$:TF Ţ TF ^ . Ƣ ƛ  XM: YM: YM" ZN(,) YM" ZN(,)" RESULT( XMq) ^ ̠|: TF FHD,,, ,CTY?, CBY:,,, ,CTY?, CBY:(,, ,CTY) CU$:(,, ,CTY) CU$:  Invert button ::" ZN( ZX,)," ZN( ZX,)" ZN( ZX,)," ZN( ZX,)::0  Test button to see if it has been pressedP  ZT(): MK: ZT ZX RESULT:  MK" : : MK! : RESULT: RESULT: Select a sprite 䠰:"SL(,),"SL(,)"SL(,)@,"SL(,)0:DX(ZX):DX " SNS:: I:SISI:S,SI: `:S,SI: :,"SL(I,)(@SW1),"SL(I,)(2SH1)(SH1@),SI:::I:,d,,:SS:::: `:H(SH,SH1): S:: % S NI:)$ :' NI: &SI S NI: S, &SI: `: S, &SI:)$ :," ,|,,X Data for slots,Z,,S,,,^[,K50 restore 50005:read nl,nroom:if room>nroom or room<=0 then boom:return\50001 restore 50010+(room-1)*nl:read gridw,gridh: cls physic:cls back:for I=0 to 319/gridw : for j=0 to 199/gridh:read s : if s>0 then sprite 1,i*gridw+1,j*gridh,s:update : put sprite 1D]750002 next j:next i:wait vbl:sprite 1,100,-100,1:return ^ ^L,l L, l  PALT0Pp0Pp3Uw ??%&$?$$$??$?%$$?$$&R $| < px~|8x|<<|p><<~ǃ;x |<q ?>>v<8|xpx988~σ0~߃{y.  pQjuj__xxں=|ڃSF$HjD$HPcxNg w0PpppuwW'w ?>#U13UA?x03#13s3?00x3#3U3UA?003>#13X?0030#33U3UA?0030#331?000#1U1UA?0x0 ?9~Ù~|~|)~ 9~|9~|9 @``cpf`xf`pg`A``f @gDDgfcfwf{fgwgfAffcDDa€`fbfc`fafbc€!n`l1fa?yf`f1a?q=19x~`~ǀ1l`0a!f`0a`f|`|0`f`0f`l`0fax~0cǀٰ1߽ڽ{ٰ1ss`{a````w````{a`x`{a`````w```{a`x`xa`~`~`~`n`~```xa`x`xa```~```}``xa`x`xa``|`|``|`|`|`xa ;{{{{{{{(JZONYbA$JX AFFFLAGSC1wC0 The STOS Map and Room designer This accessory program has been supplied so that you may construct rooms of background data which can be used in platform and ladder type games. It enables you to build up a variety of locations which can be displayed and used from within your own program. Games such as Gauntlet, Time Bandit and Bratacas have various background displays. Each display is made up from a set of sprites. This is where a map designer can speed up the development of a map-type game. Each location can be designed with the mouse, then the relevant data and controlling program can be saved out to disc and then merged into your program. You can even use the sprite editor to grab background sprites from many commercial games, modify them to suit your needs, then use them in the map definer to create your own displays. Terminology The first thing to understand about the map editor is the terminology used. When the word "ROOM" is used it refers to a single screen of sprite images. These images or building blocks are used to construct a room. You must of course design some sprites before using the map editor using one of the sprite accessories. We have supplied a demo file of sprites called MAP.MBK - the sprites in this file are 16x16 in size and depict walls, floors, treasure and potions. Using these sprites you can design screens similar to those found in Gauntlet. Another word to become familiar with is "MAP". This refers to a list of rooms. By moving an animated character in a game you could allow him to travel from room to room. This grid of rooms is similar to a grid on a local area map - hence the name map. Using the map designer When you first enter the map designer, the first thing you encounter is a file selector. From this you must load up a sprite file to use for designing rooms. This file will be analysed by the designer to work out how many sprites can be plotted on the screen. The very first sprite is used to calculate how many sprites fit across and down the screen, dictated by its X and Y sizes. It's a good idea then to position map sprites at the start of the sprite bank. Once the sprites have been loaded you are presented with the design screen. From this screen all the editing, loading/saving and manipulating of rooms takes place. Editing a room At the base of the design screen is the control window. This is used for many purposes and provides an easy-to-use environment. When your pointer is over the window you can select the various options from within it, but when you move it into the blank area it can be used for plotting sprites onto the screen. Because the room is a full screen in size, the window can be moved up and down. If you wish to view and edit the whole screen you can do so by pressing the Spacebar. The sprite used for plotting is the middle sprite out of the three displayed in the window. You can select other sprites using the arrow icons. < (Select previous sprite) << (Select first sprite in the sprite bank) > (Select next sprite) >> (Select last sprite) To plot a sprite onto the screen you must move the mouse pointer around the room display area and press the left mouse button. You can delete a sprite by pressing on the right button. The window will get in the way at times, so to move it about we have supplied various ways to do so. TOP (Position the window at the top of the screen) BASE (Position the window at the base of the screen) MOVE (Move the window up or down using the mouse button) As we said above you can also remove the window by pressing the Spacebar, but you will also need to return to the window to select other sprites and functions and this can be achieved by pressing the Spacebar again. Creating a map When you have designed your first room you can go on to create more rooms. The menu titled ROOM has 7 selections which you can press on. The one we are interested in at the moment is 'ADD'. Press on the ADD area and the TOTAL number of rooms will increase by 1 and you will now be editing ROOM 2. Don't worry about room 1 - it's still in memory and can be called up by pressing on the < button in the ROOM menu. Here is a description of the selections in the ROOM menu. < (Go back to the previous room) > (Go forward to the next room) << (Go to room 1) >> (Go to the end room) ADD (Add a new room to the end of the list and edit it) INSERT (Insert a new room infront of the current room) DELETE (Delete the current room) Storing and programming maps When you have completed a map you can save it out as a .MAP file. This can then be loaded back in at a later date using the LOAD function in the FILE menu. These files are only for loading and saving from within the map designer. To use the designs in your games you must use the S.ASC option which will save out an Ascii file. To merge in the file, load in your game and type the following line: LOAD "filename.ASC" The word filename must be replaced by the name you saved the file under. The program lines will now merge into the current program in memory at line 50. You will need to ensure that your program does not contain conflicting line numbers, otherwise they will be overwritten. Now you can call the routine with these small couple of lines: 10 mode 0:ROOM=1 20 gosub 50 The variable ROOM signifies which room will be displayed to the screen. Another little trick is to copy the colour palette out of the sprite bank. This can be achieved with the following Basic commands which is also included in the map definer program: 99 rem *** Find palette address in memory *** 100 X=hunt(start(1) to start(1)+length(1),"PALT") 109 rem *** Add 4 to pass by the string PALT *** 110 X=X+4 119 r em *** Copy the palette into the current palette *** 120 for a=0 to 15 130 colour a,deek(X+A*2) 140 next a Here is a description of the file menu. LOAD (Load a map for editing) SAVE (Save a map to disc) S.ASC (Save an Ascii Basic program) QUIT (Exit from the map designer) GRID (Change the grid size of the current room) The GRID command is used to re-calculate the X and Y axis. This is dictated by the current sprite. So if you find that a larger set of sprites are to be used in certain rooms you can re-size the coordinates, and not be restricted by the default size set by the first sprite in the bank. To see how this works, load MAP.MBK into the sprite editor, make one of the sprites twice the size using the Set X/Y menu, then save out the file as MAP2.MBK. Load the map definer, select the large sprite and click on GRID. Now the large sprite will fit in amoung the other sprites on the screen. Points to remember When you design your sprites remember these following points: * Always keep the hot spot in the top left hand corner. * Try to keep all sprites the same size. * Sprites less than 16 across and 8 down will not be allowed by the sprite editor.  403118433 3 1616" !"(","!",",",,"!",",",,,",,"!",",",",",,"!",",",","","!",",",",,","!",",","",","!",",,,(",","!",",","!",","!",""",","!","'",","!","'',","!","''","!","'',","!",",,,",,","!",","!", "!" ! 16163 !3 !3 !65 43!3 !3 73!37383!38383!38383!38:83!38:83!38:83!658:83!38:83!38:83!38:83!38383!38383!39393!3 ! 16163 %!3%3%!3%3%!%,,,)%!%,%,%,)%!%,%,,,%,%,*%!%,%%%,%,%,,%!%,%,,,%,%,,%!%,%,,,%,%,,%!%,%,,,%,%,,%!%,%,,,%,%,,%!%,%,%,,%!%,,,::%,%,,%!%,,,::%,%,,%!%,%,,%!%,%,%,,%!%,%,%,,%!%,%''%!%,%''%!%%,%! Xwbq ď l l˿ oُo1M U[RPb^Ŏnn00ꡒ00m\Ywwr'b p' $.)DOCD[4{ PGH AH X}z=$DHAգ! gգ@X >>| /?,ɐ@>0ϒ$)&my2T(p M?@p 2 0 0?@pr0 ;q&00rqpgk4Fp0 P6:x 7'AR94<psr p t0&#c q3Pt0r$a  ? A }@@&vq 07A6" ؓp$@:z=  PA?%U9 M`0 ~T!Ǒ$V!Oq@H ɐ>DG ɐ>DG;> sAH Pv1 Qs#zO$4u'Xa8zDH 1 P m0 k $#00 P%P@8p ď l l˿9nďo.n m+ʗ# y$#0ϒ$) %V2T0p0 0?@p r%3p) l6:p.!@ hAh O vcS/?Cp p 'qA$?iywt` Po`tA0W0!tA`pX 0e0@ PyAZ adFpKS |W0 6 ؖ^ 3p$Y9 6zT)'Mܤ1) Q184EHEHgAy @H yCHtt@HﰣCHtt@H >>Or p ܁&jr P9$0  p P9g   P m0 hÐOBH=2G ǰ@/eǧjjdt.t/ 0G@ȟƟ˿Kx&KR/..ЏЏЏ͏m0ۆ0 u' q'w)wb OB I$.?Dt%OIH AHGUz#OBH= `0P=`{pVi0P=l`{0 >+ʗ# y$#0ϒ$) %V2T0p0 0?@p r%3p) l6:p.!@ hAh O vcS/?Cp p 'qA$?iywt` Po`tA0W0!tA`pX 0e0@ PyAZ adFpKS |W0 6 ؖ^ 3p$Y9 6zT)'Mܤ1) Q184$GOBH WҍOBG3|, >DG5;>DG5A6H POr p >1q p Q!HXuEH0@ @XǐO@@0Sazz=rG >pE AK.WX8"_2#Rarja揫Ꮻp ّ IAA6+6D-&mmmmmq ,K ,K ,KapKPm,, q0AR $ AH7%Ob0P 2!vߊ$ta!`>OBGۖAHB#1%ư v'T Ŀ6)° Œ\1=Ҕ`qpo.%έ4i?`%6)` %6)C<ƀ=>=p=>Oԓl==>%%6)087$ L> m? `gs $? `Г]H?=ѣ1 %?@` ,>=J` ,>v8gm2=Ѧq I4r_|lזG1 $  #ZvAn/#MvT%Ax#T%Ax#T%Ax>5d0$#Mv(1$䀸Z1}&`)}A`C5FaV/UB`{ffB7DF`pQD!!t;pO[B`Ce `eDZ@\#e0rQQ#R%3"->&>7%-a揫ᏫQQQQQQQQQa2ہD \KFNFNFNFNFNd{Qm,(,QmQm,, 0$OSBh $խARx(bhO/a!`m0$t@x n$?$a!`-tZ:PtFas86)rq'=G ?@Hy xBPJ&\bR> ?>PbR>c %6) `DPbCPُ m?aPRb#1%6)|=cPb9QaQbȃ>%%6)#% G ?Pb<Pb#\ r{⃇'=$Ay=e*}+\=d\?@P G?\?@P G?\?@P G\CC=dCpA޷k6$Y@a Z1A`Zb0F`A\e!!t;pO>1/6DZַ?`DZG\\#eȥ#AK.WX8"_2#RrsasSRٲAf}n&CHTmmmmmq ,K ,KaՆ"6pK1D7$OSBh $խARx(b>#CHBۄTjGZs86)rq'=G ?@Hy xBPJ&\bR> ?>PbR>c %6) `DPbCPُ m?aPRb#1%6)|=cPb9QaQbȃ>%%6)#% G ?Pb<Pb#\ r{⃇'=$Ay=e*}+\=d\?@P G?\?@P G?\?@P G\CC=dCpA޷k&t޷k' AA`B\eb0f0Bb0/6DZB`Ce $1=f?\&"`&!`Vix 7!PQ#R%3"&-&XOf}np y«Qp  ّ oّ A~`B"9('^c  .HxH,IBxN#i !haCH s@C %8@n)  A } }ʞ-P8>`L@H̙ x0//!%v?^Pk MO?<AgNS8EωƔ+>ԭ0_y|쀡Cno16aWH HpӏZW185ȏZG px0 jȡÄh&vՂ-7R%@ ?.ӆ.p@ 1idh|R%uBdu?6PBA$Zf 0gLvkjFAWk [)6q&Y}JFj~hE_؜V؛y6fhje %SdŦ'w*Pd=Bd= (Iqj`(P+S )e+5Z `dU(XamEڮN5gBd!PB>0p/!X:"A8>6@HDQr@"ǁh|!>@lwRDAxG07$4*øI44|Tc'G*UAL)B1PLTHJ52⥆Sb H`-XdJQ QZ?JTev/|^p]Qw$bSPR^Wpk_@2a*I 0gb0&2d ȼe`Y0˴̘3C&lF3gϖVj"-#D4/qĜZ׾6m(E9R֔De*UQW ,wYҒ,3R2(`zx@*|!=l ,PI@<EHYp @eģѐ, zфaI-1Fb ' - )jB!G01b'*b F rb n}]lphT <)z@aؖ{_hd~j!14"> ;;@ \TS |x81%0Q0FL'xB9h   |:Eoth/|  Q?'|45Ly|  | ڀQ3 5@ U 7$ I;BR8'\:0$|(9cT{4N0cIђ 0nf= pƿk@H/8w*[]Y!Z 2( - @|vQ[@( hjpb4>kIwh?XŐ,c@zBaPq9ȰiQ0T2/xЈ0XȮSA ̲Drh/ a C(!N3X!~LiҰh5kjH(26 n|Ð@9qc9FTvN7Bq0gp9"9*Q\(!BH: K ? |A`yWRrЄ  YL!qF !,1AFBz IE:RD$'AIJTĥ8eKa.&5Mp'bOAb(D)QO>UK ST&URQvBXWJVLl+>Wbְh,d)Y΂E-k+[*]J׺Uxɋ^—ull309 b$X.ucv f\M2@3Lg<&4iHSӜ5QjXֺ4Ml_16 &r$}rG8QN#kB 'rF !t rK"tׯ`">H9 %@~ f9B̄Ix%5@I9P=p[@XfE@ "S!cH (@$`iqG `Yca7:TZ/ y`Y5 L9p&OGv9Y#8P.`?C@fQ᪞A<^.&)NX2.cM3,MFsD2~/}Bݓ'A_OfJ2Rɂ񇒏!!D23x0 C#1p1v!Gq$a1DM(SI AIR#x;](p0a-Gp&pgp$OHBg>7&=Q:I@%7u`w4MhT;1$O{:ן8]T64T'ՔJ=rT#Zu+hpg1xǶQ _$4w @,0DCG?l pZMn] `B5w]pwu$"U<]!">0Q;0H];(eŀE^`P` _-06||0 $12$-t ~ ;ry}x+w/ϰC'p˷,'!1 16bzp= A62vq=.a @ pxч|&dB y|e˷%안16c/'R!H8 0hQhnGhhi1iiijFjqjFF&jjk1kf   8_ /@IFЎQARXx0V>JpGpGpLp3 oO;BOwOOcpp#P WP^q U&P&GQgQ"Q&Qr&g*$s().*6R:s4eS x897@w+>+E'TNWTKDTQu͢uSeuuY[51Yu#vdgvhjw lwowuCwvwyw}'yCxwxwWywyzGzUtzzzW{{|M7|Q||ʧ|ZG}l5}}'~U~~~~'XsW&`}C2%p!vC#2+՝9^y][%(? A' =qD$26'jG^ |cDGĉ0!,aA0Aסd/pw/!]cC :rZJ  ; }c un!qwX*1r5x3.WAhtthƊhhXip pZ6' T#d䨋:ripz1r=q ~az:< w4%M!&!1 C%Ƥ !АʳhvkfJG > oo$pFBpOP!p;%q Q-7 't}2r%r6Q+G(:Ys"s?Rs1*;WS=EIY+L+NTtDtGUtVTbtREUW'p QE!׳ 0$p p-S5#w`j p v 0m ` J(PEI 0a07 \@0aPpdsPI^J+wLp1an na q~y@0] x 8Av'` [99ybAz/ AZ&tcBIK{$[1B'v'AAg0 9@ֵ~{-@ @ pvA A,`CSw;{?XƒCACWhp=];v&v8^ v@>p(lk8Ўj։OʑK #麮 Ю'Iqcqq:QzE(,@9)U0ws0u* [ [Aה@et{Ft)+u\P'֣,03[ ;K(> BKFLR TkX;Z˵^ b{dkh j˶n rtkxz˷~ ++ԉ Ḑ+kZ Ke뺰+8;8 ˻em C a RQ+wEҩ2,>Q0 9$ -- p'S=գdӲ'fhPG`Hi^qE dR0M 5'Q?j` {c 0$ؐҷ $C!cB2d9Ǹ@Dmx0`6ĭ\OͼJp]p-P޼;ZQ!WEr| R &Փ3A3 "ao`o  4 ` {q``=̫B5 >|o.}/ FcB q ~P` @ ;B~CPлK7!& ` f[U0ѷyw@K=F @7>8=g=T؊P (01@'QWGc ~[$@8`fJ  s-4pϤ{d,2$!C&0p +EǛ '''q'A1s'㫱BDF~:g`ѝoaa!1aa~ ѐ P}4&Q#7J&!0Px{O9ҭϼtpU$ q U,)QΝr>R|DG9.5>t,;^ƞ9ɾN.#>vޮ>i^eEo  A!?g(,A7/E:EFOGVZ\c_R,|D oo78QU>:=DF;C)os:s;s;sA#n@0 psF]w C'Ĭe>I8VLRxi}vcAv_(28QDPξS;L?AV=i!HOCCf_=ӈBZr1\s00p? vBl9A 1).֊iưҧ$psi*,~/~1~7~s:7~;;~>@.@as3?0Kq/"/M@PMi1HQ)J*J417SoϼtpU$ q U,)QΝr>R|DG9.5>t,;^ƞ9ɾN.#>vޮ>i^eEo  A!?g(,A7/E:EFOGVZ\c_R,|D oo78QUG+-s~Rbss! @.@ac` l?0KGKd71!Q@kN6i1JA(G`>A1̋O}_%NP̒q))Gk+;A@~>RcC+>i왓> m푚a ^Vn/A o#{&*.14_qRǛVp00 !00!0I} JAn\l `Bffff&Ԏx8!$ӎ׎A GtzV!v   #݊̋O}_%NP̒q))Gk+;A@~>RcC+#k u{/ > md+۲/@gͳ A[ }IM{=(=Q _c[g8m;><.0Opy};aGgK Eݸ5՗.VXX~[ [cu Jkn %˙(/i+7y377s3p374~q&@(/9 K'<+!dDgxpZG*t+ `dAva2ߦ|>ƠI}1'c Gt=dO@ [`.&`*aU|!.gqᆦ֊iưҧ$psiu<w  z }  dۗZAȡ䶘٘,|L D2 d ԝ9֛JGL4:0Kh80~A1P9ҭϼtpU$ q U,)QΝr>R|DGS k u{/ > m+۲/P6ͳ A[ }IM{=(=Q _c[g8m;><=u{y};aGgK Eݸ5՗.VXX~[ [cu Jkn %˙Ew Z]&]&]&].?Kv].,g)kv;8X;8^6ahp;8^6a=0?@e+wR(yR!JD<:`o0 8vTfByr%+{Q+b㥉ح 'cv[nhni !/}J (>p܋&ȳjjɨ`kx:Xߐoɵm>]  9 >!z4! @h #݊̋O}_%NP̒q))Gk+;A@~ =uO RKP^.T\Tkewvivm>wuwwP|yIWxxYiyzWzz'zyg{י{#§$@|{|}Y}3}[~G[8'7p\ ug.f`y߫ %{M+7cA1a `@(?8."10 3*# hJ;bs/?4!&dP70 '@v2M/d @`)6v<;Zvx$!T0:c0 F[.|!X? 1[nhni !/}J (>p܋&ȳRjɨ`kx:XK   ۸֘!dpӎP0{Apѡ`@kLЬ19` aR|DGS k u=bIuuXIu0fYvgvkvosWww7uwn9xwxx7yyy7z'wB{G{{{>)|Ag||w է8y `ݷ7~e~~~Y\b/}v}}Y"I"I]3`p8^`B$Ի,B5c=p;gcP@Q(L IgYP߀ p  rx96[ۆm `;t ? †q=>P-@w70[>8i1qadni !/}J (>p,ImgIdIҡJJztRkSNUn$GGRB0 CH1 >qZpsG!!}!p.! p`0O9ҭϼtpU$ q U,)QΝr>R|D6sJy JtwDR-JUQPT># \# U0/r/1d/qVS00 0e1rtzW #2{U7)2-3/3QXp33;3?4C5G4K5O5csYW5iY^Ya36es6iZm57uZ8U888599ȕ<<.o@=^ ϝg;_NJ2"68#|0< p<@ <#>qa 0]8 0* _`L#[pɯÀ p} "-A!nw ` A0ph Y&<"-'2 nl$"`rjhni !/}J (>p,ImgIdIҡJJk."`,F"0 N C.C7t#U!ݎ ɍʔ r6b̋O}_%NP̒q))Gk+;A@ap)>'ˀDG<=L-JUO-J%#;"`.u1"`.^R/@Vg50s0 0 SV#WAW w2"Wu2+2215793=3A34Ys4I4^4Q36u5Y56cS6g66ZsS7ZJ[C[s8[[8n=\%:=<;:987>=<;:987@?>=<;:987654ciTzd2P 0 0 0('&%$#"! ci(0^d2 10/.-,+*85:85885:85 0/.-,+*)74974774974 =<;:9876DAFDADDAFDAPALETLionpoulos``#:< -40 Music Editor, By Francois Lionet* Part of the Stos basic, (c) Jawx / Mandarin 1988< -15/8/1988- ͦ:,f,,T:C1:C2:C3C1:C2:C3HT$(d),%TNOTE(,),#ADN(),$TENV(2,,),$WENV(2),$BENV(,),"NN(),$DEBN(),$PAGE(),"CN(),!V(),$NTET(),$NTED( ),$NTEL( ),$NTEP( ),$OCTY(),$NTEY( )bBANKMAX:SPEED2:XGR :YGR:TGRBBANKMAX::Not enough memory!c---> Initialise menusdPdTi`X:A$:(X)A$,,C3:Xn::`X:N:`YN:A$,Z:(X,Y)A$:Z(X,Y)sY:X&x(,)$}:C3::,,p,X,@,#(NJ---> Initialise textȜ#,8dTX:a:T$(X):X:T$(X)+---> default screen,::C3:^-,:s,,: (T$($)),:T$($);^.,:s,,: (T$(%)),:T$(%);h/,:s,,: (T$(&)),:T$(&);:C11,, ,,,::T$(')() : ,(),()(),( )6,, ,,,::T$(')() : ,(),()(),( );,6, ,,,::T$(')() : ,(),()(),( )@XSTAVE:XST16(XSTAVE):YSTAVE:DST::CRSE N ---> Reserves memory banks$:,BANKMAX't<VBLOC:DBLOC:FBLOCfVOIX:"NN(VOIX):$PAGE(VOIX):"CN(VOIX):|VOIX::C1::X:CNOTE :):VOIX:VOIX:X:':(,d:"---> Read default enveloppes$^W---> Read stave datasX;<]gX:$NTET(X):X<bhX :$NTED(X):X<ghMX :$NTEL(X):X<lhX :$NTEP(X):X<qhX:$OCTY(X):X<viX :$NTEY(X):XNCNOTE :VBLOC:DBLOC:FBLOCjTB:(B,)((B,))IW`N:,,,(,,:::::T$(/):2:N:LBANK(((B,))):LBANKBANKMAX't:@(B,),(B,)LBANK()---> Main loopVBLOCDBLOCFBLOC(,):(,):(,):(,)(,):(,):(,):(,)L|:VBLOC,:();:lA$ T$(+)(VBLOC)T$(,)(DBLOC)T$(-)(FBLOC) : (A$),:A$;NOM$,:():A$- NOM$ -: (A$),:A$>"CN(VOIX)"NN(VOIX)(|:,:();:LABELA$T$(CNOTE) (COCT) T$( CLONG):oFH A$T$(LABEL):LABEL\ PPARAM1:LABEL LABEL PPbA$A$(P):LABEL A$A$,(PARAM2). (A$),:A$;j|VOIX:X"CN(VOIX):CRS:)::S$::A$:SP$Z():Z :'B: )A$oH.(A$)(A$)'B:}.63(A$) 'B:qp8(A$)S$S$(S$,(S$)):: ;::o:=A$(A$):(A$) $B(S$)6GS$S$A$:A$;:o--->Analyse lineNOM$ H,:X:|:,:();:A$- NOM$ -: (A$),:A$;:|X2S$LABEL<Vs4X :(S$,T$(X)) XpLABEL:sX :(S$,T$( X))ɂX:t@CLONGX:S$S$T$( X)XӝtbX :(S$,T$(X))tx؂X::CNOTEX:S$S$T$(X)PuX:(S$,(0X))uX:u\@COCTX:CNOTE COCTCNOTE %TNOTE(VOIX,"CN(VOIX))CLONGCOCT CNOTE%TNOTE(VOIX,"CN(VOIX))CLONG:COCTX"CN(VOIX):"CN(VOIX):"NN(VOIX):):"CN(VOIX)"NN(VOIX)"NN(VOIX):w\%TNOTE(VOIX,"CN(VOIX)):"NN(VOIX)"CN(VOIX):"NN(VOIX)::`:"CN(VOIX)$PAGE(VOIX) $PAGE(VOIX):Pm\ ---> Analyse labels@LABELX:S$S$T$(X)JPARAM1:PARAM2:LABEL"NN(VOIX)"CN(VOIX):%TNOTE(VOIX,"NN(VOIX)):VBLOCVOIXVBLOC:DBLOC:FBLOC*(<:(:6LABELLABEL<<PARAM1(S$):PARAM1F<LABELPARAM1F<#LABELPARAM1F`(LABEL LABEL PARAM1PARAM1Ff-LABEL LABEL PARAM1PARAM1PARAM12LABEL LABEL $TENV(PARAM1,,)$TENV(PARAM1,,)dF7LABEL X(S$,,):XFPARAM2((S$,X)):PARAM2PARAM2PARAM1F<b<%TNOTE(VOIX,"CN(VOIX))(PARAM2PARAM1LABEL)A0F::LABEL:ۊ---> Function keysܠ&SP&SH|@&SMr&SK&SR&SS2S:~J:,D,N,X:m ---> Curdown2"CN(VOIX)"NN(VOIX)BX"CN(VOIX):"CN(VOIX):)B"CN(VOIX)$PAGE(VOIX) ".:$PAGE(VOIX)::P"(:?---> Curup&@"CN(VOIX)BEX"CN(VOIX):"CN(VOIX):)BJ"CN(VOIX)$PAGE(VOIX)TT.O:$PAGE(VOIX)::PxT(:q---> Cur rightVrX"CN(VOIX):"CN(VOIX):):"CN(VOIX)BwXVOIX:XX,|':(n:(:---> Cur leftVX"CN(VOIX):"CN(VOIX):):"CN(VOIX)BXVOIX:XX,':(n:(:Պ---> Insert2֢"CN(VOIX)"NN(VOIX)*ۢ"NN(VOIX):X"NN(VOIX)"CN(VOIX):%TNOTE(VOIX,X)%TNOTE(VOIX,X):X"NN(VOIX):VBLOCVBLOCVOIX4DBLOC"CN(VOIX)DBLOC4FBLOC"CN(VOIX)FBLOC,(A:(::---> Delete2"CN(VOIX)"NN(VOIX) X"CN(VOIX)"NN(VOIX):%TNOTE(VOIX,X)%TNOTE(VOIX,X):X"NN(VOIX):VBLOCVBLOCVOIX&4DBLOC"CN(VOIX)DBLOC4!FBLOC"CN(VOIX)FBLOC,&(<:(::9---> F1: Page up(:$PAGE(VOIX)|<$PAGE(VOIX) $PAGE(VOIX)$PAGE(VOIX) $PAGE(VOIX)f?"CN(VOIX)($PAGE(VOIX) ,"NN(VOIX)):(<:(:C---> Page down<D"NN(VOIX)$PAGE(VOIX) F$PAGE(VOIX) "NN(VOIX)$PAGE(VOIX)"NN(VOIX) $PAGE(VOIX)$PAGE(VOIX) JI"CN(VOIX)$PAGE(VOIX):(<:(:M---> TopVN$PAGE(VOIX)$PAGE(VOIX):IW---> Bottom~X"NN(VOIX)$PAGE(VOIX) $PAGE(VOIX)"NN(VOIX) :?ϊ---> Click into lines*ТZ VOIXYY(())():YYYY $PAGE(VOIX)YY"NN(VOIX)XVOIX::`X"CN(VOIX):"CN(VOIX)$PAGE(VOIX)YY:)"ߙ(::VX"CN(VOIX):"CN(VOIX):):"CN(VOIX)PXZ :':(n:(::---> STOS8:'B:X,,P,---> About MUSIC!N:, ,,<,, ::, ,::(),()(9),( )|,:T$(5):,:T$(6):, :T$(7):, :T$(8)::N:O---> Quit(Pf)h:RU::---> Quit and grab()h:R>:::(),()LBANKr:,LBANK:,LBANK():(),LBANK:Ȁ:à:BGRAB(),3:ERASE(),3` :o---> BankNp:'B::,,8,u,,u,uzӊ---> Load memory bankԏ٪::N:R$(*.MBK,T$(V),):N:::R$츕(R$,.MBK):hޙ-:#,R$:X()::XTW:d㠩,:zR$,():(())IWTW:>蠨:ADB():NOMFILE$R$$LBANK(ADB):N:TX:4::N::-P:---> Save memory bankNNOMFILE$8R$NOMFILE$:=7---> Save as8::N:R$(*.MBK,T$(Y),):N:::R$츕(R$,.MBK):=[FB::-:(),()LBANK~G:,LBANK:,LBANK():(),LBANK:R$,L:,BANKMAX:QQLBANK:'t:LBANKQQ:,LBANK():,: QȀ:V:N:8[L::TX:-P:``---> Grab from program()h:RVN:,,,(, ,::::T$(Z)::NZ:B:B񸈚*(B,),((B,))IWXB,Z: ;T$([);B;T$(\);(B,) BJZ:N:T]:-P:ĩ,: ;T$(^);:B:BB츜(B,Z):::N:vɠ:N:LBANK(((B,))):LBANKBANKMAX't:BΠ(B,),(B,)LBANK():---> Erase bank()h:R&'t:NOMFILE$ W---> MusichX:'B:,,], ,,,,],x,F,],]b---> New music()h:RX:':VOIX:':VOIX:VOIX:X:':SPEED2ƙ,ˋ---> Put music6 ,$:RRR:R.!,:LB%"X:((NOM$,X,))(ADB(R)X)X:$8#)h:RRR:"$RRR:N%L:X2:$WENV(X):XD*Y:"NN(Y)M/X"NN(Y):Z%TNOTE(Y,X):LL:ZH84AZ:A H<9B(Z):LL >A HbC$WENV(B)$WENV(B):LL$$HX:LL4MY:L:RR:RLL :LBANKLBANKMAX:N:,,,(,, ::::,:T$(I):,:T$(J):w::N:RR:W-.\,:R kaAD,ADBLBANKADL:XR :Y(ADB(X)):YADB(X),YL fX^kLBANKLBANKL:ADB(R),ADADB~pX:ADB(R)X,((NOM$,X,)):XuAD,ci:AD,SPEED:APAD :X2:$WENV(X)z$WENV(X)APAD:Y:AP,$TENV(X,Y,):AP:AP,$TENV(X,Y,):AP:AP,$TENV(X,Y,):APAP:Y XhY:ADY,:"NN(Y)ADY,APAD:X"NN(Y):#ADN(X)AP:Z%TNOTE(Y,X):ZAP,Z:<AZ:B(Z)VA AP,((A))B:~A AP,((A ))$WENV(B):APAP:>A AP,:APAPAPAP:X:AP,:APAP:X"NN(Y):#ADN(X):X`X"NN(Y):%TNOTE(Y,X)\Z%TNOTE(Y,X):AZ:A B(Z):C((Z)):C#ADN(C)#ADN(X),B(#ADN(C)AD) X Y:N:Ί---> Append music(ϢNOM$,(ԙ,$:R4ٙ,:LB::XޝX:$DEBN(X)"NN(X):X:---> Get music(,$:R4,:LB::$X:$DEBN(X):X:Y:"NN(Y):"CN(Y):$PAGE(Y):Y:NOM$:X:NOM$NOM$((ADB(R)X)):X-X2:$TENV(X,,)$TENV(X,,)d$WENV(X)$WENV(X)*X:SPEED(AD)bY:AP(ADY):AP`  X$DEBN(Y):#ADN(X):X:APAPAD:X$DEBN(Y):#ADN(X)AP:A(AP):APAP:(,A)%TNOTE(Y,X)A:8 A=( ,A)%TNOTE(Y,X)((A)((A))):8B(AP):APAP:AA:A%TNOTE(Y,X)(B(A) ):8AA:AEADB:D:$BENV(D,)(AE):AE:$BENV(D,)(AE):AE:C(AE):AEAE:(,C)CCf$$BENV(D,)C:D:AZZZZP)ZZZZZ:$WENV(Z).+D:E:$BENV(D,E)$TENV(Z,D,E)E:D:%TNOTE(Y,X)((Z)A ):8f.Z:ZZZZZ:$WENV(Z)Z:~3D:E:$TENV(Z,D,E)$BENV(D,E):E:D:$WENV(Z):%TNOTE(Y,X)((Z)A ) 8X8="NN(Y)X:X`JBX"NN(Y):#ADN(X):XlGX$DEBN(Y)"NN(Y):%TNOTE(Y,X)[\LZ%TNOTE(Y,X):AZ:A [xQB((Z)):C(#ADN(),BAD):CCPV%TNOTE(Y,X)((Z)((C))) [X `Ye:N:VBLOC:DBLOC:FBLOC:X:':"CN():$PAGE()$DEBN():(<:"CN()$PAGE():X:':"CN():$PAGE()$DEBN():(<:"CN()$PAGE():X:':"CN():$PAGE()$DEBN():(<:"CN()$DEBN():*}---> Too many enveloppes or tremolosV~:N::N:, ,,<, ,::|,:T$(K):,:T$(L):,:T$(M):,:T$(J) :w::NO~:X:':Y:"NN(Y):$PAGE(Y):"CN(Y):|Y:::X:):Y:X:':("NOM$:---> Erase music8,$:OLDRR:R()h:R:ROLDR:,:LBNAF,ADBLBANKAD:LBANKLBANKLB,ADB(R),ĝXR :Y(ADB(X)):YADB(X),YLB ɂX`ΝX:ADB(R)X, :XӋ--> Rename music,:E---> PUT AND PLAY(F :RR"KRRR:}w---> Play music6xR:,$:R4},:LB::A$T$(N):X:A$A$((ADB(R)X)):X:A$A$ NN:,,,L,,:::A$:^,:T$(O):,:T$(P):,:T$(Q)6, , ,<, ,:::vX:X,:s,,:!V(X):X.PA:TRANS:R,: T$(R)(SPEED) / T$(S)(TRANS) / T$(TPA) HX:(X)!V(X)!V(X)(X):(X),:!V(X) ;:A(AD!V(X)):BA:BC(B) :B(B) B :C^~ ;T$(B);C; ;~~~;T$(A );X:K$:>K$():::N:\âK$sK$SR:uTRANS:PA:ȢK$+SPEEDdSPEED:AD,SPEED:PASPEED:͢K$-SPEEDSPEED:AD,SPEED:PASPEED:XҢK$/TRANS_TRANS:uTRANS:XעK$*TRANS_TRANS:uTRANS:PܢPAK$ PA::.PAK$BK$ PA:SPEED:Y:d:X:YY(X):!V(X)(X)X:Y: 󡠑(NOM$::&VXVOIX:;dN:,, ,(,, ::::,:T$(_):ณ(*,N):*;(L);*:*;(");NOM$;(");*:*;(L);*:ณ(*,N):X:A$(K):ZZ:VOIX:X"NN(VOIX)"ZZ:(:B$(X):B$((B$))B$ ::LABELB$B$T$(CNOTE)((T$(CNOTE)))(COCT) T$(CLONG ):b B$B$T$(LABEL):LABELLABEL\PPARAM1:LABEL LABEL PPBB$B$(P):LABEL &B$B$(PARAM2)0(A$,VOIX)B$,"VOIX:ZZ,&'A$:X,:N1VOIXVX:@;:N::T`:-P:1?---> BlockP@:'B:, , l,E, ,!4,E,!E---> Start block$VBLOCVOIXVBLOCVXVOIX:VOIXVBLOC:CN"CN(VOIX):"CN(VOIX):VBLOC:DBLOC:FBLOC:|VOIX:(<:"CN(VOIX)CN:VOIXVX:|VOIX8"CN(VOIX)"NN(VOIX)DBLOC"CN(VOIX):VBLOCVOIX:FBLOCFBLOCDBLOCFBLOC"NN(VOIX) (<:(: ---> End block& VBLOCVOIXVBLOCVXVOIX:VOIXVBLOC:CN"CN(VOIX):"CN(VOIX):VBLOC:DBLOC:FBLOC:|VOIX:(<:"CN(VOIX)CN::VOIXVX:|VOIX8 "CN(VOIX)"NN(VOIX)~ FBLOC"CN(VOIX):VBLOCVOIX:DBLOCDBLOCFBLOCDBLOC  k---> Erase block4 lVBLOCVOIXVBLOCVXVOIX:VOIXVBLOC:CN"CN(VOIX):"CN(VOIX):VBLOC:DBLOC:FBLOC:|VOIX:(<:"CN(VOIX)CN::VOIXVX:|VOIX:(:H qVBLOC:DBLOC:FBLOC: ϊ---> Copy blockF ТVBLOCDBLOCFBLOC:f բVOIXVBLOC("CN(VOIX)DBLOC"CN(VOIX)FBLOC):Z DFBLOCDBLOC:"NN(VOIX)D: ߝX"NN(VOIX)"CN(VOIX):%TNOTE(VOIX,XD)%TNOTE(VOIX,X):X "NN(VOIX)"NN(VOIX)D:VOIXVBLOCDBLOC"CN(VOIX)DBLOCDBLOCD:FBLOCFBLOCD XD:%TNOTE(VOIX,"CN(VOIX)X)%TNOTE(VBLOC,DBLOCX):X (<:(:!3---> Delete blocF!4VBLOCDBLOCFBLOC:$!9VOIXVBLOC:!>DFBLOCDBLOC:"CN(VOIX)FBLOC"CN(VOIX)"CN(VOIX)D"CN(VOIX)DBLOC"CN(VOIX)DBLOC!CXDBLOC"NN(VOIX)D:%TNOTE(VOIX,X)%TNOTE(VOIX,XD):X!H"NN(VOIX)"NN(VOIX)D:$PAGE(VOIX)(,DBLOC):"CN(VOIX)("NN(VOIX),DBLOC)V!MVBLOC:DBLOC:FBLOC:(<:(:!---> Transpose bloc!F!VBLOCDBLOCFBLOC: Tools2#(:'B:#,#,$T#-#---> Make tremolo(#CENVDTREM:##---> Make enveloppe#CENVDENV<#N:,,,P,,:#,(YGR): 0;:,(YGRTGR): 8;:,(YGRTGR):15;#(XGR),(YGR):A0 1 2 3 4 5 ;:T$(;);"# , :T$(=)#YY: , YY:YY;:XX:XX, YY:\;:XX:YYV#X:,X:T$(@X):X*#):+:*0#:S$::+\::XX, YY: ;:XX, YY#A$:S #A$##A$(A$)|#ȢA$():N:CENVDENVCENV:DTREMCENV:f#͢A$ CENV*:#*:#"#ҢA$( )$~#עA$()(S$): ;::S$(S$,(S$)):##d#ܢA$()(S$)S$S$A$:A$;:#`#SH:+\:YYYY:###SP:+\:YY$TENV(CENV,YY,)$TENV(CENV,YY,)YY:##p#SK:+\:XX:XX#XX:#p#SM:+\:XX:XX#XX:#V#S;CENVCENVCENV:#V#S<CENVCENV1CENV:###d$A(S$):A(S$)A(S$)A$'T$ XXAAd::#T$XXAA::#T$XXAA::#2$YY::#P$$TENV(CENV,YY,XX)A::+\:*0$"+:#2$'XX::$6V$,(S$,)(T$(>),,)A:$V$1(S$,)(T$(?),,)A:$$6::$*$S---> Default enveloppes and tremolos($T)h:R$YZZ:YY:XX:$TENV(ZZ,YY,XX):XX:YY:ZZ|$^62 :<CENV:0N:X,Y,Z:XH$m$c$TENV(CENV,N,)X:$TENV(CENV,N,)Y:$TENV(CENV,N,)Z:XeN$hCENV$m94p$rrCENV1:fN:X,Y,Z:X~$$w$TENV(CENV,N,)X:$TENV(CENV,N,)Y:$TENV(CENV,N,)Z:XeN$|CENV*$DENV:DTREM:'---> Activate voice XP'|VOIX:::T$(')(VOIX) b'VOIXX:|VOIX:::T$(')(VOIX) :':,"CN(VOIX)$PAGE(VOIX):'A---> Stop cursors'B::CRS:'s---> Erase bank>'t()()(),:(),IWZ'yADB():ADB ADB , 0'~LBANK  ''׊---> Erases voicez'%TNOTE(VOIX,):"NN(VOIX):$PAGE(VOIX):"CN(VOIX)X'ݢVBLOCVOIXVBLOC:DBLOC:FBLOC '(<:(:(;---> Displays page6(<O~:|VOIX:'B::|(AX$PAGE(VOIX)($PAGE(VOIX) ,"NN(VOIX)):(:):X(F(n'B:X$PAGE(VOIX)($PAGE(VOIX) ,"NN(VOIX)):(:):X(s($PAGE(VOIX) ,"NN(VOIX))"NN(VOIX)X"NN(VOIX)$PAGE(VOIX) :OL:X(x((---> Find note name caracteristics (X"CN(VOIX)H(Y%TNOTE(VOIX,X):Y((CNOTEY:CNOTERCOCT(CNOTE) :CNOTE(CNOTE) CNOTE :COCT4(CLONGY:LABEL:(YY:LABELY:YY:PARAM1Y:YY:PARAM2Y:&)---> Print note number and nameR)VOIXVBLOCXDBLOCXFBLOC)X"CN(VOIX)X"NN(VOIX),X$PAGE(VOIX):#: ;X;:,X$PAGE(VOIX):"OL:O:) ,X$PAGE(VOIX):LABEL#: ;X;~ ;T$(CNOTE);COCT; ;T$(CLONG );();:"OL:N:)OL:OG:#: ;X;T$(LABEL);:LABELLABEL();:\)PPARAM1:LABEL LABEL PP<)(P);:LABEL ();:*),;PARAM2;();:)g---> Confirn)hN:,, ,(,,:::,:C1:T$(.):::C3:s,,:,:s,,)m,(),()(),():,(),()('),())rOZ:p:Z():ZZZOZZ,:s,,:(Z),:s,,:OZZD)w:()RR:,)|:&N:::0)ˊ---> Draw Enveloppe/tremolo editor screen)̠::CENVT$(9)(CENV) T$(:)(CENV) Z)ѝYY:XX:+\:XX:YY$)XX:YY:*/---> Draw ENV/TREM curvef*0,,::XGR,YGRTGRXGR,YGR*5,,,::XGR,YGRXGR,YGRTGR:XGR,YGRXGR,YGR*:XGR,YGR:N:Y:CV:D$TENV(CENV,N,):CN$TENV(CENV,N,):V$TENV(CENV,N,):VdX*?X:CVCVV:CV*bV*DCVCVd:YYD:YY(*IYY *NCN*b**SCN:CN*b(*XN:N *g*]D$TENV(CENV,N,):CN$TENV(CENV,N,):V$TENV(CENV,N,):Vd*g>*bXGRX,YGRYTGR:X:6*gXGRX,YGRYTGR:*---> Plays enveloppe*A$:::::2,:Y:N:CV:D$TENV(CENV,N,):CN$TENV(CENV,N,):V$TENV(CENV,N,):Vd*8*CVCVV:CV*V*CVCVd:YYD:YY(*YY**Y:CN***CN:CN*(*N:N **D$TENV(CENV,N,):CN$TENV(CENV,N,):V$TENV(CENV,N,):CV:V*ƛVN:*<*:A$:S:A$*"*Ơ:,::*---> Plays tremolo*A$:: :::()8:Y:Y1Y:Y2Y:X:(X)Y1:(X)Y2:X:N:CV:D$TENV(CENV,N,):CN$TENV(CENV,N,):V$TENV(CENV,N,):Vd+*8*CVCVV:CV+^+CVCVd:YYD:YY(+YY+ Y1Y:Y2Y:X:(X)Y1:(X)Y2:X:CN+*+CN:CN+(+N:N +*+D$TENV(CENV,N,):CN$TENV(CENV,N,):V$TENV(CENV,N,):CV:V*ƛVN:+<+:A$:S:A$*"+*:,::&+[---> Displays SPEED/STEP/NUMBER+\XX, YY:X$TENV(CENV,YY,XX):XXXXT$(>);:T$(?);:*+aX;(%XX);:$+---> Cleans env/tremolo arrayn+X1XX:Y1YY:ZZ::YY:ZZ+l+Ţ$TENV(CENV,YY,)$TENV(CENV,YY,):+\+ʢ$TENV(CENV,YY,)dZZ:XX:$TENV(CENV,YY,XX):+\:XX+Ϙ++ԝXX:$TENV(CENV,YY,XX)$TENV(CENV,YY,XX):+\+قXX0+ނYY:XXX1:YYY1:,#---> Select musicsd,$N:,,,(,,::C3::::T$(D)f,)X:Y:,V:Y:X:X ,.\,3X1:XM:XM()XM()X1F,8XM()XM()X1\,=Y1(())():Y1Y1Y12,BXX1YY1,GF,C:,V:XX1:YY1::,V,G~,LXY(XY)RRXY,,Q:C1::N:F,VXY(XY),[NXY:(ADBN)A$:Z:A$A$((ADBNZ)):ZA$ Z,`X,Y: ## : ;N;A$; ;:.,---> Find start and end address of musicL,X(ADB(R)):X,f,ADADBX:X AFADBLBANK:,,XR :Y(ADB(X)):YAFADBY:,*,X:AFADBLBANK ,LBAFAD:,XR :Y(ADB(X)):YADADBY:,*,X:ADADBLBANK&,AFAD:LB:,---> Input music name8,N:, , ,<,,*,::,:T$(F)|,,:T$(G);::NOM$:(NOM$)NOM$NOM$((NOM$))~,NOM$(NOM$,): X:(NOM$,X,) X:: ,-:&N:-O---> Alarm!>-PN:, , ,<,,::B-U,:T$(T):,:T$(J)"-Z:w::N:`-N:,, ,,, ::::,:T$(H)-N---> Erase / draw stave`N ,,XSTAVE,,:,,XSTAVE,,N%C3:YYSTAVEYSTAVE :XSTAVE,Y,Y:XSTAVE,Y0,Y0:YnN*,XSTAVE,YSTAVE0,:::,XSTAVE,YSTAVE,::N/N--> Stave -> string~NSTAVE$(,XSTAVE,,)::C1::|:|:|:|VOIX:N--> String -> stavefN(,XSTAVE,)STAVE$:(,XSTAVE,)STAVE$::C1:NXN(X$PAGE(VOIX)) XSTAVE0:YN$OCTY(COCT)$NTEY(CNOTE):CNOTE O3:NSN$NTET(COCT)$NTEL(CLONG)NYN,XN,YSTAVEDST,:::YN,XN,YSTAVEDST,::TNYN ,XN,YSTAVE DST,::NYNY((YN)):,XN,YSTAVEYDST,:::YPO,XN,YSTAVEYNDST,SN::jO$NTED(CNOTE),XN,YSTAVEYNDST,::jO $NTEP(CLONG),XN,YSTAVEYNDST,::,OCOCTCOCTOCOCTYYSTAVEDST:COCT S:O.S:O.8OYYSTAVE DST:S6O.,XN,Y,S:::\O3,XN,YSTAVEDST,$NTEL(CLONG)::\O8,XN,YSTAVEDST,$NTEL(CLONG)::O=$NTEP(CLONG),XN,YSTAVEDST,:::,XN,YSTAVEDST,::OB:rOG,(X$PAGE(VOIX)) XSTAVE0,YSTAVEDST,:::OLXN(X$PAGE(VOIX)) XSTAVE0:,`,,,,XN,:,`,,,,XN,:O~XXSTAVE0X :,`,,,,X,:,`,,,,X,:XOOCRS~XN(X$PAGE(VOIX)) XSTAVE0:,XN,YSTAVE DST,:OP---> Scroll lefthP,XST160 ,,,YSTAVEDST,XST160,PP}Pw---> Scroll rightPx,XST160,,@,,XST160 ,:,`,,,,XSTAVE0,PP},XST160,,,,XST160,PO---> English menus.HP STOS , BANK , MUSIC , BLOCK , TOOLS pU, About MUSIC! ,, ,, Quit,, Quit and grab,Z, Load music bank,, Save Jmusic bank,, Save as ...,, ,, Grab from program,, ,, Erase music bank,$_ , NEW music,, RENAME music ,, ,, PUT music,, GET music,, APPEND music,, ERASE music ,, ,, PLAY music,, PUT and PLAY,, ,, PRINT music,d, Start block,, End block,, Cancel block,, ,, Copy block,, Erase block,, ,, Transpose block,`i, Fix envelopes,, Fix tremolos,, Default env/trem ,ó---> Menu FrancaisLô STOS , BANQUE , MUSIQUE , BLOC , OUTILS ~ù, A propos de MUSIC,, ,, Quitter,, Quitter/rcuprer,þ, Charger une banque,, Sauver la banque,, Sauver comme ...,, ,, Copier d'un pgm,, ,, Effacer la banque,Fà , NOUVELLE musique ,, RENOMER musique,, ,, STOCKER musique,, PRENDRE musique,, AJOUTER musique,, EFFACER musique,, ,, JOUER musique,, STOCKER et JOUER,, ,, IMPRIMER musique,Ƞ, Debut bloc,, Fin bloc,, Annuler bloc,, ,, Copier bloc,, Effacer bloc,, ,, Transposer bloc ,f͠, Fixer enveloppes ,, Fixer trmolos ,, Effacer env/trem ,7 ---> English messages~8C,C#,D,D#,E,F,F#,G,G#,A,A#,B,PA,TN,SN,EN,EN.,QN,QN.,HN,HN.,WN,WN.,END,MUSIC, NOISE ONLY, NOISE OFF,NOISE, NTREMOLO OFF, ENVEL OFF, TREMOLO OFF,VOLUME,NTREMOLO,ENVEL,TREMOLO,REPEATF=> Current music <, > Block <,> Under cursor <B Voice, , , ,Voice,,, to,ABANDON CONFIRM,Grabbing bank from program #1 , SET TEMPO, Old tempo:\G New tempo ,TRANSPOSE BLOCK,&Input number of HALF TONES (-12 to 12)xL MUSIC EDITOR , Part of the Stos basic , By Francois Lionet , Copyright 1988 JAWX/MANDARIN XQ EDITING ENVELOPE NUMBER, EDITING TREMOLO NUMBER,seconds,SzV@PHASE \ SPEED (1-100) \ STEP (-16 to 16) \ NUMBER (0-255), END , LOOP [=F1: previous - - F2: next - - quit - - to hear,8 to select phase - - to valid parameter,7Type 'END' or 'LOOP' in speed column to end definition.,-A 'NUMBER' of zero stands for infinite phase.`Please click a music:,&Input number (1-64, to quit) ,CURRENT NUSIC NAME,Enter name (8 letters max) NeA moment please.,The memory bank is FULL!, Press any keyjTOO MANY ENVELOPES OR TREMOLOS!,!To get this music, you must first,)erase some of the enveloppes or tremolos.o Playing: ,A to quit / <+> & <-> set tempo / & <*> set transposition,/ restarts music / : step by step mode,;Once in step by step mode, any other key returns to normal.,Tempo:,Transposition:,Normal, Step by stept? LOAD MUSIC BANK File name must end with .MBK!,This bank is not a MUSIC bank!, DISK ERROR!,? SAVE MUSIC BANK File name must end with .MBK!,Music banks present in memory:,Program , , length:,No music banks in memory!,Enter program number ,Press any key to end...,Printer is not ready!, Current music : ,ǜDO,DO#,RE,RE#,MI,FA,FA#,SOL,SOL#,LA,LA#,SI,PA,TC,DC,SC,SC.,NR,NR.,BL,BL.,RD,RD.,FIN,MUSIQUE, BRUIT SEUL, STOP BRUIT,BRUIT, STOP TREM B, STOP ENVEL, STOP TREMOLO,VOLUME,TREM B,ENVEL,TREMOLO,REPETERJǡ> Musique actuelle <,> Bloc <,> Sous le curseur <Ǧ Voix, , , ,Voix,,, ->, ANNULER CONFIRMER,$ Je copie la banque du programme #1 , FIXER TEMPO, Ancien tempo:^ǫ Nouveau ,TRANSPOSER LE BLOC,(Entrez le nombre de DEMI TONS (-12 a 12)ǰ EDITEUR MUSICAL , Accessoire du Stos basic , Par Francois Lionet , Copyright 1988 JAWX/MANDARIN Tǵ EDITION DE L'ENVELOPPE, EDITION DU TREMOLO,secondes,S|Ǻ@PHASE \ VITESSE (1-100) \ PAS (-16 a 16) \ NOMBRE (0-255), FIN , BOUCLE ǿDF1: prcdent - - F2: suivant - - quitter - - couter,E pour selectionner la phase - - valide le paramtre,=Taper 'FIN' ou 'BOUCLE' dans la colonne vitesse pour terminer,2Un 'NOMBRE' gal zro signifie une phase infinienĠCliquez une musique SVP:, ,NOM DE LA MUSIQUE EDITEE:,Entrez le nom (8 lettres) dɠQuelques instants SVP.,La banque mmoire est pleine!,Appuyez sur une toucheΠ!TROP D'ENVELOPPES OU DE TREMOLOS!,+Pour pouvoir prendre cette musique, effacez,(quelques uns des tremolos ou enveloppes!(Ӡ En train d'tre jou: ,CESC pour sortir, + et - rglent tempo, / et * rglent transposition,5S redmare la musique, ESPACE passe en mode pas pas, CHARGER UNE BANQUE DE MUSIQUE Le nom doit finir par .MBK!,-Cette banque n'est pas une banque de musique!,Erreur de disque!,> SAUVER LA BANQUE DE MUSIQUE Le nom doit finir par .MBK!,Banques de musique en mmoire:, Programme:, , longueur:,1La mmoire ne contient pas de banque de musique !,Entrez le numro du programme ,Presser une touche pour arreter,L'imprimante n'est pas prete!, Musique editee : ,---> Default tremolosf d,,, ,,,,,, ,,,,,h%d,,,2,,, ,,,2,,,,,h*d,,,d,,,,,,2,,,,,@/d,,,d,,,,,@4d,,,d,,,,,9d,,,d,,,d,,,d,,,d,,,d,,,,,@>d,,,d,,,,,fCd,,,2,,, ,,,,,,,,H,,Rd,,,d,,,d,,,,,R 2,,,2,,,2,,,,,Rd,,,d,, ,d,,,,,Rd,,,d,,,d,,,,,Rd,,,d,,,d,,,,,,!2,,,,,@&d,,,d,,,,,R+2,,,2,,,2,,,,,0,,Պ֊---> Data staves׊8ؠ,,, ,, , , P٠,,,,,,,,,,,Dݠ,,,,,,,,,D⠦,,,,,,,,,<砦,,,, ,,,P젦,,,,,,,,,,,6 rPALTfpp 0PU33ss77w ` @`8X0 P b t     . F L(?9xᅬ}   88pp==Ƈ@p@p@p@pB pppp(??P||8888(gk0H$L$~g0H$ ~0~~<<~<<~~?=:6,6-3~?=>><:6-3~?=>>>>>=93~????????????~<<????????????~<<~~? 0q 0? 0 0? 0` 0????  ?$'wppppvfvf83028̀̀ff?p8?8pf??? `000`00 D7&!0% % X% % %  @% % h% % % $  P  $    0  T      0 HP  0? FFCCa ??        888pp==ƇƇ@p@p@p@p@0  ppppAAA AAAAA   ||88x<p 11??????????  00880011?????????? !!00888888880011?????????? ?????????????????????????????????? ?????????????????????????????????qaas? ??80`0`8????????11 ??????????11008800 ??????????11008888888800!!?? ???????????????????????????????????????????????????????????????????saaq???80`0`8pp??00qq 00??``pp 00``@??  00`` 00`` 0 <<xx88<<pppp88  ???? ??$$ ``eUUTUUT `00` ` 00 `UU@??????????`p000000``0000Op0000%&'()+-/1ZTYCARTYMAX(TXMAXNBPLANPALET>f>f>f>f>f>f>f>f>f>f>f>f>f>f>f>f>f>f>f>f>f>fCURINKENCREZMY2ZMXSPRYSPRXTY(TXMULYMULXTRANSPTYCARTYMAX(TXMAXNBPLANPALETZMY2ZMXSPRYSPRXTYTXMULYMULXTRANSPTYCARTYMAX(TXMAXNBPLANPALETDJDJDJCURINKENCREZMY2ZMXSPRYSPRXTYTXMULYMULXTRANSPTYCARTYMAX(TXMAXNBPLANPALETEEEEEEEEEEEEEEEEEEEECURINKENCREZMY2ZMXSPRYSPRXTYTXMULYMULXTRANSPTYCARTYMAX(TXMAXNBPLANPALETwrwrwrwrwrwrwrwrwrwrwrwrwrwrwrwrwrwrwrwrwrwrwrCURINKENCREZMYdZMXSPRY,SPRXTYTXMULYMULXTRANSPTYCARTYMAXPTXMAXNBPLANPALETxrxrxrxrxrxrxrxrxrxrxrxrCURINKENCREZMYdZMXSPRY,SPRXTYTXMULYMULXTRANSPTYCARTYMAXPTXMAXNBPLANPALETrrrrrrCURINKENCREZMYdZMXSPRY,SPRXTYPTXMULYMULXTRANSPTYCARTYMAXPTXMAXNBPLANPALETrrrrrrrrrrrrrrrrrrrrrCURINKENCREZMYdZMXSPRY,SPRXTYTXMULYMULXTRANSPTYCARTYMAXPTXMAXNBPLANPALET%%%&&&H&H(ROUTINESTLx@l4 ` ( $XPAL&OLDINK&CURINK SPRMAXNBS LionpoubnkIWBz(Cuomo Tremolos ciD0Ld   :=BDFGF ::=BDFGFDFDC?ACDFGHC<:9FA=<:86653568:8:<8%,*('%*('%#%'('*('(%,*('%*('%#%'('*('(('%'('%,-*(*'%113431/1.//.,./,.,./0113431/1./.,)*,* V*,.16865653.0.,.,+(+))%.)+)''%013565683 ../1/.,.*,,*)*,)*)*,-../1/.,.*,*)%')%  %"')+,+)+)(+($%'%$  %,*('%%% %$#%% "%$%"" #%ci"TtBd   :=BDFGFddd ^0:=BDFGFDFDC?ACDFGHC<:9FA=<:86653568:8:<8%,*('%*('%#%'('*('(%,*('%*('%#%'('*('(('%'('%,-*(*'%113431/1.//.,./,.,./0113431/1./.,)*,* ~0*,.16865653.0.,.,+(+))%.)+)''%013565683 ../1/.,.*,,*)*,)*)*,-../1/.,.*,*)%')% L0%"')+,+)+)(+($%'%$  %,*('%%% %$#%% "%$%"" #%%&&&H&H(ROUTINESTLx@l4 ` ( $XPAL&OLDINK&CURINK SPRMAXNBLionpoubnk IW|4 ^ FunkyBitStilHereWaiting Ready? Movin' ChinklesCascade CascZap StrgTrio ci"Td2d ^0668665668653033533133531"ci,xDd2 d222 "%%"%%"%"%%"%%"%"%%"%%"%"%%"%%"%"%%"%%"%"%%"%%"%"%%"%%"% '' '' ' '' '' ' '' '' '"%%"%%"%"%%"%%"%0TX:<= A:<=A?=?A ::<= ?:<=?=<=? :0:<= A:<=A?=?A ::<= ?:<=?=<=? :ci%d2d< d08?;:8D?;:; ΧTx ,/'ci(Tpd2d | ^=8=?A?=80  " %$ "     ci2Td2d<  ^  01/1141/,/0,*,,/,*(*ci0\d<  :535101.1015130., hA?A=<=:=<=A=?<:8 MKMIHIFIHIMIKHFDcid0Zd<  :KIFDB?=:8631.,* dKIFDB?=:8631.,* KIFDB?=:8631.,*cid0nd KIFDB?=:8631.,*'%"   xKIFDB?=:8631.,*'%"  KIFDB?=:8631.,*'%" ci0xnd< d22 0T36?;:8658=:86536;865325:60T65656531313131/./././.,1:8653568;=;:8658DFDBA?=;:;:8:865323568:? T#%#"  "#%#"  "#%#"  "#" '%' SPRMAXNBDpOGUHWA}EYos_HAFpcl%*`Dht@ @Q@p qp $|##`,T@hɋ H#$ 5$$,8"""H36(0V"~?3??d e#.#R4pB#(ډ#|j0#x^J i !| ͸* < J0:#֊ҫj:ރ?sȳiVKp@n.[,t?FGa?s/! Jh |3(b:B k×_zmBqL{[}@*\@O2JxޙgcԘ*GCis 7ܵ(o 0?*Mg̴|4k>-4l+³#5(dHB] `k\om@_vc}6iyfkЙfJ&XL=3Jb8WD찬X4$ [ft2X |*@ H;jRZ׭Jd8b\4n^T zIX.ZG8>:B @OG4@F#>Q`aa 9`܌LjCUU`$X |O80C`=,DC d%G0z!S7C~z# I7h!4$#D.2Fe#U>I%꣈&YIН%d*u򖐈'm)G:a&811g s ;9"u ߘ'p@0"%)q# b2 xPXG~A?w|x#qOيIZG= i[ @Cz&cL ТT=H `+` >,8IC\hQ9"mD PHj:ZQ 0U^=VUR@8ʾB0gxlxDuifR;q3BegH070W!uF1IVh*  t]jTIVYr;5:@ic81A ,B"j57q-з\>z->*u!丫׼V$/zu9׿j}5_Rd_v.$@X׻u~}pvVb(2Od{^}Տzd(i=r'h- UwTƐTuL^'Wn%|hUs|iUVa|PnRsn>W.`VD`+N pp_@( UDAVrUx&Mã- /lj(  "z55u p pppPL%6YD* 2;Dҕ̈{ #d "'EI ht(&`|q > cG<0C'#RCd#5V_'w }WEG&(p7\/[8ғ?)A7E8j7l8|(=۷Ðրk < $.''pbV@B=sdx@2?00ӄt0$LgRfd-kr"H=3S ax=IGI3" 5 !'"9;@`}6PIKrKK~+]!(?b) P7`X C`*"SF{U/dF 2@ nE0$B@>:@ʣ{(8bbMFcVq4#M:q;S*U'Qj+M`*JI"@9H 8).rFGIT1a0$0[I&)* 0F8 R~"3v@D.2"}©3.Z"@@j)&jʦnZ$*1J%38 a@3lv9Wouj";F(|ƭЉ*:Z%$"02? T@ *aC .B'C*,3RDWc@?U(641q4Ty@"k#3"9878yF'SI=bGz9IʳHzg T&eEBkH K XäA.G"GX{ZkVK.#:4ҲkBBP:۳Bn$B҉5(w(s1Ye벊 Wv[u 300;;,w "11~ "a}»pS4{0eKЁw;{seKkk(kP"EE * @Ds,2dDSv_, Ib/+?Hk3AФ[C%ktZ1K*z[A? (J^j*)k"gs@ z32@K792d+b;#*ER#+`) 1 : ^ Z@ "(`+:#jF{(mƀ =D 9m Gpl3o;ŕ̳2|3B(>h{0`:<,XR`v^ Gc@3JvtSQ ( = 0pp puL9'p=]"0Zi.h`2CIX4& =4Ycz:0f@9:^IGmY.6 h +'c(GSU0sQ jDpr7Mm8t08|@H0?3LG7|sE?y|F $<ՁsՎ$ /0/HHL>v ^@>CvXv\cb)&P?Ã!'午,H7H9t 0?GHS!2H?OG7!3OC86O| (}x/zBpvعĨ@S:XNl BNHH.BptBJ$a haa~$`"x&~Éx# ,L1|XG3я-`170-~Kl/*Q*DTHc!DNq#%HFя$b4_ ;?4)O)/BTzd\9ل- -X%*z4 U@@RF)d"#*VjD5e1OJRAQ+҉N<)z|8#Jl3'?˹Oos=h, ЂSL:vS@%uʎn4*P8 C8J/Җ2DFnW8+@ H2*ٲ蘀 "U 1UPHd# ]tX܅и l83ڠu!֌ttnt=ZYx/&&  W P. _ ˣl5(uT 8PR G:XB䒁 Y!*2BRne擋҈zۋLI6‡Hc2*2A%3 ѴMUCLlS]~xn"b($"))]c04)ޫE#d:'\L3: 尝+"l1qLg@ogߊR=f:!!F 6)), PHD5p{j7<<-3p0QHb rNN!|-_ 0T- HU}.HhCc!֊ќ:h^rp8 .a8Z ͳ9Ta (B"{)iED($18 ) )އ AP3hHcR +3e/}5XU |.0(LȀ$ > X. =S0|!;(0}e_د lf}A2U`5c"cbU/ c8Rrv2'( 4g('DW/LB2tds"$!q7v2x CE(D=LGwVh"_( =Pxdcu5#7A@'s&sL@4tuv1 }(x@xQ@1@x:t( e ðC!W$"pc"p e-B!5Zb AhuRRXiA %0L HT_a* `HI5LQUOR!Q0<r+R-Wi?K-n%e\ٶ[x%+?4B'vW![EbBKJ.y0=>B?c[C:i#f?e:v!fJ?3>Cwy3qI2_TI+GbbH@a'a%/v&b**'jc%Q.a㓗c|)+V"v)kC[_˜邓i0_,bbVlg0&k)-+RvSf!tFҚH9TiahI4fnygigaF q$4q$!*G)֩"F= Gٝ aa3#胞W)IX%+qC^9aP(ґc) y(Pc3htȠb5!4Ƞ^" MTU "* Zb#ʢ). !Ej$Ң3:ɠ$>JQN"@SGZ"" P; &?VjI'3qJ!+GR> `I\t:+6,H)f"!)c)"#ez!nj#JW;'ez5QR+6:*# dB R]$%b&Jy b AJ$X*HX%J"IZA5э 93X)v" `EE I O aI 쐔& Fӯ䐔  b`n``` ie<KI xge`D d/ir*OPwXf a1 Q>5/n10U(U7XJיT AS PTC$KfM[(`Xq;:bN PaۜPL0@ \.aODN&QY&0U  '\0 c+v¥`E SO$NhI뻼;[PN0R*2ZYp2 MpA[ a nXw[#paD{:BM`[kw;a;vix۶v{sKu {۷{+ꞐSPRITE2.ACB=t FSx LҼqM6oB@a@E Z@ qG!GN:e@!sVb! Ld 1a"̘1eq# B8 L2DJ"N@4yBOT(< 8 &@ q1 4rt0y^{X'pP%UTLБ5 5G@GMT} P.`nfbdSbq/\wC],|=IFQg !xC8:Z% n8I4!%wp~B51D  0[r@0$%@q06 ]J3d L :A:gBؕ6 $ 89G:|O"BALB@A5":!LT)pG?2` Iy`Mk\vD+F ZD=QݣBzT'M FJS;Q 2$Sն8 TLlPGV`HkF;)l'Њ|bGj(p@b@> lB D0 `ŶGG F** pbV-(p[5D opV@Wn i#83Ilޡb@#8@5@W b|% ;hN~avUxat a*nDI^CtL8tE&?1Qr#86(y1\"f  'ձ)A",h(qr4GQa QVT)>\E4,)izB7|/g!c>WHe,`AaGЌgXǞID9͂2}n;! WF,AOٜ& IJhhAM` %;`rPLB="DA5(N5J}TKp mԨmkjNw:c{&WWf01 PP˯:=2{y[C`pޠd `S : SEf$oR Nx::B)m4Dp\W pZ>ؠm:*EtE\RBI6mȱWN|q@W  ",f`<]fv "vQQu. ǮiǼ6xQ{`Cʤsޞb:b @CtOxCItOfJU̘73oJ2 l}O> (_K{e FsE</^q GSWf7'B7qFrp#v(qs;7)[s3ub V>ua0g||͗4xgy6~w}wyf&{'|wQ8TP~7j@L3GxM7qr qWW>$GQYXP,f Iehr_swB\W>vI~'j!RP  0 diR`B 1ɥ^@/_`+f`6`6,faaa7 qEac36Q1 A$yـ6 7`.)_tw.UW㊅苠шB@7*`ddA\WdPSR6kՑ{ P3e*.a/0*̀: $@c h$vP~KZ ً89oh@)# uXqi G P8 BVrD :0 sՏ@3EE ! h_WC(¡@ A HBPukTzXY ( p#s~m#wі<0 Z q923YbQ,,V!osF"{ I9N~YY&,_lQm0y) p ִ=O^^ XEFF I0vd%QFo XX`1`gW b`wM&7  PS^"0Vh$k6 0[, 0[#*7`$36&am6[T` pM`QR14 ,J2:0pacwv1,Z" MJx{~a7 I. 8 ApXDb P<6oP @W "): upm "( !3]:G Pe@6@7 0zA NڴnJ zAƪ  1J Ƞ 3T?C:9=°.xSA TTuT,ЮLeH wUYUCOU\6 , g\3SB 0 1 0`a *3$H1eMԱp'1  `KF* Fif^J)`FŴsO  8Mބ$N !@i .bbh#p-$x:+pmGu' 3;RP )M K]BXDG0YXj #௚;P6U:% n;,w)T!I mq 2'JQe(ʰ[qKثB^VbW."R"Ű)R-uBVV؁-={!x=rpH`SKV{դx4\E p:H{Na`)Aߴ&#E@O(!I(0$3lF"Oap$lE7. ءWw{۷$4Gz4՛ yE04SSpT8AmMSGTGuGeU5LUUa%¾fu|E lEo0;iKto7SfFppFFuF n`di2P,POPW[߈|t`M2>J{peEc<ߠPXp ][ z<8pPnA)o(0 "+p`MP h[e0`6M;NB N~I 1,R^$vt y^~u;彂 քj7 @ho`~*jPGS'hXjq+I!xvSsK85CkpzD(G`"F+A@ɎFN؂s^sf"t#.ھ[rp$Qu=D]t2RF RpWR7k 7%~yY4Wn|{6B3=p@<@x 9:/ 4 O3ω2O ?%>sXpBCo;% c% p~%D}z2g03C$/R?, 3̮/NABH8mA-}|.YeJT\[W XP"B!.xKr0i; YNuLR/S|Ь^ꪞꊖNk!o6Uܼlnߦ bt 5A%xK?;;s_5^͗/) blNd%!OO0s .N) aPZX;Qv,QvhO3mp$n?}3 A NSQztӭB)/;|L,`^cN,)qQfkm䠁PqnQ/Sm01uw@LϏ=Q:Q hbS  p2Ε%fap; 3aR#5 fa`aR#:w X80[JNo`Np0tP:d̏<P! 3YnLPxE U|nL\0E{!0f5km &*R0j|xp<ӥ2E7>iH8x  8ٸ` mc lm3UL|7"3VTV JR!&Bo.Uy('%mNG jJ` %^ӣ6ϞGp7?Um TȰ: k4K0c'w , %^ӣ;w 6=A:*R0p ͡0 wa=?`}!9`}7  ! _Qaqw k4MD6I.P:UmN=wQPlP5=8-=ޥ_J71gg@ 7lסP  A=Q x}) F` M+& PீF- kI!F` MP?|:2e _AvJ-SI_ANDC!DP  Qm\o\r+SI_AG)D _Ae "Tƥ%;E ol2S[ƥ΀/ 0P`)blb MPtwA'f M+%0`P@ #AmNp, H=QO _AvB!0G~1V8,`=Q"Pru;gݪvN+nt)O\suHTq/\u3HTqr\8HG_t.)IOph   v>)XO@AspHTP')XO@g…X=O@'gaȅc)XOpi@r4HGq!&oɎdW=eggeg5Vk&o&f5}v&jGlYhlhA6EXO0|֦)YO0|E󐈋XPYMic,`P )U&P5=8}Bۙ<tJRj佞)`8A 0LFk7 ڢKvizxÅiR%b'<WX)juaذ@`st<Dži%bsAsq\}_@+z⬢)XO@$/)YO@$/ҒnL 0(;ض0 ()$;ضi$) @şv$һ!пi! 00$ҙNQir<'N|5&f,8g([zx` ^pk= j` F@` )`LG`K`ME` )ml[Mpt` j=wi$!sAsX$"n@6` \<[O3q!rLionpoulos6A6 ( * ( * *( * SPRITES DESIGNER *( * *( * By Francois Lionet *( * (c) Jawx/Mandarin 1988 *( * *( * 15/8/1988*  VERSION$1.01SPRMAXNBH&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,,::`X:#PAL(X)(X):X:q:(ͦ:-SPRMAXNB: 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 variables <~jd 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:g? X:( :ROUTINES( X): Xt8:g ǐY :g X:& LEFTAD( ǐY, X): X: ǐYL NJSELXT : ǀSELYT: vSELY: lSELTY5: bSCRCODE$(D)(U)(5)(() TCODEPALPALT HANIHY vSELY::i, X :% hANIX1( X), >Y1,% ANIX2( X), 6Y2:% &ANIY1( X) >Y1 HANIHY:% ΢ANIY2( X) 6Y2 HANIHY: X .ANIXST: "ANIYST: ANIXTV!: ANIYTV:j/ ǐY:i X:& ANIVIT( ǐY, X): X:% ɢANIVV( ǐY):& *ANIXSP( ǐY):& ANIYSP( ǐY)2: ǐYȴ::s(<"+ ~~~> Initialise zones <~~~,0 Left boxes: 52-60j1j ǐY:4 ǐY,, ǐY,( ǐY): ǐY5 Rigth boxes: 62-796k ǐY:k X:> ǐY X, X, ǐY X,m ǐ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:|,*b: dFLGDEB: OLDGET( ~> Scrollings <~ 6,,\,,,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 ~> Title <~2 MENNB: OP:{(*04:, ȤXSPR, ȚYSPR,::::() ȐADSPR:() ZADZOOM:()( ):():():()@:()@::()::,, ȤXSPR, ȚYSPR ȤXSPR@, ȚYSPR@D,::::Version ; VERSION$;>,:T-: DRIVGRABI: ŲDRIVGRAB: ŤDRIVPIC: ŘDRIVSAVE: ŊDRIVBACK: |PATHBACK$ A$: nPATHGRAB$ A$: `PATHGRABI$ A$: PPATHPIC$ A$: BPATHSAVE$ A$|N::|W:< ȸOLDTX:t (n:a': (ފ ~!ߊ MAIN SCREEN( ~!" ~> Plot <~ B *REDO: OP:u>(: SPMOUSED:}:h't: KM: FZ2}h6& CURINK( KM)::,,: ȆXZOOM 4IZOOM ĚXS, |YZOOM 4IZOOM ĒYS ȆXZOOM 4IZOOM( ĚXS), |YZOOM 4IZOOM( ĒYS): ȤXSPR ĚXS, ȚYSPR ĒYS: ȆXZOOM 4IZOOM ĚXS, |YZOOM 4IZOOM ĒYS ȆXZOOM 4IZOOM( ĚXS), |YZOOM 4IZOOM( ĒYS): ȤXSPR ĚXS, ȚYSPR ĒYSV OLDXS ĚXS: OLDYS ĒYS: ĤOLDKM KM: UNDOFLG"K ~> Draw <~ HLOP:(: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:  ~> Box <~ TOP:(:LINEDRAW:SPMOUSE:QBX1,dY1XS,dYS:RXSDX,dYSDYXS,dYS:$ ~> Cercle <~ TOP:(:LINEDRAW:SPMOUSE:QVR(XSX1):X1,dY1,R,,:JXSDX,dYSDY,R,,:$w ~> Ellipse <~ TxOP:(: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)"? ~> Paint <~ B@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 up <~ DTYPEFILL:TYPEFILLTYPEFILL$ , ~> Set Paint down <~ DTYPEFILL:TYPEFILL$TYPEFILL"  X: ǐY:: ,FIL1: "FIL2 TYPEFILL: TYPEFILLFIL1:FIL2TYPEFILLZ ,FIL1, "FIL2,: XPAINT, YPAINT?, YPAINT TYPAINT:(k ~> Filled box <~ TlOP :(:LINEDRAWq:SPMOUSE :QBqX1,dY1XS,dYS:RvXSDX,dYSDYXS,dYS:*ϊ ~> Filled circle <~ TOP :(:LINEDRAW:SPMOUSE :QHR(XSX1):X1,dY1,R:<ڠXSDX,dYSDY,R:,3 ~> Filled ellipse <~ T4OP :(:LINEDRAW9:SPMOUSE :Qn9RX(XSX1):RY(YSY1):X1,dY1,RX,RY:F>XSDX,dYSDY,RX,RY: ~> UNDO <~6MENNBMENNB8OPSAVEOLDOP: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:':(< $  _ ~> ZOOM <~ N `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" Ê ~ > Flip <~ 8 OPSAVEOLDOP:OP:( ɼ()ADSPR:()( )dP:()TX:()TY:(): Θ 2& ' ~> Upside down <~8 (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 <~  FZ:V $ ~> Right palette <~  FZ\  X( XM$ XPAL( FZ)) DTXPAL: ǐY( YM NYPAL) :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 arrow <~R ,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 arrow <~R ,XSPR,YSPR,XSPRTX,YSPRTY ,,d` !,XSPRTX,YSPR,XSPRTX,YSPRTY ,,d& & ::: , @BY16XMXM&  ~> Up sprite arrow <~R ,XSPR,YSPR,XSPRTX,YSPRTY ,,dX ,XSPR,YSPR,XSPRTX,YSPR ,,dTY&  ::: ( ~> Down sprite arrow <~R ,XSPR,YSPR,XSPRTX,YSPRTY ,,d` ,XSPR,YSPRTY,XSPRTX,YSPRTY ,,\&  ::: $ 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 z MENNB:{(*0: NOJUMP x):s(<>  XOLDOP( :ROUTINES( XOLDOP) " ~> REDUCE <~P M:TMEN:CXTX:CYTY:) CX:XXSPRXSPRTX:(X,YSPR)X: :CX:CX CY:YYSPRYSPRTY:(XSPR,Y)Y: :CY:CY0 M:TMEN:)  M ~> Set RVB <~  M:y): MENNB:y )h:x*: T$() Set RGB :$*: NOJUMP: *REDO` ,,,,Ȁ,,: ,,,,Ȁ,, :: RGBXT, RGBYT:R:;: RGBXT, RGBYT:G:;: RGBXT, RGBYT:B:;*  OLDC: OLDCP.  OLDC& CURINK()v b :::: OLDC& CURINK():,,: 3OLDC:: Š,,:,,  ľRGB( OLDC):# RGB()( ľRGB):# RGB()( ľRGBp):# RGB() ľRGBn ϝ ǐY: RGBXT, RGBYT ǐY:(# RGB( ǐY)) : ǐYz ԝk X: X, RGBX RGBTX# RGB( X),$ RGBY( X), : X:. ٙh't: KMt h ڢ FZ28CPOINT(XSPRXS,YSPRYS) ĶCPOINT OLDC ܢ ĶCPOINT OLDCP OLDCP ĶCPOINT: FZ: X ĶCPOINT: ǐY ĶCPOINT: 4FLG: : 4FLG:& CURINK() OLDCT ݢ KM FZ2&CURINK()CPOINT:  KM F  X(,,): X Z  ĪC:( ĪC, X) ĪC: V  X( XM RGBX) RGBTX: X X   ĪC, XM,$ RGBY( ĪC), :# RGB( ĪC) X: RGBXT, RGBYT ĪC:(# RGB( ĪC)) ;: ĪC# RGB()# RGB()# RGB():# 0PAL( OLDC) ĪC: OLDC, ĪC ::0  End of set RGBZ  M: ƈTMEN:y): X: X: X, : ,,,,Ȁ,,: ,,,,Ȁ,,:r,$:B,o z RGB undo M:TMEN:)::M:TMEN:):OLDC,RGB:OLDC: ( ~! STORAGE ARROWS( ~!0DX:S:.DX:S:0DX:S:.DX:S:0DX:S:"DX:SVSDXSPRCUR:,$:,o:ZSDXSPRCURSPRNB:,$:,o:DSPRCURDXSPRCURDXSPRNB^SPRCURSPRCURDX:,$: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:)2ъ ~ > Return to main menu <~ RM:)::REDO(n:'ט z Set bloc center0 ~ > 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:$:)mQ(<: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ۘh8/ ~> Take away origin zone On/Off <~ 0BLOCOF(BLOCOF)5$:BLOCON?h& ~> Centre bloc <~2BLOCENT:=:5  ~> Bloc 1 <~2BLOCENT:=:5 [ ~> Bloc 2 <~2\BLOCENT:=:5  ~> Bloc 3 <~2BLOCENT:=: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 name <~FLGxM: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:*::0O ~ > 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()()(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 NEO <~ RFILTER$.NEO:T$ Save a NEO picture:( ~ > Save DEGAS <~ HFILTER$.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: :: ~> QUIT <~S$:LMENNB:OLDTX:q::::*b":,I ~> Reduce / increase TX <~"JDX:TODXlTTXGRABDXTXGRABDXTXGRABTXGRABDX: Y"b ~ > FULL <~ &cTXGRAB: :,{ ~ > Up one/10 lines <~ 2|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 error <~v:B::BON: : :::F:tKM: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ӊ ~> GRAB <~RM: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 NEO <~rM:):FILTER$.NEO:T$ ---> Load a NEO picture <---:" ~> Load DEGAS <~dM:):FILTER$.PI1:T$ ---> Load a DEGAS picture <---P-:: DRIVGRABI:PATHGRABI$: \ 2 T:+ F$u2L-:PATHGRABI$A$: DRIVGRABI:F$, 6IMAGELD:FLAGBACK: 27b7::*:T$() Disk error:*::u.c ~> Change/not palette <~2dIMAGEPAL(IMAGEPAL):u NJ ~> 16*16 <~ *BY16(BY16):u*+ ~> Auto insertion <~ 0,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!:*:*:: z"bFRWD:(g,(@,(,))lXSPRNB:()X,:()X,"TX(X):()X,"TY(X):()X,"HX(X):()X,"HY(X):Xq(),()():(),SPRNB::NANINB::: ~> MAIN <~pM:):::::(),:(),::0X:X:X0MENNB:*b: z$ ~> Anim loop <~RZ():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:~0 ~ > Delete all inputs <~ 6ANISUP:ANICUR:8 ~> Set speed down/up / one phase <~  D:* "D:*%D<*ANIVDANIVD1/:ANIVANIVD:":ANICURANISUPXANICUR:$ANIV(X)ANIV:6:~44528 ~ > Select animation phase <~9X(XM(ANIXST))@((YM(ANIYST))):XANISUPXH>X,ANICUR:6:XANICUR:6::Q ~ > Set speed up/down ALL phases <~ RD:\WD\ANISUPa:XANISUP:$ANIV(X)D$ANIV(X)D2X:XANISUP:$ANIV(X)$ANIV(X)D:Xf:~kkp* ~> Select anim #m <~ NMANINB:):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:~0 ~> Stores current anim <~ p&ANISUP(ANINB)ANISUP:&ANICUR(ANINB)ANICUR:%ANIVV(ANINB)ANIVX:&ANIVIT(ANINB,X)$ANIV(X):%ANISP(ANINB,X)$ANIS(X):X( ~> Place sprite <~ v&ANIXSP(ANINB)XM:&ANIYSP(ANINB)YM:ANISUP,XM,YM" ~> Backward <~fFRWDM::M::FRWD:~" ~> Forward <~lFRWDM::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::ɧ:::2K ~> Poke pseudo sprites bank <~(L:::ANISUP*QAB()SPRNB,VXANISUPz[XeYX:$ANIS(X)$ANIS(Y)o `Y|eL(((S$($ANIS(X))))):ABL()():j()$ANIS(X),AB():()(S$($ANIS(X))):()AB:()::ABABLoX:4} ~> Start animation of sprite <~~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 NEO <~fFILTER$i.NEO:T$ ---> Load a NEO picture <---:M :" ~> Load DEGAS <~ZFILTER$.PI1:T$ ---> Load a DEGAS picture <---:M Z:-::DRIVBACK:PATHBACK$: Ďɿ\RΠ::::T:+:F$|ӏ:-:PATHBACK$A$:DRIVBACK:F$, :FLAGBACK:IMAGELD0؏::~::⠋:, ~> Display background <~HM ::FLAGBACK<FLAGBACKM ::F : :( ):::FRWD:~*#::::,,::h(q:::::::,$:,o:~::,-q,#PAL(),#PAL(),#PAL(),#PAL(),#PAL(),#PAL(),#PAL(),#PAL(),#PAL(),#PAL( ),#PAL( ),#PAL( ),#PAL( ),#PAL( ),#PAL(),#PAL()22ۊ ~> Draw animation screen <~ 6ܤ::,, ,@,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:):6 ~> Set to white anim menu icon m <~::,,::%ANIX1(M),%ANIY1(M)%ANIX2(M),%ANIY2(M)::6 ~> Print and creates anim string <~:::TAN$():XANISUP:6:X6"ANIXTV,ANIYTV:##;ANIV;:>5 ~> Print and creates ONE anim phase <~ 6XANISUP(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:y)tE MENNB: , : , MENNB ,, MENNB ,,, J:2O ~FILEPAL M:z)2T:,,, ,,,Y *REDO: NOJUMP:x*: T$()FILE: T$() Bank size:: T$()(( BANKSIZE) ) :$*(^/:h't: KM,rM:): z, ~> Get palette ON/OFF <~4FILEPALFILEPAL:E.  ~ > LOAD sprite bank <~ M:)" A$(*.*,)` FILTER$.MBK:T$ LOAD a sprites bank:T :+ F$E F$,FILENAME$:,:,$:,o:*:T$()Loading :*:FLGMERGEH -:PATHSAVE$A$:DRIVSAVE: S. PAL$:#,FILENAME$: () SPRMAXBANK::EZ A$(#,):(A$, ) Lionpoubnk::EN A$(#,):((A$))::E FLGMERGEDMIDHI((A$) )((A$)):NSMID((A$)):NSHI((A$)) NS((A$)):NSA((A$)):A()PAL$(#,A()): * *6 OPXT,OPYT:Out of;NS;@ SPRNBNSSPRMAXNB::E MAP$(#,NS):A((MAP$)):A()PAL$(#,A()) "NNS:OPXT,OPYT:Number;N;:IX((MAP$)N):IY((MAP$)N) $A$(#,IXIY):A$(#,IXIY):S$(SPRNBN)SCRCODE$((IX))((IX))()(IY)A$ &"TX(SPRNBN)IX:"TY(SPRNBN)IY:"HX(SPRNBN)((MAP$)N):"HY(SPRNBN)((MAP$)N), (N:A$:MAP$ *FLGMERGE()()(NSMIDNSHI)OTHER$(#,()())6 ,::SPRNBSPRNBNS .FILEPALPAL$((PAL$))CODEPALX:#PAL(X)((PAL$)X):X,#PAL(X):X: 0ST$:,$:,o:,0 5FLGMERGEF$,FILENAME$& :FLGMERGE:E S X XXSPRNBSPRMAXNB:S$(X):"TX(X):"TY(X):"HX(X):"HY(X):X:F$,FILENAME$d ]:::*:T$() Disc error:*::E k ~> APPEND <~ lM:)n q::FILTER$.MBK:T$ APPEND a sprite bank:T :+ vF$El {SPRCURSPRNB:,$:,o:*:T$()Adding :*< FLGMERGE:F$,FILENAME$: " ϊ ~ > SAVE <~ D M:):FILENAME$!9 љ-L ҏ :DRIVSAVE:PATHSAVE$:: ӎ  ԏ:!9: ՙ*:T$()Saving:* ڙ, ߏ! #,FILENAME$| A$ Lionpoubnk():(A$) ,:(A$),BANKSIZE:#,A$; A$():(A$),:(A$),:(A$),SPRSIZE:(A$) ,SPRSIZEDMIDHIt (A$),SPRNB:(A$),NSMID:(A$),NSHI:#,A$; SPRNBADSPRNB$:A$(SPRNB)::NSPRNB:(A$)N,AD:(A$)N,"TX(N):(A$)N,"TY(N):(A$)N,"HX(N):(A$)N,"HY(N):ADAD(((S$(N)))):N:#,A$; A$($):(A$),CODEPAL:X:(A$)X,#PAL(X):X:#,A$;Z SPRNBOPXT,OPYT:Out of;SPRNB;:NSPRNB:OPXT,OPYT:Number;N;:A$((N),(((S$(N))))):()(S$(N)):()(A$):()::#,A$;:N.!(OTHER$)#,OTHER$;`! ()LBANKA$(LBANK()):#,A$;! :E ! ]$!3 ~> SAVE AS <~ !4M:)l!9-:FILTER$.MBK:T$ SAVE a sprite bank:T:+ !>F$E!C.!H(F$,)!WX!M*:T$()Please:T$()confirm :*.!R+\:RE*!WFILENAME$F$: ! ~> QUIT <~ p! M:y):x*: T$()QUIT: T$()Confirm!:$*.!+\: vRE !:(! ~> 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 options <~ 0#HOTNB:#:#-0#HOTNB:#:#-0#HOTNB:#:#-0#HOTNB:#:#-0#HOTNB:#:#-0#HOTNB:#:#-0#HOTNB:#:#-0# ~> Set hot point to menu <~@#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 sprite <~8%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 sprite <~H%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 sprite <~H&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 sprite <~V&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'cL X: TX X rTXZOOM XR'c ǐ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$k.'~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,$': FZ2m('T' X( XM ȆXZOOM) 4IZOOM: ǐY( YM |YZOOM) 4IZOOM' X( X TX) ǐY ǐY TY( X OLDXS ǐY OLDYS KM ĤOLDKM)h't' ĚXS X: ĒYS ǐY:,::::X:##; X;:#,:Y:##; ǐY;:D' OLDZ2 *REDO(n:'' OLDZ2:: ,FIL1, "FIL2,: XPAINT, YPAINT?, YPAINT TYPAINT: OLDZ FZ: MENNB' KM ' FZh't ' KMh't*' OLDXS: OLDYS' Return to set RGB,' MENNB FZ\' Storage arrowsj' FZV FZ[ MENNB::ZV:'t' Fix size,' FZ3 MENNB' Jump in palettes2' FZP :h't2' FZQB :h't6' MENNB MENNBq'' 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)r:::& LEFTAD( MENNB, FZ4) ' Jump to drawing routines'NOJUMP'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:2) ~> 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 ,,,)w4)ˊ ~> Set to white left menu command M <~)̠)Ѡ:,,:: >Y1 M: 6Y2 M( ƈTMEN): M ƈTMEN Y2Y2$)֠, >Y1, 6Y2 )۠: ƈTMEN:6*/ ~> Restore Left menu/right menu <~,*0y )h: MENNB8*5 ,,,@,À, 0XOP, (YOP8*: ,,,@,À, 0XOP, (YOP$*? XOLDOP:u>(*D NOJUMP:.*a~> Restore SCREEN smooth! <~0*bq::::{(*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:',*{x):r,$:B,o:2* ~> Print in right menu zone <~*::J* 0XOP, (YOP>, (YOP* NOJUMP:2* ~> Print in right menu zone <~*: * ǐYn+ T$( ǐY) OPXT( T$( ǐY)), OPYT ǐY: T$( ǐY);6+ T$( ǐY): ǐY: NOJUMP:"+[~> BIG confirm <~d+\s(<: ĊUNTX TX: ĀUNTY TY: ȸOLDTX: TX@: TY0V+a,, ȤXSPR, ȚYSPR ȤXSPR@, ȚYSPR@:a'::+f::,,: ȤXSPR, ȚYSPR ȤXSPR0, ȚYSPR: ȤXSPR, ȚYSPR ȤXSPR0, ȚYSPR+:::!,:NO:!,:OK+k:a'+p,, ȤXSPR, ȚYSPR ȤXSPR@, ȚYSPR@:,, ȤXSPR, ȚYSPR ȤXSPR@, ȚYSPR@+qh:"+u:,,,::B+z vR:W<t vR+,, ȤXSPR, ȚYSPR ȤXSPR@, ȚYSPR@:,, ȤXSPR, ȚYSPR ȤXSPR@, ȚYSPR@: TX ĊUNTX: TY ĀUNTY: ȸOLDTX:t (n:a'+(+ ~> File selector <~++,+Ő :::::8+F$(*FILTER$,T$,T)+Ϡ: : +ԏ0+٢F$FILTER$.*D+ޢ(F$,.)F$F$FILTER$::+㢸(F$,FILTER$)F$++F$:+4,# ~> Draw sprite selector zone <~J,$,, vSELY,, vSELY lSELTY ,, vSELY,) YY vSELY: ,,, YY0, YY lSELTY: ,,@, YY, YY lSELTY: ,,, YY, YY lSELTY$,*:: : ,. A$ :( A$,)( ƔSPRCUR):O ǐY: NJSELXT, ǀSELYT ǐY:( A$, ǐY,);: ǐY,/ A$ : ƔSPRCUR ƞSPRNB>A$ :(A$,)(SPRCUR) A$ ENDp,0E ǐY: NJSELXT , ǀ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,, vSELYE lSELTY,, vSELY:,, ~> Erases sprite bank <~,XSPRMAXNB:S$(X):"TX(X):"TY(X):"HX(X):"HY(X):Xr,SPRNB:SPRCUR:OTHER$:DMIDHI:NBMID:NBHI:., ~> Calculate BANK size <~ ,, SPRSIZE ƞSPRNB$, ƞSPRNBXSPRNB:SPRSIZESPRSIZE(((S$(X)))):XJ, BANKSIZE( SPRSIZE( OTHER$)):,-O ~> Set GRABBER zones <~ J-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 / GET <~".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 -0O ~> Routine lines / zones <~ ,P,L,,,x,,U@,,,l,,4,Z,, `, , (, >7 ~> Left menus MAIN SCREEN lines address <~ >8,X,p,,@,#(, , H,%8Ǜ ~> Left menus BLOCS lines address <~ >ǜ,,h,,0,,,\,8 ~> Left menus ANIM lines address <~ >,,,,,,,,@c ~> Left menus IMAGE GRABBER lines address <~ >d,,,,,,,,,dBNJ ~> Left menus PROGRAM GRABBER lines address <~ >Ƞ,P,P,P,P,P,P,,8+ ~> 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,&H4 ~> Animation menu coordinates <~ ,,, ,,, ,,, ,,., /,,?, ,,,& ,,,&  ,,>,& !,(,,5 &,(,,5 + ,(,>,54`A$:S:A$Se`NN4tT4t<@e<@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?! `  `a ~||a  `? @?x??x??x??8????6;3cG?̟ǘǸǽǿLhl xX    ? |`|`8 83`8g8G8B@8@@9@6၇̥2g2 C332gÇ ??` ?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 ys |9s {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$ xHA 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}T*  v>]ۑxtv>]ۑ `gTAsAst<A ^4 !sxAsspr[Ot^sX%i\pP qjxRDž>^sX%kpr?Dž>^sX%kp\t\tR!' 8c5Qk)Asxv>Asq`[OvizxXhgjxXudj(DIrw(; [)[ŎQ&f.)[ՙQ&fBF]& m "$iK:8m`Md`^E!q jn0k600Vc."R \"!jC*ڡeA(0"<*ڡϥ6\"!mxP \"!,H "X*ڡ5/ReR}P \"!,H "*ڡ5/Re@;{C0$&Zm{5c\>pp &[A(`&=MSPLU]( Lf8q#YnpzP t l W)0 D&a kFpy)U*ڡá5/O5[ 7(!qVoy^}.Ycտ1-Yc)ħOgwYdw,Gpep600V6&)qE jƖpѰF-3]6p5Q$P) *S2'jQɂ!9jQ)` jQ¡R5MjL@+m ձڡF,U)t2ڡ^' F 00Vg5ʭ45Jo_7R/Fq#7(%^rml%ecR>p&)PHRp3v3A`JX$8sggL(X%,"!lձD41\p3SGGP@~⯢ M jQ&տPuX!ApE PX* PƒJgo2Xm QHc*p*D.A% cV *P 7TqB 7T,Ӗl\'o"S%%^RP yס%S%Gur<o5P ?m<#7(%^BB7rR"X%d/jl%qVxm3 a`KwQmY*b ` :ٗ8IT*p}):Х%az Pq=Q 0"$GPNH l *pD)  p' HO A* f>tORNP381w*xsj H@ |qnH|J3 6ĐW87i[[NrlӾ<؁޽^yܐP8 ڙժ+ 7.osJO^+7@1$cjpƿ}N)vuVv>>*epbߔ*(>^uЛvRog #K$LԾsy, ?B]z ϬjZ. {Pև0,0."eD,͛.ھ!RY, "l0 O@^}*gKs#8u` t,4 tn5 @4c @rA‘ ?TP8¡:'E1~  .^ʹzcEzEQMbpRà8¡Lg+TLcE5%|­cEESP) (?m: _ ?tDNo`N$N'0 d St U@(epRt 1tRt pҡ^'E>0^'EP` MN,epRtCYea0VtaQ3Um'EN`` GTGS0Vt GE<m|CSh#mn@'Eै YMie0VÐ8iIQE`epRt,w~  .^ʹFKiChM!cE!8clcErp⥟XPYn@'3@ `  >AiII0QPEt2UP @iI)8Z @iU@>tC9r0 #J @)8!pRt0⥟8.r0Vt ^}1u%[cE 8¡(CG/QZZcE5aP&lk˩e0Vt0⥟Su`/Qm8 (t4 ?t ^-bP @'Pgc_À 8L9KaMcE/>4Vtu`A^4VtPF`A0>4VtPn0 `a G/!epRtCYea0Vt TcYeapRt\Y~ 0 `aQSGS0Vt ^P `n7NPJC%Y)AepRt\Y%Y)QucaPCuxPYl)/30 t,wE`f`%{Rt ⥟R 8&,RtM1VtL3S0lPcE~ .^eYd'UYpuGyG  `a^A G`| LPEtL3R@|M| l@Ǡu wY|"04YE!q*dP:z)EQ ܔz-VAVA CDa vCNгR+Zp = `a /p/ :@CKc0LqN8қ7(! -`PYnpOt, 3rQL* ` PPT`:cKc0L*dzt,uE`IU:aaET@7&G 6,9 04$BA) C p` >0 04$BA) 'A/:cKc0L*dzt,0Vv 04$BA) 'ACKc0L ` =bS!Tpppa8(!tLoG q!PC`^TlPcbt\XG q!PC`^TlPcpetP^i`Sncdt, Pn/A&a:p Q `a@4Le!PJQ e.@Un/Nlnte`w!n^t, iphpb :QP8JPJQnkPy@ǵl 0 s:S`` Cw[QlPcNCAu 0tDt,wCwt,(/ swPt, A0EePzP/)aNA= O@ Ob ! ǰ` Lnn5)a8Swphv!@SVP6,\a ln8uN*Q p' `K0 ` V:U>O0E@:@±-P% #@iܔzP:@Kp$N 08z[t@I0K>*O !PJQnkPytt@c\^tp `aRpE|1| R @4#gV | l@!E@ACKc% IqNlcpsba@l靅*qY-`tLߪ2DONV|a0O=+Mf  ` fRVBt04kP#m/1h`Blmpf@9-`PPEOt\Q<JP P4Ed` ` <1KGP!cKc0LdPhVtcWaA &:p[t<qE@[D:cKc0LdPhV ! ǰ ` E`FC!cKc0LdPhVt,>:cKc0LdPhVt,nUp> 04kP @e.1-`z(!t04kP#m/N$.bp `aSUP!Et/)CAqCV*JQzY'Q<-VCV*JQzY'mGeŤp `aP^i`Snc7:@EtzY)A&t DKvdP!@EtzY)o`Nt\YB aPcp:0ҮQtGB d'ܴie PZZ1p `aciPSI!8t0:@CwzKceuiy#@o8j0t,wCwt,/ 0h@zYavMJQt,`1E/^aRt ObzAPDp `a?HG PNP;*CQPEea;)o`Nd`K/v!@[U`>UEUP;Z6,LnDV:)Npp `K0 @ ` 6: bQ/O^t, rp#@,PlP:@9e#%8 @!>DSUP!PJQ PZZ1t,wPPEAOwY%Kq i) om # . K:B#d8Q5Q5Q5QP8_K#4B#4Bhhˠ8_K#4B#4Bhh[Lionpoubnkih6h6l0 0\000#<0(+4-/050;$0@0Fd0L0Q0WD0\0b0PALT"3DUfwGBQPp$?0?x`O^? ? ? 0ya0!0 ! @` `::`p0  O-@8@  p0x@`8   ?_8? ? 000(000 0  @ P P @a@P @P {0:x: .  @p@H 00   ?sy0#c#`! @ Cc @@{@@: @$@v @@@@p`Ha}@@^!@ !! `( ( 0 ??@8~Ϗ#  @ @`< &gY:Y&0<A @@x@@ ((@  @P @P   @00 @ 0@@@` ?@???????????????!    <# @ 7+ 7`` /Q!p1&$z=>~&/~??~ ;~`@ y c~ x~ ~8Lrx:552?8??{|x?_\\?L/__ ? ??    ?? 7! 8a@ C p p`,```@ `` ```0 00`` @ ?>@@  @?     <# @ 7+ 7`` /Q !p1 z ~ 717~ ?~ ?#?8 ??? _<?d ?  ??p@ 4693 7 `~??|| @.,.| 0>? ">?| .>?x | |    ?? ?? ; 80 3! ?? @  ?`8@G!     <# @ 7+ 7`` /Q !p1 z ~ 717~ ?| ?#? ??? ???8 0Gyz??88w0'?:` @?G??`#A``́7G 577 C w    !  q 8}} 8}} ??` h@   >>  n???ooo ?ßP?  ??!    <# @ 7+ 7`` /Q !p1 z ~ 717x0 ? ?#? ??? ??? `  gC oC g ` >?><O~W(h||_| ?(`  0 <   ??   ?? ?? + k` p #` 1C@``98;``` ```0009?`8@G?9?     <# @ 7+ 7`` /Q !p1 z ~ 717~ ?| ?#? ??? ???8 0Gyz??88w0'?:` @?G??`#A``́7G 577 C w         c @  ?>   @!     <# @ 7+ 7`` /Q !p1 z ~ 717~ ?~ ?#?8 ??? ?<@_ /7  ??pX 4>12 ' `~|??| @.,.| 0>? ">?| .>?x | | ?   ` ` p ` 8}} >> x0  p`  ~~ ???ooo0y1! * . @ ` 9>    =} @`  4: )6 +6?vkv&*6Jw(*6Ufm(+7/4= J/HKHh{2zׄ82zxHJH  J  ?@y (  T  \ t 8 r|    {5hp (0*6,0* 6np* 6Np, 4\b LTh{>W8 > x " ^      GG?  yAAP@@  0    p  , '<?;@{j00  \b,TlYf(Tl(Tl(Xh)f̀4at4= a o؟ # ^h{ > ׄ8~>x   ?@??'?gD ? ??  p `` px 7p  7 ?v ?? >?   r#G z3 ; p  ? ap?8@``<C`ß```3xT(,U|@P(c @ @        80 ` `~~ h  >> ~ ~    ppp !?@??'8'? ??O p `` px 7p  7 ?v ?? >?   r#G z3 9 p  y@ ~0 ~__ ~o/c ~a";`@X@0p @|`|sU|h z|rp <z: |p |@@@        00?8 ;;? 10? 60?  62?   ?@??' ` '?wA ?? p `` px 7p  7 ?v ?? >?   rG | >p  8?P_ ?/x`?0i9? ??66 ?>n~ f> z~ @X ??@ ??@@ ??   ?? ?? ????8|| >8||  p ,@ q!@ q! @ @?~@? @@<G؀> ?p?@@`/ ??څ ?{ p pp   || 88   ?? ??x@@ ??`??           w b   88  `8?@??' ` '?8ppO p `` px 7p  7 ?v ?? >?   rG | >p  8?P_ ?/x`?0i9? ??66 ?>n~ f> z~ @X ?? ?? ??        ? @     ?@??'8'? @ ? p `` px 7p  7 ?v ?? >?b   r#G z3 9 p  y@ ~0 ~__ ~o/c ~a";`@X@0p @|`|sU|h z|rp <z: |p |@@@     ??  ??  ??>> >8||~~p <~~`  @ a! ` @@,G??8?c!aa@<<x77G7 |} Ч}`` G 13x !? + ?  ?q?  _,/????    ??9 ??9? ? 8xx??<<@'?O?@" X?@$K_€???@?*?@? >??> ??  N    ppp ,Gp|???? þ<<x77G7 |} Ч}`` G 13x !? + ?  ?q?  _,/????    ??9 ??A!??  ??SP??V ?? _Ү@zP/ `@   8 |88 |8{ | ?? ~< > ~~||g@G:<<<<|| <<<xAx ~~~`` nnn@$?@@??'?C ?  p ??` hx np v  ^ = b# r3 z3  p}x?pp <    @ 0P(0 @???????? 8<<?,0@x ??`qr @; 0|L WHt47/@N>o Q|@||?}`H08??txpx   @  |$<zb?R~f>t^T*d?eƃ>=|8 y0@ ;̀  < q<8 p80 >    xx px |}0 ~<{ |0 3 GC? ?   @  |||444Lionpoubnkvuu0D00d00 0&D0+0107$0<0Bd0H0M0SD0X0^0d$0i0od0PALT"3DUfwGBQPp$ ????>O~pO|??? ?/??! ~@!`,_ `<_8`x@t{ hO```l/  ????? ??0@>AϿHHH ?? ??A!  S V/  _漣!P/ ` 𰐐/HH@H( E00x0``p||p8p|`|p >> @  @ ????y?@8@??c?? ?/??! ~@  ,_ `<_8`x@t{ hO```l/ ?????dždž8ǀ??9 ??9???8xx@?<<@ '90?࿀O?`"0??5 X?`0>$K_ ¿90<?@@~????00x0``p||p8p|`|p >> @  @??????| ??1?? ?/?? 8  @#@ Xs@ xSpp H @    _@,/???????`|  C<<??@? ??_@`??W@?? M]@??B XQ _ ??]_??P          00 x0 `` p|| p8p|`|p >> @     @????>p|??? ?/?? ~ @ !` ,_ ` <_8` x@ t{ hO  ``` l/ 3 ????? ??0@>AϿ ????A!  SPV  _Ү@!P/ `/@(        00 x0 `` p|| p8p|`|p >> @     @????>`x?? ?/?? ~ @ !` ,_ ` <_8` x@ t{ hO  ``` l/  ????? ??0@>AϿ ????A!``SPV  _Ů@ࠀ! X/ /(        00 x0 `` p|| p8p|`|p >> @     @????>>@?p?? ?/?? ~ @ !` ,_ ` <_8` x@ t{ hO  ``` l/  ????? ??0@>AϿ ????A!?!S?P V?  _ˮ@!@/*@/(        00 x0 `` p|| p8p|`|p >> @     @????>`x?? ?/?? ~ @ !` ,_ ` <_8` x@ t{ hO  ``` l/  ????? ??0@>AϿ ????A! SPV  _Ů@ࠀ! X%/ /(     #!/ 31?  00 x0 `` p|| p8p|`|p >> @     @????>p|??? ?/?? ~ @ !` ,_ ` <_8` x@ t{ hO  ``` l/  ????? ??0@>AϿ ????A!  SPV  _Ү@!P/ `/@(        00 x0 `` p|| p8p|`|p'+/>>gjo@BLO    @???????????????0?88??88888 D  U ǀ}  @ l@     8 LJG??FoGpqc2?????? ??# \??|<o?_??g~{??x  ?À     ǀ   ǀǀ @@À G ǀ( €ǀǀ8?????????8?8?08???? 8888 D  U ǀ}  @ l@     80G!?Ov!Ciyʗo cg A <?? x???S|  ??|???~ < |  瀃 瀂    @@ǀ  π €Gǀ     @ ?????????8??08? 8888 D  U ǀ}  @ l@     80G!?Ov!Ciyʗo cg A <?? x???S|  ??|???~ < |        ǀǀ @@ǀ  ǀππ €ǀǀ @!?????????0?00?0?<8888 D  U ǀ}  @ l@    & 8(Swg7;Z^xc4? > G       ππ "ǀ /̀ ƀ @ π@ CÀÀ8???????8?? <> <> @ 8?  ?? @?? xp>>>p>>>>    ??? ?? ?? ?? ?? ??  >   ,??? ??  ;?  ?<??0? `@`Cp@ @   <>   <>    ???? xp>>>p><~<~<<< <8<   ??? ?? ?? ?? ?? ??    ??  ;? 1>? ?0? ?<??0?!`@`Cpa @ o  <>  <>  |~    ???? xp>>>p><~<~<<< <8<   ??? ?? ?? ?? ?? ??    ??  ;?   1>?>(> ?0?>0> @` ``AAA @   <> <>  @ X_  ?? @?? xp>>>p> >>>    ??? ?? ?? ?? ?? ??     >?  I  (  " > >      ???@``@ACA @   <>  DF 7   @?? @?? 88>x>x>0>x?   ??? ?? ?? ?? ?? ??   >>    #? <??  ! ???@``AA@@ @   <>   P HO  @?? @?? 8 8>x>x>0>x?   ??? ?? ?? ?? ?? ??   ??   >> << ( <>&>Lionpoubnkjii848 8T88!t8(8.85$8;8BD8H8Od8U8\8c8PALT"3DUfwGBQPp?q@`@   ? /Lj? a??<<8?!=:  ^_ ?!&P >__= ;H x  p A-~b A-~: A?~2 + op w Xo` @ _ p@ X0o xp vc~ >X ?q> |~?i aJ |.d i|.Ѐ q  j| yߎx   `9 $:w8 | || || 8= @{ 00Pf `lPe` | np    a? ^|~@0?(<@c|9~q~q~ r|*4 ~x,0 GD `& @ 0 ?q@`@   ?0p?l@?!=:  ^_ ?!&P >__= ;H x  p A-~b A-~: A?~2 + op w Xo` @ _ p@ X0o xp vc~ >X ?q> |~?i aJ |.d i|.Ѐ q  j| yߎx   `9 $:{9@pxp >~>>>?<> Is Js ,a @Iq    ` 0 ˼@=>??@ 9>  88 p  y 00p8 ?G@@?߆I91  !? =:  ^_ ?!&P >__= ;H x  p A-~b A-~: A?~2 + op w Xo` w _ p @ X0o @ xp @Yy&8@`| 'р |'}y||$0M.r(|x|d ;F|$@|H| q~ | 6y|x, 8h`T9  {Py `"<8|>>||>>||>>8 `E`y@| |st~y0}р /Bp{``bz 68 @  ??  <    ?G@@߂???_/DFx>`~? =:  ^_ ?!&P >__= ;H x  p A-~b A-~: A?~2 + op w Xo` w _ p @ X0o @ xp @Yy&8@`| 'р |'}y||$0M.r(|x|d ;F|$@|H| q~ | 6y|x, 8h`T9  P}  "=ppppppA] ` @:<08p  ` @`Axcp|     ` y  ?  8cC?> =:  ^_ ?!&P >__= ;H x  p A-~b A-~: A?~2 + op w Xo` w _ p w X0 zo@Lp@ ?w@1N@(0Op,007`\P.Hws!^7p>n 0, Pql~ Xyp x  `9 H@?7?/?/_o@@ 0sǝ8px pȤ8Dx ,p \^"~~~ >~ 8?Pp 0>@@` ?  ????O Ghs?? =:  ^_ ?!&P >__= ;H x  p A-~b A-~: A?~2 + op w Xo` w _ p w X0o@Lp@ ?w@1N@(0Op,007`\P.Hws!^7p>n 0, Pql~ Xyp x  `9 H@o/@@o;wwwwww00@8??dt >?>3? 2<(?&?$ ?@?   n~ 08__= ;H x  p A-~b A-~: A?~2 + oq Xoa _ q X0ogvLj8 g+Wsc(VQaX``o4]'8=Bo}!" `X q~ @y xP @`9@wq syq q ` 8 ;P $8g??@p4??@>?,00 `  p px p0  `0 ?      3g? 08` ?8| 8!=:  ^_ ?!&P >__= ;H x  p A-~b A-~: A?~2 + oq Xoa _ q X0ogvLj8 g+Wsc(VQaX``o4]'8=Bo}!" `X q~ @y xP @`9@qp     A. y <q H 6>8/@v`~xD58|0?f~ 3< p`| yp     ?      3g8?@?@8qs>7 !=:  ^_ ?!&P >__= ;H x  p A-~b A-~: A?~2 + oq Xoa _ q X0ogvLj8 g+Wsc(VQaX``o4]'8=Bo}!" `X q~ @y xP @`9@qp|| || || >z 1-̀ b@@@  / ex &<> >?@' ``p p7  pG E8 >@ @#?      3f G3; !=:  ^_ ?!&P >__= ;H x  p A-~b A-~: A?~2 + oq Xoa _ q X0ogvLj8 g+Wsc(VQaX``o4]'8=Bo}!" `X q~ @y xP @`9@appxr0  h 18 `88 <?< _? `<Ѓ| p  ` 4     `p #?   ? ?? =:  ^_ ?!&P >__= ;H x  p A-~b A-~: A?~2 + oq Xo` w _ p w X0ogLgp ?w@1N@(0Op,007`\P.Ows!^7p>n 0, Pql~ Xyp x  `9 H@ p 0xp ?  0@@ˀ    0#?  ??? ?? =:  ^_ ?!&P >__= ;H x  p A-~b A-~: A?~2 + op w Xo` w _ p w X0o@Lp@ ?w@1N@(0Op,007`\P.Hws!^7p>n 0, Pql~ Xyp x  `9 H@;D 7@;?;?;?;/~ b qh=?}7 !!0> ?Fx #?G@@??>? ?8?09? =:  ^_ ?!&P >__= ;H x  p A-~b A-~: A?~2 + op w Xo` w _ p @ X0o @ xp @Yy&8@`| 'р |'}y||$0M.r(|x|$ ;F|$@|H| q~ | 6y|x, 8h`T9  P  *7?@   3:=__y~? y@3B8? C@0 x@ >?1>   #?G@@???0p`A?< =:  ^_ ?!&P >__= ;H x  p A-~b A-~: A?~2 + op w Xo` w _ p @ X0o @ xp @Yy&8@`| 'р |'}y||$0M.r(|x|d ;F|$@|H| q~ | 6y|x, 8h`T9  P? @@@o~`???`p@8y v.?x߇@pxߘ86   > ? <(?@ >?@@`p[ <@ #?q@`@   ????BCC ??!=:  ^_ ?!&P >__= ;H x  p A-~b A-~: A?~6 ' op; Xo`@ _ p%@ X0o xp vc~ >X ?q> |~?i aJ |.d i|.Ѐ q  j| yߎx   `9 $:syq } < |@ =  <#<p><28_@ P[Ø? <0 `8 08 &  @@@@``"?q@`@   ?.FF B00??? 0yǏ!=:  ^_ ?!&P >__= ;H x  p A-~b A-~: A?~6 '  Yop{ Xo`@ _ p@ X0o xp vc~ >X ?q> |~?i aJ |.d i|.Ѐ q  j| yߎx   `9 $:{yp     Q" 9  ) < '8H MP00?D,?{|  Æ    ` 08` FLionpoubnk32L2LO<|\< |   \   < F P Z :zZ:zZ:zZ:z  !Z!"#:#$z%%&Z&'(:()z**+Z+,-:-.z//0Z01PALTfDp 0PU33ss77w?R````@ 8?R````??@ 8p@???????!3Laa@@@!!!@@a@a3L!88@88888888D8|??!C @?@@???? !D@`@c<B<??3cÀ????? ?@?@`` @`@c<B ???? 80@~a@a@a!??>|@@   ????? ?!aa@@q<C 'Xc@a@?@?????!aa@aa@  @ *`````` `` ?*````````@ `````````LJH p8$88@80<>A@! ??Ϗǟ@ ` 0@ 0` |LJLJLJLJLJLJ 8p@80H88@80H8p?8p80H88@80H8pD 7<8xppppx>0 LJǃǃLJ`8@8x88D888<8<8<8888D8x8pD`烇8@ 8888?888880DH8@ 8888?88888D7σ<8xppp0Hp0x0>0 88DD88888888?8888888888DD8D8888888888D?@!<Bǿ?Ǐ8 DP8@89:?;988p80DH烇8D88888888880DHÇGGǏ>88@D8@<./'#!  x 8 P??@<xxp8Dp8   p8p8Dxx<@LJLJLJ 8p@80H88@80H8p? 88888D???@<xxp8Dp8   p8p8Dxx<@LJLJLJ? 8p@80H88@80H8p? ;988p88D@< ~?`0p `p~? @  $0H8x? @|8D(888888888& ?|8D(8    @@@@gGOO?p 0 0   (  ``??>x< @@x x< @@???<0x@ @<x  00@````0@0  ??`0@0 $$ 00@`  @6?````@]?????? ?? `a@a1Ha8E?????pppq q@qqqq@q F ???? 1Hq`@`p@?@?8?@cccc$????? 1J@qa`p@?@?? @88888888|?0??? >Acc~ @C@@@?@???????? ppqw@u yqqqqq P P pppppppp  @8D??ppsqrt|~wsq@ppppppppppp C#ccccc! w{ s@sssss ????????  w{qqqqqq???? 3@aa@a@a3@ ????? yq@qqqq@q rp?  gccc?@(  w{p ppppp???p????@ >@A@@p@~ @@!@  0@ppppppp2H  ????????? qqqqqq{}1? 0@@8  GO f >p11 0" ``? p@8  P? p@8  Bl P|?  <x p`Lionpoubnk$ ^<0PALTwp3DUfU33s&77f???{?????n'w>8?>?n97?7??????????????????????? @@@@@H@H@p@XA G @HA2@F@H@@@@@@@@@@@@@@@@@@@@@@@?? ? @? ?77?77oooo @ ??xxC (?3/`3 #? <}?8@?@ @?8?~||?|?|? |~~~?????|~>|&~|&>&?&'>&~@?&x??)pwW[7UUQUUTUUQUUT@h@h@h @hpD@h@h R@h2@hH@h@h@j@@@h@h@h@h@h@h@h@h@j@@@O/'A?@@UT/UU ?gg0000~?UW_@??  ~?????~" "?##?#"@?"|???.@,Bx|x|x|xx x xx< < | <<  < $@$  *К!TbA#R@}HC @@@aUUꪫUW (ȦQ0##    #ꪫUWUU <??? ?~ 0'&@LL?@?=?~??p_/_/+ PU_*UTJUPQ???     ????>~a?????? >>?  ??!! ? ?? ALET@`F| bn4x@dCOUL@ @ @@ HE@C 1XTRANSPTYCARTYMAX(TXMAXNBPLANPALET&OLDINK&CURINK SPRMAXNBVERSION$          CURINKENCREZMY2ZMXSPRYSPRXTYTXMULYMULXTRANSPTYCARTYMAX(TXMAXNBPLANPALETzLionpoulosxx=& - Sprite editor V1.0  STOS basic accessory$ ---> ALL SCREEN MODES <---$ By F.Lionet & C.Sotiropoulos (c) Jawx - Mandarin& -c---> adapt to resolutiondXn,s~iPALET:NBPLAN:TXMAX:TYMAX(:TYCAR:TRANSP:x~nPALET:NBPLAN:TXMAX:TYMAX(:TYCAR:TRANSP:ZfxrsPALET:NBPLAN:TXMAX:TYMAXP:TYCAR:TRANSPxMULX:MULY:TXTXMAX:TYTYMAX:SPRX:SPRY,:ZMX:ZMYd:ENCRE:CURINKENCRE}T$(,2),&TZOOMX(,),&TZOOMY(,),$TEMP(P),F$( ),A$(d),!C() :\TY:\KX:&TZOOMX(Y,X),&TZOOMY(Y,X):X:YBANKMAX0\X?:X:XNJ---> Creates menuȜPd@͝]X:A$:(X)A$:ҝ]X:N:]YN:A$,Z:(X,Y)A$:Z(X,Y)ׂY:Xnܝ^+XPALET:(,X)(),X,X:X8ᢸ(,):(,)0BANKMAX(,)(, )栁:2맠 ,,,p,X,@+---> Messages,81_X:Y:_:A$:T$(X,Y)A$:YY:A$:X ---> Initialise work bank,$.---> Grab sprite bank from first programL'*B:a*(B,)J((B,))(B,)BANKMAX(B,),(B,)(B,)():LBANK(B,):,::+\68:|::':nr :'t---> Main loop觠::"()bV"()j> "() (aϊ---> DrawР:,,ՠ|::T$(,);CURINK; : ;:CURINK: ;::b::FLGPAINTT$(,);ڟc:*ߢ():aXX(ZMX)TZX:YY(ZMY)TZY:XXYYXXTXYYTYc"RAXXX:AYYY:OLDMK:c"0CURINKvYYAYXXAX4:AXXX:AYYY:OLDMK:<OLDMKߛOLDMK FLGPAINTZMXXXTZX,ZMYYYTZYZMX(XX)TZX,ZMY(YY)TZY:SPRXXX,SPRYYY:xCURINK:)6:SPRXXX,SPRYYY:':ENCRE:':3---> DRAW A LINE4DX(XXAX):DY(YYAY):DDX(XXAX):DDY(YYAY):XAX:YAY:DYDXH9CPTDX::XXDDX:CPTCPTDY:CPTCPTCPTDX:YYDDY>ZMXXTZX,ZMYYTZYZMX(X)TZX,ZMY(Y)TZY:SPRXX,SPRYY:XXXCHCPTDY::YYDDY:CPTCPTDX:CPTCPTCPTDY:XXDDXMZMXXTZX,ZMYYTZYZMX(X)TZX,ZMY(Y)TZY:SPRXX,SPRYY:YYYR Ê---> Fix RVB Ġ:|:T$(,);CURINK; : ;:CURINK: ;::,:T$(,)^ RVB$((@CURINK)w,)$:,:RVB$;* ΢():a Ӣ C()(0):X((RVB$,C,)):XX:XX^ (RVB$,C)(X) :CURINK,($RVB$):  :   (" -|:T$(,)4 2()|::B 7X:XOLDMK: 2 <X Z$ AOLDMK 2X ZPEINTUREPEINTURE:PEINTURE$PEINTURE0 _):OLDMK: 2 ---> STOS* :n ,, ,  |::a ™nr :': ---> About sprites^ :,,:ENCRE:(),(),6 &,:: SPRITES GENERATOR :X +,: By Francois Lionet :,: & C. Sotiropoulos , 0, : (c) JAWX-MANDARIN  5o::)h: ---> quit, (:R: :: ---> Quit and grab, (:R:H 頰:::XPALET:X,():Xn (),()LBANK::,LBANK:,LBANK()@ 󠱧::bgrab(),1:erase(),1` :--->FILE*:,O,,h|:--->load sprite bankRR$(*.mbk,T$(,#),):+:'<R$츕(R$,.MBK):68#,R$:()BANKMAX:LBANK()::zR$,():(),()LBANK():,:R"(()),$+\:NOMFILE$R$'46|::T$(,))::w:'N---> Save sprite bank&ONOMFILE$h(TR$NOMFILE$:mg---> Save as ...^h+:R$(*.mbk,T$(,$),):+:'<mR$츕(R$,.MBK):>r(),()LBANK()wA$ Lionpoubnk:X :()X,((A$,X,)):X:() ,:(),LBANK|<{R$,()()LBANKH(),()LBANK()4|::T$(,))::w:---> BANK0:,,P,,|::---> Grab from program((:R&:T$(,%)::NZ:X:X񸈚 *(X,) ,((X,)) XX,Z:T$(,&);X;T$(,');(X,)  XXZ,:T$(,):::#Z, :T$(,();:X:XX#R(X,Z)(X,)BANKMAX:#(X,),(X,)(X,)():LBANK(X,):,::+\ #)h:':o---> SPRITESfp:,,8,,,,,,,d,i,2,,,*u|::':---> INSERT8|:T$(,)::)R:8RNBSPRӊ---> Put sprite8Ԡ|:T$(, )::)٢R:`ޙ+\:RNBSPR:RNBSPR(---> sprite at the end of the bankjTSTXTY(NBPLAN):TSLBANKBANKMAX:ADCURBANKNBSPR:AD,ADBANKLBANKAD:AD,TX:AD,TY:AD,:AD,NBSPRXNBSPR:DP(CURBANKX):CURBANKX,DP:XDP:X:DPDP(CURBANKX)(CURBANKX)(NBPLAN)ZCURBANKDP,ADBANKLBANKCURBANKDPTSAD,DP:X:XADBANKX,(ADBANKX)TStX:LBANKLBANKTS:NBSPR:ADBANK ,NBSPR:)---> insert spriteADCURBANK(R):A(AD)CURBANK:TSTXTY(NBPLAN):LBANKTSBANKMAX: A,ADBANKLBANKATS:LBANKLBANKTS:AD,ADBANKLBANKAD:LBANKLBANKAD,ACURBANK:AD,TX:AD,TY:AD,:NBSPR:ADBANK ,NBSPRvX:XADBANKX,(ADBANKX)TS,X:NBSPR)RXR:ACURBANKX:A,(A):X|$XRNBSPR:ACURBANKX:A,(A)TS:Xd)SPRX,SPRY,R,TRANSP:AD,XHOT:AD,YHOT.7---> Get sprite88|:T$(, )::)8=RRNBSPR:B:,,:SPRX,SPRY,:ZMX,ZMY,GADCURBANK(R):TX(AD):TY(AD):XHOT(AD):YHOT(AD):'tHLXSPRX:YSPRY:NR:*:---> Erase sprite8|:T$(,)::)8RRNBSPR::͊---> sub pgm eraseADCURBANK(R):A(AD)CURBANK:TS(AD)(AD)(NBPLAN)ӠATS,ADBANKLBANKA:LBANKLBANKTS:AD,ADBANKLBANKAD:LBANKLBANKJNBSPRNBSPR:ADBANK ,NBSPRvݝX:XADBANKX,(ADBANKX)TS,X:NBSPRRXR:ADCURBANKX:AD,(AD):XRNBSPRXRNBSPR:ADCURBANKX:AD,(AD)TS:X---> Move sprite around8|:T$(,)::)8RRNBSPR:6 R:|::T$(,):::1---> Fix MASK PARAMETERSp2|:T$(,); (;(TRANSP) ;) ;:TRANSP:::c---> Get from picture:dR$*.PI(() ):niR$*.NEOhn+:R$(R$,T$(,),):+:R$:ls|:T$(,)::):RRNBSPR:|x|::,:T$(,):,:T$(,):, :T$(,).}w::R$:RL:K:K:K,,R,TRANSP K*':)h:B:4|::T$(,))::w:NJ---> cinema!TȝX:!C(X):X:CINEMA:P͠|::T$(,):CINEMA;::):ҢRRNBSPRP!C(CINEMA)R:CINEMA:CINEMAbSPEED(:XCINEMA:!C(X)X:: old cinema$CINEMAl|::T$(,)::,: :XX():YY()h,:T$(, ):,:T$(,!):FRAME:'0,XX,YY,!C(FRAME)|X2SPEED:A$:A$-SPEEDSPEED:'JA$+SPEED2SPEED:'*A$ :" A$( )T:X:FRAME:FRAMECINEMAFRAME:)h:>',:T$(,):SPEED; :+---> Fix hot point8,|:T$(,"):,,1:XENCREENCRE:X:ZMXXHOTTZX,ZMYYHOTTZYZMX(XHOT)TZX,ZMY(YHOT)TZY: :X6(SPRXXHOT,SPRYYHOT):ZMXXHOTTZX,ZMYYHOTTZYZMX(XHOT)TZX,ZMY(YHOT)TZY:,;()::@XX(ZMX)TZX:YY(ZMY)TZY:XXYYXXTXYYTYu6EXHOTXX:YHOTYY:1---> Fix X and Y size,RNBSPR:&|::T$(,)8(<:R ,,,::,,:SPRX,SPRYZMX,:NNBSPR:XSPRX:YSPRY:*SPRXTX,SPRYZMX,:SPRX,SPRYTYZMX,:ENCRE:':XHOT:YHOT:RNBSPR::L TYTYMAX!TYTY:!HTY!TYTY:!LTXTXMAX!TXTX:!0TXTXTXj!'t::T$(,)X:(TX) Y:(TY):W---> TOOLS<X:,], ,,,],L]---> Erase((:R't:---> Flip :YTY:,SPRX,SPRYY,SPRXTX,SPRYY,SPRX,SPRYTYY:Y%:'::---> Mirror<::YSPRYSPRYTYXTX:Z(SPRXTXX,Y):SPRXTXX,Y,(SPRXX,Y):SPRXX,Y,Z:X:YȀ::'::---> Scrolling&|::T$(,)8(<:R,,,$:':  Downn:,SPRX,SPRYTY,SPRXTX,SPRYTY,SPRX,SPRYYTY:,SPRX,SPRYY,SPRXTX,SPRYY,SPRX,SPRYY:Y::  Upl:,SPRX,SPRY,SPRXTX,SPRY,SPRX,SPRYTY YTY:,SPRX,SPRYY,SPRXTX,SPRYY,SPRX,SPRYY:Y::  Rightz::YTY:$TEMP(Y)(SPRXTX,SPRYY):Yh,SPRX,SPRY,SPRXTX,SPRYTY,SPRX,SPRY:YTY:$TEMP(Y):SPRX,SPRYY:Y::::: # Leftf$::YTY:$TEMP(Y)(SPRX,SPRYY):Yh),SPRX,SPRY,SPRXTX,SPRYTY,SPRX,SPRY~.:YTY:$TEMP(Y):SPRXTX,SPRYY:Y:3:::K---> PaintZLFLGPAINTFLGPAINT:(,)T$(,+):@QFLGPAINT:(,)T$(,*):?---> Palette,@:CURINK:'---> Editor screen'',,,P,,:::,(),()(M((MULX)),()TYCARr',,,,,:::T$(,)T$(,)b',(),()( (MULX)),()TYCARD'$,, ,,,:::(nb'),(),()( (MULX)),()TYCAR8'.,,,,,::'3,(),()( (MULX)),()TYCAR:PEINTURE:)*'8ENCBISENCRE:'tf'=,, ,,,,,,,8,,>'B,(),(),() 'G:&'s---> draw sprite and zoom border'tZTXF'yTZX&TZOOMX(,Z):TZY&TZOOMY(,Z)H'~TYTZY(ZZ:'y':,,:SPRX,SPRYZMX,:ZMX,ZMY,.'ENCBIS:,,,l',ZMX,ZMYZMXTXTZX,ZMYTYTZY'ZMX,ZMYZMXTXTZX,ZMYZMXTXTZX,ZMYTYTZYZMX,ZMYTYTZYZMX,ZMY',,,:ENCRE:SPRX,SPRYSPRXTX,SPRYSPRXTX,SPRYTYSPRX,SPRYTYSPRX,SPRY'$'׊---> Draw work sprite and zoom&'ؠ|::T$(, )'ݠSPRX,SPRY,SPRXTX,SPRYTYZMX,ZMY,ZMXTXTZX,ZMYTYTZY '⠜:(;---> Test arrowsH(<:():()R:.(A()R:B(F()R()($):(K(A(m---> draw arrowsj(n|:ENCRE:,,,:,()TYCAR,()8(s<,()<,()TYCARR(xh,()TYCARX,()TYCARR(}|,()TYCAR,()TYCAR((---> Confirm.(|:::T$(,): (G:()4(R:@R (:)---> Draw paint zone()ENCRE:l)6:|0)XXFD) (),()X,()TYCAR:)5---> set paint patternd)6PEINTURE,PEINTURE,,PEINTURE,);&)g---> Dialog window disappearance)h|:)m,,::ZMX,ZMY,:ENCREBISENCRE:^':)ˊ---> Put / Get screen)̠,,:ENCRE:(),(),():,,,:NSPAGE :S:AR)ѝX :X,,,:X:M(())()~)֠ ,(),()M,(): ,M,(),()F)۠,,,:R :*0)SS:R,XX,YYXXTXMAX,YYTYMAX:NSSNBSPR))NNSS:ACURBANK(N):XXXTXMAX(A):YYYTYMAX(A):* )R*):ENCRE::*bz):R():K:(R R )(AR AR ):*bX)(AR AR )(R R ):*b)R RQQ:Q :X:Q,QQ:Q,QQ:Q,QQ:Q,QQ:QQ,,,:*0:Qz*ARR:K:R PAGEPAGEPAGE:)̛)l*R NSSNBSPRPAGEPAGE:)̛)Z* R RRRPAGE RX*:)h:X :X,,,:X* */---> draw border of choice*0I(R):J(R):XX(MULX)(TXMAX)I:YY()(TYMAX)J*5XX,YYXXTXMAX,YYXXTXMAX,YYTYMAXXX,YYTYMAXXX,YY*:*a--->print command line**b:,:T$(, )X*g,:,: T$(, )(PAGE) *l:0*---> draw sprite N at X Y without HOTSPOTd*ADCURBANK(N):DX(AD):DY(AD)H*,XDX,YDY,N::::+[---> set bank parameters~+\ADBANK():CURBANKADBANK(ADBANK):NBSPR>(ADBANK ):+---> stores sprite.+RNBSPR::+---> puts back spritej+NNBSPR:XSPRX:YSPRY:*:RNBSPR:F+)h:(n:):ENCRE:': ,#---> Initialise work bank,$D,),BANKMAX:()()(),,.(),L,3(),:(),:() ,0,8LBANK:,:,=+\:O---> Datas english menusVPSTOS , FILE , BANK , SPRITE , TOOLS , PALETTE nU, SPRITES !,,~,,Quit,, Quit and grab,zZ,Load sprite bank,,Save sprite bank,,~,, Save as ...,,_,Grab from program,d, PUT sprite,, INSERT sprite,, GET sprite,, ERASE sprite,,~,je Move sprite,,Cinema,,Previous cinema,,~,fGet from DEGAS,, Get from NEO,,Fix mask,, Set hot point,,Fix x and Y size,i,Erase,,~,,Flip,,Mirror,,Scroll,,~,,Paint,XôSTOS ,DISQUE ,BANQUE ,SPRITE ,OUTILS ,PALETTErù, SPRITES !,,~,,Sortir,,Sortir/recuperer,þ,Charger une banque,,Sauver la banque,,~,,Sauver comme ...,*à,Grabber d'un pgm,Ƞ,STOCKER sprite,,INSERER sprite,,PRENDRE sprite,,EFFACER sprite,,~,nɠ Bouger sprite,,Cinema,, Ancien cinema,,~,ʠPrendre dans DEGAS,,Prendre dans NEO,,Fixer le masque,,Fixer le point chaud,,Fixer la taille X/Y,͠,Effacer,, ~ ,, Renverser,,Miroir,,Scroller,, ~ ,,Peindre,7---> Messages8 RED |GREEN |BLUE ,Rd|Gr|Bl, Current ink,"Click in arrows (outside: quit)...,X and Y size --> ,( ABANDON | CONFIRM Z=R/G/B:,Click to fix paint pattern, --> Paint ON, ...ZOOMING...B!PUT SPRITE: click outside to quit,PREVIOUS : : NEXT,P,"GET SPRITE: click outside to quickGERASE! click outside to quit,INSERT: click outside to quit,MOVE: click outside to quit, Click to end.LFIX MASK! Type parameter, GET FROM PICTURE: select sprite!,GET FROM PICTURE: select file!,Drives connected:, Enter drive:QDisk empty! Press a key.,Enter file name:,Left button: get sprite,Right button: QUIT, Press any key,Files on disk:VCINEMA! Select picture #,SPEED:,CINEMA!,+ faster / - slower,SPACE freeze/RETURN stop, FIX HOT POINT[? LOAD SPRITE BANK File name must end with .MBK!,? SAVE SPRITES BANK File name must end with .MBK!`SPRITES BANKS LOADED:, - Program #,, size:,Input program number,DISK ERROR! Press any key.,Paint,Draw ,ǜ RGE | VERT |BLEU ,Rg|Vr|Bl, Encre,Clicker dans les flches...,Taille en X et en Y --> ,' ABANDONNER | CONFIRMER bǡR/V/B:,Clicker pour choisir le motif, --> Peindre ON,...JE ZOOME...xǦ STOCKAGE! click dehors -> sortir, AVANT : : APRES ,PAGE,PRENDRE: click dehors -> sortirǫEFFACER! click dehors -> sortir,INSERER: click dehors -> sortir, BOUGER: clicker dehors-> quitter,Clicker pour finir.bǰMASQUE! Entrer le parametre,Choisissez le sprite...,Choisissez l'image...ǵDrives connectes:,Entrez le drive , Disque vide!,Entrez le nom ,Bouton gauche: prend,Bouton droit: stop,Pressez une toucheǺFichiers presents:,CINEMA! Clickez l'image #,VITESSE:,CINEMA!,+/- change la vitesse,ESPACE / RETURN , POINT CHAUDǿ? CHARGER UNE BANQUE DE SPRITES Le nom doit se finir par .MBK!,? SAUVER UNE BANQUE DE SPRITES Le nom doit se finir par .MBK!ĠSPRITES EN MEMOIRE:,- Prg#, , taille:,Quel programme ,"ERREUR DISQUE! Presser une touche.,Peindre,Dessiner,---> Size of zoomsh  , ,,,,,,,,,,,,,,h%,, , ,,,,,,,,,,,,h*,, , ,,,,,,,,,,,,&