Rejestry ANTIC-a
From Atariki
| Wersja z dnia 17:18, 20 gru 2005 KMK (Dyskusja | wkład) (→Lista rejestrów) ← Previous diff |
Wersja z dnia 17:59, 20 gru 2005 KMK (Dyskusja | wkład) (→Lista rejestrów) Next diff → |
||
| Linia 15: | Linia 15: | ||
| * bit 3: DMA dla graczy (1 = włączone) | * bit 3: DMA dla graczy (1 = włączone) | ||
| * bit 2: DMA dla pocisków (1 = włączone) | * bit 2: DMA dla pocisków (1 = włączone) | ||
| - | * bity 1-0: szerokość obrazu (00 - brak obrazu, 01 - 32 kolumny, 10 - 40 kolumn, 11 - 48 kolumn) | + | |
| + | <p>Bity 0 i 1 wybierają szerokość obrazu (bit 0 od prawej):</p> | ||
| + | * 00 - brak obrazu | ||
| + | * 01 - wąski obraz (32 kolumny, 256 pikseli) | ||
| + | * 10 - normalny obraz (40 kolumn, 320 pikseli) | ||
| + | * 11 - szeroki obraz (48 kolumn, 384 piksele) | ||
| <p>Normalnie ustawianą tu przez system operacyjny wartością jest $22 (34).</p> | <p>Normalnie ustawianą tu przez system operacyjny wartością jest $22 (34).</p> | ||
| </td></tr> | </td></tr> | ||
Wersja z dnia 17:59, 20 gru 2005
Układ ANTIC, 15 rejestrów.
Lista rejestrów
| Adres | Etykieta | Opis |
| $D400 (W) | DMACTL |
Rejestr kontroli dostępu do pamięci (DMA Control register). Ma cień DMACTLS pod adresem $022F, skąd procedura SYSVBL przepisuje stan rejestru za każdym wystąpieniem przerwania VBL. Znaczenie bitów:
Bity 0 i 1 wybierają szerokość obrazu (bit 0 od prawej):
Normalnie ustawianą tu przez system operacyjny wartością jest $22 (34). |
| $D401 (W) | CHRCTL |
Rejestr kontroli wyświetlania znaków (Character control register). Ma cień CHACT pod adresem $02F3, skąd procedura SYSVBL przepisuje stan rejestru za każdym wystąpieniem przerwania VBL. Znaczenie bitów:
Pozostałe bity są niewykorzystane. Normalną wartością CHRCTL jest $02. |
| $D402 (W) | DLPTR |
Wskaźnik pierwszego rozkazu Display List. Ma cień DLPTRS pod adresem $0230-$0231, skąd procedura SYSVBL przepisuje stan rejestru za każdym wystąpieniem przerwania VBL. DIsplay List jest zazwyczaj ulokowana bezpośrednio przed pamięcią obrazu. |
| $D403 (W) | ||
| $D404 (W) | HSCROL | |
| $D405 (W) | VSCROL | |
| $D406 | - | |
| $D407 (W) | PMBASE | |
| $D408 | - | |
| $D409 (W) | CHBASE | |
| $D40A (W) | WSYNC | |
| $D40B (R) | VCOUNT | |
| $D40C (R) | LPENH | |
| $D40D (R) | LPENV | |
| $D40E (W) | NMIEN |
Rejestr kontrolujący występowanie przerwań NMI (NMI enable register). Znaczenie bitów:
System operacyjny normalnie ustawia tu wartość $40 (DLI wyłączone, VBL włączone). Pozostałe bity są niewykorzystane. |
| $D40F (R) | NMIST |
Rejestr statusu przerwań NMI (NMI status register). Znaczenie bitów:
Pozostałe bity sa niewykorzystane. Skasowania bitów NMIST dokonuje się przez zapis rejestru NMIRES $D40F. Ponadto bit DLI jest kasowany w momencie wystąpienia przerwania VBL. |
| $D40F (W) | NMIRES |
Zapis tego rejestru (dowolną wartością) powoduje skasowanie bitów statusu NMI w rejestrze NMIST $D40F. |
Ten artykuł to tylko zalążek. Możesz pomóc rozwojowi Atariki poprzez rozszerzenie go o więcej informacji.
