Category : BBS Programs+Doors
Archive   : XR240.ZIP
Filename : XROBOT.DOC

Output of file : XROBOT.DOC contained in archive : XR240.ZIP

XRobot(Tm) Version 2.40

The ultimate robot utility


1 Legal notice

All Joaquim H. Homrighausen products are trademarks or
registered trademarks of Joaquim H. Homrighausen. Other
brand and product names are trademarks or registered
trademarks of their respective holders.

Copyright 1989 Joaquim H. Homrighausen. All rights reserved.

1.1 Status

This program is not shareware, public domain nor freeware.
It's simply free of charge. You may use this program and
distribute it as much as you want if:

1. No fees are charged in any form. With the single
exception of the actual cost to transfer the XRobot

2. The complete archive is distributed containing only
the files put there by me. Any modifications to the
archive is a violation of this license.

1.2 Warranty

XRobot is provided "as is", without warranty of any kind,
either expressed or implied. Joaquim H. Homrighausen only
guarantees that XRobot will occupy diskspace.

In no event will Joaquim H. Homrighausen be liable to you
for any damages, including any lost profits, lost savings or
other incidental or consequential damages arising out of the
use or inability to use this program.

- 2 -

2 Introduction

A robot utility is just what the name implies, an easy to
control utility to aid you in your daily SysOp chores. It
will simplify tasks like sending multiple files to multiple
destinations and requesting files from other systems.

These functions can involve a lot of extra work if the
program you are using does not handle everything properly.

I assume you know enough about FidoNet and terms involved
with it to understand some "techie" descriptions. This is
not a beginner's utility - it is easy to use, but it does
require some knowledge about operating a node in general.

The history of this program is quite long and credits are
due to several people who gave me ideas and hints (and
complaints). It would take up too much space if I were to
list all of them here.

One individual should be named here though, Mats Knuts, the
Swedish network/region host. When I first started writing
this program he came with alot of suggestions and helped be
squeeze a lot of bugs and "undocumented features" out of the

XRobot has been around since early 1986 and is still getting
better. My plans are to keep going with it until it's become
a complete robot utility.

3 Basics

The basic functions are as mentioned to send and request
files. You can do this with several options and different
type of addressing methods. Earlier versions of this
programs did not support anything but direct addressing.

Most of the data is taken from a file referred to as the
"control file" which is where you will put your network
information as well as default settings you wish the program
to use if nothing else is specified.

- 3 -

4 Control file

This file is a plain vanilla ASCII (text) file. You can
create it with your text editor or word processor; or use
EDLIN (the DOS line editor). If you are using a word
processor, make sure no additional control characters are
inserted in the file since this could make the program
operate a little strange (which you would probably notice).

The program will search for the control file (XROBOT.CTL) in
the current directory or in the directory specified by the
environment variable XROBOT. The environment variable will
be searched before the current directory is scanned for the
control file.

For an example of how a control file can look, print or list
the sample XROBOT.CTL file included in this package. There
are several options that you cannot specify in the control
file, but give as "command line switches" when you start the
program. Some of them are required and some are optional.

XRobot treats uppercase and lowercase characters the same,
so how you enter the commands isn't important.

4.1 Commands


Your network address. E.g. 1:135/20.1

4.1.2 AKA

Specifies an alternate network address. You can specify up
to ten AKAs (each one requires a separate AKA command).

4.1.3 MAIL

Defines the DOS path (directory) where you have your
outgoing and incoming messages stored. This is where
messages created by the program will end up. If there is no
trailing backslash the program will automatically append

4.1.4 USER

Just for cosmetics, I've implemented a option for you to
define the name to appear in the "FROM:" field of the
created message(s). If none is specified, the program
defaults to "XRobot" followed by the current version number.

- 4 -


This command is quite complex. It specifies what message
attributes you wish the program do use by default. There are
five options available. For an explanation of these, consult
your mailer's documentation. The ones supported are

o Crash

o Hold

o Private

o Kill/Sent

o Direct

Each option requires a separate "MSGBITS" line.

4.1.6 ALIAS

The alias command allows to you assign a more human name to
an address. When specifying addresses, you can instead
specify an alias.

alias felix 2:310/11
alias rick 1:381/30
alias bro 2:201/106

The maximum number of alias definitions that you can have is

4.1.7 MAP

If you're running XRobot within a network (LAN) environment,
drive IDs can change when you're logged on to the network.

For instance, if you have your mailer running on the network
server, it's running on C. If you have a harddisk on your
workstation, the network's harddisk will become F (as seen
from the workstation) so if you send a file that's on the
network drive from your workstation, XRobot would normally
think that the drive is F. When your mailer tries to find
the file, it won't.

By using drive mapping in XRobot, you get around this
problem very easy. In the example above, you could have "MAP
F C" in your control file and when XRobot sends a file from
what it thinks is drive F, it'll remap the drive
specification for the mailer to C.

The maximum number of drive mappings you can have is 20.
Please note that the example above might not be true for
your environment.

- 5 -

5 Running the program

XR [zone:]net/node[.point] [switches]

5.1 Actions

SEND Creates file attach messages to the specified

GET Creates file request messages to the specified
systems (note, if this option is used with the /U
switch, it'll be an file update request). Note
that if you are requesting files, the filemask
will not be expanded but used as a request name.

TEXT Creates a regular message to the specified systems
with the /T as message text. When using
this mode, the parameter will be used
as a subject line of the message. If you need
spaces in your subject, enclose the paramter with
double quotes. E.g. "Hi, this is a subject".

POLL Creates a dummy (empty) message to force your
mailer to call the specified systems to pickup
mail. When using this mode, the
parameter doesn't "exist" (and shouldn't be

COMMANDS Will display the above listed commands.

SWITCHES Will display the allowed command line switches
(described later).

The can be any valid DOS path specification
including wildcards. If the string contains any wildcards
they will be expanded to matching files. This is one of the
most powerful functions of this program. Most other robot
utilities does not expand this string - they leave it up to
the mailer when it sends the message to expand it. If you
have wildcards specified and the transmission is aborted for
any reason, the program will most likely send the same files
again at the next attempt.

Following after the file mask is a list of nodes (or
aliases). You can specify as many as 30 destinations. If you
wish to use international addressing (across zones) you must
specify a zone address as well for nodes you wish to use
this method with (i.e. 2:201/106 for node 106 in net 201
located in zone 2).

- 6 -


If you need to specify more than one word as a parameter to
a switch or other, put them within double quotes ("). For
example, to use the below listed /S parameter and specify a
name which consists of three words:

/S "Joaquim H. Homrighausen"

5.3 Default addressing

It's perfectly valid to only specify partial addresses
(short form). The program will use your own address for
default data. To specify a point under your own system, all
you have to specify is ".". To specify a node
in your own net, use "". Your zone is assumed
unless you specify a zone.

- 7 -

5.4 Command line switches

Command line switches can be preceeded by any single
character. /C and -C are both valid command line switches.

5.4.1 C - Crash

Enables the Crash (high priority) bit regardless of your
control file settings.

5.4.2 H - Hold

Enables the Hold (for pickup) bit regardless of your control
file settings.

5.4.3 K - Kill/sent

Enables the Kill/sent bit regardless of your control file

5.4.4 P - Private

Enables the Private bit regardless of your control file

5.4.5 R - Kill file/sent

Will add the "Kill file when sent" indicator to the message
(and is only valid when you send files). It will only work
on mailers supporting the extended FLAGS set such as
FrontDoor and D'Bridge.

Note that XRobot allows you to send files marked as read-
Only. Don't use this option when you're sending read-Only
files, since your mailer won't be able to remove the file.

5.4.6 X - Truncate file/sent

Will add the "Truncate file when sent" indicator to the
message (and is only valid when you send files). It will
only work on mailers supporting the extended FLAGS set such
as FrontDoor and D'Bridge.

Note that XRobot allows you to send files marked as read-
Only. Don't use this option when you're sending read-Only
files, since your mailer won't be able to remove the file.

- 8 -

5.4.7 Y - Direct

Will add the "Direct" indicator to the message regardless of
your control file settings. This flag means that the message
(and any attached files/requests) should be sent directly to
the addressee and only allowed to be picked up by the
addressee - disregarding routing. It will only work on
mailers supporting the extended FLAGS set such as FrontDoor
and D'Bridge.

5.4.8 A - Attach path

Normally, the path you specified will be used to specify the
path where the file will be present when you send it. But
the file may not be there yet, or it may not be available
there yet. You can insert another path specifier instead by
using this command (e.g. /A C:\MAIL\OUTBOUND\).

5.4.9 D - Date mailing

Followed by a numercial value (i.e. /D 10) specifies that
you only want to send/get the files if they've been updated
in "nn" days. This means that any file that matches the
filemask that has not been updated within the specified
number of days will not be sent. This can be very useful for
sending out updates if you are a host, hub or region

5.4.10 S - SysOp

Followed by a string will replace the default "TO: SysOp".
5.4.11 T - Message text

Followed by a file name (e.g. /T LETTER.TXT) will put the
contents of the specified file into the message body. If the
file cannot be found, the program will abort. This can be
used with all modes except POLL.

5.4.12 U - Update request

If used together with "GET", it enables the update request
function rather than a regular file request.

5.4.13 Z - Activate zonegates

If any of the nodes specified as receiver of the message has
got a zone specified (other than yours and other than zero)
the message will be sent to your zonegate with an INTL line
in the message body telling the zonegate software where to
send the message.

- 9 -

5.4.14 F - Force use of INTL

You can force XRobot to add INTL addressing to each message
it creates, this is in particular useful when used with
semi-zone aware mailers. If this option is enabled, XRobot
will add the INTL with the proper addresses for every
message it creates, even if the destination and originating
address is in the same zone.

5.4.15 1-10 - Specifying an AKA

This allows you to specify from which AKA you want the
message to send "from". If this option isn't used, the
address specified as "ADDRESS" in the control file will be

- 10 -

6 Requesting files with passwords

There are two methods to indicate a password for a file or
update file request. SEAdog uses ","
while FrontDoor, Binkley, D'Bridge etc. uses "

Both methods (I should say any method) are supported by the
program. If you're requesting a file from the command line
with a password, you must enclose the filename and password
within quotes. I.e. "XR GET FD.ARC !password" or "XR GET

You may also specify a password when you do file update
request(s) from a command file. You may not use the quotes
here however. To use the same example as above, assume you
want to request "FD.ARC", you would put "FD.ARC,password" or
"FD.ARC !password" on one line in the command file (without
the quote characters).

For an example of a command file for file update requests,
see UPDREQ.TXT included in the distribution archive.

7 Reporting bugs

If you think you've found a bug, I'd appreciate hearing
about it. But please make sure you understand what the
function you're trying to use is supposed to do before you
tell me about the bug.

8 Contacting the author

If you need to reach me, you can send e-mail (netmail) to
one of the following addresses:

FidoNet 1:135/20
AlterNet 7:48/20
SIGNet 26:1305/100

Or you can call the FrontDoor Headquarters BBS at
1-305-596-2904 (14.4K HST) and enter a message to SysOp.

Thank you for using XRobot.

Joaquim H. Homrighausen

- 11 -

9 Technical notes

XRobot was written using Turbo C 2.00 from Borland
International and the Microsoft Macro Assembler 5.10. The
screen output is done through an undocumented function call:
Interrupt service 29h. It's non-redirectable.

- 12 -


1 Legal notice . . . . . . . . . . . . . . 2
1.1 Status . . . . . . . . . . . . . . . 2
1.2 Warranty . . . . . . . . . . . . . . 2
2 Introduction . . . . . . . . . . . . . . 3
3 Basics . . . . . . . . . . . . . . . . . 3
4 Control file . . . . . . . . . . . . . . 4
4.1 Commands . . . . . . . . . . . . . . 4
. . . . . . . 4
4.1.2 AKA
. . . . . . . . . 4
4.1.3 MAIL . . . . . . . . . . 4
4.1.4 USER . . . . . . . 4
4.1.5 MSGBITS . . . . . . . 5
4.1.6 ALIAS . 5
4.1.7 MAP . . 5
5 Running the program . . . . . . . . . . . 6
5.1 Actions . . . . . . . . . . . . . . 6
5.2 Quotes . . . . . . . . . . . . . . . 7
5.3 Default addressing . . . . . . . . . 7
5.4 Command line switches . . . . . . . 8
5.4.1 C - Crash . . . . . . . . . . . 8
5.4.2 H - Hold . . . . . . . . . . . 8
5.4.3 K - Kill/sent . . . . . . . . . 8
5.4.4 P - Private . . . . . . . . . . 8
5.4.5 R - Kill file/sent . . . . . . 8
5.4.6 X - Truncate file/sent . . . . 8
5.4.7 Y - Direct . . . . . . . . . . 9
5.4.8 A - Attach path . . . . . . . . 9
5.4.9 D - Date mailing . . . . . . . 9
5.4.10 S - SysOp . . . . . . . . . . 9
5.4.11 T - Message text . . . . . . . 9
5.4.12 U - Update request . . . . . . 9
5.4.13 Z - Activate zonegates . . . . 9
5.4.14 F - Force use of INTL . . . . 10
5.4.15 1-10 - Specifying an AKA . . . 10
6 Requesting files with passwords . . . . . 11
7 Reporting bugs . . . . . . . . . . . . . 11
8 Contacting the author . . . . . . . . . . 11
9 Technical notes . . . . . . . . . . . . . 12


  3 Responses to “Category : BBS Programs+Doors
Archive   : XR240.ZIP
Filename : XROBOT.DOC

  1. Very nice! Thank you for this wonderful archive. I wonder why I found it only now. Long live the BBS file archives!

  2. This is so awesome! 😀 I’d be cool if you could download an entire archive of this at once, though.

  3. But one thing that puzzles me is the “mtswslnkmcjklsdlsbdmMICROSOFT” string. There is an article about it here. It is definitely worth a read: