home *** CD-ROM | disk | FTP | other *** search
/ BBS 1 / BBS#1.iso / communic / arqonly.ha / ARQONLY.PAS < prev   
Encoding:
Pascal/Delphi Source File  |  1995-02-07  |  1.3 KB  |  58 lines

  1. {$M 1024,0,0}
  2. {$I+}
  3. Program ARQOnly;
  4. Uses Dos;
  5. Var
  6.  F:File;
  7.  S:String;
  8.  I:Byte;
  9.  ARQMode:Boolean;
  10. Begin
  11.  WriteLn('ARQOnly - reject non-ARQ users v0.1 (C)1995 Basil Vorontsov, TiGGERSoft // IHG');
  12.  WriteLn;
  13.  If ParamCount<3 Then
  14.   Begin
  15.    WriteLn('Usage: ARQONLY <Port NAME> <Logfile> <BBS loader> [<Optional parameters>]');
  16.    WriteLn;
  17.    WriteLn('Example: ARQONLY COM2 C:\LOGS\T-MAIL.LOG DOBBS.BAT 14400');
  18.    WriteLn;
  19.    Halt;
  20.   End;
  21.  FileMode:=2;
  22.  Assign(F,ParamStr(2));
  23.  Reset(F,1);
  24.  Seek(F,FileSize(F)-255);
  25.  BlockRead(F,S,255);
  26.  Close(F);
  27.  S[0]:=#254;
  28.  While Pos('CONNECT',S)>0 do
  29.   Delete(S,1,Pos('CONNECT',S));
  30.  ARQMode:=False;
  31.  If Pos('ARQ',S)>0 Then
  32.   ARQMode:=True;
  33.  If Pos('MNP',S)>0 Then
  34.   ARQMode:=True;
  35.  If Pos('HST',S)>0 Then
  36.   ARQMode:=True;
  37.  If Pos('ZYX',S)>0 Then
  38.   ARQMode:=True;
  39.  If Pos('TER',S)>0 Then
  40.   ARQMode:=True;
  41.  If not ARQMode Then
  42.   Begin
  43.    WriteLn('ARQOnly: ==> Rejecting non-ARQ user');
  44.    SwapVectors;
  45.    Exec(GetEnv('COMSPEC'),'/C ECHO You must have modem with error control! > '+ParamStr(1));
  46.    SwapVectors;
  47.    Halt(27);
  48.   End;
  49.  S:='';
  50.  For I:=4 to 9 do
  51.   If ParamStr(I)<>'' Then S:=S+ParamStr(I);
  52.  WriteLn('ARQOnly: ==> Loading BBS software...');
  53.  SwapVectors;
  54.  Exec(GetEnv('COMSPEC'),'/C '+ParamStr(3)+' '+S);
  55.  SwapVectors;
  56.  WriteLn('ARQOnly: ==> Ok!');
  57. End.
  58.