May 29,1990 NMODEM 0.91a 1. Ah Ha! I think killed the Bad Header problem! May 29, 1990 NMODEM 0.91b 1. Now can transfer files that are multiple of 2048 and it works. 2. Tweaked the first block interface seems better but sometimes doesn't connect. 3. Bad Header problem seems to be gone! 4. Receive side user screen improved! 05-31-90 NMODEM 0.91c 1. Improved receive interface after synchronized. 06-JUN-90 Ver: 0.91d 1. Corrected File Check routine before transfer. 2. Added commandline switch for optional DirectVideo. 3. Improved CommandLine check. 7-Jun-90 Ver: 0.91e 1. Fix blocksize cosmetics. 2. Improved Carrier Detect in Receive sequence. 3. Improved Carrier Detect in Send Sequence. 8-JUN-90 Ver: 0.91f 1. Improved startup sequence. 09-JUN-90 Ver: 0.91g 1. Smaller now needs less than 40k to run! 2. Better startup sequence. 3. Faster IO and receive sequence. 4. Improved receive sequence. 5. Improved handling of Runtime Errors. NOTE: Due to timing constraints NMODEM will NOT work at 300 Baud! 10-JUN-90 Ver: 1.00 1. Now should correctly restore modem on exit!! [Thanks twc for getting me on track here!] 2. Finally I feel it can be called version 1.00. The major hurdle in item #1 above should make this a fully functional protocol! 11-JUN-90 Ver:1.01 1. Added more items to force modem back into mode before NMODEM started. 13-JUN-90 Ver: 1.02 1. Added code to improve rejection of false CAN byte received. 2. Changed send abort from keyboard sequence to allow receive side to better see the CAN bytes. 14-JUN-90 Ver: 1.03 From this version on I have changed the registration schedule for NMODEM since I would like to make a few bucks from this effort. Drv/Dir/DirectVideo Options will only function in the Registered versions of NMODEM. If you find NMODEM adequate without these options then only $5.00 will register the current and all future versions of the "cheapware" issue of NMODEM. If enabling of the options of value, $10.00 will get you a disk with a version of NMODEM allowing the options to function plus the latest version of NMODEM and NMTERM and whatever I decide to throw in at the time. SYSOPs I'm sorry if this is a problem but I cannot think of a reasonable Zer0 cost way to screen valid SYSOPS for free registered versions. As the product evolves I'm sure various options will be requested and added - if feasible and they do NOT decrease the efficiency of NMODEM. I will try to make a reasonable evaluation as to whether the registered version or "cheapware" version or both should have that option enabled. 15-JUN-90 Ver: 1.04 I changed NMODEM so that if Drive, Directory or DirectVideo switches are passed they will just be ignored. This if for those users that have a program such a TELIX which insists on passing the Drive/Directory with the filename. 15-JUN-90 NMODEM Version: 1.05 1. Removed valid port check problems with newer UARTS. 2. Changed usage and syncup to show registered status. 17-JUN-90 Ver: 1.06 1. Added support for 16550 UART FIFO buffer. The new commandline switch /F will turn it on. It is turned off at end of NMODEM run. 17-JUN-90 Ver: 1.07 NOTICE ------ Registered users can now download new versions for free from PYSMATIC or THE COMM CENTER see NMODEM.DOC for details! 1. Added MNP support via the /M switch on commandline. NO CRC checking will be performed. 2. Eliminated forced delays in handshaking loops of Send/Receive. 3. Removed forced delays in SynchUp routine. ------------------------------------------------------------------------ CAUTION: Version 1.08+ will NOT be compatable with earlier versions! I need to change the NAK handshaking to improve reliability! ------------------------------------------------------------------------ 17-JUN-90 Ver: 1.08 NOTICE ------ Versions prior to 1.08 are NOT compatable with 1.08! Sorry for any problems this may cause. In non-error conditions pre-1.08 versions will work! 1. Improved error interface is more BulletProof! 17-JUN-90 Ver:1.09 1. Timeout on syncup adjustment. 19-JUN-90 Ver: 1.10 1. First I must apologize for a gross blunder on my part in the method of calculating the CPS. It seems I dropped the decimal point figures and as such at 2400 Baud the only rates were 227 or 256 at the high range. Similiar problems existed at 1200 & 9600, etc. The CPS now should be very close to correct! The calculation uses rounding so it will reflect the closest even value. 2. Item 1 above means it time to do some fine tuning! As of this version the best I can get is 234 CPS at 2400 Baud. Newer versions will be accented on improving these numbers. 3. Corrected CPS calc if CRC error on receive side. 4. Optimized CRC calculation sequence for more speed. 20-JUN-90 Ver: 1.11 1. Optimized the main send and receive loops. 2. The wait for ACK from receive is costing about 2 or 3 CPS, so I'm going to try for a send ahead scheme. This will cause 1.12 to be a bit unless I find a non-related bug. 22-JUN-90 Ver: 1.12 1. Major surgery! Now uses 47K of memory but gained about 3 CPS over 1.11 version. * Implemented partial look ahead scheme for sending. * Further optimized the send methods and sequences. * added 4k in buffers but managed to reduce some code to keep the size down. 2. This version still ok with 1.10 and 1.11 but much better on send.