W8SDZ@Simtel20.ARPA (05/14/84)
From: Keith Petersen <W8SDZ@Simtel20.ARPA> Date: 2 May 1984 1448-EST From: ELDER at WPAFB-INFO1 Subject: VAX Xmodem Fix I have fixed Xmodem on our VAX to allow transfer of binary files. Here is what the problem was: Xmodem would open files giving them a fixed length of 128 bytes per block. However, when binary files are FTPed across ARPANET to VAX/VMS, the resulting file has a fixed length of 512 bytes blocks (at least this is what happens with FTP on our VAX). Anyway, what was happening before was that with binary files being transfered to a micro with Xmodem/ Modem7, only the first 128 bytes of each block were sent. So I would only get about 1/3 of a binary file. I've since changed Xmodem to open files as 512 byte blocks, put that block into a 512 byte array, and then transmit 128 bytes at a time from that array to Modem7. Works fine now. I also made another change to Xmodem. I have it count the number of 128 byte records that will be transfered during a send and display that information to the user. I didn't code this the best way possible since I don't know all that much about VMS yet. What I do is open the file and read through it counting the records. I would think that some system call exists in VMS that I could call in a FORTRAN program to tell me the block size of a file. Some folks may not want that routine in Xmodem because if you are sending a large file it may take a few minutes for the blocks to be counted. ------ The new XMODEM is now available on SIMTEL20. Here's a complete list of the current files in the directory: Filename Type Bytes Sectors CRC Directory MICRO:<CPM.VAXVMS> CTOV.FOR.1 ASCII 2821 23 = 17H 6408H QIO.DCK.1 ASCII 115 1 = 1H A2B1H VTOC.FOR.1 ASCII 2730 22 = 16H 747AH XMODEM.COM.1 ASCII 563 5 = 5H 6AAFH XMODEM.DOC.1 ASCII 649 6 = 6H D3A5H XMODEM.HLP.1 ASCII 3656 29 = 1DH 10A9H XMODEM.MSG.1 ASCII 2796 22 = 16H FDAFH XMODEM.NOTE.1 ASCII 7157 56 = 38H 346AH XMODEM53.FOR.1 ASCII 32791 257 = 101H 409DH --Keith