Amiga HAM

Amiga HAM

Amiga HAM (Amiga Hold-and-Modify) to metoda interpretacji pamięci ekranu w komputerach Amiga, która umożliwia wyświetlanie kolorów 12-bitowych (4096 kolorów) przy rzeczywistej głębokości ekranu wynoszącej 6 bitów. Można ją traktować jako stratną kompresję obrazu, gdzie dekompresja odbywa się w czasie rzeczywistym podczas wyświetlania (przenoszenia skompresowanej zawartości z bufora ramki na ekran).

Tryb HAM został początkowo wprowadzony w prototypach Amigi jako eksperyment i nie planowano jego wykorzystania w finalnym produkcie. Zdecydowano się go jednak nie usuwać, ponieważ wymagałoby to zbyt drastycznych zmian w układzie.

Zasada działania

W trybie HAM dane piksela o sześciu bitach są interpretowane w następujący sposób:

  • pierwsze cztery bity stanowią bity danych,
  • kolejne dwa bity to bity sterujące, które mogą przyjmować cztery wartości:
    • set – poleca normalną interpretację bitów danych (jako numer koloru w bieżącej palecie),
    • modify red – składowe zielona i niebieska koloru pozostają takie, jak w poprzednim pikselu (hold), natomiast składowa czerwona przyjmuje czterobitową wartość z bitów danych (modify),
    • modify green – jak wyżej, ale zmieniana jest składowa zielona,
    • modify blue – jak wyżej, ale zmieniana jest składowa niebieska.

Dzięki możliwości ustawienia poszczególnych składowych koloru dla danego piksela, uzyskujemy (2^4)*(2^4)*(2^4)=4096 kolorów na ekranie. Jednak ze względu na to, że dla jednego piksela możemy zmienić tylko jedną składową, przejście pomiędzy różnymi kolorami wymaga tyle pikseli, ile składowych kolory się różnią (czyli jeżeli różnią się wszystkimi, to trzy). W rezultacie efektywna rozdzielczość pozioma koloru jest trzykrotnie niższa od rozdzielczości poziomej ekranu. To prowadzi do pojawiania się smug pikseli w nieoczekiwanych barwach na granicach obszarów o kolorach, których przynajmniej dwie składowe są różne (tzw. rampa).

HAM8

W układach graficznych AGA dane piksela są ośmiobitowe. W trybie HAM, nazywanym tutaj HAM8 (po wprowadzeniu AGA poprzedni tryb HAM określano jako HAM6), bity sterujące wciąż są dwa, a składową koloru (jeżeli jest zmieniana) określa sześć pozostałych bitów; jednak nadal mogą być zmieniane tylko cztery (najbardziej znaczące). Często ten tryb określa się jako umożliwiający wyświetlanie 262 tys. kolorów, jednak w praktyce trudno jest dokładnie obliczyć rzeczywistą ich liczbę na ekranie (zależy to od rozdzielczości wyświetlanego obrazu).

Zobacz też

Przypisy

Przeczytaj u przyjaciół: