Системное программное обеспечение персональных ЭВМ


Пример 2 - часть 2


Для уточнения типа адаптера программа должна выполнить еще некоторые действия, рассмотрение которых мы отложим до главы, посвященной адаптерам.

Для AT информация об оборудовании хранится в CMOS (КМОП) памяти и сохраняется при выключении питания. При инициализации BIOS считывает эту информацию и формирует список оборудования, который может быть прочитан теми же средствами. Однако, информация об оборудовании AT более полная, для получения дополнительной информации программа может сама обратиться к CMOS-памяти. CMOS-память состоит из ряда регистров. Для чтения их необходимо выдать в порт 0x70 байт номера регистра, а затем из порта 0x71 прочитать байт содержимого этого регистра. С точки зрания определения конфигурации представляют интерес следующие регистры CMOS-памяти:

0x14- содержит байт оборудования, совпадающий с младшим байтом списка оборудования BIOS;
0x10- типы дисководов НГМД; младший полубайт - для дисковода A, старший - для B; типы кодируются следующим образом: 0 - нет дисковода, 1 - дисковод для дискет 360К, 2 - для дискет высокой плотности;
0x12- типы жестких дисков младший полубайт - для первого диска, старший - для второго; 0 в соответствующем полубайте означает, что этого жесткого диска нет; числа 1-14 - коды типов, число 15 означает, что тип жесткого диска записан в регистре 0x19 (для первого диска) или 0x1A (для второго).

Вот как выглядит получение информации из CMOS-памяти.




- Начало -  - Назад -  - Вперед -