+——————————————+;
var
a,b: Word;
begin
{Ñîîáùàåì îáúåì îïåðàòèâíîé ïàìÿòè}
WriteLn(MemW[0:$413],' Êáàéò îïåðàòèâíîé ïàìÿòè');
{Îïðåäåëÿåì òèï ÏÊ}
if Mem[$FOOO:$FFFE] = $FC then begin {Òèï AT}
WriteLn('Êîìïüþòåð òèïà IBM AT ñîäåðæèò:');
Port[$70] := $14;
a := Port[$71] ;
if a and K>0 then case (a shr 6) and 3 of
0: WriteLn('- îäèí íàêîïèòåëü ÃÌÄ');
1: WriteLn('- äâà íàêîïèòåëÿ ÃÌÄ');
end;
if a and 2 î 0 then
WriteLn('- àðèôìåòè÷åñêèé ñîïðîöåññîð');
case (a shr 4) and 3 of
0: WriteLn('- àäàïòåð EGA èëè VGA');
1: WriteLn('- öâåòíîé àäàïòåð 40õ25');
2: WriteLn('- öâåòíîé àäàïòåð 80õ25');
3: WriteLn('- ìîíîõðîìíûé äèñïëåé') end;
{Àíàëèçèðóåì êîëè÷åñòâî ïîñëåäîâàòåëüíûõ ïîðòîâ} à := 0;
for b := 0 to 3 do
if MemW[O:$4OO+b shi 2]<>0 then inc (a) ;
WriteLn('- ',a,' ïîñëåäîâàòåëüíûõ ïîðòà');
{Àíàëèçèðóåì êîëè÷åñòâî ïàðàëëåëüíûõ ïîðòîâ) à := 0;
for b := 0 to 3 do
if MemW[O:$408+b shi 2]<>0 then inc (a) ;
WriteLn('- '/à,' ïàðàëëåëüíûõ ïîðòà') end else
begin {Òèï XT}
WriteLn('Êîìïüþòåð òèïà IBM XT ñîäåðæèò:');
a := MemW[0:$ 410];
if a and 1<>0 then
WriteLn('- ',(a shr 6) and 3,' íàêîïèòåëåé ÃÌÄ');
if a and 2<>0 then
WriteLn('- àðèôìåòè÷åñêèé ñîïðîöåññîð');
if a and 12<>0 then