POKEY

From Atariki

Revision as of 15:25, 4 gru 2005; view current revision
←Older revision | Newer revision→
Jump to: navigation, search

POKEY (Pot-Keyboard Integrated Circuit) - układ LSI o oznaczeniu C012294.

Służy do generowania dźwięku, kontroli interfejsu szeregowego (SIO), obsługi manipulatorów analogowych (wiosełek - paddle) i klawiatury. Poza tym Pokey zawiera cztery układy zegarowe oraz generator liczb pseudolosowych i jest głównym - ale nie jedynym - źrodłem przerwań IRQ.

Spis treści

Transmisja szeregowa

Protokół transmisji urządzeń podłączonych do szyny szeregowej (SIO) jest zdefiniowany następująco:

  • 1 bit startu
  • osiem bitów danych
  • brak kontroli parzystości
  • 1 bit stopu
  • 19200 bitów na sekundę

Dane transmitowane są w kolejności od najmłodszego bitu. Szybkość transmisji 19200 bitów na sekundę nie dotyczy magnetofonu kasetowego, gdzie określona jest na 600 bitów na sekundę.

Układ POKEY a transmisja szeregowa

Transmisja szeregowa jest wspomagana przez układ POKEY. Działa on jako UART, przejmując na siebie podział bajtów, wpisanych przez system do rejestrze wyjścia szeregowego (SEROUT), na pojedyncze bity i wyemitowanie ich na złącze szeregowe z zaprogramowaną częstotliwością, lub scalenie napływających z urządzenia bitów w bajt i przekazanie go w rejestrze wejścia szeregowego (SERIN).

Szybkość transmisji programowana jest przy użyciu połączonych w parę dzielników 3 i 4 (AUDF3 i AUDF4), do których doprowadza się sygnał o częstotliwości głównego zegara systemu, czyli 1773446,25 Hz w systemie PAL albo 1789772,5 Hz w systemie NTSC. Szybkość tę możemy obliczyć według następującego wzoru:

baud = (F/2)/(R+7)

gdzie F to wspomniana wyżej częstotliwość bazowa, a R - wartość wstawiana do rejestru układu POKEY. Żądaną wartość licznika dla znanej prędkości możemy obliczyć po przekształceniu tego wzoru:

R = ((F/2)/baud)-7

Szukana wartość to R po zaokrągleniu do najbliższej całkowitej.

Normalnie ustawianą przez system operacyjny wartością R jest 40. Teoretycznie ma to odpowiadać szybkości 19200 bitów na sekundę, z podanego wzoru wynika jednak, że w rzeczywistości jest to 18866,45 bps w systemie PAL oraz 19040 bps w systemie NTSC. W praktyce szybkość transmisji nieprzyspieszanej może wahać się w zakresie od 17734,46 bps do 20152,8 bps (19200 bps +/- 5%; odpowiada to wartościom dzielnika POKEY-a z zakresu od 43 do 37, w systemie PAL).

Możliwości układu POKEY nie kończą się jednak na szybkości 20 kbps. Niektóre możliwe do wygenerowania szybkości transmisji przedstawia poniższa tabela:

Rbps
(PAL / NTSC)
Uwagi
0126674,7 / 127840,9Szybkość trudna do praktycznego użycia ze względu na zakłócenia powodowane przez układ ANTIC przy generowaniu obrazu.
1110840,4 / 111860,8j/w. Jest to najbliższy (odchyłka <5%) odpowiednik "standardowej" szybkości 115,2 kbps (6x19200).
298524,8 / 99431,8Maksymalna praktycznie użyteczna szybkość transmisji szeregowej ze stacją dysków
388672,3 / 89488,6
480611,2 / 81353,3Szybkość opcjonalna stacji XFD-602
573893,6 / 74573,8Najbliższy (odchyłka <5%) odpowiednik "standardowej" szybkości 76800 bps (4x19200).
668209,5 / 68837,4Szybkość stacji LDW Super 2000, Top Drive 1050, TOMS Turbo, TOMS Multi, TOMS 710, TOMS 720, XFD-601/602 itd., krótko mówiąc, najpopularniejsze "turbo" do szeregowej stacji dysków
763337,3 / 63920,4
859114,9 / 59659Najbliższy (odchyłka <5%) odpowiednik "standardowej" szybkości 57600 bps (3x19200).
955420,2 / 55930,4Szybkość transmisji używana w rozszerzeniu Speedy 1050
1052160,2 / 52640,452 kbps, szybkość stacji US Doubler i Happy Warp
1149262,4 / 49715,9
1246669,6 / 47099,3
1344336,1 / 44744,3
1442224,9 / 42613,6
1540305,6 / 40676,6
1638553,2 / 38908Maksymalna szybkość nie modyfikowanych stacji XF-551 oraz CA-2001. Najbliższy (odchyłka <5%) odpowiednik "standardowej" szybkości 38400 bps (2x19200).

Oczywiście wartość dzielnika częstotliwości może mieć i wyższe wartości, do 65535 włącznie (co daje 13,6 bps).

Magnetofon

Dla magnetofonu domyślną wartością rejestru jest 1484, co odpowiada szybkości 594,7 bps. Szybkość tę podczas transmisji komputer dostosowuje w pewnym zakresie do bieżących potrzeb wynikłych np. z nierównomiernego przesuwu taśmy bądź jej rozciągnięcia itd.

Do zapisu danych na magnetofon stosowany jest tryb dwutonowy (odczyt przebiega normalnie).

Rejestry POKEY-a

Patrz rejestry POKEY-a.

Personal tools