home *** CD-ROM | disk | FTP | other *** search
/ Programmer 7500 / MAX_PROGRAMMERS.iso / PASCAL / SYSPC22.ZIP / STATRET.PAS < prev    next >
Encoding:
Pascal/Delphi Source File  |  1988-04-01  |  1.0 KB  |  52 lines

  1. type systemstatus=array [1..511] of byte;
  2.  
  3. var numcallers:real;
  4.     tonext:integer;
  5.     sysopavail:availtype;
  6.     lastdayup:sstr;
  7.     numdaysup,callstoday:integer;
  8.     numminsidle,numminsused,numminsxfer:minuterec;
  9.     timedeventdate:sstr;
  10.     messages,ups,newfeedback,newcalls,newuploads,newposts,newmail:integer;
  11.  
  12.     dummyfiller:array [1..500] of byte;
  13.  
  14. function timer:integer;
  15. var r:regs;
  16. begin
  17.   r.ax:=$2c00;
  18.   intr ($21,r);
  19.   timer:=(r.cx shr 8)*60+(r.cx and 255)
  20. end;
  21.  
  22. procedure starttimer (var m:minuterec);
  23. begin
  24.   if m.started then exit;
  25.   m.startedat:=timer;
  26.   m.started:=true
  27. end;
  28.  
  29. function elapsedtime (var m:minuterec):integer;
  30. var n:integer;
  31. begin
  32.   if not m.started then begin
  33.     elapsedtime:=0;
  34.     m.startedat:=timer;
  35.     exit
  36.   end;
  37.   n:=timer-m.startedat;
  38.   if n<0 then n:=n+1440;
  39.   elapsedtime:=n
  40. end;
  41.  
  42. procedure stoptimer (var m:minuterec);
  43. begin
  44.   if not m.started then begin
  45.     m.startedat:=0;
  46.     exit
  47.   end;
  48.   m.startedat:=elapsedtime(m);
  49.   m.total:=m.total+m.startedat;
  50.   m.started:=false
  51. end;
  52.