Hold and modify

Поделись знанием:
(перенаправлено с «HAM8»)
Перейти к: навигация, поиск

Hold and Modify (дословно с англ.  «Придержи и Измени», более известный как HAM) — уникальный видео-режим, доступный на персональных компьютерах семейства Amiga. Работает по принципу запоминания (удержания) цвета последнего выводимого пиксела, с последующим изменением его красной (R), зелёной (G) или синей (B) компоненты. Это позволяет чипсету классической Amiga отображать до 4096 цветов на экране, при 6 физических битах на точку (режим HAM6), используемых для записи цвета (в режиме HAM8 чипсета AGA используются 8 бит, что позволяет одновременное отображение на экране 262 144 цветов).

Недостаток видео-режима заключается в том, что при некоторых изменениях цвета требуется изменение компонент у 3-х пикселей, находящихся рядом с точкой, чей цвет изменяется. Поэтому, если палитра для экрана была подобрана неудачно, то возможно появление артефактов изображения, приблизительно похожих на артефакты, замеченные у аналогичного алгоритма сжатия графической информации JPEG. Другой недостаток этого режима — в сложности его использования для векторной графики.

Тем не менее, именно этот режим позволил Amiga 1000 стать первым в мире мультимедийным персональным компьютером, обеспечив её подавляющее преимущество над конкурирующими платформами. Режим HAM позволил впервые отображать фотографии на экране компьютера, а также некоторые трёхмерные модели с фотореалистичным качеством. Спустя некоторое время появилось аппаратное и программное обеспечение для обработки и титрования видеоряда. Таким образом, HAM также позволил Amiga долгие годы лидировать в сфере нелинейного видеомонтажа (даже после краха корпорации Commodore в 1995 году), оставаясь решением, недосягаемым по себестоимости и имеющим наилучшую программную поддержку.



Описание

В классических Amiga на базе чипсетов OCS/ECS для записи цвета точки используются всего 6 бит. Большинство экранных режимов работают с цветами, индексированными в палитре, а для записи индекса цвета используются 5 бит. Следовательно, на таких экранах могут быть одновременно отображены только 25 (=32) цвета. Другие экранные режимы позволяют использовать 6-й бит для указания яркости цвета (пиксели с установленным 6-м битом цвета отображаются с половинной яркостью), то есть количество отображаемых одновременно цветов увеличивается до 2×25 (=64).

Режим HAM6 использует 6 бит, из которых два, как правило, указывают, были ли сохранённые 4 бит индексом в 16-цветной палитре, или же это было изменение в одной из компонент цвета (например, сохранены красная и зелёная компоненты предыдущего отображённого пиксела, а сейчас изменяется синяя). Сохранённые 4 бита используются как абсолютное значение для изменённой RGB-компоненты.

Возможны следующие значения:

  • 00 xxxx — используется цвет из 16-цветной палитры, имеющий индекс xxxx в двоичном представлении;
  • 01 GGGG — сохраняются красная и синяя компоненты от предыдущего пиксела, используется GGGG для зелёной компоненты;
  • 10 RRRR — сохраняются зелёная и синяя компоненты от предыдущего пиксела, используется RRRR для красной компоненты;
  • 11 BBBB — сохраняются красная и зелёная компоненты от предыдущего пиксела, используется BBBB для синей компоненты.

При этом линия пикселов всегда должна начинаться с одного из индексированных в палитре цветов.

HAM6 позволяет одновременное отображение не более 4096 цветов, так как алгоритм описывает 12-битную графику (по 4 бита на каждую из цветных компонент), а 212 = 4096.

В классических Amiga на базе чипсета AGA для хранения цвета пиксела используются 8 бит (28=256 цветов), а также доступен режим HAM8, описывающий 18-битную графику (6 бит на компоненту). Режим HAM8 позволяет одновременное отображение не более 262 144 цветов (218) из палитры в 16 777 216 цветов (24-битная палитра).

Использование HAM

Изначально режим HAM был реализован в чипсете Amiga как экспериментальный. Процитируем Джея Майнера (известного как «отец» Amiga):

Hold and Modify появился в результате поездки, в которой мне довелось увидеть симуляторы полёта для военных пилотов в действии и получить своего рода представление о виртуальной реальности. Буквы NTSC на нашем чипе означают, что вы можете удерживать оттенок цвета и менять его яркость изменением всего четырёх битов. Когда же мы перешли к RGB, я сказал, что эта возможность стала бесполезной и попросил парня, который отвечал за разводку материнской платы, убрать её. Он вернулся ко мне со словами, что это оставит большую дыру посреди чипсета, а ему понадобится по крайней мере три месяца, чтобы переразвести затем всю плату. Разумеется, мы не могли себе этого позволить. Я и не думал, что кто-нибудь когда-нибудь станет этим пользоваться. И здесь я снова ошибся, поскольку это как раз и дало Amiga ту палитру красок, которой не хватало остальным.

Режим HAM не поддерживается в AmigaOS 4 и MorphOS, в связи с чем программное обеспечение классической Amiga, ориентированное на чипсет, оказалось несовместимым с этими операционными системами.

См. также


Напишите отзыв о статье "Hold and modify"

Отрывок, характеризующий Hold and modify

На другой вопрос: как даны были Бородинское и предшествующее ему Шевардинское сражения – существует точно так же весьма определенное и всем известное, совершенно ложное представление. Все историки описывают дело следующим образом:
Русская армия будто бы в отступлении своем от Смоленска отыскивала себе наилучшую позицию для генерального сражения, и таковая позиция была найдена будто бы у Бородина.
Русские будто бы укрепили вперед эту позицию, влево от дороги (из Москвы в Смоленск), под прямым почти углом к ней, от Бородина к Утице, на том самом месте, где произошло сражение.
Впереди этой позиции будто бы был выставлен для наблюдения за неприятелем укрепленный передовой пост на Шевардинском кургане. 24 го будто бы Наполеон атаковал передовой пост и взял его; 26 го же атаковал всю русскую армию, стоявшую на позиции на Бородинском поле.
Так говорится в историях, и все это совершенно несправедливо, в чем легко убедится всякий, кто захочет вникнуть в сущность дела.
Русские не отыскивали лучшей позиции; а, напротив, в отступлении своем прошли много позиций, которые были лучше Бородинской. Они не остановились ни на одной из этих позиций: и потому, что Кутузов не хотел принять позицию, избранную не им, и потому, что требованье народного сражения еще недостаточно сильно высказалось, и потому, что не подошел еще Милорадович с ополчением, и еще по другим причинам, которые неисчислимы. Факт тот – что прежние позиции были сильнее и что Бородинская позиция (та, на которой дано сражение) не только не сильна, но вовсе не есть почему нибудь позиция более, чем всякое другое место в Российской империи, на которое, гадая, указать бы булавкой на карте.
Русские не только не укрепляли позицию Бородинского поля влево под прямым углом от дороги (то есть места, на котором произошло сражение), но и никогда до 25 го августа 1812 года не думали о том, чтобы сражение могло произойти на этом месте. Этому служит доказательством, во первых, то, что не только 25 го не было на этом месте укреплений, но что, начатые 25 го числа, они не были кончены и 26 го; во вторых, доказательством служит положение Шевардинского редута: Шевардинский редут, впереди той позиции, на которой принято сражение, не имеет никакого смысла. Для чего был сильнее всех других пунктов укреплен этот редут? И для чего, защищая его 24 го числа до поздней ночи, были истощены все усилия и потеряно шесть тысяч человек? Для наблюдения за неприятелем достаточно было казачьего разъезда. В третьих, доказательством того, что позиция, на которой произошло сражение, не была предвидена и что Шевардинский редут не был передовым пунктом этой позиции, служит то, что Барклай де Толли и Багратион до 25 го числа находились в убеждении, что Шевардинский редут есть левый фланг позиции и что сам Кутузов в донесении своем, писанном сгоряча после сражения, называет Шевардинский редут левым флангом позиции. Уже гораздо после, когда писались на просторе донесения о Бородинском сражении, было (вероятно, для оправдания ошибок главнокомандующего, имеющего быть непогрешимым) выдумано то несправедливое и странное показание, будто Шевардинский редут служил передовым постом (тогда как это был только укрепленный пункт левого фланга) и будто Бородинское сражение было принято нами на укрепленной и наперед избранной позиции, тогда как оно произошло на совершенно неожиданном и почти не укрепленном месте.
Дело же, очевидно, было так: позиция была избрана по реке Колоче, пересекающей большую дорогу не под прямым, а под острым углом, так что левый фланг был в Шевардине, правый около селения Нового и центр в Бородине, при слиянии рек Колочи и Во йны. Позиция эта, под прикрытием реки Колочи, для армии, имеющей целью остановить неприятеля, движущегося по Смоленской дороге к Москве, очевидна для всякого, кто посмотрит на Бородинское поле, забыв о том, как произошло сражение.
Наполеон, выехав 24 го к Валуеву, не увидал (как говорится в историях) позицию русских от Утицы к Бородину (он не мог увидать эту позицию, потому что ее не было) и не увидал передового поста русской армии, а наткнулся в преследовании русского арьергарда на левый фланг позиции русских, на Шевардинский редут, и неожиданно для русских перевел войска через Колочу. И русские, не успев вступить в генеральное сражение, отступили своим левым крылом из позиции, которую они намеревались занять, и заняли новую позицию, которая была не предвидена и не укреплена. Перейдя на левую сторону Колочи, влево от дороги, Наполеон передвинул все будущее сражение справа налево (со стороны русских) и перенес его в поле между Утицей, Семеновским и Бородиным (в это поле, не имеющее в себе ничего более выгодного для позиции, чем всякое другое поле в России), и на этом поле произошло все сражение 26 го числа. В грубой форме план предполагаемого сражения и происшедшего сражения будет следующий:

Ежели бы Наполеон не выехал вечером 24 го числа на Колочу и не велел бы тотчас же вечером атаковать редут, а начал бы атаку на другой день утром, то никто бы не усомнился в том, что Шевардинский редут был левый фланг нашей позиции; и сражение произошло бы так, как мы его ожидали. В таком случае мы, вероятно, еще упорнее бы защищали Шевардинский редут, наш левый фланг; атаковали бы Наполеона в центре или справа, и 24 го произошло бы генеральное сражение на той позиции, которая была укреплена и предвидена. Но так как атака на наш левый фланг произошла вечером, вслед за отступлением нашего арьергарда, то есть непосредственно после сражения при Гридневой, и так как русские военачальники не хотели или не успели начать тогда же 24 го вечером генерального сражения, то первое и главное действие Бородинского сражения было проиграно еще 24 го числа и, очевидно, вело к проигрышу и того, которое было дано 26 го числа.