home *** CD-ROM | disk | FTP | other *** search
/ Power-Programmierung / CD1.mdf / pascal / utility / crossref / aak_xref / readdate.pas < prev    next >
Pascal/Delphi Source File  |  1986-03-29  |  2KB  |  41 lines

  1. (********************************************************************)
  2. (* THIS PROCEDURE WILL PROCEDURE WILL READ THE DATE FROM THE REAL   *)
  3. (*     TIME CLOCK                                                   *)
  4. (* INPUT        : NONE                                              *)
  5. (* INPUT/OUTPUT : NONE                                              *)
  6. (* OUTPUT       : CURRENT MONTH NUMBER                              *)
  7. (*              : CURRENT DAY NUMBER                                *)
  8. (*              : CURRENT YEAR NUMBER                               *)
  9. (* USES         : NO SIDE EFFECTS                                   *)
  10. (* CALLS        : INTERUPT $1A , BCD_TO_INTEGER                     *)
  11. (* ERRORS       : NONE                                              *)
  12. (* GLOBAL VARS  : REG.TYPE                                          *)
  13. (* SUBJECT      : DATE, READ REAL TIME CLOCK                        *)
  14. (* DOMAIN       : ARNO A. KARNER\PUBLIC               LEVEL : 001   *)
  15. (********************************************************************)
  16.  
  17. PROCEDURE Read_Date                      ( VAR Month : Month_Number  ;
  18.                                            VAR Day   : Day_Number    ;
  19.                                            VAR Year  : Year_Number ) ;
  20.  
  21.  
  22. VAR
  23.    CenturyBcd,
  24.    MonthBcd,
  25.    DayBcd     : INTEGER ;
  26.    Regs       : Reg ;
  27.  
  28. BEGIN
  29.    Regs.AH := 4 ;
  30.    INTR ($1A,Regs) ;
  31.    WITH Regs DO
  32.        BEGIN
  33.           MonthBcd   := DH ;
  34.           DayBcd     := DL ;
  35.           CenturyBcd := CX ;
  36.        END ;  (* WITH REGS *)
  37.    Month    := BcdToInteger ( MonthBcd ) ;
  38.    Day      := BcdToInteger (DayBcd) ;
  39.    Year     := BcdTointeger (CenturyBcd)
  40. END ; (* END PROC *)
  41.