(* Release 3.10 *) (*-------------------------------------------------------------------------* * * * MONITOR.MOD - COMMS Toolkit RS232 line monitors * * * * COPYRIGHT (C) 1990..1992 Clarion Software Corporation. * * All Rights Reserved * * * *--------------------------------------------------------------------------*) IMPLEMENTATION MODULE Monitor; IMPORT FIO,RS232,FTSupport; CONST TestFileName = 'E:\TEST.232'; VAR TestFile : FIO.File; RxChain : RS232.RxHookProc; TxChain : RS232.TxHookProc; PROCEDURE RxProc(VAR ch:CHAR); BEGIN FIO.WrChar(TestFile,ch); FIO.WrChar(TestFile,''); IF RxChain # NULLPROC THEN RxChain(ch); END; (*IF*) END RxProc; (*# save,call(o_a_copy=>off),check(index=>off)*) PROCEDURE TxProc(VAR Stg:ARRAY OF CHAR;VAR Len:CARDINAL); VAR i : CARDINAL; BEGIN FOR i := 0 TO Len - 1 DO FIO.WrChar(TestFile,Stg[i]); FIO.WrChar(TestFile,''); END; (*FOR*) IF TxChain # NULLPROC THEN TxChain(Stg,Len); END; (*IF*) END TxProc; (*# restore *) BEGIN (*Monitor*) TestFile := FIO.Create(TestFileName); RS232.AddRxHook(RxProc,RxChain); RS232.AddTxHook(TxProc,TxChain); FTSupport.HookOnFT := TRUE; END Monitor.