340 Приложение

Procedure MouseBlink(YUp,YDn: Byte);

(Задает аппаратный курсор нужного размера} begin

if IsMouse then with Reg do begin

ax := $A;

bx := 1;

ex := YOp;

dx :- YDn;

Intr($33.Reg) end end; {MouseBlink} ^——————————————/

Procedure MouseGraphCursor(var ScrCurMask;X,Y: Byte);

(Задает вид графического указателя} begin

if IsMouse then with Reg do begin

ax := $9;

bx :- X;

ex :- Y;

es seg(ScrCurMask);

dx := ofs(ScrCurMask);

Intr($33,Reg) end

end; (MouseGraphCursor} ^-----------——————---------——-——-———+

I Сохранение/восстановление состояния I +-----------—•--——-----———-——------—--—+;

Function MouseBuffSize: Word;

(Возвращает длину буфера для сохранения параметров) begin

if IsMouse then with Reg do begin

ax :- $15;

bx :•» 0;

Intr($33,Reg);

MouseBuffSize :- bx end else

MouseBuffSize 0 end; {MouseBuffSize} ———————————.——-..——;

Procedure SaveMouse(vac Buff);

(Сохраняет в буфере текущее состояние шдши} begin

if IsMouse then with Reg do begin

ax $X6;

es :« seg(Buff);

dx :- of s (Buff) ;

Intr($33,Reg> end end; (SaveMouse} {., —————————— ————;

Procedure RestoreMouse(vac Buff);

{Восстанавливает сохраненное состояние мыши} begin

if IsMouse then with Reg do begin