const

MaxPage : Byte =3; {Максимальный номер страницы) MaxChar : Byte = 80; (Количество символов в строке} MaxLine : Byte = 25; (Количество строк на экране} PageSize: Word = 4000; {Размер видимой страницы) VSize : Word = 4096; {Полный размер страницы} VMemory : Word = BegVideo; {Адрес видеопамяти} VMW: array [O..15] of Word =

($0000,BegVideo,$1000,BegVideo,$2000,BegVideo, $3000,BegVideo,$4000,BegVideo,$5000,BegVideo, $6000,BegVideo,$7 О О 0,BegVideo) ;

{Массив VMP содержит адреса всех видеостраниц. Значения по умолчанию соответствуют адаптерам CGA/EGA/VGA в режиме С080. Эти значения можно переопределить с помощью процедуры InitText) •wax

VMP: array [O..7] of Pointer absolute VMW;

/

I Подпрограммы управления цветом

}

procedure ChangeAttribute(Page,Xl,Yl,X2,Y2,01dAtt,NewAtt: Byte);

{Меняет атрибут OLDATT на значение NEWATT в прямоугольнике XI...Y2 страницы PAGE}

Procedure Colors(Text,Back: Byte);

{Устанавливает цвет текста TEXT и фона BACK в текущей странице}

Procedure PageColors (Page,Text,Back: Byte);

{Устанавливает цвет текста TEXT и фона BACK в странице PAGE}

Function PackAttribute(Text,Back: Byte): Byte;

{Упаковывает два цвета в байт атрибута}

procedure SetAttribute(Page,XI,Y1,X2,Y2,Attr: Byte);

{Заменяет атрибут всех символов в прямоугольнике XI...Y2 страницы PAGE на значение Attr}

Procedure OnPackAttribute(Attr: Byte; var Text,Back: Byte);

{Распаковывает байт атрибута и возвращает два цвета} {

Подпрограммы управления курсором

> Procedure CursorOff;

{Отключает курсор в активной странице}

Procedure CursorOn;

(Включает курсор в активной странице}

Procedure CursorOnOff (Page: Byte; Vis: Boolean);

{Устанавливает признак видимости курсора: PAGE - номер страницы;

VIS - признак видимости}

procedure GetCursor (Page: Byte; var X, .г. Up, Down: Byte);

{Возвращает координаты курсора: PAGE - номер страницы; X,Y - возвращаемые координаты (отсчет от 1,1); Up, Down - размер курсора в строках развертки)

Function GetCursorVisible(Page: Byte): Boolean;