Dec 252017
PcBoard Documentation.
File PCBDOC2.ZIP from The Programmer’s Corner in
Category BBS Files
PcBoard Documentation.
File Name File Size Zip Size Zip Type
PCBOARD.DOC 440082 120596 deflated

Download File PCBDOC2.ZIP Here

Contents of the PCBOARD.DOC file

* *
* PCBoard (R) - Version 12.1 *
* *
* *
* Clark Development Company, Inc. *
* P.O. Box 71365 *
* Murray, Utah 84107 *
* *
* (800) 356-1686 Orders Only! *
* (801) 261-1686 Voice *
* *
* (801) 261-8974 Data (HST) *
* (801) 261-8975 Data (HST) *
* (801) 261-8976 Data (HST) *
* (801) 261-8977 Data (HST) *
* (801) 261-8979 Data (Hayes) *
* *
* (C) Copyright 1985, 1986, 1987 *
* All Rights Reserved *
* December 11, 1987 *
* *


Description Page
---------------------------- ----
License to Use Agreement
Introduction 1
Hardware Required 2
Quick Install 3
Modem Switch Settings 7
Environment Switches 9
General Instructions 11
Installing PCBoard 13
Configuring PCBoard 15
Sysop Data 17
File Name Data 18
File Location Data 23
Modem Data 26
Failure to Establish Carrier 29
Modem Reset Errors 30
User Levels 31
Miscellaneous 32
Text Data 39
Switches and Stuff 41
Configuring Conferences 45
Establishing File Security 51
Download Files 51
Upload Files 52
Establishing User Time Allotments 54
Script Questionnaire Files 56
News Files 59
Security Files 60
Call Waiting Menu Operation 61
Special Keyboard Functions 63
Program Menu Selections 68
Sysop Program Commands 69
User Program Commands 76
Program Commands - Quick Summary 113
Networking Information 119
Network Node CHAT 125
DOORS Operation 131
Adding Additional Protocols 136
Subscription Operations 140
Multilingual Operations 142
Interfacing DOOR Programs 146
High Speed Modem Operation 150
Questions & Answers 160
File Formats Used 168
Distribution 174
Support 175

License to Use Agreement

Clark Development Company, Inc. (herein referred to as CDC), grants to the
Purchaser and Purchaser accepts a nontransferable and nonexclusive license to
use, on a single computer, the Software Products and accompanying materials
provided to Purchaser by CDC. Purchaser is hereby licensed only to read the
program from its medium into the memory of a single computer solely for the
purpose of executing the program. Purchasers of the Network version of the
software may read the program into the memory of the maximum number of
machines equal to the number of Nodes purchased at a SINGLE site only in
which all of the machines are physically connected together in a Network
environment. CDC shall have the right to terminate this license if purchaser
violates any of its provisions. Purchaser agrees that the Software Products
and accompanying materials are the property of CDC and that CDC shall
maintain title to and ownership of the Software Products at all times.
Purchaser agrees to make no more than one (1) additional working copy and one
(1) archival copy of the Software Products for their personal use only.
Except as indicated above, the Software Products may not, in whole or part,
be copied, reproduced, translated, or distributed to other parties.

All CDC Software Products and accompanying materials are sold with an
unconditional 30 day money back guarantee. If for any reason you are not
completely satisfied with the Software Products, return the original disk(s)
to CDC within 30 days of purchase for a full refund less $15.00 S&H charges.
CDC warrants that all disks provided constitute an accurate duplication of
the Software Products and CDC will replace any disks found to be defective
within 30 days from date of purchase. CDC will not honor this warranty where
a Software Product disk has been subjected to physical abuse, or used in
defective or non-compatible equipment. CDC makes no warranties of any kind,
expressed or implied, with respect to the quality, performance, accuracy, or
fitness of the Software Products for any particular purpose. CDC assumes no
responsibility for any decisions made or actions taken on the part of the
Purchaser because of the use of the Software Products. In no event shall
CDC, or any of its representatives, be liable for any loss of profit or any
other damages, including but not limited to special, incidental,
consequential or other damages, arising out of the use or inability to use
this product - even if CDC or an authorized agent of such has been advised of
the possibility of such damages - or for any claim by any other party.

CDC reserves the right to make changes, enhancements and improvements to the
Software Products at any time and without notice. Purchaser whose signature
appears below agrees to the terms of the above License. However, even if you
fail to return this agreement, use of the Software Products for any period of
time constitutes your assumed acceptance of this agreement and subjects you
to its contents.

Accepted by: _______________________________________ Date: ________________

Product: ________________________________ Serial Number: __________________

Return within 30 days to Clark Development Co, Inc., P.O. Box 71365, Murray,
UT 84107 to insure support of your purchase.



PCBoard (R)

Premium Host Communications Software
for the Professional

(C) Copyright 1985, 1986, 1987
Clark Development Company, Inc.
P.O. Box 71365, Murray, UT 84107

(800) 356-1686 Orders ONLY!
(801) 261-1686 Voice
(801) 261-8974 Data (HST)
(801) 261-8975 Data (HST)
(801) 261-8976 Data (HST)
(801) 261-8977 Data (HST)
(801) 261-8979 Data (Hayes)

PCBoard is the end result of a dedicated group of sysops who felt there was a
need for a premium remote bulletin board software program for the IBM (R)
PC/XT/AT family of computers. Due to their efforts, PCBoard has become the
standard in BBS Software - setting the trend with new innovations in host PC
communications. Special thanks to Vern Buerg and his donation of the .ASM
ARC file routines to the public domain for use in programs such as PCBoard.
Through his generosity, callers to a PCBoard system can review the contents
of any .ARC file without having to leave the program. Our thanks to Vern for
his time and efforts in sharing his routines with us and others.

If you are considering running this code, please look over the accompanying
documentation carefully before trying to set up a system using PCBoard
software - it may not meet your needs.

The philosophy behind PCBoard was quick running code, user friendliness,
minimum time to get into system, increased protocol support, single user
menu, and additional Sysop support. In order to maintain the highest degree
of user compatibility with other BBS programs currently in use, many similar
ideas were written into PCBoard. For example, PCBoard allows the caller to
use either a space or a semi-colon as their command delineator so that users
familiar with either other BBS software will feel more comfortable using the
stacked commands available inside PCBoard. However, PCBoard can not be all
things to all people. We have tried to include the most requested items and
have left out other functions which simply added un-needed overhead to the
code or proved to be unreliable.



In order to run PCBoard software, you will need the following:

1. An IBM PC/XT/AT or 100% compatible clone with a minimum of 320K of
memory running under DOS 3.0 or above (all versions). 217K is needed
for actual program operation. However, 320K of machine memory is
needed for loading of COMMAND.COM, etc.

2. A hard disk of sufficient size to support the large number of program
and user downloadable files. (20 Meg minimum recommended with at
least 5 meg available for PCBoard operation).

3. A "smart" modem capable of sending verbose results to the software to
indicate the speed at which a caller logs on. (i.e. The modem must
be able to respond with CONNECT, CONNECT 1200, and CONNECT 2400). If
your modem will not send the above result codes to the software at
the time a user logs on, the program will not function! Please note
that a US Robotics Password will NOT work with PCBoard code due to
its failure to properly support all DTR functions. Additionally,
many of the newer "less expensive" modems on the market which claim
to be Hayes compatible may not be suitable for PCBoard operation.
Due to their lack of command or "S" register support, and sometimes
unreliable operation in an unattended "answer" mode, they fail to
properly support a PCBoard operation.

4. The file ANSI.SYS loaded on your machine from the CONFIG.SYS file at
the time of initial boot-up. If you do not have the program
ANSI.SYS, you can not operate the code in "graphics" mode. The code
can be run without the ANSI driver loaded - however, the software
will not support color graphics under that configuration.

5. A CGA monitor is recommended. However, the code will function well
with either a monochrome (TTL), composite, or EGA monitor.

6. PCBoard can also be run under a Packet Switch environment (PAD) with
the use of "dumb" modems - using standard RS-232C signals - including
true Carrier Detect and DTR to control the software. Please refere
to the "Environment Switches" section of this documentation for
additional information on running a configuration under a PAD

7. "How many Nodes can I run and what hardware is needed?" For an
answer to this question and others, see the "Questions and Answers"
section near the end of this manual!



***** C A U T I O N *****

NEVER run PCBoard by simply typing in PCBOARD! It is mandatory that PCBoard
ALWAYS be run from the BOARD.BAT file or equivalent - or program operation
will not function normally.

***** C A U T I O N *****

Attempting to use AT extended memory when running PCBoard is usually totally
unreliable - even for RAM disk use - because of the conflict between DOS's
communication interrupt control and "protected mode" CPU extended memory
operation. It is recommended that you NOT attempt to use ANY extended memory
functions when running PCBoard. The problem is caused by the fact that
PCBoard is VERY communication's interrupt intensive. When switching the CPU
back and forth from "protected mode" to "real mode", the loss of proper
interrupt handling can occur and system lockups will result! However, it has
been found that EMS (EEMS) memory will function normally and allow the use of
both CACHE and EMS (EEMS) RAM disk programs in conjunction with PCBoard's

If you are upgrading from a previous version of PCBoard (10.0 or below),
please refer to the file PCBCONV.DOC included with this program.

***** C A U T I O N *****

Before beginning this procedure, it is recommended you make a complete backup
copy of all PCBoard distribution disks. In order to do this, use the DOS
DISKCOPY command. Do NOT use just the COPY command, since several important
subdirectories on the distribution disks will not be copied onto your backup
disks if you do!

If you are installing PCBoard for the first time, do the following:

1. Change your current default drive location to the root directory of
the hard disk drive on which you wish to install PCBoard. Normally
this should be drive C:. To get to the root of drive C:, enter:

c: (Return)
cd \ (Return)

2. Place Disk 1 of the PCBoard distribution disks in Drive A:. Then at
the DOS prompt type:


a:install (Return)

This will completely install all the PCBoard files onto your hard
disk in order to bring up the code for the first time. After the
install program is finished, you will be displayed a menu of the
various PCBoard documentation files which should be printed. It is
recommended that you immediately print out the complete PCBOARD.DOC
file! This file is approximately 180 pages in length. Note that the
PCBoard batch file routines will automatically "expand" or "de-arc"
the various DOC files as they are printed. It is NOT necessary for
you to first de-arc the DOC files included.

3. Next, edit your CONFIG.SYS file to include one of the following based
on what version of PCBoard and what hardware/software you are using:

FILES=16 (For /S, /D versions, or for systems running
DEVICE=ANSI.SYS /E3 or above on a "true" network)


FCBS=32,32 (For /E3 users running multiple nodes under
FILES=32 multitasking software such as DoubleDOS,
DEVICE=ANSI.SYS TaskView, DESQView, etc.)

4. If you will be running PCBoard on a Novell network, edit your
AUTOEXEC.BAT file to include the statement below and then reboot your


NOTE: Failure to use the above statement in your AUTOEXEC.BAT file
will result in NO SCREEN DISPLAYS when attempting to run most PCBoard
programs under a Novell Network!

5. Next, change your default location to the "\PCB" directory location
and enter:


This will load and run the PCBSetup program. Using the documentation
provided, configure your system paramters based on your needs. Upon
exiting PCBSetup, answer "Y"es to all program exit questions. This
will save your new paramters, and will also check your system

6. Load and run PCBoard. To do so, at the DOS prompt, type:


BOARD (Return)

CAUTION: NEVER run PCBoard by simply typing in PCBOARD! It is
mandatory that PCBoard ALWAYS be run from the BOARD.BAT file or
equivalent - or program operation will not function normally.

NOTE: If your "call waiting" screen is jumbled or missing characters,
you will need to use the following statement in your AUTOEXEC.BAT
file before loading the code:


This will correct the problem by forcing all screen writes through
your ROM BIOS instead of direct memory access.

7. Using the "Sysop Into System" menu selection, log into the system.
If you did not change the local logon password, enter the word
"PASSWORD" when asked for the local logon password.

8. Next, enter and save one message. After saving the message, enter:

3 Y (Return)

at the main command line. This will pack the message base and
prepare the message base index files for use.

9. Next, add one new user to your system by entering the command:

7 A (Return)

The software will prompt you for the name of the new user. Enter a
new user using OTHER THAN your name and password. This new entry can
either be a "dummy entry" or a failsafe remote access entry to allow
you into your system from remote. However, since we recommend
altering user record #1 in the procedures following, it is suggested
that you do NOT enter your real name and password as the new entry

10. After you have entered one new user, enter the following at the main
command line:

8 Y (Return)

This will immediately pack your user's file, creating the necessary
"quick index" files needed for optimum code operation.

11. After the pack is finished, exit PCBoard by entering "G" for good-



12. Next, exit to DOS using the "Exit to DOS (Phone NOT Busy)" menu

13. Load the PCBSysMgr program by entering:

PCBSM (Return)

14. Select "User's File Maintainence", followed by "Edit Users". This
should bring up record #1 of the user's file (the Sysop record).

15. Next, press your (F2) function key to place the screen in the "long
edit" format. At this point, change the user name of "SYSOP" to your
"real" name. Also, enter a password of your choice. CAUTION: DO
NOT use an easy to guess password - since anyone calling into your
system using your real name and guessing of your password will have
complete access to your hardware!

16. After altering record #1, save your changes, and (Esc) to the
previous menu. Select "Pack USER's File" and re-pack your USER's

At this point your quick install procedure is complete and you can begin to
fine tune your system operation.



Hayes 1200 Baud External Modem
1 2 3 4 5 6 7 8
--- --- --- --- --- --- --- ---

Switch 1 = DTR false (controlled by program)
Switch 2 = Full result words sent (i.e. CONNECT 1200)
Switch 3 = Result codes sent back to computer
Switch 4 = Commands are not echoed back to computer
Switch 5 = Auto answer is off. (controlled by program)
Switch 6 = Carrier detect is off. (controlled by program)
Switch 7 = Normal phone jack configuration
Switch 8 = Enables modem to recognize commands

U.S. Robotics Courier 2400 & HST 9600 Baud External Modems
1 2 3 4 5 6 7 8 9 10
--- --- --- --- --- --- --- --- --- ---

Switch 1 = DTR false (controlled by program)
Switch 2 = Full result words sent (i.e. CONNECT 1200)
Switch 3 = Result codes sent back to computer
Switch 4 = Commands are not echoed back to computer
Switch 5 = Auto answer is off. (controlled by program)
Switch 6 = Carrier detect is off. (controlled by program)
Switch 7 = Normal phone jack configuration
Switch 8 = Use normal "AT" command set.
Switch 9 = Disconnect with +++ (Optional)
Switch 10= Not used

Microcom AX9624C 9600 Baud External Modem
--------------- Front Switches -----------------
1 2 3 4 5 6 7 8 9 10
--- --- --- --- --- --- --- --- --- ---

---------------- Rear Switches ----------------
1 2 3 4 5 6 7 8 9 10
--- --- --- --- --- --- --- --- --- ---


EEPROM (NRAM) Based Modems
The Hayes 2400, Hayes 9600 V-Series, USR HST 9600, Microcom AX, EVI/FastComm
and other EEPROM modems do not use DIP switch settings. Instead, their "DIP"
settings are stored in nonvolatile memory in the modem. These settings are
not lost - even after turning off the power to the modem. Once the modem has
been initialized using the instructions given here, it will not be necessary
to re-configure the modem again. To configure a modem of this type, use the
program PCBMODEM.EXE available from the Salt Air BBS system.

All Other Modems
All other "smart" modems should use similar switch settings. The two
critical ones are that the modem switches must not be set so that Carrier
Detect (CD) and Data Terminal Ready (DTR) are "true" all the time. They must
be set to "false" so that the software can control them. Also, DO NOT enable
"auto-answer" on your modem by specifying a value other than "0" in your "S2"
register! If you have any value other than "0" as your "S2" register
setting, your board may be subject to security violations if carrier is lost
in a DOOR or during remote DOS applications!

Automatic Error Correction Modem Detection
PCBoard also automatically detects whether an error-corrected connection has
been established. This support is currently provided for the following

Hayes 9600 V-Series
US Robotics Courier HST
Microcom AX9624C
EVI/FastComm 2496
Telebit/Trailblazer 19200 (Ventel 19200 modems)
All MNP class Modems (2400 and above)

Automatic error-correction detection is used to automatically enable or
disable both Imodem and Ymodem-G protocols. If an error-correcting modem is
NOT detected, both Imodem and Ymodem-G internal protocols are automatically

Hayes 9600 V-Series Modem Special Setting
To insure proper Hayes 9600 V-Series operation, it is necessary that you
place the following statement in your environment prior to loading PCBoard:


This statement should be placed in your AUTOEXEC.BAT file or similar location
to insure it is activated each time your machine is rebooted.



PCBoard uses the DOS "environment" to control several functions inside the
code. These switches must be set ONCE before PCBoard is loaded. They are
best initialized by placing a statement in your AUTOEXEC.BAT file which
executes them as your system boots. The switches available are:

/NMT (No MultiTasking) This switch MUST be used when running PCBoard on a
Novell networking system to insure proper screen displays. Failure
to use this switch will result in NO SCREEN DISPLAYS when running
under a Novell Network!

/BIO (BIOS Screen Writes) This switch should be used if you will be
running PCBoard under multitasking software which causes "screen
bleed through" between partitions, and also may be needed if you are
using a non-100% Hercules compatible monochrome graphics card - which
is eveident by an incomplete "CALLWAIT.SCR" (call waiting screen -
system available) display.

/PCK (Packet Switch Support) This switch allows the code to function
under a PAD or Packet Switched environment without the need for a
"smart" modem. Under this environment, no modem commands are sent to
the RS-232 port. (i.e. all Modem Data screen commands in PCBSETUP
are ignored.) The code instead uses true CD (Carrier Detect) and DTR
to function properly. Since the code can NOT adjust itself to the
actual connect speed (e.g. the host node will remain at the speed at
which the RS-232 line was originally opened), download time
calculations may differ greatly that what is actually required. In
other words, if most of your callers are at 2400 baud and below, and
you open the RS-232 port at 9,600 baud, there will be a substantial
increase in download times than those calculated and displayed by the
code. Packet Switch support can also be used on other systems which
must function with a dumb modem. However, in either case, remember
that there will be NO AUTOBAUDING of the code to match the modem-to-
modem speed! If you will be running PCBoard on a PAD system and use
the above switch, the software will simply look for the presence of
CD being true in which to signal the logon on a users to the system.
The caller is disconnected by toggling DTR off.

/MUL (Multilingual Support) This switch allows you to run PCBoard under
multilingual support if you have alternative language files
available. Please see the "Multilingual Operations" section of this
document for more detailed information.

/DTE (Hayes 9600 V-Series Modem) Indicates you are using a Hayes 9600 V-
Series modem. This switch must be set if you will be using a Hayes
9600. Failure to properly set this switch will result in all callers
being denied access to your system - since the modem will not
properly AutoBaud to match their CONNECT speed.

/MLK (Lock in Modem Open Speed) Indicates you wish to lock in the host


DTE modem port opening speed - regardless of the CONNECT speed of the
caller. This allows for data compression modems using MNP error
correction methods at other than 19200 bps.

/EVI (EVI/FastComm Modem) Provides support for the older style non-MNP
EVI/FastComm 2496 modems at 9600 and 19200 bps modes of operation.

/NMA (Turn off Mail Scan) Turns off the "Scan Message Base Since 'Last
Read' (Enter)=yes" prompt as a caller logs onto your system.

/NCxx (Set Node CHAT Timer) Allows setting the time period between Node
CHAT check requests while a caller is idle at the main command line
prompt. The code defaults to 5 seconds if this switch is not set.
Valid values for the 'xx' parameter are from 01 to 99 seconds.

/NOE (Disable 7-E-1 callers) Disables access to callers at 7-E-1 modem
settings. CAUTION: Some DOOR programs DO NOT support operation at
7-E-1 modem settings and may cause your system to lock up - therefore
requiring the use of this switch! Additionally, callers at 7-E-1
modem settings are denied "mode" changes to "graphics" mode, and are
also restricted from performing any file transfers.

To set any or all the above switches, include in your AUTOEXEC.BAT file the
statement - SET PCB=[switch][switch]




It is ESSENTIAL that you outline your hardware configuration and file
security prior to actually running the code. Failure to properly configure
your system and PCBoard data files in accordance with the guidelines
presented here can result in many long hours of frustration in trying to get
the program to function properly.

Many files indicated herein have the letter "G" suffixed to their file name.
This indicates a "color graphics" version of the main file being discussed
and should be present for your color graphics callers. If a color version of
the file is missing, PCBoard will attempt to locate and use the non-graphics
version instead. These files contain the CHR$(27)+"[XXm" escape codes needed
to generate color on your and the caller's machines. ("XX" is a valid ANSI
number). NOTE: You must have the program ANSI.SYS loaded on your machine
before running PCBoard in order to support color graphics files! To
initialize it, place a statement in your CONFIG.SYS file which reads...


If you will be running under DoubleDOS software, the ANSI driver DBLDANSI.SYS
supplied with DoubleDOS should be used in place of ANSI.SYS. When building
or editing the "G" files, you should use the ANSI standard DOS color escape
codes listed in your DOS 2.1 or higher technical reference manual. Please
note that PCBoard does NOT support ANSI `music' strings.

Throughout the code, several drive\subdirectory notations are made as to
where specific files should be placed. They are:

\PCB -> DEFAULT (where you execute BOARD.BAT from)

These names are not hardcoded into the program, but are used during the
automatic install procedure. They are examples only of the names that can be
used. For example, let's assume you have a single hard disk (drive C:), on
which you are installing PCBoard.

Using the names above, a sample configuration might be as follows:


Drive C:\ (Root)
(Subdirectories) |
| | | | |
Lotus WP dBase etc C:\PCB (Default)
Sub Sub Sub |
(DOORS batch files)
(SHELL protocol batch files)
(All below would be C:\PCB+name) |
| | | | | | | |
| | | | | | | |
Files MSGS BLT HLPA SBLT Files Files Files
Uploaded FSEC BLTG thru SBLTG for for for
to PWRD BLTxx HLPZ SBLTxx Down Down Down
BRDM(G) Files
BRDS(G) Uploaded
PCBTEXT <- Very Important to be in "\GEN"!

The files indicated in each location represent the files discussed later in
this document. Since there are an enormous number of combinations available,
we will not try and discuss them here. Suffice it to say that you should
carefully plan out your configuration before trying to run PCBoard. If files
are not where they belong, your program will either not run, or it will
generate errors in doing so.



***** C A U T I O N *****

PCBoard stores ALL sysop information in the USER's file! Never allow this
record to "move" from the # 1 location, or you will lose access to your board
from remote and the individual whose record is now # 1 will become the
default sysop! NOTE: PCBoard uses both the name "SYSOP" and the name you
enter into user record #1 (using the PCBSM.EXE program to change the name
from SYSOP to whatever you desire) when checking for mail addressed to the
sysop. Since most sysops usually enter their real name into record #1, it is
CRITICAL that you as the sysop change your password frequently so that others
dialing in from remote never have the chance to break your security - even if
they were to discover a password you used to use or use on a different
system! When logging on from remote or local mode, the program recognizes
anyone with record # 1 as "The Sysop" and assigns privileges, etc. as
necessary. Also, the actual "name" from record # 1 is not used for display
purposes. Instead, the word "SYSOP" is displayed. When logging on locally,
the code will still ask for a local password which is defined in the PCBSETUP
program. When logging on from remote, it will be necessary to specify the
first and last name, and the password of record # 1 in order to gain access
to the code as "the sysop". Please protect your USERS' file from downloading
by anyone to insure the security of your system and others as well! Failure
to adequately protect this file can result in others accessing your system as
you. Please properly protect this file!

***** C A U T I O N *****

The code requires that your CONFIG.SYS file contain one of the following
statement combinations:




The first statement group should be used if you are running either the /S or
/D version(s) of PCBoard, or you are running an /E3 version or above on a
"true" network (i.e. a network where you have individual machines with a
modem on each as your nodes.)

The second statement group should be used if you will be running the /E3
version of PCBoard under a multitasking environment - such as DoubleDOS,
TaskView, DESQView, or PC-MOS.

Failure to include one of the above statement combinations in your CONFIG.SYS


file will cause the program to function with numerous errors and a possible
loss of data on your hard disk!

***** C A U T I O N *****

If you are upgrading from an /E3 to a higher version of PCBoard, it is
MANDATORY that you delete your current USERNET.DAT file before loading the
new code! Failure to first delete your old USERNET.DAT file will result in
erroneous Node CHAT operation!



To configure your system, insure that the file PCBSETUP.EXE is located in
your "DEFAULT" (C:\PCB) directory, and PCBTEXT is located in your "\GEN"
(C:\PCB\GEN) directory, and then run PCBSETUP - following the screen
configuration instructions in the next chapter.

PCBOARD.DAT is the main configuration data file necessary for proper board
operation and MUST be located on the default drive from which you execute
PCBoard. The program PCBSETUP.EXE should be used to maintain this file and
should be run from your "DEFAULT" drive location.

There are eight main configuration screens available in the program, plus one
additional screen for each of the conferences which will be supported. The
eight main screens are:

1. Sysop Data
2. File Name Data
3. File Locations
4. Modem Data
5. User Levels
6. Miscellaneous
7. Text Data
8. Switches and Stuff

To enter one of the configuration screens, you should use the (Up) and (Down)
cursor control arrows to position the highlighted selection over the desired
choice and then press (Enter). Once inside one screen, you can move to the
other screens without returning to the main menu by simply pressing either
the (PgUp) or (PgDn) keys. To exit from either the program itself, or one of
the configuration screens, simply press (Esc). When exiting the program, you
will be asked whether to save your new values to disk. If you respond with a
(N), all files will be left unchanged. The program will then ask if you wish
to check your program path configuration. If you respond with a (Y), the
program will run through ALL path specifications defined - including
conference paths - to verify their presence. As this is done, any
subdirectories which do not exist will automatically be created by the

NOTE: When using the program PCBSETUP.EXE to create and maintain the
PCBOARD.DAT file, you are asked to respond with "Y" or "N" to answers which
may actually be stored in the file as "-1" and "0". The editing commands
available within PCBSETUP include:

(Home) Go to beginning of current field
(End) Go to end of current field
(Right Arrow) Move right in current field
(Left Arrow) Move left in current field
(Up Arrow) Move up to previous field
(Down Arrow) Move down to next field
(PgDn) Move to next data page


(PgUp) Move to previous data page
(Ctrl+End) Delete from cursor to end of field
(Delete) Delete character under cursor
(Backspace) Delete character to left of cursor
(Insert) Insert characters starting at cursor position

To add or delete conference entries, simply change the number of active
conferences in the "Miscellaneous" screen. This will automatically adjust
the main menu display.


Screen 1 - Sysop Data

Entry # 1 - Sysop's Display Name (YourName)
This is the name of the sysop which is displayed at several points during
normal program operation. The name must be one word only. You should enter
your first name as the default - capitalizing the first letter for better
appearance during program display.

Entry # 2 - Local Logon Password (PASSWORD)
This is the password needed to logon locally as the sysop. This password is
only used when logging on locally. This entry can be left blank if desired.

Entry # 3 - Graphics on in local mode (Y/N)
This flag sets whether after logging on locally as the sysop, the board
displays its functions in graphics or non-graphics mode. This flag does not
alter the way in which the call waiting screen is displayed. It only takes
effect after the sysop logs on and enters the code from the local terminal.

Entries # 4-15 - Sysop Security Levels (100 & higher)
These are the 12 sysop menu security levels for the 'sysop' only functions
available in the program. These function levels should all be 100 or above.
Callers who are granted temporary sysop privileges are given a temporary
security level of 100. Users MUST have a security level of 105 or greater to
be able to read/kill/unprotect/protect all messages. If their security level
is less than 105, they can only read and kill messages to themselves.

The board is semi-hardcoded for all sysop functions to be in the range of
100-110. Sysop function menus are not displayed for users whose security
level is less than 100. Users who have a security level of 100 or above can
do most of the sysop functions for which they have the proper security level.

Sysop function (13) - read other node caller's logs - defaults to the same
value specified for functions (1&2) once PCBoard is running. If you are not
running version /Ex or /U, values for sysop function commands (11) through
(13) are ignored when running PCBoard.

Several 'sysop' functions are hardcoded to only allow the actual sysop - the
person logging on locally with the (Esc) key or remotely with the information
stored in record #1 - to actually perform some functions. If you grant sysop
privileges to another person, they will not have all the privileges you
maintain unless you allow them to log on as you.


Screen 2 - File Name Data

Entry # 1 - Main Message File (MSGS)
This is the name of the main board's message file. It must be no longer than
8 letters and must not contain a filename extension. This file is
automatically created by the program if it does not exist. The file must be
kept in the "\MAIN" subdirectory location as indicated below. The file is
completely network supported.

The message base filename is also used when creating the text file outputted
by the code during use of the (Alt+F) (file out) function. When the (Alt+F)
key is active in the code, the file is written to a disk file called base name>+".TXT". More information concerning text output is available
later in the documentation.

Entry # 2 - Name of the Caller's File (CALLER) (6 chars max!)
The the name of the file which stores all caller log information. The file
is automatically created by the program if it does not exist. The file is
stored in the location specified in the next data item.

Systems running under a network will have "network" caller's log files
automatically created by the code when PCBoard is loaded for the first time.
These files will be created as +. For example, if you are
running a 3 node system, three files will be created - CALLER1, CALLER2 and
CALLER3. Since the caller's files are each unique to its respective node,
the files are not SHARED between nodes - but are available for SHARED viewing
by another node if desired.

Entry # 3 - CALLER File Location (none)
This entry allows the sysop to define where their CALLER files are to be
located. Since some sysops running under a network environment prefer to
have their various CALLER files on local drives instead of SHARED drives in
order to cut down on over-all network traffic, this option has been included
in the code. If this field is left blank, the program will automatically
create and maintain all CALLER files in the "\MAIN" drive location for all
versions of the code. If you are running either version /Ex or /U under a
'network' environment and specify a location here, be sure the location is
the same for ALL nodes or sysop function (13) will not function properly. It
is strongly recommended you leave this field blank!

Entry # 4 - Name of Welcome File (WELCOME)
This is the name of the file displayed to all users as they logon to the
system. There should also be a color version available which has the letter


"G" appended to it. In other words, if you call the file WELCOME, there
should also be a graphics version on the board called WELCOMEG for the color
graphics callers. These files must be located in the "\GEN" board
subdirectory location.

The caller has 10 minutes total in which to read the WELCOME and NEWUSER
files, and to complete the questions asked for registration. If the 10
minutes expires before they complete all of the above, they will not be
assigned the amount of time specified in the PCBSETUP program for new users
who agree to register. If your callers are running out of time before
completing the above, shorten your WELCOME and NEWUSER files to allow them
sufficient time.

Entry # 5 - Name of the Newuser File (NEWUSER)
The the name of the file displayed to all new users as they logon to the
system. There should NOT be a color version available. This file must be
located in the "\GEN" board subdirectory.

NOTE: If this file is too long, the caller will not have enough time to read
the file and complete their registration information before the initial 10
minute program time limit has expired. Keep the file short and reference a
bulletin for them to read if you need a longer file for them to review for
registration information.

Entry # 6 - Name of the User's Data Base File (USERS)
This is the name of the file used to store all user data base information.
The file will automatically be created if none exists. The filename must be
8 characters or less with no extension. The file must be placed in the
"\MAIN" subdirectory. The file is completely network supported.

Entry # 7 - Name of the Conference Data File (CNAMES)
This is the name of the file used to store all conference information. It is
created and maintained using PCBSetup. The file is stored in the "\MAIN"
subdirectory on the board.

Entry # 8 - Name of the Download Security File (FSEC)
This is the name of the file used to store all of the download file security
information. It must be maintained using a text editor and it must be kept
in the "\MAIN" subdirectory on the board.

Entry # 9 - Name of the Logon User Time Allowance File (PWRD)
This is the name of the file used to store all of the logon password, time


allocation, and download byte limitation information. It must be maintained
using a text editor and stored in the "\MAIN" subdirectory on the board.
Please note that you MUST have a corresponding entry in this file for each of
the assigned security levels you give to your callers. If you do not have a
matching security level which is exactly the same as one of your callers -
they will receive a default of only 10 minutes on your system.

Entry # 10 - Name of the Undesirable Caller's Names (TCAN)
This is the name of the file used to store all of the names which will
automatically be denied access to the system. If a match is found on any
name in this file against either the caller's first or last names, they will
be denied access to the system. This file must also be built and maintained
using a text editor and must be located in the "\MAIN" subdirectory. Callers
who log onto your system and use one of the names in the TCAN file will have
their logon entry written to the caller's log for review. To build the file,
simply enter the name you wish to restrict in capital letters on each line of
the file. For example, your file may include such items as:

If any caller logged onto your system who used any of the above entries as
either their first or last names, they would immediately be denied access to
your board.

Entry # 11 - Name of Batch File Called Exiting Remote (REMOTE)
This is the name of the batch file called up when the sysop exits to DOS from
a remote location. The filename must be 8 letters or less and must not
contain an extension. The actual file should be placed in the "DEFAULT"
drive/subdirectory location of the system from which PCBoard is initially run
as +<.SYS>. The program will automatically rename the file to
REMOTE.BAT just before the sysop actually exits to DOS. The file REMOTE.SYS
included provides a sample of the file. The board itself must be called by
another file called BOARD.BAT - so the two batch files can interact with each

Entry # 12 - Questionnaire Answers File (ANSWER)
This is the filename which will be used to build the actual files which will
store answers to your (S)cript Questionnaire(s). The name must be 6
characters or less since answer files are automatically created by the
program using this name and by appending the number of the script
questionnaire to the filename above - ANSWER1 for example. In a conference,


the first letter of the conference name is placed in front of the filename as
well - such as SANSWER1 if you had a script questionnaire 1 in the Sysop's

Entry # 13 - Registration Answers File (NEWREG)
This is the name of the file which is automatically created by the code if
you elect to run your system as a 'closed' board - but allow for the initial
capturing of user registration information. The information left (answers in
response to NEWASK) - are left in this file so the you can later include it
in the master USERS file if desired. Note that if you decide to run a
completely closed board - allowing no new users at all by eliminating the
NEWASK file from disk, the program will still show the user the NEWUSER file
as they log on so you can briefly explain to the caller the reason why the
board is closed to all new users.

Entry # 14 - Network User File (Path+Filename) (C:\PCB\MAIN\USERNET.DAT)
This is the drive\path+filename of the network interactive user file which is
needed to properly support cross-network activities - including Node CHAT and
cross-node reading of the caller's log by the sysop.

NOTE: This entry must be exactly the same for all nodes under a networking
system in order for the Node CHAT and caller's log viewing to work properly.
If the locations and/or filenames are not exactly the same, the Node CHAT and
cross-node viewing of the caller's log(s) will not function properly. If you
are not running under a network environment, this entry is ignored by PCBoard
when running.

If possible, this file should be placed on a RAM disk - since it is accessed
continuously during normal code operation and can cause considerable disk
access activity - depending on your system configuration.

Entry # 15 - File Transfer Info (Path+Filename)
This is the name of the file you wish all board download and upload file
transfer summary information to appear in. The sysop can decide both the
name of the file and its location. If this entry is left blank, no file
transfer summary information will be saved. The information written to the
file will include whether the successful transfer was an upload or download,
the caller's name, the date and time of the transfer, the name of the file
itself, the transfer protocol used, the total number of errors during the
transfer, and the average CPS (characters per second) throughput of the over-
all transfer if the transfer was completed using an "internal" protocol.
Note that PCBoard calculates its CPS figure by starting its clock when the
first byte is either sent or received and stops the clock when the last byte
is sent or received. Some variation in CPS calculations can occur when
comparing PCBoard to other programs since not all programs may calculate the
time in the same fashion. Also, since PCBoard uses integer arithmetic, some


rounding can occur during the actual calculation. If you are not running a
program which uses the information previously stored in DOWNLOAD.TXT, you
will probably wish to leave the entry blank so that the file is not created
on your system. Note that you must specify both a location and filename in
this field. Note that if a caller performs and "external" transfer, no CPS
information will appear in the file.


Screen 3 - File Location Data

Entry # 1 - Main Board Upload Location (C:\PCB\UP)
This is the drive\subdirectory location where all files uploaded in the main
section of the board will be placed. It should be separate from all other
directory locations for security purposes and does not need to have the
upload directory listing on the drive. The drive designation is mandatory.
Failure to specify a drive location may result in a program error or
erroneous displays.

Entry # 2 - General Drive/Subdirectory Location (C:\PCB\GEN)
This is the drive and subdirectory location where the following files must be

PCBTEXT (Text file necessary for proper software operation)
BLT & BLTG (Main Board Bulletin Menus - Hardcoded)
BLTxx & BLTxxG (Actual Bulletins for Main Board - Hardcoded)
DIR & DIRG (Main Board File Directory Menus - Hardcoded)
DIRxx (Main Board Directory Lists - Hardcoded)
WELCOME & WELCOMEG (Welcome Files - mono and color - Definable)
NEWUSER (Newuser Instruction File - Definable)
NEWS & NEWSG (General Board 'News' files - Hardcoded)
CNFN & CNFNG (Conference Menu File - Hardcoded)
BRDM & BRDMG (User's Main Menu - Hardcoded)
BRDS & BRDSG (Sysop's Main Menu - Hardcoded)
DOORS (DOORS menu description file)
SCRIPT & SCRIPTG (Script Questionnaire Menu Files)
SCRIPTx (Actual Script Questionnaires)
PCBML.DAT (Multilingual language support menu/data file)

The drive designation is recommended. Since no files in this area are ever
written to during normal PCBoard operation, this drive\path location can be
specified as a RAM disk if desired in order to improve program operation and
reduce physical disk activity - especially in a networking environment.

Entry # 3 - Main Drive/Subdirectory Location (C:\PCB\MAIN)
This is the drive and subdirectory location where the following files must be

MSGS (Main Board Message File - Definable)
MSGS.NDX (Message base Index File - created/maintained by code)
FSEC (Download File Security File - Definable)
UPSEC (Upload File Security File - Hardcoded)
PWRD (Logon Password/Time Allowed File - Definable)


CNAMES (Conference Information File - Definable)
ANSWERx (Questionnaire Responses)
NEWREG (Registration data saved from closed board)
NEWASK (New user registration questions)
DOWNLOAD.TXT (File transfer summary information)
DOORS.DAT (DOORS data file containing DOOR name, security,& pwrd)
PCBNDX.x (26 Quick Index USERS files)

This drive\subdirectory location SHOULD NOT be included in your download path
to prevent anyone from downloading these files under any circumstances. The
drive designation is recommended. Note that if a specific location for the
CALLER's file(s) is not specified in the previous screen, PCBoard will use
the above location for storing the file(s). Since many of the files above
may contain sensitive information - including your sysop record - it is
strongly recommended that you do NOT include this directory location in your
download path as described later!

Entry # 4 - Help Drive/Subdirectory Location (C:\PCB\HELP)
This is the drive and subdirectory location where the 30 help files must be
located. Files are hardcoded to the filename of HLP+ the letters A-Z
corresponding to the 26 possible selections available, plus help files for
OPEN a DOOR, Node CHAT, and LANGuage switching. For example, the file HLPB
would be the file which provides help for reading bulletins. The drive
designation is recommended. This drive\path can also be specified as a RAM
disk if desired in order to reduce physical drive access.

Entry # 5 - Main Board Upload DIR Location (C:\PCB\UP)
This is the drive\path location of the main board's upload directory
(including the private directory 'PRIVATE'). This location is specified
separately from the "\GEN" DIR locations so that they may be kept on a RAM
drive while the upload DIR (which is having information written to it by the
code), can remain on a physical drive in the event of a power failure. This
location is used for the highest numbered DIR file ONLY if the main board's
upload DIR is open to the public. If not (all uploads are private), the
entry is used only for the PRIVATE file. In that case, the high DIR should
also be put in "\GEN" with the other DIR files. In other words, DIRx (where
'x' is the highest numbered DIR file, should only be placed here IF uploads
to your board are 'public'. If they are 'Private', place the high DIRx file
in "\GEN" instead.

Entry # 6 - Node CHAT Files Location (C:\PCB\MAIN)
This is the location of the Node CHAT files used for the Node CHAT function
built into the code when running under a network environment. Note that this
location must be exactly the same for all nodes in order for the CHAT
function to perform without errors. If you are not running a network
configuration, this variable is ignored when actually running PCBoard.


Entry # 7 - Download Path String (C:\PCB\GEN ... etc)
This is the path which must be specified to allow downloads from any and all
disk drive locations - including the default drive\subdirectory - for users
who are logged into the main section of the board. Note that conference
download paths do NOT need to be included in this field. Instead, additional
conference download paths should be specified inside a conference for
additional protection if desired. If a drive\path location is not included
in this path, files in it will not be available for downloading. The drive
designation(s) are recommended.

CAUTION: The maximum number of drives\subdirectories can not exceed 50!
This entry limit is in combination with the additional download path which
can be specified for each individual conference as described later under
conference configurations. All entries must be separated by a semi-colon as
is normally done with conventional path specifications. All drive\path
entries in this line must match exactly with security entries made in the
file security file (FSEC)!

NOTE: Setting 'path=' in your autoexec.bat file will have no effect on
PCBoard program operation. Only the 'path' string passed to the program
through the PCBOARD.DAT file will be used by the program to find downloadable
board files.

It is NOT recommended that you run the "\MAIN" drive\subdirectory location on
a RAM disk. The reason for this is that if your system experiences a power
failure, etc., information will be lost - including CALLER's file, USER's
file, and/or message base information.

CAUTION: The use of such programs as IBM's (tm) File Facility or DPATH may
cause program errors when running the board. DO NOT use these programs (or
others like them) in lieu of the download path.

NOTE: Do NOT specify any filenames in the download path - either with the
use of actual filenames or wildcards. The entries in the download path
should ONLY be drive and subdirectory entries - minus ANY filename

NOTE: It is not necessary to specify any conference specific download paths
in this string. All conferences support additional download paths in their
respective configuration screens.


Screen 4 - Modem Data

Entry # 1 - Wait for Carrier Detect (15 seconds)
This is time in seconds the code will wait after a ring has been detected
before abandoning a carrier detect try. This value is counted down in
seconds from the amount specified to 0 on the call waiting screen. When the
code reaches 0, it recycles. In most cases, it has been found that modems
function well using a value of 12-15 here. This allows your board to recycle
slightly faster in the event a carrier is not established. The Hayes 9600 V-
Series, Microcom AX9624C, and EVI/FastComm modems may require slightly higher
time settings.

Entry # 2 - Modem Initial Open String (ATS2=255C1M0Q0H0X1)
This is the modem command needed to prepare the modem to receive calls. If
you are using an EEPROM type modem, please refer to the front of this
document for information on how to configure your modem. The above string
should ONLY be used by those sysops using a non-EEPROM based modem.

Please note that two values here are very important. The first is the "H0"
command which causes the modem to go back "on-hook" if the sysop has been
working on the system and the phone is currently "off-hook" or busy. Second,
some modems tend to loose their ability to return verbose commands to the
software after functioning for a period of time. In order to over-come this
problem, include a "Q0" and "C1" command in the string.

Since many of the newer EEPROM based modems do not need to be continually
updated every time the code recycles, it is possible to shorten this string
considerably. Listed below are examples of the modem data fields which have
been found to work properly with PCBoard:

Hayes 2400 & US Robotics Courier HST 9600
Wait Time: 15
Init String: ATH0
Off-Hook String: ATH1

The above configuration assumes all other modem initialization commands have
been previously entered into the modem's "permanent" EEPROM storage.

Courier 2400

Wait Time: 15
Open String: ATS2=255C1E0Q0H0X1
Off-Hook String: ATH1


Entry # 3 - Modem Off-Hook String (ATH1)
This is the modem command needed to place the modem 'Off-Hook' with the line
in a busy mode.

The above modem commands are compatible with a Hayes 1200 baud, Courier 2400
baud, Multi-Tech 2400 baud modem and others. Some modems are not compatible
with the above settings and erroneous program operation may occur. Please
note that it is necessary to cut the Pin 22 cable wire when running a PC-
Slave card since a true ring detect will cause the Slave card to reset
itself. If you are running a slow response modem, you can use the "Slow
Modem" switch in the "Switches & Stuff" data screen to insure proper modem
operation (usually only the old ARK modems.)

Entry # 4 - Communication's Port Being Used (COM1:, COM2: or NONE)
This is the communication's port which the board is using. It can only be
"COM1:", "COM2:" or the word "NONE" Be sure and include the colon as part of
the entry when specifying COM1: or COM2:. If you desire to run the code
without a modem or COMx: port attached, simply enter the word "NONE" in place
of the COMx: statement. In that case, you will be allowed to run the code in
local mode without generating COM port or modem errors. NOTE: Failure to
set this string to "NONE" on a machine without a modem will cause the code to
go into an infinite loop. NOTE: Due to current Compiler and DOS
restrictions, COM2 is the highest COM port available!)

Entry # 5 - BPS Rate to Open Modem at (2400) (300,1200,2400,9600,19200)
This is the speed at which the communication's port is to be opened. Sysops
with 2400 bps modems should enter 2400. Folks with lower speed modems should
enter either 1200 or 300. If you have a "high speed" 9600 bps modem, you can
elect to open the port at 19200 bps to maximize throughput. However, you
must first properly configure your host modem-to-computer RS-232 link (your
DTE link) to remain at 19200 at all times! Since there are a lot of ROM
changes and enhancements occuring right now with the 9.6 modem manufacturers,
we are unable to provide specific modem settings for every 9600 bps modem on
the market. Please check with your modem manufacturer for more details.
Microcom, U.S. Robotics, Hayes, and EVI/FastComm folks all have a current
copy of our 19200 code available to them for support purposes. Note that if
you open your port at 9600 or below, the code will ALWAYS auto-baud to match
the speed of the caller. ONLY if you specify 19200 baud here, will the code
lock the host CPU-to-host modem link into a fixed 19200 speed to provide for
maximum throughput. See the section of this manual on High Speed modems for
detailed information on your intial modem speed.

Entry # 6 - Allow 300 Baud Callers Access (Y/N)
This flag determines whether the board allows 300 baud callers access into
the system. If the flag is set to "N", all 300 baud callers are DENIED


access. If the flag is set to "Y", they are allowed into the system. An
appropriate message is displayed if you lock-out 300 baud callers.

Entry # 7 - 300 Baud Caller Start Time Access (00:01) (Definable)
If you set the previous entry at "Y" (allow 300 baud callers), you can set a
time period to allow them access to your system if desired. This entry is
the start time of their access in hh:mm format. For instance, if you only
want to allow 300 baud callers access from 11:00pm to 6:00am, you would enter
23:00 in this position. (Military time)

Entry # 8 - 300 Baud Caller End Time Access (24:00) (Definable)
This entry is the end time of 300 baud caller access in hh:mm format in
military time. In the above example, your entry here would be 06:00.

If you wish to allow 300 baud callers at all times, the previous entry should
be 00:01 and this one 24:00. If a caller logs on outside of the allowable
300 baud access time(s), they will be shown a message indicating the hours
300 baud is supported.


Failure to Establish/Loss of Carrier

Failure to Establish a Carrier
Some people have asked how they can set up their modems to avoid those cases
where the code attempts to answer the phone - but never is able to establish
a carrier handshake. (i.e. The call waiting screen just counts down to "0"
and then recycles.) Unfortunately, there is nothing that can be done in
those cases to improve your modem's performance. Once your system recognizes
a ring and sends the command to the modem to answer the phone, from that
point on it is up to the two modems to attempt to establish a connection.
There is nothing in the code which can improve or detract from the ability of
the two modems to perform the task at hand. However, here are some of the
reasons why no connection is established:

1. There is no modem on the other end. Many times immature callers have
been known to "tie" up a board by simply calling in every 30 seconds
or so and then just hang up on their end - with no intention of
attempting to log on. If this is the case, you can seek assistance
from your local law enforcement agency and the culprit can be tracked
down - even if they only let your phone ring once and then hang-up on
their end. By maintaining a log of the exact times a person sets up
their calling episode, the police and local law enforcement officials
can track down the offending party.

2. The phone quality is so bad the two modems can not go through their

3. One of the modem's frequency control is marginal causing the other
modem to not recognize the other's attempt to establish the proper
speed. This can cause frequent (but not steady) problems.

4. Failure to properly define the modem strings (either YOU or your

Loss of Carrier
PCBoard has a 3 second redundant loss of carrier check built into the code to
help prevent inadvertant logoffs due to a momentary loss of carrier signal.
However, in order to gain the benefit of this feature, both the host modem
and the caller's modem should have their "S10" register set to a value of at
least a 3 second delay to match that of PCBoard. Otherwise, either modem
itself can over-ride the redundant carrier check and hang up the modem -
causing the board to recycle.


Modem Reset Errors

Some sysops experience "Modem Reset Errors" during normal code operation -
which can lead to an infinite "recycle loop" of the code if the modem never
recovers. The reason for the error is that PCBoard expects the modem to
return the word "OK" after sending it a command. If the modem does NOT
respond in several seconds with the word "OK", the code assumes the modem was
unable to process the command and recycles. If at this point the modem has
totally lost its ability to accept commands, the code may go into an infinite
loop trying to reset the modem. Most modems may experience an occasional
modem reset error - followed by a successful recycle on the next try. This
is normal. However, some modems may NEVER recover. If you have a modem
which continually generates a modem reset error and goes into an infinite
loop, we suggest you contact your modem supplier for a different modem or
your money back! The inability of your modem to return the word "OK" or to
maintain proper command environment control means the modem may have problems
or may NOT be 100% Hayes compatible.


Screen 5 - User Levels

Entries # 1-28 - User Security Levels (Various)
These are the 28 main menu security levels for the various menu selections
available to the caller. These security levels should correspond to your
needs based on the values you specify in the PWRD's file for new 'registered'
users, new users who refuse to register, and your registered users and
conference users.

Note that the (OPEN) a DOOR and (Node) CHAT function security levels are
ignored by versions of the code which do not support the two functions. No
security level is required in order to change language selections.

If user function (V)iew Settings is set higher than a caller's security level
when logging on, they will not be displayed any board statistics - such as
caller number, etc.

No security level is necessary for a caller to use the (LANG) command if you
are running a multilingual system.

Entry # 29 - Level Assigned New Users Who Register
This is the security level assigned new users who complete the board's
registration information - which asks for their name, city and state,
password desired, business/data phone number, voice/home phone number, and
their default transfer protocol desired.

If the board is flagged as a 'private' board, a user is granted this security
level upon completing the registration information asked from the NEWASK
file. If the board is private, all new user information is written to a
special Ascii text file called NEWREG which is automatically created in the
"\MAIN" location for protection purposes. If the board is public, new user
information is written to the main user's file.

Entry # 30 - Level Given New Users Who Refuse To Register
This is the security level assigned new users who refuse to complete the
requested registration information. If you specify 0 here, all callers who
refuse to register will be immediately logged off.


Screen 6 - Miscellaneous

Entry # 1 - Number of Main Board Bulletins (1-99)
This is the number of active bulletins in the main section of the board. The
number can not be greater than 99. You can specify a number of zero if
desired. This number should be set equal to the number of active main board
bulletins you will be posting.

The program checks for the current date of the BLT and BLTG files when a
caller logs onto the system. If the files have been physically updated since
their last call and the filedate is newer than the caller's last date on the
system, they will be displayed a message that the bulletins on the board have
been updated. NOTE: You must update BOTH the BLT and BLTG files!

Entry # 2 - Number of Active Conferences (1-9)
This is the number of conferences active. The maximum number of conferences
allowed is nine - since all conference information is stored as a single
digit ASCII character between 1 and 9.

CAUTION: If you change the order of the conference listings in the CNAMES
file, the user's file many then contain erroneous information. For example,
if JOHN DOE is registered in conference # 2 - GAMES - and you insert a new
conference between 1 and 2 in CNAMES - moving games up to conference # 3 -
JOHN DOE will still be registered in conference # 2 - which is now the new
conference. DO NOT change the order of the conferences unless absolutely
necessary since you will have to manually go through the entire user data
base recoding all of the user's conference registration information.

NOTE: You must change the number of conferences here in order for the
PCBSETUP program to allow you to configure that conference. The number of
conferences entered here determines the number of Conference's which will
appear in the main menu.

Entry # 3 - Maximum # of Main Board File Directories (1-99)
This is the number of active main board file directory listings. All file
directories are hardcoded to the name DIRx where the 'x' is the actual
directory number. Directories must be numbered sequentially from one (1) up
to the number specified - in increments of one (1). Conference directories
are numbered from this number plus one up to the number of conference
directories as specified in the CNAMES file. Conference directories have the
first letter of the conference name prefacing their name. For example, if
you have a sysop's conference which has an additional 6 file directories,
they would be called SDIR11 through SDIR16 - with the main board directory
listings named DIR1 through DIR10. The maximum number of main and
conference file directory listings can not exceed 99 for any single


combination of the two. (See File Location Information screen for proper
placement of all main board DIR files.)

Use the alignment pattern supplied with the 'DIR' file listings. It is
imperative that the dates appear in the columns shown in the samples for the
date search to work properly inside the program.

NOTE: Your file names should appear as a single word with a period
separating the prefix and suffix of the filename. You can not have the
filename extension separated from the filename prefix in columns 10-12 as is
presently done by many sysops. If your filenames are split up in this
manner, the (L)ocate command will not function properly. Follow the
template(s) provided when building your directory listings.

Entry # 4 - Daily Time Limit Flag (Y/N)
This flag when set to "Y" means callers are limited to a maximum amount of
time per day based on their security level. If the value is set to "N"
callers can call as many times as they like - each time getting a full time

Entry # 5 - Make Main Board Upload Directory Private (Y/N)
This flag sets whether callers can view recent uploads to the board. If the
flag is set to "Y", all upload information automatically goes to a file
called PRIVATE (Hardcoded by the program) - which should be protected from
downloading by inclusion in the FSEC file. If this flag is set to "N", all
upload information goes to the highest number general board file directory
which is by default the upload directory. Users who begin their upload
description with a "/" also have their information placed in the PRIVATE file
rather than the regular upload directory. Upload directories which are not
present on the appropriate drive are automatically created by the program to
prevent loss of upload information. If you make your main board upload
directory private, you can call the highest numerical directory on your
system something other than the 'upload' directory - since all upload
information is placed in a private file accessible only by the sysop.

Entry # 6 - Deny User's Complete Data Base Update (Y/N)
This flag determines whether a user can update just their password, or their
complete data base information - including their city and state, both phone
numbers, and their comment and password information.

NOTE: This flag is carried throughout the entire program. (i.e. Conference
members are treated just like regular board callers.) By setting the flag to
"Y", users are allowed to update all their information. If set to "N", they
can only change their password. If the board is private, you should set the
security level for password and/or data base changes to a level above that of
a new user. If you forget, the program will still not allow a non-registered


user to try and actually update the data base.

Entry # 7 - Closed Board Flag (Y/N)
This flag determines whether a user can leave any registration information in
the main data base. If this flag is set to "Y", all new user registration
information is written to a file called NEWREG which is automatically created
in the "\MAIN" drive location. The information is stored in ascii text and
can be viewed or edited easily. The sysop then has the choice of taking the
names he wants from this file and entering their information into the main
program data base. No new callers are added to the user's file unless the
sysop puts them in himself.

If this flag is set to "Y" (closed board), AND the file NEWASK is missing,
then no new users will be allowed into the system - even for a few minutes.
Callers will however be displayed the NEWUSER file under these conditions so
that you can inform them of why the board is closed to the general public in
that file. If you want a new caller to be at least able to browse through
your system, the NEWASK file must be present. If you wish them to browse
without having them enter any data, simply place a (Ctrl-Z) as the only entry
in NEWASK. In this case, just a date and time stamp will be written to the
file as each new caller is logged into the system.

The questions which are asked the new caller who agrees to register on a
closed board MUST be stored in a file called NEWASK - which must be located
in the "\MAIN" drive\subdirectory location. The file should consist of one
line entries which are the questions asked the user. This file should have
no less than 1 question and no more than 49. An example of the file is as

What is your first and last real name(s)?
What is your mailing Address?
What city, sate and Zip are you calling from?
What is your business or data line phone number?
What is a voice number where you can be reached at?
What password do you desire if registered here?
Any special comment you wish to make?

After the caller has completed all of their responses, the file is processed
(similar to the Script Questionnaire files discussed later), writing the
caller's responses along with the individual questions to the NEWREG file in
the "\MAIN" drive\sub location. This file can then be 'typed' to the printer
or edited with a text editor if desired.

Callers are required to answer every question that is presented to them from
the NEWASK file. They are not allowed to skip a question by just pressing
their carriage return. However, no edits of the data entered are performed.
In other words - they can enter junk into the file.


Entry # 8 - Run Board in Non-Graphics Mode (Y/N)
This flag can be set to "Y" to indicate that NO graphics support is
available. When this flag is set to "Y" (no graphics), all callers are
denied a mode change to graphics.

Entry # 9 - Automatic Conference Assignment (000000000) (Definable)
This is the string which you can define which will be written to the user
data base whenever a new caller is logged into the file. The string can
contain up to nine conference numbers which you wish to make public. If you
do not desire that callers be automatically granted access to your
conferences, the string should be set to "000000000". If for instance, you
had 4 conferences - of which 1, 2 and 3 were public, you could set the string
to "123000000" - which would immediately allow all new callers who register
access to those three conferences. NOTE: If you are running a "closed" board
which does not create a record in the USER's file when a new caller logs on,
they will NOT have access to any public conferences defined in the above
string. Only those users who will actually have a user record in your system
will be assigned the above string when completing their initial registration.
If you do not allow new users to automatically create their own record in
your USER's file, they will NOT be able to join any system conferences.

Entry # 10 - Exit to DOS after each caller (Y/N)
This entry allows you to specify whether the board will recycle to DOS after
each caller logs off. This feature allows sysops to run PCBoard from within
other applications, etc.

Entry # 11 - Event Timer Active (Y/N)
This flag when set to "Y", means that you have an event which you wish to run
at a given time using the interactive batch file EVENT.SYS - which must be
located on your default drive. If this flag is "Y", the board will begin
adjusting all caller's times before the event time to prevent their being
logged on at the time the event is scheduled to run. This allows the sysop
to specify a time of day at which the board will exit to DOS to execute
another function. This capability was provided for several reasons -
including the ability of the code to function in a 'mail node' system, and
also to allow the sysop to perform automatic streamer tape backups, etc. The
event timer can also be used to shut your board down at a given time for
maintenance, etc. The operation of the event timer is somewhat tricky and
must not be used unless you completely understand the use of interactive
batch files. If you do not know how to create and maintain batch files which
have logic built into them, do NOT attempt to use this function. In the
miscellaneous screen of the code, you will see two additional questions: 1)
Timed Event Active and 2) Event Run Time. If you set timed event active by
entering a "Y", several things will occur during operation. First, every
time a caller logs onto your system, the code will look to see how much time


remains before the event is to occur. It will then subtract 1 minute from
that time and compare it to the caller's allowed time. If the net time
before the event is less than the caller's allowed time, the caller's time
will be adjusted downward to reflect the actual time available before the
event begins. They will also be advised that their time for that call has
been adjusted. One minute before the event is scheduled to begin, all
callers are denied access to the system. At this point, the board goes into
a "waiting mode" for the event - during which all board activity is stopped -
including keyboard input. Then, at the event time, the code will run the

As the event is called by the program, the board looks for a file called
"EVENT.SYS" on the default drive. If it finds it, it will rename the file to
"EVENT.BAT" and exit to DOS. If the file is not found, the program will
simply recycle. The file "EVENT.SYS" should be the batch file used to call
up another program or function which is to be performed at the scheduled
time. The logic of allowing this additional batch file to function properly
in conjunction with BOARD.BAT is shown in the example below...
BOARD.BAT (file example)
echo off
if exist remote.bat rename remote.bat remote.sys
if exist event.bat rename event.bat event.sys
if exist door.bat del door.bat
if exist endpcb del endpcb
if exist remote.bat remote
if exist event.bat event
if exist door.bat door
if exist endpcb goto end
echo on^Z

What occurs now is that when PCBoard exits to DOS, it not only looks for the
presence of the REMOTE.BAT file, but also the EVENT.BAT file which was
created by renaming a file called EVENT.SYS from inside the code just before
exiting. If the file EVENT.BAT is found, it is run. That file should then
contain the instructions of the actual remote event, finishing with a
statement which recalls BOARD.BAT. An example of an EVENT.SYS file
EVENT.SYS (sample file)
copy d:\up a:\


The above example is very simplistic. It would simply copy every file from
your upload directory to a disk on drive "A" and then re-run BOARD.BAT -
bringing the board back up on-line. The event sys can be as simple or
complicated as desired.

Again, if you do not understand the logic of the above example and how to
interface another batch file to work with BOARD.BAT, DO NOT turn the event
timer on. A properly configured system will attempt to recycle the board if
there is a problem. However, it can not trap for every error which can be
made in such an environment. This feature was placed in the code for the
more advanced sysops who desired such a function.

Additionally, you can have the EVENT.BAT file overlay other files on top of
the current PCBOARD.DAT file which can be used to call other subsequent
events at other times of the day to allow for multiple daily events.

Entry # 12 - Event Time (02:30) (Definable)
This entry is the time of day the above event is to occur. The time should
be entered in military format in hours and minutes only. If the above flag
is set to "N", this time is disregarded by the program. It is NOT
recommended you schedule an event near midnight - since DOOR activity can
cause a missed event due to time/date changes.

Entry # 13 - Max # of Message Lines (1-99)
This entry allows you to specify the maximum number of text lines which are
allowed when someone is entering either a message or a comment. The maximum
number allowed is ninety nine (99). The program will automatically provide
intelligent page pauses for your callers - depending on the maximum size you
decide each message can be.

Entry # 14 - Default Color Intensity (00 or 01)
This is the ANSI code that can be set to determine whether text which is
entered either at the local keyboard or by the caller from remote will appear
in normal or high intensity color. If the string is set to "00", the color
will be normal intensity. If set to "01", the ANSI driver will make all
caller entries and local keyboard entries appear in high intensity color when
in graphics mode.

Entry # 15 - Default Foreground Color (31-37)
This entry should contain the ANSI escape code for the default color you wish
the local keyboard input and the caller's input to be displayed in on the
screen. The valid color codes are:


31 - Red
32 - Green
33 - Yellow (Brown)
34 - Blue
35 - Purple
36 - Light Blue (Cyan)
37 - White

These are codes which are used by the ANSI driver. If the caller has
requested graphics mode, all of their entries, and some of the information
displayed to them by the board, will appear on their screen and the local
screen in this color. If they have not selected graphics mode, this color
will still appear on the local screen. These colors can be set in
combination with the intensity value above to achieve your own desired color

Entry # 16 - Running Under Network (Y/N)
This entry is used to specify whether you will be running PCBoard version /E
or /U under a network or multitasking environment. All other versions of the
code ignore this entry. If you are running version /E or /U and specify here
that you are running under a network - even though you may only be running a
single copy of the code - you MUST have NetBIOS, SHARE, or its equivalent

Entry # 17 - Number of this Node (1-99)
This entry must be specified if you indicate you are running under a network
environment above. The entry should be a number from 1 to 99. The number
entered here must be unique for each node configured on your system.
However, the numbers do not have to be in any special order.

A caller can only be logged onto one node at a time. It they attempt to
access two nodes at the same time, they will be denied access on the second
node. The sysop however can be logged onto more than one node at once.

Entry # 18 - Disable Upload Drive Size Check (Y/N)
This entry allows sysops to disable the checking of the physical upload drive
to insure sufficient upload space exists on the drive. This flag, if set to
"Y", allows sysops to use the SUBST command in place of a physical drive


Screen 7 - Text Data

Entries # 1-10 - Function Key Assignments (Shift+Fn) (1-10)
Screen seven allows you to define the 10 text function key assignments which
will be used with the code. These strings, once defined, are called up
inside the program using the (Shift+Fn) keystroke combination. The sysop can
enter any text in the strings desired - up to a maximum of 72 characters.
These can either be text strings to be used when entering a message (such as
a standard sysop "signature"), or they can be stacked commands which the
sysop commonly uses to perform certain code functions.

Entry # 11 - Comment Prompt (Leave a comment for the sysop (Y/N))
This entry allows the sysop to personalize the question asked the caller at
the time they request the (C)omment command. Since all comments are entered
into the current message base in use, they can be replied to as a normal

Entry # 12 - Parallel Port # (1-3)
This entry allows you to designate which parallel printer port you wish to
use. Valid entries are the numbers 1 to 3. This option allows sysops
running under networks or multi-tasking environments to have multiple
printers on-line concurrently.

Entry # 13 - Last Read Update (Y/N)
This entry allows the sysop to define how the "Last Read" message pointer is
to be updated. The two choices are: 1) "Y" - after reading a message and/or
after leaving or responding to a current message, 2) "N" - only after
reading a message. The difference between the two choices is significant.
If the first choice is made, each time a caller leaves a message or comment
on the system, it automatically becomes their "last message read" pointer.
This option is helpful for those folks who leave a lot of messages who do not
wish to re-read their own messages the next time they log onto the system.
The second choice means that a caller's "last message read" pointer is only
updated after they read a message - not when they leave a new message as
well. In either case, if the caller is doing a (R) (S), they will continue
to be shown all files in the "loop" - irregardless of whether they reply to a
message or not. This difference may appear small on the surface - but can
cause problems with your callers if they do not understand how the pointer
updating sequence works. You may wish to experiment with both types before
establishing your final option. To alter this flag, proceed to the Text Data
screen in PCBSetup and adjust "Last Read Update" to reflect your choice.


Entry # 14 - # of Message Blocks (1 to 32)
This entry allows the sysop to specify the number of 1024 message base blocks
that will be supported. Each block allows up to 1024 active and inactive
messages to be stored - based on the space between the low message number and
the high message number. The default here is 32 blocks, or 32767 main
message base messages.

Entry # 15 - Allow (Esc) codes (Y/N)
This entry allows the sysop to define whether or not the code will support
the entry/uploading of Ascii graphics messages to their system. By setting
the (Esc) code flag to "N", all chr$(27)'s are filtered as they are received
from either the caller or the local keyboard. This filtering is performed
during message/comment entry, sysop chat with a caller on-line, and during
Node CHAT activities as well. Note that only the chr$(27) is filtered out
and replaced with a NUL character. The associated (Esc) codes - such as
"[32m" are not filtered - which means folks that actually performing a
graphics file upload to a board which does not support the (Esc) codes will
end up leaving quite a "messy" message. However, the message will not cause
subsequent callers to have their displays altered by a message which uses
graphics control. If filtering is specified, ANSI codes which could also
cause your keyboard to be redefined by a remote user are also disabled!

Entry # 16 - Allow "cc:" Msgs (Y/N)
This flag should be set to "Y"es if you wish to allow user's to leave "carbon
copies" to one message to more than one person. For example, if the caller
wished to leave the exact same message to several individuals, this flag must
be set to "Y" in order for the function to be available. Then, when they go
to save a message, they can specify an (SC) command ("save with carbon copy")
instead of just a plain (S) (save) command. Note that the (SC) prompt is
only displayed to the user if this flag has been set to "Y" and if the user
is in expert mode. User's who are not in expert mode will not be shown the
(SC) option at the time they can save their text - however, if they were to
enter (SC) at that point, the command will function properly. The intent of
the (SC) command is to support the more experienced users and business
environments where a larger number of "private" messages must be left to
several individuals.

Entry # 17 - Validate Msg "To:" - (Y/N)
This flag allows the sysop to decide whether to perform a username validation
on names entered when entering a message. All user names except "ALL" and
variations of the word "SYSOP" are validated against the user's file. If a
caller is inside a conference, the name of the user to who the message is
being addressed is also checked to insure they are registered in the
respective conference. If not, the caller is advised of such to help avoid
the leaving of a message to another caller who will not be able to read it.


Screen 8 - Switches and Stuff

Entry # 1 - Disable Screen CLS After 3 Min (Y/N)
Set this value to "Y" if you do NOT want your "call waiting" screen to
clear after 3 minutes of inactivity.

Entry # 2 - Slow Modem Answer Operation (Y/N)
Set this value to "Y" if your modem is slow in its recycle operation.
This switch will probably only be required by those folks running an
older style ARK modem.

Entry # 3 - Perform Initial Modem Reset (Y/N)
Set this to "Y" if you want the modem to have a "soft" reset (ATZ)
performed on it prior to the sending of the modem initialization string. It
is not recommended that you use this switch unless absolutely necessary -
since it will markedly slow down the recycle time - as well as possibly
generate conflicts with incoming ring detects.

Entry # 4 - Upload Buffer Size (8)
This variable, in blocks of 128 bytes, allows you to specify the size of an
upload memory buffer which must be filled before any disk writes occur. The
purpose of this entry is to allow folks running either a high speed modem, or
under a network environment, to buffer incoming upload data and to only make
actual writes to the disk when the buffer fills up. This variable can
substantially decrease disk activity during an upload. The default here is 8
blocks (or 8 times 128 bytes). The minimum entry allowed is 4 and the
maximum allowed is 128.

Entry # 5 - Disable Registration Edits (Y/N)
If this parameter is set to "Y", no edits will be done on the data
entered by the caller at the time they complete their initial data base
information. (i.e. Letters could then be entered in one of the phone
number fields for example.)

Entry # 6 - Answer on True Ring Detect (Y/N)
This allows you to determine whether the code should also answer the
phone when it senses true ring detect, as well as the word RING being



Entry # 7 - Disable Keyboard 5 Min. Timeout (Y/N)
This switch should be used by those folks who wish to disable the automatic
logoff feature of the software if a key is not pressed or data received from
remote within a 5 minute period. This switch is available for those sysops
running a "dumb" node in a network environment who wish to remain on the
system at all times.

Entry # 8 - Include User's City in CHAT Display (Y/N)
This flag, when set to "Y"es, means that the caller's location information as
stored in their user record, will be displayed along with their name when a
Node CHAT request is made when running version /E or higher of the code.

Entry # 9 - Eliminate Screen `Snow' (Y/N)
If your screen displays an excessive amount of "snow" during operation,
you can use this switch to eliminate it. This should only be necessary
for folks running an older style IBM CGA card or equivalent.

Entry # 10 - Disable High Order Char Filter (Y/N)
With this value set to "Y", the code will NOT perform any line noise
filtering of data received. Its purpose here is to provide a means of
international systems who are using other than the English language, the
ability to allow special high order language characters through to their
systems to correspond with their language requirements.

Entry # 11 - Disable CTS Modem Checking (Y/N)
If you get a message when running the code which indicates you should disable
CTS checking, set this switch to "Y" to disable CTS checking on your system.
Please note however, that if you disable CTS checking, you will NOT be able
to use any of the new 9600 baud modems, or any modem which requires CTS to be
active for proper throughput (such as low speed MNP modems.)

Entry # 12 - `Slide' Event Time as required (Y/N)
If this switch is set to "Y", a scheduled event will not automatically
adjust a caller's time if they log on just before the event is to run.
Instead, the event will be delayed until they complete their business
and log off the system. If the timing of your event function is not
critical, you can set this switch to "Y" - which means your event will
run when it gets a chance - as close to the specified time as possible.


NOTE: There are some conditions under which your EVENT will never run -
including, but not limited to, being in Sysop Chat mode at the time the event
was to run.

Entry # 13 - Stop Uploads When Free Space < K (0 K)
This entry allows you to set a minimum disk "free" space amount - which, if
the disk fills up to that point - will not allow any further uploads to your
system to occur. This value, specified as a K value (i.e. 300 would mean
300,000 bytes), can be set if you are short on disk space and wish to prevent
your disk drive from becoming completely full - which would of course bring
your system down. If you have a large amount of free disk space available,
you can set this figure to "0" - which means that no checking of available
disk free space will occur.

Entry # 14 - Disable `Quick' Logon Features (Y/N)
This switch allows the sysop to turn off the ability of the caller to perform
either a quick logon or quick conference join. By setting this switch to
"Y", all caller's will be displayed the appropriate NEWS file as they logon
to the system or join a conference.

Item # 15 - Disable Password Check from DOS (Y/N)
This switch allows you to disable the "Return from DOS" password check if you
desire. This will allow for a more "transparent" re-log onto your system if
the password check is disabled. Please note that most sysops can safely turn
this switch on without danger of someone getting into their system
accidentally. However, if you elect to set this switch to "Yes", the
responsibility for your system security rests entirely in your hands. CDC
will assume no responsibility for breaches of security to your system by the
activation of this switch.

Item # 16 - Networking Timeout Delay in Seconds (1-99)
This allows sysops running under a network environment to set the maximum
time delay of network "retries" before a network timeout message is executed
by the code and the function aborted. If you are running a slow network and
frequently get a "Network Timeout" error, set this parameter to a higher
value than the default of 20 seconds.

Item # 17 - Make Main Board Messages Private (Y/N)
This switch allows the sysop to determine whether they wish to automatically
have all messages left on their system default to "private security" - which
means that only the person the message is addressed to, the sysop, and the


user who left the messsage can read it.

Item # 18 - Run Board in 'Subscription' Mode (Y/N)
If you will be running a 'Subscription' (registration) board, where you wish
to limit a caller's access over a period of time, this question should be
answered as "Y"es. See additional notes under "Subcription Operations" later
in this manual.

Item # 19 - Prompt for 'User Comment' Field
This entry allows the sysop to define the "Question" which will be asked the
caller when completing the first of two comment fields which are available
for each user record. This field can be used to obtain product information,
etc. which is needed to support your system.



CNAMES is the default file used to store all conference information. The
file resides in the "\MAIN" subdirectory location and is maintained by using
the program PCBSETUP. In order to add or delete a conference using the
program - simply enter the number of active conferences in the
"Miscellaneous" screen of PCBSETUP. This will automatically adjust the
program to read and write the proper number of conference entries to the
CNAMES file. The program can automatically create all subdirectories -
including conference subdirectories - on exiting the program.

You must also have two files called CNFN and CNFNG in the "\GEN"
drive\subdirectory of your system. These files should contain the menu
information which will be displayed when a caller enters the "J" command at
the command line. This filename is hardcoded into the program and can not be
changed by you.

Only 9 conferences are allowed using this software. This figure was chosen
for two reasons. First, using a single digit integer between 1 and 9 made it
relatively easy to store and examine conference registration information.
And second, since space inside the user's file was limited, only single digit
registration characters were to be stored.

Entry # 1 - Name of the Conference (Sysops)
This is the name of the conference as it will appear at several points
throughout the program. It is recommended that the name be entered with a
capital first letter and the rest lower case to enhance program display.
NOTE: All conference names should start with a different letter if possible
to prevent conflicts if several conferences occupy the same drive location.
This is also the name of the message file inside of the conference. The name
must be one word with no extension. (8 letters max) In other words, the
conference message file would be called SYSOPS in the example shown.

The program uses the first letter of the conference name to dynamically build
several other filenames - including the conference bulletin files and
directory files.

Entry # 2 - Additional Conference D/L Path
This entry allows the sysop to define additional download path information
for a respective conference. This provides for a very simple and easy means
of protecting conference files - since only conference participants would
therefore be able to access those files. When a caller joins a conference,
this entry is concatenated to the front of the main board's download path -
therefore allowing for quick access to any specific conference files.
Likewise, when the caller abandons a conference, the additional conference
download path information is removed. Using this technique, it is very easy
for the sysop to protect conference files from unauthorized downloading by


non-conference members.

This entry allows up to an additional 160 characters to be defined. Please
insure that the total number of download paths for any one conference plus
the main board does NOT exceed 50 or your system may not function properly!

Entry # 3 - Number of Conference Bulletins (1-99)
This is the number of active conference bulletins. (Similar to the general
board information.) Conference bulletins are named and numbered the same as
main board bulletins - with the exception that the first letter of the
conference name must precede the BLTxx. In other words, the sysop's
conference example would have SBLT1, SBLT2 and SBLT3 as its actual conference
bulletins. Additionally, you need two more bulletin menu listings for the
conference - SBLT and SBLTG - which contain a description of the bulletins
available in that conference. All of these files must be located inside the
conference subdirectory specified below.

Entry # 4 - Number of Additional File Directory Listings (1-99)
This is the number of additional file directories used to store conference
file information. The actual directories are named the same as the main
board files with the exception of adding the first letter of the name of the
conference to the file name. (i.e. SDIR11, etc.) The actual directories
should be numbered starting at 1+the number of main board directories up the
number specified. In the example(s) listed so far where the main board had
ten (10) directories, all conference directories would begin with the number
11 - up to the maximum number of additional files - in this case 4 or SDIR14.
The Games conference would only have two additional directories - (GDIR11 and

You must also have a new file directory listing menu called 'DIR' which also
has the first letter of the conference prefaced to it. In the case of the
sysop's conference, you would need two files - SDIR and SDIRG (color version)
which would show the caller the 10 regular board file listings plus the
additional 4 conference listings.

Each conference must have its own xDIR and xDIRG files just like the main
board. All conference file directory listing(s) must be located in the
conference subdirectory indicated below. Remember, the high number
conference DIR file will be where all conference uploads are placed if the
caller uploads a file in the conference and places conference security on it.

NOTE: If the value of this entry is set to "0", all uploads inside the
conference will default to the main board's upload DIR location. In other
words, the file itself will be placed in the location specified for the
conference, but its description will be placed in the main board's upload
directory listing.


Entry # 5 - Conference Private Upload Flag (Y/N)
This flag determines whether uploads to the conference will be placed in the
sysop's private upload directory or in the conference upload directory. If
the caller specifies that a file should have conference security and the
conference flag is set to private - "Y", the upload description will be
placed in the sysop's private upload directory for that conference (which is
a DIFFERENT private file than that used by the general board!) The name of
this private file is the word "PRIVATE"+the first letter of the conference
name. For example, the sysop's conference private upload directory would be
called PRIVATES. The game's would be PRIVATEG.

You can have several combinations of main board/conference 'private' flags to
suit your needs. For instance, you can have a private main board upload
directory and a 'public' conference upload directory - or visa versa. If the
user places a "/" in the file description entry - it too will be placed in
the conference private file (if they have specified conference security!).
If they do not specify conference security, the description will be placed in
the main board's upload directory (private or public) as necessary. The
bottom line is this. The file description can be placed in any one of FOUR
locations depending on how you have your main board and conference 'private'
flags set - and/or whether the caller uses the "/" as the first letter of
their upload description! Again, if an upload directory does not exist - it
will automatically be created by the program so that no upload information is
lost!! To help out with this somewhat confusing structure, the program has
been designed to visually show the user where his file description is being
placed and its display status (screened or public). Hopefully this will help
eliminate some questions from your users (or you) on where their file went!
Again, if the value of the previous entry is "0", the upload will be placed
in the conference upload drive location - but the description will appear in
the main board's upload directory listing.

Entry # 6 - Auto-Rejoin Conference on Next Call (Y/N)
This flag determines whether a caller will automatically be placed back
inside the conference they have hung-up in. If the user hangs up from the
main section of the board - they will not be returned to a conference - even
though the flag is set at "Y" for yes. Only if the flag is set to "Y" AND
the caller hangs up inside the conference will they be returned automatically
to it the next time they call. If the flag is set to "N" for no, the caller
will not automatically be returned to the conference on their next call.

Entry # 7 - Conference File Upload Directory (C:\PCB\SYSOPS)
This is the drive\subdirectory where all files which are specified as having
conference security are placed. The drive designation is NOT optional.
Uploads on which the caller does not place conference security go to the main
board's upload location - not the conference's. Remember to set the value of
the Number of Conference DIR's greater than "0" if you wish the uploaded
file(s) descriptions to also be placed in the conference along with the file


- otherwise the description will be placed in the main board's upload DIR.

Entry # 8 - Conference Drive/Subdir Location (C:\PCB\SYSOPS)
This is the physical drive location of all conference files including the
conference message file which has the same name as the conference - i.e.
SYSOPS in the case of the sysop's conference, and also the files below:
(Sysop's conference used for example only!)

SYSOPS (Conference message file)
SDIR & SDIRG (Directory Listings)
SBLT & SBLTG (Bulletin Listings)
SDIRxx - SDIRxx (Actual conference file directories)
SBLTxx - SBLTxx (Conference bulletins)
PRIVATES (Conference 'private' directory)

The drive designation is optional.

Entry # 9 - Additional Conference Security Level (Definable)
This is the amount of ADDITIONAL security you wish to give users when they
join a conference. If you wish to award them none - enter a zero (0). This
additional security is only effective while they are inside the conference.
Once they leave - or jump to another conference - they loose that respective
conference's additional security level.

Entry # 10 - Additional Conference Time Allocation (Definable)
This is the ADDITIONAL amount of time a caller is granted (in minutes) when
they join a conference. The program will add the additional time for each
conference up to the limit of the highest time allowed for all conferences in
which the caller is registered and joins during that call. The time is not
taken away from the user if they exit to the main board. If a caller is
registered in two conferences, one which gives an additional time extension
of 20 minutes and the other gives 10 minutes, they will always benefit from
the greatest amount of time which can be granted. For example, if the caller
first joins a conference where 10 minutes of additional time is added and
then joins one where 20 minutes of time is added, they will receive an
additional 10 minutes of time when they join the second conference after
receiving their initial 10 minutes when they joined the first conference.

Entry # 11 - Allow Viewing Other Conference Members (Y/N)
This option allows you to decide whether conference members can view the
other members of the conference as they log into the conference. By setting
this flag to "N", the names of the other conference members can not be seen.


Entry # 12 - Make Conference `Mini' BBS (Y/N)
This entry allows you to specify whether you wish to make the conference
function as if it were a `Mini' BBS in and of itself. If you respond with a
"Y" to this prompt, the code will look for specific conference menus and
DOORs files rather than using the main board's menus and DOORs files. The
default is to NOT run the conference as a `Mini' BBS and instead use all of
the main board's menu files, etc. However, under certain situations, you may
wish to restrict either the main board or respective conference commands
available. The use of this flag allows you to create command menus which are
specific to that conference. Note that each conference can have its own set
of menus, or use the main board's as desired. If this flag is set to "Y",
four additional files must be present in the conference drive\sub.

They are:


which correspond to the main menus, with the exception that the first letter
of the conference must preface the name. For example, if you wished to have
separate conference menus for the Sysop's conference, the filenames would be


and would need to be located in the Sysop's conference area of the drive. If
this entry is set to "Y", and you are running DOORS, please refer to the
chapter on DOOR operation - since your configuration may also require the
creation of separate conference DOOR files as well.

Entry # 13 - # of Conference Message Blocks (1 to 32)
This entry allows the sysop to specify the number of 1024 message base blocks
that will be supported. Each block allows up to 1024 active and inactive
messages to be stored - based on the space between the low message number and
the high message number. The default here is 32 blocks, or 32767 conference
message base messages.

Entry # 14 - Keep Uploads Inside Conference (Y/N)
This entry allows you to specify whether a file uploaded to your system by a
caller who is in the conference will automatically go to the conference
upload DIR, or whether the caller will have the option of specifying the
location of the upload description. If this flag is set to "Y", all upload
descriptions inside that conference will automatically default to the


conference upload DIR and the caller will NOT be asked if they wish to place
conference security on the file. If the flag is set to "N", the caller will
have the option of placing conference security on the file, or to allow the
upload description to go to the main board's upload DIR instead. If this
flag is set to "N", and the caller places conference security on an upload at
the time the upload is performed, the file description will be placed in the
highest numbered conference DIR file available.

Item # 15 - Make Conference Messages 'Private' (Y/N)
If this field is "Y"es, all messages left inside a conference will be
"recevier" protected - in that only the person the message is addressed to,
the sender of the message, and the sysop will be able to read the message.



Download File Security (FSEC File)
"FSEC" is the default name of the file used to store download file security
information. The file should be maintained and built using a text editor.
It must be located in the "\MAIN" drive\subdirectory location. The format of
the file is:


NOTE: You MUST have an entry for each variable in each line of the file. If
you do not have anything to enter, just place a comma in the file to
delineate the variable.

For instance - to protect all the 'private' sysop download file(s), you could
have a line reading...


Note that if you do not specify a path, all files on the system in the
download path passed to the program in the main PCBOARD.DAT file will be
included in the check. If the file was found on another drive before getting
to the 'D:\' drive, the file security check indicated above would not be used
and the file could be downloaded.

You can also specify subdirectory information in the path as well. For
example, an entry of:


would mean all files in subdirectory 'C:\PCB\SYSOPS' would require a security
level of 100 or higher, and the user would have to enter the password of
'TEST' in order to download the file. Note that the password must be entered
in capital letters!


If a password is specified, the user will have to enter the proper password
in order to download the file - even though their security level is greater
than or equal to that required. If the user's password is the same as the
download password, they will not be asked to enter the file's password. If
their security level is less than the level indicated, they will not even be
asked to enter the password - they will simply be denied access to the file.

When building this file, be sure and place your file security entries in


proper order. For example, consider the following:


The first entry allows the PCBOARD.DOC file to be downloaded by all callers.
The second entry restricts all callers except those with a security level of
100 or greater from downloading any of the other PCBOARD files. All entries
MUST be in capital letters!

Upload File Security (UPSEC File) (Optional)
The software also allows the sysop to control any uploads to their system by
drive location, filename, security level, and password protection. The file
which contains upload restriction information is called UPSEC and should be
created using a text editor and placed in your "\MAIN" drive location. The
format of the file is exactly the same as your current FSEC file:


Here is how it works. Let's say a sysop wants to allow only *.ARC uploads to
their system. In that case, they want to prevent any file other than a .ARC
file from being uploaded. By placing in the UPSEC file a listing of those
files which are NOT wanted, the sysop can allow only the .ARC uploads to
occur. For example, in the above instance, the UPSEC file might appear as


What this example says is that any file with a .EXE, .COM, or .TXT suffix
would only be allowed if the caller's security level was 100 or above.
Otherwise, the caller is displayed the message:

Uploads Not Accepted on File Format (*.EXE)

if for example they attempted to upload a filename with the extension of
".EXE". If you include the generic (*.*) format, the caller would get the

Uploads Not Accepted on File Format (*.*)

which does not tell them a whole lot about why their upload is not being
allowed. Therefore, it is suggested that you do NOT use a (*.*) format in
the file. However, you can prevent all filenames which have NO extension
from being uploaded by using the entry:


This example says that a caller must have a security level of 100 (no


password), to upload any filename which does not have an extension.
Additionally, you can add both password and drive location information to the
file if desired to restrict only certain groups of people from uploading
certain files. Remember, security level protection has precedence over any
password protection. The only time a password will be asked is if the
caller's security level is equal to or greater than that of the file
requested. If their security level is less than that of the matching file
format, they will be displayed the message that the upload file format is not
acceptable. However, the majority of sysops will probably only wish to
implement the *.XXX and security level information in the file. Note that if
the code does NOT find the UPSEC file, all uploads will be allowed.



"PWRD" is the default name of the file used to store the security level, time
allowed information, and download byte limitation for callers. It can also
include any logon password information you may wish to specify.

CAUTION: You must have a matching security level for every level assigned to
a user inside your data base. If the code does not find a matching entry in
the PWRD's file, it will write a message to your caller's log indicating

Each line of the file consists of the following...


 December 25, 2017  Add comments

 Leave a Reply

You may use these HTML tags and attributes: <a href="" title=""> <abbr title=""> <acronym title=""> <b> <blockquote cite=""> <cite> <code> <del datetime=""> <em> <i> <q cite=""> <s> <strike> <strong>