home
***
CD-ROM
|
disk
|
FTP
|
other
***
search
/
HAM Radio 1
/
HamRadio.cdr
/
misc
/
doc211
/
bb2_11.man
Wrap
Text File
|
1991-04-21
|
284KB
|
9,078 lines
The AA4RE Bulletin Board
DOCUMENTATION
Version 2.11
(21 April, 1991)
COMPILED BY:
--------------------
Gary N. Hauge, N4CHV
316 Remington Drive
Oviedo, FL 32765
N4CHV @ N4CHV-3.#ORLFL.FL.USA.NA
or N4CHV @ WD4HIM.#ORLFL.FL.USA.NA
or COMPUSERV: 70127,1765
COPYRIGHT NOTICE
-----------------
SOFTWARE:
Copyright 1988, 1989, 1990 and 1991 by H. Roy Engehausen. All
rights reserved. This software may be freely distributed and used,
but it may not under any circumstances be sold by anyone other than
the author. It may be distributed by a commercial company as long
as it is for no cost or the cost of the diskette.
DOCUMENTATION:
Copyright 1989, 1990 and 1991 by Gary N. Hauge and H. Roy
Engehausen. All rights reserved. This documentation may be freely
distributed and used by the Amateur Radio Community so long as it
is supplied at no cost or only for the cost of the diskette or
printing and any shipping charges.
USE:
For those who worry about such things, I explictly grant permission
to all Radio Amateur Civil Emergency Service (RACES), Civil Air
Patrol (CAP), and Military Affiliate Radio System (MARS)
organizations to use these programs.
THIS DOCUMENT:
Permission has been granted for N4CHV to reproduce and sell a bound
Laser printed copy of this documentation. This is available at my
cost with no profit involved. It is anticipated the the total cost
involved will be less than $20.00 which includes shipping and
handling charges.
For further information contact:
Gary N. Hauge - N4CHV
316 Remington Drive
Oviedo, FL 32765
Please send SASE for more information. DO NOT SEND ANY MONEY at
this time.
TABLE OF CONTENTS
-----------------
1.0 INTRODUCTION
1.1 WELCOME TO THE AA4RE MAILBOX V 2.11
1.2 NOTES ON THIS RELEASE
1.3 FILES TO READ
1.4 FEEDBACK
1.5 HISTORY
1.6 KNOWN PROBLEMS
1.7 WISH LIST
1.8 CONVERSION NOTES
1.9 FILES SUPPLIED WITH BB
1.10 BB CAPACITY
1.11 BUG.DOC
1.12 REPORTING ERRORS
2.0 INSTALLATION
2.1 HARDWARE REQUIREMENTS
2.2 PARMS.BB FILE
2.3 MESSAGE.BB FILE
2.4 INFO.BB FILE
2.5 PCPA.DOC FILE
2.6 TIPS.DOC FILE
2.7 MS400.DOC FILE
2.8 MBBIOS AND MBBCONFG
3.0 OPERATION
3.1 STARTING (from a host)
3.2 STARTING (system has been up already)
3.3 WINDOWS
3.4 LINE EDIT KEYS
3.5 FUNCTION KEYS
3.6 OPERATOR COMMANDS
3.7 REMOTE SYSTEM PASSWORDS
3.8 FORWARD.DOC FILE
3.9 THE ROUTE FILE
3.10 THE PATH FILE
3.11 DIS.DOC FILE
3.12 ALLUS.DIS FILE
3.13 ROUTE.BB FILE
3.14 CC.DOC FILE
3.15 WILDCARD.DOC FILE
3.16 WAKEUP.DOC FILE
3.17 TERMINAL.DOC FILE
3.18 USER.DOC FILE
3.19 LOG.DOC FILE
3.20 EDIT.DOC FILE
TABLE OF CONTENTS (CONT)
------------------------
3.21 MBL.DOC FILE
3.22 HIER.DOC FILE
3.23 HELP.DOC FILE
3.24 MODEM.DOC FILE
3.25 HF OPERATION
3.26 SERVER.DOC FILE
3.27 SEARCH.DOC FILE
3.28 IMPORT.DOC FILE
3.29 MODE.DOC FILE
3.30 LANGUAGE.DOC FILE
3.31 ACTION.DOC FILE
3.32 ACTION.BB FILE
3.33 HELP.BB FILE
3.34 G8BPQ SETUP
3.35 LAN FORWARDING
3.36 KAM PROBLEMS
3.37 KAM 3.0
4.0 APPENDIX
4.1 BBCOLOR.EXE FILE
4.2 GENERAL KEYWORDS
4.3 PORT KEYWORDS
4.4 FILE KEYWORDS
4.5 PATH.BB FILE
4.6 ROUTE.BB FILE
4.7 MESSAGE.DOS FILE
4.8 MESSAGE.DOC FILE
4.9 AEAHOST.DOC FILE
4.10 COUNTRY.DOC FILE
4.11 MS400.MOD
5.0 GLOSSARY
5.1 GLOSSARY.DOC FILE
FORWARD
I have taken Roy, AA4RE's documentation and some notes that I
have and compiled them into a document suitable for a SYSOP's
Manual that follows an order that should aid the new and or
experienced user in setting up his station for BBS operation.
Much of what you are about to read is Roy's writing and notes
that were passed to my via the network. I will not claim any
credit for anything other than format changes and compiling a few
additions of my own text. It is hoped that this document will be
of use to all who wish to use the AA4RE BBS system either as a
sysop or user.
My thanks to Roy who has answered many questions and to Bruce,
WD4HIM and Bill, KB4VOL for their review and comments and N4KWB,
KB4T, KB4VOL, N4LDG, for their inputs. Some additional
documentation was updated from messages that make the path via
BBS to BBS around the country. Inputs from KB3UD and KA3T were
obtained in that manor via KB4T.
Enjoy......Gary, N4CHV
WHAT IS THE AA4RE BB SYSTEM?:
-----------------------------
The primary advantage of BB over the MBL/RLI/BQE/CBBS.... systems
is the ability to handle multiple connects per port. The program
uses it own multitasker and no DesqView, DoubleDos, etc is
required. On the down side, BB has been optimized for speed and
requires at least 512K (and usually 640K) to be used productively.
BB uses a "host-mode" interface so the only TNCs supported are the
TNC-1 and TNC-2 (or clones) with the WA8DED (or clone) EPROMS
installed, the AEA PK-87, PK-88, PK-232, and the DRSI PC*PA TNC
card. It also runs with any KISS TNC using the G8BPQ PC Node
switch.
BB DISTRIBUTION:
----------------
You can get these programs by sending a $5 US (or equivalent) to:
Dave Larton, N6JQJ
766 El Cerrito Way, #D
Gilroy, CA 95020-4149
(408) 847-3605
John Anderson, N7IJI
2729 Park Road
Charlotte, NC 28209
(704)-372-8925
Canadians can send 5.00 CDN to:
A.R.E.S. Group
Att: REBBS Update
P.O. Box 35
St-Jean Chrysostome,
Quebec, Canada G6Z 2L3
For source code, include $2 more (needs multiple diskettes).
Between Dave and I, we can handle all formats of 5 1/4 and 3 1/2.
The software can also be obtained by downloading from the following
BBS:
WA6RDH BBS -- 916-678-1535 -- 300/1200/2400/4800/9600 N81 V.32
WB3FFV BBS -- 301-625-0817 -- 1200&2400 (Non-MNP)
-- 301-625-9482 -- 1200&2400 (MNP5), 4800&9600 V.32
(V.42/MNP5)
-- 301-625-9663 -- 1200&2400 (MNP5), 9600 & 19200
(PEP)
The software is also loaded onto the W3IWI TOMCAT TCPIP server
accessible via both SLIP and thru the Internet.
Those with FTP Internet service or BITNET should send a note to
AA4RE @ AA4RE.#NOCAL.CA.USA.NA with your TCPIP address (eg.
123.213.22.33) or BITNET address for delivery over those networks.
1.0 INTRODUCTION
-----------------
1.1 WELCOME TO THE AA4RE MAILBOX V 2.11:
-----------------------------------------
There are several new features to this release and you should start
by noting them in the CHANGES.DOC file. This file containes a
running update for all versions of the AA4RE BB system.
Most notable changes are:
-- Forwarding gets computed on the fly
-- All sorts of new ways to select messages (See SEARCH.DOC)
-- Action file to control various features (See ACTION.DOC)
-- ARES support (See MODE.DOC)
1.2 NOTES ON THIS RELEASE:
--------------------------
Version 2.11 has several new features and a few changes or
deletions. The "new" feature are:
-- Changes to the Route.BB
-- Changes to the Message.BB file (items 4,27,29,31,64 and 78)
-- Added: 129 to 144
-- New features in Params.BB file:
The "C" search command has been changed. (Can now be controlled
with the ACTION.BB file)
1.3 FILES TO READ:
-------------------
If you are already a BB SYSOP or user, see CONVERT.DOC for what has
to be changed between versions.
The operator commands are in OPERATE.DOC while all the user
commands are in HELP.BB. Check both files for the latest command
lists. CHANGES.DOC has a list of all changes that have been made.
-----
NOTE:
-----
If you want binary transfer over the PK-232, PK-87/88, you must
issue;
(esc)CET
command. You can either do this manually when you bring up the
system or you can put the command (as shown) in a file and then
set the INITIALIZE_FILE parameter in PARMS.BB to point to the
file. Thanks to Pedro, LU7ABF, for catching that one.
1.4 FEEDBACK:
--------------
I try to help everyone as much as I can but the mail and phone gets
overwhelming. I spend a lot of hours working on this program and
the more time I have to develop things, the faster new releases
will come out. New SYSOP'S should contact others in the same area
for assistance in setting their system up. I am sure that you will
find plenty of helpers out there.
I don't get to answer everything I want to so a question or comment
may never get answered. I am sorry but writing this program is
wedged in amongst my other hobbies and other ham radio activities.
Please try to use either electronic mail or phone calls. I am bad
at letters. Phone calls are ok if you need a lot of info. I
PREFER MESSAGES.
My phone number is 408-847-3210. Please try only between 8:00 PM
and 9:30 PM Pacific time weekdays or 10 AM to 7 PM weekends.
Electronically, I can be reached via:
Internet: ENGE @ IBM.COM
BITNET: ENGE at ALMVMA
You can reach me on COMPUSERV through the INTERNET gateway.
I can also be reached through many of the IBM Radio Clubs.
"Roy"
1.5 HISTORY:
-------------
Version 1.4 -- August 29th
-- Fixed PC*PA performance problem
-- Bi-lingual broadcast path (Via added/removed as needed)
-- Fixed XSTOP wiping out too many cycles
-- Added "@" command to change privilege class
-- Added additional waits during path search to prevent forward
from monopolizing the system.
Version 1.5 -- September 5th, 1988
-- Fixed long broadcast crash
Version 2.0 -- September 25th, 1988
-- Message and user file format changes
.. Now max of 20 in distribution list.
-- Added "CF" -- privileged COPYFILE
-- Added "V" -- Give version
-- Updated "F" command
F -- Makes file with X400 header (like "R")
FH -- Makes file with X400 and mailbox headers (like "RH")
FN -- Makes file with just message headers and text.
This was previous "F" command.
-- LPT1, LPT2, LPT3 are now valid targets for "F" and "CF"
-- Fixed color problems when scrolling
Version 2.1 -- September 25th, 1988
-- Hierarchial routing added
-- Improved message file integrity
-- Added retrieve and line edit functions
-- Added Control-Page-Up and Control-Page-Down
-- Added PC*PA multiple port support
-- Added QRES command support for TNC
-- Fixed BUSY message bug from PK232/87
-- Fixed NETROM NODE monitor from PK232/87
-- Fixed PK232/87 not going busy when BBS is down
-- Added compatibility with MBL version 3.20/3.12/3.13
-- Added special timeout value in semaphore processor for build
of routes
-- Added Carbon copy function
-- Added authorization for .DIS and .CC
-- Added ET
-- Added LS, L$
-- Added KF command
-- Changed LF to match KF
-- Fixed operator's "L" command
-- Fixed top of screen color problem (was random)
-- Fixed LPTx and CF bug.
-- Fixed bug in CF with unable to open output.
-- Fixed bug with "GM" and different drives (RUNTIME ERROR 17)
-- Fixed possible bug in header processor
-- Fixed GM TIMEOUT bug
-- Fixed hung port on startup
Version 2.2 -- November 8th, 1988
-- Added LU command
-- Fixed bug in OK, NOT_OK processing
-- Fixed runtime error 204 / message scramble
-- Inhibit msg stored message from CC processor when BBS sends
-- Ignore BUSY msg from PK-232 on forward connect
Version 2.3 -- February 1st, 1989 (2.3 was for test only)
Version 2.4 -- February 1st, 1989
-- Convert to TURBO PASCAL V5
-- Added overlays
-- Added multiple read / kill on one command with ranges
-- Added L+ command (List messages selected for forward)
-- Added LO, KO command (List/Kill old messages)
-- Added GC, GW commands for capturing sessions and windows
into a file
-- Added GE command (Reload message file)
-- Added GF command (Reset forward file)
-- Added GI command (Cleanup BID file)
-- Added GL command (Reload msg file)
-- Added GK to force WAKEUP
-- Added GO command (Mark messages old)
-- Added JN command (List connected messages)
-- Added code to permit only send of certain types
-- Added NETROM Node broadcast decipher
-- Added new parameter for TCB/IO debugger on monochrome screen
-- Added version verification to internal PARMS format to
prevent problems
-- Added BID/MID to MsgID line while reading messages
-- Added support for more than 2 DRSI PC*PA ports
-- Added WAKEUP support
-- Added bell for operator (GB command)
-- Added *** LINKED TO support for GATEWAYs
-- Added escape/escape support
-- Added HOUR parm on "T" statement in PATH.BB to allow
EVEN/ODD hour select
-- Added RLI/MBL compatible IMPORT/EXPORT commands
-- Added NETROM time stamp
-- Added optional check to prevent attempt to connect to
someone already conn.
-- Added optional parm to allow BBS to read P messages
-- Added optional parm for edit buffer size
-- Added optional parm to prevent clock ticks to update status
line
-- Added critical error message support via windows
-- Added shared interrupt slow down support
-- Added automatic insert of PC*PA port on forward connect
commands
-- Added $l for messages. $l = date/time of last "L" command.
-- Added more support for BLANK as a message type. If
BID_FOR_BLANK is on then blank gets treated as a bulletin.
If off then BLANK is treated as a private message.
-- Enabled GM, GR, and GE remote SYSOP capability
-- Improved logging for forward and connect
-- Improved search path for forward to cut down time
-- Improved monitor display -- shorter prefix and better breaks
-- Improved testing for SETUP duplicates
-- Improved SETTNC to only do one init for each com number
-- Improved ability to talk to user
-- Improved security for BBS
-- Improved TNC startup/shutdown for PC*PA
-- PACLEN now 20 to 255
-- A empty line now has no blanks
-- Fixed bug regarding "B" command for local operator when not
in sysop state
-- Fixed bug regarding "T" command. Now check for bad parms
-- Fixed bug regarding "T" command. Don't let SYSOP talk to
self
-- Fixed bug with FORWARD_MIN = 0 during BBSETUP
-- Fixed bug regarding two forwards with same data
-- Fixed bug when more than 255 characters without a CR in
TERMINAL mode
-- Fixed bug where Error 201 when MAX_TASK > 15...
-- Fixed bug in NO_KILL_ON_FWD when an underscore is not
present
-- Fixed bug in HELP alias
-- Fixed bug where it was only storing 1/2 the number of bids
-- Fixed bug where invalid channel given on "T" command by
local operator
-- Fixed bug involving bad MON.BB file
-- Fixed bug with 890100
-- Fixed bug where could not force a path if outside the time
zone
Version 2.5 -- May 1st, 1989
-- Fixed bug with more than 100 messages for a single route
-- Fixed bug with channel numbers > 9
-- Fixed bug with bad message number on different commands
caused 201 error
-- Fixed bug where SB xx @ xx $ causes message to go into hold
-- Fixed bug where remote SYSOP could not force a forward cycle
(x)
-- Fixed bug where error 201 during monitor of bad packet
-- Fixed bug where linefeed after CR screws up next command
-- Fixed invalid error message on blank line in initialize file
-- Fixed bad error messages on Timeouts and overruns causing
error 201
-- Fixed bug where GR erased a message that didn't have to be
renumbered
-- Fixed bug with remote operator command "X"
-- Fixed bug with EXPORT and blank bid
-- Fixed stack space problem causing intermittent 202 errors
-- Fixed bug if @call in header terminated with non-blank
-- Added new special route indicator -- @blank (see special
case section in FWD.DOC)
-- Added recognition of /EXIT
-- Added THEBOX support in headers (YUK)
-- Added different "I" command response for SYSOPS
-- Added ability to have different time zone for forwarding
header display
-- Added F4 to clear bottom window (also frees window
scrollback)
-- Added "DU call" is now a user level command. Note that the
user level DU is only for a specific call
-- Added DU by matching pattern (DU WA6*) (SYSOPs only)
-- Added DU now displays in sort sequence
-- Added optional loud SYSOP bell
-- Added feature to not show SYSOPs call in the MAIL FOR beacon
-- Improve LEAVE handling in the forward cycle. Turns selected
bit off! (see special handling in the FWD.DOC)
-- Displays "Forwarding" instead of "Special" in JN display
-- Displays subdirectories during "W" command if user allowed
to access them
-- $t in a message now gives port info
-- Eliminated old message heading when reading with X400
-- Message list after ET now shows proper size
-- Repeated EXPORT commands to same file now appends instead of
overwrite
Version 2.6 -- July 22nd, 1989
-- Added telephone modem support for hams
-- Added binary file transfer (YAPP, XMODEM, YMODEM, YMODEM-
BATCH) The commands are DB and UB
-- Added Hierarchical address lookup (GH command)
-- Added marking all BBS in a bulletin's header as having
gotten the file
-- Added SR command to send reply to a message (alias is REPLY)
-- Added GR with starting number
-- Added comments in PATH and ROUTE files (use ;)
-- Added message variable $B -- The message type (single
letter)
-- Added message variable $C -- The message type (by name)
-- Added message variable $p -- From "H" address
-- Added message variable $R -- Number of messages to user that
are unread
-- Added message variable $r -- Number of messages that L
command would show
-- Added ability to control port access by level rather than
BBS ONLY
-- Added ability to suppress prefix area on operators screen GP
command flips toggle from local console
-- Added ability to display forward script mismatches
-- Added GZ command to show mismatch in forward script
-- Added FORCE command for remote SYSOP
-- Added parsing of from "H: address
-- Added *** LINKED support for TEXNET
-- Added optional end of message on read
-- Added optional message (*** Done) at end of reverse forward
-- Held messages will no longer be marked as OLD
-- Improved speed of message search
-- Improved JN command display (from NQ1C)
-- Improved "I" command response from SYSOPS
-- Fixed LF bug on entering subject
-- Fixed WAKEUP GM/GR/GL bug
-- Fixed DU from remote SYSOP
-- Fixed $L. Is now truly last message number
-- Fixed hang with TIMEOUT or OVERRUN errors
-- Fixed remote or local SYSOP to edit own userid record
-- Fixed bug where minutes did not increment at seconds = 0
-- Fixed operator's "L" command (again)
-- Fixed problem with MESSAGE.BB where the type had to be in
caps
-- Removed double display during terminal mode
-- Added ; for comment line in PATH.BB
-- Added code to strip blanks off end of lines in MESSAGE.BB
-- Add ability to execute DOS program from WAKEUP or Keyboard
(EX command described in SERVER.DOC)
-- Add ability to execute DOS servers from WAKEUP or Keyboard
(ES command described in SERVER.DOC)
-- Added new search args for K R and EXPORT commands. Now
similar to the "L" command
-- Added hierarchical route info to addressee in read header
-- Added EXPORTK for EXPORT and then KILL a message
-- Added IMPORTE for IMPORT and then erase the file
-- Added "R" option.. LATER and REJECT support
-- Added support for multiple BBS with same call
-- Added White Pages support (EP command)
-- Added LF on modem port (see PL command in HELP.BB)
-- Added HLOOKUP before each forward cycle (see AUTO_HLOOKUP in
PARMS.DOC)
-- Added xx:== allowed in WAKEUP
-- Added GN command to change file names while running
-- Added NONEW$ for .CC files to use the old bid. See CC.DOC
-- Added display of space remaining and disk size on disks
during W command
-- Added new search term "E" for server info. LE xxxx finds
messages to xxxx where the @ field is blank
Version 2.7
-- Added new port type -- G8BPQ_NODE
-- Added ; for comment line in PATH.BB
-- Added code to strip blanks off end of lines in MESSAGE.BB
-- Add ability to execute DOS program from WAKEUP or Keyboard
(EX command described in SERVER.DOC)
-- Add ability to execute DOS servers from WAKEUP or Keyboard
(ES command described in SERVER.DOC)
-- Added new search args for K R and EXPORT commands. Now
similar to the "L" command
-- Added hierarchical route info to TO addressee in read header
-- Added EXPORTK for EXPORT and then KILL a message
-- Added IMPORTE for IMPORT and then erase a file
-- Added "R" option .. LATER and REJECT support
-- Added support for multiple BBS with same call
-- Added White Pages support (EW command)
-- Added LF on modem port (see PL command in HELP.BB)
-- Added HLOOKUP before each forward cycle (see AUTO_HLOOKUP in
PARMS.DOC)
-- Added xx:== allowed in WAKEUP
-- Added GN command to change file names while running
-- Added NONEW$ for .CC files to use the old bid. See CC.DOC
-- Added display of space remaining and disk size on disks
during W command
-- Added new search term "E" for server info. LE xxxx finds
messages to cccc where the @ field is blank
-- Added NO_BUSY_FWD in PARMS.BB -- It prevents a forward cycle
if port is busy. Intended for HF where you only want one
connect.
-- Added $7, $8, $9 to MESSAGEs. Each sounds a different tone
-- Added password prompt three times on telephone port
-- Fixed bug in logging on IMPORT command
-- Fixed bug where overlay gets hung for long time on binary
xfer
-- Fixed bug where wait for a failed forward was not occurring
-- Fixed bug with error 201 on binary transfer
-- Fixed bug in remote operator commands greater than two
characters long
-- Fixed bug where L+ displayed already forwarded messages
-- Fixed bug where long messages got out of order on "L"
command
-- Fixed bug where l command does not update on modem
-- Fixed bug for message number > 32767
-- Fixed bug for header with message number < 0
-- Fixed annoying problem with garbage characters during
certain modem ops
-- Fixed bug when computer speed affected RING detect
-- Fixed bug with DRSI non-zero AH
-- Fixed WEDNESDAY bug in WAKEUP. Spell as WEDNESDY
-- Fixed bug where CF caused timeout
Version 2.8 -- November 16th, 1989
-- Same as 2.7
Version 2.x -- February 4th, 1990
-- Added support for "personal" BBS
-- Added hold of old bulletins that arrive
-- Added different header message for local origin messages
-- Message now in hold show why they were held.
-- Added blank line between headers and text if none was there.
-- Added L- command to show messages in progress
-- Added ability to automatically handle logs for daily, weekly
and monthly.
-- Added Alternate header support
-- Improved help file format allowing different help data for
DB and D commands for example.
-- Improved prompting for confirm of kill
-- Fixed bug with EXPORTK. K had to be in CAPS.
-- Fixed bug with IMPORTES. E and S had to be in CAPS.
-- Fixed bug where binary download was open for output
-- Fixed bug where BBOLDMSG went into root directory
-- Fixed bug where operator screen was incorrect on startup
-- Fixed bug where prompt for reverse froward sent PK-232 MBX
-- Fixed bug in work memory manager
Version 2.9 -- April 25th, 1990
-- Added support for "personal" bbs
-- Added hold of old bulletins that arrive.
-- Added different header message for local origin messages
-- Message now in hold show why they were held.
-- Added blank line between headers and text if none was there.
-- Added L- command to show messages in progress
-- Added ability to automatically handle logs for daily, weekly
and monthly.
-- Added Alternate header support
-- Improved help file format allowing different help data for
DB and D commands for example.
-- Improved prompting for confirm of kill
-- Fixed bug with EXPORTK. K had to be in CAPS.
-- Fixed bug with IMPORTES. E and S had to be in CAPS.
-- Fixed bug where binary download was open for output
-- Fixed bug where BBOLDMSG went into root directory
-- Fixed bug where operator screen with was incorrect on
startup
-- Fixed bug where prompt for reverse forward sent PK-232 MBX
-- Fixed bug in work memory manager
Version 2.10 -- May 15th, 1990
-- Fixed bug with header more than 80 characters
-- Fixed bug with server stack overflow
-- Fixed bug with NO ROOM FOR TCB on forward
-- Fixed DFLT_PAC setup
-- Fixed bug with auto switch of log name (DAILY, etc)
-- Fixed bug in HELP support for more than one character
-- Added support for BPQ V3.57 monitoring
-- Added ability to always send SID at signon to recover from
missing BBS flag in user defintiions
-- BBSETUP/BBSETTNC use BIOS for screen I/O always
Version 2.11 -- May 15th, 1990
-- Added "\" in match processing. Allows ignore of SSID on ROUTE
using the \ wildcard
-- Added "?" as same as HELP for compatability with MSYS
-- Added L./K./R. commands for selecting messages by hierarchical
address
-- Added sorting of messages to be forwarded. Various options
available
-- Added NT command to control transparency
-- Added NS command to control screen length/width
-- Added parm to GB/GP/GS/GZ commands letting you set them
directly
-- Added new message variables $s and $w
-- Added new forwarding algorithm to allow recomputation while
forward is in progress
-- Added default transparency for new users on per port basis
-- Added remote SYSOP command to shutdown (SHUT and SHUTNOW)
-- Added code to set dos flag when operator shuts down BBS
-- Added forward message size control on a path/time basis
-- Added forward aging (like don't try second system until so
many hours have passed)
-- Added better error messages on BBOPT failures in both BBSETUP
and BB
-- Added "MORE" prompting for some commands
-- Added explaination to disk space info
-- Added compound searching (See SEARCH.DOC)
-- Added action file (See ACTION.DOC)
* Hold or reject incoming messages based on many factors
* Make a file from a message automatically
* Able to prevent certain class users from sending messages
except to certain destinations
-- Added better ways of issuing GO
-- Added the ? for routing and the corresponding L? command
-- Added BBUFIX to help manage user file (See BBUFIX.DOC)
-- Added EL command for server execution for W1NPR type servers
-- Added memory display available for message #4 ("I" command)
-- Added parm to limit bulletins a new user would see with "L"
command
-- Added remote SYSOP passwords
-- Added code to prevent "<" on send command except for BBS or
higher user
-- Added KILL command
-- Added the ability for a user to fully register by executing
pieces of the N command rather than register
-- Added code to prevent blank subject areas except for private
messages
-- Added ability to prevent certain class users from sending
messages except to certain destinations
-- Added multiple language support
-- Added timeout on transmit (will disconnect an RNR session)
-- Added test to make sure whoever you forward to is a BBS
-- Added new user flag for PERSONAL BBS. Covers things like
PK232s etc.
-- Added REL command for releasing help messages
-- Changed hierarchical address searching -- See CONVERT.DOC
-- Changed telephone time out (see MODEM.DOC for other
parameters)
-- Changed overlay pause message to non-critical
-- Cleaned up the processing of invalid message types
-- Fixed bug in the terminal start task where wrong error text
was given
-- Fixed bug where RH thought a line was still part of header
-- Fixed bug where K would stop working in WAKEUP file. Needed
to reset the error flag
-- Fixed bug in WAKEUP on day of week
-- Fixed bug in INITIALIZE_FILE for modems
-- Fixed bug with extra blank line for local messages that start
with blank
-- Fixed bug in getting first RING from modem
-- Fixed bug to allow speed change on dial out
-- Fixed bug to supress garbage at front of modem call
sign/password
-- Fixed bug so import now scans headers
-- Fixed memory allocation bug which ate memory
-- Fixed bug so we get only one connect on a port if user wants
-- Fixed problem with header and #: > 65535
-- Fixed bug where error in export caused error #103 crash
-- Fixed bug which caused loop during display of error in
MESSAGE.BB
-- Improved HLOOKUP speed
-- Improved forward lookup speed
-- Improved bug catching. See BUG.DOC
-- Updated documentation on CM command
-- Updated documentation on PCPA card with DRSI software
1.6 KNOWN PROBLEMS:
-------------------
-- Stray cursor positions during EDIT on some screens (EGA only?)
Possible Bugs
-------------
-- EGA43 and BINED are not in sync
-- Binary xfer and BPQ?
-- Need to purge modem data on speed shift
1.7 Wish List
-------------
-- .CC lose headers?
-- More BID support
-- 19.2 KB support
-- Check for errors of write to disk (especially CF)
-- Option to prevent connects during DOS execution
-- Override H address from HLOOKUP file
-- Prevent blank originator
-- Telephone modem support for non hams
-- Forward binary messages
-- Forward out simulatenously on different ports
-- Forward compression
-- Forward out instead of read to allow a private BBS to capture
what it wants
-- Index to files in a topic...
-- Blow up operator window to full screen by key
-- Prompt user for proper NTS format
-- Multiple terminal mode
-- KA node sends unknown number of lines so hard to handle in
forward
-- Remote SYSOP password
-- Add more classes of user
. Remote SYSOP -- allow changes to a file area
-- More programming in connect scripts so one could connect and
down load a file
-- Shutdown file for TNC
-- Show info on status line when local SYSOP in not in local
SYSOP class.
-- Show MAIL PENDING FOR SYSOP on status line
-- Edit distribution list
-- Save header info with killed message when archiving.
-- Reject bad call signs
-- REQDIR REQFIL REFILE and other servers
-- Append to the output file during F command
-- Kill *.KIL
-- DU with filtering (eg. bbs, exluded, etc)
-- Color control of editor
-- Don't make entry in USER.BB for improper station on a port.
-- Character to abort command output
-- Be able to use : instead of blank between directory name and
file name
-- Send a message and get an automatic reply from the destination
BBS
-- Send a message and notify the sender if it was not read after
30 days at the destination. At which time the destination BBS
kills it
-- Edit port parameters
-- Scroll control -- operator and users
-- Mark SYSOP messages as read when read from console
-- Wordwrap for operators outgoing messages
-- Add line on msg from CC: list for telling who was CCed
-- Send message to logged on users
-- Option to kill .CC master message
-- RM twice in a row will show same messages
-- Allow PRIVATE messages to be read by other hams on access list
-- LPT1 error recovery
-- Top of form between messages on print
-- Handle long lines in editor better
-- X AA4RE REVERSE
-- Look up home bbs for user when no @ field supplied.
-- Default SR to last message read
-- Keyboard Macros
-- Shutdown if no one connected
-- Echo on modem
-- Add QTH to user file
-- Add HADDR to user file
-- Show routing info on SYSOP I command
-- List distribution on messages owned by user
-- Allow lockout of reverse forward by time
-- Default topic area
-- Timeouts different by user classes
-- Abort output command
-- NULL Modem support
-- Sequential number filing of messages
Wish List -- Questionable. Comments invited
---------------------------------------------
-- Send a message and get a confirmation of receipt from each BBS
along the path. ('SQ'?) (Not sure I like this one)
-- Maximum digipeaters on a connect
-- IMPORT to reject duplicates instead of putting them in hold
-- NTS Service message
-- ET (edit NTS)
-- NTS mail waiting info
Wish List -- Dropped due to lack of interest
--------------------------------------------
-- Serial link to RLI
1.8 CONVERSION NOTES:
----------------------
-----
NOTE:
-----
For each level of BB, replace all .EXE files and BB.OVR. Many of
these programs have dependencies on each other and cannot be
mixed with previous releases.
Release 1.3 -> 1.4
Other than the executable files, the only changes are
to:
* MESSAGE.BB -- There are now 7 copies of message # 44, one
for each user class.
Some documentation files have also been updated
Release 1.4 -> Release 1.5
Load and go!
Release 1.4 or 1.5 -> Release 2.0
You must first convert your MSG.BB and USER.BB files to
the new format.
Make the directory containing MSG.BB the current
directory then execute BBMCVT12. This will convert the
file. The old file will be named MSG.V1. Make the
directory containing USER.BB the current directory then
execute BBUCVT12. This will convert the file. The old
file will be named USER.V1. Some documentation files
have also been updated
Release 2.0 -> Release 2.1
Other than the executable files, the only changes are
to:
* MESSAGE.BB -- Added new message #76. Message #28 changed
Some documentation files have also been updated
Release 2.1 -> Release 2.2
Load and go!
Release 2.2 -> Release 2.3
Overlay file added. BB.OVR must be in same directory as
BB.EXE.
WAKEUP file added. Pointed to by WAKEUP_FILE in
PARMS.BB
The algorithm for date decode has been changes. When
you convert from BB V2.2 (or older) to BB V2.3, the
existing messages will jump ahead one day. Sorry about
that.
The only changes are to:
* MESSAGE.BB
- Changed messages #18, 42, 56, 57.
- Added new messages #77 to #83.
* PARMS.BB
New parms:
MONO_TRACE --
Turn on only if you want task tracing and
you have an IBM compatible monochrome
adapter.
WAKEUP_FILE --
This points to a file with wakeup data in
it. See WAKEUP.DOC
SYSOP_IS_IN --
Sets the startup condition of SYSOP
SYSOP_BELL --
Sets the startup condition of ringing a
bell for the SYSOP.
MONITOR_TIME_STAMP --
Time stamp monitored packets
BBS_SEE_P --
Allow BBS class user to see private
messages. This was default previously.
ALREADY_CONNECT_CHECK --
Don't attempt to forward to a
station already connected. Test
is done without concern for SSID
TIME_UPDATES_STATUS --
Whether or not a time tick will
update the status line.
EDITOR_FREE_SIZE --
Amount of memory editor should leave
free
INTERLOCK_COM --
Number of shared interrupt com (See
MS400.DOC)
Changed parms:
PORT_TYPE --
Added PC*PA-2 to PC*PA-9
Removed parms:
BLOCK
CALL_CHECK
Release 2.3 -> Release 2.4
No changes
Release 2.4 -> Release 2.5
Add text for message : 4 R
Update text for message : 24 N
Added to PARMS.BB
BB_HIER_ADDR -- Hierarchical address for this
BBS (required)
BBS_TO_FWD_TIME -- Allows GMT time correction
NO_FWD_OUT -- Allows you to specify that a
port does not need a forward out
time slot
LOUD_SYSOP_BELL -- More noise from "T" command
OWN_CALL_IN_BCST -- Should MAIL FOR contain SYSOPs
call sign
Release 2.5 -> Release 2.6
Added messages : 85 to 117
Changed messages : 4, 27, 28
Added message 30 B as a personal preference
Added to PARMS.BB
SHOW_YAPP_STATES -- Shows YAPP transfer states
SHOW_BINARY_DATA -- Shows data during binary file
transfer
H_LOOKUP_FILE -- File for hierarchical address
lookup
MINIMUM_CLASS_ALLOWED -- Lowest class user allowed on a
port
BINARY_OK -- Binary file transfer from this
topic is ok
SUPPRESS_PREFIX -- Default setting of GP command
ANSWER_ON_RING -- Used by modem port to tell which
ring to answer on
SHOW_FWD_MISMATCH -- Shows mismatches in forward
scripts
Removed from PARMS.BB
BBS_ONLY -- Replaced by
MINIMUM_CLASS_ALLOWED
The long commands (eg. RELOAD_MSG_FILE) have been removed
from the WAKEUP system. Use only the operator commands
shown in OPERATE.DOC
MARK_OLD = GO
RELOAD_MSG_FILE = GL
CLEANUP_BIDS = GI
Message 117 is sent at end of reverse forward. If you want
to send *** DONE, it should be here. If you want the RLI
signoff then make message 117 null.
Release 2.6 -> Release 2.8
Added messages : 118 to 121
Added to PARMS.BB
SEND_WP_TO_BBS -- Place to send WP reports
HOME_BBS_EXPIRES -- Number of days until HOME BBS
registration expires
BID_SIGN -- Call sign to use for BIDS if
different from BBS call
AUTO_HLOOKUP -- Do HLOOKUP before each forward
cycle
Release 2.8 -> Release 2.9
==> You must alter MAX_TASKS. Overhead tasks no longer
count. MAX_TASKS is now the maximum number of users you
want to allow connected at one time.
==> The format of the HELP file has been changed. The
separator line know has three tokens instead of one.
The middle token is a wildcard matching string. See
HELP.BB for details.
Changed message : 24, 93
Added messages : 123 to 128
Changes to PARMS.BB
LOG_FILE changed to weekly, daily, or monthly cycles
Added to PARMS.BB
DFLT_PAC -- Default packet size per port
NO_BINARY -- Turn off binary transfer for a
port
PERSONAL_BBS -- Mark as personal BBS
ALTERNATE_HEADER -- Alternate header feature
BULLETIN_FWD_STOP -- Stop old bulletins from
forwarding
DEFAULT_EXPIRATION -- Default expiration date for
messages
During BBSETUP, you might see the error message:
--> You cannot specify 'broadcast_path' or 'call_set' on a
modem port.
--> You cannot specify 'answer_on_ring' on a non-modem port
Release 2.9 -> Release 2.10
Added to PARMS.BB
SEND_SID_ALWAYS -- Will always send an SID (al la
W0RLI) on signon.
Release 2.10 -> Release 2.11
==> You must alter your ROUTE.BB for hierarchical addresses.
See HIER.DOC about the use of the \
Changed messages : 4
27
29 <-- You must change this message
31
64 <-- You must change this message
78
Added messages : 129 to 155
Added to PARMS.BB
NEW_USER_TRANSPARENCY -- Set the new user's transparency
mode for a port
NEW_USER_SCREEN_LENGTH -- Set the new user's screen length
SYSOP_PASSWORD_FILE -- Points to remote SYSOP passwords
ACTION_FILE -- Points to action file
BLANK_TO_B -- Convert "S" to "SB"
DEFAULT_FORWARD_ORDER -- Controls default forwarding order
for a port
REJECT_ACTION -- Sets how to handle rejects for a
port
LANGUAGE LIST -- List of languages that are
supported (See LANGUAGE.DOC)
DEFAULT_LANGUAGE -- Sets default language for a port
NO_LANGUAGE_PROMPT -- Don't prompt user for language
setting at register time
NEW_USER_L_TIME -- Specifies length of tiem a new
user will see when he executes
the "L" command.
BLANK_TO_BBS -- Specifies what @ bbs should be
used if user doesn't give one on
command
AUTO_SET_TO_BBS -- Automaticaly set to TO_BBS from
info in the user file
Removed from PARMS.BB
CHANGE_DEST -- Use the action file (see
ACTION.DOC) for same effect
SAME_DISTRIBUTION -- Ditto
The "C" search command has been changed. Previously it
searched for P and F messages. Now you can do this via P &
F. The "C" search checks the user class so you can control
things in ACTION.BB based on user class.
To forward to a station, that station must now be designated
a BBS of a personal BBS. Use the EU command and set the
proper flag.
B flag -- Old BBS programs that don't have the [xxx] info
A flag -- Advanced BBS that does send [xxx]
P flag -- Personal BBS.
Also see MODE.DOC, ACTION.DOC, and LANGUAGE.DOC
1.9 FILES SUPPLIED WITH BB:
----------------------------
This is a list of files for the AA4RE Bulletin Board Program
V2.11
Copyright 1988, 1989, 1990, 1991 by H. Roy Engehausen. All rights
reserved.
This software may be freely distributed and used, but it may not
under any circumstances be sold by anyone other than the author.
It may be distributed by a commercial company as long as it is for
no cost.
README -- Informaion on service, updates, etc
COPYRITE.DOC -- The copyright statement
Executeable
BB.EXE -- The main line
BB.OVR -- Overlay file for main line
BBSETUP.EXE -- Process Parameters
BBSETTNC.EXE -- Initializes the TNCs
BBCOLOR.EXE -- Displays color numbers
BBMCVT12.EXE -- Convert message file from V1 to V2
BBUCVT12.EXE -- Convert user file from V1 to V2
BBMFIX.EXE -- Fixer for bum message file
BBUFIX.EXE -- Fixer for bad user file. Also does other
management tasks
BBEGA43.COM -- Put EGA into 43 line screen mode
BBEGA25.COM -- Put EGA into 25 line screen mode
BBEIN.EXE -- Utility to modify editor keys
MBBIOS.ZIP -- Version 3.4 -- Unpack to get MBBIOS
This may not be included
Control files
PARMS.BB -- Sample parameter file. See PARMS.BB
PATH.BB -- Sample PATH file. See FWD.DOC
ROUTE.BB -- Sample ROUTE file. See FWD.DOC
WAKEUP.BB -- Sample WAKEUP file. See WAKEUP.DOC
HLOOKUP.BB -- Sample HLOOKUP file. See HIER.DOC
ACTION.BB -- Sample ACTION file. See ACTION.DOC
Messages, etc
HELP.BB -- Help file
INFO.BB -- Station data
MESSAGE.BB -- Messages
MESSAGE.DOS -- DOS messages
Documentation:
FILES.DOC -- This file
ACTION.DOC -- How the action file works
AEAHOST.DOC -- Info on commands for the PK87/PK88/PK232
when running with the AEA EPROMs as it comes
from the factory.
BBMFIX.DOC -- How to clean up your msg file
BBUFIX.DOC -- How to clean up your user file
BUG.DOC -- Problems and what to do
CAPACITY.DOC -- How much can BB run?
CC.DOC -- How carbon copy files work
CHANGES.DOC -- What changes were made
CONVERT.DOC -- How to convert between releases
COPYRITE.DOC -- The copyright
COUNTRY.DOC -- Abbreviations for hierarchical forwarding
DIS.DOC -- How distribution files work
EDIT.DOC -- Info on editor
FWD.DOC -- Setting up forward files
GLOSSARY.DOC -- Some terminology used elsewhere
G8BPQ.DOC -- Using the G8BPQ switch
HELP.DOC -- How the help file is set up
HIER.DOC -- How hierarchical forwarding works
INSTALL.DOC -- Installation
INTERNAL.DOC -- Programmer information on file formats
INTRO.DOC -- An intro to BB written by KL7GNG
LANGUAGE.DOC -- Multiple language support
LOG.DOC -- Log file formats
MBL.DOC -- Info for convertees from WA7MBL software
MESSAGE.DOC -- More on format of MESSAGE.BB
MODE.DOC -- Emergency mode of operation
MODEM.DOC -- Info on how to use the telephone modem port
MS400.DOC -- Notes for shared interrupt users.
OPERATE.DOC -- Operating
PARMS.DOC -- Parms file explained
PCPA.DOC -- Special notes for users of the PC*PA series
of cards
SEARCH .DOC -- How to specify searches on L, K, R, and
other commands
SERVER.DOC -- Info on using servers and DOS commands
TERMINAL.DOC -- Using BB in a terminal mode
TIPS.DOC -- Hints and kinks on how to use the BBS
USER.DOC -- User description
WAKEUP.DOC -- Executing wakeup commands
WILDCARD.DOC -- Wildcards and how they work
WISH.DOC -- Wish list for future releases
1.10 BB CAPACITY:
-----------------
The answer to the question "What is the capacity of BB" is very
complex and depends on:
1) Processor speed
2) DOS Memory size (EMS doesn't count)
3) Number and type of ports.
4) Number of messages kept in BBS
The latter two eat up memory which pressures #2. As far as I can
tell, here are some guidelines: 4.77 Mhz XT - 3 ports, about 6
connects. 10 Mhz AT - 4 ports, about 10 connects. You can trade
ports for connects. No one has run more than 4 ports so am not
sure what happens then. I assumed full 640K.
The DRSI PC*PA cards are a special case because the act like one
port. I would say a regular XT could run 4 ports and 8 total
connects before resource exhaustion.
Some memory numbers:
Each port requires about 15-18K (Not true for PC*PA)
Each connect requires about 12K
Each BID requires 13 bytes
Each message needs 250 bytes
1.11 BUG.DOC:
-------------
Invariably some bugs will pop up. Here's some tips on what to do.
Runtime error xxx at xxxx:xxxx
This error is being reported by Turbo Pascal. You can look up
the error number in MESSAGES.DOS to figure out what is going
wrong.
Runtine error 100 at xxxx:xxxx.
If this happens at startup, your MSG.BB file is probably bad.
See if you have a BBOLDMSG.BB hanging around from the last GM
command and try renaming it to MSG.BB.
Runtime error 201 at xxxx:xxxx.
You found a bug. See REPORTING ERRORS below
Runtime error 202 at xxxx:xxxx.
This a stack overflow and is probably a bug.
Runtime error 203 at xxxx:xxxx.
You are out of memory. One usual problem is that you scrolled
a window forward and then left it. New lines get tacked on the
bottom but the old ones can't go away because you have the
screen stopped.
Runtime error 209 at xxxx:xxxx.
Can't find/read BB.OVR.
Overrun
The RS-232 line to the TNCs dropped a character. This happens
when the computer gets so busy, it doesn't pull the characters
off fast enough. You will probably see one of these every few
hours. This seems to be normal. If you get a lot, you need to
slow down the TNC link and/or turn monitor off.
Timeout in block loop
BB did not receive anything from the TNC for 60 seconds. This
can be caused by RF or other noise getting into the RS-232
cables. Or maybe your TNC died
1.12 REPORTING ERRORS:
----------------------
Please report errors. It may be my problem. Send a message to
AA4RE @ AA4RE.#NOCAL.CA.USA.NA. Include:
1) The exact error message you got and whatever else weird
happened.
2) Your computer type and speed (example: AT clone 16 Mhz)
3) Your TNC layout (example: PK-232 on COM1)
4) Your BB and MBBIOS version numbers
5) Your DRSI software version # (if any)
You should at least receive an ACK from me.
1.13 BBMFIX.DOC:
----------------
This program is used to "fix" bad MSG.BB files. This should never
happen so let me know if you need to run this, why you did, and
what errors were reported.
At each error, you will be prompted as to wheter you want to delete
the message or not. Reply Y or N. You can reply X to bypass the
message but I don't recommend it unless you know why the errors are
occuring.
BBMFIX will find a GAP error. This is just a warning that the
message numbers jumped by 100. It may mean something bad or it
just may be that you have such a gap. The other error messages are
pretty obvious.
1.14 BBUFIX.DOC:
----------------
This is a fairly simple utility to help manage your user file.
Don't run it from the WAKEUP file.
BBUFIX will eliminate empty or old records. Old users are those
users that have not accessed the BBS in a number of days. The
program will rpompt you for the number of days to declare old the
following users:
1) New users -- These users have logged on only once
2) Unregistered users -- These users have logged on more than
once but have never registered
3) Registered users
BBS users and entries with a modem password will be ignored.
BBUFIX will also reset logged on user counts if you so desire.
2.0 INSTALLATION
-----------------
2.1 HARDWARE REQUIREMENTS:
---------------------------
You need the following hardware:
Computer -- IBM PC/XT/AT/PS2 or compatible (640K recommended)
TNC -- Must have WA8DED Host Mode EPROMS (available for
TNC-1, TNC-2s (+clones), AEA PK-87)
OR
-- AEA PK232, PK87, PK88
OR
-- DRSI PC*PA card and software
You need the following software:
DOS 3.0 or higher
1) Set up the TNCs. Use MBBCONFG and MBBIOS Version 3 or higher.
Make sure hardware handshaking is off and transmit buffering is
on. Speed setting is important. If monitor is on, you must run
at 4800 bps or higher otherwise 2400 (or maybe even 1200 is ok.
On an XT (4.77 Mhz), I could run two 4800 bps TNCs or four 2400
bps. Watch for overrun errors.
-----
NOTE:
-----
For the TNC-2, use WA8DED Version 2.3 or NORD><LINK version 2.1c.
The older WA8DED V2.1 will cause nothing but grief.
-----------------------------------------------------------------
2) Figure out which files are going where. I recommend that
messages go into their own subdirectory.
3) Modify the PARMS.BB file. See PARMS.DOC for an explanation of
this file.
4) Modify the INFO.BB file. This is straight ASCII text that will
be sent in response to the INFO command
5) Modify the MESSAGE.BB file as appropriate. Message 117 is sent
at end of reverse forward. If you want to send *** DONE, it
should be here. If you want the RLI signoff then make message 117
null
6) Modify the HELP.BB file as appropriate. Unless changing
languages you can probably leave this alone
7) Modify the MESSAGE.DOS file as appropriate. Unless changing
languages you can probably leave this alone
8) Make sure your CONFIG.SYS file in your ROOT directory has at
least FILES=25 and BUFFERS=32
Now you are ready to start. See STARTUP in OPERATE.DOC
BB now has an IMPORT and EXPORT commands that are compatible to
RLI/MBL (I hope). You can try and move existing messages with
these commands.
Some special needs:
1) You need to set each BBS that will be forwarding to you in
the user file. Do the following:
DU callsign
C B
A
(just enter by itself)
C B says class is a BBS
A says Advanced BBS
2) Several people have reported problems with BIDs. You should
have a distribution list (.DIS) for all bulletins EVEN IF THERE
IS ONLY ONE ENTRY. This will force a BID on the message and it
will be sent with a BID in all cases.
3) I recommend these setting for a starting point
bid_for_P = Y
bid_for_T = Y
bid_for_blank = Y
2.2 PARMS.BB FILE:
-------------------
name = Roy
location = Gilroy
bb_sign = AA4RE
bb_addr = AA4RE
bb_hier_addr = .#NOCAL.CA.USA.NA
bid_sign = AA4RE5
user_file = C:\BB\USER.BB
msg_file = C:\BB\MSG.BB
msg_dir = H:MSG\
message_list = C:\BB\MESSAGE.BB
route_file = C:\BB\ROUTE.BB
path_file = C:\BB\PATH.BB
help_file = C:\BB\HELP.BB
bid_file = C:\BB\BID.BB
bid_max = 750
log_file = H:WEEKLY
mon_file = C:\BB\MON.BB
dos_message_file = C:\BB\MESSAGE.DOS
wakeup_file = C:\BB\WAKEUP.BB
h_lookup_file = C:\BB\HLOOKUP.BB
action_file = C:\BB\ACTION.BB
trace_file = C:\BB\TRACE.BB
trace = Y
max_task = 4
no_fwd_kill = B_
bid_for_P = Y
bid_for_T = Y
bid_for_blank = Y
blank_to_p = N
allow_types = BPT
hold_duplicate = Y
hold_dup_header = 5
kill_userbbs_on_error = Y
rename_killed_msg = Y
monitor_time_stamp = Y
bbs_see_p = N
already_connect_check = Y
sysop_is_in = N
sysop_bell = N
loud_sysop_bell = Y
direct_video = Y
check_snow = N
time_updates_status = Y
own_call_in bcst = N
show_yap_states = N
show_binary_data = N
auto_hlookup = N
blank_to_bbs = Y
auto_set_to_bbs = Y
broadcast_interval = 5
new_user_l_time = 2
mon_list_length = 5
operator_color = 5
status_color = 82
disconnect_delay = 10
forward_delay = 10
bbs_to_fwd_time = -420
send_wp_to_bbs = WD6CMU.#NOCAL.CA.USA.NA
home_bbs_expires = 120
port
port_type = PC*PA-0
call_set = AA4RE-5
com = 255
max_pac = 230
speed = 4800
max_connect = 3
max_channel = 4
max_pending = 4
monitor = yes
time_out = 180
fwd_min = 0
bbs_only = N
remote_sysop = Y
upload_download = Y
broadcast = Y
port_name = 144.99 Mhz
broadcast_path = 0:QRM WB6ZVW
monitor_color = 121
endport
port
port_type = PC*PA-1
call_set = AA4RE-6
com = 255
max_pac = 230
speed = 4800
max_connect = 3
max_channel = 10
max_pending = 4
monitor = yes
time_out = 180
fwd_min = 0
bbs_only = N
remote_sysop = Y
upload_download = Y
broadcast = y
port_name = 223.100 Mhz
broadcast_path = 1:MAIL
monitor_color = 121
endport
port
port_type = MODEM_ATCMD
com = 2
max_pac = 230
speed = 2400
max_connect = 1
max_channel = 2
max_pending = 1
monitor = NO
time_out = 180
fwd_min = 1
minimum_class_allowed = new_user
remote_sysop = Y
upload_download = Y
broadcast = N
port_name = TELEPHONE
monitor_color = 121
no_out_fwd = Y
answer_on_ring = 3
initialize_file = MODEM.FIL
default_forward_order = TA
endport
port
port_type = PK-87-AEA
call_set = AA4RE-7
com = 1
max_pac = 80
speed = 4800
max_connect = 3
max_channel = 4
monitor = Y
time_out = 600
fwd_min = 30
minimum_class_allowed = BBS
max_pending = 2
remote_sysop = N
upload_download = Y
broadcast = Y
broadcast_path = unproto
port_name = HF NET
monitor_color = 11
no_out_fwd = N
no_busy_fwd = N
initiate_file = HFHOST.BB
endport
file_directory
directory_name = ROOT
directory_alias = NONE
directory_desc = ROOT
directory_path = ANY
class_for_upload = local_sysop
class_for_download = local_sysop
subdirectory_ok = YES
endfile
2.3 MESSAGE.BB FILE:
---------------------
This file contains most of the system's messages. The header of
a message is
: number class
number -- The number of the error message.
class -- The class of user to get this message
N = New
U = Unregistered user
O = Registered user
E = Expert user
B = BBS
R = Remote SYSOP
L = Local SYSOP
The message then follows. Blank lines are ignored. If you want
a blank in a message, use % in the first column. If you want to
sent a file instead of a message use an "@". Example "@INFO.BB"
The following tokens are substituted:
$A - @ BBS of the current message.
$a - Call of the originating bbs.
$B - Type of current message.
$b - BID of current message.
$C - The message type (by name).
$D - The current date.
$E - Title of current message.
$F - Name of the users port.
$f - Name of the "other" gateway port.
$G - TO of the current message.
$g - TO "H" address of current message.
$I - Sysops name.
$J - Date from current msg header
$j - Date from orig msg header
$K - Time from current msg header.
$k - Time from orig msg header.
$L - Number of the last message in the MailBox
$l - Date/time of user's last "L" command.
$M - Message number from current msg header.
$m - Message number from orig msg header.
$N - Number of active messages.
$n - Number of killed messages.
$O - Sysops callsign.
$o - Hierarchical address of this BBS
$P - FROM from current msg header.
$p - FROM "H" address.
$Q - Sysops QTH
$q - Language setting for this user
$R - Number of messages awaiting to be read by this user
(LM).
$r - Number of messages awaiting to be listed by this user
(L).
$S - Status of current message.
$s - Screen length of user.
$T - The current time.
$t - Task ID.
$U - User callsign.
$V - Software version.
$W - Users name.
$w - Screen width of user
$X - Date user last logged in.
$Y - Time user last logged in.
$Z - User's MAX PAC
$z - User's format
$1 - Parameter
$7 - Sound 440 Hz tone
$8 - Sound 440 Hz tone
$9 - Sound 440 Hz tone
$: - $:
When it comes time to send a message to a user, the program
searches starts at the user's class and searches towards "NEW
USER" to find the first message. Example: Message 2 has three
versions but none for EXPERT. If an expert user connects, it
will take the OLD USER version since this is the next level down.
A BBS however gets a real short one since it has its own message
for that level.
: 1 N
I don't understand that. Please try again.
%
: 2 N
Hello and welcome to the $O mailbox!
%
I see that you are a new user. If you want to find out about the
system, then enter INFO followed by a carriage return. If you
would like to register as a user, please type REGISTER. Help is
also available by typing HELP (that's pretty obvious). If you
are an experienced user of any of the standard mailbox programs,
this one is compatible.
%
: 2 U
Hello and welcome to the $O mailbox!
%
I see that you have logged on before but not registered as a
user. Please do so soon.
%
If you want to find out about the system, then enter INFO
followed by a carriage return. If you would like to register as
a user, please type REGISTER. Help is also available by typing
HELP (that's pretty obvious). If you are an experienced user of
any of the standard mailbox programs, this one is compatible.
%
: 2 O
Hello $W and welcome to the $O mailbox!
%
: 2 B
Hello!
: 3 N
Action complete
: 4 N
@INFO.BB
: 4 R
Last message : $L
Active messages : $N
Killed messages : $n
%
Messages awaiting to be read by you : $R
Messages to be listed by you : $r
: 5 N
Type H if you need Help>
: 5 E
GVPS ==>
: 5 B
=>
: 6 N
Please enter a subject for your message.
: 6 E
Subject?
: 7 N
Please enter your message now. When you are finished, type a
Control-Z followed by a carriage return.
: 7 E
Msg?
: 8 N
To who should this message go?
: 8 E
Addressee?
: 9 N
Invalid message number specified!
: 10 N
What message number did you want to read?
: 11 N
There were too many words in your response!
: 12 N
The qualifier (2nd letter) of the command is invalid!
: 13 N
Msg# TR Size To From Date/Time Subj
: 14 N
You specified an invalid LIST criteria
: 15 N
No message matches your search criteria
: 16 N
The message you want cannot be found or you are not allowed to
look at it.
: 17 N
There are no unread messages for you!
: 18 N
Message #$1 to be killed cannot be found or you are not allowed
to kill it.
: 19 N
The address portion of the command is incorrectly formatted.
: 20 N
Message $d has been killed!
: 21 N
What message number did you want to kill?
: 22 N
No data supplied so command canceled!
: 23 N
Message $d has been stored!
: 24 N
R:$J/$Kz @:$O$o $Q #:$M O:$P
: 25 N
The userid you specified could not be found!
: 26 N
You have mail waiting for you.
To list this mail, type LU
To read this mail, type RM
When you are done, erase the mail by typing KM
: 26 E
You have mail waiting for you.
: 27 N
MaxPac(P): $Z Format(F): $z Modem Password: $1
BBS, Delete, Home, Name, Remote SYSOP, eXclude, Zip, Local,
Class, Trans?
: 28 N
To Adr(H): $g From Adr (X) $p Bid(I): $b
T (To),B(@To),F(From),A(@From),I(Bid),J(Title),D(Type),S(Status)?
: 29 N
Call SS Last On Cnt PC TBRXDL Home Zip Name
: 30 N
Mailbox has not received any data from you in a while.
Connection severed.
: 30 B
Time out!
: 31 N
Invalid taskid specified!
: 32 N
Task not found
: 33 N
Enter your first name
: 34 N
Enter your home zip code
: 35 N
Enter the callsign of the bulletin board station where you check
in regularly to get your mail. Please don't enter your own call
even if you run a personal mailbox.
: 36 N
The data you entered is too long for the field.
: 37 N
%
Thanks for registering, $W. You are now an official user of this
mailbox.
%
The prompts are in "LONG" mode. If you know your way around most
mailboxes, you can shift to the "EXPERT" mode with short prompts
and messages by entering NE. Typing NE again will convert you
back to the LONG mode.
: 38 N
Invalid file name
: 39 N
The second operand is invalid
: 40 N
The date is in bad format. Should be YYMMDDHHMM
: 41 N
Not enough operands
: 42 N
You cannot kill message #$1
: 43 N
Help for the command you wanted could not be found.
: 44 N
You are now in new user mode.
: 44 U
You are now in unregistered user mode.
: 44 O
You are now in user mode.
: 44 E
You are now in expert mode.
: 44 B
You are now in BBS mode.
: 44 R
You are now in remote SYSOP mode.
: 44 L
You are now in local SYSOP mode.
: 45 N
This is $O Mailbox in $Q.
%
: 46 N
The BID on this message is a duplicate. It will be held for the
SYSOP's review
: 47 N
You are not permitted to use this port.
: 48 N
Files are available on the following topics:
: 49 N
Also known as:
: 50 N
No files are available to you
: 51 N
No files under that name are available to you
: 52 N
A backslash "\" is not permitted in this directory
: 53 N
File saved.
: 54 N
File already exists.
: 55 N
No files match the search criteria
: 56 N
Message #$1 has already been killed
: 57 N
JL - Past Connects
JN - Current users of mailbox
: 58 N
The SYSOP wishes to chat with you.
----------------------------------
: 59 N
You are back in normal mailbox mode
: 60 N
Wait while $O is paged. Enter anything to cancel wait.
: 61 N
Wait is canceled.
: 62 N
$O did not answer the page. If you wish, leave a message
via the command: SP $O
%
: 63 N
$O is not available now. If you wish, leave a message
via the command: SP $O
%
: 64 N
Msg# TR Size To From Date/Time Subj
: 65 N
Enter the number of the desired message list format.
0 = short
1 = long
: 66 N
You must supply a valid number
: 67 N
From :
: 68 N
To :
: 69 N
Date :
: 70 N
Msgid :
: 71 N
Subject :
: 72 N
Path :
: 73 N
Wildcards are not permitted on this command
: 74 N
Please enter the file now. When you are finished, type a
Control-Z followed by a carriage return.
: 75 N
Bye
: 76 N
Operation complete
: 77 N
Enter a message type (one character)
B = Broadcast
P = Personal to someone
T = NTS
: 78 N
The message type you entered was not an allowed type
%
: 79 N
The mailbox is unable to process your request because some
resource is temporarily unavailable. Please try again later.
: 80 N
This command cannot be executed because other users are connected
: 81 N
Invalid message number or range specified -- $1
: 82 N
Message $1 cannot be found or you are not allowed to look at it.
: 83 N
Operation halted
: 84 N
Mail for:
: 85 N
Start your $1 data transfer
: 86 N
$1 data transfer started
: 87 N
$1 data transfer complete
: 88 N
$1 abort sent
: 89 N
$1 abort received
: 90 N
$1 timeout occurred
: 91 N
$1 protocol error
: 92 N
Originator's $1 file info is:
: 93 N
Binary file transfer not permitted for either this topic area or
this port
: 94 N
This command cannot be executed without a "connected" task
: 95 N
Enter your call sign
: 96 N
Enter your password
: 97 N
Password Invalid
: 98 N
-- Outbound forward
: 99 N
(connect in progress)
: 100 N
-- Special task
: 101 N
-- Inbound forward
: 102 N
(reversed)
: 103 N
(talking to sysop)
: 104 N
No users on system
: 105 N
Private message
: 106 N
Bulletin
: 107 N
Traffic
: 108 N
Service message
: 109 N
Message
: 110 N
What message number did you want to reply to?
: 111 N
Hello and welcome to the $O Mailbox. You are on the telephone
modem port. You can change your password with the NP command.
%
Please register using the REGISTER command.
%
If you want to find out about the system, then enter INFO followed
by a carriage return. If you would like to register as a user,
please type REGISTER. Help is also available by typing HELP (thats
pretty obvious). If you are an experienced user of any of the
standard mailbox programs, this one is compatible.
: 111 O
Hello and welcome to the $O mailbox. You are on the telephone modem
port. You can change your password with the NP command.
: 111 B
Hello!
: 112 N
Binary download type is invalid.
: 113 N
Bad block number during $1 transfer
: 114 N
Bad block during $1 transfer
: 115 N
Re:
: 116 N
----- End of message $M from $P @ @a.$p -----
; Best leave message 116 blank for BBS
: 116 B
: 116 R
----- End of message $M from $P @ @a.$p -----
; Make this message null if you don't want to respond at end of
reverse forward
: 117 N
*** DONE
: 118 N
Please confirm operation. Yes (1) and No (0)
: 119 N
The switch is now on
: 120 N
The switch is now off
: 121 N
The type of file whose name you want to change is invalid
: 122 N
The type of file whose name you want to change is invalid
: 122 O
Its been a while since you registered at this mailbox. Would you
please reconfirm your data by reentering it? You can do this by
entering REGISTER at the next prompt.
: 123 N
Held for review -- Bulletin is old
: 124 N
Held for review -- Duplicate BID
: 125 N
Held for review -- Possible looping
: 126 N
Held for review -- Put on hold by operator
: 127 N
Held for review -- Distant system rejected message
: 128 N
R:$J/$Kz @:$O$o $Q #:$M O:$P $$:$b
: 129 N
Enter the number of line to send before pausing. If you don't want
a pause, use 0. Your current setting is $s.
: 130 N
Please enter your tactical call sign
: 131 N
Please enter a blank line to continue, anything else to halt output
: 132 N
Enter the number of characters wide that your screen is. Specify 0
if you don't want the BBS to worry about width. Your current
setting is $w
: 133 N
%
Your current screen height setting is $s.
your current screen width setting is $w.
%
: 134 N
This BBS is not accepting NTS messages right now
: 135 N
Enter a message type (one character)
Z = Life or death
Y = Network control (SYSOPS only please)
X = Emergency
W = Priority
V = Routine
T = NTS to out area
: 136 N
Space for files selected/Disk space free/Total disk space
: 137 N
The edit command is invalid
: 138 N
Bad operand on search -- $1
: 139 N
Held for review -- Operator requested
;----------------------------------------------------------------; Deny/Reject messages start here at 140 and go to 149. Only
; message 140 is used with a BBS. The message that will be sent
; when a deny action is taken is sent by the parameters in the
; ACTION.BB file. The text shown below are tied to the samples
; that are in my ACTION.BB
;-----------------------------------------------------------------
: 140 N
Message with this type and address are not allowed
; **** NOTE ****
; The first word of the next message must be REJECT -- don't change
; it. It can only be one line long.
: 140 B
REJECT -- Excluded by SYSOP
: 141 N
You have attempted to send a private message to the world. I think
you really want a bulletin. Try again with the SB command.
: 142 N
You tried to send a message to "ALL"
For bulletins, please use the TO address as a quick topic
selection.
Examples: SALE, INFO, WANT, AMSAT
: 143 N
For sale message must be sent to this state only. Use ALLCA or
ALLCAN instead of USA or ALLUS
; *** NOTE ***
; Please substitute your states distribution in place of ALLCA and
; ALLCAN.
: 144 N
You must be registered to send bulletins. Issue the REGISTER
command.
: 150 N
Held for review -- On REJECT list
: 151 N
Enter language to be used
A = English
: 152 N
Invalid selection
; This is the "MORE" continuing message. It can be used to output
; a screen clear to an ANSI user. I leave it null
: 153 N
: 154 N
You must enter a subject for this type message. NTS message should
show the city and phone number (only area code and prefix needed).
: 155 N
Flag changed for message $M
2.4 INFO.BB FILE:
------------------
-----
NOTE:
-----
This is a sample file. Edit for your own use.
---------------------------------------------
This mailbox is operated by the Garlic Valley Packet Society and
was donated by Scott, W3VS, Bob, WB6ZVW, and Roy, AA4RE.
The mailbox provides service to all amateurs in the Morgan Hill,
San Martin, Gilroy, and Hollister areas.
The Garlic Valley Packet Society is a special interest group of
the Garlic Valley VHF Society and meets each month on the last
Saturday of the month. For further details, contact Roy, AA4RE,
either via this mailbox or thru the local repeater,147.825 Mhz
(-600).
2.5 PCPA.DOC FILE:
-------------------
------------------------------------------------------------------
Only applies if you are using the DRSI software. If you are using
the G8BPQ software, see G8BPQ.DOC
------------------------------------------------------------------
Special notes for those using the DRSI PC*PA cards.
---------------------------------------------------
MBBIOS is not a requirement for these cards. It will not be
needed unless you will also have conventional TNCs.
The COM port number for PC*PA is always 255. This corresponds to
the software interrupt number used to communicate with TNCTSR-s.
During the initialization of your BBS , run TNCTSR-S. It will go
resident. I don't supply TNCTSR-S. Its on the diskette that comes
with the card. For most purposes, TNCTSR-S is quite sufficient
but if you have multiple cards, you might need TNCTSR- L.
The general startup sequence for PC*PA is:
CD [your DRSI directory]
TNCTSR-S {This loads the driver}
CD [your bb directory]
BBSETTNC {Set ports to Host Mode}
BB {Now run BB itself}
BB will support multiple DRSI cards (up to 4). To do more than
one card you will have to have version 1.3 or higher of TNCTSR-S.
You get this software from DRSI not me.
Remember that the MAX_CONNECT setting applies to all PC*PA ports
in total.
All the PC*PA ports should have identical MAX_CONNECT, MAX_CHAN,
MAX_PENDING, MONITOR, cmd callsigns. Only the settings from one
port will be used but you can't always figure out which one.
When using the terminal mode, you must explicitly define the port
you want to connect out on. Example:
T A2
<esc> C 1:N4CHV-3
2.6 TIPS.DOC FILE:
------------------
Tips on operating the BBS
Tying two BBS together by wire
------------------------------
Use the G8BPQ switch code and connect them using the BPQ NETROM
port. All you need is a null modem cable.
Stop private bulletins
----------------------
By putting DENY_NEW_MSG in your action file, you can stop users
from generating private bulletins. Example:
DENY_NEW_MSG 1 @ USA & P
This prevents anyone from generating a private message to @ USA.
Message 141 is generated (as signaled by the 1) and you can tailor
this to help educate the user.
Special menus for telephone callers
-----------------------------------
Want special menus for telephone callers. Use the alternate
language feature and set NO_LANGUAGE_PROMPT to "Y" in PARMS.BB.
The user will then be given the default language of the port.
Example of the PARMS.BB settings.
LANGUAGE_LIST = EM
NO_LANGUAGE_PROMPT = Y
On modem port
DEFAULT_LANGUAGE = M
Messages in MESSAGE.BBM will be given to modem users.
Getting rid of private bulletins
--------------------------------
A reminder that you might not want to exclude private messages to
SYSOP from using bulletin distributions. KJ6YT @ KB6GFT uses the
following in the ACTION.BB file:
NOREJECT > SYSOP & P
REJECT > ALL* & P
REJECT @ ALL* & P
REJECT @ ALL* & T
REJECT > SALE & @ ALLUS
REJECT > 4SALE
REJECT > SALE & @ SOCAL
REJECT > WANT* & @ ALLUS
REJECT > WANT* & @ SOCAL
; DENY MSG AREA
NODENY_NEW_MSG > SYSOP & P
DENY_NEW_MSG 2 > SALE & @ ALLUS
DENY_NEW_MSG 2 > 4SALE
DENY_NEW_MSG 2 > SALE & @ SOCAL
DENY_NEW_MSG 2 > WANT* & @ ALLUS
DENY_NEW_MSG 2 > WANT* & @ SOCAL
DENY_NEW_MSG 3 > ALL* & P
DENY_NEW_MSG 4 @ ALL* & P
DENY_NEW_MSG 4 @ ALL* & T
The above will let it accept messages "SP SYSOP @ ALLUS" but
not messages "SP ALL @ ALLUS".
See SYSOP messages as addressed to you
--------------------------------------
One of the wish list items is to have messages addressed to SYSOP
be handled exactly as if they were address to the bbs callsign.
Ed, W5TOO suggested the following from his ACTION.BB file:
CHANGE_ADR > SYSOP & @ W5TOO => W5TOO @ NONE
Limit a user to read only
-------------------------
Do you a have a non-ham that you want to let read messages but not
send one. W5TOO suggests
NODENY_NEW_MSG > W5TOO
DENY_NEW_MSG 9 < JOHN
where JOHN is the callsign that you assign the non-ham. This
limits him to sending messages to just W5TOO, the local SYSOP. You
could also use HOLD and review the message.
(Before someone jumps off the deep end, the non-ham would access
the system via modem and not via radio!)
Limit new users to read only except sending messages to SYSOP
-------------------------------------------------------------
The following lines in your action file will inhibit new or
unregistered users from entering messages except those addressed to
you or to SYSOP
NODENY_NEW_MSG C U & P & > SYSOP
NODENY_NEW_MSG C U & P & > AA4RE
DENY_NEW_MSG 6 C U
Need to test for an empty field?
--------------------------------
One SYSOP asked how to test for an empty field. @ NONE will
actually test for "NONE" and not an empty field. Try using the NOT
symbol coupled for a test for something. If you want to test for
a blank TO BBS field, try:
^ @ =*
Note the use of =*. = is any one character while * is anything and
could be nothing. Thats why ^ @ * won't work.
BREAK=ON in CONFIG.SYS
----------------------
WB2WPA tells about setting this option in his \CONFIG.SYS file.
When BREAK=ON, the editor will not work correctly. The Control-K-C
will be interpreted as a break, and drop you back into DOS.
Got a tip?
----------
Send it to AA4RE @ AA4RE for inclusion in the next release.
2.7 MS400.DOC FILE:
--------------------
This is information for users of the MS-400 four port serial card
but also applies to any board where the serial ports share
interrupts.
First install BB normally. If you encounter excessive overrun
errors (more than 1 every 15 minutes or so), modify your PARMS.BB
to use the INTERLOCK_COM parameter.
Example: Suppose COM3, 4, and 5 are shared. Your PARMS.BB would
look like:
PORT
...
COM = 3
...
ENDPORT
PORT
...
COM = 4
INTERLOCK_COM = 3
...
ENDPORT
PORT
...
COM = 5
INTERLOCK_COM = 3
...
ENDPORT
Each use of INTERLOCK_COM slows down the operation of the BBS so
use sparingly. If you have 3 ports shared, try just interlocking
two and leaving the other free. If you have 4 ports, interlock 2
and 2.
Four Port Example: COM3,4,5,6 are an MS-400 card
PORT
...
COM = 3
...
ENDPORT
PORT
...
COM = 4
INTERLOCK_COM = 3
...
ENDPORT
PORT
...
COM = 5
...
ENDPORT
PORT
...
COM = 6
INTERLOCK_COM = 5
...
ENDPORT
2.8 MBBIOS AND MBBCONFG:
------------------------
MBBIOS is an assembler language program that captures INT 14 (the
Com service call) and extends it with support for the 8250 async
port in buffered mode and adds support for the 8530 PACCOMM
PC-100 packet board. It is configured by the file MBCNF.ASM.
MBBIOS is a resident extension to DOS and only has to be invoked
once.
Copyright 1986, 1987, 1988 by H. Roy Engehausen. All rights
reserved. This software may be freely distributed and used, but
it may not under any circumstances be sold by anyone other than
the author. It may be distributed by a commercial company as long
as it is for no cost.
Permission is explicitly granted to use this code as a model for
other programs requiring interrupt driven serial I/O as long as
they carry this copyright notice and the imbedded constants
********************************
* File contents *
********************************
Files included are:
MBBIOS .COM -- The resident program. Comes configured for
COM1 and COM2 as standard ASYNC
MBBCONFG.COM -- Configuration control program
MS400 .MOD -- How you share interrupts on a DFI MS-400 card
This ARC file may contain the source code. If not, you can get
it by sending an SASE with a standard IBM/PC 5 1/4" 360K diskette
to me at 8660 Del Rey Court, Gilroy, California, 95020
8250con .asm -- 8250 hardware constants
8250ini .asm -- 8250 initialization
8250int .asm -- 8250 interrupt handler
8250svc .asm -- 8250 service call handler
8250svcx.asm -- 8250 service call handler (extended)
8250tmr .asm -- 8250 timer pop handler
qrqpcon .asm -- Quadram QuadPort hardware constants
qrqpini .asm -- Quadram QuadPort initialization
8530con .asm -- 8530 hardware constants
8530ini .asm -- 8530 initialization
8530int .asm -- 8530 interrupt handler
8530svc .asm -- 8530 service routines
8530tmr .asm -- 8530 timer pop handler
kiss .asm -- KISS constants
asmmb .bat -- BAT routine to assemble MBBIOS
mbbios .asm -- Main line
mbbcom .asm -- Control block format
mbbinit .asm -- Initialization routine
mbbinter.asm -- Interrupt handler
mbbload .asm -- Load MBBIOS
mbbsubr .asm -- General Subroutines
mbbtimer.asm -- Timer pop handler
mbbusvc .asm -- User request service routine
mbcnf .asm -- ASM file configured for COM1 and two PC-100
ports
********************************
* Configuring *
********************************
Use MBBCONFG to configure the tables inside MBBIOS with regards
to your particular hardware configuration. All ports which share
interrupts must be defined! Thus if you a port on a PC-100,
define both ports. If you use a port on a MS-400 with the diode
modification, you must define all the ports with diodes on them.
********************************
* USING *
********************************
Simply execute MBBIOS before running the program that needs it.
If you wish to unload MBBIOS for some reason, issue MBBIOS /U.
********************************
* Software Notes *
********************************
-------------------------------------
| ASYNC + Extended Support for BBS |
-------------------------------------
MBBIOS supports the standard INT 14 calls plus the extended ones
as defined by Jeff Jacobsen, WA7MBL for his BBS program. These
are explained below. AH=0 to AH=3 are identical to the IBM BIOS
definition.
AH = 0 Initialize
---------------------
This initializes the communications port. AL contains parity,
stop bit, and word length as in the standard BIOS call. On
return, AH contains the Line Status Register information (except
bit 0 - Data ready tells whether there is information in the
extended buffer rather than the SIO chip receive buffer). AL
contains the Modem Status Register.
The baud rate is selected via AL. If the high speed option is
off, the rate is a specified for the standard BIOS call. If the
high speed option is on the speed settings are from the alternate
table
High speed option off:
MSB LSB
7 6 5 4 3 2 1 0
----data-rate---- -Parity-- Stopbits --Word length--
000 - 110 X0 - none 0 - 1 10 - 7 bits
001 - 150 01 - odd 1 - 2 11 - 8 bits
010 - 300 11 - even
011 - 600
100 - 1200
101 - 2400
110 - 4800
111 - 9600
High speed option on:
MSB LSB
7 6 5 4 3 2 1 0
----data-rate---- -Parity-- Stopbits --Word length--
000 - 9600 X0 - none 0 - 1 10 - 7 bits
001 - 14400 01 - odd 1 - 2 11 - 8 bits
010 - 19200 11 - even
011 - 28800
100 - 38400
101 - 57600
110 - 115200
111 - 330400
The high speed option can be set either by MBBCONFG or by
software using AH=9 (see below).
AH = 1 Send Character
-------------------------
AL contains the character to send. Return values are the same as
above.
AH = 2 Receive Character
----------------------------
On return, AL contains the character received. AH contains the
composite receive LSR. This is done by ORing all LSRs on receive
interrupts together. Therefore the LSR returned does not
necessarily match the LSR for the character this routine
returns). Again, AH bit 0 indicates if there is additional
characters in the buffer. This routine does NOT timeout while
waiting for a character but will hang indefinitely waiting for a
character to appear.
AH = 3 Return Status
------------------------
Return values are the same as returned by the Initialize routine.
AH = 4 Inquiry
------------------
AH returns 0AAH. AL returns 055H. This call is used to see if
the MBBIOS driver has been loaded for a particular port.
AH = 5 Drop RTS
-------------------
This drops DTR (pin 20) and RTS (pin 4). Used to tell the TNC
not to send any more information. TNC-1 and PK-232 use pin 4 for
handshaking. TNC-2 uses pin 20 (don't ask me why!) No return
value.
AH = 6 Raise RTS
--------------------
Raise DTR and RTS. No return value.
AH = 7 Send Break
---------------------
Generates a "Break". Useful for getting TNC-2 or PK-232 into
Command mode from Converse or Transparent mode. (However, if the
TNC is sending characters at the time, they will be garbled.) No
return value.
AH = 8 Non-destructive Read
-------------------------------
Returns the next character in the buffer in AL without removing
it from the buffer. AH value defined as in AH=2 so you can use
the Data Ready bit to check to see if you really did get a
character.
AH = 9 Set/Get options
--------------------------
Set the current option byte to AL returning the old option byte
in AL. The option byte is defined as follows:
.......xB Transmit buffering (1 = on, 0 = off)
.....x..B Hardware handshaking (1 = on, 0 = off)
..x.....B High speed option (1 = on, 0 = off)
xx.xx.x.B Reserved. May be in use on other types of
devices
AH = A Write buffer
-----------------------
Sends CX characters starting at DI:ES. Upon return, DI will be
updated and CX will contain the unsent character count. Unsent
characters could result from either BUFFER FULL or hardware
handshake is OFF. AX will be set as in AH=3 (Status) above.
AH = B Read buffer
------------------
Receives up to CX characters starting at DI:ES. Upon return, CX
set to actual count read and DI is updated. If the buffer is
empty, return is immediate with CX = 0. On return, AL contains
the MSR and AH has the composite receive LSR. This is done by
ORing all LSRs on receive interrupts together. Therefore the LSR
returned does not necessarily match the LSR for the character
this routine returns). Again, AH bit 0 indicates if there is
additional characters in the buffer. This could happen if
characters were received between the time of the buffer movement
and the loading of the LSR into AH.
------------------------------------------
| PACCOM PC-100, PC-110, PC-120 support |
------------------------------------------
AH = 0 Initialize
---------------------
Parms
xxx..... = Data rate. Use same settings as IBM ROM BIOS.
300 bps = 2, 1200 bps= 4.
...x.... = Full duplex if 1. Half duplex if 0.
....x... = Error packet handler. 0 = throw away all error
packets.
.....xxx = Don't care. Use 0 for now!
Special case -- If AL = 0 then the COM port is closed!
The bits shown are used for parity on an ASYNC port and will be
zero for a KISS interface so it should be compatible with TCP/IP
usage of INT 14.
AH = 1,2 Send/Receive Characters
----------------------------------
See above. Packets are handled in KISS format. Note that all
commands which set time are rounded to the nearest 50ms value.
AH = 3 Status
-----------------
Returns AH.. AL=0
0.00000. = not assigned. Zero
.x...... = If 0 then packets remain in the transmit queue
.......x = If 1 then data await in the receive queue
These bits correspond to THRE and RDA so are compatible to ASYNC
ports
AH = 4 Inquiry
------------------
AH returns 0AAH. AL returns 055H. This call is used to see if
the MBBIOS driver has been loaded for a particular port.
AH = 10 Send a packet
------------------------
ES = Segment of buffer containing the packet to be sent. Note:
The buffer pointed to by ES will be freed when the packet is sent
unless this is turned off. It should be gotten via Opcode 12. It
must be 512 bytes long and conform to the layout of the buffers
Buffer Layout:
0 - 503 -- data (504 bytes long)
504 - 505 -- 16 bit data length
506 -- flags/status #1
x........ = If 1 then don't discard
this buffer after xmt.
.x....... = If 1 then this buffer
has been transmitted
..0000000 = not used
507 -- flags/status #2
000000000 = not used
508 - 509 -- User field. Not used by MBBIOS
510 - 511 -- MBBIOS uses as a pointer to next
buffer in chain
AH = 11 Receive a packet
---------------------------
Returns ES with segment of buffer containing the packet received.
If zero, no such packet exists.
AH = 12 Buffer management
----------------------------
If ES is zero then returns a buffer segment in ES. If ES is
non-zero then the buffer pointed to is freed.
AH = 13 Set TXD -- Time from RTS to start or packet
------------------------------------------------------
AL = new setting in clock counts (54.3 ms)
AH = 14 Set P (persistence) - Controls time from end of DCD-RTS
----------------------------------------------------------------
AL = new setting. 255 = 1.0
AH = 15 Set Slot time -- Controls time from end of DCD to RTS
----------------------------------------------------------------
AL = new setting in clock counts (54.3 ms)
AH = 15 Set CRC wait - time from start of last character to ----
-----------------------------------------------------------------
drop RTS
--------
AL = new setting in clock counts (54.3 ms)
Should be 5 character lengths minimum
3.0 OPERATION
--------------
3.1 STARTING (from a boot)
---------------------------
Run MBBIOS. It will go resident. This step only required for
OUTBOARD TNCs not using G8BPQ Switch.
Run TNCTSR-S. It will go resident. This step only required if
you have PC*PA card and are not using the G8BPQ switch code. I
don't supply TNCTSR-S. Its on the diskette that comes with the
card.
If you have modified PARMS.BB, run BBSETUP.
Run BBSETTNC. This will switch your TNCs to the HOST MODE if
they are not there already. You should see one of two things for
each TNC.
* JHOST1
TNC was not in host mode but is now
INVALID COMMAND
TNC was in host mode
For AEA TNCs with AEA EPROMS you will see
(smiley face)OGG(blank)(two-headed arrow)
If any of these lines is not the last line for any COM ports, run
BBSETTNC again. If still no luck, check the SPEED in the
PARMS.BB file, the TNC is on and ready, etc. If after an hour or
two you still can't get it to work, take two aspirin and drop me
a note.
**** DO NOT PROCEED TO NEXT SETUP UNLESS BBSETUP RAN OK ****
If BBSETTNC was OK, you can now run BB
3.2 STARTING (System has been up already)
------------------------------------------
If you have modified PARMS.BB, run BBSETUP.
If you are confident that things are still in HOST MODE, you can
skip running BBSETTNC but it won't hurt. If your TNCs have been
reset or are in an unknown state, then run BBSETTNC. Now run BB.
3.3 WINDOWS
------------
The screen is broken into four sections
+--------------------+
| upper |
| window |
+--------------------+
+ status line +
+--------------------+
+ lower +
+ window +
+--------------------+
+ input line +
+--------------------+
The status line shows the number of tasks running, the free
storage, the status of the current window, and the current
connected users.
The upper window can show either connected or monitor data. The
lower window shows either the operator window or the window not
being shown in the upper section.
The input line shows what the operator is typing.
The current window and input line disappear if the editor is in
use.
3.4 LINE EDIT KEYS
--------------------
These keys can be used to edit the line you are typing.
INSERT -- Toggles insert versus overwrite
mode. Insert mode is depicted
by the large BLOCK cursor
DELETE -- Deletes the character above the
cursor
BACKSPACE -- Deletes the character to the
immediate left of the cursor
LEFT ARROW and RIGHT ARROW -- Moves the cursor one step in the
direction of the arrow.
3.5 FUNCTION KEYS
------------------
The following function keys are active at all times (except when
in the editor).
F2 -- Erase the input area from the
cursor to the end of the line
F3 -- Immediate switch to the MONITOR
window. Will disconnect a
terminal session started with
"T" command
F4 -- Clear bottom window
F5 -- Swap monitor and connect windows
between top and bottom.
F7 -- Terminate terminal session.
F9 -- Retrieve command (clockwise)
F10 -- Retrieve command
(counterclockwise)
ALT-X -- Shutdown BBS
Up-Arrow -- Scroll the current bottom window
back one line
Down-Arrow -- Scroll the current bottom window
forward one line
Home -- Scroll the current bottom window
back to the top of the buffer.
End -- Scroll the current bottom window
forward to the bottom of the
buffer.
Page-Up -- Scroll the current top window
back one line
Page-Down -- Scroll the current top window
forward one line
Control-Page-Up -- Scroll the current top window
back to the top of the buffer.
Control-Page-Down -- Scroll the current top window
forward to the bottom of the
buffer.
All other function keys should cause a beep and a rewrite of the
status line.
3.6 OPERATOR COMMANDS
----------------------
Those available remotely have a "*". If you are on remote, you
must issue the appropriate "@" command to switch to remote sysop
mode before using anything but the "@" command. Note that all
commands are available via WAKEUP.
* @ -- Change to remote SYSOP
* @N -- Change to new user
* @U -- Change to unregistered user
* @O -- Change to user
* @E -- Change to expert
* @B -- Change to BBS
* @R -- Change to remote SYSOP (same as @)
@L -- Change to local SYSOP
* A -- Reload the action file and execute
all actions.
* AF -- Reload the action file and execute
MAKE_FILE actions.
* AL -- Reload the action file.
B -- Closes the operator window (same as
F3)
* C xxxxx -- Set the system clock. xxxx is the
date/time in format of YYMMDDHHMM.
If the command "C" alone is given,
the system responds with date/time.
* CF file1 file2 -- Copies a file. Can also be used
to print a file. To print, use
LPT1 or LPT2 as file2.
* CM msgno address -- Copy message "msgno" to "address."
Example CM 1234 W0RLI @ W0RLI
or
CM 1234 KB4T
Using the either CM cmds above, i.e., CM 1234 W0RLI @ W0RLI
or CM 12324 W4ZZZ will copy the msg, but not change the
original BID, which might cause problems if the copied msg
was going back thru the same bbs's as the original. All you
have to do is add the BID sign: CM 12324 W4ZZZ $ and the BID
would be changed to the new msg number!
* DU -- Display users
* DU call -- Display a particular user
EF filename -- Edit a file. Uses BORLAND's
BINARY EDITOR (part of the TURBO
PASCAL Editor toolbox) See EDIT.DOC
for details.
* EM msgno -- Edit a message's header
* ES server file parms -- Execute a server. Examp
ES REQDIR D:\PATH\T17.EXE
ES REQFIL DOS BATNAM
Use the second example for DOS commands and BAT
files. See info on SERVER.DOC
ET msgno -- Edit text of a message. Uses same
program as EF
* EU call -- Edit a user's information (See
USER.DOC)
* EX file parms -- Execute another program. Example:
EX D:PATH\T17.EXE
EX DOS BATNAM
Use the second example for DOS commands and BAT files.
See info in SERVER.DOC.
* EXPORT filename # message_list
-- EXPORT to a file the messages
indicated. If the file exists, the
messages are appended to it.
Example:
EXPORT A:A # 124 3465 22
EXPORTK instead of EXPORT means
kill message after export.
* EW -- Send any white page updates
* Fx msgno directory filename
-- Make file from message.
Directories are those shown by W. If the command is
just F, then include the X400 header. If the command
is FH, give the X400 header but show all BBS route
headers. If the command is FN, copy message as is. Can
also be used to print a message. To print, use LPT1 or
LPT2 as directory and omit the filename.
* FORCE task -- Issue an immediate disconnect to
the indicated task. To force a
user, get his task name from the
status line. Example: FORCE B3
GB -- Flip the SYSOP bell flag
* GC window filename -- Capture all new lines written to a
window to a file (or printer). The
window name must be OPERATOR,
CONNECT, or MONITOR. If the file
already exists, then the data is
added on the end. To terminate,
issue GC with no parms.
* GE -- Load a new message text file
(usually MESSAGE.BB)
* GF -- Tell BB that ROUTE.BB had been
changed.
* GH -- Do a lookup for extended addresses.
Command will normally resume where
it left off. GH 1234 will force
the lookup to start at message 1234.
* GI -- Reorganize BID file
* GK -- Force a wakeup cycle. Used to tell
BB that WAKEUP.BB has been changed.
* GL -- Reload the regular message file.
* GM -- Reorganize the message file. Will
not run if anyone else is connected
or if forwarding is in progress.
Killed files actually disappear now.
* GN xxxx yyyy -- Change a file name. xxxx is the
file you want to change. Allowed
are: PATH, ROUTE, MESSAGE,
WAKEUP, HELP, HLOOKUP. yyyy is the
name of the new file. Example:
GN ROUTE \ROUTE.NEW
* GO -- Mark messages as old. You can mark
messages by bid or by age.
GO BID pattern -- Marks a message old by
matching its BID to a pattern.
See WILDCARD.DOC for pattern info.
You can have multiple patterns.
GO TYPE msg_type age
-- Mark a message old is its type
matches and it is more than "age"
days old. Example:
GO TYPE B 15 PT 3 * 5
Mark B messages after 15 days, P or T messages
after 3 days and all others after 5 days.
GO {search} -- Marks a message old that matches the
given search. See SEARCH.DOC
GP -- Set the flag that suppresses showing
the prefix area 1 or Y is on. O or
N is off. If nothing specified, then
the flag will be flipped.
* GR -- Same as GM but renumber messages
too. Example:
GR 1234 will start renumbering at
1234.
GS -- Flip the sysop available flag. 1 or
Y is on. O or N is off. If nothing
specified, then the flag will be
flipped.
* GW window filename -- Capture the current contents of a
window to a file (or printer).
The window name must be
OPERATOR, CONNECT, or MONITOR.
If the file already exists, then
the data is added on the end.
GZ -- Set the show error during forward
script flag. 1 or Y is on. O or N is
off. If nothing specified then the
flag will be flipped.
* IMPORT filename -- IMPORT from a file. IMPORTE
instead of IMPORT means erase
file when done.
* K {search} -- Kill messages who match a search
(See SEARCH.DOC for details).
KH -- Kill all held files
KO -- Kill all old files
* KILL task -- Issue an immediate disconnect to the
indicated task and then destroy the
task without waiting for the TNC to
kill a user, get the task name from
the status line.
Example: KILL B3
* L {search} -- List messages who match a search
(See SEARCH.DOC for details). Some
useful examples:
LH -- Lists all held files
LO -- Lists all old files
* Mc filename address -- Make message from file. Message
class is "c". File name is fully
qualified. Address is who to
send it to. You can also add BIDS.
Example:
MB a:bbb ALL @ ALLCA
For Message Class Use:
MP (for personal)
MT (for traffic)
MB (for bulletin)
QUIT -- Immediate stop (not safe. Use only
in emergencies) Files will not be
closed nor will disconnects be
issued.
* REL {search} -- Release messages from hold. You can
use the same syntax as "R".
Examples:
REL 123 to 126
REL 123 146 156
REL H
* SHUT -- Shuts BBS down but only if not busy.
Same as ALT-X. See WAKEUP.DOC for
precautions to take when using this
command in a wakeup file.
* SHUTNOW -- Shuts BBS down. Same as ALT-X See
WAKEUP.DOC for precautions to take
when this command in a wakeup file.
T portchan -- Talk to indicated portchan. Puts
the operator in terminal mode.
All WA8DED commands areavailable.
To leave, use either F3 or F10.
(See TERMINAL.DOC for more info)
* UNKILL {search} -- Change messages from kill status.
You can use the same syntax as "R".
Examples:
UNKILL 123 to 126
UNKILL 123 146 156
UNKILL K
The last example will "unkill" all killed messages.
* X -- Start forward now
* X PORT p -- Start forward to a port now
* X path -- Start forward to a path now
* X path FORCE -- Start forward to a path and
connect even if no messages.
* XSTOP -- Force current forward cycle to
end. MUST BE IN CAPS!
* Z directory filename -- Erase file in a directory
3.7 REMOTE SYSOP PASSWORDS:
----------------------------
These are contained in file pointed to by SYSOP_PASSWORD_FILE in
PARMS.BB. Each password is on a seperate line. If a specific
remote sysop needs a password assigned, edit his user entry using
EU and then give the subcommand R {n} where n is the number of the
password you want him to use. Example: R 2. The password number
will show up under the "R" flag in the user display from DU and EU.
If you set R to zero then no remote sysop password would be needed.
The password will be prompted when the @R command is issued. Modem
users will not need a remote sysop password.
Remote sysop passwords must be at least 5 characters long but
should be much longer. When the user issues the @r command he will
be prompted for the password and given five numbers. The five
numbers correspond to letters in the password and this is the reply
that must be given.
Example:
If my password is ABCDEFGHI and the system says 1 3 5 7 9 then I
must reply ACEGI.
The system will continue to prompt for a password until a null line
is given. This allows you to answer with several bad passwords and
one good one. Someone monitoring the conversation would then not
know which was valid and which was not. This idea was adapted from
the NETROM system.
3.8 FORWARD.DOC FILE:
----------------------
To forward to a station, that station must now be designated a BBS
or a personal BBS. Use the EU command and set the proper flag.
B flag -- Old BBS programs that don't have the [xxx] info
A flag -- Advanced BBS that does send [xxx]. When in doubt,
use this flag
P flag -- Personal BBS.
Rather than the current way of having a list of destinations for
each route, a list of routes for each destination is used. The
data has been broken into two pieces. How to connect with a
distant mailbox is in the PATH file while the information on what
to send is in the ROUTE file.
3.9 The ROUTE File:
-------------------
A line from the ROUTE file is organized as:
W3IWI W0RLI WB6ASR 80 KE6BX
This says to send mail for W3IWI mailbox down the path named either
W0RLI, WB6ASR, and then KE6BX. The forwarding will be performed in
that order. W0RLI will be tried first and then WB6ASR. If a
message is more than 80 hours old, KE6BX will be used.
Wildcards are supported. For full details on these, see
WILDCARD.DOC. Just more than * is supported.
Once a message (or a member of a distribution list has been
selected, it cannot be selected for another route.
95020 AA4RE
95* W0RLI
A message with a route code of 95020 will go to AA4RE. All others
go to W0RLI. 95020 will not since it was selected for the AA4RE
route already.
The ROUTE files also allows ALIASES. These are of the form
SOCAL = K6IYK W6PW
Anywhere SOCAL appears in a route, K6IYK W6PW will be substituted.
So if the ROUTE file says
WB6YMH SOCAL
this is the same as
WB6YMH K6IYK W6PW
Aliases only affect the path to use. Aliases must be listed before
they can be used.
>>> Special cases:
If you send something to LEAVE then it will stay on the BBS and
not be forwarded. This is handy to prevent just certain
messages to stay.
Example:
95020 LEAVE
95* KE6BX
A message to 95020 will stay but all other 95anything will
go to KE6BX.
If the special @BLANK is used, this will match any message where
the @BBS field is blank. Combining LEAVE and BLANK make some
route tables easy:
AA4RE LEAVE
@BLANK LEAVE
* WB6ZVW
Any message addressed to @AA4RE stays. Any message
addressed to anycall without @ will stay. All others will
go to WB6ZVW. This is very handy for a small BBS where
everything but local calls go to one other BBS.
If you send something to ? then it will stay on the BBS and not
be forwarded. It will show up if you execute the L? command.
Example:
USA ?
A message to USA will be marked with the ? flag
3.10 THE PATH FILE:
-------------------
The PATH file has the entries that describe how to connect to a
mailbox we want to forward to. A typical entry:
PATH W0RLI B W0RLI
O TA
T 0000 0600
T 1000 1600 1 5
T 2200 2359
C W6AMT-10
PF 12
SC #SFO3
R* to *
SC SNTCRZ
R* to *
SC W0RLI
R* to *
PATH pathname port callsign force
"pathname" is the name of this path. Any arbitrary 12
characters will do. This matches the entry in the
ROUTE file.
"port" is the letter of the port to use to connect to
this mailbox on. If this is a DRSI card, you must also
code the port on the C(onnect) statement.
"callsign" is used to set certain parameters found in
the USER file (like MAXPAC etc). Any call can be used
here as long as the USER file contains the information.
This call is also used for REVERSE FORWARDING.
"FORCE" -- If the actual word FORCE appears after the
callsign, connect via this path even if no messages.
C(onnect) callsign
This is the actual connect command to be used. For the
DRSI card, don't forget to include port. Example:
C 1:AA4RE
P(ort) cmd
This is a command to be issued to this port. Can be
used to change all sorts of things. Be careful to
affect only this "channel". See the documentation for
your TNC as to what is allowed.
S(end) text
Send the text of this line to the distant station.
R(ecieve) pattern
If the next line received from the distant station does
not match this line disconnect. Full pattern matching
can be used. "R* to *" is great for the NETROM response.
Be careful when constructing your own pattern. It
starts immediately after the "R" without an intervening
blank.
O(Order) order_info
This controls how messages are ordered before
forwarding. "order_info" can have up to three
characters:
A -- Order by age with oldest first
T -- Order by type. T before P before B. This is
actually an alphabetical sort. Special case
of "P" with distribution list is same as "B"
S -- Order by size. Smallest first
D -- Order by day. Similar to A but only the day
matters and not the time. Oldest first.
R -- Reverse of D. Latest is first.
If you code the letters TA then the messages will be
sent by type then age within type. Thus the first
message sent will be the oldest "T" message. The order
will look like this:
oldest "T" message
.
newest "T" message
oldest "P" message
.
newest "P" message
oldest "B" message
.
newest "B" message
Note that using "A" as a parameter except as the last
letter is kinda useless. If you gave "AT" then messages
would be ordered by AGE then type. The probability of
two messages being the same AGE (down to the second) is
very very small. This is why the "D" is given. "DT"
would order by DAY and then TYPE within DAY.
Note 1: The "O" statement must be before any "C"
statements
Note 2: There is a DEFAULT_FORWARD_ORDER parameter that
applies on a port basis in PARMS.BB
T(ime) start_time end_time start_day_of_week end_day_of_week
...options...
Use this path during certain times.
start_time = start time we can use path. HHMM format
stop_time = stop time we can use path. If not given
then we can forward anytime after start
time.
start_day_of_week = Day of week we can use this path.
Sunday = 0, Monday = 1, etc. If
omitted, can use any day. If no
end_day_of_week given then path can be
used this day ONLY.
end_day_of_week = Last day path can be used.
options = options for more control.
HOUR x/y If the hour divided by x has
a remainder of y then forward.
Examples:
HOUR 2/0 Only even hours
HOUR 2/1 Only odd hours
HOUR 3/1 Every 3 hrs (0100 is ok)
ORDER ccc = Same as "O" but only for this time
period. Must be last thing on line.
SIZE nnn = Max size to forward in this time period
Note 1: All start/end are INCLUSIVE.
Note 2: You can have many "T" statements. If ANY of
them is true, you can forward.
Note 3: The "T" statement must be before any "C"
statements
Note 4: The ORDER operand will be wiped out by an "O"
statement so put "O" statements before "T"
Examples
T 0900 2300 Use this path from 0900
to 2300
T 0000 2359 1 5 Use this path from Mon to
Fri
T 0000 2359 0 6 HOUR 2/0 Any day but only even
hours
T 0000 0800 6 6 HOUR 2/1 Odd hours between
midnight and eight AM on
saturday only
T 1200 2359 0 6 ORDER DT Forward between noon and
midnigh on any day with
order sequence DT
T 1200 2200 0 6 SIZE 100 Forward between noon and
10 PM on any day but only
messages of 100 bytes or
less
T 1200 2359 0 6 ORDER DT SIZE 100
Forward between noon and
midnight on any day with
order sequence DT but
only messages of 100
bytes or less
-----
NOTE:
-----
To ensure proper operation, execute the GF command after updating
ROUTE.BB
-----------------------------------------------------------------
3.11 DIS.DOC FILE:
------------------
Distribution lists is how you send a message to more than one
mailbox. These are files of the type xxxx.DIS and reside in the
messages subdirectory pointed to by PARMS.BB
Example:
In PARMS.BB file
message_dir = \msgs\
The XXX.DIS will be co located in the \msgs\ directory area in
order for the .DIS file to work.
An example of a .DIS file would be:
(file name) ALL.DIS
WD4HIM
KB4LB
N4GXX
N5AUV
KB4T
The call sign is the only contents of the .DIS file.
As a message arrives, the SAME_DISTRIBUTION parameters in
PARMS.BB are checked. If needed the distribution list name is
changed from the default name of the @BBS. The a search is made
of the message subdirectory for a file of format xxx.DIS. If one
is found then a distribution list will be used.
Format of xxxx.DIS file
call1a call1b
call2a call2b
etc
call1a is the routing code to use for sending a message. This
will show up in the "L" command list and will be matched against
ROUTE.BB.
call1b is matched against the call of the station sending the
message. If they match, then this distribution list item is
marked as having already been forwarded to. If call1b is
missing, then call1a is used instead. call1b can actually be a
list of calls.
The .DIS file can also contain authorization lines.
OK call1 call2 call3 ...
If the originating station is in this list then the distribution
proceeds.
NOT_OK call1 call2 call3...
If the originating station is NOT in this list then the
distribution proceeds.
Multiple NOT_OK are permitted. The actual call1 call2 etc are
patterns (see WILDCARD.DOC)
Example:
NOT_OK N7XXX
GILROY AA4RE
FRESNO K6RAU N6OA
In the last example, a message that arrives from either K6RAU or
N6OA will be marked as having been forwarded to FRESNO.
3.12 ALLUS.DIS FILE:
--------------------
AA4RE
WB9TPG
Now SB ALL @ ALLUS. Two copies will be sent. One goes to AA4RE
and one to WB9TPG. These calls are looked up in the ROUTE.BB
file. It says AA4RE goes to KB7TV while WB9TPG goes to WB9TPG.
KB7TV and WB9TPG will be the calls used when looking in the
PATH.BB.
3.13 ROUTE.BB FILE:
-------------------
AA4RE KB7TV
WB9TPG WB9TPG
It says traffic for AA4RE goes to KB7TV while WB9TPG goes to
WB9TPG. KB7TV and WB9TPG will be the calls used when looking in
the PATH.BB. This way private messages (@AA4RE) will go first.
So.. The @ BBS field points to the .DIS file. The entries in
.DIS point to the ROUTE.BB file and ROUTE.BB points to
PATH.BB....
Sending Bulletins to a single station:
**************************************
If you are going to send bulletins to a single station, you
should create a .DIS file anyway. The benefits are that you will
keep all messages after forwarding (even private) and you will
not send the station a bulletin if he sent it to you.
Sending private mail First:
What I have set up looks like this;
USA.DIS
*******
GILROY WB6ZVW
FRESNO KE6BX
This sends a copy of anything @USA to GILROY and FRESNO. If I
receive the message from WB6ZVW then GILROY has already received
a copy so I don't send it back.
ROUTE.BB
********
WB6ZVW WB6ZVW
KE6BX KE6BX
GILROY WB6ZVW
FRESNO KE6BX
This says to send WB6ZVW and GILROY to WB6ZVW. Things will
forward in that order. This way private messages (@WB6ZVW) will
go first before things addressed to @ USA.
3.14 CC.DOC FILE:
-----------------
CC lists is how you send a message to more than one person.
These are files of the type xxxx.CC and reside in the messages
subdirectory pointed to by PARMS.BB
The difference between this and .DIS is that CC makes individual
copies of each message while .DIS distributes the same copy. New
BIDS are assigned each message unless the special word NONEW$
appears on the same line as the call.
As a message arrives, the SAME_DISTRIBUTION parameters in
PARMS.BB are checked. If needed the distribution list name is
changed from the default name of the @BBS. The a search is made
of the message subdirectory for a file of format xxx.CC. If one
is found then a distribution list will be used.
Format of xxxx.CC file
call1a @ call1b
call2a @ call2b
etc
This is actually the routing code to be used for the message.
The CC processor does an actual CM command for each copy to be
made using each line as the "TO" data so anything goes. The copy
can go to a .DIS file too. Hierarchial routes are allowed.
The .CC file can also contain authorization lines.
OK call1 call2 call3 ...
If the originating station is in this list then the distribution
proceeds.
NOT_OK call1 call2 call3...
If the originating station is NOT in this list then the
distribution proceeds.
Multiple NOT_OK are permitted. The actual call1 call2 etc are
patterns (see WILDCARD.DOC)
Example:
NOT_OK N7XXX
N6JQJ @ AA4RE.CA.USA.NA
N6XXX @ W0RLI.OR.USA.NA
3.15 WILDCARD.DOC FILE:
-----------------------
Wildcards are supported in many places. With wildcards we attempt
to match something with just more than a straight comparison.
Special characters in the pattern are:
* -- Matches 0 or more characters of any type
@ -- a..z, A..Z
# -- 0..9
+ -- A..z, A..Z, 0..9
? -- A-F, a-f, 0-9 (a hex number)
< -- a..z
> -- A..Z
$ -- =@#+?<>$
= -- Any one character
" -- Escape. The next character in the pattern much match
exactly. wild cards will not be interpreted.
( -- Group. A "(" starts a group and a ")" ends it. For
each group, there must be a matching character in the
string. Example: (abc) matches b. Wild cards are not
interpreted.
\ -- The string to the right of the \ is optional. It can be
present and if so must match. If it is missing, it is
a match. Example: a\a will match with a or aa but not
ab.
Examples:
95* -- Will match anything starting with 95 such as
95020, 95123, 95asb, and 95.
95=== -- Will match anything that starts with 95 and is 5
characters long. 95020 will match but 9502 will
not.
95### -- Will match anything that starts with 95 and has 5
digits. 95020 will match but 95ABC will not.
(WK)6* -- Will match anything starting with W6 or K6.
#SOCAL/.CA/.USA/.NA --
Will match with #SOCAL.CA or #SOCAL but not with
#SOCAL.XXX .
3.16 WAKEUP.DOC FILE:
---------------------
The WAKEUP file controls all timer events except forwarding.
Each line looks like this
881231/1306 ==/==/== 00:15 GI
The first part of the WAKEUP file tells when the thing last
happened. In this case it was December 31st, 1988 at 1:06 PM.
This time is written by the BB program after the event happens.
WHEN YOU ARE ENTERING AN EVENT FOR THE FIRST TIME, LEAVE IT BLANK
The first time I entered that line, I put
==/==/== 00:15 GI
The next two parts of the line tell when to do the event. If you
put an == in the date section then that matches that part of the
date.
Examples:
==/==/== means every day
12/31/88 means only on that day
==/01/== means the first of every month
Special meanings:
MONDAY
TUESDAY
WEDNESDY
THURSDAY
FRIDAY
SATURDAY
SUNDAY
WEEKDAY
WEEKEND
More examples:
WEEKDAY means MON thru FRI inclusive
After the date comes the time. If it is written as 01:30, that
means at 0130. If it is written as +01:30, than means every hour
and a half.
== is allowed as the hour/
Examples:
0300 means execute at 3AM
+1 means once an hour.
==:13 means execute every hour at 13 minutes past.
Note: 06:== is the same as 06:00 so don't use 06:==
The last section of the message tells what to do.Any command can be
entered.
Heres the sample WAKEUP file.
==/==/== 00:15 GI
==/==/== 01:30 GL
==/==/== 02:30 GO TYPE T 2 P 5 B 15
At 0015, the bids will be cleaned up
At 0130, the msg file will be reloaded
At 0230, we mark old messages. Marking is by type. NTS is old a
two days. Private is old at 5 days. Bulletins get old
at 15 days.
One final important note!!!!
If you use the built-in editor to update the WAKEUP_FILE, you
should execute the GK command from the console when you are done.
This will force BB to reload the wakeup data.
If you are issuing SHUT or SHUTNOW from a WAKEUP.BB file, check
your disk cashing programs carefully. There has already been one
fellow who had his disk cashing program delaying writes to the disk
and whet into a shutdown loop. Inhibit any write delay if you are
using SHUT or SHUTNOW in the wakeup file.
-----
MORE:
-----
The following message was provided to me by KB4T from his
archives>
SP SYSOP @ REBBS < KA3T $479_KA3T
LK list from WAKEUP.BB
R:900303/1404z @:KA3T.MD.USA.NA Mt. Airy #:479 O:KA3T
I want to share a hint with other sysops that Les WB4D and I
developed. I had the idea and Les showed me how to implement it.
We've been using it for the last few months and it has helped me
quite a bit.
If you have your system set up to delete killed messages daily
during the night I find it handy to have WAKEUP.BB save a list of
the killed first. I find this particularly handy when, in the
morning, I have a few HELD messages show with the LH command. By
using the EF command to review the file created overnight, I can
quickly see if another message forwarded thru my system during
night and was later killed. This helps to tell whether or not
the held message is held because it is a dupe of a previously
handled message, and whether or not the original forwarded thru
or not, as would be indicated by its PK type/status flag.
Here are the relevant lines in WAKEUP.BB:
900303/0433 ==/==/== 03:30 GO TYPE T 30 P 30 B 14 * 10
900303/0434 ==/==/== 03:45 KO
900303/0451 ==/==/== 04:40 GC CONNECT \BB\SYSOP\KILLIST.TXT
900303/0452 ==/==/== 04:40 LK
900303/0453 ==/==/== 04:40 GC
900303/0456 ==/==/== 04:45 GM
In this case, I have a directory SYSOP setup for sysop use. Note
that this file is appended to daily, so you either have to delete
it or copy it to another file. This helps keep the file small
enough so that I can use the built in editor and its Ctrl-Q-F
search command with the available memory without having to take
BB offline.
I generally use CF SYSOP\KILLIST.TXT SYSOP\KILLED.003, for
example, to save the file for the 3rd day of the month, then use
Z SYSOP KILLIST.TXT to delete the original file. I save the
KILLED.xxx files for about a week.
I find the message hold feature of BB extremely helpful to weed
out dupes. Hope you find this hint helpful to properly determine
what action to take on any of your held messages.
73, Rick KA3T @ KA3T.MD.USA.NA
---------
Yet MORE:
---------
SB REOPS @ FLA < N4KWB $446_N4KWB
WAKEUP Fwding Every 5 Min.
R:890522/1450z @:N4KWB.#SOFLA.FL.USA.NA Miami #:446 O:N4KWB
I found that WAKEUP.BB has the ability to speed up the FWD cycle
to much less than the 1/2 hour ( port A port B setting ). The
WAKEUP line W4NVU uses is: ==/==/== +00:05 X
This tells BB to start forwarding every 5 minutes if there is
traffic to move out. You can also make it selective by path:
==/==/== +00:05 X WB4TEM
This will say to send anything routed the WB4TEM every 5 minutes.
If this is too rich for your blood you can set the timer to
something more than 5 minutes but it sure works well here at
W4NVU !. A user can enter a message to W6XYZ @ W6ABC and have it
move off the board in 5 minutes. Same goes for NTS Traffic. It is
often the case that the first piece of mail entered goes off the
board before the user finishes typing the second message. Good
idea to be selective where you are forwarding to a NON-MULTIPORT
BBS. They might not appreciate the randomness of your connect
times.
==/==/== +00:05 X WB4TEM FORCE ; is also supported. ( Demand RVS
; FWD )
73 Harold....N4KWB @ W4NVU
3.17 TERMINAL.DOC FILE:
-----------------------
Using BB in terminal mode:
You connect to a port/channel by issuing:
T portchan
Example: T A3
Portchan consists of a letter for port and a number for channel.
If a user is currently connected on that portchan, you wind up
talking to him. If the portchan is unused, you can use it for
terminal work.
1) Precede all TNC commands with an ESCAPE key. If you were using
a DED mode TNC or card then this is the same as your usual
procedure. For AEA TNCs with the original EPROMS, you are in HOST
MODE and must use the special commands and formats. See
AEAHOST.DOC for details
2) Use two ESCAPE keys to issue BB Local SYSOP commands. (see
message below from N4KWB)If you issue a "D" for download, then
the file will also be copied to the portchan you are connected
to.
3) The upload/download commands change direction for the operator.
When you are in terminal mode, UPLOAD sends file to the distant
computer and DOWNLOAD gets them from the distant computer. Example:
If you are logged on to another AA4RE BBS system, you would issue
tyhe command to the distant system to do the DB and then do the
<esc><esc>DB for the local system.
Terminate terminal mode by either F3 or F7. See OPERATE.DOC
Example:
T A2
escC AA4RE ; Do an ESC and C without space then
callsign. All communications upon connect
must be in CAPS. Any port is available
except port 0(zero). That port is reserved
for monitor only.
----------
DRSI NOTE:
----------
There is an exception to the above if you are using any of the
DRSI cards. The "T A2" command has no effect on what port you
transmit on. The determining factor is the connect command:
T A2 (or T B5, makes no difference as long as the terminal
port is available)
Then;
C 0:N4KWB
You must specify the port that you wish to transmit out on. In
this case I specified port 0, or the first port on the DRSI
card(s)
---------
TERMINAL:
---------
The SYSOP has the advantage of referring to his BBS when in the
terminal mode. This is handy if he is connected to another
station and wishes to refer to a message on his BBS or just check
the latest message activity.
This is very well explained in the following received from N4KWB;
R:900915/1419z @:N4KWB.#MIAFL.FL.USA #:3104 [Miami] Z:33143
When operating terminal mode...i.e. " T A3 " etc. I was always
frustrated when connected in real-time QSO with another
key-boarder.
I would often need to refer to Msgs or their Msgs number ; or be
able to read a bulletin in reference to a subject discussed but
THOUGHT I had no control of the BBS when operating like this.
WRONG !.
Almost all BBS functions CAN be accessed when in live terminal
QSO if preceded by ESC ESC ( 2 escape characters ) before the
desired command.
WHEN IN LIVE TERMINAL MODE EXAMPLES:
-----------------------------------
ESC ESC LT ( Will list NTS traffic )
ESC LU ( Will list un-read mail to you )
ESC LY ( Will list all Msgs which have been read )
ESC ESC L@ AMSAT ( Will list all AMSAT BULLS )
ESC K@ AMSAT ( Will kill all AMSAT BULLS after entering
" 1 " ) ...........ETC.
I haven't found one console command that cannot be performed
yet...73 Harold
3.18 USER.DOC FILE:
-------------------
Editing a user to set parameters:
EU call
C x -- Sets the class. x should be one of the following:
N = New
U = Unregistered user
O = Registered user
E = Expert user
B = BBS
R = Remote SYSOP
L = Local SYSOP
F x -- Set display format. 0, 1 are only allowed values for x
H x -- Sets the user's Home BBS to x
M x -- Sets maximum packet size to x. O means port PACLEN will
be used.
N x -- Sets the users name to x.
Q x -- Sets language to x
S x -- Sets screen length to x.
W x -- Sets password to x
Y x -- Sets screen width to x.
Z x -- Sets the user's zipcode to x.
The following are switches that you invert by typing the proper
letter:
A -- Is an advanced BBS (BIDS are ok)
B -- Is a BBS
D -- Delete this user. Will happen after next start of BB
E -- Emergency mode user.
L -- User is local.
P -- Personal BBS.
R -- Enable remote SYSOP function. You can also include a
number to indicate a password. See OPERATE.DOC on how the
passwords work.
T -- Transparent. If off then each packet will end in a
carriage return. If on, then packets are usually full.
X -- User is not permitted to connect
You should set all BBS to:
C B (BBS Class)
A (Advanced BBS)
If a BBS is not BID equipped, use B for BBS instead of A
3.19 LOG.DOC FILE:
------------------
Log file format:
Byte 1-11 -- YYMMDD/HHMM time stamp.
Byte 12 -- task id in character format
Byte 13
'C' -- Link status message (connect)
Byte 14 = port
Byte 15 = channel
Byte 16-end = actual message
'D' -- Link status message (connect)
Same format as 'C'
number: Operations pertaining to a message
1234:R -- means Read of 1234
1234:F WA6NWE -- means Forward of message
1234 path WA6NWE
1234:K -- Means Kill of 1234
Note V2.2 and below had this as
1234::K
1234:S etc -- Means send of message 1234.
The full command as typed by
the user is shown. Note S could
also be small s
'L' text -- Line typed by user. Note V2.2 and below had no
L. Just the text as typed.
3.20 EDIT.DOC FILE:
-------------------
BB uses the Borland Binary Editor. Its very similar to Word Star.
You can customize the commands by typing BBEIN BB.OVR.
Editor commands
P = primary, S= secondary
-----------------------------------------------------------------
Character left P: <CtrlS> S: Left Arrow
Character right P: <CtrlD> S: Right Arrow
Word left P: <CtrlA> S: Ctrl Left Arrow
Word right P: <CtrlF> S: Ctrl Right Arrow
Line up P: <CtrlE> S: Up Arrow
Line down P: <CtrlX> S: Down Arrow
Scroll up P: <CtrlW> S:
Scroll down P: <CtrlZ> S:
Page up P: <CtrlR> S: Page Up
Page down P: <CtrlC> S: Page Down
-----------------------------------------------------------------
Cursor to left side P: <CtrlQ><CtrlS> S: Home
Cursor to right side P: <CtrlQ><CtrlD> S: End
Top of screen P: <CtrlQ><CtrlE> S: Ctrl Home
Bottom of screen P: <CtrlQ><CtrlX> S: Ctrl End
Top of window P: <CtrlQ><CtrlR> S:
Bottom of window P: <CtrlQ><CtrlC> S:
Top of block P: <CtrlQ><CtrlB> S:
Bottom of block P: <CtrlQ><CtrlK> S:
Previous cursor position P: <CtrlQ><CtrlP> S:
-----------------------------------------------------------------
New line P: <CtrlM> S: Enter
Insert line P: <CtrlN> S:
Toggle insert mode P: <CtrlV> S: Insert
Delete line P: <CtrlY> S:
Delete line right P: <CtrlQ><CtrlY> S:
Delete right word P: <CtrlT> S:
Delete current character P: <CtrlG> S: Delete
Delete left character P: <CtrlH> S: Backspace
------------------------------------------------------------------
Begin block P: <CtrlK><CtrlB> S: F7
End block P: <CtrlK><CtrlK> S: F8
Mark current word P: <CtrlK><CtrlT> S:
Toggle block display P: <CtrlK><CtrlH> S:
Copy block P: <CtrlK><CtrlC> S:
Move block P: <CtrlK><CtrlV> S:
Delete block P: <CtrlK><CtrlY> S:
Read file into window P: <CtrlK><CtrlR> S:
Write block to file P: <CtrlK><CtrlW> S:
Print marked block P: <CtrlK><CtrlP> S:
-----------------------------------------------------------------
Set marker 0 P: <CtrlK>0 S:
Set marker 1 P: <CtrlK>1 S:
Set marker 2 P: <CtrlK>2 S:
Set marker 3 P: <CtrlK>3 S:
Jump to marker 0 P: <CtrlQ>0 S:
Jump to marker 1 P: <CtrlQ>1 S:
Jump to marker 2 P: <CtrlQ>2 S:
Jump to marker 3 P: <CtrlQ>3 S:
-----------------------------------------------------------------
Find pattern P: <CtrlQ><CtrlF> S:
Find and replace P: <CtrlQ><CtrlA> S:
Find next P: <CtrlL> S:
-----------------------------------------------------------------
Tab P: <CtrlI> S: Tab
Toggle autoindent mode P: <CtrlQ><CtrlI> S:
Toggle fixed tabs P: <CtrlO><CtrlT> S:
-----------------------------------------------------------------
Exit editor (with save) P: <CtrlK><CtrlD> S:
Exit editor (without save)P: <CtrlK><CtrlQ> S:
Restore line P: <CtrlQ><CtrlL> S:
Insert control char P: <CtrlP> S:
3.21 MBL.DOC FILE:
------------------
For those converting from a WA7MBL system to BB.
------------------------------------------------
-- Verbose read is RH
-- BIDS are tested for messages that you have already killed.
There is no need to keep a bulletin if you don't want it. The
BID.BB file keeps track of all BIDs. Is has a certain number
of entries that you set via MAX_BID in PARMS.BB and is
maintained by the GI command or CLEANUP_BID wakeup call. You
may have to experiment with this number to get the desired
number of days of retention. For example, 500 bids last about
15 days at my QTH. Each BID costs you 24 bytes of memory
space
-- Bulletins are distributed via distribution lists. See
DIS.DOC. If you distribute bulletins to just one station, you
should have a distribution list anyway. This is the way BB
determines what is a bulletin and what isn't. A "P" type
bulletin may be killed on forward unless you have a
distribution list.
3.22 HIER.DOC FILE:
-------------------
W0RLI, VE3GYQ, and N6VV have devised a scheme called hierarchical
addressing. Here's their description of their idea:
-----------------------------------------------------------------
It has become obvious by now that the work-horse of our so-called
packet network is the venerable BBS program. In fact, some will
argue that it has been too successful. Every time that a band-aid
is needed to "fix" the network, it is applied through the various
BBS programs. It is probably fair to say that the maintenance of
the forwarding tables is a drudgery that most sysops could do
without. This point also under-scores a serious problem faced by
all networks: ROUTING.
With the introduction of W0RLI V7.00 and support for Hierarchical
routing designator's, we have an opportunity to improve traffic
routing particularly for international traffic. Since N6VV is at
the present time responsible for traffic to Asia and the Pacific,
and occasionally Europe and Africa, he has implemented some
Hierarchical routing designator's which will assist him in
international routing.
Using this structure mail can now be addressed :
JA1ABC @ JA1KSO.JPN.AS
or
VK4AHD @ AX4BBS.AUS.AU
[I have excerpted the codes into COUNTRY.DOC]
State and province codes shall be the recognized two-character
code established by the American and Canadian Post Offices.
These may also be found in the Callbook listings.
It is after we get down to the state/province/county level where
the trouble may begin. To understand why, we must examine how the
BBS code goes about matching things in the route. The first
principle is that it attempts to find a match between the items
in its forward file and the left-most item in the address field.
As an example, say that we send something to W0RLI @
W0RLI.CA.USA.NA, and that the only entries that we have in the
forward file are for CA. That match would be sufficient to allow
the message to be forwarded. If W0RLI were found, that entry
would take precedence (because it is more left in the field than
CA) and would of course also ensure delivery. The best way to
look at it is "W0RLI AT W0RLI which is in CA which is in USA
which is in NA". So far so good.
But the Japanese network wants to use area routing numbers. For
example, JA1ABC @ JA1KSO.42.JPN.AS ... and everyone says, "So
what, let them!" Of course, that is very mature of all of us, but
the trouble is that the 42 in that string may also match
wild-card ZIP codes that some folks keep in their forward file,
such as 42*. The solution we propose is to use an agreed upon key
character for designator's below the state and province level,
and we recommend the octothorpe, "#".
So now the above address would be JA1ABC @ JA1KSO.#42.JPN.AS .
Other examples could be:
1) W0RLI @ W0RLI.#SFO.#NOCAL.CA.USA.NA - W0RLI within SFO (San
Francisco) within North California, etc.
2) VE3BTZ @ VE3GYQ.#LONDN.#SONT.ON.CAN.NA - VE3BTZ at VE3GYQ in
London, in Southern Ontario, in Ontario, etc.
There is another added benefit to this scheme. It involves
Gatewaying between the BBS world and other networks, such as
TCP/IP via SMTP. Much of the pioneer work in setting up the
gatewaying protocols has been done by NN2Z, N3EUA, and PA0GRI,
amongst others. The W0RLI BBS package allows for the forwarding
of mail between the BBS world and the SMTP world. Of note is the
fact that the WA7MBL package has allowed such message exporting
and importing for some time now. This means that we can take
advantage of the TCP/IP host-names and their domain or
hierarchal format for forwarding. Thus it is possible to send
mail from the BBS to VE3BTZ as ve3btz@pc.ve3btz.ampr.org or from
SMTP to w0rli@w0rli.ca.usa.na and not have any ambiguity.
We expect that WA7MBL will also be implementing hierarchal
routing in the near future. This system is still compatible with
older style systems, as a system that handles hierarchal
forwarding identifies with the H feature letter: [RLI-8.00-CH$].
If it does not get an appropriate response, it uses the left-most
item in the "@ BBS" string as the "@ BBS" for the message.
The authors hope that this paper will serve as a starting place
for improved message routing by means of implicit routing.
Low-level (VHF) BBSs need only maintain state or province or
country codes for distant BBSs, and route such traffic to their
nearest HF Gateway. In turn, the HF station routes it to the
desired state, where the receiving Gateway station would have a
detailed list of the BBSs it serves.
Correspondence may be addressed to the address given at the start
of this paper, or to VE3GYQ @ VE3GYQ.ON.CAN.NA or N6VV @
N6VV.CA.USA.NA .
-------------------------------------------------------------
BB version 2.0 and higher support hierarchical addressing.
BB searches for ALL the words in the BBS and H fields for a match
in route file. Thus, given a message addressed to:
N6TFX @ AA4RE.#NOCAL.CA.USA.NA
we will search for #NOCAL CA USA and NA
The first match determines the path the message would take. I
could have a ROUTE.BB file like this:
CA\.USA\.NA W0RLI
NA N6VV
**** BB V2.11 change ****
*** NOTE THE USE OF THE \ ***
This prevents ambigious routings. The \ says that the String to the
right of the \ is optional. It can be present and if so must match.
If it is missing, it is a match. Example: a\a will match with a or
aa but not ab.
The CA.USA.NA would be the first match and the message sent to
W0RLI. If a message is sent to W3IWI @ W3IWI.MD.USA.NA, the NA
would be the first match and the message would be sent to N6VV.
If everyone used hierarchical addressing, your ROUTE.BB file
would be much smaller. You would only need ROUTE.BB entries for
local mailboxes and a few entries pointing to various forwarding
points.
One minor note. I showed #NOCAL in the example. You must be very
careful when putting this in your ROUTE.BB file. #NOCAL would
mean a NUMBER followed by NOCAL (See WILDCARD.DOC). Instead, use
"#NOCAL. The " is the escape that says that # is not a wildcard
character.
------------------------------------------------------------------
You should have the agreement of everyone in your state or
province to agree on a designator.
------------------------------------------------------------------
BB version 2.6 contains a server to automatically address
outgoing messages. The server is invoked by the GH command. The
file it works from is pointed to by H_LOOKUP_FILE in PARMS.BB The
format of the file is simple:
AA4RE .#SOCAL.CA.USA.NA
The first column is the call of the BBS. The second column is the
hierarchial address to use. The first column can support
wildcards so:
GB* .GBR.EU
will address all BBS starting with GB to .GBR.EU. The program
only works on mail that has not been read nor marked for
forwarding (the flag must be "N"). Only the @BBS field is
checked. In addition, no hierarchial address can be assigned to
the message already.
There are several servers around that support generating the
HLOOKUP file automatically from incoming headers and from the W9ZRX
list.
3.23 HELP.DOC FILE:
-------------------
Help file has sections:
The sections are broken by :..
Example:
:RN
: = section break
R = command help is for
N = class of user help is for
Wildcards are allowed for the second parameter. Thus:
: DB N
Help text for DB command
: D* N
Help text for everything but DB
3.24 MODEM.DOC FILE:
--------------------
Users
-----
For someone to be able to use the modem port, you MUST have given
them a password. Do an EU and use W to set the password. The user
can change it using the NP command over the modem port.
Modem Settings
--------------
The default settings are: 'T E0 V1 X1 Q0 S7=60 S0=0'
Do not change E0, Q0, V1, X1, or S0. All other settings are fair
game. You can make any changes automatic by putting them in the
INITIALIZE_FILE (see PARMS.DOC)
Modem switches
--------------
You should set your modem to hangup and enter command mode when DTR
goes low. On older modems, this is a hardware switch. On newer
modems, it is a software switch (ATSxx=y type).
Some users have reported intermittent crashes during initialization
with certain modems. A suggested fix is to
ECHO AT&C1&D2 > COMx
before bringing up the BBS. The above line can be put in a BAT
file. Substitute a real com number for the "x" above. This fix
will only work with COM1 and COM2.
User settings
-------------
Recommended user setting for their terminal programs are:
- Half duplex or Echo on -- Program must supply echo of what
is being typed.
Forwarding
----------
A typical forwarding script might be:
PATH AA6 B AA4RE
CT*70,8483865
R*call sign*
SAA4RE
R*password
SMYPASS
Note that this represents a change from previous versions. The
CONNECT message is now taken care of by the code. The system will
also change speed based on the connect message.
3.25 HF OPERATION:
------------------
For HF operation you will need different parameters for your TNC,
as the default parameters are for VHF operation. The easiest way
to accomplish this is to use the Borland Text editor that is part
of the BB system. Once you have the system up and running you
will have to create a file that will respond to the
"initialize_file = HFHOST.BB (or what ever you choose to name
that file).
One of the features of the text editor is that you can create a
character that represents the "esc" character. The file might
look like this:
HFHOST.BB
[AVON
[DW30
[HB300
[MX01
[TD03
Refer to the AEAHOST.DOC file for Host Mode Mnemonic Indicators
for AEA PK-87, PK-88 and PK-232.
Note that the "[" is the esc character represented by the Borland
editor. This is created by issuing <CTRLP> <ESC> <TEXT> from the
local keyboard. This can be used to change any parameters on your
TNC while in HOST MODE. Use caution as to what parameters you
change as some may conflict with the BB operation software.
If entering commands manually, always avoid using PORTCHANNEL 0 .
Use 1, 2, 3, etc, depending on how many port channels you have
available.
3.26 SERVER.DOC:
----------------
There are two commands for SERVERS
* ES server file parms -- Execute a server. Example:
ES REQDIR D:\PATH\T17.EXE
ES REQFIL DOS BATNAM
Use the second example for DOS commands and
BAT files.
* EL -- Same as ES but will automatically do
a GL after the server runs.
* EX file parms -- Execute another program. Example:
EX D:\PATH\T17.EXE
EX DOS BATNAM
Use the second example for DOS commands and
BAT files.
Both of these command execute DOS programs. In both cases, you
must specify a "file". This is the exact name (including
extension) of the program you want to run. Example XXX.COM,
D:\YYY.EXE. You must have the path if the program is not in the
current directory.
Alternatively, you can specify the magic word called "DOS". BB
will then execute the program called COMMAND.COM and pass the
parms to it. In this manner you can execute DOS commands, batch
files, etc.
The difference between EX and ES is that ES includes EXPORT and
IMPORT.
ES REQDIR D:\PATH\T17.EXE
is the same as
EXPORTK REQDIR.IN E REQDIR
EX D:\PATH\T17.EXE
IMPORTE REQDIR.OUT
E REQDIR means export messages to REQDIR and the @ field is
blank or this BBS.
When writing a server, try to keep to using IMPORT and EXPORT for
getting messages in and out of the BBS. This will allow you to
continue to run even after you change file formats.
3.27 SEARCH.DOC FILE:
---------------------
The BBS now allows you to choose messages which satisfy multiple
criteria, as well as messages which do NOT satisfy a selection.
This ability applies to the READ, KILL, LIST, EXPORT commands as
well as the action file.
NEGATION
--------
You have always been able to specify, for example, that you want to
see all messages of a type -- for example, to list all bulletins,
you issue the "LB" command. Now you can also specify that you want
to see all messages which are NOT of a type -- for example, to list
all messages which are NOT bulletins, use "L^ B".
You can use the "negation" symbol (^) to invert almost any search.
MULTIPLE SEARCHES
-------- --------
You can use the "and" symbol (&) to specify only those messages
which satisfy multiple search criteria. For example:
To list bulletins which are newer than October 1, 1990:
LB & D > 901001
To list unread messages which are NOT addressed to someone @AA4RE:
LN & ^ @ AA4RE
To list Private messages that are not to AA4RE or at AA4RE
LP & ^ @ AA4RE & ^ > AA4RE
Note that you can use negation as part of a multiple search.
TYPES OF SEARCHES
----- -- --------
_ -- Messages of type ' '
A -- Messages of type 'A'
B -- Messages of type 'B'
C x -- User class (Used by action file). Test is for this
user class or BELOW!
D > d -- Messages newer than date d (See note)
D < d -- Messages older than date d (See note)
E u -- Messages to a server. Same as > but @ must be blank
or this BBS
F n -- Forwarded messages greater than n
G u -- Checks logged on user. To be used in action file
H n -- Held messages greater than n
K n -- Killed messages greater than n
L n -- Last n messages
M u -- Messages of a specific user. Default is current user
N n -- Messages just sitting here unread greater than n
O n -- Messages of with "old" attribute & number greater n
P -- Messages of type 'P'
Q -- Read messages to a specific user
S s -- Messages with string in subject
T -- NTS messages
U u -- Unread messages to user u. Current user is default
Y n -- All read messages greater than n
< u -- Messages from a user u.
> u -- Messages to a user u.
@ b -- Messages to a user at mailbox b
% b -- Messages from a user at mailbox b
$ s -- Messages with string in the BID
+ n -- Messages in forwarding progress with number >= n
? n -- Messages with unknown forwarding with number >= n
- n -- Messages being forwarded right now with number >= n
. s -- Messages addressed to certain H addresses
# > n -- Messages with number >= n
# < n -- Messages with number >= n
Note 1: Date can be expressed as YYMMDDHHMM HHMM is optional.
Alternatively, the date could be #5 which is 5 days before today.
So, the command "LB & D > #5" means list bulletins less than 5 days
old.
In any search anything but a number is required, you can use a
wildcard. See WILDCARD.DOC for details. Example:
> AA4*
Will match to callsign that starts with AA4
3.28 IMPORT.DOC FILE:
---------------------
This file explains the IMPORT/EXPORT commands. EXPORT will put a
message from the BBS into a file that can be IMPORTed back into the
BBS. This is handy for exchanging messages between BBS systems via
diskette or between programs. The file format looks like a typical
user typing in messages. The first line is the actual send
command. The second line is the title. The third and subsequent
lines are the text of the message until either then end of the file
or /EX. If a message is terminated by a /EX, another message could
follow. Example
SP AA4RE @ AA4RE.#NOCAL.CA.USA < KB6GFT
This is the subject line
Now I have the text of the message
More text
Blank lines are included in the message
OK now to end it.
/EX
SP AA4RE @ AA4RE.#NOCAL.CA.USA < KB6GFT
This is the second message
Only one line of text
/EX
3.29 MODE.DOC FILE:
-------------------
The program now lets you select and deselect features on a
port-by-port basis. The idea for this came from the 1989 Loma
Prieta earthquake; during the aftermath, BBS operators spent a lot
of time manually filtering traffic -- the features described in
this section would have made the job much simpler.
The features you can select are:
FORWARD EMERGENCY TRAFFIC ONLY
FORWARD NTS TRAFFIC
ACCEPT EMERGENCY TRAFFIC ONLY
ACCEPT NTS TRAFFIC
ALLOW E-MODE USERS ONLY
ALLOW CALL SIGN CHANGE
There are parameters for each one pertaining to the system and to
the port.
FORWARD EMERGENCY TRAFFIC ONLY
------------------------------
Only traffic defined by the EMERGENCY_TYPES parameter in PARMS.BB
will be forwarded. The applicable parm is FORWARD_EMERGENCY_ONLY.
ACCEPT EMERGENCY TRAFFIC ONLY
-----------------------------
Only traffic defined by the EMERGENCY_TYPES parameter in PARMS.BB
will be accepted. A normal user trying to send other traffic will
be given an error message; if a BBS tries to send other traffic,
either the message will be rejected or the station will be
disconnected, depending on the setting of the REJECT_ACTION in
PARMS.BB. The applicable parm is ACCEPT_EMERGENCY_ONLY
FORWARD NTS TRAFFIC
-------------------
NTS traffic will be forwarded. The applicable parm is
FORWARD_NTS_OFF
ACCEPT NTS TRAFFIC
------------------
NTS traffic will be accepted. If this switch is off, then if a
normal user tries to send NTS traffic, he will be given an error
message. If a BBS tries to send NTS traffic, either the message
will be rejected or the station will be disconnected, depending on
the setting of the REJECT_ACTION in PARMS.BB The applicable parm is
ACCEPT_NTS_OFF
ALLOW E-MODE USERS ONLY
-----------------------
Only users with the "E" flag in their user directory will be
allowed to use the BBS. The applicable parm is
ALLOW_EMERGENCY_ONLY
ALLOW CALL SIGN CHANGE
----------------------
A user without the "E" flag in his user directory can change his
call sign once he is connected. The applicable parm in PARM.BB is
ALLOW_EMERGENCY_CHANGE. The purpose of this is to allow the use of
tactical addresses during an emergency. A typical scenario would
be as follows:
AA4RE is stationed at the Gilroy Emergency Operations Center. He
connects to the Emergency BBS but AA4RE is not an "E" mode user.
The BBS will propmt for a new callsign. He enters GILROY which is
an "E" mode user. This will then allow AA4RE to send and receive
messages for GILROY. Packets will have the proper ham callsign on
them for identification purposes.
The local ARES organizations (SF Bay Area) felt that this method
was preferable to using the tactical call sign as the call sign in
the TNC and having to beacon the ham callsign for ID purposes.
Setting the options
-------------------
Each of these options is controlled by a "system master switch" and
a "port switch". For an option to be effective, both the MASTER
and PORT switch must have the same value.
You can set these options directly in PARMS.BB or you can use the
EP command:
EP S -- Edit master switch list
EP x -- Edit port "x" switch list
You change switches by number. Specify the number by itself to
invert the setting of the switch. Specify the number followed by
ON or 1 to turn the switch on; specify the number followed by OFF
or 0 to turn the switch off.
There are parameters for each option for both the system and the
port in PARMS.BB. Its the same parameter in both places. You set
the parameter to either Y or N.
3.30 LANGUAGE.DOC FILE:
-----------------------
This describes how to get multipe language support.
The LANGUAGE LIST
-----------------
There is a parm in PARMS.BB called LANGUAGE_LIST. This should be
a list of letters (up to 8) with each letter standing for a
different language.
The first letter is the primary language. The other letters are
secondary languages. Example:
LANGUAGE_LIST = EIF
might be for English, Italian, and French. English would then be
the primary language and Italian and French would be secondary
languages. The letters can mean whatever you want. Numbers are
also acceptable.
MESSAGE files
-------------
The file pointer to by MESSAGE_FILE in PARMS.BB is the primary
language message file. This is usually MESSAGE.BB. The other
language file names are built from this one by adding the secondary
language letter to the end of the file name. From our example
above:
MESSAGE.BB = English
MESSAGE.BB + I = MESSAGE.BBI = Italian
MESSAGE.BB + F = MESSAGE.BBF = French
Message resolution
------------------
The actual text for a message will be found by searching the
secondary language file and then the primary. So if message #4 is
only in the primary file, then it will be used for all languages.
This way it is necessary only to have the messages that are
different in the secondary language message files. Messages such
as #24 (the forwarding header) only have to be coded once.
Language selection
------------------
A user that hasd not selected a language will be given the default
language for the port at the time he logs on. This could change
from session to session.
Users select their language using the NL command or as part of the
registration process.
Special character: A selection of "?" means the user wants the
default language of the port used.
3.31 ACTION.DOC FILE:
---------------------
The action file includes all sorts of things to be done with
messages. The operations are shown below. {search} is any search
for a message as specified in SEARCH.DOC. Comments are any line
that starts with ; or * There are two types of operations:
Immediate and Deferred. Immediate actions occur on messages being
received. Deferred actions occur only when the proper "A" command
is executed.
IMMEDIATE ACTIONS
--------- -------
HOLD {search}
This says to hold a message that matches the search. Files
will be marked as held by SYSOP. {search} is any search for
a message as specified in SEARCH.DOC.
Example:
HOLD < AA4RE
Holds all messages from AA4RE
HOLD_OLD {search}
This says to hold a message that matches the search but
reason will be too old rather than help by operator.
{search} is any search for a message as specified in
SEARCH.DOC.
Example:
HOLD < AA4RE
Holds all messages from AA4RE
REJECT {search}
This says to reject a message that matches the search. A
rejected message may not even arrive at the BBS. Also see
the parameter REJECT_ACTION in PARMS.DOC. {search} is any
search for a message as specified in SEARCH.DOC.
Example:
REJECT > SALE & @ USA
Rejects all messages addressed to SALE @ USA
Note: The first pass at a reject action occurs when just the
the send command is received. Some fields are not available
for testing like SUBJECT and FROM-BBS.
DENY_NEW_MSG {message_num} {search}
This says to not permit a user to originate a message at this
BBS. The {message_num} parameter indicates which message is
to be displayed if the {search} is met. It will be between
0 at 9. The real message number will be 140 + this parameter.
{search} is any search for a message as specified in
SEARCH.DOC.
Examples:
DENY_NEW_MSG 3 > SALE & @ USA
Rejects all messages addressed to SALE @ USA and uses
message # 143
DENY_NEW_MSG 2 C U & ^ > SYSOP
Reject any messages from new or unregistered users
unless addressed to SYSOPand uses message # 142
Note 1: The deny action will be checked twice. Once before
the subject is available and once afterwards.
Note 2: DENY_NEW_MSG should appear before REJECT and HOLD in
the ACTION.BB
CHANGE_ADR {search} => {address}
Changes an address. {search} is any search for a message as
specified in SEARCH.DOC. {address} is a standard packet
address in the form of "xxxx @ yyyy.zzzz". xxxx must be
supplied and valid. The others can be omitted but the
defaults may not fit what you want. Any of the three (xxxx,
yyyy, or zzzz) can be "=" which means leave the same as
before or the special word "NONE" which means to erase
this part of the address.
Examples:
CHANGE_ADR & @ USA => = @ ALLUS
CHANGE_ADR > 4SALE & @ USA => SALE @ =
DISTRIBUTE {name} {search}
Specifies which distribution/carbon-copy list is to be used.
If {name} is a simple word, it will follow the normal name
resolution. If {name} is an actual file, that will supercede
the name resolution system. {search} is any search for a
message as specified in SEARCH.DOC.
Examples:
DISTRIBUTE ALLCA @ ALLUS
Use ALLCA for messages addressed to ALLUS. First
ALLCA.CC will be tried then ALLCA.DIS
DISTRIBUTE C:\BB\DISTINFO\ALLCA.DIS @ ALLUS
Use the file C:\BB\DISTINFO\ALLCA.DIS for messages
addressed to ALLUS.
DEFERRED ACTIONS
-------- -------
MAKE_FILE {fileid} {search}
MAKE_FILE_REPLACE
MAKE_FILE_APPEND
Makes a file from a message. {fileid} is the file to be used
be used. Susbstitution parameters that are the same as for
messages (see MESSAGE.BB) can be used. The file must not
exist for MAKE_FILE. If MAKE_FILE_REPLACE is used, then if
the file already exists, it will be replaced. If
MAKE_FILE_APPEND is used, the the message will be added at
the end of the file; if the file doesn't exist, it will
be created. {search} is any search for a message as
specified in SEARCH.DOC.
Examples:
MAKE_FILE C:\RACES\$b > RACES & $ RACESBUL.*
Change anything addressed to RACES with a BID of RACESBUL
into a file and stick it into the RACES subdirectory
MAKE_FILE_REPLACE C:\ARRL\ARRLPROP $ ARLP*
A propagation bulletin will replace its predessor in the
file called ARRLPROP.
CLEAN_MSGS {type} {search}
Used for general message housekeeping. Its purpose is to
remove superceded messages like AMSAT orbitial data. {type}
indicates ARRL, AMSAT, RACES, RTTYDX, GENERATE, or DATE.
This refers to how the BID is used. Both RACES and ARRL bids
end in numbers but the ARRL numbers are recycled at the end
of the year. AMSAT news and orbital data have the format
that looks like xxx-ddd.vv where the applicable number (ddd)
is just in front of the "." RTTYDX uses a format of
xxxxxxxdddx. If the GENERATE {type} is used, the standarded
generated bid of dddddd_bbs is assumed. If {type} is DATE,
then only the last message received will be kept and the bid
is ignored. {search} is any search for a message as specified
in SEARCH.DOC.
Examples:
CLEAN_MSGS ARRL $ ARLP###
CLEAN_MSGS ARRL $ ARLD###
CLEAN_MSGS ARRL $ ARLS###
CLEAN_MSGS AMSAT $ ORBS-###.*
CLEAN_MSGS AMSAT $ ANS-###.##
CLEAN_MSGS RACES $ RACESBUL.###
CLEAN_MSGS RTTYDX $ RTDX####=
These examples clean away old ARRL DX bulletins, prop
bulletins, satellite bulletins, AMSAT orbitial data, AMSAT
news, and RACES bulletins.
Note 1: Both AMSAT and ARRL types have special code to cover
the yearend wrap (Example: when ARLD052 is followed
by ARLD001)
Note 2: GENERATE has special code to ignore the distant BBS
doing a message renumber.
ORDERING
--------
The first match that is seen will be acted on. Example
REJECT > SALE & @ USA
HOLD @ USA
A message addressed to SALE @ USA will be rejected because the
REJECT is seen first. The message addressed to ALL @ USA will just
be held.
Also, the order is import for CHANGE_ADR and HOLD. Example:
HOLD @ ALLUS
CHANGE @ USA => = @ ALLUS
Messages @ USA will NOT be held since the change action is executed
after the HOLD action.
One further example:
CHANGE_ADR > SYSOP & @ AA4RE => AA4RE
CHANGE_ADR @ AA4RE => = @ NONE
If a message comes in addressed to SYSOP @ AA4RE, it is
readdressed to AA4RE @ AA4RE. Why not AA4RE @ (blank)? The
first line satisfied the search so the search stopped. The
correct way to do this is:
CHANGE_ADR > SYSOP & @ AA4RE => AA4RE @ NONE
CHANGE_ADR @ AA4RE => = @ NONE
You must make all the action happen with the one line!
NEGATION
--------
Putting a NO in front of a word will negate it. Example:
NOHOLD > SALE & @ USA
HOLD @ USA
A message addressed to SALE @ USA will go thru because the NOHOLD
is seen first. The message addressed to ALL @ USA will be held.
Note: NOCHANGE_ADR does not require the => xxxx @ yyyy.ZZZZ
portion. Example:
NOCHANGE > ALL & @ USA
3.32 ACTION.BB FILE:
--------------------
; Remove the @ AA4RE
CHANGE_ADR @ AA4RE => = @ NONE
; These lines are the same as CHANGE_DEST in PARMS.BB
CHANGE_ADR @ USA => = @ ALLUS
CHANGE_ADR @ WA6E => = @ WA6NWE
CHANGE_ADR @ WB6ASR => = @ NONE
CHANGE_ADR @ ARRL => = @ ARL
; These lines are the same as SAME_DIST in PARMS.BB
DISTRIBUTE ALLCA @ ALLUSW
DISTRIBUTE ALLCA @ AMSAT
DISTRIBUTE ALLCA @ ARL
DISTRIBUTE ALLCA @ RLIBBS
DISTRIBUTE ALLCA @ ALLUS
DISTRIBUTE ALLCAN @ NCPA
; DENY NEW MSG should be before REJECT / HOLD
; No bulletins from unregistered users
DENY_NEW_MSG 4 B & C U
; Prevent people from sending things private when they should be
;public
DENY_NEW_MSG 1 @ ALL* & P
; Don't allow to ALL. Make the user give a meaningful to address
DENY_NEW_MSG 2 > ALL*
; Allow for-sale and wants to local area only
; I used *SALE* to catch 4SALE and other variations. Similiarly,
; WANT* catched WANTED
NODENY_NEW_MSG > *SALE* & @ ALLCAN
NODENY_NEW_MSG > *SALE* & @ ALLCA
DENY_NEW_MSG 3 > *SALE*
NODENY_NEW_MSG > WANT* & @ ALLCAN
NODENY_NEW_MSG > WANT* & @ ALLCA
DENY_NEW_MSG 3 > WANT*
; Now hold everything to @ ALLUS except for RACES bulletins and
; stuff from W6NLG (he's a good guy)
NOHOLD > RACES & @ ALLUS
NOHOLD < W6NLG & @ ALLUS
HOLD @ ALLUS
; Lost Southwest Division messages
HOLD @ ALLSWD
; These people need review
HOLD < A6AAA
HOLD < B6BBB
; Change anything addressed to RACES with a BID of RACESBUL
; into a file and stick it into the RACES subdirectory
MAKE_FILE C:\RACES\$b > RACES & $ RACESBUL.*
; General housekeeping
CLEAN_MSGS ARRL $ ARLP###
CLEAN_MSGS ARRL $ ARLD###
CLEAN_MSGS AMSAT $ ANS-###.##
CLEAN_MSGS AMSAT $ ORBS-###.##
CLEAN_MSGS DATE < WB5FIX & S SATELLITE BULLETIN #*
CLEAN_MSGS RTTYDX $ RTDX####=
3.33 HELP.BB FILE:
------------------
: _* N
For help on a specific command, enter H x where x is the command
for which you need help. For example, H R will send complete help
for the READ command.
Message commands: (K)ill (L)ist (R)ead (S)end
File commands: (D)ownload (U)pload (W)hat
Misc commands: (B)ye (H)elp (I)nfo (J) Who?
(N) Register (T)alk to SYSOP (P)arms
Further info: (@) At BBS
Other help topics available by issuing the H command followed
by the topic name:
SEARCH -- how to search for messages
WILDCARD -- how wildcards work
Issue H topicname
: WILDCARD N
Patterns are supported in many commands. With patterns we attempt
to match something with just more than a straight comparison.
Special characters in the pattern are:
* -- Matches 0 or more characters of any type
@ -- a..z, A..Z
# -- 0..9
+ -- A..z, A..Z, 0..9
? -- A-F, a-f, 0-9 (a hex number)
< -- a..z
> -- A..Z
$ -- =@#+?<>$
= -- Any one character
" -- Escape. The next character in the pattern much match
exactly. wild cards will not be interpreted.
( -- Group. A "(" starts a group and a ")" ends it. For each
group, there must be a matching character in the string.
Example: (abc) matches b. Wild cards are not
interpreted.
Examples:
95* -- Will match anything starting with 95 such as 95020,
95123, 95asb, and 95.
95=== -- Will match anything that starts with 95 and is 5
characters long. 95020 will match but 9502 will
not.
95### -- Will match anything that starts with 95 and has 5
digits. 95020 will match but 95ABC will not.
(WK)6* -- Will match anything starting with W6 or K6.
*ARRL* -- Will match anything with ARRL in it
: SEARCH N
The BBS now allows you to choose messages which satisfy multiple
criteria, as well as messages which do NOT satisfy a selection.
This ability applies to the READ, KILL, and LIST commands.
NEGATION
--------
You have always been able to specify, for example, that you want to
see all messages of a type -- for example, to list all bulletins,
you issue the "LB" command. You can also specify that you want to
see all messages which are NOT of a type -- for example, to list
all messages which are NOT bulletins, use "L^ B".
You can use the "negation" symbol (^) to invert almost any search.
MULTIPLE SEARCHES
-------- --------
You can use the "and" symbol (&) to specify only those messages
which satisfy multiple search criteria. For example:
To list bulletins which are newer than October 1, 1990:
LB & D > 901001
To list unread messages which are NOT addressed to someone @AA4RE:
LN & ^ @ AA4RE
To list Private messages that are not to AA4RE or at AA4RE
LP & ^ @ AA4RE & ^ > AA4RE
Note that you can use negation as part of a multiple search.
TYPES OF SEARCHES
----- -- --------
_ -- Messages of type ' '
A -- Messages of type 'A'
B -- Messages of type 'B'
C n -- Combine P and F
D > d -- Messages newer than date d (See note)
D < d -- Messages older than date d (See note)
E u -- Messages to a server. Same as > but @ must be blank
or this BBS
F n -- Forwarded messages greater than n
H n -- Held messages greater than n
K n -- Killed messages greater than n
L n -- Last n messages
M u -- Messages of a specific user. Default is current user
N n -- Messages just sitting here unread greater than n
O n -- Messages of with "old" attribute & number greater n
P -- Messages of type 'P'
Q -- Read messages to a specific user
S s -- Messages with string in subject
T -- NTS messages
U u -- Unread messages to user u. Current user is default
Y n -- All read messages greater than n
< u -- Messages from a user u.
> u -- Messages to a user u.
@ b -- Messages to a user at mailbox b
% b -- Messages from a user at mailbox b
$ s -- Messages with string in the BID
+ n -- Messages in forwarding progress with number >= n
? n -- Messages with unknown forwarding with number >= n
- n -- Messages being forwarded right now with number >= n
. s -- Messages addressed to certain H addresses
# > n -- Messages with number >= n
# < n -- Messages with number >= n
Note 1: Date can be expressed as YYMMDDHHMM HHMM is optional.
Alternatively, the date could be #5 which is 5 days before
today. So, the command "LB & D > #5" means list bulletins
less than 5 days old.
In any search anything but a number is required, you can use a
wildcard. Issue HELP WILDCARD for details. Example:
> AA4*
Will match to callsign that starts with AA4
: "@* N
@
Enter this symbol to indicate the BBS of the addressee, for
proper forwarding of the message to its destination. The
message, no matter to whom addressed, will be forwarded to the "@
BBS" location.
: B* N
B - Log off the MailBox.
Simply disconnecting has the exact same effect.
: DB N
DB type topic ffff.xxx
Download the file ffff.xxx for the topic requested. D is
for ASCII format. DB is for binary downloads.
To get a list of topics, use the W command.
The types for binary download are: XMODEM, XMODEMCRC,
YMODEM, YMODEM-BATCH (Alias YMBATCH), and YAPP
: D* N
D topic ffff.xxx
DB type topic ffff.xxx
Download the file ffff.xxx for the topic requested. D is
for ASCII format. DB is for binary downloads.
To get a list of topics, use the W command.
The types for binary download are: XMODEM, XMODEMCRC,
YMODEM, YMODEM-BATCH (Alias YMBATCH), and YAPP
DU callsign
- Will display user info on a specific call
: H* N
H - Gives a summary of the Help Subsystem.
H x - Gives a detailed explanation of a specific command or
topic.
: I* N
I - Gives a paragraph on the hardware, software,
and rf facilities of this MailBox station.
: J* N
J - Gives list of ports
Jp - Where p is a port identifier.
Gives a short list of stations recently heard on that port.
JL - Shows calls of stations recently connected to the MailBox.
JN - SHows calls of stations currently connected
: K* N
K # - Kills message number #.
The message number can also be a series of number (eg: 112
115 117) and/or a range of numbers (eg: 112 TO 115). A
series can contain a range (eg: 112 115 TO 117)
KM - Kills all messages addressed to you that you have read.
KT # - kills an NTS message.
: L* N
Generally lists messages in reverse order, newest to oldest.
"Private" messages not to or from you will not be listed.
L - Lists all new messages since your previous "L" command.
LM - "List Mine". Lists all messages addressed to you or by you.
LU - "List Unread". Lists all messages unread by you.
L # - Lists messages back to and including number #.
LL # - Lists the last # messages.
L> call
- Lists all messages to this callsign.
L< call
- Lists all messages from this callsign.
For a list of all the searches you can do, issue H SEARCH
: N* N
NE - Toggle your "expert user" status.
NH xxxxx
- Enter your 'Home BBS'. Aids in routing mesages to you.
NN xxxxx
- Enter your first name into user data base.
NZ xxxxx
- Enter your zip code into user data base.
NF x - Change the format of message listings.
Allowed values of x are 0 and 1.
NL x - Change your language setting (only works if your BBS
supports multiple languages)
NP xxxxx
- Change your telephone modem port password. Can only be
issue from modem port.
NS l w
- Change your screen size info. l = length, w = width
: P* N
PL - Flip switch which controls adding a LineFeed on the
modem port. Only works on modem port
: R* N
REPLY #
- Replies to msg number #.
R # - Read message number #.
The message number can also be a series of number (eg:
112 115 117) and/or a range of numbers (eg: 112 TO 115).
A series can contain a range (eg: 112 115 TO 117)
RH # - Same as "R" but forwarding headers are shown.
RM - "Read Mine". Lists all messages addressed to you but
unread
RU - Same as RM
RL # - Read the last # messages. Number assumed 1 if omitted
For a list of all the searches you can do, issue H SEARCH
: S* N
SR xxxx
Send a reply to message 'xxxx'. You could also say 'REPLY xxxx'.
You must enter the number
S? xxxx @ yyy
Send message type '?' to station 'xxxx', at optional BBS 'yyy'.
The MailBox will prompt for title and ask you to enter text. End
text entry with a ctrl-Z.
"?" is the "type" of message. They include:
B - Bulletins
P - Private. Only the addressee can read or list this type.
T - NTS Traffic
: T* N
T - Talk to SYSOP
: U* N
U topic ffff.xxx
UB type topic ffff.xxx
Upload the file ffff.xxx for the topic requested. U is
for ASCII format. UB is for binary uploads. The file
must not exist.
To get a list of topics, use the W command.
The types for binary upload are: XMODEM, XMODEMCRC,
YMODEM, YMODEM-BATCH (Alias YMBATCH), and YAPP
: W* N
W - Gives a list of topic areas available on the MailBox.
W topic
- Gives a list of the files for that topic
W topic ffff.xxx
- Gives a list of files for that topic that match
the given file specification.
W will show the file size
WD will show the file timestamp instead of the size
WX will include both the timestamp and size
3.26 G8BPQ SETUP:
-----------------
AA4RE BBS and the G8BPQ Switch.
*******************************
From version 3.23, the switch supports the AA4RE BBS. This has
been done by extending the PK232 host mode support, originally
written to support the G8UFQ BBS. The system allows the first
Virtual TNC port to support up to 8 users. The configuration I
used is detailed below:
In BPQCFG.TXT:
HOSTMODE=2 ; Note HOSTMODE replaces UFQBBS - for UFQ, set
; HOSTMODE=1
In PARMS.BB, the recommended port settings are below
port_type = G8BPQ_NODE
com = 2 ; use the first number in
; TNCPORTLIST
speed = 4800 ; not actually used
max_connect = 8 ; Up to 8
max_channel = 9
max_pending = 1
broadcast_path = MAIL ; is ignored - set in
; config.txt file
In PATH.BB
**********
PATH GB7DAD A GB7DAD FORCE
T 0000 2300
C SWITCH ; note initial C SWITCH
SC LRG7
R* to *
SC G4NAD-1
R* to *
Note that the remaining Virtual TNCs continue to run as normal.
If you are running under Desqview, you can still run PAC2 (or
even MBL/RLI!) in other windows. However, BB needs a LOT of
store - you need to use all the tricks described in the DV manual
to get a big enough window to run it effectively.
AA4RE BB and G8BPQ Configuration:
---------------------------------
There seems to be a lot of confusion within the Packet community
about how to configure the AA4RE BB and G8BPQ software so I have
included what I found to work on my system, in hopes that it will
provide some assistance to you, if you are running DRSI cards. I
can not provide any further assistance if you are running regular
TNC's.
This is what my configuration looks like. I am running an 80386SX
with 2 megabyte RAM and a 40 meg hard disk. This configuration is
for the DRSI PCPA cards (2) that I run my system on. I do NOT run
under Desqview.
; For Version 3.57 4 port configuration
;
;
; CONFIGURATION FILE FOR G8BPQ SWITCH SOFTWARE
;
; The program which converts this text file to binary
; form is currently very crude - be VERY careful when
; editing this file!
;
;
; The order of parameters in not important, but they
; all must be specified - there are no defaults
;
;
;
; Memory Usage. If EMS=1, the system will attempt to
; put its data area into EMS Memory. At the moment
; it makes no attempt to manage sharing of the EMS
; window, so you must not run any other software
; using EMS.
;
; It seems to work ok when used with Desqview, at least on my
; AST, but it is primarily intended for use with AA4RE BBS,
; which needs a great deal of space.
;
;
EMS=1 ; 0 = don't use EMS RAM
; 1 = EMS RAM in use
;
; Station Identification.
;
; If a user connects to the NODE Callsign or Alias, he is
; linked to the switch code, and can use normal NetRom/TheNet
; commands
;
; If he connects to the BBS Callsign or Alias he will be
; connected directly to a BBS port. If none are available, the
; connect will be rejected.
;
; Note that of you are running only a NODE (ie BBS=0), or
; or just a BBS (NODE=0), then you must still put in two pairs
; of calls, but they MUST be the SAME.
;
; If you are running both, the calls MUST be different
NODECALL=N4CHV-2 ; NODE CALLSIGN
NODEALIAS=OVDO
BBSCALL=N4CHV-3 ; BBS CALLSIGN
BBSALIAS=#OVDO ; BBS ALIAS
;
; 'ID' MESSAGE - SENT EVERY IDINTERVAL MINS
;
; WILL BE ADDRESSED FROM THE PORT CALLSIGN (IF DEFINED)
; ELSE FROM THE NODE CALL
;
; The following format allows KA nodes to include your system
; in their 'Nodes' lists.
;
IDMSG:
N4CHV Packet Switch/BBS Access System
N4CHV Operating System
Oviedo, FL
***
;
BEACON=0 ; IF SET TO 1, THE TEXT FROM THE BT COMMAND
; WILL REPLACE IDMSG (INTENDED MAINLY FOR
; RLI SYSTEMS)
UNPROTO= ; DEFAULT UNPROTO ADDR
; Setting a null value here enables the port-
; specific UNPROTO addresses from the PORTS
; config section
; 'I' COMMAND TEXT
;
; Note that the bit about needing a port param in connects is
; only necessary if you are running more that one (radio)
; port.
;
INFOMSG:
N4CHV Packet Switch in Oviedo, FL. This switch is operated
by the N4CHV Operating System.
N4CHV-2 is the NODE
N4CHV-3 is the Multiconnect BBS on 145.01/145.07/441.00/14.099
Mhz.
Commands are basically the same as NET/ROM, but to connect to
another normal station (not another node), you must specify a
port number before the callsign. Use PORTS command to list
available ports. The BBS command connects you to the associated
Mailbox.
***
;
; CTEXT - If specified, will be sent when someone connects to
; the NODE ALIAS at level 2. It is not sent on connects to the
; NODE callsign, as this could confuse BBS forwarding connect
; scripts.
;
CTEXT:
Welcome to N4CHV's Packet Switch in Oviedo, FL
Type ? for list of available commands.
***
; Network System Parameters
;
OBSINIT=5 ; INITIAL OBSOLESCENCE VALUE
OBSMIN=4 ; MINIMUM TO BROADCAST
NODESINTERVAL=45 ; 'NODES' INTERVAL IN MINS
IDINTERVAL=15 ; 'ID' BROADCAST INTERVAL (UK Regs
; require
; an AX25 ID every 15 mins)
;
L3TIMETOLIVE=10 ; MAX L3 HOPS
L4RETRIES=3 ; LEVEL 4 RETRY COUNT
;
; I have seen suggestions that L4TIMEOUT should be increased
; to very high values (even as long as seven mins). Although
; 60 may be a bit short in some cases, I STRONGLY advise that
; you dont go much above 120 secs unless you understand ALL
; the implications.
;
; I've set TTL and TIMEOUT to the values agreed by the latest
; SYSOPS meeting - this does not imply that I agree with them!
;
L4TIMEOUT=120 ; LEVEL 4 TIMEOUT
L4DELAY=10 ; LEVEL 4 DELAYED ACK TIMER
L4WINDOW=4 ; DEFAULT LEVEL 4 WINDOW
;
MAXLINKS=30 ; MAX LEVEL 2 LINKS (UP,DOWN AND INTERNODE)
MAXNODES=120 ; MAX NODES IN SYSTEM
MAXROUTES=30 ; MAX ADJACENT NODES
MAXCIRCUITS=50 ; NUMBER OF L4 CIRCUITS
minqual=10 ; MINIMUM QUALITY TO ADD TO NODES TABLE
BBSQUAL=255 ; BBS Quality relative to NODE - used to
; limit 'spread' of BBS through the network
; to your required service area. I've been
; asked to set a low default to encourage you
; to think about a suitable value. Max is 255
BUFFERS=255 ; PACKET BUFFERS - 255 MEANS ALLOCATE AS MANY
; AS POSSIBLE - NORMALLY ABOUT 130, DEPENDING
; ON OTHER TABLE SIZES
;
; TNC DEFAULT PARAMS
;
PACLEN=255 ; MAX PACKET SIZE
;
; PACLEN is a problem! The ideal size depends on the link(s)
; over which a packet will be sent. For a session involving
; another node, we have no idea what is at the far end.
;
; Ideally each node should have the capability to combine and
; then refragment messages to suit each link segment - maybe
; when there are more of my nodes about than 'real' ones,
; i'll; do it. When the node is accessed directly, things are
; a bit easier, as we know at least something about the link.
; So, from Version 3.11 onwards, there are two PACLEN params,
; one here and one in the PORTS section. This one is used to
; set the initial value for sessions via other nodes, and for
; sessions initiated from here. The other is used for incoming
; direct (Level 2 sessions. In all cases the TNC PACLEN
; command can be used to override the defaults.
;
; The main reason for changing this now was a request from
; someone wanting to run an HF port.
;
;
;
TRANSDELAY=1 ; TRANSPARENT MODE SEND DELAY - 1 SEC
;
; Level 2 Parameters
;
; T1, T2 and N2 are now int the PORTS section
;
T3=180 ; LINK VALIDATION TIMER (3 MINS)
IDLETIME=900 ; IDLE LINK SHUTDOWN TIMER (15 MINS)
;
;
; Configuration Options
;
BBS=1 ; INCLUDE BBS SUPPORT
NODE=1 ; INCLUDE SWITCH SUPPORT
;
HIDENODES=1 ; IF SET TO 1, NODES STARTING WITH # WILL
; ONLY BE DISPLAYED BY A NODES * COMMAND
;
;
;
; 'COMBIOS' Port definitions.
;
; This section defines the virtual TNC's that the code
; supports.
;
; I'm afraid this is now rather more complicated than it was!
;
; You can now define any COMBIOS port to run in normal (TNC2)
; mode, PK232 HOSTMODE (with varients for UFQ and AA4RE), or
; KISS mode. KISS mode allows you to run things like TCP/IP,
; STATS packages, PACSAT Telemetry decode, etc above the
; switch.
;
; The basic format is:
;
; TNCPORT
; COM=n ; COMBIOS port number
; TYPE=TNC2|KISS|PK232/AA4RE|PK232/UFQ
; KISSMASK=nn ; Required only for KISS
; APPLMASK=nn; Defaults to 1 (BBS)
; APPLFLAGS=NN; Defaults to 6
; ENDPORT
;
; TYPE defaults to TNC2. See file KISSMODE.DOC for full
; details of facilities available in KISS mode.
;
; APPLFLAGS controls whether the user's command line is passed
; to the application, and if the ** Connected to ' messages
; are sent to the user or the appl - see APPLS.DOC for details
;
;
; The two PK232 modes are equivalent to the old HOSTMODE=1 or
; 2, but can now be used on any port. See HOSTMODE.DOC for
; more details
;
; Don't try to define more than 16 ports.
;
TNCPORT;
COM=2;
TYPE=PK232/AA4RE
ENDPORT
TNCPORT
COM=3 ; DEFAULTS TO TNC2
TYPE=PK232/AA4RE
ENDPORT
TNCPORT
COM=4
TYPE=PK232/AA4RE
ENDPORT
TNCPORT
COM=5
TYPE=PK232/AA4RE
ENDPORT
;TNCPORT
; COM=6
;ENDPORT
;
;TNCPORT
; COM=7
; APPLFLAGS=4 ; NO 'CONNECTED' TO USERS
;ENDPORT
;
;TNCPORT
; COM=8
; APPLFLAGS=4 ; DON'T SEND CONNECTED TO USER
;ENDPORT
;
;TNCPORT
; COM=9
; APPLFLAGS=4
;ENDPORT
;
;TNCPORT
; COM=10
; TYPE=KISS
; KISSMASK=4 ; PORT 3 (100B)
;ENDPORT
;
; AX25 PORT DEFINITIONS
;
; Note that these are NOT related to the Virtual TNC ports
; defined in TNCPORTLIST above. These define the external
; links - normally to radios, but possibly to other computers,
; modems, etc. You can have several TNC ports, but only one
; radio link, or even several radio links and only one TNC
; port.
;
;
; The hardware type and protocol are now defined separately,
; but at the moment only a limited number of combinations are
; possible
;
; Interrupt levels may be shared by any cards with suitable
; hardware. Examples are all but the earliest DRSI cards, and
; a MS400 modified as described by AA4RE in his MBBIOS
; documentation.
;
; There is a significant overhead in using the shared
; interrupt feature - try to use it on relatively low speed
; links, and with out for TX underruns/RX overruns.
;
; Hardware types are ASYNC, PC120, DRSI, TOSH, QUAD, RLC100,
; INTERNAL
;
; ASYNC is for a normal ASYNC card, or a shared interrupt card
; such as the MS400
;
; Protocols allowed are KISS,MULTIKISS or NETROM (the
; NET/ROM async link)
;
;
; PC120, DRSI and RLC100 are the internal HDLC cards - and
; allow 2 channels
;
; TOSH is for a Toshiba T1100 with Software Forge HDLC card
;
; The above three currently only support PROTOCOL=HDLC
;
;
; QUAD is the Quadram Quadport, which allows up to 5 async
; links. This version only supports a single Quadport, see
; separate file QUAD.DOC for setup details.
;
; Protocols allowed are KISS or NETROM (the NET/ROM async
; link)
;
;
; INTERNAL is a loopback port, for use with KISS applications
; wanting talk to the switch.
;
; The KISS protocol supports dual port TNC's such as the KAM
; and KPC4. You should define two port entries with the same
; IO addr, INT Level and SPEED - set CHANNEL=A for the first
; and B for the second.
;
; MULTIKISS allows several TNCs to share one async port - see
; KISS.DOC for details
;
; Note that all timer values are in ms intervals.
;
; Most TNC's use different units for the various timers, so be
; careful!
;
; The timings are all derived from the PC's timer interrupt,
; who's frequency is about 18.2 HZ, so the resolution is only
; to approx 50ms.
;
; All parameters should be set for all ports, but not all
; drivers support all features. For instance, the NETROM
; driver does not use the TXDELAY, SLOTTIME and PERSIST
; values. The NETROM driver only works in FULL DUPLEX mode,
; and the HDLC only in HALF DUPLEX.
;
; SoftDCD is not yet implemented - I hope it will be soon!
;
; CWID works only on DRSI and PC120 cards, and can be
; suppressed by omitting the parameter.
;
;
; BECAUSE OF OUR ODD LICENSING CONDITIONS YOU MAY WISH TO BAN
; CONNECTIONS TO THE BBS CALLSIGN ON SOME PORTS - USERS MAY
; STILL CONNECT USING L4, OR CONNECT TO THE NODE ADDR, AND USE
; BBS COMMAND. PUT 'BBSFLAG=NOBBS' TO ACTIVATE THIS FUNCTION.
; 'BBSFLAG=BBSOK', OR NO PARM, MEANS BEHAVE AS NORMAL
;
; From Version 3.21, you can have an extra callsign and alias
; for each port for user access only. The callsigns defined in
; NODECALL and BBSCALL are still used for all networking
; activity.
;
PORT
ID=145.010 Mhz 1200 Baud (DRSI)
TYPE=DRSI
PROTOCOL=HDLC
IOADDR=300H
INTLEVEL=7
SPEED=1200
CHANNEL=A
QUALITY=192
MAXFRAME=7
TXDELAY=500
SLOTTIME=140
PERSIST=64
FULLDUP=0
SOFTDCD=0
FRACK=4000
RESPTIME=1000
RETRIES=10
PACLEN=255
;
; NEW FIELDS IN VER 3.55
;
DIGIFLAG=255 ; DIGIPEAT FLAG - 0 = DISABLE 1 = ENABLE
; 255 = DIGI UI FRAMES ONLY
DIGIPORT=0 ; PORT TO RELAY DIGI'ED FRAMES ON -
; 0 = THIS PORT, N = PORT N
USERS=0 ; LIMIT ON L2 SESSIONS ON THIS PORT -
; 0 = UNLIMITED
UNPROTO=BBS,ORL1
ENDPORT
PORT
ID=145.070 Mhz 1200 Baud (DRSI)
TYPE=DRSI
PROTOCOL=HDLC
IOADDR=300H
INTLEVEL=7
SPEED=1200
CHANNEL=B
QUALITY=192
MAXFRAME=7
TXDELAY=400
SLOTTIME=140
PERSIST=64
FULLDUP=0
SOFTDCD=0
FRACK=4000
RESPTIME=1000
RETRIES=10
PACLEN=255
DIGIFLAG=255 ; DIGIPEAT FLAG - 0 = DISABLE 1 = ENABLE
; 255 = DIGI UI FRAMES ONLY
;
UNPROTO=BBS,ORL7
; VALIDCALLS=
; VALIDCALLS=
DIGIPORT=0
; ALIAS_IS_BBS=0 ; CONNECTS TO G8BPQ/NOTTM GO TO NODE
USERS=0
ENDPORT
PORT
ID=441.000 Mhz 1200 Baud (DRSI)
TYPE=DRSI
PROTOCOL=HDLC
IOADDR=310H
INTLEVEL=7
SPEED=1200
CHANNEL=A
QUALITY=192
MAXFRAME=7
TXDELAY=400
SLOTTIME=140
PERSIST=64
FULLDUP=0
SOFTDCD=0
FRACK=4000
RESPTIME=1000
RETRIES=10
PACLEN=255
DIGIFLAG=255
DIGIPORT=0
USERS=0
ENDPORT
PORT
ID=14.098 MHz 300 Baud (DRSI)
TYPE=DRSI
PROTOCOL=HDLC
IOADDR=310H
INTLEVEL=7
SPEED=300
CHANNEL=B
QUALITY=192
MAXFRAME=2
TXDELAY=300
SLOTTIME=140
PERSIST=64
FULLDUP=0
FRACK=7000
RESPTIME=1000
RETRIES=10
PACLEN=120
ENDPORT
ROUTES:
; ROUTES TO LOCK IN
;
; specify Callsign, Quality and Port. You can now also specify
; MAXFRAME, FRACK, PACLEN (in that order) to override the port
; defaults.
;
;
;G4RFG-1,0,2 ; MARGINAL, SO QUALITY = 0
;G4RFG,0,1
;GB7LX-2,0,1
;GB7LX-7,20,2
;g0GDR-1,100,2,1,6000,100 ; not always very good
;G0GDR-7,105,2
;G7AXC-7,50,2
;GB3RP-2,100,1
;GB7LED,50,1
;G4MQM-2,50,2
;GB7RP-7,120,2,2,7000,150 ; just testing!
;G1EUP-1,50,1,1
;gb7mum,50,1,1
***
;
; APPLICATIONS SUPPORTED
;
; UP TO 8 ENTRIES OF UP TO 12 BYTES EACH
;
; THE FIRST 3 ARE RESERVED FOR BBS, HOST, AND REMOTE SYSOP -
; YOU CAN DEFINE THE OTHERS AS YOU LIKE.
;
; FOR COMPATIBILITY WITH EARLIER VERSIONS, JUST ENTER
; APPLICATIONS=BBS
;
; NAMES STARTING WITH * ARE NOT INCLUDED IN 'VALID COMMANDS'
; DISPLAY
;
APPLICATIONS=BBS,,*SYS,MH
;
****************************
My PARMS.BB looks like this;
****************************
name = Gary
location = Oviedo, FL
bb_sign = N4CHV
bb_addr = N4CHV-3
bb_hier_addr = .#ORLFL.FL.USA.NA
bid_sign = N4CHV3
user_file = USER.BB
msg_file = MSG.BB
msg_dir = \BB\MSG\
message_list = MESSAGE.BB
route_file = ROUTE.BB
path_file = PATH.BB
help_file = HELP.BB
bid_file = BID.BB
bid_max = 750
log_file = MONTHLY
mon_file = MON.BB
dos_message_file = MESSAGE.DOS
wakeup_file = WAKEUP.BB
h_lookup_file = HLOOKUP.BB
trace_file = TRACE.BB
trace = Y
max_task = 4
no_fwd_kill = B_
bid_for_P = Y
bid_for_T = Y
bid_for_blank = Y
blank_to_p = N
allow_types = BPT
hold_duplicate = Y
hold_dup_header = 2
kill_userbbs_on_error = Y
rename_killed_msg = Y
monitor_time_stamp = Y
bbs_see_p = N
already_connect_check = Y
sysop_is_in = N
sysop_bell = N
loud_sysop_bell = Y
direct_video = Y
check_snow = N
time_updates_status = Y
own_call_in_bcst = Y
show_yapp_states = N
show_binary_data = N
auto_hlookup = Y
broadcast_interval = 5
mon_list_length = 17
operator_color = 7
status_color = 96
disconnect_delay = 10
forward_delay = 10
bbs_to_fwd_time = 45
send_wp_to_bbs = WD6CMU.#NOCAL.CA.USA.NA
home_bbs_expires = 120
top_window_% = 25
port
port_type = G8BPQ_NODE
com = 2
max_pac = 230
speed = 4800
max_connect = 8
max_channel = 9
max_pending = 3
monitor = YES
time_out = 500
fwd_min = 45
upload_download = Y
broadcast = Y
port_name = 145.01/145.07/NODE
monitor_color = 14
endport
file_directory
directory_name = DOCS
directory_alias = D
directory_desc = REBBS DOC'S
directory_path = C:\BB\DOCS\
class_for_upload = NEW_USER
class_for_download = NEW_USER
subdirectory_ok = YES
binary_ok = YES
endfile
file_directory
directory_name = NOTES
directory_alias = N
directory_desc = REBBS NOTES
directory_path = C:\bb\notes\
class_for_upload = new_user
class_for_download = new_user
subdirectory_ok = YES
binary_ok = YES
endfile
file_directory
directory_name = BPQ NOTES
directory_alias = G
directory_desc = G8BPQ V3.57 NOTES
directory_path = C:\bb\bpq\
class_for_upload = new_user
class_for_download = new_user
subdirectory_ok = YES
binary_ok = YES
endfile
file_directory
directory_name = AMSAT
directory_alias = A
directory_desc = AMSAT & Related
directory_path = C:\bb\amsat\
class_for_upload = new_user
class_for_download = new_user
subdirectory_ok = YES
binary_ok = YES
endfile
file_directory
directory_name = SYSOP
directory_alias = S
directory_desc = SYSOP FILES
directory_path = C:\bb\sysop\
class_for_upload = local_sysop
class_for_download = local_sysop
subdirectory_ok = YES
endfile
3.27 LAN FORWARDING
-------------------
Hassle-free fwding
R:900623/0708z @:N4KWB.#MIAFL.FL.USA.NA #:30440 Z:33143
SCENARIO: There are 2 or more BBS's in the same LAN . You have
traffic or BULLS to forward to a BBS you have defined to receive
it. Problem is the BBS you want to forward to is off the air, on
vacation (QRT) or pulled the plug for a local power, technical
problem/storm etc.
Instead or re-trying the same BBS without success you have
another choice which will move the bulletin or mail into the LAN
where they have local ability to address the problem and it's
solution.
WILDCARD LAN ROUTING:
--------------------
Let's use KP4OO and N4NIA as a good current example. Both BBS's
are in #HSTFL LAN. N4NIA is QRT and on vacation for a couple of
weeks. Bulls have been sent out regarding BBS call changes. Some
have responded but others haven't read their mail yet. (They
might be on vacation too).
ROUTE.BB
--------
HST = KP4OO N4NIA (Put this at the top of ROUTE.BB.HST is now
KP4OO & N4NIA)
<<< or >>>
HST = KP4OOa KP4OOb N4NIAa N4NIAb etc. (If you use more than
one path)
In your ROUTE.BB entries further down the file enter:
KP4OO HST (Tells BB to Fwd to "HST" which is cross-defined as
N4NIA or KP4OO)
N4NIA HST (ditto)
The "HST" has become the wildcard for your forwarding. It could
be called anything but HST is rational and you will understand it
when viewing your route.bb. Instead of defining a specific BBS,
you have now defined a LAN to Forward to.
Advantages:
----------
- You are still forwarding the Mail or BULL only ONCE into the
LAN. User usually has access to the Mail/Bull regardless of one
BBS being down. Your Msg/Bull will be marked as (F)orwarded.
- A reverse FWD by either BBS defined as "HST" (In this case)
will move the Mail/BULL. This is very handy when one LAN BBS
connects to you via a path that you don't have,or have access
to...IE:Direct (qsy) OR knode PATH.
- You will no longer have to read the "SYSOP" mail and act
quickly to type in a new path or route you didn't have there
before. Your BBS will cook along automatically with fewer
changes required by you.
There are probably similar applications around the State at:
TLH = W1EOH K9RXG WN4IIV
NAP = WB2WPA KC5YD
SRQ = W2TKU W4MWP WD4NKZ KB4OOG
WPB = KB4VOL N4QWN N4JOA
TPA = W4DPH K0ZXF N4DWY W8DUV
JAX = KB4OWD WD4BIW N1DRS
ORL = WD4HIM N4CHV
MLB = N4JLR N5AUV
etc......
There are several variations and controls possible. If you want
to attempt to forward to a specific BBS in the LAN you can set
the time on the back-up BBS to be more restricted...ie: T 0400
0700 (time in PATH.BB). This works fine as long as the back-up
LAN BBS doesn't routinely forward to you, otherwise your Msgs
will reverse FWD to it.
For more absolute control over fwding to the backup BBS(s) you
can use WAKEUP.BB to change from ROUTE.BB (Plain vanilla ; No
wildcards or"=") to another ROUTEBAK.BB containing the wildcard
LAN routing described above.
Example:
==/==/== 04:00 GN ROUTE ROUTEBAK.BB ( (G)O (N)EW Route )
==/==/== 04:01 GF (Tells BB that route is changed)
==/==/== 07:00 GN ROUTE ROUTE.BB
==/==/== 07:01 GF (Tells BB that route is changed)
Maybe we can spend a little more time fishin' now.......73 Harold
------------------
another viewpoint:
------------------
There is a specific way of setting up .DIS and ROUTES to deal
with two BBSs in the same city that share bulls with you and
setting up a 4RE BBS to avoid wasting air time.
For example, KB4LB and WD4HIM both send Bulls to KB4T. KB4LB &
WD4HIM share bulls between themselves as well. If KB4T gets a
bull from either WD4HIM or KB4LB, then it is NOT necessary for
KB4T to attempt to forward such a Bull to the other ORL area BBS.
Along the same line, if KB4T forward a bull to either KB4LB or
WD4HIM, it is not necessary to forward that same bull to the
other. This cuts down on wasted air time and unnecessary forward
attempts.
Configuring to set up such a scheme is not detailed as well as it
could be in the docs even though it is fairly simple to do.
A .DIS file is created in which I have the following:
ORL WD4HIM KB4LB
SAN KB4LB WD4HIM
In my ROUTE.BB, I have two lines which look like:
ORL WD4HIM
SAN KB4LB
If I receive a bull from either LB or HIM, the other is marked as
having the bull and I do not even attempt to forward the bull to
the other. If I send a bull to one, the other is considered to
already have it (or is marked as already having it.)
I had difficulty figuring this out when I first got into 4RE. I
ended up calling AA4RE himself because I couldn't figure out how
to keep my BBS from attempting to send bulls back to WD4HIM even
though he had just sent them to me. It turned out I had my Paths
and Routes incorrectly defined. Roy suggested the ORL SAN thing
and that solved the problem nicely.
With as many BBSs as there are in many cities, I suspect that
lots of new sysops are struggling with that detail.
Hope this helps.
73, Frank KB4T
3.28 KAM PROBLEMS
-----------------
Kant_node_can
R:900311/0413z @:KB3UD.#EPA.PA.USA.NA East Bangor,Pa #:14349
Recently, in order to utilize a local Kantronics Node, I found
myself in trouble. The doc's on REBBS state nothing about a
suggested script for using a kantronics Node, therefore it became
a Kan't node. In discussing this with Bart, KC3BP, a fellow sysop
@WB3JOE, we brainstormed a possibility of using multiple "R"
lines in the Path file. Nothing in the doc's said it could be
done, but it didn't say we couldn't either! So we did, and it
does!
As you know, the Kantronics Node replies with a multiple line
response. REBBS looks for one line (per "R" line as it turns out)
so.....my local Kantronics node call is N3ET-1 so I will use it
in this example;
PATH WB3JOE A WB3JOE
T 0000 2359 ; DO IT ALL THE TIME
C KB3UD-1 V KB3UD-8 ; MAKE CONNECTION ON LOCAL NODE
SC N3ET-1 ; INITIATE CONNECTION TO KANTRONICS NODE
R* to * ; GET REPLY FROM LOCAL NODE
R*CHANNEL* ; GET REPLY FIRST LINE FROM KANTRONICS
R*NODES* ; GET REPLY FROM SECOND LINE OF KANTRONICS
SX WB3JOE ; TELL KANTRONICS NEXT THING TO DO
R*MADE* ; GET REPLY FM KANTRONICS "LINK MADE"
I hope this might help those out there who have suffered from
same dilemma that Bart and I saw.
73 es enjoy, de Tom, KB3UD@KB3UD.PA (and Bart, KC3BP@WB3JOE.PA.)
3.29 KAM 3.0
------------
R:900929/1838z @KB4T.32115.#DABFL.FL.USA.NA #:17015S:900929/1939z
This is a followup to my recent bulletin about forwarding to KAM
3.0 PBBS. It is somewhat more detailed and answers a need that
has been indicated by return mail I have gotten since the first
bull went out. Hope it helps!!!
Here is the sequence of events that is SUPPOSED to occur when
your full feature BBS connects to a KAM 3.00 PBBS.
Your BBS initiates the connect to the KAM bbs.
If the KAM owner has set his KAM up correctly, you will actually
see something like this:
[KAM-3.00-H]
10000 BYTES AVAILABLE
[KAM-3.00-H$] Ctrl-V Ctrl-M (see note below)
Welcome to the Blibbit Personal BBS in Widgetville - All Welcome!
ENTER COMMAND: B,J,K #,KM,L,LM,R,RM,S, or Help >
Note:
The Ctrl-V Ctrl-M are extremely important!!! Essential!!!! They
are invisible to you and me but they do an important job. AND
THEY MUST BE PLACED IMMEDIATELY after the ] symbol in the prompt
line. Their job is to put the SID on a separate line and to make
the SID recognizable to your BBS by putting a CARRIAGE RETURN
immediately after the SID. Most BBS's require the SID to be on a
separate line. We simulate that by using Ctrl-V and Ctrl-M.
Ctrl-V allows the KAM to pass the Ctrl-M which is a carriage
return!
OK Back to the action! When your BBS sees the > at the very
end of the initial KAM response, your BBS is supposed to issue
its SID:
[4RE-2.10-HMR$] or whatever your bbs software is........
The KAM receives your SID and realizes that it is being addressed
by a BBS as opposed to a regular user and responds with another
>. Those > symbols are really important also. They tell each of
the two BBSs that are talking to each other to go ahead. It's
kind of like BBS for "Over."
OK, so now both the KAM and your BBS have introduced themselves
to each other and the KAM is awaiting your next move.
If your bbs has traffic for the KAM it will issue the request to
send a message. Often like this: SP N4XYZ < KB4T $15000_KB4T
The KAM should respond with OK >
Your BBS then sends the message to the KAM along with Control-Z
to write it into the KAM. When the KAM receives and stores the
message, it responds with another Enter Command line and > .
This process continues until all messages for that KAM have been
sent.
After your BBS has sent all messages for the KAM, it SHOULD issue
a reverse forward prompt F>
The KAM should respond with either and SP, SB, ST or whatever if
it has out-going messages. If so, your BBS should respond with
OK> and the KAM should send all of its outgoing messages. When
done sending or.....
If there are no outgoing messages from the KAM, the KAM should
issue a response to the F> that looks like ***DONE > at
which point your bbs should disconnect.
That's basically how the whole process should work. AA4RE BB
program Sysops will need to craft their PATH.BB file forwarding
scripts to deal with this scenario. Here's what mine looks like:
PATH N4KAM A N4KAM
T 0500 2200 0 6 HOUR 2/1
C DAB5 (the local node)
SC N4KAM-1
R* to *
R*
or, if you're not going through a node:
PATH N4KAM A N4KAM
T 0500 2200 0 6 HOUR 2/1
C N4KAM-1
R*
Some of you might have to add an additional R* line to the
forwarding script in your PATH.BB file in order to deal with
additional text lines that might appear based on your own
systems. It is entirely possible that the forwarding process will
not work if there aren't enough R* lines in your forwarding
script.
This narrative should provide enough detail to allow any sysop to
trouble-shoot a forwarding problem with the new KAM firmware. But
I will be glad to assist with any problems that can't be
resolved. Send me a packetgram with all the details and I'll see
what I can do.
73, Frank KB4T Sysop KB4T BBS Daytona Beach, FL
4.0 APPENDIX
---------------
4.1 BBCOLOR.EXE FILE:
----------------------
To set colors, run BBCOLOR.EXE. Take down the numbers of the
colors you want and put them in the PARMS.BB file.
The PARMS.BB file consists of lines in the format:
keyword = value
The keywords are shown below with a typical value:
4.2 GENERAL KEYWORDS
---------------------
name = Roy
This is the SYSOP's name
location = Gilroy, CA
Location for this mailbox. Used in the forwarding header
bb_sign = AA4RE
Callsign for this mailbox. No SSID on this call.
bb_addr = AA4RE
Address of the mailbox. Usually just callsign. Add an SSID
if you run multiple BBS under the same call sign. This
address will be used for outgoing messages as the from bbs.
bb_hier_addr = .#NOCAL.CA.USA.NA
Hierarchical address of this mailbox. First character must
be a period.
bid_sign = AA4RE1
Call sign to use when generating BIDS. Only needed if
different from the bb_sign. Handles the special case of two
bulletin boards with same call sign but different SSIDs.
Don't put a dash in this callsign.
send_wp_to_bbs = WD6CMU.#NOCAL.CA.USA.NA
Place to send WPAGE reports. If omitted, no WPAGE reports
will be sent
home_bbs_expires = 120
Number of days until the home BBS registration expires.
Must be from 30 to 365. Default is 120.
bulletin_fwd_stop = 10
Bulletins this many days old (from origination) will not
forward. Must be from 1 to 365. Default is 20.
default_expiration = 10
Bulletins this many days old (from origination) will self
destruct. Must be from 1 to 365. Default is 20. (Not fully
implemented)
user_file = C:\BB\BBDATA\USER.BB
Fully qualified name of the user file. One will be created
for you if it doesn't exist already. The path must exist
however.
msg_file = C:\BB\BBDATA\MSG.BB
Fully qualified name of the message index file. One will be
created for you if it doesn't exist already. The path must
exist however.
msg_dir = C:\BB\MSGS\
The path to be used to store messages. If you give a
subdirectory name, don't forget the terminating \
message_list = C:\BB\BBDATA\MESSAGE.BB
Fully qualified name of the system message file. This must
exist. This file contains the text of all the system messages
such as the ones used for sign on. If multiple languages,
this is the primary.
language_list = EDS
Gives a list of single character language identifiers. Only
needed if multiple message_list files are used. See
LANGUAGE.DOC for details.
help_file = C:\BB\BBDATA\HELP.BB
Fully qualified name of the system help file. This must
exist. This file contains the text of all the help messages.
route_file = C:\BB\BBDATA\ROUTE.BB
Fully qualified name of the routing file (see FWD.DOC). The
path must exist but the file doesn't. However, if you don't
have a file, you can't forward.
path_file = C:\BB\BBDATA\PATH.BB
Fully qualified name of the pathing file (see FWD.DOC). The
path must exist but the file doesn't. However, if you don't
have a file, you can't forward.
bid_file = C:\BB\BBDATA\BID.BB
Fully qualified name of the BID file. One will be created
for you if it doesn't exist already. The path must exist
however.
bid_max = 100
Number of BIDs to track. The last "N" BIDS will be tracked.
Each BID costs 22 bytes of storage. Valid values are 100 to
5000.
log_file = C:\BB\LOGS\LOG.BB
Fully qualified name of the LOG file. One will be created
for you if it doesn't exist already. The path must exist
however.
IF the name is DAILY, WEEKLY, or MONTHLY then a new file is
created every time period. The path supplied here is used
and the file name is BByymmdd.LOG for DAILY and WEEKLY
(Sunday is used) and BByymm.LOG for MONTHLY log. Example:
log_file = C:\BB\LOGS\WEEKLY
mon_file = C:\BB\DATA\MON.BB
Fully qualified name of the MON file. One will be created
for you if it doesn't exist already. The path must exist
however.
mon_list_length = 10
Max number of entries in the MON list (shown by "J" command).
Allowed range is 0 to 30.
dos_message_file = C:\BB\BBDATA\MESSAGE.DOS
Fully qualified name of the system dos error message file.
This must exist. This file contains the text of all the
messages used for DOS error codes.
wakeup_file = C:\BB\BBDATA\WAKEUP.BB
Fully qualified name of the file containing the wakeup data.
This must exist. See WAKEUP.DOC. This file is optional.
h_lookup_file = C:\BB\BBDATA\HLOOKUP.BB
Fully qualified name of the file containing the lookup data
for the GH command. See HIER.DOC. This file is optional.
sysop_password_file = C:\BB\BBDATA\PASSWORD.BB
Fully qualified name of the file containing the remote sysop
password info. See OPERATE.DOC for details. This file is
optional.
action_file = C:\BB\BBDATA\ACTION.BB
Fully qualified name of the file containing the action data.
See ACTION.DOC for details. This file is optional.
trace = N
Turns trace on and off. Primarily a debugging tool.
trace_file = TRACE.BB
Fully qualified name of the trace file. A new one will be
created each execution. The path must exist. No trace file
will be created if TRACE = N. This is primarily used for
debugging and its contents change frequently.
max_task = 3
Maximum number of concurrent tasks. Each task occupies 20K
or so of storage. Each logged on user occupies a task. This
number is not a hard and fast rule. If you exceed this
number, tasks will be allocated from free memory if possible.
Valid values are 1 to 32.
no_fwd_kill = ABCDEF_
Classes of messages not to kill when forwarded successfully.
The underscore is translated to a blank.
bid_for_P = Y
YES or NO answer. If YES, BIDs will be generated for all
incoming private messages without a BID.
bid_for_T = Y
YES or NO answer. If YES, BIDs will be generated for all
incoming NTS messages without a BID
bid_for_blank = Y
YES or NO answer. If YES, BIDs will be generated for all
incoming messages with a type of blank.
blank_to_P = N
YES or NO answer. If YES, messages sent with just "S" will
be translated to "P".
blank_to_B = N
YES or NO answer. If YES, messages sent with just "S" will
be translated to "B". Note.. BLANK_TO_P comes first
hold_duplicate = Y
YES or NO answer. During the process of BID generation, the
new BID is checked to see if it is a duplicate. If this
occurs, and "hold_duplicate" is YES then the message will be
held.
hold_dup_header = 1
Each incoming message is scanned for a header from this BBS.
When the number of headers from this mailbox is equal to
"hold_dup_header", the message is held. To turn off this
feature, use 0. Valid values are from 0 to 255.
kill_userbbs_on_error = Y
YES or NO answer. If a user running at "BBS" class gets an
error and "kill_userbbs_on_error" is YES, then an immediate
disconnect will occur.
allow_types = BPT
Classes of messages that local user can use. An undersore is
is translated to a blank. If a user enters a message not in
the classes then message #78 will appear and the user can
enter a correct type. This does NOT affect BBS or SYSOPs.
rename_killed_msg = Y
YES or NO answer. If YES, then killed messages will be
renamed to BBnnnn.KIL during "GM" processing instead of being
erased.
sysop_is_in = Y
YES or NO answer. If YES, then "T" command will page SYSOP.
If NO, user receives response saying SYSOP unavailable. Can
be changed by "GS" command.
sysop_bell = Y
YES or NO answer. If YES, then "T" command will ring bell.
If NO, no sound is made. Can be changed by "GB" command.
loud_sysop_bell = N
YES or NO answer. If YES, then bell used above is much
louder. IF NO, the bell from older versions is used.
mono_trace = N
YES or NO answer. If YES, then certain trace data will
appear on a screen attached to a monochrome adapter.
monitor_time_stamp = Y
YES or NO answer. If YES, then all montiored packets will
have HHMMSS in front during display.
bbs_see_p = N
YES or NO answer. If YES, allow bbs class user to see
private messages. This was the default previously.
already_connect_check = Y
YES or NO answer. If YES, don't attempt to forward to a
station already connected. Test is done without concern for
SSID. Note that the TNC already checks for an attempt to
connect to the same callsign/SSID. This is added when things
like NETROM are in use and the SSID changes.
direct_video = Y
YES or NO answer. If YES, then TurboPascal's direct video
write routines will be used. If NO then will use BIOS calls.
Should be YES for better performance.
check_snow = N
YES or NO answer. If YES, then system will wait for vertical
retrace before writing to screen. Try NO first. If SNOW
appears then use Yes.
time_updates_status = Y
YES or NO answer. If YES, then system will update the status
line at every minute. If no, the status line will only be
updated during connect/disconnect. The old default was Y,
the new default is N.
own_call_in_bcst = N
YES or NO answer. If YES, then the MAIL FOR line in the
broadcast will contain your call if you have mail. If N then
your mail will not show in the broadcast. The old default
was Y, the new default is N.
suppress_prefix = N
YES or NO answer. If YES, then the prefix data (eg. LO>:)
will not be shown in the operator window. Can be changed by
the GP command. The default is N.
show_fwd_mismatch = N
YES or NO answer. If YES, then when a mismatch occurs in a
forward script it will be shown in the connect window. Can
be changed by the GZ command. The default is N.
show_yapp_states = N
YES or NO answer. If YES, then BB will display YAPP states
during binary transfer. Really only needed for debugging.
The default is N.
show_binary_data = N
YES or NO answer. If YES, then BB will display binary data
in the CONNECT window. Really only needed for debugging.
The default is N.
auto_hlookup = Y
YES or NO answer. If YES, then BB will do a "GH" command
before each forwarding cycle. The default is N.
extended_timeout = N
YES or NO answer. If YES, then BB extend the timeout on all
ports by a factor of 4. This is used primarily for speech
synthesis. The default is N.
personal_bbs = N
YES or NO answer. If YES, then this BBS is a personal one
rather that a full-service one. The default is N.
no_alternate_header = N
YES or NO answer. If YES then the alternate header feature
is OFF. The default is N.
send_sid_always = N
YES or NO answer. If YES then the system wil always send the
SID (the little thing in brackets [4RE-etc]) instead of
sending it just to users identifed as advanced mailboxes.
This is done to make things more compatible for forwarding
from W0RLI mailboxes. Certain HF nets seem to need this;
others don't. The default is N.
no_language_prompt = N
YES or NO answer. If YES then the user will not be prompted
for a language setting during the register process. The
default is N.
blank_to_bbs = Y
YES or NO answer. If YES then the to_bbs field of a locally
originated message will be set to blank. If N, the field
will be set to the bb_addr. The default is N. Note: this
parm MUST be "Y" for the auto_set_to_bbs to work!
auto_set_to_bbs = y
YES or NO answer. If YES then the if a locally originated
message has a blank to_bbs field, the to_bbs will be set by
home BBS in the user file. The default is N. Note: This
will NOT work for incoming messages from another BBS. To
change those addresses, use the action file.
new_user_l_time = 3
Specifies the number of days previous to today that a new
user will see when he executes the "L" command. Value is
from 0 to 255. Default is 255;
editor_free_size = 10000
Amount of memory the editor will leave free when its being
used. This may have to be increased if your system gets an
Error 203 when forwarding during edit. Minimum is 10000 (the
old default) and maximum is 65000.
forward_delay = 10
Number of seconds to wait after a disconnect from the far
station before proceeding to the next path to be forwarded.
This delay should be used if you are forwarding on a busy
channel to NETROM nodes. It prevents problems where the
disconnect ack ("UA") packet is lost.
disconnect_delay = 10
Number of seconds to wait before disconnecting from a station
being forwarded to. This delay should be used if you are
forwarding on a busy channel to NETROM nodes. It prevents
problems where the data ack ("RR") packet is lost.
broadcast_interval = 5
Number of minutes between broadcasts of "messages waiting
for". Valid values are 5 to 255.
bbs_to_fwd_time = 420
Number of minutes to correct between time the BBS is running
in and the time in the $J/$K variables used in building a
forwarding header. This should be your GMT time correction
unless your system DOS time is set for GMT. For example,
Pacific Daylight Savings time is 7 hours behind GMT so the
number for me is 420 (60 minutes times 7 hours)
operator_color = 5
Color of operator area. See above
status_color = 5
Color of status line and input area. See above
connect_scroll_size = 50
Number of lines to save in the connect window
monitor_scroll_size = 50
Number of lines to save in the monitor window
operator_scroll_size = 50
Number of lines to save in the operator window
top_window_% = 50
Size of top window in relation to full screen. 50% gives
half for each window.
change_dest = AA4RE=NONE USA=ALLUS AMSAT=ALLUS
!!! OBSOLETE !!!
This is a list of destinations that will be changed
automatically when the message is received at this mailbox.
USA=ALLUS means if a message comes in addressed to ALL @ USA,
it will be changed to ALL @ ALLUS AA4RE=NONE means that AA4RE
will be changed to all blanks. The change_dest line may be
repeated multiple times.
same_distribution = ALLCA ALLUSW ALLUS
!!! OBSOLETE !!!
This means that messages arriving for ALLUSW will use the
ALLCA.DIS distribution list. Ditto for ALLUS. The first
item is the distribution list to use and the other items are
the equivalency list. This line may be repeated multiple
times.
4.3 PORT KEYWORDS:
------------------
A port is started by a line with just "PORT" on it. A port ends
when a line with just "ENDPORT" appears.
port_type = TNC-1
Type of TNC. Valid values are: TNC-1, TNC-2, PC-1XX,
MODEM-ATCMD, PK-232, G8BPQ_NODE, PC*PA-0 thru PC*PA-9 plus
two for PK87. For a PK-87 with WA8DED EPROMS, use PK-87-DED.
For a PK-87 with AEA EPROMS use PK-87-AEA.
call_set = AA4RE-1
This call will be set by the program at start up. It can be
omitted.
com = 1
COM port number. Allowable values are 1 to 255.
interlock_com = 4
Number of com port with which to interlock. A port for this
com number MUST be defined before this port. Use this with
MS-400 cards or others with SHARED INTERRUPTS where you
experience overruns. Define one of the MS-400 ports then
interlock all the others on the first com number. See
MS400.DOC
max_pac = 128
Allowable maximum packet size on this port. Allowable values
are 20 to 256. Default is 128.
dflt_pac = 128
Default maximum packet size on this port. Allowable values
are 20 to 256. Default is same as MAX_PAC.
speed = 4800
Speed of port. If this is a PC-1xx, this is the radio speed.
For the PC*PA this value must be specified but is ignored.
For all others, this is the RS-232 port speed.
max_connect = 2
Max number of connects to allow on this port. MUST be at
least one less that what the TNC is capable of.
max_channel = 4
Highest channel number allowed by this TNC. Check the
documentation for your TNC. For TNC-11 and TNC-2, see the
WA8DED documentation. If you don't know, set for 4. For
G8BPQ_NODE, PK-232, PK-87, and PK-88, the value is usually 9.
For PC*PA, the value either 4 or 10 based on which version of
TNCTSR-S you have.
max_pending = 4
For WA8DED software and the PC*PA, this is the maximum number
of unsent frames awaiting transmission. When this is
reached, BB stops sending data frames to the TNC until some
traffic clears. Set this to the maximum number of
outstanding frames ("O" command on TNC). For the PK-232 this
number should be 4*MAXF
monitor = Y
YES or NO answer. If YES, MONITOR will be enabled.
time_out = 180
Number of seconds of inactivity before a user is
disconnected. Allowed values are between 60 and 3000. NOTE:
Using the MBL, RLI, CBBS implementations, the timer starts
when the last packet has left the computer. Under this
program, the timer starts when the last packet is "ACK"ed by
the distant TNC. This might be an intermediate network node
(Eg. NETROM) or the actual user.
fwd_min = 34
Minutes after the hour to start forwarding on this port
call_check = Y
YES or NO answer. If YES, allow only stations with valid
call signs to connect. *** NOT IMPLEMENTED ***
upload_download = Y
YES or NO answer. If YES, allow uploads/downloads on this
port.
remote_sysop = Y
YES or NO answer. If YES, allow remote SYSOPs on this port.
no_out_fwd = N
YES or NO answer. If YES, this port will never start
forwarding by itself. The fwd_min is useless.
no_busy_fwd = N
YES or NO answer. If YES, this port will never start
forwarding NEW_USER_TRANSPARENCY -- Set the new user's
transparency mode for a port NEW_USER_SCREEN_LENGTH -- Set
the new user's screen length if it already has a user
connected. This is mainly for HF where you only want one
connect. Default is NO.
new_user_transparency = Y
YES or NO answer. If YES, a new user will be given the "T"
flag in the user file indicating TRANSPARENT. Default is NO.
new_user_screen_length = 20
Number between 0 and 255 indicating the number of lines to be
output for a new user before pausing. This will be reset by
the user during the register process.
no_binary = N
YES or NO answer. If YES, this port cannot be used for
binary transfers. Default is NO.
broadcast = y
YES or NO answer. If YES, send "MESSAGES FOR" broadcast
UNPROTO.
minimum_class_allowed = new_user
Sets the minimum class allowed to access the system thru this
port. Default is NEW_USER.
port_name = 144.99 Mhz
Name of port to be displayed with various commands (Eg. "J")
answer_on_ring = 1
Number of ring to answer modem on. Allowed values are 1 to
15.
monitor_color = 5
Color of monitored packets for this port. See COLOR.DOC
broadcast_path = QRM WB6ZVW
Path set for UNPROTO packets. If this is omitted, the
UNPROTO path will not be set.
default_forward_order = TA
Default order that files will be sent during forwarding. See
FWD.DOC for details
reject_action = 2
Set the action for REJECTS. Which message to reject is set
by the action file. If the other BBS understands REJECT then
REJECT is sent. If the other BBS does not understand REJECT
then we use the action to control what we do. Parameter
settings are shown below; the default is 0;
0 = Put message in hold
1 = Tell distant end NO (this causes other BBS to think
you already have it). If other BBS doesn't
understand NO then put message in hold
2 = Tell distant end that message is rejected and then
disconnect
default_language_list = E
Gives the single character language identifiers for this
port. Only needed if multiple message_list files are used.
This parm is used if a user signs on and has NOT selected a
language. See LANGUAGE.DOC for details.
initialize_file = COM21.BB
This is optional. If present, this points to a file that
contains data and commands to be sent to this port during the
initialization procedure. The file is a straight ASCII file.
Lines that contain commands should be prefixed by an ESCAPE
character. All commands and data will be directed to channel
0, the UNPROTO channel.
4.4 FILE KEYWORDS:
------------------
A file directory is started by a line with just "FILE_DIRECTORY" on
it. Its ends when a line with just "ENDFILE" appears.
directory_name = ARES
Name of directory. Any 12 character word is ok. No imbedded
blanks.
directory_alias = RACES
Other names for the directory
directory_path = C:\ARES\
Path to directory. If this is the magic word "ANY' then you
can use anything in the name area.
directory_desc = Amateur Radio Emergency Services
One line text describing the contents of this directory
class_for_upload = remote_sysop
Minimum user class for upload
class_for_download = new_user
Minimum user class for download
subdirectory_ok = NO
YES or NO answer. If YES, the backslash will be tolerated
as part of the filename.
binary_ok = y
YES or NO answer. If YES, allow binary transfers from this
area.
-----------------------
Valid user classes are:
NEW_USER
UNREGISTERED_USER
USER
EXPERT
BBS
REMOTE_SYSOP
LOCAL_SYSOP
4.5 PATH.BB FILE:
------------------
; THESE ARE THE ACTUAL PATHS I USE
; *** Phone ***
PATH N6KZB A N6KZB
T 0000 0000
O TA
CT1-714-275-9094
R*all*
SAA4RE
R*assword*
SGARLIC
PATH AA7 A AA4RE
T 0000 0000
CT*70,848-3865
R*call*
SAA4RE
R*password*
SORANGE
PATH N4UTO A N4UTO
T 0000 0000
CT1-305-266-9187
R*call*
SAA4RE
R*password*
SGARLIC
PATH AA6QDP A AA6QD
T 0000 0000
O TA
CT1-805-686-1891
R*call*
SAA4RE
R*password*
SPASSWORD
PATH AA1 A AA4RE
T 2100 2300
T 0000 0800
T 0000 2359 0 6
CAA4RE-1
PATH AA6 B AA4RE
T 0000 0000
CT*70,8483865
R*
RCONNECT*
R*CALL SIGN*
SAA4RE
R*PASSWORD
SOS2SYS
PATH WB6ZVW B WB6ZVW
CWB6ZVW
PATH KE6BX B KE6BX
T 0100 0400
C KE6BX WB6ZVW
PATH N7EQN B N7EQN
C W6AMT-10
SC #SBAY2
R* TO *
SC N7EQN
R* TO *
PATH W6PW B W6PW
C W6AMT-10
SC #VACA3
R* TO *
SC W6PW-3
R* TO *
PATH WB6ASR B WB6ASR
C AA4RE-2
SC W6AMT-10
R* TO *
SC WB6ASR
R* TO *
PATH ASRNIT B WB6ASR
C AA4RE-2
SC W6AMT
R* TO *
SC WB6ASR
R* TO *
PATH K6RAU B K6RAU
C W6AMT-10
SC N6HAV-1
R* TO *
SC K6RAU-1
R* TO *
PATH KB6OWT B KB6OWT
; A COMMENT
; MORE COMMENTS
C W6AMT-10
SC #SBAY2
R* TO *
SC KB6OWT-1
; A COMMENT
; MORE COMMENTS
R* TO *
PATH WB6ASR B WB6ASR
C W6AMT-10
SC SNTCRZ
R* TO *
SC W0RLI
R* TO *
PATH K6IYK B K6IYK
C W6AMT-10
SC #SBA2
R* TO *
SC #SOCAL
R* TO *
SC K6IYK-14
R* TO *
4.6 ROUTE.BB FILE:
-------------------
; Leave anything for me
AA4RE LEAVE
GILROY WB6ZVW 4 AA1 8 AA6 WB6ASR W6PW KE6BX
NBAY AA1
; These are various test things I do
AAQ ?
AA1 AA1
AA6 AA6
S1 AA1
S2 AA6
; Test time delay
TIMET W6PW WB6ASR 1 AA7 2 KE6BX
WD6CMU = W6PW
@BLANK LEAVE
ZVWNIT ZVWNIT
OWTNIT ZVWNIT
ASRNIT ASRNIT
KE6BX KE6BX
WB6ZVW WB6ZVW
MH WB6ZVW
LMORE KE6BX
MRYBAY = W0RLI
WB6ASR = WB6ASR ASRNIT
W0RLI W0RLI
K3MC K3MC W0RLI
WB6ASR WB6ASR AA1
WD6CMU WD6CMU
W6CUS WD6CMU
N6DAM W6PW
N6EEG W6CUS WD6CMU
KI6EH MRYBAY
W6FGC W6FGC WO6Y N6VV
KB6GOZ W6CUS
N6HAV K6RAU
N6IIU N6IIU
KB6IRS MRYBAY
N6IYA MRYBAY
KA6JLT WB6ASR
KE6LF WA6RDH
KE6LW WA6RDH WA6NWE
WA6NWE WA6RDH
N6OA K6RAU
KB6OWT* KB6OWT
WA4PHY N6VV
W6PW W6PW
K6RAU K6RAU
WA6RDH WA6RDH
WB6V W6FGC WO6Y N6VV
N6VV W6PW
KG6XX KG6XX WA6NWE WA6RDH
KD6XZ WA6NWE WA6RDH
WO6Y WO6Y N6VV
WA6YHJ WA6YHJ WB6ASR
WS7M WB6ASR
WA8DRZ KB6OWT
SOCAL = K6IYK W8AKF W6PW
SOBARB = W8AKF WB6DAO K6IYK
ALLCAS K6IYK
AMSAT KE6BX
GARLIC KE6BX
HOLSTR KE6BX
LALTOS WB6ASR
MERCED K6RAU
MHILL WB6ZVW
MRYBAY MRYBAY
NCN W6CUS
PHILL N6VV WO6Y W6FGC
RN6 W6CUS
NET KE6BX
SACVAL WA6NWE
SBAY KE6BX
SF W6PW
SFBAY KE6BX
SOUTH K6IYK W8AKF
SUNNY KB6OWT
WP WD6CMU
NTSCA W6CUS
NTSHI WB6ASR
NTS* N6VV
SCN K6IYK W8AKF
N6ADV SOCAL
W6AXM SOCAL
N6BGW SOCAL
N6CQW SOCAL
N6CUS SOCAL
WB6DAO WB6DAO WB6ASR
AJ6F SOCAL
KB6GVT SOCAL
KA6IQA SOCAL
W6IXU WB6DAO WB6ASR
K6IYK SOCAL
KA6JOB SOCAL
NK6K SOCAL
N6KZB SOCAL
N6LUC SOCAL
N6MVS SOCAL
W6PPV SOCAL
N6PTA SOCAL
W6QFK SOCAL
KB6RAA SOCAL
KD6SQ SOCAL
WA6VQP SOCAL
AK6Y SOCAL
WA6YHF SOCAL
WB6YMH SOCAL
N6YN SOCAL
WA6YNT SOCAL
WA6ZSN SOCAL
KD7XG SOCAL
W8AKF W8AKF WB6DAO K6IYK
WA8DED SOCAL
WA0RTO SOCAL
"#SOCAL\.CA\.USA\.NA K6IYK
AZ\.USA\.NA K6IYK
NV\.USA\.NA K6IYK
UT\.USA\.NA K6IYK
TX\.USA\.NA K6IYK
USA\.NA N6VV
AU WB6ASR
EMEA = N6VV WB6ASR
AK = N6VV
AZ = K6IYK
CO = N6VV
CT = N6VV WA6RDH
FL = N6VV WA6RDH
HI = WB6ASR
ID = N6VV
IL = N6VV
IN = N6VV WA6RDH
KS = N6VV WA6RDH
KY = N6VV
MA = N6VV
MD = N6VV
ME = N6VV
MI = N6VV
MO = N6VV
MS = N6VV
MT = N6VV
NC = N6VV
NE = N6VV
NH = N6VV
NJ = N6VV
NM = N6VV
NV = SOCAL
NY = N6VV
OH = N6VV
OR = N6VV
PA = N6VV
SC = N6VV
TN = N6VV
TX = N6VV
UT = N6VV
VA = N6VV
WA = N6VV
WI = N6VV
WV = N6VV
WY = N6VV
CANADA = N6VV
FAREAST = WB6ASR
SOUTHA = N6VV
NTSCA = W6CUS
G6FCI EMEA
N0BEV KS
N0CLN NV
WB0KBK NE
KD0PJ MO
K0WA KS
W1AW CT
N1BGG MA
WB1DSW NH
W1FJI AZ
W1HAB CO
W1PW NH
KA2BQE NJ
K1RQG ME
W2JUP NY
WB2MNF NJ
WA2PVV NY
WA2SNA NJ
N2WX FL
W3IWI MD
N3AIA IL
K3DSM PA
KB3UD PA
WV4B SC
KF4EF SC
KF4NB KY
K4NGC VA
N4HAP FL
WD4NUN SC
N4QQ VA
WX4S TN
WB4TEM FL
WA4UMR KY
KF4WQ NC
N4XI IN
AA4ZI TN
WA4ZLW FL
AA5 AA5
KN5D NM
W5DBZ AZ
WA5DVV MS
WA5QZI TX
KR5S AZ
WA6ERB CO
KE6LT CO
WB7BNI AZ
KE7CZ AZ
N7GLL AZ
N7HFZ WA
WA7MBL UT
N7JJY WY
KE7OM WA
KE7PV MT
K7PYK AZ
WB7QKP AZ
N8GTC IN
AD8I OH
WD9ANY WI
N9BUB IN
KD9HT IN
KJ9L IL
WB9TPG KY
WB9TYT WI
WA9UXP IN
W9ZRX IN
K0JJV KS
W0LVJ WA
WB0OIZ MO
WB0TAX VA
AH6AA HI
AH6GJ HI
KH6GPI HI
AX4BBS FAREAST
JH3XCU FAREAST
KL7GNG W8AKF
TI* SOUTHA
VE3GYQ CANADA
ZL2AMD FAREAST
90* SOCAL
91* SOCAL
92* SOCAL
930* SBARB
931* SBARB
932* K6RAU
933* K6RAU
934* SBARB
935* SOCAL
936* K6RAU
937* K6RAU
9390* NTSCA
93927 NTSCA
93928 NTSCA
93930 NTSCA
939* MRYBAY
9400* W6PW
9401* W6PW
94022 N6IIU
94025 N6IIU
9402* W6PW
94035 N6IIU
9403* W6PW
94040 N6IIU
94041 N6IIU
94042 N6IIU
94043 N6IIU
9405* W6PW
9406* W6PW
9407* W6PW
94086 KB6OWT
94087 KB6OWT
94088 KB6OWT
9408* W6PW
941* W6PW
942* W6PW
943* N6IIU
944* W6PW
94507 N6VV
94509 N6VV
9450* W6CUS
94510 WO6Y
94512 WO6Y
94515 W6CUS
9451* N6VV
94525 WO6Y
9452* N6VV
94533 WO6Y
94534 WO6Y
94535 WO6Y
9453* W6CUS
94549 N6VV
9454* W6CUS
94553 N6VV
9455* W6CUS
94560 W6CUS
94564 W6CUS
94566 W6CUS
94567 W6CUS
9456* N6VV
94571 WO6Y
9457* W6CUS
94583 N6VV
94585 WO6Y
94586 N6VV
9458* W6CUS
9459* W6CUS
946* W6CUS
947* N6EEG
948* W6CUS
949* W6CUS
95002 KB6OWT
95004 LEAVE
9500* MRYBAY
95013 KB6OWT
95014 KB6OWT
95015 KB6OWT
9501* MRYBAY
9502* LEAVE
95037 LEAVE
95039 MRYBAY
9503* KB6OWT
95041 N6IYA
9504* LEAVE
9505* KB6OWT
9506* MRYBAY
95070 KB6OWT
95071 KB6OWT
95075 LEAVE
9507* MRYBAY
951* KB6OWT
952* KE6LW
95307 WB6V
95309 W6FGC
9530* K6RAU
95313 WB6V
95319 WB6V
9531* K6RAU
95320 WB6V
95326 WB6V
95328 WB6V
95329 WB6V
9532* K6RAU
95336 KE6LW
9533* K6RAU
95346 W6FGC
9534* K6RAU
9535* WB6V
95361 WB6V
95367 WB6V
95368 WB6V
9536* K6RAU
95374 K6RAU
95375 K6RAU
95376 KE6LW
9537* W6FGC
95383 W6FGC
95384 WB6V
95386 WB6V
9538* K6RAU
9539* K6RAU
9540* W6CUS
9541* KE6LW
95421 W6CUS
9542* KE6LW
95436 W6CUS
9543* KE6LW
95442 W6CUS
9544* KE6LW
95452 W6CUS
9545* KE6LW
95465 W6CUS
9546* KE6LW
95472 W6CUS
95476 W6CUS
9547* KE6LW
9548* KE6LW
95492 W6CUS
9549* KE6LW
955* KE6LW
95620 WO6Y
95625 WO6Y
95647 WO6Y
95687 WO6Y
95688 WO6Y
95696 WO6Y
956* WA6NWE
957* KE6LW
958* WA6NWE
959* KE6LW
960* KE6LW
961* KE6LW
967* HI
968* HI
969* HI
96* W6CUS
979 ID
97* OR
986 OR
98* WA
990* WA
990* WA
991* WA
992* WA
993* WA
994* ID
99* AK
84* UT
85* AZ
86* AZ
87* NM
88* NM
89* NV
##### N6VV
4.7 MESSAGE.DOS FILE:
----------------------
2 I/O ERROR: File not found
3 I/O ERROR: Path not found
4 I/O ERROR: Too many open files
5 I/O ERROR: File Access denied
6 I/O ERROR: Invalid File Handle
12 I/O ERROR: Invalid File Access Code
15 I/O ERROR: Invalid Drive Number
16 I/O ERROR: Cannot Remove Current Directory
17 I/O ERROR: Cannot Rename across drives
100 I/O ERROR: Disk Read Error
101 I/O ERROR: Disk Write Error
102 I/O ERROR: File not Assigned
103 I/O ERROR: File not Open
104 I/O ERROR: File not Open for Input
105 I/O ERROR: File not Open for Output
106 I/O ERROR: Invalid Numeric Format
150 I/O ERROR: Disk is write-protected
151 I/O ERROR: Unknown unit
152 I/O ERROR: Drive not ready
153 I/O ERROR: Unknown command
154 I/O ERROR: CRC error in data
155 I/O ERROR: Bad drive request structure length
156 I/O ERROR: Disk seek error
157 I/O ERROR: Unknown media type
158 I/O ERROR: Sector not found
159 I/O ERROR: Printer out of paper
160 I/O ERROR: Device write fault
161 I/O ERROR: Device read fault
162 I/O ERROR: Hardware failure
200 ERROR: Division by Zero
201 ERROR: Range Check
202 ERROR: Stack Overflow
203 ERROR: Heap Overflow
204 ERROR: Invalid Pointer Op.
205 ERROR: Floating Point Overflow
206 ERROR: Floating Point Underflow
207 ERROR: Invalid Floating Point Operation
208 ERROR: Overlay manager not installed
209 ERROR: I/O error reading overlay file
210 ERROR: Object not initialized
211 ERROR: Call to abstract method
212 ERROR: Stream registration error
213 ERROR: Collection index out of range
214 ERROR: Collection overflow
230 Yapp Internal Error
231 MBBIOS not active for a given task
4.8 MESSAGE.DOC FILE:
----------------------
List of message numbers. See MESSAGE.BB for details
1 Unknown command
2 Sign on message
3 Action complete
4 Info 'I' message
5 Prompt
6 Send Message Subject
7 Send Message Text
8 Send Message To
9 Invalid message number (also see #81)
10 Read what message
11 Too many words in command
12 Bad qualifier
13 Message Header -- format 1
14 "L" command criteria missing
15 No message matches -- Search
16 No message matches -- Read (Also see #82)
17 No message matches -- Read
18 No message matches -- Kill
19 Bad address format
20 Yes.. We killed a message
21 Kill what message
22 No data supplied, cmd cancel
23 Added message
24 Forward header
25 User not found
26 Unread mail waiting
27 Edit user prompt
28 Edit msg prompt
29 User listing header
30 Time out for no activity
31 Invalid taskid
32 Task not found
33 Enter name
34 Enter zip
35 Enter home zip code
36 Data too long
37 Registration is done
38 Invalid fileid
39 Second operand is bad
40 Invalid date
41 Not enough operands
42 Kill not allowed
43 Help not found
44 Mode changed
45 Broadcast message
46 Bid is duplicate
47 Not allowed to use port
48 Directory heading
49 Directory alias
50 No files for this guy
51 This guy can't have this file
52 \ not allowed
53 File saved
54 File already exists
55 File cannot be found
56 Killed already
57 Last items on JLIST
58 Connect to operator
59 BBS mode returns
60 Wait for op to answer
61 Wait cancelled
62 No SYSOP answered page
63 SYSOP not in
64 Message Header -- format 0
65 Enter msg format
66 Invalid number format
67 From:
68 To:
69 Date:
70 Msgid:
71 Subj:
72 Path:
73 No wild cards please
74 Send the file now
75 Goodbye message
76 Operation complete
77 Get message type
78 Bad type
79 Overlay busy
80 Other tasks are active
81 Similar to #9 but with parm
82 Similar to #16 but with parm
83 Used when terminating a multiple
send/read/kill/import/export
84 Text for the line MAIL FOR: in broadcasts
85 Start binary transfer
86 Binary Xfer started
87 Same message for done!
88 Binary abort send
89 Binary abort received
90 Binary time out
91 Binary protocol error
92 Yapp file header
93 Binary file xfer not allowed
94 Need conv task
95 Enter userid
96 Enter password
97 Password bad
98 Outbound forward
99 Connect in progress
100 Special task
101 Inbound forward
102 Reverse forward
103 Talking to SYSOP
104 No users on system
105 "Private message"
106 "Bulletin"
107 "Traffic"
108 "Service message"
109 "Message"
110 What message to reply to?
111 Modem sign on message
112 Bad binary download type
113 Bad binary block number
114 Bad binary block
115 Reply prefix
116 Trail message
117 Reverse forward done
118 Please confirm operation. Yes (1) or No (0)
119 The switch is now on
120 The switch is now off
121 The type of file whose name you want to change is invalid GN
command)
122 Time to reregister
123; Held because of old date
124; Held because of duplicate bid
125; Held because of loop
126; Held because of operator
127; Held because of reject
128; Alternate header
4.9 AEAHOST.DOC FILE:
----------------------
Host Mode Mnemonic Indicators for AEA PK232/PK87
For example, whereas in verbose mode, the human operator types:
MFILTER 7, 19
In host mode, you would send the same command as:
MI7,19
Note the lack of a space between the I and 7. No space is allowed!
Each command in the Host mode can be sent by issuing a unique
mnemonic or abbreviation in the form of a two-letter character
group. These mnemonics are shown in the following list before each
command.
8BITCONV 8B MAXFRAME MX
AAB AU MBX MB
ABAUD AB MCON MC
ACHG AG MDIGI MD
ACRDISP AA MEMORY MM
ACRPACK AK MFILTER MI
ACRRTTY AT MFROM MF
ADDRESS AE MHEARD MH
ADELAY AD MONITOR MN
ALFDISP AI MORSE MO
ALFPACK AP MPROTO MQ
ALFRTTY AR MRPT MR
ALIST AL MSPEED MP
AMTOR AM MSTAMP MS
ARQ AC MTO MT
ARQTMO AO MYALIAS MA
ASCII AS MYALTCAL MK
ASPECT AY MYCALL ML
AWLEN AW MYSELCAL MG
AX25L2V2 AV NEWMODE NE
AXDELAY AX NOMODE NO
AXHANG AH NUCR NR
BAUDOT BA NULF NF
BEACON BE NULLS NU
BITINV BI OK OK
BKONDEL BK OPMODE OP
BTEXT BT PACKET PA
CANLINE CL PACLEN PL
CANPAC CP PACTIME PT
CASEDISP CX PARITY PR
CBELL CU PASS PS
CCITT CC PASSALL PX
CFROM CF PERSIST PE
CHCALL CB PPERSIST PP
CHDOUBLE CD PRCON PC
CHECK CK PRFAX PF
CHSWITCH CH PROUT PO
CMDTIME CQ PRTYPE PY
CMSG CM RAWHDLC RW
CODE C1 RBAUD RB
COMMAND CN RCVE RC
CONMODE CE RECEIVE RE
CONNECT CO REDISPLA RD
CONPERM CY RELINK RL
CONSTAMP CG RESET RS
CPACTIME CI RESPTIME RP
CRADD CR RESTART RT
CTEXT CT RETRY RY
CWID CW RFEC RF
DAYSTAMP DS RXREV RX
DAYTIME DA SELFEC SE
DCDCONN DC SENDPAC SP
DELETE DL SIGNAL SI
DFROM DF SLOTTIME SL
DISCONNE DI SQUELCH SQ
DWAIT DW SRXALL SR
EAS EA START ST
ECHO EC STOP SO
ESCAPE ES TBAUD TB
FAX FA TCLEAR TC
FAXNEG FN TIME TM
FEC FE TRACE TR
FLOW FL TRFLOW TW
FRACK FR TRIES TI
FSPEED FS TXDELAY TD
FULLDUP FU TXFLOW TF
GRAPHICS GR TXREV TX
HBAUD HB UNPROTO UN
HEADERLN HD USERS UR
HID HI USOS US
HOST HO VHF VH
HPOLL HP WIDESHFT WI
ID ID WORDOUT WO
ILFPACK IL WRU WR
IO IO XFLOW XW
JUSTIFY JU XMIT XM
KISS KI XMITOK XO
LEFTRITE LR XOFF XF
LOCK LO XON XN
4.10 COUNTRY.DOC FILE:
----------------------
** Continental Designator's **
NA - North America
SA - South America
EU - Europe
AS - Asia
AF - Africa
AU - Australia
** Country Designator's **
Country codes (abbreviated list to show common country codes):
Argentina ARG Japan JPN
Australia AUS Korea,North PRK
Austria AUT Korea,South KOR
Belgium BEL Lebanon LBN
Bermuda BMU Liechtenstein LIE
Bolivia BOL Luxembourg LUX
Brazil BRA Malaysia MYS
Brunei BRN Mexico MEX
Bulgaria BGR Monaco MCO
Canada CAN Morocco MAR
Chile CHL Netherlands NLD
China CHN New Zealand NZL
Colombia COL Nicaragua NIC
Costa Rica CRI Norway NOR
Cuba CUB Pakistan PAK
Denmark DNK Panama PAN
Dominican Republic DOM Paraguay PRY
Ecuador ECU Peru PER
Egypt EGY Phillipines PHL
El Salvador SLV Poland POL
Finland FIN Portugal PRT
France FRA Romania ROM
French Polynesia PYF Saudi Arabia SAU
German Demo. Rep. DDR Singapore SGP
Germany, Federal Rep DEU South Africa ZAF
Greece GRC Spain ESP
Greenland GRL Sweden SWE
Guatemala GTM Switzerland CHE
Haiti HTI Syria SYR
Honduras HND Taiwan TWN
Hong Kong HKG Thailand THA
Hungary HUN Turkey TUR
Iceland ISL United Kingdom GBR
India IND United States USA
Indonesia IDN Uruguay URY
Ireland IRL USSR SUN
Israel ISR Venezuela VEN
Italy ITA Yugoslavia YUG
4.11 MS400.MOD:
---------------
Shared Interrupt Modification
-----------------------------
Purpose:
--------
This modification will allow a packet BBS using the CBBS, WA7MBL,
W0RLI, AA4RE, or KA2BQE code to install 4 ports using only one
slot and one interrupt request line (IRQ) on an IBM PC or
compatible. The change is nondestructive since no traces are cut
and can be easily removed.
Hardware:
---------
The DFI MS-400 board provides 4 ASYNC ports and is available from
several sources. It comes in two flavors: XT and AT with the
only difference being the 8250 versus the 16450 chips. As
shipped from the factory, the MS-400 requires one IRQ line per
port.
Additional parts required are 4 small signal diodes (I used
1N914s from Radio Shack) and a 4.7K resistor (1/8 or 1/4 watt).
JDR MicroDevices carries (or at least did so on Nov 1st, 1987)
the MS-400. Their part number for the XT version is MC-MS and it
was priced at $80. Address: 110 Knowles Drive, Los Gatos, CA
95030. Their phone is (800)-538-5000 or (408)-866-6200 (for CA
and non-US).
Planning:
---------
Unfortunately, you must plan your use of the ports since the
exact placement of the parts is dependent on the change. First
determine how many ports will be for BBS use only and how many
should be for general use.
Some possible variations are below. Note that the numbers must
be consecutive.
Multipurpose ports BBS Ports
------------------ ---------
none COM 3,4,5,6
COM 2 COM 3,4,5
COM 1,2 COM 3,4
These are not all the possible permutations. In fact, two cards
could be used to provide 8 BBS ports if you like. Trying to
explain how to set up all the possibilities would take many
pages of text.
The change outlined below forces all the BBS ports down IRQ2
leaving the standard COM1 and COM2 IRQ lines alone.
Carrying out the change:
------------------------
Example will use COM2 as a multipurpose port and COM 3,4,5 for
BBS.
1. Referring to your MS-400 booklet, set the address dip
switches (SW1) for the lowest port you want to use. Example:
COM2 (off off on).
2. Set the dip switches that select the IRQ lines for the
multipurpose ports ONLY!! COM1 uses IRQ4, COM2 uses IRQ3.
Example: SW2 #2 is on while all the rest are off.
3. Turn over the card to the side without the parts and locate
the pins that correspond to the dip switches SW2 and SW3.
4. For each BBS only port, solder a diode across the DIP switch
position that corresponds to IRQ2. The cathode should be away
from the edge connector. The diode makes the path that the
switch would have. One way to find the exact position is to turn
on IRQ2 for all the BBS ports and test for the proper pins with
an ohm meter. Solder the diodes in place and then TURN OFF the
IRQ2 switches.
5. Run a quick ohm meter test to make sure the diodes are in the
right spot. The cathode ends of the diodes should all show
continuity between each other. The anode ends should not!
6. Solder the 4.7K resistor between the cathode end of any diode
and ground. There are several nearby ground lines that can be
used. I used pin 7 of the big 25 pin RS-232 connector for the
first port.
Warning!!! The broad trace around the edge of the card
is not ground. It is +5 volts. The ground lines will show
continuity to pin B3 (third from the left of the edge
connector).
7. That's it. You are ready for the smoke test. As you can
see, the modifications are non-destructive. Simply unsoldering
the diodes and the resistor will return the card to the factory
state.
Software Changes:
-----------------
No changes are needed to the mailbox programs themselves but the
I/O routine must be setup. You will need MBBIOS V2.0 or higher
plus the accompanying customizer (MBBCONFG).
1. Execute MBBCONFG as per the instructions included with
MBBIOS.
2. Put any multipurpose ports in the first slot (and second if
needed).
3. Select the next slot. On the port description panel, specify
the type as "B" ("Specified exactly"), put in the desired COM
number and hit enter.
4. On the exact specification panel, put the actual port type as
"5" ("Shared ASYNC Port"). Specify the address as shown below
and the interrupt number as "2"
COM1 -- 3F8 COM5 -- 2F0
COM2 -- 2F8 COM6 -- 2E8
COM3 -- 3E8 COM7 -- 2E0
COM4 -- 3E0 COM8 -- 260
5. Repeat steps 3 and 4 for each BBS only port.
6. Exit the program using the "F3" key.
Running the code:
-----------------
Before running your mailbox program, MBBIOS must be initialized.
MBBIOS should respond with an "MBBIOS ready" message. The W0RLI
"C" users should now issue an MBMODE for each port the mailbox
will use.
That's all folks!
If you have a problem:
----------------------
If the card looks like it is sending but you receive nothing then
try the following:
1) Check the diodes. Either backwards or one is shorted. A
shorted diode drove one poor fellow nuts.
2) Switches off. Make sure all the IRQ select switches for
the ports with diodes are off!
3) Voltage check: Put a voltmeter on the junction of the diodes
and the resistor. When you power the computer up, this voltage
should be low (1V or less). When data from the TNC comes in and
the port has been enabled, this should go high momentarily and
then back. I can't see the pulse on a normal voltmeter. If it
powers up high, the resistor is not working. If no pulses, the
diodes are screwed up. If the voltage at power on is more than
1V but less than 3.5V, adjust the resistor size. One board
required 1.5K instead of 4.7K.
4) Voltage check: Put a voltmeter on the other side of the
diode for the port you are testing. It should behave just
like 4. If it goes high when the data appears and stay high
the diode is either backwards or bad.
Some notes:
-----------
Thanks to K4NTA, KB6IRS, and W0RLI for supporting this work.
You are not restricted to the addresses shown above or IRQ2. I
used them to try and simplify matters for most people who won't
care.
If you need some weird configuration or want to install more than
one card, drop me a note either via U.S. Mail or packet via
AA4RE BBS. I can also be contacted through the IBM Radio Club.
If you are absolutely confused as to where the diodes go, send me
an SASE with your desired setup and I will return a board layout
with the pins needed marked.
Roy Engehausen
AA4RE
8660 Del Rey Court
Gilroy, CA 95020
NOTE:
-----
The latest version available for the MBBIOS and MBBCONFG is
Version 3.5.
5.0 GLOSSARY
5.1 GLOSSARY.DOC FILE:
----------------------
This is an attempt to explain some of the terminology used
elsewhere. Being an EE by education and a programmer by profession,
I tend to write in obsure jargon at times. This .DOC file will
attempt to explain some of it.
TRANSPARENT --
This refers to transmissions to a user. If a
transmission is TRANSPARENT then the BBS fills the packet to
the maximum packet length before sending it to the user. The
end of a packet may come in the middle of a word. Most TNCS
will glue the packets back together correctly but it may be
annoying for a user to see a partial word on his screen
followed by a long wait for the next packet. If TRANSPARENT
is off, the BBS will always terminate a packet at a carriage
return unless the line is more than the packet length long.
For another BBS (especially other AA4RE BBS, MSYS, or anyone
running the G8BPQ code), turn on TRANSPARENT since the BBS
programs don't care.
TRANSPARENT is controlled by the "T" flag in user file. New
users receive their TRANSPARENT settings from the PARMS.BB
parameter called DEFAULT_TRANSPARENCY