home *** CD-ROM | disk | FTP | other *** search
/ Turbo Toolbox / Turbo_Toolbox.iso / 1987 / 10 / dosfunc / dircpdta.pas < prev    next >
Encoding:
Pascal/Delphi Source File  |  1987-08-25  |  1.4 KB  |  28 lines

  1. (* ----------------------------------------------------------------------- *)
  2. (*                              DIRCPDTA.PAS                               *)
  3. (*                (c) 1987  Michael Ceol & PASCAL INT.                     *)
  4. (*  Eintrag aus DTA (CP/M 2.x & 3.x in das Format der Bibliothek bringen:  *)
  5. PROCEDURE DTAtoDirEntry (VAR entry: Dir_Rec);
  6. VAR i: INTEGER;  temp: Dir_Str;
  7. BEGIN
  8.  WITH entry DO BEGIN
  9.   name := '';  ext := '';  date := '';  time := '';  size := 0.0;
  10.   IF DIRResult = DOSfnok THEN BEGIN
  11.     FOR i := 1 TO 8 DO              (* Attribut-Bits in Name ausgeblenden: *)
  12.       name := Concat(name,Chr(Ord(DirDTA^[DirFCB.DTAInx].fname[i]) AND $7F));
  13.     FOR i := 9 TO 11 DO             (* Attribut-Bits in Ext. ausgeblenden: *)
  14.       ext := Concat(ext, Chr(Ord(DirDTA^[DirFCB.DTAInx].fname[i]) AND $7F));
  15.     time := '000000';  date := '00000000';  size := 0.0;
  16.     attr := GetDEAttr(DirFCB.DTAInx);     (* Attribut a la MS-DOS erzeugen *)
  17.     (* nur CP/M 3.x mit aktiver Zeitstempelung verfuegt ueber Datei-Datum: *)
  18.     IF (DVersion IN [$30..$3F]) AND (DirDTA^[3].dircod = $21) THEN BEGIN
  19.       WITH DirDTA^[3].datim[DirFCB.DTAInx] DO BEGIN
  20.         DOSDateStr(udate,date);  DOSTimeStr(utime,time);
  21.       END;
  22.     END;
  23.   END;
  24.  END;
  25. END;
  26. (* ----------------------------------------------------------------------- *)
  27. (*                              DIRCPDTA.PAS                               *)
  28.