Țineți și modificați

De la Wikipedia, enciclopedia liberă.
Salt la navigare Salt la căutare
Exemplu de 4.096 de imagini color afișate pe Amiga în modul HAM

Cu Hold-And-Modify , adesea menționat prin acronimul său HAM, ne referim la o familie de moduri video grafice tipice platformei Amiga .

Modul HAM nativ, disponibil cu chipset-uri OCS , ECS și AGA , permite afișarea tuturor 4.096 de culori pe ecran folosind doar 6 biți pe pixel în loc de cei 12 biți pe pixel care ar fi necesari. HAM funcționează pe secvențele de pixeli ale aceleiași linii: din cei 6 biți disponibili, doi acționează ca biți de control și stabilesc semnificația celor patru biți rămași: adică dacă una dintre componentele RGB ale pixelului anterior va fi modificată, sau dacă toate cele trei componente vor fi preluate dintr-una din cele 16 culori ale unei anumite palete indexate.

În ultimele computere Amiga bazate pe chipset-ul AGA există, de asemenea, un mod HAM care folosește 8 biți, datorită cărora 262.144 culori pot fi afișate simultan. Pentru a le distinge, cele două moduri sunt numite HAM6 (sau HAM-6 ) și HAM8 (sau HAM-8 ).

HAM poate fi văzut ca o tehnică de compresie a datelor cu pierderi , unde 12/18 biți de informații despre culoare sunt stocate în 6/8 biți de memorie (cu reducere a calității) și sunt decomprimate prin hardware în timp real pe măsură ce memoria video este citită și afișat de procesorul grafic.

Funcționarea modului HAM6

Culorile obținute în modul HAM6

Chipset-urile OCS și ECS acceptă 16 niveluri distincte pentru componentele de culoare roșu, verde și albastru, pentru un total de 4.096 culori posibile (16 * 16 * 16 = 4096). Fiecare dintre cele 3 componente necesită 4 biți de memorie (16 = 2 4 ), deci sunt necesari 12 biți pentru a stoca o culoare.

Cu toate acestea, chipset-urile OCS și ECS acceptă moduri video cu maximum 5 biți pe pixel, deci în mod normal nu pot fi afișate simultan mai mult de 32 de culori, alese dintr-o paletă de 4096. La urmărirea ecranului, cei 5 biți ai fiecărui pixel formează indexul culorii care urmează să fie folosită de paletă.

Modul EHB vă permite să adăugați un al șaselea bit la cei 5 biți pe pixel. Spre deosebire de primele 5, utilizate pentru indicele culorilor, al șaselea bit indică dacă culoarea extrasă din paletă trebuie folosită așa cum este sau prin înjumătățirea intensității acesteia. Chiar și așa, însă, sunt disponibile doar 64 de culori.

HAM, pe de altă parte, vă permite să vizualizați toate cele 4.096 de culori ale Amiga în același timp. Pentru a face acest lucru, folosește 6 biți pe pixel: 2 ca biți de control și 4 ca biți de date. Prin urmare, culoarea pixelului este determinată pe baza biților de control, în conformitate cu următoarele patru posibilități [1]

2 biți de control 4 biți de date Efect
00 XXXX din paletă (culoarea este preluată dintr-o paletă de 16 culori folosind cei 4 biți de date ca index);
01 BBBB editați albastru (utilizați culoarea pixelului editat anterior în componenta sa albastră)
10 RRRR editați roșu (utilizați culoarea pixelului anterior editat în componenta sa roșie)
11 GGGG editați verde (utilizați culoarea pixelului anterior editat în componenta sa verde)

Funcționarea modului HAM8

Cu AGA , capacitățile grafice ale Amiga au fost îmbunătățite. Am trecut de la 4 la 8 biți pe componentă cromatică, pentru un total de 16.777.216 de culori posibile. De la 6 biți pe pixel a trecut și la 8 biți pe pixel, ceea ce a făcut posibilă indexarea unei palete extinse de 256 de culori.

Modul HAM8 este complet analog cu HAM6: pentru fiecare pixel există întotdeauna 2 biți de control, dar 6 biți de date în loc de 4, care pot fi folosiți pentru a alege una dintre cele 64 de culori din paletă sau pentru a modifica cei mai mulți 6 biți. semnificativ pentru una dintre componentele cromatice ale culorii pixelului anterior. Cei 2 biți cel mai puțin semnificativi ai componentei cromatice rămân neschimbate.

2 biți de control 6 biți de date Efect
00 XXXXXX din paletă (culoarea este preluată dintr-o paletă de 64 de culori folosind cei 6 biți de date ca index);
01 BBBBBB editați albastru (utilizați culoarea pixelului editat anterior în componenta sa albastră)
10 RRRRRR editați roșu (utilizați culoarea pixelului anterior editat în componenta sa roșie)
11 GGGGGG editați verde (utilizați culoarea pixelului anterior editat în componenta sa verde)

Avantaje și dezavantaje

În 1985, când a fost lansat Amiga, modul HAM a fost un avantaj față de sistemele concurente, deoarece a permis sistemului să afișeze fotografii digitalizate și unele imagini redate 3D la un nivel considerat „fotorealist” pentru acea perioadă.

Modul HAM este doar o aproximare a culorii adevărate . Poate dura până la trei pixeli pentru a comuta de la o culoare la alta, astfel încât atunci când vizualizați modificări bruște de culoare care se găsesc adesea în fotografiile scanate, pot apărea franjuri multicolore vizibile. Mai mult, acest mod, datorită caracteristicilor sale care forțează procesorul grafic să recalculeze culorile imaginii în timp real, este intrinsec mai lent decât celelalte moduri grafice Amiga, atât de mult încât Jay Miner , designerul Blitter , a evaluat oportunitatea de a-l elimina din versiunea finală a cipului [2] .

Modul HAM este, de asemenea, dificil de utilizat în jocuri și aplicații în care conținutul ecranului trebuie schimbat. Dacă glisați ecranul spre stânga, până când iese un pixel „de bază”, următorii pixeli, în funcție de acesta, iau culori greșite. Acest efect secundar complică gestionarea derulării orizontale. Un lucru similar se întâmplă dacă un pixel „de bază” este inserat într-o succesiune de pixeli interdependenți; din acest motiv este dificil să desenezi BOB ( sprite Amiga) cu Blitter fără a distruge imaginea de mai jos.

Notă

  1. ^ Andrea de Prisco, All Amiga graphics ( JPG ), în MCmicrocomputer , n. 63, Roma, Technimedia, mai 1987, p. 144, ISSN 1123-2714 ( WC ACNP ) .
  2. ^ (EN) Jeremy Reimer, A history of the Amiga, part 2: The birth of Amiga , on arstechnica.com, 13 August 2007. Adus pe 24/05/2015. - Traducerea în italiană a textului din A history of the Amiga, partea 2

Bibliografie

  • Manual de referință hardware Amiga , Commodore-Amiga
  • Specificații pentru setul de cipuri Advanced Amiga (AA) , Commodore-Amiga

Elemente conexe

linkuri externe

Informatică Portal IT : accesați intrările Wikipedia care se ocupă cu IT