      User Commands


                               XROUTER SYSOP MANUAL
                               ====================


                          SECTION 5 - COMMAND REFERENCE
                          =============================


      COMMANDS AVAILABLE TO EVERYONE
      ------------------------------

      The following user commands are available on Xrouter:

      @         ?         AMsg      Arp       Bye       CHat      Connect
      Dx        Echo      Finger    GPing     Help      Host      Info
      IProutes  J         Links     MHeard    Nodes     NPing     NRr
      Ports     PIng      PMs       Quit      Routes    SEnd      Stats
      Telnet    TTylink   Users     Version   Yell

      Commands are not case-sensitive, and only the portion shown in UPPER-
      CASE is required.


      @        Request sysop status

               Syntax:    @ [string]

               In order to gain access to sensitive commands, remote sysops 
               must first complete a password challenge.  Firstly, the 
               remote sysop enters "@" alone, and the system replies with a 
               matrix consisting of 5 lines of 5 numbers thus:

                     4 1 6 3 7
                     3 5 2 6 3
                     7 1 9 2 4
                     2 7 1 4 6
                     3 5 2 6 1

               The remote sysop must then choose ONE of the lines, and send 
               the "@" command again, followed by the 5 characters from the 
               password string which correspond to the 5 numbers on the 
               chosen line.  There must be a space after the "@" but no 
               spaces between the characters.  The first character of the 
               password string is numbered zero.

               If the challenge is correctly answered, the system replies 
               with "Ok", and the user has remote sysop status.

               If the user does not have a password registered in 
               PASSWORD.SYS, the response to this command will be "Bad 
               command".

               Note:  Console sysops already have full access and don't need 
               to use this command.


      ?        Obtain command list or syntax help

               Syntax:    ? [cmd]



      Xrouter Command Reference Revision 2.2 (18/12/02)        Page 1
      User Commands


               If used without arguments, this command sends a list of the 
               basic commands available to the user.

               If the argument is an asterisk (e.g. "? *") it lists all the 
               available commands.

               Using the form "? cmd" shows the syntax for "cmd".


      AMSG     Enter APRS Messaging mode.

               Syntax:  AM[sg] <portnum>

               The AMSG command switches the user's session into APRS 
               messaging mode, enabling him to exchange messages and 
               bulletins with APRS and UI-View users.

               The <portnum> argument specifies the radio port
               upon which traffic will be sent and received. e.g. "AM 13" 
               will use port 13.

               APRS Messaging mode has it's own commands, detailed elsewhere 
               in this document.



      ARP      Display Address Resolution Protocol table

               Syntax:    ARP [ LIST ]

               The ARP command is used to display the Address Resolution 
               Table, which is responsible for mapping IP addresses to 
               callsigns.

               The LIST subcommand is available to everyone, and has the 
               same effect as using ARP by itself.  Other subcommands are 
               available to sysops only (see sysop command section).  The 
               response may look like this:

               G8PZT:KIDDER}
               Host             type        Hw Address
               44.131.74.131    AX25        GB7WV-12
               44.131.90.6      AX25        GB7IPT-9
               44.131.95.240    AX25        GB7GH
               (End of list)

               <host> is the neighbour's IP address, <type> is either "ax25" 
               or "ether" (Ethernet) and <hw_address> is the hardware 
               address or callsign of the neighbour.

               In order for this command to have any meaning, the router 
               must have an IP address and be connected to an IP-capable 
               network.  


      BYE      Disconnect from the router.






      Xrouter Command Reference Revision 2.2 (18/12/02)        Page 2
      User Commands


               The BYE command forces a disconnection, and is useful when 
               the user does not have easy access to a TNC's "command mode", 
               or when the uplink is from another node with the "stay" 
               option enabled.

               Disconnection of an uplink terminates all dependent sessions.


      CHAT     Connect to the chat server.

               Syntax: CH[AT]

               The CHAT command connects the user to the integral chat 
               server, which has its own set of commands detailed in a 
               separate section.

               The chat server may also be reached directly by telnetting to 
               the router's TCP port 3600.


      CONNECT  -- Make an outgoing AX25 connection

               Syntax: C[ONNECT] [port] <call> [V[ia] digi[,digi...]] [S]

               The CONNECT command, which may be abbreviated to "C", 
               instructs the router to make an outgoing (downlink) AX25 
               level 2 or 4 connection with another system.

               If the target is a known node (i.e. one which is in the nodes 
               table) a port number is not required, and will be ignored if 
               supplied.  The router will attempt to make a level 4 
               connection with the target, using information from the 
               routing tables.  However, a level 2 connection with an 
               immediately adjacent node may be forced by using the target's 
               alias with an arbitrary SSID, specifying a port number if 
               required (e.g. C 4 MLVN-1)

               If the target is not a known node, the router will attempt to 
               make a level 2 connection.  On multi-port systems, a port 
               number must be specified.

               The "V" (via) parameter allows up to 7 digipeaters to be 
               specified, e.g.:  "C 3 G6YAK V G8NTU G8EPR"

               The "S" (stay) parameter, e.g. "C <nodecall> S" causes the 
               uplink session to stay connected when the downlink session to 
               the target node is terminated.

               See also:  TELNET (nake TCP connections)


      DX       Show best APRS DX

               Syntax: DX [port]








      Xrouter Command Reference Revision 2.2 (18/12/02)        Page 3
      User Commands


               Providing the router's position is defined, APRS position 
               reports heard by the router will be logged in the DX list, in 
               order of distance.  The sysop may set this up to show only 
               the directly heard stations, or may choose to include those 
               heard via digipeaters.  The response to the DX command looks 
               like this:

          G8PZT:KIDDER} Dx list:
          Port Callsign  Dist  Dir  Date  Time  Frames      Position       Via
           9   GB7GH     62Km  170  22/08 10:59     72 5151.20N 00205.80W
           4   G6GUH     21Km  325  22/08 05:41      1 5233.38N 00225.80W
           1   G3KFD     13Km   36  21/08 17:38      5 5229.65N 00208.28W
          (End of list)




      ECHO     Starts an echo session.

               Syntax: ECHO

               After issuing the ECHO command the router will echo back to 
               you anything you send to it, which is useful for link testing 
               etc.  The session is terminated only by disconnection.


      FINGER -- Display information about users.

               Syntax:    FINGER <user | user@host | @host>

               If the command is of the form "FINGER <user>", the router 
               searches the FINGER sub-directory for a text file which 
               matches "user", and sends the contents of that file if it 
               exists.  The file may contain anything you like, and "user" 
               may be a callsign, nickname or other form of hostname 
               consisting of up to 8 legal DOS characters

               If the form "user@host" or "@host" is used, the router will 
               attempt to resolve "host" into an IP address and establish a 
               TCP/IP contact with the finger server on that host.

               Examples:  FINGER g8pzt        Info on local user g8pzt
                          FINGER g8jvm@iptlfd

               Limitations:  This feature is very rudimentary at present, 
                             requiring the user account files to be created 
                             by the sysop.


      HELP      Displays help for commands and other topics

               Syntax:    H[ELP] [cmd | topic]

               If no arguments are given, a short text gives directions on 
               how to access help.

               If the argument is a topic or a command name, the contents of 
               the appropriate file in the HELP sub-directory are displayed.




      Xrouter Command Reference Revision 2.2 (18/12/02)        Page 4
      User Commands


               The argument "*" will list all the help topics available.

               Example:   H PING    will give help for the PING command.

               Limitations:  The command or topic name must at present be
                             given in full, thus "H NODES" is acceptable, 
                             but "H N" is not (unless you duplicate the 
                             NODES.HLP file to N.HLP).  Future versions will 
                             search for the closest match.

               Note: The help available using the HELP command is intended 
                     to be of use to both sysops and users alike, and is 
                     kept brief in order to avoid wasting airtime.  The MAN 
                     system gives more detailed information for sysops.

                     The sysop may customise the help files, or add his/her 
                     own help topics to the HELP directory as required.  The 
                     HELP directory is located beneath the router's working 
                     directory, and the files are simply plain text files 
                     with the .HLP extension.  Files without the .HLP 
                     extension will not be listed or accessible.

               See also:  ?, MAN, INFO


      HOST     Display information about a TCP/IP host

               Syntax:  HO[st] <hostname> | <ip address>

               Example: ho kidder

               G8PZT:KIDDER} Host name information for kidder:
               Hostname: kidder.ampr.org.
               Address:  44.131.91.245


      INFO     Displays information about the router and other topics.

               Syntax:    INFO [topic]

               If no arguments are given, the INFOMSG text is sent to the 
               user.

               If the sysop has created other INFO topics, the user will 
               then be prompted to enter "INFO *" to display the list of 
               topics.

               If [topic] is specified, the contents of the appropriate .INF 
               file, if it exists, are sent to the user.

               Example:   I FOURPAK      Displays fourpak.inf file.

               Note: The sysop may create INFO topics as required, and
                     there is no need to restart in order to activate them.

                     Each topic should be created as a plain text file with 
                     the .INF extension and should be placed in the INFO 
                     sub-directory located immediately under the router's 
                     working directory.



      Xrouter Command Reference Revision 2.2 (18/12/02)        Page 5
      User Commands


                     Files without the .INF extension will not be listed or 
                     accessible.

               Limitations:  Topic names must consist of a maximum of 8
                             legal DOS characters.

               See also:  ?,  HELP,  MAN


      IPROUTE -- Display IP routing table.

               Syntax: IPR[OUTE]

               The IPROUTE command, which may be abbreviated to IPR, 
               displays the contents of the table responsible for routing of 
               IP datagrams.

               This table is initialised from file IPROUTE.SYS when the 
               router is started, and may contain other entries "learned" by 
               the system, or entered by the sysop.  It is not required in 
               any way for normal AX25 and NETROM activities.

               For each route it displays the IP address, the subnet mask, 
               the gateway address, the port and the mode (Datagram, VC or 
               Netrom).

               The command "IP ROUTES" produces an identical result.


      J        Displays recently connected stations.

               Syntax: J

               The J command lists the callsigns of the last 20 stations who 
               have connected to the router since it was booted.  The 
               display looks like this:

          G8PZT:KIDDER} Recent users:
          Typ  Usercall               Logoff-time  Mins    From-bytes-To
          L4   G1WXA-6@GB7BHM         22/08 11:06  1          8     1674
          L2   GB7COV-14              22/08 11:06  1        696       93
          L4   GB7PZT@GB7PZT          22/08 10:57  0       1370      236
          L2   G4YUD                  22/08 10:54  2         13      765
          (End of list)

               The "Typ" field shows the type of uplink (L2, L4, TCP, 
               CONsole, TTY etc)

               The "Usercall" field shows the user's callsign.  If it was a 
               Netrom level 4 connection, the user's node is also shown, in 
               the form <user>@<node>.

               The "Logoff-time" field shows the date and time when the user 
               logged off.

               The "Mins" field shows how ling the user was connected in 
               minutes.

               The "Bytes from/to" fields show how many information (i.e. 
               layer 7) bytes were received from, and sent to the user.


      Xrouter Command Reference Revision 2.2 (18/12/02)        Page 6
      User Commands




      LINKS -- Displays the currently active level 2 sessions.

               The LINKS command lists level 2 user up/downlinks and inter-
               node links.  It is mainly of interest to sysops, and shows 
               the callsigns being used at both ends of the link plus some 
               other data, for example:

               G8PZT:KIDDER} Links:
                Remote Local  Prt Sta  V Try   T3  Pac Max  Idle  Txq Rxq Asm
                G4FPV  G8PZT   5   5   2   0  177  160   1   904    0   0   0
                GB7PZT G8PZT   7   5   2   0  181  240   7   908    0   0   0
                GB7GH  G8PZT   9   5   2   0  176  120   1   903    3   1   0
               (End of list)

               Remote and Local are the L2 callsigns in use at either end of 
               the link.

               Prt   - Port number
               Sta   - Link state:
                          2 = connecting
                          4 = disconnecting                      
                          5 = connected
               V     - AX25 version number
               Try   - Retry count
               T3    - Current state of the LAPB T3 countdown
               Pac   - Paclen
               Max   - Maxframe
               Idle  - Seconds since data last moved on this link.
               Txq   - No. of L2 frames queued for transmission
               Rxq   - No. of L2 frames on receive queue
               Asm   - No. of frame fragments awaiting reassembly

               Note: The exact format of this response may differ in future 
               versions.


      MHEARD -- List recently heard stations.

               Syntax:    MH[EARD] <portnum>

               If the facility is enabled on the specified port, the MHEARD 
               command lists the most recently heard stations on that port, 
               along with the date / time of reception, and the number of 
               frames heard.

               This is useful for users to discover who else the router can 
               hear, to aid the search for suitable digipeaters, and to 
               diagnose problems.  Even on linking-only ports, where there 
               is only usually one partner, it provides a useful indication 
               when the frequency is being encroached, either by deliberate 
               squatting, unauthorised attempts to link, or lift conditions.

               If you have included an APRS-style position report in your ID 
               beacon, the router will know its own position and will 
               display position, distance and bearing for any stations 
               which broadcast APRS positions.




      Xrouter Command Reference Revision 2.2 (18/12/02)        Page 7
      User Commands


               The command may be abbreviated to "MH".

               Example: MH 3 gives a heard list for port 3....

      G8PZT:KIDDER} Heard list for port 3:
      Callsign   Date  Time Frames   Via   Type  Position         Dist Dir
      G1LOA-10   09/06 13:42   309         N
      G3TQG-2    09/06 13:19   599 GB7WV
      GB7PZT-15  09/06 13:18   708
      G3KFD      21/07 23:58   332             5229.65N 00208.28W 13Km 36
      (End of list)

               An entry in the "Via" column indicates a digipeated signal, 
               otherwise the station was heard direct. 
               The "Type" column indicates the type of sender, i.e. whether 
               it is a (D)igipeater, or (N)etrom node, or has (I)P or (A)RP 
               capabilities.

               The "Position" field shows the latitude and longitude of the 
               heard stations (if known), in APRS-style.  5229.65N means 52 
               degrees, 29.65 minutes North of the Equator. 00208.28W means 
               2 degrees and 8.28 minutes West of the Greenwich meridian.

               The "Dir" field shows the direction of the heard station (if 
               known) in degrees clockwise from true North.


               Note: For each port, the MH facility can be enabled /
                     disabled and the maximum length of the list specified 
                     by appropriate entries in the .CFG file.  


      NODES -- Display contents of the Nodes table.

               Syntax:
               N[odes] [* | + | F | H | I | N | O | P | Q | R | S | T]
               N[odes] [A | V] <call>
               N[odes] < | > <qual>
               When used without arguments, this command lists all the 
               NetRom nodes (but not KA nodes) known to the router, except 
               obsolete nodes, and "hidden" nodes i.e. those whose alias 
               begins with the hash (#) character.

               If the argument is a string containing wildcards, all nodes 
               whose callsigns match the string are displayed.  For example 
               "N GB7*" will show all nodes whose callsigns begin with "GB7".

               Using a single asterisk (*), all nodes, including "hidden" 
               and obsolete nodes will be displayed.

               If the argument is a known node call or alias, the preferred 
               route to the specified node, and up to two alternative routes 
               will be displayed.  Example: N MLVN  The response looks like 
               this:

               G8PZT:KIDDER} Routes to: MLVN:G4FPV  RTT=6.96  FR=3538  Q=0
               > 150  5  5 G4FPV     2.57  1  5
                 110  5  9 GB7GH     3.10  2  5
                   0  4  2 G1DKI-7   0.00  0  0



      Xrouter Command Reference Revision 2.2 (18/12/02)        Page 8
      User Commands


               RTT stands for Round Trip Time and is a running average of 
               the time taken to get a L4 response from that node.

               FR indicates the number of level 3 frames sent to that node.

               Q is the number of Level 3 frames currently queued for that 
               destination.

               A chevron ">" in the left-most column indicates the currently 
               active route.

               The first number shows the overall path quality to the target 
               node, the second is the "obsolescence count", and the third 
               number is the port designator.

               The obsolescence count is a measure of how recently the route 
               was heard about or used.  It is usually reset to 5 upon 
               hearing a nodes broadcast from the neighbour node, and 
               decrements by one every time this router makes a node 
               broadcast (typically once per hour). If it drops below 4 the 
               route is considered to be obsolete.

               The final three columns are the one way "Trip Time", the hop 
               count, if known, and the obsolescence count for those 
               parameters.

               If the requested nodecall or alias is not in the table, an 
               error message results.

               The "N A <call>" (advertised) command lists only the nodes to 
               whom one of the primary or secondary routes is via the 
               immediate neighbour specified by <call>.

               The "N F" (frames) variation lists only the nodes to whom one 
               or more frames have been sent.

               The "N H" (hops) command lists only the nodes for whom a "hop 
               count" is known, i.e. the number of nodes a frame must pass 
               through to reach that destination.  It is not always possible 
               to measure the hops via old netrom systems.

               The "N I" (IP address) form displays only the nodes whose IP 
               address is known.

               The "N N" command displays the "Netrom-only" nodes, i.e. 
               those for whom a trip time is not known.

               The "N O" (obsolete) form displays the "Obsolete" nodes, i.e. 
               those which haven't been heard of for a while.

               The "N P" (position) command lists only the nodes whose APRS 
               position is known.  This will include immediate neighbours of 
               any software type, and distant Xrouters, providing in each 
               case that their sysops have included their APRS position 
               details in a beacon.







      Xrouter Command Reference Revision 2.2 (18/12/02)        Page 9
      User Commands


               The "N Q" (queue) command lists only the nodes for whom 
               frames are currently queued.  Since it is a "snapshot" of the 
               state at the time the command was issued, it is likely to 
               produce different results each time, but it allows problems 
               to be identified.

               The "N R" (rtt) command lists only the nodes for whom a Round 
               Trip Time is known.  The RTT is only available for those 
               nodes with whom traffic has been exchanged.

               The "N S" command lists all the nodes with non-zero stats 
               (i.e. round-trip times and frame counts).

               The "N T" command lists the nodes which have only time-domain 
               information, i.e. trip time but no netrom quality.

               The "N V <call>" (via) command lists only the nodes to whom 
               the preferred route is via the immediate neighbour whose 
               callsign or alias is specified by <call>.

               The "N +" command shows the nodes which have *both* netrom 
               and time-domain information.

               The "N > <quality>" form displays the nodes whose primary 
               route quality is greater than the specified value.

               The "N < <quality>" form displays the nodes whose primary 
               route quality is less than the specified value.



               Examples:
               N           - List nodes except those beginning with #
               N *         - List nodes including those beginning with #
               N > 100     - List nodes whose quality is greater than 100
               N < 20      - List nodes whose quality is less than 20
               N +         - List nodes with both quality and trip time
               N MLVN      - Display routes to MLVN node
               N A MLVN    - List nodes advertised by MLVN
               N F         - List nodes to whom frames have been sent
               N H         - List the nodes for whom a hop count is known
               N I         - List the nodes whose IP address is known.
               N N         - List the Netrom-only nodes
               N P         - List all nodes whose APRS position is known
               N Q         - List the nodes for whom data is queued
               N R         - List the nodes for whom an RTT is known
               N S         - List the nodes with non-zero stats
               N T         - List the time-domain-only nodes
               N V MLVN    - List nodes routed via MLVN node.


      NPING    Send a Netrom echo request

               Syntax: NP[ing] <nodecall | nodealias> [bytes [secs]]








      Xrouter Command Reference Revision 2.2 (18/12/02)        Page 10
      User Commands


               The NPING command sends an NCMP (Network Control Message 
               Protocol) echo request to the specified target system.  If 
               the target understands NCMP, a reply will be returned, 
               allowing the round-trip-time and number of hops to be 
               determined.  It is intended mainly as a network diagnostic.

               NCMP is under development and is currently implemented only 
               in PZT systems, so you can only NPING another Xrouter.

               The command allows the user to specify an additional data 
               payload, and an interval between pings.  This can be used to 
               assess the consistency of link performance.

               Examples:

               nping gb7gc

               G8PZT:KIDDER} NPING: hit <RETURN> to quit...

               Pinging gb7gc with 0 bytes of data:

               GB7GC: echo reply - rtt 17985 msec, 3 hop(s)

               nping  gb7gc 10 20

               G8PZT:KIDDER} NPING: hit <RETURN> to quit...

               Pinging gb7gc with 10 bytes of data:

               Target             Interval   Sent   Rcvd   %  Ave Rtt
               GB7GC                 20020      1      1  100 5170
               GB7GC                 20020      2      2  100 6930
               GB7GC                 20020      3      3  100 6765


      NRR      Netrom Record Route

               Syntax:  NRR <nodecall | nodealias>

               This command sends a "record route" packet to the specified 
               netrom target system.  It the target is NRR-capable (e.g. 
               Xrouter, Xnet, Flexnet?), the packet is returned otherwise 
               the packet is ignored by the target.

               Each NRR-capable router along the path inserts its own 
               callsign into the packet, and these are displayed when the 
               reply is received.  Non-capable systems are shown by a 
               question mark "?".  The target is marked by a "*" and both 
               the outgoing and return routes are displayed because they may 
               differ.

               Example: nrr gb7gc

               G8PZT:KIDDER} Request sent
               Route reply:  G8PZT ? GB7GC* ? G8PZT







      Xrouter Command Reference Revision 2.2 (18/12/02)        Page 11
      User Commands


      PING -- Send ICMP echo request(s).

               Syntax:  PING <hostname | ipaddr> [length [interval]]

               The PING command sends ICMP echo request(s) to the specified 
               IP address or hostname for the purposes of route testing.

               An optional data portion of "length" bytes may be specified, 
               and the echo request may optionally be repeated every 
               "interval" seconds.

               If there is a reply it will be displayed.  For repeating 
               pings the system displays the number sent/rcvd, the average 
               round trip time in milliseconds, and the success rate.  The 
               "wait for reply" process may be cancelled at any time by 
               entering <CR> by itself.

               If you specify a hostname (e.g. gb7pzt.ampr.org) instead of a 
               numeric IP address the request may take longer to action if 
               the hostname isn't found in DOMAIN.SYS, because the name will 
               have to be resolved by sending a DNS request.

               Examples:
                  PING 44.131.91.2           Single ping of minimum size
                  PING 44.131.91.2 50        Single ping with 50 bytes data
                  PING gb7pzt                Uses DNS to resolve host.
                  PING 44.131.91.2 512 10    Ping 512 bytes every 10 secs

               The response for a single ping looks like this:

                  G8PZT:KIDDER} PING: Pinging 44.131.91.2: hit <RETURN> to    
               quit...

                  44.131.91.2: echo reply - rtt 495 msec

               And for a repeating ping it looks like this:

               G8PZT:KIDDER} PING:
                 Target             Interval   Sent   Rcvd   %  Ave Rtt
                 44.131.91.2            9955      1      1  100  880
                 44.131.91.2            9955      2      2  100  880
                 44.131.91.2            9955      3      3  100  880

               Limitations: The ROUTER must have an IP address and have IP
                            routing defined for this command to work.  
                            Unrealistic ping rates are prevented.

               Availability: The PING command is currently available to all
                             users, but due to the potential for abuse the 
                             repeating ping option may be made sysop-only in 
                             future versions.


      PMS -- Access the integral PMS

               Syntax:  PMS

               The PMS command connects the user to Xrouter's integral PMS 
               (Personal Message System).  This is a no-frills message 
               storage and retrieval system which can be used to exchange 


      Xrouter Command Reference Revision 2.2 (18/12/02)        Page 12
      User Commands


               messages between users and sysops.

               If the sysop has defined PMSCALL in XROUTER.SYS, users may 
               perform an AX25 level 2 connect directly to the PMSCALL 
               instead of using the PMS command.  (PMSCALL must not not be 
               the same as NODECALL)

               If PMSALIAS and a suitable PMSQUAL are also defined, users 
               may connect directly to the PMS from another node, using 
               NetRom.

               The PMS has its own simple commands as follows:

               B[ye]           Disconnect from the PMS.
               H[elp]          Display list of commands.
               K[ill] <n>      Kill message number n.
               L[ist]          List messages.
               Q[uit]          Disconnect from the PMS
               R[ead] <n>      Read message number n.
               S[end]          Send a message to sysop.

               If the user accessed the PMS using the "PMS" command, he will 
               be returned to Xrouter's main command prompt upon exit, 
               otherwise he will be disconnected.

               There is no limit to the number of messages or the size of a 
               message.  If no disk is available, messages are stored in RAM 
               and therefore will be lost if the machine is restarted.  If a 
               disk is available, messages are stored on the disk and will 
               persist until killed.


      PORTS -- List the available ports.

               Syntax:  P[ORTS]

               Displays the router's port numbers along with their brief 
               descriptions as specified by the PORTID fields in the CFG 
               file.

               The command may be abbreviated to "P".


      QUIT     Disconnect from the router.

               Syntax:  Q[uit]

               The QUIT command performs the same function as BYE, namely to 
               terminate your session with the router.  The disconnection 
               will occur only when all outstanding data has been sent to 
               you.


      ROUTES -- List NetRom neighbours which can be heard directly.  

               Syntax:  R[OUTES] [Q | X | Y | Z | *] [port]






      Xrouter Command Reference Revision 2.2 (18/12/02)        Page 13
      User Commands


               The ROUTES command, which may be abbreviated to "R", lists 
               the immediately adjacent NetRom nodes, i.e. those who can be 
               heard directly, providing those nodes are making NetRom nodes 
               broadcasts.

               For each neighbour node the display shows the port number, 
               the neighbour's callsign, the route quality, and the number 
               of nodes accessible through that neighbour.

               A chevron (>) in the left-most column indicates a route which 
               is in use, and an exclamation mark (!) in the right-most 
               column indicates that the data has been "locked in" by the 
               sysop. See example...

               If any argument is supplied, it will give additional 
               information mainly of interest to sysops.  The additional 
               fields are the current MAXFRAME, FRACK and PACLEN settings, 
               the number of information frames sent, the number of 
               information frames re-sent, the retry rate, which is the 
               ratio of the two preceding figures (or * if both are zero), 
               and the time a nodes broadcast was last heard from the 
               neighbour.

               Examples:
               If no arguments are supplied, the output looks like this:

               G8PZT:KIDDER} Routes:
               Port Callsign  Qty Nod
               >  5 G4FPV     150  70!
               >  7 GB7PZT    250   1!
               >  8 GB7WV-12  100  32!
               >  9 GB7GH     150 104!
                 10 GB7CL     150   1!
               > 11 GB7IPT-7  150   3!
                 12 G1LOA-10  150   2!

               The R * form produces an output similar to this:

              G8PZT:KIDDER} Routes:
              Port Callsign Qty Nod Max Frack Pac  Sent Resent Rty%  Last Heard
              >  5 G4FPV    150  70! 5   7000 160 15550   1507   9% 09/06 13:46
              >  7 GB7PZT   250   1! 7   5000 240 25387      4   0% 09/06 13:47
              >  8 GB7WV-12 100  32! 1   4000 120 12170   3426  28% 09/06 13:35
              >  9 GB7GH    150 104! 4   7000 120  7442   1335  17% 09/06 13:47
                10 GB7CL    150   1! 3   7000 240   330      1   0% 09/06 13:23
              > 11 GB7IPT-7 150   3! 2   7000 120 19401   2928  15% 09/06 13:47
                12 G1LOA-10 150   2! 4   7000 120 10745   3379  31% 09/06 13:39

               The "R R 2" form will display only the routes which use port 
               2.

               The "R X" form shows the long term average retry rate (Rty%), 
               plus a "running average" (Now%).  It also records the peak 
               value of the running average (Max%) and the date/time when it 
               occurred.  For example:







      Xrouter Command Reference Revision 2.2 (18/12/02)        Page 14
      User Commands


      G8PZT:KIDDER} Routes:
      Port Callsign  Qty Nod    Sent  Resent  Rty%  Now%   Max% @dd/mm hh:mm
      >  7 GB7PZT    250   1!  10067       0    0%   0.0    0.0  
      >  9 GB7GH     150  93!    333      17    5%   5.3    5.6  26/08 20:26
      > 12 G1WXA-1   150   2    1231      83    6%   1.6   24.4  26/08 12:37
      (End of list)

               The "R Y" form shows the "Smoothed Trip Time" (STT) in 
               seconds, the number of time-domain routes (TDR) learned via 
               that neighbour, some flags, plus the MAXTT (milliseconds) and 
               MAXHOPS figures for each route.  An stt of 0.00 indicates 
               that the link isn't open or the value hasn't yet been 
               measured.

               The flags field is mainly for my use and is subject to 
               change.  The current flag values are:

                     1    Locked route
                     2    Neighbour is INP capable
                     4    Neighbour is L3RTT capable
                     8    Neighbour is Xrouter
                     16   Dynamic route quality enabled.


               The "R Z" form is experimental and may be subject to change.  
               It shows the perentage of time the neighbour has been 
               connected (Con%), the data throughputs in bytes/sec and the 
               date / time of last L3 activity.

               The "R Q" form shows the calculated Netrom quality for each 
               route, plus the minimum, maximum and mean deviation of the 
               value.  You may use this as a guide when deciding what 
               quality to assign to a route.  A low mean deviation indicates 
               a quality which doesn't vary much.



      SEND     Send unproto text

               Syntax: SE[nd] <port> <destcall> [V digi,digi,..] <text>

               Sends an unproto (UI) packet on the specified port.  The 
               destination address and up to 8 digis may be specified.  This 
               command is included to facilitate tests.

               Example:  Send 7 CQ V G8EPR,G8AKX Meet me on 144.800!


      STATS -- Display router statistics.

               Syntax:    S[TATS] [L1 | L2 | L3 | *]

               Displays information about the performance of the router, 
               such as the uptime, the no. of packets routed, error rates 
               etc.  See elsewhere in this manual for a detailed explanation 
               of the output.






      Xrouter Command Reference Revision 2.2 (18/12/02)        Page 15
      User Commands


               Entering S by itself will give a single page synopsis, 
               whereas "S *" will produce the full stats.  "S L1" will show 
               the layer 1 (interface) stats, such as hardware errors.

               Note: On multi-port systems the display may wrap, and on busy
                     systems some of the fields may run together.  The exact 
                     format of the display is not yet finalised. 




      TELNET -- Establish a TCP "connection".

               Syntax:    TEL[NET] <hostname | ipaddress> [port]

               The TELNET command allows users to "connect" to other TCP/IP 
               systems, using a "shell" account, i.e. the user does not need 
               to be running TCP/IP as the router does all the TCP/IP <> 
               AX25 translation.

               The optional <port> parameter specifies the desired service 
               on the target host.  If not supplied, the default is 23, i.e. 
               the Telnet (remote login) port.  Common port numbers are 21 
               (FTP), 23 (Rlogin), 25 (SMTP), and 87 (TTYLINK).

               Examples:  TEL 44.131.90.6  21  - Connect to gb7ipt FTP.
                          TEL gb7lgs.ampr.org  - Remote login to gb7lgs
                          TEL gb7pzt 25        - Connect to gb7pzt SMTP 

               Limitations: This command will only work if the router has an
                            IP address and IP routing has been defined.  It 
                            should be obvious that the router also needs to 
                            be connected to an IP-capable network!

               Notes: Specifying target hosts by their IP addresses will
                      often result in faster connection if the hostname is 
                      not in domain.sys, as it will not have to wait for DNS 
                      resolution.

               See also: PING


      TTYLINK -- Chat directly to another TCP/IP station

               Syntax:  TT[YLINK] <hostname | ipaddress> [port]

               The TTYLINK command allows users of any type (i.e. AX25, 
               console, wire link, TCP/IP) to chat directly to TCP/IP users.

               This is similar to TELNET, except that the default port 
               number is 87, which is reserved for keyboard to keyboard 
               chat.  Other port numbers may be specified.

               Examples:  TTY 44.131.91.4
                          TTY g8pzt

               Limitations: In order for this command to work, the router
                             must have an IP address and have IP routing 
                             defined.



      Xrouter Command Reference Revision 2.2 (18/12/02)        Page 16
      User Commands


               Note: If the target hostname is not known to the router, it
                     will be more efficient to specify the target as an IP 
                     address, since this will not require DNS resolution.

               See also:  TELNET


      USERS Shows who is using the router.

               Syntax: U[SERS]

               The USERS command displays the circuits which originate or 
               terminate at the router.  "Through" connections are not 
               shown.

               No arguments are required, and a typical response is as 
               follows:

               G8PZT:KIDDER} Users:
               Sess#  Start-time  Idle Type Lnk User
                 807  09/06 13:25  25s Cct  TCP (gb7pfd) <--> TCP Dlink (GB7PZT)

               Sess#      is the session number.
               Start-time shows the date and time when the session started.
               Idle       Elapsed time since any uplink activity on session.
               Type       is the type of session as follows:
                               Amsg      APRS messaging
                               Asrv      APRS server
                               Cct       Circuit with another system
                               Chat      Chat server
                               Cls       Closing session
                               Cmd       Command prompt
                               DLC       Downlink (closing)
                               DLO       Downlink (opening)
                               Dscd      Discard
                               Edit      Editor
                               Echo      Echo
                               FTP       File Transfer Protocol
                               Ping      Ping, Nping, Gping
                               PMS       User is connected to PMS
                               Src       Data source
                               Talk      Talking to another user
                               Ttyl      TTYlink

               Lnk        is the uplink type as follows:

                               CON       Console (i.e. sysop)
                               TTY       Teletype (ascii wire link)
                               HST       Host application
                               TCP       TCP/IP
                               L2        Ax25 level 2
                               L4        Ax25 level 4 (Netrom)

               Established circuits are shown by <-->  and circuits being 
               set up are shown thus:  <~~>.

               For TCP/IP sessions in which the user does not have to log on 
               with a callsign, the IP address and TCP port number are 
               displayed in place of callsign.



      Xrouter Command Reference Revision 2.2 (18/12/02)        Page 17
      User Commands


               Unlike the equivalent BPQ command, this does not show the 
               version number - use the VERSION command for that, or buffer 
               count (this system does not use fixed buffers).


      VERSION  Display software version.

               Syntax: V[ERSION]

               The VERSION command displays the router model, version, 
               author and compilation date.  You should quote this 
               information when reporting any bugs.


      XLINK -- Establish a temporary interlink.

               Syntax: XLINK <slip | ppp>

               The XLINK command switches a dialled-in connection into the 
               specified mode, allowing TCP/IP operations to be conducted 
               between the caller and Xrouter.

               .cp3
               The temporary interlink persists until the line is 
               disconnected or, in the case of PPP, an inactivity timeout.

               The command is only accepted on MODEM (dial-in) ports.

               Temporary SLIP interlinks require no configuration. Temporary 
               PPP interlinks may optionally be configured by including PPP 
               commands in a PPPHOST.n file, where n is the port number.

               Example: XLINK PPP - Establish PPP interlink.


      YELL  -- Yell for sysop

               Syntax: Y[ell]

               The YELL command attempts to attract the attention of the 
               sysop by making a distinctive sound on the console and 
               displaying a message.  If the sysop is available she may then 
               break in on your session for a one-to-one chat.

               A yell may not always be successful because (a) the sound may 
               be disabled during unsociable hours, (b) the sysop may be 
               away from the console or busy talking to someone else, (c) 
               there may not even be a loudspeaker in the computer, or (d) 
               the node may be located on a remote hilltop or in someone's 
               garage.  












      Xrouter Command Reference Revision 2.2 (18/12/02)        Page 18
      APRS Messaging


      APRS MESSAGING COMMANDS
      =======================

      The APRS messaging system accepts the following commands:

               /A[nnouncements]    Show announcements
               /B[ulletins]        Show bulletins
               /C[ancel] [#]       List / cancel unacked message(s)
               /D[irects]          Show directly heard stations
               /H[elp] [cmd]       Display command help
               /Monitor [on|off]   Query / set traffic Monitor mode
               /Q[uit]             Quit (exit)
               /T[arget] [call]    Query / set target for msg
               /U[iview] [on|off]  Query / set UI-View mode
               /V[ia] [digis]      Query / set digipeater path
               /X                  Exit

      All commands and arguments are case-insensitive, and only the first
      letter of the command needs to be given, thus "/H" and "/help" are
      equally valid.

      APRS Messaging Commands In Detail
      ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~

      /A       Show Announcements

               Syntax:  /A 

               The /A command lists the APRS announcements received by the 
               router.  They are listed in alphabetical order by sender.

               Announcements have a destination address of the form 
               BLNxCCCCC where x represents a single non-digit and CCCCC 
               represents the category (up to 5 characters). They are 
               transmitted once per hour for 4 days, and incoming 
               announcements are retained for 4 days after last reception.

      /B       Show Bulletins

               Syntax:  /B

               The /B command lists the APRS bulletins received by the 
               router.  They are listed in alphabetical order by sender.

               Bulletins have a destination address of the form BLN#CCCCC 
               where # represents a single digit (0-9) and CCCCC represents 
               the category (up to 5 characters).  They are transmitted 
               every 20 minutes for 4 hours, and incoming bulletins are 
               retained for 4 hours after last reception.

      /C       List / Cancel Un-delivered Message(s)

               Syntax:  /C [message #]

               The /C (Cancel) command is used to cancel re-transmission of 
               outgoing messages originated by the user, e.g. "/C 12345" 
               will cancel message number 12345.  Entering /C by itself will 
               list the messages which may be cancelled.




      Xrouter Command Reference Revision 2.2 (18/12/02)        Page 19
      APRS Messaging


      /D       List directly heard stations.

               Syntax:  /D

               The /D command gives a brief list of the stations 
               heard directly.


      /H       Obtain help.

               Syntax:  /H [cmd]

               Entering /H alone produces a brief list of the commands and 
               their syntax.

               More detailed help on any of these commands is available by 
               using the "/H <command>" form, e.g. "/H /T" will display 
               help for the /T command.

               The form "H *" will list all the commands and aprs messaging 
               topics for which help is available.


      /M       Query or set traffic monitor mode.

               Syntax:  /M [on | off]

               The /M (Monitor) command controls message traffic monitoring.

               If monitoring is ON, all APRS messages will be displayed.  If 
               monitoring is OFF, only the messages addressed to the user 
               will be displayed.  The default is OFF, and the current state 
               is reported by using /M alone.


      /Q       Quit messaging mode.

               The /Q command quits the APRS messaging session and returns 
               you to the router's main prompt. The /x (exit) command 
               performs the same function.


      /T       Query / Set message target.

               Syntax:  /T [call]

               The /T command displays the current message target or sets a 
               new one.  Messaging is not possible until a target has been 
               set. The target remains in force until cleared or a new one 
               is set.

               The argument can take the following forms:

               CALLSIGN      "message" mode will be used.
               BLN#xxxxx   (# = 0-9) "bulletin" mode, category xxxxx
               BLN@xxxxx   (@ = non-digit) "announcement" category  xxxxx
               .           Any punctuation character clears target.





      Xrouter Command Reference Revision 2.2 (18/12/02)        Page 20
      APRS Messaging


      /U       Query / Set UI-View messaging mode.

               Syntax:  /U [on | off]

               The /U (UI-View) command displays and sets "UI-View" 
               messaging mode.  If no argument is given, the current mode is 
               reported.  If UI-View mode is on, outgoing msgs use UI-View 
               format, and if UI-View mode is of, outgoing msgs use APRS 
               format.

               The default mode is "off".  In either mode, both types of 
               message can be received.  UI-View messages will display with 
               a tilde (~) between the message and its ID, whereas APRS-
               format messages will display with a curly opening bracket ({) 
               if a message ID was supplied.


      /V       Query / Set digipeater (via) path.

               Syntax:  /V [digi,digi,...]

               The /V (Via) command queries or sets the digipeater path for 
               outgoing messages as follows:

                  /V               Display current path
                  /V RELAY,WIDE    Set path to RELAY,WIDE
                  /V .             Clear path (no digipeaters)

               The path remains in force until cleared or a new path is 
               specified.


      /X       Exit messaging mode.

               Syntax:  /X

               The /X command quits the APRS messaging session and returns 
               the user to the router's main prompt. The /q (quit) command 
               performs the same function.























      Xrouter Command Reference Revision 2.2 (18/12/02)        Page 21
      Chat Server


      CHAT SERVER COMMANDS
      ====================

      The following commands are available within the chat server only.

      /?       /ANSI     /BELL     /BYE      /CHANNEL  /ECHO     /EXIT
      /HELP    /HEADERLN /JOIN     /LEAVE    /LINKS    /MSG      /NAME
      /PERSONAL /QUIT    /STAMP    /TOPIC    /USER     /VERSION  /WHO


      CHAT SERVER COMMANDS IN DETAIL
      ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
      Note that the server is still experimental, and the syntax of these 
      commands may be changed in future versions.  Additional commands will 
      be added as required.


      /?       Display commands / syntax help.

               Syntax: /? [cmd]

               When used without arguments, the /? command lists the 
               available commands.  The syntax for any of the commands thus 
               listed may be shown by specifying the command as an argument 
               to the /? command.

               Examples:  /?          List available commands.
                          /? /who     Display syntax for the /WHO command.


      /ANSI   Enable / Disable ANSI colour

               Syntax:  /A[nsi] [on | off]

               The /ANSI command is used to enable or disable the use of 
               ANSI colour.  In order to make use of this feature, callers 
               must be using an ansi-compatible terminal.  When enabled, 
               each user's messages are shown in a different colour making 
               it easier to follow threads of conversation. 

               Typing /ANSI by itself displays the current setting.


      /BELL   Display / Set activity bell

               Syntax: /BE[ll] [0-3]

               The /BELL command controls which events are signalled by an 
               audible warning.  The warning consists of a bell character 
               (ascii 7) within the text.  In order to use this feature, 
               your terminal software must respond to bell characters.

               Arguments to the /BELL command are as follows:

                     0     No bells (default setting)
                     1     Informative messages from chat server only
                     2     Text entered by other chatters only
                     3     All events.




      Xrouter Command Reference Revision 2.2 (18/12/02)        Page 22
      Chat Server


      /BYE    Exit the chat server.

               Syntax: /B[ye]

               The /BYE command, which may be shortened to /B, disconnects 
               the user from the chat server, and informs everyone that he's 
               left.  There is no need for the user to /leave any logged 
               channels before issuing this command.

               If the user accessed the server via the router's CHAT 
               command, he will be returned to the router's main command 
               prompt, otherwise he will be completely disconnected.

               The /EXIT and /QUIT commands also perform this function.


      /CHANNEL  Display / Change logged channel(s).

               Syntax: /C[hannel] [number]

               The /CHANNEL command displays / changes the channel(s) the 
               user is logged to.  When no argument is supplied, the logged 
               channel(s) is / are displayed.  If a valid numeric argument 
               is supplied, the user is logged to the specified channel.

               Examples: /C        Displays current logged channel(s)
                         /C 22     Change to channel 22

               When a new channel is selected, the user remains logged to 
               any previous channels, (so he can "monitor" several channels 
               at once) but any subsequent text he sends will go to the new 
               channel (unless targeted otherwise).

               Note: Channels 1 to 255 are "local" to each chat server, and 
               channels 256-32767 are "global", i.e. they are linked with 
               all other servers. 

               The /JOIN command has a similar function, and /LEAVE is used 
               to de-select unwanted channels.


      /ECHO    Control host echo

               Syntax: /EC[ho]

               The /ECHO command toggles host echo on and off.  The default 
               setting is ON, i.e. the user receives a copy of any text he 
               sends to the channel.

               Although host echo slightly increases bandwidth usage, it 
               helps to put the user's text into temporal context amongst 
               the other channel texts, especially when there is latency on 
               the links.  The user can more easily spot mistakes such as an 
               incorrectly entered name or callsign.


      /EXIT    Exit the chat server.

               Syntax: /E[xit]



      Xrouter Command Reference Revision 2.2 (18/12/02)        Page 23
      Chat Server


               The /EXIT command, which may be shortened to /E, disconnects 
               the user from the chat server, and informs everyone that he's 
               left.  There is no need for the user to /leave any logged 
               channels before issuing this command.

               If the user accessed the server via the router's CHAT 
               command, he will be returned to the router's main command 
               prompt, otherwise he will be completely disconnected.

               The /BYE and /QUIT commands also perform this function.


      /HEADERLN Controls display format

               Syntax: /HEA[derln] [on | off]

               The /HEADERLN command controls whether or not the "header" 
               and text of messages are displayed on the same line.

               If the setting is OFF (default), the header and text are 
               displayed on the same line.  This leads to a more compact 
               display, especially when the texts are short.

               If the setting is ON, headers and text are displayed on 
               separate lines. 


      /HELP    Obtain help.

               Syntax: /HELP [topic]

               When used without arguments, the /HELP command gives brief 
               instruction on how to access various levels of help.

               If a topic is specified, detailed help for that topic (if 
               available) is displayed.  The topic may be a command name, or 
               any other chat server related topic.  A list of the available 
               help topics can be obtained by specifying "*" as a topic.

               Examples:  /H          Display general instructions.
                          /H *        List available help topics.
                          /H /who     Display help for /WHO command.

               Note:  When using /H to display help for a command, the         
               leading slash for that command may be omitted.  Thus         
               "/H /who" and "/H who" are equally permissible.


      /JOIN    Join (log onto) a channel.

               Syntax: /J[oin] <channel>

               The /JOIN command logs the user to a channel, and performs a 
               similar function to the /CHANNEL command.








      Xrouter Command Reference Revision 2.2 (18/12/02)        Page 24
      Chat Server


               When a new channel is selected, the user remains logged to 
               any previous channels, (so he can "monitor" several channels 
               at once) but any subsequent text he sends will go to the new 
               channel (unless targeted otherwise).  (Unwanted channels may 
               be de-selected using the complementary /LEAVE command.)

               Example:  /J 22   Join channel 22

               Note: Channels 0 to 255 are "local" to each chat server, and 
               channels 256-32767 are "global", i.e. they are linked with 
               all other servers. 


      /LEAVE   Leave (log off) a channel.

               Syntax: /L[eave] <channel>

               The /LEAVE command logs the user off the specified channel.  
               When a user joins a channel, he remains logged to any 
               previous channels, so this command allows him to de-select 
               unwanted channels.

               Example:  /L 22   - Leave channel 22


      /LINKS   Display / Change peer links

               Syntax: /LI[nks] [add | drop <peercall>]
                       /LI[nks] ADD <peername> <ip_addr>:<tcp_port>
                       /LI[nks] DROP <peername> 

               The /LINKS command shows the status of the links with other 
               chat servers, and allows sysops to add and drop links without 
               rebooting Xrouter.

               In the Netrom case, <peercall> is the netrom callsign (not 
               alias) of the peer server, and it must exist in Xrouter's 
               nodes table otherwise the link will not be opened.  If you 
               have trouble with peers dropping in and out of the nodes 
               table, create a "locked" node entry.

               In the TCP/IP case, <peername> is the server ID of a Tampa 
               Ping-Pong server, <ip_addr> is its IP address, and <tcp_port> 
               is the TCP port number of the server.

               Examples:  /LI ADD G1SSL-8
                          /LI DROP G8NTU-8
                          /LI ADD brmcht 80.195.22.37:3601


      /MSG     Send a short message to a channel or a single user.

               Syntax: /M[sg] <channel | callsign> <text>

               The /Msg command is used to send a short message (70 chars 
               max.) to any specified channel or single user.  You may for 
               example use this command to direct a message to a channel you 
               are monitoring, but not actually logged to.




      Xrouter Command Reference Revision 2.2 (18/12/02)        Page 25
      Chat Server


               If you direct a message to a specific user, he may be on this 
               or any other chat server.  The private nature of the message 
               will be indicated to the recipient by asterisks around the 
               sender's call, e.g. <*g8pzt@kdchat*> (Paula): Meet me on 
               channel 69.

               Examples: /M 32 Hello People
                         /M g6yak Meet me on channel 69

               The first form sends "Hello People" to all the users of 
               channel 32, and the second form sends a private msg to g6yak 
               only. Providing G6YAK is logged on to any chat server, the 
               message will find him.

               Note: As with all things Packet, the term "private" is 
               relative, as nothing is truly private when it is broadcast!


      /NAME    Set name.

               Syntax:  /N[ame] <your name> [channel]

               The /NAME command sets the user's name, which will be 
               displayed on the user list and prefixed to everything he 
               sends to others.

               Users are not allowed to join any channels until they have 
               supplied a name (12 chars max), so it acts as a "log on" 
               command.  The name need be supplied only at the initial 
               logon, and may be changed as the user wishes.

               On the first use of this command, the user may optionally 
               specify a channel to join instead of the default (channel 0).

               TCP/IP users must first use the /USER command (see below) to 
               enter their callsign.

               Examples: /N Paula       Set name to "Paula"
                         /N Paula 23    Set name and join channel 23


      /PERSONAL  Display / change personal description.

               Syntax: /P[ersonal] [text | @]

               The /PERSONAL command is used to display or change the user's 
               personal description.  This is a short text of up to 32 
               characters, which is displayed on the user list.  It may 
               typically contain the user's home town and "brag" 
               information.  If the user logs onto any "public" channels 
               (i.e. those above channel 255), this information will appear 
               on the user lists of all other chat servers.

               If used without arguments, the /PERSONAL command displays the 
               user's current text.  

               If the argument is "@", the existing text is removed.





      Xrouter Command Reference Revision 2.2 (18/12/02)        Page 26
      Chat Server


               Examples: /P                        - Displays current text
                         /P Kidderminster, sysop   - Set new text.
                         /P @                      - Clear previous text.


      /QUIT    Exit the chat server.

               Syntax: /Q[uit]

               The /QUIT command, which may be shortened to /Q, disconnects 
               the user from the chat server, and informs everyone that he's 
               left.  There is no need for the user to /leave any logged 
               channels before issuing this command.

               If the user accessed the server via the router's CHAT 
               command, he will be returned to the router's main command 
               prompt, otherwise he will be completely disconnected.

               The /BYE and /EXIT commands also perform this function.


      /STAMP   Controls timestamping of message texts.

               Syntax:  /S[TAMP] [on | off]

               With stamp ON (default) each mesage is timestamped in the 
               following style, designed to be readable both by humans and 
               by client software:

               [1234] 09:35 {21:33} <ZL2BAU@BAUCHT> (Peter): Hello folks

               The first field is the channel number.  This may seem 
               pointless, but you will soon appreciate it if you are logged 
               to more than one channel!

               The second field is the chatserver's timestamp, i.e. the 
               local time the message was received at, and redistributed by, 
               the server.  This is useful if you are away from the screen 
               for a while, or are logging the activity to disk.

               The third field is the originating server's timestamp, i.e. 
               the local time at which the message was entered into the 
               system.  With servers linked across different timezones, the 
               two timestamps may differ by up to 12 hours.  Personally I 
               find it useful to know what the other user's local time is, 
               because it helps put their comments into perspective.  The 
               timestamps can also highlight propagation delays.

               The fourth field consists of the sender's callsign and the 
               "alias" of the originating server.  Users may (and often do) 
               log onto more than one server, often at the same time.

               The fifth field is the user's name.

               Those who are used to chatting on the Ping-Pong system seem 
               to be unable to cope with anything which is different, so 
               with STAMP OFF the header information is abbreviated in the 
               Ping-Pong style as follows:

               <g8pzt:Paula>: Test


      Xrouter Command Reference Revision 2.2 (18/12/02)        Page 27
      Chat Server





      /TOPIC   Display / Change channel topic.

               Syntax: /T[opic] [channel] [text | @]

               Every channel has an optional topic, and the /TOPIC command 
               can be used to display the existing topic or change it.  The 
               topic can be up to 12 characters, and is displayed on the 
               /Who list.

               Examples: /T                        - Show current ch. topic
                         /T 32                     - Show channel 32 topic
                         /T 32 TCP/IP discussion   - Set topic for ch. 32
                         /T @                      - Clear topic.


      /USER    TCP/IP logon.

               Syntax:  /U[ser] <callsign> [name]

               The /USER command is available only to TCP/IP users.  It sets 
               the user's callsign (and optionally his name), which will be 
               displayed on the user list and prefixed to everything he 
               sends to others.

               The user will not be able to join the conference without 
               supplying both callsign (9 chars max) and name (12 chars 
               max), but if the name is omitted from this command he may 
               enter it in the normal way with the /Name command.

               Examples: /U g8pzt          - Set callsign to "g8pzt".
                         /U g8pzt Paula    - Set callsign and name.


      /VERSION  Display chat server version.

               Syntax: /V[ersion]

               The /VERSION command displays the chat server version, author 
               and compilation date.  Please quote it if reporting bugs.


      /WHO     List channels and users.

               Syntax: /W[ho] [*]

               The /WHO command lists who is logged onto the chat server, 
               and what channels they are on.

               If no arguments are supplied, the active channels are listed, 
               along with the callsigns of their users.

               If an asterisk is supplied as the argument, each user is 
               displayed in more detail.  The display would typically show 
               the user's callsign, name, personal text and logon date/time.





      Xrouter Command Reference Revision 2.2 (18/12/02)        Page 28
      Chat Server


               Examples:  /W     Lists channels & users in brief format
                          /W *   Lists users in detail




























































      Xrouter Command Reference Revision 2.2 (18/12/02)        Page 29
      Sysop-only Commands


      SYSOP-ONLY COMMANDS
      ===================

      The following commands are available only to sysops.  Some of them, 
      e.g. ARP are repeated from above, but with extra facilities.


      ARP -- Display / Edit the ARP table.

               Syntax: ARP [ADD <host> <hwtype> <addr>]
                       ARP [DROP <host> <hwtype>]
                       ARP [LIST] 

               The ARP command is used to display and edit the Address 
               Resolution Table, responsible for mapping IP datagrams to 
               callsigns.

               If no arguments are supplied, the table is listed.

               ADD        adds an entry to the table. 
               DROP       deletes an entry.
               LIST       lists the table.
               FLUSH      Removes temporary (learned) entries
               PUBLISH    Adds an entry on behalf of a hidden system

               <host> is an IP address in dotted quad form.

               <hwtype> is the hardware address type, i.e. "ax25", "ether", 
               or "netrom".

               <addr> is the hardware address, i.e. callsign or ethernet 
               address.  It is possible to route IP through digipeaters, by 
               including the digipeaters callsigns as part of the ax25 
               address.  The ax25 destination and digis must form a single 
               comma-delimited string. 

               The PUBLISH option is typically used in cases where one 
               system is "hidden" (i.e. only routable via) a "front end" 
               router, and instructs the front end router to respond to ARP 
               requests for the hidden system's address.  In this case 
               <host> is the IP address of the hidden system, and <addr> is 
               the hardware address of the front end router.

               Examples:
               ARP ADD 44.131.91.2 ax25 gb7pzt-5         Add ax25 entry
               ARP ADD 44.131.91.66 ax25 g8bkl,g6yak     Use digis
               ARP DROP 44.131.91.7 ax25                 Delete ax25 entry
               ARP PUB 44.131.91.77 ax25 g8pzt-7         Publish 91.77
               ARP LIST                                  List the table
               ARP                                       List the table


               Availability:
               The LIST subcommand is available to everyone, but ADD and 
               DROP are sysop-only.







      Xrouter Command Reference Revision 2.2 (18/12/02)        Page 30
      Sysop-only Commands


               Note: 
               In order for this command to have any meaning, the router 
               must have an IP address and be connected to an IP-capable 
               network.


      AXROUTES -- Display AX25 level 2 circuits

               Syntax: AX[ROUTES]

               The AXROUTES command displays information about active and 
               recently active AX25 level 2 connections, allowing the sysop 
               to monitor the performance of the links between the router 
               and its users.

               Entries are purged 24 hours after they were last active, 
               unless they are "locked" (indicated by "!" after the 
               callsign), i.e. in use by level 3.

               A typical display looks like this:

      Por Callsign   M Pac  F RTT   Sent Resent  Rty   Rcvd   Lost  Rol Date/Time
      >5  G4FPV    ! 5 160  7   5  24217   1265   5%  24010    984   4% 28/01 09:46
      >7  GB7PZT   ! 7 240  5   1 100884      0   0% 129788      0   0% 28/01 09:46
      >8  GB7WV-12 ! 1 120  4   2  14456   3348  23%  14218    753   5% 28/01 09:46
      >9  GB7GH    ! 4 120  7   3  16591    511   3%  14965      4   0% 28/01 09:43
       10 GB7CL    ! 3 240  7   2   1122     55   4%   1009      5   0% 27/01 23:32
      >11 GB7IPT-7 ! 2 120  7   5 104483  15436  14%  46589   8344  17% 28/01 09:46
       12 GB7BM    ! 4 120  7   4  13562   1598  11%   5626     57   1% 28/01 09:36
       8  WV12-1     1 120  7   2   3362    999  29%    918     38   4% 28/01 08:07
       12 BRUM-1     4 120  7   5  10730    593   5%   1503     52   3% 28/01 09:45
       1  G1ZRN      2 160  7   2   3693    164   4%    949     14   1% 28/01 02:24
       4  G3MRC      2 120  7   5   4937    160   3%     35      0   0% 27/01 23:38
       1  G0NXB      2 160  7   3   1485     89   5%     96      0   0% 27/01 19:37
       1  G6YAK-2    2 160  7   3     26      2   7%     23      0   0% 27/01 22:46
       1  G0EWH      2 160  7   4   1687    325  19%    213      2   0% 27/01 16:46
       1  G4SPZ      2 160  7   2    222     10   4%     83      8   9% 27/01 20:43
       1  G4MTG-2    2 160  7   3     10      0   0%      5      0   0% 27/01 11:17
       1  G0HTF      2 160  7   4    332     13   3%     63     11  17% 28/01 09:45
       6  G3PWJ      2 160  7   3     18      0   0%      3      0   0% 27/01 23:56
       1  G7UBX      2 160  7   2     27      1   3%      6      0   0% 28/01 08:46
       1  M0ALH      2 160  7   4      8      1  12%      5      2  40% 28/01 09:24
      (End of list)

               The display shows the port number and callsign, with a 
               chevron ">" in the leftmost column in the link is currently 
               active. "M", "Pac" and  "F" are the Maxframe, Paclen and 
               Frack last used on that link.  They may be the same as the 
               port or global defaults, or they may have been modified by 
               the router to suit link conditions

               "RTT" is the Round Trip Time in seconds, i.e. the average 
               time from sending a packet to receiving an ack for that 
               packet.  This is dependent on many variables, such as the 
               packet size, the quality of the link, the data rate, the 
               amount of queued data, the TXdelay and Resptime intervals at 
               each end etc...





      Xrouter Command Reference Revision 2.2 (18/12/02)        Page 31
      Sysop-only Commands


               "Sent" is the total no. of L2 frames sent to that station, 
               and "Resent" is the number of frames which had to be retried. 
               "RTY%" is the ratio of these expressed as a percentage.

               "Rcvd" is the total no. of L2 frames received from that 
               station and "Lost" is the number which were lost and had to 
               be re-sent from the other end.  "Rol" is "Rate Of Loss", 
               which is effectively the retry rate which would be seen by 
               the other station.

               Finally, Date/Time shows when the station was last heard.


      BELL  -- Display / Set bell times.

               Syntax:  BE[ll] [#xxxx | n | n+n+n]

               The BELL command is used to display and set the hours during  
               which the console bells will sound.  These are the two tone 
               connection (low->high) and disconnection (high->low) bells, 
               and the 4 tone (Star Trek doorbell) sysop paging sound.

               When used without arguments, the current setting is displayed 
               as a hex number, e.g. "#7fff00".  This represents a 24 bit 
               binary number, with bit 0 (least significant, i.e. rightmost, 
               bit) representing midnight, and bit 23 (leftmost) 
               representing 23:00h.  If any bit is set, the console bells 
               will be active during that hour.  In the above example, 
               #7fff00 represents binary 0111 1111 1111 1111 0000 0000 i.e. 
               hours 08:00 to 22:00 inclusive.

               There are 3 ways to specify the bell times:

               #xxxxxx    A 24 bit hex number as explained above.
               n          Single decimal number representing 1 hour
               n+n+n      Combination of decimal hours (no spaces)

               For example, "BELL #f0" would enable bells from 04:00 to 
               07:59 only,  "BELL 9" would enable bells from 09:00 to 09:59 
               only, and "BELL 9+10+12" enables bells from 09:00 to 10:59 
               and 12:00 to 12:59.

               The default bell times are 08:00 to 22:59 inclusive. The BELL 
               command may be used in BOOTCMDS.SYS to override this.


      CAPTURE -- Enable / disable tracing to disk file.

               Syntax:  CAP[TURE] [on | off]

               The CAPTURE command is used to enable or disable the tracing 
               to disk of incoming and outgoing traffic. 

               When capture is enabled, anything which is displayed in the 
               central 22 line window is written also to disk.  This 
               includes session activity and TRACE'd data.  Whereas the 
               screen display is filtered to prevent it being garbled by 
               binary data, the capture is pure binary, so it is useful for 
               diagnostics.



      Xrouter Command Reference Revision 2.2 (18/12/02)        Page 32
      Sysop-only Commands


               The optional argument may be "ON" or "OFF".  If no argument 
               is supplied, the current setting is reported.

               This command overrides the <F5> (toggle capture) key.

               The console may override a remote sysop's settings.

               Example:  CAP ON  -  Enables capture.

               Note: You are advised not to enable long-term capture on a 
               floppy based system otherwise performance will be 
               compromised.

               See also:  MONITOR


      CTRL     Read / Write remote hardware control port.

               Syntax: CTRL [0-255]

               The CTRL command reads from and writes to the CTRL port 
               defined in the CFG file (e.g. CTRL=0378 to use LPT1).  This 
               is used for controlling external hardware devices via logic, 
               and reading status from them, for example transmitter 
               bank switching or temperature alarm monitoring.

               "CTRL" by itself reads the port, and "CTRL <value>" writes 
               it.  The read value is the OR of last written value and 
               external levels, so a bit must be written to 0 in order to use 
               it as an input.  If written to 1, a bit will always return 1.


      DATE -- Enquire / set system date

               Syntax:  DATE [dd/mm/yy[yy]]

               If no argument is supplied, the existing system date is 
               shown.

               If the user is a sysop, and the argument is a valid date of 
               form dd/mm/yy or dd/mm/yyyy the system date is set to the new 
               value.

               Example:  DATE 24/2/99

               See also: TIME


      DHCP -- Display DHCP-obtained IP configuration parameters.

               Syntax:  DHCP <port>

               For ports on which the DHCP Dynamic Host Configuration 
               Protocol) client is enabled, the DHCP command displays the IP 
               configuration parameters which have been obtained via DHCP.

               Parameters displayed include: IP address, DHCP server 
               address, gateway IP address, primary DNS address, lease 
               expiry time, and DHCP state.



      Xrouter Command Reference Revision 2.2 (18/12/02)        Page 33
      Sysop-only Commands


               DHCP is enabled by including the "DHCP=1" directive in the 
               relevant PORT block within XROUTER.CFG.


      DIAL -- Dial a PSTN connection.

               Syntax:  DIA[l] <port> <script>

               The DIAL command invokes the named Dial Up Networking (DUN) 
               script on the specified port.

               This command will have no effect unless the port is connected 
               to a PSTN modem, the interface protocol is defined as 
               MODEM, and the script file exists.

               Example: DIAL 1 AOL.SCR

               See also:  DUN - dial up networking


      DIGIFLAG -- Display / Set digipeat options.

               Syntax: DIGIFLAG <port> [0-255]

               The DIGIFLAG command is used to display and/or set the 
               digipeat options for a port.

               New settings override those read from the CFG file, and 
               remain in force until changed, or the system is restarted.

               The digipeat options value is the sum of the following:

                     0        No digipeating on this port
                     1        Digipeat UI frames
                     2        Digipeat non-UI frames
                     4        Enable RELAY generic APRS digipeating
                     8        Enable TRACE and TRACEn-N APRS digipeating.
                     16       Enable WIDE and WIDEn-N
                     64       Enable gating from Packet to Internet.
                     128      Enable gating from Internet to Packet.

               The minimum abbreviation of this command is DIGIF.

               Examples: DIGIF 3        - Enquire setting for port 3
                         DIGIF 3 255    - Set port 3 digiflag to 255

               See also: DIGIPORT - Set port to digipeat on


      DIGIPORT -- Display / Set port to digipeat on.

               Syntax:  DIGIPORT <port> [destport]

               Displays or specifies the port upon which digipeated frames 
               should be transmitted.

               If "destport" is not specified, the current setting is 
               displayed.




      Xrouter Command Reference Revision 2.2 (18/12/02)        Page 34
      Sysop-only Commands


               If "destport" is zero, frames are transmitted on the port 
               upon which they are received, otherwise they are transmitted 
               on the port specified.

               The minimum abbreviation of this command is DIGIP.

               Example: DIGIP 3 5   - Digipeat from port 3 to port 5

               Limitations:  Frames may currently be digipeated only to one
                             port.  In order for a BBS on one port to 
                             broadcast unproto headers to several ports at 
                             once, the BCAST option must be used instead.

               See also:  DIGIFLAG - Control type of frames digipeated


      DISCARD  Start a sink session.

               Syntax: DI[scard]

               The DISCARD command starts a "sink" session, whereby the 
               router ignores (discards) everything subsequently sent to it.  
               This is useful for testing TNC's, link throughputs etc.

               A DISCARD session can only be ended by disconnection.


      DNS -- Domain Name Server commands.

               Syntax: DNS <<add | drop> <ipaddr>> | <list>

               The DNS commands are used to add and delete Domain Name 
               Servers from the server list, and to display the list.

               Domain Name Servers are external TCP/IP hosts which are used 
               to resolve host names, for example "bbc.co.uk", into IP 
               addresses, when the information is not found locally in 
               DOMAIN.SYS.

               In order for Xrouter to use this process, it needs to know 
               the IP addresses of suitable DNS's.  These can be specified 
               at boot time by including one or mode commands "DNS=<ipaddr>" 
               in XROUTER.CFG.  Alternatively, the DNS ADD command may be 
               used at any time.

               The "DNS DROP" command is used to delete a name server from 
               the list, and "DNS LIST" displays the list.

               Examples: DNS ADD 62.31.117.22
                         DNS DROP 44.131.88.73


      DOS -- Enter PZTDOS command mode.

               Syntax: DOS

               The DOS command switches the command interpreter into "DOS 
               mode", allowing local and remote sysops to use familiar DOS 
               commands to maintain the system without taking it off line.



      Xrouter Command Reference Revision 2.2 (18/12/02)        Page 35
      Sysop-only Commands


               In this mode, the normal command prompt is replaced by a DOS-
               style $P$G prompt showing the current drive and directory, 
               and only the PZTDOS commands are understood.

               The operator must use the EXIT command to return to normal 
               command mode.

               Sessions automatically return to command mode upon 
               disconnection. 

               PZTDOS accepts both the MSDOS backslash (\) and the UNIX 
               forward slash (/) pathname separator characters, and they may 
               be freely mixed.  For the sake of clarity however, the prompt 
               always displays the path using the MSDOS convention, as this 
               is familiar to the most users.

               As in MSDOS and UNIX, when specifying pathnames, a single dot 
               (.) represents the current directory, and a double dot 
               represents the parent directory.  Thus a command such as "CD 
               ../FRED" would change to directory FRED, which is located off 
               the current directory's parent.

               Unlike MSDOS, PZTDOS does not maintain a separate "current 
               directory" on each drive, and you will be logged to the root 
               when changing drives.  The normal A: B: etc. commands can be 
               used to change drive, and the CD (change directory) command 
               can also accept a drive letter.

               Notes:
               PZTDOS is fully multitasking, i.e. normal router operation 
               continues while PZTDOS mode is operating.

               Console sysops may also invoke a conventional dos "shell" 
               using the <F9> key, for running commands and programs not 
               available within PZTDOS.
               This mode is NOT multitasking and normal router operation is 
               suspended for the duration of the shell.  The operator must 
               limit the duration of the shell session otherwise the 
               software watchdog (if enabled) will reboot the system.
               TSR's and programs which interfere with the timer or serial 
               ports should not be invoked from a shell as they may lock up 
               the router or affect its performance.  Shell sessions are 
               ended with the EXIT command.


      DUN -- Dial Up Networking configuration commands.

               Syntax: DUN A[dd] <callsign | ip_address> <script>
                       DUN D[rop] <callsign | ip_address>
                       DUN L[ist]
                       DUN LO[g] [0-255]

               Dial-Up Networking (DUN) is a subsystem which allows Xrouter 
               to connect to other TCP/IP systems via a dial-up Public 
               Switched Telephone Network (PSTN) link.  The DUN commands are 
               used to configure this subsystem.






      Xrouter Command Reference Revision 2.2 (18/12/02)        Page 36
      Sysop-only Commands


               DUN ADD creates an association between a callsign (for KISS 
               links) or gateway IP address (for PPP or SLIP links) and a 
               DUN script.

               DUN DROP removes a previously created association between a 
               callsign or gateway IP address and a DUN script.

               DUN LIST lists the peers to whom a dial-up connection may be 
               established, and the names of the scripts used to make the 
               connections.

               DUN LOG sets the level of logging, for diagnostic purposes.  
               The argument is a flag field, comprising the sum of the 
               following values:

                      1       Log starts, stops and errors.
                      2       Log all script lines.
                      4       Log responses from modem or host.

               A value of 0 disables all logging.  If no arguments are 
               supplied, the current logging level is reported.

               Examples: DUN ADD gb7tyr  gb7tyr.scr
                         DUN ADD 62.31.176.22  pipex.scr
                         DUN DROP 62.31.176.22
                         DUN LOG 3

               The DUN ADD and DUN LOG commands may also be used in 
               IPROUTE.SYS and / or BOOTCMDS.SYS to set up the system at 
               boot time.


      EXIT  -- Exit the program.

               Syntax: EX[it] <0-255>

               Exits the program immediately, returning the argument as the 
               "errorlevel" for use in batch file processing.


      FRACK -- Display / Set FRACK for a port.

               Syntax:  FRACK <port> [msec]

               Displays the current FRACK (AX25 level 2 T1 timer) setting 
               for the specified port, or allows it to be changed.

               If the second argument is omitted, the current value is 
               displayed, otherwise the value in milliseconds is used.

               The new setting overrides the value specified in the CFG 
               file, and remains in force until changed or the next restart.

               Examples:  FRACK 2          - Display port 2 frack setting
                          FRACK 2 6000     - Set port 2 frack to 6 seconds







      Xrouter Command Reference Revision 2.2 (18/12/02)        Page 37
      Sysop-only Commands


               Note: A typical FRACK setting for 1200 baud is 7000 (7 secs),
                     and specifies how long AX25 will wait for a level 2 ack 
                     before requesting confirmation.  Setting this figure 
                     too low is antisocial, achieves nothing, and could 
                     result in the link retrying out.


      FULLDUP -- Display / Set full duplex mode.

               Syntax:  FULLDUP <port> [0 | 1]

               Displays the current duplex setting for a port, and allows it 
               to be changed without restarting the system.  If port is 
               operating in full duplex mode, DCD is ignored and the port 
               will transmit whenever it has anything to send.

      If two numeric arguments are supplied, the duplex flag is set to the 
      second argument, otherwise the current setting for the specified port 
      is displayed.  Values are: 0 - simplex, 1 - full duplex.

               Modified settings remain in force until changed or system is 
               restarted.

               Example:  FULLDUP 3    - Display current setting for port 3
                         FULLDUP 3 1  - Set port 3 into full duplex mode

               Note: On KISS ports, allow up to 5 minutes for modified
                     settings to reach the TNC.


      IP -- Display / Change IP parameters and routing table.

               Syntax:
               IP ROUTES
               IP ROUTE ADD <host>[/len] <gateway> <port> [d|v|n|e|u|r|s]
               IP ROUTE DROP <host> <len>
               IP ROUTE DEFAULT <port> [gateway [d|v|n|e|u|r|s]]
               IP ROUTE LOOKUP <host>
               IP TTL [1-255]
               IP QUIET [0-255]
               The IP commands are used to display and alter IP parameters, 
               and the IP routing table.

               The IP route table contains a series of entries which are 
               checked whenever a datagram is routed.  The entry which 
               matches the destination address and mask with the highest 
               number of bits is the one which will route the datagram.

               The IP ROUTE command arguments are as follows:

               <host>      Target host IP address in dotted quad form.
               <len>       No. of bits to be matched (from left) 0-32
               <gateway>   Destination gateway IP address in dotted quad. 
               <port>      Port number on which to route the datagram.
               <d|v|n|e|u> Mode: (d)atagram, (v)irtual circuit, (n)etrom
                           (e)ncapsulated, ip(u)dp, (r)eject, (s)ilent.






      Xrouter Command Reference Revision 2.2 (18/12/02)        Page 38
      Sysop-only Commands


               The IP ROUTE DEFAULT command sets up a default route which is 
               used when no other route is found.  If no gateway is 
               specified, the target will be assumed to be a direct 
               neighbour.  If not specified, the mode defaults to datagram.

               The IP ROUTE ADD command adds an entry to the routing table.  
               The first argument is the target host IP address, with 
               optional mask. e.g. 44.131.90.1/32 means "match all 32 bits", 
               whereas 44.131.90.0/24 means "match the most significant 24 
               bits", and would route all 256 addresses from 44.131.90.0 to 
               44.131.90.255.  If not specified, the mask defaults to 32.

               The second argument is the "gateway" address, i.e. the ip 
               address or hostname of the system which can handle the 
               datagram.  Use the special entry "*" if the target host is 
               reached direct, i.e. not via another router.  It is more 
               efficient to use an IP address rather than a hostname in this 
               field.

               The third argument is the port to route the datagram on, and 
               the last argument is the mode.

               -Datagram mode should be used on links with low loss rates.  
               -Virtual Circuit gives better performance on lossy links.
               -Netrom mode "tunnels" datagrams through the Netrom network.
               -Encap mode tunnels ham IP within commercial IP.
               -IPUDP mode tunnels ham IP within commercial UDP.
               -Reject mode rejects unroutable datgrams.
               -Silent mode silently discards unroutable datagrams.

               The IP ROUTE DROP command removes an entry from the table.  
               Both the target host and the mask must match.

               The IP ROUTE LOOKUP command is used to checks if there is a 
               known route to a specified host.

               The IP ROUTE LOAD command deletes all routes and re-loads the 
               information from the IPROUTE.SYS file.

               The IP TTL command displays or sets the "Time To Live" for IP 
               datagrams, overriding the value specified in the .CFG file.

               The IP QUIET command is used to display or set the "stealth" 
               level.  The default value of 0 causes TCP/IP to operate 
               normally.  A non-zero value disables various ICMP and TCP 
               error responses, and should be used with caution.  Please 
               refer to the manual entry STEALTH for more information.

               Examples:
               IP ROUTE DEFAULT 3 44.131.90.6 v
               IP ROUTE ADD 44.131.95.0/24 44.131.95.240 9 d
               IP ROUTE ADD 44.147.38.0/24 zl2aqy.ath.cx 14 u
               IP ROUTE DROP 44.131.97.1 32
               IP ROUTE LOOKUP 62.31.87.22
               IP TTL 127
               IP QUIET 2

               Availability: The only command available to non-sysops is "IP 
                             ROUTES".



      Xrouter Command Reference Revision 2.2 (18/12/02)        Page 39
      Sysop-only Commands


               Note: The IP routing table is necessary only for IP, and does
                     not take any part in normal ax25 and Netrom activities.  
                     See elsewhere for details on how to set up the IP 
                     system.

               See also: IPROUTE, ARP.


      KILL -- Terminate any session

               Syntax:  KILL <session>

               KILL immediately terminates the specified session, 
               disconnecting any links involved.  Useful for disconnecting 
               troublemakers or failed sessions.

               Session numbers are shown by the U(sers) command.

               Example:  K 301  - Terminate session numbered 301

               Limitations:  You cannot kill your own session.


      LOADNODES -- Load the nodes and routes tables from a disk file.

               Syntax:  LO[ADNODES] [filename]

               The LOADNODES command loads the nodes and routes tables from 
               a "recovery" file.  If a filename isn't specified, PZTNODES 
               is the default.  It can be used to reconstruct the tables 
               without having to wait for nodes broadcasts to be received.

               This occurs automatically when the router is started, but if 
               the PZTNODES file was empty, you may wish to quick start from 
               a daily or weekly backup file which you previously created 
               with SAVENODES.


      LOG -- Enable / disable activity logging.

               Syntax:  LOG [on | off]

               The LOG command is used to enable or disable the logging of 
               router activity, such as connections, disconnections, errors, 
               user commands etc.  It overrides the default setting 
               specified in XROUTER.CFG.

               The optional argument may be "ON" or "OFF".  The former 
               enables logging, and the latter disables it.  If no argument 
               is supplied, the current setting is reported.

               The console may override a remote sysop's settings.

               Examples:  LOG ON  -  Enables logging.
                          LOG OFF -  Disables logging.

               Note: Do not enable long-term logging if you are running a 
               floppy based system, as you will seriously compromise system 
               performance.



      Xrouter Command Reference Revision 2.2 (18/12/02)        Page 40
      Sysop-only Commands



      MAN -- Display Online Sysop's Manual pages.

               Syntax:  MAN [command | topic]

               The MAN command is used to access the online sysop's manual, 
               which is a collection of pages, each covering a different 
               command or topic.

               The MAN pages are designed for sysop use, and usually give 
               more detail than the corresponding HELP pages.

               Entering MAN alone displays a list of available pages.

               To read a specific page enter MAN followed by the command or 
               topic for which you require help.

               The manual is divided into several sections.  Section 1 is 
               the command reference section.

               Example:  MAN ARP      Display manual page for ARP command.

               The following conventions are used in MAN pages:

               < >   Command argument - These braces and the text enclosed
                     within them represent any piece of text typed after the 
                     command.  The <> do not form part of the argument.

               [ ]   Optional argument - These braces enclose anything
                     which is not always present. If used within a command 
                     name (e.g. N[ODES]), it indicates that the command may 
                     be abbreviated to a minimum form while remaining 
                     unique.

               Availability: Although this command is currently available to
                             all users, it is not shown in the list of 
                             normal commands because it generates a lot of 
                             output, some of which is not relevant to non-
                             sysops.  Its use by non-sysops may be withdrawn 
                             at a later date if it proves to be a problem.

               Limitations: Although most commands may be abbreviated, it is
                            not currently possible for the MAN command to 
                            correctly identify the required page from an 
                            abbreviated argument.  Thus "MAN NODES" is 
                            acceptable, whereas "MAN NO" is not.
                            This problem will be addressed in a later 
                            version, but a temporary work-around might be to 
                            make several copies of each MAN file for all 
                            permutations of the command.  Beware though, 
                            this may make the list very confusing!

               Note: Due to its size it is difficult to ensure that everyone
                     has a completely up to date sysop document, but the MAN 
                     pages will always contain the latest information.  They 
                     will be kept updated by distributing new pages as 
                     required.

               See also:  H -- General help system.



      Xrouter Command Reference Revision 2.2 (18/12/02)        Page 41
      Sysop-only Commands



      MAXFRAME -- Display / Set port MAXFRAME value.

               Syntax: MAX[FRAME] <port> [n]

               The MAXFRAME command is used to display and set the AX25 L2 
               MAXFRAME (window) value for the specified port.  This is the 
               maximum number of unacknowledged frames allowed before the 
               link must stop and wait for an ack.  The normal range is 
               between 1 and 7, although maxframes of up to 127 are allowed 
               in Modulo-128 links.

              If port maxframe > 7 is specified, all level 2 downlinks on 
              that port will attempt to use Modulo-128, falling back to 
              modulo-8 if the target doesn't support Mod-128.

              If the port PACLEN is set to zero (dynamic mode), both 
              MAXFRAME and PACLEN will adapt to link conditions. MAXFRAME 
              starts at the port's maxframe, reducing when there are 
              excessive retries, and increasing when there are no retries.

              If the second argument to the MAXFRAME command is omitted, the 
               current value is displayed.

               If the setting is changed, the new setting remains in force 
               until it is changed again, or until the router is restarted, 
               in which case it returns to the default value specified in 
               the port entry in the CFG file.

               Examples: MAX 2     - Display current setting for port 2
                         MAX 2 6   - Set maxframe for port 2 to 6.


      MHCLEAR  Clear MHeard list

               Syntax:  MHC[lear] <portnum>

               The MHCLEAR command clears the MH list for the specified 
               port, and would typically be used if the radio had been 
               changed from one frequency to another.  If <portnum> is zero, 
               all MH lists are cleared.


      MINQUAL  Display / Set port minimum quality

               Syntax: MIN[qual] <port> [n]

               The MINQUAL command is used to display and set the Net/rom 
               minqual value for the specified port.  Within nodes 
               broadcasts received on that port, any node whose quality is 
               less than the minqual will not be accepted into the nodes 
               table.

               If the second argument is omitted, the current value is 
               displayed.







      Xrouter Command Reference Revision 2.2 (18/12/02)        Page 42
      Sysop-only Commands


               If the setting is changed, the new setting remains in force 
               until it is changed again, or until the router is restarted, 
               in which case it returns to the default value specified in 
               the port entry in the CFG file.

               Examples: MIN 2      - Display current setting for port 2
                         MIN 2 30   - Set minqual for port 2 to 30.


      MINTXQUAL -- Display / Set minimum quality to transmit

               Syntax:  MINT[xqual] <port> [0-255]

               The MINTXQUAL command is used to display and set the minimum 
               node quality which will be broadcast on the specified port.

               This would typically be used to limit the number of nodes 
               transmitted on ports which are severely bandwidth limited, 
               or where the neighbours have limited table capacity.

               The neighbours could of course limit their table size using 
               their MINQUAL, but there's no point in wasting bandwidth 
               transmitting hundreds of nodes which no-one wants.  It is 
               therefore better to limit the transmission at source.

               A MINTXQUAL of 150 means that the nodes broadcasts on the 
               specified port will only contain nodes whose qualities are 
               greater than or equal to 150.


      MMASK -- Select which protocol(s) to monitor (trace)

               Syntax:  MM[ASK] [0 - FFFFh]

               The MMASK command selects which protocol layers will be 
               monitored when traffic tracing is enabled.  The <F4> key also 
               provides this function at the console.

               The optional argument is a HEX number between 0000h and 
               FFFFh, which is calculated by adding together the desired 
               values from this table:

                  0001 - Incoming frames          0100 - ICMP
                  0002 - Outgoing frames          0200 - TCP
                  0004 - AX25 layer 2             0400 - KISS
                  0008 - AX25 info frames         0800 - SLIP
                  0010 - AX25 layer 3             1000 - PASSALL
                  0020 - AX25 layer 4             2000 - Hex Dump
                  0040 - IP frames
                  0080 - ARP frames

               If no argument is supplied, the current setting is reported.

               The default setting for the first console is 03FF, which 
               displays all incoming and outgoing traffic from AX25 layer 2 
               upwards.  Console defaults may be specified at boot-time by 
               including the form "MMASK=xxxx", in a CONSOLE definition 
               block within XROUTER.CFG.




      Xrouter Command Reference Revision 2.2 (18/12/02)        Page 43
      Sysop-only Commands


               The console can override a remote sysop's settings.

               The PASSALL option enables frames which fail the validity 
               checks at one layer (e.g. KISS checksum) to be passed to the 
               next layer above for tracing.

               Examples:  MMASK 0201  -  display incoming TCP frames only 
                          MMASK 0242  -  display outgoing TCP and IP

               Note: Don't try to trace too much detail via a remote link -
               see warning in MONITOR below.

               See also:  MONITOR  -  Enable / disable monitoring.
                          MPORT    -  Select port(s) to monitor.


      MONITOR -- Enable / disable traffic monitoring (tracing)

               Syntax: MON[ITOR] [on | off]

               The MONITOR command is used to enable or disable the display 
               of incoming and outgoing traffic.

               The optional argument may be "ON" or "OFF".  The former 
               enables the display, and the latter disables it.  If no 
               argument is supplied, the current setting is reported.

               If used at the console, this command enables and disables 
               tracing to the console window, and works in conjunction with 
               the <F2> (monitor toggle) key.

               If used by a remote sysop, monitored frames are sent to him 
               instead of the console window.  In order to avoid overloading 
               the link, the MPORT setting is cleared every time monitoring 
               is enabled, so the sysop must then issue the MPORT command to 
               select which port(s) to monitor.

               The console may override a remote sysop's settings.

               Examples:  MON ON  -  Enables tracing.
                          MON OFF -  Disables tracing.

               Only one sysop may receive the trace display at any one time.

               Note:  Remote sysops must ensure that their link with the 
               router is capable of carrying the large volume of traffic 
               resulting from tracing.  Attempting to trace too many ports / 
               too much detail on a slow link may result in poor 
               performance.  You have been warned!

               See Also:  MPORT  -  Select port(s) to monitor.
                          MMASK  -  Select type of activity to monitor.


      MOTD  -- Maintain "Message Of The Day"

               Syntax:  "MOTD [<days> <text>] | [ @ ]"





      Xrouter Command Reference Revision 2.2 (18/12/02)        Page 44
      Sysop-only Commands


               The MOTD command displays, sets or clears the "Message Of The 
               day", which is a single line of text sent only after L2 ctext.
               If Ctext isn't sent, Motd isn't sent.

               The <days> count is decremented at midnight, and the message 
               stops being displayed when it reaches 0.  It is meant for 
               displaying urgent notifications, rally adverts etc.  Anything 
               more permanent should go in ctext.

               If no arguments are supplied, the current motd (if any) is 
               displayed.

               If the first argument is "@", the current motd (if any) is 
               cleared.

               If two arguments are supplied, the first one should be the 
               number of days to display the message, and the second should 
               be the message itself, which can be up to 80 characters and 
               may include spaces.  A "days" count of 1 will display the 
               motd until midnight.

               Examples:

               MOTD 3 WyrePak Meeting Tues 21/8 8pm Sutton Arms
               MOTD @


      MPORT -- Select which port(s) to monitor (trace)

               Syntax:  MP[ORT] [#xxxx | n | n+n+n]

               The MPORT command selects which ports will be monitored when 
               traffic tracing is enabled.  The <F3> key duplicates this 
               function.

               The optional argument can take one of three forms:

               a) A hex number, preceded by "#", representing a binary 
               number of up to 32 bits.  A "set" bit (1) enables monitoring 
               for the corresponding port, and an "unset" (0) bit disables 
               monitoring on that port.  Bit 0, the rightmost (least 
               significant) bit, represents port 1 and bit 31, the leftmost 
               (most significant) bit represents port 32.  The number is 
               calculated by adding together the desired values from this 
               table:

               Port  HEX    Port  HEX    Port    HEX    Port      HEX
                 1     1      9   100     17   10000     25   1000000
                 2     2     10   200     18   20000     26   2000000
                 3     4     11   400     19   40000     26   4000000
                 4     8     12   800     20   80000     28   8000000
                 5    10     13  1000     21  100000     29  10000000
                 6    20     14  2000     22  200000     30  20000000
                 7    40     15  4000     23  400000     31  40000000
                 8    80     16  8000     24  800000     32  80000000


               b) A decimal number representing a single port, or 0 to 
               disable monitoring.



      Xrouter Command Reference Revision 2.2 (18/12/02)        Page 45
      Sysop-only Commands


               c) Several decimal numbers separated by "+" characters, 
               representing a combination of port numbers.  There must be no 
               spaces in the string of characters.

              If no argument is supplied, the current setting is reported.

              If used by a remote sysop, monitored frames are sent to him 
              instead of the console window.  In order to avoid overloading 
              the link, the MPORT setting is cleared every time monitoring 
              is enabled, so the sysop must then issue the MPORT command to 
              select which port(s) to monitor.

              The console can override a remote sysop's settings.

               Examples:  MPORT #800  -  Trace port 12.
                          MPORT #1803 -  Trace ports 13, 12, 2 and 1.
                          MPORT 21    -  Trace port 21 only
                          MPORT 1+5+7 -  Trace ports 1, 5 and 7
          
               Notes:  Remote sysops cannot trace activity on the port on 
               which they are uplinked.  Only ports 1 through 32 can be 
               traced at present.

               See also:  MONITOR  -  Enable / disable monitoring.
                          MMASK    -  Select type of activity to monitor.


      NAT -- Network Address Translation commands.

               Syntax:
               NAT ADD STATIC <local>[:port] <global>[:port] [tcp | udp]
               NAT ADD OVERLOAD <local> <global> <subnet_mask>
               NAT DROP <local>[:port] [tcp | udp]
               NAT LIST

               The NAT commands controls Network Address Translation, i.e. 
               the process whereby the IP addresses contained in datagrams 
               are manipulated to allow hosts on one network to communicate 
               with hosts on a different network.

               For example, hosts on a private intranet using unregistered 
               192.168.0.x addresses cannot communicate with hosts on the 
               wider Internet because no-one would know where to route the 
               return datagrams.  NAT basically translates the unregistered 
               addresses into registered ones and vice versa.

               PAT (Port Address Translation) manipulates TCP and UDP 
               service port numbers, for example to allow several hosts to 
               share one IP address.  The NAT commands are also used to 
               configure PAT.

               The arguments for NAT commands are as follows:

               <local>          Local private (unregistered) IP address.
               <global>         Globally recognised IP address.
               <port>           TCP or UDP service port number.
               <subnet_mask>    Bit pattern used for matching addresses.
                                e.g. 255.255.255.0




      Xrouter Command Reference Revision 2.2 (18/12/02)        Page 46
      Sysop-only Commands


               NAT ADD adds an entry to the NAT table.  There are two forms: 
               STATIC and OVERLOAD.  STATIC is used to add static NAT and 
               PAT entries, i.e. those where there is a one-to-one mapping 
               between private and public IP addresses.  OVERLOAD is used 
               only for dynamic PAT, where several hosts share one public IP 
               address.

               NAT DROP removes an entry from the NAT table.

               NAT LIST lists the NAT table entries.

               Examples:
               NAT ADD STATIC 192.168.0.2:87 44.131.91.2:23 tcp
               NAT ADD OVERLOAD 192.168.0.0 44.131.91.3 255.255.255.240
               NAT DROP 192.168.0.5:23 tcp

               Note:  The NAT ADD command can also be used in IPROUTE.SYS or 
               BOOTCMDS.SYS.


      NODE  -- Add node to Netrom nodes table.

               Syntax: N[ode] ADD <call>[:alias] <via> <port> <qual> [!]

               The NODE ADD command allows nodes to be manually added to the 
               Netrom nodes table, and optionally "locked in".  This can be 
               useful in cases where the node is reachable, but not in the 
               table.

               For example, you may have set a very low quality or high 
               minqual to your neighbour, to reduce the number of nodes 
               routed via him.  But the neighbour may have set their 
               CHATQUAL low and may therefore not appear in your table.  You 
               can "lock in" the neighbour's chatcall at your minqual, 
               allowing the chat servers to communicate.

               <call>      Callsign of the node you are adding.
               [alias]     Optional alias for that node.
               <via>       Callsign of neighbour the node is reached via
               <port>      Radio port the neighbour is on.
               <quality>   Netrom quality for the node.
               [!]         Lock flag.

               Examples:   NODE ADD GB7FD GB7GH 9 15
                           NODE ADD GB7BM-7:BRMCHT GB7BM 23 10 !

               The first example adds an unlocked record for node GB7FD, 
               which is reached via neighbour GB7GH on port 9, with quality 
               15.  The second example adds a locked record for node GB7BM-
               15, which has the alias BRMCHT and is reached via GB7BM on 
               port 23, with quality 10.

               Note: This command may also be used in BOOTCMDS.SYS by 
               preceding it with "netrom", i.e. "netrom node add ...".

               See also: NODES in user command section






      Xrouter Command Reference Revision 2.2 (18/12/02)        Page 47
      Sysop-only Commands


      PACLEN -- Display / Set global or port paclen values.

               Syntax: PACLEN <port> [value]

               The PACLEN command allows the global and port-specific PACLEN 
               settings to be displayed and changed.  Paclen is the maximum 
               data field length within a packet.

               The global PACLEN is specified in the L2 global parameters 
               section of the config file, and is the default value, used 
               where not overridden by a port-specific paclen.  

               All frames originating at the router use the global or port 
               paclens specified, but Netrom frames originating at other 
               systems can not be fragmented, so we have no control over 
               them, and they may be larger than our paclen.

               If a single numeric argument is supplied, and its value is 
               greater than 0, the current paclen for that port number is 
               displayed.  If the argument is 0 the global paclen is 
               displayed instead.

               If two numeric arguments are supplied, the first specifies a 
               port number and the second specifies a new paclen value for 
               that port.  Port 0 sets the global paclen.

               Setting the port PACLEN to 0 enables "adaptive link 
               parameters", which means PACLEN (and MAXFRAME) will vary 
               according to the link quality.  This will tend to maximise 
               link throughput dynamically.

               Examples:  PACLEN 0          - Display global default paclen
                          PACLEN 0 120      - Set default paclen to 120
                          PACLEN 10        - Display paclen for port 10
                          PACLEN 10 160    - Set port 10 paclen to 160


      PERSIST -- Display / Set the persist value for a port.

               Syntax:  PER[SIST] <port> [0-255]

               The PERSIST command is used to display and set the PERSIST 
               value for a port.  This is the "probability to transmit", 
               used as part of the CSMA channel access procedure.  A low 
               value is used when there are several stations sharing the 
               channel, giving each a fair chance to transmit.  A high value 
               is used when the channel isn't shared.  The optimum setting 
               is 256/n where n is the number of station sharing the 
               channel.

               If the command is used with a single numeric argument, the 
               current setting for that port number is displayed.

               If two arguments are supplied, the PERSIST value for the port 
               specified by the first is set to the value of the second.  
               The new setting remains in force until changed again or until 
               the router is restarted, in which case the value specified in 
               the CFG file will apply.




      Xrouter Command Reference Revision 2.2 (18/12/02)        Page 48
      Sysop-only Commands


               Examples:  PERSIST 5        - Display value for port 5
                          PERSIST 5 64     - Set port 5 PERSIST to 64

               Note: On KISS ports, you should allow up to 5 minutes for a
                     new setting to become active.

               See also:  SLOTTIME -- CSMA interval timer


      PPP -- Point to Point Protocol Configuration commands.

               Syntax:

               PPP <port> IDLE [secs]
               PPP <port> IPCP <LOCAL | REMOTE> <ADDRESS | DNS> [ipaddr]
               PPP <port> LCP <LOCAL | REMOTE> AUTH [PAP]
               PPP <port> LCP <LOCAL | REMOTE> DEFAULT
               PPP <port> LCP <LOCAL | REMOTE> MRU [mru]
               PPP <port> LOG [0-255]
               PPP <port> PAP <USER> [username password]

               Point to Point Protocol (PPP) is a protocol suite intended 
               for use over simple links which transport packets between two 
               peers, such as an RS232 link.  The PPP commands are used to 
               configure the system.

               The IDLE subcommand is used to display or set the PPP link 
               inactivity timer, which disconnects the link after a period 
               of inactivity.  The argument is in seconds.

               The IPCP subcommands control the IPCP (IP Control Protocol) 
               parameters for each end of the link.  ADDRESS specifies the 
               IP addresses used for the link, and DNS specifies the IP 
               addresses of the Domain Name Server.  

               The LCP subcommands control the LCP (Link Control Protocol) 
               parameters for each end of the link.  AUTH specifies the 
               authentication protocol (if any) which the link will use.  
               The only authentication protocol currently supported is PAP.  
               The MRU command specifies the Maximum Receive Unit, i.e. the 
               largest datagram the host is prepared to accept.  The limits 
               are 128 and 4096. DEFAULT restores the default LCP parameters 
               which all hosts understand. 

               The LOG subcommand displays or sets the PPP logging level, 
               which controls how much diagnostic detail is recorded in the 
               PPLOG.TXT file.  The argument is as follows:

                      0       No logging
                      1       PPP start / stop / timeout events
                      2       As 1, plus layer up / down events
                      3       As 2, plus layer start / stop events
                      4       as 3, plus option accept / reject events
                      5       as 4, plus hexdump of configuration packets

               The PAP subcommand displays or sets PAP (Password 
               Authentication Protocol) parameters.  At present the only 
               parameter is USER, which specifies the username and password 
               for PAP login.



      Xrouter Command Reference Revision 2.2 (18/12/02)        Page 49
      Sysop-only Commands


               Examples: PPP 1 IDLE 300
               PPP 1 IPCP LOCAL ADDRESS 62.31.45.67
               PPP 3 LCP LOCAL AUTH PAP
               PPP 3 LCP LOCAL DEFAULT
               PPP 3 LCP LOCAL MRU 1500
               PPP 3 LOG 3
               PPP 1 PAP USER g8pzt zedfrgc

               Notes:
               When used from the command line, or with a BOOTCMDS.SYS file, 
               the first argument must be a port number.  However, PPP 
               commands used within PPPHOST and dialler scripts *do not* 
               include a port number, because Xrouter knows which port is 
               executing the script.

               e.g. at the command line: PPP 3 IDLE 300
                    in a dialler script: PPP IDLE 300

               You are advised against using the higher PPP LOG levels other 
               than on a temporary basis because they can create very large 
               logfiles.  On a slow machine, the disk writes might take so 
               long that configuration time-outs could occur, with 
               consequent retries and failure.

               See also: DUN -- Dial-up Networking
                         SCRIPT -- Dialler script commands


      QUALITY -- Display / Set default quality value for a port.

               Syntax: QUA[LITY] <port> [0-255]

               Displays or sets the default quality for nodes heard on the 
               specified port.  It should be set to zero to suppress all 
               level 3/4 activity on a port, e.g. on user access 
               frequencies.

               If a single numeric argument is supplied, the current quality 
               for that port number is displayed.

               If two numeric arguments are supplied, the quality for the 
               port specified by the first is set to the value of the 
               second.  The new setting remains in force until changed, or 
               until the router is restarted, in which case the setting 
               reverts to that specified in the config file.

               Specifying a quality between 256 and 511 will enable 
               automatic quality detemination with a starting value of 
               (quality-256).

               Example:  QUALITY 3      - Display quality for port 3
                         QUALITY 3 40   - Set port 3 default quality to 40
                         QUALITY 5 276  - Port 5 Autoqual starting at 20  


      REBOOT -- Reboot the computer.

               Syntax: RE[BOOT]




      Xrouter Command Reference Revision 2.2 (18/12/02)        Page 50
      Sysop-only Commands


               Reboots the machine immediately and un-gracefully.

               It is typically used by remote sysops to restart the machine 
               after editing autoexec.bat/config.sys, installing a new 
               version of the software, or to recover from potentially 
               dangerous situations such as a corrupt hard drive.

               Console sysops can use the "Vulcan Nerve Pinch" (Ctrl-alt-
               del) or interrupt the power instead.

               Notes:  Remote sysops should only use this command if the
                       router program has been started from AUTOEXEC.BAT, 
                       otherwise it won't restart.

                       It is recommended that you include an automatic disk 
                       check and repair utility within AUTOEXEC.BAT to 
                       remove any problems which resulted in the REBOOT 
                       command being used.

                       See also:  RESTART - restart without reboot


      RESPTIME -- Display / Set L2 delayed ack timer for port.

               Syntax: RESPTIME <port> [millisecs]

               The RESPTIME command allows the value of the AX25 T2 (delayed 
               ack) timer for a port to be displayed or altered.

               If a single numeric argument is supplied, the current value 
               for that port number is displayed.

               If two numeric arguments are supplied, the first specifies 
               the port number, and the second specifies the new value for 
               the parameter.  The new setting remains in force until 
               changed, or until the router is restarted, in which case the 
               value specified in the CFG file is re-applied.

               Example:  RESPTIME 3       - Display resptime for port 3
                         RESPTIME 3 150   - Set port 3 resptime to 1500 ms

               Notes:
               The RESPTIME parameter specifies how long the router will 
               wait, after receiving a frame, before sending an ack for that 
               frame.  It helps to improve the efficiency by cutting out 
               unnecessary acks.  It allows a single ack to be sent when a 
               transmission contains several frames, instead of acking each 
               frame in turn.

               The value must therefore be at least the length of time it 
               takes to transmit a single packet.  At 1200 bauds (120 
               bytes/sec) a 120 byte packet lasts 1 second, a 180 byte 
               packet lasts 1500 millisecs and a 256 byte packet lasts just 
               over 2 secs.  Therefore resptime should reflect the paclen 
               used by the sender.
               1500 millisecs is a good compromise, but if the other end 
               regularly uses high paclens, 2000 or 2500 ms would be more 
               appropriate.  At 9600 baud, 200 millisecs is probably 
               adequate.



      Xrouter Command Reference Revision 2.2 (18/12/02)        Page 51
      Sysop-only Commands


               Too high a value will cause the link to be too "relaxed", 
               whereas too low a value will cause too many acks.  Both 
               extremes reduce the link efficiency.

               See also:  FRACK, SLOTTIME


      RESTART -- Restart the program.

               Syntax:  RES[tart]

               The RESTART command re-starts the router without rebooting 
               the machine.  It would typically be used by remote sysops to 
               start a new version or read a modified .cfg file.

               Each restart results in the loss of a couple of hundred bytes 
               of memory, so once in a while you should do a reboot to 
               reclaim it.

               See also: REBOOT


      RETRIES -- Display / Set the retries parameter for a port.

               Syntax: RETRIES <port> [value]

               The RETRIES command allows the value of the level 2 maximum 
               retry value for a port to be displayed or altered, i.e. the 
               maximum no. of attempts at sending a frame without a reply 
               being received.  The usual setting is 10.  A setting of 0 
               means "try forever", and should be avoided except for 
               testing.

               If a single numeric argument is supplied, the current value 
               for that port number is displayed.

               If two numeric arguments are supplied, the first specifies 
               the port number, and the second specifies the new value for 
               the parameter.  The new setting remains in force until 
               changed, or until the router is restarted, in which case the 
               value specified in the CFG file is re-applied.

               Example:  RETRIES 3       - Display setting for port 3
                         RETRIES 3 15    - Set port 3 max retries to 15


      RIP -- Routing Interface Protocol configuration commands.

               Syntax: RIP AC[cept] <ip_address>
                       RIP A[dd] <ip_address> <secs>
                       RIP D[rop] <ip_address>
                       RIP L[earn] [ON | OFF]
                       RIP R[efuse] <ip_address>
                       RIP S[tatus]
                       RIP T[imeout] [secs]







      Xrouter Command Reference Revision 2.2 (18/12/02)        Page 52
      Sysop-only Commands


               RIP allows routers to learn of each other's routing, in a 
               similar fashion to NetRom.  Xrouter implements RIP98, which 
               is a form optimised for radio, and the RIP commands are used 
               to configure the system.

               Peers which have been added to the refuse list using the RIP 
               REFUSE command can be removed using RIP ACCEPT, allowing the 
               router to learn information from them.  <ip_address> is the 
               IP address of the peer.

               RIP ADD adds a peer to the list of those who will receive RIP 
               transmissions from us.  The <secs> parameter specifies the 
               interval between transmissions, and should be chosen in 
               agreement with the peer, so that <secs> is approximately one   
               quarter of the lifetime of their RIP entries.  This allows up 
               to 4 transmissions to be lost before the route is purged.

               RIP DROP removes a peer from the list of those who will 
               receive RIP transmissions from us.

               RIP LEARN turns route learning on or off.  By default, RIP98 
               route learning is OFF.  If no arguments are given, the 
               current status is reported.  "ON" allows Xrouter to learn 
               routes from its RIP98 peers, and "OFF" prevents it.  I 
               recommend enabling LEARN mode.

               RIP REFUSE is the opposite of ACCEPT.  It adds a peer to the 
               refuse list so broadcasts from that peer will be ignored.  I 
               have provided this command in case you need to exclude a peer 
               which is advertising faulty routes.

               RIP STATUS displays various RIP98 parameters such as the list 
               of peers who receive broadcasts from us, the list of peers we 
               are ignoring, the timeout value, and the setting of learn 
               mode.

               RIP TIMEOUT is used to display and set the lifetime of 
               learned routes.  Routes learned from peers have a finite 
               lifetime.  If the route entry is not refreshed within this 
               lifetime, it is removed from the routes table.  The timeout 
               should preferably be 4 times the interval between broadcasts 
               from peers, and the default is currently 4 hours.

               The RIP ADD, LEARN, REFUSE and TIMEOUT commands may be used 
               within IPROUTE.SYS or BOOTCMDS.SYS.


      ROUTE -- Modify NetRom routes

               Syntax: ROUTE ADD <call> <port> <qual> [!] [V digis] [opts]
                       ROUTE DROP <call> <port>

               The ROUTE commands are used to add, delete or modify NetRom 
               neighbour routes without restarting the program.

               ROUTE ADD adds a new route or modifies an existing one, and 
               ROUTE DROP removes a route.

               <call> is the callsign of the neighbour node.



      Xrouter Command Reference Revision 2.2 (18/12/02)        Page 53
      Sysop-only Commands


               <port> is the radio port via which the neighbour is reached.

               <qual> is the netrom "quality" to use for that route.  A 
               quality between 256 and 511 will instruct Xrouter to use 
               "automatic" quality, with a starting point of (qual-256). 

               [!] locks the entry to prevent it being overridden by learned 
               information.

               [V digis] specifies a digipeated route, where "digis" is a 
               string of digipeater calls seperated by commas, i.e. in the 
               form "DIGI,DIGI,DIGI".

               [opts] are optional maxframe, frack, paclen, maxtt and 
               maxhops values to override the port defaults.  The format is:
               [maxframe [frack [paclen [maxtt [maxhops]]]]], i.e. in 
               order to specify maxtt you must also specify maxframe, frack 
               and paclen  Use zero in any field for which you don't wish to 
               overwrite the port default.

               Examples:  route add g8pzt 5 100
                          route add g6yak 2 100 ! V G8EPR,G8NTU 5 7000
                          route add g8klm 3 150 ! 0 0 245 2000 3
                          route drop mb7uyl 14

               See also: ROUTES - display Netrom routes


      SAVENODES -- Save the nodes and routes tables to disk.

               Syntax:  SAVENODES [filename]

               The SAVENODES command dumps the nodes and routes tables to 
               a file.  If a filename isn't specified, PZTNODES is the 
               default.  This file is read by the router at start up, and 
               used to reconstruct the tables without having to wait for 
               nodes broadcasts to be received.

               Table dumping occurs automatically every hour, and when the 
               router is closed down using Alt-x, but this command allows 
               you to dump and examine the tables at any time, without 
               taking the router off line.

               Note: The PZTNODES file is identical to the BPQNODES file
                     used with BPQ node, and may be used to "quick start" 
                     when changing between the two systems.


      SHELL -- Run a command or program in a DOS shell.

               Syntax:  SHELL <cmd> [args...]

               The SHELL command is used for running DOS commands and simple 
               programs in a temporary DOS shell which terminates upon 
               completion of the program or command.

               Example:  SHELL DIR /W





      Xrouter Command Reference Revision 2.2 (18/12/02)        Page 54
      Sysop-only Commands


               Limitations:  Trying to run interactive commands or programs
                             via this means may fail, and may crash the 
                             router.

                             At least 60k of free memory is required for the 
                             DOS shell itself in addition to any program 
                             loaded above it.

               Notes:  This command is not yet functional.

                       Console users may use the F9 key to invoke a DOS 
                       shell which persists until closed.


      SLOTTIME -- Display / Set the slottime parameter for a port.

               Syntax: SLOTTIME <port> [millisecs]

               The SLOTTIME command allows the value of the CSMA interval 
               timer for a port to be displayed or altered.  The usual 
               setting is 100 milliseconds.

               If a single numeric argument is supplied, the slottime value 
               for that port number is displayed.

               If two numeric arguments are supplied, the first specifies 
               the port number, and the second specifies the new value for 
               the parameter.  The new setting remains in force until 
               changed, or until the router is restarted, in which case the 
               value specified in the CFG file is re-applied.

               Example:  SLOTTIME 3       - Display slottime for port 3
                         SLOTTIME 3 150   - Set port 3 slottime to 150

               See also:  PERSIST


      START -- Start a daemon process

               Syntax: ST[art] <process_name>

               The START command is used to start daemons, which are 
               processes which run in background independently of any user 
               session.  For example the IGATE and dialler processes are 
               daemons.  Attempting to start a process which is already 
               running will have no harmful effect.

               Example:  START IGATE

               See also: STOP -- Stop a daemon.


      STOP -- Stop a daemon process / List active daemons.

               Syntax: STO[p] [process_name]

               The STOP command is used to stop a daemon process whose name 
               name is specified as the argument.
          



      Xrouter Command Reference Revision 2.2 (18/12/02)        Page 55
      Sysop-only Commands


               If the command is used without arguments, a list of the 
               active processes is displayed.

               Attempting to stop a process which is not running will simply 
               produce an error message.

               Example:  STOP IGATE

               See also: START -- start a daemon.


      TALK   -- Talk to a user

               Syntax:  T[alk] <session_number>

               The TALK command allows a sysop to talk to a user, and is 
               usually invoked when a user issues the YELL command.

               Sysops may interrupt users' command sessions, but may not 
               interrupt established circuits, because that might damage the 
               data being sent or received by the user.


      TCP  -- TCP status / configuration commands.

               Syntax:  TCP S[TATUS] [sock#]

               The TCP command will eventually be used to display and 
               dynamically configure various parameters of the TCP module. 
               It currently accepts only the STATUS sub-command, which 
               displays the status of the TCP sockets.

               If [sock#] is not supplied, all the active sockets are 
               displayed, otherwise only the matching socket is displayed.

               The display shows the socket number, the remote and local 
               addresses, the state, and the amount of queued data in bytes. 
               The states are as follows (see RFC793):

                     0    Closed              6    FINWAIT2
                     1    Listen              7    Close wait
                     2    SYN sent            8    Closing
                     3    SYN Received        9    Last ACK
                     4    Established         10   Time Wait
                     5    FINWAIT1


      TIME -- Display / set system time.

               Syntax:  TIME [hh:mm]

               If no argument is supplied, this command displays the current 
               setting of the DOS clock.

               If an argument of the form HH:MM is used, it sets the DOS 
               clock to the specified time. (24 hour format)

               Example:  TIME        - Display current time.
                         TIME 23:06  - Sets DOS time to 23:06



      Xrouter Command Reference Revision 2.2 (18/12/02)        Page 56
      Sysop-only Commands


               See also:  DATE -- set system date


      TXDELAY -- Display / Set the transmit keyup delay for a port.

               Syntax:  TXD[ELAY] <port> [millisecs]

               The TXDELAY command allows the value of the transmit keyup 
               delay for a port to be displayed or altered.

               If a single numeric argument is supplied, the current value 
               for that port number is displayed.

               If two numeric arguments are supplied, the first specifies 
               the port number, and the second specifies the new value for 
               the parameter in milliseconds.  The new setting remains in 
               force until changed, or until the router is restarted, in 
               which case the value specified in the CFG file is re-applied.

               Example: TXDELAY 3       - Display txdelay for port 3
                        TXDELAY 3 300   - Set port 3 txdelay to 300 ms

               Notes:
               TXDELAY is the interval between the transmitter being keyed 
               up and the start of a transmitted packet.  It allows time for 
               the RF to reach its full value, and for the TX audio circuits 
               to stabilise.
               Some synthesised rigs require a large txdelay (500 or more) 
               to allow the synthesiser to swing between RX and TX 
               frequencies, and many rigs have audio stages which take 100 
               ms to stabilise while oversized electrolytics charge up.

               One factor which is often overlooked is the other end's 
               receiver.  It takes a finite time for the squelch to open, 
               and if the rig has just been transmitting it may take a while 
               to stabilise back to receiving, especially with synthesised 
               rigs.  If your txd is too short, you will be sending replies 
               before the other end is ready to hear you, and unnecessary 
               retries will result.

               On KISS TNC's, you should allow up to 5 minutes for any new 
               setting to take effect.

               See also:  TXTAIL


      TXOK -- Display / Set "ok to tx" for a port.

               Syntax:  TXO[k] <port> [0 | 1]

               The TXOK command displays the current txok flag setting for a 
               port, and allows it to be changed.  This flag controls 
               whether or not the transmitter is allowed to key up.  If set 
               to zero, nothing will be sent on the port (see notes).  By 
               default, all ports have this flag set to a non-zero value.







      Xrouter Command Reference Revision 2.2 (18/12/02)        Page 57
      Sysop-only Commands


               If two numeric arguments are supplied, the txok flag is set 
               to the second argument, otherwise the current setting for the 
               specified port is displayed.  Values are: 0=don't transmit, 
               anything else=ok to transmit.

               Modified settings remain in force until changed or system is 
               restarted.

               Examples: TXOK 3        - Display current setting for port 3
                         TXOK 3 0      - Stop port 3 transmissions.

               Notes:
                       Setting TXOK=0 does not actually disable the 
                       transmitter itself, it merely prevents any frames 
                       being sent to the TNC, so if the latter has a built-
                       in CWID, it will still key up the TX so send the 
                       CWID.

                       It should be obvious, but if you set TXOK=0 for the 
                       port you are using to send commands, you will lose 
                       control of the router!


      TXTAIL -- Display / Set the transmit keyup delay.

               Syntax:  TXT[AIL] <port> [millisecs]

               The TXTAIL command allows the value of the transmit keyup 
               delay for a port to be displayed or altered.  This is a 
               parameter used only by KISS TNC's and SCC cards, and it 
               controls the length of time the TX is held on after the last 
               character has been sent to the SIO / SCC shift register.
               It allows time for the last character plus two CRC bytes and 
               a closing flag to be sent, and should therefore be set no 
               lower than the time required to send 4 bytes.  Due to the 
               granularity of PC timing, for SCC cards it should be at least 
               60 ms.

               If a single numeric argument is supplied, the current value 
               for that port number is displayed.

               If two numeric arguments are supplied, the first specifies 
               the port number, and the second specifies the new value for 
               the parameter in milliseconds.  The new setting remains in 
               force until changed, or until the router is restarted, in 
               which case the value specified in the CFG file is re-applied.

               Example:  TXTAIL 3       - Display txtail for port 3
                         TXTAIL 3 100   - Set port 3 txtail to 100 ms

               Note: After modifying this value, you may have to wait up to
                     5 minutes for it to take effect.

               See also:  TXDELAY


      UDP   -- UDP status and configuration commands.

               Syntax:  UDP S[tatus]



      Xrouter Command Reference Revision 2.2 (18/12/02)        Page 58
      Sysop-only Commands


               The UDP command currently accepts only the STATUS sub-
               command, which displays the active UDP sockets and their 
               status.

               The display looks like this:

               G8PZT:KIDDER} UDP Status:

               Sent=55  Rcvd=5123  RcvBdcasts=0  ChksumErr=0  NoSocket=56

               UDP Sockets:
                  Sock#  Local_address        Rxq
               73fb0008  0.0.0.0 53             0
               (End of list)

               "Sent" is the number of UDP frames sent by Xrouter.

               "Rcvd" is the number of UDP frames received.

               "RcvdBdcasts" is the number of UDP frames received on the 
               subnet broadcast address.

               "ChecksumErr" is the number of UDP frames received with 
               checksum errors.

               "NoSocket" is the number of UDP frames received for which 
               there was no receive socket.

               "Sock#" is the unique socket identifier.

               "Local_address" shows the local IP address and UDP service 
               port number of the socket.

               "Rxq" shows the number of received frames waiting to be 
               processed.



























      Xrouter Command Reference Revision 2.2 (18/12/02)        Page 59
      PZTDOS Commands


      PZTDOS COMMANDS
      ===============

      The following commands are available only within PZTDOS mode, i.e. 
      after issuing the "DOS" command.

               CD    -- Change Working Directory
               COPY  -- Copy file(s).
               DEL   -- Delete one or more files
               DIR   -- Obtain a directory listing.
               EDIT  -- Edit a text file.
               EXIT  -- Leave PZTDOS mode
               MD    -- Make Directory.
               MOVE  -- Move file(s).
               REN   -- Rename file(s).
               RMDIR -- Remove Directory.
               TYPE  -- Display a text file.

      Each command is discussed in more detail in the following section:


      PZTDOS COMMANDS IN DETAIL
      ~~~~~~~~~~~~~~~~~~~~~~~~~

      CD -- Change Working Directory.

               Syntax: CD <[drive:]<dir>

               The CD command changes the "working directory" to the one 
               specified by <dir>.  It is available only within PZTDOS.

               If <dir> is an absolute pathname, beginning with \ or /, it 
               is used as specified, otherwise it is interpreted relative to 
               the current working directory.  The command recognises "." 
               and "..", and both forward and reverse slashes may be freely 
               mixed.

               Unlike the MSDOS command of the same name, if <dir> is 
               preceded by a drive spec the PZTDOS version will also change 
               the current drive.

               Examples: CD ../FRED    CD C:\WINDOWS\SYSTEM


      COPY -- Copy file(s).

               Syntax: COPY <source> [dest]

               The COPY command copies the file(s) specified by the pathname 
               <source> into the file(s) or directory specified by [dest].

               <source> may be a directory, a single file, or multiple files 
               specified using wildcards, and may contain a drive and path 
               spec.  If <source> is a directory, all the files in that 
               directory will be copied.  If <source> contains wildcards, 
               all matching files will be copied.






      Xrouter Command Reference Revision 2.2 (18/12/02)        Page 60
      PZTDOS Commands


               [dest] may be a directory, a single file, or blank.  If 
               [dest] is a directory, the source file(s) are copied into it 
               as separate files.  If [dest] is a single file, the source 
               file(s) are concatenated into it.  If [dest] is not 
               specified, the file is copied into the working directory and 
               retains the original filename.

               Examples:  COPY C:\MYPROG.EXE  A:TESTPROG.EXE  
                          COPY A:FWD.SYS                      
                          COPY WHAT.SYS  A:                   
                          COPY C:\TMP1 D:\TMP2
                          COPY *.HLP HELP.DOC

               Portability:  Normal dos syntax is followed, except that
                             concatenation using the "+" operator is not 
                             supported.

               Note:  Overwrites destination files without warning.


      DEL -- Delete one or more files.

               Syntax:  DEL <filespec>

               If <filespec> describes one or more files, they are deleted. 
               The number of files deleted is reported upon completion.

               Examples:  DEL FRED.TXT
                          DEL \TMP\LOG??98.*


      DF -- Display free space on drive.

               Syntax:  DF [drive]

               The DF command displays the free and total space in bytes on 
               the specified drive, plus sector and cluster size 
               information.

               If no drive is specified, the current drive is assumed.

               The drive letter need not include the colon.

               Examples:  DF
                          DF E:


      DIR -- Obtain a directory listing.

               Syntax:  DIR [drive:][path\][mask]

               The DIR command lists the contents of the specified directory 
               using the optional specified mask.

               If a drive is not specified, the "current drive" is assumed.

               If a path is not specified, the "current working directory" 
               is assumed. 




      Xrouter Command Reference Revision 2.2 (18/12/02)        Page 61
      PZTDOS Commands


               If mask is not specified, "*.*" is assumed.  If only the 
               filename part is specified, the extension ".*" is assumed.

               Examples:  DIR MSGHDR??.*
                          DIR \LOGS\
                          DIR E:\PUB\DOCS\*.TXT

               Limitations:  Does not at present accept pipes, redirection 
                             or switches.


      EDIT -- Edit a Text File

               Syntax: E[DIT] [drive:][path\]<filename>

               Invokes the text editor, allowing text files to be viewed or 
               edited.

               See separate section detailing Line Editor commands.


      EXIT -- Leave PZTDOS mode

               Syntax:  EXIT

               Closes a PZTDOS session and returns to normal command mode.

               The complementary command is "DOS", which causes entry to 
               PZTDOS mode.


      MD -- Make Directory.

               Syntax: MD [drive:][path\]<dirname>

               MD creates a directory with the specified pathname.  It is 
               identical to the MSDOS version.

               If drive or path are not specified, the current working drive 
               and/or path are assumed.

               The specified path may be absolute, or relative to the 
               current directory.

               Examples:  MD fred                    
                          MD d:\usr\pub\packet

               See also:  RMDIR -- Remove Directory.


      MOVE -- Move file(s).

               Syntax: MOVE [drive:][path\]<filename1> 
                            [drive:][path\][filename2]

               Moves the file(s) specified by the first argument (source) to 
               the new location and/or name(s) specified by the second 
               argument (target).  Both filenames may contain wildcards.




      Xrouter Command Reference Revision 2.2 (18/12/02)        Page 62
      PZTDOS Commands


               "source" must not be a directory.  If it doesn't contain a 
               path, the current working directory is assumed.

               "target" may be a directory.  If a filename is not specified, 
               the original name(s) are used.  If target is a single file, 
               the source must also be a single file.

               If source and target filenames are different the file(s) will 
               be renamed at the same time.

               Examples:  MOVE fred.bat test.bat            - Rename only.
                          MOVE test.bat c:\                 - Move only.
                          MOVE c:\test.bat d:\tmp\fred.bat  - Move & rename.

               Portability: This command follows normal MSDOS v 7 syntax, 
                            apart from the ability to rename a directory, 
                            which is not implemented.

               See also: COPY, REN


      REN -- Rename file(s).

               Syntax: REN [drive:][path\]<oldname> [drive:][path\]<newname>

               Renames one or more file(s) from <oldname> to <newname>.

               If the source path is not specified, the current working 
               directory is assumed.

               If the destination path is not specified, the renamed file(s) 
               remain(s) in the source directory.

               If you specify two different paths, this command will move 
               the file to the new path, providing it is on the same drive.

               The filenames may contain wildcards.

               Examples:  REN FWD.SYS  FWD.OLD
                          REN  C:\AUTOEXEC.BAT  AUTOEXEC.BAK
                          REN  C:\TMP\FRED.DOC  \JUNK\JILL.DOC
                          REN  *.SAV *.19

               Limitations: Source and destination pathnames must be on the
                            same drive.  (Use the MOVE command for renaming 
                            to a different drive)

               Portability: This command follows normal dos syntax.

               See also: MOVE -- Move a file with optional rename.


      RMDIR -- Remove Directory.

               Syntax:  RMDIR [drive:][path\]<dirname>

               RMDIR deletes a directory with the specified pathname, if it 
               exists.




      Xrouter Command Reference Revision 2.2 (18/12/02)        Page 63
      PZTDOS Commands


               If drive or path are not specified, the current working drive 
               and/or path are assumed.

               The specified path may be absolute, or relative to the 
               current directory.

               Examples:  RMDIR fred             Delete sub-directory FRED
                          RMDIR c:\windows       Improve your system!!

               See also:  MD -- Make Directory.


      TYPE -- displays a text file.

               Syntax: TYPE [path/]<filename>

               The TYPE command displays the specified text file without 
               pagination.

               Example: TYPE ../DOCS/FRED.DOC

               Limitations:  For use with text files only.
                             There are no limitations on the size of file 
                             which can be displayed.  The command does not 
                             (yet) allow concatenation of files, and the 
                             output may not (yet) be redirected to a file.
                             Wildcards are not accepted.



































      Xrouter Command Reference Revision 2.2 (18/12/02)        Page 64
      Line Editor


      LINE EDITOR COMMANDS
      ====================

      In this section, n1, n2 and n3 refer to line numbers, which must be 
      greater than zero, and within the range of line numbers used in the 
      file.  The space between the command and the first number may be 
      omitted, and the numbers can be separated by spaces, commas, colons, 
      tabs etc.   Parameters in square brackets [] are optional.  When 
      copying, moving or inserting lines, the "source" text is inserted at 
      the "destination" line, i.e. "in front of" the original text.


      ?              Displays a brief list of commands.


      A <text>       Append line <text> to the file.

                     The editor ignores exactly one space between the A and 
                     the text to be inserted, so if you want to enter a line 
                     with leading spaces, add one extra.


      C n1 n2 [n3]   Copy line(s).

                     If n3 is omitted, line n1 is copied into line n2, 
                     otherwise the block n1 to n2 inclusive will be copied 
                     into the position beginning at n3.
                     Note: n3 must not be within the block being copied.


      D n1 [n2]      Delete line(s).

                     If both n1 and n2 are specified, the block of lines 
                     between and including n1 and n2 will be deleted.  If n2 
                     is omitted, or is the same as n1, only n1 will be 
                     deleted.


      H n1           Hash (comment-out) a line using the '#' symbol.
                    
                     This is useful for disabling configuration entries 
                     without deleting them.  They can be easily re-activated 
                     at a later date using the U)nhash command.  If the line 
                     already begins with '#' another one is not prepended.


      I n1 <text>    Insert <text> into line n1.


      L n1 [n2]      List (display) line(s).

                     If n2 is specified, lines n1 to n2 inclusive will be 
                     displayed, otherwise it will display 10 lines beginning 
                     at n1.  If n1 is omitted, it will re-display the same 
                     page, or if this is the first time the command has been 
                     used, the first 10 lines of the text will be displayed.






      Xrouter Command Reference Revision 2.2 (18/12/02)        Page 65
      Line Editor


      M n1 n2 [n3]   Move line(s).

                     If n3 is specified, the block of lines n1 to n2 
                     inclusive will be moved to the position beginning at 
                     n3, otherwise the single line n1 will be moved to the 
                     n2 position.


      N              Next page.

                     Displays the next page (10 lines) of text.


      P              Previous page.

                     Displays the previous page (10 lines) of text.


      Q              Quit.

                     The text is abandoned and the original file is
                     left intact, providing you hadn't used the W command.


      S              Save the text.
                     Syntax and function identical to W)rite.


      U n1           Unhash line n1.

                     Removes a '#' symbol from start of line, if one is 
                     present (opposite of H)ash).


      W [<file>]     Write (save) file being edited to disk.

                     If <file> is specified, the work is written there 
                     instead of the original name, but will not overwrite an 
                     existing file.


      W! <file>      Write unconditionally.

                     Writes the text being edited to <file>, overwriting any
                     existing file of that name.


      WQ             Write & Quit.

                     Writes the modified text back to the original file and
                     quits editor. (Same as ZZ)


      ZZ             Same as WQ (see above)








      Xrouter Command Reference Revision 2.2 (18/12/02)        Page 66
      FTP Server


      FTP SERVER COMMANDS
      ====================

      Xrouter's inbuilt FTP server accepts the following commands:


              ABOR    CDUP    CWD     DELE    HELP    LIST    MKD     MODE
              NLST    NOOP    PASS    PASV    PORT    PWD     QUIT    RETR
              RMD     RNFR    RNTO    STOR    STRU    SYST    TYPE    USER


      All commands and arguments are case-insensitive, thus "cwd", "CWD" and
      "cWd" are equally valid.

      Both UNIX style (e.g. /pub/fred) and DOS style (e.g. \pub\fred) 
      pathname conventions are accepted.

      Unlike DOS, the server does not maintain separate "working 
      directories" for each drive, so pathnames which include a drive letter 
      must start at the root of that drive.  e.g. "c:mydir\fred.txt" is not 
      valid, whereas "c:\mydir\fred.txt" is.

      The FTP commands are described in detail below:


      ABOR -- Abort data connection.

               Syntax: ABOR

               The ABOR command tells the server to abort any data transfer
               currently in progress and close the data connection.  The 
               control connection is not closed.

               If the data connection is not open, this command has no 
               effect.


      CDUP -- Change Directory Up By One Level

               Syntax:  CDUP

               The CDUP command changes the current working directory up one 
               level to the parent directory, i.e. it performs the function 
               of "CWD .."

               This command has no arguments, and if already at the root it 
               has no effect.

               See also: CWD -- Change Working Directory


      CWD -- Change Working Directory

               Syntax:  CWD [drive:\]<path>

               The CWD command changes the current working directory (and 
               drive if necessary) for the FTP session.





      Xrouter Command Reference Revision 2.2 (18/12/02)        Page 67
      FTP Server


               Examples:

               CWD FRED        Change to sub-directory FRED. CWD ..          
               Change up one level to parent directory
               CWD /           Change to root directory
               CWD /FRED/JIM   Change to JIM subdirectory of FRED directory.

               See also:  CDUP -- Change up one directory;


      DELE -- Delete file(s).

               Syntax:  DELE [drive:\][dir\]<mask>

               Examples:

               DELE JIM.TXT         Delete JIM.TXT from current directory.
               DELE /FRED/DOG.EXE   Delete DOG.EXE from directory /FRED
               DELE *.BAT           Delete all files with .BAT extension.

               Notes:  Wildcards '*' and '?' are accepted.


      HELP -- Display help for FTP server commands.

               Syntax:  HELP [command]

               Examples:  HELP        Displays basic info and list of cmds.
                          HELP CWD    Gives help for the CWD command.

               Notes:
               Some FTP clients may intercept the HELP command to give help 
               on client commands.  In this case, the REMOTEHELP command, if 
               it is implemented should translate to a server HELP command.  
               If not, the client may have a command which passes commands 
               "RAW" to the server.  If all else fails, TELNET to port 21 
               and the HELP command will work.


      LIST -- lists FTP server directory contents.

               Syntax:  LIST [drive:\][dir\][mask]

               The LIST command causes a directory listing to be sent from 
               the FTP server to the client over the data connection.  If 
               the data connection cannot be established, the command will 
               fail.

               The optional argument consists of a directory path and 
               filename mask.  If no path is specified, the current 
               directory is assumed.  If no mask is specified, "*" (all 
               files) is assumed.  Wildcards '*' and '?' are accepted. 

               Examples:
               LIST              Displays all files in current directory
               LIST C:\PUB       Lists all files in PUB subdir of drive C:
               LIST /USR/*.EXE   Lists all .exe files in /USR directory





      Xrouter Command Reference Revision 2.2 (18/12/02)        Page 68
      FTP Server


               See also:  NLST -- List names only


      MKD -- Make new directory.

               Syntax:  MKD [drive:\]<pathname>

               The MKD command creates a new directory of the specified 
               name.  If pathname is not fully qualified, the new directory 
               is created within the current working directory.

               Examples:  MKD FRED
                          MKD C:/JIM/BILL

               See also:  RMD -- Remove directory


      MODE -- Specifies the data transfer mode.

               Syntax:  MODE <mode_code>

               MODE specifies how the data is to be formatted and 
               transferred via the data connection.  Mode codes are as 
               follows:

               B - Block         Data is sent in blocks
               C - Compressed    Data is compressed
               S - Stream        Data sent as stream of characters

               The default transfer mode, which is the only one currently 
               implemented, is Stream.  The command is included to prevent 
               unnecessary error replies.

               Examples:  MODE S   Sets (S)tream transfer mode.


      NLST -- (Name List) lists directory contents in short form.

               Syntax:  NLST [<filespec>]

               The NLST command causes a directory listing to be sent from 
               the FTP server to the client over the data connection.  If 
               the data connection cannot be established, the command will 
               fail.

               The optional argument consists of a directory path and 
               filename mask.  If no path is specified, the current 
               directory is assumed.  If no mask is specified, "*" (all 
               files) is assumed.  Wildcards '*' and '?' are accepted. 

               The listing consists of filenames only, without size, date 
               and other supplementary information.

               Examples:  NLST
                          NLST K:\PUB
                          NLST /USR/*.EXE

               See also:  LIST -- List directory contents




      Xrouter Command Reference Revision 2.2 (18/12/02)        Page 69
      FTP Server


      NOOP -- (NO OPeration) does nothing. 

               Syntax:  NOOP

               The NOOP command does not affect anything, and its only 
               action is to cause the server to send an "OK" reply.  It is 
               perhaps useful for testing that the control connection is 
               still functioning.


      PASS -- Specifies user password at login.

               Syntax:  PASS <password>

               The argument to the PASS command is either a string of up to 
               5 characters in response to the secure password challenge or, 
               for use on secure links only, the password itself.  The 
               string may not contain spaces.

               The command must be immediately preceded by the USER command, 
               which causes the system to replies with a matrix consisting 
               of 5 lines of 5 numbers thus:

                     4 1 6 3 7
                     3 5 2 6 3
                     7 1 9 2 4
                     2 7 1 4 6
                     3 5 2 6 1

               The remote sysop must then choose ONE of the lines, and send 
               the PASS command followed by the 5 characters from the 
               password string which correspond to the 5 numbers on the 
               chosen line.  There must be a space after PASS but no 
               spaces between the characters.

               Examples:  PASS RETAW        <-- Matrix response
                          PASS squirrels    <-- Raw password

               Notes:
               If the sysop has connected on a port which has SYSOP=1 in the 
               config file (e.g. a secure wire link), the response to this 
               command is ignored, and the sysop is granted full access.

               See also:  USER -- Specify your username.


      PASV  -- Use "passive" transfer mode.

               Syntax:  PASV

               Normal FTP relies on the server being able to initiate a 
               data connection to TCP port 20 on the client host.  This 
               method may however not work if the client is located "behind" 
               a firewall or connection multiplexer.

               Passive mode opens a data connection on the server, tells the 
               client of the IP address and port number, and waits for the 
               client to connect to it.  It can therefore work via 
               firewalls.



      Xrouter Command Reference Revision 2.2 (18/12/02)        Page 70
      FTP Server



      PORT -- Specifies the IP address and port for the data connection.

               Syntax:  PORT h1,h2,h3,h4,p1,p2

               The PORT command specifies the IP address and TCP port number 
               to be used by the data connection.  The argument is the 
               concatenation of a 32 bit IP address and a 16 bit TCP port 
               number, broken into 8 bit fields, each field being 
               transmitted as a decimal number.  The fields are separated by 
               commas, and the high order fields are transmitted first.

               Example:  PORT 44,131,91,2,4,1

               Specifies IP address 44.131.91.2 and TCP port number 0401 
               (1001 decimal)

               Notes:
               Under normal circumstances this command is not needed.  The 
               data connection defaults to TCP port 20 at the client's IP 
               address of the control connection.  However, it allows data 
               to be sent to a completely different host if required.


      PWD -- Print Working Directory.

               Syntax:  PWD

               The PWD command causes the full path of the user's current 
               working directory to be displayed via the control connection.

               See also: CWD -- Change Working Directory


      QUIT -- Terminates an FTP session.  

               Syntax:  QUIT

               If a file transfer is not in progress, the QUIT command 
               terminates the FTP session and closes the control connection.

               If file transfer is in progress, the control connection will 
               remain open until transfer is complete, allowing the result 
               code to be transmitted.  The control and data connections 
               will then close.

               An unexpected close on the control connection will abort any 
               data transfer currently in progress.

               See also:  ABOR -- Abort current command.


      RETR -- Retrieve (download) file.

               Syntax:  RETR [drive:\][dir\]<filename>







      Xrouter Command Reference Revision 2.2 (18/12/02)        Page 71
      FTP Server


               The RETR command causes the named file to be sent from the 
               FTP server to the client over the data connection.  If the 
               file can't be found, or access is denied, or the data 
               connection can't be opened, an appropriate error message is 
               returned.

               Examples:  RETR JIM.TXT
                          RETR ../FRED/DOG.EXE
                          RETR C:\CONFIG.SYS

               Notes:  Single files only, wildcards not accepted.

               See also:  PORT -- Specify host/port for data connection.
                          STOR -- Send a file to the server.


      STOR -- Store (upload) file.

               Syntax:  STOR [drive:\][dir\]<filename>

               The STOR command requests the FTP server to accept data via 
               the data connection and store it as a file with the specified 
               name.

               If the file specified in the pathname already exists at the 
               server, it is overwritten by the new data.  The overwrite 
               doesn't take place until the file has been correctly 
               received, which prevents a critical file being lost if the 
               data connection breaks. 

               Examples:  STOR JIM.TXT
                          STOR /FRED/DOG.EXE

               See also:  RETR -- Retrieve a file from the server.


      RMD -- Remove Directory.

               Syntax:  RMD [drive:\]<pathname>

               The RMD command deletes the directory specified by <pathname> 
               from the FTP server, providing you are the owner of that 
               directory and have write access.

               Examples: RMD FRED
                         RMD K:/JIM/BILL

               See also:  MKD -- Make directory


      RNFR -- Rename From

               Syntax:  RNFR [drive:\][dir\]<filename>

               The RNFR command specifies the old pathname of a file which 
               is to be renamed, and must be immediately followed by an RNTO 
               command.  The two commands together cause a file to be 
               renamed.




      Xrouter Command Reference Revision 2.2 (18/12/02)        Page 72
      FTP Server


               If the file isn't found the request will be refused.

               Examples: RNFR ../JIM.TXT
                         RNFR K:/FRED/DOG.EXE

               See also:  RNTO -- Rename To


      RNTO -- Rename To

               Syntax:  RNTO [drive:\][dir\]<filename>

               The RNTO command specifies the new pathname of a file which 
               is being renamed, and must immediately follow an RNFR 
               command.  The two commands together cause a file to be 
               renamed.

               If the new pathname isn't valid, the request will be refused.

               Examples:  RNTO DOG.TXT
                          RNTO K:/FRED/CAT.EXE

               See also:  RNFR -- Rename From.


      STRU -- Specify File Structure.

               Syntax:  STRU <structure_code>

               STRU specifies the internal structure of the files being 
               transferred, i.e.  how the data is organised within them. 
               Structure codes are as follows:

               F - File       No record structure (contiguous bytes)
               R - Record     File is collection of sequential records
               P - Page       File is composed of independent pages

               The default structure, which is the only one currently 
               implemented, is (F)ile.  The command is included to prevent 
               unnecessary error replies.

               Example:  STRU F   Sets (F)ile structure.


      SYST -- Operating system enquiry.

               Syntax:  SYST

               The SYST command is used to find out what type of operating 
               system is being used on the server.

               The first word of the reply is one of the agreed system 
               names, in this case MSDOS.  The rest of the reply gives the 
               server version number and byte size.


      TYPE -- Specifies the data representation type.

               Syntax:  TYPE <type_code>



      Xrouter Command Reference Revision 2.2 (18/12/02)        Page 73
      FTP Server


               The argument to the TYPE command specifies how the data is to 
               be translated between storage and transfer.  Type codes are 
               as follows:

               A - ASCII      Text.  End of line indicated by <CR><LF>   
               I - Image      No translation.  Bytes stored as received.
               L <bytesize>   Size of local storage bytes

               Examples:  TYPE A    Specifies Ascii type.
                          TYPE L 8  Specifies local byte size of 8 bits


      USER -- Specify user name for login.

               Syntax:  USER <username>

               The argument to the USER command is a string of up to 8 
               characters specifying the user's login name (usually 
               callsign).  The string must not contain spaces.

               Users are not allowed access to the system without logging 
               in.

               If the username (or callsign) exists in the PASSWORD.SYS file 
               the server sends a grid of 5x5 numbers (see PASS command) 
               generated from the user's stored password.  If the username 
               is not found, an error message is sent instead, and access 
               will not be permitted.

               The USER command must be immediately followed by the PASS 
               command.

               Example:  USER SYSOP   Enters your login name as "SYSOP"
                         USER G8PZT   Use callsign


               Note: Because the FTP server allows you to use any string of 
               characters as a name, you may set up different passwords for 
               different login names, and these may be in addition to your 
               callsign, which is the one used for ax25 sysop access.

               See also:  PASS -- Specify password.




















      Xrouter Command Reference Revision 2.2 (18/12/02)        Page 74
                                                                                                                               
