home *** CD-ROM | disk | FTP | other *** search
/ Turbo Toolbox / Turbo_Toolbox.iso / dtx9302 / signals / t / p1.pas < prev    next >
Encoding:
Pascal/Delphi Source File  |  1993-01-19  |  912 b   |  47 lines

  1. PROGRAM P1;
  2.  
  3.  
  4. USES
  5.         PortSig;
  6.  
  7.  
  8. CONST
  9.         PortADR = 763;         (* COM2-Base 2F8H + 3 *)
  10.  
  11. VAR
  12.         sig     : PortSIGNAL;
  13.         count1,
  14.         count2  : CARDINAL;
  15.  
  16. BEGIN
  17.   count1 := 0;
  18.   sig := SignalInit( PortADR, f_P1);
  19.  
  20.   REPEAT
  21.     INC( count1);
  22.  
  23.     Write('P1: Waiting for Signal... ');
  24.     WaitForSignalAndClear( sig);
  25.     Write('Signal received.');
  26.     count2 := 0;
  27.     REPEAT
  28.       INC( count2);
  29.       SendSignalTo( sig, f_P2);
  30.       WriteLn('  Signal sent to P2.');
  31.  
  32.       Write('P1: Waiting for Signal... ');
  33.       WaitForSignalAndClear( sig);
  34.       Write('Signal received.');
  35.     UNTIL count2 = 5;
  36.  
  37.     IF count1 < 2 THEN BEGIN
  38.       SendSignalTo( sig, f_P2);
  39.       WriteLn('  Signal sent to P2.');
  40.     END ELSE BEGIN
  41.       WriteLn('  Program ends, no more Signals sent !');
  42.     END;
  43.   UNTIL count1 = 2;
  44.  
  45.   SignalDone( sig);
  46. END (* P1 *).
  47.