Курсовая работа: Робота в захищеному режимі мікропроцесора
end;
procedure int_30h;assembler; { Обработчик программного }
asm { прерывания 30h: }
cmp ah,2 { AH - номер функции }
jz @i2 { Al - номер подфункции }
cmp ah,3 { BL - номер строки экрана }
jz @i3 { BH - номер столбца экрана }
cmp ah,4 { DL/DX/EDX - значение данных }
jz @i4 { (байта/слова/двойного слова) }
cmp ah,5 { CL - видео-атрибут }
jz @i5 { SI - смещение строки символов }
{ Функция 1: установка маркера в заданную точку экрана }
mov ax,bx
xor bh,bh
mov bl,ah
xor ah,ah
mov dl,80
mul dl
add ax,bx
shl ax,1
mov di,ax
jmp @end
@i2: { Функция 2: вывод символа на экран }
mov al,dl
mov ah,cl
stosw
jmp @end
@i3: { Функция 3: вывод данных на экран в 16-ричной форме }
{ AL=0 - вывод байта }