begin

t := MemL[0:$46C] ;

while t=MemL[0:$46C] do;

end; {Get Time} _'————————.——;

begin {Îñíîâíàÿ ïðîãðàììà} {Ïðîâåðÿåì íàëè÷èå EMM} If not IsEMS then begin

WriteLn('Íåò ÅÌÇ-ïàìÿòè èëè íå óñòàíîâëåí EMM');

Halt end;

Colors(LightGray,Black);

CIrScr;

{Ñîîáùàåì íîìåð âåðñèè, îáùóþ è äîñòóïíóþ ïàìÿòü} WriteLn('Èñïîëüçóåòñÿ EMM âåðñèè ',GetEMMVersion);

WriteLn(' Ñåãìåíò îêíà îòîáðàæåíèÿ $',HexW(EMSSeg));

GetEMSInfo(All,Pages) ;

WriteLn(' Âñåãî ñòðàíèö : ',À11,' (',

round(All*16.0*1024),' áàéò)');

Sz := round(Pages*16.0*1024);

WriteLn (' Ñâîáîäíî ñòðàíèö: ',Pages,' (',Sz,' áàéò)');

{Îïðåäåëÿåì êîëè÷åñòâî X 16-Êáàéòíûõ ñòðàíèö â êó÷å} õ := MaxAvail div LPage;

if x>Pages then x := Pages; {Óðàâíèâàåì ñ EMM} {Ðàñïðåäåëÿåì â êó÷å ìàññèâû èç 4096 äëèííûõ öåëûõ ÷èñåë} dec (õ) ;

for k := 0 to x do

if MaxAvail>=LPage then GetMem(PV[k],LPage) ;

x := k;

Sz :==succ (x) *LPage div 4;

WriteLn('Ñîçäàåì ìàññèâ èç ',Sz,

' äëèííûõ öåëûõ ÷èñåë â êó÷å...');

GetTime; {Çàñåêàåì âðåìÿ} for j := 0 to x do

for k := 0 to LPage div 4-1 do begin

PVEjJ'^k] := j* (LPage div 4)+k;

if PVtjI'^k] mod 1000=0 then begin

Write (PVCjI^k:] :10);

GotoXY(l,WhereY) end end;

{Ïîäñ÷èòûâàåì åãî ñóììó} WriteLn('Ïîäñ÷èòûâàåì åãî ñóììó...');