Amiga HAM (Amiga Hold-and-Modify) – sposób interpretacji pamięci ekranu w komputerach Amiga, pozwalający wyświetlić kolor 12-bitowy (4096 kolorów) przy rzeczywistej 6-bitowej głębokości ekranu. Można go interpretować jako stratną kompresję obrazu, dekompresja odbywa się w czasie rzeczywistym podczas wyświetlania (przenoszenia skompresowanej zawartości bufora ramki na ekran)
Tryb HAM był pierwotnie zaimplementowany w prototypach Amigi jako eksperyment, nie miał trafić do finalnego produktu. Pozostawiono go, ponieważ jego usunięcie wymagałoby zbyt radykalnego przekonstruowania układu.
Zasada działania W trybie HAM sześciobitowe dane piksela interpretowane są następująco: pierwsze cztery bity to bity danych następne dwa bity to bity sterujące, możliwe cztery wartości to: set - nakazuje normalną interpretację bitów danych (jako nr koloru w aktualnej palecie) modify red – składowe zielona i niebieska koloru pozostają takie, jak w poprzednim pikselu (hold), składowa czerwona przyjmuje czterobitową wartość bitów danych (modify) modify green – jak wyżej, ale modyfikowana jest składowa zielona modify blue – jak wyżej, ale modyfikowana jest składowa niebieska. Mając możliwość ustawienia poszczególnych składowych koloru dla danego piksela, uzyskujemy (2^4)*(2^4)*(2^4)=4096 kolorów na ekranie.