Читаем Создаем вирус и антивирус полностью

Изменяемые регистры: AX Flash AMIBIOS, подфункция 06h Защитить Flash от записи

Вход:

AH=E0h

AL=06h

Выход:

AL=FAh

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

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

Описание. Делает Flash защищенным от записи. Необходима задержка для стабилизации напряжений.

Примечание. На некоторых компьютерах эта подфункция совпадает с подфункцией 04h «Понизить напряжение программирования».

Изменяемые регистры: AX Flash AMIBIOS, подфункция 07h Разрешить запись во Flash

Вход:

AH=E0h

AL=07h

Выход:

AL=FAh

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

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

Описание. Эта функция разрешает писать во Flash.

Примечание. На некоторых компьютерах эта подфункция совпадает с подфункцией 05h «Повысить напряжение программирования».

Изменяемые регистры: AX Flash AMIBIOS, подфункция 08h Выбрать Flash

Вход:

AH=E0h

AL=08h

Выход:

AL=FAh

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

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

Описание. Если на основной плате компьютера присутствуют и обычный, и Flash EPROM, то выбирается Flash. Данная подфункция при необходимости может обеспечить задержку для стабилизации. Если в использовании данной подфункции нет необходимости (присутствует только Flash EPROM), она возвращает значение «Успешное выполнение».

Изменяемые регистры: AX Flash AMIBIOS, подфункция 09h Отменить выбранный Flash

Вход:

AH=E0h

AL=09h

Выход:

AL=FAh

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

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

Описание. Отменяет выбранный подфункцией 08h Flash.

Изменяемые регистры: AX Flash AMIBIOS, подфункция 0Ah Проверить доступ к адресам памяти

Вход:

AH=E0h

AL=0Ah

ES – сегмент памяти для верификации

BX – количество требуемых параграфов памяти

Выход:

AL=FAh

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

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

Описание. Проверяет доступность указанной памяти. Подфункция необходима в ситуации, если некоторые участки памяти недоступны вследствие отключения кэш (80000-9FFFF может быть недоступна) и еще в некоторых случаях. Если в использовании данной подфункции нет необходимости, она возвращает значение «Успешное выполнение».

Изменяемые регистры: AX, в случае ошибки BX=0 Flash AMIBIOS, подфункция 0Bh Сохранить состояние внутреннего кэш

Вход:

AH=E0h

AL=0Bh

ES:DI – указатель на буфер для сохранения

Выход:

AL=FAh

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

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

Описание. Сохраняет текущее состояние внутреннего кэш. Перед сохранением необходима проверка на доступность внутреннего кэш для конкретного железа. Буфер для сохранения должен быть не менее 16 байт. В случае отсутствия внутреннего кэш выдается ошибка.

Изменяемые регистры: AX Flash AMIBIOS, подфункция 0Ch Сохранить состояние внутреннего кэш

Вход:

AH=E0h

AL=0Ch

ES:DI – указатель на буфер для сохранения

Выход:

AL=FAh

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

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

Описание. Восстанавливает состояние внутреннего кэш, сохраненное подфункцией 0Bh.

Примечание. В защищенном режиме вызывает ошибку.

Изменяемые регистры: AX Flash AMIBIOS, подфункция FFh Сгенерировать CPU Reset (рестарт процессора).

Вход:

AH=E0h

AL=FFh

Описание. Генерирует CPU Reset (рестарт процессора).

<p>Приложение Г Функции DPMI (INT 31h)</p>

DPMI, функция 0000h

Выделить один или несколько дескрипторов в таблице LDT

Вход:

AX=0000h

CX – количество дескрипторов, которые необходимо выделить

Выход:

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

AX – базовый селектор

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

Описание. Выделяет один или несколько дескрипторов в таблице LDT. Созданные дескрипторы должны быть инициализированы создавшим их приложением.

Перейти на страницу:

Похожие книги