SetWin: PushReg <ax,bx,dx> | ; сохранение используемых регистров |
хог bx, bx | ; признак установки окна А |
mov dx, Cur__win | ; номер устанавливаемого окна |
call [VMC] | ; установка окна А |
test winB, 01 | ; окно В существует ? |
je stw | ; -> нет, переход на метку stw |
mov bx , | ; 01 признак установки окна В |
call [VMC] | ; установка окна В |
stw: PopReg <dx,bx,ax> | ; восстановление регистров |
ret | ; возврат из подпрограммы |
В дальнейшем, при описании примеров работы с графикой мы будем считать, что выполнение подпрограмм Setwin, Nxtwin и Prevwin не зависит от количества окон видеопамяти, поддерживаемых видеокартой, а при наличии двух окон их номера изменяются одновременно.