ERzT‡
‰.LIOFF-";ASSEMBLER-KURS#8,Listing2(; 2;HorizontalesFeinscrolling<; F;ErlaeuterungenimArtikel. P;DieZeilenkoennenmittelsZ;Joysticknachlinksundd;rechtsgescrolltwerden.n;x;DieRoutineliegtimVBI. -ªSETVBV=$E45C‚VBI-Installer´XITVBV=$E462‚OS-VBI-Sprung¾;ÈSDLSTL=$230ƒDL-Vektor ÒHSCROL=$D404‚Scroll-RegisterÜCOLOR2=$2C6ƒHintergrundæBACK=$2C8…RahmenfarbeðCONSOL=$D01FúSTICK0=$278ƒJoystickPort1STRIG0=$284ƒTrigger1;HOR=$600†Merkregister"-,START„LDASDLSTL…Edit-DL6‰PHAŒauf@‰LDASDLSTL+1ƒStackJ‰PHAŒrettenT‰LDACOLOR2ƒFarben^‰STABACK…gleichh‰LDA#DLr‰STASDLSTL…NeueDL|‰LDA/DLˆsetzen†‰STASDLSTL+1;š‰LDA#0ˆRegister¤‰STAHOR‡neu®‰LDA#TOP-4„setzen¸‰STADLT‡(init.)Â‰LDA/TOP-4Ì‰STADLT+1Ö‰LDA#BOTTOM-4à‰STADLBê‰LDA/BOTTOM-4ô‰STADLB+1þ;‰LDA#7…Scrollals‰LDY#VBIƒVBIsetzen‰LDX/VBI&‰JSRSETVBV0;:.1‡LDACONSOLƒaufD‰LSRŠ<START>N‰BCS.1‡wartenX;b‰PLA‹Edit-DLl‰STASDLSTL+1‚wiederv‰PLA‹ein..€‰STASDLSTLŠ‰RTSŠundcioa!”-"ž;Dahierdiezuverschiebenen!¨;Zeilengleichlangsind(wie"²;meistensderFall),mussnur ¼;eineZeileaufdieRaender!Æ;ueberprueftwerden(obRandÐ;schonerreicht).Ú; ä;WennderTriggergedruecktî;ist(STRIG0=0),wirddie#ø;Schleifezweimaldurchlaufen,";alsodieLaufschriftdoppelt;soschnellbewegt.- VBI†LDXSTRIG0‚Trigger*‰DEX‰gedrueckt?4;>LOOP…LDASTICK0H‰LSR‰oben:Bit0R‰LSR‰unten:D1\‰LSR‰links:D2f‰BCS.1†links?p‰JSRLINKSz;„.1‡LSR‰rechts?Ž‰BCS.2˜‰JSRRECHTS¢;¬.2‡LDAHOR…Merkreg.in¶‰STAHSCROL‚Hardw.reg.À‰INXÊ‰BEQLOOPÔ‰JMPXITVBV‚undcioa!Þ-èLINKS„PHAˆAkkurettenò;ü‰LDADLT‡Zeile(n)‰CMP#TOP-4„schon‰BNE.3ˆganz‰LDADLT+1…linksam$‰CMP/TOP-4„Anfang?.‰BEQ.998;B.3‡INCHOR…nein,dannL‰LDAHOR…nachlinksV‰AND#3†scrollen.`‰STAHORƒWenn4x,umj‰BNE.99ƒeinganzest;~‰LDADLT„Zeichennachˆ‰BNE.1„links(Adr.’‰DECDLT+1‚vermindern)œ.1‡DECDLT¦;°‰LDADLB„auchdieº‰BNE.2„untereZeileÄ‰DECDLB+1Î.2‡DECDLBØ;â.99†PLA‡Akkuzurueckì‰RTS‡undcioaö-RECHTSƒPHAˆAkkuretten
;‰LDADLTŠZeile‰CMP#TOPE-40-4†am(‰BNE.1‹Ende?2‰LDADLT+1†Adr.vom<‰CMP/TOPE-40-4‚linkenF‰BEQ.99‰Rand!P;Z.1‡DECHORˆrechtsd‰LDAHOR‡scrollenn‰AND#3x‰STAHOR…wenn4x‚‰EOR#3†fein,umŒ‰BNE.99…einganzes–; ‰INCDLT…Zeichenª‰BNE.2†nach´‰INCDLT+1ƒrechts¾;È.2‡INCDLB…auchÒ‰BNE.99…untereÜ‰INCDLB+1ƒZeileæ;ð.99†PLA‰Akkubackú‰RTS‰undcioa!-cTOP†.AT"Hallo! Dies ist die erste Scrollzeile. Sieht doch schon etwas eleganter aus, als der "e‰.AT"Grobscroller von vorhin, oder? Naja, wie auch immer, jetzt geht's wieder von vorne los... ""TOPE,-g6BOTTOMƒ.AT"Hi,das hier ist die untere Scrollzeile. Sieht auch elegant aus, oder? Demo gefaellig? "c@‰.AT" So, nun noch ein paar Buchstaben: AaBbCcDdEeFfGgHhIiJjKkLlMmNnOoPpQqRrSsTtUuVvWwXxYyZz "JBOTTOMET-^DL‡.HX70707070707052hDLT†.DA0r‰.HX52|DLB†.DA0†‰.HX707042‰.DAINFOš‰.HX300241¤‰.DADL®;7¸INFO….AT" Assembler-Kurs #8      Trigger:schnell "3Â‰.AT" Mit Joystick nach rechts/links bewegen "Ì-