Истории о вирусах

DPMI, функция 0300k Вызвать обработчик прерывания реального режима


Вход:

AX°0300h

BL - номер прерывания

ВН - флаги:

бит 0 - сбросить контроллер прерывания и адресную линию А20

биты 1-7 - зарезервированы и должны быть равны нулю

СХ - количество слов, которые надо скопировать из стека защищенно-

го режима в стек реального

ES:(E)DI - селектор:смещение структуры вызова реального режима

(Таблица Г-1)

Таблица Г-1. Формат структуры вызова реального режима.



Смещ. Описание
+00h EDI
+04h ESI
+08h EBP
+OCh Зарезервировано
+10h EBX
+14h EDX
+18h ECX
+lCh EAX
+20h Флаги
+22h ES
+24h DS
+26h FS
+28h GS
+2Ah IP
+2Ch CS
+2Eh SP
+30h SS

Выход:

CF=0, если функция выполнена успешно

ES:(E)DI - селекторхмещение модифицированной структуры вызо-

ва реального режима

CF=1, если при выполнении функции возникли ошибки

Описание.

Данная функция вызывает обработчик прерывания реального режима.

Примечания.

Поля CS и IP этой функцией игнорируются. Функция вызывает обра-

ботчик, адрес которого указан в таблице прерываний. Если поля SS и

SP равны нулю, то стек выделяется DPMI. 32-битные программы дол-

жны использовать ES:EDI для адресации структуры.



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