SPRZĘT / ARTYKUŁY TECHNICZNE

Architektura Atari: 6502, ANTIC, GTIA i POKEY

Procesor 6502 wykonuje program, a układy ANTIC i GTIA zajmują się obrazem. POKEY generuje dźwięk, odczytuje klawiaturę i uczestniczy w komunikacji z urządzeniami.

6502: program i wspólna pamięć

Procesor wykonuje instrukcje programów i systemu operacyjnego. Ma 8-bitową magistralę danych oraz 16-bitowe adresowanie: jednocześnie widzi przestrzeń 64 KiB. W niej mieszczą się RAM, ROM i rejestry urządzeń, więc 64 KiB adresów nie oznacza 64 KiB wolnych dla programu. Częstotliwość taktowania wynosi około 1,77 MHz w PAL i 1,79 MHz w NTSC. Część cykli przejmuje ANTIC. Wariant 6502C, zwany SALLY, należy odróżnić od procesora CMOS 65C02.

ANTIC: obraz opisany listą instrukcji

ANTIC odczytuje z pamięci listę wyświetlania, czyli display list. Jej wpisy określają tryb kolejnych fragmentów ekranu oraz miejsce danych obrazu. Dlatego jeden ekran może łączyć tekst z grafiką o różnej rozdzielczości. Układ pobiera dane przez DMA, bez kopiowania każdego bajtu przez procesor. Obsługuje również przewijanie i przerwania DLI. Programista przygotowuje listę wyświetlania i dane obrazu, a ANTIC odczytuje je przy rysowaniu każdej klatki. Numer trybu ANTIC nie jest tym samym co numer polecenia GRAPHICS w BASIC-u.

GTIA: kolory i grafika Player/Missile

GTIA łączy obraz tła z ANTIC-a z grafiką Player/Missile. Cztery obiekty player i cztery węższe missile mają osobne pozycje, szerokości i kolory. Rejestry określają kolejność ich nakładania oraz sygnalizują kolizje. Liczba kolorów widocznych jednocześnie zależy od trybu obrazu.

Wczesne egzemplarze 400/800 mają układ CTIA. Obsługuje on podstawową grafikę, lecz nie ma dodatkowych trybów GTIA.

POKEY: dźwięk i komunikacja

POKEY ma cztery kanały dźwięku. Ich dzielniki częstotliwości i generatory szumu pozwalają tworzyć tony oraz efekty; wybrane kanały można łączyć w pary dla dokładniejszego sterowania częstotliwością. Układ uczestniczy też w skanowaniu klawiatury, pomiarze wejść paddle, generowaniu przerwań i szeregowej transmisji danych. SIO wykorzystuje więc część tego samego układu co muzyka. Kierunki joysticków i sterowanie bankami pamięci to dodatkowe zadania PIA, a przyciski fire odczytuje GTIA. POKEY pełni więc znacznie więcej funkcji niż samo generowanie dźwięku.

Źródła i dalsza lektura