(Comp.sys.hp48) Item: 1529 by alou@elde1.epfl.ch Authors: E. Westphal & M. Alou Subj: X&Y Modem v2.0 transceiver Date: 04 Aug 1992 [Note: And yet another terrific battery saver! Check this out! -jkh-] ---------------------------------------------------------------------- * Just a little full X & YModem... FOR Hp48 * * Ver 2.0 * ---------------------------------------------------------------------- WARNING: IF YOU WANT TO USE THIS PROGRAM, IT WILL BE AT YOUR OWN RISK. WE CANNOT BE RESPONSIBLE FOR ANY DAMAGES OR LOSSES OF ANY KIND. ---------------------------------------------------------------------- PRE-INTRODUCTION Please excuse our poor English. It is not our native language... INTRODUCTION Because we were programming in ML we had many "memory lost". Then, we decided to make a program to load our backup faster than Kermit. The result is this version of XYModem loader: About 8 time faster (than Kermit)!!! That means 2' to load about 100KB WHAT IS XMODEM ? XModem is a simple file transfer protocol. This is why it is faster than Kermit. For example the filename is not sent. WHAT IS YMODEM ? YModem is an enhanced version of XModem: it can receive file's information (filename, file size, ...) and can send more than one file at one time (Batch mode). WHAT IS CRC AND CHK ? CRC = Cyclic redundancy control. CHK = checksum. Well, both are a way to control the integrity of data. CRC is safer and slower than CHK. In batch transmission, the receiver automatically requests CRC. WHAT TO USE WHEN ? use batch mode (YModem CRC) To get more than one file . use YModem To get one file only! THEN, WHY XMODEM ? There is two reasons for using it: -If you don't need the file's information. -If you choose the CHK control. For instance, you can use XModem in order to download your backup. HOW DO I INSTALL THAT ? 1/ Download the ASCed version to your Hp. 2/ UnASC the program with ASC->. 3/ Type "0 STO" press OFF then ON The library name is "X-Y Modem v2.0". Lib number is 1275. That's all (folks)! HOW DO I USE IT ? First, you must call the library. After that, you have five soft keys: "SETUPXYM", "SENDM", "RECVM", "ARCHM" and "ABOUTXYM". SETUPXYM: It is a soft menu where you can find: "BAT", "CRC", "REPL" and "EXIT": BAT = ymodem (if checked) or xmodem (if not). CRC = crc (if checked) or checksum (if not). REPL = replace file (if checked) or not. EXIT = LastMenu. SENDM: Start an upload transfert. It need on the stack: a/ 1:GlobalName -> 1:{unsend files} b/ 1:LocalName -> 1:{unsend files} c/ 1:{name(s)} -> 1:{unsend files} d/ 1:Any object -> a, b & c are automaticaly sended in ymodem (batch crc). d is in xmodem. RECVM: Start a Download transfert. It need nothing on the stack. ARCHM: Send in ymodem directly a Backup HOMEDIR. It need on the stack the name of the new file: a/ 1:GlobalName -> b/ 1:"String" -> ABOUTXYM: We assume that you know how to use it... IMPORTANT REMARK If you send a file in xmodem mode, unlike ymodem, the size of your original file is not send with the file itself. Then you cannot receive it back with the standard kermit RECV. However you can receive it indifferently with x or ymodem. The easiest way, at this point, is to give you some examples: 1/ You want to get one or more files with YModem-batch: Set "BAT" on your Hp48. Initiate the procedure on the other computer (YModem, short packet) Then press "RECVM" You will, normally, find these files in the directory where you are on the Hp. If one or more of these files already exist, the variables will be overwritten, or not, depending of flag -36 (Owner's Manual p.628, 702). You can adjust this flag with the softkey "REPL". If the filename is invalid, unlike Kermit, the program just saves the file on "XYM". 2/ You want to get one file with CHK control: Clear "BAT" and "CRC". Initiate the procedure on the other computer (XModem, short packet, checksum) Then press "RECVM" You will, normally, find this file on the stack. 3/ You want to get one file with CRC control: Clear "BAT" and set "CRC". Initiate the procedure on the other computer (XModem, short packet, CRC) Then press "RECVM" You will, normally, find this file on the stack. IF I DON'T LIKE YOUR PROGRAM: HOW DO I REMOVE IT ? Type the following instructions: HOME 0:1275 DUP DETACH PURGE I GET AN ERROR MESSAGE WHAT DOES IT MEAN ? All errors are "fatal transmission error" thus the communication will always abort. If you get "SOH Expected" perhaps you forget to switch on the option "Short packet" on your computer. SPECIFICATION OF THIS LIBRARY: User flags 57, 58 and system flag -36 are used: -36 is the system flag for file replace (Owner's Manual p.628, 702). 57 is set for CRC on. 58 is set if batch is selected. Library number is 1275. Library size: 3372 (You said that's impossible ? Perhaps you have to try it) Library checksum: #64CAh DOES YOUR PROGRAM HAVE ANY LIMITATIONS ? Well no, just that... -This program can only send or receive the binary representation of an object. In reception, if the file is not interpreted as a valid object, the file will be saved as a string. -Because the limit of the Hp48 receiving buffer size is 255 bytes, the long packet option (1024 bytes) cannot be used. -As Murphy said: "There is always one more bug." WHERE CAN I FIND COMMUNICATION PROGRAM ftp 128.214.6.100 login anonymous password : e-mail adresse ;for pc user : cd pub\msdos\communications\procomm bin get pcplus.zip ;for mac user : cd pub\mac\comm bin get zterm09.cpt use CompactPro to decompact it. Let us thanks: Hewlett-Packard for their Tools. Alonzo Gariepy for his Saturn Processor Notes Jan Brittenson for his Star and his MLDL library DM&RH for their Library constructor Chuck Forsberg for his notes on the protocols XModem and YModem And to all people who gave us a lot information about Hp28, 48 on mail, news and FTP-server. Any comments, bugs reports, ... are welcome on this mail address "ALOU@ELDE.EPFL.CH" or "WESTPHAL@ELDE.EPFL.CH" ---------------------------------------------------------------------- WARNING: IF YOU WANT TO USE THIS PROGRAM, IT WILL BE AT YOUR OWN RISK. WE CANNOT BE RESPONSIBLE FOR ANY DAMAGES OR LOSSES OF ANY KIND.