ÈIÒES-ÇRAFIK-ÐROGRAMMIERUNG ÔEIL 2 760 ÐIXEL SETZEN, L¼SCHEN: ÍIT DIESER ÒOUTINE K¼NNEN AN ËOORDINATENPUNKTEN, AUSGEDR½CKT DURCH Ø- UND Ù-×ERTE, ÐIXELS GESETZT ODER GEL¼SCHT WERDEN. ÂEIM ÓETZEN ERSCHEINT DER ÂILDPUNKT IN DER ÖORDERGRUNDFARBE, BEIM ̼SCHEN IN DER ÈINTERGRUNDFARBE. ÄIE Ø-ËOORDINATE DARF ×ERTE VON NULL BIS 319 ANNEHMEN, DIE Ù-ËOORDINATE ×ERTE VON NULL BIS 199. Ø GEHT VON LINKS NACH RECHT, Ù VON OBEN NACH UNTEN. ÉST DIE ÖARIABLE ÌÏ GLEICH NULL, WIRD DAS ÐIXEL GESETZT, BESITZT ÌÏ DEN ×ERT EINS, WIRD DAS ÐIXEL GEL¼SCHT. ÉST ÆÁ GLEICH NULL, ERSCHEINT DAS ÐIXEL IN DER AM ANGEGEBENEN ÏRT DEFINIERTEN ÆARBE, IST ÆÁ GLEICH EINS, WERDEN DIE ÆARBEN ÖÆ UND ÈÆ AM ANGEGEBENEN ÏRT NEU GESETZT. ÆÁ UND ÌÏ WERDEN NICHT NUR BEIM ÓETZEN EINZELNER ÐUNKTE, SONDERN AUCH BEI DEN DARAUF AUFBAUENDEN ÇEBILDEN ÌINIE, ÒECHTECK UND ËREIS WIRKSAM. Ø=0:Ù=0:ÆÁ=1:ÌÏ=0:ÇÏÓÕÂ760 ÉN DER LINKEN OBEREN ÂILDSCHIRMECKE ERSCHEINT EIN ÐUNKT IN DER ÆARBE ÖÆ. ÁUCH EVENTUELLE ANDERE IM ÂEREICH VON Ø=0 BIS Ø=7 UND Ù=0 BIS Ù=7 LIEGENDE GESETZTE ÐUNKTE WERDEN IN DER NEUEN ÆARBE EINGEF»RBT. ÎICHTGESETZE ÐUNKTE DES GENANNTEN ÂEREICHES ERSCHEINEN IN DER ÈINTERGRUNDFARBE ÈÆ. 820 ÌINIE: ÁLS ÐARAMETER SIND DIE ÁNFANGSKOORDINATEN Ø1,Ù1 UND DIE ÅNDKOORDINATEN Ø2,Ù2 ZU ½BERGEBEN: Ø1=0:Ù1=0:Ø2=319:Ù2=199:ÇÏÓÕÂ820 ÅINE DIAGONALE ÌINIE WIRD VON DER LINKEN OBEREN BIS ZUR RECHTEN UNTEREN ÂILDSCHIRMECKE GEZEICHNET. 880 ÒECHTECK: ÁLS ÐARAMETER SIND DIE ËOORDINATEN Ø1,Ù1 UND Ø2,Ù2 ZWEIER DIAGONAL GEGEN½BERLIEGENDER ÅCKEN DES ÒECHTECKS ZU ½BERGEBEN. ÍIT ÇÏÓÕÂ880 WIRD DANN DIE ÄARSTELLUNG DES ÒECHTECKS VERANLA¾T. 930 ËREIS: ÈIER SIND DIE ÍITTELPUNKTSKOORDINATEN ØÍ UND ÙÍ SOWIE DER ÒADIUS Ò ZU ½BERGEBEN, ETWA: ØÍ=160:ÙÍ=100:Ò=50:ÇÏÓÕÂ930 ÅIN ËREIS MIT DEM ÍITTELPUNKT IN DER ÂILDSCHIRMMITTE UND DEM ÒADIUS 50 W½RDE HIER GEZEICHNET WERDEN. 1000 ÃURSOR: ÎACH ÝBERGABE DES Ø- UND Ù-×ERTES WIRD MIT ÇÏÓÕ 1000 DIE ÐOSITION F½R NACHFOLGENDE ÔEXTAUSGABEN BESTIMMT. ÄIE ËOORDINATEN ORIENTIEREN SICH NICHT AM ÔEXT, SONDERN AM ÇRAFIKBILDSCHIRM: Ø=0:Ù=0:ÇÏÓÕÂ1000 Ø=5:Ù=5:ÇÏÓÕÂ1000 Ø=8:Ù=8:ÇÏÓÕÂ1000 ÏBWOHL SICH IN DEN ERSTEN BEIDEN Æ»LLEN DIE ËOORDINATEN UNTERSCHEIDEN, HAT DIES KEINE ÁUSWIRKUNG AUF DIE ÐOSITIONIERUNG DES NACHFOLGENDEN ÔEXTES, DENN AUCH IM ZWEITEN ÂEISPIEL BEFINDEN SICH DIE ËOORDINATEN INNERHALB DES ÒAUMES F½R EIN UND DENSELBEN ÂUCHSTABEN. ÄER ERSTE ÂUCHSTABE K»ME IN DIE ERSTE ÚEILE UND DIE ERSTE ÓPALTE ZU LIEGEN. ÅRST IM DRITTEN ÆALL W½RDEN DIE ZWEITE ÚEILE UND DIE ZWEITE ÓPALTE FESTGELEGT WERDEN. 1030 ÔEXTAUSGABE: ÔEXT WIRD AN DER DURCH DIE ÃURSORPOSITIONIERUNG BESTIMMTEN ÓTELLE AUSGEGEBEN. ÄER ÔEXT MU¾ DER ÖARIABLEN ÔØ$ ½BERGEBEN WERDEN. ÄIE ÖARIABLE ÆÁ BESTIMMT, OB DIE ÆARBINFORMATIONEN ÖÆ UND ÈÆ ZUM ÔRAGEN KOMMEN. ÍIT DER ÖARIABLEN ÇÚ, DIE ×ERTE VON NULL BIS DREI ANNEHMEN DARF, WIRD DER ÚEICHENSATZ AUSGEW»HLT. ÄABEI BEDEUTEN: 0 ÇRO¾/ÇRAFIK 1 ÇRO¾/ÇRAFIK INVERS 2 ËLEIN/ÇRO¾ 3 ËLEIN/ÇRO¾ INVERS ÎACH DER ÁUSGABE EINES ÔEXTES BEFINDET SICH DIE NEUE ÃURSORPOSITION AUTOMATISCH HINTER DEM LETZTEN ÚEICHEN DES AUSGEGEBENEN ÔEXTES. 1020 ÃURSOR, ÔEXTAUSGABE: ÄIE ÐOSITIONIERUNG DES ÃURSORS UND DIE ÔEXTAUSGABE K¼NNEN AUCH DURCH EINEN EINZIGEN ÒOUTINENAUFRUF VERANLA¾T WERDEN. Ø=0:Ù=0:ÔØ$="ÔÅØÔ":ÇÏÓÕÂ1020 ÇÏÓÕ 1020 IST GLEICHBEDEUTEND MIT ÇÏÓÕÂ1000:ÇÏÓÕÂ1030. ÍIT DIESEN ÉNFORMATIONEN STEHT DER ÅRSTELLUNG EIGENER ÇRAFIKANWENDUNGEN NICHTS MEHR IM ×EGE. ƽR DENJENIGEN, DER WEITERE ÄETAILS ZU DEN ANGESPROCHENEN ÒOUTINEN ERHALTEN M¼CHTE, GEHEN WIR ZUN»CHST N»HER AUF DIE ÏRGANISATION DES ÇRAFIKSPEICHERS, DIE ÂÁÓÉÃ- UND DIE ÍASCHINENROUTINEN EIN. -------------------------------------- ÏRGANISATION DES ÇRAFIKSPEICHERS -------------------------------------- ×AS ZUR ÅRSTELLUNG VON ÇRAFIKEN BEN¼TIGT WIRD, IST EINE ÒOUTINE, MIT DEREN ÈILFE SICH ÐUNKTE AN JEDE BELIEBIGE ÂILDSCHIRMKOORDINATE SETZEN LASSEN. ÕM EINE SOLCHE ÒOUTINE ZU ERSTELLEN, MU¾ UNS DIE ÏRGANISATION DES ÇRAFIKSPEICHERS BEKANNT SEIN. ÄER ÇRAFIKSPEICHER: ÄER ÇRAFIKSPEICHER IST NICHT IN ÐUNKTEN, SONDERN IN ÂYTES ORGANISIERT. 8000 ÂYTES REPR»SENTIEREN 64.000 ÂILDPUNKTE. ÄA EIN ÂYTE AUS ACHT ÂITS BESTEHT, IST DIES NAT½RLICH KEIN ×UNDER. ÅIN GESETZTES ÂIT STEHT F½R EINEN ÐUNKT IN DER ÖORDERGRUNDFARBE, EIN NICHTGESETZTES ÂIT F½R EINEN ÐUNKT IN DER ÈINTERGRUNDFARBE. ÄAMIT K¼NNEN WIR SCHON ANFANGEN, ETWAS ZU EXPERIMENTIEREN. ×IR BEN½TZEN DAS ÐROGRAMM ÇÒÁÆÉË-ÒÏÕÔÉÎÅÎ UND SCHREIBEN EIN KURZES ÈAUPTPROGRAMM. ×IR F½LLEN DEN ÇRAFIKBEREICH MIT ÎULLBYTES: 1050 ÇÏÓÕÂ530:ÇÏÓÕÂ560:ÇÏÓÕÂ430 1060 ÆÏÒÉ=ÇÁ ÔÏ ÇÁ+7999 1070 ÓÙÓ912,ÇÁ,0:ÎÅØÔ 1080 ÇÏÓÕÂ480 ÓÙÓ912,ÇÁ,0 ENTSPRICHT EINEM ÐÏËÅÇÁ,0 MIT DEM ÕNTERSCHIED, DA¾ HIER AUCH UNTER DAS É/Ï GESCHRIEBEN WERDEN KANN. ÎACH DEM ÐROGRAMMSTART WIRD DER GESAMTE ÂILDSCHIRM SCHWARZ EINGEF»RBT. ×ENN ÓIE DASSELBE NOCHMALS MIT DEM ×ERT 255 STATT NULL VERSUCHEN, NIMMT JEDER ÂILDPUNKT DIE ÖORDERGRUNDFARBE AN. ÓIE K¼NNEN VERSCHIEDENE ×ERTE AUSPROBIEREN - NICHT DEN GANZEN ÇRAFIKBEREICH F½LLEN, SONDERN BLO¾ ACHT ODER 320 ÂYTES - UND SOLLTEN NACH ÉHREN ÅXPERIMENTEN ZU DEN GLEICHEN ÅRGEBNISSEN KOMMEN WIE WIR. ÅIN ÂYTE ERGIBT AUF DEM ÂILDSCHIRM EINE ÒEIHE VON ACHT NEBENEINANDER ANGEORDNETEN ÐUNKTEN ODER ÐIXELS. ÄAS LINKE ÐIXEL IST DEM H¼CHSTWERTIGEN ÂIT ZUGEORDNET, DAS RECHTE ÐIXEL DEM NIEDERSTWERTIGEN. ÁCHT AUFEINANDERFOLGENDE ÂYTES ERGEBEN ACHT UNTEREINANDER ANGEORDNETE SOLCHER ÐIXELREIHEN, DIE DENSELBEN ÒAUM AUF DEM ÂILDSCHIRM EINNEHMEN, WIE IM ÔEXTMODUS DURCH EIN ÚEICHEN BELEGT WIRD. ÄAHER IST AUCH DER ÇRAFIKBILDSCHIRM ZU 40 ÓPALTEN UND 25 ÚEILEN ORGANISIERT. ÎACHDEM MIT ACHT ÂYTES SO EIN ÚEICHEN AUFGEBAUT WURDE, GEHT ES MIT DEM N»CHSTEN ÂYTE WEITER ZUM N»CHSTEN ÚEICHEN, DAS SICH RECHTS DAVON ANSCHLIE¾T. ÎACH VIERZIG ÚEICHEN ODER 320 ÂYTES IST EINE ÚEILE FERTIG, UND ES FOLGT DIE N»CHSTE. ÄIE ÁUFTEILUNG IN ÚEILEN, ÓPALTEN, ÐIXELREIHEN UND ÐIXELMUSTER ERSCHEINT H¼CHST LOGISCH, IST ABER WOHL NICHT GERADE DAS, WAS WIR GERNE VORLIEGEN H»TTEN, WENN WIR AN ZU ERSTELLENDE ÇRAFIKEN DENKEN. ƽR ÇRAFIKEN SOLLTE DER ÂILDSCHIRM EINFACH EINE ZWEIDIMENSIONALE ÆL»CHE SEIN, MIT EINEM ËOORDINATENSYSTEM UND DER ͼGLICHKEIT, JEDEN EINZELNEN ÐUNKT DIESES ËOORDINATENSYSTEMS AUF EINFACHE ×EISE ANZUSPRECHEN. ÄAS L»¾T SICH DURCHAUS REALISIEREN, DENN WOZU IST EIN ÒECHNER DA? ÅR SOLL UNS DAS ËOPFZERBRECHEN ERSPAREN UND UNSERE ËOORDINATEN IN SEIN ÐIXELSYSTEM UMSETZEN. ÄER ÇRAFIKBILDSCHIRM BESITZT 320 MAL 200 ÂILDPUNKTE, 200 IN SENKRECHTER UND 320 IN WAAGRECHTER ÒICHTUNG. ƽR DIESES ËOORDINATENSYSTEM BEN½TZEN WIR Ø-×ERTE VON NULL BIS 319 UND Ù-×ERTE VON NULL BIS 199. ÂEIM Ã128 IST ES ½BLICH, DA¾ DER ËOORDINATENURSPRUNG IN DER LINKEN OBEREN ÂILDSCHIRMECKE LIEGT UND DIE Ù-×ERTE VON OBEN NACH UNTEN GERECHNET WERDEN. ÄIES SOLL AUCH BEIM Ã64 SO BEIBEHALTEN WERDEN. ÕNSERE ÒOUTINE HAT AUS DEM Ø- UND Ù-×ERT DIE ÓPEICHERADRESSE ZU BERECHNEN UND DORT DAS EBENFALLS VOM Ø-×ERT ABH»NGIGE ÂIT ZU SETZEN. ÁUS DEM Ù-×ERT KANN LEICHT DIE ÎUMMER DER ÂILDSCHIRMZEILE ERRECHNET WERDEN: ÚÎ=ÉÎÔ(Ù/8) ×IR ERHALTEN EINE ÚEILENNUMMER VON NULL BIS 24. ÄIE ÚEILENNUMMER MULTIPLIZIERT MIT 320 ERGIBT DEN ÏFFSET DER ÚEILENANFANGSADRESSE. ÁLS WIR DIE Ù-ËOORDINATE DURCH ACHT TEILTEN, BLIEB EIN ÒEST ½BRIG, DIESER DARF NICHT UNBER½CKSICHTIGT BLEIBEN, DENN ER GIBT DIE ÌINIENNUMMER IN DER ÚEILE AN. ÄIESE ÌINIENNUMMER ZUM ÚEILEN_OFFSET ADDIERT, ERGIBT DEN ÏFFSET DER ÌINIENANFANGSADRESSE: ÌÁ=320*ÚÎ+(Ù-8*ÚÎ) ODER ÌÁ=312*ÚÎ+Ù ÄIE Ù-ËOORDINATE IST VERWERTET. ÁUS DER Ø-ËOORDINATE ERHALTEN WIR DIE ÓPALTENNUMMER: ÓÎ=ÉÎÔ(Ø/8) ÄAMIT STEHT DIE ÓPEICHERADRESSE FEST. ÄIE ÓPALTENNUMMER MULTIPLIZIERT MIT ACHT BRAUCHT NUR ZUR ÌINIENANFANGSADRESSE UND ZUR ÁNFANGSADRESSE DES ÇRAFIKSPEICHERS ÇÁ ADDIERT ZU WERDEN: ÁÄ=312*ÚÎ+Ù+8*ÓÎ+ÇÁ ÊETZT MU¾ NOCH DAS RICHTIGE ÂIT GESETZT WERDEN. ÄIE ÐIXELNUMMER ERGIBT SICH AUS DEM BEIM ÔEILEN VERBLIEBENEN ÒEST ODER DURCH ØÁÎÄ7. ÄER ÂYTEWERT K¼NNTE DURCH ÐOTENZIEREN GEWONNEN WERDEN, ETWA: Â=2^(7-(ØÁÎÄ7)) ÄAS ÄATENBYTE AUS DER ÁDRESSE ÁÄ W»RE DAMIT ZU VERKN½PFEN. ÓÙÓ929,ÁÄ,Î ÄIESE ÍASCHINENROUTINE IST GLEICHBEDEUTEND MIT Î=ÐÅÅË(ÁÄ). ÄAS ÓETZEN DES ÐIXELS GESCH»HE JETZT MIT: ÓÙÓ912,ÁÄ, ÏÒ Î ÁLLERDINGS NEHMEN SOLCHE ÂERECHNUNGEN ETWAS ÚEIT IN ÁNSPRUCH. ÄAHER VERWENDEN WIR ZUM ÐIXELSETZEN EINE ÍASCHINENROUTINE: ÓÙÓ985,ÁÄ,ØÁÎÄ7 ƽR DAS ÐIXELL¼SCHEN GIBT ES DAS ÇEGENST½CK ÓÙÓ995,ÁÄ,ØÁÎÄ7. ÇOEMETRISCHE ˼RPER: ÄER ÐUNKT IST DIE ÇRUNDLAGE DER ÇEOMETRIE. ÌINIEN, OB GERADE, GEBOGEN ODER KREISF¼RMIG, SETZEN SICH AUS ÐUNKTEN ZUSAMMEN. ÍIT DEM ÐUNKT ALLEIN KOMMEN WIR ABER NICHT WEIT. ÄIE ÇERADE, DAS ÒECHTECK UND DEN ËREIS WOLLEN WIR IN UNSERE ÍINIMALKONFIGURATION MIT AUFNEHMEN. ÄIE ÇERADE: ÇEGEBEN SIND ÁNFANGS- UND ÅNDPUNKT EINER ÓTRECKE DURCH DIE ËOORDINATEN Ø1 UND Ù1 SOWIE Ø2 UND Ù2. ÄARAUS LASSEN SICH DIE ÓTEIGUNG UND DIE ÇERADENGLEICHUNG ERMITTELN: Í=(Ù2-Ù1)/(Ø2-Ø1) Í=(Ù-Ù1)/(Ø-Ø1) (Ø-Ø1)*Í=Ù-Ù1 Ù=Ù1+(Ø-Ø1)*Í ÄIE ÓTEIGUNG Í ERRECHNET SICH AUS DER ÄIFFERENZ DER Ù-×ERTE GETEILT DURCH DIE ÄIFFERENZ DER Ø-×ERTE. ÄURCH ÅRSETZEN DES ÅNDPUNKTES DURCH Ø UND Ù UND EINE ÕMSTELLUNG ERGIBT SICH DIE ÇLEICHUNG F½R DEN Ù-×ERT. ÄIE ÄARSTELLUNG DER ÇERADEN IST KEIN ÐROBLEM MEHR: Í=(Ù2-Ù1)/(Ø2-Ø1) ÆÏÒ Ø=Ø1 ÔÏ Ø2 ÓÔÅÐ ÓÇÎ(Ø2-Ø1) Ù=Ù1+(Ø-Ø1)*Í:ÇÏÓÕÂ760:ÎÅØÔ ÄIE ÓÇÎ-ÆUNKTION IST N¼TIG, WEIL Ø2 AUCH KLEINER ALS Ø1 SEIN KANN. ÄER ÁLGORITHMUS LIEFERT F½R ÓTEIGUNGEN ZWISCHEN -1 UND +1 EINE GUTE ×IEDERGABE. ÉST DIE ÄIFFERENZ DER Ù-×ERTE H¼HER ALS DIE ÄIFFERENZ DER Ù-×ERTE, TRETEN UNSCH¼NE ÚWISCHENR»UME AUF. ÉM ÆALL VON Ø2=Ø1 GIBT ES SOGAR EINEN ÐROGRAMMABSTURZ. ÄIES KANN ABER BEHOBEN WERDEN. ÓTATT DEN Ø-×ERTEN EINEN Ù-×ERT ZUZUORDNEN, WIRD DIE ÓACHE IN DIESEN Æ»LLEN UMGEDREHT: ÉÆÁÂÓ(Ù2-Ù1)>>ÁÂÓ(Ø2-Ø1)ÔÈÅÎÇÏÔÏ... Í=(Ø2-Ø1)/(Ù2-Ù1) ÆÏÒ Ù=Ù1 ÔÏ Ù2 ÓÔÅÐ ÓÇÎ(Ù2-Ù1) Ø=Ø1+(Ù-Ù2)*Í:ÇÏÓÕÂ760:ÎÅØÔ ÄIE ÕNTERROUTINE ÇÏÓÕÂ760 SORGT F½R DIE ×IEDERGABE DES BETREFFENDEN ÐUNKTES. ÕM ÒECHENUNGENAUIGKEITEN AUSZUGLEICHEN, SOLLTE STETS EINE ÒUNDUNG DES ERRECHNETEN ËOORDINATENWERTES STATTFINDEN, ETWA Ù=ÉÎÔ(Ù+.5). ÄAS ÒECHTECK: ÄAS ÒECHTECK BESTEHT AUS VIER ÌINIEN. ÅS M½SSEN DAF½R NUR VIERMAL DIE RICHTIGEN ÁNFANGS- UND ÅNDKOORDINATEN BEREITGESTELLT WERDEN. ÄIE ÒECHTECKROUTINE ERWARTET ËOORDINATEN ZWEIER GEGEN½BERLIEGENDER ÅCKEN. ÄER ËREIS: ÚUR ËREISBERECHNUNG EXISTIEREN ZWEI ͼGLICHKEITEN. ÄIE ERSTE ARBEITET MIT DEM ÂOGENMA¾ UND DER ÓINUS- SOWIE DER ÃOSINUSFUNKTION. ÄIESES ÖERFAHREN BESITZT ZWEI ÎACHTEILE. ×INKELFUNKTIONEN BEN¼TIGEN VIEL ÒECHENZEIT, AU¾ERDEM KOSTET DIE ÅRRECHNUNG EINES ËREISES MIT KLEINEM ÒADIUS DIESELBE ÚEIT WIE EIN GRO¾ER ËREIS, WENN MIT GLEICHEN ÇRADABST»NDEN GEARBEITET WIRD. ÄIE ZWEITE ͼGLICHKEIT, MIT DER ×URZELFUNKTION ZU ARBEITEN, ERSCHEINT SINNVOLLER, DA HIER NUR DIE WIRKLICH RELEVANTEN ÐUNKTE AUSGERECHNET WERDEN: ËÙ=ÓÑÒ(Ò*Ò-ËØ*ËØ) ÄIESE ÆUNKTION ORDNET JEDEM ËØ-×ERT GENAU EINEN ËÙ-×ERT ZU. ƽR EINEN ÖIERTELKREIS VON 90 BIS 45 ÇRAD SIND DIE ÅRGEBNISSE SEHR GUT. ÄARUNTER ABER KOMMT ES ZU GR¼¾EREN ̽CKEN, DA DORT NICHT JEDEM Ù-×ERT AUCH EIN Ø-×ERT ZUGEORDNET WIRD. ÄIE ̼SUNG IST AUCH HIER WIEDER DIE ÕMKEHRFUNKTION. ×IR LASSEN DIE ËØ-×ERTE NICHT VON NULL BIS Ò, SONDERN NUR VON NULL BIS Ò/ÓÑÒ(2) LAUFEN, WAS DEM 45-ÇRAD-×INKEL ENTSPRICHT. ÁUS DEM ËÙ-×ERT LASSEN SICH INSGESAMT ACHT ËREISPUNKTE GEWINNEN, N»MLICH EINER IN JE EINEM DER VIER ÑUADRANTEN UND DASSELBE NOCHMALS F½R DIE ÕMKEHRFUNKTION: ÆUNKTION Ø=ØÍ+ËØ:Ù=ÙÍ+ËÙ:ÇÏÓÕÂ760 Ø=ØÍ-ËØ:Ù=ÙÍ+ËÙ:ÇÏÓÕÂ760 Ø=ØÍ-ËØ:Ù=ÙÍ-ËÙ:ÇÏÓÕÂ760 Ø=ØÍ+ËØ:Ù=ÙÍ-ËÙ:ÇÏÓÕÂ760 ÕMKEHRFUNKTION Ø=ØÍ+ËÙ:Ù=ÙÍ+ËØ:ÇÏÓÕÂ760 Ø=ØÍ-ËÙ:Ù=ÙÍ+ËØ:ÇÏÓÕÂ760 Ø=ØÍ-ËÙ:Ù=ÙÍ-ËØ:ÇÏÓÕÂ760 Ø=ØÍ+ËÙ:Ù=ÙÍ-ËØ:ÇÏÓÕÂ760 ÉM ÐROGRAMM AB ÚEILE 820 WURDEN DIESE ÂERECHNUNGEN IN EINE KOMPRIMIERTERE ÆORM GEBRACHT. ÁU¾ERDEM WURDE BEI DER ÆUNKTIONSWERTBERECHNUNG EINE ÒUNDUNG EINGEBAUT, DIE UNSCH¼NE ÚACKEN BEI ÖIELFACHEN VON 90 ÇRAD VERHINDERT. ÄER ËREISROUTINE SIND DIE ÍITTELPUNKTSKOORDINATEN ØÍ UND ÙÍ SOWIE DER ÒADIUS Ò ZU ½BERGEBEN. ÓIE K¼NNEN AUCH EINMAL VERSUCHEN, EINEN GEF½LLTEN ËREIS ZU ERSTELLEN. ÈIERZU IST IN EINER ÓCHLEIFE DER ÒADIUS Ò VON NULL BIS ZUM GEW½NSCHTEN ÅNDWERT LAUFEN ZU LASSEN. ÄER ÒADIUS SOLLTE NICHT ALLZU GRO¾ GEW»HLT WERDEN, DA DER ÁUFBAU DANN SEHR LANGE DAUERT. ÁU¾ERDEM SOLLTE ER NICHT IN ÅINERSCHRITTEN, SONDERN IN 0,5ER-ÓCHRITTEN ERH¼HT WERDEN, DA ANSONSTEN EINIGE NICHT AUSGEF½LLTE ÐUNKTE, BESONDERS IN DIAGONALER ÒICHTUNG, AUFTRETEN K¼NNEN. ÓCHRIFT: ÐRINTANWEISUNGEN ZEIGEN IM ÇRAFIKMODUS LEIDER KEINERLEI ×IRKUNG. ÄENNOCH WIRD GEW½NSCHT, ÇRAFIKEN AUCH BESCHRIFTEN ZU K¼NNEN. ÄIE EINZIGE ͼGLICHKEIT, ÚEICHEN IM ÇRAFIKMODUS ZU ERZEUGEN, IST ES, DIE ÂITMUSTER DER ÂUCHSTABEN IN DEN ÇRAFIKSPEICHER ZU BEF¼RDERN. ÄIESE ÂITMUSTER FINDEN SICH IM ÚEICHENGENERATOR-ÒÏÍ AB ÁDRESSE $Ä000: 0 $Ä000 BIS $Ä3ÆÆ ÇRO¾BUCHSTABEN/ÇRAFIK 1 $Ä400 BIS $Ä7ÆÆ DASSELBE INVERS 2 $Ä800 BIS $ÄÂÆÆ ËLEIN-/ÇRO¾- BUCHSTABEN 3 $ÄÃ00 BIS $ÄÆÆÆ DASSELBE INVERS ÄIE ÁDRESSE MIT DEM GEW½NSCHTEN ÂITMUSTER BERECHNET SICH AUS DEM ÂILDSCHIRMCODE DES ÚEICHENS MULTIPLIZIERT MIT ACHT UND DER ÁDDITION DER ÁNFANGSADRESSE DES GEW½NSCHTEN ÚEICHENSATZES. ÓEI Âà DER ÂILDSCHIRMCODE UND ÇÚ EINE ÎUMMER VON NULL BIS DREI, DIE F½R DEN GEW½NSCHTEN ÚEICHENSATZ STEHEN SOLL, SO BERECHNEN WIR ÁÄ DURCH: ÁÄ=ÂÃ*8+ÇÚ*1024+53248 ÍIT EINEM ÐÅÅË-ÂEFEHL ALLEIN KANN NICHT AUS DEM ÚEICHENGENERATOR-ÒÏÍ GELESEN WERDEN, DA DIE ÃÐÕ SONST STATT AUF DIESES ÒÏÍ AUF DIE É/Ï-ÁDRESSEN ZUGREIFEN W½RDE. ÕM IN DAS DARUNTERLIEGENDE ÒÏÍ ZU GELANGEN, MU¾ DAS É/Ï ERST AUSGESCHALTET WERDEN. ÄAZU IST ÂIT ZWEI DES ÐROZESSORPORTS AUF ÁDRESSE 1 AUF NULL ZU SETZEN. ÄOCH AUCH DIES DARF NICHT OHNE WEITERES GESCHEHEN, DA DIE ALLE F½NFZIGSTEL ÓEKUNDEN ERFOLGENDE ÉNTERRUPTROUTINE AUF DIE É/Ï-ÁDRESSEN ZUGREIFEN M¼CHTE UND MIT DEM ÚEICHEN-ÒÏÍ NICHTS ANFANGEN KANN. ÉN ÂÁÓÉà KANN DER ÉNTERRUPT NICHT MIT EINEM SIMPLEN ÃÐÕ-ÂEFEHL GESPERRT WERDEN. ×OHL ABER KANN DAS ÁUFTRETEN DES ÉNTERRUPTS VERHINDERT WERDEN, DENN DIESER WIRD, DA ER ZEITABH»NGIG ERFOLGT, DURCH EINEN ÔIMER IM ÃÉÁ-1-ÂAUSTEIN AUSGEL¼ST. ×IRD ÂIT NULL IN DER ÁDRESSE 56334 AUF NULL GESETZT, WIRD DER ÔIMER GESTOPPT, UND DER ÉNTERRUPT IST SOMIT, BIS DER ÔIMER WIEDER IN ÇANG GEBRACHT WIRD, VERHINDERT. ÄEN ÂILDSCHIRMCODE EINES ÚEICHENS K¼NNEN WIR AUS ÓPEICHERZELLE 1024 ERHALTEN, NACHDEM WIR DIESES ÚEICHEN IN DIE LINKE OBERE ÂILDSCHIRMECKE GESCHRIEBEN HABEN: ÐÒÉÎÔÃÈÒ$(19)Ú$; ÁÄ=ÐÅÅË(1024)*8+1024*ÇÚ+53248 ÐÏËÅ56334,ÐÅÅË(56334)ÁÎÄ254 ÐÏËÅ1,ÐÅÅË(1)ÁÎÄ251 ÆÏÒÉ=0 ÔÏ 7 ÓÙÓ912,ÚÚ+É,ÐÅÅË(ÁÄ+É):ÎÅØÔ ÚÚ=ÚÚ+8:ÐÏËÅ1,ÐÅÅË(1)ÏÒ4 ÐÏËÅ56334,ÐÅÅË(56334)ÏÒ1 ÄIE ÖARIABLE ÚÚ IST DER ÚEICHENZEIGER, DER AUF DIE DURCH ÚEICHEN ZU BESCHREIBENDE ÓTELLE IM ÇRAFIKSPEICHER WEIST. ÎACH DEM ÓCHREIBEN DES ÚEICHENS IST DIESER ÚEIGER UM ACHT ZU ERH¼HEN, DAMIT ER AUF DIE ÓTELLE F½R DAS N»CHSTE ÚEICHEN ZEIGT. ÍASCHINENROUTINEN: ÅINIGE ÝBERLEGUNGEN HABEN UNS ZUM ÖERFASSEN VON ÍASCHINENROUTINEN BEWOGEN: ÅS M½¾TE DOCH AUCH M¼GLICH SEIN, ALLE 64 ËÂYTE VOM ÒÁÍ DES Ã64 ZU NUTZEN. ÍIT ÐÏËÅ-ÂEFEHLEN LASSEN SICH ALLE ÒÁÍ-ÁDRESSEN MIT ÁUSNAHME DER VIER ËÂYTE É/Ï-ÂEREICH ERREICHEN. ÍIT ÐÅÅË-ÂEFEHLEN SIEHT DIE ÓACHE SEHR SCHLECHT AUS. ÕNTER DAS ËERNAL-ÒÏÍ MAG MAN JA NOCH KOMMEN, WENN MAN DEN ÃÐÕ-ÐORT ENTSPRECHEND UMSTELLT UND DEN ÉNTERRUPT SPERRT. ÄAS ÂÁÓÉÃ-ÒÏÍ KANN NAT½RLICH NICHT VON ÂÁÓÉà AUS AUSGESCHALTET WERDEN, DENN DANN GEHT NICHTS MEHR. ÄENNOCH W»RE ES SCHADE, AUF WERTVOLLEN ÓPEICHERBEREICH VERZICHTEN ZU M½SSEN. ÄA F½R SCHNELLES ̼SCHEN DES ÇRAFIKBILDSCHIRMS ÍASCHINENROUTINEN N¼TIG SIND, DIE NAT½RLICH AUF JEDEN ÒÁÍ-ÂEREICH ZUGREIFEN SOLLEN, ENTSCHIEDEN WIR UNS, DA WIR BEREITS DABEI WAREN, ÍASCHINENROUTINEN AUCH F½R ANDERE ÚWECKE ZU ENTWICKELN. ÄIESE ÍASCHINENROUTINEN LEGTEN WIR IN DEN ËASSETTENPUFFER, UM DEN DAF½R ½BLICHERWEISE GENUTZEN ÂEREICH VON $Ã000 BIS $ÃÆÆÆ UNBER½HRT ZU LASSEN. ÍIT DIESEN ÍASCHINENROUTINEN IST ES AUCH M¼GLICH, DAS ÖIDEO-ÒÁÍ UNTER DAS É/Ï ZU LEGEN, SO DA¾ KEIN EINZIGES ÂYTE VOM NORMAL ZU NUTZENDEN ÓPEICHERBEREICH VERLORENGEHT. ÆOLGENDE ÒOUTINEN SORGEN F½R VOLLST»NDIGE ÒÁÍ-ÁUSNUTZUNG: $033à BIS $0345 ÒÁÍ EINSCHALTEN: ÄIESE ÒOUTINE DARF NUR VON ÍASCHINENPROGRAMMEN AUFGERUFEN WERDEN, DA DIE ÒÏÍS UND DAS É/Ï AUSGESCHALTET WERDEN, SO DA¾ IN ÂÁÓÉà GAR NICHTS MEHR GEHEN K¼NNTE. ×»HREND DAS VOLLST»NDIGE ÒÁÍ EINGESCHALTET IST, MU¾ DER ÉNTERRUPT GESPERRT SEIN, DAMIT KEIN ÁBSTURZ ERFOLGT. ÄAS ÁBSCHALTEN DER ÒÏÍS UND DES É/Ï WIRD ERREICHT, INDEM DIE ÂITS NULL UND EINS DES ÐROZESSORPORTS IN ÁDRESSE $01 MIT ÁÎÄ #$Æà AUF NULL GESETZT WERDEN. ÚUM ÕNDIEREN WIRD DER ÁKKU BEN¼TIGT. ÍIT ÐÈÁ UND ÐÌÁ WIRD DAF½R GESORGT, DA¾ SICH DIE AUFRUFENDEN ÒOUTINEN NICHT UM DAS ÓICHERN DES ÁKKUINHALTES ZU K½MMERN HABEN. $0346 BIS $034Æ ÒÏÍ UND É/Ï EINSCHALTEN: ÄIESE ÒOUTINE DARF IMMER AUFGERUFEN WERDEN. ÚWECKM»¾IGERWEISE GESCHIEHT DIES NAT½RLICH NUR VON DEN ÍASCHINENROUTINEN AUS, IN DENEN VORHER ÒÏÍ UND É/Ï AUSGESCHALTET WURDEN. ÄURCH ÁÎÄ #$03 WERDEN DIE ÂITS NULL UND EINS DES ÐROZESSORPORTS IN ÁDRESSE EINS WIEDER AUF EINS GESETZT. ÄANACH KANN AUCH DER ÉNTERRUPT WIEDER ZUGELASSEN WERDEN, SO DA¾ DAS ÓYSTEM SICH ANSCHLIE¾END IM ÎORMALZUSTAND BEFINDET. $0350 BIS $0360 ÓPEICHER F½LLEN: ÄIESE ÒOUTINE IST VON ÂÁÓÉà NUTZBAR. ÓIE ERM¼GLICHT, ÒÁÍ-ÂEREICHE BLOCKWEISE ZU F½LLEN. ÄER ÁUFRUF ERFOLGT VON ÂÁÓÉà AUS MIT ÓÙÓ848. ÚUVOR M½SSEN ALLERDINGS EIN PAAR ÖORBEREITUNGEN GETROFFEN WERDEN. ÄEM ÁKKU IST MIT ÐÏËÅ780,× EIN BELIEBIGER ƽLLWERT ZU ½BERGEBEN. ÄEM Ø-ÒEGISTER IST MIT ÐÏËÅ781, DIE ÁNZAHL DER ZU F½LLENDEN 256-ÂYTE-ÂL¼CKE MITZUTEILEN. ÉN DIE ÓPEICHERSTELLEN $Æ UND $Æà IST DIE ÁNFANGSADRESSE DES ZU F½LLENDEN ÓPEICHERBEREICHES ZU SCHREIBEN, ETWA ÐÏËÅ251,0:ÐÏËÅ252,ÖÈ F½R DAS ÖIDEO-ÒÁÍ. ÄIESE ƽLLROUTINE DIENT IM ÇRAFIKPROGRAMM ZUM GLOBALEN ÓETZEN DER ÆARBE F½R DEN GESAMTEN ÂILDSCHIRM UND ZUM ̼SCHEN DES ÇRAFIKBILDSCHIRMS. ÆARBE SETZEN: ÐÏËÅ780,16*ÖÆ+ÈÆ:ÐÏËÅ781,4 ÐÏËÅ251,0:ÐÏËÅ252,ÖÈ:ÓÙÓ848 ÂILDSCHIRM L¼SCHEN: ÐÏËÅ780,0:ÐÏËÅ781,32 ÐÏËÅ251,0:ÐÏËÅ252,ÇÈ:ÓÙÓ848 ÄAS ƽLLEN EINES ÓPEICHERBEREICHES MIT ÈILFE EINER ÌAUFSCHLEIFE IN ÂÁÓÉà W»RE ETWAS ZU LANGSAM; IN ÍASCHINENSPRACHE GEHT ES EINIGE TAUSEND ÍAL SCHNELLER. ÄIE ÂESONDERHEIT DER ÒOUTINE IST, DA¾ ZU ÂEGINN MIT ÊÓÒ $033à DIE 64 ËÂYTE ÒÁÍ EINGESCHALTET UND AM ÅNDE MIT ÂÅÑ $0346 WIEDER AUSGESCHALTET WERDEN. $0361 BIS $0379 ÄATEN EINLESEN: ÖON EINEM BELIEBIGEN ÅINGABEGER»T K¼NNEN ÄATEN IN EINEN BELIEBIGEN ÒÁÍ-ÂEREICH EINGELESEN WERDEN. ÄAS ÅINLESEN GESCHIEHT MIT ÊÓÒ $ÆÆÃÆ. ÉN EINER ÌAUFSCHLEIFE WIRD EINGELESEN, BIS ENTWEDER KEINE ÄATEN MEHR VERF½GBAR SIND, ÂÃÓ $0346, ODER BIS DIE GEW½NSCHTE ÁNZAHL VON ÂL¼CKEN EINGELESEN WURDE, ÂÅÑ $0346. ÄAS ÓCHREIBEN DER ÄATEN MIT ÊÓÒ $033Ã, ÓÔÁ ($ÆÂ),Ù UND ÊÓÒ $0346 ERFOLGT IN DAS ÒÁÍ. ÄIE ÒOUTINE WIRD IM ÇRAFIKPROGRAMM ZUM ÌADEN EINES ÇRAFIKFILES BEN½TZT, NACHDEM DAS ÆILE ER¼FFNET, ALS ÅINGABEGER»T DEFINIERT UND DER ÒOUTINE DIE ÁNFANGSADRESSE UND DIE ÂLOCKZAHL MITGETEILT WURDE. ÄER ÁUFRUF IN ÂÁÓÉà ERFOLGT MIT ÓÙÓ865: ÏÐÅÎ8,8,8,"ÇÒÁÆÉËÂÉÌÄ,Ð,Ò" ÐÏËÅ781,8:ÓÙÓ65478 ÇÅÔÁ$:ÇÅÔÁ$ ÐÏËÅ251,0:ÐÏËÅ252,ÇÈ ÐÏËÅ781,32:ÓÙÓ865 ÓÙÓ65484:ÃÌÏÓÅ8 ÈIER W½RDE EIN ÇRAFIKBILD OHNE ÆARBINFORMATION GELADEN WERDEN. ÎACH DEM ÜFFNEN, DEM ÄEFINIEREN DES ÅINGABEGER»TES MIT ÐÏËÅ781,8:ÓÙÓ65478 WERDEN DIE ERSTEN BEIDEN ÂYTES, DIE NOCH KEINE ÄATENBYTES SIND, SONDERN NUR DIE ÌADEADRESSE DARSTELLEN, MIT ÇÅÔÁ$:ÇÅÔÁ$ BESEITIGT. ÎACH DER ÝBERMITTLUNG DER ÁDRESSE DES ÇRAFIKSPEICHERS UND DER ÂLOCKZAHL WERDEN MIT ÓÙÓ865 DIE ÄATEN EINGELESEN. ÁNSCHLIE¾END IST MIT ÓÙÓ65484 DER ÅINGABEKANAL UND MIT ÃÌÏÓÅ8 DAS ÆILE ZU SCHLIE¾EN. $0378 BIS $038Æ ÄATEN AUSGEBEN: ÄIES IST DAS ÇEGENST½CK ZU ÄATEN EINLESEN. ÄAS ÁUSGEBEN GESCHIEHT MIT ÊÓÒ $ÆÆÄ2, DER ÁUFRUF IN ÂÁÓÉà MIT ÓÙÓ890: ÏÐÅÎ8,8,8,"ÇÒÁÆÉËÂÉÌÄ,Ð,×" ÐÏËÅ781,8:ÓÙÓ65481 ÐÒÉÎÔÃÈÒ$(0)" <169>; ÐÏËÅ251,0:ÐÏËÅ252,ÇÈ ÐÏËÅ781,32:ÓÙÓ890 ÓÙÓ65484:ÃÌÏÓÅ8 ÄAS ÐROGRAMMFILE ÇÒÁÆÉËÂÉÌÄ WIRD JETZT ZUM ÓCHREIBEN ER¼FFNET. ÍIT ÐÏËÅ781:ÓÙÓ65481 K¼NNEN WIR ES ALS ÅINGABEGER»T DEFINIEREN. ÁLS ERSTES M½SSEN ZWEI ÂYTES GESENDET WERDEN, ZWECKM»¾IGERWEISE DIE ×ERTE NULL UND 32, DA AN ÁDRESSE $2000 BEIM Ã128 DER ÇRAFIKBEREICH BEGINNT. ÎACHDEM DIE ÁDRESSE DES ÇRAFIKSPEICHERS UND DIE ÂLOCKZAHL ½BERGEBEN SIND, WERDEN DIE ÄATEN MIT ÓÙÓ890 AUF ÄISKETTE AUSGEGEBEN. ÄAS ÓCHLIE¾EN VOLLZIEHT SICH WIE BEIM ÌADEN. ÄIESES SEQUENTIELLE ÅINLESEN UND ÁUSGEBEN DER ÄATEN BESITZT GEGEN½BER DER ½BLICHEN ÌÏÁÄ- ODER ÓÁÖÅ-ÒOUTINE NOCH EINEN WEITEREN ÖORTEIL: ÖIDEO-ÒÁÍ UND ÇRAFIKSPEICHER BRAUCHEN BEI ÇRAFIKFILES MIT ÆARBINFORMATION NICHT UNMITTELBAR AUFEINANDER FOLGEN. ÄAS ÌADEN ODER ÓPEICHERN L»¾T SICH IN VIER ÂL¼CKE F½R DIE ÆARBINFORMATION UND 32 ÂL¼CKE F½R DIE ÇRAFIKDATEN JEDERZEIT SPLITTEN, ETWA: ÐÏËÅ251,0:ÐÏËÅ252,ÖÈ ÐÏËÅ781,4:ÓÙÓ890 ÐÏËÅ252,ÇÈ:ÐÏËÅ781,32:ÓÙÓ890 $0390 BIS $03Á0 ÓCHREIBZUGRIFF: ÄIESE ÒOUTINE KANN NUR VON ÂÁÓÉà AUS BENUTZT WERDEN. ÓIE ERSETZT DEN ÐÏËÅ-ÂEFEHL. ÓTATT ÐÏËÅÁ,É SOLLTE ÓÙÓ912,Á,É BENUTZT WERDEN. ÄAMIT LASSEN SICH AUCH ÄATEN IN DAS VOM É/Ï ½BERLAGERTE ÒÁÍ SCHREIBEN. ÄIE ÒOUTINE IST BIS AUF DIE ÂEHANDLUNG DES DEM ÓÙÓ-ÂEFEHL FOLGENDEN ËOMMAS DURCH ÊÓÒ $ÁÅÆÄ UND DEM ÅINSCHALTEN DES ÒÁÍS MIT DER ÏRIGINAL- ÐÏËÅ-ÒOUTINE DES Ã64 AB ÁDRESSE $Â824 IM ÒÏÍ IDENTISCH. ÊÓÒ $Â7Å BRINGT DIE ÐÏËÅ-ÁDRESSE IN DIE ÓPEICHERSTELLEN $14 UND $15 SOWIE DEN ZU SCHREIBENDEN ÂYTEWERT IN DAS Ø-ÒEGISTER. $03Á1 BIS $03Ã6 ÌESEZUGRIFF: ×»HREND DER ÐÅÅË-ÂEFEHL IN DAS ÒÏÍ UND DAS É/Ï GREIFT, ERM¼GLICHT DIESE ÒOUTINE DEN ÌESEZUGRIFF AUF DAS ÒÁÍ. ÆREILICH HANDELT ES SICH HIER UM KEINE ÆUNKTION WIE ETWA Î=ÐÅÅË(ÁÄ), DOCH IST DIE ÈANDHABUNG TROTZDEM EINFACH. ÓÙÓ929,ÁÄ,Î IST JETZT ZU SCHREIBEN, SOLL DAS ÂYTE IN DER ÁDRESSE ÁÄ IM ÒÁÍ DER ÖARIABLEN Î ½BERGEBEN WERDEN. ÅIN ÌESEZUGRIFF IST WEGEN DER ÐARAMETER½BERGABE SCHON ETWAS SCHWIERIGER ZU BEHANDELN ALS EIN ÓCHREIBZUGRIFF. ÄER ÂEGINN IST NOCH FAST WIE BEIM ÐOKEN. ÊEDOCH SIND NICHT ZWEI ×ERTE ZU HOLEN, SONDERN NUR DIE ÁDRESSE. ÍIT ÊÓÒ $ÁÅÆÄ WIRD AUCH HIER WIEDER DAS ËOMMA BEHANDELT. ÄAS ÂESORGEN DER ÁDRESSE ERFAHREN WIR, WENN WIR UNS DIE ÒOUTINE $Â7Å N»HER BETRACHTEN. ÍIT ÊÓÒ $ÁÄ8Á ERHALTEN WIR DEN NUMERISCHEN ×ERT. ÍIT ÊÓÒ $Â7Æ7 WIRD ER IN DAS ÁDRESSENFORMAT GEWANDELT UND IN DEN ÓPEICHERSTELLEN $14 UND $15 ABGELEGT. ÄAS ÌESEN DES GEW½NSCHEN ÂYTES IST JETZT KEIN ÐROBLEM MEHR, JEDOCH DIE ÝBERGABE AN DIE ÖARIABLE. ÍIT ÔÁÙ UND ÊÓÒ $Â3Á2 WIRD DER ÂYTE-×ERT IN DAS F½R ÂÁÓÉà ½BLICHE ÆLIE¾KOMMAFORMAT GEWANDELT. ÄANACH IST DIESER AN DIE ÖARIABLE ZU ½BERGEBEN. ÖORHER WIRD MIT ÊÓÒ $ÁÅÆÄ WIEDER DAS ËOMMA BEHANDELT. ÊÓÒ $Â08 STELLT DIE ÁDRESSE DER ÖARIABLEN IM ÁKKU UND DEM Ù-ÒEGISTER ZUR ÖERF½GUNG. ÁU¾ERDEM WIRD DABEI IN DER ÓPEICHERADRESSE $0Å VERMERKT, UM WELCHEN ÖARIABLENTYP ES SICH HANDELT. ÕM UNSEREN ×ERT IN DIE GEFUNDENE ÖARIABLE ZU BRINGEN, BENUTZEN WIR EINEN ÔEIL DER ÌET-ÒOUTINE. ÄIE ÖARIABLENADRESSE MU¾ AN DIE ÓPEICHERSTELLEN $49 UND $4Á ½BERGEBEN WERDEN. ÎACHHER IST DAS ÔYP-ÆLAG IN EIN ÃÐÕ-ÒEGISTER ZU LADEN, SO DA¾ DIE ÓTATUSFLAGS BEEINFLU¾T WERDEN. ÊE ÖORZEICHEN LEGT DIE ÒOUTINE $Á9Ã2 DEN IM ÆLIE¾KOMMA-ÁKKUMULATOR LIEGENDEN ×ERT IM ÉNTEGER- ODER ÒEALFORMAT IN DER DURCH $49 UND $4Á ADRESSIERTEN ÖARIABLEN AB. $03Ã7 BIS $03Ä ÂIT BESTIMMEN: ÄIESE ÒOUTINE IST EINE ÕNTERROUTINE F½R ZWEI WEITERE ÒOUTINEN, ÂIT SETZEN UND ÂIT L¼SCHEN. ÓIE STELLT DIE ÁDRESSE, IN DER EIN ÂIT MANIPULIERT WERDEN SOLL, IN DEN ÓPEICHERSTELLEN $14 UND $15 ZUR ÖERF½GUNG. ÁU¾ERDEM WIRD IM ÁKKUMULATOR EIN ÂIT GESETZT, DAS DER ÎUMMER DES ZU SETZENDEN ODER ZU L¼SCHENDEN ÂITS ENTSPRICHT. ÄAS LINKE ÐIXEL BESITZT DIE ÎUMMER NULL. ÄURCH ÈINEINSCHIEBEN DES ÃARRYFLAGS IN DEN ÁKKU VON RECHTS WIRD ÂIT SIEBEN GESETZT. ÂEI H¼HEREN ÐIXELNUMMERN WANDERT DAS GESETZTE ÂIT WEITER NACH RECHTS, BIS ETWA BEI ÐIXEL ÎUMMER SIEBEN ÂIT NULL GESETZT IST. ÄIESE ÒOUTINEN W»REN NICHT UNBEDINGT ERFORDERLICH GEWESEN, DENN MIT DEN ÒOUTINEN F½R DEN ÌESE- UND ÓCHREIBZUGRIFF IN ÖERBINDUNG MIT ÏÒ- ODER ÁÎÄ-ÖERKN½PFUNG W»RE DAS ÓETZEN ODER ̼SCHEN EINES ÂITS AUCH VON ÂÁÓÉà AUS MACHBAR GEWESEN. ÓO ABER IST ES JEDENFALLS EINFACHER. $03Ä9 BIS $03Å2 ÂIT SETZEN: ÉST AUF DEM ÇRAFIK-ÂILDSCHIRM AN DER ËOORDINATE Ø,Ù EIN ÐIXEL ZU SETZEN, SO MU¾ DARAUS IN ÂÁÓÉà DIE ÁDRESSE IM ÇRAFIKSPEICHER ÁÄ UND DIE ÐIXELNUMMER, DIE SICH DURCH Ø ÁÎÄ 7 ERGIBT, BESTIMMT WERDEN. ÄARAUFHIN KANN DAS ÐIXEL GESETZT WERDEN MIT: ÓÙÓ985,ÁÄ,ØÁÎÄ7 ÄIE ÍASCHINENROUTINE ST½TZT SICH AUF DIE ÒOUTINE ÂIT BESTIMMEN. ÄER ÁKKUINHALT MIT DEM GESETZEN ÂIT IST NUR NOCH MIT DEM ÂYTE DER GEW½NSCHTEN ÁDRESSE DURCH ÏÒ ZU VERKN½PFEN, UM AUCH DORT DAS ENTSPRECHENDE ÂIT ZU SETZEN. $03Å3 BIS $03Åà ÂIT L¼SCHEN: ÄIESE ÒOUTINE IST DAS ÇEGENST½CK ZU ÂIT SETZEN. ÄER ÁUFRUF ERFOLGT MIT: ÓÙÓ995,ÁÄ,ØÁÎÄ7 ÕM DAS ENTSPRECHENDE ÂIT AUF NULL ZU SETZEN, WIRD DER ÁKKUINHALT MIT ÅÏÒ #$ÆÆ INVERTIERT, SO DA¾ ALLE ÂITS, BIS AUF DAS GEW½NSCHTE, AUF ÅINS GESETZT SIND. ÎACH DEM ÖERKN½PFEN DES ÁKKUINHALTES MIT DEM ÂYTE DER GEW»HLTEN ÓPEICHERSTELLE UND DEM ÚUR½CKSCHREIBEN IST DAS ÐIXEL AUF DEM ÂILDSCHIRM GEL¼SCHT. ÍIT DIESEN ÒOUTINEN IST DER ËASSETTENPUFFER FAST RESTLOS GEF½LLT, SO DA¾ DORT NICHTS MEHR ÓINNVOLLES UNTERZUBRINGEN IST. ƽR SCHNELLE ÚEICHENFUNKTIONEN, ETWA ÌINIEN, ËREISE, ÖIELECKE ODER DAS ÁUFF½LLEN GESCHLOSSENER ÆIGUREN W»REN UMFANGREICHE ÒOUTINEN VONN¼TEN. ÄOCH L»¾T SICH SICHERLICH MIT DIESEM LEICHT IN EIGENE ÐROGRAMME EINBINDBAREN ÍINIMALKONZEPT EINE ÍENGE ANFANGEN. ÇRAFIK MIT DEM Ã64 SOLLTE F½R ÓIE NICHT L»NGER EIN ÂUCH MIT SIEBEN ÓIEGELN SEIN.