home *** CD-ROM | disk | FTP | other *** search
/ Computer Club Elmshorn Atari PD / CCE_PD.iso / pc / 0300 / CCE_0367.ZIP / CCE_0367.PD / INTRFACE / DOS.INT < prev    next >
Text File  |  1992-09-25  |  4KB  |  158 lines

  1. unit    dos;
  2.  
  3. interface
  4.  
  5. uses    tos;
  6.  
  7. (* -------------------------------------------------------------------- *)
  8. (*        constants, types & variables                                    *)
  9. (* -------------------------------------------------------------------- *)
  10.  
  11. const
  12.  
  13.     fmClosed = $D7B0;
  14.     fmInput  = $D7B1;
  15.     fmOutput = $D7B2;
  16.     fmInOut  = $D7B3;
  17.  
  18.     ReadOnly    = $01;
  19.     Hidden        = $02;
  20.     SysFile        = $04;
  21.     VolumeID    = $08;
  22.     Directory    = $10;
  23.     Archive        = $20;
  24.     AnyFile        = $3F;
  25.  
  26.  
  27. type
  28.  
  29.     FileRec = record
  30.                 Handle :    Word;
  31.                 Mode :        Word;
  32.                 RecSize :    LongInt;
  33.                 Private :    array[1..28] of Byte;
  34.                 UserData :    array[1..16] of Byte;
  35.                 Name :        array[0..119] of Char;
  36.                 Reserved :    Word;
  37.             end;
  38.  
  39.     TextBuf = array[0..127] of Char;
  40.  
  41.     TextRec = record
  42.                 Handle :    Word;
  43.                 Mode :        Word;
  44.                 BufSize :    LongInt;
  45.                 BufPos :    LongInt;
  46.                 BufEnd :    LongInt;
  47.                 BufPtr :    ^TextBuf;
  48.                 OpenFunc :    Pointer;
  49.                 InOutFunc :    Pointer;
  50.                 FlushFunc :    Pointer;
  51.                 CloseFunc :    Pointer;
  52.                 UserData :    array[1..16] of Byte;
  53.                 Name :        array[0..119] of Char;
  54.                 Reserved :    Word;
  55.                 Buffer :    TextBuf;
  56.             end;
  57.  
  58.     DateTime = record
  59.                 Year, Month, Day, Hour, Min, Sec : Word;
  60.             end;
  61.  
  62.     SearchRec = record
  63.                 Fill    : array[1..21] of Byte;
  64.                 Attr    : Byte;
  65.                 Time    : LongInt;
  66.                 Size    : LongInt;
  67.                 Name    : string[12];
  68.             end;
  69.  
  70.     ComStr    = string[127];
  71.     PathStr    = string[119];
  72.     DirStr    = string[105];
  73.     NameStr    = string[8];
  74.     ExtStr    = string[4];
  75.  
  76.  
  77. var
  78.  
  79.     DosError : Integer;
  80.  
  81.  
  82. (* -------------------------------------------------------------------- *)
  83. (*        functions & procedures                                            *)
  84. (*                                                                        *)
  85. (*                                                                        *)
  86. (*        not implemented:                                                *)
  87. (*                                                                        *)
  88. (*        procedure    Intr( IntNo : Byte; var Regs : Register );            *)
  89. (*        procedure    MsDos( var Regs : Register );                        *)
  90. (* -------------------------------------------------------------------- *)
  91.  
  92.     function    DosExitCode : Word;
  93.  
  94.     function    DosVersion : Word;
  95.  
  96.     function    DiskFree( Drive : Byte ) : LongInt;
  97.  
  98.     function    DiskSize( Drive : Byte ) : LongInt;
  99.  
  100.     function    EnvCount : Integer;
  101.  
  102.     function    EnvStr( Index : Integer ) : string;
  103.  
  104.     procedure    Exec( Path, CmdLine : string );
  105.  
  106.     function    FExpand( Path : PathStr ) : PathStr;
  107.  
  108.     procedure    FindFirst( Path : string; Attr : Byte; var S : SearchRec );
  109.  
  110.     procedure    FindNext( var S : SearchRec );
  111.  
  112.     function    FSearch( Path : PathStr; DirList : string ) : string;
  113.  
  114.     procedure    FSplit( Path : PathStr; var Dir : DirStr;
  115.                         var Name : NameStr; var Ext : ExtStr );
  116.  
  117.     procedure    GetCBreak( var break : boolean );
  118.  
  119.     procedure    GetDate( var Year, Month, Day, DayofWeek: Word );
  120.  
  121.     function    GetEnv( EnvVar : string ) : string;
  122.  
  123.     procedure    GetFAttr( var f; var Attr : Word );
  124.  
  125.     procedure    GetFTime( var f; var Time : LongInt );
  126.  
  127.     procedure    GetIntVec( IntNo : Byte; var Vector : Pointer );
  128.  
  129.     procedure    GetTime( var Hour, Min, Second, Sec100 : Word );
  130.  
  131.     procedure    GetVerify( var verify : Boolean );
  132.  
  133.     procedure    Keep( ExitCode : Word );
  134.  
  135.     procedure    PackTime( var DT : DateTime; var Time : LongInt );
  136.  
  137.     procedure    SetCBreak( break : Boolean );
  138.  
  139.     procedure    SetDate( Year, Month, Day : Word );
  140.  
  141.     procedure    SetFAttr( var f; Attr : Word );
  142.  
  143.     procedure    SetFTime( var f; Time : LongInt );
  144.  
  145.     procedure    SetIntVec( IntNo : Byte; Vector : Pointer );
  146.  
  147.     procedure    SetTime( Hour, Minute, Second, Sec100 : Word );
  148.  
  149.     procedure    SetVerify( verify : Boolean );
  150.  
  151.     procedure    SwapVectors;
  152.  
  153.     procedure    UnpackTime( Time : LongInt; var DT : DateTime );
  154.  
  155.  
  156. (* =================================================================== *)
  157.  
  158.