home *** CD-ROM | disk | FTP | other *** search
/ Power Programming / powerprogramming1994.iso / progtool / filutl / ldiff12s.arc / LDINIT.PAS < prev    next >
Pascal/Delphi Source File  |  1989-07-15  |  2KB  |  99 lines

  1. (*---------------------------------------------------------------------------*)
  2. (*LDInit.pas Åëè·ë╗                 (C) ÄOû╪ÿaòF NIFTY SDR SDI00147 1989/7/1 *)
  3. (*$B-,F-,I-,N-                                                               *)
  4. (*---------------------------------------------------------------------------*)
  5. UNIT LDInit;
  6.  
  7.  
  8. INTERFACE
  9.  
  10.  
  11. USES
  12.    Dos,
  13.    MyType,
  14.    MyTool,
  15.    LDVari,
  16.    LDProc;
  17.  
  18.  
  19. PROCEDURE Initialize;
  20.  
  21.  
  22. IMPLEMENTATION
  23.  
  24.  
  25. PROCEDURE ReadCmdLine;
  26. VAR
  27.    d : DirStr;
  28.    n : NameStr;
  29.    e : ExtStr;
  30.    s : ARRAY[1..4] OF STRING;
  31.    i,j : BYTE;
  32. BEGIN
  33.    IF ParamCount=0 THEN Exit;
  34.    j:=0;
  35.    FOR i:=1 TO ParamCount DO BEGIN
  36.       Inc(j);
  37.       s[j]:=UpCaseStr(ParamStr(i));
  38.       IF (j=1) AND (Length(s[j])>1) THEN BEGIN
  39.          s[j]:='X';Inc(j);
  40.          s[j]:=UpCaseStr(ParamStr(i));
  41.       END;END;
  42.    IF (Length(s[1])<>1) OR (NOT (s[1,1] IN CMDSET)) THEN BEGIN
  43.       WriteLn(ERRF,CRLF+s[1]+' : '+MEG(CommandErMsg));Exit;END;
  44.    CMD:=s[1,1];
  45.    CASE CMD OF
  46.       'C' : CASE j OF
  47.                3 : BEGIN
  48.               FSplit(s[2],d,n,e);
  49.                       IF e='' THEN Exit;
  50.               NewFName:=s[3];
  51.               OldFName:=s[2];
  52.                       FSplit(NewFName,d,n,e);
  53.               LzdFName:=n+LzdExt;
  54.                    END;
  55.                4 : BEGIN
  56.               NewFName:=s[4];
  57.               OldFName:=s[3];
  58.               LzdFName:=s[2];
  59.                    END;
  60.             END;
  61.       'X','T' : CASE j OF
  62.                2 : BEGIN
  63.               LzdFName:=s[2];
  64.                    END;
  65.                3 : BEGIN
  66.               LzdFName:=s[2];
  67.               OldFName:=s[3];
  68.                    END;
  69.                4 : BEGIN
  70.               LzdFName:=s[2];
  71.               OldFName:=s[3];
  72.               NewFName:=s[4];
  73.                    END;
  74.             END;
  75.    END;
  76. END;
  77.  
  78.  
  79. PROCEDURE Initialize;
  80. VAR
  81.    d : DirStr;
  82.    n : NameStr;
  83.    e : ExtStr;
  84. BEGIN
  85.    ReadCmdLine;
  86.    IF CMD IN ['H',NUL] THEN Exit;
  87.    IF LzdFName='' THEN BEGIN
  88.       MsgLn(MEG(CommandLineErMsg));CMD:=NUL;Exit;END;
  89.    FSplit(LzdFName,d,n,e);
  90.    IF (e<>'') AND (e<>LzdExt) THEN Error(LzdFName,LzdFNameErMsg);
  91.    LzdFName:=d+n+LzdExt;
  92.    MsgLn(MEG(CopyRightMsg));
  93. END;
  94.  
  95.  
  96. BEGIN
  97.    SetIntVec($24,SaveInt24);
  98. END.
  99.