Zelch Bulletin Board System Software Documentation - Page 1 of xx ------------------------------------------------------------------ I Zelch Bulletin Board System Software Documentation I ------------------------------------------------------------------ Version 3.1 Written by and (c) 1988, 1989 by Bo Zimmerman Documentation written by Bo Zimmerman and Ken Thompson COPYRIGHT & DISTRIBUTION NOTICE: This software and documentation package are copyright by Bo Zimmerman and Planet, Inc.. All rights to the program remain with the author. It is illegal to own a non-authorized copy of this software. Those systems and operators of said system found operating this software in violation of this statement will be prosecuted to the fullest extent allowed by law. NOTES: * Before you get started, please take the time to backup all disks that came with your system. As with most disk-intensive operations, it is VERY important that, as you operate your bulletin board system (BBS), you take the time to backup your data files. We recommend that this become a weekly activity, for your sake and for your users' sakes. Your data disks will only need this backup done with this frequency. * It would also be wise to prepare disks at this time for your system. You will require formatted disks for all drives you plan on using with your system. You are about to consume a great deal of information regarding the operation of this system. It isn't as tough as it seems! Keep in mind that you are about to utilize this program to permit other computer operators access to YOUR system. Any illegal activity that you permit on your system is YOUR buisness. Planet Inc., and its members, does not take any responsibility for, nor do we condone such illegal activities If you have never operated a bulletin board system, it would be to your advantage to first read the file 'FIRSTBBS', before you continue. If this is not your first BBS, please continue with the rest of this documentation. SOFTWARE INTRODUCTION The Zelch bulletin board system software is written and copyrighted by Bo Zimmerman. The software itself first appeared as Zelch V1.0 on February 16, 1987. The software was first used on the Alley BBS of San Antonio, Texas, and presently as the Zelch BBS of Tucson, AZ. Other systems that are running this software will be listed in a file on the Zelch BBS. This software is quite similar to several that are currently in existance. We feel that this system has more to offer, for less money! We hope that you feel the same way. This version (3.1) has been substantially revised from Zelch Bulletin Board System Software Documentation - Page 2 of xx earlier versions of this software. Some features have been tried, and eliminated, others recently added. We hope that with each upgrade of the system, you send us your thoughs and ideas for making our program a better one! SYSTEM SPECIFIC INFORMATION The equipment necessary to operate this software is as follows: o Commodore 64 or Commodore 128 (in C64 mode) personal computer. o Up to four serial disk drives (1541, 1571, 1581 or any combination with device numbers 8 thru 11) o A serial printer (optional) o Auto-answer modem (1650, 1660 with auto-detect feature, 1670 new or old, or compatible.) The BBS is capable of 24 hour operation, which is the preferred method. However, part-time BBS operation is also an alternative. SYSTEM SET-UP AND FEATURES Your BBS will consist of two 5 1/4" or one 3 1/2" disk, a SYSTEM DISK, and the MAIN DATA DISK (If you ordered a 3 1/2" disk, all files will be on one disk, the SYSTEMdisk. The directory of this disk will show the system files and the data files.). The system disk holds all the programs that you load to set up your BBS. The main data disk holds all files necessary for system operation while it operates. The system disk should remain write-protected and unchanged while the main data disk stays notched and contains some example files which may be altered as needed. In Appendix 1, you will find a list of the files that make up the Zelch BBS. Files that are sequential (SEQ) datafiles can be changed to suit individual preferences. It is highly recommended that you don't alter program (PRG) files. OFF-LINE EDITOR FUNCTIONS The first step in setting up your system is informing the software of your system requirements. This involves the off-line editor program. To load editor, type: LOAD "EDITOR 3.1",8 The program will load. When you RUN the program, at the first prompt... prompt insert your duplicate of your MAIN DATA disk into drive 8. Press '1' after the disk is in the drive. Zelch Bulletin Board System Software Documentation - Page 3 of xx The first stop is filling in the variables that are specific to your system. You are about to edit the information held in the "variables" file. N)ame of BBS - Name of your BBS. L)ibrary device - Device (drive number) to hold your library or text files. MODEM - Type of modem you're using. M)ail device - Device to hold user to user mail. C)ommand - Editor for the individual functions available from the main command section. Each function (which you may want to view to learn more about before changing) may be changed. You are changing the letter required to reach that option and the access level or higher to use that option. +)MSG MKR - As above for the message maker functions. -)UD - As above for the transfer section functions. )Msg Base - As above for message base functions. S)ig System - An editor for the number of message bases you have, and for each individual SIG, the name of the SIG (usually describing its use), the access level required to go into that SIG, the device number on which messages for that sig will appear, and the max number of Posted Messages (not counting responses to messages) for each sig. If more messages are posted than allowable by the last function, then the system will recycle the messages. U)D - As above for transfer section, without the cycling system, of course. P) - As above for ON-LINE PROGRAM section or the SUBSECTION. T)ime/Calls - The number of calls per day and minutes per call allowed for each access level. @)Modem - Type of modem you use. ) Color cycle editor - Each line output in the BBS that has been defined to honor the color cycle will be a different color. The next color a line will be depends on the colors you choose. Choose a new color using the CTRL/NUMBER and C=/NUMBER keys to change. (Example: CTRL/3 to change to red.) Q)uit - Leave this section of the editor WITHOUT saving your changes. *)Save and quit - Leave this section of the editor after saving the changes made. Now, type (Q) or (*) and then '2'. This section edits your user log. You may Zelch Bulletin Board System Software Documentation - Page 4 of xx also create a new user log, deleteing all old entries therein. Edit,View,Add users or Exit. It is preferable to edit users from within the BBS. This user editor is crude, but effective. Now, type '5' The last function is VERY neccessary. When you have decided on how many SIG's you want and the number of messages in each SIG, you will then come to this section and create a "Sig" file for each SIG. After you have created a record file for each SIG, do NOT use this function againUNLESS you have deleted all of the messages in the SIG and wish to change the Max messages in that sig (first from the "variables" editor), or if you have added a new SIG and wish to create a record file for it. Make sure the SIG has already been created in the "variables" editor!! SYSTEM BOOT-UP After this set-up is complete, you are now ready to load and operate your system. To do this, simply type... LOAD "ZELCH",8 ...and RUN the loader program for the BBS. Press RETURN and answer all the preliminary questions. Typing "Y" to the "Printer On?" option forces a list of users who have called and when they logged on and off to be sent to the printer while a user is online. After all the questions are answered, just sit back and wait for the BBS to load. When you get the 'insert data disk' prompt, insert all data disks into their proper drives. Turn on all drives and press RETURN. WAITING FOR CALL Screen The screen you see now means that the BBS is waiting for a caller to call. The F3 key will let you log onto the board as if you had just called at 9600 baud. This is called LOCAL mode. We will look at this later. Right now, press F1. 1) Returns you to the waiting for call screen. 2) Enters 'monster mode'. This mode can be entered from here, in which it has no effect on the date, or by time default. At 11:00pm, the BBS automatically goes into monster mode. It first updates the "Calls" file (which MUST be updated every 24hrs), changes the date if needed, checks for users who havn't called in 45 days, (writing the "delete!" file if neccessary), and validates the drives. 3) Zelch (Zap) term - when inside the active term, F3 changes automatically from graphics term to standard ascii. If you are in the wrong mode when calling another BBS, the letters will be in the wrong case. To find out which Zelch Bulletin Board System Software Documentation - Page 5 of xx mode you are in at any time, press F2 and then return to the term. The term will also let you change baud rates from 300-500 (if you have chosen 300 baud mode or are using a 300 baud modem). To return to 300, either use this option again or use the RESET Term option. The term also allows PUNTER PROTOCOL in upload and download, and will return to the BBS whenever the RETURN TO BBS option is chosen. The term also has options for sending disk channel commands and allows the sending of a SEQ file to the modem. 4) Views your feedback left by users. 5) Views the Log. (Log!) file. Type '1' and F3. Hit RETURN. After the opening message is viewed, you may type "1" as your ID number and "pass" as your password. Your password is changable from within the BBS. If a user is calling for the first time, he will type "new" at the ID prompt and will go through the new user process. You may want to log on as a new user and then delete it later just to see how the new user process works. Notice the contents of the various files used in this process. The "newinfo" file is viewed from the SysOp section only. Now your window sets up. The window never goes away and the information therein is true only untill it changes during the natural course of the BBS. At prompts such as the COMMAND prompt you see below, these commands are available to the sysop from the keyboard. F1 - enter chat mode. This stops the BBS exactly where it is and enters a mode of free typing. F7 exits chat mode and returns to WHEREEVER you were previously. If things seem to have stopped suddenly, it may be because you mave entered chat mode. If you have trouble exiting chat, try to remember where you entered it from. If it was a section where you had to type "y" or "n", you may have to type F7 to exit and then "y" or "n". F2 - This key does nothing. F3 - This lets you temporarily raise the access of a user. F4 - Time burst gives the current user 255 minutes online. Useful if a user only has 1 minute left and you want him to stay longer. F5 - SubOp access changer. See the section on SUBOPS for the proper number to enter here. F6 - Enters local mode while a user is online. Inside this, you may use the BBS without interference from the user online. The user will remain online, but is unaware that you are doing anything. Entering chat mode exits this function. Chat mode also exits the local mode that is entered from the waiting for call screen. F7 - This key does nothing. F8 - autologoff - This kicks any user that is on-line off, no matter how much time he has left. Zelch Bulletin Board System Software Documentation - Page 6 of xx Within parenthesis is the most frequently used letter for this function. INFO (I) - Typing "I" or whatever letter you chose for this function, views the "info" file. FEEDBACK (F) - Lets a user leave feedback to the sysop. OFF (O) - Lets a user log off your BBS. CHAT PAGE (C) - Makes a noise that alerts the sysop to the fact that the current user wishes for the sysop to enter chat mode with him. STATUS (S) - Views the current status of the user online. BAUD CHANGE (B) - Lets a user who has called originally at 300-500 baud to change his baud rate. VOTE (V) - Lets the user vote on the current subject. This section is edited from the SYSOP section. LIBRARY (L) - Lets a user view your LIBRARY or TEXT files. EMAIL (E) - Lets a user send mail to another user or recieve mail for himself. The Userlist function herein is the same available from the SYSOP section and the COMMAND level. USERLIST (U) - At the USERLIST prompt, you may press RETURN to view the entire membership file. Typing a number starts the viewing at the ID number of the user equal to the number given. Typing a series of letters here will force the userlist function to search the userlist for users whose handles begin with those letters and, if any are found, those users are viewed. EDITOR - This lets a user change his password and: hi msg # - every message posted in the message base recieves a consecutively larger number. This number currently represents the number given to the last message a user has read or posted. This way, messages will appear NEW to the user because they have a number assigned to them which is HIGHER then the number given to the highest message he has accually read. This number may be lowered though, thus making messages with lower numbers appear new to the user. DEFAULT BAUD RATE - If a user has a 300 baud modem but wishes to change to 400 baud every time he calls your BBS, he may change this number to 400. Now, when he calls the BBS, the BBS will automatically prompt him to change to 400 baud. Then he doesn't have to use the BAUD CHANGE command every time he calls; it is executed automatically and at the baud he himself has requested. Other functions available from the COMMAND prompt are: SUB SECTION - This section holds your online programs. From here, you can load an online program from the current Sub Section, list Sub Sections, change to a different one and load a Prg from THAT sub section. In each Sub Section, a menu of online programs in that current section is available with the "$" command. This views the "section X" file described above. After a On-Line program is completed, it will usually return to the COMMAND Zelch Bulletin Board System Software Documentation - Page 7 of xx section. NOTE: Typing "?" gives you a menu of current functions available at almost every major part of the BBS. TRANSFER or UD SECTION This part of your BBS also has different sections containing different files listed with the "$" command. These programs though, are downloaded and uploaded with the new Punter or Xmodem Checksum protocols, instead of run. All UD files as well as LIBRARY files for that matter appear on the drive designated for their purposes. UD program filenames may be a maxiumum of 14 characters long. The Multi-File UD supports the TOUCHTERM Multi protocol. SYSOP SECTION From this area, you can perform the following functions: D)isk channel - This is a direct link to your disk drives. All regular DOS commands are available from here as well as: w:filename - Use the message mkr to write the SEQ file "filename" e:filename - load the SEQ file "filename" and then edit that file from within the message mkr. This file may not be more then 50 lines long. @ - view the status of the current drive. RETURN - on a blank line without typing anything else will return you to the SYSOP prompt. $ - views the directory. $:argument* - views all files starting with the letters "argument". Example: $:mail* views all mail files (if you are on the mail device drive). % - counts all files. %:arg* - counts all files beginning with the letters "arg". @:filename - views the seq file "filename". To change drives, type the device number of the drive you wish to change to and press return. Other functions in the sysop section are: E)dit user - lets you edit any user except the user online. Pressing RETURN at an option concerning the user makes no change to that option. The variables are used as follows: Zelch Bulletin Board System Software Documentation - Page 8 of xx Var 0 - Hi Msg # Var 1 - Hi Msg # Var 2 - Default baud rate Var 3 - Uploads done Var 4 - Downloads done Var 5 - Sig that this user is SigOp of (see the msg base). This is a number from 1 - # of sigs. If a person has SigOp control of ALL sigs, this number is 100. This number can also be changed online with F5. To Delete a user, change his password to some garbage and his handle must be "EMPTY" exactly, in uppercase letters. Or use the on-line program included. VOTE EDITOR - lets you change aspects of the Vote section, such as : Title : simple title of the voting question. Response # : Number of possible voting choices. Option : Choice the user is given while he is voting. Result : A look at the results of choosing this option. Only 9 options/results may be given (ex : Option : yes Result : voted yes.) Q-quit S-Save Other options in the SYSOP Section M)embers file creator - Lets you update the "members" file. This file holds a list of all users. Use this function daily. T)ime/Date Editor - Lets you edit the current Time and Date. MESSAGE BASE ------------ Here is where messages are posted in organized sections called Sigs. RETURN - Hitting RETURN lets you view the NEXT message in that Sig. Change Sigs is done by holding down the shift key and hitting the letter of the Sig you wish to enter. ex: shft-a to enter sig A (which is also sig 1 in filenames). LIST SIGS - Lists the sigs available. SCAN MSGS - Scans the messages posted within the current sig. READ MSGS - Views a message and the replys of that message. If the user reading the message has post access, he can reply to the message he is reading also. POST - This lets a user POST a message thus starting a new message which can be replied to. The message cycling rules mentioned above are put into work here. NEW MSGS - Views the messages which are new to the current user. These messages must be located within the current Sig. ALL NEW - Works its way through each Sig, checking for new messages along the way and viewing them if they are found. Zelch Bulletin Board System Software Documentation - Page 9 of xx EDITOR - This is available to SUBOPS only. A SUBOP or SIGOP is defined by making the var 5 of a user equal to the Sig # (Example: var 5 = 1 if the user is a SUBOP of Sig 1). The SUBOPS can delete messages and individual responses to messages as well as edit the sigmsg file for the current sig. This makes the Sig a SigOp's "property", because of his powers over the appearence and messages therein. MESSAGE MAKER - this is the part of the program that alows you to write SEQ files who's filename is determined before this part of the program is entered. The commands in this are explained in the "msgmkr help" file, which is read by typing "/h" and hitting RETURN on a blank line. Lastly, files in this BBS can be aborted with the space bar and paused with the home key (any key resumes after home is pressed). For ascii callers, cntrl-s acts like a home key. Enjoy! For additional help with the Zelch software, we offer the following phone numbers. Please call at the times listed only! Thanks! (602)/xxx-xxxx (voice - evenings only!) (602)/xxx-xxxx (BBS) (24 hours) APPENDIX 1 - ZELCH BBS FILES WITH DESCRIPTIONS This is a list of all files that are found on your main data disk and other data disks as well. Some of these files are already available and some accumulate during the operation of the BBS. FILENAME - TYPE - DESCRIPTION ------------------------------------------------------------------------------ "userlog" - REL - This is a file holding the major information about all users. This file will grow in size as your number of users grow. "calls" - REL - This is a file that holds a record of the number of calls made by each user that day. This file grows also, but at a much slower rate. "opening msg" - SEQ - This file is viewed as soon as a user connects to the system and just before he enters his ID number. This is for ASCII callers. "opening msg/g" - SEQ - Same as above except for color/gfx callers. "closing msg" - SEQ - Viewed when a user logs off your system. "variables" - SEQ - File holds necessary information about your System. "info" - SEQ - A file viewed within your BBS after a user has logged on. It tells some information about your BBS; hardware used, etc.. "newuser" - SEQ - This is read just after a user answers the preliminary new user questions and just before they answer the system operator (SysOp) defined questions. Zelch Bulletin Board System Software Documentation - Page 10 of xx "newqs" - SEQ - This holds a list of sysop defined questions in the form of: question: question: The '' arrow must be in the first column of the first row holding each question. The question will follow thereafter on each line that is in the file. "vote" - SEQ - Contains vital information about your voting booth. "mainmenu X" - SEQ - 'X' is an access level from 0 - 9 This is a menu of the options obtainable from the MAIN COMMAND LEVEL. "msg X Y" - SEQ - X = Sig number minus 1. Y= the message (msg) number This is a file holding a message and its replies, all of which are posted from your message base. "sigmsg X" - SEQ - X=Sig number This is a file viewed upon entering each individual message section or Special Interest Group (SIG). This file goes on the drive along with the messages for this sig. "@txt 0" - SEQ - Menu of text files. "@txt X" - SEQ - X=any # A text file viewed from the Library section of your System. "question" - SEQ - Detailed explaination of your current voting question. This information is usually a paragraph or two. "vote box" - SEQ - The file thatholds the votes made. "sysopmenu" - SEQ - Menu of options obtainable from the SYSOP section of your system. "msgmkr help" - SEQ - File viewed within the message writer which lists the various commands of the message writer or message maker (msg mkr). "msgmenu" - SEQ - Menu of options obtainable from the message base. "udmenu" - SEQ - Menu of options obtainable from the Upload/Download section (also called UD or TRANSFER). "emailmenu" - SEQ - Menu of options obtainable from the Electronic User to User mail section of your System. "Sig X" - REL - X=Sig number This is a file holding information necessary to the operation of the SIG it represents. It holds an entry for each postable message (# of entrys = # chosen in editor.) This file should only be tampered with when changing the number of messages possible in one SIG. In that case, the file should be rewritten and all previous messages in that sig will no longer apply. "members" - SEQ - File holding a list of all your users. This file is updated from the SYSOP section and should be updated by you at least every 24 hrs. "Log!" - SEQ - List of callers and options by that caller. Readable from the system. It holds the time a call was made, the user who called, when he/she logged off, and any other info about what that user did during that call. To understand this information, log on to your system, (after it is set up) and perform every option within the BBS to see what is recorded in the log. "last caller" - SEQ - VERY important file to the welfare of your message base. This file is updated after every call is made. "newinfo" - SEQ - A list of answers to the sysop defined questions by every user. "pgm X Y" - PRG - X=SubSection #, Y= Program # within that SubSection. An on-line program, usually a game, or utility program, accessed by the user. "pgmenu" - SEQ - List of options available from the SubSection of your BBS. "section X" - SEQ - X=SubSection # A list of files available within SubSection X. This file must be updated by you whenever you add an on-line program. "feedback" - SEQ - Private E-mail left for the system operator. "mail X" - SEQ - X=user # A file containing all mail for user #X. "Xfilename" - P/S - X = "@" or any letter from A-Z signifying a UD file for UD x In the UD section, files in UD #1 start with "@", in UD#2, "a", etc., unlike in the message base where "Sig 1" means a records file for Sig A and "Sig 2" for Sig B. "Xfilename" - SEQ - X=same as above A SEQ file describing "filename". This file is written by a user before an upload and is read from the UD. "prg.new1" - PRG - The first stage of the new user process. "prg.new2" - PRG - The second stage of the new user process. "prg.read" - PRG - The 'read' command in the message base. "prg.user" - PRG - The 'edit user' command in the SYSOP section. "prg.menu" - PRG - The SUBSECTION program. "prg.vote" - PRG - The 'vote' program. "prg.mtedit" - PRG - This is various functions for the SYSOP section. "prg.email" - PRG - The 'e-mail' section. "prg.medit" - PRG - The subop program. "prg.term" - PRG - The BBS termimal program. "prg.var" - PRG - The variable editor within the bbs. "prg.file" - PRG - File viewed after a user has logged on. "prg.vedit" - PRG - The vote editor function. "prg.open" - PRG - Viewed as soon as a user logs on. "prg.udsec" - PRG - The transfer (u/d) program. "prg.multi" - PRG - The multi-file transfer program. "prg.monster" - PRG - Midnight 'monster mode' program. "timeinst" - SEQ - File instructions for "pgm 1 1". "delete!" - SEQ - List of all users which have not called in 45 days.