1.1.2 Определение типа IBM PC.

Error message

Notice: Undefined index: add term path in hansel_get_breadcrumbs() (line 524 of /data/sites/msdosworld.ru/www/sites/all/modules/hansel/hansel.module).

  Имеются проблемы совместимости между различными типами IBM PC.


Для  того чтобы программа могла работать на любом из IBM PC,  ис-


пользуя все его возможности,  необходимо  чтобы она могла опреде-


лить  тип машины, в которую она загружена.  Эта информация содер-


жится во втором с конца байте памяти  по адресу FFFFE в ROM-BIOS,


с использованием следующих ключевых чисел.



             Компьютер                Код


                PC                     FF


                XT                     FE


                PCjr                   FD


                AT                     FC



   Высокий уровень.



   В Бейсике надо просто использовать PEEK для чтения значения:



100 DEF SEG = &HF000        'указываем на верхние 64K памяти


110 X = PEEK(&HFFFE)        'читаем второй с конца байт


120 IF X = &HFD THEN ...    '... тогда это PCjr



   Низкий уровень.



   В языке ассемблера:



;--- Определение типа компьютера:


   MOV  AX,0F000H           ;указывает ES на ПЗУ


   MOV  ES,AX               ;


   MOV  AL,ES:[0FFFEH]      ;получаем байт


   CMP  AL,0FDH             ;это PCjr?


   JE   INITIALIZE_JR       ;переходим на инициализацию




Вы находитесь в разделе: 

Добавить коментарий