Rejestry PIA: Różnice pomiędzy wersjami

Z Atariki
Przejdź do nawigacji Przejdź do wyszukiwania
→Lista rejestrów: no i odstubienie
Linia 36: Linia 36:
<tr><td id="PACTL">$D302</td><td>PACTL</td><td>
<tr><td id="PACTL">$D302</td><td>PACTL</td><td>
<p>Rejestr kontroli portu A. Znaczenie bitów:</p>
<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 7: status przerwania IRQ portu A (1 - wystąpiło)
* bit 6: nieużywany (zawsze 0)
* bit 6: nieużywany (zawsze 0)
* bit 5: nieużywany (zawsze 1)
* bit 5: nieużywany (zawsze 1)
Linia 47: Linia 47:
</td></tr>
</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>
<p>Rejestr kontroli portu B. Znaczenie bitów:</p>
* bit 7: status przerwania IRQ portu B (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 linią COMMAND [[gniazdo SIO|gniazda SIO]] (0 - aktywna)
* bit 2: rejestr porządkowania danych w porcie B (0) lub rejestr przesyłania danych tamże (1)
* bit 1: nieużywany (zawsze 0)
* bit 0: zezwolenie na przerwanie IRQ portu B (1 - dozwolone)
<p>Przerwanie IRQ portu B podłączone jest do linii INTERRUPT [[gniazdo SIO|gniazda SIO]]. System programuje tu domyślnie brak zezwolenia na jego wystąpienie.</p>


</table>
</table>
{{stub}}
[[Kategoria:Programowanie Atari 8-bit]]
[[Kategoria:Programowanie Atari 8-bit]]

Wersja z 8 sty 2006, 13:27

Lista rejestrów

Rejestr kontroli portu B. Znaczenie bitów:

  • bit 7: status przerwania IRQ portu B (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 linią COMMAND gniazda SIO (0 - aktywna)
  • bit 2: rejestr porządkowania danych w porcie B (0) lub rejestr przesyłania danych tamże (1)
  • bit 1: nieużywany (zawsze 0)
  • bit 0: zezwolenie na przerwanie IRQ portu B (1 - dozwolone)

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

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 (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