Справочник программиста на персональном компьютере фирмы IBM. Системные ресурсы - Определение типа IBM PC
ОГЛАВЛЕНИЕ
1.1.2 Определение типа IBM PC.
Имеются проблемы совместимости между различными типами 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 ;переходим на инициализацию