Графические устройства

         

Построение горизонтальной



Пример 5.5. Построение горизонтальной линии с помощью функции 0Ah

mov ah, OAh ; код запрашиваемой функции BIOS
mov al, OC4h ; код ASCII символа "-"
mov ex, 132 ; число повторений символа
int lOh ; обращение к группе "Video Services"

При выполнении функции OAh записываются только коды символов в четные байты видеопамяти, поэтому цвет линии и фона, на котором она нарисована, зависит от значений ранее записанных атрибутов.

Если вам надо вывести символы вместе с атрибутами, то измените в примере 5.5 код функции на 09 и добавьте команду, записывающую в регистр bl нужный код атрибута. Например, для того чтобы на голубом фоне нарисовать белую линию, атрибут должен иметь код iFh.

Функции 09 и OAh не изменяют позицию курсора, поэтому их неудобно использовать при выводе строки текста. В этом случае вам придется хранить в области данных номера строки и столбца, соответствующие текущим координатам курсора, корректировать их после вывода каждого символа, а перед выводом символа обращаться к BIOS для перемещения курсора в позицию, соответствующую этим координатам.



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