Модератор: Модераторы
Лекс Айрин писал(а):рямой доступ к контролеру тактового генератора. Естественно, на ассемблере.
function GetSeconds(): longint;
begin
{$IFDEF WINDOWS}
result:=GetTickCount div 1000;
{$ELSE}
result:= ???????
{$ENDIF}
end;
zub писал(а):Любой таймер тикающий каждую единицу времени (секунду) в обработчике простой инкремент переменной, хранящей время работы в этих еденицах
Vadim писал(а):В принципе можно условную компиляцию сделать:
{$IFDEF LINUX}
function GetTickCount: Cardinal;
var
tv: timeval;
begin
gettimeofday(tv, nil);
Result := int64(tv.tv_sec) * 1000 + tv.tv_usec div 1000;
end;
{$ENDIF}
zub писал(а):Вы тут с ассемблером с дуба рюхнулись. Забыть про него давно надо.
MysticCoder писал(а):...+32хбитность через несколько дней даст переполнение.
zub писал(а):EpicTimer?
zub писал(а):сим извещаю - MSDOS умер.
zub писал(а):ну давайц, получи доступ хоть к чемунить железному в современной оси.
Лекс Айрин писал(а):Может и стоит попробовать. Найду только справочник по прерываниям биоса. Впрочем, даже если не получится, то это ровным счетом ничего не значит...
Vadim писал(а):Заранее предупреждаю - лезть с прерываниями для видеокарт типа CGA или EGA не стоит, операционка будет изрядно удивлена...
Лекс Айрин писал(а):Чем более высокоуровневые функции, тем меньше точность таймера.
Вернуться в Free Pascal Compiler
Сейчас этот форум просматривают: нет зарегистрированных пользователей и гости: 61