home
***
CD-ROM
|
disk
|
FTP
|
other
***
search
/
Oakland CPM Archive
/
oakcpm.iso
/
cpm
/
22rsx
/
rxmd.ark.2
/
RXMDHDR.MAC
< prev
Wrap
Text File
|
1985-12-12
|
10KB
|
185 lines
; This portion of RXMD source generates no object code, and may be
; replaced by an empty file for assembly. It contains all credits,
; history, etc.
;
; --------------------------------------
; This is a development from KMD08, by Irv. Hoff. This version uses
; the facilities of BYERSX, rather than those of BYE502 or BYE339,
; and is intended to allow use as a replacement for MDM, MODEM, IMP,
; MEX, etc. This development was done by C.B. Falconer.
;
; Carrier checking is now under the control of BYERSX status. Delays,
; clockrate, baudrate are supplied by BYERSX calls. This facilitates
; use in hard-wired situations and avoids all installation. For BBS
; use BYERSX again supplies all values. Security provisions are in
; force whenever RXMD is operated remotely, as indicated by the
; BYERSX "remon" status bit, and can be over-ridden by the "whlbit".
;
; The batch mode protocol, as used in KMD08, supplies an initial
; header record #0, containing the ASCIIZ file name (in lower case)
; as the initial bytes, and bytes 126 and 127 contain the file
; length, in 128 byte records, as a low byte first integer. (This
; assumes 0 based indexing). All intermediate bytes are zeroed. I
; (C.B. Falconer) intend to define further fixed fields, from byte
; 125 down, for such things as exact byte count, time/date stamps,
; etc. to enable use as a universal protocol. BYERSX already has
; provisions for time and date interfaces.
;
; The name is intended to indicate that it operates under the BYERSX
; system, and to avoid confusion with its ancestors, XMODEM and KMD.
;
; Most of the following verbiage is taken directly from KMD08.
; --------------------------------------
;
; Introduction:
; ------------
; This program is designed to run in conjunction with BYERSX and gets
; all port, modem and console routines directly from the main BYERSX
; program. It also supports 1k transmissions to give more efficient
; file transfers at the faster baud rates. If too many errors occur
; due to poor conditions, the advantages of 1k protocol can quickly
; vanish. The program then automatically switches back to 128 byte
; groups. This ratio is set to optimum for 1200 bps with one value
; and another for 2400 bps. Other features include progress reporting
; messages to inform the SYSOP of the protocol being used, type of
; errors encountered and the ability to abort uploads or downloads
; with two consecutive CTL-X. The disk buffer is also filled when the
; send file is opened so it is immediately ready when the receiving
; system sends its protocol character. This speeds up downloads and
; increases the reliability. Batch mode has been added, giving this
; program tremendous versatility. For downloads, the total amount of
; time for all files is accumulated and displayed prior to starting
; - if this exceeds the allowable time set by the SYSOP, the download
; is aborted. A time clock is not needed to limit these downloads,
; as the time for each file is accumulated and compared against the
; original time allowed. The batch mode displays the length of each
; file being sent or received. This feature previously has been
; available only to users of the PRO-YAM MS-DOS modem program.
;
; Discussions were conducted with Ward Christensen relative to the
; automatic 1k protocol, which he likes and has endorsed. Manual
; protocol of course is available to remain compatible with YAM
; users. Ward suggested several other things he has been using on
; his CBBS system in Chicago since the first version of his protocol
; was developed. These have been incorporated into KMD and RXMD.
;
; KMD has been developed concurrently by Irv Hoff and Wayne Masters
; and is released free of charge to the public domain. Similarly
; RXMD is released by C.B. Falconer, provided that no charges are
; made for distribution, use, etc.
;
; ===================================================================
; Current changes. Move others down.
;
; 1.0.0 85/12/12 C.B. Falconer
; Initial release.
;
; ===================================================================
;
; Acknowledgements:
; ----------------
; KMD is based on previous programs called XMODEM. The original
; version of XMODEM was adapted for RCPM use by Keith Petersen from
; MODEM 2.0 by Ward Christensen. Numerous other programmers have
; contributed through the years prior to the work done in KMD. A few
; of those include Paul Hansknecht who wrote the CRC routines, Sigi
; Kluger who opened the way for the original overlay idea (which KMD
; and RXMD no longer need), Paul Traina and Irv Hoff and many other
; contributors whose names we have not been able to verify. Thanks
; to all who have helped to make these programs what they are today.
;
;
; Using 1k protocol:
; -----------------
; The 1k protocol used in RXMD is automatically triggered and is
; transparent to modem programs designed to utilize this feature.
; It also supports MEX114, YAM and PRO-YAM users who need to manually
; type 'SK' to the sending host unit for 1k transmissions. (YAM users
; need to be sure to use 'RC' at their end to be in CRC mode. Earlier
; PRO-YAM users may see an error at the beginning of an upload to a
; host unit when using 1k mode due to their noise burst detector
; - this has since been corrected with current PRO-YAM versions.)
; The program also supports the IMP modem program in both the manual
; mode like those previously mentioned as well as the KMD automatic
; mode where no operator intervention is needed.
;
; RXMD and KMD send a C and a K to alert modem programs capable of
; this protocol that it can automatically accept their 1k blocks.
; This has no effect on other modem programs as they stop looking
; when they see the 'C'. The KMD automatic feature is thus trans-
; parent to all users. This can be easily modified to send only one
; character after the 1k protocol is established as the normal
; operating preference. If no transfer has commenced after about 40
; seconds "NAK" is sent to inform the host that checksum can be
; accepted. All this is compatible with the original Christensen
; protocol to which CRC was added in 1981. One of the minor changes
; Ward has made since that time was to send the protocol character
; every two seconds instead of every 10 seconds. This initiates the
; start of the program transfer whenever the remote system is ready
; to send. After considerable testing with various modem programs,
; RXMD and KMD use a compromise and send the protocol character each
; 4 seconds until the upload is commenced.
;
; Selecting options:
; -----------------
; RXMD has NO options, other than the buffer size to be used. All
; configuration information is ascertained from BYERSX, including
; clock speeds, baud rates, stop bits, etc. The program dynamically
; re-configures itself when operated from a remote terminal, to
; impose security restrictions. These can be over-ridden by suitable
; password protected commands.
;
; There are no external overlays or inserts required for this program
; since all support code is located in BYERSX. The function keys in
; BYERSX will also work while this program is running.
;
; NOTE: This file assumes that anybody allowed to enter the CP/M
; data area is limited only in what he can upload or download
; by the restrictions of drive and user number and the time
; he is allowed to remain on the system. Files may also be
; "tagged" and RXMD will protect those from being downloaded.
; The file types COM, PCD, SYS, and PRL are automatically
; protected against download, as are files tagged by the F1
; or F2 bits, and those tagges as "SYS" files. Uploads of
; such file types are automatically renamed.
;
;
; -------------------------------------------------------------------
;
; This program allows a remote or local user to transfer files (to or
; from) RCPM systems or other systems. Files may be loaded to a
; specific user area, keeping all new programs in that one area. This
; aids the SYSOP as well as the remote user. If uploading a .COM
; file, it will be changed automatically to an .OBJ file in remote
; mode. This security feature prevents intentional uploading of
; programs that could be used to alter (or erase, etc.) those already
; present. "RP" may be used to upload files to a private area for
; SYSOP use only.
;
; At present the description feature of KMD is not included, but is
; planned using the chain facilities of BYERSX.
;
; If the WHEEL bit is set (for the SYSOP, etc.) files may be uploaded
; to any specified drv/user area, their filenames are unrestricted.
;
; Programs may be uploaded to a non-public area for the private use
; of the SYSOP. (Use "RP" or "RPC" for the private area.) It also
; allows private programs to be downloaded from a special area which
; gives the SYSOP the ability to make any person a temporary priv-
; ileged user. (A private note tells the person the name of the file.
; Others would be unaware such a file existed, ensuring excellent
; security.)
;
; Individual files from a library group may be downloaded. The
; library extent (.LBR) need not be included, in which case it is
; automatically added. Using library groups permits greater utiliza-
; tion of the available disk space, plus puts all associated files
; into one file. An example is shown in the menu.
;
; Many people have contributed greatly to the present program.
;
; - Notes by Irv Hoff and Wayne Masters, modified by C.B. Falconer
;
; * * * * * Revision history, LIFO order * * * * *
;
╔c