home *** CD-ROM | disk | FTP | other *** search
/ CP/M / CPM_CDROM.iso / cpm / utils / datestmp / ds-util1.lbr / TESTCLK.PZS / TESTCLK.PAS
Pascal/Delphi Source File  |  1988-04-04  |  2KB  |  57 lines

  1. Program Testclk;
  2. {Turbo Pascal program to test the function to
  3. read time and date using Plu*Perfect Systems
  4. DateStamper.  Full details of the interface
  5. are on the DateStamper Toolkit disk available
  6. from Plu*Perfect Systems, P.O. Box 1494,
  7. Idyllwild, CA 92349}
  8.  
  9. Type
  10.   tad_array = array[0..5] of byte;
  11. Var
  12.   stamp : tad_array;    {buffer for BCD result}
  13.   i  :   integer;
  14.  
  15. procedure GetTAD(var t: tad_array);
  16. { Return a 6 element integer array of the current system time in
  17.   seconds, minutes, hours, day, month, and year.
  18.   This assembly language routine checks for the
  19.   presence of Plu*Perfect Systems DateStamper and
  20.   if it is present the current time and date are
  21.   returned.  If not present then an array of zeros
  22.   is returned. }
  23.  
  24. begin
  25.   inline ($2A/t/$E5/$0E/$0C/$1E/$00/$CD/
  26.           $05/$00/$7D/$FE/$22/$20/$2A/$7C/
  27.           $B7/$20/$26/$1E/$44/$0E/$0C/$CD/
  28.           $05/$00/$7C/$FE/$44/$20/$1A/$ED/
  29.           $53/*+4/$E1/$CD/$00/$00/$11/$FB/
  30.           $FF/$EB/$19/$06/$03/$4E/$1A/$77/
  31.           $79/$12/$23/$1B/$10/$F7/$18/$08/
  32.           $E1/$06/$06/$AF/$77/$23/$10/$FC);
  33.  
  34.  
  35.   for i := 0 to 5 do  {convert from BCD to binary}
  36.     t[i] := 10*(t[i] div 16) + (t[i] mod 16);
  37.  
  38.  
  39. end;
  40.  
  41.  
  42. begin {main}
  43.  
  44.   writeln;
  45.   getTAD(stamp);
  46.  
  47.   writeln('Year:  ',stamp[5]);
  48.   writeln('Month: ',stamp[4]);
  49.   writeln('Day:   ',stamp[3]);
  50.   writeln('Hour:  ',stamp[2]);
  51.   writeln('Minute:',stamp[1]);
  52.   writeln('Second:',stamp[0]);
  53.   writeln;
  54.  
  55. end. {main}
  56. time in
  57.   seconds, minutes, hou