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('Ïîäñ÷èòûâàåì åãî ñóììó...');