On Thu, 21 Jan 2016 10:21:12 +0100, Michael Schnell <[email protected]> wrote:
>On 01/21/2016 10:09 AM, Bo Berglund wrote: >> I have a device comm simulation program created in Delphi 7 (or maybe >> 2007), which uses TurboPower Async Pro components for the serial and >> TCPIP communications. It is used for production testing and also for >> development purposes. On Windows of course.... >> >> Now I would like to port this to the Raspberry Pi environment so the >> simulator could be placed in a small package and replicated easily. > >You would be my (and many others') hero if you port Async Pro to Linux and >provide the result publicly. This has been requests already multiple times. > >IMHO this is one of the greatest shortcomings with Lazarus/fpc (even though of >course there are alternatives). > >Let me know if I can be helpful on that behalf. > I suspected as much... AsyncPro in itself is MASSIVE with loads of component classes and functions geared towards all kinds of modem communication. And it is all very convoluted. A few years back before I retired I wanted to see what the dependencies looked like starting at the TApdComPort, so I could minimize the number of APro units I needed to put into version control. But after some time I gave up. At that time I had traversed between 10 and 20 units, which just added more dependencies all the time. So I put the complete AsyncPro into our version control and stopped thinking about it. Now it jumps back when I try to port to Linux on ARM... Unfortunately I am not capable of doing such a full port. I know I have asked here before about serial/tcpip communications using event driven sockets and serial port components, but the solutions seem to be far between.... In fact for the simulator I want to port I could probably rip out the APro component and replace it with a TCPIP socket one instead since the RS232 is not going to be used anymore. But agin the code is geared towards event driven comm and most of what I see in FPC for Linux TCPIP is blocking and that would mean more surgery in the existing code. I started testing LNet a few months ago but did not get so far then and had to drop it for other tasks. (See also thread about packages in fpc where LNet is not automatically installed, yet it is an fpc stock package.) An LNet implementation which is tweaked to use events for the receive would be a possible starting point.. -- Bo Berglund Developer in Sweden -- _______________________________________________ Lazarus mailing list [email protected] http://lists.lazarus.freepascal.org/mailman/listinfo/lazarus
