Примечание. Необходимо сохранить текущее состояние кэш, управления электропитанием (Power Management), затенения (Shadow) и прочее. При нефатальной ошибке будет возможно вернуть эти значения. Подготовка чипа к работе с Flash EPROM включает в себя отключение затенения RAM, внешнего и внутреннего кэш, управления электропитанием и так далее. Необходимо сохранить эти значения перед началом операции. Отключение кэш позволит с полной уверенностью обращаться напрямую в адресное пространство ROM, не беспокоясь о том, что кэш может этому помешать. Если нужное адресное пространство ROM кэшируется только при включенном затенении «Shadow Enabled» (то есть кэшируется только затененная RAM, а не ROM), отмена кэширования происходит при отмене затенения RAM, и в данном случае отмены кэширования не требуется. Если ROM кэшируется, то кэш необходимо отключить.
Изменяемые регистры: AX Flash AMIBIOS, подфункция 03h Восстановить состояние чипа
Вход:
AH=E0h
AL=03h
ES:DI – указатель на буфер, где хранится состояние чипа, которое необходимо восстановить
Выход:
AL=FAh
CF=0, если функция выполнена успешно
CF=1, если при выполнении функции возникли ошибки
Описание. Данная подфункция восстанавливает состояние чипа из области памяти, в которую он был сохранен подфункцией 02h.
Изменяемые регистры: AX Flash AMIBIOS, подфункция 04h Понизить напряжение программирования (Vpp)
Вход:
AH=E0h
AL=04h
Выход:
AL=FAh
CF=0, если функция выполнена успешно
CF=1, если при выполнении функции возникли ошибки
Описание. Понижает напряжение программирования (Vpp) до нормального уровня. Необходима задержка для стабилизации напряжений.
Примечание. На некоторых компьютерах эта подфункция совпадает с подфункцией 06h «Защитить Flash от записи».
Изменяемые регистры: AX Flash AMIBIOS, подфункция 05h Повысить напряжение программирования (Vpp)
Вход:
AH=E0h
AL=05h
Выход:
AL=FAh
CF=0, если функция выполнена успешно
CF=1, если при выполнении функции возникли ошибки
Описание. Повышает Vpp до уровня, необходимого для программирования (12В для 12-вольтовых Flash EPROM). Необходима задержка для стабилизации напряжений.
Примечание. На некоторых компьютерах эта подфункция совпадает с подфункцией 07h «Разрешить запись во Flash».
Изменяемые регистры: 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 может быть недоступна) и еще в некоторых случаях. Если в использовании данной подфункции нет необходимости, она возвращает значение «Успешное выполнение».
Читать дальше
Конец ознакомительного отрывка
Купить книгу