------- XYSRVR Version 1.7 - (C) 1994/95 by Double Delta Industries -------

The XYSRVR (XModem/YModem server) MSDOS program was developed to provide
faster file transfers between the PC and HP48 calculators. The program can
also provide X/Ymodem file transfers between two PCs (one PC can be
unattended) and serve as a really dumb terminal to a serial device. In
Server mode it provides remote file transfer functions similar to Kermit.
(Kermit Copyright (c) by the Trustees of Columbia University, New York,
NY.) The program is released as FREEWARE no financial obligation required
but contributions will be appreciated and put to good use. This product
must be distributed with all documentation and can't be used for commercial
or profit making purposes without the express permission of Double Delta
Industries (aka your's truly). Low cost commercial and site licences can be
negotiated (Yeah I know, dream on Bullwinkle).

This is a maintenance release of XYSrvr 1.7 for MSDOS. The executable and
documentation can be found in XYSRVR17.ZIP on cbs.cis.com and in
hpcvbbs.cv.hp.com their appropriate HP48 upload areas (though they could be
moved by the system operators and it may take some time to show up on
hpcvbbs).

I would appreciate any problem reports or suggestions that may arise from
the use of this software. This software has only been proven reliable when
using the HP48 internal XSEND/XRECV (GX rev. R) commands, the HP FXRECV
program from Goodies Disk #9, the XMODEM2.GX Library 995 and X-Ymodem 2.2
Library 1275 (SX only) on Goodies Disk #9.

If you have or know of any other HP48 file transfer programs, e-mail
them to me at diamond@eskimo.com or post it and let me know by e-mail where
to look for it (Let me know if it is GX hostile if you can). I will most
likely see it if you just post to comp.sys.hp48. I will test any GX
compatible programs and post the results to comp.sys.hp48. If you are using
an SX only program please test it and e-mail the results along with your
hardware configuration. Please review the installation information in the
documentation. If there is anyone out in MAC or Unix land that would like
to take a crack at porting XYsrvr to your platforms, I can support you with
Pascal source code for the X/Ymodem and remote command processing routines
(as these are probably the only parts that would be useful to you). All
that I would ask for is a line in any author credits of your product and
reference to XYSrvr in your documentation. This would also include any
independently developed software that uses the XYSrvr Server Mode syntax.
Note that this agreement is for non-commercial and non-profit distribution
only. All commercial and for profit use of XYSrvr software or syntax
requires the express permission of Double Delta Industries (Hey, that's
me).

XYSRVR was developed with the following commercial products:
Turbo Pascal 7.0         ==> by Borland International
Technojock Turbo Toolkit ==> by The Technojock, Bob Ainsbury, Houston

Double Delta Industries
1707 Jones Ave N.E.
Renton, Wa 98056

Jim Daniels (diamond@eskimo.com)

---------------------------  Change Log  --------------------------------
 Version 1.7 - 06/02/95
 27. Added monochrome screen option. Set with N or NOCOLOR option on the
     command line or the NO COLOR command in the XYSRVR.CFG file.
 28. Added scrolling directory windows to the GET File and PUT File
     commands. These directories allow single and multiple file transfers
     and file erasure on both the local and remote systems. File tagging
     and untagging is used to select files for multiple operations.
     Directory tree navigation is also supported.
 29. Modified the SRVR display screen. Line 1 now reports either
     "SRVR WAITING" or SRVR BUSY". Line 2 reports the file transfer mode
     such as "SENDING" or "RECEIVING". Line 3 displays the last error or a
     cryptic representation of the last command processed (i.e. "T VAR1",
      "R VAR2", "DEL VAR3", "CD DIR1").
 30. Added a HANDSHAKE mode for use with SRVR on the HP48 or any other
     server device. SRVR now responds with an EOT (#04) character after the
     completion of any command. The PUT and GET commands will wait for this
     character before initiating a new command. The default delays are
     disabled when HANDSHAKE mode is active. This significantly speeds up
     multiple file transfers and multiple file erasures from the GET and
     PUT commands. The HANDSHAKE mode only affects functions that interface
     with a SERVER like the PUT and GET commands. The XYSrvr Library (Lib
     1002) functions SRVR, GX, SX, SPC, DRL and DRS all expect the the
     remote server to be in HANDSHAKE mode. They all look for an EOT
     character after processing a command sent to the server. If you use
     these commands or require HANDSHAKE mode for some other program, turn
     it on from the command line (HANDSHAKE or H), from the XYSRVR.CFG file
     (HANDSHAKE ENABLE or H E) or from the Emulate menu. The XYSrvr default
     is HANDSHAKE OFF.

     WARNING BKUP USERS: This option should be HANDSHAKE OFF when using BKUP
     versions 4.0 to 4.2.
 31. For all you SysRPL hacks out there I modified XYSRVR.DOC so that
     section 7.1.0 - 7.1.11 (XYSRVR Library 1002 commands) are in the same
     order that they appear in the libraries. That means that the GX
     command (section 7.1.2) is command number 2 (decimal) or ROM PTR 3EA
     002 and the PADR command (section 7.1.11) is command number 11 (decimal) or
     ROM PTR 3EA 00B. I know the library section has ROM pointer tables but
     I'm just kind of wierd about things like this.
 32. I will no longer be providing sources or individual command binaries
     in the documentation. It was getting to be too much work maintaining
     both RPL and SysRPL versions of the HP48 XYSRVR Libraries. I will
     provide various versions of the library to support different Xmodem
     implementations.  If anyone is developing programs to work with the
     library functions or with the PC XYSrvr program and you need the
     XYSRVR library SysRPL source code to understand how it works or to use
     portions of it, send your request via e-mail to diamond@eskimo.com. I
     will only ask for a mention in the credits of whatever you develop for
     non-commercial and non-profit purposes.
 33. Added <AltS> Sort Directory and <AltR> Reverse Sort commands to the
     scrolling directory windows in the GET File and PUT File commands.
     Will do alpha-numeric sort in ascending and decending order and puts
     all directories at the top of the list. 34. Added The <AltA> Ascii
     HP48 Get and Put commands to the Get and Put scrolling window
     directory browsers. <AltA> is only valid when the HP48 SRVR program is
     the remote server. When this option is selected to transfer an RPL
     filem to/from the HP8, The received file will be translated as if a
     translate option 3 were set during a Kermit Ascii transfer. The bulk
     of the work is done on the PC XYSRVR end but there are special HP48
     SRVR commands that converts obj to "obj" prior to the HP48->PC
     transfers and "obj" to obj after PC->HP48 transfers. Any object that
     can be totally converted to a string with the ->STR command can be
     transferred with this command. Non-RPL objects (i.e. compiled sys-RPL,
     assembly language programs, directories with non-RPL objects in them,
     etc.) that have ->STR applied to them can non-destructively hang up
     the HP48 and will require an ON-C reset on the HP48 and <Esc> on the
     PC XYSRVR. Some objects will not convert to a string properly (i.e.
     library objects, RPL programs with imbedded externals or code objects,
     etc.) and will be incomplete. <AltA> will work with named objects that
     contain the following object types: real, complex, string, real array,
     complex array, algebraic, binary integer, list, GROB, RPL program,
     tagged object, object id and any directory that only contains items in
     this list. See sections 3.1.3, 3.1.4 and 7.1.0.

--------------------  Possible Future Enhancements ---------------------
                 ( As time and user interest permits )

  1. A utility to run the HP48 as a server for unattended transfers
     from the PC (Done).
  2. SysRPL versions of HP48 utility programs. (Done)
  3. Binary/Ascii and Ascii/Binary conversion of RPL files transferred from
     an HP48. Something like the ASCII transfer mode in Kermit on the HP48.
     (Done still need some error trapping)
  3. A Windows version of XYSrvr. (It runs fine in a DOS Box already but
     Windows would be nice. Other platforms will need to be third party
     developments)
  4. Zmodem support for non-HP48 applications.
  5. If someone doesn't beat me to it, a real Ymodem for the HP48
     (Ymodem-128 would be OK).
  6. Improved Terminal Mode support for various terminal emulators.

