www.wikidata.de-de.nina.az
Der Hold And Modify Modus HAM Modus ist ein Anzeigemodus der Grafik Chipsatze der Amiga Plattform um 12 Bit und 18 Bit Bilder mit nur 6 bzw 8 Bits pro Pixel anzuzeigen Dabei wird eine spezielle hardwareimplementierte Datenkompression verwendet um Speicherbandbreite zu sparen Falls in einer IFF Bilddatei ein CAMG Chunk vorhanden ist kann dieser Modus am 11 Bit identifiziert werden Beim HAM Modus werden zwei Varianten unterschieden HAM oder HAM6 Bilder konnen 4096 Farben darstellen und benutzen dafur sechs Bit pro Pixel und eine Farbpalette von 16 Farben Der HAM8 Modus wurde mit dem Amiga 4000 und dem Amiga 1200 eingefuhrt und bietet mit nur acht Bit pro Pixel und einer Basispalette von 64 Farben eine sehr gute fotoahnliche Bildqualitat In diesem Modus konnen fast so viele Farben aus dem 24 Bit Spektrum dargestellt werden wie in das Chip RAM passen abzuglich der ersten Pixelspalte und wie die Bildauflosung ermoglicht Die Farbe eines Pixels im HAM Modus kann jede Farbe der 12 Bit Farbpalette bei HAM6 bzw der 24 Bit Farbpalette bei HAM8 sein Alternativ kann die Farbe des direkt links daneben liegenden Pixels ubernommen werden wobei eine der drei Farbkomponenten des RGB Farbraums Rot Grun Blau auf einen neuen Wert gesetzt wird An der linken Bildseite wird die Randfarbe ubernommen Farbindex 0 der Farbpalette Anm Die Videohardware beginnt damit nicht beim ersten Pixel einer Bitplane sondern erst beim ersten sichtbaren Pixel was bei Hardwarescrolling virtueller bzw ubergrosser Screen einen unschonen Unterschied macht Dieses Verfahren harmoniert mit den Eigenschaften von Fernsehsignalen FBAS so dass die verlustbehaftete Datenkompression nicht zu Qualitatsminderung fuhrt In HAM Bilddateien sind die Pixeldaten im BODY Chunk als Code gespeichert welcher in den Modus und die restlichen Bits aufgeteilt wird Die Kodierung der Pixel entspricht dem von der Videohardware verwendeten Format Modus Bedeutung00 Index in der Farbpalette01 Anderung der Blaukomponente10 Anderung der Rotkomponente11 Anderung der GrunkomponenteSofern ein Pixel nicht eine Farbe der Palette darstellt Modus 00 kann nur der neue Wert eines der drei RGB Werte angegeben werden Die anderen beiden Werte sind die gleichen wie im Pixel zuvor Wenn der Pixel der erste einer Bildzeile ist wird der vorherige Pixel als RGB Tripel 0 0 0 angenommen anders als von der Videohardware s o Format von Modus und Datenbits eines Pixels im HAM6 Modus 543210 00wxyz Farbindex wxyz in eine 16 Eintrage lange Basisfarbenpalette 01wxyz Behalte den Farbwert des vorherigen Pixels aber setze die obersten vier Bit von Blau auf wxyz 10wxyz Behalte den Farbwert des vorherigen Pixels aber setze die obersten vier Bit von Rot auf wxyz 11wxyz Behalte den Farbwert des vorherigen Pixels aber setze die obersten vier Bit von Grun auf wxyz Ein HAM Bild kann nicht direkt in ein Bild mit 256 oder weniger Farben dekodiert werden ohne vorher eine Reduktion der Farben durchzufuhren Um die volle Qualitat zu erhalten benotigt man mindestens ein 12 Bit Bild Will man ein Bild das in 256 oder mehr Farben vorliegt in ein HAM Bild konvertieren sucht man zunachst die fur dieses Bild optimale Basispalette mit der schon moglichst viele Punkte des Bildes direkt oder nur mit geringen Abweichungen dargestellt werden konnen Wenn die Basispalette festliegt geht man zeilenweise durch das Bild und optimiert fur jedes Pixel ob es am besten durch eine der Basispalettenfarben dargestellt werden kann oder noch besser durch eine HAM Modifikation des vorangehenden Pixels eine der drei RGB Farbkomponenten auf den gewunschten Wert setzen Die Bewertung erfolgt dabei durch Abstandsberechnung im 3D Farbraum zwischen dem Bild Pixel und dem jeweiligen Basis oder HAM Kandidaten Dies gilt so allgemein sowohl fur HAM6 als auch fur HAM8 Die Anzahl der Datenbits ist vier fur Standard HAM6 und sechs fur HAM8 Die Anzahl der Bitplanes im BMHD Chunk ist sechs bzw acht Wenn ein HAM Bild als 24 Bit Bild angezeigt werden soll sollten die Datenbits vier bzw sechs auf acht Bit erweitert werden Der Maximalwert sollte bei acht Bit pro RGB Kanal zu 255 umgewandelt werden Format von Modus und Datenbits eines Pixels im HAM8 Modus 76543210 00uvwxyz Farbindex uvwxyz in eine 64 Eintrage lange Basisfarbenpalette 01uvwxyz Behalte den Farbwert des vorherigen Pixels aber setze die obersten sechs Bit von Blau auf uvwxyz 10uvwxyz Behalte den Farbwert des vorherigen Pixels aber setze die obersten sechs Bit von Rot auf uvwxyz 11uvwxyz Behalte den Farbwert des vorherigen Pixels aber setze die obersten sechs Bit von Grun auf uvwxyz HAM8 Bilder mussen in 24 Bit Bilder umgewandelt werden um auf Nicht Amiga Systemen die volle Bildqualitat beizubehalten Um im HAM8 Modus wirklich alle Farben der 24 Bit Palette darstellen zu konnen muss man die 64 Farben der Basispalette so vorbelegen dass die 64 Kombinationsmoglichkeiten der untersten zwei Bit aller Farbkomponenten genau abgedeckt werden Dann kann man mittels des HAM Mechanismus von diesen Basisfarben aus alle Farben der 24 Bit Palette erreichen Begrenzt wird die gleichzeitig darstellbare Zahl von Farben nur durch die Grosse des Chip RAMs Letztere betragt zwei Megabyte so dass man auf einem HAM8 Bild ca 2 Millionen verschiedene Farben darstellen kann Vom Chip RAM gehen diverse andere Betrage ab fur die Workbench und diverse Datenstrukturen des Betriebssystems die im Chip RAM stehen mussen Ausblick BearbeitenEs war lange in der Diskussion diesen HAM Modus der auf der RGB Farbdarstellung beruht durch einen entsprechenden Modus aufbauend auf dem HSV Farbraum Farbton Sattigung Helligkeit zu ersetzen wovon man sich noch hohere Kompressionsmoglichkeiten und oder noch bessere Darstellungsqualitat versprach Der HAM Modus ist jedoch auf aktuellen Computern aufgrund der gefallenen RAM Preise und der schnelleren Grafik Hardware nicht mehr notwendig so dass diese Uberlegungen bisher zu keiner praktischen Implementierung gefuhrt haben Siehe auch BearbeitenExtra Halfbright ModusV DCommodore ProduktubersichtPET CBM KIM 1 PET 2001 CBM 3000 CBM 4000 CBM 8000 CBM 8032 MMF 9000 nbsp CBM II CBM 500 CBM 600 CBM 700 CBM 900 Heimcomputer VC 10 VC 20 C64 SX GS 264 Reihe C16 C116 Plus 4 C128 C65 Amiga 1000 Sidecar 500 500 Plus 2000 CDTV 600 3000 T UX 1200 4000 CD IBM kompatibel PC 1 PC 10 bis PC 70 x86LT A1060Peripherie Laufwerke Datasette CBM Diskettenlaufwerke VC15xx VC1540 41 VC1551 VC1570 71 VC1581 SFD100x SFD1001 SFD1002 CBM 2020 bis 8250 CBM 4040 A570 A590 A3070Drucker MPS Serie MPS 801 MPS 802 MPS 803 MPS 1000 MPS 1270 MPS 1500 C MPS 1550 C VC1520 CBM 8000 Serie CBM 4022 CBM 4023Sonstige Hardware CBM Bus Zorro Bus Uhrenport WOM RAM Expansion Unit Turbokarte Mause Commodore 1350 1351 Monochrom und Farb Monitore 1701 1702 1703 1801 1802 1081 1084 1084S 1085 1901 1942 Lautsprecher A10 Mehrfachbenutzersysteme MBS Historische Hardware Schreib und Tischrechenmaschinen LED Uhren 2000K 3000H ChessmateChips MOS Technology 6502 6510 VIC VIC II TED VDC SID PIA VIA RIOT TPI CIA ACIA Agnus Blitter Copper Paula EHB Modus HAM ModusChipsatze OCS ECS AGA AAA Chip RAM und Fast RAMSoftware Commodore BASIC Commodore Basic V2 Kernal CBM ASCII PETSCII GEOS Commodore DOS AmigaOS Kickstart Workbench ARexx AmigaGuide AMIX Spielkonsole nur Prototyp Abgerufen von https de wikipedia org w index php title Hold And Modify Modus amp oldid 214638913