.TOPIC:
Contents
VIRTUAL HYPERTEXT DOCUMENTATION - VDOC2 - Modems, Scripts, & Networks   
        Use mouse to click on topic or use ALT/ARROW/ENTER keys

                    -  Table of Contents -

Help Using Hypertext Help      VirtualNET Help
Networks Help                  Hypertext Help Registration
Modem Help                     Updating Hypertext Documentation
V-Script Help                  Credits and Acknowledgements
VSP Support List               Multitasking Help
                                 VQWK

Click on the upper left corner of the application window and close the
window to RETURN to VDOC1 or to EXIT

.TOPIC:
VirtualNET Help
                          VIRTUALNET -

                      - Table of Contents -

About VirtualNET                      Help Using Hypertext Help
Network Message Areas                 The Subs List
E-Mail                                Network Decorum
Taglines                              Network Support
Joining VirtualNET                    VirtualNET Installation
The Role of the AC                    VNET Commands
Establishing a Client-Server connect  Subs Management
Extended Connects                     VAREA
File Requesting                       Virtual Newsletter

.TOPIC:
About VirtualNET
What is VirtualNET?:

    VirtualNET is a wide area network of on-line bulletin board systems
and mail servers. The link acomplishing this is the Virtual BBS software
authored by Roland De Graaf. The purpose of VirtualNET is to provide a
variety of discussion areas and sub-boards for bulletin board users.
It also provides technical support for VBBS software, and interaction
between VirtualNET SysOps. This fast growing network is open to all
newcomers who wish to join. VirtualNET is public networked message areas,
private message areas, electronic mail, and more!

     VirtualNET has the current distinction of being the fastest growing
amateur network in the nation. With effort on the part of all
pioneering VirtualNET SysOps, VirtualNET will continue to grow at an
exponential rate.

     Founded in 1990 by Roland De Graaf and John Bok, VirtualNET is managed
by its Network Coordinator, Regional Coordinators, and Area Coordinators.

.TOPIC:
Network Message Areas
Networked Message Areas:

VirtualNET sports 3 different kinds of Public/Private Networked Message
areas: AutoRequest, AutoSecured, and Secured. AutoRequest and AutoSecured
sub-boards are considered public sub-boards, while Secured subs are
more private in nature. All Message Areas are identified by a "Sub Number."

Setting up new subs on your VBBS can accomplished either thru 
VCONFIG, or thru Neil J Marshall's VAREA program.

AutoRequest:

   Subscribing to autorequest type subs is easy. Just use VCONFIG
or VAREA to set them up. You will be able to send and receive posts
almost immediately. "Hosting" of an autorequest subs is difficult,
since it is not possible to prevent systems from accessing an
autorequest type sub-board.

Secured & AutoSecured:

   Subscribing to secured subs takes a little more work. These subs have
a clearly defined Host, who can add or remove systems at his/her own
discretion. Setting up a secured sub can be done automatically, thru
the VAREA program, or manually thru VCONFIG. A Host of a secured sub
must create a "distribution list" of the systems to receive a 
particular sub. Subscribers must be sure to identify the host.
(For more information on setting up Secured and AutoSecured, please 
see the Appendices).

Click on BACK to return to the VirtualNET Menu

.TOPIC:
E-Mail
Email:
                 See also Multi-Mail
   Private email routing is a function of the network. Each user on your
system has a unique VirtualNET address and if given appropriate security
may send and receive mail across the network. Note that your BBS must
be properly listed in the networked BBSLISTs in order for email 
routing to work properly. There is nothing further you need to set-up.
Note: VBBS allows for Carbon-Copy and MultiMail List facilities. You must not
allow your users to abuse such functions on the network.
           
Click on BACK to return to the VirtualNET Menu

.TOPIC:
Multi-Mail
Note: VBBS allows for Carbon-Copy and MultiMail List facilities. You must not
allow your users to abuse such functions on the network.

        Unless your network clearly states that Multi-Mail can be used as
a mass mail advertizement, then it is wise to assume that it can NOT be
used in such a mannor.  It's better to be sure, as most networks contain
a clause as listed below:

15. The Network Coordinator may remove any system from the network,
    without prior notification, for any reason.

Again, mass mail is a GREAT tool.  However, it's misuse can cause much
unhappiness.  Please restrict mass mail to Sysops all ready subscribing
to your network, or sysops all ready subscribing to your message sub.

        One should NEVER use Multi-mail as a means of advertizement.
Unlike the junk-mail you recieve in your mailbox at home, which you
do not pay the postage to recieve, each sysop DOES pay the cost to
transfer these mass mailings.  Please be a good sysop, and help other 
sysops keep their phone costs down.


.TOPIC:
Taglines
Taglines:

Taglines are a great way to personalize posts, and appear as a stamp
on the bottom of each posted message. System taglines are made 
optional for each message base. Taglines are limited by the software 
and by VirtualNET policy to 3 lines of "ascii" or "heart code" 
color with a maximum size of 300 bytes (characters).

Taglines are a great thing and can be quite informative. SOME network
sub hosts however, do not allow the use of taglines in their subs.
If you carry "gated" subs or are part of another network, it is
recommended that you familiarize yourself with policy related to tagline
usage.

Click on BACK to return to the VirtualNET Menu           

.TOPIC:
Joining VirtualNET
Joining VirtualNET:

    Included with the VBBS program, is a list of VirtualNET BBSs
which is current at the time of the release (BBSLIST files). If you
would like to have your BBS join VirtualNET or have further questions
regarding VirtualNET, please contact the Area Coordinator (AC) for your
area as listed in the BBSLIST files. These are located in your NET
subdirectory.  To locate the AC nearest you, load BBSLIST.NET and
do a search on your area code. The board with an AC designation after
the BBS name is the place to contact. If your area does not yet have an 
AC, please contact one of the VirtualNET Regional Coordinators (RC) as
listed. All RCs can be reached through VirtualNET addresses.

        ===============================================================
                      VirtualNET Administrative Directory
        ===============================================================

          Network Coordinator:       John Bok   1@6160    VirtualNET
          Asst. Network Coordinator: Gene Wells 1@1604017 VirtualNET

                   This information updated on 10-06-1993 @ 3pm

                                      -
                           
                              Regional Coordinators
         
                 Region 1:   Mike McKenzie   1@1618002 VirtualNET
                 Region 2:   Bill Snell      1@2150    VirtualNET
                 Region 3:   Kevin Rouse     1@6190    VirtualNET
                 Region 4:   Dennis Younker  1@1619001 VirtualNET
                 Region 5:   Neil J Marshall 1@440     VirtualNET
                 Region 6:   Roland Emery    1@1604000 VirtualNET
                 Region 7:   Patrick Murray  1@1919999 VirtualNET
                 Region 8:   John Bok        1@6160    VirtualNET

                 SubsList:   Neil J Marshall 1@440     VirtualNET


        ===============================================================
                                REGIONS LISTING                                   
        ===============================================================

        Region 1 (Midwest US) Coordinator: Mike McKenzie  1@1618002 VirtualNET
                                           (618)277-6398
                                      
        Minnesota, Iowa, Missouri, Wisconsin, Illinois, Indiana,
        Ohio, Michigan, North Dakota, South Dakota, Nebraska

        218 612 507 712 515 319 816 417 314 715 906 414 608 815 708 309
        217 618 312 812 317 219 419 216 513 614 616 517 313 605 701 308 402
                         ----------------------------
        Region 2 (East US) Coordinator: Bill Snell 1@1610000 VirtualNET
                                        (215)759-1376

        Virginia, W. Virginia, Maryland, Washington DC, Delaware, New Jersey,
        New York, Pennsylvania, Conneticut, Rhode Island, Main, Vermont, New
        Hampshire

        207 802 603 413 508 617 401 203 516 212 718 201 908 609 302 301 703
        804 304 412 814 215 717 914 607 716 315 518 410
                          ----------------------------
        Region 3 (South US) Coordinator: Kevin Rouse 1@6190    VirtualNET
                                         (512)292-1301

        Texas, Arkansas, Louisiana, Mississippi, Oklahoma, Kansas

        501 318 504 601 210 806 915 817 214 409 713 512 918 405 316 913 903  
                          ----------------------------
        Region 4 (West US) Coordinator: Dennis Younker 1@1619001 VirtualNET
                                        (619)670-9825

        Washington, Oregon, California, Montana, Idaho, Arizona, Nevada,
        New Mexico, Utah, Wyoming, Colorado, Alaska, Hawaii

        307 801 303 719 702 602 505 406 208 714 310 808 209 805
        619 916 707 415 818 213 510 808 206 509 503 809 907
                          ----------------------------
        Region 5 (Europe) Coordinator: Neil J Marshall 1@440 VirtualNET
                                       44-68-989-0937

                           All European Country Codes
                          ----------------------------
        Region 6 (Canada) Coordinator: Roland Emery 1@1604000 VirtualNET
                                       (604)338-2316

                            All Canadian Area Codes
                          ----------------------------
        Region 7 (SouthEast) Coordinator: Patrick Murray 1@1919999 VirtualNET     
                                          (919)683-1661

        Kentucky, Florida, Georgia, North Carolina, South Carolina,
        Tennessee, Alabama

        502 606 305 407 813 904 404 912 704 919 803 615 901 205
                          ----------------------------
        Region 8 (Pacific Rim) Coorindator: John Bok 1@6160 VirtualNET   
                                            (616)772-0347
                          Pacific Rim Area Codes
                          ----------------------------

                     APPLICATION FOR VIRTUALNET

To become a node on VirtualNET please fill out the following 
form and return it to the Area Coordination for your area.  If you 
do not know who this is then send it to the Region Coordinator.  

Your assigned node number will be sent to you and passed on through 
Network E-mail to the Regional Coordinator for inclusion in the 
international BBSLIST AFTER the applicant has been connected to a 
VirtualNET local server (with 'sysop only' network access) for a 
period of not less than ONE WEEK. Should the AC have reason to feel 
that the applicant requires more time to become acclamated to the 
network or is otherwise not yet prepared, they may extend this 
period but, in NO case should the total period exceed THREE weeks. 

In all cases, pending VirtualNET nodes should state that they have 
read and understood the VirtualNET policies contained in the Network 
documentation and to as well understand and agree to the specific 
policies (if any) of his or her Server.

The return of this form to the AC or RC for your region is proof 
that you have read, understand and agree to the rules of the 
VirtualNet.

 1.  Date of Application:
 2.  Sysop's real name:
 3.  Sysop's handle (if any):
 4.  Address:
 5.  City:                     6. State:                7. Zip:
 8.  SysOp Date of birth:
 9.  Voice Phone No.:
 10. Other Network affiliation (if any):

 Node number assignment will be made by the AC or RC.  Please enter 
 the server you have set up.  If you do not have a server the AC or 
 RC will arrange one for you.

 Replace the X's below with the correct data for your system.
 
 Node       BBS phone    System Name                      Modem      Server
 No.        Number                                        Type *
 -----      ------------ --------------------             ------     ----
 @XXXXXXXXX XXX-XXX-XXXX XXXXXXXX XXXXXX XXXXXXX          XXXX       XXXX  

 11. Registration No.____________________
 

 * Modem type e.g 1200, 2400, V32, HST, HST/DS, Not brand name unless its a 
   Compucom.

This form is to be returned intact with no changes other than the 
addition of the data.  Please do not change the layout of the form 
in any way as it is set up to be read by macros to extract the data 
to the bbslist and a database. 

This is the standard form for a new VirtualNET node assignment. It gives the
AC for your area the needed info to pass on to the Network RC. It also
provides phone numbers to the network administration should there ever be a
need to contact you. Once you have completed this form, please return it to
your Area Coordinator or to a VirtualNET Regional Coordinator should your
area not yet have an AC.

Node assignments are usually effected within a weeks time. Generally,
you can expect to become official within a few weeks of your application.
Updates to the BBSLIST.NET are sent out generally twice each week by
the Regional Coordinators reflecting changes and additions made.

Click on BACK to return to the VirtualNET Menu           

.TOPIC:
The Role of the AC
The Role of the AC:

(ACs) - At the backbone of VirtualNET are the Area Coordinators. They
are the ambassadors between their area and VirtualNET. Normally,
one AC is assigned to each telephone area code. This position is purely
voluntary. Area Coordinators are assigned by that region's RC.


Requirements of the VirtualNET AC-

1) Be operating an accessable VBBS 24 hours per day.

2) Be able and willing to provide time and effort toward support and
   the growth of the network.


Duties of the VirtualNET ACs-

1) Promote and support VirtualNET within your area as you are able.
   Encourage and help others to be a part of, and contributors to
   VirtualNET.

2) Provide a positive image of VirtualNET within the online community.

3) Resolve conflicts that arise when able within the area and promote
   harmonious participation within the network.

4) Active participation in the VirtualNET AC sub.

There is NO basis for an arbitrary delay in providing a VBBS SysOp 
with access to the VirtualNET support subs.

It is also recommended that new systems set their networked message 
bases to 255 security level access (SYSOP) until such time that 
their node becomes official in the BBSLIST.

AC's are encouraged to provide at least one Area secured type sub for use
in discussing local issues and what not, making that sub available to
all VirtualNET SysOps within his or her area.

.TOPIC:
Establishing a Client-Server connect
Establishing Connects (Servers and Clients):

       A new VirtualNET node is asked to make an initial connect with
that area's AC, or other appointed system  for at least one week and 
for as long as three weeks prior to the AC handing a node assignment 
in for addition to the international BBSLIST. The purpose of this is 
to ensure that the new node is fully familiar with the network and 
is setup properly before officially joining the network. This is 
particularly important in cases where that new node will be making 
an official connect directly with a national server.

      Note: Once your Network account has been established, it is
incumbant upon you as a Client to NET in to your Server in a timely
manner. Due to matters regarding storage of Network Packets, Clients who
do not NET in to their server for 14 days run the risk of having their
pending packet deleted by the Server SysOp, unless notification is 
made. If you are having problems, or for whatever reason are not 
able to receive your packet from your Server on a timely basis, be 
sure to contact your Server right away.

Also, if you are going to be leaving the network, please notify your
Server as well as your Area Coordinator.

.TOPIC:
The Subs List
The Subs List:

The VirtualNET Subs List is updated weekly by the Subslist Coordinator.
The current Subslist appears in your NET directory, in a file called
SUBSLIST.NET. Note: VAREA makes use of the SUBSLIST.NET file to 
present you with an easy interface for adding and removing subs.
To request subs type: varea networkid=1 <ENTER>
add this line to your daily events to automate Varea:
        varea networkid=1 /auto /verify /delete
        See Varea.doc for additional information.

Click on BACK to return to the VirtualNET Menu           

.TOPIC:
Network Decorum
Decorum:

VirtualNET was founded on the principle of common courtesy. In a
sense, that is the only VirtualNET "rule". The network is place where
information, ideas, and opinions all come together from different
corners in a virtual cornucopia that celebrates the varied differences
of backgrounds and experiences of those who are a part of the network.

First and Foremost, it is a SysOp's unique responsibilty to
limit Network access on his or her system to responsible users.
SysOps are expected to handle any problem user which is accessing
the network from his or her board. In the event that a problem is
persistant, a warning will be issued to that system. If the problem
continues, the Network Coordinator will have no choice other than to
suspend the network connect to the originating node.

To help you "fit in", here are some "do's and don'ts" for the net.
Some of these are just common sense, but a few have been learned 
from "The BBS School of Experience".

 1. Always remember that you are a guest in many homes, when you post on the
    net.  Please keep the language clean.  If you read a post containing
    questionable language, please don't quote the questionable portion in your
    public reply.  This only gives the post greater exposure, and irritates the
    sysops that have to delete your post.  It is more appropriate to EMAIL the
    offending poster, or the sysop of the originating system, rather than start
    a "flame war" with a public reply.  There are secured subs that allow the
    use of any style language.  Please confine your questionable language to
    these subs.

 2. Sometimes it is better to ignore a post that stirs your ire.  If you must
    reply, it is better to make it via email, rather than a public post.

 3. NEVER make something received in email public, unless you have the sender's
    permission. Making Email public is annoying behaviour and may be 
    grounds for removal from the network.

 4. Always try to be helpful toward the newer members.  Remember, you were new
    at one time.  VirtualNet has grown on it's reputation of providing out-
    standing help for VBBS/VirtualNet problems.

 5. Always try to be factual when you post.  This will gain respect for you,
    and build your reputation as one "whose post has merit."

 6. Never "talk down" to anyone.  Calling someone an idiot will not win friends,
    nor gain the respect of your fellow net members.  If you wish to be
    respected, and maintain a good standing in the network, you must 
    respect others.

 7. Remember that it is hard to write something, and have it interpreted in the
    "tone of voice" that you wrote it.  Something meant as satire, can come
    across with a completely different meaning.  Try to indicate your meaning
    by symbols, such as :), <grin>, ;), <satire>, etc.

 8. VirtualNet has a reputation of being "free and open".  As such, the threads
    on some of the subs tend to wander off topic.  Please make an effort to
    remain on topic.  The net members (and sub hosts) will be grateful.

 9. Everyone has "a bad day".  Someone will sometimes post something that
    he/she would like to recall.  Give the poster the benefit of the doubt.
    Often, an apology will follow a day or so later.  Instantly "flaming" the
    poster will bring ego into play, making a retraction impossible.

10. Realize that a message does not appear on all systems on the same day.
    A message that you reply to, and think settled, may continue to receive
    replies for several days.

11. Remember that everyone is entitled to their opinion.  If you do not agree,
    a cool, reasonable, post stating the reasons for your disagreement, is
    much better than lowering yourself to name calling.  Realize that some
    people will argue, just for the sake of argument.  If you find yourself
    involved with one of this type, swallow your pride and let the argument
    die.  It takes two to sustain an argument.

12. Do not belittle anyone's computer, software, etc.  Remember that you
    choose your equipment because it best suited your needs.  The other
    person may not have the same needs as yourself.

13. All ADULT material must be propagated via secured sub type,
    and access is the sole responsibility of the sub-host.

14. The views expressed on VirtualNET are not neccessarily those
    of the VirtualNET staff.

15. The Network Coordinator may remove any system from the network,
    without prior notification, for any reason.

16. Any gateways into or out of VirtualNET must be pre-approved by
    SubsList Coordinator.

17. Use of high-ascii in To: & From: headers, and in BBSLISTs
    is prohibited. Use of high-ascii may be totally prohibited
    on certain networks and network gateways.

18. Taglines must be limited to a maximum of 300 bytes in size,
    and 3 lines in length.

Click on BACK to return to the VirtualNET Menu         
    
.TOPIC:
Network Support
Support:

        Sometimes things don't work quite as they should when first
establishing a connect with a server. If you have read and followed the
documentation, and find that you are for whatever reason recieving
errors, contact your Server and let him or her know what the problem is.

        VBBS and VirtualNET share the same cooperative support
structure. Servers, AC's and CORE support boards are there to help you
should you experience problems. The posts that you send regarding
problems should always include your Network address (node #), as well as
your name, software version, WHICH network you're having problems with,
and whether you are a running the program Standalone or as a door.
It is important as well that you are as specific as possible regarding
the nature of the problem as well as where it occurs. Invariably,
almost all errors are the result of something not being quite right
in the installation.

        The Support structure available to you is geared for maximum
efficiency in resolving problems. No matter who you contact, your mail
has a good chance of being forwarded within the support structure to
another SysOp for resolution. This way, not only is the volume of
support spread more evenly, but as well should result in a more prompt
and accurate reply to the SysOp requiring support.

        As you have access to the VirtualNET Support Subs however,
please make use of the public support by posting there whenever
possible as it will provide the greatest benefit to the Net as a whole.
There is a team of support SysOps affectionately known as the Virtual
Ski Patrol. These volunteers are there to help resolve problems and
questions which are posted and generally make sure that all posted
problems and questions are resolved or answered.

Click on BACK to return to the VirtualNET Menu           

.TOPIC:
VirtualNET Installation
                      VIRTUAL NETWORK INSTALLATION

In order to use the networking features, you will need to have the following
programs: (Which VBBS will utilize automatically.)

VXY                    VBBS Xmodem, Ymodem, Zmodem Driver
DSZ                    DSZ External Protocol Driver
HS-LINK                HS-Link Bi-directional Protocol (if desired)
PKZIP and PKUNZIP      PKware ZIP Archive Utilities

 Installing the Net-
 --------------------
   The VirtualNET networking software, VNET.EXE is already included with
   the VBBS program. Once you have recieved you node assignment and have
   established yourself as a "client" to a VirtualNET "server" you
   simply need to do setup the VirtualNET Network Section in VCONFIG.
   You will need to enter your node number, and the node number of 
   your server, and your server's phone number to be able to start
   "netting."

 Events and Dialing Thresholds
 -------------------------------
   There are two ways to effect automation between Clients and
   servers. One way is to enable the dialing threshhold in network
   configuration. Once the defined threshold of kb of pending messages
   is met, the software will either call your Server, or poll your
   clients (if any) depending on the situation. Local option is active
   24 hours. Long Distance restricts the time of a particular network
   dialout to 12am and 8am. Threshold is disabled with a setting of 0.

     Another way to automate the network is to take advantage of one
   or more of VBBSs 20 definable events. See the VNET command lines
   that follow. These commands can be used from a DOS prompt as well
   as a batchfile and inserted as WFC function keys or as event batchfiles.

Protocol Choices
----------------
   VirtualNET SysOps have three choices in transfer protocol options.
   The default choice is VXY Ymodem. Optional protocols are DSZ
   Zmodem, and HSLINK. 

Phone calling options
---------------------
   There are many phone calling options available to clients making
   long distance connects. AT&T, MCI and Sprint all have discount
   calling options for off peak calling and frequently called numbers.
   Contact those companies regarding the options available to you.
     
     Another popular calling option for some is a service known as
   PC Pursuit. For more information on PC Pursuit, contact the 800
   information operator (1-800-555-1212) for the 800 PCP information
   desk in your area. The Main VirtualNET server in W. Michigan is NOT
   within an INDIAL PCP area. Other National VirtualNET servers ARE
   however and if you are using PCP, you will need to contact your RC
   regarding the establishment of a PCP connect. Below is an example
   of a PC Pursuit macro for VNET;

{Delete the comments after the double slash (//)).
Put your local PCP number in the network config in VCONFIG.
Put this macro in your main VBBS directory and it should work just fine.
----------------Macro starts below this line----------------------------
SEND @D^M
SEND D1^M
RECV @
SEND D^M
RECV NOT
SEND C D/CASJO/24,IDxxxxxxxx,PWxxxx^M  // Put your ID, PW and Server's
                                      // City code here
RECV D/CASJO/24 CONNECTED            // City code goes here also
SEND I^M                            // Download the RVPrimer.arc
SEND ATZ^M                         // from PC Pursuit or my BBS to
RECV OK                           // understand why I did this
SEND ^E^M                        //  like this instead of using
RECV HELLO                      //   Hayes command set.
SEND D7328958^M          // Server's Phone Number goes here
RECV ANSWER TONE        // This line was included to delay the Vnet
                       //  30 second time out feature.
---------------------End of Macro----------------------------------------
Please contact Lazurus Long (1@4081) for further assistance w/ PCP.

Click on BACK to return to the VirtualNET Menu           

.TOPIC:
VNET Commands
                       VNET Commands

VNET.EXE is the networking software for the Virtual BBS/NET. It should
be run out of the same directory as your Virtual BBS. For the most part,
VBBS.EXE activates VNET.EXE as needed, however there are command
switches which you may employ during execution from a batchfile or Dos
prompt.


The syntax for VNET.EXE is:

VNET <channel #> <command-switch> NETWORKID=<net id>

Note: If NETWORKID is omitted, Network #1 (VirtualNET) is assumed.

<channel #> specifies which VBBS serial channel to use.

<command-switch> tells VNET what to do, the possibilities are:

/DIAL# - Dial another VirtualNET.
         # is the node address of the system to dial.

/U     - Updates all the mail packets.

/A     - Analyzes VirtualNET connect and bbslist information sent
         to you from the Network Coordinator.
         Example: VNET /A

/CHECK - VNET Diagnostics

------------
VNET Macros:
------------

   VBBS has the unique ability of VNET.EXE to employ the use
of macros in establishing a Net connection with another VBBS system.
If you are running VBBS from a matrix logon or as a door within another
system, you now have the ability to serve as a VirtualNET HOST system to
other boards from WITHIN the matrix logon or BBS door. If you are
already the host to a remote VirtualNET system which is running in a
matrix logon or door, you may now connect to that system for polling or
whatever.


The macro supports 3 commands. All 3 commands are 4 characters long,
and 1 space is expected between the command and its arguement.

RECV     Waits for a string of characters. If they don't show up
         within 30 seconds, the call is aborted.

SEND     Sends a string of characters.

WAIT     Tells the macro facility what the boards [PAUSE] string is,
         so that it can be handled should it come up when RECV is waiting for
         its string. If it pops up, the macro facility automatically sends a
         0x0D. The use of this facility is optional.

A WWIV example:
WAIT [PAUSE]
RECV NN:
SEND Acct name^m
RECV PW:
SEND codeword^m
RECV ###-###-
SEND 0000^m
RECV T -
SEND .
RECV ?
SEND 1

The above example logs on to a WWIV board, and runs door # 1.
Note that you may send and recv control characters by putting a ^
in front of them.

When the macro is done executing, VNET.EXE proceeds immediately
to waiting for the  which should pop up when VBBS starts running as
a door.
           
Click on BACK to return to the VirtualNET Menu

.TOPIC:
Subs Management
                        SUBS MANAGEMENT

Procedures for Sub-Hosts
------------------------
   When you have a message base or other networked area which you
   would like to "Host", you will need to first decide what type
   of sub you would like it to be. The (S) secure type subs are
   generally preferable as they are more efficient relative to their
   routing. Autorequest type subs can be desirable for new subs as it
   provides the easist access to them and can give a sub-host a good
   idea how much interest there is in maintaining that networked sub.
   ALL Local type subs, that is those which are national/international
   in nature, as well as ALL "adult" content type subs MUST be (S)
   secure subs according to VirtualNET Policy. Subs which are gated
   into other networks will always follow the rules of that network.
   Sub-hosts of GATED subs shall respect the rules and policies of the
   originating network's sub host (if any) and insure that gateway
   subscribers follow the wishes of that network's sub host. It is
   reccomended that GATED subs use the (S) secure sub types.
   Once you have a networked area that you would like to host, you
   will need to give it a formal name and a description for the
   Subslist Coordinator. If you are hosting a (S) secure sub, you will
   need to post the name and description of the sub, along with the
   sub-host VirtualNET address and the subtype so that it may be
   recorded in the SUBSLIST.NET. If your new network sub is an (A)
   autorequest sub, then you will additionally post a REQUEST to the
   Subslist Coordinator (1@4080 Friday Jones) for an sub number
   assignment there on the Yellow Pages sub #228. The Yellow pages sub
   should also be used for advertizing your sub (ansi art allowed).

Setting Up Secured Subs:  V#####.NET and VV#####.NET files
----------------------------------------------------------

V#####.NET and VV#####.NET files (##### = sub number) are text files
that reside in your VBBS network directory.

V#####.NET files are used by sub hosts to set up their list of
subscribers. It is just a simple text file, with one entry per line.
The entries are the node numbers of the subscribers.

VV#####.NET files are used by subscribing systems to identify
the sub host. There is only one entry in a VV#####.NEt file --
the node number of the sub host.

If you would like to HOST a secured sub:

1. Determine what sub number you want to use.
   (See pg 16 for more info on sub numbering.)
2. Create the sub database -- dont forget the sub number!
3. Advertise on the Yellow Pages, give the sub number, the sub name,
   a brief description, and the node address of the host of the sub.
4. As requests for a sub pour in, enter the node numbers, one per line,
   into a V#####.NET file, as ascii text.  ##### = sub number.

If you would like to SUBSCRIBE to a sub:

1. Email the Host of the sub asking for access
   Be sure to specify the sub number.
2. Create a VV#####.NET file containing one line, the node number
   of the sub host. ##### = sub number.
3. Create a new database for the sub -- dont forget the sub number!

Handles/Real Names/Anonymous
----------------------------
    The SysOp has the ability to toggle usage of Handles, Real names
    or anonymous posting. All subs will be assumed to be handles
    unless the sub-host designates otherwise to the Subslist Coordinator. 
    Real names are often required in other networks and if a GATED 
    sub requires Real names then the VirtualNET host is responsible 
    for that being made known to the Subslist Coordinator. Anonymous 
    posts can be useful for instance in support and recovery type of 
    message bases where a sub-host feels that users would be more 
    comfortable obscuring their identity altogether.

Permanent Messages
------------------
    Permanent messages are a great way for a SysOp to display in a
    message base, a synopsis and any rules regarding that message
    base. Sub Hosts may decide from time to time post a message
    base specific permanent message for the subscribing SysOps to flag
    for a permanent post. When that post reaches the # 1 position, it
    will not be purged. This way, an explanation of the message base
    can always be found in the first post of a message base.

VAREA Automated VNET Message Base Subscription Utility
------------------------------------------------------

VAREA, programmed by Neil J Marshall, 1@440 VirtualNET, is the official
message base subscriber utility for VirtualNET.  Its a lot more fun 
setting up new message bases with VAREA than with VCONFIG :)

Add this line to your daily events: VAREA NETWORKID=1 /AUTO /VERIFY /DELETE
To request or Start a NEW sub type: VAREA NETWORKID=1

Please see the VAREA documentation for more details.

Click on BACK to return to the VirtualNET Menu           

.TOPIC:
Hypertext Help Registration
        Registration is NOT required For The VBBS Hypertext 
        Documentation, so long as you register your VBBS--DOS.
        

        The program (C) Restricts Modification of this programs
        EXE file, and additionally, the text files may only be
        altered by OFFICIAL VBBS Document Committee Memembers.

        Future Updates of Hypertext Help Need Only require the
        update of the VDOCx.TXT file.  The EXE file should
        not require updating.

        VDOC1.EXE, VDOC2.EXE and VDOC3.EXE (C) 1993 Rockie Lynn Greer
        The above program files are lisensed to Virtual Technologies 
        for use with VBBS--DOS.  Those who register VBBS--DOS also
        may use these program files without registration.

.TOPIC:
LocalNET Help
Please Choose A Topic Area: 
See VBBS LocalNET General Information
See Creating and Editing Files
See Example UpdateNET


.TOPIC:
VBBS LocalNET General Information
These are the basics of LocalNET:

1.  You may have up to 99 nodes in your LocalNET.      
2.  You may run Vnet Type or non-Vnet types of LocalNETs.
3.  Use special care in creating your network files to   
    insure success.  See Creating and Editing Files.
    Failure to use the exact setup for your files,     
    including spaces will result in LocalNET problems.
4.  If you find you have problems with your LocalNET     
    re-read this DOC or See VDOC3.EXE <Trouble Shooting>
5.  It's important that you create and keep an updated
    Subslist.  See Creating and Editing Files
6.  You can use Neil Marshal's VAREA with LocalNET Subs.
7.  Remember, your LocalNET is only as good as the WORK 
    and effort you put into it.

LocalNET Network Updates:
        VSEND (another Neil Marshal Program) will handle updates for
        you localNET.  VSEND may ONLY be downloaded and used as
        designated by VBBS and VirtualNET management.  Please contact
        your RC or GC if you feel you may quality for VSEND.
        
        If you do not qualify to use vsend, See Example UpdateNET

.TOPIC:
Creating and Editing Files
It is CRITICAL that your files be setup with the proper 
format.  I can't stress this enough.  Cut and paste from
VirtualNET's files to assure proper layout and format.

1.  BBSlist.1 contains the Nodes in your LocalNET.  Node #,
    phone #, BBS name, baud rate and the node number of the
    server in LocalNET they connect with.
2.  BBSlist.0 Contains the Network Cordinator's Information.
    You us NC to distinguish the Network Cordinator.
3.  You must also show the subslist cordinator in order to
    use VAREA.  They are show with SC in the same location
    as NC is for the network cordinator.
4.  Subslist.net lists your subs for LocalNET.  You must
    use the VAREA format and have a section as UNKNOWN
    HOSTS.  Failure to have a listing for UNKNOWN HOSTS,
    EVEN though you do not have any unknown hosts will
    result in a VAREA error.
5.  The Networks.lst file in your c:\vbbs\data directory
    is where you add the NAME of your LocalNET.  You do 
    this by replacing the word LOCALNET with YOURNET where
    YOURNET = the name of your network.
6.  One should note that ONLY networkid=15 will work with-
    out registering VBBS.  If you register VBBS, you may 
    use networkid=19 and networkid's=90 through         
    networkid=99.                  
7.  File transfer sub options in VBBS also work in LocalNET
    networks.                 

It's important to note that EACH LocalNET must have it's 
own network directory.  This directory is a sub directory of
VBBS.  Example: C:\VBBS\LocalNET

Network types are changed in the Networks.lst file which is
located in your VBBS\DATA directory.  Change the Number 1 to
the corresponding network type.     
 
Type 1  Vnet
Type 2  WWIVnet
Type 3  WWIVlink
Type 4  FIDOnet
Type 5  USEnet
Type 6  ICEnet
 
Using the proper network type with the format and layout and 
required additional files of that type network will result
in your LocalNET working properly.  If you have difficulties
setting up your LocalNET then:
 See Example UpdateNET See Vconfig Settings


.TOPIC:
Help Using Hypertext Help
        See the Topic by the same name in VDOC1 for additonal help
        Use your mouse, or ALT and the highlighted key.
        ALT/F-4 EXITS so does closing the window.

.TOPIC:
Vconfig Settings

LocalNET Settings In Vconfig (When LocalNET is configured as VirtualNET type.)

1. Node Number=1              ---Your node number for localNET
2. Net Dir=C:\VBBS\LOCAL      ---Correct path to localNET directory
3. Protocols Allowed          ---Protocols Allowed (Ymodem,Zmodem,HSLINK)
4. Protocol Preferred         ---Protocol Preferred
5. Server=1                   ---The net server for your localNET
6. Server Phone #:7773333     ---Phone # of the modem at your server
7. Server Call: Local         ---Enter [5] to change from long distance/local
8. Server Threshold: 1 k      ---Means your board will call the server when
9. Server Macro: <none>                ever you have 1k of messages to send
A. Server Password: <none>
B. ZIP Trigger Level:       

C. Add/Edit New Client
U. Uninstall this Network

-=<C. Add/Edit Clients>=- 
                              
1. Client Node Number: 2180    ---Clients Node Number that you assigned
2. Client Phone #: 773-8330    ---Clients phone #
3. Client Call: Local          ---It is a Local call
4. Client Threshold: 0 k       ---Means he will call you but you will not him.
5. Client Macro: <none>
6. Client Password: <none>    

D. Remove this Client

See Setting Up Other Than Vnet Type

.TOPIC:
Example UpdateNET
The following is an example of a batch file each node can  
run as a daily event.  If an updated file arrives during 
a network connecton the LocalNET will be updated during the   
daily event.                                                 
                                                      
Naming the batch file:  
        Due to the many LocalNET slots, I recomment the 
        following update batch file naming system --
        updateXX.bat where XX = the networkid of the 
        LocalNET.  Example: Update15.bat

        Also, to avoid bbslist.1's and other updated 
        files from LocalNET's overwriting each other 
        I recommend the following naming system for
        each of these --
        BBSLIST0.XX
        BBSLIST1.XX
        SUBSLIST1.XX
        Again where XX = the networkid of the LocalNET

        -------------- Update15.bat -----------------
        cd\vbbs
        copy c:\vbbs\sysop\bbslist0.15 c:\vbbs\local15
        copy c:\vbbs\sysop\bbslist1.15 c:\vbbs\local15
        copy c:\vbbs\sysop\subslist1.15 c:\vbbs\local15
        cd\vbbs\local15
        del bbslist1.old
        del bbslist0.old
        del subslist1.old
        ren bbslist.1 bbslist1.old
        ren bbslist.0 bbslist0.old
        ren subslist.net subslist1.old
        ren bbslist0.15 bbslist.0
        ren bbslist1.15 bbslist.1
        ren subslist1.15 subslist.net
        cd\vbbs
        vnet /a networkid=15
        varea networkid=15 /auto /verify /delete
        --------------------- end of file -----------------

        The Net Coordinator needs to make sure that every
        update includes all three files.  The Clients need
        to be sure they do not delete these files in their
        sysop directory after an update, because if a new 
        update does not arrive the files needed will be
        missing.


See VBBS LocalNET General Information


.TOPIC:
Credits and Acknowledgements
         ͻ
          ACKNOWLEDGEMENTS AND CREDITS                                   
         ͼ
          See also About Roland De Graaf VBBS Author
          See also About Rockie Lynn Greer VBBS Hypertext Document Author

         Documentation Credits
         

         Team Leader     Richard Shell, a.k.a. "UT Prof"
                            #1 @ 2103

         Doc Coordinator Thom Harris
                            #1 @ 1617000
         
         VBBS610.DOC

         WRITTEN BY      Sam Fleming, a.k.a. "O. F."
                            #1 @ 1205500 VirtualNET
         
                         Scott Call, a.k.a. "Zapo Zapper"
                            #1 @ 1510000 VirtualNET

                         Gene Wells, a.k.a. "Red Dog"                
                            #1 @ 1614017 VirtualNet
                             Utilities information

                         Guy W. Tessum, a.k.a. "Keye"
                            #1 @ 4083 VirtualNET
                            Modems information

                         Tom Hightower, a.k.a. "Baloo"
                            #1 @ 1806000 VirtualNET
                         Kevin Klunk, a.k.a. "Lord Doomslayer"
                            #1 @ 1508000
                            VQwk information

                         Patrick Murray, a.k.a. "Shark"
                            #1 @ 1919999 VirtualNET
                            Windows 3.1 information

                         David Bell
                            #1 @ 1203000 VirtualNET
                            Novell/LAN/OS2 information

                         Pete Vogel - "Myrage"
                            #1 @1904069 VirtualNET
                            DesqView information


         VSCRIPT Chapter

         WRITTEN BY      Kevin Klunk, a.k.a "Lord Doomslayer"
                            #2 @ 1508000 VirtualNET

         Assisted By     Tom Hightower, a.k.a "Baloo"
                            #1 @ 1806000 VirtualNET
                         Dan Newcomer, a.k.a. "Lazarus Long"
                            #1 @ 1513000 VirtualNET
                         Sam Fleming, a.k.a. "O. F."
                            #1 @ 1205000 VirtualNET

                       VBBS 6.20 Documentation -- ix


         VBBSDOOR.DOC    Kevin Klunk, a.k.a. "Lord Doomslayer"
                            #2 @ 1508000 VirtualNET

         NETGUIDE.DOC    John Bok, a.k.a. "Snoop"
                            #1 @ 6160 VirtualNET
                            VirtualNET Network Coordinator

         LOCALNET.DOC    Rockielynn Greer, a.k.a. "Angelic Host"
                            #1 @2180 VirtualNET
                         "ShadowMaster"
                            #1 @ 9198 VirtualNET

         USENET.DOC      Mark Sapp, a.k.a. "The Mighty Quinn"
                            #1 @ 1205511 VirtualNET

         VFIDO.DOC       Neil J. Marshall
                            #1 @ 440 VirtualNET

         FIDO.DOC        John Grimes, a.k.a. "Big Daddy"
                            #1 @ 1214000 VirtualNET

         VWW4.DOC        Brian Dessent
                            #1 @ 9990 VirtualNET
                         Joe Weiss
                            #1 @ 1205602 VirtualNET

         CD-ROM.DOC      Con Cherry, a.k.a. Hezekiah
                            #1 @ 1210003


         ͻ
          PROGRAMS MENTIONED IN THE DOCUMENTS                            
         ͼ

         DSZ.COM, DSZ.EXE, and GSZ.COM are external protocol driver pro-
           ducts Copyright (c) by Omen Technology, Inc.

         HS/Link is a bi-directional external protocol driver
           Copyright (c) 1991-1993 by Samuel Smith.

         PKZIP and PKUNZIP are Copyright (c) 1989-1993 by PKWare,Inc.

         ARJ is a file archiving program Copyright (c) by Robert K. Jung.

         DCOM is an external DOS shell/text editor by Dave Frailey, of
           DAC Micro Systems, Inc.

         SPEEDISK is a disk optimization utility, part of Symantec's
           Norton Utilities package.

         SCAN and CLEAN are Copyright (c) 1989-1993 by McAfee Associates

         THEDRAW is Copyright (c) 1989-1993 by TheSoft, Inc.

         MS-DOS is Copyright (c) 1993 by Microsoft Corp.

         BNU is a fossil driver Copyright (c) 1989 by David Nugent

         WATCH.COM is Copyright (c) 1989 by Joseph R. Ahlgren

         DOORWAY is Copyright (c) 1987-1993 by Marshall Dudley

         RIP is Copyright (c) 1991 by Phar Lap Software, Inc.

         WWIV and WWIVnet are Copyright (c) 1988-1993 by Wayne Bell

         TELIX is Copyright (c) 1986-1993 by deltaComm Developemnt

.TOPIC:
About Rockie Lynn Greer
ͻ
         About the author of VBBS Hypertext Documentaion         
͹
        Rockie Lynn Greer is the Sysop of THE LOVE GALAXY,       
  VirtualNET @ 2180, (218) 773-8330, USRobotics 16.8 HST/DS.     
͹
                     ROCKIE's DISCLAIMER!                      
                   ͼ                     
  PROGRAM WARRANTEE AND LIABILITY:     None whatsoever, period.  
    
        Rockie Lynn Greer is disabled - Mentally Disabled!       
  You are currently using a computer program written by a        
  a mentally disabled person:                                    
                                                                 
                 CPU failure, BRAIN.CEL not found                
                (A)bort  (R)etry  (F)ail  (I)gnore               
                                                                 
        This program is living proof, that simply because one    
  has a serious or chronic mentall illness; given time, they     
  CAN acheive SUCCESS in some area of life!  It's also proof     
  that the mentally ill CAN ALSO have a sense of humor!          
ͼ

        Options: Click on CONTENTS, OR BACK OR SEARCH

.TOPIC:
About Roland De Graaf
        Roland De Graaf is 28 years old and does not sleep.  Earning 
a following as a gifted programmer and program developer in
the U.S. and abroad, Roland's passion for the past two years has
been the continuing development of the Virtual BBS/NET software.
        Born in 1964 with detached retinas from a premature birth,
Roland is legally blind.  Although his sight is very weak, his
vision is intense and focused.  He is blessed with a photographic
and audiographic memory, but above all else, he is blessed with
a drive to excel.
         Under the deft helmsmanship of Roland De Graaf, VBBS 
continues sailing into the virtual blue water of cyberspace.

Options:        CONTENTS        -       BACK    -       SEARCH

.TOPIC: 
Setting Up Other Than Vnet Type
Please See Networks Help 

Click On CONTENTS to Return The Main Menu

.TOPIC:
Modem Help
VBBS MODEM HELP

See VCONFIG/Channel Configuration
See UART Chips and Recommendations
See Modem Initialization Settings
See Discussion of Communications Standards        
        Click On The Section Of Your Choice

.TOPIC:
VCONFIG/Channel Configuration
                See UART Chips and Recommendations
                See Modem Initialization Settings
                See Discussion of Communications Standards        
         VBBS comes preconfigured to work correctly with most
         2400 baud modems.  If you are setting up a 2400 baud system,
         your modem configuration should be as simple as choosing the
         correct modem port in VCONFIG's channel.cfg.  High speed
         modems will probably require a more complex configuration.
         Basic information is provided here for a sampler of those
         modems.  Due to the variety of systems in use throughout the
         network, indepth setup assistance for your specific hardware
         is best obtained from the Modem Mania message base,
         VirtualNET Sub #209.

                VBBS allows multiple phone lines to be configured,
         depending on the registration level chosen.  For each data
         line in VBBS, a channel (phone line) configuration must be
         set to define the Serial COM port that the individual line(s)
         will be running from.  An example follows:

                1.) COM Port :
                2.) Base Address (Hex):
                3.) IRQ (Hex) :
                4.) Baud Rate :
                5.) Init String :
                6.) Locked Baud Rate :
                7.) Hardware (RTS/CTS) Handshake :
                8.) Minimum Baud allowed :

         A. COM Port
         

         Define a communications port for each channel in use.  COM
         ports can be used more than once, but the repeated port must
         have a different base address to prevent an IRQ conflict.

         B. Base Address
         

         The base address that DOS understands as the port assignment
         for the channel. (example: COM1 is 3F8, COM2 is 2F8).

         C. IRQ
         

         Assign an IRQ (Interrupt ReQuest) for further definition of 
         the communications port.

         D. Baud Rate
         

         Define your modem's baud rate speed, from 300 to 57600.


         E. Init String
         

         The modem initialization string used by a particular channel
         to define reset and operation of the modem.

         F. Locked Baud Rate
         

         Toggle YES/NO for locked baud rate at high speeds.  This
         should be set to NO for 2400-baud and slower modems.

         Note: High-speed modems should use a locked baud rate to
         indicate the maximum throughput achieved by the modem.  For
         instance, a 14400-baud modem could be defined as 14400, 19200,
         38400, or 57600, as the modem allows.

         G. Hardware (RTS/CTS) Handshake
         

         Toggle "No, Yes(Normal), or Yes(Slow)".  This setting is for 
         high speed modems.  Yes(Normal) is the preferred choice.

         H. Minimum Baud Allowed
         

         Configure a minimum speed to tailor a high-speed line.
                
                See VCONFIG/Channel Configuration
                See UART Chips and Recommendations
                See Modem Initialization Settings
                See Discussion of Communications Standards        


.TOPIC:
UART Chips and Recommendations
UART Chips and Recommendations        
        See VCONFIG/Channel Configuration
        See UART Chips and Recommendations
        See Modem Initialization Settings
        See Discussion of Communications Standards        
 
                The NS16550AFN, or UART (Universal Asynchronous
         Receiver/Transmitter) chip, is the heart of your asynchronous
         communications board.  The advantage of the 16550 over the
         16450 and 8250 UARTs is that it has a 16 byte buffer.


         A.  Reliability

                On the older chips, with their single-byte buffer, 
         you would lose data if a second byte came in from the modem
         before the CPU had sufficient time to call the first byte.
         The 16550, with its 16-byte buffer, gives the CPU up to 16
         opportunities to access data before a character is lost.


         B.  Multitasking

                When VBBS is transmitting data, it has to stop the 
         CPU and fill the UART's transmit buffer.  That means that 
         the background caller will experience a system slowdown while
         VBBS attempts to send data to another caller.  In addition,
         the older 8250 chips were much less reliable, and were never
         designed for the high speeds of current modems.  The 
         NS16550AFN, on the other hand, is designed with high bus 
         speeds and high modem speeds in mind.  When multitasking, 
         even at slower baud rates, the 16550 can be very helpful in
         providing smooth operation for the entire system.
                See VCONFIG/Channel Configuration
                See UART Chips and Recommendations
                See Modem Initialization Settings
                See Discussion of Communications Standards        

.TOPIC:
Modem Initialization Settings
Modem Initialization Settings and Strings

    CHOOSE A MODEM CATAGORY BELOW

See High Speed Modem Initialization Strings
See Discussion of Communications Standards        
See VCONFIG/Channel Configuration
See UART Chips and Recommendations
See Standard 2400 bps or 1200 bps Hayes Compatibles (NON-MNP):  
See Zoom 2400 V.42bis
 
   
                Since high speed modems can utilize so many settings, 
         it is almost impossible to include them all in one initiali-
         zation string.  Therefore, you may wish to use the NRAM fea-
         ture to store the settings which are common to most applica-
         tions and use the VBBS init string for VBBS-specific settings.
                This collection of modem settings has been garnered 
         over time from VBBS sysops working with an unlimited variety 
         of hardware configurations.  If the following recommendations
         provide unsatisfactory results, please refer to the VirtualNET
         support subs for further assistance.


.TOPIC:
Standard 2400 bps or 1200 bps Hayes Compatibles (NON-MNP)
         A.  Modem AT Command Settings
         

         Standard 2400 bps or 1200 bps Hayes Compatibles (NON-MNP):

         Supports the extended "&" command set:

                ATX4Q0E0V1&C1&D2S2=251S7=40

        
         X4     Enables extended result codes
         Q0     Modem returns result codes
         E0     Modem does not echo commands back to the computer
         V1     Modem returns verbal result codes
         &C1    Modem asserts carrier detect based on connection
                status
         &D2    On DTR high-to-low transition, modem Hangs Up.
         S2=251 Disable modem escape sequence
         S7=40  Time modem waits for a carrier when initiating a new
                connection

        
         Does not support the extended "&" command set:
       
                ATX4Q0E0V1S2=251S7=40

         Modems which do not use the & command set usually have DIP
         switches of some type to set their mode of operation. Verify
         that your modem is set to assert CD (carrier detect) only 
         when connected to a remote modem and hang up on drop of DTR 
         (data terminal ready).

.TOPIC:
High Speed Modem Initialization Strings
High Speed Modem Initialization Strings
        CLICK ON ANY MODEM TYPE BELOW
See Aceex 14.4                 
See AT&T Dataport 14.4
See Boca 14.4
See Compucom High Speed Modems    
See Cardinal 9600   
See Dallas Fax 14.4
See Digicomm 14.4      
See Infotel 14.4 Faxmodem
See Intel 14.4EX
See Lightning Communications  
See Motorola UDS 14.4 V32bis 
See Patriot
See PPI
See SupraFAXmodem 14.4 V32bis  
See TwinCom V.32  
See USRobotics
See Viva 14.4
See Zoom 14400 Fax/Modem   
See Zoom 2400 V.42bis   
See ZyXEL High Speed  
See ZyXEL   Send/Recieve Fax/Modem          

.TOPIC:
Aceex 14.4
                Aceex 14.4
                                                                      
                AT&F1S0=0M0E0V1X4&C1&D2&M5\N0S95=1S46=136S36=5               

.TOPIC:
Boca 14.4
                Boca 14.4 V32bis (same as Gateway 14.4):

                AT&F E0 V1 Q0 W2 S95=3 S7=50 S0=0

.TOPIC:
Compucom High Speed Modems
                Compucom High Speed Modems:

                AT&F2*H1%C0\N0S25=2M0QV1ES11=50&C1&D2H&W

         Compucom STAR:

                AT&F2*H2&D2S7=75&Y0&WX4M0L0S11=50


         Recommendations:
                Assign the above values to NRAM settings, and the
        initialization string will actually read 

                ATZ0
        
         To assign an NRAM setting, enter the above initialization
         string, then type 

                AT&W0

         To disable CCSP (Compucom proprietary protocol) type

                AT*H0
          
         Baud rate should be locked and set to 19200, or 38400 for
         those with 16550 UARTs.

.TOPIC:
Cardinal 9600
                Cardinal 9600:

                ATW2Q0V1E0&D2&C1S2=251M0&W2S95=1235

         - or -

                ATQ0V1E0&D2&C1S2=251S7=45M0
        
.TOPIC:
Digicomm 14.4
                Digicomm 14.4

                AT&F&C1*S1E0

.TOPIC:
Infotel 14.4 Faxmodem
        Infotel 14.4 Faxmodem

        AT&F&D2&C1S0=0S7=70M0E0S11=55W2S95=3



.TOPIC:
Lightning Communications
                Lightning Communications:

                AT&FE0&D2&C1&Q9S7=65W2M0

                Locked Baud Rate:  38400
                RTS/CTS         :  Slow

.TOPIC:
Motorola UDS 14.4 V32bis
                Motorola UDS 14.4 V32bis:

                AT&F E0 V1 Q0 S0=0 %R2 \Q3 \V1 \M0 &C1 &D2 \N7 S7=50

.TOPIC:
SupraFAXmodem 14.4 V32bis
               SupraFAXmodem 14.4 V32bis:

               AT&F2 E0 V1 Q0 W2 S95=3 S7=50
        
.TOPIC:
TwinCom V.32
               TwinCom V.32:

               ATE0H0M0Q0V1X4S0=0S2=1W0S95=145
        
.TOPIC:
USRobotics
See US Robotics Courier HST / Courier Dual Standard  
See USRobotics Courier 14400 HST Dual Standard   
See USRobotics Courier 9600 HST  See USRobotics Dual Standard 14.4 
See US Robotics HST/DS 16.8         
See Older US Robotics HST 9600         
See USR Sportster 14.4

.TOPIC:         
US Robotics Courier HST / Courier Dual Standard
US Robotics Courier HST / Courier Dual Standard:

         NRAM Settings Recommended:

         X7     Return full result codes
         &H1    Turns on hardware handshaking for output from DTE (CTS
                line) *
         &R2    Turns on hardware handshaking for input to DTE    (RTS
                line) *
         &B1    Fixes the DTE to DCE rate **
         &N0    Negotiates highest link rate with fallback/fallforward
                enabled
         &M4    Enables ARQ if remote modem has ARQ
         &C1    Modem asserts carrier detect based on connection
                status
         &D2    On DTR high-to-low transition, modem hangs up
         &A3    Give FULL EXTENDED Result Codes
 
         (Choose one of the 3 &K commands below based on your preference)

         &K1    Enables data compression if remote modem requests
                compression
         &K3    Enables V.42 bis data compression but not MNP5
         &K0    Disables all compression
 
         VBBS Initialization String:
                ATX7Q0E0V1S2=251S7=25&H1&R2&B1&M4&N0&K1&A3
                                - or -
                ATX7Q0E0V1S2=251S7=25&H1&R2&B1&A3

.TOPIC:         
USRobotics Courier 14400 HST Dual Standard
USRobotics Courier 14400 HST Dual Standard:
 
         B0  C1  E1  F1  M1  Q0  V1  X7
         BAUD=38400  PARITY=N  WORDLEN=8
         DIAL=HUNT   ON HOOK   TIMER
 
         &A3  &B1  &C1  &D2  &G0  &H1  &I0  &K3  &L0
         &M4  &N0  &P0  &R2  &S0  &T5  &X0  &Y1  %R0
 
         S00=000  S01=000  S02=251  S03=013  S04=010
         S05=008  S06=002  S07=045  S08=002  S09=006
         S10=007  S11=050  S12=050  S13=000  S14=000
         S15=008  S16=000  S17=000  S18=000  S19=000
         S20=000  S21=010  S22=017  S23=019  S24=150
         S25=000  S26=000  S27=000  S28=008  S29=020
         S30=000  S31=000  S32=001  S33=000  S34=000
         S35=000  S36=000  S37=000  S38=000
 
         - or -
 
         B0  C1  E1  F1  M1  Q0  V1  X7
         BAUD=19200  PARITY=N  WORDLEN=8
         DIAL=HUNT   ON HOOK   TIMER
 
         &A3  &B0  &C1  &D2  &G0  &H1  &I0  &K3  &L0
         &M4  &N0  &P0  &R2  &S0  &T5  &X0  &Y1  %R0
 
         S00=000  S01=000  S02=251  S03=013  S04=010
         S05=008  S06=002  S07=045  S08=002  S09=006
         S10=007  S11=070  S12=050  S13=000  S14=001
         S15=008  S16=000  S17=000  S18=000  S19=000
         S20=000  S21=010  S22=017  S23=019  S24=150
         S25=000  S26=000  S27=000  S28=008  S29=020
         S30=000  S31=000  S32=001  S33=000  S34=000
         S35=000  S36=000  S37=000  S38=000

         VBBS Initialization String:
                ATX7Q0E0V1S2=251S7=25&H1&R2&B1&M4&N0&K1&A3
                                - or -
                ATX7Q0E0V1S2=251S7=25&H1&R2&B1&A3

.TOPIC:
USRobotics Courier 9600 HST
USRobotics Courier 9600 HST Settings

         C=1  E=1  F=1  M=3  Q=0  V=1  X=7  B=1
         BAUD=19200  PARITY=N  WORDLEN=8
         DIAL=TONE   ON HOOK    TIMER
 
         &A1  &B1  &G0  &H1  &I2  &K0
         &M4  &N0  &P0  &R2  &S1  &Y1
 
         S00=000  S01=000  S02=251  S03=013
         S04=010  S05=008  S06=002  S07=025
         S08=002  S09=006  S10=007  S11=040
         S12=050  S13=000  S14=001  S15=000
         S16=000  S17=000  S18=000  S19=005
         S20=000  S21=010  S22=017  S23=019
 
         DIAL=TONE   M=3  X=7  F=1  B=1
         BAUD=19200  PARITY=N  WORDLEN=8
 
         &A1  &B1  &G0  &H1  &I2  &K0
         &M4  &N0  &P0  &R2  &S1  &Y1
 
         S02=251  S03=013  S04=010  S05=008
         S06=002  S07=025  S08=002  S09=006
         S10=007  S11=040  S12=050  S13=000
         S15=000  S19=005  S21=010  S22=017
         S23=019
 
.TOPIC:
USRobotics Dual Standard 14.4
USRobotics Dual Standard 14.4
         

         (Square LEDs -- not the 16.8 model):

                AT&B1 B0 E0 V1 Q0 &N0 &M4 S7=50 &H1 &R2 &A3

.TOPIC:
US Robotics HST/DS 16.8
US Robotics HST/DS 16.8

         (Square LEDs):
 
                ATX710V130B0S2=251S7=45&H1&R2&M4&N0&B1

.TOPIC:
Older US Robotics HST 9600
Older US Robotics HST 9600


                AT&B1 B1 E0 V1 Q0 &N0 &M4 S7=50 &H1 &R2


         Also, another note: USRobotics modem users (Dual Std and
         HST) can specify that a smaller transmit buffer should be
         used during non-ARQ connections, so that when 2400/non-error
         correcting callers call the board, the space-bar abort is
         more responsive. The modem will auto-adjust the size of the
         transmit buffer for each connection:

                non-ARQ: 128 bytes
                ARQ: 4k

         To enable this modem feature, set S15=8.

.TOPIC:
Zoom 14400 Fax/Modem
Zoom 14400 Fax/Modem:

                Locked Baud Rate:  38400
                RTS/CTS         :  Slow

                AT&C1&D2E0H0Q0V1X4W0S95=3\T2

.TOPIC:
Zoom 2400 V.42bis
Zoom 2400 V.42bis:

                ATX4Q0V1E0&D2&C1S2=251S7=45

         ACTIVE PROFILE:

         B1 E1 L2 M1 N1 P Q0 V1 W1 X4 Y0 &C0 &D0 &G0 &J0 &K3 &Q5 &R0
         &S0 &T4 &X0 &Y0
         S00:000 S01:000 S02:043 S03:013 S04:010 S05:008 S06:002
         S07:045 S08:002 S09:006
         S10:014 S11:095 S12:050 S18:000 S25:005 S26:001 S36:005
         S37:000 S38:020 S44:003
         S46:138 S48:000 S49:008 S50:255

         STORED PROFILE 0:

         B1 E1 L2 M1 N1 P Q0 V1 W0 X4 Y0 &C0 &D0 &G0 &J0 &K3 &Q5 &R0
         &S0 &T4 &X0
         S00:000 S02:043 S06:002 S07:030 S08:002 S09:006 S10:014
         S11:095 S12:050 S18:000
         S25:005 S26:001 S36:005 S37:000 S38:020 S44:003 S46:138
         S48:007 S49:008 S50:255

         STORED PROFILE 1:
 
         B1 E1 L2 M1 N1 P Q0 V1 W0 X4 Y0 &C0 &D0 &G0 &J0 &K3 &Q5 &R0
         &S0 &T4 &X0
         S00:000 S02:043 S06:002 S07:030 S08:002 S09:006 S10:014
         S11:095 S12:050 S18:000
         S25:005 S26:001 S36:005 S37:000 S38:020 S44:003 S46:138
         S48:007 S49:008 S50:255

.TOPIC:
ZyXEL High Speed
ZyXEL High Speed:

         This is saved as Profile 0.  Init string is just ATZ0.

         Be aware that register S20 sets the DTE speed, set to 19200,
         so you may want to change this to S20=2 or S20=1.

         CURRENT SETTING:

         B0   E0   L4   M0   N5   Q0   V1   X6
         &B1  &C1  &D2  &G0  &H3  &J0  &K4  &L0  &M0  &N0  &P0  &R1
         &S0  &X0  &Y0
         *B0  *C0  *D0  *E0  *I0  *M0  *P9  *Q2  *S0

         S00=000   S01=000   S02=251   S03=013   S04=010
         S05=008   S06=003   S07=060   S08=002   S09=006
         S10=007   S11=070   S12=000   S13=000   S14=002
         S15=002   S16=000   S17=018   S18=000   S19=000
         S20=003   S21=176   S22=000   S23=112   S24=133
         S25=000   S26=000   S27=156   S28=064   S29=000
         S30=000   S31=017   S32=019   S33=000   S34=030
         S35=000   S36=000   S37=000   S38=016   S39=000

.TOPIC:
ZyXEL   Send/Recieve Fax/Modem
ZyXEL 14400 V.32 V.32bis V.42 V.42bis Send/Recieve Fax/Modem:

                AT&FX6E0&C1&D2&G2H0M0|

                Locked Baud: 19200
                Hardware handshaking normal
        
.TOPIC:
Discussion of Communications Standards        
Discussion of Communications Standards  
 
        See VCONFIG/Channel Configuration
        See UART Chips and Recommendations
        See Modem Initialization Settings
        See Discussion of Communications Standards        

         A.  Description of Standards
         

         CCITT v.21       300 bps.  (FSK).
         Bell  103J

         Bell  202        1200 bps, half duplex.
         Leased lines.

         CCITT v.22       1200 bps. (DPSK).
         Bell  212A

         CCITT v.22bis    2400 bps. (DPSK).

         CCITT v.26ter    2400 bps with echo cancellation

         Bell  208        4800 bps. Used on leased lines.

         CCITT v.27ter    G3 FAX at 4800 bps with fall back to 2400
                          bps.

         CCITT v.29       G3 FAX at 9600 bps with fall back to 7200
                          and 4800 bps.  Also used by Compucom
                          modems.

         CCITT v.32       9600 bps with echo cancellation.  Fall back
                          to 4800 bps.  Both directions simultaneously.
                          (QAM).
                             
         CCITT v.32bis    14400 bps with echo cancellation.  Fall back
                          to 12000, 9600, and 7200 bps.  (TCM)  Both
                          directions simultaneously.

         CCITT v.33       14400 with fall back to 12000 bps.
 
         USR HST14400     US Robotics HST modulation.  14400 bps in
                          one direction and 450 bps in reverse
                          direction.  Fall back to 12000, 9600, and
                          4800 bps.

         Trailblazer      Proprietary up to 18000 bps.

         Hayes V-Series   Proprietary full-duplex 9600 baud.  Hayes'
                          CCITT LAP-B error correction and data
                          compression.

         EIA Class2 FAX   G2 Fax standard.
 
         CCITT v.FAST     19200 bps or slightly higher.  Uses echo
                          CCITT v.32bisbis.

         ISDN             Integrated Services Digital Network on fiber
                          optic cable.
 
         SMDS             Switched Multi-Megabit Data Service on fiber
                          optics.



             High-rate Digital Subscriber Link.  In
                          development.
 
         
         B.  Table of Modes
         

         MODE          BPS       BAUD      MODULATION      NOTES
         -------------------------------------------------------------
         v.33         14400      2400       128-TCM
         v.33         12000      2400        64-TCM
         v.32bisbis   19200      2400       512-TCM
         v.32bis      14400      2400       128-TCM
         v.32bis      12000      2400        64-TCM
         v.32bis       9600      2400        32-TCM
         v.32bis       7200      2400        16-TCM
         v.32          9600      2400        32-TCM
         v.32          9600      2400        16-QAM        Uncoded
         v.32          4800      2400         4-DPSK
         v.29          9600      2400        16-QAM
         v.29          7200      2400         8-QAM
         v.29          4800      2400         4-DPSK
         v.27ter       4800      1600         8-PSK
         v.27ter       2400      1200         4-DPSK
         G3 FAX                                            v.29/.27ter
         v.22bis       2400       600        16-QAM
         v.22          1200       600         4-DPSK       BELL 212A
         ISDN         65536     65536        FiberOptic    Digital
 
         The baud rate over the phone line means that more than two
         tones are used at the baud frequency to achieve the bps rate.
         For instance, 4-DPSK means four tones.
 

         C.  Error Correction Standards
         

         NAME      DESC OF ERROR CORRECTION AND DATA COMPRESSION
         -------------------------------------------------------------
         MNP1      Hardware error correction.
         MNP2      Hardware error correction.
         MNP3      Hardware error correction.  Strips off start and
                   stop bits during transmission over phone line.
         MNP4      Hardware error correction.  Fastest way to send
                   compressed files.  Strips off start and stop bits
                   during transmission.  Also adapts to line
                   conditions.
         MNP5      Hardware error correction and data compression (up
                   to 2 time compression on TEXT).  Do NOT use on
                   compressed files!
         MNP6      Additional Universal Link Negotiation and
                   Statistical Duplexing to MNP5 service
         MNP7      Additional Enhanced Data Compression with MNP4.
         MNP8      TBA
         MNP9      Additional Enhanced Data Compression with v.32
                   modems.  Also adds Enhanced Universal Link
                   Negotiation, which allows connection to both MNP
                   and non-MNP modems at the highest performance
                   level.
         MNP10     Hardware error correction and data compression.
         v.42      CCITT error correction. LAPM.  Fastest way to send
                   compressed files.  Strips off start and stop bits
                   during transmission.
         v.42bis   CCITT data compression (up to 4 time compression on
                   TEXT).  Uses a version of the Lempel-Ziv data
                   compression algorithm.


         D.  Glossary of Terms
         

         baud        Actual rate of symbols trasmitted per second.
         bps         Bits Per Second.
         MNP         Microcom Networking Protocol.
         CCITT       International Telephone and Telegraph
                      Consultative Committee.
         FSK         Frequency Shift Keying.
         DPSK        Phase Shift Keying.
         QAM         Quadrature Amplitude Modulation.  Combination of
                      PSK and AM.
         TCM         Trellis Coded Modulation.
         LAPM        Link Access Procedure for Modems.
 
.TOPIC:
VSP Support List
OFFICIAL [VSP] SUPPORT LIST   9/17/93

        The following list of VBBS Sysops have made themselves
        available to provide you assistance in the specialized
        areas listed below.  They may be contacted by VirtualNET
        e-mail or calling their data line.

Vnet      Area(s)            Data Line     Name                     
--------  ----------         ------------  -----------------             

5200500   Spanish Support    525-689-3258  Alan Aspiru
1203000   VBBS OS/2-LANs     203-877-5856  David Bell                  
6160      VirtualNET NC      616-772-0347  John Bok                    
1510007   VTK/VUUCP          510-831-3634  Scott Call                      
1210002   CD-ROM Support     210-380-6332  Con Cherry                   
1514002   RIP Support        514-466-2475  Anthony Curtis              
1704000   OS/2 Support       704-523-0162  Bill Dayton                  
9990      VWW4/Utility Dvpt  919-489-6110  Brian Dessent                  
1203004   Legal Advisor      203-968-8752  David Deutsche                
1604000   RC 6               604-338-2316  Roland Emery                   
1205500   Main Docs          205-758-2683  Sam Fleming                
2180      LocalNet           218-773-8330  Rockie Lynn Greer              
1214000   VFido/ VNews       214-230-5045  John Grimes                    
1617000   Doc Coordinator    617-891-4298  Thom Harris                    
1806000   QWKnet/Source      806-372-4212  Tom Hightower                  
1508000   [VSB]Coord/QWKnet  508-852-4641  Kevin Klunk                     
440       VFido/Subs/RC 5    44-689824666  Neil Marshall                   
1618002   RC 1               618-277-6398  Mike McKenzie                    
1919999   RC7 /Windows       919-683-1661  Patrick Murray                  
1513000   Script Support     513-235-2605  Dan Newcomer                     
1904000   OS/2 Support       904-335-6657  Ben Pollack                    
1806052   DesqView Support   806-873-3321  Darren Rogers                    
6190      RC 3               512-292-1301  Kevin Rouse                    
1803007   Networks.lst Coord.803-776-0323  Mac Saum                     
2103      Marketing/Regs     210-787-8974  Richard Shell                  
1610000   RC 2               215-759-1376  Bill Snell                      
1618001   Shareware Dvpt     618-297-0623  Lawrence Smith                   
1614032   Modems             614-678-8492  Guy Tessum                      
1904069   Desqview/Vfido     904-563-1231  Pete Vogel                     
1215046   Utility Dvpt.      215-692-8425  Brian Walsh                     
1708004   RIP Support        708-653-7092  Tom Weber                     
1205602   VTK Support        205-270-8489  Joe Weiss                     
1614017   VFido/Utility Doc  614-282-3409  Gene Wells                      
1619001   RC 4               619-670-9825  Dennis Younker                  
1708012   VRime/PCRelay      708-808-1065  Ken Zaretsky                   

.TOPIC:
V-Script Help
V-Script Help
        Click on BACK after topic selection to return to this menu 
See Number and String Handling        See Display and I/O Commands
See Database & Message Commands       See Buffer Operation & Use
See File Commands                     See Control Commands
See Function Blocks                   See Miscellaneous Commands
See Programmer's Reference            See Common Script Examples & Explanations
See RIP Help       
         See also See Script

.TOPIC:
Number and String Handling
Number and String Handling
         ͻ
                          NUMBER AND STRING HANDLING                     
         ͼ
       Click On BACK to Return or CONTENTS or SEARCH to choose another topic

         NUMERIC OPERATORS
         

                VSCRIPT supports the following mathematical operators:

                       +  Addition           -  Subtraction
                       *  Multiplication     /  Division
                       ^  Exponentiation

         All math commands in the script language are performed from
         left-to-right.  Parentheses can NOT be used in a formula, so
         any math that needs to be done in a hierarchical format must be
         done over more than one line.  Also, remember the restriction
         on 'tokens' - a math symbol counts as a token, so only two math
         operations can be performed on one line.

                   Example:                   Results:
                   $a= 2 * 2 + 4              => 4 + 4       => 8
                   $b = $a + 2 / 5            => 10 / 5      => 2
                   $c = $b + 5 - 4            => 7 - 4       => 3
                   $d = 4 / $b ^ 3            => 2 * 2 * 2   => 8


         NUMERIC FUNCTIONS
         

         INT 0 ->  <variable1> = <value2> INT 0

               This function takes the number stored in <value2> and
           rounds down to the next lower whole number.  The resulting
           integer is then stored in <variable1>.  Remember: negative
           numbers also round down with this function as shown below:

               $total = -11.25 INT 0 returns a value of -12, not -11.

         SQR 0 ->  <variable1> = <value2> SQR 0

               This function returns the square root of the absolute
           value of the number stored in <value2>.  The result is then
           stored in <variable1>.  Note: The absolute value of a number
           equals its positive value, ie absolute of -11 = 11.

         RND ->  <variable1> = <value1> RND <value2>

               This function generates a random number between the two
           <value>'s.  If <value1> is smaller than <value2> then the
           result will not include either number.  If <value1> is larger
           than <value2> then the result can include either number.
             
             Example:                Results:
             $a = 4.15 * 4 + .25     => 16.85
             $b = $a INT 0           => 16
             $c = $b SQR 0           => 4
             $d = $a INT 0 SQR 0     => 4
             $e = $b RND $c          => a random number from 4 to 16
             $f = $c RND $b          => a random number from 5 to 15


         STRING OPERATORS
         

           & ->  <variable1> = <token3> & <token5> & <token7>

               This allows you to link together many variables and strings
           to print as a single variable, effectively adding many tokens
           together. ex: $Junk = "This is" & " one big " & "statement!"


         STRING FUNCTIONS
         

               In addition to the '&' operators there are some functions
           for use with strings and variables that store strings.

         ASC 0 ->  <variable1> = <string2> ASC 0

               This function finds the ASCII code of the first character
           in <string2> and stores it in <variable1>.

         CHR 0 ->  <variable1> = <value2> CHR 0

               This function takes <value2> and places the character with
           the matching ASCII code into <variable1>.

         LEN 0 ->  <variable1> = <string2> LEN 0

               This function returns the number of characters within
           <string2> and places the result in <variable1>.

         UPPER 0 ->  <variable1> = <string2> UPPER 0

               This function returns the upper case equivalent of what is
           in <string2>.  It only changes the lower case letters, leaving
           all numbers and symbols as they are in the original <string2>.

         INSTR ->  <variable1> = <string2> INSTR <string3>

               This function scans <string2> to see if <string3> exists
           within it.  It returns a 0 to <variable1) if it is not found,
           otherwise it returns the position of <string3>.

         MID   ->  <variable1> = <string2> MID <value3>
         LEFT  ->  <variable1> = <string2> LEFT <value3>

               These functions return portions of a string. MID starts
           at the character <value3> and returns the rest of the string.
           LEFT starts at the left-most character and returns a number
           of characters equal to <value3>.

           Example:                      Results:
           $a = "aBc2" & "05 D" & "eFg" => "aBc205 DeFg"
           $b = $a MID 10                => Fg
           $c = $b ASC 0                 => 215 - the ASCII code for 
           $d = $a LEFT 6 MID 4          => 205
           $e = $d CHR 0                 =>    - the ASCII 205 character
           $f = $a INSTR "205"           => 4   - the 205 is in the string
                                                  and the 2 is located in
                                                  the 4th position.
           $g = $a LEN 0                 => 12
           $h = $a UPPER 0               => "ABC205 DEFG"

           Note: The quotes in the strings are not an actual part of the
                 strings.  They are there only to denote the beginning
                 and end of a single token.


         STRING ALTERATIONS
         

               There are a few commands that actually allow you to alter
           the format of a variable.  All of them use the same syntax and
           are described below.

         JC ->  JC <variable1> <value2>
         JL ->  JL <variable1> <value2>
         JR ->  JR <variable1> <value2>

               These commands all take what is stored within <variable1>
           and pad it with extra spaces.  JC centers the <variable1> in
           a field of <value2> spaces.  JL places it along the left margin
           and JR places it on the right margin in a similar field.

           Example:                     Results:
           $size = 14
           $a = "Greed!"                => $a now has the value:
           JC $a $size                     "    Greed!    "
           $b = "Green!"                => $b now has the value:
           JL $b $size                     "Green!        "
           $c = "Groan!"                => $c now has the value:
           JR $c $size                     "        Groan!"


.TOPIC:
Display and I/O Commands
Display and I/O Commands
         ͻ
           CHAPTER TEN ANNEX B     INPUT AND OUTPUT COMMANDS             
         ͼ


         READING INPUT
         

               One of the most common uses of a script is to get some
           information from a user and the script language contains many
           commands to help implement this task.  All the commands allow
           for a <prompt> string, but this is optional so you do NOT have
           to use it if you do not want to.

         GETYN ->  GETYN <variable1> <prompt>
         GETNY ->  GETNY <variable1> <prompt>

               These two commands show the user whatever is stored within
           the <prompt> and ask for a response of Y, N, or <enter>.  The
           GETYN command defaults to Y when then user presses <enter> and
           GETNY defaults to N.
           ex: GETYN $yesorno "Do you wish to continue ? "

         RS ->  RS <variable1> <prompt>

               This command prints the optional <prompt> and then accepts
           a line of input.  The input can be no more than 81 characters
           in length, and input is terminated by pressing <enter>.
           ex: RS $yourname "What is your name ? "

         RX ->  RX <variable1> <prompt>

               This command works like the RS command but instead of it
           echoing the keys that the user presses it prints X's.  This is
           very useful for password systems.

         RW ->  RW <variable1> <prompt>

               This command works like the RS command with the only real
           difference being that this command has a word-wrapping feature.
           If a word passes the 80 character point it is word-wrapped over
           to the next input line.  To prevent the extra characters from
           being placed into the next input statement you will need to
           place 'Buffer Clear' after the last RW input line.  See section
           5.x for more info on buffer commands.

         RN ->  RN <variable1> <prompt>

               This command prints the optional prompt and then accepts
           only numerical input.  It will not take any keys but the #'s
           and input is terminated by pressing <enter>.
           ex: RN $number "Enter your favorite number : "

         RC ->  RC <variable1> <prompt>

               This command prints the optional <prompt> and then waits
           for a single character to be pressed.  The character is stored
           in <variable1> but it is not shown on the screen.
           ex: RC $onechar "Pick a key, any key : "

         RR ->  RR <variable1> <string2> <prompt>

               This command operates in the same way as the RC command
           with only one difference.  It will only accept characters that
           are listed in the <string2>, all others will be ignored.
           ex: RR $thisone ARI "A>bort, R>etry, I>gnore ? "

         RL ->  RL <variable1> <string2> <value3> <prompt>

               This command operates similarly to the RR command.  It will
           accept any character listed in <string2> and also will accept a
           number between 1 and <value3>.  This is the most versatile form
           for getting input, and is most commonly used for creating a
           menu within a script.
           ex: RL $thatone ABC 3 "Choose A, B, C, 1, 2, or 3 : "

         RF ->  RF <variable1> <prompt>

               This command is used to get a filename as input.  It will
           only accept input in the format 'xxxxxxxx.xxx' with each 'x'
           being a character.  It will only allow legal characters for the
           name and it will not accept globals (* and ?.)  The complete
           list of acceptable characters contains A thru Z (uppercase is
           forced automatically) and the symbols => ! # $ _ - (the => is
           not in the list, it is used only for emphasis.)
           ex: RF $filename "Name of file to be uploaded : "

         RI ->  RI <variable1> <prompt>

               This command is nearly identical to the RF command.  The
           one difference being that this command accepts the * and ?
           globals in the filename.
           ex: RI $filetoget "Name of file to find (* and ? allowed) : "


         SHOWING LINE OUTPUT
         

               There are two different ways that you can show output one
           line at a time.  While they are slightly different, both accept
           the same formatting information for their output.

         TR ->  TR <token2> <token3> <token4> ... <token7>
         TS ->  TS <token2> <token3> <token4> ... <token7>

               These commands can print out up to 6 different tokens using
           a single line.  After the last token on the line is printed the
           TR command performs a carriage return/linefeed while the TS
           command does not.

           The three formatting statements are listed below.

           %s ->  %s<number1> <variable2>

               Outputs <variable2> in a field of <number1> spaces and then
           left justifies it.

           %i ->  %i<number1> <variable2>

               Outputs <variable2> in a field of <number1> spaces and then
           right justifies it.
 
           %d ->  %d<number1>.<number2> <value3>

               Outputs <value3> with the format ###.## where <number1> and
           <number2> are the ### and the .## respectively.  The left part
           of the output is padded with spaces and the right is padded
           with 0's.  This format uses the absolute value of <value3>, so
           the output is always a positive number.

               You can use any numbers within the statements as long as
           you follow the specified syntax.  If the field selected is too
           small for the variable then the output will be chopped down to
           fit it into the field.

           Example:                     Results:
           $a = "Green"
           $b = 16.2312
           tr $b " : " %d3.3 $b         => "16.2312 :  16.231"
           tr %s10 $a ":" %i10 $a       => "Green     :     Green"
           ts $b " : "
           tr $a " : The End"           => "16.2312 : Green : The End"

           Note: The quotes are not in the actual output, they are only
                 supplied to emphasize the blank spaces.



         COLORIZATION
         

                There are three different ways to change color in the
         script language.  All are identical in output, but each has a
         unique form of implementation.  Note: <color code> is the number
         number (0-9) or letter (capital A-Z) code that corresponds to the
         colors as listed in the COLORS.TXT file.  Also, the input commands
         from section 3.1 (RS, RW, RX, etc.) will all change the color to
         to the user's default prompt setting unless the <prompt> has a
         color code within it.
         
         ANSIC ->  ANSIC <color code>

               This command is executed on a line by itself and changes
           the effective color to that of the selected <color code>.

         $<color> ->  Special

               The $color commands are actually individual tokens that
           resemble variable names.  As such, they may be included into
           other strings with the '&' command (section 2.3) or used on
           their own in output statements (TR & TS.)

                $<color>   color code      $<color>   color code
                --------   ----------      --------   ----------
                $RED           6           $YELLOW        2
                $BLUE          7           $MAGENTA       B
                $GREEN         5           $CYAN          1
                $WHITE         U           $NORM          0
                $BLACK        n/a

               The command $BLACK makes very dark letters though they may
           be visible, depending on your system configuration.  A common
           use for this is to cover over ANSI music symbols.

         Hearts ->  Special

               The most frequently used way to change colors is to use
           what has been coined 'Heart-code ANSI.'  The Heart code is the
           ASCII code 3 and can be created in a couple of different ways.
           If your ANSI driver supports the extended ASCII character set
           you can create the 'heart' by pressing the <CTRL> key and the
           <C> key or it can be made by holding down the <ALT> key, then
           press 3 (or 003 or 259) on the number pad and then releasing
           the <ALT> key.  You will have to test this for your particular
           system to see which works for you.  You can also create the
           codes by using the full-screen editor to colorize although this
           can be a bit of work.  Immediately after the 'heart' you place
           the desired <color code> and when the script actually runs,
           VBBS will show the correct color (you will not see the 'heart'
           or the next character after it.)

          Example:
             These -----\_______/ANSIC 6
             three      |       \TR "Hello ! " $handle
             pieces     |
             of code    |_______/$stuff = $red & "Hello ! " & $handle
             all do     |       \TR $stuff
             the exact  |
             same thing-/-------<TR "<heart>6Hello ! " & $handle
         
         OTHER DISPLAY COMMANDS
         

         EF ->  EF <pathfile1>

               This command displays the contents of the specified file
           in <pathfile1>.  It will pause whenever the users screen fills
           and continue when a key is pressed.

         DRAWWAITBAR ->  DRAWWAITBAR <value1>

               This command draws a string of green o's surrounded by red
           []'s. The number of o's is equal to <value1>.  The cursor is
           then placed on the first 'o' so you can write over it with
           another character.  See Appendix D for an example.

         LOC ->  LOC <value1> <value2>

               This command places the cursor at the location equal to the
           (x, y) coordinates that match (<value2>, <value1>).  Legitimate
           values for <value1> are 1-25 and for <value2> are 1-80. This
           only operates for users of ANSI, Enhanced ANSI.

         MENU ->  MENU <filename1>

               This command displays a menu file stored in your text
           directory (as set in VCONFIG.)  VBBS first checks to see if
           <filename>.MNU exists, and shows it if true.  Otherwise it
           shows <filename>.ANS if the user has ANSI and <filename>.ASC
           otherwise.

               The .MNU files are universal text files colorized with
           VBBS' heart-code ANSI colors.  If the user has ANSI then the
           file displays w/ the colors, but if the user does not have
           ANSI then it is displayed without the colors.  You can still
           use .ANS and .ASC menus if you like, however.
 
               If ! is the first character of a line in a menu then VBBS
           will only show the line if the user's security level is greater
           than or equal to the three-digit number that follows the '!'.

           Examples:
           !255 S) SysOp Menu  <== Not shown unless the user has SL >= 255.
           !100 F) Forward     <==  "    "     "     "   "    "   " >= 100.

         NEWPAGE <---
         SUSPENDPAGEBREAK <---
         RESUMEPAGEBREAK <---

               These three commands alter the user's page-break pointer.
           This pointer determines how many lines of text have been viewed
           and the user's screen length (as set in defaults) determines
           when a pause should be used.  NEWPAGE resets the pointer to 0
           so the output will scroll for a number of lines equal to the
           value set in the user's defaults.  SUSPENDPAGEBREAK turns the
           use of the pointer off completely (no pauses at all), while
           RESUMEPAGEBREAK turns the pointer back on.

         PAUSE ->  PAUSE <prompt>

               This displays the optional <prompt> or the default prompt
           as set in VCONFIG.  It then waits for a keypress and erases
           the prompt before continuing.

.TOPIC:
Database & Message Commands
Database & Message Commands
         ͻ
          CHAPTER TEN ANNEX C      DATABASE OPERATIONS                   
         ͼ


                Each database (DB) in VBBS can be used in many different
         ways for storing info.  A DB can store normal messages, file
         descriptions, or even messages with attached files. Also, there
         is no reason why you can't redefine the fields and use them for
         other types of data storage, like a special voting booth or
         customized daily news section.

                Each DB entry is made up of two parts - The Header and the
         Memo Section. The Header contains things like the subject, the
         sender's name, addressee, etc. The Memo Section is the actual
         body of the entry.  The body, while always text, may contain
         either a standard message or a long file description, depending
         on how you are using the database.


         DATABASE SELECTION
         

                Before you can implement any database commands you must
          first select the exact database you wish to use.  This is done
          with the commands DBGROUP and DB.  You must use the commands
          in the order shown for proper results.

          DBGROUP ->  DBGROUP <group identifier>

                This selects the database group that you will be using in
          the script.  The <group identifier> is the letter representing
          the DBG as it appears in VCONFIG.  See VBBS.DOC for more info.
          ex: DBGROUP A     <-- This makes DBGroup A the active area.

                Before you can select a database to use, you must first
          select a database group.  Grouping was implemented so that it
          would be much easier to implement global functions and so that
          databases may be added and deleted (using VCONFIG.EXE) without
          the need to edit the scripts every time.  The <group identifier>
          is a single alphabetic character (from A to Z) and you can set
          your database groups up any way you like.  A common set of DB
          Groups might be:
           <A> Public message bases    <H> Hidden/restricted message bases
           <F> Public file bases       <I> Hidden/restricted file bases
           <O> Special bases like voting sections, daily news, etc.

          The following read-only variables are loaded when you execute
          the DBGROUP command:
          --------------------
           $DBNUMBER - Stores the total number of databases in the selected
                       group.  The lowest numbered DB in a group is always
                       a 1, so this number supplies the upper limit for
                       loop operations within a database group.
          
           $DBGROUP  - This stores the letter you selected on the DBGROUP
                       command line. Note: This variable is not cleared
                       when you LINK to another script (see section 7.3),
                       so this can be used to keep track of your location.
           --------------------
  
         DB ->  DB <database number>

               The DB commands sets the current database for use. You
           must select a database using this command somewhere in your
           script before any of the other database commands (except
           DBGROUP) are used. Once you set the database, it stays set
           until another DB command is executed. Also, the database must
           have been defined previously using VCONFIG.EXE.

           The following read-only variables are loaded when you execute
           the DB command:
           --------------------
           $DB       - This stores the database number you have selected.
                       Like $DBGROUP it is not cleared when you LINK
                       between scripts and so using the two variables you
                       can maintain a constant position within your DBs.
           $DBNAME   - The long name of the selected database.
           $DBPATH   - The path (if any) in the 'File Path' section of the
                       VCONFIG Database entry.
           $DBFILE   - The filename of the actual database storage file.
           $HIGHDB   - This is the pointer that stores the number of the
                       user's highest-read entry in the database.
           $NUMBERDB - This stores the total number of entries in the
                       database.
           $WRITESL  - This contains the minimum security level needed to
                       write to the database.
           --------------------


         LOAD RELATED COMMANDS
         

                The next few commands are all used to manually load in a
         database entry for display and/or analysis.

         LOAD ->  LOAD <value1> <option>

               This command loads the database entry <value1> and has
           one command <option>. Adding /Q to the command line will set
           it so the user's $HIGHDB pointer is not updated. The command
           also loads the following variables:
           --------------------
           $ATTFILE  - Filename of a file that is attached to the message,
                       if any.
           $DBCOUNT  - This variable starts at 0 and can be increased by
                       using the ADDCOUNT command (see section 4.3).  It
                       can not be decreased and has one value for each DB
                       (not for each individual message or file.)
           
           $DBDATE   - Creation date and time of the entry.
           $DBFLAG   - The value can have a value of 0 or 1 and can be
                       toggled with the DBFLAG command (see section 4.3).
                       The value of this variable is constant, so if it is
                       turned ON it is treated as ON for all users who
                       access the message/file affected.
          $FROM     - The handle of the person who created the entry.
           $FROMNO   - The user # of the person who created the entry.
           $FROMNODE - VirtualNET node number of sender.
           $SIZE     - Size of attached file, set to 0 if none.
           $SUBJECT  - The subject of the message, or brief description
                       for a file entry.
           $TO       - The handle of the addressee, if any.
           $TONO     - The user # of the addressee, 0 if to ALL.
           $TONODE   - VirtualNET node number of addressee.
           $RESULT   - This variable contains one of these items:
                         DEL if <value1> is marked for deletion
                         OUT if <value1> is greater than the number of
                             available entries (listed in $NUMBERDB)
                         PRI if the DB is private and the user is not
                             the sender, addressee, or has an SL below
                             250 (ie Sysop or CoSysop)
                         OK  in all other cases
           --------------------

         DISPLAYMSG <---

                This command displays the message header info to the user.
           It will clear the screen before showing this info if the user
           is using enhanced ANSI (see VBBS.DOC for more information.)

         DISPLAYTEXT <---

                This command displays the memo section of the message to
           the user.  It clears the screen like DISPLAYMSG for enhanced
           ANSI users.


         EDITING COMMANDS
         

                All of these commands operate independently of the LOAD
         command.  They do still require you to select a DBGROUP and DB
         before use, however.

         ADDCOUNT ->  ADDCOUNT <value1>

                This command increases the number stored in the $DBCOUNT
           by 1 if <value1> is a positive number.
           
         CLEANUP <---

                This performs the PACK function (below) on all databases.
           This command does not require the use of the DBGROUP or DB
           commands before use.

         DBFLAG ->  DBFLAG <value1> <switch>

                This command toggles the value stored in $DBFLAG for the
           entry <value1>.  The valid switches are ON or OFF and the
           matching $DBFLAG values are 1 and 0, respectively.

         DEL ->  DEL <value1>

               This command marks the entry <value1> for deletion.  It
           also returns the $RESULT variable with the possible values
           being OUT, PRI, and OK (see LOAD entry above.)
 
         PACK <---

               This command deletes all messages within the selected DB
           that have been marked for deletion and then resequences the
           database.  All user and network pointers are automatically
           updated to show the change in message numbers.

         QS ->  QS <value1>

               Manually set the user's $HIGHDB pointer to <value1>. If
           <value1> exceeds the value in $NUMBERDB then $HIGHDB is set
           to equal $NUMBERDB.

         SAVE -> (command on next line due to length)
         SAVE <value1> <value2> <string3> <value4> <filename5> <value6>

               This command makes a database entry and saves it in the
           current database.  The variables used are:
           --------------------
           <value1>    - This is the user # that the message is addressed
                         to, this should be set to 0 if to ALL.
           <value2>    - This is the network address of the addressee,
                         use $NODE if the addressee is local.
           <string3>   - This will be the $SUBJECT of the saved message.
           <value4>    - This contains the size of the attached file, use
                         0 if none.
           <filename5> - This is the name of the attached file, use "" if
                         none.
           <value6>    - This is the network ID of the addressee, use 1 if
                         the addressee is local.
           --------------------
               The message saved uses the above information to create the
           header and then takes the contents of the buffer and uses it as
           the main body of the message.  See section 5.x for information
           on how to use the buffer.  This command can not be used to send
           files attached to emails, it can only be used to add files to a
           database listing.
           
         SEARCH ->  SEARCH <value1> <number2> <string3>

               This command searches the contents of the database for
           <string3> starting at the entry <value1>. The search is case
           insensitive on <string3>. The value for <number2> can be any
           of the following:
             1 - Search the TO field    <string3> is ignored here as it
             2 - Search the FROM field  looks for the current user only
                                          with both of these settings. 
             3 - Search the SUBJECT/TITLE field, <string3> can be any word
                 or group of words.
             4 - Search the FILENAME field, <string3> must be an acceptable
                 DOS filename including wildcards.
             5 - Search the FILENAME field, <string3> must be an acceptable
                 DOS filename with no wildcards.

           This command also returns two variables:
           --------------------
           $RESULT = OUT if <string3> is not found, OK if otherwise.
           $SEARCH = the entry number where <string3> was found.
           --------------------


         VIEWING & WRITING
         

         ͻ
         ** Note:All commands marked with a (*) before the description **
         **      will only work properly if implemented from within    **
         **      a script that was called from a function block that   **
         **      has DBGroup(s) listed in it.  They take the letters   **
         **      for the DBGroups to use from the second line of the   **
         **      .FB the script was called from.  The DBGROUP and DB   **
         **      commands do not affect any of these commands.         **
         ͼ

               These commands allow the user to view messages and move
           around within your databases.

         CHOOSETOPIC <---

         (*)   This command lists all the DBGroups (also known as topics)
           and allows the user to switch over to a different one.  The
           user can also view an index of all databases available from
           within this option.

         LISTBASES <---

         (*)   This lists all the DB's in the current DBGroup.

         NEXTBASE <---
         PREVBASE <---

               These commands move to the next or previous database within
           the selected DBGroup, respectively.
           
         POST <---

               This lets the user to enter a message into the active DB.

         READSEQMSG <---

               This command allows the user to read the messages within
           the current database.  It also contains a search feature.

         READNEWMSG <---

               This starts the user's new message scan, showing all new
           messages in databases that are in the user's quick-scan list.


         SCANMSG <---

               This command brings up a summary of the messages in the
           selected database.  The user can select a message to read from
           this listing and has access to all sub-menu commands while
           reading the messages.

         SELECTBASE <---

         (*)   This command lists all the bases and then allows the user
           to select a different DB as the current one.  The user can
           also switch to a different DBGroup with this command.

         SETQUICKSCAN <---

         (*)   This command allows the user to select what databases he or
           she would like to view during a new message scan.


         E-MAIL FUNCTIONS
         

               The E-mail section of the database structure is a separate
           entity.  To make it the active database for using the SAVE
           and BUFFER commands you need to execute the following command:

         SETEMAIL <---

              This command is used instead of the DBGROUP & DB commands to
           make the e-mail section the active database for use with BUFFER
           and SAVE (see sections 5.x and 4.3, respectively.)

         FEEDBACK <---

               This brings up the multi-feedback list (see VBBS.DOC)
           and prompts the user to send a message to the sysop.
           
         QUICKMAIL <---

               This brings up the multi-mail menu for sending e-mail to
           a group of people all at once.

         READALLEMAIL <---

               This is a sysop command that allows you to read all E-mail
           currently in the system.

         READEMAILFROM <---
         READEMAILTO <---

               These commands allow the user to read all the E-mail FROM
           them or addressed TO them, respectively.

         SENDEMAIL <---

               This command allows the user to send E-mail to other users.
         
See Number and String Handling
See Display and I/O Commands
See Database & Message Commands
See Buffer Operation & Use
See File Commands
See Control Commands
See Miscellaneous Commands



               Each database (DB) in VBBS can be used in many different
           ways for storing info.  A DB can store normal messages, file
           descriptions, or even messages with attached files. Also, there
           is no reason why you can't redefine the fields and use them for
           other types of data storage, like a special voting booth or
           customized daily news section.

               Each DB entry is made up of two parts - The Header and the
           Memo Section. The Header contains things like the subject, the
           sender's name, addressee, etc. The Memo Section is the actual
           body of the entry.  The body, while always text, may contain
           either a standard message or a long file description, depending
           on how you are using the database.

         4.1 - Database Selection
         
                Before you can implement any database commands you must
           first select the exact database you wish to use.  This is done
           with the commands DBGROUP and DB.  You must use the commands
           in the order shown for proper results.

          DBGROUP ->  DBGROUP <group identifier>

               This selects the database group that you will be using in
           the script.  The <group identifier> is the letter representing
           the DBG as it appears in VCONFIG.  See VBBS.DOC for more info.
           ex: DBGROUP A     <-- This makes DBGroup A the active area.

               Before you can select a database to use, you must first
           select a database group.  Grouping was implemented so that it
           would be much easier to implement global functions and so that
           databases may be added and deleted (using VCONFIG.EXE) without
           the need to edit the scripts every time.  The <group identifier>
           is a single alphabetic character (from A to Z) and you can set
           your database groups up any way you like.  A common set of DB
           Groups might be:
           <A> Public message bases    <H> Hidden/restricted message bases
           <F> Public file bases       <I> Hidden/restricted file bases
           <O> Special bases like voting sections, daily news, etc.

           The following read-only variables are loaded when you execute
           the DBGROUP command:
           --------------------
           $DBNUMBER - Stores the total number of databases in the selected
                       group.  The lowest numbered DB in a group is always
                       a 1, so this number supplies the upper limit for
                       loop operations within a database group.

           $DBGROUP  - This stores the letter you selected on the DBGROUP
                       command line. Note: This variable is not cleared
                       when you LINK to another script (see section 7.3),
                       so this can be used to keep track of your location.
           --------------------
 
         DB ->  DB <database number>

               The DB commands sets the current database for use. You
           must select a database using this command somewhere in your
           script before any of the other database commands (except
           DBGROUP) are used. Once you set the database, it stays set
           until another DB command is executed. Also, the database must
           have been defined previously using VCONFIG.EXE.

           The following read-only variables are loaded when you execute
           the DB command:
           --------------------
           $DB       - This stores the database number you have selected.
                       Like $DBGROUP it is not cleared when you LINK
                       between scripts and so using the two variables you
                       can maintain a constant position within your DBs.
           $DBNAME   - The long name of the selected database.
           $DBPATH   - The path (if any) in the 'File Path' section of the
                       VCONFIG Database entry.
           $DBFILE   - The filename of the actual database storage file.
           $HIGHDB   - This is the pointer that stores the number of the
                       user's highest-read entry in the database.
           $NUMBERDB - This stores the total number of entries in the
                       database.
           $WRITESL  - This contains the minimum security level needed to
                       write to the database.
           --------------------


         4.2 - LOAD Related Commands
         

               The next few commands are all used to manually load in a
           database entry for display and/or analysis.

         LOAD ->  LOAD <value1> <option>

               This command loads the database entry <value1> and has
           one command <option>. Adding /Q to the command line will set
           it so the user's $HIGHDB pointer is not updated. The command
           also loads the following variables:
           --------------------
           $ATTFILE  - Filename of a file that is attached to the message,
                       if any.
           $DBCOUNT  - This variable starts at 0 and can be increased by
                       using the ADDCOUNT command (see section 4.3).  It
                       can not be decreased and has one value for each DB
                       (not for each individual message or file.)
           $DBDATE   - Creation date and time of the entry.
           $DBFLAG   - The value can have a value of 0 or 1 and can be
                       toggled with the DBFLAG command (see section 4.3).
                       The value of this variable is constant, so if it is
                       turned ON it is treated as ON for all users who
                       access the message/file affected.
           $FROM     - The handle of the person who created the entry.
           $FROMNO   - The user # of the person who created the entry.
           $FROMNODE - VirtualNET node number of sender.
           $SIZE     - Size of attached file, set to 0 if none.
           $SUBJECT  - The subject of the message, or brief description
                       for a file entry.
          $TO       - The handle of the addressee, if any.
           $TONO     - The user # of the addressee, 0 if to ALL.
           $TONODE   - VirtualNET node number of addressee.
           $RESULT   - This variable contains one of these items:
                         DEL if <value1> is marked for deletion
                         OUT if <value1> is greater than the number of
                             available entries (listed in $NUMBERDB)
                         PRI if the DB is private and the user is not
                             the sender, addressee, or has an SL below
                             250 (ie Sysop or CoSysop)
                         OK  in all other cases
           --------------------

         DISPLAYMSG <---

               This command displays the message header info to the user.
           It will clear the screen before showing this info if the user
           is using enhanced ANSI (see VBBS.DOC for more information.)

         DISPLAYTEXT <---

               This command displays the memo section of the message to
           the user.  It clears the screen like DISPLAYMSG for enhanced
           ANSI users.


         4.3 - Editing Commands
         

               All of these commands operate independently of the LOAD
           command.  They do still require you to select a DBGROUP and DB
           before use, however.

         ADDCOUNT ->  ADDCOUNT <value1>

               This command increases the number stored in the $DBCOUNT
           by 1 if <value1> is a positive number.

         CLEANUP <---

               This performs the PACK function (below) on all databases.
           This command does not require the use of the DBGROUP or DB
           commands before use.

         DBFLAG ->  DBFLAG <value1> <switch>

               This command toggles the value stored in $DBFLAG for the
           entry <value1>.  The valid switches are ON or OFF and the
           matching $DBFLAG values are 1 and 0, respectively.

         DEL ->  DEL <value1>

               This command marks the entry <value1> for deletion.  It
           also returns the $RESULT variable with the possible values
           being OUT, PRI, and OK (see LOAD entry above.)
 
         PACK <---

               This command deletes all messages within the selected DB
           that have been marked for deletion and then resequences the
           database.  All user and network pointers are automatically
           updated to show the change in message numbers.

         QS ->  QS <value1>

               Manually set the user's $HIGHDB pointer to <value1>. If
           <value1> exceeds the value in $NUMBERDB then $HIGHDB is set
           to equal $NUMBERDB.

         SAVE -> (command on next line due to length)
         SAVE <value1> <value2> <string3> <value4> <filename5> <value6>

               This command makes a database entry and saves it in the
           current database.  The variables used are:
           --------------------
           <value1>    - This is the user # that the message is addressed
                         to, this should be set to 0 if to ALL.
           <value2>    - This is the network address of the addressee,
                         use $NODE if the addressee is local.
           <string3>   - This will be the $SUBJECT of the saved message.
           <value4>    - This contains the size of the attached file, use
                         0 if none.
           <filename5> - This is the name of the attached file, use "" if
                         none.
           <value6>    - This is the network ID of the addressee, use 1 if
                         the addressee is local.
           --------------------
               The message saved uses the above information to create the
           header and then takes the contents of the buffer and uses it as
           the main body of the message.  See section 5.x for information
           on how to use the buffer.  This command can not be used to send
           files attached to emails, it can only be used to add files to a
           database listing.

        SEARCH ->  SEARCH <value1> <number2> <string3>

               This command searches the contents of the database for
           <string3> starting at the entry <value1>. The search is case
           insensitive on <string3>. The value for <number2> can be any
           of the following:
             2 - Search the FROM field, <string3> is not used here as it
                 will always search for the current user's handle.
             3 - Search the SUBJECT/TITLE field, <string3> can be any word
                 or group of words.
             5 - Search the FILENAME field, <string3> must be an acceptable
                 DOS filename with no wildcards.

           This command also returns two variables:
           --------------------
           $RESULT = OUT if <string3> is not found, OK if otherwise.
           $SEARCH = the entry number where <string3> was found.
           --------------------


         4.4 - Viewing & Writing
         

         ͻ
         ** Note:All commands marked with a (*) before the description **
         **      will only work properly if implemented from within    **
         **      a script that was called from a function block that   **
         **      has DBGroup(s) listed in it.  They take the letters   **
         **      for the DBGroups to use from the second line of the   **
         **      .FB the script was called from.  The DBGROUP and DB   **
         **      commands do not affect any of these commands.         **
         ͼ

               These commands allow the user to view messages and move
           around within your databases.

         CHOOSETOPIC <---

         (*)   This command lists all the DBGroups (also known as topics)
           and allows the user to switch over to a different one.  The
           user can also view an index of all databases available from
           within this option.

         LISTBASES <---

         (*)   This lists all the DB's in the current DBGroup.

         NEXTBASE <---
         PREVBASE <---

               These commands move to the next or previous database within
           the selected DBGroup, respectively.

         POST <---

               This lets the user to enter a message into the active DB.

         READSEQMSG <---

               This command allows the user to read the messages within
           the current database.  It also contains a search feature.

         READNEWMSG <---

               This starts the user's new message scan, showing all new
           messages in databases that are in the user's quick-scan list.


         SCANMSG <---

               This command brings up a summary of the messages in the
           selected database.  The user can select a message to read from
           this listing and has access to all sub-menu commands while
           reading the messages.

         SELECTBASE <---

         (*)   This command lists all the bases and then allows the user
           to select a different DB as the current one.  The user can
           also switch to a different DBGroup with this command.

         SETQUICKSCAN <---

         (*)   This command allows the user to select what databases he or
           she would like to view during a new message scan.


         4.5 - E-mail Functions
         

               The E-mail section of the database structure is a separate
           entity.  To make it the active database for using the SAVE
           and BUFFER commands you need to execute the following command:

         SETEMAIL <---

              This command is used instead of the DBGROUP & DB commands to
           make the e-mail section the active database for use with BUFFER
           and SAVE (see sections 5.x and 4.3, respectively.)

         FEEDBACK <---

               This brings up the multi-feedback list (see VBBS.DOC)
           and prompts the user to send a message to the sysop.


         QUICKMAIL <---

               This brings up the multi-mail menu for sending e-mail to
           a group of people all at once.

         READALLEMAIL <---

               This is a sysop command that allows you to read all E-mail
           currently in the system.

         READEMAILFROM <---
         READEMAILTO <---

               These commands allow the user to read all the E-mail FROM
           them or addressed TO them, respectively.

         SENDEMAIL <---

               This command allows the user to send E-mail to other users.

.TOPIC:
Buffer Operation & Use
Buffer Operation & Use
         ͻ
          CHAPTER TEN ANNEX D      BUFFER OPERATION & USE                
         ͼ


                In order to accommodate larger memo sizes VBBS uses a disk
         file buffer in the format Bx.TMP, where x is the channel number
         that the user is on.  This file is stored in the \VBBS dir. The
         commands used to access the buffer are listed below.

         BUFFER APPEND ->  BUFFER APPEND <string1>

                This adds <string1> to the present buffer.

         BUFFER CLEAR <---

                This erases the contents of the present buffer.

         BUFFER EDIT <---

                This command loads up the user's selected editor and puts
           the current contents of the buffer into it.  Note:  When using
           the full-screen editor the user can edit, add, or clear the
           buffer.  The line editor will only allow you to add lines to
           the current buffer or clear it.  The user can clear the buffer
           by aborting out of either editor.

         BUFFER LIST <---

                This prints the current buffer contents to the screen. If
           the user is in ASCII mode then heart-code ANSI is not shown on
           screen but remains within the buffer file.

.TOPIC:
File Commands
File Commands
         ͻ
          CHAPTER TEN ANNEX E      FILE COMMANDS                         
         ͼ

         ͻ
         ** Note:All commands marked with a (*) before the description **
         **      will only work properly if implemented from within    **
         **      a script that was called from a function block that   **
         **      has DBGroup(s) listed in it.  They take the letters   **
         **      for the DBGroups to use from the second line of the   **
         **      .FB the script was called from.  The DBGROUP and DB   **
         **      commands do not affect any of these commands.         **
         ͼ

         IINFORMATION COMMANDS
         

         CHECKFILE ->  CHECKFILE <variable1> <pathfile2>

                This command checks to see if <pathfile2> exists on your
           system and places the file size into <variable1>.  It returns
           a 0 if the file does not exist.

         FINDFIRST ->  FINDFIRST <variable1> <pathfile2>
         FINDNEXT ->  FINDNEXT <variable1>

                These commands search for the file mask <pathfile2>. It may
           include globals and will default to the \VBBS directory if no
           path is specified.  You must execute FINDFIRST once before you
           can use the FINDNEXT command.  Both commands will return the
           full filename to <variable1> or a "" if no match is found.

         FINDFILES <---

         (*)    This asks the user for search text and asks if the user
           would like to search all topic areas.  It then searches all the
           files in the selected DBGroup(s) and searches the descriptions
           for those that contain the search text.

         LISTFILES <---

                This prompts for a filename (wildcards accepted) and then
           lists all matching files in the current database.

         NEWFILES <---

         (*)    This command asks the user would like to scan all topic
           areas and then lists all new files in the selected DBGroup(s).

         RATIO <---

                This displays the user's upload/download ratio.

         REVIEWFILE <---

                This command allows the user to review any of the files in
           the current database.  They can they be downloaded or tagged
           for a batch download later.

         REVIEWUPLOADS <---

         (*)    This command allows the sysop to review all new files that
           have been uploaded by users.


         SEARCHALL <---

         (*)    This works like LISTFILES, but also allows the user to
           search all topic areas.  It then lists the matching files in
           the selected DBGroup(s).

         SETNEWFILESSCAN ->  SETNEWFILESSCAN <value1>

                This command will set the number of days back a NEWFILES
           scan equal to <value1>.  If <value1> is left blank then the
           user will be prompted for the number of days to use.

         TOPDOWNLOADS <---

                This lists the top downloads in the active file DBGroup.

         XFERTIME ->  XFERTIME <variable1> <pathfile2>

                This command will calculate how long it will take to
           download <pathfile2> and stores it in <variable1>.  It will
           return a 0 if the file is not found.


         TRANSFER COMMANDS
         

         BATCHDL <---

                This command brings up the batch transfer menu.

         DLMASTERLIST <---

         (*)    This command allows the user to download a zipped listing
           of your entire transfer section.

         DOWNLOAD ->  DOWNLOAD <pathfile1>

                This prompts the user to choose an xfer protocol and then
           sends the file <pathfile1>.
           
         DOWNLOADFILE <---

         (*)    This command prompts for a filename (it accepts wildcards)
           and then show the user the file's review screen.  The user can
           then download directly or tag for a batch download.

         REMOTEUPLOAD <---

                This allows the user to upload files to the BBS.
 
         SYSOPUPLOAD <---

                This command allows the sysop to upload files locally.

         UPLOAD ->  UPLOAD <pathfile1>

                This command prompts the user to choose a protocol and
           then receives <pathfile1> from the user.  A full path may be
           used, but is not necessary.


         FILE EDITING
         

                VSCRIPT allows you to directly read and write from pure
           ASCII text files.  The commands to do so are listed here.
           Note: You must always OPEN a file before performing any of the
                 other commands and CLOSE it when done, except as noted.

         EDITFILE <---

                This allows the sysop to edit any text file with no more
           than 200 lines.  This is one exception to the OPEN and CLOSE
           rule, you should not use either with this command.

         CLOSE <---

                This closes a file previously opened with OPEN.

         KILL ->  KILL <pathfile1>

                This deletes <pathfile1> off of your system.  This is the
           other exception to the OPEN and CLOSE rule, you should not use
           either with this command.

         OPEN ->  OPEN <pathfile1> <option>

                This command opens a file for use.  One of the following
           three options must be selected on the command line:

                INPUT -> This allows you to READ data in from a file
                OUTPUT -> This allows you to create a file and begin
                          to WRITE new information into it.
                APPEND -> This allows you to open an existing file and
                          WRITE information onto the end of it.
           
         READ ->  READ <variable1>

                This will read in a single line from the file and place it
           into <variable1>.  Multiple READ statements will continue to
           read in the next line in the file and if the end of the file is
           reached it will return an !EOF!.  The only way to start at the
           top of a file again is to CLOSE it and then OPEN it again.

         WRITE ->  WRITE <token2> <token3> <token4> ... <token7>

                This command performs exactly like the TR command in
           section 3.2 with the only difference being that the output
           goes into a file instead of on screen.
         
.TOPIC:
Control Commands
Control Commands
         ͻ
          CHAPTER TEN ANNEX F      CONTROL COMMANDS                      
         ͼ


         GENERAL REDIRECTION
         

         # ->  # <label>

                This command allows you to set points up within your script
           that the various other control commands can use.
                   ex:  TR "Hello "
                        GO skipit
                        TR "You wont see this text..."
                        # skipit
                        TR "Because you just jumped down to here!!"

         CALL ->  CALL <label>

                This forces the script to go to <label> and continue to
           run from there.  When a RET is found the script will go back
           to the line after the CALL command.

         GO ->  GO <label>

                This forces the script to go to <label> just like the CALL
           command, with the only difference being that it will not return
           if it encounters an RET statement.

         RET <---

                This returns a script from a routine CALLed to the line
           after the CALL statement.  Note: RET is ignored if there was
           no CALL statement used.


         LOOPS AND COMPARISONS
         

                VSCRIPT supports some of the more common forms of loops
           and comparison structures.  These are all covered below but
           note that the script language can not generally handle nested
           loops easily, so some testing must be done before you create
           any scripts using such combinations.

         DO LOOPS
         

         ->  DO <variable1> = <value2> <value3>
                  [body of the loop]
             LOOP

                This type of loop begins with <variable1> equal to
           
           <value2>.  Each time it reaches the LOOP it adds 1 to it
           and continues until <variable1> is greater than <value3>.

         ->  DO WHILE <variable1>   {must store a numeric!}
                  [body of the loop]
             LOOP

                This type continues to loop until <variable1> = 0. You
           must have some way to either exit the loop, or have a place
           where <variable1> is set to 0 or the script will lock into an
           endless loop.


         IF/IFVAL STRUCTURES
         

                IF structures allow you to compare 2 strings to see if they
           match, valid <relation> operators are = and <> ONLY! The IFVAL
           structures are identical to IF structures, but they are used to
           compare numeric variables.  Valid IFVAL <relations> are =, >,
           >=, <, <= and <>.

         ->  IF <variable1> <relation> <variable2> THEN
                  [then-code]
             ENDIF

                This performs the [then-code] if <relation> is true.

         ->  IF <variable1> <relation> <variable2> THEN
                  [then-code]
             ELSE
                  [else-code]
             ENDIF

                This performs similar to the IF structure, but if the
           <relation> is false it performs the [else-code].


         TEST/TESTVAL COMMANDS
         

         ->  TEST <variable1> <relation> <variable2> <label>
         ->  TESTVAL <variable1> <relation> <variable2> <label>

                The two TEST commands allow you to compare two variables,
           and if the comparison is true, to go to a separate part of the
           script (as if a GO <label> had been used.)  The only difference
           in the two commands is that TEST performs a non-case-sensitive
           string comparison and TESTVAL performs a mathematic comparison.
           Valid <relations> are =, <, <=, >, >= and <>.
           
         PASSING CONTROL
         

                There are a total of four ways that you can pass control
           from a script to something else.  These four ways each have
           special uses and are covered below.

               Note: These commands will only accept one token following
                     the actual command.  If you wish to have more items
                     on the line then you must place them into a variable
                     and place the variable on the command line.
                     ex: $doscom = "dir " & $pathused & " /w"
                         SHELL $doscom
 
         LINK ->  LINK <filename>

                This command causes the present script to terminate and
            begin running a script called <filename> (do not use any
            extension or globals in the filename.)  All of your
            variables will be cleared before the new script begins
            operation.

         EXIT ->  EXIT <filename>

                This command causes the present script to terminate and
            then exits to the function block <filename> (as with LINK,
            do not use extensions or globals.)  If no <filename> is
            specified then the script will exit to the .FB file that
            it was called from UNLESS the script did a shrinkout (see
            DOOR, below) in which case it will always exit to START.FB.

         SHELL ->  SHELL <pathfile or DOS command line>

                This will drop to DOS while keeping the BBS in memory.
            It will then execute the command following SHELL and then
            return to the line after the SHELL command.  All of your
            variables are retained because the script is never taken
            from memory.

         DOOR ->  DOOR <pathfile or DOS command line>

                This will shrink the BBS out of memory and drop to DOS.
            Implementation of the DOOR command writes the dropfiles
            CHAIN.TXT, DOOR.SYS and DORINFOx.DEF to disk.  If nothing
            else is specified on the command line then the script will
            bring up your list of Doors as set in VCONFIG, otherwise it
            will execute the required command line.  All of the script
            variables will be cleared by the DOOR command.  After the
            DOOR has been exited the user will return to the function
            block that the script was called from unless one of the
            following two commands are used just before the line that
            contains the DOOR command:
            
         RETURNFB -> RETURNFB <function block name>
         RETURNSCRIPT -> RETURNSCRIPT <script name>

                If either of these two commands precedes the DOOR command
            the user will be returned to the function block selected OR
            the beginning of the selected script.  If an invalid function
            block name or script name is given it will restore the user to
            the START.FB function block. If you do not have a START.FB then
            the BBS will shut down.
         

.TOPIC:
Miscellaneous Commands
Miscellaneous Commands
         ͻ
          CHAPTER TEN ANNEX G      MISCELLANEOUS COMMANDS                
         ͼ

                This is the catchall category.  Many useful commands are
         located in this section that just can't be qualified by a major
         type.

         VISUAL/INTERACTIVE
         

         AUTOPOST <---

                This brings up the autopost listing.  See VBBS.DOC for more
           information on autoposts.

         LISTCALLERS ->  LISTCALLERS <value1>

                This command brings up a list of the callers to your BBS
           for the day.  This will show all of the daily callers if
           <value1> is left blank or set to a number higher than the
           total number of callers, otherwise it will show the last
           <value1> callers.

         LOGOFF <---
         LOGOFFYN <---

                These two commands show the user the LOGOFF.MNU and then
           log the user off of the BBS. The only difference between the
           two is that LOGOFFYN prompts the user, while LOGOFF just does
           it.

         PAGESYSOP <---

                This pages the sysop for chat, if available.  See VBBS.DOC
           for information on chat availability.

         RANDOM <---

                This command shows one of your random blurbs from your
           random blurbs file.  See VBBS.DOC for more information on the
           random message setup (in VCONFIG).

         STACK ->  STACK <variable1>

                This command takes the string in <variable1> and places it
           into the next input section that the script enters.  This can
           help make automating multi-keypress functions, like viewing a
           certain message, easy.  It has been tested and can store at the
           LEAST 800 characters from 80 '&'ed variables with NO problems.
           To STACK more than one line of characters for this command just
           use the '&' operator to add multiple variables into the one
           <variable1> for use on the STACK line.  If you DOOR out of VBBS
           or switch to VQWK/VBBS-AUX the information in the stack will be
           lost and will not be implemented.
           
         SYSINFO <---

                This shows the user a listing of the BBS' activity during
           the current day and over the BBS' lifetime.

         VALIDATE <---

                This loads up the network message validation routine. All
           messages in 'Validate On' subs are located here.
  

         WHO <---

                This command lists who is currently online and what they
           are doing.  This normally lists the last function block command
           that was selected or the last ACTION command that was used.


         USER MODIFIERS
         

         ACCOUNT <---

                This brings up the user's default settings and allows the
           user to change them.

         ACTION ->  ACTION <string1>

                This command changes the setting in the <who> command's
           listing to <string1>.  <string1> can be a maximum of 22
           characters long.

         ADDCREDITS ->  ADDCREDITS <value1>

                This command adds a number of credits = to <value1> to the
           users account.  <value1> can be positive or negative.

         ADDTIME ->  ADDTIME <value1>

                This command adds a number of minutes equal to <value1> to
           the users time left for the day.  <value1> can be positive or
           negative.  Note: The change is for the current call ONLY when
           <value1> is positive but lasts for the entire day if <value1>
           is negative, so be careful when using a negative value.

         SETACCFLAG ->  SETACCFLAG <variable1> <option>

                These are the flags used in VConfig to set up restrictions
           on your subs.  They are the (h) flags in the user editor and
           more information on their uses can be found in VBBS.DOC.  The
           <variable1> can be any letter from A to Z and <option> is either
           ON or OFF (remember it is case insensitive).
           
         SETEXTRA ->  SETEXTRA <value1> <string2>

                There are 8 user-specific variables available for use.
           Each variable can contain a <string2> of up to 16 characters.
           The <value1> determines which $EXTRAx will be set.  This is one
           of the ways you can have info pass between scripts and kept
           track of during the 'DOOR' command.  See VDOOR.DOC for a full
           explaination on how this is done.


         SETFLAGS ->  SETFLAGS <variable1> <option>

                There are 26 user-specific flags available for use, these
           are also called general (i) flags.  Each flag is a letter from
           A to Z and they are toggled with the <option> ON or OFF.  This
           is another way info can be passed between scripts or saved for
           use after a 'DOOR' command.  See VDOOR.DOC for an integrated
           example on how this is done.

           Special Note - three of the flags have a preset use for VBBS:
                 A -->  This flag is toggled on/off with the defaults
                        A>utopost command.
                 F -->  When this flag is ON the user will use the
                        built-in Full-Screen Editor.
                 X -->  When this flag is ON the user will only see
                        a menu by pressing <?>. Also called expert mode.

         SETSL -> SETSL <value1>

                Use this command to alter a users security level as shown
          by the $security variable.  The <value1> can be any integer value
          from 0 to 250.  The limit of 250 was set for security reasons.

         SETTIMELIMIT -> SETTIMELIMIT <value1>

                This command can be used to increase or decrease a user's
          maximum time per day as shown by the $maxtime variable.  It will
          accept any integer from 0 to 240 for <value1> and this value is
          in minutes per day. The limit of 240 was set for security reasons.

         USEREDIT <---

                This command loads the user editor, mostly for sysop use.
           Only accounts with an SL of 255 can access this feature.


         REAL MISCELLANY
         

         ! ->  ! <put your comments here>

                Comment line. All text after a '!' is ignored by the
           script compiler.
           
         & ->  & <filename>

                This is an include directive for the VSCRIPT compiler to
           add in the contents of another script onto the end of the
           existing code during compilation.  This allows you to write
           up modular scripts and use them in more than one main script
           without having to type or block-copy the section in.  Just
           remember that it adds the code onto the END of the original
           script, so you must include the GO or CALL statements to get
           access to the extra sections.  You can also use this function
           to reduce the size of a single script, as a very long START.V
           can cause problems when it is run (yet you will have none
           of the problems if you break into pieces and include them in.)

         BEEP <---

                This sends a beep through the computer speaker.

         DELAY ->  DELAY <value1>

                This command pauses the script for <value1> seconds.

         LOG ->  LOG <token2> <token3> <token4> ... <token7>

                This command writes up to 6 tokens into the daily log
           file BBS.LOG, located in your \DATA directory.



.TOPIC:
RIP Help
        See VDOC1 topic area <New In This Release>


.TOPIC:         
Function Blocks
         ͻ
           CHAPTER TEN ANNEX I     SCRIPT/FUNCTION BLOCK COMMANDS        
         ͼ

                What follows is a list of all of the script commands that
         can be used in a function block (.FB) file.  Any special rules that
         apply to the command when used in a .FB file will be listed after
         the command.  The commands are broken down by the sections
         in the main part of this documentation that they are listed in.

         

         Editing Commands
         

              CLEANUP <---

         VIEWING & WRITING
         

           CHOOSETOPIC <---
             LISTBASES <---
              NEXTBASE <---
              PREVBASE <---
                  POST <---
            READSEQMSG <---
            READNEWMSG <---
               SCANMSG <---
            SELECTBASE <---
          SETQUICKSCAN <---

         E-MAIL FUNCTIONS
         

               FEEDBACK <---
              QUICKMAIL <---
           READALLEMAIL <---
          READEMAILFROM <---
            READEMAILTO <---
              SENDEMAIL <---

         INFORMATION COMMANDS
         

               FINDFILES <---
               LISTFILES <---
                NEWFILES <---
                   RATIO <---
              REVIEWFILE <---
           REVIEWUPLOADS <---
         SETNEWFILESSCAN <---
                             This command can only be used to prompt
                             the user for number of days to scan.
               SEARCHALL <---
            TOPDOWNLOADS <---

         TRANSFER COMMANDS
         

               BATCHDL <---
          DLMASTERLIST <---
          DOWNLOADFILE <---
          REMOTEUPLOAD <---
           SYSOPUPLOAD <---

         FILE EDITING
         

              EDITFILE <---

         VISUAL/INTERACTIVE
         

              AUTOPOST <---
           LISTCALLERS <---
                           This command can only be used to list all
                           the callers for the current day.
                LOGOFF <---
              LOGOFFYN <---
             PAGESYSOP <---
                RANDOM <---
               SYSINFO <---
              VALIDATE <---
                   WHO <---

         USER MODIFIERS
         

               ACCOUNT <---
              USEREDIT <---

         REAL MISCELLANY
         

                  BEEP <---

         

             What follows is a keyboard layout showing all of the available
         symbols that may be used within a function block (.FB).  All other
         symbols are unusable and may cause the BBS to lock (&), do nothing
         (%), or give a menu (?).  Also note that you can not use lowercase
         letters in your function block as they are ignored by VBBS, which
         assumes uppercase for all alphabetic characters entered by the
         user.  It is also possible to use extended ASCII characters in a
         function block, although they have not all been tested.

             ~ `   !   @   #   $       ^       *   (   ) -_ + = \ |
                  Q   W   E   R   T   Y   U   I   O   P   [ { ] }
                   A   S   D   F   G   H   J   K   L   ; : ' "
                    Z   X   C   V   B   N   M   , <  . >   /

.TOPIC:
Common Script Examples & Explanations
        To view a complete file of common script examples with
        explainations, view or print the file Example.scr
        which came with your Hypertext Documentation.


.TOPIC:
Networks Help
For Specific Information About the Networks List See  Technical Notes               
Vfido Help                     VirtualNET Help
The Multi-Net Engine           WWIV Help
Configuration                  VUUCP Help
Starting Your Own Network      About Roland De Graaf
Technical Notes                About Rockie Lynn Greer
LocalNET Help                  OFFICIAL File Distribution Sites
     Click on BACK to return to this menu after topic selection           
                
                The VNET.EXE is part of the VBBS package.  It is the most
         advanced Wide-Area Networking software in existence, providing
         commercial and amateur networking installations a superior solu-
         tion to any networking need.  For more information on VNET.EXE,
         see Annex 1 of this chapter.


         VirtualNET
         

                VirtualNET is currently the largest of the hobbyist VNET-
         based networks and, as of this writing, maintains over 500 net-
         worked message areas and file databases that are shared inter-
         nationally.
                Although there are many areas within the network, reflec-
         ting a wide variety of interests, VirtualNET retains as its pri-
         mary purpose the support of the VBBS/VNET software.  That 
         nearly-famous support and the fast-growing network around it
         have been online for nearly two years as of this writing.
                You will find VirtualNET easy to get into and a lot of
         fun to participate in.  VirtualNET is friendly, casual, and
         filled with a lot of great people inside what's become the
         ever-increasing VirtualNET family (over 800 networked systems
         as of this writing).

                Join us!  Networking your BBS with VirtualNET is quick,
         easy, and quite affordable due to the efficiency of the VNET
         design.  Network "packets" are automatically compressed for
         transmission, reducing the length of the transfer to 1/3 that
         of sending uncompressed data.  The network software can make
         full use of the new HS/Link bi-directional protocol, which
         can make network transfers even more efficient.
                In addition, VirtualNET itself undergoes reorganizations
         designed to minimize long-distance connections between "client"
         BBSs and their "servers".  While these can occasionally get a
         little hairy as systems are moved from one VirtualNET "region"
         to another, they're a necessary part of VirtualNET's growth and
         dedication to maximum efficiency.

         --> IMPORTANT NOTE:  Although the software itself has a clearly
                              defined demonstration period which you are
                              expected to observe, registration is NOT
                              required to apply for a VirtualNET network
                              node assignment.

         --> IMPORTANT NOTE:  VirtualNET, while proprietary to VNET and
                              VBBS by nature, is a separate entity from
                              the VBBS program.  The VirtualNET Network
                              Coordinator (NC) reserves the ultimate
                              right of admission or exclusion concerning
                              the VirtualNET status of any VirtualNET
                              BBS, sysop, or applicant, irrespective of
                              VBBS/NET registration status, etc.
 
         For more about VirtualNET Click on VirtualNET Help

         The Multi-Net
         

                The unique and developing VBBS "Multi-Net" allows VBBS
         sysops the capability of maintaining up to 999 different compu-
         ter networks simultaneously.  The Multi-Net is capable of han-
         dling and nearly transparently "gating" private E-mail and net-
         worked subs of VNET-, FIDO-, UUCP-, and WWIV-based networks and
         others in an ever-expanding "Multi-Net".
                Utility programs that enable the use of these networks
         -- VWW4.EXE, VFIDO.EXE, VUUCP.EXE, and more to come -- are
         freely available to VBBS sysops and operative during the
         shareware trial period.  They become inoperative if VBBS remains
         unregistered after this time.
                A master network list file (NETWORKS.LST) is maintained and ad-
         ministered; it includes formal "slots" for VNettype networks and
         completely sysop-configureable slots to use in conjunction with
         any of the above network utilities.

                In addition, up to 999 slots may be configured by sysops
         who wish to create a local network of as few as two BBSes. There
         is no maximum on the number of local network nodes permitted.
         Please see LOCALNET.DOC for specific information.

                For more information on the Multi-Net, 
                Click on The Multi-Net Engine

.TOPIC:
The Multi-Net Engine
1.1 - Overview
           1.2 - The Multinetwork Master List

             The master list of allowable networks is a file named 
             NETWORKS.LST, and is located in the VBBS 'Data' subdirectory.

             This master list is the only way for VBBS to identify the origin
             and destination of posts and e-mail, so it is a requirement
             that major networks be listed in the NETWORKS.LST file.

             The NETWORKS.LST file is an ascii file in following format:
             
             1,1,VirtualNET        See  VirtualNET Help
             2,2,WWIVnet           See  WWIV Help
             3,2,WWIVLink          See  WWIV Help
             4,4,FIDOnet           See  Vfido Help
             5,3,USEnet

             The NETWORKID comes first, followed by the NETWORKTYPE,
             and finally, the NETWORKNAME.
             
             To view the network entries in the NETWORKS.LST file, simply 
             choose option 7, Network Configuration, on the VConfig menu.

           1.3 - The Multinet Mail Tosser

            The multinet mail tosser is built directly into VBBS.
            No external mail tossers from third parties are needed,
            although VBBS can be configured to use them if desired.

            The tosser handles this process of distributing email
            and posts to the appropriate "pending" files for each
            network you are connected to. The tosser also handles
            the importation of incoming email and posts to the BBS,
            and the gating of posts between networks.

            Mail tosser operation is completely automatic and requires
            no special attention. Tossing may also, however, be invoked
            by command line switches or batch files called by external
            events to add flexibility. Please refer to the individual
            documentation for each network-specific interface for
            details on syntax and how this is accomplished. Such
            documentation is included in the zip file for each interface
            utility.


          1.4 - Network-specific Interfaces

            As of this moment, four basic network interface types
            may be used in conjunction with the VBBS multinet engine.
            These are as follows:

            VNET.EXE     for VirtualNET-type networks (type 1)
            VWW4.EXE     for WWIVnet-type networks    (type 2)
            VUUCP.EXE    for UUCP-type networks       (type 3)
            VFIDO.EXE    for FIDO-type networks       (type 4)
  
            These utilities may be downloaded from any VBBS support
            board and are accompanied by specific installation
            instructions.

            Please note that these utilities are not crippled in
            any manner, however, you should register VBBS within sixty
            (60) days to avoid an interruption of service. Failure to
            register will inactivate all interface utilities automatically,
            with the exception of VNET.EXE, after the 60-day period.
            To avoid any inconveniences, please register VBBS as soon as
            possible.

.TOPIC:
Configuration
2.1 - VConfig

           The multinet configuration is done by running option 7, Network
           Configuration, in VConfig. From the net configuration menu, you
           simply choose which network you want to add, and enter the
           appropriate information. It is very important to remember after
           running option 7 to select option 3, Database Configuration,
           and run the Sort Databases and Compile Network functions found
           there.

           2.2 - Answer.net Configuration

           ANSWER.NET, an ordinary ascii text file, should be created
           and placed in your VBBS 'Data' subdirectory if you are to
           interface with other networks successfully. You must have
           answer.net set up properly for VBBS to be able to correctly
           identify incoming network calls. In many cases, the incoming
           network call will use a macro to identify itself. The
           answer.net file is used by the multinet engine to
           acknowledge the network macro, identify the network, and call
           up the proper network interface utility after connecting.

           Note that VirtualNET type networks do NOT need to be configured
           in ANSWER.NET since type 1 networks are automatic. However,
           to detect types 2 through 4, you must "program" ANSWER.NET to
           be able to identify the incoming network from the string it
           sends.

           ANSWER.NET uses only three simple one-character commands: ">",
           "!", and "?".

           ">"     Sends a string. For example, >HELLO would transmit
                   HELLO

           "!"     Waits up to 2 seconds for a byte to come in

           "?"     Compares received byte to ascii code values
                   and calls up the appropriate network interface driver

          Here are some examples:

          ?78=2
          If received byte was 78 ("N"), then answer network #2 (WWIVnet)
          N N N N is the string that WWIVNet sends.

          ?76=3
          If recevied byte was 76 ("L"), then answer network #3 (WWIVLInk).
          L L L L must be the string that WWIVLink sends and must be set
          up by your Link server using a macro.

          Here is an example ANSWER.NET, for a VBBS that is on WWIVnet
          only which you may use:
          !
          ?78=2
          ?32=2

          Here is an example you may use if you are on both WWIVnet and
          WWIVLink:
          !
          ?78=2
          ?32=2
          ?76=3

.TOPIC:
VUUCP Help
Here is an example for a VBBS on USEnet:
          >UUCP
          !
          ?85=5

          Here is an example for a VBBS on USEnet, WWIVnet, and WWIVLink
          which may be used:
          >UUCP
          !
          ?78=2
          ?32=2
          ?76=3
          ?85=5

.TOPIC:
Starting Your Own Network
3.1 - Considerations for Wide-Area Networks

           Because of VBBS' uniquely-designed multinet engine, starting
           your own new network is easier than ever before whether you
           are a business or an advanced system operator.  Here are just
           a few things to consider if you are contemplating this:

           A) You will need to decide on what type of network software
              you want to use for your new network:

              VirtualNET type
              WWIVnet type
              FIDO type
              UUCP type

              While the multinet engine will easily handle any type above,
              remember that the simplest network to run operationally is a
              VirtualNET type network. This requires no special setup of
              the answer.net file or macro setup on the part of the server,
              has support for update utilities, and other advantages.

           B) You will need to select a name for your network.

           C) You will be responsible for maintaining your network, such
              as producing its bbslist or nodelist, establishing
              connections, nominating ACs, etc.

           D) You should have the following thought out in advance:

              Network Policy and Goals
              Network Application
              Advertising
              Administration
           E) Update utilities

              Update utilities let you, as network coordinator send out
              BBSLISTs and SUBSLISTs for the maintenance of your network.
              Custom update utilities for VirtualNET type networks are
              available from the VBBS author. For more information on how
              to start a VirtualNET type network, please refer to the
              LOCALNET.DOC file.

           F) Inclusion in NETWORKS.LST

              Since you can edit NETWORKS.LST yourself, inclusion isn't
              a major problem. However, we do try to maintain one 
              "unofficial" networks master list.
              
          3.2 - Local Networks

              It is an established de facto standard that local nets
              should use slots 15 and 19, in order for maximum compatibility
              with everyone else on the planet.

              It is highly recommended that if you wish to use a NETWORKID
              other than 15 or 19, you should consult the unofficial
              networks master list for a unique NETWORKID to use.

For Additional Information About LocalNET,  
See LocalNET Help               See OFFICIAL File Distribution Sites
                                

.TOPIC:
Technical Notes
4.1 -  NETWORKS.LST File

              The NETWORKS.LST file is a master list of networks. Each
              network is defined by Proper Name ("VirtualNET",
              "WWIVNet", "USENet",etc.) and by Network Protocol
              (VNET, VWW4. VUUCP, VFIDO,etc.), and by Network ID.
              Each network must have a unique ID number. IDs begin at
              1 and go up sequentially.

          4.2 - NET.x Files

              These are the configuration files for each network and
              are located in the Data subdirectory. The .x refers to
              the network ID number as defined in the NETWORKS.LST file.
              These are simple ascii files in this format:
              <parametername>=<parameter data>

              A NET.2 file for WWIVNet, for example, might look like
              this:
                          systemid=2067
                          netdir=c:\wwiv\data
                          mode=net

              where systemid is the WWIV node number, netdir is where
              the network files are located, and mode is either
              "net" or "link" which instructs VWW4 of the mode to run in.

              A NET.1 file for VirtualNET, might look like this:

                          systemid=2103
                          netdir=c:\vbbs\net
                          server=1
                          client=2112 $1-512-340-2265
                          client=2115 +381-0031 /25

              where $,+, /,!, and ^ are optional modifiers indicating
              long distance phone numbers, local phone numbers, threshold,
              macro, and password.
              Note that VConfig is used to edit these NET.x files, but
              they could be edited manually.

          4.3 - <database filename>.NET Files

              These are located in the DB subdirectory and show the
              networks a database (message base,sub) is connected to.
              These are ascii files that store the sub identifications.
              In addition to the .NET file, .QSC, .BIN, and .DAT files
              are generated when a database is configured. For example,
              the x.NET file for VBBS Forum, a sub gated to WWIVNet, might
              look like this:
                              1=302
                              2=5275
              This is translated as:
              network ID 1 (VirtualNET) sub number 302
              network ID 2 (WWIVNet) subtype 5275

              If this sub were being gated to other networks, additional
              lines would be added with the appropriate information.

              Note here also that the sub identification can be a number
              or a string. This depends only on the net interface's
              interpretation of the data.

          4.4 - The MultiNet Tosser Functions & Email Gating

              The multinet tosser ensures that all gated messages go to the
              proper place. An example of the mechanics are as follows:

              When a user posts, two copies are written. One goes to the
              database itself, and the other goes to SPOOL.NET which is
              a temporary file fond in the Data subdirectory. After
              the user logs off, the tosser analyzes SPOOL.NET and
              distributes the posts to PENDING.x files, where .x is the
              network ID. VBBS then checks for PENDING.x files that
              might exist and calls up the proper network interface
              handler for each PENDING.x file. The net interface program
              reads its own PENDING.x file and packs up the messages.
              When a net interface program receives a message, it also
              needs to write two copies, one to LOCAL.NET which VBBS
              unpacks to the databases, and one to either VALIDATE.x
              if validation is turned on for the sub, or to
              DISTRIB.NET.  DISTRIB.NET is similar to SPOOL.NET except
              that messages in DISTRIB.NET are redistributed to all
              networks except the one it came in on. (SPOOL.NET is
              distributed to all networks).

              The multinet mail tosser also handles gating of email.
              That is, you can send & receive email to a user on a network
              of which you are not actually a member.

              For example, let's say you wanted to send an email
              to someone on FIDOnet, but you're not actually on FIDOnet,
              but you are a member of VirtualNET.

              Your first step is to find a VirtualNET system
              that is also on FIDOnet. (Multinetworked)

              Once that is accomplished, email the sysop of that board
              and ask if you may use his system to gate email
              into the other network. (It's always good to ask first.)
              If permission is granted, manually create a text file
              in your DATA directory, the filename should be GATEWAY.x
              where x is equal to the network id of the network you
              want to have a gateway to. In this example, since are target
              network is FIDOnet (Network ID = 4), we would create a
              GATEWAY.4 file in the DATA Directory. We will put one
              line of ASCII text into this file:

              @<system address>*<network number>

              <system address> is the node address of our gateway system.
              <network number> is the TRANSPORT NETWORK which will be used
                               to gate the mail.

              For example, if I wanted my FIDOnet gateway to be
              @440 VirtualNET, I would make GATEWAY.4, with the line:
              @440*1

              Another example: I want to email USEnet thru TechNET
              (Network ID = 8) system @1000. I would create a GATEWAY.5
              file (Network ID = 5 for USEnet), containing the line:
              @1000*8

              It should be noted that the TRANSPORT NETWORK must
              be of VirtualNET type. An email may, however, pass
              thru several gateways (no limit), if needed, to get
              it where you want it to go. This opens up some very
              powerful possibilities.

.TOPIC:
Vfido Help
VFIDO CONFIGURATION

              Introduction
              ============

              This program is designed to create an interface between the
              VBBS software written by Roland de Graaf and any Fido-
              compatible network. FidoNET itself is the largest hobbyist
              network in the world, with over 21,000 BBS members, and
              literally thousands of smaller Fido-compatible networks
              worldwide.

              This version of the interface program allows the exchange of
              private mail and public message areas between VBBS and Fido.
              VFIDO is fully-featured and has provisions for incoming and
              outgoing Crash Mail, File Requesting, and File Attaches as
              well.

              Used in conjunction with the integral VBBS front end mailer
              or with FrontDoor, VFIDO readily handles calls to and from
              other Fido BBSes running VBBS, FrontDoor, BinkleyTerm, or
              other mailers adhering to FidoNet FTS-0001 specifications.

              Joining FidoNET
              ===============

              Until the arrival of VBBS, setting up FidoNET for the first
              time was a laborious and complicated chore for sysops
              unfamiliar with Fido's idiosyncrasies. In essence, FidoNET
              policy requires the sysop to have his interface software set
              up properly before he can officially apply for a FidoNET node
              number. Application for a node number must be made through
              e-mail sent from the requesting sysop's bbs through FidoNet
              to the local Area Coordinator. A temporary node number is
              issued by the AC for the sysop to be able to make this
              connect. This procedure may vary from area to area, however,
              so please contact the nearest AC for information.

              Before proceeding with VFido installation, then, you must
              first obtain a provisional node number from your local
              FidoNET Area Coordinator and information about what
              application information you need to provide him with. Using
              the provisional node number the AC issues you, you may begin
              installing the VFido interface. After this initial setup is
              completed using this temporary node number, you must send
              the application information directly to the AC in Fido email.
              The direct connect from your BBS via Fido is the AC's
              guarantee that your bbs software has been set up correctly
              and is Fido-capable.

              Based on the application information you email, the AC will
              then issue you an official FidoNET node number and begin
              proceedings to have your number listed on the main FidoNET
              Nodelist. At this point, you will have to update the FidoNET
              network information (option 7 in VConfig) in VBBS to
              replace the provisional node number used for the initial
              connect with your official and permanent node number.
              The information entered in VConfig must be recompiled (see
              below).
 
              Normally, you may expect to wait 5-10 days for your new Fido
              node number to appear on the official Fido Nodelist, at
              which point you may begin subscribing to echoes,etc.


              Initial Configuration Of VFIDO To Give E-Mail Functionality
              ===========================================================

              Place the VFIDO.EXE program in your VBBS directory.

              Run VCONFIG.EXE, and select Network Configuration for the
              Fido (type 4) network you are configuring.

              1. Fido Address:       2:440/211
                 Your Fido network primary address in Zone:Net/Node.Point
                 format)
              2. NetMail Directory:  C:\VBBS\NETMAIL
                 Where Fido netmail will be stored - must be the same for
                 all your Fido networks
              3. OutBound Directory: C:\VBBS\OUTBOUND
                 Where Fido EchoMail will be stored - must be the same for
                 all your Fido networks
              4. Archiver:           PAK
                 Compression method for outgoing EchoMail - PAK, LHA, ZIP,
                 ARJ
              5. UnArchiver:         PAK
                 Compression method for incoming EchoMail - PAK, LHA, ZIP,
                 ARJ
              6. FIDO Front-End:     Standalone
                 Standalone or FrontDoor are only valid options at this
                 stage
              7. Nodelist Name:      NODELIST
                 The name of the nodelist for the network
              8. Zones:              1-7
                 The range of Zones that belong to that network (ie the
                 Domain)

              D. Dial List

              1. System Address:         2:440/59
                 Fido address of node to call
              2. Phone Number:           0689-824890
                 Full phone number to dial
              3. Poll Priority:          Hold
                 Hold means never call, Priority is call as soon as mail
                 is waiting, once a day is the final option
              4. Preferred Session Type: EMSI (FSC-0056) w/Zmodem (DSZ)
                 EMSI or TSYNCH handshaking selection
              5. Session Password:       FRED
                 The password to use in the EMSI session with the other
                 BBS, which may be blank
              R. Routing

              1: 2:440/59 2:440/59
                 Fido address of server and routing mask including
                 wildcards. The routing logic works top to bottom through
                 this list so you can't add anything meaningful after the
                 last line with the *:*/* on it.
              2: 1:1/1 1:*/*
              3: 2:440/6 *:*/*
              A)dd Lines E)dit Lines D)elete Empty Lines Q)uit:

              A. AKAs

              1: 2:440/59.3
                 Alternative address for the board - must be same Zone
              2: 2:440/0
              A)dd Lines E)dit Lines D)elete Empty Lines Q)uit:

              Once this configuration is completed, go to the main VBBS
              directory and run:

              VFIDO /C NETWORKID=#

              You must rerun this every time you change any of the above
              configuration information.


              VFido Control File
              ==================

              You will also need to set up a file containing phone prefix
              aliases called VFIDO.FON in your DATA subdirectory. This is
              used to ensure that the phone numbers listed in the nodelist
              are converted to a format that can be dialed from your BBS.
              This is used for removing your country code for national
              calls and area code for local calls. VFIDO needs the correct
              phone numbers listed so it can call any BBS in the nodelist
              when Crash Mail, File Attaches or File Requests are sent.

              An example of this control file for the USA would be:

              011-            The prefix for dialing international phone
                              numbers
              1-616-399- 399- Sets up the toll free codes for your area
                              code, where 616 is the area code and 399
                              a local prefix
              1-616- 1-       Makes all other calls in your area code long
                              distance
              1- 1-           Ensures all US phone numbers are not made
                              international

              This example would convert a phone number listed as
              1-616-399-4818 to 399-4818, or convert 1-616-772-0482 to
              1-772-0482, or 44-689-890937 to 011-44-689-90937

              and for Europe:

              010-            The prefix for international calls
              44-689-         Strip the country and area code for local
                              calls
              44- 0-          Add a 0 prefix for national calls

              As an example, the above would convert an international
              phone number listed in the nodelist as 1-616-399-4818 to
              010-1-616-399-4818, or a national number in the nodelist as
              44-689-890937 to 0-689-890937.


              Nodelist Compilation
              ====================

              Obtain the most recent nodelist from your FidoNet server
              and place it unarchived into the C:\VBBS\NETMAIL directory.
              Then at the prompt in the main VBBS directory type:

              VFIDO /A NETWORKID=#

              You will need to rerun this every time you receive a new
              NODELIST, or when you change information in the VFIDO.FON
              control file.

              Since the FidoNET nodelist is quite large, normally your
              Netmail Server will only send out weekly updates called
              NODEDIFF files automatically. Third party utilities such as
              XLAXDIFF and MERGENL may be used to make a new updated
              nodelist using the NODEDIFF information. After doing this,
              the above analysis must be run.

              Batch files have been developed which automate this updating
              process and can be called up in daily maintenance. Here is
              an example of one such batch file which checks to see if
              there is a NODEDIFF file and uses the XLAXDIFF utility to
              produce a new NODELIST.

             @ECHO OFF
                IF EXIST C:\VBBS\OUTBOUND\NODEDIFF.* GOTO :GOTONE
                GOTO :EXIT
             :GOTONE
                CD C:\VBBS\NETMAIL
                DEL NODEDIFF.*
                CD C:\VBBS\OUTBOUND
                COPY C:\VBBS\OUTBOUND\NODEDIFF.* C:\VBBS\NETMAIL\NODEDIFF.*
                DEL NODEDIFF.*
                CD \VBBS\NETMAIL
                XLAXDIFF /C
                CD \VBBS
                VFIDO /A NETWORKID=4
             :EXIT
             ECHO NO NEW NODEDIFF FILE TO UPDATE!
             EXIT


              Sending E-Mail Using VFIDO
              ==========================

              To send an E-Mail message from VBBS to any Fido-type network
              , invoke the E-Mail routine as normal. The User Network
              Address field should be completed in the format User
              Name@Fido Address, so to send E-Mail to me use Neil J
              Marshall@2:440/211.

              If you want to send Crash Mail, that is where the E-Mail is
              sent directly to the addressee's BBS, ignoring the routing
              logic, then add a " +c" after the addressee's name, so to
              send Crash Mail to me use Neil J Marshall +c@2:440/211.

              In Fido-type networks it is policy that messages with files
              attached must go directly to the addressee's BBS and ignore
              the routing logic, so if you attach a file to a message it
              will be held on your board awaiting a call from the
              addressee's BBS unless you send it Crash Mail or the
              addressee is one of the BBSs in your dialing list that you call.


              File Requests Using VFIDO
              =========================

              If you want to send a File Request to another Fido-type BBS
              invoke the e-mail routine as normal. The User Network
              Address field should be completed in the format
              Sysop +f@Fido Address, where the " +f" is the switch to
              indicate this is a File Request. The Filename requested is
              put in the Title field of the message. All File Requests are
              sent direct to the addressee's BBS and ignore routing. If the
              addressee's BBS is not one that you have set up in your
              dialing list, then you must also use the +c switch to make
              the File Request a Crash E-Mail. To request the latest
              version of VFIDO from me, you would invoke the E-Mail
              function and address it to Sysop +f +c@2:440/211, then make
              the Title of the message VFIDO.

              VFIDO also supports incoming File Requests. When a File
              Request is received, VFIDO searches each of the File Areas
              that you have set up in VCONFIG and sends the file back if
              it is found. VFIDO also supports "Magic Names" for File
              Requests - this is where a pseudonym is associated with an
              actual file for ease of access by calling systems.
              Magic Names should be set up in the file VFIDO.MAG in your
              DATA directory. The format of this file is one entry per
              line, giving the "Magic Name" followed by the full path and
              filename of the file to associate with the Magic Name, for
              example
                      VBBS C:\VBBS\FILES\SYSOP\VBBS560.ZIP
                      FILES C:\VBBS\MASTLIST.TXT
                      VFIDO C:\VBBS\FILES\SYSOP\VFIDO560.ZIP
              might be some of the most common ones.

              If you want a "standard letter" sent in response to each file
              request, create this letter in a file called FILEREQ.TXT in
              your TEXT path. Generally a Fido Sysop should use this to
              list the Magic Names applicable to their BBS.

              Configuration Of VFIDO To Add Conference Functionality
              ======================================================

              If you want to access public message areas in Fido, you will
              need to know the AREA name that uniquely identifies each
              Fido conference. Supposing for example you wished to set up
              VBBS to participate in a Fido conference whose AREA name was
              HARPOON:
 
              Run VCONFIG.EXE and select Database Configuration, Message
              Bases, the relevant Group and Database. Then select Networks
              Configuration, A for add, select the network, and on the line
              for the Network Conference Identifier, put the AREA name of
              the Echomail conference in the network, and ALSO, separated
              by a space, the Fido addresses of the nodes to whom you
              directly circulate the conference, if you are acting as a
              local hub. If you are simply receiving a conference, then
              place the node number of the EchoMail server you connect
              with to obtain the conference after the AREA name.

              This line is currently limited to 80 characters here so it
              will be difficult for you to become a major hub yet. Our
              plans do call for amplifying this field shortly, however.

              An example of the FidoNET entry in the database would look
              like this:

              Network Conference Identifier: HARPOON 2:440/59 1:2/3
                                              ^       ^
                                              *       *
                                              *       *
                                              *  These are the Fido
                                              *  addresses of the BBSes
                                              *  in the circulation list
                                              *  (or Echomail server of
                                              *   the conference)
                                              *
                                  This is the AREA name of the Fido
                                  conference

              After you have set up all your conferences, you must run
              VCONFIG, Database Configuration, Compile Network
              Configuration - and you will have to rerun this every time
              you change the network configuration of a database.

              With these simple steps taken, every message posted on that
              conference will be echoed to Fido, and every message from
              Fido on that conference will be fed into VBBS.

              Using AreaFix To Request Conferences
              ====================================

              You can add or remove your BBS to the subscription list for
              conferences on other Fido BBS using AreaFix.

              All you have to do is to send a NetMail to AreaFix at the
              BBS address with your AreaFix password as the title (the
              AreaFix password is agreed in advance by yourself and the
              other Sysop) and a content that lists, line by line, the
              Area name of a conference, preceded by a - for remove.

              For example, a message whose content read:

              VFIDO_SUPPORT
              -GAMES_DISCUSSION
              -------

              would add your BBS to the VFIDO_SUPPORT conference and remove
              it from the GAMES_DISCUSSION conference. The ---- tear line
              is used to indicate to AreaFix the end of your requests.

              VFIDO supports incoming AreaFix requests as well. However,
              there is no facility for implementing an AreaFix password,
              so the title of the NetMail can be anything.


              Summary Of VFIDO Command Syntax
              ===============================

              VFIDO {channel number} {option} NETWORKID=#

              # is the network identifier as specified in the NETWORKS.LST 
              file for the network you are connecting to.

              {channel number} is only necessary with /DIAL, /HOST
              and /POLL options.

              {option} is one of:

              /A      Build network list from nodelist
              /C      Compile initial Fido information
              /DIAL   Make a call to another Fido address, specifying the
                      address right after the switch like /DIAL2:440/211
             /HOST   Answer an incoming Fido call
             /POLL   Call all systems for whom Crash Mail is pending
             /U      Scan VBBS mail and toss to Fido
             /T      Scan Fido mail and toss to VBBS
             For example, a batch file to call up from the WFC to force
              Crash Mail callouts might contain something like this:

              VFIDO 1 /POLL NETWORKID=4

              Technical Information
              =====================

              VFIDO creates FTS-0001 packets for NetMail with FSC-0039
              extensions for Zone and Point 4D addressing, FTS-0004 ARCmail
              packetsfor EchoMail, and FTS-0006 WaZOO-format File Requests.

              Connections can be using FTS-0001 (TSynch) using XMODEM or
              FSC-0056 (EMSI) using ZModem.

              Outgoing Crash Mail is only supported using EMSI.

.TOPIC:
WWIV Help
VWW4 / WWIVnet and WWIVlink Setup
           Requirements
           ------------

           It should be pointed out here that in order to interface VBBS
           with WWIVNet and WWIVLink (or other WWIVtype networks), you
           should register VBBS as soon as possible. Multinet access in
           the shareware version is limited to 60 days, after which time
           all network interface utilities with the exception of VNet,
           become inoperable. By registering, you are guaranteed that
           network access will not be interrupted, so please do register
           VBBS as soon as possible to avoid any inconvenience. There
           is a only a one-time, life-time registration fee for the DOS
           version of VBBS.

           VWW4.EXE is the interface utility designed especially for VBBS
           version 6 which carries out the net interface function for
           all WWIV-type networks, including WWIVNet, WWIVLink, and
           ICENet. Before setting up the interface, however, you should be
           aware that many subs from these networks are now being gated to
           VirtualNET. Thus, it may not even be necessary for you to carry
           out this interface at all. Please read the NETGUIDE.DOC for
           information on how to set up and join VirtualNET and subscribe
           to subs. A current SUBSLIST.NET file in your NET subdirectory
           lists the various subs available to choose from.

           Now, if you already have VWW4.EXE in hand and want to continue
           with the interface installation, be aware that you MUST also
           have a WWIVnet or WWIV-type node number in order to net. You
           must also set up the appropriate WWIV network files according
           to instructions from your AC/GC.

           WWIVNet network policy has changed recently and sysops are
           required to register the WWIV network software within 60 days.
           After this period of time, unregistered sysops are
           automatically dropped from the WWIV bbslist. The WWIV network
           files may be registered separately for $20, and we urge all
           sysops that wish to have access to all WWIV-type subs to
           register this software. Contact your local WWIV AC for more
           information.  As for WWIVLink sysops, no such registration
           requirement currently exists and separate network software is
           available.

           In general, it is best to set up WWIV completely and separately
           until your net connects are operational. It is easier then to
           delete the unnecessary WWIV files later. If you plan on
           receiving more than one WWIV-type network, then you should set
           up individual WWIV directories with different directory names,
           and realize your net connections first before making any file
           deletions. This procedure is covered thoroughly in the WWIV
           install documentation and in the network documentation written
           by WWIV support staff. It is important that your net
           connections be properly established and each WWIV bbs be
           fully functional in this respect before proceeding. It is also
           recommended that all net connections through VWW4 be made using
           Channel 1 selected in VCONFIG (option 2), although any active
           channel may be used.

          Initial Configuration
          ---------------------

          Once you have established normal net connections through WWIV,
          then proceed as follows:

          Step 1 - Run VCONFIG once again and choose the NETWORK
                   configuration option (option 7).
                   Here you will see a list of current networks handled
                   by the multinet engine. Choose WWIVNet (or WWIVLink,
                   etc) with the up/down arrow keys and fill in the
                   appropriate fields shown below. Please note that each
                   network listed has a separate slot in the NETWORKS.LST 
                   control file and that all WWIV-type networks are Type 2,
                   meaning they use VWW4 as the interface utility.

                   You will now see the following type of screen:

               Ŀ
                Network #2 WWIVnet Type 2 (VWW4.EXE)                  
               

                1. Node Number:
                2. Data Directory:
                3. Mode:
                4. EXE Directory:
                5. Dialout Init String:

                U. Uninstall this Network

          Step 2 - Enter your WWIVnet node number in the first field.

          Step 3 - In the next field, enter the full path to the WWIVNet
                   DATA directory (e.g. c:\wwiv\data).

          Step 4 - For Mode, select NET for WWIVNet-type networks, or
                   LINK for WWIVLink-type networks.

          Step 5 - For the entry to the EXE (executeable) directory,
                   specify the complete path to where the WWIV network
                   executeable files are located  (e.g. c:\wwiv).

          Step 6 - For your Dialout Init String, leave this blank for now,
                   unless you are using a version of WWIV prior to WWIV
                   4.20. Later on when testing your WWIV connect with the
                   multinet engine, it may be necessary for you to include
                   the WWIV modem init string in this space if you fail to
                   connect properly. This string would be the same one
                   chosen from the WWIV modems.mdm file. Again, make sure
                   you connect properly to your WWIV server independently
                   from VBBS before attempting the interface here.

          Step 7 - After Vconfiguring the NETWORK option above, unzip the
                   VWW4.exe file in your root VBBS directory and read the
                   technical information given in the VWW4.DOC . It should
           be noted that the multinet engine in VBBS 6.20 is
                   automatic and requires no batch files, but batch files
                   may be used for convenience and flexibility depending
                   upon your setup.
 
          Step 8 - You must now create an ANSWER.NET file based on the
                   information provided in the MULTINET.DOC file. This
                   should be placed in your VBBS DATA subdirectory.
                   For a VBBS that is on WWIVNet, the ANSWER.NET file
                   would look as follows:

                   !
                   ?78=2
                   ?32=2

                   For a VBBS on WWIVNet and WWIVLink, the ANSWER.NET
                   would contain:

                   !
                   ?78=2
                   ?32=2
                   ?76=3

                   Please refer to other parts of the MULTINET.DOC for
                   more details. Just as an explanation, the ?78 above
                   refers to the N N N sign that WWIVNet sends as an
                   incoming identifier. The ?76 is an L L L that WWIVLink
                   uses. These are ascii characters 78 and 76,
                   respectively.


          Step 9 - Copy NETWORKS.LST from the zip package to the VBBS NET
                   subdirectory.

          Step 10 - If you are interfacing with both WWIVnet and WWIVLink,
                    you MUST maintain separate directories for NET and
                    LINK as mentioned previously. The same holds true for
                    any other WWIV-type networks you subscribe to. In each
                    directory make sure that all of the WWIV network files
                    are in their proper places. Make sure you have run
                    Vconfig's Network option and set the path correctly
                    to where the respective networkx.exe files are
                    located.

          NOTE :
    
          You will also have to maintain the DATA subdirectories in each
          of these to create the necessary NNxxxx.net and Nxxxx.net
          or NNALL.NET files needed later to subscribe and to host subs
          on WWIVNet. If you are converting totally over to VBBS from WWIV
          and would like to delete unnecessary/unwanted WWIV files, a list
          of the required WWIV files may be found in the APPENDIX. Erasure
          of unwanted files, however, should be the very last step you
          take in the conversion process after verifying successful
          net connections. As an alternative to deletion, we suggest that
          you simply zip up the unnecessary files and keep them in a safe
          place in the event you need them to reconfigure something in
          WWIV itself later.
 
          Step 11- Run VConfig again and choose the Databases (option 3).
                   Choose Sort Databases to allow the program to set up.
                   Now choose the Compile Networks option. It is important
                   to note than whenever ANY changes are made in the
                   Network option or in Database entries, this must be
                   followed by the Sorting and Compiling options above
                   for the changes to take effect. This complete the
                   network installation procedure.

          Installing Message Bases
          ------------------------

          Assuming you have placed VWW4.exe in your main VBBS
          directory and vconfigured the networks properly,
          then installing a message base is a fairly simple process.
          Follow the instructions given in the main documentation
          regarding adding databases.

          In the database entry for a sub, note that option G is for
          Networks Configuration. Choosing this will bring up
          a screen which allows you to A)dd D)elete E)dit  a
          network.

          Pressing A) to add a network brings up a screen where you
          can choose the appropriate network. For a sub carried on
          WWIVNet, you would choose entry 2, for example.

          Doing so will bring up another prompt as follows:

          WWIVNet Network Conference Identifier:_

          Simply enter the subtype number of the message base you
          want, and press enter.

          Exit out of the database to the main database menu and
          once again, choose Sort Databases and Compile Networks.

          Please note that if a message base is being gated to
          VirtualNET from any other network, you have the option
          of subscribing to it as a VirtualNET sub or as a sub
          from another network, but NOT both. Doing so will result
          in duplicate posts.
          NOTE:
    
          If you are subscribing to a Net or Link sub for the first
          time, you must follow the normal procedure of requesting
          the sub from the host and setting up the appropriate
          NNxxx.NET files or NNALL.NET file in the proper data directory.
          In addition this version of VBBS also supports WWIV's auto
          request sub feature (req.exe) using the VREQ utility available.
          It also accepts type 20 messages (subs.pub) using the VWWIV
          utility.


          Hosting a WWIV Sub
          ------------------

          If you are currently hosting a WWIV message base, be assured
          that the same procedure above works for hosts. Again, simply
          enter the appropriate subtype when asked for the Network
          Conference Identifier. Don't forget that you must maintain your
          distribution list through you Nxxxx.NET file as usual. Subs
          flagged for validation may be validated from the SysOp SubMenu.


          Gating Subs to Other Networks
          -----------------------------

          If you are currently hosting a sub on WWIVNet or another
          network, you probably will be interested in 'gating' your sub
          into VirtualNET or other networks to expand your subscriber
          base. This is easily accomplished by adding additional networks
          to your database entry. Entering more than one network and
          respective Network Conference Identifier (subtype, sub number,
          echo,area,etc.) effectively 'gates' that database.

          NOTE:

          If you are running VBBS as a chain, we do not recommend that you
          attempt gating due to the mechanics of the multinet engine. If
          you wish to gate to multiple networks, we strongly recommend
          that you run VBBS as your main bbs software for simplicity's
          sake.

          Please refer to the NETGUIDE.DOC for further details on how to
          set up a hosted VirtualNET sub, sub numbers,etc.

          Forcing a Callout
          -----------------

          Please note that the VWW4 software is fully automatic, and will
          callout and receive calls from your server depending upon your
          main settings for Threshold and Polling in Vconfig. However, you
          most likely will wish to force callouts to your server from
          the WFC screen from time to time. To do so, you should Type 'N'
          from the Control Panel. First, this will bring up all the
          Networks you currently belong to. Select the appropriate network
          followed by the appropriate system (server).  This will force
          the system to call a particular node.
    
          NOTE:

          WWIVNet and WWIV-type callouts are completely automated if you
          are running VBBS as your main program.  Be sure to set your
          Threshold level and Polling frequency in Vconfig.  Note that the
          settings of these levels apply generically to all networks,
          (e.g. the same threshold and polling configurations apply to
          VirtualNET, WWIVNet, and WWIVLink packets). Setting the
          threshold level to 0 effectively tells the software never to
          dial out automatically, so be sure to change this. For different
          calling schedules, appropriate utilities such as POLLUTIL.ZIP
          and VWW4-CHK.ZIP are available to customize your setup.


          VWW4 Activity Log
          -----------------

          All net connections made by VWW4 are also listed in the VWW4.LOG
          file which can be found in your main WWIV directory. We suggest
          setting up a function key to be able to view this from the VBBS
          WFC screen using the Control Panel option in Vconfig. For
          example, a bat file called VWW4LOG.BAT could be created and
          placed in your VBBS directory with the following command line:

          CD\WWIV
          VLIST VWW4.LOG
          CD\VBBS

          If you are interfacing with both WWIVNet and WWIVLink, then a
          second batch file similar to the above would need to be created
          pointing to your Link directory, and a second function key set
          up in the Control Panel.

          Viewing WWIV's  net logs may be done in the same fashion using
          the Control Panel. Simple script mods are also available to view
          all pending lists from the internal Sysop Menu in VBBS.

          Analyzing the BBSList
          ---------------------

          VBBS creates a listing of systems belonging to various networks
          that is used for routing mail. You will need to compile this
          information for WWIV the first time you set up so that it may be
          viewed from inside of the board. Subsequent updates are made
          automatically. Note that when WWIV calls in with new bbslists,
          these will be compiled normally and no special maintenance is
          necessary.

          To make a new indexed list of WWIV boards for use by VBBS,
          please delete the existing BBSDATA.IDX file from your WWIV data
          subdirectory first. Then, from the WWIV main directory type:
          NETWORK3 /Y  . This will produce new a new idx file.

          Now, generate a new bbslist index for VBBS. Change to the root
          VBBS directory where VWW4 is located and type:

          VWW4 B NETWORKID=2   for the WWIVNet list, or
          VWW4 B NETWORKID=3   for the WWIVLink index

          You should now have succesfully created the new bbslist index
          file that VBBS uses. This is located in your VBBS Data
          subdirectory.

          The procedure is similar for generating bbs listings for other
          WWIV-type networks. Be aware of the importance of specifying the
          correct Network Identifer Number in the above command line
          NETWORKID=  . Refer to the list of networks available in
          VConfig's Network options if you need to refresh your memory on
          what network the appropriate network number is.
   
          VWW4 Command Line Switches
          --------------------------
           The Virtual MultiNet Engine (VME) handles WWIVtype networks
           seamlessly. However, VWW4 functions may be called up from batch
           files also, thus providing a flexible means for you to customize
           your setup.

           VME will run the VWW4 as needed automatically, providing the
           proper NETWORKID= and PORT= parameters. Running from a command
           line, however, you must specify the following three command
           line parameters:

           VWW4 <command letter> NETWORKID=<net #> PORT=<COM port #>
 
           The command letter tells VWW4 what to do:
 
           Command Letters are:
  
           B      Bundle mail for WWIV (Update WWIV packets and bbslists)
           U      Unbundle mail from WWIV and store in VBBS databases
           D####  Dial WWIV System #, do transfer, and unbundle if
                  successful
           A      Answer WWIVnet call, do transfer, and unbundle if
                  successful.

           The NETWORKID= parameter tells VWW4 which network to process.
           WWIVnet is net #2, WWIVLink is net #3, ICEnet is net #6, and if
           new WWIVnet based nets appear, they will have net numbers
           assigned to them as well. Check NETWORKS.LST for the current 
           network list.

           The PORT= parameter must be included when using VWW4 to answer,
           or dial a network call. This specifies a COM port number.

           An example of forcing bundling from the command line would
           look like this:

           VWW4 B NETWORKID=2 PORT=2

           This would bundle the mail for WWIVNet for processing on comport
           2.

           Please refer to the extended VWW4 documentation included
           with the VWW4.EXE file itself for more detailed information
           about converting from WWIV to VBBS.

.TOPIC:
Updating Hypertext Documentation

        Hypertext Documentation can be updated without updating
    the VDOC1.EXE and VDOC2.EXE files.  Please SAVE these EXE
    files to use with future updates.
        The following pertains ONLY to Document Committee Members
    and those interested in the Hypertext Format:

    Thank you, one and all!  Without your hard work on the
    document files, this program would not exist.  Future updates,
    if this proves to be something VBBS System Operators wish to
    continue to use, can still be done by each of you.  It requires
    only some simple basic knowlege and an edit that will cut and
    paste.

        GENERAL LAYOUT

        The topic areas are listed on the left hand margin as follows:
    <----  .TOPIC:
    <----  Updating Hypertext Documentation
        
        Topic area is proceeded with a period and the word TOPIC in
        all capitals, followed by a colon.  This goes on the left
        hand margin.  The above was indented to read as text.
        The FIRST line under the topic area is the topic name and
        this name MUST match the name between the triangles.
        See Updating Hypertext Documentation Cut and paste reduces
        the chances of type and spelling errors.  The Topic names
        must match EXACTLY.

        The THIRD line of text, is the FIRST line of the text the
        reader will see.

        SUB TOPICS
        Topics within a section, and not listed on the main menu
        are sub topics.  Look at the layout of Modems Help to 
        see large use of sub topics.  Sub Topics can ONLY be
        called from WITHIN the Main Topic area of which they are
        a sub topic OR from the SEARCH Menu.

        A sub topic can NOT jump to another subtopic area, however
        you can use a jump to a main topic area which lists the
        alternate sub topic.

        Example:  From within the Acknowlegements and Credits one
        can call the topic <VBBS Documentation Committee>.  Once
        inside that subtopic, even if the topic <U.S.R. Support>
        was listed in triangles, it would not jump to the Support
        Board listing for U.S.R. Support.  However, a jump can be
        made to the MAIN topic <Modem Help> where the person then
        sees the sub topic <U.S.R. Support>

        So, from within the documentation committee under the modem
        support person's information one might see the following:

        To see <U.S.R. Support> click on <Modem's Help>

NOTES:  Limitations:  

    Each Vdocx.txt is limited to 100 topic areas.  This allows
        for 300 topic areas without ever having to re-write the
        Vdocx.exe files.  

        Too long a text file may result in some computers getting the
        error, "out of memory."

        One must be care NOT to duplicate TOPIC areas.  IE, APPENDIX
        could be duplicated many times.  Either appendix should be
        a sub topic of appendix OR listed seperately to avoid this:
        ie -- LocalNET Appendix

.TOPIC:
Multitasking Help

VBBS may be multitasked in various ways.  Topics here include:

                      Windows Help
                      DesqView Help
                      LAN Help

.TOPIC:
Windows Help
                  RUNNING VBBS UNDER MICROSOFT WINDOWS

                Running VBBS under Microsoft Windows <tm> 3.0 or 3.1 can 
         sometimes seem to be an impossible dream, but with a little twea-
         king, it can not only be done, but done well enough to run two 
         high-speed remote nodes as well as a local login.

         Minimum Requirements
         --------------------
                For a single remote-plus-local system, you'll need a 
         386DX/25 (or higher) CPU and an absolute minimum of four megs of 
         RAM.  Performance improves dramatically with additional RAM (8
         megs is recommended) and higher CPU speeds. For a two remote-
         plus-local, your machine should be a 386/33 with eight megs of 
         RAM (again, a minimum baseline).


         Setting Up Your .PIF
         --------------------
                The most critical single element is your .PIF (Program 
         Information File).  The more carefully you design the .PIF, the
         better your system will run.  Below are suggested "starter" set-
         tings for yours:

         In Basic .PIF Setup


         Program Filename:       C:\VBBS\BBS.EXE
         Window Title:           VBBS Online
         Optional Parameters:    1  (BBS.EXE commandline parameters go 
                                    here)
         Start-up Directory:     C:\VBBS

         Video Memory:           Text
         Memory Requirements:    KB Required:   -1       KB Desired:   -1
         EMS Memory:             KB Required:    0       KB Desired:    0
         XMS Memory:             KB Required:    0       KB Desired:    0

         Display Usage:          Full Screen
         Execution:              Background (selected)
         Close Window on Exit:   Yes (selected)

         
         In Advanced Options
         -------------------
         
         1) Multitasking Options:
                Background Priority:    200 (400 for high-speed modems)
                Foreground Priority:    200 (350 for high-speed modems)
                Detect Idle Time:       Yes (selected)

         2) Memory Options:
                Lock Application Memory (selected)

         3) Display Options:
                (none)

         4) Other Options:
                (none)


         In Windows Control Panel -- 386 Enhanced
         ----------------------------------------

         1) Device Contention:     
                See discussion on COMports, below

         2) Scheduling:
                Windows in Foreground:   200
                Windows in Background:     1 (see Note 1)
                Exclusive in Foreground: OFF (unchecked)

                Note 1: This setting can be higher if you really need 
                        WinApp activity in the background.

         3) Minimum Timeslice:
                10-12 (for 25 MHz CPUs)
                8-10 (for 33 MHz CPUs)
                6-8 (for 40+ MHz CPUs)

         4) Virtual Memory:        
                This option controls Windows' "swap file" where it can 
                move inactive applications out of RAM and onto the hard 
                drive temporarily. It is imperative that you create a per-
                permanent Swap File of 2-6 meg to speed any swapping ac-
                tivity. 
                        
         --> IMPORTANT NOTE:  If you are creating a Permanent Swap File 
                              for the first time, be sure to optimize 
                              your selected partition BEFORE you create 
                              the Swap File!

                Select 32-Bit Access to maximize data transfer to and 
                from the hard drive.


         5) COMports:
                If you are running a 9600 baud or faster modem, be sure 
                to lock that port in Control Panel, Ports.  Windows 3.1 
                will allow locking up to 19200 baud; if you are running a
                FOSSIL driver (such as BNU or X00), you can safely lock 
                the FOSSIL at a higher rate without threatening your Win-
                dows environment.
                        
                Also, make sure you set Flow Control to "Hardware" for 
                high-speed modems.

         6) Conflicts:
                Often, computers ship with bizarre hardware configura-
                tions, some with COMports 1 and 4 occupied by a modem 
                and a mouse.  Make sure you do not introduce problems by
                introducing a second modem on an already-occupied port 
                address or IRQ.  Just because you have four COMports on 
                an ISA-bus computer doesn't mean you can use all 
                four without conflicts.  There are only two IRQs avail-
                able for them.

                In Control Panel, 386 Enhanced, select "Never Warn" for 
                your active COMport.  This will prevent Windows from 
                opening a "COMport Contention" dialog box when an online
                user selects a game that does its own COM writes (thus 
                locking the port until you intervene).

                Just make sure that you do not inadvertantly attempt to 
                seize the BBS COMport for your own use from another win-
                dow!


         In SYSTEM.INI
         -------------

                Under the heading [386Enh], add or modify the following 
         lines as necessary for your system:   

                COMxBuffer=1024  (where x is your modem port)
                COMBoostTime=8
                COMxFIFO=1  (where x is a port controlled by a
                             NS16550AFN buffered UART) 
                COMxAutoAssign=0  (where x is a "no conflict" COMport)


         Additional Hints
         ----------------

         .  The use of a FOSSIL driver for the BBS can many times resolve
            nagging problems with BBS-external programs, such as games.

         .  Since VBBS is DesqView-aware, consider using the small TSR,
            DV2WIN.EXE. This utility will make a DV-aware program yield 
            unneeded time slices more readily under Windows.  Also, in
            VCONFIG set MultiTasker Awareness to the Windows/OS2 setting.

         .  Replace your DSZ protocol driver with the newer GSZ, which is
            much better suited to sharing resources in a Windows environ-
            ment.  With a 14400 data transfer in background, DSZ effec-
            tively locks the local user's window; with GSZ, the transfer
            is barely noticeable.

         .  Make sure all .PIFs for DOS applications have a Background
            Priority of 1 and have the Exclusive Execution box deselected.

         .  If at all possible, put your mouse on COM1 and your modem on
            COM2. Avoid the COM1/4 or COM2/3 setups (and certainly do NOT
            use COM1/3 or 2/4 together on an ISA-bus machine).  Remember, 
            COM2 is serviced before COM1.

         .  Avoid running the BBS in a windowed display, especially if
            there are other windows open on the desktop.  Video conflicts 
            can wreak havoc with the BBS!

         .  Consider replacing Windows' COMM.DRV with one of several
            after-market COM drivers, such as TurboCom (Bio-Engineering 
            Research Labs, Berkeley, CA) or, for multi-port COM cards 
            (such as the VBBS-supported DigiBoard), W3COM9 (Cherry Hill 
            Software, Marlton, NJ).

         .  Never be afraid to experiment with .PIF and Control Panel
            settings.  Your results are dependent on your machine, setup 
            and use of the computer.

.TOPIC:
DesqView Help
                      RUNNING VBBS UNDER DESQVIEW 386

         Multinode Specific Concerns and Problems
         ----------------------------------------

         VBBS was written from the beginning to run multinode using
         multitasking software such as DesqView. As a rule, filesharing is
         not a problem, however, a message such as "System rescource in use
         by another.  One Moment Please..." may pop up from time to time.
         This is to done to coordinate writes from multiple nodes to a
         single database simultaneously, and should not be a common
         occurrence.  Without this feature, data would be lost if databases
         corrupted.  Make sure DOS's SHARE is run on systems that support
         it for proper operation of this feature.

         Start each copy of VBBS with a different channel number.

             Example:

            BBS 0     (start channel 0, local channel)
            BBS 1     (start channel 1, remote channel)
            BBS 2     (start channel 2, remote channel)
            .
            .
            BBS 64    (start channel 64, remote channel)

         DESQview 386  (Quarterdeck Office Systems)
         ------------------------------------------

         VBBS multitasks under DESQview with optional use of a fossil
         driver.  VBBS under DESQview can support multiple users.
         You will need at least 2 MB of RAM to run 2 or 3 copies of VBBS.

         You will need a PIF file for each copy of VBBS you intend to run.
         Each PIF will have a different channel # entered into the command
         line parameters field of the PIF file.

         To set DESQview settings manually (making your own PIF files),
         below are some example settings from a working system. For
         memory size, set this as large as possible with a minimum of
         520k.
 
                               Change a Program

         Program Name............: Virtual BBS Port 0

         Keys to Use on Open Menu: V0             Memory Size (in K): 520
         -----------------------------------------------------

         Program...: C:\VBBS\DV.BAT

         Parameters:

         Directory.: C:\VBBS
         -----------------------------------------------------
         Options:
                  Writes text directly to screen.......: [Y]
                  Displays graphics information........: [Y]
                  Virtualize text/graphics (Y,N,T).....: [Y]
                  Uses serial ports (Y,N,1,2)..........: [N]
                  Requires floppy diskette.............: [N]

         Press F1 for advanced options         Press   when you are DONE

                         Change a Program Advanced Options

         System Memory (in K).......:   0   
         Maximum Program Memory Size (in K)..:
         Script Buffer Size.......:     0   
         Maximum Expanded Memory Size (in K):
         Text Pages: 4  
         Graphics Pages: 2   
         Initial Mode:        
         Interrupts: 00 to FF
         ------------------------------------------------------
         Window Position:
         Maximum Height:  25       
         Starting Height:  25       
         Starting Row...:   1
         Maximum Width.:  80       
         Starting Width.:  80       
         Starting Column:   1
         ------------------------------------------------------
         Shared Program
         Pathname..:
         Data......:
         ------------------------------------------------------
         Close on exit (Y,N,blank)......: [N]  
         Uses its own colors..............: [Y]
         Allow Close Window command.....: [Y]  
         Runs in background (Y,N,blank)...: [Y]
         Uses math coprocessor..........: [Y]  
         Keyboard conflict (0-F)..........: [0]
         Share CPU when foreground......: [Y]  
         Share EGA when foreground/zoomed.: [Y]
         Can be swapped out (Y,N,blank).: [N]  
         Protection level (0-3)...........: [0]

         Press F1 for standard options         Press   when you are DONE

.TOPIC:
LAN Help
                    RUNNING VBBS ON A LOCAL AREA NETWORK (LAN)

         VBBS may easily setup on a local area network.  Help
         topics here include:
                                 General
                                 LAN Pointers
                                 LANtastic
                                 Novell Lite
                                 Novell Netware
.TOPIC:
General

         General
         -------

         With a LAN (Local Area Network), you don't need multitasking
         software.  However, use of a LAN does not preclude the use of
         multitasking software.

         When using a LAN, workstations (and the server, if non-dedicated)
         can be used to run one copy of VBBS each.  Each copy, of course,
         must run on its own unique channel number.

         One of the advantages of a LAN setup is that hardware-wise, the
         maximum COM port limitation disappears. Thus, there are versions
         of VBBS up to 64 users, intended for LAN installations. Versions
         supporting more than 64 users are available by special request.

         Another advantage is that you can run the many inexpensive games,
         doors, transfer protocols, etc. already available because no
         special COM handling is needed.

         Often, the cost of networking software and hardware is easily
         offset when one considers that most of the PCs on the network
         will not require a hard drive - only the file server, whose hard
         drive is shared with all of its clients.  Additionally, data
         security becomes easier, because now all PC's can share one com-
         mon database, and one can be managed easier (backed up, etc.)
         than several.

         Businesses considering VBBS may consider a LAN as well, as VBBS
         and many other applications can co-reside on the server, running
         simultaneously.  Users only have access to that which the net-
         work administration allows them access to, so confidential book-
         keeping or word-processing files are invisible to say, VBBS
         users, engineering sorts or whomever is not supposed to have
         access.  LANs combined with multitasking software make VBBS a
         valuable and cost-efficient business tool for customer support
         as well as any other day-to-day business computing needs.

         Multiuser Bulletin Board Systems run on LAN set-ups offer the
         highest performance available; this is very important when many
         high-speed modem lines are to be used.

         With the cost of 286/386 motherboards and LAN hardware dropping
         constantly, a multi-user LAN-based VBBS is more affordable than
         one might think.

         VBBS has been tested and known to be compatible with:

         Novell Netware / Ethernet
         Novell Lite / Ethernet
         LANtastic NOS  / 2 MB
         LANtastic NOS  / Ethernet

         This is not an exhaustive list.  VBBS should be compatible with
         most any DOS LAN environment.

.TOPIC:
LAN Pointers
         LAN Pointers
         ------------

         All LANs are not created equal.  This discussion is intended to
         provide an overview of more common LAN options to help the VBBS
         sysop gain a basic understanding of LANs.  There are two basic
         types of LANs, with many different LAN software vendors and
         several types of network cards used for each type.

         The first type of LAN, called "peer-to-peer" networking, allows
         one PC to share resources (hard drives, floppies, printers, etc.)
         with another PC and vice versa.  The second type employs a "dedi-
         cated file server" and all PC's access network programs and data-
         bases from the LAN's dedicated fileserver(s).  Both of these sys-
         tems have their strong and weak points, and sometimes features
         can be intermixed.

         Both LAN types can use ARCnet (2.25 MBPS data transfer rates),
         Ethernet (10 MBPS), Super ARCnet (12.5 MBPS) or Token Ring (4 or
         16 MBPS).  Currently, Ethernet is regarded as providing the most
         bang for the buck, with its 10 MBPS throughput and the price of
         Ethernet cards falling below $100.00 each in the mail order
         market.  With most types of networking, one LAN card per PC would
         be required.  It is not recommended to use networks employing the
         use of the PC's parallel or serial ports, as those types of LANs
         are too slow to provide a fast enough interface for a VBBS user.
         Use the fastest LAN cards you can afford.

         VBBS was designed and tested on a LANtastic 2 MB/sec LAN.
         It does very well on this relatively slow hardware platform;
         speed is excellent, given the limitations of the hardware.
         However, faster LANs (ie..10 MB/sec) run noticeably faster.
         (Note: The disk I/O optimizations made in VBBS will result
         in speed increases over all platforms, LAN, or non-LAN. Even
         XTs should run considerably faster.)

         All path specifications under VCONFIG "System Paths" must be
         set to a drive which is shared among the entire network.  This is
         easily accomplished with most networks.  With Novell Lite, for
         example, clients only need to load CLIENT.EXE after loading the
         network drivers, then map the net drive.  The server, however,
         must load BOTH SERVER.EXE and CLIENT.EXE, and map the net drive
         the SAME WAY the clients do.  This may result in replicating the
         "C" drive as logical drive "F" or whatever.  Though in reality
         the "F" drive is really just another label for the "C" drive,
         this will be necessary for proper network operation.  All VBBS
         nodes must look to the same path.

         If necessary, FLAG all VBBS files as SHARABLE, READ/WRITE.

         Synchronize all of the clocks on your work stations.
         (Most networks let you set your workstation clock from the net-
         work server's clock; this is done automatically with Novell Net-
         ware).

.TOPIC:
LANtastic
         LANtastic  (Artisoft)
         ---------------------

         LANtastic was designed to be a peer-to-peer type network, but a
         dedicated fileserver can be set as well.  LANtastic is among the
         most stable of peer-to-peer type Network Operating Systems, but
         its performance as a dedicated file server falls below that of
         dedicated Netware.  Net cards for LANtastic are proprietary, making
         them more expensive.  Novell NE-1000 and NE-2000 compatible
         Ethernet cards may also be used, but adaptors must be used in
         conjunction with these cards to make them work with LANtastic.


         Costs for a two-node Ethernet LANtastic setup for software, 
         cabling and netcards run between $400.00 to $450.00 for
         proprietary cards, and about $100 less for generic cards. More
         workstations are added by purchasing additional netcards for each
         new workstation at about $175 each.  The practical limit of this
         type of network would be about 10 nodes, though the software will
         allow many more.

         These prices reflect current market prices only, and may vary with
         different vendors and market conditions.

.TOPIC:
Novell Lite
         Novell Lite  (Novell)
         ---------------------

         At this writing, Novell Lite is at revision 1.1.  It is a peer-
         to-peer networking system not as stable as LANtastic, but is in
         use with Multinode VBBS successfully.  Novell Lite can also be
         used to set up a dedicated file server.  One advantage of Novell
         Lite is that it can use many of the generic low-cost netcards
         available on the market today without any special adaptors.

         Costs for a two-node Ethernet Novell Lite setup for software, 
         cabling and netcards run between $300.00 to $475.00.  Additional
         nodes are added by purchasing a copy of Novell Lite and a net-
         card for each workstation to be added, up to 25, but the prac-
         tical limit would be about ten nodes.  Again, these prices re-
         flect current market prices only, and may vary with different
         vendors and market conditions.

.TOPIC:
Novell Netware

         Novell Netware 2.2 and 3.1x  (Novell)
         -------------------------------------

     Novell Netware has captured the lion's share of the LAN market,
         for good reason.  Novell is revered as the best network opera-
         ting system available, period.  Out of the box, Netware 3.11 can 
         not only interface DOS machines, but PC's using Windows, OS/2, 
         and Macintosh machines.  PCs and workstations running UNIX and 
         main and mini-mainframes can also be interfaced to Netware 3.11 
         with the purchase of additional software modules through Novell.

     Both 3.1x and 2.2 DEDICATED Netware load DOS initially, then load
     their own operating system, then totally remove DOS from the ser-
         ver's NOS environment.  Netware utilizes its own file system, 
         making its own hard drive partitions, which support extended at-
         tributes, increased security over DOS based NOSes and much im-
         proved disk performance.  Additionally, Netware partitions are 
         not prone to disk fragmenting and data corruption to the extent 
         that DOS NOSes are.
         
         Although 2.2 will not allow true "peer-to-peer" style networking,
         it will allow the file server to log onto the network as a work-
         station, though this will decrease performance of the server 
         significantly as it runs DOS tasks as well as its tasks as file
         server.  Netware is seldom used in this manner; in fact, Netware
         3.x does not allow the server to be used as anything other than 
         a dedicated server.
         
         However, Artisoft LANtastic for Netware and Novell Lite can both 
         be used in conjunction with dedicated Netware to incorporate the 
         best of both worlds -- the rock-solid performance and security 
         of dedicated Netware along with the utility of peer-to-peer net-
         working.

     Netware 2.2 and 3.11 will serve those interested in dedicated
         Netware for DOS, Windows and OS/2 PC's equally.  2.2 will run on 
         a 286, 3.11 requires a 386SX.  Because its own operating system 
         is optimized for file serving and its disk management is far 
         superior to DOS, it provides superior connectivity.  Novell's 
         Netware is the system of choice for those planning large LANs.  
         For those who can go a few extra bucks, it is still a great 
         choice for small LANs.

     The price for Netware 2.2 starts around $500.00 for a 5-user
         version, with Ethernet cards available for under $100.00 each.  
         One card is necessary for each node and one for the fileserver.  
         Again, these prices reflect current market prices only, and may 
         vary with different vendors and market conditions.

.TOPIC:
VAREA
VBBS Area Subscriber
====================

Introduction
============

This utility simplifies the process of subscribing to and
hosting networked message areas in VNET-type networks.

It works on the principle that all a SysOp would want to do
to subscribe to an existing message area is to browse through
the SUBSLIST, and select the ones to which you want.

Similarly, if a SysOp wants to create a new message area for
the network, all that should be needed is to give the message
area a Title and select the type, Secured or AutoSubscription.

VAREA should do the rest. And it does.


Installation
============

Place the VAREA program in your main VBBS directory, and
ensure you have a copy of the SUBSLIST.NET in your VBBS
network directory. The SUBSLIST.NET must be in the "new"
format, in other words the lines look like this:

   Area #    Host # Nodes Flow Topic
   ------    ------ ----- ---- -----------
    10440       440    43   55 Harpoon Forum


Daily Maintenance
=================

VAREA should be run once a day as an event, using the following
command line:

    VAREA NETWORKID=# /AUTO /VERIFY /DELETE

For message areas you host, this will:

o   Process subscription requests and unsubscription requests
    for any AutoSubscription message areas

o   Remove any "unknown" nodes from the subscription lists of
    any Secured or AutoSubscription message areas

o   Check if you are still the host of the message area, and
    if not, make a backup copy of the subscription list with
    a .OLD file extension, then convert the message area
    to one to which you subscribe

o   Delete incoming subscription requests to AutoSubscription
    once they have been processed

For message areas to which you subscribe, this will:

o   Check if any of the message areas have changed host, and
    if so send a subscription request to the new host

o   Check if any of the message areas have been deleted from
    the SUBSLIST, and if so cancel your subscription to it.
    VAREA does not delete the "local" message area, in case
    it is popular with your callers, in which case you might
    consider becoming the new host

Finally, if you are the SUBSLIST Co-ordinator for the network,
This will:

o   Check if any message areas have a host that has left the
    network, and if so delete the entry in the SUBSLIST

o   Process any requests to create new message areas, issue
    them with area numbers, and add them to the New Areas
    section at the end of the SUBSLIST

Since all VAREA's communication through the network is EMAIL,
you will see messages in your mailbox from VAREA. The ones that
it has processed will have the word "Done" in the message title.
The only EMAILs that VAREA will not process automatically are
subscription requests for Secured message areas.


Browsing The SUBSLIST
=====================

If you want to browse the SUBSLIST, use the following command
line:

    VAREA NETWORKID=#

This will present you with a screen that looks like this:

    Type     Description                     NodesFlowTopic           
  AutoReq    ANSI Artwork                             Art             
  AutoSub    ANSI Elite                         15    Art             
  Secured    Art: Throughout History             2    Art             
  AutoSubHostNAPLPS Graphics Forum               9    Art             
  Secured    American BBS Association Forum     34    Bulletin Boards 
  AutoReq    BBS Success                              Bulletin Boards 
  AutoReq    Business of BBSing                       Bulletin Boards 
->Secured    Computer Underground Digest         4    Bulletin Boards <-
  Secured NewInfoNET1 Q&A                        0    Bulletin Boards 
  AutoSub    Internet Discussion                60    Bulletin Boards 
  AutoSub    National SysOp's Flame Base        15    Bulletin Boards 
  AutoReq    On-Line Services                         Bulletin Boards 
  AutoSub    WWIV-Support                       85    Bulletin Boards 
             {Spacebar subscribes/drops}     {C creates new}   {Q Quits}

There are currently 3 types of message area in VNET-type networks:

o   AutoRequest (AutoReq) can be subscribed to by anyone in the
    network. Messages spread very quickly through the network
    because they do not have to go via the message area's host

o   Secured (Secured) can only be subscribed to at the discretion
    of the host. Messages spread more slowly through the network
    because they have to go via the message area's host

o   AutoSubscription (AutoSub) can be subscribed to by anyone
    in the network. Messages spread slowly like Secured areas
    because they have to go via the message area's host

Message areas are grouped into topics, so you can browse all
the available areas on a particular theme in the space of a few
screens.

New message areas are identified with a "New" next to the
description of the area, as demonstrated on the InfoNET1 Q&A
area above.

Message areas which you host are identified with a "Host" next
to the description of the area, as demonstrated on the NAPLPS
Graphics Forum area above.

Message areas to which you subscribe have the Description
highlighted, that is shown as black on white instead of the
normal white on black.

The Nodes column shows the number of BBS that subscribe to
the area, and the Flow column shows the average number of
messages a day that the area gets.

The -> and <- at the edges of the screen point to the message
area that you are currently examining.

You may browse up and down the SUBSLIST using the arrow keys
and the page up and page down keys.

When you have finished browsing the SUBSLIST, the Q key will
quit VAREA and will implement any actions you have taken.


Subscribing to Message Areas
============================

You can subscribe to the message area that the -> <- is
pointing at by hitting the SPACEBAR.

You can also cancel your subscription to a message area
that is highlighed by hitting the SPACEBAR.

When VAREA finishes, you will be asked to supply the following
information for each message area that you have just subscribed
to:

    Database Group
    Maximum messages
    Read Security Level
    Write Security Level
    Minimum Age
    Access Flag
    Tagline File Number
    Handle/Real Name/Anonymous
    Random Title File Number
    QWK Conference Number
    Co-SysOp/Moderator User Number
    Net Validate

This information is used to set up an entry in VCONFIG,
Database Configuration, Message Areas for each newly
subscribed message area.

After VAREA has completed, you must always run VCONFIG,
Database Configuration, Compile Network Information.

If the message area is AutoRequest, that is all that is
needed to start receiving messages.

If the message area is AutoSubscription, an EMAIL will be
sent to the host of the message area. On receipt of this
EMAIL his copy of VAREA will add you to the subscription
list and you will start to receive messages. If you check
your ONELINERs you will see when the host SysOp has received
the request.

If the message area is Secured, an EMAIL will be sent to
he host of the message area. On receipt of this EMAIL it is
up to the SysOp to decide if and when he will manually add
you to the subscription list. If you check your ONELINERs
you will see when the host SysOp has received the request.


Hosting Message Areas
=====================

If you want to add a new message area to the SUBSLIST, you
must first decide on the Topic that the message area is to be
listed in, the message area type (Secured or AutoSubscription)
and the Description, which is limited to 32 characters.

Ensure that the -> <- is pointing to a message area in the same
Topic as you want your new message area to be listed in, then
hit the C key. You will then be asked to provide:

    Type (Secured/AutoSubscription)
    Title (32 characters maximum)

VAREA will then automatically send a message to the SUBSLIST
Co-ordinator asking for the new message area to be created,
issued with an area number, and most importantly listed in
the SUBSLIST.

The SUBSLIST is sent out each Sunday. When the new SUBSLIST
arrives with your new message area listed in it, VAREA will
detect this and ask you to provide all the following
Information:

    Database Group
    Maximum messages
    Read Security Level
    Write Security Level
    Minimum Age
    Access Flag
    Tagline File Number
    Handle/Real Name/Anonymous
    Random Title File Number
    QWK Conference Number
    Co-SysOp/Moderator User Number
    Net Validate

This information is used to set up an entry in VCONFIG,
Database Configuration, Message Areas for each new
message area that is hosted by you and listed in the
SUBSLIST.

After VAREA has completed, you must always run VCONFIG,
Database Configuration, Compile Network Information.

Once your new message area is listed in the SUBSLIST,
you will start to receive subscription requests for it
in your EMAIL.

If it is an AutoSubscription message area, then VAREA will
process these requests for you automatically in the daily
event. The word "Done" will be inserted in the EMAIL title.
These can be deleted once you have read them.

Alternatively, VAREA can delete these automatically for you
if you include /DELETE on the command line when you run it:

    VAREA NETWORKID=1 /AUTO /VERIFY /DELETE

If it is a Secured message area, VAREA will NOT automatically
process these requests. You will have to manually add or
delete the node numbers from the V######.NET file that VAREA
will have already created for you in the VBBS\NET directory.
The ###### is the area number shown in the SUBSLIST for the
message area.


Changing Node Number
====================

When you change node number, VAREA has a way of renewing your
susbcription to all the message areas to which you subscribe.
Just run:

    VAREA NETWORKID=# /AUTO /RESUBSCRIBE

And a subscription request will be sent to the host of every
message area to which you are currently subscribed.


Using VAREA On Other VNET-Type Networks
=======================================

VAREA will work perfectly on ANY VNET-type network so long
as the following two conditions are met:

o   The SUBSLIST Co-ordinator is shown in the BBSLIST by
    placing an SC where the NC/RC/AC is normally placed

o   The SUBSLIST is formatted in the same way as the
    VirtualNET Subslist, with the Unknown Hosts and
    New Areas topics as the last two listed


Database Naming Conventions
===========================

VAREA introduces a new naming convention for the filename of
databases that it sets up automatically. The format is:

    iinnnnnn

where:

    ii     is the id of the network
           (that is 01 for VirtualNET etc etc)
    nnnnnn is the area number
           (that is 000001 for area number 1)

VAREA is able to rename your existing databases to this new
naming convention. Run this:

    VAREA NETWORKID=# /RENAME /AUTO

After VAREA has completed, you must always run VCONFIG,
Database Configuration, Compile Network Information.

.TOPIC:
Extended Connects

                         EXTENDED CONNECTS

One of the unique features of VirtualNET is the ability to set up
extended network connections.  Extended connects work complementary
to your regular VirtualNET server.  By connecting to one of your
extended network connections, you will be able to receive non-secured
subs and send/receive email.

For this to function properly both your extended connect server and
you must set up the Extended Connect entry in VConfig for the other
party. In addition, you both must create an EXTEND.0 file to be placed
in your NET subdirectory.  This is simply an ascii text file with the
following information:

<extended connect server node #> <extended connect client node #>
<extended connect client number> <extended connect server node #>

This would set each party up as an Extended Connect of the other.

For example, for node @1210011 to set up @6160 as an extended server,
his EXTEND.0 file would appear as follows:

12100011 6160
6160 12100011

In addition, both nodes would set up each other in their VirtualNET
networks configuration as Extended Connects in VConfig.

Having Extended Connects allows for virtually unlimited flexibility,
and guarantees that you will not be without network connections
should your regular server go down unexpectedly.

.TOPIC:
File Requesting

                  VBBS FILE REQUESTING - FREQing

The ability to directly request files through DIRECTmail is a
new and welcome feature in VBBS.  File requesting, or FREQing,
works in conjunction with the DIRECTmail function and allows
for unlimited flexibility in accessing files across VirtualNEt
and VNET-type networks.

For your bbs to be set up properly to receive file requests,
your DIRECTmail setting in VConfig must be turned ON, and the
file directories you allow access to must be flagged as
FREQable in your file database entries.

To request a file, you must first know the correct and complete
filename to ask for.  Then, using the DIRECTmail function in
VBBS, enter the filename when prompted.

.TOPIC:
Virtual Newsletter

                    VIRTUAL NEWSLETTER (V-NEWS)

     The Virtual Newsletter, V-News, is a monthly publication
     sent out electronically to all VirtualNET sysops.

     V-News provides insights into better BBSing, VBBS tips
     and techniques, timely information regarding VBBS
     development, and news about VirtualNET itself.

     Those interested in submitting material for publication,
     or who wish to join the editorial staff, should contact
     the editor, John Grimes 1@1214000 VirtualNET, for more
     information.

.TOPIC:
VQWK
                       VIRTUAL QWK OFFLINE MAIL UTILITY

         GENERAL OVERVIEW
         

               This section explains the installation procedures for the
         VBBS QWK offline mail utility.  This utility allows users to
         download messages, bulletins, and file listings from the BBS and
         then upload their responses, all without having to tie up the BBS
         any longer than it takes to do the file transfers.  VQWK is nearly
         100% compliant with the QWK format as set down by Mark Herring in
         1987.

         INSTALLATION PROCEDURES
         

          1>  Run VCONFIG and select '1. Main Configuration' and switch to
              page 2.  Select 'I. QWK Message Limit:' and enter a number to
              represent the maximum number of messages to be downloadable in
              one QWK packet.

          2>  Select the function block you wish to have the users access the
              mail utility and add the following line:

                                 Q 001 4 VQWK %1

              Change the key and security level required as needed.

          3>  Edit the VQWK.CFG file located in the main VBBS directory with
              the following configuration information:

                Line  1>  The location of your BBS
                Line  2>  The BBS phone number
                Line  3>  A short BBS tagline (used by some OLMRs)
                Line  4>  List of archive utilities supported:
                            A = ARJ version 2.30+    P = PAK version 2.51+
                            C = PKPak version 3.61+  Z = PKZip version 1.10+
                            L = LHarc version 2.13+

              Lines 5-9>  Maximum # of messages per packet based on caller
                          speed.  These 5 lines must contain a number even
                          if you do not support the speed.

                          Line  5>  300 baud     Line  8>  9600 baud
                          Line  6>  1200 baud    Line  9>  14.4k+ baud and
                          Line  7>  2400 baud              local callers

                Line 10>  Drive devices allowed for new file scans:
                            0 = No file scans allowed
                            1 = Hard drive databases only
                            2 = Hard drive and CD-ROM databases
                Line 11+> Bulletins to be included in the QWK packet.  Each
                          line containing a bulletin should include a title
                          and a full path and filename to the actual file to


                          be included in the archive.  The title should be
                          either in the form 'BLT-x.y' where 'x' and 'y' are
                          replaced by numbers or one of three standard file
                          types:

                                HELLO    = Login screen
                                GOODBYE  = Logoff screen
                                NEWS     = System news

                          There is no limit to the number of bulletins that
                          can be included in a QWK packet.

              Any line in your configuration file after 'Line 3>' that begins
              with an '!' is treated as a comment line and is ignored by VQWK.
              The first 10 lines are required and must contain an acceptable
              value.

          4>  If you wish to restrict email access to a particular network or
              piece of a network then edit the QWKNET.CFG file located in the
              main VBBS directory.  Each restriction needs to be on a line by
              itself listed as "NOEMAILNET=<net #>[,<allowed routing>].  The
              <net #> is the network slot number that the restriction will be
              for.  The [,<allowed routing>] is optional and can contain a
              specific network routing that you would like to allow email in,
              yet restrict all other email to the network.  Some examples are
              shown here:

                NOEMAILNET=15         (Restrict all e-mail from network 15)
                NOEMAILNET=4,1:3816   (Restrict e-mail from FIDOnet except
                                       when addressed to any BBS in 1:3816)

              There are no limits to the number of restrictions that can be
              placed on email.  Multiple restrictions to one network are
              allowed, but you need to take care in the order they are placed
              in.  As soon as VQWK finds a restriction line that will allow
              the message into the network in question it will stop searching
              the list.

          5>  Reload VCONFIG and set up those databases that you wish to be
              QWKable by entering a number between 2 and 255 into the field
              'QWK Conference:' under the specific database information.  Do
              not enter numbers into file databases as they are not needed
              for VQWK to access them.

         VQWK CONTROL PANEL
         

               The control panel supplies the user with access to the QWK
         functions supported by your BBS and will alter to show only those
         functions that the user can access.


              Here is what the VQWK control panel looks like:

                --------------------------------------------
                    (D)ownload new message packet (QWK).
                    (U)pload reply message packet (REP).

                    (A)lter maximum # of messages/packet.
                    (C)hange default compression type.
                    (P)ick # of days for new file scan.
                    (S)elect message bases for QWKing.

                    Show (W)ho's currently online.
                    (R)eturn to the BBS (exiting VQWK).
                    (G)oodbye / Log Off from the BBS.
                --------------------------------------------

                 (D) and (U) are used for exchanging messages with the user.

                 (A) lets the user set the limit on the number of messages
              to be downloaded in a packet.  This defaults to the limit you
              have set in the VQWK.CFG file but some users may need to set
              a lower limit, especially those using a floppy drive-only
              machine.

                 (C) allows the user to alter their default compression type
              if there are any options available.  If your BBS only uses one
              compression type then this option will not appear.

                 (P) lets the user set the number of days back that the BBS
              should use when doing a new file scan for QWK use.  If you do
              not allow file scanning by setting line 10 in the VQWK.CFG
              file to 0 then this option will not appear.  By default this
              value is set to 0 for all users, thus they need to change it
              if they wish to get a file listing.  The maximum value for
              this option is 730 days (2 years).

                 (S) is used to select which message bases that the user
              wishes to have placed in the QWK packet.  This option uses the
              same data files as the function block command 'SETQUICKSCAN'
              so the user will see the same message bases on or offline.
              The only exception to this is databases that do not have QWK
              numbers, these will not appear under the (S) option.

                 (W) is identical to the standard who's online command used
              within function blocks.

                 (R) sends the user back to the BBS while (G) logs the user
              off completely.  The (G) option does not appear when a user is
              logged in locally, only when they are online remotely.




         OLMR INFORMATION
         

               Offline Mail Readers (OLMR's) are used to access the file
         that the user downloads from a BBS.  Every OLMR has its own set of
         instructions to explain how the user can access the packet, so it
         is up to the user to read those instructions before downloading
         from a BBS.  The one thing that should be noted is the way that
         VQWK can handle the addressing of messages uploaded with an OLMR.
         Many networks in use today have very long addressing schemes and
         so it is very difficult to send mail thru a QWK door since the
         standard allows for only 25 characters in the TO: field.  In order
         to circumvent this limitation VQWK allows the users to insert the
         word 'VBBS' in the TO: field in the OLMR and then insert the real
         address as the first line of the message.  The first line needs to
         be in the format:

          TO: [Handle/Name]<#User Number>{@Network Address}(*Network Number)

              [Handle/Name] = The recipients handle or name on the BBS, this
                              is an optional field, unless the second field
                              is not used.
             <#User Number> = The recipients account #, this is an optional
                              field if the first field is used.
         {@Network Address} = This is the network BBS address that the email
                              recipient is located at.  If it is left blank
                              then VQWK assumes it is a local user.
          (*Network Number) = The slot number for the target network.  This
                              field is ignored unless there is an address
                              listed in the third field and then it must be
                              supplied or the email will not be sent.

               When an email cannot be sent because the address has not been
         written correctly it will be sent to the sysop account with the
         original address inserted as the first line of the message.  This
         will allow you to send the message back to the user or forward it
         to the correct recipient by correcting the address.  When a user
         tries to send an email to a network address that has been placed
         into the QWKNET.CFG file it will be sent back to the sender with a
         note stating that email to that address is not allowed.


.TOPIC:
AT&T Dataport 14.4
        AT&T Dataport 14.4

        ATE0Q0V1X4&C1&D2S7=60S11=50S13=50S0=0

.TOPIC:
Dallas Fax 14.4
        Dallas Fax 14.4K Nova Plus w/AT&T chipset

        AT&F &C1 &D2 &S1 \J0 "O125 T E0 S11=50 S7=60 S95=3 S2=251

.TOPIC:
Intel 14.4EX

        INTEL 14.4EX

        AT&FE0S2=251S7=50M0

.TOPIC:
Patriot
        Patriot 96i5 v.32/v.42 MNP5 9600

        ATE0M0X4&D2\N7Q2\V2%A32%C3S2=251S7=30

.TOPIC:
PPI
        Practical PM9600SA

        AT&F&C1&D2V1Q0E0W2&Q9S2=251M0TS110=1S95=2
        ---------------------------------------------------------
        PP14400FXSA

        AT&FM0&C1&D3E0W2&Q9S10=20S2=251S7=100

.TOPIC:
Viva 14.4
        ViVA 14.4i/Fax Modem
        AT&F&C1&D2&Q9W2S95=3S2=255S7=50E0M0X4V1
        ---------------------------------------------------------

.TOPIC:
USR Sportster 14.4

Here is an NVRam for the USR Sportster 14.4 External w Fax :
ati4
USRobotics Sportster 14400 Fax Settings...
 
   B0  E1  F1  M1  Q0  V1  X4
   BAUD=19200  PARITY=N  WORDLEN=8
   DIAL=HUNT   OFF HOOK
 
   &A3  &B1  &G0  &H1  &I0  &K1  &M4
   &N7  &P0  &R2  &S0  &T5  &Y1
 
   S00=000  S01=000  S02=043  S03=013  S04=010  S05=008
   S06=002  S07=120  S08=002  S09=006  S10=150  S11=070
   S12=050  S13=000  S14=000  S15=000  S16=000  S17=000
   S18=000  S19=000  S20=000  S21=010  S22=017  S23=019
   S24=000  S25=025  S26=000  S27=000  S28=008  S29=020
   S30=000  S31=000  S32=000  S33=000  S34=006  S35=000
   S36=000  S37=000  S38=000  S39=000  S40=000  S41=000
   S42=000  S43=000  S44=015
 
OK

The INIT String:
ATS0=1

