home *** CD-ROM | disk | FTP | other *** search
- Turbo BBS Version 1.05 - System Operator Notes - Page 1
-
-
- 1 - Features:
-
- - Self-contained Message and Files system written in Pascal;
- - Program not operating system dependent;
- - Information files editable with WordStar;
- - Variable Terminal width with word-wrap;
- - User profile (password, terminal parameters) kept on file;
- - Real-time clock time stamping of files and messages;
- - Private and public messages supported;
- - Can be configured as a private BBS;
- - Variable access levels available;
- - File and message sub-sections for easier user access;
- - All uploaded files stamped with name of contributor;
- - Number of accesses of each file recorded;
- - XMODEM protocol (CRC & checksum) fully supported;
- - Calls logged with sign-on and sign-off times;
- - Comments to System Operator (Sysop) file;
- - Supports squeezed and library files;
- - Directly drives serial port hardware.
-
- 2 - System files: The following files are included in the Turbo
- BBS package:
-
- * Required to compile the program: BBS.PAS
- BBS2.INC
- IO.INC
- MACHDEP.INC
- MAILSYS.INC
- FILESYS.INC
-
- The above .PAS file must be on the logged drive, and the .INC
- files on drive A: when compiling!
- The BBS program should be compiled to a .COM file.
-
- * Required on the default drive to run the compiled BBS program:
-
- BBS.COM (obviously);
-
- * The following files are created automatically on the default
- drive (space should be reserved for them).
-
- MESSAGES.BBS - the system message table: contains records for
- each message giving user numbers of sender and receiver, subject,
- time stamp, message and section number, and whether the receiver
- has read the message or not. This table is loaded into a RAM
- buffer whenever the system is active (ie. caller on-line), and
- restored to disk at sign-off.
-
- FILES.BBS - the table of files available on-line. Each file has
- a record noting name, size, contributor, access count, section,
- and whether the file is private or public.
-
- LOG.BBS - Call Log, holding Caller, time on and time off info,
- (providing the clock routines are enabled).
-
-
-
-
-
-
-
-
-
- Turbo BBS Version 1.05 - System Operator Notes - Page 2
-
-
- COMMENTS.BBS - Contains comments to Sysop, includes caller name
- and time stamp. Comments are set to a 15 line maximum length by
- the [G]oodbye command, and limited to 4 lines by the [A]pply
- command.
-
- IDS.BBS - Contains registered user names, passwords, access
- levels, terminal parameters, last call date and high message
- number.
-
-
- The following text files containing on-line user information are
- expected in a library B:BBSINFO.LBR.
-
- WELCOME.TXT - The pre-sign-on user welcome file. Should give
- details about the system's features, hours, and policies, as well
- as any news about new system features. Newest bulletins should
- occur first in a file so frequent users do not have to read long
- stretches of familiar information to get the new stuff. This file
- is also listed by the W (Welcome) command.
-
- BBSHELP.TXT - The on-line Help file, containing the system
- commands and user hints. Also should list the subcommands for the
- commands that support them. This file is listed by the H (Help)
- command.
-
- BBSLIST.TXT - Contains a list of other remote access systems of
- interest. Listed by the O (Other systems) command.
-
- SYSINFO.TXT - Gives information about the equipment running the
- BBS, and general information about the BBS. Listed by the Y
- (sYstem information) command.
-
- MEETING.TXT - Provides user with information as to scheduled
- user group meetings in the area.
-
- APPLYING.TXT - Listed by the [A]pply command. Gives information
- on what is required to increase user access level.
-
- MAINMENU.TXT - The BBS main menu.
-
- EDITMENU.TXT - The message editor option menu.
-
- READMENU.TXT - The read-messages option menu.
-
- FILEHLP.TXT - The files system command help file. Gives
- information on how to use files system commands.
-
- FILEMENU.TXT - Files system command list.
-
- BULLETIN.TXT - Bulletins about system changes, or any other
- information of interest to users.
-
- All messages are stored in individual text files, using the
- file name MESSxxxx.TXT, where xxxx is the message number. All
- .TXT files are expected on the default drive. They can be edited
-
-
-
-
-
-
-
-
- Turbo BBS Version 1.05 - System Operator Notes - Page 3
-
-
- using WordStar, in the Document mode. The BBS program is set up
- to ignore the WordStar "soft" carriage returns and line feeds, so
- the word wrap output driver of the BBS can format the file to
- suit the user's terminal.
-
- Messages stored by the BBS editor can be in two formats: one
- contains "hard" carriage returns so special formatting used in
- message entry is preserved (P subcommand in E command). The other
- contains NO carriage returns, which are inserted by the output
- routine as needed. Editing a message created by the latter option
- with WordStar will show the entire message as a single line: ^B
- will fix this by inserting soft carriage returns which the BBS
- will ignore.
-
- The top of the include file MAILSYS.INC defines a constant
- called "maxmess," which defines the maximum number of messages
- that can be held at one time on the system. The distribution
- version sets this at 52, which corresponds to the maximum number
- of files available on a Kaypro 2 disk (64) minus the number of
- support files on the default drive. This limit can be increased
- if a larger directory is available, but remember that the message
- table is buffered in RAM and so each message uses 43 bytes.
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
- Turbo BBS Version 1.05 - System Operator Notes - Page 4
-
-
- 3 - Installing the BBS on your system
-
- The machine specific codes is contained in the include file
- MACHDEP.INC. All system serial I/O is routed through these
- routines. The distribution version was written for a Rixon 212A
- Intelligent Modem.
-
- To properly install the BBS, it is necessary to know how to
- properly program and control the serial port. Since most
- operating system drivers to not allow access to reading the CTS
- (Clear To Send) line, this is necessary... It is unreasonable for
- the BBS to be expected to capture and comprehend the "NO CARRIER"
- or equivalent string from a smart modem. In particular, you must
- know how to read the CTS line, control the RTS line, detect the
- input buffer full signal, and the output buffer empty line. Also,
- remember the character data send and character data receive
- functions! To allow XMODEM transfers, it is necessary to set up
- for 8 bits, no parity, and one stop bit.
-
- Since the system expects to use the CTS line as a carrier
- detect line, it will be necessary to ensure that the modem does
- send a suitably readable signal for this purpose. The Rixon
- initialization string does this. On Hayes Smartmodems, this is
- controlled by a switch that must be set so the CTS line reflects
- an on-line status. The DSR or DCD lines, if available and
- satisfactory, can be used: just read that line in the cts
- function in MACHDEP.INC.
-
- The modem should also disconnect when the system lowers the
- DTR (Data Terminal Ready - RS-232 pin 20) line for 400
- milliseconds. If this feature is not available, another reliable
- disconnect method must be found and implemented in the procedure
- hangup in MACHDEP.INC. The DTR line is also lowered when the BBS
- has been accessed locally to inhibit the modem's auto-answer
- function. The procedures setlocal and clearlocal (IO.INC) will
- require editing if this feature is not supported by your modem.
-
- If your system has a real-time clock, the routines in the
- include file MACHDEP.INC must be adapted to use it. Once again,
- the distribution file uses the Kaypro 4-84 clock. The Kaypro 2-84
- normally omits this, but the CPU board has the necessary hardware
- to implement it with the addition of a few parts. If the system
- lacks a real-time clock, the clock-related features can be turned
- off by setting the constant "clockin" to FALSE at the beginning
- of the BBS.PAS file. If you have no clock, DO NOT attempt to
- remove the clock support code from MACHDEP.INC or IO.INC! While
- the routines won't be used, they must be present for compiling.
-
- If the special interest sections feature is not wanted, set
- the "sectsin" constant at the beginning of BBS.PAS to FALSE. The
- Section names are defined at the beginning of MAILSYS.INC. Future
- updates of the Turbo BBS will offer either password protection or
- individual user access flags for protected sections. It is
- possible to not use sections in the BBS at first, then implement
- them later, since all files and messages in a system without
-
-
-
-
-
-
-
-
- Turbo BBS Version 1.05 - System Operator Notes - Page 5
-
-
- sections are placed in section 1 (Default: General).
-
- The BBS program must be compiled into a .COM file by using
- the Turbo Pascal "O" (Options) command: it is too large to
- effectively compile into memory.
-
- If your system lacks sufficient memory to run the BBS
- program as distributed, it will be necessary to overlay the files
- system with the message entry editor. This is done by putting the
- word "overlay" immediately before the procedure declaration of
- the enter routine (near the end of MAILSYS.INC) and the filesys
- routine (the file FILESYS.INC). (In addition, the procedure
- sysoponly at the beginning of BBS2.INC can be made into another
- overlay, which will save even more space.)
-
- That is, change procedure enter;
- to overlay procedure enter;
-
- and change procedure filesys;
- to overlay procedure filesys;
-
- and change procedure sysoponly;
- to overlay procedure sysoponly;
-
- For this to work properly, it is absolutely necessary to avoid
- putting any new procedure/function declarations at the end of
- MAILSYS.INC, the beginning of FILESYS.INC, or between {$I
- MAILSYS.INC} and {$I FILESYS.INC} in BBS.PAS!
- (Note that using overlays will create 1 more file on the default
- drive: adjust the maximum number of messages as required.)
-
- The number of files in the file system is limited by the
- fact that the directory table is buffered in RAM. In the
- distribution version, a limit of 40 is set due to the fact that
- the Kaypro 2's disks have a mere 191K capacity (All "freeware"
- contributions go to the Hard Disk fund). To expand the number, it
- is necessary to change the filetab array declaration and change
- the number in the procedure newfile. Future versions will set
- this limit with a compilation constant. Each file in the
- directory uses 39 bytes of memory. Future versions will allow
- large directory files to be read directly from disk (at the
- expense of operation speed). (Please remember that the BBS was
- NOT originally written for distribution!) The BBS puts all files
- on the "B:" drive. To change this, you must change the constant
- "filedrive" in BBS.PAS from 'B:'.
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
- Turbo BBS Version 1.05 - System Operator Notes - Page 6
-
-
- 4 - Running the system
-
- Once BBS.COM has been compiled successfully, it must be
- placed on the correct drives with the library of .TXT files
- listed previously in this document. The first thing the program
- should do when run is initialize the modem.
-
- Usernames and passwords are always mapped to capitals by the
- BBS to avoid errors. SYSOP's access level is set to level 5
- automatically on first sign-on. This allows master control access
- to the first person to use this name: BEWARE! To sign on locally,
- press the 'ESC' key on the host keyboard when the "Waiting for
- call..." string appears. You can then sign on and test out the
- system. The first thing to do is make your password something
- VERY secure: the system supports certain features for Sysops that
- are best not made available to the general public.
-
- The BBS main program supports two commands not listed in the
- menus. They are "!" and "@". "!" is the printer switch: if a user
- with level 5 (Sysop) access uses this command, system output is
- also sent to the lst: device, until another "!" is entered. "@"
- is the sysoponly procedure containing the comments file reader
- and ID access editor. This routine prompts for input with a
- single question mark ("?"). There are three commands supported.
- The first command is "C", which plays back the system's user
- comments file. After the file is displayed, a "Kill (Y/N)?"
- prompt appears, allowing the sysop to delete the file. The second
- sysoponly command is "L", which is the access level editor: the
- system will ask for a user name: if it is in the userlist, that
- user's current access level will be displayed, and you will be
- prompted for a new user level (pressing only RETURN changes it to
- 0). The system will loop through the Name/Access prompts until a
- non-existent user name is entered, whereupon the command ends.
- The last sysoponly command is "!", which is identical to the "!"
- printer switch in the main menu.
-
- Several commands contain Sysop extensions: the L (call Log)
- command gives a "Kill (Y/N)?" prompt to level 5 users. The U
- (User list) command shows the access level of each user. The
- R (message Read) function prompts "Delete (Y/N)?" after each
- message read. Furthermore, all messages are visible to the Sysop.
-
- The file system also contains extensions for the Sysop.
- These are the I, E and K commands. I is used to Install a file
- that is on the files disk but not in the BBS directory, so the
- Sysop can "upload" files by just copying them onto the Files
- disk. E edits a file's header, allowing the sysop to rename the
- file, change the name in the contributor field, change the
- section in which the file is stored, and to release a file. When
- a file is released, the public flag in the directory becomes
- "true". All uploaded/installed files are initially private, and
- do not appear on the BBS directory to anyone without level 5
- access. Level 3 users have the ability to access private files
- provided they know the file name. Any files on the files disk
- that are not in the BBS directory are totally unaccessable, but
-
-
-
-
-
-
-
-
- Turbo BBS Version 1.05 - System Operator Notes - Page 7
-
-
- cannot be overwritten. The K command deletes a file from the
- directory table, and erases the file.
-
- The top of the FILESYS.INC file contains a number of options
- that should be set up to match your system, such as the files
- drive capacity and the minimum increment of file size in Kbytes.
- If your system can store in increments of less than 1K bytes,
- then set the increment to 1K: this will allow a nearly full disk
- to have a negative amount of disk space remaining, but is
- otherwise harmless.
-
- The program is made to act as a private BBS simply by
- setting the constant "openBBS" in BBS.PAS to false. This has the
- effect of hanging up on any REMOTE user who attempts to sign on
- without supplying a registered username within three attempts.
- New users must be signed on locally first, before their names
- will be permitted for remote access.
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
- Turbo BBS Version 1.05 - System Operator Notes - Page 8
-
-
- 5 - General Information
-
- This software and its associated documentation and support
- files are released to the public domain by the author. It is not
- to be distributed commercially or re-sold for profit without
- prior permission from the author. If you feel the software is
- well-suited to your purposes, and would like to be informed of
- any updates or new versions, please send $30 to:
-
- Robert H. Maxwell,
- 201-2275 West 7th Avenue,
- Vancouver, B.C. CANADA
- V6K 1Y3
-
- This contribution entitles you to support, error correction, and
- updates. Customization of the code for specific purposes is not
- included, but can be made available at extra cost. It would be
- appreciated if the specifics of the system you plan to run (phone
- number, hours, baud rates, etc.) were also included, so any
- improvements YOU make can be observed and possibly included in
- updates. Also, a compilation of systems using this BBS will be
- maintained on the Vancouver Turbo BBS from this information.
-
- The original Turbo BBS is on-line in Vancouver 24 hours a
- day at 300 or 1200 baud at (604) 738-7811. If the BBS is not
- available, another computer is usually on-line to report the
- reason for the unavailability and when the BBS will return.
-
- For fastest response to questions or problems, it is
- recommended you use the Vancouver BBS. Slower response is
- available through CompuServe's Borland SIG, where the author's
- PPN is 70206,174. The use of voice calls is not appreciated until
- the details have been arranged.
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-