Rejestry PIA

From Atariki

(Różnice między wersjami)
Jump to: navigation, search
Wersja z dnia 11:14, 8 sty 2006
KMK (Dyskusja | wkład)
(Lista rejestrów)
← Previous diff
Wersja z dnia 11:23, 8 sty 2006
KMK (Dyskusja | wkład)
(Lista rejestrów)
Next diff →
Linia 34: Linia 34:
<p>Wartością domyślną jest $FF.</p> <p>Wartością domyślną jest $FF.</p>
</td></tr> </td></tr>
-<tr><td id="PACTL">$D302</td><td>PACTL</td><td> </td></tr>+<tr><td id="PACTL">$D302</td><td>PACTL</td><td>
 +<p>Rejestr kontroli portu A. Znaczenie bitów:</p>
 +* bit 7: status przerwania IRQ portu A (linia PROCEED [[gniazdo SIO|gniazda SIO]], 1 - wystąpiło)
 +* bit 6: nieużywany (zawsze 0)
 +* bit 5: nieużywany (zawsze 1)
 +* bit 4: nieużywany (zawsze 1)
 +* bit 3: sterowanie silnikiem magnetofonu (0 - włączony, 1 - wyłączony)
 +* bit 2: rejestr porządkowania danych w porcie A (0) lub rejestr przesyłania danych tamże (1)
 +* bit 1: nieużywany (zawsze 0)
 +* bit 0: zezwolenie na przerwanie IRQ portu A (1 - dozwolone)
 +<p>Przerwanie IRQ portu A podłączone jest do linii PROCEED [[gniazdo SIO|gniazda SIO]]. System programuje tu domyślnie brak zezwolenia na jego wystąpienie.</p>
 +</td></tr>
<tr><td id="PBCTL">$D303</td><td>PBCTL</td><td> </td></tr> <tr><td id="PBCTL">$D303</td><td>PBCTL</td><td> </td></tr>

Wersja z dnia 11:23, 8 sty 2006

Lista rejestrów

AdresEtykietaOpis
$D300PORTA

Rejestr porządkowania danych: Ustawienie bitu na 0 programuje odpowiedni bit w rejestrze przesyłania danych jako bit wejścia danych, w przeciwnym wypadku - jako bit wyjścia danych. System programuje wszystkie linie portu jako wejście.

Rejestr przesyłania danych. Przypisany jest do dwóch pierwszych (w XL/XE: dwóch jedynych) portów joysticka, młodsze 4 bity przekazują stany joysticka nr 1, starsze - joysticka nr 2.

$D301PORTB

Rejestr porządkowania danych: Ustawienie bitu na 0 programuje odpowiedni bit w rejestrze przesyłania danych jako bit wejścia danych, 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).

Rejestr przesyłania danych. W serii 400/800 przypisany jest do drugiej (nieistniejącej w XL/XE) pary portów joysticka, młodsze 4 bity przekazują stany joysticka nr 3, starsze - joysticka nr 4.

W serii XL rejestr ten steruje układem zarządzania pamięcią oraz (istniejącymi w niektórych modelach) diodami konsoli. Przypisanie bitów:

  • bit 7: RAM w obszarze $5000-$57FF (1) lub SELF TEST tamże (0)
  • bit 6: nieużywany
  • bit 5: nieużywany
  • bit 4: nieużywany
  • bit 3: LED 2 (1 - świeci się)
  • bit 2: LED 1 (1 - świeci się)
  • bit 1: RAM w obszarze $A000-$BFFF (1) lub Atari BASIC tamże (0)
  • bit 0: ROM systemu operacyjnego w obszarze $C000-$CFFF i $D800-$FFFF (1) lub RAM tamże (0)

Wartością domyślną jest $FF.

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 6: nieużywany
  • bit 5: w obszarze $4000-$7FFF 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 3: wybór banku pamięci dodatkowej 16k w obszarze $4000-$7FFF
  • bit 2: wybór banku pamięci dodatkowej 16k w obszarze $4000-$7FFF
  • bit 1: RAM w obszarze $A000-$BFFF (1) lub Atari BASIC tamże (0)
  • bit 0: ROM systemu operacyjnego w obszarze $C000-$CFFF i $D800-$FFFF (1) lub RAM tamże (0)

Wartością domyślną jest $FF.

$D302PACTL

Rejestr kontroli portu A. Znaczenie bitów:

  • bit 7: status przerwania IRQ portu A (linia PROCEED gniazda SIO, 1 - wystąpiło)
  • bit 6: nieużywany (zawsze 0)
  • bit 5: nieużywany (zawsze 1)
  • bit 4: nieużywany (zawsze 1)
  • bit 3: sterowanie silnikiem magnetofonu (0 - włączony, 1 - wyłączony)
  • bit 2: rejestr porządkowania danych w porcie A (0) lub rejestr przesyłania danych tamże (1)
  • bit 1: nieużywany (zawsze 0)
  • bit 0: zezwolenie na przerwanie IRQ portu A (1 - dozwolone)

Przerwanie IRQ portu A podłączone jest do linii PROCEED gniazda SIO. System programuje tu domyślnie brak zezwolenia na jego wystąpienie.

$D303PBCTL

Ten artykuł to tylko zalążek. Możesz pomóc rozwojowi Atariki poprzez rozszerzenie go o więcej informacji.

Personal tools