home
***
CD-ROM
|
disk
|
FTP
|
other
***
search
/
ftp.barnyard.co.uk
/
2015.02.ftp.barnyard.co.uk.tar
/
ftp.barnyard.co.uk
/
cpm
/
walnut-creek-CDROM
/
CPM
/
MODEMS
/
XMODEM
/
XMDM125.ARK
/
XMDM125.UPD
< prev
next >
Wrap
Text File
|
1986-07-15
|
16KB
|
316 lines
XMODEM - REMOTE CP/M FILE TRANSFER PROGRAM
This program allows a remote user to transfer files (to or from) RCPM
systems running under BYE (remote console program).
----------------------------------------------------------------------
Updates and revisions (rev order)
----------------------------------------------------------------------
v12.5 Fixed conditional assembly bug which caused date to
07/13/86 appear in log twice when MBBS and BYEBDOS were both set
to YES.
Fixed conditional assembly bug which did not allow MBFMSG
to be set to YES while MBDESC was set to NO.
Removed patch to log download before sending EOF because
EOF would not be sent, leaving caller's program in file
transfer mode, if LOGCALL routine exited with an error.
This problem was noticed by Keith Petersen.
Modified to abort any download which would result in a
user exceeding his time limit when BYEBDOS is YES.
Fixed bug which would cause caller to be logged off
without updating log file if transmission errors caused
his download to put him over time limit when BYEBDOS was
YES and CLOCK and TIMEON in BYE were YES (call to TCHECK
in BYE's extended BDOS call would hang up on caller).
Revised comments for some equates to make them easier to
understand.
- Murray Simsolo
v12.4 Fixed so that upload area is NOT asked if "XMODEM"
03/13/86 only typed (still asked if "XMODEM A" is used.)
Also fixed so upload area is NOT asked if the "RM"
function is being used to upload a message file.
New features: New uploads are made $SYS files if
the SYSNEW option is enabled. This makes it easy
to keep files in the right place, all you have to
do is reset the file attributes. A NEWPRV option
for the MBDESC option makes all new uploads private
messages to SYSOP (new MWHATS30 has "O" (for OK)
option to make private upload descriptions public
for sysop use only). I also fixed bugs that were
putting characters with high bits in the log file
and possibly in upload descriptions as well.
Also a bug in the CONTIN: area spotted by Michael
Conley was also fixed.
-- Kim Levitt
MBBS HQ PDSE (213) 653-6398
----------------------------------------------------------------------
v12.3 Well, I blew the SPCDU stuff!. I guess I didn't un-
03/05/86 derstand how the LOGDU really worked. The only prob-
lem it should have caused is that the Sysop would
have gotten the wrong description of which D/U he
was going to upload to. These are now fixed. The Sysop
can put the file in the current D/U or specify the
D/U he wants a file to go to. Also fixed four BDOS
equates noticed by Bill Duerr: The BDNULL and BDTOUT,
and the BDHRDL and BDWRTL equates did not agree with
the BYE339 jump table. BDWRTL is the one that may
cause problems. XMODEM said BDWRTL was 76. BYE said
it was 75. These are also fixed now.
-- Russ Pencin
Dallas Connection (214) 238-1016
300/1200/2400 baud, 24 hrs.
========================================================================
v12.2 Added error check for library read functions to abort
02/22/86 on read error. Revamped the upload file description
code to show the sysop ( if ZCPR2 ) the actual D/U
that he will be uploading the file to. Revamped the
ASKAREA code to skip asking the sysop what area.
Removed the BYEBDOS conditional for LOGCAL which kept
BYEBDOS systems from getting the VRECNO and correct
file time (near EOT1:). Consolidated BYECHK to work
with BYEBDOS or others to allow the ACCESS checking
to be a stand-alone equate (no longer tied to MBBS).
Added ASKSYS equate to set whether sysop wants to
be asked for file descriptions or not. Added ASKIND
equate to allow category descriptions for uploaded
files. Moved WRTLOC and CONFUN to a miscellaneous
flag area so they won't be confused with the MBBS
equates. Added BYEBDOS conditionals to all B3RTC
code to insure no conflict of equates.
-- Russ Pencin
Dallas Connection (214) 238-1016
300/1200/2400 baud, 24 hrs.
========================================================================
v12.1 Fixed bugs in RTC handling for MBYE systems, other bugs
01/14/86 remaining since v11.7. Added modified XMDM10XX patch
so that systems supporting multiple operating systems
and/or computers can separate uploads into different
upload areas. (XMDM10XX patch by Russ Pencin of the
Dallas Connection RCP/M.) XMDM119.FIX fixes by Brian
Rau (COG-RCP/M sysop) were also included. (Some of
these were included in XMDM120 by Irv Hoff in parallel.)
Also removed unnecessary blank lines and ENDIF comments,
(no need to comment ENDIFs on short sections of con-
ditional code, although is helpful on longer sections),
and reduced amount of code by creating subroutines.
Equates set up for a ZCPR/MBBS system. Added NDESC option
so "XMODEM RN FILE.TYP" will allow a user to bypass
the DECRIB or MBDESC optional description input (for
uploads that are pre-arranged or need no description.)
Also added SYSABT option (for CONFUN users) to allow
the sysop to abort up or downloads with ^X on system
console. (Suggested by Robert Crump.)
-- Kim Levitt
MBBS HQ PDSE (213) 653-6398
300/1200/2400 baud, 24 hrs.
----------------------------------------------------------------------
01/11/86 There have been several XMDM119 'bug' and 'fix' notes cir-
v12.0 culating. Incorporated the change to the "TIME:" routine
suggested by Russ Pencin - he added a PUSH-POP PSW to keep
the value in the 'A' register that contains the logon hour
from being destroyed, making the program think the user had
exceeded his maximum time limit. Also several changes sug-
gested by Brian Rau, although one was not added as it would
have had undesired results if using equates in the EXIT area
different from his selection.
Keith Petersen had a problem recently that caused my getting
involved in checking out the program. He had a disk problem
which allowed XMODEM to go ahead and read data from a bad
record into the 'send' buffer, which was then sent as valid
data. He mentioned there was possibly an error in the read
routine, not only in XMODEM but perhaps in KMD as well. So
I started checking that area very carefully and found that
both programs handle that correctly - if the BDOS call #20
(read next record) returns with 00H, the read was ok. If it
returns with a 01H, it was an end of file. Anything else is
an error and can be handled as such. Studying the "RDBLOCK"
routine (in both XMODEM and KMD) shows this is being handled
correctly, with a "File read error" statement printed if the
BDOS call cannot get a valid read.
Checking with a number of SYSOPs reveals similar action on a
wide variety of equipment - if a bad sector prevents a good
read, normally the computer stops at that point, displaying:
Disk Err on B: Bad Sector
I suspect you have all seen that at one time or another. It
usually takes a CR or CTL-C to again put the computer into
operation, at which time it "appears" to be reading normally
but in reality almost certainly has different information
from what it should.
It would appear there is nothing the user can do about this,
except to run FBAD on the disk system periodically and hope
no bum sectors show up - however the bad sector usually does
stop the machine at that time, notifying the operator he has
a problem and preventing further downloads at that moment.
Anybody ambitious to do an update should consider cleaning
up the mess the CP/M+ section(s) are in. There are areas of
unused code (no labels calling them) ahead of LOOP: GETBTIM:
and GETBDAT: routines - perhaps other places as well.
Also restored the conditional calls in the comment field af-
ter the ENDIF statements. Many SYSOPs felt those were quite
valuable in following the progress of various routines, par-
ticularly if they wanted to customize the program for their
own use.
- Irv Hoff
----------------------------------------------------------------------
01/01/86 Fixed bug in LOGCAL which caused a download to record in
v11.9 XMODEM.LOG as A0> regardless of actual drive/user. Elimi-
nated MBYETOS equate. Now anyone running BYE3 or MBYE with
an RTC can use maximum time on system to limit download time
tines, and some unused labels removed.
- Murray Simsolo
----------------------------------------------------------------------
11/02/85 New version that will allow a "RM" function to upload a mes-
v11.8 a message file for entry in a MBBS system running MBYE v4.1
and up with MFMSG.COM v2.0 and up. Also fixed so MBDESC
will show disk/user area file uploaded to in the NEW UPLOAD:
filename display. Also, I included an update by Lavern Og-
den that enables MBYE users to have a user's max time on
system be used in the calculations for time allowed for
downloads. - Kim Levitt
----------------------------------------------------------------------
09/08/85 Added patch so MBBS used to enter upload descriptions into
v11.7 into message file. (MBYE40 and MBBS40 needed for this.)
Also added Murray Simsolo's XMDM116.FIX and a variation of
Mark Motley's fix to clear the WRTLOC flag when the "help"
message is displayed. The user can abort it and his TOSEXIT
equate to make the TOS display an option on exit. Also made
it so that instead of time on system being reset, max time
allowed on is adjusted instead if a user uploads a file.
Added LOGSYS equate to pick the old LOG.SYS filename as new
MBBS will work with XMODEM.LOG as well as LOG.SYS now. Also
added DWNTAG option so files tagged with "F3" status attri-
bute can be downloaded regardless of access privileges.
Fixed bugs introduced into v116 by Paul Traina (he eliminat-
ed needed WRTLOC clear in DESCRIB optional code). NOTE:
Read MURPHY'S LAWS re: computer program bug fixes. (IF NOT
TURKEY). (Although I didn't like all of Steve's "fixes", I
was trying to integrate his updates with John Hoffman. The
The old NOT X and NOT Y might have been more confusing than
than NOT (X or Y) but either works. But (NOT X or Y) is NOT
the same thing. Changed OK2400 comments to reflect change
in code by Paul Traina.) Added code so ^X, pause, ^X will
abort an upload. - Kim Levitt
----------------------------------------------------------------------
08/11/85 Fixed bugs introduced between 112 and 115. Added Kevin Mur-
v11.6 phy's changes to let BYEBDOS systems to gain time on system.
(Note: Must be using BYE338 for this to work properly. If
you are running BYE337, please upgrade to v338, as v338 cor-
responds to the documentation and changes the way one of the
BYEBDOS call functions works). - Paul Traina
----------------------------------------------------------------------
08/10/85 Fixed a bug in the "turkey patch" that could cause double
v11.5 entries in the log file for uploads or worse. Eliminated
"thru packet " in message to console that is unnecessary and
was leaving last packet number on console screen at end of
downloads if a file is sent which requires small packets at
the end. Also I fixed the version number. (This is #11.5
not 1.15 or 115.) Incorporated code from John Hoffman's
11.3 update and Steve Sanders' 11.4 update to bring out one
version with all bugs fixed and features together again (I
hope). Made some of Steve's feature patches optional.
(DSPFNAM for display file name option, MBYE37 equate renamed
to MBYETOS.) - Kim Levitt
----------------------------------------------------------------------
08/10/85 Steve Sanders' version. (Did not include v113 updates.)
v11.4 LUXMOD equate added so XMODEM can be configured to work as
a LUXMODEM program. XM-FNAM2.ADD patch added to display se-
lected file name on downloads and uploads so user can verify
system didn't get garbage for the filename. Fixed TAGLBR
option to work correctly. Misc. cleanup up and changes.
- Steve Sanders
----------------------------------------------------------------------
08/09/85 This version does not add any new features, what it does is
v11.3 is to get all of the known patches together in one place so
that future revisions of this program, will eliminate the
problem, of seeing what patches, and fixes have been carried
through. - John Hoffman
----------------------------------------------------------------------
07/16/86 1) Added universal I/O option for users of Bye > 3.37 if
v11.2 BYEBDOS is set, then a large section of equates are not
used. At the current time, xmodem expects you to have a
RTC if BYEBDOS is set.
2) Added in fixes from XMDM110.FX2, thanks for the patch.
My appologies to the people I messed up. Courtesy of:
Steve Saunders, Richie Dervan, Ron Mani.
3) Re-wrote options selection section. Talk about spaghetti
code. It's much cleaner now, adding function "RX".
4) 1k request ignored if user is calling in at 300 baud.
5) If user types "R" - system sends "CK" instead of "C".
This is transparent to all present modem programs other
than ProYAM for MS-DOS 16-bit computers. With ProYAM,
when uploading a file, the first block will have to be
resent, or the user can type "RX" to disable this auto-
protocol select flag. This change does not affect the
current "1k" protocol, it's really a great idea...cour-
tesy of Irv Hoff.
6) Local console display mimicks MEX114 in 1k mode.
- Paul Traina
----------------------------------------------------------------------
07/21/85 1) Reincorporated the use of ERRCDE, which had been partly
v11.1 ially removed from the program, as an assembly time op-
tion. The external overlay passes a code in Reg. A when
a parity, overrun or framing error is detected. Other-
wise Reg. A=0. This could be important to some users
who may be using checksum instead of CRC.
2) Added a version (last edit) date, which appears when the
program signs-on.
3) Compressed the help/example screen
4) Added routines for a BIOS, binary clock at GETTIME &
GETDATE - Don Brown
----------------------------------------------------------------------
07/20/85 1) corrected send time for 1k packets to be more accurate.
v11.0 XMDM110 looks to see what block size we use. (Thanks go
to Irv Hoff for the table entries.)
2) changed send-time to print "mm:ss" instead of "mm mins,
ss secs"
3) Removed equate OLDRBBS, not necessary because LASTCALR
FCB looks for any file with the firstname of "LASTCALR".
4) Changed MBRTC to B3RTC (and sub-equates) because BYE335
and newer have compatible RTC capability.
5) Added an equate "OXGATE". If B3RTC (previously called
MBRTC) or RTC is set to true, then OXGATE equate takes
effect. This equate tells the system to stop reading
data from the last caller file after the second comma.
(The date was getting printed twice.
- Paul Traina
----------------------------------------------------------------------