Changes from version 1 to version 2 ----------------------------------- o All Lser* routines now uses a separate IO-request for reading and writing (should've been done in V1) This means that you should be able to send (with mulsend) and recevive data at the same time. o Added Lxpr, support for all V2.0 XPR-transfers. Many xpr*-commands and callback implemented, see docs. o Added Linkey$ for easy conversion to ANSI-codes for cursormovement and support for controlcharacters (when CTRL is pressed) Changes from version 2 to version 2.1 ------------------------------------- Thank you all who has reported bugs and given me suggestions. This is most likely the final release. The extension seems to be quite stable now (as long as you use it as supposed to.) o Lserial (and Lansi) has now been tested in 14k4 locked at 57k6 bps without any problems at all. In fact, somehow, xpr transfers showed somewhat higher cps rates against a 9600 V.42" modem than NComm. (You'll need an accele- rator for high speed transfers). o Fixed a very serious bug in Linkey$. In some cases Linkey$ could try to allocate more space for 1-3 characters than the size of the whole buffer. If you where lucky (like I was most of the time during the test) Linkey$ would only allocate a few bytes to much (which in the long run would cause garabge-collection (DUMMY=Free) to take much longer time) or even the number of bytes it really needed. o Some of you probably was wondering what the flashing led meant? :-) This was a debug signal which by mistake was left in the code. Now removed. o When doing XPR-transfers "Last Error" is no longer erased. Bug in the xpr-includes (I had to "handmake" them) o If "Error Check" is supported by the XPR it is now shown correctly. In version 2 xpru_packettype would be displayed instead (if the XPR supported it, otherwise blank) o Added support for carrier-check in some of the XPR-callbacks. If carrier is lost, the XPR will abort almost immediately, or within the first time- out period. Note that all XPRs do not support this (zmodem does). Also note that some protocols (like Ymodem) has a very long first timeout. o LXPR* commands that require some strings to be NULL-terminated now generates an error if the stings aren't NULL-terminated. o LXPR "SETUP" now displays an error message if you call with an empty string. o Lser Send now exits much faster when you try to send empty strings (it causes no errors to try to send an empty string). (Lser Mulsend always have returned quickly if there where no data to send.) o Added short (but full) on-line help. See Help.DOC for more information. o Added XPRCUSTOMIZE (you can thank Eric Sailer for that suggestion!) which let you manipulate and control the resultstrings sent by the XPR. It is now also possible to shut some messages off completely, print more than one per line etc. etc. o Amazing! I am the only one who has discovered that Lser Baud wasn't documented? I belive I used this command in the example that was in the Lserial archive, so most of you probably have found it already.. o Fixed something in Lser Baud which might have caused trouble, even though it is unlikely (now changes baudrate for both read/write structures) o Lxpr now generates an error if you try to call a non-existing function. o Fixed a bug in Lser Open which caused non-shared access to always be shared and sometimes prevented 7-wire protocol from being used. o Added Lser Params. Now you can change any paramters AFTER Lser Open. Lser Params also support ExtSerFlags if anybody have any use for these? o Added Lser Status which allows you to read the most important flags of the device (like DSR/DTR etc.) o Fixed a bug in xpr_sflush. sflush actually didn't flush properly (or clear) and this could cause garbage-headers when doing re-sendings with different xprs (I think some xprs do smart flushes via sread() themselves). o Added error-codes in xpr_fseek. Used to always return ok (probably made no difference since the xpr really shouldn't seek() outside a file). o Lserial now supports up to 50 filenames when doing batch transfers. Used to be limited to 20. o Size reduced by .5Kb (big deal :-) o Fixed bug which made the xpr unable to recognize the baudrates 76k8 and 112k5 bps. o Fixed an ENORMOUS bug in setserial/getserial (xpr call back) which would cause faulty baudrates to be reported or even set (when I had locked at 57k6 my modem suddenly went down to 110/300 bps!! :). The problems only occured during timeouts and errors and cuased the whole transfer to be aborted. This made debugging VERY hard since it is not so easy to emulate an error.. Thanks to Percy Broadnax who called from USA (several times) just to report this! (Those of you with <= 2400 bps modems probably haven't had any problems) o New feature: If you have problems with timeouts when receiving files you may press ESCape *ONCE* in order to avoid the long period before the xpr has timed out. Lserial will then immediately request a re-transmission. (You'll notice timeout problems when your RD-light suddenly stops to flash during downloads) o