Der ANTIC Grafikchip - Kontrollregister

Hauptkategorie: 8-Bitter
Erstellt: 12 November 2011
Zugriffe: 21931
            *** ATARI INTERN                                   ANTIC ***


            frage)  wird  vom POKEY und gegebenenfalls von der  PIA  be-
            nutzt.  Der  nicht von der CPU intern maskierbare (abschalt-
            bare)  Interrupt  (NMI :  Non Maskable Interrupt)  wird  vom
            ANTIC verwaltet. Bei den alten 400/800er Modellen löste auch
            die  "RESET"-Taste  über den ANTIC einen NMI  aus,  bei  den
            neuen Modellen ist diese Methode unbrauchbar geworden,  weil
            zum Beispiel nach dem Einstecken eines (anderen)  ROM-Moduls
            unbedingt  ein Hardware-Reset erfolgen muß,  wenn dabei  das
            System  abgestürzt  ist.  Bei den alten Geräten  wurde  beim
            Modulwechsel automatisch der Computer abgeschaltet.


            Im ANTIC gibt es das Register

            NMIEN     54286     $d40e

            mit  dem  es möglich ist,  die  sogenannten  ANTIC-Programm-
            Unterbrechungen  und den Vertikalsynchron-Interrupt (in  dem
            das  Betriebssystem  zum Beispiel die  Schattenregister  er-
            zeugt)  bereits im ANTIC zu unterbinden.  Eine  Unterbindung
            (Maskierung) des NMI bei (hier nicht vorgesehenem) Signal an
            der  "RNMI"-Leitung ist mit NMIEN nicht möglich.  Die  Bits
            von NMIEN haben folgende Funktionen:

            Bit 0-5 :      nicht benutzt
            Bit  6  :      Wenn   dieses  Bit  gesetzt  ist,   ist   der
                           Vertikalsynchron-Interrupt eingeschaltet
            Bit  7  :      Wenn  dieses  Bit gesetzt  ist,  sind  ANTIC-
                           Programm-Unterbrechungen möglich.


            Vom Betriebssystem wird der Wert $40 bzw. 64 in NMIEN einge-
            tragen.  Wenn der NMI-Eingang der CPU auf "0"  geht,  unter-
            bricht  sie  ihre  normale  Tätigkeit  und  bearbeitet  eine
            Interrupt-Routine,  deren Anfangsadresse an einer bestimmten
            Adresse ($fffa und $fffb) im System gespeichert ist .  Diese
            Routine  muß  am Anfang feststellen,  was die  Unterbrechung
            ausgelöst hat. Dies kann sie im Register

            NMIST     54287     $d40f



                                                                     79