Страница 2 из 2

Re: Задержка на Pascal

Добавлено: 30 апр 2008, 12:09
Vovchik
Кстате насчёт delay я слышал что задершка зависит от процессора, точнее от чистоты его работы !!!

Re: Задержка на Pascal

Добавлено: 30 апр 2008, 14:33
somewhere
Vovchik, не от того как чИсто, а от того как чАсто и от модуля предварительной выборки и от архитектуры - короче от проца. Про реализацию Delay читаем здесь

Re: Задержка на Pascal

Добавлено: 30 апр 2008, 20:16
Serge_Bliznykov
Хыиуду,
&quot писал(а):А не проще получить текущее время, сохранить его и потом ничего не делать, пока текущее время не превысит сохраненное плюс время задержки?
погодите... а разве в моём коде не написано в точности то, о чём вы сказали!!
HundSecond:=round(HundSecond * 0.185) +Ticks; - получить новое время = заданное время + текущее
repeat until (Ticks>HundSecond) - крутим цикл, ждём пока текущее время не превысит сохраненное плюс время задержки...

Re: Задержка на Pascal

Добавлено: 30 апр 2008, 21:53
gluik
спасибо за помощь, сделал свой вариант:
1000 - 1 секунда

Код: Выделить всё

var
  systemtimer:longint absolute $0040:$006C;

procedure delau(t:longint);
var
  n,t:longint;
begin
  x:=0;
  n:=systemtimer;
  while ((t-n)/18.2)*1000<t do
    t:=systemtimer;
end;