Hello, I am currently modernizing my "serial communications unit", which actually is a OOP wrapper around IOCtrl and termio.
It currently supports the following functions: ---------------------------------------------- function Open(portdev: string): boolean; // Open serial port procedure Close; // Close serial port function SetComm(baud: integer; parity: char; dbits, sbits: byte): \ boolean; // Configure data format procedure SetFlow(Flow: string); // Set Flow Control {RTS/XON/BOTH} function SetBaud(bd: longint): boolean; // Set Baudrate {50/75/../115200} function SetParity(c: char):boolean; // Set Parity {N,E,O} function SetDBits(n: byte):boolean; // Set Data-Bits {5/6/7/8} function SetSBits(n: byte):boolean; // Set Stop-Bits {1/2} procedure SetDTR(b: boolean); // Rise/Lower DTR procedure SetRTS(b: boolean); // Rise/Lower RTS procedure SetTXecho(b: boolean); // Echo sent chars locally procedure SetRXecho(b: boolean); // Echo received char to remote procedure DumpFlags; // Dump Flags to screen (for debugging) procedure send(OutString:string); // Put <string> into Transmit Queue function recv: string; // Read from Receive Queue procedure DrainOutput; // Wait until all chars have been sent procedure FlushInBuf; // Empty Input Buffer procedure FlushOutBuf; // Empty Output Buffer procedure FlushBothBuf; // Empty Both Buffers Most of this functionality will be familiar to one or the other of you, because I took them over from the OPUS FOSSIL driver X00.SYS. What I am actually missing are functions for monitoring data flow. Means, that I want to be able to verify that data are really sent or received. Currently I can only set handshaking, queue something in the sending buffer, and then hope that the data will really go out. But I cannot differentiate between buffer is filled and emptying slowly, or buffer is filled and nothing goes out. Is there a possibility to test how many bytes are in the sending/receibing buffer? This would allow me to read from time to time and find out this way if dataflow is active. Thanks for any help. Rainer _______________________________________________ fpc-pascal maillist - fpc-pascal@lists.freepascal.org http://lists.freepascal.org/mailman/listinfo/fpc-pascal