API  timercom.dll

  stdcall
  0   ,  -1  
     
    ,     
     (  cominit, comclose)

-------------------------------

function cominit(port:integer):integer;stdcall;external 'timercom' name 'cominit';
function comclose:integer;stdcall;external 'timercom' name 'comclose';
function gettime(var d,h,m,s:byte):integer;stdcall;external 'timercom' name 'gettime';
function settime(d,h,m,s:byte):integer;stdcall;external 'timercom' name 'settime';
function getstate(var s1,s2,s3,s4:byte):integer;stdcall;external 'timercom' name 'getstate';
function setstate(s1,s2,s3,s4:byte):integer;stdcall;external 'timercom' name 'setstate';
function getalarm(var alarm:talarm):integer;stdcall;external 'timercom' name 'getalarm';
function setalarm(alarm:talarm):integer;stdcall;external 'timercom' name 'setalarm';
function getall(var buf:ttimer):integer;stdcall;external 'timercom' name 'getall';
function setall(buf:ttimer):integer;stdcall;external 'timercom' name 'setall';


cominit(port) -  COM 
port -  com- (1  COM1  ..)
           
void comclose();
 COM 

gettime,settime -     

getstate,setstate -     

getalarm,setalarm -    

getall,setall -       (
    , ..    
 )

-------------------------------

type talarm=array [1..16] of record
     d,h,m,s:byte;
     end;
 
         d   CCSxxDDD
           CC-  (0..3)
           S- (0-, 1-)
           x- (  0)
           DDD-  (1..7)
         h  (0..23)
         m  (0..59)
         s  (0..59)

type ttimer=record
     chk1:byte;
     s1,s2,s3,s4:byte;
     s,m,h,d:byte;
     t:talarm;
     chk2:byte;
     end;
  
      chk1,chk2 -  (  )
      s1,s2,s3,s4 -   (0-, 1-)
      d   (0..23)
      h  (0..23)
      m  (0..59)
      s  (0..59)
      t  
      
      