A minor historic moment... Kermit protocol just accomplished its first automatic recovery. The packet-driver ZIP file, DRIVERS.ZIP, was sent from one C-Kermit to another in binary mode, and interrupted in the normal way, by typing X, about half way through. The receiver had been told to SET FILE INCOMPLETE KEEP, so it kept what it had received so far. The transfer was restarted by telling the receiver to RECEIVE, and the sender to RESEND DRIVERS.ZIP. Here's the top of the packet log: s-00-00-^A0 S~* @-#Y3~^$5$C <-- RESEND capability bit set (= "^") r-00-00-^A0 Y~* @-#Y3~^$5$I <-- Here too. s-01-00-^A0!FDRIVERS.ZIP"G< <-- Filename. r-01-00-^A0!Ydrivers.zip#S^ s-02-00-^AP"A."U1""B8#119940406 20:04:54!#3311&338294+!R,2[ r-02-00-^A-"Y1&176847"FJ ^^^ Dispostion=Resend ^^^^^^^^ Receiver tells the length of the partial file. Sender picks up at the reported point, receiver appends to partial file, and the result is a complete, intact DRIVERS.ZIP file (I even unZIPped it). Not ready for prime time yet -- I still have to do a lot of cosmetic surgery, plus a great deal of internal reshuffling. The major difficulty is with SET FILE COLLISION BACKUP and RENAME -- I have to prevent things (like renaming files) from happening until the very last minute, otherwise the file won't be there under its expected name when the second piece of it arrives. Weekend work. - Frank P.S. I said this would take about a day, and it would have taken me about a day, but I had a lot of interruptions. Total coding time was about 4 hours, plus about 2 hours of debugging (so far), so I'm still not far wrong.