if EMSErrorFlag then
Halt; {Была ошибка} x := WhereX; {Запоминаем положение курсора} WriteLn('Нажмите любую клавишу...') ;
if ReadKey=#O then k := ord(ReadKey);
{Создаем окно в центре экрана и заполняем его случайным цветом} CIrScr;
SetWindow(10,7,70,18,2,' Нажмите любую клавишу...', False/True,False);
while not KeyPressed do begin
GotoXY(Random(59)+2,Random(10)+2) ;
TextBackground(Random(8));
Write (' ') end;
if ReadKey=#0 then k :== ord(ReadKey);
Scr.GetScreen; {Восстанавливаем экран} Window(l,l,80,25) ;
TextBackground(Black) ;
GotoXY(x,25) ;
Scr.Done;
{Проверяем графический режим} WriteLn(#13#10'Для перехода в графический '+
"режим нажмите любую клавишу...');
if ReadKey=#0 then k := ord(ReadKey) ;
d := detect;
InitGraph(d,r,'') ;
e := GraphResult;
if e о 0 then
begin {Ошибка инициации графики} WriteLn(GraphErrorMsg(e)) ;
Halt end;
{Инициируем Scr заново - новый режим экрана!} Scr.Init;
Line(0,0,GetMaxX,GetMaxY); {Диагональные линии} Line(O,GetMaxY,GetMaxX,O) ;
Scr.PutScreen; {Сохраняем изображение}. while not (KeyPressed or EMSErrorFlag) do begin
ClearDevice; {Очищаем экран} Scr.GetScreen; {Восстанавливаем
изображение} end;
Scr.Done;
CloseGraph;
end.