Программирование видеоадаптеров CGA,EGA и VGA


Управление режимом (MCR) (индекс17h)



Управление режимом (MCR) (индекс 17h)

Регистр содержит набор битов, управляющих контроллером ЭЛТ.

  • D7 Если бит равен нулю, то горизонтальный и вертикальный обратный ход луча невозможен.
  • D6 Если данный бит равен единице, то установлен байтовый режим, а если он равен нулю - двух-байтовый. Двух-байтовый режим поддерживает разделение данных между двумя цветовыми слоями. VGA дополнительно поддерживает четырех-байтовый режим (см. регистр ULR).

D6 D500 01
MA0MA13 MA15
MA1MA0 MA0
MA2MA1 MA1
MA3MA2 MA2
MA4MA3 MA3
MA5MA4 MA4
MA6MA5 MA5
MA7MA6 MA6
MA8MA7 MA7
MA9MA8 MA8
MA10MA9 MA9
MA11MA10 MA10
MA12MA11 MA11
MA13MA12 MA12
MA14MA13 MA13
MA15MA14 MA14

Таблица 8.11 Преобразование адреса.

Бит D5 равен нулю только для видеоадаптеров EGA с объемом видеопамяти 64К байт. При этом происходит сцепление слоев в графических режимах с высоким разрешением.

  • D4 Если бит равен единице, то все выходные линии контроллера ЭЛТ переводятся в третье состояние. Этот бит используется только при тестировании видеоадаптера.
  • D3 Если бит равен нулю, то счетчик адреса регенерации изображения увеличивается на единицу на каждое знакоместо экрана, а если бит равен единице, то на каждые два знакоместа.
  • D2 Бит может использоваться для увеличения в два раза вертикальной разрешающей способности. Если бит равен нулю, то счетчик числа линий экрана увеличивается после каждого обратного горизонтального хода луча, а если бит равен единице, то после каждых двух.
  • D1 Используется при эмуляции графических режимов видеоадаптера Hercules. Запись в этот бит нуля приводит к замещению бита D14 адресного регистра битом D1 из регистра счетчика горизонтальных строк.
  • D0 Используется при эмуляции графических режимов CGA. Запись в этот бит нуля приводит к выделению в видеопамяти двух областей по 8 Кбайт. Одна содержит даннные для четных, а другая для нечетных строк экрана. Это достигается путем замещения бита D13 адресного регистра битом D0 из регистра счетчика горизонтальных строк.









Начало  Назад  Вперед