home *** CD-ROM | disk | FTP | other *** search
/ BUG 1 / BUGCD1996_0708.ISO / pc / comm / telerepl / tr.doc < prev    next >
Text File  |  1993-06-01  |  119KB  |  2,089 lines

  1. TeleReplica Instruction Manual
  2.  
  3. 0.    To Get TeleReplica Up and Running Quickly...
  4.  
  5.       If you will be using modems then read the modem setup suggestions at the
  6.       start of appendix A. Then read whichever of the following sections most
  7.       closely matches your own application:
  8.          A1  Consultant/Client via Modem
  9.              One consultant wishing to connect via modem to many different
  10.              clients in order to take over the clients' computers.
  11.          A2  Remote/Shared via Modem
  12.              One remote access PC to be taken over by many different users via
  13.              modem.
  14.          A3  Laptop/Desktop via Direct Cable
  15.              A simple direct connection with no modems.
  16.          A4  Remote/Shared via Common Mini-computer
  17.              Instead of a direct link between the two PCs, each PC will be
  18.              logged into a common UNIX system.
  19.          A5  Home/Office via Modem
  20.              A dedicated office PC to be taken over from a home PC.
  21.       Note that A5 also contains some advice about configuring high speed
  22.       V32bis/V42bis modems (USR Courier V32bis or similar).
  23.  
  24.  
  25. 1.    What TeleReplica Will Do
  26.  
  27. 1.1   TeleReplica will allow you to connect two IBM PC-compatible computers
  28.       together (via telephone lines and modems, or via a direct cable, or via a
  29.       common mini- or main-frame computer), and arrange for input to be
  30.       accepted from either keyboard, and for both displays to appear identical.
  31.       In this document the computer which is running normal programs is called
  32.       the host computer, and the other computer is called the replica computer,
  33.       since its display is a replica of the host computer's display.
  34.  
  35. 1.2   TeleReplica will do a reasonable job of optimizing the screen changes
  36.       transmitted, so that (for example) moving a highlighted menu bar will
  37.       appear almost immediately even at 1200 bps (provided the call is
  38.       relatively local).
  39.  
  40. 1.3   TeleReplica always updates the replica computer's screen to match the
  41.       current host screen. This means that if several commands are issued
  42.       without waiting for the display to catch up, then the replica screen will
  43.       be updated to show the final host screen, without wasting time
  44.       transmitting the intermediate screens.
  45.  
  46. 1.4   TeleReplica uses a password of up to 39 characters, which means an
  47.       intruder would take an astronomical time to guess a well chosen password!
  48.       Since this password is transmitted automatically, there is no need to
  49.       keep it short and easy to remember - once TeleReplica is installed, you
  50.       will never need to enter the password manually.
  51.  
  52. 1.5   TeleReplica will allow the host site to call the replica site, or the
  53.       other way around. For consultants this means you can make your clients
  54.       pay the 'phone bills!
  55.  
  56. 1.6   TeleReplica will automatically detect the "baud" rate being used by the
  57.       replica computer, and set the host computer's "baud" rate to match. This
  58.       means that users with different speed modems can all access a single
  59.       host.
  60.  
  61. 1.7   TeleReplica uses just over 10K of memory on the host computer, which
  62.       means there should be enough memory left to run most applications.
  63.  
  64. 1.8   TeleReplica can be installed to "type" a command in response to the
  65.       'phone ringing, which allows better control than merely using the modem's
  66.       auto-answer capability. It can also send a command directly to the modem.
  67.  
  68. 1.9   TeleReplica will trap anything printed to any printer on the host PC, and
  69.       redirect it to the chosen printer at the replica PC. This redirection
  70.       takes place only when a session is active, so at other times the host can
  71.       be used to print normally even if TRHOST is still loaded.
  72.  
  73. 1.10  TeleReplica will allow the host PC to run with screen blanked and
  74.       keyboard dead for improved privacy.
  75.  
  76. 1.11  TeleReplica will support file transfers using external protocol programs
  77.       such as DSZ, which provide crash recovery and cope better with poor lines
  78.       than TeleReplica's built-in protocol.
  79.  
  80. 1.12  TeleReplica can limit the duration of a single session, to prevent one
  81.       user from "hogging" the line.
  82.  
  83. 1.13  TeleReplica can automatically locate the COM ports (including
  84.       non-standard IRQ lines) currently available in a PC, including IRQ8-15.
  85.  
  86. 1.14  TR is "DESQview-Aware". See Appendix D for details.
  87.  
  88. 1.15  Full source code is available at a small cost. See REGISTER.DOC for
  89.       details.
  90.  
  91.  
  92. 2.    What TeleReplica Will NOT Do
  93.  
  94. 2.1   TeleReplica will not replicate graphics displays. If the user at the
  95.       replica computer runs a program that displays graphics, then the replica
  96.       display may show (textual) garbage. Keystrokes will still be transmitted
  97.       to the host computer, but the user must remember which keys are necessary
  98.       to get out of graphics mode again! TeleReplica gives a warning that
  99.       graphics mode has been entered, but by then it is too late to avoid it.
  100.       However, in an emergency TR can instruct the host computer to reboot, so
  101.       provided TRHOST is run from AUTOEXEC.BAT this provides a means of
  102.       recovery.
  103.  
  104. 2.2   TeleReplica will only replicate an 80 column by 25 line display.
  105.  
  106. 2.3   TeleReplica will only work with the standard keyboard buffer (starting at
  107.       the address in segment 0040h specified at offset 0080h, ending at the
  108.       address specified at offset 0082h, with head pointer stored at offset
  109.       001Ah, and tail pointer stored at offset 001Ch).
  110.  
  111. 2.4   Where TeleReplica is being used with a modem, it will work best if the
  112.       modem and modem cable provide carrier detect, data terminal ready and
  113.       ring indicator signals in addition to the minimum transmit data, receive
  114.       data and ground signals.
  115.  
  116. 2.5   TeleReplica will cause bad "snowing" on some older CGA display cards. No
  117.       attempt has been made to use the retrace intervals for screen memory
  118.       access.
  119.  
  120. 2.6   TeleReplica will slow down the normal operation of the host computer. On
  121.       a 4.77MHz PC performance can be halved; on a faster host the difference
  122.       will not be so noticeable.
  123.  
  124. 2.7   TeleReplica requires DOS 3.0 or later.
  125.  
  126. 2.8   TeleReplica will not work particularly well on a noisy 'phone line. File
  127.       transfers are error-checked, but normal screen updates are not. Normally
  128.       this will not be a problem, since a corrupted screen will be obvious to
  129.       the user and in any case TR will usually detect the problem and
  130.       automatically request a full refresh. However, if errors happen very
  131.       frequently then TR can spend all its time continually re-refreshing the
  132.       display! Printer capture also is not error-checked, so line noise will
  133.       garble the printout. [If this proves to be a problem then the best
  134.       solution would be to use error-correcting (MNP4 or V42) modems.]
  135.  
  136.  
  137. 3.    Why Use TeleReplica?
  138.  
  139. 3.1   Access to Local Area Network from Home
  140.  
  141.       TeleReplica will allow you to connect into your office computer from
  142.       home. This means you do not need to take all your data files home with
  143.       you, and that you do not need to license additional copies of your
  144.       software (since your home computer is not running the software, only
  145.       replicating the screen of your office computer). If your office computer
  146.       is part of a local area network, then you automatically have access to
  147.       all the network facilities from home.
  148.  
  149.       We regularly use TeleReplica with such programs as WordPerfect,
  150.       WordPerfect Office (especially mail), WordStar, FoxBASE, Lotus-style
  151.       spreadsheets, all the Novell NetWare utilities, and our local area
  152.       network is regularly backed up after hours via TeleReplica! The only
  153.       programs we have come across that could not be used remotely either:
  154.          a)  used graphical displays (e.g. WordPerfect preview); or
  155.          b)  took over interrupts needed by TRHOST (e.g. comms programs);
  156.  
  157. 3.2   Software Support
  158.  
  159.       TeleReplica will allow you to take over your client's computer, so that
  160.       you can see what is going wrong. In many cases this will avoid the need
  161.       for an expensive trip to the client's site.
  162.  
  163. 3.3   Library CD-ROM Access
  164.  
  165.       TeleReplica is becoming quite popular for allowing remote (dial in)
  166.       access to CD-ROM databases running on PCs in libraries. The chief
  167.       attraction is that the library only needs to register once for each
  168.       CD-ROM PC that will be simultaneously available, and the users do not
  169.       need to register at all; the library can give them the software freely.
  170.       However, another significant factor is that the CD-ROM database software
  171.       often requires a very large amount of memory, and TeleReplica uses very
  172.       little memory on the host PC.
  173.  
  174.       For details of these and other applications, see the scenarios in
  175.       Appendix A.
  176.  
  177.  
  178. 4.    TeleReplica Host Installation
  179.  
  180.       To install TeleReplica at the host computer, first copy the files:
  181.       TRHOSTIN.EXE, TRHOSTC.EXE, TRHOST.EXE, TRPUT.EXE, TRGET.EXE, TRTALK.EXE,
  182.       TRCHECK.EXE, TRSPEED.EXE, TRSTATUS.EXE, TRASK.EXE, TRDIAL.EXE,
  183.       TREXTR.EXE, TREXTS.EXE, TRMODSET.EXE, TRRZ.BAT and TRSZ.BAT into a
  184.       directory (say \TR) on the host computer. Then enter the command:
  185.          TRHOSTIN
  186.  
  187.       Your display should show a menu similar to:
  188.       ╔══════════════════════════════════════════════════════════════════╗
  189.       ║ TeleReplica Host 4.26 Installation Copyright (c) Douglas Thomson ║
  190.       ║    A. Select serial port (currently COM1)                        ║
  191.       ║    B. Change password (currently "password")                     ║
  192.       ║    C. Change modem initialization string (currently:             ║
  193.       ║       "\rat &c1 &d2\r")                                          ║
  194.       ║    D. Change modem dialling format string (currently:            ║
  195.       ║       "atdt %s\r")                                               ║
  196.       ║    E. Select maximum "baud" rate (currently 2400)                ║
  197.       ║    F. Use modem CARRIER DETECT signal (currently YES)            ║
  198.       ║    G. Flow control (currently NONE)                              ║
  199.       ║    H. Generate INT 9 on each key (currently NO)                  ║
  200.       ║    I. Respond to modem RING signal (currently NO)                ║
  201.       ║    J. Reboot on loss of carrier (currently NO)                   ║
  202.       ║    K. Synchronize "baud" rate (currently YES)                    ║
  203.       ║    L. Send wakeup every 2 minutes (currently NO)                 ║
  204.       ║    M. Private mode (currently NO)                                ║
  205.       ║    N. Printer redirection (currently HOST)                       ║
  206.       ║    O. Maximum call length (currently unlimited)                  ║
  207.       ║    P. Create consistent .TR file                                 ║
  208.       ║    Q. Abandon changes                                            ║
  209.       ║    S. Save changes and leave installation program                ║
  210.       ║ Selection:                                                       ║
  211.       ╚══════════════════════════════════════════════════════════════════╝
  212.  
  213.       Consider each of these options in turn:
  214.  
  215. 4.1   Select Serial Port
  216.  
  217.       Another menu will appear:
  218.       ╔══════════════════════════════════════════════════════════╗
  219.       ║ TeleReplica Host Program Serial Port Selection           ║
  220.       ║                                                          ║
  221.       ║    0. Completed, no (further) change                     ║
  222.       ║ => 1. COM1 port (base 0x03F8, interrupt IRQ4)            ║
  223.       ║    2. COM2 port (base 0x02F8, interrupt IRQ3)            ║
  224.       ║    A. Custom base (currently 0x03F8)                     ║
  225.       ║    B. Custom interrupt (currently IRQ4)                  ║
  226.       ║    X. Search for hardware                                ║
  227.       ║                                                          ║
  228.       ║ Selection:                                               ║
  229.       ╚══════════════════════════════════════════════════════════╝
  230.  
  231.       Initially, the ports listed will be those reported by the computer's BIOS
  232.       during its initialization at power-up. Since the BIOS provides no
  233.       information about interrupt numbers, the IRQ numbers will simply be the
  234.       most common (IRQ4 for COM1 and COM3, IRQ3 for COM2 and COM4). If you only
  235.       use COM1 and COM2 then this may be all you need.
  236.  
  237.       However, if you use COM3 or COM4, especially with non-standard IRQ
  238.       numbers, you should select option X to have TRHOSTIN examine your
  239.       hardware and see what ports are really there. [This is not done
  240.       automatically since the searching process could conceivably crash the
  241.       computer - although it has not done so on any of the computers I have
  242.       tested it with.] After selecting X, the menu will be modified to reflect
  243.       any additional ports discovered; for example:
  244.       ╔══════════════════════════════════════════════════════════╗
  245.       ║ TeleReplica Host Program Serial Port Selection           ║
  246.       ║                                                          ║
  247.       ║    0. Completed, no (further) change                     ║
  248.       ║ => 1. COM1 port (base 0x03F8, interrupt IRQ4)            ║
  249.       ║    2. COM2 port (base 0x02F8, interrupt IRQ3)            ║
  250.       ║    3. COM3 port (base 0x03E8, interrupt IRQ5)            ║
  251.       ║    A. Custom base (currently 0x03F8)                     ║
  252.       ║    B. Custom interrupt (currently IRQ4)                  ║
  253.       ║    X. Search for hardware                                ║
  254.       ║                                                          ║
  255.       ║ Selection:                                               ║
  256.       ╚══════════════════════════════════════════════════════════╝
  257.  
  258.       All the existing ports are now listed. To select one of these ports, just
  259.       type the port number. If you have a non-standard base address (one that
  260.       is neither in the BIOS table nor one of the common "standard" values),
  261.       then use A and B to specify exactly what you want [it may be worth
  262.       selecting the base address, and then choosing X again, so that TRHOSTIN
  263.       will check for the right IRQ line for that base and add it to the menu].
  264.       When you are happy with the settings, select 0 to return to the main
  265.       menu.
  266.  
  267.       Please note that I do not have access to any system which uses the AT IRQ
  268.       numbers (8-15), so I cannot guarantee the performance of TeleReplica when
  269.       these 16-bit cards are used. Also, you should be careful to avoid having
  270.       two programs simultaneously active on ports which are listed with the
  271.       same IRQ number - for example a mouse on COM1/IRQ4 and a modem on
  272.       COM3/IRQ4.
  273.  
  274. 4.2   Change Password
  275.  
  276.       The string editing menu will appear:
  277.       ╔════════════════════════════════════════════════════════════════════╗
  278.       ║ TeleReplica Host Program Password Selection                        ║
  279.       ║                                                                    ║
  280.       ║ Edit existing string:                                              ║
  281.       ║ password                                                           ║
  282.       ╚════════════════════════════════════════════════════════════════════╝
  283.       Whenever you see the "Edit existing string:" prompt, you can use the left
  284.       and right arrow keys to move the cursor through the string, and the
  285.       backspace and delete keys to delete characters to the left of or under
  286.       the cursor respectively. Any normal characters you type will be inserted
  287.       at the cursor position. If the first key you press is a normal printable
  288.       character then the string will be cleared automatically.
  289.  
  290.       You will not be able to enter more than the maximum allowed number of
  291.       characters for any string.
  292.  
  293.       Since you will only need to enter the password once during installation,
  294.       and never in normal use, it is recommended that you make the password
  295.       near the maximum length and quite random. The main thing is that no-one
  296.       should have any chance of guessing the password.
  297.  
  298. 4.3   Change Modem Initialization String
  299.  
  300.       The string editing menu will appear again, this time asking for the modem
  301.       initialization string. This string is transmitted to the modem at the
  302.       maximum "baud" rate when TRHOST runs for the first time. If you are using
  303.       an automatic power switch that powers up the host computer when the
  304.       'phone starts ringing, then the initialization string may need to answer
  305.       the 'phone (see scenario A2). There may also be various operating modes
  306.       that cannot be stored permanently in your modem's non-volatile memory,
  307.       and which must therefore be established each time TRHOST starts. In many
  308.       applications, where nothing needs to be changed, this string may be
  309.       empty.
  310.  
  311.       You will probably need to refer to the instruction manual for the host
  312.       modem to work out what if anything is required.
  313.  
  314.       As well as normal characters, you may need to include some special
  315.       characters such as carriage return. Carriage return can be encoded as \r
  316.       (see the main menu at the start of section 4). Alternatively, any
  317.       character can be entered in hexadecimal as \0x followed by two hex digits
  318.       (for example, the escape key is \0x1B). To get a \ character, use \\.
  319.  
  320.       It may also be necessary to include some kind of delay. For example, some
  321.       modems go off into a world of their own for a second or so after a reset
  322.       command. Delays are entered in milliseconds as \D followed by the delay
  323.       (for example, \D1000. [1 second] or \D500. [half a second]). Delays are
  324.       only accurate to the nearest 55 ms, so the number you enter may be
  325.       modified slightly to reflect the nearest possible actual delay.
  326.  
  327. 4.4   Change Modem Dialling Format String
  328.  
  329.       This string determines what TRDIAL will send to the modem to dial a
  330.       number. The usual use of TRDIAL will be something like TRDIAL 221166, so
  331.       normally the dialling format string should contain a %s to insert the
  332.       number. For example, if the dialling string is "atdt %s\r" and the user
  333.       enters the previous dialling command, then what will be sent to the modem
  334.       is:
  335.          atdt 221166
  336.       followed by a carriage return.
  337.  
  338.       Alternatively, if only one number is required, then the dialling format
  339.       string may contain the actual number, in which case the user will only
  340.       need to enter TRDIAL by itself.
  341.  
  342.       Note that (when CARRIER DETECT is being used) TRDIAL will only send
  343.       anything to the modem if there is NO carrier detected - once a carrier
  344.       had been established the modem would not act on the command in any case,
  345.       but would send it through to the other end. When TRHOST is installed to
  346.       ignore CARRIER DETECT, TRDIAL will send data to the modem regardless.
  347.  
  348. 4.5   Select Maximum "Baud" Rate
  349.  
  350.       Another window will appear:
  351.       ╔═══════════════════════════════════════════════════════════════════╗
  352.       ║ TeleReplica Host Program Maximum "Baud" Rate Selection            ║
  353.       ║                                                                   ║
  354.       ║ Enter "baud" rate:                                                ║
  355.       ╚═══════════════════════════════════════════════════════════════════╝
  356.       You should enter the maximum "baud" rate that the host modem is capable
  357.       of using. Usually this will be 2400 or 19200. Note that TRHOST can
  358.       automatically adjust to half this speed, a quarter of this speed, or one
  359.       eighth of this speed. Thus if you choose 19200 bps, TRHOST will be able
  360.       to work at 19200, 9600, 4800 or 2400 bps (provided the host modem can
  361.       handle these speeds).
  362.  
  363.       If you will be using a direct cable between two PCs, then 19200 should
  364.       work on all systems and 38400 will work on faster computers. If your
  365.       computers have NS16550AFN UART chips instead of the standard 8250 chips
  366.       then speeds of 57600 or even 115200 should work.
  367.  
  368. 4.6   Use modem CARRIER DETECT signal
  369.  
  370.       Selecting this option will determine whether or not TRHOST will use the
  371.       carrier detect signal provided by the modem. If you are using a real
  372.       modem, then you should set this to YES and make sure the modem is
  373.       initialized so that it reports the true CD status from the 'phone line.
  374.  
  375.       If you are using a direct cable between two PCs, or connecting PCs via a
  376.       mini-computer, then set this option to NO.
  377.  
  378. 4.7   Flow control
  379.  
  380.       Selecting this option will bring up the following menu:
  381.       ╔══════════════════════════════════════════════════════════╗
  382.       ║ TeleReplica Host Program Flow Control Selection          ║
  383.       ║                                                          ║
  384.       ║    0. Completed, no (further) change                     ║
  385.       ║ => 1. No flow control                                    ║
  386.       ║    2. Hardware (RTS/CTS) flow control                    ║
  387.       ║    3. Software (XON/XOFF) flow control                   ║
  388.       ║    4. Both hardware and software flow control            ║
  389.       ║    5. Set inter-character gap time (currently 330 ms)    ║
  390.       ║                                                          ║
  391.       ║ Selection:                                               ║
  392.       ╚══════════════════════════════════════════════════════════╝
  393.  
  394. 4.7.1 TeleReplica can use the following flow control systems:
  395.       NONE     No flow control. Use this with a direct cable or with modems
  396.                that require no speed adjustment.
  397.       CTS      Hardware flow control using RTS (request to send) and CTS (clear
  398.                to send). Use this in preference to software flow control if it
  399.                is available.
  400.       XON      Software flow control using XON and XOFF (^S/^Q). Use this if
  401.                flow control is needed and hardware flow control is not
  402.                available.
  403.       BOTH     Use both software and hardware flow control. I can't imagine why
  404.                anyone would want this...
  405.  
  406. 4.7.2 Normally TeleReplica will not need to use any flow control even when it
  407.       is available. However, some modems communicate with the PC at a different
  408.       speed than that at which they communicate with other modems, so that it
  409.       is possible for the PC to "get ahead" of the modem and hence lose data.
  410.       In these cases it is necessary for the modem to tell the PC when to wait
  411.       a bit before sending the next byte.
  412.  
  413. 4.7.3 A side effect of software flow control is that TeleReplica will not use
  414.       ANY control characters: it will not send any, and it will ignore all
  415.       control characters received apart from XON and XOFF. This may be useful
  416.       for networks that respond to certain control characters; however, binary
  417.       file transfers will be slightly slower since 64 characters (control
  418.       characters with and without the parity bit) are not used. Note that both
  419.       TR and TRHOST must therefore either use or not use software flow control
  420.       - if one end uses software flow control and the other does not, then no
  421.       communication will be possible!
  422.  
  423. 4.7.4 When TRHOST is receiving characters (normally keys that have been pressed
  424.       at the remote PC - each key is encoded as two or three characters) it
  425.       waits a certain length of time after receiving the first character before
  426.       giving up and ignoring the key. This is important, since otherwise a
  427.       single byte introduced by noise on the line could cause all subsequent
  428.       keys to be misinterpreted (the second character of one key being treated
  429.       as the first character in the next key and so on). TR always sends all
  430.       the characters which constitute one key as close together as the
  431.       communication speed will allow, so usually a gap of even 0.1 seconds
  432.       means that something has gone wrong and that TRHOST should start looking
  433.       for a new key again. However, if the link between TR and TRHOST uses
  434.       packets, or for any other reason introduces significant gaps between two
  435.       characters that were sent together, then TRHOST may need to be adjusted
  436.       to tolerate longer gaps between characters which should be together.
  437.       Selecting option 5 will bring up the following screen:
  438.       ╔════════════════════════════════════════════════════════════════════╗
  439.       ║ TeleReplica Host Program Inter-character Gap Time Selection        ║
  440.       ║                                                                    ║
  441.       ║ Longest gap to be tolerated (ms): 330                              ║
  442.       ╚════════════════════════════════════════════════════════════════════╝
  443.       Any time up to about 10 seconds (10000 ms) can be entered. Be aware that
  444.       if this time is set to 10 seconds, and line noise does introduce a stray
  445.       character, then you will need to wait 10 seconds without typing anything
  446.       at the remote PC to get TRHOST back into synchronization!
  447.  
  448. 4.8   Generate INT 9 on each key
  449.  
  450.       When TRHOST receives a key from TR, it will usually just place it in the
  451.       keyboard buffer to be found by any program that wants to read a key.
  452.       However, some applications monitor the keyboard interrupt (INT 9) and
  453.       only read the keyboard input buffer after there has been a keyboard
  454.       interrupt! To keep such programs happy, TRHOST can generate an INT 9
  455.       after it has placed a key into the buffer. However, this can cause
  456.       problems for other programs, particularly when the host and remote
  457.       keyboards may both be in use at the same time (e.g. TRTALK). Leave this
  458.       option OFF unless it is really necessary.
  459.  
  460. 4.9   Respond to modem RING signal
  461.  
  462.       Selecting this option will determine whether or not TRHOST will respond
  463.       to the RING signal which the modem provides to tell the PC that the
  464.       'phone is ringing. If this option is turned on, then the menu will be
  465.       extended with the following sub-options:
  466.  
  467.       G. Respond to modem RING signal (currently YES)───┬─ 1. too short  220 ms
  468.                                                         ├─ 2. too long  5000 ms
  469.                                                         ├─ 3. delay    10000 ms
  470.                                                         ├─ 4. reset    10000 ms
  471.                                                         ├─ 5. "type" response
  472.                                                         └─ 6. response ─┐
  473.                                                                 "\0x1Btrauto\r"
  474.  
  475. 4.9.1 If the 'phone only rings for a very short time, you may wish to ignore
  476.       the ringing completely - otherwise just knocking the 'phone off the hook
  477.       can trigger a TRHOST response!
  478.  
  479. 4.9.2 If the 'phone rings for a long time, then this may indicate that the
  480.       caller is a person who should not be greeted by an ear full of modem! If
  481.       TRHOST is intended to respond before the 'phone stops ringing, then this
  482.       time should be set the same as the delay below.
  483.  
  484. 4.9.3 After a certain length of time (measured from when the 'phone starts
  485.       ringing) TRHOST will check that the amount of ringing was within the
  486.       specified range, and if so, will respond to it (see point 5).
  487.  
  488. 4.9.4 If the 'phone rang for too long, then TRHOST must know when to start
  489.       looking for another call. If the 'phone has not rung for a certain length
  490.       of time then TRHOST assumes any ringing must be a new call.
  491.  
  492. 4.9.5 The response string may be either "typed" (that is, inserted into the
  493.       keyboard buffer as if a user at the host PC had just typed it in), or it
  494.       can be sent direct to the modem. The advantage of "typing" is that you
  495.       can run a batch file to check times and do all sorts of other things. The
  496.       advantage of sending direct to the modem is that the entire operation can
  497.       take place in the background while an application continues running.
  498.  
  499. 4.9.6 You may specify a response of up to 39 characters. If you expect the host
  500.       PC to be at the DOS prompt when a call comes in, then it is a good idea
  501.       to start with an escape key, so that DOS discards anything already typed
  502.       and treats what follows as a new command.
  503.  
  504.       If all this sounds too complicated, but you still think you want to
  505.       enable ring response, then have a look at the configuration scenario
  506.       called "Home/Office via Modem" in section A5.
  507.  
  508. 4.10  Reboot on loss of carrier
  509.  
  510.       Selecting this option will determine whether or not the computer will
  511.       reboot when the modem reports that the carrier has been lost (presumably
  512.       because the other end hung up). See scenario A5 for an example of an
  513.       application taking advantage of this feature.
  514.  
  515.       The PC will not reboot unless there has been a TeleReplica session active
  516.       since TRHOST was loaded.
  517.  
  518. 4.11  Synchronize "baud" rate
  519.  
  520.       Selecting this option will determine whether or not TRHOST will attempt
  521.       to match the "baud" rate being used by TR at the other end. This is
  522.       useful if several users will all dial into the same host, but some users
  523.       have slower modems than others. See scenario A2 for an example of this.
  524.  
  525. 4.12  Send wakeup every 2 minutes
  526.  
  527.       Selecting this option will determine whether or not TRHOST will send a
  528.       NULL character whenever two minutes has passed with no other activity. A
  529.       single NULL is ignored by TR, but may serve to keep a connection to a
  530.       mini-computer link. See scenario A4 for an example of this.
  531.  
  532. 4.13  Private mode
  533.  
  534.       In private mode, the screen of the host PC will be blank, and the
  535.       keyboard of the host PC will be inactive (including CTRL-ALT-DEL). This
  536.       is useful to enhance privacy when the host PC is in a public location.
  537.       Note that the screen blanking has only been tested on VGA, EGA, CGA and
  538.       Hercules display cards, and only in text modes. It has worked correctly
  539.       with all the applications tested, but you should test it with your own
  540.       applications and display cards before relying on it!
  541.  
  542. 4.14  Printer redirection
  543.  
  544.       When a TeleReplica session is active, it is possible to redirect printer
  545.       output (which would otherwise be printed at the host PC) so that it is
  546.       printed at the replica PC instead. When no session is active, the host
  547.       will print normally even though TRHOST is still loaded.
  548.  
  549. 4.15  Maximum call length
  550.  
  551.       In some cases, perhaps where multiple users are competing for a limited
  552.       number of phone lines or a toll-free number is being used, it will be
  553.       desirable to enforce some upper limit on the connection time. After this
  554.       time, TRHOST will drop DTR for 2 seconds, which will cause a (correctly
  555.       configured) modem to hang up.
  556.  
  557.       One minute before the timeout TRHOST sends a warning message to TR, so
  558.       that the user will have a minute in which to exit gracefully from
  559.       whatever is happening. Note that this will not happen during a file
  560.       transfer, so you should not start a file transfer unless you are sure
  561.       there will be time to complete it before the host hangs up!
  562.  
  563.       Due to the way this timer is implemented, there is a limit of 3598
  564.       seconds (just under an hour). If I get enough people complaining that
  565.       they really need limited length sessions, but the limit needs to be over
  566.       an hour, I will consider changing the implementation...
  567.  
  568.       Note that DTR will also be dropped before rebooting if a maximum call
  569.       length has been specified, so there is no (known) way to defeat the
  570.       mechanism. However, it might be a good idea to restrict access to
  571.       programs like TRHOSTIN and TRHOSTC which could be used to modify the time
  572.       limit!
  573.  
  574. 4.16  Create consistent .TR file
  575.  
  576.       Once TRHOST has been installed correctly, TRHOSTIN can create a
  577.       configuration file for TR that is consistent (same "baud" rate, password,
  578.       use of carrier detect etc). It will normally still be necessary to edit
  579.       this file to do some fine tuning, but the work required will be less than
  580.       if you started with the vanilla TR.TR file distributed with TeleReplica.
  581.  
  582. 4.17  Abandon Changes
  583.  
  584.       If you have made a mistake, or if you only wanted to see what the current
  585.       settings were, then this option allows you to quit without making any
  586.       changes.
  587.  
  588. 4.18  Save Changes and Leave Installation Program
  589.  
  590.       This is the normal way to exit this program when you have made all the
  591.       required changes. The relevant files (TRHOST.EXE, TRGET.EXE, TRPUT.EXE
  592.       TRTALK.EXE, TRDIAL.EXE, TREXTR.EXE, TREXTS.EXE and TRMODSET.EXE) will all
  593.       be modified appropriately.
  594.  
  595.       Note that the executable files are actually modified, so beware of virus
  596.       protection programs which compute checksums for executable files - they
  597.       are likely to report possible virus infections after installation! The
  598.       alternative (loading configuration information from a disk file) was
  599.       rejected due to the additional memory required for the file processing
  600.       code...
  601.  
  602.  
  603. 5.    Replica Installation
  604.  
  605.       To install TeleReplica at the replica computer, first copy the files:
  606.       TR.EXE, TR.HLP, and TR.TR (or better still the .TR file that was created
  607.       during host installation) into a directory (say \TR). Then use a text
  608.       editor to edit the .TR file. This file should look something like:
  609.       ╔════════════════════════════════════════════════════════════════════╗
  610.       ║    TeleReplica Configuration File                                  ║
  611.       ║    Do NOT change the order of these parameters or delete lines!    ║
  612.       ║ "COM1"       Communications port ("COMn" or base/interrupt)        ║
  613.       ║ 2400         "Baud" rate (typically 2400 or 19200)                 ║
  614.       ║ "COMSPEC"    Path for DOS Command Interpreter (or "COMSPEC")       ║
  615.       ║ 07           Attribute for normal text (such as help screen)       ║
  616.       ║ 47/70        Attribute for file transfer monitoring                ║
  617.       ║ 4F/0F        Attribute for pop-up windows                          ║
  618.       ║ "trput %s\r" Host command to send (download) files                 ║
  619.       ║ "trget\r"    Host command to receive (upload) files                ║
  620.       ║ 0            Printer (normally 0, 1 or 2)                          ║
  621.       ║ 440          Frequency of "bell" tone (Hz)                         ║
  622.       ║ 100          Duration of "bell" tone (ms)                          ║
  623.       ║ 256          Block size for file upload (1-256)                    ║
  624.       ║ 8            Number of block buffers for upload (1-8)              ║
  625.       ║ 111          Length of "break" (ms)                                ║
  626.       ║ 3000         Time to wait for first char before timeout (ms)       ║
  627.       ║ 500          Time to wait for subsequent chars in block (ms)       ║
  628.       ║ 56           Time to wait between "typing" keys (ms)               ║
  629.       ║ "password"   Password to log in to host computer                   ║
  630.       ║ "MODEM"      Type of link (MODEM, DIRECT, or OTHER)                ║
  631.       ║ "NONE"       Flow control (CTS, XON, BOTH or NONE)                 ║
  632.       ║ "YES"        Send BREAKs to host computer                          ║
  633.       ║ "YES"        Use BIOS for keyboard input                           ║
  634.       ║ "[TR] %s"    DOS shell prompt format string                        ║
  635.       ║ "LRCA"       Local command shifts (Left, Right, Ctrl, Alt)         ║
  636.       ║ ""           Connect command for modem                             ║
  637.       ║ ""           Disconnect command for modem                          ║
  638.       ║                                                                    ║
  639.       ║    Each of the remaining lines must contain 3 strings and a number.║
  640.       ║    The first string is the trigger string to search for.           ║
  641.       ║    The second string is the response to be sent after the trigger. ║
  642.       ║    The third string is the response to be sent after timeout.      ║
  643.       ║    The number is the time to wait before timeout (in ms).          ║
  644.       ╚════════════════════════════════════════════════════════════════════╝
  645.       Most of these parameters will not need to be changed.
  646.  
  647. 5.1   The serial port may be one of the standard ones ("COM1", "COM2", "COM3",
  648.       or "COM4") or you may specify the base address and interrupt number [e.g.
  649.       COM1 would be 03F8/IRQ4]. For compatibility with previous versions of
  650.       TeleReplica, you may also use a hex interrupt vector number, so that a
  651.       third way to specify COM1 is 03F8/0C.
  652.  
  653. 5.2   The "baud" rate should be set appropriately for the modem.
  654.  
  655. 5.3   The DOS command interpreter should normally be taken from the COMSPEC
  656.       environment variable. However, if this does not work (or does not select
  657.       the desired command interpreter) the full path name of a command
  658.       interpreter can be specified (e.g. "C:/DOS/COMMAND.COM" - or
  659.       "C:\\DOS\\COMMAND.COM" - the \\ is needed since \ introduces an escape
  660.       sequence).
  661.  
  662. 5.4   Video attributes are two hexadecimal digits: the first is the background
  663.       color, and the second is the foreground color. Optionally a second
  664.       attribute may be specified (e.g. 4F/70) - the first attribute is used for
  665.       color displays and the second is used for monochrome systems (this allows
  666.       a single control file to work without change with different displays).
  667.  
  668. 5.5   When the user running TR requests a file transfer, TR "types" the
  669.       necessary command at the host PC. These two lines should not be changed
  670.       except possibly to fill in a full path name if TRGET.EXE and TRPUT.EXE
  671.       are not in the path of the host PC.
  672.  
  673. 5.6   When host printing is being redirected to the replica computer's printer,
  674.       TR needs to know which printer to use. LPT1: is printer 0, LPT2: is
  675.       printer 1, and LPT3: is printer 2. Serial printers are not directly
  676.       supported.
  677.  
  678.       Note that it is not necessary or possible to specify which host printer
  679.       is to be redirected; anything sent to LPT1:, LPT2: or LPT3: will be
  680.       redirected. This was done to save the user the trouble of working out
  681.       which printer the host was using.
  682.  
  683. 5.7   The frequency (or pitch) and the duration of the "bell" can be modified
  684.       to suit your personal preferences (and the volume of your PC's speaker!).
  685.       The "bell" is used to indicate that some corruption of the data being
  686.       received by TR has occurred.
  687.  
  688. 5.8   The size of file transfer blocks and the number of buffers should not
  689.       need to be changed, except on a very poor 'phone line (in which case
  690.       smaller blocks and fewer buffers may improve matters). However, if the
  691.       line is this bad then TeleReplica will probably be unusable anyway...
  692.  
  693. 5.9   The length of "break" required is not likely to need to be changed -
  694.       unless perhaps a mini-computer requires longer?
  695.  
  696. 5.10  During a file transfer, TR will wait a certain time for the start of each
  697.       block. If nothing has been received within the time, then TR will request
  698.       the block be sent again (since presumably it got lost).
  699.  
  700. 5.11  Once the first character in a block has been received, the rest should
  701.       follow immediately - any gap probably means problems. However, when using
  702.       an overloaded mini-computer link (or using a packet network that may
  703.       introduce delays between packets, or using a modem with error correction,
  704.       compression or bps translation) this parameter could need to be longer.
  705.  
  706. 5.12  Since on some PCs (mainly ones with CGA displays) interrupts are disabled
  707.       for LONG periods when writing to the screen, it may be necessary to make
  708.       TR pretend to type quite slowly, especially when sending things like file
  709.       transfer commands. If you find you are losing characters under these
  710.       circumstances, then make this delay longer; if you have a smart BIOS
  711.       and/or version of DOS and/or command interpreter and/or display card then
  712.       you may be able to get away with a shorter delay (even 0 ms). On all the
  713.       systems I have used, the time taken to send two characters at 2400 bps or
  714.       below is sufficient, so this delay is probably only needed above 2400
  715.       bps.
  716.  
  717. 5.13  The password must match the password installed in TRHOST at the host
  718.       computer.
  719.  
  720. 5.14  There are three kinds of link that may be used between two PCs:
  721.       MODEM    Use this if you are working with a modem that provides CARRIER
  722.                DETECT (note that you will require an appropriate cable [see
  723.                Appendix C1] and possibly some initialization of the modem [see
  724.                the start of Appendix A]).
  725.                You can also use this if you are using a null modem cable that
  726.                provides a CD line (see Appendix C3).
  727.       DIRECT   Use this if you are working with a three-wire null modem cable,
  728.                or if you are using a modem/cable that cannot provide accurate
  729.                CD information.
  730.       OTHER    Use this if you are working with a mini-computer link (see
  731.                scenario A4), or for initial modem setup (see the start of
  732.                Appendix A).
  733.  
  734. 5.15  TR can use the following flow control systems:
  735.       NONE     No flow control. Use this with a direct cable or with modems
  736.                that require no speed adjustment.
  737.       CTS      Hardware flow control using RTS (request to send) and CTS (clear
  738.                to send). Use this in preference to software flow control if it
  739.                is available.
  740.       XON      Software flow control using XON and XOFF (^S/^Q). Use this if
  741.                flow control is needed and hardware flow control is not
  742.                available.
  743.       BOTH     Use both software and hardware flow control.
  744.  
  745.       See the discussion of flow control under host installation for further
  746.       details.
  747.  
  748. 5.16  Normally TR should send BREAKs to TRHOST, but see scenario A4 for use
  749.       with a mini-computer link.
  750.  
  751. 5.17  Normally TR will use the BIOS for keyboard input. However, many BIOSes
  752.       filter out keys from enhanced keyboards (e.g. <F11>), and if use of these
  753.       keys is important then it may be necessary to NOT use the BIOS, but
  754.       rather to use the keyboard input buffer directly. Note however that some
  755.       keyboard enhancing programs (such as Newkey) will only work with the BIOS
  756.       setting. This is because they intercept the keyboard interrupt and store
  757.       keys away in some place other than the standard buffer area, so that TR
  758.       cannot find them!
  759.  
  760. 5.18  The DOS prompt for when you are in a TR shell can be edited to suit your
  761.       individual preferences - the %s inserts the original prompt.
  762.  
  763. 5.19  If you don't like the default <Ctrl-Alt-LeftShift-RightShift> key
  764.       combination to access local commands in TR, then you can change this to
  765.       any other combination of these four main shift keys ("CAL" would mean
  766.       <Ctrl-Alt-LeftShift> for example) - see scenario A3 for an application of
  767.       this).
  768.  
  769. 5.20  The connect command for the modem is sent when TR starts running (this
  770.       will often be a dial command). The modem command strings here have the
  771.       same format as those described above for the host computer installation
  772.       (with the addition of a \B escape sequence that causes TR to transmit a
  773.       BREAK). Make sure you leave the double quotes (") around each string!
  774.  
  775. 5.21  The disconnect command is sent when TR terminates (using exit option 3
  776.       only).
  777.  
  778. 5.22  The automatic response strings at the end of the file can be used to
  779.       respond to modem status messages. For example, if the replica computer's
  780.       modem is not set to auto-answer, then TR may need to respond to a "RING"
  781.       message from the modem by answering the 'phone - see scenario A5 for an
  782.       application. These strings can also be used to achieve an automatic login
  783.       to a mini-computer - see scenario A4 for an example. The trigger strings
  784.       are only active before a TR-TRHOST link is established. They are also
  785.       disabled once the final trigger string has been detected.
  786.  
  787.       Please note that since this file contains the password, anyone who
  788.       obtains a copy of this file can potentially access the host computer!
  789.  
  790.  
  791. 6.    How to Use TeleReplica
  792.  
  793.       The following instructions assume that TeleReplica has been correctly
  794.       installed (see sections 4 and 5). Only general guidelines are given here;
  795.       more details are provided in the scenarios in Appendix A.
  796.  
  797. 6.1   Host Computer
  798.  
  799.       First run the TRHOST program. If the replica computer is to originate the
  800.       'phone call, then this may be all that is necessary.
  801.  
  802.       If the host computer is to originate the call, then use the command:
  803.          TRDIAL
  804.       or
  805.          TRDIAL number
  806.       depending on how the dialling format string was installed.
  807.  
  808.       Once TRHOST is resident and the call is established, the host computer
  809.       can be used normally. The only difference is that everything that appears
  810.       on the screen is also being replicated on the replica computer's screen.
  811.  
  812.       The best way to remove TRHOST from memory is to run TRREMOVE. It is also
  813.       possible to use utilities such as marknet/relnet. Note that some common
  814.       mark/release utilities can NOT be used, because they do not restore the
  815.       interrupt mask register.
  816.  
  817. 6.2   Replica Computer
  818.  
  819.       Use the command:
  820.          TR                     [use TR.TR configuration file]
  821.       or
  822.          TR filename            [use filename.TR configuration file]
  823.  
  824.       If the replica computer was to originate the call, then the modem
  825.       initialization string in the configuration file will usually include a
  826.       dial command to call the host computer.
  827.  
  828.       If the host computer was to originate the call, then the initialization
  829.       string may contain an answer 'phone command. Note that in this case it is
  830.       important that the TR program not be run until after the 'phone starts
  831.       ringing! (Alternatively, there may be no initialization string, but
  832.       instead there may be a trigger string to respond to RING from the modem -
  833.       see scenario A5.)
  834.  
  835.       If the configuration file contains no modem initialization string, then
  836.       the user at the remote computer can enter modem commands manually. This
  837.       may be convenient for a consultant wishing to dial many different
  838.       clients. (Before a carrier is detected, TR will behave much like a normal
  839.       communications program.)
  840.  
  841.       Once both TR and TRHOST are running and connected to each other, they
  842.       will automatically adjust the host computer's "baud" rate (if this
  843.       feature is enabled) and the host computer will check the password
  844.       provided by the replica computer. Provided the password is correct, the
  845.       replica computer will effectively be able to take over the host computer,
  846.       or alternatively to observe whatever the host computer is doing. Any key
  847.       typed on the replica computer will be acted upon by the host computer,
  848.       and anything that appears on the host computer's screen will also appear
  849.       on the replica computer's screen.
  850.  
  851.       It is sometimes necessary to execute a command on the replica computer,
  852.       rather than transmitting the keystroke to the host computer. This is
  853.       achieved by holding down some combination of left shift, right shift,
  854.       ctrl and alt all at the same time (the exact combination is specified in
  855.       the .TR file currently in use). When you do this a list of all the
  856.       possible commands will be displayed, and you can then type the required
  857.       command key:
  858.  
  859.       F2      simulate a carrier signal (useful if the modem does not provide
  860.               this information) [link type should be OTHER to use this command]
  861.       Ctrl-F2 simulate NO carrier signal (opposite of F2)
  862.       F6      send break, restart session [use this if TeleReplica locks up -
  863.               very rare!]
  864.       Ctrl-F6 Cause host PC to execute control-break handler (pressing
  865.               control-break on the replica PC is ignored)
  866.       F8      reboot the host computer (useful if host computer "hangs" for any
  867.               reason, but make sure TRHOST is run from AUTOEXEC.BAT!)
  868.       F9      shell directly to DOS, return to TR later by typing "exit"
  869.       F10     exit TeleReplica [optionally shell out and return later]
  870.       Home    refresh display from HOST [use this if a bad 'phone line messes
  871.               up the screen]
  872.       PgUp    upload file using DMP protocol [transfer file(s) from replica to
  873.               host]
  874.       PgDn    download file using DMP protocol [transfer file(s) from host to
  875.               replica]
  876.  
  877.       Note that before performing a file transfer, the host computer must be at
  878.       the DOS prompt, and TRGET.EXE and TRPUT.EXE must be accessible in the
  879.       current path (or alternatively the .TR file must contain full paths, not
  880.       just (say) TRGET but rather C:/TR/TRGET - note forward slashes!). If
  881.       TRGET/TRPUT cannot be found, then the host will display a "command not
  882.       found" error message, but TR will go on waiting for a response from
  883.       TRGET/TRPUT! Pressing any key will terminate this waiting and bring up an
  884.       appropriate error message.
  885.  
  886.       If a file transfer needs to access a file in another directory, it may be
  887.       convenient to shell out of TR, change directories, and then exit from DOS
  888.       back into TR to start the file transfer. TR will transmit any path that
  889.       you specify, so if the two PCs have equivalent directory structures it is
  890.       easy to transfer files to the corresponding directory on the other PC
  891.       (see Appendix B for a sample file transfer session).
  892.  
  893.  
  894. 7.    TeleReplica Utility Programs
  895.  
  896. 7.1   TRREMOVE
  897.  
  898.       This will search for a copy of TRHOST loaded in memory. If one is found,
  899.       then it is checked to see whether it is currently in use (if so, TRREMOVE
  900.       will ask for confirmation before removing it). If it is not in use, or if
  901.       it is to be removed anyway, all interrupts, the interrupt mask register
  902.       and the serial chip state are restored to their initial state when TRHOST
  903.       started running, and TRHOST's memory is freed.
  904.  
  905.       Please note that as with most TSR programs, this may not work unless
  906.       TRHOST was the most recent TSR to be loaded. In general TSR programs
  907.       should be unloaded in the reverse order they were loaded. In this case
  908.       "not working" means that any TSR loaded after TRHOST may cease to
  909.       function. If this is not possible then the use of marknet/relnet (or some
  910.       other mark/release utility that preserves the interrupt mask register as
  911.       well as the vectors) is recommended.
  912.  
  913.       It is sometimes convenient to be able to keep a modem connection even
  914.       though TRHOST is being unloaded. Normally, TRREMOVE will restore the
  915.       serial port state to its original state when TRHOST was first run.
  916.       However, it is possible to force the DTR line to be left active by
  917.       entering:
  918.          TRREMOVE ON
  919.       and DTR can be forced off by entering:
  920.          TRREMOVE OFF
  921.       If either ON or OFF is specified, then TRREMOVE assumes you know what you
  922.       are doing and does not ask for confirmation even if a link is active,
  923.       allowing TRREMOVE to be used in a batch file on the host PC without
  924.       pausing for input.
  925.  
  926.  
  927. 7.2   TRHOSTC
  928.  
  929.       This program works much like TRHOSTIN, except that instead of modifying
  930.       files on disk it modifies the copy of TRHOST currently active in memory.
  931.       Not all parameters may be altered "on the fly" - for example, the COM
  932.       port cannot be altered mid-session. The anticipated use for this program
  933.       is to do things like turning private mode on or off for just part of a
  934.       session...
  935.  
  936.       Note that the copy of TRHOST.EXE on disk is not modified.
  937.  
  938.  
  939. 7.3   TRTALK
  940.  
  941.       TRTALK will allow the users at the host and replica computers to "talk"
  942.       to each other. Anything that is typed at the host computer is displayed
  943.       in the top half of the screen, and anything that is typed at the replica
  944.       computer is displayed in the bottom half of the screen.
  945.  
  946.       TRTALK sends a special command to TR to tell TR that talk mode is
  947.       required, so that TR will send keys in a way that can be distinguished
  948.       from the host keys. If this command is lost, then what is typed at either
  949.       end will appear in the top window! If this happens, simply exit TRTALK
  950.       (Alt-X) and run it again.
  951.  
  952.       TRTALK also sends a special command to TR to tell TR to end talk mode. If
  953.       this command is lost, then TR will behave normally unless a program that
  954.       uses shift-key status is run, which will cause problems because in talk
  955.       mode TR does not send shift status information! To correct this problem,
  956.       use local TR command <F2> (simulate carrier), since a side effect of this
  957.       command is to end talk mode.
  958.  
  959.  
  960. 7.4   TREXTS and TREXTR
  961.  
  962.       These programs are normally called from TRSZ.BAT and TRRZ.BAT
  963.       respectively. They allow a clean interface between TeleReplica and
  964.       external file transfer programs such as DSZ.
  965.  
  966.       These programs are an exception to the rule that TRHOSTIN installs only
  967.       programs used at the host end; TREXTS.EXE and TREXTR.EXE both need to run
  968.       at both ends, so they must be installed for the correct modem port etc on
  969.       the replica as well as the host.
  970.  
  971.       Once TRHOSTIN has installed these programs correctly on both the host and
  972.       the replica, and TRRZ.BAT, TRSZ.BAT and the external protocol program
  973.       (such as DSZ.EXE) are in some directory on the path of both the host and
  974.       replica, file transfer is quite simple:
  975.  
  976. 7.4.1 To download a file from the host PC to the replica PC, simply enter the
  977.       following command on the host PC:
  978.          trsz <filename> ...
  979.       and TR will automatically run TRRZ on the replica without you doing
  980.       anything!
  981.  
  982. 7.4.2 To upload a file from the replica PC to the host PC, first ensure that
  983.       the host PC is at the DOS command prompt. Then shell out of TR (using
  984.       local F9). Finally enter the following command on the replica PC:
  985.          trsz <filename> ...
  986.       and TRHOST will automatically run TRRZ on the host.
  987.  
  988.       TRRZ.BAT, TRSZ.BAT, TREXTS.EXE and TREXTR.EXE all pass parameters on to
  989.       the external protocol program, so parameters other than file names can be
  990.       used if desired.
  991.  
  992.       TREXTS.EXE and TREXTR.EXE recognize one special parameter:
  993.          #portx#
  994.       which will substitute in the DSZ portx <base>,<IRQ> command. This allows
  995.       TRRZ.BAT and TRSZ.BAT to remain unchanged even when TeleReplica is
  996.       installed for a different port. See the supplied TRRZ.BAT and TRSZ.BAT
  997.       for examples of this.
  998.  
  999.  
  1000. 7.5   TRMODSET
  1001.  
  1002.       Usage: TRMODSET [-fr] [filename]
  1003.  
  1004.       TRMODSET will send all the commands in TRMODSET.DAT (or in filename.DAT
  1005.       if specified) to the modem, waiting for an "OK" response to each command.
  1006.       This is useful to set up very complicated parameters necessary for some
  1007.       of the more sophisticated modems. It assumes a modem that uses the Hayes
  1008.       AT command set (at least at&f to restore factory defaults and OK in reply
  1009.       to a good command).
  1010.  
  1011.       The -r command line option will cause TRMODSET to start with an "at&f"
  1012.       command to reset the modem to factory defaults, just in case a previous
  1013.       program has left the modem in a peculiar state. The "at&f" is sent before
  1014.       TRMODSET starts monitoring for command echo or "OK" responses.
  1015.  
  1016.       If a carrier is present when TRMODSET runs then it will exit without
  1017.       doing anything unless the "-f" (for "force") command line argument is
  1018.       present. This allows TRMODSET to be run from AUTOEXEC.BAT without
  1019.       disrupting an existing connection if the host PC needs to be rebooted.
  1020.  
  1021.       Note that TRMODSET is installed by TRHOSTIN, so if you want to use
  1022.       TRMODSET on the replica PC you will need to install the host programs on
  1023.       the replica PC (once installed, the other host programs may be deleted,
  1024.       but they must be present for TRHOSTIN to run).
  1025.  
  1026.       Note also that you cannot use TRMODSET to set the modem to "no echo" or
  1027.       "quiet" modes, since TRMODSET monitors that commands are being echoed and
  1028.       that the modem is responding with "OK" to each command.
  1029.  
  1030.  
  1031. 7.6   TRCHECK
  1032.  
  1033.       TRCHECK checks to see if the current time is within a specified range,
  1034.       and returns the DOS errorlevel set to 0 if within the range and 1 if
  1035.       outside the range. The following code might appear in an AUTOEXEC.BAT
  1036.       file on a host computer:
  1037.          trcheck 9:00:00 17:00:00
  1038.          if not errorlevel 1 goto done
  1039.          trhost
  1040.          :done
  1041.       The effect of this is to first check to see if the time is between 9AM
  1042.       and 5PM. If so, then errorlevel is set to 0, and nothing further happens.
  1043.       However, if the time is not between 9 and 5, then trhost will be run.
  1044.  
  1045.       TRCHECK can also check the day of the week:
  1046.          trcheck mon
  1047.       will return errorlevel 0 if today is Monday, and errorlevel 1
  1048.       otherwise. Case is ignored, as are all characters beyond the
  1049.       first three.
  1050.  
  1051.       This has proved valuable when TRHOST must run on an office computer
  1052.       outside normal working hours, but the computer must be used normally
  1053.       during the day. See also scenario A5 for a further application.
  1054.  
  1055.  
  1056. 7.7   TRASK
  1057.  
  1058.       Usage: TRASK <timeout> <prompt> <answers>
  1059.  
  1060.       TRASK works much like a normal batch file enhancing ASK program, except
  1061.       that it has a timeout. This is useful when a computer will usually be
  1062.       used as a TeleReplica host, but sometimes must be used locally. Rather
  1063.       than having to boot from a different disk, the following code might
  1064.       appear in an AUTOEXEC.BAT file on a host computer:
  1065.          @echo off
  1066.          path c:\tr
  1067.          trask 5 "Do you want to load TRHOST? (y/n)\a\a: " "yn"
  1068.          if errorlevel 1 goto no
  1069.          trhost
  1070.          :no
  1071.       The effect of this is to run TRHOST if the user presses the 'y' key or if
  1072.       no key has been pressed after 5 seconds. If a user is at the computer and
  1073.       answers 'n' then TRHOST will not be loaded. See scenario A5 for an
  1074.       example of this.
  1075.  
  1076.       TRASK returns an errorlevel that depends on the <answers> string: the
  1077.       first letter in this string (or a timeout) returns error level 0, the
  1078.       second returns error level 1 and so on. Case is not significant unless
  1079.       the <answers> string contains the same letter in both upper and lower
  1080.       case.
  1081.  
  1082.       TRASK is a public domain program and may be distributed separately.
  1083.  
  1084.  
  1085. 7.8   TRSPEED
  1086.  
  1087.       Usage: TRSPEED <speed>
  1088.  
  1089.       TRSPEED will set the display update speed of the current (most
  1090.       recently loaded) TRHOST in memory. The speed is specified in bits
  1091.       per second (bps). Usually TRHOST will use the same speed the COM
  1092.       port has been set for, since this gives the fastest possible
  1093.       performance and response time. However, under some circumstances it
  1094.       may be desirable to set a different update speed:
  1095.           1.   A lower update speed will mean that TRHOST uses less CPU
  1096.                time, since it will not try to update as much of the screen
  1097.                at every clock interrupt. This can be important for
  1098.                applications which are very CPU-intensive and time-critical,
  1099.                when display update speed is not important.
  1100.           2.   A higher update speed will mean that TRHOST buffers up more
  1101.                screen data than the COM port can transmit. The effect of
  1102.                this is to slow down the response time to screen changes,
  1103.                since TRHOST will still be catching up with old screen
  1104.                changes. However, operations such as directory scrolling can
  1105.                be made to appear smoother if response time is not important.
  1106.       If no speed is specified, TRSPEED reports the current speed without
  1107.       changing it.
  1108.  
  1109. 7.9   TRSTATUS
  1110.  
  1111.       Usage: TRSTATUS [help | quiet | messages]
  1112.  
  1113.       TRSTATUS reports on the status of TRHOST. If no argument is
  1114.       specified, it displays instructions. The options are:
  1115.         help:       displays the meanings of the exit status values
  1116.         quiet:      does nothing but return an exit status value
  1117.         messages:   displays a message stating TRHOST's current status
  1118.       The possible exit status values are:
  1119.         0    TRHOST is not loaded
  1120.         1    Some other TR program (not TRHOST) is loaded
  1121.         2    TRHOST is loaded but not active
  1122.         3    TRHOST is loaded and a session is active
  1123.       This program can be used in a batch file to take alternative
  1124.       action depending on what TRHOST is doing.
  1125.  
  1126.  
  1127. APPENDIX A - Configuration Scenarios
  1128.  
  1129.       The following are specific situations in which TeleReplica has been used.
  1130.       The descriptions of the situations, and the resulting configurations of
  1131.       TeleReplica, are presented in detail. It is hoped that seeing the way
  1132.       TeleReplica was installed in some typical applications will help when it
  1133.       comes to installing TR for your own situation.
  1134.  
  1135.       Note that unless otherwise stated, all modems are assumed initially to be
  1136.       in the TeleReplica default state, to be connected to the PC via a 25-way
  1137.       straight-through modem cable, and to be Hayes-AT-command-compatible. To
  1138.       get a Hayes-AT-command-compatible modem into the TeleReplica default
  1139.       state the following commands should be sent to the modem using any normal
  1140.       communications program (or using TRMODSET):
  1141.          at &f      restore modem to "factory default"
  1142.          at &c1     modem should report true carrier status
  1143.          at &d2     modem should take notice of DTR to hang up 'phone
  1144.          at x4      (optional) give detailed status messages etc
  1145.          at &w      save current state for future use (the state is saved in
  1146.                     non-volatile RAM, so that this setup only needs to be done
  1147.                     once unless some other program interferes)
  1148.  
  1149.       To ensure that TeleReplica is talking to the modem, I recommend the
  1150.       following sequence (at both the host and the replica PC):
  1151.          1.  Run TRHOSTIN and select the COM port and IRQ line that are
  1152.              connected to your modem (use the X option first to have TRHOSTIN
  1153.              search your hardware for available ports and active IRQ lines).
  1154.          2.  Set the "baud" rate to the appropriate speed for your modem.
  1155.          3.  Save the configuration.
  1156.          4.  Run TRMODSET. This not only sets the modem into a reasonable state
  1157.              for TeleReplica, but in doing so it will confirm (if everything is
  1158.              OK) or deny (if it reports an ERROR) that you have indeed selected
  1159.              the right address and interrupt for your modem. There is no point
  1160.              in proceeding further until TRMODSET will run and report
  1161.              everything OK.
  1162.  
  1163.  
  1164. A1.   Consultant/Client via Modem
  1165.  
  1166. A1.1  Here the consultant is running a 2400 bps modem connected to COM1, and
  1167.       the client (whom we will call Fred) is running a similar modem also
  1168.       connected to COM1. Both computers are equipped with EGA color display
  1169.       cards. The consultant will be performing the TRHOST installation for the
  1170.       client, and then sending the client the installed version ready to run.
  1171.  
  1172.       When the client wants help, he will call the consultant (a normal voice
  1173.       call). When both parties are ready TeleReplica must take over the call.
  1174.  
  1175. A1.2  First the consultant must run TRHOSTIN, and make the changes necessary to
  1176.       achieve the following display:
  1177.       ╔══════════════════════════════════════════════════════════════════╗
  1178.       ║ TeleReplica Host 4.26 Installation Copyright (c) Douglas Thomson ║
  1179.       ║    A. Select serial port (currently COM1)                        ║
  1180.       ║    B. Change password (currently "Fred's password")              ║
  1181.       ║    C. Change modem initialization string (currently:             ║
  1182.       ║       "")                                                        ║
  1183.       ║    D. Change modem dialling format string (currently:            ║
  1184.       ║       "ata\r")                                                   ║
  1185.       ║    E. Select maximum "baud" rate (currently 2400)                ║
  1186.       ║    F. Use modem CARRIER DETECT signal (currently YES)            ║
  1187.       ║    G. Flow control (currently NONE)                              ║
  1188.       ║    H. Generate INT 9 on each key (currently NO)                  ║
  1189.       ║    I. Respond to modem RING signal (currently NO)                ║
  1190.       ║    J. Reboot on loss of carrier (currently NO)                   ║
  1191.       ║    K. Synchronize "baud" rate (currently YES)                    ║
  1192.       ║    L. Send wakeup every 2 minutes (currently NO)                 ║
  1193.       ║    M. Private mode (currently NO)                                ║
  1194.       ║    N. Printer redirection (currently HOST)                       ║
  1195.       ║    O. Maximum call length (currently unlimited)                  ║
  1196.       ║    P. Create consistent .TR file                                 ║
  1197.       ║    Q. Abandon changes                                            ║
  1198.       ║    S. Save changes and leave installation program                ║
  1199.       ║ Selection:                                                       ║
  1200.       ╚══════════════════════════════════════════════════════════════════╝
  1201.       Refer to section 4 for the meaning of each option. Since both modems run
  1202.       at the same speed it does not matter whether "baud" rates get
  1203.       synchronized or not. Since Fred will only run TRHOST when he wishes to
  1204.       get help from the consultant, the password is not important. The modem
  1205.       dialling format string simply answers the 'phone - or more accurately,
  1206.       since the 'phone will already be in use for the voice call, it causes the
  1207.       modem to take over the call in "answer" mode.
  1208.  
  1209.       Next the consultant selects option P from the main menu, and enters the
  1210.       name of the configuration file he wishes to use for Fred:
  1211.       ╔══════════════════════════════════════════════════════════════════╗
  1212.       ║ TeleReplica Host Program .TR File Name Selection                 ║
  1213.       ║                                                                  ║
  1214.       ║ Edit existing string:                                            ║
  1215.       ║ fred                                                             ║
  1216.       ╚══════════════════════════════════════════════════════════════════╝
  1217.  
  1218.       Finally the consultant exits TRHOSTIN by selecting option S to save the
  1219.       changes. The consultant can now send Fred a disk with all the installed
  1220.       TeleReplica files on it (note that the consultant should also send Fred
  1221.       an unaltered original copy of the TeleReplica files in case Fred wants to
  1222.       pass them on to anyone - see the LICENCE.DOC file for details).
  1223.  
  1224. A1.3  Now the consultant needs to edit the file named FRED.TR to make a few
  1225.       alterations (TRHOSTIN only provides a starting point...). In particular,
  1226.       the following line must be changed:
  1227.          ""                Connect command for modem
  1228.       to:
  1229.          "at d\r"          Connect command for modem
  1230.       This command tells the modem to go "off hook" and take over the call in
  1231.       "originate" mode.
  1232.  
  1233.       This completes the installation stage.
  1234.  
  1235. A1.4  When Fred wants some help, he will run TRHOST and then 'phone the
  1236.       consultant and explain the problem. When the consultant is ready, he will
  1237.       enter the command:
  1238.          TR FRED
  1239.       and then instruct Fred to enter the command:
  1240.          TRDIAL
  1241.       and hang up the 'phone as soon as he (Fred) hears his modem making a
  1242.       "screaming" noise. After giving these instructions (and thus while Fred
  1243.       is still typing) the consultant will hang up his 'phone. Fred will finish
  1244.       entering the TRDIAL command, and hang up when he hears the screaming
  1245.       noise. TeleReplica will then take over the call, synchronize "baud"
  1246.       rates, exchange passwords, and give the consultant control of Fred's
  1247.       computer.
  1248.  
  1249. A1.5  When the consultant is finished, he will exit TR using option 3, which
  1250.       will cause the modem to hang up and terminate the 'phone call.
  1251.  
  1252.       Fred can either leave TRHOST running (it will do no harm, and uses only a
  1253.       little over 10K of memory), or else use TRREMOVE to uninstall TRHOST.
  1254.  
  1255.  
  1256. A2.   Remote/Shared via Modem
  1257.  
  1258. A2.1  Here a remote user wishes to connect into a local area network, and one
  1259.       node in the LAN is dedicated to this purpose. The main problem is that
  1260.       since the LAN node will be unattended, all it takes is one user to run a
  1261.       program which "hangs" the computer, and then no-one will be able to dial
  1262.       in until someone pushes the reset button on the node PC! However, in this
  1263.       scenario there is a modem-controlled switch box which turns on power to
  1264.       the node PC as soon as the 'phone starts ringing, and leaves the power on
  1265.       until either a minute or so has elapsed with no carrier being
  1266.       established, or until the carrier is lost (which will happen when the
  1267.       remote user hangs up). [These switch boxes are (I believe) commercially
  1268.       available, and indeed the electronics required is trivial to someone who
  1269.       feels at home with circuit diagrams and a soldering iron. We have several
  1270.       home-made ones in use here at MUCG.] This means there is no problem if a
  1271.       user "hangs" the computer; just hang up and then dial in again, and the
  1272.       computer will have been powered down and come up again clean!
  1273.  
  1274.       Since many users must share the remote access PC, the duration of a
  1275.       session is to be limited so that one user cannot tie up the line for more
  1276.       than 30 minutes.
  1277.  
  1278.       The node PC has a 2400 bps modem connected to COM2, and the remote user
  1279.       is running a 1200 bps modem connected to COM1. The node PC is equipped
  1280.       with a CGA color display card (with no monitor required). The remote PC
  1281.       is equipped with a Hercules monochrome display.
  1282.  
  1283.       The LAN manager will be performing the TRHOST installation for the node
  1284.       PC, and then providing all the remote users with a disk that is almost
  1285.       ready to go.
  1286.  
  1287.       The 'phone number of the node PC is 123 4567.
  1288.  
  1289. A2.2  First the LAN manager must run TRHOSTIN, and make the changes necessary
  1290.       to achieve something like the following display:
  1291.       ╔══════════════════════════════════════════════════════════════════╗
  1292.       ║ TeleReplica Host 4.26 Installation Copyright (c) Douglas Thomson ║
  1293.       ║    A. Select serial port (currently COM2)                        ║
  1294.       ║    B. Change password (currently "sdggsdjgxvwept9m,.mvikjdsdh")  ║
  1295.       ║    C. Change modem initialization string (currently:             ║
  1296.       ║       "\rata\r")                                                 ║
  1297.       ║    D. Change modem dialling format string (currently:            ║
  1298.       ║       "\r%s\r")                                                  ║
  1299.       ║    E. Select maximum "baud" rate (currently 2400)                ║
  1300.       ║    F. Use modem CARRIER DETECT signal (currently YES)            ║
  1301.       ║    G. Flow control (currently NONE)                              ║
  1302.       ║    H. Generate INT 9 on each key (currently NO)                  ║
  1303.       ║    I. Respond to modem RING signal (currently NO)                ║
  1304.       ║    J. Reboot on loss of carrier (currently NO)                   ║
  1305.       ║    K. Synchronize "baud" rate (currently YES)                    ║
  1306.       ║    L. Send wakeup every 2 minutes (currently NO)                 ║
  1307.       ║    M. Private mode (currently YES)                               ║
  1308.       ║    N. Printer redirection (currently REPLICA)                    ║
  1309.       ║    O. Maximum call length (currently 1800 s)                     ║
  1310.       ║    P. Create consistent .TR file                                 ║
  1311.       ║    Q. Abandon changes                                            ║
  1312.       ║    S. Save changes and leave installation program                ║
  1313.       ║ Selection:                                                       ║
  1314.       ╚══════════════════════════════════════════════════════════════════╝
  1315.       Refer to section 4 for the meaning of each option. Note that the modem
  1316.       initialization string answers the 'phone - this is nice in the case of
  1317.       timed call charges, since the remote user does not pay for the time it
  1318.       takes the PC to boot. Since some remote users will dial in at 2400 bps,
  1319.       TRHOST must be installed for 2400; but since other remote users will dial
  1320.       in at 1200 bps it is essential that "baud" rates get synchronized. Since
  1321.       anyone could try to get into the LAN via the node PC the password is very
  1322.       important - notice that it is both long and quite random. The LAN node PC
  1323.       is in a public location, so the screen is blanked and keyboard locked for
  1324.       privacy. Printer output is sent back home to the users. The maximum
  1325.       session length allowed is set to 1800 seconds (30 minutes).
  1326.  
  1327.       Next the LAN manager selects option P from the main menu, and enters the
  1328.       name of the configuration file he wishes to use for the node PC:
  1329.       ╔══════════════════════════════════════════════════════════════════╗
  1330.       ║ TeleReplica Host Program .TR File Name Selection                 ║
  1331.       ║                                                                  ║
  1332.       ║ Edit existing string:                                            ║
  1333.       ║ lan1                                                             ║
  1334.       ╚══════════════════════════════════════════════════════════════════╝
  1335.  
  1336.       Finally the LAN manager exits TRHOSTIN by selecting option S to save the
  1337.       changes. He can now make up a disk with all the installed TeleReplica
  1338.       files on it to give to the remote users, but first he must edit the
  1339.       LAN1.TR file to install the node PC's 'phone number. This means changing
  1340.       the line:
  1341.          ""                Connect command for modem
  1342.       to:
  1343.          "at d 123 4567\r" Connect command for modem
  1344.       so that when remote users run TR the number will be dialled
  1345.       automatically.
  1346.  
  1347.       Also, since modems more often use COM1 than COM2, the LAN manager should
  1348.       probably edit the line:
  1349.          02F8/IRQ3         Communications port (COMn or base/interrupt)
  1350.       to become:
  1351.          "COM1"            Communications port (COMn or base/interrupt)
  1352.  
  1353. A2.3  Now the remote user needs to edit his personal copy of the file named
  1354.       LAN1.TR to work at 1200 bps. The line containing:
  1355.          2400              "Baud" rate (typically 2400 or 19200)
  1356.       must be changed to:
  1357.          1200              "Baud" rate (typically 2400 or 19200)
  1358.  
  1359.       This completes the installation stage.
  1360.  
  1361. A2.4  When the remote user wishes to connect into the LAN, he will enter the
  1362.       command:
  1363.          TR LAN1
  1364.       This will cause the modem to dial the node PC, which will cause the modem
  1365.       switch box to turn on the power to the node PC, which will boot and then
  1366.       run TRHOST, which will make the node PC's modem answer the call.
  1367.       TeleReplica will then synchronize "baud" rates, exchange passwords, and
  1368.       give the remote user control of the node PC.
  1369.  
  1370. A2.5  When the remote user is finished, he will exit TR using option 3, which
  1371.       will cause the modem to hang up and terminate the 'phone call. The node
  1372.       PC will then be powered down until the next call.
  1373.  
  1374.  
  1375. A3.   Laptop/Desktop via Direct Cable
  1376.  
  1377. A3.1  Here someone wishes to connect a laptop computer to a desktop computer
  1378.       via a three-wire null modem cable. The reason for this is that the
  1379.       desktop only has a 5.25" disk, and the laptop only has a 3.5" disk, and
  1380.       it is necessary to transfer files between the two systems. The desktop
  1381.       computer is a 20MHz 80386, and the laptop is a 12MHz 80286. The cable is
  1382.       connected from COM1 on the desktop to COM1 on the laptop. The desktop has
  1383.       a VGA color display; the laptop has a gas plasma display that emulates
  1384.       EGA.
  1385.  
  1386.       It does not matter which PC is the host, but for the sake of this example
  1387.       we will assume the desk PC will be the host.
  1388.  
  1389.       The laptop computer has its <Del> key right next to <RightShift>, so the
  1390.       user does not wish to be using <Ctrl-Alt-LeftShift-RightShift> for fear
  1391.       of accidentally rebooting the computer. <Ctrl-Alt-LeftShift> seems a
  1392.       safer combination.
  1393.  
  1394. A3.2  First the user must run TRHOSTIN, and make the changes necessary to
  1395.       achieve something like the following display:
  1396.       ╔══════════════════════════════════════════════════════════════════╗
  1397.       ║ TeleReplica Host 4.26 Installation Copyright (c) Douglas Thomson ║
  1398.       ║    A. Select serial port (currently COM1)                        ║
  1399.       ║    B. Change password (currently "password")                     ║
  1400.       ║    C. Change modem initialization string (currently:             ║
  1401.       ║       "")                                                        ║
  1402.       ║    D. Change modem dialling format string (currently:            ║
  1403.       ║       "")                                                        ║
  1404.       ║    E. Select maximum "baud" rate (currently 38400)               ║
  1405.       ║    F. Use modem CARRIER DETECT signal (currently NO)             ║
  1406.       ║    G. Flow control (currently NONE)                              ║
  1407.       ║    H. Generate INT 9 on each key (currently NO)                  ║
  1408.       ║    I. Respond to modem RING signal (currently NO)                ║
  1409.       ║    J. Reboot on loss of carrier (currently NO)                   ║
  1410.       ║    K. Synchronize "baud" rate (currently NO)                     ║
  1411.       ║    L. Send wakeup every 2 minutes (currently NO)                 ║
  1412.       ║    M. Private mode (currently NO)                                ║
  1413.       ║    N. Printer redirection (currently HOST)                       ║
  1414.       ║    O. Maximum call length (currently unlimited)                  ║
  1415.       ║    P. Create consistent .TR file                                 ║
  1416.       ║    Q. Abandon changes                                            ║
  1417.       ║    S. Save changes and leave installation program                ║
  1418.       ║ Selection:                                                       ║
  1419.       ╚══════════════════════════════════════════════════════════════════╝
  1420.       Refer to section 4 for the meaning of each option. Notice that the "baud"
  1421.       rate is set to 38400 for fast file transfers (this works well on my test
  1422.       system, but slower speeds may be needed on other systems - experiment!).
  1423.       Obviously here the password is not important. Since the three-wire cable
  1424.       will not provide any carrier information, it is essential that carrier be
  1425.       ignored.
  1426.  
  1427.       Next the user selects option P from the main menu, and enters the name of
  1428.       the configuration file he wishes to use for the desktop:
  1429.       ╔══════════════════════════════════════════════════════════════════╗
  1430.       ║ TeleReplica Host Program .TR File Name Selection                 ║
  1431.       ║                                                                  ║
  1432.       ║ Edit existing string:                                            ║
  1433.       ║ desk                                                             ║
  1434.       ╚══════════════════════════════════════════════════════════════════╝
  1435.  
  1436.       Finally the user exits TRHOSTIN by selecting option S to save the
  1437.       changes.
  1438.  
  1439. A3.3  Next the user needs to edit the file named DESK.TR to use the shift key
  1440.       combination required for the laptop. The line containing:
  1441.          "LRCA"            Local command shifts (Left, Right, Ctrl, Alt)
  1442.       must be changed to:
  1443.          "LCA"             Local command shifts (Left, not Right, Ctrl, Alt)
  1444.  
  1445.       The user can now copy the installed files onto a 5.25" floppy disk, take
  1446.       the disk to a computer that has both 5.25" and 3.5" inch drives, and copy
  1447.       the file onto a 3.5" disk for the laptop.
  1448.  
  1449.       This completes the installation stage.
  1450.  
  1451. A3.4  When the user wishes to connect the two computers, he will enter the
  1452.       command:
  1453.          TRHOST
  1454.       on the desktop, and the command:
  1455.          TR DESK
  1456.       on the laptop. This will cause TeleReplica to exchange passwords and give
  1457.       the user control of the desktop computer from the laptop. Files can now
  1458.       be transfered at almost 3.8K per second!
  1459.  
  1460. A3.5  When the user is finished, he will exit TR using option 3, which will
  1461.       take the laptop back to normal, but leave TRHOST in the desktop's memory
  1462.       (see A1.5 for further discussion of this).
  1463.  
  1464.  
  1465. A4.   Remote/Shared via Common Mini-computer
  1466.  
  1467. A4.1  Here a remote user wishes to connect into a local area network, and one
  1468.       node in the LAN is dedicated to this purpose. There is no direct link
  1469.       between the PCs; instead, both the node PC and the remote user must log
  1470.       into the same mini-computer and run a link program (such as trfifo) to
  1471.       establish a connection via the mini-computer.
  1472.  
  1473.       One problem is that since the LAN node will be unattended, all it takes
  1474.       is one user to run a program which "hangs" the computer, and then no more
  1475.       remote users will be able to connect to the LAN until someone pushes the
  1476.       reset button on the node PC! (Note that TeleReplica does support
  1477.       rebooting the host PC, but this can only work if interrupts are not
  1478.       disabled and if the relevant code has not been overwritten. As a rule,
  1479.       TeleReplica can get out of any situation that <Ctrl-Alt-Del> could get
  1480.       out of, but if the hardware reset button was needed TR would be
  1481.       helpless.)
  1482.  
  1483.       Another potential problem is that if one user exits TR while still logged
  1484.       in to the LAN, then the next user could pick up the session! This is
  1485.       avoided by having the link program send a "reboot" command to the node PC
  1486.       when the link is broken.
  1487.  
  1488.       Trfifo cannot pass BREAKs from one end to the other; instead, BREAK is
  1489.       used to terminate the execution of trfifo. This means that TR must not
  1490.       send a BREAK unless it wants to kill the link.
  1491.  
  1492.       To make life complicated, the mini-computer will automatically disconnect
  1493.       any terminal that does no input or output for 5 minutes. However, the
  1494.       node PC must remain connected to the mini-computer all day waiting for
  1495.       remote users to connect in.
  1496.  
  1497.       The mini-computer links are set at 9600 bps, and cannot be changed. Both
  1498.       computers are connected to the mini-computer via COM1, and both computers
  1499.       are running color displays (however, the dedicated node PC requires no
  1500.       monitor).
  1501.  
  1502.       The LAN manager will be performing the TRHOST installation for the node
  1503.       PC, and then providing all the remote users with a disk that is almost
  1504.       ready to go.
  1505.  
  1506. A4.2  First the LAN manager must run TRHOSTIN, and make the changes necessary
  1507.       to achieve something like the following display:
  1508.       ╔══════════════════════════════════════════════════════════════════╗
  1509.       ║ TeleReplica Host 4.26 Installation Copyright (c) Douglas Thomson ║
  1510.       ║    A. Select serial port (currently COM1)                        ║
  1511.       ║    B. Change password (currently "sdfddffgjkiou77hgsduh875sdh")  ║
  1512.       ║    C. Change modem initialization string (currently:             ║
  1513.       ║       "")                                                        ║
  1514.       ║    D. Change modem dialling format string (currently:            ║
  1515.       ║       "")                                                        ║
  1516.       ║    E. Select maximum "baud" rate (currently 9600)                ║
  1517.       ║    F. Use modem CARRIER DETECT signal (currently NO)             ║
  1518.       ║    G. Flow control (currently NONE)                              ║
  1519.       ║    H. Generate INT 9 on each key (currently NO)                  ║
  1520.       ║    I. Respond to modem RING signal (currently NO)                ║
  1521.       ║    J. Reboot on loss of carrier (currently NO)                   ║
  1522.       ║    K. Synchronize "baud" rate (currently NO)                     ║
  1523.       ║    L. Send wakeup every 2 minutes (currently YES)                ║
  1524.       ║    M. Private mode (currently YES)                               ║
  1525.       ║    N. Printer redirection (currently REPLICA)                    ║
  1526.       ║    O. Maximum call length (currently unlimited)                  ║
  1527.       ║    P. Create consistent .TR file                                 ║
  1528.       ║    Q. Abandon changes                                            ║
  1529.       ║    S. Save changes and leave installation program                ║
  1530.       ║ Selection:                                                       ║
  1531.       ╚══════════════════════════════════════════════════════════════════╝
  1532.       Refer to section 4 for the meaning of each option. The password is not so
  1533.       critical here, since a user must be able to log into the mini-computer
  1534.       before getting through to the node PC. The mini-computer line will not
  1535.       provide any carrier information, so this must be ignored. "Baud" rates
  1536.       must NOT be synchronized, since a NULL character transmitted at 2400 bps
  1537.       would be received as a BREAK by the mini-computer at 9600 bps! To avoid
  1538.       the node PC getting logged out, TRHOST must send a NULL character to
  1539.       "wake up" the mini-computer every few minutes. This will be ignored by
  1540.       TR. Printer output is redirected back to the users. The LAN PC is run
  1541.       with screen blank and keyboard dead for added privacy and security.
  1542.  
  1543.       Next the LAN manager selects option P from the main menu, and enters the
  1544.       name of the configuration file he wishes to use for the node PC:
  1545.       ╔══════════════════════════════════════════════════════════════════╗
  1546.       ║ TeleReplica Host Program .TR File Name Selection                 ║
  1547.       ║                                                                  ║
  1548.       ║ Edit existing string:                                            ║
  1549.       ║ lan2                                                             ║
  1550.       ╚══════════════════════════════════════════════════════════════════╝
  1551.  
  1552.       Finally the LAN manager exits TRHOSTIN by selecting option S to save the
  1553.       changes. He can now make up a disk with all the installed TeleReplica
  1554.       files on it to give to the remote users.
  1555.  
  1556. A4.3  Due to the way trfifo buffers input (or possibly some other peculiarity
  1557.       of our mini-computer?) the delay between sending keys needs to be 165 ms
  1558.       to avoid losing characters! Therefore, the line containing:
  1559.          56                Time to wait between "typing" keys (ms)
  1560.       must be changed to:
  1561.          165               Time to wait between "typing" keys (ms)
  1562.  
  1563.       Also, since we are using a mini-computer link, the line containing:
  1564.          "DIRECT"          Type of link (MODEM, DIRECT, or OTHER)
  1565.       must be changed to:
  1566.          "OTHER"           Type of link (MODEM, DIRECT, or OTHER)
  1567.  
  1568.       Finally, TR is capable of automating the mini-computer login process. If
  1569.       this is desired, then something like the following lines must be added at
  1570.       the end of the file:
  1571.          "DISCONNECTED"      "\D250\r"            "\r"    5000
  1572.          "Enter RESOURCE ? " "\D100G9000\r"       "\r"    5000
  1573.          "CONNECTED TO"      ""                   ""      5000
  1574.          "login: "           "\D100doug\r"        "\B\r"   500
  1575.          "Password:"         "\D100password\r"    "\r"   10000
  1576.          "Selection: "       "\D100d\r"           ""     40000
  1577.          "/users/doug>"      "\D100trfifo lan2\r" ""     40000
  1578.          "and run TR"        "\D1000"             ""     40000
  1579.       The exact strings will depend on the mini-computer. This example (apart
  1580.       from the password) works for the author.
  1581.  
  1582.       This completes the installation stage.
  1583.  
  1584. A4.4  When the remote user wishes to connect into the LAN, he will run TR:
  1585.          TR LAN2
  1586.       which will automatically log into the mini-computer and run trfifo to
  1587.       connect to the node PC (in this case lan2).
  1588.  
  1589.       TeleReplica will then exchange passwords and give the remote user control
  1590.       of the node PC.
  1591.  
  1592. A4.5  When the remote user is finished, he will exit TR using option 3, which
  1593.       will send a BREAK to the mini-computer. This will terminate the trfifo
  1594.       program which the remote user was running. The trfifo program that the
  1595.       node PC was running will detect that this has happened, and send a
  1596.       TeleReplica reboot command to the node PC to ensure that the next user
  1597.       cannot pick up anything the previous user left running. The node PC's
  1598.       trfifo program will then prepare for the next remote user. The node PC
  1599.       will complete rebooting, and run TRHOST from AUTOEXEC.BAT ready for the
  1600.       next remote login.
  1601.  
  1602.       [All this sounds complicated, but we used this system daily here at MUCG
  1603.       for some staff who had mini-computer lines but were too far away for LAN
  1604.       connections.]
  1605.  
  1606.  
  1607. A5.   Home/Office via Modem
  1608.  
  1609. A5.1  Here a user wishes to dial in from home and take over the PC on his desk
  1610.       at work. The office PC has a USR Courier V32bis/V42bis modem connected to
  1611.       COM2, and the home PC has an identical modem connected to COM1. The
  1612.       office PC is equipped with an EGA color display, and the home PC is
  1613.       equipped with a Hercules monochrome display.
  1614.  
  1615.       One problem is that since the office PC will be unattended, all it takes
  1616.       is for the user to run a program which "hangs" the computer, and that
  1617.       will be the end of the office PC until the user goes back to work and
  1618.       presses the reset button! (Note that TeleReplica does support rebooting
  1619.       the host PC, but this can only work if interrupts are not disabled and if
  1620.       the relevant code has not been overwritten. As a rule, TeleReplica can
  1621.       get out of any situation that <Ctrl-Alt-Del> could get out of, but if the
  1622.       hardware reset button was needed TR would be helpless.)
  1623.  
  1624.       Since the user is putting in overtime working at night without getting
  1625.       paid for it, it seems reasonable that the office 'phone should at least
  1626.       pay for the call. However, how can the office computer know when to call
  1627.       the user at home? One possibility would be to set up a batch file to run
  1628.       TRDIAL at a predetermined time. However, it would be better if the user
  1629.       could choose any convenient time. TeleReplica can achieve this by
  1630.       monitoring the RING signal from the modem, and responding appropriately.
  1631.       The basic idea is that the user will dial the office number, and then
  1632.       hang up as soon as the 'phone starts ringing. TeleReplica will detect the
  1633.       'phone ringing, and respond by calling the user at home.
  1634.  
  1635.       Since the user does not want to be bothered by nuisance calls from the
  1636.       office computer, TeleReplica needs to be quite selective about the ring
  1637.       patterns it will respond to. Too short a ring may mean a telephone
  1638.       company routine line test. Too long a ring will mean a person trying to
  1639.       ring the office.
  1640.  
  1641.       The 'phone number of the office PC is 123 4567.
  1642.       The 'phone number of the home PC is 765 4321.
  1643.  
  1644. A5.2  First the user must run TRHOSTIN, and make the changes necessary to
  1645.       achieve something like the following display:
  1646.       │═══════════════════════════════════════════════════════════════════════╗
  1647.       │plica Host 4.26 Installation Copyright (c) 1992 Douglas Thomson        ║
  1648.       │Select serial port (currently COM2)                                    ║
  1649.       │Change password (currently "fhkjeuyibn45938eh8fdfff631wjds874dffd")    ║
  1650.       │Change modem initialization string (currently:                         ║
  1651.       │"at &B1 &H1 S0=0\r")                                                   ║
  1652.       │Change modem dialling format string (currently:                        ║
  1653.       │"\r%s\r")                                                              ║
  1654.       │Select maximum "baud" rate (currently 38400)                           ║
  1655.       │Use modem CARRIER DETECT signal (currently YES)                        ║
  1656.       │Flow control (currently CTS)                                           ║
  1657.       │Generate INT 9 on each key (currently NO)                              ║
  1658.       │Respond to modem RING signal (currently YES)───┬─ 1. too short  220 ms ║
  1659.       │Reboot on loss of carrier (currently YES)      ├─ 2. too long  5000 ms ║
  1660.       │Synchronize "baud" rate (currently NO)         ├─ 3. delay    10000 ms ║
  1661.       │Send wakeup every 2 minutes (currently NO)     ├─ 4. reset    10000 ms ║
  1662.       │Private mode (currently YES)                   ├─ 5. send to modem     ║
  1663.       │Printer redirection (currently REPLICA)        └─ 6. response ─┐       ║
  1664.       │Maximum call length (currently unlimited)            "atdt 765 4321\r" ║
  1665.       │Create consistent .TR file                                             ║
  1666.       │Abandon changes                                                        ║
  1667.       │Save changes and leave installation program                            ║
  1668.       │ion:                                                                   ║
  1669.       │═══════════════════════════════════════════════════════════════════════╝
  1670.       Refer to section 4 for the meaning of each option.
  1671.  
  1672.       Since anyone could try to get into the office PC the password is
  1673.       important - notice that it is both long and quite random.
  1674.  
  1675.       The modem initialisation string changes a USR V32bis modem from its
  1676.       factory default settings to the following:
  1677.          &B1   Fixed DTE/DCE rate. This means that the modem will always talk
  1678.                to the PC at 38400 bps, regardless of what kind of telephone
  1679.                connection is made.
  1680.          &H1   Hardware flow control when transmitting data to the modem (no
  1681.                flow control is needed in the other direction, since
  1682.                TeleReplica can keep up with data arriving at 38400 bps).
  1683.          S0=0  The office phone should never answer calls.
  1684.  
  1685.       Since the modem can transmit 1700 bytes per second, and V42bis
  1686.       compression may improve this to around 3400 bytes per second for things
  1687.       like screen updates, the "baud" rate should be at least 34000 bps, and
  1688.       38400 is the lowest speed over 34000 that the modems can accommodate.
  1689.  
  1690.       It is essential that TRHOST takes notice of the CD signal, since the host
  1691.       computer will be automatically rebooted if the carrier is lost (see
  1692.       below).
  1693.  
  1694.       Flow control is essential, since the PC will be sending data to the modem
  1695.       at 38400 bps and the modem can only guarantee to get rid of it at about
  1696.       17000 bps! Hardware flow control (CTS) is selected to match the modem
  1697.       configuration.
  1698.  
  1699.       The inter-character gap should be set to a fairly long time; the modems
  1700.       support error correction, so TRHOST should be patient and give the modems
  1701.       time to sort out problems introduced by line noise. 5-10 seconds is a
  1702.       reasonable time:
  1703.       ╔══════════════════════════════════════════════════════════╗
  1704.       ║ TeleReplica Host Program Flow Control Selection          ║
  1705.       ║                                                          ║
  1706.       ║    0. Completed, no (further) change                     ║
  1707.       ║    1. No flow control                                    ║
  1708.       ║ => 2. Hardware (RTS/CTS) flow control                    ║
  1709.       ║    3. Software (XON/XOFF) flow control                   ║
  1710.       ║    4. Both hardware and software flow control            ║
  1711.       ║    5. Set inter-character gap time (currently 5000 ms)   ║
  1712.       ║                                                          ║
  1713.       ║ Selection:                                               ║
  1714.       ╚══════════════════════════════════════════════════════════╝
  1715.  
  1716.       The host computer is to monitor the 'phone ringing and respond
  1717.       accordingly (again, see below).
  1718.  
  1719.       "Baud" rate synchronization is not appropriate here, since the DTE/DCE
  1720.       speed is locked.
  1721.  
  1722.       The host is set in PRIVATE mode so that no-one walking through the office
  1723.       can read what is on the screen or type commands on the keyboard (very
  1724.       useful if the user will be logging into a LAN as SUPERVISOR!).
  1725.  
  1726.       Printer output is redirected to the replica PC, so that any printout
  1727.       comes out at home rather than in the office.
  1728.  
  1729.       Next the user selects option P from the main menu, and enters the name of
  1730.       the configuration file he wishes to use for the office:
  1731.       ╔══════════════════════════════════════════════════════════════════╗
  1732.       ║ TeleReplica Host Program .TR File Name Selection                 ║
  1733.       ║                                                                  ║
  1734.       ║ Edit existing string:                                            ║
  1735.       ║ office                                                           ║
  1736.       ╚══════════════════════════════════════════════════════════════════╝
  1737.  
  1738.       Finally the user exits TRHOSTIN by selecting option S to save the
  1739.       changes. He can now make up a disk with all the installed TeleReplica
  1740.       files on it to take home.
  1741.  
  1742.       Before leaving the office, the user must ensure that AUTOEXEC.BAT has the
  1743.       directory containing all the TeleReplica files on the path, and that
  1744.       TRHOST is run whenever the system boots. However, when the user is at the
  1745.       office he will not want TRHOST loaded, so AUTOEXEC.BAT should contain
  1746.       something like:
  1747.          prompt $p$g
  1748.          path c:\tr
  1749.          trask 5 "Do you want to load TRHOST? (y/n): \a\a" "yn"
  1750.          if errorlevel 1 goto no
  1751.          trhost
  1752.          :no
  1753.       This will ask the user at the host PC whether or not to load TRHOST (the
  1754.       \a makes TRASK beep), and if the user does not type anything within 5
  1755.       seconds TRHOST will be loaded anyway. If the user is at the office, then
  1756.       typing 'n' will prevent TRHOST from loading.
  1757.  
  1758. A5.3  At home the user needs to edit the file named OFFICE.TR to install the
  1759.       office PC's 'phone number. This means changing the line:
  1760.          ""                Connect command for modem
  1761.       to:
  1762.          "at d 123 4567\r" Connect command for modem
  1763.       so that when the user runs TR the number will be dialled automatically.
  1764.  
  1765.       Next, since the home modem is on COM1 the line:
  1766.          02F8/IRQ3         Communications port (COMn or base/interrupt)
  1767.       must become:
  1768.          "COM1"            Communications port (COMn or base/interrupt)
  1769.  
  1770.       Also, since the modems support error correction, and since line noise can
  1771.       introduce a significant gap in the transmitted data at any time, the
  1772.       timeouts should be made fairly generous by changing the lines:
  1773.          3000              Time to wait for first char before timeout (ms)
  1774.          500               Time to wait for subsequent chars in block (ms)
  1775.       to:
  1776.          10000             Time to wait for first char before timeout (ms)
  1777.          10000             Time to wait for subsequent chars in block (ms)
  1778.  
  1779.       Finally, TR should respond to the modem ringing by answering the 'phone.
  1780.       This means adding an extra line at the end of the file containing:
  1781.          "RING"        "\D250ata\r"    ""         40000
  1782.       (Note the \D250 to wait a little bit for the modem to finish sending the
  1783.       carriage return and line feed after RING before sending the answer
  1784.       command. With some modems this may not be necessary; with others, a
  1785.       different delay may work better. If the answer command is ignored, then
  1786.       try a different delay.)
  1787.  
  1788.       This completes the installation stage.
  1789.  
  1790. A5.4  Before leaving the office, the user must remember to reboot the PC (thus
  1791.       loading TRHOST) and leave it turned on! However, it would be a good idea
  1792.       to switch the monitor off.
  1793.  
  1794.       When the user is ready to dial into the office PC from home, he will
  1795.       enter the command:
  1796.          TR OFFICE
  1797.       This will cause the modem to dial the office PC. The user must then
  1798.       listen to the modem and wait until he hears the 'phone ring once. As soon
  1799.       as he hears this, he must press any key (say the space bar) to terminate
  1800.       the call. TRHOST will start a timer going when the 'phone rings, and then
  1801.       wait 10 seconds, keeping track of the total time the 'phone has spent
  1802.       ringing. If, during the 10 seconds, the 'phone was ringing for more than
  1803.       0.2 seconds but less than 5 seconds, then TRHOST will send the dial
  1804.       command (atdt 765 4321) to the modem, causing the office modem to ring
  1805.       home. When the user's 'phone rings, the modem will send the message:
  1806.          RING
  1807.       to the home PC, and TR will trigger on this to respond to the modem with:
  1808.          ata
  1809.       which will answer the 'phone. TeleReplica will then exchange passwords
  1810.       and give the user control of the office PC.
  1811.  
  1812. A5.5  When the user is finished, he will exit TR using option 3, which will
  1813.       cause the modem to hang up and terminate the 'phone call. The office PC
  1814.       will then automatically reboot, ready for the user to call in again.
  1815.  
  1816.       [This is probably the most complicated set up of all, but it is the one
  1817.       the author has found most useful, and is in daily use by a number of
  1818.       staff at MUCG.]
  1819.  
  1820.  
  1821. APPENDIX B - Sample File Transfer Session
  1822.  
  1823. B1.   In this example, we will assume that a good link has been established as
  1824.       described in scenario A2. The user has logged into the LAN from home, and
  1825.       wishes to transfer all the C source files from the LAN directories:
  1826.          F:\USERDATA\FRED\TEST
  1827.          F:\USERDATA\FRED\UTILS
  1828.          F:\USERDATA\FRED\PROBLEM
  1829.       to the corresponding directories on his home PC:
  1830.          C:\PROGRAMS\TEST
  1831.          C:\PROGRAMS\UTILS
  1832.          C:\PROGRAMS\PROBLEM
  1833.       The current working directory on the LAN PC is F:\USERDATA\FRED. The
  1834.       current working directory on the home PC is C:\TR.
  1835.  
  1836.       First, the user needs to make C:\PROGRAMS the current working directory
  1837.       on his home PC. To do this, he must hold down Ctrl, Alt, LeftShift and
  1838.       RightShift all at the same time! This will bring up a screen similar to:
  1839.       ╔══════════════════════════════════════════════════════════════════╗
  1840.       ║ TeleReplica Copyright (c) 1992 Douglas Thomson                   ║
  1841.       ║                                                                  ║
  1842.       ║  Key         Effect                                              ║
  1843.       ║  ===         ======                                              ║
  1844.       ║  <F2>      - simulate carrier - not used with MODEM link         ║
  1845.       ║  <Ctrl-F2> - simulate NO carrier - not used with MODEM link      ║
  1846.       ║  <F6>      - send break, restart session                         ║
  1847.       ║  <F8>      - perform warm boot on host                           ║
  1848.       ║  <F9>      - shell to DOS                                        ║
  1849.       ║  <F10>     - exit TeleReplica                                    ║
  1850.       ║  <Alt-X>   - exit TeleReplica                                    ║
  1851.       ║  <Home>    - refresh display from HOST                           ║
  1852.       ║  <PgUp>    - upload file using DMP protocol                      ║
  1853.       ║  <PgDn>    - download file using DMP protocol                    ║
  1854.       ║                                                                  ║
  1855.       ║  <ESC>     - do nothing                                          ║
  1856.       ║                                                     Press key:   ║
  1857.       ╚══════════════════════════════════════════════════════════════════╝
  1858.  
  1859.       Then he should press <F9> to shell to DOS, and enter the command:
  1860.          CD \PROGRAMS
  1861.       to make C:\PROGRAMS the current working directory. Then he can enter the
  1862.       command:
  1863.          EXIT
  1864.       to return to TR.
  1865.  
  1866.       Next he needs to start the download. To do this he must again hold down
  1867.       Ctrl, Alt, LeftShift and RightShift, and then press <PgDn>. Another box
  1868.       will appear:
  1869.       ╔═══════════════════════════════════════════════════════════════════════╗
  1870.       ║ Name(s) of file(s) to be downloaded (use DOS wildcards):              ║
  1871.       ║ WARNING: Files with the same names on this PC will be overwritten!    ║
  1872.       ║                                                                       ║
  1873.       ╚═══════════════════════════════════════════════════════════════════════╝
  1874.       and he must enter the relative paths and wildcards:
  1875.       ╔═══════════════════════════════════════════════════════════════════════╗
  1876.       ║ Name(s) of file(s) to be downloaded (use DOS wildcards):              ║
  1877.       ║ WARNING: Files with the same names on this PC will be overwritten!    ║
  1878.       ║ TEST\*.C TEST\*.H UTILS\*.C UTILS\*.H PROBLEM\*.C PROBLEM\*.H         ║
  1879.       ╚═══════════════════════════════════════════════════════════════════════╝
  1880.  
  1881.       If there were some problem (for example, if TRPUT.EXE were not on the
  1882.       path of the LAN PC), then the following could be displayed:
  1883.       ╔══════════════════════════════════════════════════════════════════╗
  1884.       ║ TeleReplica Error:                                               ║
  1885.       ║ no ready marker from host                                        ║
  1886.       ║ Type <ESC> to continue:                                          ║
  1887.       ╚══════════════════════════════════════════════════════════════════╝
  1888.  
  1889.       However, normally the download will then commence, leaving the following
  1890.       display:
  1891.          ╔═════════════════════════════════════════════╗
  1892.          ║ File Transfer in Progress...                ║
  1893.          ║                                             ║
  1894.          ║ File:       test\xyz.c                      ║
  1895.          ║                                             ║
  1896.          ║ Error:                                      ║
  1897.          ║                                             ║
  1898.          ║ Throughput: 233.6 cps                       ║
  1899.          ║                                             ║
  1900.          ║ You may:                                    ║
  1901.          ║    1. Abort the file transfer               ║
  1902.          ║    2. Shell to DOS                          ║
  1903.          ║                                             ║
  1904.          ║ Selection:                                  ║
  1905.          ╚═════════════════════════════════════════════╝
  1906.       The number of bytes remaining to be transfered is displayed in the top
  1907.       right corner of the screen. The most recent error will be reported in the
  1908.       appropriate line of the box, and the throughput of the transfer (in
  1909.       characters per second) may help to relieve the boredom while waiting for
  1910.       the transfer to complete! The box also indicates which file is currently
  1911.       being transfered.
  1912.  
  1913.       At this stage, the user can either wait for the transfer to finish, or
  1914.       else select option 2 from the menu and shell to DOS. In this case, he can
  1915.       use his home PC for other jobs while the transfer takes place in the
  1916.       background. TR will continue to display the number of bytes remaining in
  1917.       the top right corner until the transfer is completed, at which time the
  1918.       number in the top right corner will become the string "Completed" (or,
  1919.       possibly, "Doubtful" if one or more files could not be created on the
  1920.       home PC). However, the user must be careful not to do things like delete
  1921.       the file that is being downloaded!
  1922.  
  1923.       While shelled out to DOS in this way, the user may exit back into TR at
  1924.       any time. If the file transfer is still in progress, then the file
  1925.       transfer window will still be there; otherwise, the exit will leave TR
  1926.       displaying the normal replica of the host PC's display.
  1927.  
  1928.  
  1929. APPENDIX C - Modem Cables
  1930.  
  1931. C1.   Minimum Standard Modem Cable
  1932.  
  1933.       Although a full 25-wire straight-through male-to-female RS232 cable is
  1934.       recommended for TeleReplica (since there is less room for error in the
  1935.       cable construction/selection), in fact the following signals are the only
  1936.       ones ever required or used:
  1937.  
  1938.       MALE (modem)                            FEMALE (PC)
  1939.       =============                           ========
  1940.       25D RS232 pin     signal       signal   25D   9D (as in AT)
  1941.       =============     ======       ======   ===   ==
  1942.                   2     TD  <------- TD         2    3
  1943.                   3     RD  -------> RD         3    2
  1944.                   4     RTS <------- RTS        4    7
  1945.                   5     CTS -------> CTS        5    8
  1946.                   7     GND <------> GND        7    5
  1947.                   8     CD  -------> CD         8    1
  1948.                  20     DTR <------- DTR       20    4
  1949.                  22     RI  -------> RI        22    9
  1950.  
  1951.       The following sections describe the kind of null modem cables that can be
  1952.       used with TeleReplica.
  1953.  
  1954. C2.   Simplest Possible 3-wire Null Modem Cable
  1955.  
  1956.       This is the most common kind of null modem cable, but TR and TRHOST must
  1957.       be set to ignore carrier detect, since the cable does not provide this
  1958.       information.
  1959.  
  1960.       MALE                                    FEMALE
  1961.       =============                           ========
  1962.       25D RS232 pin     signal       signal   25D   9D (as in AT)
  1963.       =============     ======       ======   ===   ==
  1964.                   7     GND <------> GND        7    5
  1965.                   3     RD  <------- TD         2    3
  1966.                   2     TD  -------> RD         3    2
  1967.  
  1968. C3.   Full TeleReplica Null Modem Cable
  1969.  
  1970.       If you can build or get hold of one of these, then TeleReplica can use
  1971.       carrier detect correctly. Note that CTS is not provided, and that
  1972.       TeleReplica must therefore be installed not to use it (there would be no
  1973.       point is using flow control with a direct cable in any case)!
  1974.  
  1975.       MALE                                    FEMALE
  1976.       =============                           ========
  1977.       25D RS232 pin     signal       signal   25D   9D (as in AT)
  1978.       =============     ======       ======   ===   ==
  1979.                   7     GND <------> GND        7    5
  1980.                   3     RD  <------- TD         2    3
  1981.                   2     TD  -------> RD         3    2
  1982.                  20     DTR -------> CD         8    1
  1983.                   8     CD  <------- DTR       20    4
  1984.  
  1985. C4.   Complete Null Modem Cable
  1986.  
  1987.       If you really want a complete null modem cable, which should work with
  1988.       ANY communications program, then I would suggest:
  1989.  
  1990.       MALE                                    FEMALE
  1991.       =============                           ========
  1992.       25D RS232 pin     signal       signal   25D   9D (as in AT)
  1993.       =============     ======       ======   ===   ==
  1994.                   7     GND <------> GND        7    5
  1995.                   3     RD  <------- TD         2    3
  1996.                   2     TD  -------> RD         3    2
  1997.                   5     CTS <------- RTS        4    7
  1998.                   4     RTS -------> CTS        5    8
  1999.                  20     DTR ----+--> CD         8    1
  2000.                                 │
  2001.                                 +--> DSR        6    6
  2002.                   8     CD  <--+---- DTR       20    4
  2003.                                │
  2004.                   6     DSR <--+
  2005.  
  2006.  
  2007. APPENDIX D - DESQview Compatibility
  2008.  
  2009. D1.   TR is "DESQview-Aware" and runs nicely in a small DESQview window. TRHOST
  2010.       needs to put keys into the BIOS keyboard buffer, and this means that what
  2011.       is typed at the remote end cannot be distinguished by DESQview from what
  2012.       is typed at the real keyboard at the host end. The net effect is that
  2013.       there is no point in trying to run TRHOST in a DESQview window, and so
  2014.       TRHOST makes no attempt to be "DESQview-Aware". Also, DESQview is
  2015.       activated by "tapping" the ALT key, but TRHOST has no way to make this
  2016.       appear to happen, hence DESQview cannot be activated remotely. TRHOST and
  2017.       DESQview really don't mix!
  2018.  
  2019. D2.   For anyone wishing to set up DESQview for TR, these are the settings that
  2020.       I am currently using successfully:
  2021.       ╔1══Change═a═Program════════════════════════════════════════════════════╗
  2022.       ║                            Change a Program                           ║
  2023.       ║                                                                       ║
  2024.       ║ Program Name............: TR                                          ║
  2025.       ║                                                                       ║
  2026.       ║ Keys to Use on Open Menu: TR                  Memory Size (in K):  70 ║
  2027.       ║───────────────────────────────────────────────────────────────────────║
  2028.       ║ Program...: C:\TR\TR                                                  ║
  2029.       ║                                                                       ║
  2030.       ║ Parameters: REMOTE                                                    ║
  2031.       ║                                                                       ║
  2032.       ║ Directory.: \TR                                                       ║
  2033.       ║───────────────────────────────────────────────────────────────────────║
  2034.       ║ Options:                                                              ║
  2035.       ║               Writes text directly to screen.......: [N]              ║
  2036.       ║               Displays graphics information........: [N]              ║
  2037.       ║               Virtualize text/graphics (Y,N,T).....: [N]              ║
  2038.       ║               Uses serial ports (Y,N,1,2)..........: [1]              ║
  2039.       ║               Requires floppy diskette.............: [N]              ║
  2040.       ║                                                                       ║
  2041.       ║  Press F1 for advanced options           Press <─┘ when you are DONE  ║
  2042.       ╚═══════════════════════════════════════════════════════════════════════╝
  2043.       and advanced options:
  2044.       ╔1══Change═a═Program════════════════════════════════════════════════════╗
  2045.       ║                   Change a Program Advanced Options                   ║
  2046.       ║                                                                       ║
  2047.       ║ System Memory (in K):  0    Maximum Program Memory Size (in K)..:  70 ║
  2048.       ║                                                                       ║
  2049.       ║ Script Buffer Size:  100    Maximum Expanded Memory Size (in K):    0 ║
  2050.       ║                                                                       ║
  2051.       ║ Text Pages: 1  Graphics Pages: 0  Initial Mode:  Interrupts: 00 to 2F ║
  2052.       ║───────────────────────────────────────────────────────────────────────║
  2053.       ║ Window Position:                                                      ║
  2054.       ║    Maximum Height: 25     Starting Height: 25     Starting Row...:  1 ║
  2055.       ║    Maximum Width.: 80     Starting Width.: 80     Starting Column:  1 ║
  2056.       ║───────────────────────────────────────────────────────────────────────║
  2057.       ║                            Shared Program                             ║
  2058.       ║ Pathname..:                                                           ║
  2059.       ║ Data......:                                                           ║
  2060.       ║───────────────────────────────────────────────────────────────────────║
  2061.       ║ Close on exit (Y,N,blank)..: [Y]  Uses its own colors...........: [Y] ║
  2062.       ║ Allow Close Window command.: [N]  Runs in background (Y,N,blank): [Y] ║
  2063.       ║ Uses math coprocessor......: [N]  Keyboard conflict (0-4).......: [0] ║
  2064.       ║ Share CPU when foreground..: [Y]  Share EGA when foreground/....: [Y] ║
  2065.       ║ Can be swapped out (Y,N, ).: [N]  Protection level (0-3)........: [0] ║
  2066.       ║                                                                       ║
  2067.       ║  Press F1 for standard options           Press <─┘ when you are DONE  ║
  2068.       ╚═══════════════════════════════════════════════════════════════════════╝
  2069.  
  2070. D3.   When running under DESQview, the "shell to DOS" option during a file
  2071.       transfer is disabled, since DESQview does not permit interrupt handlers
  2072.       to call DOS and BIOS functions (necessary for reading and writing files).
  2073.       However, this is not a serious limitation under DESQview, since DESQview
  2074.       will allow you to run multiple simultaneous programs.
  2075.  
  2076. D4.   The normal "shell to DOS" option may be used under DESQview, but in this
  2077.       case more than 70K of memory will need to be allocated - with 4dos, it
  2078.       has been reported that at least 150K is required!
  2079.  
  2080.  
  2081. APPENDIX E - Acknowledgments
  2082.  
  2083. E1.   I would like to thank all the users of TeleReplica who have helped me to
  2084.       improve the package by suggesting new features and reporting
  2085.       difficulties. The following individuals in particular have had a
  2086.       significant impact on the current version:
  2087.          Mr Lindsay Smith, Monash University College, Gippsland, Australia
  2088.          Prof. Timo Salmi, University of Vaasa, Finland
  2089.