Path: utzoo!attcan!uunet!ncrlnk!ncrcae!ece-csc!ncsuvx!gatech!uflorida!mailrus!cornell!rochester!srs!dan From: dan@srs.UUCP (Dan Kegel) Newsgroups: comp.protocols.misc Subject: xmodem protocol spec Message-ID: <980@srs.UUCP> Date: 29 Sep 88 14:09:53 GMT Reply-To: srs!dan@cs.rochester.edu (Dan Kegel) Organization: S.R.Systems Lines: 88 It's been a while since I've seen the definition of the various xmodem protocols posted. Here is the first page of a lengthy spec posted to net.sources in 1986; if enough people (say, 10) ask me to post the whole thing, I will. On the other hand, if anybody has a more up to date version, please let me know. Subject: Windowing XMODEM (WXMODEM) protocol proposal --cut here--WXMODEM.DOC--cut here-- .OP Xmodem, CRC Xmodem, Wxmodem File Transfer Protocols Please circulate this document anyway that you see fit without alteration except on the page at the end titled: "Notes and Comments". It is requested that anyone using these protocols within a commer- cial product not charge for them as an option or surcharge, but include XMODEM and its derivations as part of the basic product. Peter Boswell June 20, 1986 People/Link email: TOPPER .PA Xmodem, CRC Xmodem, WXmodem June 20, 1986 Page 2 ---------------------------------------------------------------------- TABLE OF CONTENTS 1. PREFACE . . . . . . . . . . . . . . . . . . . . . . . . . . . 3 2. INTRODUCTION . . . . . . . . . . . . . . . . . . . . . . . . . 5 3. TERMINOLOGY . . . . . . . . . . . . . . . . . . . . . . . . . 6 4. XMODEM . . . . . . . . . . . . . . . . . . . . . . . . . . . . 7 4.1. Xmodem Hardware Level Protocol . . . . . . . . . . . . . 7 4.2. Xmodem Initiation . . . . . . . . . . . . . . . . . . . . 7 4.3. Xmodem Data Transmission . . . . . . . . . . . . . . . . 8 4.4. Xmodem Cancellation . . . . . . . . . . . . . . . . . . . 9 4.5. Xmodem Error Recovery and Timing . . . . . . . . . . . . 9 5. CRC XMODEM . . . . . . . . . . . . . . . . . . . . . . . . . . 13 5.1. CRC Calculation Rules . . . . . . . . . . . . . . . . . . 13 5.2. CRC Xmodem Initiation . . . . . . . . . . . . . . . . . . 14 6. WINDOWED XMODEM (WXMODEM) . . . . . . . . . . . . . . . . . . 15 6.2. Transparency and Flow Control Rules (Byte Level Rules) . 16 6.3. Initial Handshake Rules . . . . . . . . . . . . . . . . . 18 6.4. Window Packet Transmission Rules . . . . . . . . . . . . 18 6.5. Notes for X.25 Hosts . . . . . . . . . . . . . . . . . . 22 7. APPENDIX A - CRC CALCULATION RULES . . . . . . . . . . . . . . 23 7.1. IBM PC - 8088/8086 Data Structure . . . . . . . . . . . . 23 7.2. BASIC Implementation of Bit Shift Method . . . . . . . . 23 7.3. BASIC Implementation of the Table Method . . . . . . . . 26 8. NOTES AND COMMENTS . . . . . . . . . . . . . . . . . . . . . . 28 .PA Xmodem, CRC Xmodem, WXmodem June 20, 1986 Page 3 ---------------------------------------------------------------------- 1. PREFACE In the years that have past since Xmodem was first developed as a file transfer protocol, many thousands of people have been involved in finding reasonable ways to move data via asynchronous telephone commun- ications. I appreciate the opportunity that I have had to meet and learn from many of these people. There is nothing in this document that did not actually come from someone else. Indeed, whether it is WXMODEM, X.PC, Synchronous dial-up X.25, SNA, ZMODEM, Blast, Kermit or any other protocol that becomes the dominant dial-up file transfer protocol for personal and home computers is just not important. What is important is that the public domain have a high speed file transfer protocol that is reasonably popular and commonly available for many types of personal computers, for bulletin boards and for services such as People/Link, Delphi, CompuServe, GEnie and The Source. ....... -- Dan Kegel "I am firmly anti-Semitic..."- George Bush srs!dan@cs.rochester.edu rochester!srs!dan dan%srs.uucp@harvard.harvard.edu