Регистры контроллера атрибутов
🕛 28.12.2008, 20:13
┌─────────────────────────────────────┬────────────┬───────────────┐ │ Наименование │ Порт │ Индекс │ ├─────────────────────────────────────┼────────────┼───────────────┤ │ Адресный регистр (Address Register) │ 3C0 │ │ │ Регистры палитры (Palette Registers)│ 3C0 │ 00 0F │ │ Регистр управления режимом │ 3C0 │ 10 │ │ (Mode Control Register) │ │ │ │ Регистр управления цветом бордюра │ 3C0 │ 11 │ │ (Overscan Color Register) │ │ │ │ Регистр разрешения отображения бито│ 3C0 │ 12 │ │ вой плоскости (Color Plane Enable │ │ │ │ Register) │ │ │ │ Горизонтального сдвига пикселов │ 3C0 │ 13 │ │ (Horisontal Pel Panning Register) │ │ │ └─────────────────────────────────────┴────────────┴───────────────┘Адресный регистр контроллера атрибутов Регистр типа "только запись". Адрес порта вывода для этого ре гистра 3C0. ┌──────────────────────────────────────────────────────────────────┐ │ Формат адресного регистра контроллера атрибутов │ ├──────────────────────────────────────────────────────────────────┤ │Биты 7 6 5 4 3 2 1 0 │ │ │ │ │ └─┴─┴─┴─┴──> Адрес регистра │ │ │ │ └────────────> Доступ к регистрам палитры │ │ └─┴──────────────> Не используются │ └──────────────────────────────────────────────────────────────────┘ Бит0Бит4 Адресный регистр является регистромуказателем и доступен для записи через порт с адресом 3C0h. В этот регистр заг ружается двоичный код регистра контроллера атрибутов к которому будет производиться обращение. В контроллере ат рибутов как адресный регистр, так и регистры данных дос тупны через порт с одним и тем же адресом 3COh. Внутри контроллера адресация организована таким образом, что каждый раз после записи в порт 3COh, производится перек лючение: адресный регистр > регистр данных, соответству ющий значению адресного регистра и наоборот. Для инициа лизации процесса переключения адресный регистр регистр данных (вначале доступ к адресному регистру, а потом к регистру данных и т.д.) необходимо выполнить операцию чтения из порта с адресом 3BAh или 3DAh. После выполнения операции чтения, первый доступ к порту 3C0h будет обраще нием к адресному регистру контроллера атрибутов. После загрузки адресного регистра, следующая команда вывода в порт 3C0h приведет к записи требуемого значения в соот
  ветствующий регистр данных контроллера атрибутов. Выпол нение этой команды снова делает адресный регистр доступ ным для записи и процесс может быть продолжен. Бит 5 При загрузке регистров палитры данный бит должен быть ус тановлен в 0. Для обеспечения доступа к регистрам палитры в процессе регененрации изображения на экране значение этого бита должно быть равным 0. Регистры палитры (от 00h до 0Fh) Регистры типа "только запись". Адрес порта вывода для этих ре гистров 3C0. ┌──────────────────────────────────────────────────────────────────┐ │ Формат регистра палитры │ ├──────────────────────────────────────────────────────────────────┤ │Биты 7 6 5 4 3 2 1 0 │ │ │ │ │ │ │ │ │ └──> Синий │ │ │ │ │ │ │ │ └────> Зеленый │ │ │ │ │ │ │ └──────> Красный │ │ │ │ │ │ └────────> Вторичный синий │ │ │ │ │ └──────────> Вторичный зеленый │ │ │ │ └────────────> Вторичный красный │ │ └─┴──────────────> Не используются │ └──────────────────────────────────────────────────────────────────┘ Бит0Бит5 6ти битовые регистры палитры предназначены для динами ческого отображения атрибутов символов или цветов пиксе лов в графических режимах в конкретные цвета их образов на экране дисплея. Логическая 1 используется для выбора соответствующей составляющей в сигнале цветности на входе монитора. Для того чтобы избежать появления на экране различного рода срывов изображения, регистры цветовой па литры следует модифицировать только в интервалы времени обратного хода луча. Заметьте, что некоторые мониторы не имеют входа для управления интенсивностью луча и, в связи с этим, обеспечивают возможность формирования не более 8 цветов. Мониторы с 4 входами обеспечивают возможность ис пользования 16 цветов, тогда как мониторы с 6 входами для сигналов цветности 64 цветов.
  Регистр управления режимом Регистр типа "только запись". Для доступа к этому регистру зна чение адресного регистра должно быть равным 10h. Адрес порта вывода регистра управления режимом 3C0. ┌──────────────────────────────────────────────────────────────────┐ │ Формат регистра управления режимом │ ├──────────────────────────────────────────────────────────────────┤ │Биты 7 6 5 4 3 2 1 0 │ │ │ │ │ │ │ │ │ └──> Алфавитноцифровой/графический режим │ │ │ │ │ │ │ │ └────> Тип дисплея │ │ │ │ │ │ │ └──────> Расширение символов псевдографики │ │ │ │ │ │ └────────> Выбор интенсивность или мигание │ │ └─┴─┴─┴──────────> Не используются │ └──────────────────────────────────────────────────────────────────┘ Бит 0 Логическая 1 графический режим. Логический 0 алфавит ноцифровой Бит 1 Монохромный дисплей/цветной дисплей. Логический 0 ин терпретация атрибутов символов применительно к цветному дисплею. Логическая 1 интерпретация атрибутов символов как монохромных. Бит 2 Если данный бит установлен в 0, 9й столбец в растре всех символов будет заполнен цветом фона. Логическая 1 при менительно к символам псевдографики с кодами от C0h до DFh включительно, 9й столбец растра символа будет совпа дать с 8м столбцом. Если загружена кодовая таблица в ко торой символы из указанного интервала заменены другими символами, данный бит следует установить в 0. В противном случае, начертания на экране указанных символов будут ис кажены. Использование данного бита существенно только при работе в режиме совместимости с монохромным графическим адаптером (MDA), для которого ширина знакоместа составля ет 9 точек. Бит 3 Логический 0 соответствующий бит байта атрибутов симво ла интерпретируется как бит управления интенсивностью. Такое использование указанного бита допускается в адапте рах типа MDA и CGA. Логическая 1 использование указан ного бита байта атрибута для мигания символа на экране в алфавитноцифровых режимах. В графических режимах, в ко торых допускается мигание, данный бит регистра управления режимом должен также быть установлен в 1.
  Регистр управления цветом бордюра Регистр типа "только запись". Для доступа к этому регистру зна чение адресного регистра должно быть равным 11h. Адрес порта вывода регистра управления цветом бордюра 3C0. ┌──────────────────────────────────────────────────────────────────┐ │ Формат регистра управления цветом бордюра │ ├──────────────────────────────────────────────────────────────────┤ │Биты 7 6 5 4 3 2 1 0 │ │ │ │ │ │ │ │ │ └──> Синий │ │ │ │ │ │ │ │ └────> Зеленый │ │ │ │ │ │ │ └──────> Красный │ │ │ │ │ │ └────────> Вторичный синий │ │ │ │ │ └──────────> Вторичный зеленый │ │ │ │ └────────────> Вторичный красный │ │ └─┴──────────────> Не используются │ └──────────────────────────────────────────────────────────────────┘ Бит0Бит5 Определяет цвет рамки (бордюра) на экране монитора. При менительно к монохромным дисплеям значение данного регис тра следует установить равным 0. Регистр разрешения отображения битовой плоскости Регистр типа "только запись". Для доступа к этому регистру зна чение адресного регистра должно быть равным 12h. Адрес порта вывода регистра разрешения отображения битовой плоскости 3C0. ┌──────────────────────────────────────────────────────────────────┐ │ Формат регистра разрешения отображения битовой плоскости │ ├──────────────────────────────────────────────────────────────────┤ │Биты 7 6 5 4 3 2 1 0 │ │ │ │ │ │ └─┴─┴─┴──> Разрешить отображение битовой плоскости │ │ │ │ └─┴──────────> Видео статус │ │ └─┴──────────────> Не используются │ └──────────────────────────────────────────────────────────────────┘
Бит0Бит3 Логическая 1 в одном или нескольких из указанных битов соответствующая битовая плоскость (плоскости) будет ис пользована при формировании изображения на экране дисп лея. Логический 0 запрещает использование плоскости (плоскостей) при выводе изображения на экран. Бит4Бит5 Используются для выбора доступности для чтения через входной регистр состояния 1 двух из шести составляющих цвета. В следущей таблице приведен список допустимых комбинаций.
  ┌──────────────────────────┬───────────────────────────────────────┐ │ Регистр разрешения отоб │ Входной регистр │ │ ражения бит. плоскости │ состояния 1 │ ├──────────────────────────┼───────────────────────────────────────┤ │ Бит 5 Бит 4 │ Бит 5 Бит 4 │ ├──────────────────────────┼───────────────────────────────────────┤ │ 0 0 │ красный синий │ │ 0 1 │ вторичный зеленый зеленый │ │ 1 0 │ вторичный красный вторичный зеленый │ │ 1 1 │ не используется не используется │ └──────────────────────────┴───────────────────────────────────────┘ Регистр горизонтального сдвига пикселов Регистр типа "только запись". Для доступа к этому регистру зна чение адресного регистра должно быть равным 13h. Адрес порта вывода регистра горизонтального сдвига пикселов 3C0. ┌──────────────────────────────────────────────────────────────────┐ │ Формат регистра горизонтального сдвига пикселов │ ├──────────────────────────────────────────────────────────────────┤ │Биты 7 6 5 4 3 2 1 0 │ │ │ │ │ │ └─┴─┴─┴──> Горизонтальный сдвиг │ │ └─┴─┴─┴──────────> Не используются │ └──────────────────────────────────────────────────────────────────┘ Бит0Бит3 Значение в рассматриваемых 4х битах определяет количест во пикселов на которое необходимо произвести горизонталь ный сдвиг видеоданных влево. Такой сдвиг возможен как в алфавитноцифровых, так и в графических режимах. В монох ромном алфавитноцифровоим режиме изображение может быть сдвинуто не более чем на 9 пикселов. Во всех остальных режимах не более чем на 8 пикселов. Далее приводятся последовательности значений, используемые для сдвига изображения на 0,1,2 и т.д. пикселов: 9 точек/символ: 8,0,1,2,3,4,5,6,7 (Только для монохромногоалфавитно цифрового режима); 8 точек/символ: 0,1,2,3,4,5,6,7 (Для всех остальных режимов).