home *** CD-ROM | disk | FTP | other *** search
/ Frostbyte's 1980s DOS Shareware Collection / floppyshareware.zip / floppyshareware / USCX / TURBO-02.ZIP / MOVEFILE.LIB < prev    next >
Text File  |  1984-12-17  |  2KB  |  41 lines

  1. {@@@@@@@@@@@ copyright (C) 1984 by Neil J. Rubenking @@@@@@@@@@@@@@@@@@@@@@@@
  2. The purchaser of these procedures and functions may include them in COMPILED
  3. programs freely, but may not sell or give away the source text.
  4.  
  5.     Programs INCLUDEing this file must also INCLUDE
  6.         FILENAME.TYP
  7.          REGPACK.TYP
  8.  
  9.     The procedure MOVE is the DOS 2.0 RENAME command.  It can actually
  10.     MOVE a file from one subdirectory to another!  The file can be
  11.     renamed in the process, and any file in any subdirectory can be
  12.     renamed without being moved.
  13.  
  14.  }
  15. {@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@}
  16. procedure MOVEFILE ( VAR OldFullPath :filename_type;
  17.                      VAR NewFullPath : filename_type;
  18.                      VAR error_return : byte);
  19.  
  20. var
  21.   regs : regpack;
  22.   N      : byte;
  23.  
  24. begin
  25.   OldFullPath[length(OldFullPath)+1] := chr(0);
  26.   NewFullPath[length(NewFullPath)+1] := chr(0);
  27.   with regs do
  28.     begin
  29.       DS := seg(OldFullPath);
  30.       DX := ofs(OldFullPath)+1;  {the very first byte is the length}
  31.       ES := seg(NewFullPath);
  32.       DI := ofs(NewFullPath)+1;
  33.       AX := $56 shl 8;               { ERRORS are             }
  34.       INTR($21,regs);                {   2 : file not fount   }
  35.       if Flags and 1 = 1 then        {   3 : path not found   }
  36.         error_return := AX           {   5 : access denied    }
  37.       else                           {  17 : not same device  }
  38.         error_return := 0;
  39.     end;  {with}
  40. end;
  41.