Программирование видеоадаптеров

       

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


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

D7    Бит D7 запрещает горизонтальный и вертикальный обратный ход луча.

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

Биты D6 D5

00



01

MA0

MA13

MA15

MA1

MA0

MA0

MA2

MA1

MA1

MA3

MA2

MA2

MA4

MA3

MA3

MA5

MA4

MA4

MA6

MA5

MA5

MA7

MA6

MA6

MA8

MA7

MA7

MA9

MA8

MA8

MA10

MA9

MA9

MA11

MA10

MA10

MA12

MA11

MA11

MA13

MA12

MA12

MA14

MA13

MA13

MA15

MA14

MA14

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

D4    Если бит D4 равен единице, то все выходные линии контроллера ЭЛТ переводятся в третье состояние. Этот бит используется при тестировании видеоадаптера.

D3    Если бит D3 равен нулю, то счетчик адреса регенерации изображения увеличивается на единицу на каждое знакоместо экрана, а если бит равен единице, то на каждые два знакоместа.

D2    Бит D2 может использоваться для увеличения в два раза вертикальной разрешающей способности. Если бит равен нулю, то счетчик числа линий экрана увеличивается после каждого обратного горизонтального хода луча, а если бит равен единице, то после двух обратных горизонтальных ходов луча.

D1    Используется для эмуляции графических режимов видеоадаптера Hercules. Запись нуля в этот бит приводит к замещению бита D14 адресного регистра битом D1 из регистра счетчика горизонтальных линий.

D0    Используется для эмуляции графических режимов CGA. Запись нуля в этот бит приводит к выделению в видеопамяти двух областей по 8 Кбайт каждая. Одна область соответствует четным, а другая нечетным строкам экрана. Такое отображение видеопамяти достигается в результате замещения бита D13 адресного регистра битом D0 из регистра счетчика горизонтальных строк.



Содержание раздела