Der ANTIC Grafikchip - Scrolling

Hauptkategorie: 8-Bitter
Erstellt: 12 November 2011
Zugriffe: 27989

Beitragsseiten

            *** ATARI INTERN                                   ANTIC ***


            Es wäre unklug, den Wert im Register VSCROL (also die Anzahl
            der  Bildzeilen,  um  die ein Bildblock  nach  oben  gerückt
            werden  soll),  größer zu wählen,  als den Maximalstand  des
            DCTR-Zählers.  Meistens werden die "überflüssigen" Bits ein-
            fach ignoriert, aber gerade bei ANTIC-Modus "3" kann es auch
            zu anderen Störungen kommen.


            Soll  der gesamte Bildschirm oder nur die  untersten  Zeilen
            verschiebbar  gemacht werden,  so muß eine weitere Sache be-
            achtet  werden:  Wenn auch bei der letzten Zeile des  Bildes
            Bit  5 des dazugehörigen ANTIC-Befehls  gesetzt  ist,  rollt
            diese Zeile nicht in das Bild,  sondern springt hinein.  Der
            ANTIC kann nicht erkennen,  daß es sich bei dieser Zeile  um
            die  letzte zu verschiebende Zeile handelt.  Damit der ANTIC
            auch  diese Zeile richtig behandelt,  muß bei ihr Bit 5  des
            ANTIC-Befehls gelöscht werden.  Jetzt kann der ANTIC  erken-
            nen,  daß  dies die letzte zu verschiebende Zeile ist und er
            "rollt" auch diese Zeile ins Bild.


            Mit dem VSCROL-Register kann man das Bild natürlich nicht um
            mehr  als eine Zeile,  das heißt um eine bis 15  Bildzeilen,
            abrollen  lassen.  Meist möchte man das Bild aber über  eine
            sehr viel größere Fläche bewegen.  Um dies zu erreichen, muß
            die Technik der groben Verschiebung,  die vorher im Beispiel
            verwendet  wurde,  mit der Feinverschiebung mit dem  VSCROL-
            Register kombiniert werden.  Beim Aufwärtsrollen eines  nor-
            malen  Textes,  bei dem jeder ANTIC-Befehl 8 Bildzeilen  er-
            zeugt  (zum Beispiel ANTIC-Modus "2"),  sollte man das  Bild
            erst mit 7 Feinverschiebungen nach oben rollen.  Statt einer
            (ohnehin nicht möglichen) achten Feinverschiebung, wird eine
            Grobverschiebung um eine Zeile vorgenommen und VSCROL wieder
            auf "0" gesetzt.  Beim Abwärtsrollen wird dagegen zuerst die
            Grobverschiebung um eine Zeile vorgenommen. Gleichzeitig mit
            dieser  Grobverschiebung,  wird aber VSCROL auf "7" gesetzt.
            Die  Verschiebungen um die nächsten sieben  Bildzeilen  sind
            reine Feinverschiebungen mit VSCROL.





            120