@L}5 _$% l0$)$$Hȱ$ UhL" `e$$%`$%`  R@W!( L(1   Y I`  d  Ld M * @  $ % CC$$)%1 Udߥ$9%: !0 S$% DD˙`  }J)Lr d M * @  $ % CC$$)%1 Udߥ$9%: !0 S$%} DD˙`  }J)Lr J  ((  p L ()   J}L= ( L 0q A    IB JC;? D W } LL  ` W )LA!  ߰")-݆ p" } $G@LL 08`Q")<2Q0 -G$Ș݆ UL# ; p8(()(0ʥ)NQ` }$GȘ݆LU )L ݆ L GȘ ݆LL )W>Z   HH)H }p h  hyhy D L> L JJ    ! LA*` BF }7'8  M HN H` 8 Z  \LdJJ!"! GFE@F (!L }EE !E^ ^ E E7EȩEdE/EȩE  D } .L }  ;F d  ;?F7F? ( .   Z D LL d } . D  L    p  E` , d)  D L) 0BM݊L݉} ML  N݆ L NLML [ TEqEHȱEqEh 0Gȹ G} HLL GɛL  LFREE SECTORS G) *Gȩ GȽG GȌ*jj >G} C8jJ3j2CD( C202C ԠBX` N 1? l LlD:RAMDISK}.COMLu L1 L ;LHL  T`  `1  ɐ     `TU  } L ? .  t`GBJ ~DEHI B V0dV!}QDEHI VF9 ,0 ,0 s0hhL  L` H hDHEh"}DEL8HI4 0 HI,0 0  9 .G VLO#},0 L4*IJ`llD1:AUTORUN.SYSӠ$(%)%%))`SAVLEJ y08 B|DEHI$} V0 0`B;DEL`?0LV`@ʆ v s? F0Ξ05: [ BDEHI%} VY8 B V  @  /DEꌝ v`E:D1:DUP.SYS8$ 8$**%) $(x &}X`DOS` `Β : < Lu  9 V⪍ ઍ  -'}LLu ÝDEHILV 9 .l 9 .l  ``LG$B BH(}I|DE V BLV nB,DE JLV B V BLVDEIʩ BꭝLu }^^<s3>00x|73>00x`c6<9c` 33c366fffg~33>00xgfffff<11111*}{!!\]_ED!EOHI B V`} +} !  ө)6L]""$$ (p%,}J[WܠjeC /D%Zub2gTSt$8®݊Ò2% 5RŢt-}d.’$3@X7t5w5$?## $#L+D:*.*S:C:P:$#.#) `:#(6ENeU\l؏&/ؕ؄sأ$L.}ENeU\lأ$8آǔƐƉƐƇ4cY%٦rULۉCۄړp^gyض%iwܸJڅ*ܣ$ڭڞجئأأ$/} ,(""(222000000..222222222222222222222222222222**22*22&222$2222222222 ,(""(00}000000--**2*&22$2222222 V`hh@,lHH$HHHHHHӍl"H$H1}Hl $`GHFH\` ` 4ӭ l 4Lq ӠԪӅԆL} Ӡ L( ӑ)2} ` b% +L:#HH 0 HHLj%ӥHlL{ee 8eeee3}Ӧee褢%ƚƜ`88夅奅8夕4}奕Ӡȱȱȱ㦢`L+`8` .E)))8@8e0 *څۅ5}܅݅ޅ߄ԠF0y"ޥy"ݥy"ܥy"ۥy"ڥy"و0ǠF0y"ݥy"ܥy"ۥy"ڥy"٥y"؈06}ǠF0y"ܥy"ۥy"ڥy"٥y"إy"׈0ǠF0y"ۥy"ڥy"٥y"إy"ץy"ֈ0ǠF7}0y"ڥy"٥y"إy"ץy"֥y"Ո0L-`8`E)))8i@0 *ڄԠ"(8}"!""" "L**""""""&О"("!"""9} "L**""""""&О"("!""" "L**":}"""""&О"("!""" "L**""""";}"&О"("!""" "L**""""""&Оd<}"("!""" "L**""""""&ОL-6"e""e=}""e""e""e""i""}"""}"""}"""}"""}"""}""ǭ"m"""m"""m>}"""m"""m"""m"""}"""}"""}"""}"""}"""}""ǥՅօׅ؅مԅՅօׅ؅`?}` ` ` `80 `ԥՅ +.JJJJ)iFiFi1FicFi'ȐȦoFiUȐF@}iiFi#iFiGi Fii@F iiFiiciՊFigi'iՊօשBL-`I)A})83Ԥԥդե֤֥פץؤإ٤L,K6"ХL--L--L--B}E0:e٥eإeץe֥eՐ؅٥ׅإօץՅ֩L-8٥إץ֥հ'I8م٘C}؅ؘׅטօ֘ՅL-ؤm\G0Q@Ն֩م؅2եمֆשم"ե؅֥م׆ةեׅ֥؅ץمD}؆لԘ)q +` . |. &7i |. ,%!L?.`刱䈱㈱∱ሱE}`ԅՅօׅ؅م`ԍՍ֍׍؍ٍ`ԍՍ֍׍؍ٍ`L.L. Խսֽ׽F}ؽ` L%/`ӽޕ &ԅ)@إ)JJJe)e - M 1.G} &Je0F 2 . /L(8`@ԠՈքׄ؄` . |. , . . |. , #/L(8`0 I@ԥ) 2H}f / . & r 1. #/ &?P , .Iiԩ +)ԅ ,ӽޕL(`8`$I})Ԧ61718191:1;1 (ť)8@0$Յ)e)e -F . / , . &1 1. #/ &J}F I`U9>`D'RFuCU?b9dYdg@W2@?tS)%)@0)%ԅԢ / . &G  1.K}Ӱ6 #/ &.ӽߕ ,ԅԥ B1 (`8``0?i? . . / , #/ &ԍՍ֍L}׍؍ٍ . . ( / , O2 / ,0 .JeF 2`L+) .e٥eإeץe֥eՊiM}؊؅٥ׅإօץՅֆե1ԥ'JffffJffffJffffJffffم`ԩ&&&&*&&&&*&&&&*&&&&N}*`Pi`)JJJeԅԘ)Peԅ`եԆ8@EB)JJJeԅԥ)PeԅԘ)3eԅԽ3eՅ՘)JJJ}3ԥ}3O}`)JJJeԅԥ)PeԅԹ3eԅԹ3eՅդЧ` 0@P`'Nu pX@(#d,X L(  兢0P}襙 bɥ⥋㩀 50ɥ0DȱȱȄ   ik#ZMkVgğe拰ㅋ⅊Q}0 eee拰 L f5дƨħ 4LY4 f5К,樥ŧH 4h h5L4樤ܱ.* O %30  5R}Ԅ +(fԤԈ`ř嚰Ԥ`ڥۥड़0-԰eڅڐۈ0eeL+58` OS}#`,#5  6`]5 6DE 68DHEIHI V0$ 6Sл B V,#T} 6` $#LllBHI V0HH V0Ԩh``a$%Ȏ$$xө$Ѝ$ ` `@U}X a)6 Ӆʢ ʎD  _ɠ %` ɩHH `өL: gV}% D:MENU2.COM өjJHH`ՠԢӱԙ!ӹ!`֝DEIHB V0YڝDa۝EW}օܥׅݥܝHݝI V0+Ӡڑڑ0`l `  䅠 _ɠԐX}e拢 &L &Lħ © ¥4 䥝ň剰' k ɀ8@4= LY ĩ`OJ ]JY}?L˜ KԪȱLRHHצ R, hhLRHHHHHH /0ȑȑޠhhhhZ}hh`HHHHHHHHHH $H bɐhȥLHhhhhLň剰)[}i桰` )``L(兢ħ #$ x Hҩ h$襚ҥ \}` UV #T` ` `,H ¥ȍ` JKhLŢ  #)I L ¤Ȣ`L¦ ¦ L]} ½J*K+ $LąLĩ …L~ …`H Ġh é`,H hH Ġ  ĭ 8}}^} L n [h`LkL © 8倝偝 Ġ  ĥ󥃅  Lĩ _}LHé éLH#h ĩ`H hKJ L+ , H hHHħ s hKhJ  Lĩ# qL`} ĩ ŘL ũ& QŽLM " ĽNL  ĥԝL՝M  ĥԝN%LV  ¤ħ` Ťħ` ƪ a}Ċ Ťħ` ¢`届 x݅ L ĽCӠɀ L]Ɉ L] Ln LŠb}IHEDBL$HH hh +L `ħ LĢl ¦`YDAER ԅՅ֦c}󅗄`L+ ¢p 0 Hp hɈL` ,#,$,!Lé ,H ĥDEԝH՝Ih d}L©L $`L© , k ĩԅ  + ĥ 夨ħ`2ƪƪ ! A!Ƚa!Ƚ!Ƚ!Ƚ!e}!``氤hhL1@$ƪư 0 0 n$P`L+FҐ֥װ綾إٰو LǠf}Ffؐ ee&ee* &eeeԪeըee$.ƪ@!Ƚ`!Ƚ!Ƚ!Ƚ!Ƚ!`g}!!!!`!@!^!` Ȅ 8 n奱 ٥Lǥ֤צưĘ=ŗ78֪א&h} eԥe$`L: L ԅՅօׄ 1פ& ٤ţĢԅeՅe8包卅i} ]& 8Ԩժ%אְ`ֆL夨ħ` FҰg8&0ei֥i0Tׅiإi0BJe؅eمj}0&ffff&0 &0 eeL+օפإ颎 %8包ԥ卅 L ɥk} ȱъŠe拰8``,ªȱȱI ѝ3ȥLɥHHO]l}  ȥe暰Х ȥL+ʅȱhh`Lħ OԪȱԨ``L :m}0 `L(奷 bɥ󥋅ȱȱȱȄ#鈄0B8eeŶn}ɛ,@LBˤ,ɛ`L?± ˤ樱f Oƨ x݅ + ~ [ˠ O樥0# +  L˥o}`LL :ɛ,$PH h $P润䧰 ʐLʦ䧐 +` ʐL3Lp}BˢԝD՝E֝HםI L 兢L]& 兢L% ,L6 ,L6 &L6 (L6妪@!I@!` ؐb`P KW ؐRBq} ؐ=;G ؐ4@ ;+ƪƪ@!=A! (ƪƪ@!A! ƪ@! ,@@檦@!`!!!!!!`ƪ@! ǩr}jҤ /L.٤ƪƪ@!@!, 舽`!`!!ـ!!٠!!!!!`@!jI*` . ֪ (s}ϰ`(8` ֤ׅԄ +҅L: Lyƪ8吪周Ly sũ + ŐL Ly sŠԄ h t}L} L}٩    e쪽pLyL( + ڥHJJJJ h) 0:i`  ک; n +ȱ)ȥ%u}ݓ Lh ԍՅԄׅ֩өL:ƪ?Ԣ )ɠ )  -L &Lڦ@!)@!` n)8@v} -L:` / n)8@I= n)8@/ѩ֔$ሄ ,L: + n 0Lw}8 n 0L8 n H1L8 n /L8 n /L8 n D/L8 n 1L8LLإL( &)ԥ)8@JjHx}@MC)JJJe)e .F / .P . &F . #/ &L.L(HHHHHH /hhhhhh y}& Y/hԅL:,` L _ܘ%ᨥ%Ly _ܘᨥLy _ܘEᨥELyٚ<|'g 0L`z}!!!!i ` &LإL٥LyɥLzvmZ ƨ!0 4 䦵 ¥ԝD՝E֝He{}םI Lܤį eį L` x݅ƨLLLܤ ©`#ۢ Lĩ_,|}ߤ ڄ . eڅԥeۅհ"8څ֥ۅא8ܥݰL۠Q%0ԅإՅ٥ަ0%Q}}% L-ե0LޥڤLyمօנ6&֐ eו`L( Hħ hբՅ `ޥԢ `ޥՅ~}&&֐eܥeېڈ 7 \ 7 j N \ N j$0!ee80å/8ܥ۰uڕ}0eUiV`TUV`8UV`eTi`8TȢ` $L„')Q ȱ8} e新`8`L齀).Q Ӱȱ8e新 O :L䅫# *$Ŭ} Ʃ HL"䥫ș L` Ml/#樱0ZS'`ȱȱȱȱȱȱȄ`ȱօȘuԩׅu՘e֨҄}`樱I 屝Ҡȱȱȱȱȱ` n$҅J?eԨe` L 兙 兛 n %3 Ԥ` }, , , L檤 ٙ!ؙ!י!֙!ՙ`!ԙ@!ә !ҙ!` 䤪ƪ!ٹ!ع!׹!ֹ`!չ@!Թ !ӹ!`ƪ!}!乡!㹁!a!A!Lp ґȥӑȥԑȥՑȥ֑ȥבȥؑȥّ` ***j)e)e`ʭȅi}ȅiȅȩȩ Lfإ  4  \ +] ¥򄟄}   넨ɛ$0L祔 Z f0#ڠ쩀 ߩ6ei$0 녖چ + !5}ɛȑ @膔7 ɛ 襔!ɛL! _ɩ8$IȢ %e} &!$P* &8孨客 "&$ 1L~ L~ &L _ɰe拢 &L~ +0 %30Ԅ} 襡L 9:枢0 O L :H9Hhh tLHH`}hhLCL馩`ʆLC枢0ְşLC`A枢Ɣ!L!L}!T 򈩛LQLD ijq ߰,iŰD VD8` 覲`8` 넬 S( +饰}0 S0:$$ p8`$p (ȩ@҅ҥ򄬤 ߰ A L8򨢄 %Ӥ򈦬ʽ ʽ %} +HH 屝EҨhh$P0Ƭ 襯I `_A[`8`80 &Ո}ԅ` 넬$ +  + h갳 h) + , 褔ԙ!` "8` 襔 ɛ "ȱ"}嫤!`! `) ɛ%)a{)_0:A[_դ`RE͕DATINPUԑCOLOҝLISԖENTEҚLEԛI}FOҗNEXԑGOTϑGO TϑGOSU½TRAАBYŐCONԞCO͟CLOSŐCLҐDEǞDI͐ENĐNEנOPEΖLOAĖSAVŢSTATUӣNOTPOINԡXIϤOΒPOKťPRINԐRA}REAĨRESTORŐRETURΩRUΐSTOАPOХGEԫPUԑGRAPHICӒPLOԒPOSITIOΐDOӒDRAWTϓSETCOLOҬLOCATŔSOUNĦLPRINԐCSAVŐCLOAĚERR}OR- DPOKœMOVœ-MOVŪ*ƐREPEAԑUNTȊWHILŐWENĐELSŐENDIBPUBGEԒFILLTϐDϐLOOШEXIDIҖLOC˖UNLOC˖RENAMŖDELETőPAUS}ŖTIME$PROøEXEÐENDPROÑFCOLOҪ*̕-RENU͒DEDUMЪTRACTEXԖBLOAĖBRUθGO*’PAINԟCLӔDSOUNCIRCLū%PUԘ%GEԚ}GOTGOSUTSTETHEΣ<<>ުNOOANĨ<<>STRCHRUSASVALEADATCOPEESIRNFREXLOCLOSQSGA}BINPADDLSTICPTRISTRIDPEE˦INSTINKEYEXOHEXDEDIFRATIMETIMMOEXERNRANTRUN%%%%GOUINSTERER+,}%5&6(+8,<Xk`fghilm^deDѳHc?,Ќ,е,Y_Ҳ+7,/}01 2!3"4Ɛ"-"."-؂ٿ֐ː}ĐאŐbj+9,+;,ʐͭ}ͭ@ABC\=>[<+:е<,&%rvnnxc<}\-78s_XV+@D&0d*"'2GJh }NRl~&2 +饰(+VWZ ]a8`L`  ¤ħ.H h L5 䄡 } 䅭 bɠ04Ů .ŭ%) e拰 ĩ L+Ư0 Le}`毤Hɛ) h`  L ȱ R @ʆ ȱȄ Iğ` :62T F} :7 8 Lbԩ- L 8 8,I ɨ 8L.UH `ƨh $ %3   + \L L 8󅯩}" ¥ 8" ©" Ư" L8q :Z#]abj(=) W같  L樤ħ`hh`H Yh}Z L<>EO ƹƹ0`H f5h`I&` =? FQA` L񄳱ȱI }䦐Ħ ąŅ T k /䧰 k ,Ǡ ĩJH ThĥȑĥȑĦʊȑ`HHą}ŅH h hhhh ȱIELZ L`ȱI Hȱȱȱȱȱ } , h @ $L+L.*ȱȱȱȱȱjEE `EjI `e`ħ ¥}0 ` Lk 䦪`! 䧰L A@L `I&`L ©؅ L}.0`STOPPED륺 bɠhhL :ʅ` k %3Hƹ h5h`hbjH h} #ԤLQ #LLei  `LԑȥՑȥ֑ȥבȥؑȥّ``䈥}剰#)iiLɠL4űI&`048ץğ=ȱȄ }`L  L0e拠0ȱȄL  䦪`!' >?L (<ж`!  $Л +`,LőŐ78Ƒ8 Ƒ`8` - PѠ}`,,L L PQ 8,L ȱI ѝߠȱ`}ԩ,L E  $EL+L],,,؍ 0âLɀL ©7 F󦹩 RbL g }0g `Ո V fL{Ն + +􅕄L AT LINE?BLOAMEVALU>#VAR$LE?DAT>3276INPUDISTACOVERFLO?L}IN?FOTOO LON?DE?GOSUGARBAG?CHMEͣ?LOA?NES?WHIL?REPEA?D?EXIXPRO?EXE?PRO?IS OPE?DEWR ONLCMNOT OPEΣRD ONL}EOTRUNTIMEOUNA!FRAMCURSO!OVERRUCHKSUDONMODNOT IMPRA͠D?>#FILEDSK FULFATAL I/FILENAMPOINLOCKEDCM}>DI?FILPOIN?APPNBAD SECTORӥHՄ +h & .hԩ + ,҅L: ƪn (@Մ$ 0`} 0` 0LoH - . /h &@Յ՘JJJJ X) 0:i`AVC2 sŠ 5  <)  }< L L + e +e`e`&&&&&&eee` }&&eee&*`` 兙 䦪!0 4 ۄܱ **m ݤܱEۅڦڱ=} ܥeƥiեLN@ ` **)]` 00`` ( ((((((((}8`W)ߥ & &e &߽řِ׼JJJJ&eXޥeYߥ䥛 9 FfЎᰈ} `  M 8*` 兙 󥐅i祣L{ &}L  0 & L ȑ & L; # )ȱ L } )ȱ) )ȱ 8ƣŐő0eސ`ƙ8ް`)ȱJJJ}```=`]``` E߭H Ġ} hL±&Lv`[  ȱ R}]  L L  䅠 bɰhhğȱȄ L l"0e拱LjLx`[  ȱ Rl<=8 K DLISSCREENSCREENSCREENSCREENDQXDAWIYZWAR =2@}   A@}A +@@d1B7t@dCAUA gAR@qM@}Z D:AUTORUN.COM'B@@H'B@CA((P PBBA26-6@<I-@$@}%@&(->B-@5$@%@I(<-F<P6-R:,Z6-d.F:Ad,AU).A}dAUn@wx!!"*"@A@M@336-+"@)"@a,&+"}@)"@E,I-@$@%@&( B-@5$@%@I(  6-% 6@6-@}!@6-6@I-@$@%@&(->B-@5$@%@I(<-""=T:,"})"AUj +A1A @C@@dUB7t@dgAR@j(}"6@% D:CODERUN"% D:TURBO.CUR"@% D:TEK*.TUR"@%D:LIFT.*"@}%D:ROTA"@%D:W*.OHM"@% D:DRAW.SCH["@!@A3B7tA}[6-?:C: hhhLl, >!>">}#$%C&@'(@R)*A+,-A6./' N01}2Bu8345 T INITT(5PA+A 5 A`2;@,<<<};A,;@",;A `,;A,;B,F'6-6-'6-A `P5 6-C:,6-C:,6-C:,,}6-%@56-C:,Z, 6.,6-BBwd 6-nZ D:DECODER.COMS-@@} D:HELPCR.TXTBC@AH6-S@ AUR.@@ D:CRXMEI2.TXTCC@}BR6-U:Ar,6-U:Ar,@U8A8A%)8A86-?:A6,U6-%+U:A},&,&A 6-6-6- +P@@6.6 |𠠠| || |POKEY | 7-@}@D@367<,.>:AU,7 T LOOPTP%-@%( P-}@(1B2H@R%9%@16-@""<, M@6>6-R:,>6-+"@,$@}&+"@,$@@3"@)"@39C:,%@J%%!@!*% @1%6-%T9%@}^=T:,"hO6-&@"!6-%'@-"@?B2wO% D:MENU2.COMr%@b}| A@O 6-6-6-QO 6-6-6-QO 6-6-6-Q}O 6-6-6-QO""9U:@,%@A9%@<&!6-R:,!6-T:},0"@:YC6-+!@* @,$@`&+!@* @,$@`OYM@D%%!@G*}% As%6-%NB2HX"@Rb;16-%+"@,$@@&+"@,$@@;M@l@v"A};16-%+"@,$A&+"@,$A;M@@T6-F:A ,H6-%+"@,&+"@,%+"},&+"AU,TA AA !6-  6-""9U:@,%@A@j"Ar}6-F:A,T6-%+"@,&+"@,%+"@,&+"AU,`AjM@A="@R*"}QT O (}A@ '@@d'B7t@d*KAR@'A@9A} @K@4=-@=(#MENU PAGINA KLEUR>QHTRO\&6-F:A},&@&BByfQA@'AY@F9B2w@E6-@Q6-@Rp6-$AV%A}z#-%A'# !B2H!B2V@QTOB2w% D:MENU}2.COMQ% D:CODERUN# !B2H!B2V@QTOB2w% D:MENU#}(%,0}6anuithet-%.5*/934)#+\]3#2/,,%.+./0}-%.56anuit0!').!*/934)#+\]3#2/,},%.6anuit+,%52*/934)#+\]6//2'2/.$}+,%52+./0 */934)#+\]!#(4%2'2/.$+,%52}}0100 .OPT NOLIST0110 ;0120 ;0130 ;0140 ;0150 ;0160 ;0170 ;0180 *=$50000190 JMP MAIN0200} DPL0210 .BYTE $70,$70,$700220 .BYTE $46+320230 DPA .WORD SCR10240 .BYTE 6+32,6+32,6+320}250 .BYTE 6+32,60260 .BYTE 00270 .BYTE $46+160280 DPB .WORD SCR20290 .BYTE $46+1}60300 DPC .WORD SCR20310 .BYTE $410320 .WORD DPL0330 ;0340 ;0350 .WORD 00360 MAIN0370} LDA #DPL&2550380 STA $2300390 LDA #DPL/2560400 STA $2310410 LDY #VBI&25504}20 LDX #VBI/2560430 LDA #70440 JSR $E45C0450 STOP0460 JMP STOP0470 VBI0480 } PHA0490 TXA0500 PHA0510 TYA0520 PHA0530 FSCROLL0540 DEC FS0550 }LDY FS0560 CPY #00570 BMI COARSE0580 STY $D4040590 STY $D4050600 LDA #0061}0 BEQ EXIT0620 COARSE0630 LDY #70640 STY FS0650 CSCROLL0660 SEC0670 LDA DP}A0680 SBC #200690 CMP #00700 BMI DOOR0710 LDA #$FF0720 DOOR0730 STA DPA07}40 INC DPB0750 INC DPC0760 STY $D4040770 STY $D4050780 EXIT0790 PLA0800 } TAY0810 PLA0820 TAX0830 PLA0840 JMP $E4620850 ;0860 DF .BYTE 10870 C}NT .BYTE 200880 FS .BYTE 7,00890 ;0900 SCR1 .BYTE 00910 *= SCR1 + 1120920 LINE .BYTE "@@@@}@@@@verticale@scroll@@@@@@@@@@@@@@"0921 *= LINE + 2001130 SCR2 .BYTE "deze@lijnen@van@rechts@"1140 .}BYTE "naar@links" *= LINE + 2001130 SCR2 .BYTE "deze@lijnen@van@rechts@"1140 .*0100 .OPT NOLIST0110 *=$06000120 JSR DPLINIT0130 FINESCROLL0140 LDX SCHADUW0150 !} CPX #00160 BMI OPNIEUW0170 STX $D4040175 STX $D4050180 DEC SCHADUW0185 !} JSR PAUSE0190 JMP FINESCROLL0200 OPNIEUW0210 LDX #70220 STX SCHADUW0230 J!}MP FINESCROLL0240 ;0250 SCHADUW .BYTE 7,00260 ;0270 DPL0280 .BYTE $700290 .BYTE $46+16+320300 BEELD!}GEHEUGEN0310 .WORD SCR10320 .BYTE $410330 .WORD DPL0340 ;0350 DPLINIT0360 LDA #DPL&! }2550370 STA $2300380 LDA #DPL/2560390 STA $2310400 RTS0410 ;0420 SCR1 .BYTE "@! }@@@@bit@voor@bit@@@@@@@"0430 ;0440 PAUSE0450 PHA0460 TXA0470 PHA0480 TYA0490 ! } PHA0500 LDX #$A00510 L20520 LDY #$FF0530 L10540 DEY0550 BNE L10560 DE! }X0570 BNE L20580 PLA0590 TAY0600 PLA0610 TAX0620 PLA0630 ! } RTS0640 ; PLA0590 TAY0600 PLA0610 TAX0620 PLA0630 0100 *=$06000110 JSR VBIINIT0111 ;0120 ; Terwijl deze routine het0130 ; midden van het beeld kleurt,01%}31 ;0140 LOOP0150 LDA 200160 STA 7100170 JMP LOOP0180 ;0190 VBIINIT0200 LDY #VBI&2%}550210 LDX #VBI/2560220 LDA #70230 JMP $E45C0240 ;0250 ; gaat de VBI routine zijn eigen0260 %}; gang aan de rand van het beeld.0261 ;0270 VBI0280 INC 7120290 JMP $E4620300 ;%}e rand van het beeld.0261 ;0270 VBI0280 INC 7120290 JMP $E4620300 ;$ Juni/juli 1991Bijgaand de voorbeeldprogramma's :FSCROLL.SRCVBI.SRCCRMEI.SRCDeze programma's zijn in ascii formaat op di)}skette gezet en moeten worden geladen met ENTER#D:fname.extDeze aflevering van CODERUNNER bestaat uit twee delen.A) Omgaan)} met de MAC65B) Het programmeren in machinetaal.In A komen redactionele zaken aan de orde m.b.t. de door ons gebruikte ass)}embler.In B komen opdrachten en het gebruik van opdrachten in machinetaal aan de orde.A)Omgaan met de MAC65.> LABELSI)}n een assembler kun je een zgn. 'BRONCODE' schrijven.Dat betekent dat je een machinetaalopdrachten er symbolisch in kunt sch)}rijven.Machinetaal bestaat uit getallen die opdrachten zijn voor de CPU. Deze getallen worden op een rijtje ergens in het ge)}heugen gezet en door de CPU (Central Processor Unit) gelezen en uitgevoerd. In een assembler vervang je die getallen door sym)}bolen. De assembler maakt dan van die symbolen getallen en zet deze in je geheugen of op diskette in de vorm van een programm)}a dat je direct vanuit DOS kunt runnen.Machinetaalprogramma's kom je wel eens tegen in een basiclisting als een rijtje getal)}len.Bijvoorbeeld :Data 104,104,133,204,104,133,203 etc.Hexadecimaal zie je die getallen op je beeldscherm verschijnen als )}je programma assembleert.Bijvoorbeeld :A9388D02D3A930Decimaal zou dit in een basic data regel zijn :Data 196,56,141,2,2)}11,169,48Ook worden deze getallen weleens in een 'string' gezet in basic. De waarde van het ascii tekentje vertegenwoordigt )}dan het getal.In een assembler vervangen we die getallen gemakshalve door symbolen.A9 noemen we LDA8D noemen we STAA938 w) }ordt dan LDA #$38Wordt het getal uit een adres gehaald dan is LDA hetzelfde als A5. Dus : LDA $38 is A538Nog een voorbeeld )!}: DEX, verlaag register X met 1, wordt gevormd door het getal CA.Het is dus heel goed mogelijk om machinetaal te produceren )"}door het achter elkaar neerzetten van getallen.Dat wordt in de praktijk alleen ontzettend lastig als je naar een ander stukj)#}e in je programma moet springen. Een onschuldig voorbeeld :LDA #$38 STA $3000LDA $3800STA $5000DEXBEQ $0600Een v)$}oorwaardelijke spronginstructie als BEQ wordt vaak gebruikt in een machinetaalprogramma. Met deze instructie telt de cpu het )%}aantal bytes dat voor- of achterwaarts geprongen moet worden.De getallen in het geheugen van bovenstaand voorbeeld zien er z)&}o uit :A9 388D 00 30AD 00 388D 00 50CAF0 F2Waarbij de 'opcode' F0 staat voor BEQ en F2 voor het aantal te springen byt)'}es terug. Dat kan niet zul je zeggen. F2 is decimaal 242 en de sprong naar $0600 is veel korter dan 242 bytes. Precies, de ju)(}iste sprong wordt dan ook bepaald door het aantal te springen bytes van 255 af te trekken. 255 - 242 = 13. Tel maar boven, va))}naf F2 naar A9 zijn er 13 bytes.Je kunt je wel voorstellen dat in een programma met veel van dit soort instructies, en dat i)*}s altijd het geval, je als programmeur veel rekenwerk moet verrichten. Vergis je een keer en het programma loopt vast. Voor e)+}en klein programma'tje ben je dan al uren bezig.Een assembler berekent dit soort dingen voor je.We kunnen een bepaald adres),} een 'label' geven in een assembler.Bijvoorbeeld : *=$0600START LDA #$38Het label 'START' )-}representeert hier het adres $0600Als we naar dat adres willen springen in ons programma hoeven we alleen die naam maar op t).}e geven : BEQ START De assembler st)/}opt dan het juiste spronggetal in het geheugen.Een label kan iedere naam hebben die we maar kunnen verzinnen.Het is maar ee)0}n aanduidingspunt.We kunnen een label ook op andere manieren getallen laten vertegenwoordigen.Bijvoorbeeld :10 STARTADRES)1} = $060020 * = STARTADRESHier verlenen we met een '=' tekentje aan het label STARTADRES de waarde $0600 op regel)2} 10.Daarna duiden we het echte startadres aan met behulp van dit label.Later in het programma kunnnen we dit steeds weer ge)3}bruiken zoals bij BEQ STARTADRES, JMP STARTADRES etc.We kunnen er ook aardig mee rommelen. Het aangeven van een ander adres )4}in ons programma bijvoorbeeld.Je kunt gerust zetten : 200 * = STARTADRES + 500De assembler bepaalt dit adres dan door 500 )5}op te tellen bij $0600.Als je een adres wilt bepalen ergens in je listing is het ook mogelijk om te zetten :PLAATS = *Waar)6}bij plaats natuurlijk een willekeurig verzonnen naampje is. Je had ook kunnen zetten AARDAPPEL, SPACE, KLOK of noem maar op.)7}In dit 'label' wordt dan het daar geldende adres gezet.Voorbeeld :10 * = $060020 START 30 LD)8}A #1040 LDX #2050 LDY #3060 INX70 KLOK = *80 INYEtc.Zoals je boven er)9}gens gezien hebt bergt de computer getallen anders op dan je zou verwachten.De instructie STA $3000 wordt in het geheugen ge):}zet als :8D 00 30Het getal $3000 wordt gezet in twee bytes. Maar dit gebeurt omgekeerd. Het lage deel van het getal gaat in);} de eerste byte en het hoge deel gaat in de tweede byte.STA $5EFE wordt dan ook 8D FE 5E.We noemen de byte waarin het lage )<}deel van het getal komt de 'low-byte' en de andere de 'high-byte'.Samen vormt het getal twee bytes wat wordt aangeduid met d)=}e term 'word'.In een assembler kunnen we de low- of highbyte gemakkelijk plaatsen of uitlezen.10 * = $060020 DP)>}LINIT30 LDA #DPL60 STA $231of : LDA #D)?}PL&255 LDA #DPL/256Als we onze dislpaylist het label DPL hebben gegeven en we moeten de 'lowbyte' van het dis)@}playlist adres in $230 zetten en de highbyte in $231 dan kun je dat op de bovenstaande manieren doen.Bij regel 30 betekent ')A}< ' de lowbyte van het adres bij het label en ' > ' de highbyte.In de Editor Assembler kun je alleen de tweede optie gebruik)B}en nl. &255 voor de lowbyte en /256 voor de highbyte.Wat meer assemblertips :Als je een vraagtekentje typt met daarachter )C}een getal zet de MAC65 decimaal om in hexadecimaal en omgekeerd.Dus : ? 1536geeft $0600en ? $0600geeft 1536Ook is het m)D}ogelijk om je regelnummers aan te passen.Zet dan REN10,10, alle regels worden dan opnieuw genummerd, beginnend met regel 10 )E}en oplopend in stappen van 10.Of natuurlijk REN200,50 of wat je maar wilt.Met de opdracht 'FIND' kun je in de listing zoeke)F}n.FIND/START/ geeft 20 START LDA #$38het eerst voorkomende woord START in de listing.FIND/START/,Ageeft 10 START )G} LDA #$3870 BEQ STARTZo kun je ook dingen veranderen met de opdracht REP (replace).REP/START/BEGIN/,Averander)H}t alle woorden START in BEGIN.REP/START/BEGIN/,Qlaat steeds een vraagtekentje zien bij alle voorkomende woorden start in de)I} listing. Als je dan Y typt wordt de verandering aangebracht, return laat de dingen zoals ze zijn.Tot zover de assembler.B)J})Het programmeren in machinetaal.> De scroll, finescroll en de vbi.Eerst een paar nieuwe instructies :BPL en BMIDit zi)K}jn voorwaardelijke branch instrukties.We hebben BEQ en BNE al behandeld.BPL en BMI zijn soortgelijke instrukties.Wat achte)L}rgonden :Een onderdeel van de CPU is het zgn. 'STATUSREGISTER'. We hebben al kennis gemaakt met een paar andere registers va)M}n de CPU :De accumulator, het X indexregister en het Y indexregister.Het 'processor statusregister' heeft 8 bits. Deze bits)N} representeren de status van een zgn. flag.Van rechts naar links :CARRYZEROIRQ DISABLEDECIMAL MODEBRK COMMANDNOT USED)O}OVERFLOWNEGATIVE[N][V][ ][B][D][I][Z][C] 0 0 0 0 0 0 1 0De instructies BNE en BEQ reageren op de Z (zero) flag.)P}Is deze gezet (boven weergegeven) dan bestaat de data dus uit een nul. Een wordt met de opdracht BEQ gebrancht.Bij de opdra)Q}cht BNE dan natuurlijk juist niet.De instructies BPL en BMI reageren echter op de NEGATIVE flag.Is data negatief (minder da)R}n 0) dan wordt deze flag gezet.Zolang data niet negatief is brancht men met BPL en als het wel negatief is met BMI.[N][V][)S} ][B][D][I][Z][C] 1 0 0 0 0 0 0 0Bijvoorbeeld :Spring als de inhoud van de accumulator positief is.LDA $3000CMP )T}#0BPL BESTSpring zolang de inhoud van het X register positief is.DEXCPX #0BPL BESTSpring zodra de inhoud van X negatief)U} wordt.DEXCPX #0BMI BESTIn de praktijk is het verschil dus dat bij BEQ en BNE wordt gesprongen zodra een getal nul of ni)V}et nul is.Bij BMI en BPL wordt pas gesprongen als een getal minder dan nul is of zolang het nul of meer is.Als je van nul t)W}ot 7 moet tellen en pas moet springen als je de getallen 7 t/m 0 gehad hebt, kun je BEQ en BNE alleen gebruiken als je voor l)X}ief kunt nemen van 8 t/m 1 te tellen in je programma.10 LDX #820 LOOP30 DEX40 BNE LOOP( Spring zolang NIE)Y}T nul. )Geeft hetzelfde aantal 'loops' of 'lussen' als :10 LDX #720 LOOP30 DEX50 BPL LOOP( Spring zolang)Z} NIET MINDER dan nul. )Zodra je bij het bovenste voorbeeld inplaats van een 8 een 7 zou zetten worden slechts 7 lussen doorg)[}ewerkt. Immers bij nul wordt gesprongen. Dat is dan een lus minder dan bij het onderste voorbeeld.Wanneer we dan ook precies)\} van 0 t/m 7 of van 7 t/m 0 willen tellen en deze geatllen ook echt moeten gebruiken kunnen we alleen met BPL en BMI werken.)]}BPL is een afkorting van : branch on plus.BMI is een afkorting van : branch on minus.Finescroll :Vorige keren zijn de di)^}splaylist behandeld en een horizontaal over het beeldscherm bewegende scroll-lijn.We lieten deze lijn bewegen door een adres)_} in de displaylist met 1 te verhogen of te verlagen.Dit is de meest ruwe manier om een regel of regels te scrollen. We noeme)`}n dit een zgn. coarse-scroll.Onze computer heeft een mogelijkheid om dit proces te verfraaien. De letters worden dan niet pe)a}r byte maar per bit opgeschoven. Dat gebeurt met behulp van een hardware routine.We moeten dan de displaylist voorzien van e)b}xtra instructies en een routine getallen laten poken in bepaald adres.Voor een horizontale finescroll is dat adres $D404 voo)c}r een verticale $D405.Hoeveel bits we moeten verschuiven hangt af van de grafische mode waarin we werken.In het voorbeeldpr)d}ogramma gebruiken we mode 1 (basic-mode) ofwel antic-mode 6. Hierbij moeten we zowel horizontaal als verticaal 8 bits verschu)e}iven. Van 0 tot en met 7.Om gebruik te maken van deze mogelijkheid passen we eerst onze displaylist aan.Bijvoorbeeld :10 D)f}PL 20 .BYTE $7030 .BYTE $4640 .BYTE $00,$30Antic mode 6 met het beeldscherm geheugen op adres $30)g}00.Door de bits d4 of d5 te zetten van de instructie op regel 30 doen we een zgn. finescroll enable.Dat is heel gemakkelijk)q}B%DOS SYSB)AUTORUN SYSMENU2 COMBAUTORUN COMBDECODER COMBCODERUN BHELPCR TXTBCRMEI SRCB FSCROLL SRCBVBI SRCBCRXMEI2 TXTBCLES TXTB POST TXTB#TURBO CURB HELP TXTBWETVAN OHMBLIFT BASlTEKEN TURDRAW SCH SCHEMA1 SCH SCHEMA2 SCH +SCHEMA3 SCH6ROTA =DEMO COM1WORDPROCCOMQUICK TRB door er 16 of 32 bij op te tellen.( Bits : 00110000 128 64 -32- -16- 8 4 2 1 ).30 .BYTE $46 + 16werkt prima )r}in onze assembler.Beide scrolls stelt men in door de getallen op te tellen.30 .BYTE $46 + 32 + 16Als we dat hebb)s}en gedaan moet er nog een routine gemaakt worden die 0 tot 7 (in dit geval) in de hardware adressen zet.Dat doen we in de vo)t}lgende stappen :1) Reserveer een byte als teller (van 0 tm 7 of terug).2) Verhoog of verlaag dit adres met 1.3) Stop het g)u}etal uit deze byte in het hardware-adres.4) Herhaal deze procedure tot 0 of 7 is bereikt.5) Begin opnieuw.Het volgende pr)v}ogramma'tje maakt het duidelijker :10 * = $060020 FINESCROLL40 LDX SCHADUW45 ; laadt een getal uit onze teller.50)w} CPX #055 ; vergelijk dit getal met 0.60 BMI OPNIEUW65 ; bij minder dan nul spring naar opnieuw.70 STX )x}$D40471 STX $D40575 ; stop het anders in een 'finescroll-register'.85 ; verlaag de teller.90 DEC SCHADUW95 )y} JMP FINESCROLL96 ; nog een keer.97 ; In het voorbeeldprogramma is een pauzelus ingelast omdat het programma anders te )z}snel is.100 OPNIEUW110 LDX #7120 STX SCHADUW130 JMP FINESCROLL140 ;150 SCHADUW .BYTE 7160 ;Als je ee){}n dergelijk programma'tje zou maken zou je zien dat de letters op je scherm een stukje opschuiven en dan weer terug springen.)|}De letters worden dan ook alleen maar 8 bits over het scherm verplaatst, waarna ze weer in hun oude positie terug keren.Om )}}ze echt langs te laten schrollen moeten we een finescroll combineren met een coarsescroll.We schuiven eerst de letters 8 bit)~}s op, passen dan het adres in de displaylist aan en beginnen opnieuw.Dat kan gemakkelijk door er bij 'OPNIEUW' een instructi)}e aan toe te voegen.Bijvoorbeeld :105 INC BEELDGEHEUGENTerwijl :1000 DPL1010 .BYTE $701020 .BYTE )}$46+16+321030 BEELDGEHEUGEN1040 .WORD SCR1We laten dus een 'coarse'scroll voorafgaan door een finescroll.Dit heef)}t een mooie vloeiende en niet schokkende scroll als gevolg.We kunnen dit proces verfraaien door de bovenstaande routine bui)}ten ons normale programma te brengen.Even nog een ingewikkeld verhaal :Ons beeldscherm wordt opgebouwd in lijnen, beeldlijn)}en.In feite is een televisie of monitor niets anders dan een vorm van gezichtsbedrog.Sneller dan het oog kan volgen, worden)} er steeds nieuwe beelden opgezet net zoals bij een film.De opbouw van zo'n beeld gaat in lijnen. Links boven in beeld wordt)} een lijn naar rechts gemaakt. Dan een tweede lijn etc.Als het beeld klaar is in de rechteronderhoek wordt naar linksboven t)}erug gesprongen voor een nieuw beeld.Als onze computer het beeld opbouwt, wordt tijdens de sprong van rechtsonder naar links)}boven een onderhoudsprogramma'tje afgewerkt.Dit noemen wij de zgn. VBI ofwel Vertical Blank Interrupt.In deze VBI is ruimte)} voor de programmeur. We kunnen dus een programma'tje maken dat steeds wordt afgewerkt als de beeldschermopbouw opnieuw begin)}t. Dat blijft dan gewoon doorlopen en ondertussen kun je een heel ander programma laten lopen op de normale manier.Snap je ?)}De computer werkt onze routine doorlopend automatisch af omdat we hem verteld hebben dat gaat om een 'onderhoudsroutine'.En)} ondertussen gaan wij gewoon door met een ander programma tegelijkertijd.We kunnen hiervan prima gebruik maken bij een scrol)}l.De scroll loopt dan in een mooie regelmaat en gaat niet sneller of langzamer als we naar andere routines in ons programma )}springen. Het loopt buiten ons programma om gewoon door.Het instellen van een VBI routine is erg eenvoudig.Laadt het Y reg)}ister met de lowbyte van het routineadres.Laadt het X register met de highbyte van het routineadres.Laadt de accumulator me)}t een 7.Doe een JSR (jump subroutine) naar een hardwareroutine.100 VBIINIT110 LDY #VBI130 )} LDA #7140 JSR $E45C150 VAST 160 JMP VASTRegel 150 en 160 zijn dus straks ons feitelijke programma wat)} niets anders doet als terug springen naar het eigen adres.Je kunt hier natuurlijk programmeren wat je wilt.170 ;180 VBI1)}90 ; het scrollprogramma200 JMP $E462Beeindig de VBI routine met een JMP naar de routine op $E462.Zie voor de volledige)} uitwerking het voorbeeldprogramma.De daarin voorkomende instructies PHA, PLA, TAX, TXA, TAY, TYA kun je gewoon overnemen op)} de zelfde manier als daar gebruikt.Gebruik ze dan wel in dezelfde volgorde en op dezelfde plaats. Weglaten van al die instr)}ucties kan ook.Deze instructies worden een van de volgende keren behandeld.In het 2e voorbeeldprogramma zie je 2 horizonta)}le lijnen scrollen. Tevens is boven in het beeld een voorbeeld gegeven van een verticale scrol.In het 1e voorbeeldprogramma )}zie je een diagonale finescroll zonder coarsescroll.Dit soort gecombineerde fine- en coarsescrolls worden in demo's en prof)}essionele spelletjes gebruikt.Er zijn natuurlijk nog wel andere manieren om dit soort effecten te bereiken.De hier getoonde)} manier is de 'officiele' manier.Experimenteer maar weer een beetje raak en probeer het effect van de behandelde (of niet b)}ehandelde) instructies te achterhalen.Veel plezier.Jack de Bruijn raak en probeer het effect van de behandelde (of niet b(EZo, vlak voor de vakantie toch nog even een paar instruktie's van Turbo-basic er bij leren. Kun je tijden je vakantie lekker -}verder met programmeren.Welkom dus bij de zeven aflevering van de Turbo-cursus....Wat gaan we deze maand doen?>> Een s-}tukje disk-bewerking>> Een paar handige tips>> Een paar eenvoudige voorbeeldenLaten we beginnen met een paar tips:In d-}e afgelopen afleveringen hebben we geleerd hoe we een grafisch scherm oproepen. Teven hebben we geleerd om 'iets' naar disk t-}e saven. Hoe leuk zou het zijn als we dat eens gingen combineren. Een grafisch scherm naar disk schrijven en/of van disk opha-}len.Om te beginnen moeten we een grafisch scherm hebben. Laten we graphics 31 (dat is 15+16) een vierkleurenscherm zonder t-}ext venster dus.10 GRAPHICS 31Nu moeten we er nog een aardige tekening op maken. We doen wat met een paar circels.20 CO-}LOR 130 CIRCLE 80,95,6040 PAINT 80,9550 COLOR 260 CIRCLE 10,10,1070 PAINT 10,10Ik neem even aan dat dit allemaal duide-}lijk is. Mocht dat niet het geval zijn, zie dan de vorige aflevringen er nog eens op na.Wat hebben we nu? Een Grafisch sche-}rm met daarop twee circels die ingekleurd zijn. Deze helemaal te gekke picture (=plaatje) willen we bewaren.We doen dit op -}de volgende manier:80 OPEN #1,8,0,"D:CIRCELS.PIC"90 BPUT #1,DPEEK(88),7680100 CLOSE#1Is dat alles???? Jazeker, dat is a-}lles.In regel 80 openen we een file. De drive zet de filename op de diskette en wacht tot hij informatie krijgt die in de f-}ile moet staan. Deze krijgt hij in regel 90. Hoe en wat komt zo... Deze informatie zet de drive dan in de file en in regel 10-}0 sluit (close) hij de file. De file is klaar en kan later weer opgehaald worden.Laten we regel 80 eens doornemen.OPEN #1-},8,0,"D:CIRCELS.PIC"Open is nodig om een file te openen.#1 is het kanaalnummer. Onze Atari heeft 7 'kanalen' die hij gebru-}ikt voor zogenaamde inputs en outputs. Bv. het scannen van een toetsenbord. Het lezen en/of schrijven naar het beeldscherm en-} het lezen en/of schrijven naar randapparatuur. (Drive, printer, datarecorder etc.).Wij willen gebruik maken van kanaal 1.-}OPEN #1 dus.Dan volgt er een 8. We hebben een kanaal geopend, maar de computer moet nog wel weten of je data gaat zenden, o-}f dat je data gaat ontvangen. Dit geven we aan met de '8'.Er zijn diverse mogelijkheden, maar in dit geval leer je er alvas-}t twee. De andere mogelijkheden komen later aan bod.4 = lezen (data ontvangen)8 = schrijven (data zenden)In ons voorbeel-}d gebruikte wij de 8 en geven daarmee aan dat we gaan schrijven. (data zenden dus)OPEN #1,8,Dan volgt er een 0. Vergeet d-}eze voorlopig. Gebruik voorlopig altijd de 0!!OPEN #1,8,0,En dan natuurlijk het apparaat waar het naar toe moet en de naa-}m van de file.OPEN #1,8,0,"D: -Diskdrive dusOPEN #1,8,0,"D:CIRCELS.PIC"Komen we bij regel 90. Deze lijkt zeer simpel, -}maar is het niet. Er volgen nu tal van instructie's.....90 BPUT #1,DPEEK(88),7680Als we een file hebben geopend kunnen we-} daar data naar toe zenden. Dit kan met de volgende instruktie's:PUT #1,WAARDEPRINT #1,STRINGBPUT #1,SERIE WAARDENLees -}het bovenstaande goed!!!!Met put kunnen we een enkele waarde naar de file sturen. Deze waarde moet echter kleiner zijn dan -}256!!Het is ook mogelijk om een paar waarden achter elkaar te zenden:PUT #1,100,10,20,30,40,50,40,30,20,10Alle waarden -}die achter #1 staan worden naar de file gestuurd.PRINT #1,STRINGDit kan zijn PRINT #1,"Hallo".Maar mag ook zijn PRINT #1-},A$Hierdoor wordt Hallo of A$ naar de file verzonden.Nu de meest krachtige 'PUT-instruktie' die er is:BPUT #1,STARTADRE-}S,LENGTEEr worden een hele serie waarden uit je computer gelezen en naar je file verzonden.Zoals je weet bestaat je compu-}ter uit allerlei adressen. Al deze adressen hebben een nummertje. Al deze adressen bevatten een waarde.Alle waarden die zic-}h bevinden in de adressen vanaf 'STARTADRES' tot 'STARTADRES+LENGTE-1' worden naar de file verzonden.BPUT #1,1,10Via kana-}al 1 alle waarden vanaf adres 1 naar de file sturen. Het aantal verstuurde waarden is 10. Dus uit adres 1, 2, 3, 4, 5, 6, 7, -}8, 9 en 10 worden de waarden gehaald en naar de file gezonden.Ik ben blij dat ik het allemaal al weet, want het begint mij -}nu knap waarden en adressen te spoken....Dan komt regel 100 nog.100 CLOSE #1Oftewel... sluit de file af, ik ben klaar.-}Zo simpel is het. Ik zie nu allemaal vraagtekens verschijnen en zal dus DPEEK(88) ook nog even uitleggen.Met PEEK(ADRES-}) kunnen we de waarde uit adres lezen. Met DPEEK(ADRES) lezen we de waarde uit ADRES maar ook ui ADRES+1Waarom dat nu weer. -}Wel, dat zal ik proberen uit te leggen.Onze computer heeft ruim 65000 adressen. Je moet om al deze adressen aan te kunnen s-}preken getallen kunnen vormen tot ruim 65000. Dit is logisch.Nu kan een adres een waarde hebben van 0 to 255. Dat is nog la-}ng geen 65000. We gaan dit oplossen door van 2 adressen de waarde te nemen. Het eerste adres kan 0 tot 255 zijn maar het twee-}de adres natuurlijk ook. Hoe komen we nu aan die 65000??? We nemen de waarde van het eerste adres en tellen daar 256 keer de -}waarde van het tweede adres bij op. Het lijkt een beetje op ons eigen talstelsel.Dat loopt van 0 tot 9. Toch willen wij verd-}er tellen dan tot 9. bv 19. Hier lijkt negentien te staan, maar dat is dus niet zo. We noemen het negentien. Eigenlijk staat -}daar 10 keer 1 plus 9.Zo komen wij in de computer aan bij 256 keer adres 2 plus adres 1.Heel ingewikkeld dus. Of toch ni-}et.Je weet wat een PEEK doet, een DPEEK lijkt daar erg op.DPEEK(88) Haalt de waarde uit adres 88 en telt daar 256 keer de-} waarde uit adres 89.Nu weet je wel wat DPEEK is maar nog niet waar in hemelsnaam dat adres 88 mee te maken heeft.DPEEK(8-}8) geeft een waarde. Deze waarde is het geheugenadres waar je beeldscherm geheugen begint. Doe bv maar eens een DPEEK(88) en -}poke in de uikomst een 65. In de linkerbovenhoek van je beeldscherm verschijnt er nu een tekentje. dat heb je er in gepookt.-}BV. A=DPEEK(88):POKE A,100DPEEK(88) geeft dus het eerste adres aan van je beeldscherm. Nu is het beeldscherm precies wat j-}e wilde bewaren.Komt als laatste het getal 7680.Dit getal geeft het aantal waarden aan die naar de file verzonden worden.-}Graphics 31 bestaat uit 7680 waarden.Als je een ander scherm wilt bewaren:graphics 0 = 960graphics 7 = 3840graphics 8, -}9, 10 , 11 en 15 = 7680De andere modes laat ik even buiten beschouwing, want die worden niet vaak gebruikt om te tekenen of-} text te laten zien.Om nu weer data binnen te halen moeten we het tegenovergestelde doen:10 GRAPHICS 3120 OPEN#1,4,0,"D-}:CIRCELS.PIC"30 BGET#1,DPEEK(88),768040 CLOSE#1Ipv de 8 gebruiken we de 4. BGET is de tegenhanger van BPUT.PUT #1 <> GE-}T #1PRINT #1 <> INPUT #1BPUT #1 <> BGET #1Nog enkele tips voor de programmeurs onder ons:Zet aan het begin van het prog-}ramma altijd een datum, title en korte beschrijving. Als je dan later ooit nog eens op zoek bent naar een programma dat je oo-}it eens hebt geschreven, kun je makkelijk herkennen.10 REM ********************20 REM * SAVE PICTURE *30 REM * -} *40 REM * 29-06-1991 *50 REM * *60 REM * SAVED PICTURES *70 REM * VANUIT GR.31 *-}80 REM ********************90 REM100 OPEN#1,8,0,"D:NAME.EXT"110 BPUT#1,DPEEK(88),7680120 CLOSE #1Nu is het voor zo'n ko-}rt programma volstrekte onzin om dit allemaal aan te geven, maar ik mag toch aannemen dat het de bedoeling is om grotere prog-}ramma's te schrijven....Als je wilt weten welke variabelen je hebt gebruikt in je programma type je 'DUMP' en dan krijg je -}alle variabelen, maar ook alle subroutines en labels te zien. Achter de variabelen staat de waarde vermeld. Handig om te kijk-}en wat je programma heeft gedaan.Indien je tijdens het intikken van een regel erachter komt dat je basicregel te lang wordt-}, moet je van te voren poke 82,0 typen. Dit zet de linkerkantlijn op 0. Via poke 83,?? kun je de rechterkantlijn instellen.-}Zo, dat was het voor deze maand. Ik hoop dat ik je weer een stukje verder heb kunnen helpen in de mooie wereld van het progr-}ammeren. Heb je vragen of leuke programma'S gemaakt in het kader van deze cursus, laat het mij dan even weten. Misschien word-}t het geplaatst...Rest mij nog om je veel plezier toe te wensen met dit dubbel dikke Pokey's Magazine.John Maris word,x**** ** ******** o s t.......Deze maand kreeg ik een diskette met een paar aardige programmaatjes. Een daarvan i1}s geplaatst op deze zijde van het magazine. Het is niet een programma dat iets doet, maar laat zien dat iemand begonnen is om1} het programmeren onder de knie te krijgen. He Erwin, bedankt voor het programma... en ga door met het programmeren. Ik hoop 1}vaker een leuk programma van je te ontvangen. Misschien aardig om een programma te maken waar donateurs iets mee kunnen doen.1} Wellicht zet dat hen ook aan om te programmeren.Verder kreeg ik van Gideo de vraag hoe hij de texten kon uitprinten...Gi1}deo, je moet een textverwerker in je computer laden. Daarna kies je voor het laden van een text. De text die je moet laden is1} LES.TXT. Dit geldt trouwens ook voor Code-Runner cursisten. Zij moeten de text CRXMEI.TXT in de textverwerker laden.De hee1}r Riepe uit Den Helder biedt aan om zijn medewerking te verlenen aan deze cursus. Mijnheer Riepe, dank voor de aanbieding. 1}indien u tips, voorbeelden of leuke programma's hebt in het kader van de cursus, houd ik mij daarvoor aanbevolen.Tot zover 1}de post van de Turbo-cursus.Prettige vakantie en tot het volgende Pokey Magazine.....John Maris.nbevolen.Tot zover 0hBREAVRGPOSTLESHELPOPDRWINDPIJLSCROMINSCROMAXSCROPOSLEHELOPDPIJPIJLVSCROLHELLOPDLLELPOSP5}SCROLPMPPYCHELCURSUOPDRACHPOSEXAMPLVRAGEEINDPXPCOPEXMANTTXTTXLPODPODABPQBR-C 5}P .` PLdB B B B B`B B8BI5}BBwB`B @BS BwD DT@Bv@@? ?5}!2@"@#$D%&@'(@R)*A+AU,-@.@f/<*05}12B9 3456g7g8g9g:;< @T IN5}IT(T27PA+A 7TRAP 1410<;@,Fss;A,;@",;A `,;A$5},;B ,;B,;@ ,;@ ,;@!,;@,P'6-6-'6-A `Z> 6-C:,6-C5}:,6-C:,'6-C:,56-%@>6-C:,d, 6.,6-BBwxZ D:DECODER.COMQ+@5}@ D:HELP.TXT@C@AF6-Q@ AE@+@@ D:POST.TXT@C5}@B@6-U:Ar,U8A8A%)8A86-?:A6,U6-%+U:A,&,&5}A A?*@@ D:LES.TXT?C@B@6-U:Ar,U8A5}8A%)8A86-?:A6,U6-%+U:A,&,&A 6-6-6- +PVV6.L5} |𠠠| || || |vragen | |POKEY | 7-@@f@367<,.>:AU,7 5}T LOOPTP%-@%( "P,-@(61B2H@R%9%5}@16-@"@<J M@T>6-R:,>6-+"@,$@&+"@,$@^3"@)"@5}39C:,%@h%%!@!*% @A%6-%r9%@|=T:,"O6-&@"5}!6-%'@-"@?B2wO% D:MENU2.COM%@b ApO 6-6-65}-QO 6-6-6-QO 6-6-6-QO 6-6-6-QO&""95}U:@,%@A09%@:<D!6-R:,!6-T:,N"@XYC6-+!@* @5},$@`&+!@* @,$@`OYM@b%%!@G*% As%6-%lB2Hv"@5}R;16-%+"@,$@@&+"@,$@@;M@@"A;16-%+"@,$A&+"@5},$A;M@@T6-F:A ,H6-%+"@,&+"@,%+",&+"AU,TA AA5} !6-  6-""9U:@,%@A@j"Ar6-F:A,T6-%+"@,&+"@6},%+"@,&+"AU,`AjM@A ="@R*"Q T*O4 (}A@>6}'@@d'B7t@dHKAR@'A@9A @K@R=-@6}=(#MENU PAGINA KLEUR\QfTpOz&6-F:A,&@&BByQA@6}'AY@F9B2w@E6-@Q6-@R6-$AV%A#-%A'# !6}B2H!B2V@QTOB2H #A0-@@ (} "((6}-@@ " ( "(("(DRUK DE JUISTE TOETS...%((($).G *(JAMMER, VOLGENDE K6}EER BETER.-@D(HMMM, NIET SLECHT.GA8((DRUK RETURN...B)AUAL VP`QjDPEEK(766}0)t##A- IS 256*PEEK(760)+PEEK(761)~##B- IS PEEK(760)+256*PEEK(761)DDC- GEEFT EEN ERROR WANT 760*256 IS GROT6}ER DAN 65000,66DPEEK(88) GEEFT%%A- DE WAARDE VAN JE BEELDSCHERM--B- HET ADRES WAAR JE BEELDSCHERM BEGINT%%C6 }- IS OM PLAATJES TE BEWAREN,66!!STUUR JIJ EEN PROGRAMMA OP?A- VOLGENDE MAAND B- JAC- MISSCHIEN,66%6 } D:TURBO.CUR BEWAREN,66!!STUUR JIJ EEN PROGRAMMA OP?A- VOLGENDE MAAND B- JAC- MISSCHIEN,66%4QRRRRRRRRRRRRRRRRRRRRRRE|452"/#52353(%,03#(%2-|QRRRRRRXRRRRRRRRRRRRRRRRRRRRRRXRRRRRRE|: }*oystick^_voorhoofd menus|ARRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRD|||*oyst: }ick\regelomhoog||*oystick]regelomlaag||&irekeuzemenu|ARRRRRRRRRRRRR:}RRRRRRRRRRRRRRRRRRRRRRRD|||*oystick\paginaomhoog||*oystick]:}paginaomlaag|ARRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRD|||*o\&ire+leur:}omhoog||*o]&ire+leuromlaag||*oystick\+leuromhoog||*oystick]+leuromlaa:}g|ARRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRD|㉀瀰|ZRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRR:}RRRC|ARRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRD|㉀瀰|ZRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRR83R?f?AMENINTRSSSSHAS1S2S3S4TAVVVVAUTAUITLEKESCHERMSCHERMSCHERMRINGEWEERSTANSR>}PLUPRGSRRIIMENUITRVRVITABESAVESAVEDUMSETUNAMEBLANKBLANLOONUM_BYTESTARBCDWEERSWU1 >}@A; @ @@@>}@A> A>}(!D"K#mV$%q&x '()*+,-./>}01234560`7p8%q9Qm:@';hp<=>?>}@AvAB C D EFGH dI  | >} | | DE WET VAN OHM |( | |2 | door |< | >} Kick van den Dool |F | |P | Ԡ |Z d>}TnTxPPPTTORR;A,;@,;@ ,;@,;@,;@,;@,>}C +@A A1AACA@6.doolsoft-@@ A`6.>}PRESENTS-@@ A`6.Ԡ-@@ A`6. ->}@@ A`6. DRUK OP "-@@ A`,'AA'A@6 M> }@@'A@'AAJ&F:B2y,"@"+&PT M@^ Ah5-@>!}B:,!7<,4 1(@ 5 r(@7<,3-@6@[2AU&+$@,@>"}_ iM@m 2$|QTTOC@+1A>#}CAR@..(&DE WET VAN OHM is een programma dat de..(&stroomsterkte uitrekent in een stroom-//('kr>$}ing waarin men zelf de spanning(volt)**("en de weerstand(ohm) moet invoeren0(0(%Uit het menu heb je de volgende mog>%}e-( lijkheden:,(,(! Een schakeling met 1 weerstand++(# Een schakeling met 2 weerstanden( in seri>&}e++(# Een schakeling met 2 weerstanden( parallel.2(2('Verder een overzicht van de kleur kodes&--(%van>'} weerstanden en een scherm, waarin0++(#je door het intikken van de kleuren://('de waarde van een weerstand kan bepalen>(}D*(*( Druk op voor MENUN(( ((( Kick vd DoolX<b=F:B2y,"@lPvQ>)}TTOC@@+1ACAR@(( MENU( ((>*} 1 weerstand&(&( 2 weerstanden in serie&(&( 2 weerstanden parallel%(%( Tabel van kleur>+}ringen,(,(! Bereken waarde van weerstand#(#( Terug naar Pokey...<)"@e)"@>,}P"@f)"@P "@g)"@P"@h)"AP "@i)"AP%)>-}"@p)"A)% D:MENU2.COM*="@24P>QHTRT\Of1 +A1AR@>.}p%-@@%( 1 Weerstandz%-@@%( ;-@@;(!Geef de waarden in van>/} de VOEDING=-@@ =(# en van de WEERSTAND;-@@;(!Als de waarden geen hele ge>0}tallen;-@@;(!zijn dan een '.' (punt) gebruiken(-@@ (( komma ! ! Ap(->1}@@( Voeding =  6- 6.=:, 6-B:, -%@@ (Volt(-@@( W>2}eerstand = F"(8(!}Een weerstand van 0 kan niet ! !BM@PFP 6- 6.=:, 6-B:,$-%>3}@@(Ohm. M@P8 +B'A'AR@L.-@.( W>4}eerstandV.-@@.( `7-@@7( j7-@@>5}7(|  |t7-@@7(| Ohm |~-@@(I>6}-@@#-@E(| |I =-@=(#Stroom|sterkte >7} |=-@ =(# |=-@=(#| |Ampere |>8}=-@=(# |I-@@#-@E(| >9} |I 7-@@7(| VOEDING |7-@@7(|  |7->:}@@7( --@@-( +-@@ +( >;} Volt-@@(T AMPERE-METERT6-P:',(- 6-6.=:,$-@@- ,><}2-@@<6-++&$,$@,F"6-P:',6-6.=:," P Z6-@@"6(Druk op >=} voor MENUdTn<x)="@2PQTTO1 +A1AR@>>}0-@@0(2 Weerstanden in serie0-@@0( ;-@@;(>?}!Geef de waarden in van de VOEDING;-@@;(! en van de 2 WEERSTANDEN;-@@;(!Als de>@} waarden geen hele getallen<-@@ <("zijn dan een '.' (punt) gebruiken.(-@@!(( komma !>A} ! Ap+-@@+Voeding = " 6-6.=:,6-B:,, -%@!@ (Volt6+-@>B}@+Weerstand R1 = @ 6-6.=:,6-B:,J-%@!@(OhmT+-@@+Weerst>C}and R2 = ^ 6-6.=:,6-B:,h-%@!@(OhmrR")"D(&} Een weerstand van 0 Ohm >D}kan niet ! !NM@PRP| M@PC@+1ACAR@((( >E} ++(#   ++(# |  |  |++(# | >F} Volt | Volt |++(# | | |++(# | Weerst. R1 |Weerst. R2 |++(# >G} | | |--(%   --(% |   |--(>H}% | Ohm Ohm |--(% | |--(%Stroom|sterkte >I} |--(% |--(%| |Ampere |--(% >J} |&--(% | |0--(% | Voeding |:--(% | >K}  |D--(%  N""( X( >L} Voltb.(.(# Druk op voor MENUl-@@(v-@@(-@#@>M}(TVOLT-METER 1T 6-+%, 6-' 6-6-P:$,- 6-6.=:,$-@@- .>N}-@@6-++&',$@,"6-P:$,6-6.=:,"  K "6-'@)-@@>O}5( G-@@K( TVOLT-METER 2 T* 6-46-P:$,>- 6-6.=:,$-@$@>P}- .H-@@R6-++&',$@,\"6-P:$,6-6.=:," f p= "-@$@>Q}'( 9-@$@=(zTAMPERE-METERT6-P:',- 6-6.=:,$-@@- ,>R}-@@6-++&$,$@,"6-P:',6-6.=:,"  T<)="@2P>S} Q T T$ O. 1 +A1AR@8 0-@@0(2 Weerstanden parallelB 0>T}-@@0( L ;-@@;(!Geef de waarden in van de VOEDINGV ;-@@>U};(! en van de 2 WEERSTANDEN` ;-@@;(!Als de waarden geen hele getallenj ;-@@ ;(!zij>V}n dan een '.' (punt) gebruikent (-@@!(( komma ! !~ A#P +-@@+Voeding = >W}  6-6.=:,6-B:, -%@!@ (Volt +-@@+Weerstand R1 =   6-6.=:,6>X}-B:, -%@!@(Ohm +-@@+Weerstand R2 =   6-6.=:,6-B:, -%@!@>Y}(Ohm P")"(B(!}Een weerstand van 0 kan niet ! !LM@PPP M@P C@>Z}+1ACAR@ ))(! Weerst. R1 **(" >[} ,,($   ,,($ |  |( ,,($ Stroom|sterkte >\} Ohm |2 ,,($  |< ,,($ | |Ampere |F ,,($ >]} |P ,,($ | |Z //('  d //(' | Str>^}oom|sterkte | |n //(' |  | |x //(' | | |Ampere | >_}| //(' |  | | //(' | | Weerst. R2 | | //(' | | >`}  | | //(' |   | //(' |  | //(' | >a} Voeding Ohm | //(' |  | //('  >b} (  //(' Volt = MENU -@@ ( -@$@(>c} -@$@( 6-+$,'+%, 6-' 6-'+%," 6-'+%,, T6 AMPERE METER 1@ TJ 6->d}T 6-P:$,^ - 6-6.=:,$-@@- ,h -@@r 6-++&',$@,| "6-P:$,6>e}-6.=:,"    T AMPERE METER 2 T 6- 6-P:$, - 6-6.=:,$-@@- , >f}-@@ 6-++&',$@, "6-P:$,6-6.=:,"    T < ) ="@2 P>g}& Q0 T: TD ON 1 +A1AR@X /(/($De 2 volgende schermen kunnen uitge-b ,,(>h}$print en/of gesaved worden door op l ,,($en/of te drukken. = vervolgv 2( (2($Als je de 2 plaatjes met de '>i}ruggen' **("tegen elkaar plakt, dan heb je een ++(#WEERSTANDEN TABEL. Misschien handig ++(#om snel de waarde van een>j} weerstand ( te bepalen ,( (,(Screendump is EPSON compitable /(/($Picture-namen worden 'TABEL1.PIC' en (>k} 'TABEL2.PIC' 9-@@ 9(Druk op voor vervolg < ) ="@2 T +@%@>l} 0@@ '0@'@ ==Y@@%De meeste weerstanden hebben 4 kl>m}eur- ==Y@@ %ringen. De eerste 3 zijn om de waarde* ==Y@@0%te bepalen, de 4e voor de tolerantie>n}.4 K,@ @'/@@9,@ @K/@@> ',@@`'/@AH K,@>o}@`'/A@@`9/A@AK/@AR K,A@@'/A@9,A@@K/>p}A@\ ',@@`'/@Af ',A@`'/AAp ',A@`'/A>q}Az ',A @`'/A A ',A0@`'/A0A ',A@@`'/A@A>r} ',AP@`'/APA ',A`@`'/A`A K_@@'_A@9_A5>s}@K_AU@ ',@A'/@PA  ',AA'/AA  ',A5A>t}'/ApA  ',AUA'/A5A  66Y@0A"Ring 1 Ring 2 Ring 3 Ring 4 < )>u} ("@)"A(6-?:A6,"@)"AP="@2T$+@%@.0@>v}@8'0@'@B],@@'/A@9/AACK/@AC>w}]/@@L44Y@@Ring 1 2 3 4V',@@'/A@`==Y@>x}@%Kleur Tolerantiej',@@%'/A@%t66Y@@&Zilver >y} x0,01 10%~66Y@@5Goud x0,1 5%))Y@@DZwart 0 0 x166Y@>z}@SBruin 1 1 x10 1%66Y@@bRood 2 2 x100 2%,,Y@@qOranje >{} 3 3 x1000--Y@@Geel 4 4 x10000..Y@@Groen 5 5 x100000//Y@@>|}Blauw 6 6 x100000000Y@AViolet 7 7 x1000000011Y@AGrijs 8 8 x100000000>}}22Y@A%Wit 9 9 x100000000066Y@A4Geen kleur 20%""Y@AD>~} Voorbeeld:--Y@ASGeel-Violet-Rood-Goud ::Y@Ab" 4 - 7 x100=4700 Ohm=4,7 Kohm11Y@>}AqMet een tolerantie van 5%??Y@A'Deze tabel geldt ook voor Condensatoren(',@@'/>}@AC2',A@'/AAC<',A$@'/A$ACF',A @'/A >}ACP<Z)d("@)"A(6-?:A6,n"@)"APx="@2PQT>}TO #A@P-A6A"  77104,169,128,133,216,165,88,133,212,133,214,165,897713>}3,213,133,215,169,25,133,217,198,217,240,102,3233144,6,169,41,133,218,198,218,240,71,160,0,162220,177,214,37,216,201,>}1,38,219,24,165,214,1054440,133,214,165,215,105,0,133,215,232,224,8,14466230,165,219,32,160,6,165,212,133,214,165,213>},13377215,70,216,144,209,169,128,133,216,24,165,212,105551,133,212,133,214,165,213,105,0,133,213,133,215"3376,32,6>},24,165,212,105,24,133,212,133,214,165,22213,105,1,133,213,133,215,76,21,6,169,80,1336//217,198,217,240,8,169,0,32,160,>}6,76,131,6@0096,160,9,152,72,185,172,6,32,160,6,104,168J44136,208,243,96,170,173,55,228,72,173,54,228,72T**138,162,0>},96,1,64,4,42,27,10,8,65,27^QhTrT|O;@ ,6-A $A'@QTTO>}6-U:@,..@@ D1:TABEL1.PICB@@QTTO6-U:>}@,..@@ D1:TABEL2.PIC&B@0@:QDTNTXOb1 +>}A1AR@l$($( WEERSTAND METERv.(.(# Tik de kleuren van de weerstand in**(" in>} HOOFDLETTERS en druk na iedere**(" kleur op RETURN. De kleuren zijn:0( (0("ZWART BRUIN ROOD ORANJE*>}*("GEEL GROEN BLAUW VIOLET((( GRIJS WIT ZILVER GOUD ( (Kleur 1e Ring: Kleur>} 2e Ring: Kleur 3e Ring: ) #AFp!-@@)" 46-$@ 46-$ 4>}6-$"6@AG\ 6-+%,$(5(De weerstand is  Ohm.8(\( voor nog een keer "(>}"( voor MENU< )*"@2 ADP4="@w)"A P>22ZWART,0,1,BRUIN,1,10,ROO>}D,2,100,ORANJE,3,1E3H55GEEL,4,1E4,GROEN,5,1E5,BLAUW,6,1E6,VIOLET,7,1E7R22GRIJS,8,-1,WIT,9,-1,GOUD,-1,.1,ZILVER,-1,.01\>}N (} (((:(#DE MAXIMALE WAARDE IS 990.000 K.OHMDMAN ADPfQpTzT D:WETVAN.OHMVER,-1,.01\<q Xj LIFTJE.0@@0@@@0@@@B}0@@@ %%2@@E@@%%2@@@@0@@@B} (======================""(= =  ""(= | = (""(= >< | B} = 2""(= | >< | = <""(=><  >< = F""(=     = P""(===B}=================== Z%%2@@@@_(F:Ad,AU(% D:MENU2.COMn @ D:LIB}FT.BAS============ Z%%2@@@@_(F:Ad,AU(% D:MENU2.COMn @ D:LI@M55PICTEXTAVVVVABMENMENUSTICMENUPECOTEKENESNELHEILIJNEOVALERECHTHOEKETEXINKLEUREKLEUREF}SCHOONMAKELICHTPEJOYSTICCCCCPAUSHHHHYYBPPYYBXSVCHDISF1FSCSLELOOKALEIDIOSCOOXPAUZF}ADXXXYKALEIDOSCOPXXYDIRECTORLADESAVEDELETFILEKJJANAAM1NAAMFORMAMOVSTSTTTTKLEURENIPAINPRININPF}UASCOPSCHOOHELTCOLCOLCOLCOLRENAMCURSORCURSORCURSORCURSORRESSCOO55 @@@F}@@A AH @ @ = @@@pXY(CF}DE QqRTS&G W!pV"#$F}%&'()*+,-./01234F}56789:;<=>?@aABCF}DEFGHIJKLMNOPQRSF}TdcUcVJdWdXYZ[\]^ e_Ef`abF}cdefglLhKijeklmn(VoZgpqrF}stuev _w_x3`y`z`{[*;@',;@,*;@%,;AF}v,;@,c6-@6-@'6-@36-?6-@@K6-AW6-AHc6-@6F}-@6-@T]% +(}%AR@6-@6-@ 'A'@F}@ ?-@?(%ϭԠ --(%Үé --(F}%Ҡͮ &-@@&( VRIJ TEKENEN"-@'@"(SNELHEID -@F}@ (LIJNEN)-@@)(KLEUR INSTELLEN -@@ (OVALEN%-@'@%( RECHTHOEKF}EN#-@@#( INKLEUREN-@'@(TEKST&-@'@&( KALEIDOSCOOP-@'@F}(HELP-@@(DISK&-@'@&( SCHOON MAKEN?-@@?(%F}#-@@#( #-@@ #( |KLEUR |#-@@!#( F}$-@'@$( $-@'@ $( | |$-@'@!$(  C<%F:Ad,"F}@(*"16-@CAdAU!@"F:Ad,"@(*"@.6-@AdAU"6F:AdF},"@P$6-6AdAU#6F:Ad,"@1$6-@6AdAU$6F:Ad,"@0$6-@F}6AdAU%6F:Ad,"@&$6-@6AdAU&-@@ ('2"@!-@(F}@ .(JOYSTICK2P(2"!-@(@ .(LICHTPEN2P)??=T:,"*"@)R:@,"@F}*"*"@6-+"@#6-@,11'@&@%j-T.F}]/P 6-6-10<"P1"@P2 ,3K?T:,"*"@)F}R:@,"@*"E,K/4 6-6-5 16H:@,7 ,8M9H=F:Ad,"@3*F}AdAUD9U:@,C:,AvH\:T;]<B +A%(}B(GEEF WAARDE VAN 0 TOT 25=F}..(&0=HOOGSTE SNELHEID;25=LAAGSTE SNELHEID> @b? 6-@!@%6-@%A\BF}TC]DP 6-6-E<H:@,F ,/G"PH"@PI9C:,U:@,AvF}JX"T:,"*"@&,,2/L9U:@,C:,AvR6-X6-KX"R:@,"@*"F}&,,2/L9U:@,C:,AvR6-X6-L.=F:Ad,"@3*AdAU.\MTN]O +@F}P6-@"6-@%%@7,@0@ I/@0A[/@PAm/@P@ /@0@ F}Q;-@0Ap@+,@07/@P; R36-@06-'6-@ 36-@@SP<Y@RF} ,@`,/@p8/@pD/@`P/@`T;6-%@06-%@-6-%@0;6-%@0F}U="APV' @'Y@AKLEURW-@X!_@@6-%@! YPZF}6E <6-R:,66-%+"@,&+"@,[!@6-\ 6-@]#"@6F}-#6-&@^#"@6-#6-%@_!Ar6-@"` @"6-AraE @Y@F}-->);Y@ E@bY@`Ac.F:Ad,"@3*AdAU.\d0F}-@A 0=T:,"e'6-+%@,$@0'6-fJ<&,@a&@ %{A|F<6-$@%&6-$@%66-$@%F6-$@F}%}3AA'A 3A~s @_@P@0)@;_@P@`E@W_F}@P@a@s_@PA  6->R:,"@&6-&@02 @0>6-A >R:F},"@&6-%@02!A >6-@0K @%Y@-->/AY@ K@F}6-R:,M56-%+"@*"@0,&+"@*"@0,A!@M6- 6-@F}M56-%+"@*"@`,&+"@*"@`,A!@M6- 6-@M56-%+"@*"F}@,&+"@*"@,A!@M6- 6-@M56-%+"@*"A ,&+"@*F}"A ,A!@M6- 6-@-@A .=F:Ad,"@3*AdAF}U.\T]+P 6-6-6-+6- <"@P AI"P 6-F}  6- 6-&6-&9C:,U:@,Av bg?R:@,"@*")T:,"F}*"@CMbg9U:@,C:,AvH:@,.=F:Ad,"@3*AdAU.\TF}]P 6-6-$< ,///$/"P"@P9C:,U:@,AvF}6-R:@,X6T:,"*"@)"@*":@,F/L/R/X/*9U:@,CF}:,Av*H:@,.=F:Ad,"@3*AdAU.\T]P<H:@, ,"F}@P"P ,E?T:,"*"@)R:@,"@*"E_ 1F} 6-6--@@ N=F:Ad,"@3*Ad@%D9U:@,C:,AvN @F}T]: +A6(TYP NU DE TEKST IN:P<H:@, Y"PF}"@P9C:,U:@,Ave?R:@,"@*")T:,"*"@CKYe9UF}:@,C:,Av.=F:Ad,"@3*AdAU.\T] +@1`@9U:@,C:,F}Av\TOX6-R:,X6-%+"@)"@)"@,&+"@)"@ )"@,II6-%F}+"@)"@)"@ ,&+"@)"@)"@,!AY6-AY!A6-A F}6- 6-QTO?6-F:Ad,&@p16-F:Ae,&@?6-$@F}!AY6-AY!A6-A 6- 6-$F:AdF}, @$6-AYQTO4R:,"@-&( 46-&@1 @*"@%6-@#F}16-@1 @*"@#%6-@16-@4R:,"@-&( 46-%@1!F}@*"@%6-@16-@#1!@*"@#%6-@16-@ -(--> M@"F}T:,"" @BQTO36-@16-@5!6--6-@36-0<6-%@"6-%F}@06-%@!@u6-@1!@u6-@5!@6-@!6-F:Ad,!6-FF}:Ae,U!Ap*A0**-6-@#3-;( A-I(-->U6-@U!@P*A`**F}-6-@3-;( A-I(-->U6-@="@6-QT]56-@ Aa#+F}5A8<"CURSOR 1 HEEFT KLEUR 8=@*@8<"CURSOR 2 HEEFT KLEUR 8=F}*@8<"CURSOR 3 HEEFT KLEUR 8=*@8<"CURSOR 4 HEEFT KLEUR 8=*@F}P6-6-+6-76-C6-@O6-@[6-@g6-@s6-@6-@F}6-@6-@<" AFX6-R:,X6-%+"@)"@)"@,&+"@)"@ F})"@,SI6-%+"@)"@)"@ ,&+"@)"@)"@,S AI26-F:Ad,&@pF}& @26-AY 6-&,$6-+F:Ae,&@,$@,6-&PPPF}PPF=F:Ad,"@3*AdAU66-@B6-@F\TO ,6-F}%6-%' 6-'6-@' @6-@'6-@'!AY6-AY'6-@F}'!A6-A'6-@ /QT O ! ,"!6-& "6-%F}  / QTO! ,"!6-&"6-% /QTO! ,F}"!6-&"6-& /QTOH:@,??T:,"@*"@)R:@F},"@*"9C:,U:@,Av@ 9U:@,C:,Av!A"36-6-'6-F}36-#Q$T%]&6-@ Aa'(E+(}(A(--(%F}ˠ) ( (*&-@@&( 1 DIRECTORY+"-@@"(2 LADEN,"-@@"(F}3 SAVEN-#-@@#( 4 DELETE.'-@@'( 5 FORMATEREN/#-@@#( 6 RENAME0!-F}@@!(7 EXIT1 ( 2"@\3b4F5T6O7 (} H8#( (#(DRUK OF}P DE SPATIEBALK9<=F:Ad,"@3:AdAU;Q<T=O>P? @@@.F}C@C:,Av.)@A@BQCTDOEPF @@G.B@F}C:,Av.*@H@IQJTKOLPM((WEET JE HET ZEKER?NO 4JLPF}QQTROS (}(WEET JE HET ZEKERT ( (ӠԠԡU74J7AS@F}D:VQWTXOY (}( GEEF FILENAMEZ6.D:[67@,.\Q]T^O_( (}((GEEF F}OUDE NAAM,NIEUWE NAAM`6.D:a67@,.bKcQdTeOfW +@1'9C:,U:@,Av3AF}?AKA WAgQhTi: +A:(ER IS IETS FOUT GEGAANj(DRUK OF}P DE SPATIEBALKk=<=F:Ad,"@3-AdAU9"@=\l"@\mTn]o3 (}3(%F}p--(%| |q--(%rF}--(%| SLUIT DE JOYSTICK AAN OP POORT 1 |s--(%| SLUIT DE LICHTPEN AAN OP POORT 2 |t--(%F}u--(%| MET ESC SCHAKELEN TUSSEN JOYSTICK |v--(%| LICHTPEN.RECHTSONDER IS TE ZIEN |w--(%| WELKE IN GEBRUIK G}IS |x--(%y--(%| DOOR GETALLEN 0 T/M 3 IN TE TYPEN |z--(%| WORDT DG}E KLEUR GEKOZEN WAARMEE |{--(%| GETEKEND WORDT.(LINKSONDER) ||--(%}--(G}%| MET DE SPATIEBALK TERUG NAAR HET |~--(%| HOOFMENU. |--(%G}--(%| LEES VOOR MEER INFORMATIE |--(%| HELP.TXT |--(%G}--(%| ˠРŠ |--(%1<=F:Ad,"@G}3-AdAU1\ D:TEKEN.TUR1<=F:Ad,"@D]vABTLREDRASATPOKEPO (A<9V=A@@ @K} @Q +@%@&&;AP,;@,;@@,JJŠŠ̠ ҠԠK}Š(6. D:SCHEMA0.SCH)-@@*?%6-@:7@ <@ ,,%@?67@ <@ ,.>:,2K }6-< 6.F'A@'A P AZPdPn 6.Yx >0  4SK }P AA 6.Y? IIŠŠ̠Ҡ ˠή% DK }:MENU2.COMO`@!6-@ > B:,7<,40 6-%@@"K }7<,41, @6-%@6@@7<,4PJK=,@:7%@,,%AV$@:7%@,,@:7%@,,KK }6-%@T@^7<,4DhK=/@:7%@,,%AV$@:7%@,,@:7%@,,K6-%@r@|7:,bC@C:,B:,l@vQO A..@K}@ D:PICTURE.PIC!!B@U:@,Av A@Q D:DRAW.SCH..@Hu1PPZDZZPZPDZdDiZDZPCnZPsZD}ZP}WD}]D]DWD}WPZDZPUD_P_DUPZDUDKPKDKDP>P&P&P'D,P)P)P5P8P5D9P:P:1P5P6P7P8PD%D'%D'DPS!}(D/D'/D'(D(P2D9D'9D'2D2PPW1}>P&P&P'D,P)P)P5P8P5D9P:P:1P5P6P7P8P1D1P;D;PEDEPDDPDPDPDCW2}To0VTRBA14 BA15 BA16 BA17CbCCCPDPDPDPbDbPXDDnDXnDXT^ATBTW3}CTDTY}LEPZ|Dg|PWDICFT3~0VTwo a b c d e f gPnDPPnDPPmDKDKPnDEDEPnD?D?PnDKW4}DKPED{ED{nT}9368TDISPLAY:T%COMMON KATHODET0ΠT7ΠT>ΠTEW5}ΠT(ˠ٠Ҡ ŮT0ΠT7ΠT>ΠTET9  C5CADLxUUB'hA! ;A`,;@,__6.UpBBB[7}BBBBBBB B B B B BBBBBBBBBBBBBA""9C:,A)$AV@(ss6.i[8}H2''67B:,%@,.[9}<9C:,A($AVB:,F8A`A)$AVP6-A($AVZ Ad AUd<[:}n -A 6@x9&@A  M6-&@ %%2@@[;}@ M2-A :%@A  M6-%@ %%2[<}@@@ M2=F: Ad, AU% D:MENU2.COMD:ROTA %%2Xclllllll||00f8l8pvp88pl88l~00`~00_>} 0`||x|| x | |||800||||~ x00000000` 0`0 ~~0 _?} 00000>600| _A}| %._3ȹ54H;9;1bA:kNpQUXY:-=.`xt  wPY+ _I}%wdm_h<]F8#hasQ *|d_dAٚ[n8,;(>u s' uN[/IgDWq#,>Yx#dq_J},^؀ߩcX;0l;"0@Bk-AxB>-+^O013468N:L<=> C#RQTWVU() ;%a.`abcegecmomkmomkuwusvqprutupwvy_K} _L} .3966 /' ,-./0123456789:;< 0NA`l|EWQ\IJKLMNOPQRSTUVWXYZCDMN_AEbEVDHBCLXklmnopqrstuvwxy_M}z{t[LS_N}3/%(#:)9)( '0!0:82;#:/?1   &) -25:>algCFigtHolm~Nlqb{}{WVqjvw[fxnoEMKMdBGJMZdkUH]cpXrX_O}ZZAvxMRRO}M\_P}2--*+#?88 :=94';!%1-?/23: %*-25<3@ujjwEotHcxxMzguQtzffbWhxho\nq_M@[AAe_H]nFGlO_Q}KoQ\SIQQvUAyNSY}PZ_R}%6+-6#-$% ;$"#372<8>+1??20*%(- 2 9;>neBlbEkfqIkehMgHftRt{aV}mjn[}]xzWaFB]VfS_S}GiLBBD]GpXFrtTPC]KzOT\J_T}8-6/34< =*%9)?#  %. -?7= lmBaaEtbdlkxiiNf~Qf{}fVt}wnnnd^WIa_U}JLT@gnfiC_lZGC\qPVtBD^LM_U|TP_V}5*&?>  <%!"3#72 0#/6(59;, # ,6 0?agvfvEroi}J|iJbcPdavTtV{yji_W}~xr`iDQKHfS@LjEM^OfpE]sCG_C]yNSUN~[_X}4)'!=6&&:#$" > "%<2;.  70-$(-728 ;  eAkwDjhGl`y`MMo{PezvTx_Y}yz}wn[kx^lTHNOdMGQMiYDAHn_B^P_QXEwOPNS|^QR_Z}%3/" 52+!+'#8=6$4*'%4*6679/./"#) .0123456789:6 ?urBtvdvJHIJKLMNO_[}PQRSTUVWXYZ[\]^_`abcdefghijklmnopqrsz||zwtqoligda_\ZWURPMKHFDB?=_\};975320.,+)(&%$"!  !#$%'(*+-.02468:<>@BEGILNPSUXZ]`begjmoruxz}_]}``````@@@ `@ ` ࠀ@ ` ` ` @ @ ` @ ࠀ`@ _^}``@@ @@`` @` @ ` @ ` ` ` ` ` ` @` @@@``````E FILE(S) L.__} BINARY LOADE. RENAME FILE M. RUN AT ADDRESSF. L _`} L_a} }Insert DOS 2.0s, type Y Λx DEfH@}H ֈӅچ݃LUβ=ˉ%:k*V4D>捡1 ݈7F*_b}ѕ=Xͅ~-R)St&Wp" kL$'*s0rtxƒشJ%OIBYp)qp5_Xl{v6NN.kdvhbBK}j1E_c}=H9OE2kInDlgA!C!!1)?)~- Hn5OBMMѮ]5{,T).`!B$Kjĩƒ 5ٚy^Cc@fn9Hiw%,Qv_d}r[{/)> @, ! OԞgdS+!"%(-nqr} nba5.7h 'obikQ"_e}8FwPkYŸoqɱFwϬ\*իjؤK2NRL&PjW Z Y@]%qe?Eho_f}-0(ȥ-NAq Q#k{ ibbk=./3'%ba`~}|{zyxwvutsrqp_g}۔}  "$&(_h}*,.|}~z{yxhikjnoml TEvg :+\]^_`abcdefghijklmnopqrstuvwxyz{|}~_i}#,)634INc`}zwlZNF !"_j}#$%&'()*+,-./0123456789:;<=>?@ABCDEFGHIJKLMNOPQRSTUVWXn?70Q^7c hvmpvDW_NL]O[r_k}Ţץݩɡж̹ȼܨȽϸӱܴߔ⁁ؔъehlp|vnfn jklga&{qfskv|oe_l}moRHVFW%QBZL*OCCK/RH2[YWE @IOYPM?!/&C, F*)-/K%9N&>Q8&'!V86\/%''D1.&?@ABCDEFG8;/8?M}gywfRTUVWXYZ[\]^_`abcdefghijklmnopqrstuvwxyz{|}`iLD_s}HHHH < hhhh`b,Q$0P% Q$LYPҝ< Q$` 1 2 ʽ   LV  _t} L@  L{% ¹L é&  )>>  # 9 -  L@8); 1    L& _u} H) hJJJJ  L  < > L=T 3 2 < 6     N mY n1 6 +2 H_v}< h= 6 L1 2 6 # = 3 < 9 ! )9  iT 2 < - 90!* * E * }3 2 < L 3 ;3_w} 3 2 < & *  L1 &  3 } L( 83  3 2 <  0L^` $*06>!$'),.13579;<=>?? !$'),/1368:<=>?@@ !$'),/1469;<>?@AA _} !$'),/2479;=?@ABB  #'*-/258:<>@ABCC  #'*-0358;=?@BCDD  #'*-0358;=?@BCDD_}  #'*-0369;>@ACDEE  #'*-0469<>@BDEFF  #'*-0469<>@BDEFF  #'*-147:=?ACEF_}GG #'*.147:=@BDFGHH #'*.147:=@BDFGHH #'*.158;>ACEFHII #'*.158;>AC_}EFHII #'*.158;>ACEFHII #'*.258ACEFHII #'*.158;>ACEFHII #'*.158;>ACEFHII_} #'*.147:=@BDFGHH #'*.147:=@BDFGHH  #'*-147:=?ACEFGG  #'*-0469<>@BDEFF_}  #'*-0469<>@BDEFF  #'*-0369;>@ACDEE  #'*-0358;=?@BCDD  #'*-0358;=?@B_}CDD  #'*-/258:<>@ABCC !$'),/2479;=?@ABB !$'),/1469;<>?@AA !$'),/1368:_}<=>?@@!$'),.13579;<=>??"$')+.02578:;<=>> "$')+-/13578:;;<< "$')+-/1_}35679::;;!#%'(*,.0235678999!#%'(*,./134567888 "#%'(*+-.012345666 !"$%'()_}+,-./0122333 !!"#$%'()*++,-.//0000!!!!!!"""##$%%&''(())*+++,,,,,''''''''''''''''''''''''''''''}  _}%*/49?EKQW^dkqxxqkd^WQKE?94/*%   ЋեAFG 9{k?<=:;8967_}452301NOLMJKHIFGDEBC@A^_\]Z[XYVWTURSPQnolmjkhifgdebc`a~?rz{xyvwturspq_}›P~]*7a  + kp ?$("18<'!7%6<(5; %>* + ?2_}7 :>arvCtdtsHflKxekOwcwr`Uzvs|i[}imIaALIUSSM[j^_H\\pR]]RPDRVZ_{XXSP_}-$"#*2;=3&> <6;11=! $ )_}.268< psk`aaFsgIlbbiNfdQstu|xWwwZtrx^pFaOZdJJChMCXG^`oX^EVBPD{xMR^|XXY_}5*&"'*- '->9563 67$175;,0 ! _}* >138 = lmBpkjhGzlfnm~kOq}g|pdWxw~\{|ATQFdLaJh[_EBD@Hp^GGtZPwULIRDs~H_}%3#7-*('/ &-)'1296&&,1?(2._}$- /&<15:>irqjjbFkagaGL~z`b|fa{zfrjYRuu~{_TSMVW@TTiiBJDLgcpEZVtRWC]R_^LXL_} 2&0 4;((*8% 056(*#8_}42,#, ' -$"/3:tAJdaqFkmnkgMDBOuiqvxU^cppi[un^hH@VcMeEFDEjJlIKB_p{tR^XKMHRXXL_}/400!!5-,>""5;?3?8_}9#0<(183=# & * "492 ?uqBdq|uFAGDEBMNiysxlZWqZbsh^~RDbBdACJGiIDHH\oI^GAGPZQxSOHH}IM_}@p_}QQQ Yyy` Dҩ } p @LML,\}Lgfffffff>`<|fl0fF68of;p88pf< 80 0 ~~`c}0 0```nf>ff~fff~~f<flxxlf`````~cwkcc}cfv~~nfgggogsss>ggggggfl7g<~c}~<0~0 ~ ρ<>f>``|ff|<```<>ff>>ff>|``|fff8<<``lxlf8c}<fkc|ffffff>|f```>`<|~ffff>fff<ck>6f< x~ 0~c}`p||p`pppB#A#/,2/7&2%%c}~}@ ` @`LOAD FILE:SAVE FILE:PRINT DEV:FINc}D WHAT?REP. WITH:DIRECTORY FOR DRIVE [1-2-3-4-8]?DIRECTORY PAUSED - PRESS A KEYDIRECTORY FINISHED - PRESS A KEYDIRECTORYc} ERRORREPLACE STRING - Y/N?QUIT EDITORERASE MEMORYPRINT TEXTSAVE I/O ERRORLOAD I/O ERRORPRINTER ERRORPage # !2%9c}/5352% 9.WORD COUNT: 00000E:P:12348D1:D1:*.*WPROCESS0rogram4ext%ditor c c}ITANEL#omputing 0ressa+ey `{} ~   ڨ­6Z>t1&1*dwǪ=CԪc}ܭ4үw`@`OK`''s` ɛ GM`~HЭ c}hyɀɁ IL*ɂ I@L*Ƀ@ЬɄ `Ʌ🥒@a { LKœE`Ȅ 嶭,c}- 嶭67LbHHB ԍhh@Ј报 I?XL_䥍   ac}`Ȅ ܦȄ L Υu *)[8 Y 8` `s  aLhhb \_ \@Ԣ B VBc} JKDE Vl LM`   0*DE8吝H呝I 0 ƪL   *ƪLc}`ˠ   0%  a   ƪL*`ĥ K0ߥą 嶭i ʥi ˥i ̥åc}ɛ S0 K0 0𭥝 KLީƪL   0Q HI 0;H8HII}H}Ic} ƪ LM  ƪL*ʆ8傅``` 挥ŇeiLᵥLᵩc}8ő ML dL`I`Hȱh`8呅Ɖ扑`c} eLᵩ RL e`eeɟhh`ee8岅峅 ee``ec}ϫΫeҫѫ褶 ϫҫ`ĸ⥶`Lᵥƌc}ƋL  G & b` G &Lb8吅hh``8IeIe8崅嵅 ⫥8弅彅`c}8剪Hhɛ`"} GLh` } P`I` Ԫyi饇Ō  ŋc}L ML d}iHHmi MhhŀL dʥ8Lf ŀc}L Ԫ 򳄂`8傅` 来L  Ǫ8内88内 `8必c} wLᵥŇ ee8崅嵅8崅嵅 8弅彅`c}֠  .`, ]  o ᠤ  .` ꮥ [ Lخ Gш 扥ŇDec}ił僐)8¥ ᵠI MI``8…aee8崅嵅淥ūc} 8 e GīeiLᵠ)?! ;I@L w`Fű ȱŘ8ec}i PH) ihHhݩ S08内ũ`ᠥ  ɛ G_L*c} Y0Р)` ܰ` Ұ) `e扥8内`` 檢B*DEJc}KLV BLV*© w *Ƭ8`)x~ ƫ ԤXYɜ𿤫ɛ GXc} L7ɛX`XY` .hhL::* *ɛ*ESD*`Bc}DELVɛ{a8 i@` BDEPHILV w -0来> - - -ĩ`젤  *c}`*  M  ƪL* ܦiiƅ /0Mɛ Gƥ 来iic}L˲  *젤 L,  * ƪLܦBDEHILVii8吅c})`&戱)%ȄĂei&@Lʳi(L{`Ő őc}`8ő`&%eiŌإŋ` Y` Y`H****)h)`ة"c}/ \ \ԩ01 Gyzyz ,ƹ)&&&iE jc} M 1Ь$)a{8 A [8@EL)|0 gh Mc}L´捥ɛ)x0L´ ɛ`H` *h G M8内 ii L´ /8嘥噰8c}吅 M8勅包mi ML`88吅 `8内c}``T `&u` ضi`H)hJJJJ`c}Ȑ 8L d8d 8 iii`ꝿ( 讀i(ic}L*8内凅 A`ii`ꝿ( 讀i(i`06(WET VAN OHM UTILITIE..6-@@6(SCHEMA'S HARDWARE..6-@@6(FRANKY/SOLAR } DEMO (HTT)6-@@6(TEXTVERWERKER ERG HANDIG6-@@6(UN-ERASE UTILITIE.. }Q% D:MENU2.COM@6(TEXTVERWERKER ERG HANDIG6-@@6(UN-ERASE UTILITIE.. @I / +AR@,(SORRY.../((TE WEINIG DISKRUIMTE(''(1>> POKEY MEI INg} DRIVE (#(#(2>> TERUG NAAR JUNI/JULI2)3"@I%D:UNE*.*4% D:MENU2.COM D:QUICK.TRBNd|