« wszystkie artykuły i działy

« dział "Atari 8-bit"

Atari 8-bit » Programowe tryby graficzne.

Atari 8-bit posiada dość szeroki zakres kombinacji trybów graficznych. Oprócz standardowych trybów "systemowych" elastyczność w programowaniu procesora graficznego jest na tyle duża, że można np. powielić jedną linię trybu hires 100 razy i zyskać obraz, gdzie piksel będzie miał wysokość 100 linii, czy też skonstruować strukturę ekranu o wysokości np. 220 linii, gdzie dolne 110 linii będzie lustrzanym odbiciem górnych 110 linii. I to wszystko polega jedynie na jednorazowej konfiguracji procesora graficznego (a ściślej na napisaniu programu procesora graficznego, który ten będzie realizował bez jakiegokolwiek udziału procesora głównego).

Jednak główną bolączką graficzną komputerów Atari 8-bit jest bez wątpienia niezbyt duża standardowa paleta barw. Dlatego też stosuje się 4 typów zabiegów, aby uzyskać większą liczbę kolorów na raz na ekranie.

1. Interlace - polega na przemiennym wyświetlaniu dwóch obrazów - podczas każdego odświeżania ekranu zmieniana jest zawartość ekranu: 1 odświeżanie obraz nr.1, 2 odświeżanie obraz nr.2, 3 odświeżanie obraz nr.1 i tak na skutek bezwładności otrzymujemy efekt migającego obrazu z większą ilością kolorów. Im bardziej zbliżone do siebie odcienie barw na obrazach w momencie "nałożenia się", tym mniej dostrzegalny efekt "migotania".
Spośród najbardziej znanych standardów, które wykorzystują tego typu zabieg są INT - mix dwóch obrazów w trybie 15 daje efekt trybu 160*192(239) przy liczbie barw do w przedziale 7-16 barw, przy niezależności pikseli oraz tryb HIP - mix trybów 9 i 10, pozwalający uzyskać rozdzielczość rzędu 160*192(239) przy palecie rzędu do 30 barw, jednak barwa dwóch sąsiadujących ze sobą pikseli jest częściowo zależna.
Oba tryby dobrze sprawdzają się np. w odcieniach szarości, INT daje bardziej precyzyjny obraz, i jednocześnie wymaga znacznie mniejszego udziału procesora głównego w uzyskaniu tego trybu, HIP lepiej się sprawdza tam, gdzie potrzebna jest większa rozpiętość tonalna, przy nieco mniejszej precyzji.

2. Modyfikacja palety barw - polega na tym, że w trakcie rysowania obrazu zmieniane są wartości rejestrów odpowiadające za kolory. Metoda ta wymaga większego obciążenia procesora głównego, który musi dość intensywnie operować na rejestrach barw. Jednak i tę metodę można podzielić na dwa rozwiązania:

a) modyfikacja rejestrów barw co 1 linię - można ją wykorzystać w praktycznie każdym trybie graficznym. Najbardziej popularne rozwiązania to programy FUN WITH ART i RAMBRANDT - dzięki nim można uzyskać na raz na ekranie do 128 różnych kolorów, przy ograniczeniu, że tylko 4 różne w jednej linii (w przypadku trybu 15). Technika ta jest łatwa do realizacji, ze względu na to, że Atari 8-bit posiada rejestry, które pozwalają na precyzyjną synchronizację procesora głównego głównego z graficznym na poziomie pojedyńczych linii.
b) modyfikacja rejestrów barw kilkukrotnie w ciągu linii - technika ta pozwala na uzyskanie więcej niż 4 kolory w jednej linii (tryb 15), w przypadku trybu 9 pozwala na uzyskanie zależnych od siebie nawet 64 kolorów, jednak jest niezbyt często stosowana ze względu na to, że nie ma za bardzo możliwości synchronizacji na takim poziomie procesora graficznego i głównego i wymaga precyzyjnego obliczania liczby cykli zegara głównego procesora, co wiąże się z tym, że pochłania praktycznie całkowity czas procesora głównego. Przykładem zastosowania tej metody, jest tryb GED, który jest dodatkowo wspomagany przez użycie sprzętowych sprite-ów.

3. Zmiania trybów graficznyh rastra. Częściowo z tego mechanizmu korzysta tryb HIP, jednak on dodatkowo stosuje interlace. Istnieje bowiem tryb o nazwie APC (używany przez programy APAC i PLAMA256) pozwalający na uzyskanie sztuczki, która opiera się na tricku zlewania się barw. Trick ten polega na tym, że co linię zmienia się tryby graficzne 9 i 11 (pierwszy oferuje 16 odcieni jednej barwy, drugi 16 barw w jednym poziomie jasności, dzięki czemu uzyskuje się 256 różnych barw, niestety przy niezbyt dużej rozdzielczości rzędu 80*96(119).

4. Tryby hybrydowe - opierają się na połączeniu kilku (lub wszystkich) z wyżej wymienionych. Do najciekawszych należy tutaj RIP - jest to tryb HIP połączony ze zmianą co linię paletą barw, co pozwala na uzyskanie obrazu o rozdzielczości 160*192(239) przy palecie barw do 256, przy ograniczeniu ok. 30 częściowo zależnych barw co linię ekranu.
Innym ciekawym trybem jest CIN - jest to pewnego rodzaju odmiana INT-a, tylko, że zamiast dwóch obrazów w trybie 15 łączymy tryb 15 z trybem 9 lub 11 - dzięki czemu uzyskujemy obraz 160*192(239), przy zależności od siebie dwóch sąsiadujących pikseli, uzyskujemy w ten sposób w jednej linii do 64 barw wg zależności: 4 kolory z 16 niezależnych odcieniach lub 16 kolorów w 4 niezależnych odcieniach.
Kolejnym trybem jest TIP - jest to hybryda APC i HIPa polegająca na naprzemiennej manipulacji trybami 9,10,11 w odpowiedniej kolejności - dzięki temu uzyskujemy w interlace-ie do 256 barw w rozdzielczości 160*96(119)

Komentarze

  • ~gd 2009-11-07 12:00:58
    jaki żal nie ma tu nic na moje pytanie
  • macgyver 2009-01-21 16:40:07
    Było coś takiego, ale nie powstał na podłożu tego żaden wspierany standard.
  • ~pitek 2009-01-07 20:44:30
    Widziałem kiedyś tryby interlaceowane - 8 z 15, ktoś wie jak to się zwało?