home
***
CD-ROM
|
disk
|
FTP
|
other
***
search
/
Mega CD-ROM 1
/
megacd_rom_1.zip
/
megacd_rom_1
/
NETWORK
/
CBBS60MA.ZIP
/
MANUAL.BBS
Wrap
File List
|
1989-02-18
|
128KB
|
3,496 lines
***************************
*** THE C-BBS MAILBOX ***
*** Version 6.0 ***
***************************
1. Getting Started, What to look for
2. The Configuration File
3. The Forward File
4. Commands (user and sysop)
5. Prtlog, Printer, and Files used
6. Log, List, and Distributation Files
7. Protocols (bid's, zip's, sid's, sending)
8. Desqview operation
9. Modem usage
10. Restoring the mail file, Mail format, Listing messages
11. Archiving messages
Appendix A. Changes.mb
Appendix B. Config.mb
INTRODUCTION AND PURPOSE
This is the documentation for the C-BBS Mailbox system. It is
based on code originally written by Hank Oredson. It is being
continued by a small group of packet programmers so that sysops
will have the source code available. The purpose is simply to
allow sysops to use, learn, and understand the "C" programming
lauguage and it's use in running the C-BBS Mailbox system. This
way the code can be customized to suit sysop needs. Also, as bugs
are found, it allows the sysop to search the source code for the
necessary corrections. The use of any module or section of code
for any distribution beyond the C-BBS mailbox is prohibited. All
the modules are copyrighted by the CBBS GROUP. It may be copied
for non-commerical use as long as all copyright notices are
included.
Be forewarned that only the RELEASE versions of this software will
be supported. Bug reports and enhancements are appreciated. This
is a group effort and as such, more time is available for
comments.
Chapter 1 ------------------ GETTING STARTED ------------------------- Page 1
************************************************************
*** C-BBS MailBox and GateWay Version 6.0 - 1/15/89 ***
************************************************************
A: [CBBS-6.0-H$]
This code was initially created for packet community by:
Hank Oredson, W0RLI
Hank, however, no longer supports the CBBS code. He is allowing
it to be developed by others interested in furthering this
version. He is developing a new code that is not associated with
this CBBS program. Dave, VE3GYQ had released version 4.4 of this
code and K3RLI and AG3F have released versions 4.6 and beyond.
This is the latest version.
You may obtain versions of the code in several ways.
1. Download from Compuserve HamNet or
2. Send a diskette mailer to
Edward T. Picchetti, K3RLI Joseph P. Lagermasini, AG3F
355 Ridge Road 206 Wilmot Drive
Wilkes-Barre, Pa. 18702 Towanda, Pa. 18848
A special thanks to those who send little chunks of code with bug
fixes or new features.
Thanks also to VE3GYQ for the GateWay code, AA4RE and WA7MBL for
the IBM port drivers.
The code will run under DOS for for single user application or
under DESQview for multiple user applications. DoubleDos is no
longer supported for multiple user setups. Under DESQview 100k
window size is required unless the bbs dos command feature is
desired then 150k window size is necessary. A 640k pc/xt will
support 3 windows without the dos command feature.
This version of the code represents a significant change from
previous issues. The method of handling the mailfile and
individual message files is all new and the communication between
copies of the BBS is now done without the need for the "pipe".
These changes result in the ability to reconstruct the mailfile
from the individual messages thus providing security from crashes
and failures. The use of mailfiles and user files common to all
copies provides many conveniences.
Please read the following documentation to get things set up
properly. This code will not run using previously successful file
and directories. Appendix A will give more detail as to the
revisions from previous versions of the code.
Chapter 1 ---------------- GETTING STARTED --------------------------- Page 2
B: CODE DISTRIBUTION
The code as distributed is broken down into sections so that you
can select the areas that you need for your requirements. For
normal operation of the bbs the modules RUNxx.ARC and IOxx.ARC are
all that are necessary. The other modules provide the source code
for those interested in making their own modifications to the
code. All modules, both run and source, are provided in ARC
format and must be uncompressed by use of PKXARC.
C: WORKING WITH THE SOURCE CODE
It is expected the those using the provided sources are familiar
with "C" language, 8088 assembler notation and the manuipulating
of compilers, assemblers and linker.
All developement work has been done with the Microsoft C compiler
version 4.10. Some Microsoft specific library functions are used,
these functions should exist with any C compiler. The names,
arguments, and required header files for these functions might be
different with other compilers. All of these differences should
appear in the module MBIBM.C. The Microsoft C compiler version
5.01 has also been used successfully but the distributed code was
produced with version 4.10. Turbo C and Quick C have also been
used by others with good success after some syntax modification.
File MB.BLD has been provided to utilize the Microsoft MAKE.EXE
file maintance utility to compile, assemble and link the various
modules that make up the bbs code. It is recommended that this be
utilize but CC.BAT has also been supplied to permit compiling of a
single module and LINK.MB is provided to work with LINK.EXE to
form the entire linked package.
Microsoft MASM versions 4.0 and higher have been utilized to
assemble the I/O and other modules that require it.
D: USING THE RUN CODE
The following steps will be required to get the bbs operating
using the provided run code. Please notice that you have many
options for configuring the hardware and software. The examples
shown are only illustrative and are not the only way to do this.
1: Extract the files from the ARC files if this has not already been
done. This is accomplished by using the command PKARC -x RUN51
for the run files and PKARC -x IO51 for the I/O routines. This
will produce numerous files from which you will select only a few
depending upon your desired system configuration. PKXARC can also
be used for this task and is faster if you have it available.
2: Decide how your system will be configured. How many tncs will you
have? Will the tncs be arranged so that each can be connected to
independantly of the others or when one is in use will the others
be unavailable for a connect or is a combination of both methods
desired? As an example we can have 3 tncs, A, B, and C. If we
decide that only one tnc at a time is to be connected, then we can
configure to run under DOS without multi- tasking enviornment. If
we would prefer all tncs to operate independantly then we must
configure for DESQview and provide 3 windows, one for each tnc.
Chapter 1 ---------------- GETTING STARTED --------------------------- Page 3
We can also decide to have tnc A be independant and B and C work
as a pair. This arangement requires 2 DESQview windows with tnc A
operating from one and tncs B and C operating out of the other.
This setup will permit connects on tnc A and either B or C
simultaneously. Many other combinations are possible depending
upon the number of tncs, serial ports and system memory. In any
case, decide upon this arangement now.
3: Setup a directory structure based upon your system configuration.
This is discussed in more detail in another section but
essentially you must have the following files included:
mb.exe
bios.com based upon the number of tncs(eg. br3bios.com for 3 ports)
mbmode.exe
hand.com
share.exe **
config.mb for each window (eg. config.a, config.b, etc)
mail.dat & user.dat (Converted files from older version)
fwd.mb
info.mb
help.mb
user.mb
mon.mb for each window (Created by the mailbox)
log.mb for each window (Created by the mailbox)
calls.mb for each window (Created by the mailbox)
A typical setup for the example above would be the following
directories and their files:
\mb \mb\bbs \mb\msgs
mb.exe mail.dat
mbmode.exe user.dat all
br3bios.com info.mb message
config.a help.mb text
config.bc fwd.mb files
hand.com mon.a
share.exe mon.bc mbrestm.exe
calls.a
calls.bc
log.a
log.bc
** share.exe is on your dos distribution disk for dos 3.0+
4: Prepare the configuration or configurations based upon the desired
system setup. Detail of how to do this follows in another section
but make sure the file specification section of the configurations
follows the directory structure decided upon above and the port
section also follows the system setup.
5: Setup the directory structure and copy the proper files to these
locations. If you are a new user only the files in the \mb
directory and info.mb and help.mb in \mb\bbs will be required.
The bbs program will create the necessary other files. For those
of you with operating older versions of the code, the mail, user,
fwd, log, msg, etc files should be copied to the proper directory
and renamed if necessary. Even if there are no message files, as
in the case of a new user, make sure the \mb\msgs directory has
been created.
Chapter 1 ----------------- GETTING STARTED -------------------------- Page 4
6: Prepare a suitable batch file to initialze the serial port(s) and
bring up the bbs. A possible file for a single window operation
might be for the example of 3 tncs:
TIMER -> Your time and date program. CONFIG.SYS
BR3BIOS FILES = 20
MBMODE COM1:4800,N,8,1 BUFFERS = 20
MBMODE COM2:4800,N,8,1
MBMODE COM3:4800,N,8,1
CD \MB
MB
An example of this file when used with the 2 window example above:
TIMER -> Your time and date program. CONFIG.SYS
BR3BIOS FILES = 30
MBMODE COM1:4800,N,8,1 BUFFERS = 20
MBMODE COM2:4800,N,8,1
MBMODE COM3:4800,N,8,1
HAND
SHARE
CD \DV
DV
These batch files can exist independantly and be called by
AUTOEXEC.BAT or can be made part of AUTOEXEC.BAT. In either case
the bbs will reboot upon power outages. If this is not desired
keep this batch file independant of AUTOEXEC.BAT.
The cable between the tnc and computer should have pins 2,3,4,5,
6,7,8, and 20 connected. Hardware flow control is used in both
directions. Configure the TNC's using the appropriate .SET file,
TNC1.SET for a tnc1, TNC2.SET for a tnc2, PK232.SET for a pk232.
The parameters differ depending on the type of tnc you are using.
8: If you are not using DESQview and are using only a single window
disregard the rest of this section. Add a copy of the mb program
for each window used. This is done with the AP selection from the
open window menu. Enter the path, program name and parameters,
plus set correctly all of the options on both normal and advanced
options. See the section on use of DESQview for those details.
In addition in the advanced menu set the window heigth, width, row
and column to place the bbs copy in the desired place on the
screen. For a 1 or 2 window system the defaults are ok (split
screen) but for more than 2 copies consideration must be given to
this. For the 2 window 3 tnc example of above the main AP entries
are:
window 1
Program name <A--145.01>
Key M1 Memory size 150
Program MB
Parameters config.a
Directory C:\MB
window 2
Program name <BC--145.07, 221.11>
Key M2 Memory size 150
Program MB
Parameters config.bc
Directory C:\MB
Chapter 1 ----------------- GETTING STARTED -------------------------- Page 5
Prepare the DESQview startup script file and place it in the \DV
directory. This file is desqview.dvs and should contain the
proper scripts to open the number of windows used by the
configuration. The section describing the use of DESQview covers
this technique. In our example above for the 2 windows the script
should open M1 pause 30 and then open M2 before finishing.
10: Convert the mailfile and message files if you have an older
version running. If you are a 1st time user this section can be
bypasssed. This represents the most significant change from
version 4.6 of the code and should be followed carefully.
If you are now running a version prior to 4.0 you must convert
your existing message and user files to version 4 format.
First, backup all files in the directory used by the MailBox. In
case something goes wrong, you will be able to restore everything
to where it was without loss of messages.
The conversion from earlier versions to version 4 is done by
MBCONV. Set the default directory to the directory containing the
MAIL.DAT and USER.DAT files. Then run MBCONV.
If you are running a version prior to 3.0 you must first make
certain that the message text has been moved to individual files.
Do this by executing the GF command.
** FOR VER 4.6 **** and prior converted versions do the following:
From the operating bbs DO a GM and then quit the board. Now the
final conversion to the new format can be performed. This version
of the CBBS code requires that the individual message files be
converted to a new format. The program MBCONVM.EXE is provided to
do this conversion.
The program expects the mailfile, MAIL.DAT to exist in directory
\mb\bbs and that the individual message files be in directory
\mb\msgs.
Copy MBCONVM.EXE into the \mb\msgs directory and then invoke the
program by typing MBCONVM <return>. This program will read the
MAIL.DAT file and the corresponding message files and produce a
converted MAIL.DAT as well as converted message files. When
completed the new MAIL.DAT will reside in \mb\bbs directory and
the modified message files in \mb\msgs as was the case previously.
If MAIL.DAT wasn't found in \mb\bbs the program will ask for the
directory containing MAIL.DAT. You can then enter the proper
directory name. The program will procede with the conversion if
it does find MAIL.DAT. If it does not it will abort the
conversion and report that it could not find the file. You should
check the directory setup and the location of MAIL.DAT and then
start the conversion again using the invocation MBCONVM \xx\sss
where \xx\sss is the actual directory location of MAIL.DAT.
If the mail file had already been converted the program will abort
the conversion and report accordingly.
11: All should be ready now. Either reboot the computer if the
startup batch file is associated with autoexec.bat or type the
name of the batch file.
Chapter 1 ---------------- WHAT TO LOOK FOR -------------------------- Page 6
(BBS LOADING)
When you load the bbs program your screen should look something like this:
TNC commands on TNC commands off
<A> Window 1 portflag 1 <- same
<B> C aAbB for two ports
<B> Link state is DISCONNECTED
<B> cmd:
<C> XX calls in \mb\bbs\CALLS.MB <- same
<D> XX users in \mb\bbs\USER.DAT <- same
<E> There is XXXXX free space, XXXXX will be used. <- same
<F> Set for DESQview.
<G> m on
<G> MONITOR was off ABABAB
<G> cmd:cono on
<G> CONOK was off
<G> cmd:
<A> This line is used by the handshaking program to detect ports
active, and total ports used by the bbs. If you are using a
single bbs, it is not necessary.
<B> This takes a tnc state, and insures the tnc is disconnected.
A line appears for each port used by the bbs.
<C> This line indicates the number of calls in the CALLS.MB file
up to the max listed in the config. When you hit the maximum
it will also say (file is full).
<D> This line indicates the number of users in USER.DAT
<E> Tells the amount of free space of memory, and the amount to
be used by the mailbox. If you are using DESQview, you might
want to adjust the window size to not waste memory space.
<F> Only shows up if you are set for DESQview in the config.mb If
this line shows up and you are not using DESQview, change the
DESQview line in the config to OFF.
<G> Shows the monitor and conok being turned on to allow monitor-
ing and connects for each port used by the bbs.
NOTES:
<B><G> If you have the port configuration line in the config.mb
set with a '3' ( don't monitor tnc commands ) in it, these
lines will only show as a lower or upper case letter.
If you hang at this point, your tnc is not setup right, or
your cable is not connected properly. You need at least,
ECHO OFF, MONITOR OFF, AUTOLF OFF, AWLEN 8,and PARITY 0 set
into the tnc.
<E> If you display "Too little memory available." You need more
memory. Add in 4k increments to window.
At this point the bbs is active, and ready for connects or
monitoring the frequency. You can now hit a ^E (control E) and
log onto the bbs. the bbs will turn off the monitor and turn off
conok in the tnc and show you the sysop prompt.
880711/0350, 1011, 100 msgs>
You are now ready to enter any commands. The prompt line shows you
the DATE/TIME, the highest message number, and the number of
messages on the bbs if you use the one in the sample config.
Chapter 2 ---------------- CONFIGURATION FILE ------------------------ Page 1
********************************
*** The Configuration File. ***
********************************
The file CONFIG.MB is a text file that contains all site-specific
parameters. Edit it to have the proper parameters for your site.
The form $x is a variable text field. The "$x" is replaced by the
current value for that text. These variables can be used anywhere
in the configuration file.
$A - @ BBS of the current message.
$B - Type of current message.
$C - Next available message number.
$D - The current date.
$E - The message title (used for RFC822 headers)
$F - Name of "other port", as used in the M, U, and C commands.
$G - TO of the current message.
$H - Hang at end of line (suppress carriage return).
Use at end of line only. DO NOT USE on lines that go to tnc.
$I - Users name, from user file.
$J - Date from current msg header
$K - Time from current msg header.
$L - Number of the last message.
$M - Message number from current msg header.
$N - Number of active messages.
$O - Sysops callsign.
$P - FROM from current msg header.
$Q - Sysops QTH
$R - Call in a "connect request:" from either TNC.
$S - Call of the end node station connected via the slave TNC.
Seen initially in "*** CONNECTED to:" when the adjacent node
connects, may be seen in "*** LINKED to:" from the adjacent node.
$T - The current time.
$U - User callsign.
$V - Display the software version.
$W - Name of the "other user" in GateWay mode. (See $F and $S).
$X - Date user last logged in.
$Y - Time user last logged in.
$Z - Last message number when user last logged in.
$a - BBS of origination of message.
$j - Date message was entered at originating BBS.
$h - Hierarchical forwarding list.
$k - Time message was entered at originating BBS.
$m - Message number at originating BBS.
*************************
*** CONFIG.MB LINES ***
*************************
*** LOOK at the sample in Appendix B ***
The first section (to the first *** EOF) is the port configuration info.
Two lines per port.
The first line contains the port definition, the second line the port name.
The port definition line is made of several fields, seperated by spaces:
Chapter 2 ------------------ CONFIGURATION FILE ---------------------- Page 2
(Continued)
Field 1:
The first character is the Port ID,
the second and following characters give information about the port:
B - BBS only may connect.
C - This port is the local console.
D - File download allowed from this port.
E - This port requires echo. (True only for the console.)
G - GateWay use is allowed to this port.
I - Kick off user that connects using illegal call.
L - This port requires LF after CR.
M - Monitoring is allowed to this port.
R - Remote sysop allowed on this port (if user marked as sysop).
S - This is a raw serial port (another system or a terminal).
T - This port has a TNC with TAPR commands connected.
U - File upload allowed from this port.
X - TNC can use transparent mode for connects.
1 - Echo monitored packets to the console.
2 - Echo user data and forwarding to the console.
3 - Echo TNC commands to the console.
Field 2: Connect timeout, in seconds.
Field 3: Disconnect timeout, in seconds.
Field 4: Monitor timeout, in seconds.
Field 5: Max lines allowed in monitor.
Field 6: Number of entries retained in J list.
Field 7: Number of digipeaters allowed on connect.
Field 8: Minute of the hour to attempt forwarding.
Field 9: Number of command errors allowed before user kicked off.
Field10: Seconds to wait in forward when a timeout occurs before continuing.
The second section (to the second *** EOF) is directory path definitions.
Three lines per path.
The first line is a single character path ID,
followed by "D" if downloading is allowed, and "U" if uploading is allowed.
The second line is the path, with trailing '\'.
The third line is the name of the path, as shown to the user.
The third section (to the third *** EOF) is the "@ BBS" translation list.
Each line has two fields, the first is the @ BBS as received,
the second is what to translate it to.
For example; to remove your own call from the @ BBS field of all messages,
simply include one line with just your call on it.
The fourth section (to the fourth *** EOF) is the "hold calls" list.
Any message entered TO, FROM, or AT one of these calls will
be held (not forwarded) until the status is changed to N by the sysop.
The fifth section (to the fifth *** EOF) is the login message.
Keep it short. Maximum is 255 characters.
The next line is the "bbs and expert user" prompt. Keep it SHORT!
The next line is the remote sysop prompt. Keep it SHORT!
The next line is the normal MailBox prompt.
The next line is your call.
The next line is your QTH.
The next line is the call of your local WP server. (Place a blank line
( here if you do not wish to generate updates to WP.)
Chapter 2 ------------------ CONFIGURATION FILE ---------------------- Page 3
(Continued)
The next line is the file name to use for the help (H) text.
The next line is the file name to use for the info (I) text.
The next line is the file name to use for the auto-forwarding file.
The next line is the file name to use for the log file for each window.
The next line is the file name to use for the "J" list file for each window.
The next line is the file name to use for the mail file.
The next line is the file name to use for the mail backup file.
The next line is the file name to use for the user file.
The next line is the file name to use for the user backup file.
The next line is the directory to put the message files in.
The next line is the file name to use for the BID file.
The next line is the file to put monitored calls into for each window.
The next line is the maximum number of monitored calls to save.
YES xx Where xx is the time to compress the mail file.
YES Using DesqView. NO to NOT give idle time.
The next 3 lines control prompting for user information.
YES to prompt user to enter his name.
YES to prompt user to enter his home MailBox.
YES to prompt user to enter his ZIP or postal code.
The next five lines control logging. (what goes into LOG.MB).
YES to turn on logging. Only connects/disconnects are logged.
YES to turn on GateWay event logging.
YES to turn on file transfer logging.
YES to turn on message event logging.
YES to turn on logging of local commands.
The control character to use to kick user off system.
The control character to use to return from talk.
The control character to use to interrupt and go to talk.
The control character to use to take the MailBox off-line.
Prompt before continue at end of page of output.
The next line is sent to the console each time a prompt is sent to the user.
The next line is sent to the user when a connect request occurs.
The next line is the message to send when
you break into a MailBox session to talk to the user.
The next line is the response to the user when he wants to talk to you.
The next line is the message to send when
you are not available to talk to the user.
The next line is the message to the console when the user wants
to talk to you.
The next section, one line per message, is the GateWay messages:
Message when GateWay not available.
Message going into unproto mode.
Message when attempting a connect.
Message when connect fails.
Message to master tnc when connect succeeds.
Message when connect attempt aborted by user.
Message to send to master when entering monitor mode.
Chapter 2 ------------------ CONFIGURATION FILE ---------------------- Page 4
(Continued)
The next section, one line per message, is the message and file prompts.
Prompt for title of message.
Prompt for message text.
Message to send at login if user has new mail.
Message list header. Observe columns if you change.
Line to pre-pend to a forwarded message.
Message to send to console when untangle and file empty.
Message to send to console when starting an untangle.
Message to send as each msg deleted with KM.
Prompt to edit TO.
Prompt to edit AT BBS.
Prompt to edit TITLE.
Prompt to edit TYPE.
"This message is not NTS traffic".
Max # of calls in BT "unread mail" list. (Use 1 for no beacon.)
Max # of calls in forwarding "unread mail" list.
YES to enable auto-kill of normal messages after auto-forward.
(NO leaves the message with status set to 'F').
YES to enable auto-kill of "F" & "B" type messages after auto-forward.
YES to generate a service message on KT.
YES to enable the ET command.
Number of days old a bulletin is when it is called old.
Number of days old an NTS message is when it is called old.
Number of days old a user message is when it is called old.
Prompt for file text.
Default user name.
Message when compress user file.
Header for list of user records.
Prompt to delete user record.
The next section, one line per message, is the error/status messages:
Reminder to user that he has not entered his name.
Reminder to user that he has not entered his home MailBox.
Reminder to user that he has not entered his ZIP or postal code.
Message for I/O error.
Message for "can't find it".
Message for protection violation (tried to read private msg etc.).
Message for "file exists, and you can't erase it".
Message for timout.
Message for "I didn't understand the command you gave".
Message for done (command completed).
Message for "There ain't no such port".
Message for "There ain't no such directory".
Message for "No such file."
Message for "No such message."
Message for "Port is in use."
Password ( 64 characters for remote sysop use )
NOTES
-----
FIRST SECTION -- PORT PARAMETERS - a space defines fields.
The console must be the last configuration line.
Field 1:
Any number of characters can be used. Certain characters are
necessary, such as 'T' for tnc ports, 'C' and 'E' for the console
port. 'B', 'D', 'U', 'G', 'I', 'L', 'M', and 'R' are optional.
The '1,2,3' are used for display purposes, and control what is
echo'd to the screen. IF you are using DESQview, TNC commands
should be turned off to speed up the display, therefore there
should be no '3' in the line.
Chapter 2 ------------------ CONFIGURATION FILE ---------------------- Page 5
(Field 1 Continued)
The 'R' must be in the line if the PORT is to used by a remote
sysop. Additionally a remote sysop must be designated in the user
file. The 'S' is used for a serial port-modem operation.
Auto-answer must be set in the modem, and the user signs on by
typing '*** Connected to <user call>. (See Chapter 9)
Field 2:
The timeout for the bbs waiting for a response from a user or
another bbs. It should be long enough to handle mail forwarding
thru net/rom's to receive the other bbs's prompt after a message
is sent.
Field 3:
The timeout to wait after a disconnect has been issued to the tnc,
and the bbs going back on-line.
Field 4:
The amount of time to spend in the Gateway while monitoring another
port.
Field 5:
The maximum amount of lines monitored while in the Gateway.
Field 6:
The number of calls shown in the 'J' lists.(Must be at least 1)
Field 7:
The maximum number of digipeaters that a user can use for connects
to the bbs. This only applies for users and not for bbs's & sysop's
marked in the user file.
Field 8:
The minute of the hour to start forwarding. It is also the minute
that an auto-compress (GM) will take place. This should be slightly
different between windows for smooth DESQview operation.
Field 9:
The number of errors that a user can make before the bbs disconnects
him. (i.e. Number of *** WHATS?)
Field 10:
The number of seconds for the bbs to wait when forwarding to a bbs
and your disconnected, and then start to forward to another bbs.
Allows the tnc to dump all of the data that it has loaded into it.
*****************************************
*** ALTERNATE DISPLAY OF TNC COMMANDS ***
*****************************************
If you leave out the 3 in the port configuration in config.mb, you
will not see the tnc commands on the bbs. What you will see is
the PORT Configuration LETTER (a,b,c) of where the tnc command is
going. If the tnc accepts the command it will be in upper case;
if not it will be in lower case. This is useful when running
multiple copies of the bbs under desqview, as it speeds up the
screen display, and makes things work faster.
Chapter 2 ----------------- CONFIGURATION FILE ----------------------- Page 6
(Continued)
THE THIRD SECTION -- @BBS TRANSLATION LIST
The @ bbs translation list a list of calls to be translated by the
bbs whenever a message is entered. This will happen if a user is
entering a message or you are being forwarded a message by another
bbs.
K3RLI ---> K3RLI is changed to spaces.
PAWEST NEPBBS ---> PAWEST is changed to NEPBBS.
RT2N NEPBBS ---> RT2N is changed to NEPBBS.
ALLPA NEPBBS ---> ALLPA is changed to NEPBBS.
K3AAA AG3F ---> K3AAA is changed to AG3F.
98* AG3F ---> Zip 98xxx is changed to AG3F.
*** EOF
You can make the list as long as you want, and include wild card
matching. What happens is that the @BBS field is changed from
whatever is in the first field to whatever is in the second field.
This can be helpful in redirecting certain bulletins to a
distribution list. In the example above, PAWEST, RT2N, and ALLPA
are all changed to NEPBBS when the message is received, and if
NEPBBS was a distribution list, then ALL PAWEST, RT2N, and ALLPA
would follow that distribution.
By having your call changed to spaces will allow the bbs to strip
off your call in the @BBS field and then have the message
forwarded to the TO field if it is in your forward file.
THE FOURTH SECTION -- HOLD CALLS LIST
This section is a list of calls or just the word hold. Any
message entered on the bbs with one of these calls will be marked
with a status of 'H'. Sysop intervention is necessary to clear
this message with the edit message command to remove the 'H'
status.
Chapter 3 ------------------ FORWARD FILE ---------------------------- Page 1
Automatic forwarding of messages to other MailBox systems.
The file FWD.MB contains information that drives the automatic
forwarding of messages. If the file does not exist, no forwarding
is done.
The file contains several kinds of information:
1) Command scripts.
Command scripts are supported through C, S, and R items.
The command script precedes the F or G list that uses it.
A C item gives the connect string to send to the local TNC:
CC W6AMT
An S item is a line to send:
SC W6AMT-3
An R item is a match for a partial expected response:
RW6AMT} Connected to W6AMT-3 ---> It can be whole line or
RConn ---> a partial response.
In the case that ANY response is valid use:
R!
There can only be one C item in a script, but may be as many R and
S items as are required. As an example, the script for W0RLI in
Santa Cruz using NET/ROM to connect with KA6IQA in San Diego is:
CC W6AMT (This connects me to the local PAD)
SC W6AMT-3 (Connects to the PAD closest to KA6IQA)
RConn (Expected partial PAD response)
SC W6AMT-4 (Connects to next PAD)
RConn (Expected partial PAD response)
SC KA6IQA (This connects me to KA6IQA)
RConn (Expected partial PAD response)
GF0023C KA6IQA (Forward mail to KA6IQA from 00 to 23)
KA6IQA (The usual forwarding list)
K6AMT
W6ICU
*** EOF (End of list marker, MUST be all CAPS)
2) Routing lists.
E, F, G, and H lists are lists of stations for whom you should
forward mail. They are grouped by the call of the MailBox to
which the messages will be forwarded. Each list has a header
line, any number of callsigns or sublists, and the list terminator
("*** EOF").
A "G" list is used to do conventional forwarding. All BBS systems
will respond correctly if you use a "G" list. An "F" list is used
when the system you will connect to supports reverse forwarding.
If you do not wish to use reverse forwarding simply always use "G"
An "H" list acts the same as an "F" list. except that the connect
and probe for reverse forwarding will occur even if you do not
have any messages to forward. A "E" list acts like a "G" list,
except the forwarding is not done, the list is only used when
someone requests reverse forwarding.
Chapter 3 ------------------ FORWARD FILE ---------------------------- Page 2
(Continued)
The header of each list looks like:
Columns Data
1 "E", "F", "G", or "H"
2 Port identifier. "A" = COM1, "B" = COM2, etc.
3-4 Hour to activate forwarding to this station.
5-6 Hour to de-activate forwading to this station.
7-end Callsign of the MailBox to forward to.
Forwarding will occur at the minute given for the port in
CONFIG.MB, on those hours given in FWD.MB.
3) TNC paramter changes.
"P" lists are commands to be sent to the TNC. The character after
the P is which port ("A" for COM1, etc.). The list is terminated
with "*** EOF". One of these lists might preceed each "G" list to
set the TNC parameters to be used for the forward attempt. There
should be a "P" list at the end of the FWD.MB file to reset TNC
parameters back to default. Example follows:
PA0004
retry 3
frack 7
*** EOF
PA0523
retry 5
frack 9
*** EOF
4) DOS commands.
A "!" list is a list of DOS commands. It acts very much like a
.BAT file. The second character of the list header must be a port
that exists or the commands are not executed. This is done so
that a single FWD.MB may be used by several copies of the MailBox
running under DESQview. The commands will only be executed by
the copy that owns the port. The time window is honored. All
files used by the MailBox are "cleaned" before the DOS commands
are executed. Be very careful what commands you use here;
anything that might CHANGE one of the files used by the MailBox
will cause TROUBLE! You must also run the MailBox in a partition
large enough to allow for COMMAND.COM (25k) plus whatever commands
you run. This feature is useful, for example, to backup the
MailBox files from RAM disk to hard disk or floppy once each hour.
EXAMPLE: !A0023 -----------------> Do dos shell command 00-23
COPY \MB\BBS\FWD.MB A: --> Dos Command Line
*** EOF -----------------> EOF line
Copies FWD.MB to the A drive every forward.
5) Bulletin distribution lists.
If a message has a destination MailBox specified, then that
designator may also be used as the name of a distribution list.
When the message is entered, the messages directory path (normally
\mb\msgs\) is checked for a file with the same name as the
designator and an extension of .DIS. If the file is found, then
the messge will be forwarded too ALL the destinations found in the
file. One destination per line. 16 destinations maximum.
As an example, for my local sub-net distribution I have a
designator NCNET (Northern California Net), and a file NCNET.DIS
containing:
Chapter 3 ------------------ FORWARD FILE ---------------------------- Page 3
NCNET.DIS (Continued)
KB6IRS
N6IYA
N6IIU
A message sent as: SB ALL @ NCNET
Will be forwarded to all three of the stations in the NCNET.DIS file.
The message is not forwarded in any special order, if a station is
busy then the MailBox will try again the next hour.
An "L ;" listing of a message with a distribution list shows the
status of forwarding to each station on a second "cc:" line. The
calls to which the message have been sent have an asterisk before
them.
6) Wildcards.
When the designator in FWD.MB is compared to the TO or @ BBS call,
the characters "?" and "*" appearing in the designator act as
wildcards. "?" will match any character. "*" causes the
remaining characters to match.
FOR EXAMPLE: Using ZIP code routing, to route all South Carolina
NTS traffic to wa4szk, you would put "NTS4*" or "4*". Any message
sent to a destination starting with "NTS4" or "4" would route to
wa4szk. wa4szk could then continue the routing breakdown by
forwarding "NTS41*" or "41*" to one station, "NTS42*" or "42*" to
another, etc.
7) Sublists.
At any place in the FWD.MB file you can refer to another file. In
effect what happens is that the contents of the sublist are
treated exactly as if they were in the FWD.MB file. This feature
is very useful when you have several alternate paths to a given
location. FWD.MB need only contain the connect information for
the different paths. You can refer to a single file that contains
the list of calls for forward. A sublist is given by a line
starting with "@". The rest of the line is the device, path, and
file name of the sublist.
Example:
GC0023C N4CHV
N4CHV
N7FSP
@C:\MB\BBS\HF111.FWD
@C:\MB\BBS\SILICON.FWD
*** EOF
GD0023C W6AMT
@C:\MB\BBS\SILICON.FWD
*** EOF
Sublists can now use a time window just like a routing list.
EXAMPLE: @ 0221C:\MB\BBS\SPECIAL.FWD
The space after the '@' specifys that this is a timed sublist.
The 0221 is the start and end of the time window. So SPECIAL.FWD
( in this example ) will only be checked from 02 to 21 for any
calls. At any other time this file will be bypassed.
Chapter 3 ------------------ FORWARD FILE ---------------------------- Page 4
FWD.MB (Continued)
The following is an example of a few lines of the FORWARD file:
(Forward to K1BC every hour)
GA0023C K1BC VIA KD2S-1 <Function, port ID, Time, MailBox, path>
W1XR <Call of station whose mail should be forwarded>
N1AWX
K1BC
*** EOF <Marks the end of list>
PB1023 <Set TNC params for next connection>
FRACK 6
MAXFRAME 2
*** EOF
(Forward to K7PYK only from 1200 to 0259 GMT)
GB1202C K7PYK <The next MailBox to forward to>
K7PYK
W7KB
*** EOF
PB1023 <Set TNC params back to normal>
FRACK 4
MAXFRAME 4
*** EOF
There is no limit to the number of lists or the number of calls in
each list. Your MailBox will do the connect and send the messge
onward. It will either delete it or mark it with 'F' status
depending on the setting of the YES/NO (Kill on forward) flags in
CONFIG.MB. Auto forwarding is attempted each hour at the minute
specified in CONFIG.MB, or when you use the "X" menu item.
The special call "*" (a single *) can be used to force the
forwarding of all mail not addressed to the system owner. This
could be used by someone who would like to run this software, but
would not like to maintain an active MailBox. They would get all
their own mail locally, but any mail deposited onto their system
would be automatically forwarded.
The forwarding of messages counts on the remote MailBox behaving
correctly. It must have a menu with '>' at the end of the last
line. The command for sending messages must have the form "Sx
call". It must prompt for message title, and then prompt for
message text. Message text is terminated by ^Z.
*** TRANSPARENT MODE ***
You can now use transparent mode for all connects and for reverse
forwarding. This will do two things.First it will stop the inbedded
*** CONNECT REQUESTS from appearing in messages on your bbs. Second
you will now be able to setup your tnc parameters so that users can
get information off the bbs faster. Like setting MAXFRAME = 4, and
PACLEN = 128, will allow the tnc to send out 512 bytes at a time
when a user is using the bbs.
Regular forwarding will still take place in converse mode. If you
want to block forward, then you can setup 'P' type commands in the
forward file.
Chapter 3 ------------------- FORWARD FILE -------------------------- Page 5
Transparent mode (Continued)
Set things up at the beginning of the forward file.
PA0024 Out to the A tnc.
MAX 2 Maxframe of 2.
FRAC 6 Frack of 6.
CP ON { }
CR OFF { block forward }
SE $10 { }
Then restore things back to normal at the end of the forward file.
PA0024 Out the A tnc.
MAX 4 Maxframe back to 4
FRAC 4 Frack back to 4
CP OFF
CR ON
SE $0D
It is important that you use the BRBIOS with transparent mode. It
incorporates the send break command for the tnc. Also important is
that you have the DCD line (pin 8 ) connected between the tnc and
the comm port. The TNC must change this line when it gets connected.
Otherwise, you will lock up the bbs. Note: TNC1's must be modified
for the DCD line. MBBIOS should also work.
*** FORWARD FILE ***
If using multiple windows, you can use different Forward files with
each window, or you can use one master forward file. If you are
using different forward files for each window, you must name them
differently in each config. (Example - FWD.A, FWD.B, ect) Otherwise
FWD.MB can be used for all windows and all config's.
The forward minute should also be different between windows for
best operation. A one or two minute difference between ports in
different windows works out nicely, and allows the display to run
smoothly.
Chapter 3 ----------------- FORWARD FILE ---------------------------- Page 6
HIERARCHICAL FOWARDING
Version 6.0 of the code now supports hierarchical fowarding.
Hierarchical fowarding was introduced to the packet bbs networks
in the RLI code and in the recently distributed 4RE program. The
method used by the CBBS should be compatable with these programs.
Hierarchical fowarding is a method by which the @ bbs field of the
message address may contain information beyond the 6 character
call sign or route designation that is now commonly used. The @
bbs field may be expanded to 64 characters containing numerous
fields separated by periods. A typical field might be
AG3F.PA.USA.NA indicating station AG3F is located in state PA,
country USA and continent NA (North America). The only
limitations to this is that the 64 character total cannot be
exceeded and the section of the field prior to the first period
must not exceed 6 characters in order to be compatable with
existing bbs's.
The actual convention for naming the sub fields (hierarchies) in
the @ bbs field has not been firmly established but N6VV has
proposed a system of hierarchies which has been adopted as a
pseudo standard by many stations. This we attach for information.
In the method chosen to implement hierarchical fowarding, the CBBS
is able to receive extended @ bbs fields from a local user or a
fowarding bbs by the addition of the extra information to the
S(end) line. A typical line could be SP AG3F @ AG3F.PA.USA.NA <
K3RLI $1234_BID which will be recognized as "standard" in all
respects except for the field following the @. It should be noted
that the normal @ field is still acceptable since it is a subset
of the larger field.
During the fowarding process the 6.0 bbs will transmit the full @
field only to stations that request it. This request must come in
the form of a sid that contains the letter H in the last field.
The CBBS requests this by transmitting [CBBS-6.0-H$]. The RLI and
4RE programs do similiar with their sid's. Stations that do not
have the H in their sid will receive the truncated form of the @
field containing only the normal 6 character call field.
The foward file still retains its original format but now can
contain entries that match the various sub fields in the routing
lists to fully utilize the hierarchical feature. In the example
above if we were to route that message normally, AG3F would have
to appear in a routing section. Now AG3F or PA or USA or NA can
be inserted in to the lists and the bbs will now match these to
those contained in the message and foward accordingly. This
permits rather long lists of calls to be replaced with a general
hierarchial designator in the foward file. Additionally, a user
can assist the bbs sysop by appending the state designator to the
bbs field. This would assure fowarding in particular in the case
of a new bbs not present in the user file. @ W6XYZ.CA will be
fowarded but @ W6XYZ may or may not depending upon if W6XYZ was in
the foward file. If multiple matches are possible in the foward
file, the first one found is used. This means generally that if
the call is found it is used followed by the state, country, etc.
Chapter 3 ----------------- FORWARD FILE ---------------------------- Page 7
(Hierarchical Forwarding)
An example of a routing list might be:
FA0023C K3RLI V K3RLI-2
K3RLI
WA3EBG
.
.
188*
187*
PA
MD
WV
NJ
CAN
SA
.
.
NTSNY
NTSVA
*** EOF
Note sections of the hierarchical list are inserted only, never
anything containing a period. PA.USA is not acceptable!
This fowarding method will only become a very valuable tool when
more stations employ the software that utilizes it and when the
system users, the originators of the messages, start to insert the
hierarchical information. Now, any bbs not utilizing this system
breaks the chain and the hierarchial data is lost. Hopefully all
of the software writers will incorporate this into their code in
the near furure. For now it can assist in the routing of locally
originated traffic.
Chapter 4 ------------------ COMMANDS -------------------------------- Page 1
*******************************
*** @ REMOTE SYSOP Password ***
*******************************
SYSOP only Command:
The last line of the config.mb must contain a line of 64
characters. This can be a sentence or just 64 ascii characters.
Upper or lower case can be used and is considered as different
characters.
EXAMPLE:
NowisthetimeFORallgoodpacketeerstocometotheaidoftheirparty.T
When a remote sysop sends a "@" to the bbs the bbs will prompt the
remote sysop with 4 numbers.. The four numbers will correspond to
the positions of the characters in the key. The remote sysop will
then reply with the 4 characters that correspond to the relative
positions in the key.
EXAMPLE:
BBS --- 4 16 23 64
Remote Sysop enters: iapT and hits <cr>.
He will then be allowed entry as a remote sysop..
*********************
*** ! DOS Command ***
*********************
SYSOP only Command:
This ! command allows the use of the dos shell. You can do almost
any dos command, as long as you don't disturb any of the mailbox
dat files.
SYNTAX - ! COPY A:TEXT.TXT C:\MB\PACKET
Copies the file text.txt from the A drive to the C drive in
the subdirectory packet.
This command can also be used in the FWD file to do Batch files
during a forward.
*****************
*** A Command ***
*****************
SYSOP only Command:
A - Does an autoforward on all windows.
AI - Does an autoforward on all windows ignoring the time.
*****************
*** B Command ***
*****************
B <cr> - Logs off the mailbox.
For a user, disconnecting does the same thing.
Chapter 4 ------------------ COMMANDS -------------------------------- Page 2
*****************
*** C Command ***
*****************
C CALL - Connects to user from path and port in the user file.
Cp CALL - Connects to call using port p. Digipeater routing may
also be given.
EXAMPLES: CA K3QFW V AK3P-5
C AG3F
SYSOP only Commands:
CM CALL #### [@ BBS] [< CALL] - Copies message #### and makes
new message addressed to CALL.
C YYMMDD HHMM - Sets the clock.
*****************
*** D Command ***
*****************
USER only Command:
Dd Filename - Download a file from the mailbox.
'd' is the directory identifier.
SYSOP only Commands:
D C:\path\Filename - Downloads filename in drive C, with
path to the console with pageing.
DA C:\path\Filename - Downloads filename out the A port to
the tnc. Continues till eof of file.
DU - Lists all users.
DM - Lists all users marked as bbs's.
DS - Lists all sysops.
DL - Lists all local users.
DX - Lists all excluded users.
For the above commands if a filename is added as an
argument the list will be put into a ascii text file.
DW Command - creates a WP message if any new users use the bbs.
Used by sysop when the bbs does not make up a message.
For this command to work, you must have a WP server
call in your config.
SYNTAX - DW
DW A - creats a WP message with all users.
*** White Pages ***
As users check into your bbs, they will be automatically asked for
their name and home bbs. When the user file was updated to the
latest version on first starting the bbs, A new field was created
to note when a user puts in his name and home bbs. It is this
field that will create a white paper message to whatever bbs is
keeping track of calls and homebbs's. Here is how it works.
First in the config.mb there is a line for the WHITE PAGES SERVER
CALL. If you leave this line blank, no white paper message will
be generated. This line is located under your QTH in the
config.mb.
Chapter 4 ------------------- COMMANDS ------------------------------- Page 3
(White Pages Continued)
If you put a bbs on this line, he will receive a message every so
often addressed to WP, from your bbs, @ WP Server Call, TITLE: "WP
Update". In the message text will be a list of the latest users
using the bbs for the first time, or updateing their name and
homebbs. So a central bbs or user can now keep track of all the
users with their home bbs's for a given area. Sort of like
keeping a white pages telephone book with calls of packeteers and
their home bbs. Zip codes are now added.
*****************
*** E Command ***
*****************
SYNTAX - ET <message number> - USED by ALL
The ET command allows users to edit Traffic messages on the bbs.
A Traffic message is defined as having a TYPE of "T" or the
letters "NTSxxx" in the TO field of a message. Any user can use
the ET command. Probably it would be a good idea to let your NTS
users know of this feature, so that they could track your NTS type
messages.
EXAMPLE: Message 8873 is a Traffic message.
ET 8873 <- Entered by user or sysop.
BBS response:New TO or (cr) to retain:
User responds with a new call or <cr>
BBS response:New @ BBS or (cr) to retain:
User responds with a new @ BBS or <cr>
BBS response:New TITLE or (cr) to retain:
User responds with new title or <cr>
BBS response:New TYPE or (cr) to retain:
User responds with new type or (cr) to retain
BBS will now respond with the edited message header.
If you enter a message number that wasn't a traffic message the
bbs will respond with a message: *** Sorry, this is not an NTS
traffic message. If you change the type of message from a "T" to
something else, The message header will be changed, and since it
will not fit the qualifiers of an NTS message, you won't be able
to change it back!
SYSOP only Commands:
E #### - Edit message ####. This command looks for the message, and then
displays the header from that message. Next comes the input
prompt: t(Y)pe, (S)tatus, (T)o, (F)rom, (B)bs, t(I)tle, bi(D)
To change: The TYPE field ---- Y <type> <cr>
The STATUS field -- S <status> <cr>
The TO field ------ T <new to call> <cr>
The FROM field ---- F <new from call> <cr>
The @BBS field ---- B <new bbs call> <cr>
The TITLE field --- I <new title> <cr>
The BID field ----- D <new bid> <cr>
To exit edit message, just hit a <cr> from the prompt.
EP p - Edit port parameters. <p> is the port to edit.
ES - Edit system parameters.
EU - Sweep thru all users asking for Delete or Quit,
Chapter 4 ------------------- COMMANDS ------------------------------- Page 4
E COMMAND (Continued)
EU CALL - Edit a user's record or create a new user record. This command
will find a user's record or create a null user's record, and
then display a prompt line:
PRIVILEGE: (D)elete, (E)xpert, (B)bbs, (S)ysop, e(X)clude
DATA: (C)all, s(I)d, (N)ame, por(T), (H)ome, (Z)ip
To delete a user: Type D <cr>
To change: Is an EXPERT ---- Type E <cr>
Is a BBS? ------- Tyoe B <cr>
Can be SYSOP ---- Type S <cr>
To EXCLUDE ------ Type X <cr>
New CALL -------- Type C <new call> <cr>
New SSID -------- Type I <new ssid> <cr>
New NAME -------- Type N <new name> <cr>
New PORT -------- Type T <new port> <cr>
New HOME BBS ---- Type H <home bbs> <cr>
New ZIP --------- Type Z <new zip> <cr>
To exit edit user, just hit a <cr> from the prompt.
*****************
*** F Command ***
*****************
SYSOP only Command:
Fd ##### Filename [AN] - Make a file from a message. The 'd' determines
what subdirectory Filename go to. The A at the
end will append this message to the file. The
N at the end will NOT put the message header
into the file.
EXAMPLES: F 12340 A:text.txt - Makes file TEXT.TXT on the A drive
from message 12340; Includes header.
FD 1200 amsat.010 - Makes file AMSAT.010 in subdirectory
D from message 1200.
FD 1300 amsat.010 A - Appends message 1300 to file
AMSAT.010 in subdirectory D.
F 12300 c:Save.txt N - Makes file SAVE.TXT on C drive
with no header.
*****************
*** G Command ***
*****************
SYSOP only Commands: Will LOCK up other windows using DESQview.
If other windows are busy, will not allow
any operation.
GM - Untangles the mail file.
GR <number> - Untangles the mail file and renumbers
starting at number.
GU - Untangles the user file, deleteing marked users.
Chapter 4 ------------------- COMMANDS ------------------------------- Page 5
********************
*** HELP Command ***
********************
H - Gives a summary of the help subsystem.
H x - Gives a detailed explanation of command x.
H ? - Gives a detailed explanation of all commands.
? - Gaves a list of mailbox commands
? x - Gives a summary of command x.
? ? - Gives a summary of all mailbox commands.
********************
*** INFO Command ***
********************
I - Reads out the INFO.MB file.
*****************
*** J Command ***
*****************
Jp - Gives a list of stations heard on port 'p'.
The special port 'L' shows calls of stations
recently connected to the mailbox.
*****************
*** K Command ***
*****************
K ##### - Kill message number #####.
KM - Kill messages addressed to you that have been read.
KT #### - Kill traffic message and generate a service message.
SYSOP only Commands:
KF ------ Kill all forwarded messages.
KO ------ Kill all stale messages.
KY ------ Kills all messages that have been read.
KF CALL - Kills all forwarded messages addressed to CALL.
KY CALL - Kills all messages addressed to CALL that have
been read.
********************
*** LIST COMMAND ***
********************
L ------- List all new messages since your last login.
L #### -- List messages back to ####.
LE ## -- List last ## mail headers in MAIL file.
LL ## -- List last ## messages.
L> CALL - List all mail TO Call.
L< CALL - List all mail FROM Call.
L@ CALL - List all mail @BBS Call.
LA ------ List all type 'A' messages.
LE ------ List all mail headers since your last login.
LF ------ List all forwarded messages.
LH ------ List all messages that are marked HOLD.
LK ------ List all KILLED messages.
LM ------ List all messages TO or FROM you.
LO ------ List all stale messages.
LU ------ List all unforwarded messages.
LY ------ List all messages that have been read.
Chapter 4 ------------------- COMMANDS ------------------------------- Page 6
L COMMAND (Continued)
If you add a ';' after your normal list command, you will be able
to see any cc: line or Hierarchical list and any bid line attached
to a header. This will work with any command. Example follows:
LL 4 Will list the last 4 line.
9989 PN 1247 KA3DWA WA3DQI 0109/1212 ARC NETWORK
9986 AN 978 ALL W1AW PAWEST 0109/1034 ARRL 54: News
9985 BN 2367 ALL KC3BQ 0109/0956 Hamfest news
9984 PN 1545 K3RLI AG3F N2EZG 0109/0945 TNC WORKS
LL 4 ; List last 4 lines and cc:, ef:, and bid: lines
9989 PN 1247 KA3DWA WA3DQI 0109/1212 ARC NETWORK
9986 AN 978 ALL W1AW PAWEST 0109/1034 ARRL 54: News
cc: *WA3DQI AG3F HOLD
BID: ARLP010
9985 BN 2367 ALL KC3BQ 0109/0956 Hamfest news
BID: KC3BQ_7789
9984 PN 1545 K3RLI AG3F N2EZG 0109/0945 TNC WORKS
EF: N2EZG.NY.USA.NA
This will work for all list commands. Like LL 10 ; or L ; or LM ;
or LA ; . This command is only available for sysops and allows
you to see the messages without the clutter of extra lines.
*****************
*** M Command ***
*****************
Mp - Monitor the packets on port 'p'. You must have the
gateway enabled for the port.
SYSOP only Command:
MM <listfile> <textfile>
The MM command does the same thing as the SM command but it uses a
text file for the message content.
EXAMPLE: MM LIST1 \mb\oscar\amsatnws.140
BBS response: Enter Title for Message:
Sysop enters TITLE
The bbs will now make messages for each call in the list, but
the message content will be from the file AMSATNWS.140. Since the
mail file in now in files and not in a database, you could also
use a message file instead of a text file for the message content.
If your messages are stored in \mb\msgs\, you could enter
\mb\msgs\10491 to use message number 10491 for your textfile.
This would take message number 10491 and use it's contents for all
four message texts. ( See also Chapter 6 - List file )
Chapter 4 ------------------- COMMANDS ------------------------------- Page 7
*****************
*** N Command ***
*****************
USER only Commands:
N NAME -- Enter your name into the user file.
NE ------ Makes you an expert user.
NH CALL - Enter home bbs into user file.
NZ ZIP -- Enter zip code into the user file.
SYSOP only Commands:
N C:\path\FILENAME.OLD FILENAME.NEW
Renames filename from old to new. Drive type need not be used
unless using other than current drive. Path information is
only necessary when going outside current directory.
*****************
*** P Command ***
*****************
P Call - Lists information about user. Port connected,
name, path, last message number, home bbs.
********************
*** QUIT Command ***
********************
Q - Quits the mailbox. Asks "Are you sure (Y/N)?
For local sysop only.
*****************
*** R Command ***
*****************
R #### - Read message number ####.
RH ### - Read message number ###, showing routing headers.
RM ----- Read all unread messages addressed to you.
*****************
*** S Command ***
*****************
Sx CALL @ BBS - Send type 'x' to call @ bbscall.
The mailbox will prompt you for title
and to enter subject. End message text
entry with a <ctrl z>, /ex, or /EX.
If type 'x' is not entered, and the TO field is to a valid
callsign, the type will become private.
If type 'x' is 'A', 'B', 'F' and the TO field is not a valid
callsign, (ALL, ect) a BID will be created for the message.
SB ALL @ BBS $ARLB010 - Creats a bulletin message to all at
bbscall with BID of ARLB010.
Chapter 4 ------------------- COMMANDS ------------------------------- Page 8
SM <listfile> - Used by SYSOP
For Example lets say that all these stations shared the same
interests. a message could be made to send to all of them.
SM LIST1 <- Entered by sysop
BBS response: Enter Title for Message:
Sysop enters TITLE
BBS response: Enter message, ect...
Sysop enters message, ending with a control Z...
The bbs now will make the headers for each call in the list. In
this Example you would end up with many message headers. Each as
defined in the LIST1 file. So many duplicate messages would now
be on the bbs. Each will forward out as if they were put on the
bbs individually. ( See Chapter 6 - List file )
*****************
*** T Command ***
*****************
USER only Commands:
T - Chat to the sysop. Any command or return before the
request times out will return you to the mailbox.
SYSOP only Commands:
Tp ---------- Go to terminal mode on port 'p'.
Tp Filename - Go to terminal mode on port 'p', and open
filename save file.
*****************
*** U Command ***
*****************
USER only Commands:
Ud Filename - Upload filename to subdirectory 'd'.
EXAMPLE: UA AMSAT.011 You will be prompted to enter the file
<ctrl z> to end.
*****************
*** V Command ***
*****************
V - Used by ALL
Using the "V" command will cause the bbs to print out the
current version of the mailbox code.
SYSOP only Command:
V A:text.txt C:\AMSAT\TEXT.TXT - Copies text.txt from drive
A to subdirectory AMSAT on drive C. You can rename
***************** file on copy.
*** W Command ***
*****************
W -------- Gives a list of subdirectory area's available
Wd ------- Gives a list of the files in subdirectory 'd'.
Wd *.DOC - Gives a list of *.DOC files in subdirectory 'd'.
(For sysop use, drive, path, and filespec can be used.)
Chapter 4 ------------------- COMMANDS ------------------------------- Page 9
*****************
*** X Command ***
*****************
SYSOP only Commands:
X ------- Trigger an auto-forward.
XI ------ Auto-forward, ignore time window.
X CALL -- Forward only for call.
XI CALL - Forward only for call, ignore time window.
*****************
*** Y Command ***
*****************
SYSOP only Command:
YF - Displays present forward file name.
YF Filename - Change name of forward file to use.
*****************
*** Z Command ***
*****************
SYSOP only Commands:
Z Filename - Delete the file.
Zd Filename - Delete filename in subdirectory 'd'.
Z \mb\bbs\FORWARD.MB - Deletes FORWARD.MB with path \mb\bbs.
Chapter 5 ------------------ PRTLOG ---------------------------------- Page 1
************************
*** PRINTER FUNCTION ***
************************
A print function is now in the software. All you have to do is
Hit control P from the bbs menu and everything listed and read
will be printed out the parallel port. Use control P to shut the
print off when done. Putting the bbs back on-line will also shut
the print off.
******************
***** PRTLOG *****
******************
PRTLOG -L LOG.MB Will display LOG.MB at the console.
PRTLOG -L LOG.MB > LST: Will put it on the printer.
PRTLOG -L LOG.MB > LOG.PRT Will output to file LOG.PRT.
If you leave out the -L field, only the summary is printed.
Note that the BBS will now create a file to hold the BIDs. Each
line includes the date that your system received the message with
that BID.
The proper setup parameters for the tnc are in .SET files,
TNC1.SET is for tnc1 or clones - converse mode only,
TNC2.SET is for tnc2 or clones,
PK232.SET is for the PK-232 and PK-87.
The file CONFIG.MB is a text file that contains all site-specific
parameters. Edit it to have the proper parameters for your site.
The default directory must contain MB.EXE and CONFIG.MB
The file CONFIG.MB has sections that specify what ports to use,
and where to find various files. Ports are identified by the
first letter of the first line of the port information. "A" means
COM1, "B" means COM2 etc. "L" means the system console (keyboard
and display).
Files used by the MailBox. - The Mailbox and Gateway
MB.EXE - The program.
HELP.MB - The help file. Documents all commands.
MBRESTM.EXE - Used to restore the MAIL.DAT file.
CONFIG.MB - Configuration data, log-on, error text, ect.
INFO.MB - The info file about your system setup.
FWD.MB - The routing tables for forwarding messages.
The following files are created and used by the MailBox:
MAIL.DAT - The message database.
USER.DAT - The user database.
MON.MB - The saved "J" lists.
LOG.MB - The log file. A text file that contains the user log.
Which events are to be logged is specified in CONFIG.MB.
CALLS.MB - All calls heard by the MailBox.
BID.MB - The file to store the received BIDs in.
Chapter 6 -------------- Log, List, & Dis Files ---------------------- Page 1
*** LOG FILE CONTENTS ***
Each line in the log file contains an event code, the date and time,
followed by further information about the event.
'C' - User connected to system.
'A' -> 'H' - A user connected on that port.
'I' - Program startup.
'L' - User was linked via the station that just connected.
'S' - "connect" from local console (sysop).
'G' - GateWay event.
'A' - Connection attempted and failed. Path shown.
'C' - Connection attempted and obtained. Path shown.
'E' - End of GateWay event, or use.
'M' - Start of monitoring.
'S' - Start of GateWay use.
'U' - Entry to unprotocol mode.
'X' - Exit.
'A' - Owner put MailBox on line.
'B' - User said good bye.
'D' - User disconnected.
'E' - Excluded user attempted connect.
'F' - User forced off by system owner.
'Q' - Owner exited from program.
'T' - Timeout, forced disconnect.
'F' - File event. Command line shown as user entered it.
'M' - Message event. Message number always shown.
'C' - Message copied.
'E' - Message header edited.
'F' - Message forwarded. Connect path shown.
'FE' - End of forwarding session.
'FR' - Start of reverse forwarding within forwarding session.
'FS' - Start of forwarding session.
'K' - Message killed.
'L' - Message headers listed.
'M' - Message created from file.
'R' - Message read.
'S' - Message sent, includes TO, BBS and BID fields
*** Distribution File ***
The distribution file is a regular ascii file created with a simple
editor. It consists of a list of calls, one per line. These calls are
the broadcast list of what bbs's you want to get specific messages
to. These messages will key the distribution file based on the @ BBB
in the message.
The name of the distribution file is the same as the @ BBS field used
for distribution. All distribution files must end in .DIS and be in
the message file directory. EXAMPLE - \mb\msgs\pawest.dis
EXAMPLE of a .DIS file: PAWEST.DIS <- Name of file
KB3UD
W3AVK
WA3DQI
AG3F
Chapter 6 -------------- Log, List, & Dis Files ---------------------- Page 2
Dis File (Continued)
When a message is created with a @ BBS of PAWEST, the bbs will create
a special second header line. EXAMPLE:
Msg# TR Size To From @ BBS Date Title
10651 PN 1949 SYSOP W1AW PAWEST 870511 New News on BBS's
cc: KB3UD W3AVK *WA3DQI AG3F
Notice that WA3DQI has a "*" before his call. This means that
this message has already been forwarded to WA3DQI. As the bbs
forwards to the other stations a "*" will appear before each call
as the message is forwarded to them. When all the calls have a
"*" before them, the message will be killed. All stations in the
list will have received the message. If you want to stop the
message from being killed on your bbs, you can include a phoney
call in the list; Like the word HOLD. Now the list contains
something like this:
KB3UD
W3AVK
WA3DQI
AG3F
HOLD
Since HOLD would not be in your forwarding file, the message would
hold on your bbs, until you killed it manually.
*** List file ***
A list file is a regular ascii file created with a simple editor. It
is used with the MM - Make Multiple Messages from a File, and the SM
- Send a message to a distribution list. There are no requirements
for the names of these files. They must be in the directory that the
mail bbs runs in. EXAMPLE - \mb\list1.
EXAMPLE of a list file: LIST1 <- Name of file
SP KB3UD @ KB3UD
SP AG3F
SP AK3P @ AK3P
SP N3DQC @ W3AVK
Chapter 7 ------------------- PROTOCOLS ------------------------------ Page 1
"BBS" FORWARDING PROTOCOL NOTES
The following is an attempt to put down in detail what the "CBBS"
MailBox expects as user input, and the variations that will be
accepted by the MailBox code.
Forwarding works by the simple means of the forwarding MailBox
acting as if it were a user of the target MailBox.
Thus, it will use the "S" command to enter the message, in exactly
the same way that a user does.
The "S" command takes the form:
"S"["x"] TO ["@" BBS] ["<" FROM] [$#####_K3KKK]
["@" BBS.ST.USA.NA]
The "x" is an optional message type character. The fields are
delimited by any number of spaces or tabs. Upper case or lower
case may be used. TO, BBS, and FROM may be up to six characters.
If a trailing "-" and ssid are given, it is thrown away. The "@
BBS" and "< FROM" fields are optional, and may occur in any of the
4 possible combinations. The '$' is not part of the BID, but
identifies the field. There is no space between the $ and the BID.
After receiving the "S" command, the MailBox prompts for message
title. The prompt is on one line, ending with CR. The message
title is one line, ending with CR. The title is truncated to 80
characters by the MailBox. After receiving the message title, the
MailBox prompts for the message text. The prompt is on one line,
ending with CR. Message text is a string of ASCII characters,
ending in control-z. The station doing the forwarding simply
disconnects once it has passed all of its messages.
Note that the MailBox prompt is identified by it's terminating ">".
Starting with Version 4.4, the C BBS also supports the use of BIDs
(Bulletin Identifiers) and to use them, it will, when it
recognizes a similarly programmed BBS, enter into an exchange with
said BBS. This is according to the protocol developed by WA7MBL.
A BID capable BBS is recognized by its sending a field beginning
with a '[' and ending with a ']'. In addition, in the field is at
least one '-'. Anything following the LAST '-' is taken to
identify features available on that BBS. The exchange from this
BBS is:
[CBBS-6.0-H$]
When the BBS is connected to, it sends [CBBS-$],and if it receives
[anything-$], it goes into its MBL-like mode. It then gives you a
prompt and waits for your next Send command. If you receive
something like S ALL $BID001, it checks to see whether it has
received this BID before. If not, it sends
OK - 1234: (will be message #1234)
To which the sender then sends the title followed immediately by
the message text. If it has that BID, it will send:
NO- Already have it: And then give a new '>'
And the distant BBS will then proceed to the next message.
Chapter 7 ------------------- PROTOCOLS ------------------------------ Page 2
BID Protocol (Continued)
Whether the connecting station is a BBS or not, if a message comes
in addressed to something other than a real callsign, and is of
TYPE B it is assigned a BID by a parsing routine. It
finds the BBS of origin, and the message number on that BBS, and
gives it a BID based on MSG#_BBSCALL ... It will then check the
BID file and if the message is present, it will mark it hold
pending operator intervention (presumably you already forwarded
the message. This works with any system that has the terminal -$
in its [-$] field.
The BID.MB file is an ascii text file, with one BID per line. It
can be edited to add or delete BID's as the sysop sees fit. It is
this BID that determine if a message with a bid is accepted or
not.
System IDentifiers (SIDs) - W0RLI
The initial exchange between "smart" BBS systems uses what is
called an "SID", short for System IDentifier. All future work on
BBS systems should adopt this standard. It will help to remove a
GREAT deal of confusion as to which systems have what features,
and how one should interface to them. In the longer future,
perhaps all this junk can be done away with, and the computers can
talk to each other in a more natural way.
The system identifier is structured:
"[f1-f2-f3]"
The dashes delimit the end of the first field and the start of the
last. There might be only one dash, if f2 is void. f2 may
contain dashes.
f1, f2, and f3 may not contain "[" or "]".
f1 is the author identification. It may not contain a dash.
Normally it will contain a few characters from the authors
callsign.
f2 is author specific data.
It may contain anything the author wishes, for example software
version. It may contain dashes.
f3 is the supported feature set. It may not contain a dash. It
contains a string of non-numeric characters, one for each
negotiable feature supported. Each character may also have
trailing digits, giving the revision of that feature. If there is
no trailing digit, the feature revision is revision zero.
Coding hint: if the first line seen at connect to the bbs starts
with [ and ends with ], then it probably is an SID. For example:
f1_start = fld + 1;
f1_end = strchr(fld, '-') - 1;
f2_start = f1end + 2;
f2_end = strrchr(fld, '-') + 1;
f3_start = f2_end + 2;
f3_end = strrchr(fld, ']') - 1;
Chapter 7 ------------------- PROTOCOLS ----------------------------- Page 3
Sid's (Continued)
Defined features are:
C - Supports "forwarding" of date and time.
H - Supports Hierarchical forwarding.
M - Supports Message Identifiers.
W - Is a white pages server. (We were thinking about you, Eric!)
Y - Supports YAPP binary protocol.
$ - Supports BID. MUST BE LAST CHARACTER IN f3 (downward compatibility).
The existance of the system ID also implies that the system
supports reverse forwarding and OK/NO message rejection.
Some examples of existing standard system identifiers:
[RLI-5.12-$] - w0rli version 5.12, supports BID
[RLI-6.08-CM$] - w0rli version 6.08, supports Clock, MID, BID
[CBBS-$] - CBBS flavor, supports BID.
[CBBS-6.0-H$] - CBBS source versions, supports BID, Hierarchical.
[CBBS-4.5-$] - ve3gyq release of the rli/gyq cbbs.
[MBL-$] - wa7mbl version unknown, supports BID
[PRMBS-.98X-345-$] - ka2bqe rip-off of w0rli cbbs V0.4
[CMU-1-W] - wd6cmu BBS
[4RE-01-M$] - aa4re V1, supports MID and BID.
There is some older code still running that requires special case
handling. In these cases there is no f3 or feature letters.
Rule: OK/NO message rejection is required, and BID is supported.
[MBL320] - "old" wa7mbl systems.
[MBL=RLI] - ja0isk port of rli/gyq cbbs for NEC 9800
The connect rules:
Send the SID as first line at connect.
Answer the SID (when seen as a command) with a short command prompt.
The fowarding rules:
If you do not see an SID at connect, use the old style fowarding.
This handles the case of Xerox 820 systems, for example.
If you do see an SID at connect, answer with your SID.
Use whatever features are appropriate.
Special case: MBL3 or MBL= seen at connect.
Reply with [MBL-xxx], where xxx is anything you like.
Continue with reverse forwarding and OK/NO message rejection.
Zip Code Routing Note 1 - W0RLI - 7 Sept 87
Several people have suggested using zip codes for routing
identifiers. There are many possible ways to do this. In this
note I outline two suggestions. These two routing schemes are
compatible, and can co-exist on the network at the same time. Two
features are required in the BBS code to support these routing
schemes properly: wildcard capability in the route table
destinations and "@ BBS" replacement. Either of these schemes
will help users: they no longer need to know the callsigns of all
the BBS in the world. Users need only know the state, province,
region, or zip code of the message destination.
Chapter 7 ------------------- PROTOCOLS ----------------------------- Page 4
Zip Routing (Continued)
1) Zip code routing for NTS traffic.
Use the form "ST nnnnn @ NTSxx" where nnnnn is the destination zip
code and xx is the state, province, or region identifier. In
route tables far from "xx" only the path toward "xx" need be
known. Once the message reaches "xx" the receiving BBS should
remove the "@ BBS" designator. Routing will then continue using
the zip code.
2) Zip code routing to humans.
Use the form "SP call @ zip" or "SP call @ xx". These forms are
not ideal. What should be used is a form with 3 address fields.
None of the BBS codes support this yet. The ideal form for
routing of personal messages is "SP call @ zip @ xx". This
routing scheme then would follow the NTS routing scheme in 1).
Since we do not have a three adress scheme, the first and second
forms in 2) would be the best available.
Some examples of routings that could work now:
ST 95060 @ NTSCA
This message would end up at kb6irs or n6iya for delivery by NTS.
SP W0RLI @ NTSCA
This message would go to any of the eight California HF BBS. At
the California HF BBS the "@ NTSCA" would be removed and routing
would continue in the normal manner to W0RLI.
SP VE3FXB @ NTSON
The same idea as the previous message.
SP VK2AHX @ VK
Again, the same idea. Note that stations that do not have a path
to VK need only keep the single identifier "VK" in their route
tables.
SP W0RLI @ 95060
With schemes like this, and the use of wildcards in the route
tables and "@ BBS" replacement tables, only a very few identifiers
are required to cover the entire U.S. If this message had
originated, for example, in New England, the BBS in New England
need only have "9*" in it's route table. Once the message
reached, for example, KD6SQ, he would have to have several
identifiers. "95*" would send the message from So. Cal. to No.
Cal., where the "@ BBS" would be removed. It would then be
forwarded directly to W0RLI, since W0RLI is known to all BBS in
No. Cal.
*** MESSAGES ***
There are three types of messages:
1) Personal. If sent with SP, or with S and to a callsign.
2) NTS Traffic If sent with ST.
3) Bulletins If sent with SB, or with S and NOT to a callsign.
A BID is included with the message.
Chapter 7 ------------------- PROTOCOLS ----------------------------- Page 5
Each type of message gets somewhat different handling:
For NTS traffic, the LT, KT, and ET commands are active.
For Bulletins, a BID is sent when forwarding to accepted bbs's.
For Personal, The message can only be read by the sender, addressee,
and sysop.
There are several "flags" associated with each message. These are
shown in the "message status" position in the "list message"
display. Note that each Flag has an associated "L" command and
some have associated "K" commands.
B - The "Busy" flag:
This indicates that a message is busy. Also indicates all
duplicate bids and disconnects before message is completed.
F - The "Forwarded" flag:
This indicates the message has been forwarded to it's
destinations, but has not been killed.
H - The "Hold" flag:
This indicates the message has been held. It will not
forward, and can be only killed by the sysop.
O - The "Stale" flag:
This indicates a message has been around for too long.
Time length is determined in the config.mb
Y - The "Read" flag:
This indicates that the message has been read by the addressee,
but has not yet been killed.
Message header formats in use at this time include:
R:date/timez @:call qth #:nnn O:call S:date/time Z:zzz
R:date/timez @:call qth #:nnn O:call S:date/time
R:date/timez @:call qth #:nnn O:call Z:zzz
R:date/timez @:call qth #:nnn Z:zzz
R:date/timez @:call qth #:nnn O:call
R:date/timez @:call qth #nnn O:call
R:date/timez nnn@call [qth] Z:zzz <--- Best one to use.
1) calls may have ssid
2) time may have timezone.
If so, may be single char or 3 char.
May be upper or lower case, or mixed.
3) qth may be enclosed in []
4) Space between @ call and qth may be missing
5) ":" between field ID and contents may be missing.
6) May be space between ":" and field contents.
There are many other forms seen. They may leave out required
information. They may have the required information in unexpected
format. There is little chance of parsing them all, and no reason
to do so.
Chapter 8 ------------------- DESQVIEW ------------------------------- Page 1
SETTING UP MULTIPLE BBS'S WITH DESQVIEW - AG3F
1. CONFIG.SYS
Create file config.sys in the root (\) directory with an editor.
As a minimum it it must contain the files and buffers statements.
Other possible additions are a ram disk and the driver for any
installed EEMS boards. DESQview will run with the normal 640K
system memory but you will be very limited as to the size and
number of programs you will be able to use in addition to the BBS
copies. The following is the config.sys in use at AG3F where an
AST SixPakPremium EEMS multifunction with 1 meg of memory is
installed in addition to 256k of motherboard memory.
files=30
buffers=20
device=remm.sys /x=A000-BFFF
device=fastdisk.sys /m=64 /dextm
2. INSTALLING DESQVIEW
Install DESQview V2.01 or later on the hard drive by using
Quarterdeck's instructions. In general this will involve placing
the distribution diskette in floppy drive "A" and typing install.
You will be prompted for the desired destination drive and for
your system configuration. This process will create a \DV
directory on the hard drive that will include all of the necessary
DESQviev files. Any commercial programs that are known to
DESQview and were residing on your hard drive will also be
installed for access from DESQview. At this point install any
other programs you desire by using the DESQview instructions. It
is suggested that you run these programs from DESQview and become
familiar with DESQview operation.
3. DESQVIEW PARAMETERS
From the > prompt in subdirectory DV type SETUP. This will bring
up the DESQview setup screen. Select the advanced setup and when
in that window select performance option. Change the number of
clock ticks to 7 for foreground and background programs.
Experimentation has shown for a 4mhz xt 7 is suitable. If you
utilize other clock speeds you may have to experiment to find the
best value but in any case both foreground and background
operations must be the same since running multiple copies of the
bbs really does not have a background program. The other
parameters available for modification were left at their default
values.
4. SUBDIRECTORIES
Setup the directory/subdirectory system for the mailboxes. The
config's must be different for each window used. The files LOG,
MON, and CALLS must be different for each window. It is easier to
just use the port letter as the .ext of each of these files. The
MAIL.DAT and USER.DAT are shared by all the windows. The FWD file
can be a common file or you can use different files for each port.
Chapter 8 ------------------- DESQVIEW ------------------------------- Page 2
Subdirectories Continued)
\mb
mb.exe
br3bios.com
mbmode.exe
hand.com
config.a ------ config.b ------ config.c
\mb\bbs
help.mb
info.mb
user.dat
user.bak
fwd.mb
mail.dat
mail.bak
mon.a --------- mon.b --------- mon.c
calls.a ------- calls.b ------- calls.c
log.a --------- log.b --------- log.c
\mb\msgs
6. ADDING THE BBS PROGRAM TO DESQVIEW
Add the bbs programs to DESQview by selecting add program from
second menu. Following the prompts add the following information:
program name bbs1 memory size 102
program mb or 150 if using dos commands
parameters
directory c:\mb
options:
writes to screen [n]
displays graphics [n]
can be swapped [n]
requires floppy [n]
TO SELECT ADVANCED OPTIONS HIT (F1)
close on exit [y] own colors [n]
close window cmb [y] only foregnd [n]
math coprocessor [n] kbd conflict [1]
All other parameters are as default.
Add the second and subsequent copies of the bbs as above using
the proper program names and directorys.
7. PORT INITIALIZATION
Construct a batch file to execute the necessary port initializations
as described previously. The one in use at AG3F resides in the root
directory of drive c: and is called startbbs.bat. It is as follows:
cd \mb
br3bios
mbmode com1:48,n,8,1
mbmode com2:48,n,8,1
mbmode com3:48,n,8,1
hand
cd \dv
copy \mb\bbs\fwd.mb d:
fastopen c:
dv
Notes: 3 ports are used, br3bios is configured for 3 com ports.
Hand is required to handshake between DESQview windows.
Copy line places the foward file in ram disk D: (not necessary)
Fastopen (Dos v3.3 only) permits quicker disk access.
Chapter 8 -------------------- DESQVIEW ------------------------------ Page 3
8. CONFIGURATIONS
Prepare a config.x for each copy of the bbs.
9. STARTING THE BBS MANUALLY
From the dos prompt type STARTBBS or what ever you called your
port initialization batch file. This will load the bios drivers,
run mode on all ports, load pipe, run any other special programs
and finally invoke DESQview. You will now be at the open window
menu of DESQview. Select open and then the first bbs program.
Program #1 will start and occupy the upper 1/2 of the screen. Do
the same with copy #2 which will be in the lower 1/2 of the
screen. Other copies can be loaded similiarly and will occupy
screen locations defined in the DV setup. Now all is running
simultaneously. You can switch, zoom, blank or select other
windows without interrupting the bbs activity.
10. AUTOMATIC STARTUP
If desired you may arrange the system to reboot and restart up the
bbs's if the computer is shut off or experiances a power outage.
This requires two steps.
a. Insert the name of your initialization batch file into your
autoexec.bat file.
b. Create a DESQview autostart macro. This is done by assigning a
series of key strokes to the ! key while in DESQview but
without any application program running. Follow the learn
instructions in your DESQview manual. The steps for a 2 bbs
seup typically would be:
Type DV to start DESQview
shift-alt (select start learn,indicate the ! key and pick name)
open window
open bbs#1
shift-alt (select time delay 30 )
open window
open bbs#2
shift-alt (select end learn)
quit DESQview and say yes to save scripts
The script file produced by the above is desqview.dvs and will
be found in the Dv directory. This file can be made man
readable by using the program convscr.com provided with DV. A
converted program would look like the following:
{Learn ! "boot boards"}
om1{Delay 30}{DESQ}om2
{Finish}
o means open
m1 is my 1st bbs program
m2 is my 2nd bbs program
Learn and Finish are the start and end of the learn commands.
You can if desired, create a text file like the above, and by
the use of convscr convert it to desqview.dvs and eliminate the
step by step procedure described above.
Chapter 8 ------------------- DESQVIEQ ------------------------------- Page 4
11. USING DESQVEIW WITH THE BBS
When you are not using the console for watching the bbs, you might
want to hide the windows before you shut it down. To do this you
just hit the 'ALT' key, then 'R' for rearrange, then 'H' for hide.
This will blank out the window. Doing this for all windows before
shutting off the console will speed DESQview up as no display is
taking place. To get things back after turning on the console,
just hit the 'ALT" key and then the number key for each window.
Chapter 9 -------------------- MODEM USAGE --------------------------- Page 1
*******************
*** MODEM USAGE ***
*******************
A modem port can be configured for access to the bbs. It can be
configured to a port in a non DESQview system, or it can be
configured to a port in a DESQview window that also services one
or more TNCs or it can be configured in a DESQview window by
itself. The last case is the best choice since it guarantees
that the bbs will not be busy when you call. Even though other
windows may be in use it is still possible to access the messages
because of the common mail file. This same window can also be
used from the local keyboard to permit access to the messages
without blocking users or forwarding.
The modem must be set up for "quiet" automatic answer at the de-
sired baud rate before it is connected to the bbs software. Any
of the standard terminal programs can be used to perform this set
up. It is important that the modem be able to come up in the
proper mode following a power failure. Most current Hayes com-
patible modems have a non-volatile memory to store their parame-
ters. Earlier versions used dip switches. The important parame-
ters are:
E0 disable echo of commands
S0=n n is the number of rings before the modem answers
Q1 disable result codes
&C1 data carrier detect (DCD) only when carrier present
&D2 data terminal ready (DTR) required for modem to answer
There is no intelligence in the software to issue commands to the
modem. Check your modem manual for instructions on setting the
modem to automatic answer "dumb" mode. The DCD line is the most
important. If the bbs software detects loss of DCD, it will
react the same as for a disconnect from a TNC.
The modem port must be initialized by MBMODE the same as for the
TNC ports. No provision is made for baud rate switching in the
software. The port definition line in config.mb must have E
(port requires echo), L (line feed after carriage return), and S
(raw serial port) specified. T (TNC with TAPR commands) must NOT
be specified. The other codes may be set as desired although the
I (kick off user with illegal call) code is strongly recommend
to help thwart anyone who might stumble across your auto answer
modem. A high ring count is also a good idea. It is not a good
idea to let users connect to your system via the modem port. The
software for the serial port would have to be made much more
"bullet" proof for this to be feasible. Remote control of the
bbs is the main use for a modem port.
Chapter 9 --------------------- MODEM USAGE ------------------------- Page 2
(Continued)
Now for the secret that I had to study the code to determine.
You call in to the modem and it answers and absolutely nothing
happens. You must type the exact string that a TNC would send
when a connection is made including a valid call sign. An SSID
different from what you use on the TNC ports makes it easier to
keep track of modem connections. The string you must send is:
*** CONNECTED to WA3TSW-1
followed by a carriage return. Obviously you use your own call.
If the I parameter is set and the call sign is not valid, there
will not be any response. At this point you will receive the
same introduction and prompts that would occur if you connected
via a TNC. Operation of the bbs is identical to connection via a
TNC port. When you are done you can simply hang up. The modem
will detect loss of carrier and drop the DCD line. The software
will react the same as if a TNC user disconnected instead of
using the B command. You can use the B command before hanging up
but there will be no response to indicate that anything is hap-
pening.
Thanks to WA3TSW for this info on modem operation.
Chapter 10 ------------------ MBRESTM -------------------------------- Page 1
*** USING MBRESTM.EXE ***
Restoring a crashed mail.dat file is now easy to do. With version
5.0 and later versions, an invisible header is now put into each
message text file. That is, invisible to the bbs. So all that is
needed to restore MAIL.DAT is the message text files. Even if
some of these files are bad, you can still reconstruct a mail.dat
file with the files that you still have.
To run the restore program, place MBRESTM.EXE in the same
subdirectory as the message files, and then type MBRESTM. It will
check for message files, check for the inbedded header
information, then sort the message files, and finally creat a new
MAIL.DAT in the same directory. You will also be told what the
next message number is, and asked if you want to change it.
Now all you have to do is place the NEW MAIL.DAT file in the
proper subdirectory using copy, and the bbs is now ready to be
loaded with a reconstructed mail file.
MAIL.DAT -- mail file header format
1-2 2 NEXT Next record to allocate, binary (LAST+1)
3-4 2 FIRST First msg header record, binary (always 1)
5-6 2 LAST Last msg header record, binary (COUNT)
7-8 2 NEXTM Next msg number, binary
9-10 2 UNTMSG Next msg at last untangle, binary
11 1 VERSION Mail file version, binary
12-13 2 SPARE Unused
14-15 2 COUNT Number of messages, binary
16-21 6 DATE Date of last untangle YYMMDD
22-25 4 TIME Time of last untangle HHMM
26-256 231 unused, filled with nulls
MAIL.DAT -- typical message entry format
1 1 EXT Header extension flag or zero
2-3 2 RN Record number
4-5 2 READ Times read in binary
6-7 2 NUMBER Message number in binary
8-9 2 SIZE Message size in binary
10 1 TYPE Message type (Ascii)
11 1 ST Status (01 read, 02 fwded, 04 kill, 08 busy)
(10 unused, 20 old, 40 hold, 80 bulletin)
12-17 6 TO To, trailing spaces
18-23 6 FROM From, trailing spaces
26-29 6 BBS BBS, trailing spaces
30-35 6 DATE Date YYMMDD
36-39 4 TIME Time HHMM
40-51 12 BID BID, trailing NULLS
52-131 80 SUBJECT Msg title with trailing NULLS
132-227 96 CALL DIS routing, max 16 calls, 6 chars each
228-243 16 FLAG DIS routing, binary 1 unforwarded, otherwise 0
244 1 COUNT Number of calls in DIS list, binary
245-256 12 Unused, filled with binary nulls
Chapter 10 ----------------- MAIL FORMAT ----------------------------- Page 2
INDIVIDUAL MESSAGE FILE HEADER FORMAT
All 256 bytes are filled with nulls to start with and then
replaced with the appropriate values. Only the area trailing the
message title is left as nulls.
Everything except those nulls are ascii. Nothing is left as binary
data.
All fields are completely filled with the contents of the variable
assigned to that area. If the contents are not big enough to fill
the field the extra area is filled by leading or trailing spaces
(hex 20).
POSITION SIZE VARIABLE CONTENT
1-5 5 NUMBER Message NUMBER in ascii, leading spaces
6 1 space
7 1 TYPE Message TYPE
8 1 ST STATUS
9 1 space
10-14 5 SIZE Message SIZE in ascii, leading spaces
15 1 space
16-21 6 TO TO, trailing spaces
22 1 space
23-28 6 FROM FROM, trailing spaces
29 1 space
30-35 6 BBS BBS, trailing spaces
36 1 space
37-42 6 DATE DATE YYMMDD
43 1 space
44-47 4 TIME TIME HHMM
48 1 space
49-60 12 BID BID, trailing spaces
61 1 space
62-66 5 READ Times READ in ascii, leading spaces
67 1 CR
68 1 LF
69 1 EXT Extension FLAG, 0 = cc line absent,
1 = cc line exists
2 = Hierarchical list
70 1 space
71-86 16 FLAGS cc line flags each corresponding to a line in the
DIS file that matches the @BBS field.
0 = we have fowarded to this station
1 = we have not fowarded.
If we don't have a cc line, these are 16 spaces.
71-XX XX HLIST With EXT = 2 This contains the hierarchical list.
XX 1 CR
XX 1 LF
XX-XX 82 SUBJECT Message TITLE (80 max), then CRLF
XX-254 84 NULLS
255 1 CR
256 1 LF
Thanks to AG3F in helping iron out some of the mysteries of this.
Chapter 10 --------------- LISTING MESSAGES -------------------------- Page 3
WORKING WITH THE MAIL FILE
There are many ways to list messages in the mail file for the
sysop. The common method is to just do a "L" every time you log
into the bbs. This will list all messages active on the bbs since
your last login. A better method is to use the "LE" command which
will list ALL messages (active messages, killed messages,
duplicate bid headers, and disconnect-timeout headers). In other
words, all message numbers in serial fashion, since your last
login.
Also available to the sysop is the "LU" command. This will list
all messages not yet forwarded, and messages to your local users.
It does not list bulletins and gives the sysop an idea as to how
the bbs is performing on forwards. You can also get a quick view
of messages addressed to bbs's not in your forward file and make
the necessary corrections to it.
A feature not commonly used is the adding of the ";" as the second
or third field of list commands. The example - "LE ;" will list
exactly like the "LE" except extra lines will appear containing
the BID, if any, and the HIERARCHICAL ROUTE. Not all messages
have bids and, right now, few will have any hierarchical route,
but the the listing is available to the sysop.
Common listings available to users are also usable to the sysop.
Examples such as "LA" to list all type A messages, "LB" to list
all bulletins, "LM" to list all your own messages, "LY" to list
all messages that have been read, "LO" to list messages the are
stale, "LK" to list messages that have been killed, "L@ (call),
"L> (call), and "L< (call) add more selectivity to the listing.
The "LH" command lists all messages that are being held. These
messages are marked hold so that the sysop can act upon them by
using the edit message command. If any call in the hold calls
list in the config file matches the TO, FROM, or BBS of a message
it will be marked as hold. Another example is if a message is
received without a bid, and has a distribution call in the bbs
field. You cannot distribute a message without a bid attached to
that message.
There are many other varations available to the sysop. Most of
the two letter commands can also take a number after them. "LE
10" will list the last ten messages. But probably the most usful
commands are the "LE" and "LU" which show what messages you have
received and what has yet to forward.
Additional info may be found by looking at the "L COMMAND" in
chapter 4, and MESSAGES in chapter 7.
Chapter 11 -------------- ARCHIVE MESSAGES --------------------------- Page 1
ARCHIVING MESSAGES
The CBBS code now handles a new method of saving KILLED messages
If a sysop wants to save all killed mail, the the only thing he
has to do is create a subdirectory called "KILL" in the messages
subdirectory. If he wants to save all nts messages, then he makes
a subdirectory called "NTS". For saving all mail either to or
from the sysop, he then makes a subdirectory with his call. (e.g.
K3RLI) You can also make special subdirectories with
classifications of any @BBS field, such as, RLIBBS, MBLBBS, ALLPA,
ect. You can use as many subdirectories as you want, and related
classes of mail will be archived into them.
So, if you are a traffic manager, and your only interest is in
saving traffic and service messages, then you only need create a
subdirectory of "NTS". If you are only interested in saving any
dialogue between you and other users, then you create a
subdirectory with your call sign. All of these subdirectories are
made in the MSGS subdirectory.
Another feature is that in each of these subdirectories, a file
called INDEX is created. This file will contain the headers of
all the message files archived. As you add more message files to
the subdirectory, INDEX will have the new headers appended to it
in serial fashion. So you will have an INDEX file of all the
message files in the corresponding subdirectory. All the archived
files, including the INDEX file are text files, and as such, can
be edited with any text editor. You can also copy all the files
from a subdirectory to a floppy, then delete all the files in that
subdirectory and start over. That way the floppy will contain all
the archived message files and their corresponding index file.
If you create a subdirectory called BUSY, all incomplete messages
caused by a timeout or disconnect will be put in it. The index
file from this subdirectory might be handy to see how some of the
paths reflect the quality of forwarding. Poor paths usually mean
more timeouts and disconnects.
Be sure you check the archived messages as you can fill up the
the disk quite easily on an active bbs. A floppy can hold about
111 - 112 directory entries, and will display an error once that
limit is reached. So you might copy the files off the bbs before
that limit is reached.
Appendix A ------------------ CHANGES -------------------------------- Page 1
Changes from 4.4 to V4.51 Starting 2/18/88
Removed the pause message whenever the printer is toggled on.
Log file now logs @bbs field in message entries.
Log file now logs local message entries.
Password routine added to insure security of remote sysop.
Fixed bug in gate: Allowed users to use gateway when G not in config.
Alternate display of tnc cmds when 123 not in config. Shows port letter
as upper case if normal, and lower case if timeout on cmd:.
Forward timeout field now in port config line. Allows time for tnc to
flush out it's buffer on timeout before starting next connect.
Single header line when using pipe between multiple bbs's.
Changes from V4.51 to V4.52 Starting 3/3/88
Fixed bug in Edit message to add bid to BID file with blank BID.
Printer now shut off when sysop goes BYE.
Now only messages with no type to a legal callsign become private.
Log file now logs Make type messages.
":"'s added after Ok and No responses for uniformity.
User record is updated with next message number only if user does 'L'.
Added "Are you sure?" to Quit and Untangle commands.
Changes from V4.53 to V4.6 10 Starting 6/10/88
Fixed bug with timeout in forwarding.
New edit message & edit user format for sysop.
Transparent mode now changed from edit port parameter.
Message without a bid at a distribution list put on hold.
Added Zip to white paper for consistency.
Fwdcmd now replies done when done for consistency.
Now match Conn or Disc anywhere in received line.
Fixed minor bug on DOS operations.
Received scripts now can be partially matched.
Waitcmd time now set correctly if using DesqView.
Check for [...] only for first response on connect.
Bulletins now considered like type F messages on forwarding.
Fixed minor bug for bid check in SM and MM commands.
Fixed generated bid in WP and Service messages.
Placed tnc in converse mode when sysop talks to user.
Corrected bugs in transparent mode operation.
Corrected long standing loging bug.
Made message auto-BID's 12345_K3XXX for consistency.
Added NEW DESQview and DoubleDOS flags in config.
Forwarded traffic not shown to users.
Stopped *** Invalid Command from other bbs causing messages to be lost.
Clsmon done at forwarding time.
Fixed bugs in remote sysop using pipes.
Changes to V4.6 to V4.6+ Starting 7/24/1988
[...] in prompt lines does not reset sid options.
Added eat in dorev to pick up ending prompt bug.
Dos commands not done on force forward.
Fixed remote sysop operations to work properly in trans mode & pipes.
Changed %d to %u for counting of messages above 32k.
Better handling of distribution calls in edmsg.
Switching from converse to transparent mode handled better.
Misc. small errors corrected.
Appendix A ----------------- CHANGES --------------------------------- Page 2
(Continued)
Changes from V4.6+ to V5.0 Starting 10/9/1988
Multiuser version using one common mail file between windows
Version 9 mail file structure.
Added voids to list headers for duplicate bids and disconnects.
Added MBIBM functions for handshaking thru HAND.
Added A and AI for forwarding on all windows by sysop.
Added setbusy and clearbusy and auto GM for mail compress.
Changes from V5.0 to 5.1 Starting 11/11/1988
Added LOCK function and deleted pipe functions.
No beacon if the calls for BT is set at 1.
Deleted p_memory and DoubleDos references.
Changes from V5.1 to 5.11 Starting 11/30/1988
Fixed parsehd() for some non-standard headers from other bbs code.
Deleted phead and replaced with parsehd.
Reverse forward does not need port->id match.
Fixed scripts left after Case E forwarding.
Disconnect now stops file and message dump to tnc.
String defined wrong in puser.
Changes from V5.11 to V5.2 Starting 1/05/1989
Added message archiving by subdirectory on GM.
Fixed readusr to handle GU's.
Filter control characters from title.
Fix blank line from BBSMSG ON on retry out exceeded.
Removed unnecessary logging in forward.
Added LU command for listing of unforwarded mail.
@ sub-forward files can now be timed.
Speeded up forwarding using @ sub files.
Changes from V5.2 to 6.0 Starting 2/05/1989
Added H to sid for hierarchical forwarding.
Fixed reversing forwarding of same bulletin back to bbs in .DIS list.
Inbedded header now supports hierarchical list.
Edit message and edit traffic supports hierarchical list.
New MBRESTM code to handle restoring hierarchical list.
Added bid to archived messages.
Fixed page check for added lines in headers.
Fixed bug in forward to PBBX mailboxes.
Quit now clears window busy flag.
Fixed some serial port bugs.
H status mail now listed with higher priority.
Actual bid now shown in busy header with sender's call, also in log.
Changed format and entry of edit port, edit system.
Fixed busy call being added to beacon text.
Added YF display of forward file name.
Corrected WP file update, and bulletin bid check.
Changes from 6.0 to 6.1 Starting 2/17/1989
Revised parsing routine for send line xxxxx@yyyyy.
Appendix B ------------------ CONFIG.MB ------------------------------ Page 1
SAMPLE CONFIG.MB for single port:
A123UDTIX 360 20 600 100 10 2 53 6 15
-> 145.01 Mhz.
LCUDE 300 10 600 100 10 0 53 8 15
-> Stations Connected
*** EOF
ADU
C:\oscar\
--> Amsat / Oscar
BDU
C:\files\
--> General information
CDU
C:\cuser\
--> Commadore 64 Users
DDU
C:\nts\
--> NTS \ ARES / RACES
FDU
C:\arrl\
--> ARRL / W5YI Material
GDU
C:\gateway\
--> Gateway Newsletters
HDU
C:\hamfest\
--> Hamfests and Related EVENTS
MDU
C:\map\
--> Packet MAPS
NDU
C:\net\
--> Net/Rom Information
*** EOF
K3RLI
NEPBBS PAWEST
NEPBBS PAEAST
*** EOF
hold
*** EOF
Hello $I, Welcome to the $O MailBox from $W in $Q
Last logged at $Y on $X.
Type H for help, L to list new messages.
*** EOF
$O>
$D/$T, $L, $N msgs>$H
$U de $O: at $Tz on $D ?,B,C,D,H,I,J,K,L,M,N,P,R,S,T,U,V,W >
K3RLI
Wilkes-Barre, Pa
WD6CMU
C:HELP.MB
C:INFO.MB
\mb\bbs\FWD.MB
\mb\bbs\LOG.A (For other windows use LOG.B, ect)
\mb\bbs\MON.A (For other windows use MON.B, ect)
\mb\bbs\MAIL.DAT
Appendix B ------------------ CONFIG.MB ------------------------------ Page 2
(Continued)
\mb\bbs\MAIL.BAK
\mb\bbs\USER.DAT
\mb\bbs\USER.BAK
\mb\msgs\
\mb\BID.MB
\mb\bbs\CALLS.A (For other windows use CALLS.B, ect.)
10 (Max # of Calls in calls.mb)
YES 02 (Autocompress [GM] mail file at XX hour)
YES (Using DESQview = YES)
YES (Prompt name)
YES (Prompt bbs)
YES (Prompt zip)
YES (Turn on logging)
YES (Log GateWay events)
YES (Log file transfers)
YES (Log message events)
NO (Log local events)
F (Control char to kick user off system)
E (Control char to return from talk mode)
E (Control char to interrupt user and talk)
E (Control char to interrupt idle MailBox and get local menu)
Any key to continue, Q to Quit.$H
$S ($W) is using the MailBox.
$R tried to connect.
Please stand by, $W would like to talk to you.
Hang on one minute, I will page $W.
$W did not answer, you might leave a message to K3RLI in the MailBox.
$S ($W) would like to talk to you.
The GateWay is not available.
You are linked to the other TNC. ^W returns to menu.
Attempting the connection on $F. ^W will abort.
Connection not established.
Connection established. ^W to disconnect.
Connection aborted.
You are listening to $F. Type anything to return to menu.
Enter TITLE for message:
Enter message #$C, ^Z (CTL-Z) to end:
You have new mail, $I, Type R <space> Msg# to read it:
Msg# TR Size To From @ BBS Date/Time Title
R:$J/$Kz $M@$O [$Q] Z:18702
Mail file empty.
Untangling Mail.
*** Killed message $M
New TO or <cr> to retain:
New @ BBS or <cr> to retain:
New TITLE or <cr> to retain:
New TYPE or <cr> to retain:
*** Sorry, That is not a NTS Traffic Message.
10 (Max calls in BT list, 1 = no beacon )
40 (Max bbs with msg to fwd to)
YES (Kill regular message after forward)
NO (Kill type F & B message after forward)
YES (Generate svc msg on KT)
YES (Enable ET Command)
30 (Age of bulletin messages when marked as stale, days)
5 (Age of NTS messages when marked as stale, days)
10 (Age of User Messageswhen marked as stale, days)
Appendix B ------------------ CONFIG.MB ----------------------------- Page 3
(Continued)
Send the file, ^Z (CTL-Z) to end.
N_Name
Compressing the user file.
--Call Date Time Logd Msg Hm BBS I PLBEDSK Name Zip
EDIT: Y to delete, Q to Quit <cr> to retain:$H
*** Please Enter N (name) to enter your name.
*** Please Enter NH (call) to enter the BBS where you get your mail.
*** Please Enter NZ (zip) to enter your ZIP code.
*** MailBox can't do it, probably a hardware problem.
*** None Found
*** Not your message.
*** There is alreay a file with that name.
*** Sorry - Timeout!!! -
*** What?
*** Done
*** No such Port.
*** No such Directory.
*** File not found: $H
*** Message not found.
*** Port is in use.
PASSWORD goes here -- 64 characters ----
--EOF--