@L}#j5  $% l0?$)$$Hȱ$ ShL$ `e$$%` h?/ `  !I PR@1 YL I`! S S) H$ЙH 0}Џ$%`@ $% CC$$%Y%dI$% Q0%$%w DDmLp   % Jx)Lz xJ  (( o L (y#y)  [L< ( yL G0o T`ya y }(IBy [y'&C#%$a?( V V { wLL {a w}` V y#y})z&'LzA! ߰"x)-}| y" $z}zG@{{LL {08` k")};1k0 -G$Ș| SL! 9 y8(|()(0˥)Nk`$GȘ|}LS x)L }| L GzȘ}} |LL x)W>{Z   HHx)yH o hy  yhy$$hy%%y# V  }xL>{ L wJJaHJJJh) yLT J u (`  IBL8  N HM H`A  d LdJ })LJJLw!,"!,#@F  L ! 0E^  }^ E E7EȩEdE/EȩE # ! Vΐ )L   al n wya }?l7l?( ( ) w y'& R V LL n w ) V  L y # o   }E` , ny#) # V Ly#) {0BM݀L{ {ML  N| }L }}NLML [ fEqEHȱEqEhH 3Gȹ G KLHL GzHɛHL  L}FREE SECTORSy #H) *Gȩ GȽ(G GȌHyh%*J >G 6-C:,6-C:,D(}6-C:,'6-C:,56-%@>6-C:,Z, 6.,6-BBwd 6-nZ D:DECODER.COMxS-@E}10 ------------------------------20 REM ****TURBO BASIC***30 ------------------------------40 REM PROGRAMMA OM SNEL TEKSTF*}CODERUNNER september 1991Deze maand een ander soort CODERUNNER dan normaal....CodeRunner wordt namelijk in de de toekomst+} sterk uitgebreid. In het begin was er alleen de kursus voor mensen die nog met machinetaal moesten beginnen. Vanaf nu komt e,}r ook een kursus voor gevorderden.Deze kursus zal worden verzorgd door Yp Havinga...Er is alleen een klein verschil met de -}beginnerskursus...Yeb(Iep) programmeert via de ATMAS assembler. Zoiets is een kwestie van persoonlijke smaak. Assemblers heb.}ben zo hun onderlinge verschillen en voor en nadelen. De syntax van de ATMAS assembler verschilt slechts op details van die v/}an de MAC65 of SYN-assembler. Het zal dan ook wat dat betreft door iedereen best te volgen zijn.Naar wat ik zo verneem versc0}hijnt er trouwens binnenkort een programma waarmee sources van verschillende asssemblers kunnen worden omgezet.Dus heb je wa1}t gemaakt met de MAC, even door deze utility jagen en je hebt een ATMAS source en omgekeerd.Bij wijze van introduktie deze 2}maand dit artikel en het kursusdeel van Yeb + daarbij drie sources.Volgende maand wordt de kursus gesplitst in een beginners3}deel en een deel voor gevorderden.Let op !!!!!!!!!!!!!!!!!!!!!!!!!!!!!Nu volgt er een aangename schok voor de modembezitt4}ers onder de CodeRunners of hetzelfde voor de CodeRunners onder de modembezitters........>>> Het Pokey2-CODERUNNER-programm5}ers en kursus-BBS gaat zeer binnenkort zijn aktiviteiten starten. Wat is de bedoeling van dat BBS en wat is er zo bijzonder6} aan ??De bedoeling van het bbs is dat het een communicatie middel moet zijn tussen programmerende donateurs.Dus maak je a7}f en toe wat in machinetaal of turbo-basic of in atari-basic of welke andere manier van programmeren dan ook, dan kun je twee8} dingen doen.......Zoek en download bij dit bbs interessante routines, tips etc. van bijvoorbeeld bekende programmeurs of v9}an minder bekende modemende donateurs.....Zo hebben Yeb Havinga en The Missing Link reeds toegezegd een en ander te uploaden:}...Of upload zelf een routine die je ooit had gemaakt en die je leuk genoeg vindt om anderen een plezier te doen.......Oo;}k komen er andere interessante programma's in de download....!!Het gaat dus bij dit bbs om zoveel mogelijk zelf gemaakt wer<}k. Iedereen die een beetje kan programmeren begrijpt dat er niet zoiets als de goeie manier van programmeren is, de een doet =}iets zus de ander doet het zo. Schroom dan ook niet om via dit bbs een beetje naamsbekendheid op te bouwen......Zo kan ieder>}een wat van elkaar opsteken.Hoe meer we op die manier van elkaar leren des te meer goeie programma's er voor onze XL/XE in o?}mloop zullen komen...Glasnost in XL/XE land dus.....Bjzonder aan dit bbs is zijn specifieke doel...nl. programmeren.Dus g@}een advertentiekrantje of pd voorraadhok. Daar zijn er al genoeg van. Verder is het een echt 40 koloms bbs.Bijzonder is ook A}dat het BBS niet draait op een "prefab" bbs-programma, maar op een speciaal voor -dit- bbs geprogrammeerd programma. Het is eB}rg flexibel en de bellers kunnen invloed uitoefenen op het funktioneren ervan. Wil je dus dingen anders geregeld, dan is dat C} bespreekbaar. Dit bijvoorbeeld via de berichten of de chat als het zo uitkomt.Voorlopige tijden zullen zijn van 21.00 uur tD}ot 2.00 uur iedere dag...Inloggen doe je eenvoudig door het opgeven van je naam en een in het magazine vermeld wachtwoord. GE}een eindeloze procedures dus met allerlei vragen over ooms, tantes, computertypes en vakantieperiodes als je belt.Voorlopig F}wordt het wachtwoord :"POKEY"Probeer over een paar weken eens te bellen na 21.00 uur naar nummer :010 - 4227163 Veel ple}Beste John,Hier dan even een programma, voor gebruik in je cursus. Toen ik de cursus doorlas, wilde ik ook voor mijzelf ev H}en notities maken. Maar helaas mijn printer had ik even niet thuis, dus moest ik je verhaal lezen en met een pen notities mak I}en, nu kan ik me indenken dat er meer mensen zijn die dit willen doen, en zonder printer dit niet anders kunnen doen dan met J}een velletje papier.Met het bijgevoegde programma in Turbo Basic kan je een tekstfile van disk lezen en met een druk op de e K}scape toets per beeldscherm je notities intikken. Als je ipv de escape toets de -N- indrukt krijg je de reeds gemaakte notiti L}es te zien.Als de -S- ingedrukt wordt stop het programma en worden de notities bewaard. Na het noteren of lezen escape indru M}kken om verder te lezen.Het programma bevat de nodige turbo statements, o.a. het openen en sluiten van diverse files, en he N}t gebruik van put en get, repeat until en while wend.Ook het gebruik van procedures en labels wordt ermee gedemonstreerd.H O}et notitie programma heet NOTELEES.TUR .Ook staat het programma HEXDECVV.TUR op deze schijf, dit maakt gebruik van de ingeb P}ouwde hexadecimaal omzetter in Turbo.Ik hoop dat je er wat aan hebt, en ga vooral door met de cursus. M.Ri Q}epe Den HelderBedankt. Voor alle cursisten: kijk goed in het programma en probeer het allemaal te begrijpe R}n......Heb je vragen of eenaardig (voorbeel)programma, stuur dit dan aan Pokey ovv Turbocursus.John Marisbegrijpe uHallo cursisten...Langzaam maar zeker naderen we het punt dat we een groot deel van de instructue's hebben besproken. Het T}echte programmeren moet dan nog beginnen.....Een programma in elkaar zetten kun je programmeren noemen, maar het echte werkU} houdt meer in.Deze maand een paar leuke wetenswaardigheden.We hebben al eens gekeken hoe we het toetsenbord uitlezen. DiV}t is o.a. mogelijk m.b.v. een input opdracht.Het is ook mogelijk om via de GET opdracht het toetsen bord uit te lezen.Je kW}unt 'getten' uit een file(zie de vorige aflevering), maar als we rechtstreeks een get doen, scannen we het toetsenbord.GET X}K laat de computer wachten tot er een toets wordt ingedrukt. Als er een toets wordt ingedrukt komt in de variabele K de waardY}e van de toets te staan. Het teken komt (nog) niet op het scherm te staan. Dit is eeb handige optie bij menu afhandelingen.Z}Via het commando PUT kunnen we het teken op het scherm zetten. Echter, als '3' wordt ingedrukt genereren we een ERRO[}R. Dit is te voorkomen met de instruktie TRAP. We zetten de GET routine in een subroutine....100 REM VOORBEELD GET/PUT/TRAP\}110 REPEAT120 EXEC KEYPRESS130 PUT KEY140 UNTIL KEY=155150 REM RETURN WERD INGEDRUKT160 END170 --180 PROC KEYPRESS]}190 TRAP 190200 GET KEY210 ENDPROCDe REPEAT-UNTIL loop haalt een toetsenbordcode op, zet het bijbehorende karakter op h^}et scherm totdat de RETURN (Waarde 155) wordt ingedrukt.In de procedure KEYPRESS wordt een error 'getrapped'. Indien er zic_}h ergend een fout voordoet, springt het programma automatisch naar regel 190. Deze initialiseert de TRAP weer en op regel 100`} wordt het toetsenbord gescant.Probeer nu eens een toepassing te vinden waar deze routine in kan worden gebruikt. Je zou eea}n met wat laad en save opties een zeer eenvoudige texteditor kunnen schrijven....Een andere, maar minstens even mooie instrb}uctie is het MOVE commando.Met MOVE kunnen we een blok geheugen in het geheugen verplaatsen.MOVE 1000,2000,10MOVE ORGINc}EEL,BESTEMMING,LENGTEBovenstaande maakt vanaf adres 2000 een copie van wat er vanaf adres 1000 in het geheugen staat. Hij dd}oet dit met een blok van 10 bytes.Een heel aardige toepassing is een picture even in een string bewaren. Als er tijdens hete} tekenen iets mis gaat, kun je de oude picture gewoon weer naar het scherm 'moven'. Ook simpele animaties zijn met het MOVE cf}ommando te maken. De vorige keer stond er op de achterzijde een heel aardig programma van Sangit Parvat. M.b.v. het move commg}ando creeerde hij een schuin blok dat over het scherm heen schoof. Heel erg fraai gedaan.10 DIM A$(7680)20 GRAPHICS 2430 h}COLOR 140 FOR P=0 TO 90 STEP 350 CIRCLE 160,95,P60 NEXT P70 REM NU KOMT HIJ...80 MOVE DPEEK(88),ADR(A$),768090 GR.241i}00 REM HET SCERM IS NU LEEG...120 REPEAT130 GET K140 UNTIL K=155150 MOVE ADR(A$),DPEEK(88),7680160 DO:LOOPIn regel 80j} bewaren we de picture in een string die we daarvoor geresveerd hebben. In regel 90 maken we het scherm schoon.....Dan gaan wk}e wachten tot een toets wordt ingedrukt en deze ook nog eens de waarde 155 bezit (RETURN).Wordt in regel 150 de picture weerl} met een noodgang op het scherm gegooit.We kunnen natuurlijk ook achteruit moven, maar dan moet je voor het MOVE commando em}en min zetten. Als je ORGINEEL en bestemming door elkaar lopen (Van het zelfde geheugengebied gebruik maken) krijg je anders n}een gebied dat zich met een steeds herhalend byte vult. Op zich heel aardig, want op die manier kunnen we razend snel een geho}eugen gebied vullen met een bepaalde waarde.Achteruit moven doen we zo:-MOVE ORGINEEL,BESTEMMING,LENGTEZie ook het voorp}beeldprogramma dat ik ontving van de heer Riepe uit Den Helder. (bedankt)Ga aan het experimenteren met het movecommando, waq}nt je kunt er erg veel mee doen. bv. de inhoud of deel daarvan van de ene string naar de andere copieren. Zelfstudie is in dir}t geval een vereiste. Denk niet dat dit het enige is wat je met MOVE kunt doen. Ga lekker aan de slag...Ik hoop nog te hores}n welke toepassingen je gevonden hebt.Tot de volgende Turbo-cursusJohn MAris.r aan de slag...Ik hoop nog te horeXpWjABCTELLEABLN< B)Bg@c@B)B) A8 u} ;Av,PLAATJE 6-C:,6-%Av(;Av,PACK-PLAATJE2 6-C:,< 6-F;@,v}PLAATJE NAAMPTZ +@@d1(1(&Welk plaatje moet ik packen? (D:*.PIC)n ( ( x 4Hw}D:*.PIC ATLADEN VAN HET PLAATJET A @@C@Avx}@$ +@$$9U:@,Av MAAYTHET PACKEN ZELFT< 6-y}F:, 6-%@"6-%@,@66-@@<J6-%@T 6-F:,^6z}-%@h=)"AV)"r6-&@|%@6-%@A ="{}T 6-&9U:@,AvAY@4 MAT0(0(%Welk plaatje moet ik saven? (D:*.PIC)|} ( ( TSAVEN VAN HET PLAATJET @@&B@0@:TD%}} D:XMPLPK1.*SAVEN VAN HET PLAATJET @@&B@0@:TD%ÙÙ癙牟㟟ß}烙灟ÑßÓ癃灑ß癓瑙Ù}烙Ù}8|<>>p9y8<>xy|}yI~p8|x<99}<>}}}}}}}}}}}}?} <~`~<~ff`330 ff`````fff`330 ff`<|`|`}?```` ```f0ff`330 x ff`<~~~<00ff`}330 ff`0 x 0 f<~|<0ff`0} ff`ff f8f?ff`0 x ff`f f ?f | } f0f`0ff`p0 ff`~~<`~~ff`0 ff` ?? 0 }0 p f~|< >0 0 cff8f  c0 0 0 f`c}f f> 3c0`?`af|?`` x` a`f0` g`p0 cf`~0`~8}c0   f<~|~}yGaABCTELLEABLN<B`BB`B(# A3 } @d;Av,PLAATJEn 6-C:,x;Av,PACK-PLAATJE 6-C:, 6-;@,PLAATJE} NAAMT +@3(3((Welk plaatje moet ik depacken? (D:*.PIC) ( TLADEN VAN HE}T PLAATJET A` @@C@Av@$ +@$$9U:@,}Av MAAY"6-U:Ar,, 6-%6T@HET DEPACKEN ZELFJTT<^ 6-F:,h}r |6-%@6-%@@-@F:%@,6-%@ }6-%@A ="T9U:@,AvAY@4)T%D3:MA*:XMPLPK2.}TUR6-%@A ="T9U:@,AvAY@4)T%D3:MA*:XMPLPK2.zier,Jack de Bruijn.KEY"Probeer over een paar weken eens te bellen na 21.00 uur naar nummer :010 - 4227163 Veel ple* IDEM ALS SCROL2.SRC, MAAR NU MET * EIGEN DISPLAY LIST * EN EEN BEKEND GEINTJE IN DE * HOOFDLUS SCREEN EQU $BC40 HSCROL EQU } $D404 SETVBV EQU $E45C SYSVBV EQU $E45F DLST EQU $230 RTCLOK EQU $14 TEXTADR EQU $CB ZP EQU $CB ORG $A800 * INTIALISEER }DISPLAY LIST LDA #DL:L STA DLST LDA #DL:H STA DLST+1 * BEGIN VAN TEXT IN (TEXTADR) LDA #TEXT:L STA TEXTADR LDA #TEX }T:H STA TEXTADR+1 * VERTICAL BLANK INTERRUPT INIT LDA #6 LDY #VBI:L LDX #VBI:H JSR SETVBV * NOG EEN KLEURTJE LDA #1 }5 FELLE STA 709 LETTERS * GEINTJE IN HOODLUS MAIN LDA $D40B LINE COUNT ASL ;*2 AND #%11110000 STA $D40A WSYNC STA $ }D018 ALS 710 ORA #%00001000 STA $D01A ALS 712 JMP MAIN * VERTICAL BLANK INTERRUPT: * COPIEER 40 BYTES VAN (TEXTADR) * TOT } (TEXTADR)+40 NAAR $BC40 * EN VERHOOG (TEXTADR) * OM DE TEXT NIET TE SNEL TE LATEN * GAAN (DEZE INTERRUPT WORDT 50 * KEER PER } SECONDE AANGEROEPEN) * WORDT ER MAAR TIJDENS 1 VAN DE 4 * INTERRUPTS DAADWERKELIJK IETS * OP HET SCHERM GEKOPIEERD. VBI LDA } RTCLOK VAN 0-$FF AND #%00000011 VAN 0-3 EOR #%00000011 VAN 3-0 STA HSCROL CMP #3 BNE EXIT * COPY TEXT NAAR SCREEN LD }Y #39+4 COPTXT LDA (TEXTADR),Y STA SCREEN,Y DEY BPL COPTXT INC TEXTADR BNE EXIT INC TEXTADR+1 EXIT JMP SYSVBV * EN D }E TEKST NATUURLIJK! * DEZE MOET NATUURLIJK NIET IN ASCII * MAAR IN INTERNE CODE GEASSEMBLEERD * WORDEN! TEXT ASC % } % ASC % % ASC %EN ZIEDAAR, DE PROG% ASC %RAMMEUR HAD DE EERSTE% ASC % VAN VELE SCHERM % ASC } %ROLLERS GEMAAKT! % ASC %HET SPREEKT VOOR ZICH% ASC % DAT HIJ ER HEEL % ASC %TROTS OP WAS EN % ASC %BLA BLA BLA.... % }* EN NU ZELFS MET EEN EIGEN DISPLAY * LIST!! DL DFB 112,112,112,112,112,112 DFB 112,112,112,112,112 * DAT WAREN ELF * 8 LEG!t}<=  DLISSCREENSCREENSCREENSCREENDQXDAWIYZWAR<@$}   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:HEX*.TRB"@% D:NOTE*.TRB$}"@% D:MANUA*.*"@% D:THEWALL"@%D:KB320!"@!% D:XMPLPK1.TUR!"@$}!% D:XMPLPK2.TUR]"@!@A3B7tA]6-?:C: hhhLl, DEC CURSUS....6-@@6(NOTEBOOK CURSUS.$}...6-@@ 6(MANUALS ALGEMEEN..6-@@6(THE POKEY-WALL DEMO'TJE..6-@$}@6(SCHEMA 320KB HARDWARE..6-@@6(EXAMPLE 1 PACKERS...6-@@6(EXAMP$}LE 2 PACKERS...6-@@6(LITTLE DEMO HTT.......Q% D:MENU2.COM@6(EXAMP$mcSADBSTLNPALNEBUCB2#@  M}dHHHMI0ЩЍ Щ Ѝ MIЩЍ hhh@ UTILITIE..(khHH_ L-̥L9i@L8 Lhh˩͢(ɛ ( rLE r`ɛ,}L'  `e˅ː̢(`8 Lhh˩͢(ɛ ( rLE r`ɛ,90}(%,00}6anuithet-%.5*/934)#+\]3#2/,,%.+./00}-%.56anuit0!').!*/934)#+\]3#2/,0},%.6anuit+,%52*/934)#+\]6//2'2/.$0}+,%52+./0 */934)#+\]!#(4%2'2/.$+,%520}0}0QRRRRRRRRRRRRRRRRRRRRRRE|452"/#52353(%,03#(%2-|QRRRRRRXRRRRRRRRRRRRRRRRRRRRRRXRRRRRRE|4}*oystick^_voorhoofd menus|ARRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRD|||*oyst4}ick\regelomhoog||*oystick]regelomlaag||&irekeuzemenu|ARRRRRRRRRRRRR4}RRRRRRRRRRRRRRRRRRRRRRRD|||*oystick\paginaomhoog||*oystick]4}paginaomlaag|ARRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRD|||*o\&ire+leur4}omhoog||*o]&ire+leuromlaag||*oystick\+leuromhoog||*oystick]+leuromlaa4}g|ARRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRD|㉀瀰|ZRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRR4}RRRC|ARRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRD|㉀瀰|ZRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRR4^^<s3>00x|73>00x`c6<9c` 33c366fffg~33>00xgfffff<111118}{!!\]_ED!EOHI B V`} 8} !  ө)6L]""$$ (p%8}J[WܠjeC /D%Zub2gTSt$8®݊Ò2% 5RŢt8}d.’$3@X7t5w5$?## $#L+D:*.*S:C:P:$#.#) `:#(6ENeU\l؏&/ؕ؄sأ$L8}ENeU\lأ$8آǔƐƉƐƇ4cY%٦rULۉCۄړp^gyض%iwܸJڅ*ܣ$ڭڞجئأأ$8} ,(""(222000000..222222222222222222222222222222**22*22&222$2222222222 ,(""(08}000000--**2*&22$2222222 V`hh@,lHH$HHHHHHӍl"H$H8}Hl $`GHFH\` ` 4ӭ l 4Lq ӠԪӅԆL} Ӡ L( ӑ)8} ` b% +L:#HH 0 HHLj%ӥHlL{ee 8eeee8}Ӧee褢%ƚƜ`88夅奅8夕8}奕Ӡȱȱȱ㦢`L+`8` .E)))8@8e0 *څۅ8}܅݅ޅ߄ԠF0y"ޥy"ݥy"ܥy"ۥy"ڥy"و0ǠF0y"ݥy"ܥy"ۥy"ڥy"٥y"؈08}ǠF0y"ܥy"ۥy"ڥy"٥y"إy"׈0ǠF0y"ۥy"ڥy"٥y"إy"ץy"ֈ0ǠF8}0y"ڥy"٥y"إy"ץy"֥y"Ո0L-`8`E)))8i@0 *ڄԠ"(8}"!""" "L**""""""&О"("!"""8} "L**""""""&О"("!""" "L**"8}"""""&О"("!""" "L**"""""8}"&О"("!""" "L**""""""&Оd8}"("!""" "L**""""""&ОL-6"e""e8}""e""e""e""i""}"""}"""}"""}"""}"""}""ǭ"m"""m"""m8}"""m"""m"""m"""}"""}"""}"""}"""}"""}""ǥՅօׅ؅مԅՅօׅ؅`8}` ` ` `80 `ԥՅ +.JJJJ)iFiFi1FicFi'ȐȦoFiUȐF8}iiFi#iFiGi Fii@F iiFiiciՊFigi'iՊօשBL-`I)8})83Ԥԥդե֤֥פץؤإ٤L,K6"ХL--L--L--8}E0:e٥eإeץe֥eՐ؅٥ׅإօץՅ֩L-8٥إץ֥հ'I8م٘8}؅ؘׅטօ֘ՅL-ؤm\G0Q@Ն֩م؅2եمֆשم"ե؅֥م׆ةեׅ֥؅ץم8}؆لԘ)q +` . |. &7i |. ,%!L?.`刱䈱㈱∱ሱ8}`ԅՅօׅ؅م`ԍՍ֍׍؍ٍ`ԍՍ֍׍؍ٍ`L.L. Խսֽ׽8}ؽ` L%/`ӽޕ &ԅ)@إ)JJJe)e - M 1.8} &Je0F 2 . /L(8`@ԠՈքׄ؄` . |. , . . |. , #/L(8`0 I@ԥ) 28}f / . & r 1. #/ &?P , .Iiԩ +)ԅ ,ӽޕL(`8`$8})Ԧ61718191:1;1 (ť)8@0$Յ)e)e -F . / , . &1 1. #/ &8}F I`U9>`D'RFuCU?b9dYdg@W2@?tS)%)@0)%ԅԢ / . &G  1.8}Ӱ6 #/ &.ӽߕ ,ԅԥ B1 (`8``0?i? . . / , #/ &ԍՍ֍8}׍؍ٍ . . ( / , O2 / ,0 .JeF 2`L+) .e٥eإeץe֥eՊi8}؊؅٥ׅإօץՅֆե1ԥ'JffffJffffJffffJffffم`ԩ&&&&*&&&&*&&&&*&&&&8}*`Pi`)JJJeԅԘ)Peԅ`եԆ8@EB)JJJeԅԥ)PeԅԘ)3eԅԽ3eՅ՘)JJJ}3ԥ}39}`)JJJeԅԥ)PeԅԹ3eԅԹ3eՅդЧ` 0@P`'Nu pX@(#d,X L(  兢09}襙 bɥ⥋㩀 50ɥ0DȱȱȄ   ik#ZMkVgğe拰ㅋ⅊9}0 eee拰 L f5дƨħ 4LY4 f5К,樥ŧH 4h h5L4樤ܱ.* O %30  59}Ԅ +(fԤԈ`ř嚰Ԥ`ڥۥड़0-԰eڅڐۈ0eeL+58` O9}#`,#5  6`]5 6DE 68DHEIHI V0$ 6Sл B V,#9} 6` $#LllBHI V0HH V0Ԩh``a$%Ȏ$$xө$Ѝ$ ` `@9}X a)6 Ӆʢ ʎD  _ɠ %` ɩHH `өL: g9}% D:MENU2.COM өjJHH`ՠԢӱԙ!ӹ!`֝DEIHB V0YڝDa۝E9}օܥׅݥܝHݝI V0+Ӡڑڑ0`l `  䅠 _ɠԐ9 }e拢 &L &Lħ © ¥4 䥝ň剰' k ɀ8@4= LY ĩ`OJ ]J9 }?L˜ KԪȱLRHHצ R, hhLRHHHHHH /0ȑȑޠhhhh9 }hh`HHHHHHHHHH $H bɐhȥLHhhhhLň剰)9 }i桰` )``L(兢ħ #$ x Hҩ h$襚ҥ 9 }` UV #T` ` `,H ¥ȍ` JKhLŢ  #)I L ¤Ȣ`L¦ ¦ L9} ½J*K+ $LąLĩ …L~ …`H Ġh é`,H hH Ġ  ĭ 8}}9} L n [h`LkL © 8倝偝 Ġ  ĥ󥃅  Lĩ 9}LHé éLH#h ĩ`H hKJ L+ , H hHHħ s hKhJ  Lĩ# qL9} ĩ ŘL ũ& QŽLM " ĽNL  ĥԝL՝M  ĥԝN%LV  ¤ħ` Ťħ` ƪ 9}Ċ Ťħ` ¢`届 x݅ L ĽCӠɀ L]Ɉ L] Ln LŠ9}IHEDBL$HH hh +L `ħ LĢl ¦`YDAER ԅՅ֦9}󅗄`L+ ¢p 0 Hp hɈL` ,#,$,!Lé ,H ĥDEԝH՝Ih 9}L©L $`L© , k ĩԅ  + ĥ 夨ħ`2ƪƪ ! A!Ƚa!Ƚ!Ƚ!Ƚ!9}!``氤hhL1@$ƪư 0 0 n$P`L+FҐ֥װ綾إٰو LǠ9}Ffؐ ee&ee* &eeeԪeըee$.ƪ@!Ƚ`!Ƚ!Ƚ!Ƚ!Ƚ!`9}!!!!`!@!^!` Ȅ 8 n奱 ٥Lǥ֤צưĘ=ŗ78֪א&9} eԥe$`L: L ԅՅօׄ 1פ& ٤ţĢԅeՅe8包卅9} ]& 8Ԩժ%אְ`ֆL夨ħ` FҰg8&0ei֥i0Tׅiإi0BJe؅eم9}0&ffff&0 &0 eeL+օפإ颎 %8包ԥ卅 L ɥ9} ȱъŠe拰8``,ªȱȱI ѝ3ȥLɥHHO]9}  ȥe暰Х ȥL+ʅȱhh`Lħ OԪȱԨ``L :9}0 `L(奷 bɥ󥋅ȱȱȱȄ#鈄0B8eeŶ9}ɛ,@LBˤ,ɛ`L?± ˤ樱f Oƨ x݅ + ~ [ˠ O樥0# +  L˥9 }`LL :ɛ,$PH h $P润䧰 ʐLʦ䧐 +` ʐL3L9!}BˢԝD՝E֝HםI L 兢L]& 兢L% ,L6 ,L6 &L6 (L6妪@!I@!` ؐb`P KW ؐRB9"} ؐ=;G ؐ4@ ;+ƪƪ@!=A! (ƪƪ@!A! ƪ@! ,@@檦@!`!!!!!!`ƪ@! ǩ9#}jҤ /L.٤ƪƪ@!@!, 舽`!`!!ـ!!٠!!!!!`@!jI*` . ֪ (9$}ϰ`(8` ֤ׅԄ +҅L: Lyƪ8吪周Ly sũ + ŐL Ly sŠԄ h 9%}L} L}٩    e쪽pLyL( + ڥHJJJJ h) 0:i`  ک; n +ȱ)ȥ%9&}ݓ Lh ԍՅԄׅ֩өL:ƪ?Ԣ )ɠ )  -L &Lڦ@!)@!` n)8@9'} -L:` / n)8@I= n)8@/ѩ֔$ሄ ,L: + n 0L9(}8 n 0L8 n H1L8 n /L8 n /L8 n D/L8 n 1L8LLإL( &)ԥ)8@JjH9)}@MC)JJJe)e .F / .P . &F . #/ &L.L(HHHHHH /hhhhhh 9*}& Y/hԅL:,` L _ܘ%ᨥ%Ly _ܘᨥLy _ܘEᨥELyٚ<|'g 0L`9+}!!!!i ` &LإL٥LyɥLzvmZ ƨ!0 4 䦵 ¥ԝD՝E֝He9,}םI Lܤį eį L` x݅ƨLLLܤ ©`#ۢ Lĩ_,9-}ߤ ڄ . eڅԥeۅհ"8څ֥ۅא8ܥݰL۠Q%0ԅإՅ٥ަ0%Q9.}% L-ե0LޥڤLyمօנ6&֐ eו`L( Hħ hբՅ `ޥԢ `ޥՅ9/}&&֐eܥeېڈ 7 \ 7 j N \ N j$0!ee80å/8ܥ۰uڕ90}0eUiV`TUV`8UV`eTi`8TȢ` $L„')Q ȱ891} e新`8`L齀).Q Ӱȱ8e新 O :L䅫# *$Ŭ92} Ʃ HL"䥫ș L` Ml/#樱0ZS'`ȱȱȱȱȱȱȄ`ȱօȘuԩׅu՘e֨҄93}`樱I 屝Ҡȱȱȱȱȱ` n$҅J?eԨe` L 兙 兛 n %3 Ԥ` 94}, , , L檤 ٙ!ؙ!י!֙!ՙ`!ԙ@!ә !ҙ!` 䤪ƪ!ٹ!ع!׹!ֹ`!չ@!Թ !ӹ!`ƪ!95}!乡!㹁!a!A!Lp ґȥӑȥԑȥՑȥ֑ȥבȥؑȥّ` ***j)e)e`ʭȅi96}ȅiȅȩȩ Lfإ  4  \ +] ¥򄟄97}   넨ɛ$0L祔 Z f0#ڠ쩀 ߩ6ei$0 녖چ + !598}ɛȑ @膔7 ɛ 襔!ɛL! _ɩ8$IȢ %e99} &!$P* &8孨客 "&$ 1L~ L~ &L _ɰe拢 &L~ +0 %30Ԅ9:} 襡L 9:枢0 O L :H9Hhh tLHH`9;}hhLCL馩`ʆLC枢0ְşLC`A枢Ɣ!L!L9<}!T 򈩛LQLD ijq ߰,iŰD VD8` 覲`8` 넬 S( +饰9=}0 S0:$$ p8`$p (ȩ@҅ҥ򄬤 ߰ A L8򨢄 %Ӥ򈦬ʽ ʽ %9>} +HH 屝EҨhh$P0Ƭ 襯I `_A[`8`80 &Ո9?}ԅ` 넬$ +  + h갳 h) + , 褔ԙ!` "8` 襔 ɛ "ȱ"9@}嫤!`! `) ɛ%)a{)_0:A[_դ`RE͕DATINPUԑCOLOҝLISԖENTEҚLEԛI9A}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ԐRA9B}REAĨRESTORŐRETURΩRUΐSTOАPOХGEԫPUԑGRAPHICӒPLOԒPOSITIOΐDOӒDRAWTϓSETCOLOҬLOCATŔSOUNĦLPRINԐCSAVŐCLOAĚERR9C}OR- DPOKœMOVœ-MOVŪ*ƐREPEAԑUNTȊWHILŐWENĐELSŐENDIBPUBGEԒFILLTϐDϐLOOШEXIDIҖLOC˖UNLOC˖RENAMŖDELETőPAUS9D}ŖTIME$PROøEXEÐENDPROÑFCOLOҪ*̕-RENU͒DEDUMЪTRACTEXԖBLOAĖBRUθGO*’PAINԟCLӔDSOUNCIRCLū%PUԘ%GEԚ9E}GOTGOSUTSTETHEΣ<<>ުNOOANĨ<<>STRCHRUSASVALEADATCOPEESIRNFREXLOCLOSQSGA9F}BINPADDLSTICPTRISTRIDPEE˦INSTINKEYEXOHEXDEDIFRATIMETIMMOEXERNRANTRUN%%%%GOUINSTERER+,9G}%5&6(+8,<Xk`fghilm^deDѳHc?,Ќ,е,Y_Ҳ+7,/9H}01 2!3"4Ɛ"-"."-؂ٿ֐ː9I}ĐאŐbj+9,+;,ʐͭ9J}ͭ@ABC\=>[<+:е<,&%rvnnxc<9K}\-78s_XV+@D&0d*"'2GJh 9L}NRl~&2 +饰(+VWZ ]a8`L`  ¤ħ.H h L5 䄡 9M} 䅭 bɠ04Ů .ŭ%) e拰 ĩ L+Ư0 Le9N}`毤Hɛ) h`  L ȱ R @ʆ ȱȄ Iğ` :62T F9O} :7 8 Lbԩ- L 8 8,I ɨ 8L.UH `ƨh $ %3   + \L L 8󅯩9P}" ¥ 8" ©" Ư" L8q :Z#]abj(=) W같  L樤ħ`hh`H Yh9Q}Z L<>EO ƹƹ0`H f5h`I&` =? FQA` L񄳱ȱI 9R}䦐Ħ ąŅ T k /䧰 k ,Ǡ ĩJH ThĥȑĥȑĦʊȑ`HHą9S}ŅH h hhhh ȱIELZ L`ȱI Hȱȱȱȱȱ 9T} , h @ $L+L.*ȱȱȱȱȱjEE `EjI `e`ħ ¥9U}0 ` Lk 䦪`! 䧰L A@L `I&`L ©؅ L9V}.0`STOPPED륺 bɠhhL :ʅ` k %3Hƹ h5h`hbjH h9W} #ԤLQ #LLei  `LԑȥՑȥ֑ȥבȥؑȥّ``䈥9X}剰#)iiLɠL4űI&`048ץğ=ȱȄ 9Y}`L  L0e拠0ȱȄL  䦪`!' >?L (<ж`!  $Л +`,LőŐ78Ƒ8 Ƒ`8` - PѠ9[}`,,L L PQ 8,L ȱI ѝߠȱ`9\}ԩ,L E  $EL+L],,,؍ 0âLɀL ©7 F󦹩 RbL g 9]}0g `Ո V fL{Ն + +􅕄L AT LINE?BLOAMEVALU>#VAR$LE?DAT>3276INPUDISTACOVERFLO?L9^}IN?FOTOO LON?DE?GOSUGARBAG?CHMEͣ?LOA?NES?WHIL?REPEA?D?EXIXPRO?EXE?PRO?IS OPE?DEWR ONLCMNOT OPEΣRD ONL9_}EOTRUNTIMEOUNA!FRAMCURSO!OVERRUCHKSUDONMODNOT IMPRA͠D?>#FILEDSK FULFATAL I/FILENAMPOINLOCKEDCM9`}>DI?FILPOIN?APPNBAD SECTORӥHՄ +h & .hԩ + ,҅L: ƪn (@Մ$ 0`9a} 0` 0LoH - . /h &@Յ՘JJJJ X) 0:i`AVC2 sŠ 5  <)  9b}< L L + e +e`e`&&&&&&eee` 9c}&&eee&*`` 兙 䦪!0 4 ۄܱ **m ݤܱEۅڦڱ=9d} ܥeƥiեLN@ ` **)]` 00`` ( ((((((((9e}8`W)ߥ & &e &߽řِ׼JJJJ&eXޥeYߥ䥛 9 FfЎᰈ9f} `  M 8*` 兙 󥐅i祣L{ &9g}L  0 & L ȑ & L; # )ȱ L 9q}BDOS SYSC*)NOTEBOOKLSTB*CRSEP91 TXTB GPOST TXTB!SLES TXTB tXMPLPK1 TUR>~SCHEMA1 PICBXMPLPK2 TURBSCROL3 SRCBMENU2 COMBAUTORUN COMBDECODER COMBHELPCR TXTBHELP TXTBAUTORUN SYSByNOTEBOOKTRBHEXDECVVTRBB!CODERUN B"TURBO CUR THEWALL BMANUALPRATBBQMANUAL TXTBBjABRA TXTB SCROL1 SRCB SCROL2 SRCWALL PICTTRBEAT COM>SCHEMA2 PIC>@SCHEMA3 PIC~KB320 kDEMO COM )ȱ) )ȱ 8ƣŐő0eސ`ƙ8ް`)ȱJJJ9r}```=`]``` E߭H Ġ} hL±&Lv`[  ȱ R9s}]  L L  䅠 bɰhhğȱȄ L l"0e拱LjLx`[  ȱ R8lE SCANLINES DFB 2+16+64 DFW SCREEN * GR. 0 REGEL+HARDWAREMATIGE SCROL+!! * EEN LMS!! WAT STAAT VOOR LOAD MEMORY * SCAN. KL!u}INKT MOEILIJK, IS HET NIET: * DE COMPUTER MOET WETEN WAAR HIJ DE * DATA VOOR DE REGEL VANDAAN MOET * HALEN. JE RAAD HET AL, D!v}E VOLGENDE * TWEE BYTES UIT DE DISPLAY LIST ZIJN * HET LO EN HET HI BYTE VAN DAT ADRES. DFB 112,112,112,112,112,112 DFB 2+6!w}4+16 DFW SCREEN DFB 65 DFW DL * VERPLICHT AAN EINDE. (DOE MAAR ES * NIET, KUN JE LACHEN)!x}E. (DOE MAAR ES * NIET, KUN JE LACHEN) 6: TITEL_INIFILENAMEFOUFILEREAKENOTITINOTE_REANOTITIE_SAVSLUITETENOTITIEFILENOTEFILENOTE2FILE2FOU=z}TITIEFOUT_DATFOUT_DAT$<\;>::C>LA : @2 ={} '(<P2? T****TURBO BASIC***T(""PROGRAMM=|}A OM SNEL TEKSTFILES2!!TE LEZEN ZONDER EEN MENU OF< DAARVOOR BESTEMD PROGRAMMAFTE GEBRUIKEN.PTBV TURBOCURSUS=}} POKEYZDOOR M.RIEPE DEN HELDERdTnPxP  @@`<`P)=~}"@'PA"@xPA`A="@",P6% D:MEN=}U2.COM@TJOT ^Eh)@r%"F:@,!@ *"@2%G|,"F:@,!@0*"@2,*A=}U*FQ]@QTO  =TERUG..NOTEER:6->@'=})*ANDERS NIET OP SCHERM6-%@67,.>:,&?0Q:TDON((GEEF FILENAAM VOOR NOT=}ITIES:D:X 6.D: b67@ DRUK OP EE=}N TOETS!H)R`\  DIRECTORY D1:f p HD:*.*z   QTO` ) ((  EIN=}DE NOTITIES,DRUK OP EEN TOETS)`QT]#>0ONBEKEND"$A:7@<@,,"l.=}-@@#8 ESC CTRL-2(BEL!)B FOUTNR.:L6.ONBEKENDVA`?j// 'DRUK OP EEN TOETS OM OP=}NIEUW TE STARTENt)~%]//128 //138 =}䠡//139 ᡠ//140 //142 =}𮡛//144 򡡠//162 롡/=}/164 䡡..170 ONBEKENDT O`I=}. &PLAATS DISKETTE VOOR NOTITIE BESTAND!I(EN DRUK OP EEN TOETS..()2 < @@F-=}@B:,P*@@:7,,Z dnQ D:NOTE*.TRB)2 < @@F-<H TITEL_INIFILENAMEFOUFILEREAKENOTITINOTE_REANOTITIE_SAVSLUITETENOTITIEFILENOTEFILENOTE2FILE2FOUA}TITIEFOUT_DATFOUT_DATHGETALUITGETALVLAINVOEEINDITITEINGETAHEX_DECIMAADGETADECIMAAL_HEUITGETAA}{@@#C A}cA@  @:; =l<< A}T""|HEXADECIMAAL NAAR DECIMAAL|""| EN VICE-VERSA OMZETTER |(""| VOOR TURBOCURSUS POKEY |2""| DOOR M.A}RIEPE |<""| PLUTO SOFT DEN HELDER |FTPTBV TURBOCURSUS POKEYZDOOR M.RIEPE DEN HELDERd;@,A};@,n`x"AR@"CURSOR UIT$A@d$HOOFDLETTERS$@$HOOFDLETTERSA}6-@>"@PP?`'AR'CURSOR WEER AAN% D:MENU2.COMTOA}P-@@,, #In te voeren getal ex of ecimaal )-@@""@r)"A,A}Geef Hex.getal:$6P@AJ"@h)"ATGeef dec.getal:^PhArQ|TO-A}@@ toppen of oorgaan D)"@)"A6-AQTO 6-A}\:,-@@  Ԡ̺QTO& 6.[:,0-@@ : ԠA}̺$DQNTXOb-l11 (̠Ҡ̠ΠŠv00 (ϠԒA}ΠҒ-@@-.. &  -@ A}00 (ϠϠӠْQT%@%KANTLIJN OP 0;@ ,;@ A},;@ ,;@ ,;@P,;B,.. & PROGRAMMA OM TEKSTFILES SNEL TE LEZEN$$  EN GELIJK NOTIA}TIES TE MAKEN // ' GEBRUIK: ESCAPE OM NOTITIES TE MAKEN!++ # -N- OM NOTITIES LEZEN // ' -S-A} OM TE STOPPEN M PROG.* 4// 'PLUTO SOFT DEN HELDER> DRUK OP EEN TOETS!H)R`\  A}DIRECTORY D1:f p HD:*.*z   QTO` ) ((  EINDE NOTITIES,DRUK OP EEN TOETSA})`QT]#>0ONBEKEND"$A:7@<@,,"l.-@@#8 A}ESC CTRL-2(BEL!)B FOUTNR.:L6.ONBEKENDVA`?j// 'DRUK OP EEN TOETS OM OPNIEUW TE STARTENt)~A}%]//128 //138 䠡//139 A}ᡠ//140 //142 𮡛A}//144 򡡠//162 롡//164 A}䡡..170 ONBEKENDT O`I. &PLAATS DISKETTE VOOR NOTA}ITIE BESTAND!I(EN DRUK OP EEN TOETS..()2 < @@F-@B:,P*@@:B}@ D:HELPCR.TXTBC@AH6-S@y Ap APO+@@E} D:ABRA.TXT@C@BO6-U:Ar,6-U:Ar,@U8A8A%)8A8E}6-?:A6,U6-%+U:A,&,&A A AO+@@ D:CRS*.TXT@C@E}BO6-U:Ar,6-U:Ar,@U8A8A%)8A86-?:A6,U6-%+U:A,E}&,&A A0 6-6-6- +PKK6.A |𠠠| || |ᠠ| |POKEY E}| 7-@@U@367<,.>:AU,7 T LOOPTP"%-@%( E} ,P6-@(@1B2H@R%9%@16-@"J<T M@^>6-R:,E}>6-+"@,$@&+"@,$@h3"@)"@39C:,%@r%%!@!*% @5%E}6-%|9%@=T:,"O6-&@"!6-%'@-"@?B2wO% D:MENU2.E}COM%@b AO 6-6-6-QO 6-6-6-QO 6-E}6-6-QO 6-6-6-Q&O0""9U:@,%@A:9%@D<N!6E}-R:,!6-T:,X"@bYC6-+!@* @,$@`&+!@* @,$@`OYM@E}l%%!@G*% As%6-%vB2H"@R;16-%+"@,$@@&+"@,$@@;ME}@@"A;16-%+"@,$A&+"@,$A;M@@T6-F:A ,H6-%+"@E},&+"@,%+",&+"AU,TA AA !6-  6-""9U:@,%@AE}@j"Ar6-F:A,T6-%+"@,&+"@,%+"@,&+"AU,`AjM@ AE}="@R*" Q*T4O> (}POKE 580,1H'@@d'B7t@dRKAR@'AE}@9A @K@\=-@=(#MENU PAGINA KLEURfQpTzE}O&6-F:A,&@&BByQA@'AY@F9B2w@E6-@Q6-@RE}6-$AV%A#-%A'# !B2H!B2V@QTOB2wE}% D:MENU2.COMQ% D:CODERUN# !B2H!B2V@QTOB2wD5TgBREAVRGPOSTLESHELPOPDRWINDPIJLSCROMINSCROMAXSCROPOSLEHELOPDPIJPIJLVSCROLHELLOPDLLELPOSPI}SCROLPMPPYCHELCURSUOPDRACHPOSEXAMPLVRAGEEINDPXPCOPEXMANTTXTTXLPODPODABPQBRCI} I}C?@? ?I}!@"?#$D%HG&'()*+,-./0I}123456789:;<  T INI}ITT(7PA+A 7TRAP 14102;@,<ss;A,;@",;A `,;API},;A0,;B,;@ ,;@ ,;@!,;@,F'6-6-'6-A `P> 6-C:,6-CI}:,6-C:,'6-C:,56-%@>6-C:,Z, 6.,6-BBwd 6-6-iZ D:DECODER.COMI}xQ+@@ D:HELP.TXT@C@AF6-Q@Q+@@ D:POST.TXT7I}6-AFC@Q@U8A8A%)8A86-?:A6,U6-%+U:A,&,&A I} A6?*@@ D:LES.TXT?C@B@6-U:Ar,U8A8AI}%)8A86-?:A6,U6-%+U:A,&,&A 6-6-6- +PKK6.A |I}| || || |POKEY | 7-@@f@367<,.>:AU,7 T LOOPTI}P%-@%( P-@(1B2H@R%9%@16-@"I}< M@>6-R:,>6-+"@,$@&+"@,$@"3"@)"@39C:,%I}@,%%!@!*% @7%6-%69%@@=T:,"JO6-&@"!6-%'@-"I}@?B2wO% D:MENU2.COMT%@b^ AhOr 6-6-6-|QO 6I}-6-6-QO 6-6-6-QO 6-6-6-QO""9U:@,%@AI}9%@<!6-R:,!6-T:,"@YC6-+!@* @,$@`&+!@I}* @,$@`OYM@&%%!@G*% As%6-%0B2H:"@RD;16-%+"@I},$@@&+"@,$@@;M@N@X"Ab;16-%+"@,$A&+"@,$A;M@lI}@vT6-F:A ,H6-%+"@,&+"@,%+",&+"AU,TA AA !6-  I}6-""9U:@,%@A@j"Ar6-F:A,T6-%+"@,&+"@,%+"@,&+"AUI},`AjM@A="@R*"QTO (}POKE 580,1'@@d'B7I}t@d KAR@'A@9A @K@=-@=(#MENU I} PAGINA KLEUR Q*T4O>&6-F:A,&@&BByHQA@'AY@F9B2wI}@E6-@Q6-@RR6-$AV%A\#-%A'# f!B2H!B2V@I}pQzT`OjB2Ht #A~-@@ (} "((-@@ I}" ( "(("(DRUK DE JUISTE TOETS...%((()G *(JAMMER, VOLGENDE KEER BETER.-@D(HMMM, NII}ET SLECHT.GA((DRUK RETURN...)AUAP PQ MET UNLOCK"D:*.*" LOCKENA- WI}E ALLE FILES++B- WE DE FILES DIE BEGINNEN MET EEN D(C- GEEN FILE,672 DIR<A- GEEFT DE DISKINHOUDF((B- IS I}EEN VERKEERDE TURBO-OPDRACHTPC- WIST EEN DISKETTE,65Z!!STUUR JIJ EEN PROGRAMMA OP?d A- NEEn B- JAxC- MISI}SCHIEN,66%OB2w% D:MENU2.COMQ D:TURBO.CURP?d A- NEEn B- JAxC- MISHX ;Av,;A,m +AR@1ACA U-M}@@m(ULTRA SOFT PRESENTSr-@@!M@-A 1 ;MAX-@6@M}bM@nA r (j +AR@1ACA U-@@j( THE PM}OKEY WALL2r-@@!M@-A 1 ;MAX-@6@bM@nA r  3&gHARA\ 6-ff 6-gp@zGAF-g @$(6-i$d:i,MR }2f@@@ M'h2 -f @-g @ g-gB:, (7<,R }Mh$ . 86-U: @,% AB Ad AUL<V6-+H:f,!?,`-f @j:%g @R }tM~ 6-%g 2f @ @ @Mf26-+H:f,!?,- @6g9R }&@ @M 6-&g 2f @ @ @Mf2 =F: Ad, AUCC9C:(R}3w3angit0arvat(it+ey, Ad @@ Ad AU( A# @2`< ARgF22(*R} We gaan een beschrijvingen-bibliotheek P00(( opzetten en verwachten dat we er velen Z00(( een plezier mee doen, wantR} aan goede ! d00(( (tweedehandse) software is (toch!) nog n00(( steeds goed aan te komen, maar aan de x00(( erbij bR}ehorende beschrijving vaak niet (00(( Dus als u een beschrijving bezit, die 00(( (nog) niet in de lijst voorkoR}mt, en u 00(( wilt deze ons ter beschikking stellen, 00(( aarzel niet en doe dat dan alstublieft < -ghR}6-+H:f,!?,$ Ae(6- AA- AF:,Z A(Mf  "2f @R} @ @,Mf6442f @ @ @$+F: Ad, AU,@ -ghJ$$6-+H:,!?,$ AeR}T(^6- AhAr- A6g|F:,Z A(Mf  2f @ @ @R}Mf2=F: Ad, AU Ad AUCC9C:(, Ad @@R}`Y @fWRY @!fAY @(fPYf @ Yf @و)& ARR}f0FD2:MANUALPR.ATBfAY @(fPYf @ Yf @و)& ARP" Lijst Manualbiblioteek tot 17 Mei 1991 bijgewerkd t! 6 10 Print20 1020 Color PV}rinter Owner's Guide188 1050 Diskdrive Owners Manual20 1050 Turbo Anleitung1 130 XE / 1088K Upgrade7 130 XE / 576K UV}pgrade3 130 XE Compatible 256K Upgrade for 800 XL68 130 XE Gebruikershandleiding68 130 XE Owner's Manual90 40 Great V}Flight Simulator Adventures122 40 More Great Flight Simulator Adventures5 50 Mission Crush646 6502 Assembly Language ProV}gramming12 850 & 1030 Express!13 850 Express!11 Ace C-Compiler31 Action Runtime Library Package210 Action!41 ActioV}n!9 Adressenbestand148 Advanced 6502 Programming9 Advanced Atari Protection Techniques23 Advanced Music System 21 V} Adventure of Buckaroo Banzai1 Adventureland150 Adventures und wie man sie auf dem Atari 800 XL Programmiert160 AfmattenV }de Spelen voor uw Atari 600XL/800XL1 Agent 0095 Air Support1 Airstrike 21 Airwolf8 Alternate Reality with MapV!}7 Amodem 7.23 Amodem for 850 Interface3 Ankh3 Arc-file Compressor32 Archiver/ Editor8 Archon 18 Archon 2: V"}Adept2 Arrow of Death part 22 Arrow of Death part 145 Assembler Editor150 Assembly Language Programming for the AtarV#}i Computers3 Astro Chase151 Atari Basic Source Book134 Atari Collection volume 180 Atari Peeks en Pokes248 Atari ProgV$}ramming with 55 Programs118 Atari XL/XE Computer-Spelen Boek, Het50 Atari-XL Software boek, het26 Atariwriter31 AtariwV%}riter2 Atartris1 Atmas II Guide4 Ballblazer1 Ballyhoo Walkthrough2 Bankstreet Music Writer77 Basic XE3 BaV&}sil the Great Mouse Detective & Maps2 Behind the Jaggi-lines37 Bibo-Assembler Handbuch4 Billboard5 Bioritme1 BiV'}rth of the Phoenix3 Blackjack3 Blade of Blackpoole145 Bookkeeper, the9 Boss II Addendum4 Boulderdash ConstructioV(}n Kit6 Bounty Bob Strikes Back38 Brimstone4 Bristles2 British Heritage. Jigsaw Puzzles vol 22 Bruce Lee17 BugV)} 6539 Bulletin Board Construction Set1 C'est la Vie10 Cable TV Basics1 California Run6 Castle of Wolfenstein1 V*} Castle of Wolfenstein 2 Map3 Caverns of Khafka5 Centipede3 Chameleon v 3.138 Chess1 Chimera4 Code Woord5 V+} Codesmiths Newsletter Reader2 Collossus Chess 4.0128 Compute!'s Second Book of Atari155 Compute!'s Third Book of AtariV,}4 Computer Chess14 Computer Cricket1 Computer War2 Conan9 Converter, the (two docs)3 Count, the2 CountdownV-}1 Countermeasure11 Cracker's Tool, the4 Cranston Manor1 Crisis Mountain1 Crystal Raider Map1 Cuthbert Goes WV.}alkabout7 Cutthroats116 DOS 2 Reference Manual15 DOS 3 Gebruikershandboek91 DOS 3 Manual2 DTC Hard Drive ControlleV/}r23 Daisy-Dot II1 Dallas Quest1 Dandy3 Dark Crystal, the2 Darts1 Daylight Robbery264 De Re Atari3 DeadliV0}ne2 Deadline12 Decos MD-3120/DC Modem14 Deep Blue C-Compiler40 Deep Blue C-Compiler6 Defender6 Deja Vu Clues aV1}nd Hints1 Deja-Vu (Wortschatz)1 Desmond's Dungeon2 Destiny2 Dimension X2 Disc Dupe1 Diskey15 Diskmaster2V2}2 Diskscanner2 Donkey Kong6 Dot-Magic7 Dragon Quest1 Drelbs2 Druid14 Dsembler1 Duck's Ahoy9 Dunjon QuV3}est #1 Upper Reaches of Apshai1 Dunjon Quest, Dunshin8 Dunjon Quest, Morloc's Tower1 ESI Writer1 Earwigsoft ScreeV4}n Dump 102934 Eastern Front & Map111 Easy Programming for the Atari Micros6 Eidolon, the7 Enchanter1 Encounter17V5} Energie Computerprogramma21 Envision25 Eternal Dagger, the1 European Scene. Jigsaw Puzzles vol 119 F-15 Strike EagV6}le1 Feud17 Field of Fire2 Fighter Pilot51 Flight Simulator II2 Flight Simulator Info3 Forem1 Fort ApocalypV7}se2 Fortress66 Games for your Atari 600XL68 Games for your Atari2 Gauntlet18 General rev. 7.10 Information3 GhV8}ostbusters3 Ghosttown2 Golden Baton, the3 Goonies1 Graphic Converter Disk1 Graphics Operating System10 Grip V9}Assembler105 Grosse Spiele-Buch fuer Atari 600XL/800XL4 Gruds in Space25 Guild of Thieves11 Guild of Thieves WalkthroV:}ugh + Maps9 Hacker4 Hacker's Guide to the Galaxy, the36 Halley Project, the15 Happy 1050 Enhancement rev 6174 HardV;}ware Manual Atari Computer117 Hardware Manual for Atari Computers1 Hi-Jack6 Hitchhiker's Guide to the Galaxy24 Home V<}Filing Manager8 Homepak42 Homepak14 Hometerm Customizer2 Hover Bovver3 Huishoud Administratie2 Humpty Dumpty V=}& Jack and Jill6 Icon Shop, the2 Incredible Hulk, the3 Infidel4 Infiltrator58 Inside Atari DOS14 Instedit2 V>} Instruktieset 65C02 met Illegale Codes40 Interlisp/65 ver. 2.54 J-Term1 Jetboot Jack2 Jinxter1 Joe Blade Map2V?} Joust4 Joystick Sketchpad Instruction Guide1 Jump Jack1 Karate Master2 Karateka4 Kermit Software Story6 V@}King Tut's Tomb1 King of the Ring16 Koalapad & Koalaware4 La Machine1 Las Vegas Casino1 Last Starfighter, the1VA} Last V8, the5 Leather Goddesses of Phobos & Map170 Lisp6 Loderunner16 Logo2 Lothlorien1 Lucifer's Realm31 VB} Mac 6510 Machine Code Tutor15 Machine Code Tutor109 Machinetaal voor Atari XL/XE Computers46 Macro Assembler Text EdiVC}tor48 Macro-Assembler12 Magniprint II15 Magniprint II+5 Major League Hockey90 Making the Most of your Atari5 MaVD}ndlebrot Set, the46 Manifest voor een Gouden Toekomst36 Mapmaker270 Mapping the Atari, Revised Version1 Mars3 MaskVE} of the Sun2 Maxwell Manor1 Menumaker3 Mercenary8 Mercenary & map4 Micro Illustrator3 Microrhythm with workVF}sheets77 Microsoft Basic3 Midi Atari8 Mig Alley Ace3 Mindshadow4 Miner 2049er40 Mini Office II2 Minicopy vVG}.2.1 Handler (Pools)1 Mission Astroid2 Mission Impossible2 Money Matters10 Monkey Wrench II5 Montezuma's RevengVH}e2 Moon Patrol1 Mordon's Quest (Wortschatz)22 Moviemaker2 Mr. Cool19 Music Composer16 Music Construction Set3VI} MyCopyR! 2.17 Nato Commander5 Necromancer6 New York City90 Newsroom11 Night Mission Pinball1 Ninja4 OS/VJ}A+ 2.5 Manual2 Oil's Well4 Omnimon Builders Guide21 Omnimon Users Guide12 Omniview XL/XE1 One on One154 OperatiVK}ng System Source Listing274 Operating System User's Manual4 Operation Whirlwind14 Orbit: A Trip to the Moon3 P/M CreVL}ator Animator10 Pacman78 Paperclip 1.2X Manual84 Paperclip New20 Parallel Bus Revealed, the3 Pascal Atari Errors1VM} Pascal Draper Errors40 Pawn, the7 Pawn, the & Maps2 Pengo1 Periscope up1 Perseus & Andromeda16 Phantasy I VN}& Phantasy II Rulebook16 Picture Plus4 Pilot Reference Card124 Pilot Reference Guide2 Pinball Construction Set2 PVO}irate Adventure1 Pirates of the Barbary Coast7 Pitfall8 Planetfall & Map6 Polar Pierre3 Pole Position2 PoolVP}3 Poolswinner1 Popcorn2 Porky's13 Print Shop Collection Page 63 Print Shop Tools12 Print Shop, the5 Print VQ}a Draw 10203 Printpower63 Programmer's Reference Guide for the Atari 400/800 Computers96 Programmeren met Atari-BasicVR}3 Pyramid of Doom19 Q-Meg3 Quasimodo3 Quest for the Quintana Roo, the2 Quest, the3 Questron19 R-Time 8 / SDVS}CS Supplement21 RAMbrandt8 Racing Destruction Set2 Raid over Moscow2 Ring der Nibelungen4 Robotron1 Rogue6 VT} Rscope16 Rubber Stamp1 Run for it2 SamTerm1 Sands of Egypt19 Scanalyzer, the version 3.33 Schaltungen KonsVU}truieren4 Scrunch and Unscrunch1 Seastalker27 Seastalker226 Second Book of Machine Language, the90 Seikosha SP-100VV}0A Matrix Printer Owner's Manual5 Sentinel1 Serpent's Star, the3 Sesame Street Print Kit2 Seven Cities of Gold3 VW} Shoot 'Em Ups (SuperZaxxon Dropzone BlueMax FortApocalypse)9 Silent Service27 Silent Service & Maps4 Slinky1 SnVX}okie1 Softporn Adventure5 Softsynth60 Software Protection Techniques12 Solo Flight3 Sorcerer, the1 Sound-DigiVY}tizer11 Sourcgen fuer Atmas II14 Space Base4 Space Invaders9 Space Invaders20 Space-Shuttle12 Space-Shuttle1 VZ} Spare Change85 SpartaDOS Construction Set53 SpartaDOS Documentation Files (+-30 docs)20 SpartaDOS Kommandos50 SpartaV[}DOS v.1.17 Speedscript1 Spellbound1 Spiderman2 Spiky Harold Maps15 Spitfire 407 Spy vs Spy II4 Spy vs SpyV\} Trilogy1 Spyhunter12 Star Raiders64 StarTexter7 Starbowl Football4 Starcross1 Starquake Map3 States and CV]}apitals2 Stealth2 Stein der Weizen, der & Map1 Steve Davies Snooker2 Strange Odyssey1 Stratosphere4 SubmariV^}ne Commander11 Summergames11 Super Cobra2 Super Cubes and Slip13 Super Huey3 SuperKEY!5 SuperDos21 Supermax V_}en SuperDos14 Supermon Handleiding3 Supermon met installatie118 Superscript4 Suspended3 Synassembler156 SyncalcV`}67 Syncalc127 Synfile+12 Synfile+ Data File Specifications2 Tail of Beta Lyrae, the8 Technicolor Dream9 Temple oVa}f Apshai9 Temple of Apshai, Upper Reaches2 Tetrix41 Textpro v.1.218 Textpro v.4.546 Tic Tac Toe6 Tic Tac Toe Vb}3D2 Time Machine1 Time Machine + Hintsheet28 Timewise6 Tomahawk7 Tomahawk6 TopDos 1.56 Track & Field2 Vc}Transdisk IV.15 Turbo-Basic3 Turbo-Freezer XL26 Typesetter Docs20 Ultima32 Ultima II18 Ultima III26 Ultima IIVd}I2 Ulysses & the Golden Fleece45 Universe3 Upgrades are for Everybody3 Video 130 XE7 Video Easel6 Viditel8 Ve} Viewterm86 Visicalc6 Visitype 27 Wall War6 Wefax Interface, de2 White Lion Font Disk #11 Wishbringer3 WVf}itness2 Wizard & the Princess, the16 Word Magic & Graphic Magic2 Worm in Paradise Map15 X-Tal5 XE Memory UpgradeVg}s4 XL Memory Upgrades1 XOS/80 Column Pack3 Xlent First Wordprocessor1 Zauberschloss5 Zeppelin12 Zork I & MapVh}2 Zork II7 Zork III3 Zorro Sw Sangit Parvat6naalrepraK  5706 EB Helmond Vi}9523402940 alrepraK  5706 EB Helmond TFABRACADABRA!In de eerste jaargang van Pokey magazine gaf Jack de Bruijn een machinetaal cursus voor de geintreseerden. Het Zk}leek ons nu wel een goed idee de machinetaal cursus op te splitsen in twee delen. Een deel zal door Jack worden verzorgt en hZl}et andere deel door mij. Jack zal zijn cursus van het vorige jaar op dezelfde manier vervolgen terwijl ik wat dieper in zal gZm}aan op verschillende onderwerpen zoals muziek, het OS, DOS, graphics enz.Voordat ik begin met het echte werk, wil ik dit noZn}g even kwijt: Deze serie wordt geschreven voor jullie, en daarom lijkt het mij redelijk dat jullie ook mee beslissen over de Zo}inhoud. Ik verwacht daarom veel reacties van mensen die wel eens wat meer willen weten over een bepaald onderwerp. Als er dusZp} bijv. iemand rondloopt die zich nu al tijden afvraagd hoe hij zijn eigen device kan ontwerpen (als je nu je hersens breekt oZq}ver wat een device is, laat het mij weten!) dan is dit zijn kans. Machinetaal is natuurlijk niet verplicht, maar in de meesteZr} gevallen werkt dat gewoon het prettigst; in Basic krijg je al gauw te maken met stapels Pokes.In ieder geval, iedereen weeZs}t nu wat meer over de bedoeling van deze serie en kan ik dus starten met de eerste aflevering. Nogmaals, mocht je iets niet bZt}egrijpen, laat het me weten! Veel plezier!--------------------------------Aflevering 1: DE SCHERM ROLLERDaar kruipt hijZu} behoedzaam over de pixels, iedereen volgt het vol bewondering, want het is...... weer zo'n scherm roller. Je zou er haast ziZv}ek van worden, zo vaak worden die dingen gebruikt voor het vertellen van de onmogelijkste onzin. En toch kunnen we er blijkbaZw}ar maar geen genoeg van krijgen. Daarom gaat deze aflevering over dat afschuwelijke schepsel van een gestoorde programmeur.Zx}Hij zat op een avond achter zijn XL te denken over een nieuw type van informatieoverdracht aan de gebruiker, eentje die niet Zy}veel ruimte op het scherm moest innemen. Al snel had hij in de gaten dat als hij de tekst van rechts naar links liet bewegen,Zz} hij in feite maar 1 regel nodig zou hebben. Dus hij aan de slag. Het eerste programmaatje wat hij maakte was in Basic. Het dZ{}eed niets anders dan de 2e tot en met de 40e letter kopieren naar de 1e tot en met de 39e, en dan de nieuwe letter op de 40e Z|}kolom.In theorie was er niets op aan te merken, maar helaas, Basic was er te langzaam voor en hij ontdekte meteen waarom. VZ}}oor het soepel laten verlopen van de roller zou hij ten eerste de tekst op een goede snelheid moeten laten verlopen, ongeveerZ~} 8 letters per seconde zou redelijk zijn. Dus hij aan de slag. Eerst zocht hij de informatie op die nodig was voor het maken Z}van de scherm roller.Waar in het geheugen staat de tekst die op het scherm staat? De programmeur grijpt wanhopig naar MappiZ}ng the Atari. Daar vindt hij het onderwerp Screen. Memory use lijkt hem wel wat, dus hij kijkt bij het daarbijhorende adres. Z}(88) Aha, 88 en 89 geven 'The lowest address of the screen memory, corresponding to the upper left corner of the screen, wheZ}re the value of this address will be displayed.'Als je meer informatie over het schermgeheugen wil hebben, raad ik je aan MZ}apping the Atari te bestellen, waar nog 4 bladzijden meer informatie wordt gegeven. Dit 270 bladzijden tellende naslagwerk isZ} onmisbaar voor elke mc programmeur en te bestellen bij Page 6. In ieder geval, de programmeur vindt vanuit Turbo Basic in Z}(88) het adres $BC40. In de monitor van Atmas-II vindt hij hetzelfde getal, dus gaat ie aan de slag:(diZ}t programmaatje staat wel ergens als D:SCROL1.SRC op de pokey disk)SCREEN EQU $BC40SETVBV EQU $E45CSYSVBV EQU $EZ}45FRTCLOK EQU $14TEXTADR EQU $CB ORG $A800* BEGIN VAN TEXT IN (TEXTADR) LDA #TEXT:L Z}STA TEXTADR LDA #TEXT:H STA TEXTADR+1* VERTICAL BLANK INTERRUPT INIT LDA #6 LDY #VZ}BI:L LDX #VBI:H JSR SETVBV* TERUG NAAR ATMAS RTS* VERTICAL BLANK INTERRUPT:* COPIEER 40 BZ}YTES VAN (TEXTADR)* TOT (TEXTADR)+40 NAAR $BC40* EN VERHOOG (TEXTADR)* OM DE TEXT NIET TE SNEL TE LATEN* GAAN (DEZE INTERZ}RUPT WORDT 50* KEER PER SECONDE AANGEROEPEN)* WORDT ER MAAR TIJDENS 1 VAN DE 4* INTERRUPTS DAADWERKELIJK IETS* OP HET SCHZ}ERM GEKOPIEERD.VBI LDA RTCLOK AND #%00000011 BNE EXIT * COPY TEXT NAAR SCREEN Z} LDY #39COPTXT LDA (TEXTADR),Y STA SCREEN,Y DEY BPL COPTXT INC TEXTADR Z} BNE EXIT INC TEXTADR+1EXIT JMP SYSVBV* EN DE TEKST NATUURLIJK!* DEZE MOET NATUURLIJK NIET IN ASCII* MZ}AAR IN INTERNE CODE GEASSEMBLEERD* WORDEN!TEXT ASC %[40 SPATIES]% ASC %EN ZIEDAAR, DE PROG% ASC %Z}RAMMEUR HAD DE EERSTE% ASC % VAN VELE SCHERM % ASC %ROLLERS GEMAAKT! % ASC %HET SPREEKT VOOR ZIZ}CH% ASC % DAT HIJ ER HEEL % ASC %TROTS OP WAS EN % ASC %BLA BLA BLA.... %Ja, wat was hij er Z}trots op! MAAR! De eerste roller was nog wel iets aan de schokkerige kant. Ai! Weer sloeg de schrik de programmeur om het harZ}t. Huppekee, Mapping er maar weer bij. Weer bij Screen. He? Scrolling leek hem wel wat, en bij 54276 ($D404) had ie beet. HetZ} werd wel wat moeilijker, want de programmeur kwam wat termen tegen waar hij nog niet het fijne van af wist, maar met een goeZ}de portie moed ging hij verder. Wat bleek, om hardware matige soepele scrolling te genereren moest hij eerst 16 bij de displaZ}y list instructie van de eerste regel optellen. Ik weet het, dit klinkt als een geheime code om een kruisraket te lanceren, mZ}aar het is waar. In Turbo basic zou het hierop neerkomen:HAHA=DPEEK($230)+3POKE HAHA,PEEK(HAHA)+16Korte uitleg: DPEEK($2Z}30) geeft aan waar in het geheugen de display list staat. (In Turbo Basic en Atmas is dat $BC40) Waarom plus 3? Er komen nameZ}lijk eerst 3 andere instructies voor de instructie van de eerste schermregel, nl. 3 lege regel instructies! Probeer maar eensZ} dit:DPOKE $230,DPEEK($230)+3Wat doe je nu: je zet de display list drie bytes hoger in het geheugen, zodat hij de lege reZ}gels overslaat. Hij begint meteen met de schermregel, wat je duidelijk kunt merken!Om dus de eerste scherm geschikt te makeZ}n voor hardwarematige horizontale scrolling moet 16 bij de inhoud van DPEEK($230)+3 worden opgeteld. In Atmas komt dat hieropZ} neer:(dl staat voor display list)ZP EQU $CBDLST EQU $230 LDA DLST ;lo byte dl STA ZZ}P LDA DLST+1 ;hi byte dl STA ZP+1 LDY #3 LDA (ZP),Y ORA #%00010000 Z} STA (ZP),YHee, een ORA? Waarom niet gewoon +16, dus: CLC ADC #16Nou, je ziet het zelf al denk ik..Ok,Z} nu hebben we de eerste schermregel geschikt gemaakt voor hardwarematige horizontale scrolling, nu rest ons nog iets: Hoe verZ}tellen we onze Antic hoeveel de regel moet worden gescrolld? Heel eenvoudig: We zetten een getal van 0-15 in HSCROL ($D404) eZ}n de rest gebeurd vanzelf. Een gr. 0 karakter komt overeen met 4 color clocks, dus we hebben maar 4 van de 16 horizontale verZ}schuivingen nodig. Ik weet het, dit is vast geen correct lopende zin, maar het is tenslotte ook geen cursus nederlands! Als iZ}n $D404 0 wordt gestopt, is er geen verschuiving. Stoppen we er vervolgens 1, 2 en 3 in, dan vindt er een beweging naar rechtZ}s plaats. Dus als de VBI de regel naar links heeft gekopieerd, moet er 3 in $D404 worden gestopt. In de volgende VBI 2, daarnZ}a 1, daarna nul, en daarna moet de boel weer worden gekopieerd en moet er weer 3 in $D404. Hoe dit KAN worden gedaan (en dat Z}geldt voor de meeste dinges) kun je bekijken in D:SCROL2.SRCO ja, schrik niet van het vreemde scherm dat je krijgt als je hZ}et runt. Een horiz. scrol-regel neemt namelijk 48 bytes schermgeheugen ipv. 40. Stom he?Tot afsluiting van dit eerste artikZ}el staat er ook nog een nummertje drie op de schijf waar nog heel wat mee te prutsen valt. Veel plezier! En niet vergeten: AlZ}s je nog ergens vragen over hebt (hoeft absoluut niet over dit artikel te zijn!) schrijf of bel! YebAalscholverstraat 3614Z}44 VS in Purmerendtel. 02990-20638eft absoluut niet over dit artikel te zijn!) schrijf of bel! YebAalscholverstraat 3614X$SCREEN EQU $BC40 TEXTADR EQU $CB SETVBV EQU $E45C SYSVBV EQU $E45F RTCLOK EQU $14 ORG $A800 * BEGIN VAN TEXT IN (TEXTADR) ^} LDA #TEXT:L STA TEXTADR LDA #TEXT:H STA TEXTADR+1 * VERTICAL BLANK INTERRUPT INIT LDA #6 LDY #VBI:L LDX #VBI:H JSR^} SETVBV * TERUG NAAR ATMAS RTS * VERTICAL BLANK INTERRUPT: * COPIEER 40 BYTES VAN (TEXTADR) * TOT (TEXTADR)+40 NAAR $BC40^} * EN VERHOOG (TEXTADR) * OM DE TEXT NIET TE SNEL TE LATEN * GAAN (DEZE INTERRUPT WORDT 50 * KEER PER SECONDE AANGEROEPEN) * ^}WORDT ER MAAR TIJDENS 1 VAN DE 4 * INTERRUPTS DAADWERKELIJK IETS * OP HET SCHERM GEKOPIEERD. VBI LDA RTCLOK AND #%00000011 ^} BNE EXIT * COPY TEXT NAAR SCREEN LDY #39 COPTXT LDA (TEXTADR),Y STA SCREEN,Y DEY BPL COPTXT INC TEXTADR BNE EXIT I^}NC TEXTADR+1 EXIT JMP SYSVBV * EN DE TEKST NATUURLIJK! * DEZE MOET NATUURLIJK NIET IN ASCII * MAAR IN INTERNE CODE GEASSEMB^}LEERD * WORDEN! TEXT ASC % % ASC % % ASC %EN ZIEDAAR, DE PROG% ASC %RAMMEUR HAD DE ^}EERSTE% ASC % VAN VELE SCHERM % ASC %ROLLERS GEMAAKT! % ASC %HET SPREEKT VOOR ZICH% ASC % DAT HIJ ER HEEL % ASC %TROTS O^}P WAS EN % ASC %BLA BLA BLA.... % ^}.. % \* IDEM ALS SCROL1.SRC, MAAR NU MET * HARDWAREMATIGE SCROLLING. SCREEN EQU $BC40 HSCROL EQU $D404 SETVBV EQU $E45C SYSVBV EQUb} $E45F DLST EQU $230 RTCLOK EQU $14 TEXTADR EQU $CB ZP EQU $CB ORG $A800 LDA DLST LO BYTE DL STA ZP LDA DLST+1 HI BYTb}E DL STA ZP+1 LDY #3 LDA (ZP),Y ORA #%00010000 STA (ZP),Y * BEGIN VAN TEXT IN (TEXTADR) LDA #TEXT:L STA TEXTADR LDAb} #TEXT:H STA TEXTADR+1 * VERTICAL BLANK INTERRUPT INIT LDA #6 LDY #VBI:L LDX #VBI:H JSR SETVBV * TERUG NAAR ATMAS Rb}TS * VERTICAL BLANK INTERRUPT: * COPIEER 40 BYTES VAN (TEXTADR) * TOT (TEXTADR)+40 NAAR $BC40 * EN VERHOOG (TEXTADR) * OM DEb} TEXT NIET TE SNEL TE LATEN * GAAN (DEZE INTERRUPT WORDT 50 * KEER PER SECONDE AANGEROEPEN) * WORDT ER MAAR TIJDENS 1 VAN DE b}4 * INTERRUPTS DAADWERKELIJK IETS * OP HET SCHERM GEKOPIEERD. VBI LDA RTCLOK VAN 0-$FF AND #%00000011 VAN 0-3 EOR #%000000b}11 VAN 3-0 STA HSCROL CMP #3 BNE EXIT * COPY TEXT NAAR SCREEN LDY #39+4 COPTXT LDA (TEXTADR),Y STA SCREEN,Y DEY BPL b}COPTXT INC TEXTADR BNE EXIT INC TEXTADR+1 EXIT JMP SYSVBV * EN DE TEKST NATUURLIJK! * DEZE MOET NATUURLIJK NIET IN ASCIb}I * MAAR IN INTERNE CODE GEASSEMBLEERD * WORDEN! TEXT ASC % % ASC % % ASC %EN ZIEDAAb}R, DE PROG% ASC %RAMMEUR HAD DE EERSTE% ASC % VAN VELE SCHERM % ASC %ROLLERS GEMAAKT! % ASC %HET SPREEKT VOOR ZICH% ASC b}% DAT HIJ ER HEEL % ASC %TROTS OP WAS EN % ASC %BLA BLA BLA.... % b}AS EN % ASC %BLA BLA BLA.... % `$UUUUUUUUUUUUUUUUUUU??????UUP@UUPPUUUUf}PP@UUPUUUUUPP@UU@UPPUU??????UUUUUf}UUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUf}UUUUUUUUUUPPPUUUUUPUUUUUAAAUAUf}UUPUUUU???AAATUATTPPPPUU@PPP@PTUP@f}T@PUUUUUUUUUUAUUUUUUUUUUUUUUUUUUUUUUUUUf}UUUUUUAUUUUUUUUAUUUUUUUUUAAPUAUUUU0?f}UA@P@PA@TU@PT@AUUUUUAAAAPAAATAAUTAAUUUUUPPAPPPAPPPP@PPAUUUUUf}UUUUUUUUUUUUUUUUUUUU@AUU@UUTUAUUUTTUUUUUTAPf}UAA@UPAP@UTTTUUU??<<cx?af | 33`af` f0f`f33gcf`p0 } ~~<`~<3>c0 g30 0 x }f~|<<`0 `ffffc0 ``f f nf?}f|vf f0`0f3p0 x a~0`~<3300 a}3>  3 3 00 f<~|<330 `` `fff8f??}c0 ` ``f fnc?f|v`` f00`fg}`p0 a~~0`~<c0 a } fff330 `fffc330 ``<<<c}?<<<`ff fffgfg330 afffc330 } a   }?}3300330001}03sp33p3303030330}10133}00330`030030}p0s033ss0`0133}}}}}}}}}}}}}}}}}7ÙÙ癙牟㟟ßo}烙灟ÑßÓ癃灑ß癓瑙Ùo}烙Ùo}8|<>>p9y8<>xy|o}yI~p8|x<99o}<>o}o }o }o }o }o }o}o}o}o}o}o}o}  c0 f`co}p `a a` cf` o} 0   o}   o} < 0` `| o}0f? f < o}   o}   o}   8o}?      o} ~   o}   o } xc< fffff   o!}c` ~/ fg`?c x ,nj` ff`0 ,ǀ o"}~ ? /a  f-a  <,ǀa o#}   <,Ǐ  f, o$}  ,nj ,ρ``< 0, f ` o%}~/nj``< `  ``f?` ,``f ` o&}8,LJ < `,  ,  ? o'} ~#    o(}   ?  <  0 ?l?  o)} ~         o*}< l ~ o+}    o,}      o-}  c~  fffa` a c`| 0o.} fg?c `` fffb?`0 <a o/}   o0}   o1}< 8f 0 o2}`?0 ~~ o3}   o4}  c` f`co5} `a` a` cf`o6}   o7}o8}o9}o:}o;}o<}o=}o>}o?}l7ÙÙ癙牟㟟ßsA}烙灟ÑßÓ癃灑ß癓瑙ÙsB}烙ÙsC}8|<>>p9y8<>xy|sD}yI~p8|x<99sE}<>sF}sG}<sH}8f sI}0~~sJ}sK}c~f`ca8 sL}`aa cff sM}~<   sN}   sO} sP} sQ} sR}sS}sT}<8fsU}nvfsV}~<sW}sX}<f~|<afbf f`sY}>ff|fcf |ffa bff`f8sZ}~<`<s[}s\}s]}a`cs^}affffafagg`as_}ccas`}`0`csff`sa}f`6``f`3sb}Àaf`sc}`ag`aff`sd}se}Àa```sf}`acsg}Àsh}aa`si}csj}`ccc``ccfcfcffffask}afcf`a``aaaffgfaaafacffffcfcc`c`gsl}cgsm}gcsn}`fff`ÆffffÆ``ac`aa`a`fg`a`so}c``ff``ggsp}cgf`ca`gf`asq}g၆a`g၆`fg`fdžacf`၆`gff`gcfsr}aggc`ss}f`cff`gf`af`a``fst}g`fdžacff`gff`gcggsu}c``gf`cff`Çff`gasv}c`afgaf`g၆a`c၀``g၆cff`faf`g၆csw}cfasx}cf`c``cf`affasy}`cg`fgacfaafff``ffcfggsz}s{}s|}s}}p7 DS@2 + @ ( ( (..(&Dit programma laat de schema's slechts//('ziw}en. Laadt ze in een teken- of screen-((dump programma.(2++(#Indien u geen printer heeft, kunt u<--(%een aan uzew}lf gerichte envelop sturenF (naar:K*( (*( Stichting PokeyP ( Postbus 798Z&&( w} 3100 AT Schiedamd ( (n//('U ontvangt dan een schema op papier....x/( (/(! Druk een toetw}s...5)+@$#A 5A@[.@@ D:SCHEMA1.PICLC@U:@,w}AvW@[)[.@@ D:SCHEMA2.PICLC@U:@,AvW@[)[.@w}@ D:SCHEMA3.PICLC@U:@,AvW@[)% D:MENU2.COMD:KB320[.@tsC"/01`BA,oading,?mߟ_/?{}??{}!V/{} ԨԨ?[۽Kk{} {}?߿߿????_k ߿[9[-z/k{} _? {} R-R%߿߿kCB@,^B޿??{}O@|~/k{JkS{۽zׯ S{}iz4J%B-R R)JRJ@@ @ӥ˅˭mhh)#CGC9ޭm)Z--{}H҉ !BaR)oJ7;7{{ozzkz !#{}!!BH (PB!H@$@@ޭ޽֭֭hhjioKkoooo{}--k)@ )^~?as{w{{޿j{}CCĀB@!%!B!B!!( $ڷڽ޽ۭҥҩҭiiih|~_{}??iooo{}o?!P)(??_iz˭ڭʭ{}ʥʥJ  F.Vn^@B@R!! ! @ @ڽ)ҥR!RIh((@????ߟ{}????( @=z<|?O߯__?߿ڥȄ{}BRJJD^|||~}0000>600| |{hhhh`,2{0{}P% {2{LZxPҝ>{2{` {3{ 4{ʽ{{{LWy{{ {L\ {{L|x|¹|é'{{}{)>> {{{${{;{{.{{Lx@8){z{}@{L>yUz5{4{>{8{{{{ {{P{ny[{oy3{8{f{+4{H>{h?{8{L2z4{8{${?{5{>{;{! {){};{y{iUz4{>{.{90!+{+{G{+{}5{4{>{Lz {5{;5{5{4{>{'{*!{!{L2z'{ 5{}{L)z85{{}{5{4{>{{0L_x` #(-27