Положение подчеркивания символа (Underline Location Register - ULR) (индекс14h)
Регистр ULR используется только в текстовых режимах. Он определяет положение подчеркивания символа. Подчеркивание представляет собой одну из линий в матрице символа. Подчеркивание отображается, если установлен атрибут подчеркивания. Подчеркивание можно запретить, записав в регистр ULR величину большую, чем высота символов.
D4-D0 Определяют положение подчеркивания символа.
D5 Для видеоадаптеров VGA и SVGA установка этого бита означает, что для каждого знакоместа счетчик адреса регенерации будет увеличиваться на 4 вместо 1.
D6 Установка для видеоадаптеров VGA и SVGA этого бита выбирает адресацию видеопамяти по двойным словам.
D7 Не используется.
Программа, приведенная ниже, использует регистры контроллера ЭЛТ для перевода видеоадаптеров EGA и VGA в нестандартный текстовый режим, имеющий разрешение по вертикали 43 строки. Данная программа переводит видеоадаптер в текстовый режим с разрешением по вертикали 43 символа и затем отображает на экране монитора 43 строки текста.
Листинг 4.7. Файл MORESTR.ASM
#include <conio.h>
// Описания функций
void main(void);
// Функция Set43Line опреелена в файле SET43.ASM
// (листинг 4.8)
void __pascal _far Set43Line(void);
// Главная функция
void main(void) {
int i;
// Увеличиваем количество отображаемых строк текста
Set43Line();
// Отображаем на экране монитора несколько текстовых строк
for(i = 0; i < 50; i++)
printf("Text line number %d\n", i);
getch();
return;
}
Основная функция программы MORESTR - функция Set43Line определена в файле SET43.ASM. Исходный текст файла помещен в листинге 4.8.