Методические указания по лабораторным работам по курсу «Аппаратные средства компьютерных систем», страница 18

С целью получения практических навыков по разработке и выполнению программ, управляющих отображением информации на экране видеомонитора, необходимо самостоятельно составить программу в соответствии с вариантом задания (п. 3.7).

Взаимодействие пользователя с ПЭВМ, совместимыми с IBM PC AT, осуществляется с помощью графических адаптеров CGA, EGA, VGA и др. Видеоконтроллеры VGA и SVGA видеомониторов поддерживают режимы отображения алфавитно-цифровой и графической информации и вырабатывают следующий набор сигналов для монитора: три линии — RGB-сигнал, две линии — сигналы синхронизации VSync и HSync, три линии — сигналы идентификации, определяющие тип подключенного видеомонитора.

Основным устройством ввода на плате видеоадаптера является контроллер ЭЛТ (видеоконтроллер). Он обеспечивает взаимосвязь адресов, данных и входных сигналов синхронизации с системной платой и преобразование их в сигналы, требуемые для видеоОЗУ и видеосхемы.

В графических режимах возможен доступ к элементам изображения (пикселям) экрана. В текстовых режимах видеоконтроллер принимает от ЦПУ  через слоты расширения видеоданные, которые записываются в динамическое ОЗУ (начальный адрес B800h), в котором каждому знакоместу соответствует два смежных байта (байт с четным адресом — ASCII-код знака, байт с нечетным адресом — атрибут).

ВидеоBIOS предоставляет ряд функций для работы с экраном (приложение Б). Функции экрана вызываются посредством прерывания INT 10h, номер функции передается в AH.

В текстовых режимах положение и размер курсора фиксируется во внутренних регистрах видеоконтроллера. Для установки размера курсора используется функция 01h. Знакоместо на экране состоит из 8, 14 или 16 линий растра, пронумерованных сверху вниз от 0. Допустимо отношение (CH) > (CL), тогда курсор будет состоять из двух частей. Номера линий кодируются в регистрах битами 0…3. Если бит 5 регистра CH установлен, то курсор будет невидимым. При позиционировании курсора его координаты задаются номером строки (0…Ymax-1) и номером столбца (0…Xmax-1).

Для установки номера активной видеостраницы используется функция 5 (применима только в режимах 0…3).

Функции 06h и 07h применяются при скроллинге или очистке окна. В регистре AL задается количество сдвигаемых строк. Если AL=0, то окно будет очищено.