Rejestry PIA
From Atariki
| Wersja z dnia 23:16, 8 lis 2011 KMK (Dyskusja | wkład) ← Previous diff  | 
				Wersja z dnia 11:15, 8 mar 2012 Krótki (Dyskusja | wkład) (→Lista rejestrów - gra w XEGS włączona tylko gdy BASIC wyłączony) Next diff →  | 
			||
| Linia 60: | Linia 60: | ||
| W serii [[XE]] rejestr ten steruje układem zarządzania pamięcią. Przypisanie bitów: | W serii [[XE]] rejestr ten steruje układem zarządzania pamięcią. Przypisanie bitów: | ||
| * bit 7: RAM w obszarze $5000-$57FF (1) lub SELF TEST tamże (0) | * bit 7: RAM w obszarze $5000-$57FF (1) lub SELF TEST tamże (0) | ||
| - | * bit 6: nieużywany (w [[XEGS]] 0 włącza ROM gry [[Missile Command]]) | + | * bit 6: w [[XEGS]] gdy BASIC jest wyłączony (bit 1=1), ustawienie tutaj 0 włącza ROM wbudowanej gry [[Missile Command]]. W pozostałych modelach nieużywany. | 
| * bit 5: w obszarze $4000-$7FFF [[ANTIC (układ)|ANTIC]] widzi pamięć główną (1) lub dodatkową (0) | * bit 5: w obszarze $4000-$7FFF [[ANTIC (układ)|ANTIC]] widzi pamięć główną (1) lub dodatkową (0) | ||
| * bit 4: w obszarze $4000-$7FFF CPU widzi pamięć główną (1) lub dodatkową (0) | * bit 4: w obszarze $4000-$7FFF CPU widzi pamięć główną (1) lub dodatkową (0) | ||
Wersja z dnia 11:15, 8 mar 2012
Układ PIA, sześć rejestrów.
Lista rejestrów
| Adres | Etykieta | Opis | 
| $D300 | PORTA | Jako rejestr kierunku przepływu danych: ustawienie bitu na 0 programuje odpowiedni bit w rejestrze przesyłania danych jako bit wejścia, w przeciwnym wypadku - jako bit wyjścia danych. System programuje wszystkie linie portu jako wejście. | 
| 
 Jako rejestr przesyłania danych: przypisany jest do dwóch pierwszych (w XL i XE: dwóch jedynych) gniazd joysticka, młodsze 4 bity przekazują stany joysticka nr 1, starsze - joysticka nr 2. Znaczenie bitów kiedy do gniazd podłączone są joysticki (cień dla dolnego nibble znajduje się odpowiednio pod JSTICK0 ($0278), a dla górnego pod JSTICK1 ($0279)): 
 Znaczenie bitów kiedy do gniazd podłączone są paddles (cienie dla odpowiednich przycisków znajdują się od PTRIG0 ($027C) do PTRIG3 ($027F)): 
 Znaczenie bitów kiedy do gniazd podłączone jest pióro świetlne (dedykowanych rejestrów cieni dla przycisków pióra nie ma, lecz z powodzeniem można posłużyć się rejestrami położenia joysticków JSTICK0, oraz JSTICK1): 
  | ||
| $D301 | PORTB | Jako rejestr kierunku przepływu danych: ustawienie bitu na 0 programuje odpowiedni bit w rejestrze przesyłania danych jako bit wejścia, w przeciwnym wypadku - jako bit wyjścia danych. System w 400/800 programuje wszystkie linie portu jako wejście, w XL/XE - wszystkie jako wyjście, za wyjątkiem 1450XLD, gdzie bity 4 i 5 są programowane jako wejściowe (aczkolwiek nie wiadomo, po co). | 
| 
 Jako rejestr przesyłania danych: w serii 400/800 przypisany jest do drugiej (nieistniejącej w XL/XE) pary gniazd joysticka, młodsze 4 bity przekazują stany joysticka nr 3, starsze - joysticka nr 4. Cienie znajdują się odpowiednio pod JSTICK2 ($027A) i JSTICK3 ($027B). W serii XL/XE są to duplikaty cieni portu A. W serii XL rejestr ten steruje układem zarządzania pamięcią oraz (istniejącymi w niektórych modelach) diodami konsoli. Przypisanie bitów: 
 Wartością domyślną jest $FF. W serii XE rejestr ten steruje układem zarządzania pamięcią. Przypisanie bitów: 
 Wartością domyślną jest $FF. Działanie bitu 7 jest uzależnione od stanu bitu 0: bit 7 włącza i wyłącza SELF TEST tylko wtedy, kiedy bit 0 jest ustawiony na 1. W przeciwnym razie zmiany stanu bitu 7 są ignorowane. Działanie tego rejestru modyfikują rozszerzenia pamięci. Dwa podstawowe typy to:  | ||
| $D302 | PACTL | 
 Rejestr kontroli portu A. Znaczenie bitów: 
 Przerwanie IRQ portu A podłączone jest do linii PROCEED gniazda SIO. System programuje tu domyślnie brak zezwolenia na jego wystąpienie. Status IRQ kasowany jest automatycznie po odczycie PORTA.  | 
| $D303 | PBCTL | 
 Rejestr kontroli portu B. Znaczenie bitów: 
 Przerwanie IRQ portu B podłączone jest do linii INTERRUPT gniazda SIO. System programuje tu domyślnie brak zezwolenia na jego wystąpienie. Status IRQ kasowany jest automatycznie po odczycie PORTB.  | 
