Приложение В
Функции программирования Flash в AMIBIOS

За программирование Flash в AMIBIOS отвечает функция EOh преры-
вания INT 16h. При вызове прерывания INT 16h номер функции дол-
жен находиться в регистре АН, номер подфункции - в регистре AL.
При возврате из функции регистр AL содержит FAh как подтвержде-
ние, что данная функция прерывания поддерживается. Флаг CF равен
нулю при успешном выполнении и равен единице при ошибке.

Для уверенности в успешном выполнении функций необходимо всегда
проверять AL=FAh на выходе.

Flash AMIBIOS, подфункция ООН
Получить номер версии интерфейса Flash BIOS

Вход:

AH=EOh
AL=OOh

Выход:

AL-FAh

CF=1 - интерфейс Flash-BIOS отсутствует
CF=0 - интерфейс Flash-BIOS присутствует
ВХ - номер версии в формате BCD

Описание.

Возвращает номер версии интерфейса Flash-BIOS в BCD-формате. На-
пример, версия 2.00 возвратит в ВХ число 0200h.

Примечание.

Эту функцию можно использовать для детектирования наличия интер-
фейса Flash-BIOS. При возврате регистр AL должен обязательно быть
равен FAh.

Изменяемые регистры: АХ, ВХ

Flash AMIBIOS, подфункция Oih
Получить требования к сохранению состояния чипа

Вход:

AH-EOh
AL=01h

10-1436


Выход:

AL-FAh

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

ВХ - размер области памяти (в байтах), необходимый для сохране-
ния текущего состояния чипа

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

Описание.

Возвращает размер области памяти (в байтах), необходимый для сохра-
нения текущего состояния чипа.

Изменяемые регистры: АХ, ВХ

Flash AMIBIOS, подфункция 02h
Сохранить текущее состояние чипа
в подготовленной области

Вход:

AH-EOh

AL=02h

ES:DI - указатель на буфер для сохранения текущего состояния чипа

Выход:

AL-FAh

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

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

Описание.

Данная подфункция сохраняет текущее состояние чипа в обозначенной

области данных и подготавливает чип к разрешению доступа в EPROM.

Примечание.

Необходимо сохранить текущее состояние кэш, управления электропи-
танием (Power Management), затенения (Shadow) и прочее. При нефа-
тальной ошибке будет возможно вернуть эти значения. Подготовка чипа
к работе с Flash EPROM включает в себя отключение затенения RAM,
внешнего и внутреннего кэш, управления электропитанием и так далее.
Необходимо сохранить эти значения перед началом операции. Отключе-
ние кэш позволит с полной уверенностью обращаться напрямую в ад-
ресное пространство ROM, не беспокоясь о том, что кэш может этому


помешать. Если нужное адресное пространство ROM кэшируется толь-
ко при включенном затенении "Shadow Enabled" (то есть кэшируется
только затененная RAM, а не ROM), отмена кэширования происходит
при отмене затенения RAM, и в данном случае отмены кэширования не
требуется. Если ROM кэшируется, то кэш необходимо отключить.

Изменяемые регистры: АХ

Flash AMIBIOS, подфункция 03h
Восстановить состояние чипа

Вход:

AH-EOh

AL=03h

ES:DI - указатель на буфер, где хранится состояние чипа, которое

необходимо восстановить

Выход:

AL-FAh

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

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

Описание.

Данная подфункция восстанавливает состояние чипа из области памя-
ти, в которую он был сохранен подфункцией 02h.

Изменяемые регистры: АХ

Flash AMIBIOS, подфункция 04h
Понизить напряжение программирования (V )

Вход:

AH=EOh
AL°04h

Выход:

AL=FAh

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

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

Описание.

Понижает напряжение программирования (V ) до нормального уровня.

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

ю*


Примечание.

На некоторых компьютерах эта подфункция совпадает с подфункцией

06h "Защитить Flash от записи".

Изменяемые регистры: АХ

Flash AMIBIOS, подфункция 05h
Повысить напряжение программирования (V )

Вход:

AH-EOh
AL=05h

Выход:

AL°FAh

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

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

Описание.

Повышает V до уровня, необходимого для программирования (12В для
12-вольтовых Flash EPROM). Необходима задержка для стабилизации
напряжений.

Примечание.

На некоторых компьютерах эта подфункция совпадает с подфункцией

07h "Разрешить запись во Flash".

Изменяемые регистры: АХ

Flash AMIBIOS, подфункция 06h
Защитить Flash от записи

Вход:

AH-EOh
AL°06h

Выход:

AL-FAh

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

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

Описание.

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


Примечание.

На некоторых компьютерах эта подфункция совпадает с подфункцией

04h "Понизить напряжение программирования".

Изменяемые регистры: АХ

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

Вход:

AH=EOh
AL-07h

Выход:

AL=FAh

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

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

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

Примечание.

На некоторых компьютерах эта подфункция совпадает с подфункцией

05h "Повысить напряжение программирования".

Изменяемые регистры: АХ

Flash AMIBIOS, подфункция 08h
Выбрать Flash

Вход:

AH-EOh
AL=08h

Выход:

AL=FAh

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

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

Описание.

Если на основной плате компьютера присутствуют и обычный, и Flash

EPROM, то выбирается Flash. Данная подфункция при необходимости


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

Изменяемые регистры: АХ

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

Вход:

AH-EOh
AL=09h

Выход:

AL=FAh

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

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

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

Изменяемые регистры: АХ

Flash AMIBIOS, подфункция OAh
Проверить доступ к адресам памяти

Вход:

AH=EOh

AL°OAh

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

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

Выход:

AL°FAh

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

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

Описание.

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


Изменяемые регистры: AX, в случае ошибки ВХ=0

Flash AMIBIOS, подфункция OBh
Сохранить состояние внутреннего кэш

Вход:

AH=EOh
AL=OBh
ES:DI - указатель на буфер для сохранения

Выход:

AL=FAh

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

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

Описание.

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

Изменяемые регистры: АХ

Flash AMIBIOS, подфункция OCh
Сохранить состояние внутреннего кэш

Вход:

AH=EOh
AL=OCh
ES:DI - указатель на буфер для сохранения

Выход:

AL=FAh

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

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

Описание.

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

OBh.

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

Изменяемые регистры: АХ


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

Вход:

AH°EOh
AL=FFh

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

Сайт создан в системе uCoz