home *** CD-ROM | disk | FTP | other *** search
- 5 Sep 1993
-
- BBBBS - Baud Bandit Bulletin Board System for the Amiga - BBBBS
-
- ***************************** Features *****************************
-
- Up to 99 file libraries with extended filenotes.
- Up to 99 fully threaded message conferences.
- Number of users, files, messages, etc. are only limited by storage space.
- Controlled file library and message conference access for users & sysops.
- Interface to extra devices like CD-ROM & others, all treated as Read-Only.
- Complete Email area including binary mail, and multiple forwarding.
- User statistics including messages written, files ul/dled, time, etc.
- RexxDoors sub-area, Grin_du_Jour, StarTrek, Wheel_Of_Fortune, much more!
- Searches: Search users, file descriptions, or messages.
- Online Text Editor: with Cut and Paste, Replace, and Spellchecking.
- Selectable Auto-validation using Call Back Verify.
- Separate multi-tasking module for local sysop logon.
- User profiles, Polling_Place (a voting booth), background archiving.
- Complete offline read/reply/upload/download module, bbsQUICK.rexx.
-
-
-
- ***************************** Contents ****************************
-
- 1. Copyright and Distribution Information
-
- 2. Requirements
-
- 3. Organization
-
- 4. Setting Up
-
- 5. User data
-
- 6. bbsLOCAL.rexx
-
- 7. Macros
-
- 8. rexxDoors
-
- 9. Additional Notes
-
- a. RexxSpell
-
- b. FileLists
-
- c. Links
-
- d. Birthdays
-
- e. Sounds
-
-
- ******************** Copyrights and Distribution ********************
-
- The ARexx modules in BBBBS are copyright 1990-91-92 Richard Lee Stockton,
- and ALL RIGHTS ARE RESERVED. In particular, commercial use of these
- programs requires a written agreement with the author. HOWEVER, these
- files may be freely distributed and used for non-commercial purposes
- AS LONG AS the copyright notices contained within the code remain intact.
-
- To contact me for distribution or just more information:
-
- Richard Lee Stockton
- 21305 60th Ave West
- Mountlake Terrace, WA 98043-2009
-
- Phones:
- voice = 206-776-1253
- FAX = 206-775-7573
- BBS = 206-744-1254
-
- Telecomm:
- call the BBS number above and leave a [C]omment to sysop.
- - OR - send Email to RLStockton on PORTAL or BIX or GENIE
- - OR - (if you MUST), my Compu-$erve address is 71650,424
-
-
-
- ****************** Requirements for operation ************************
-
- BBBBS Requirements: Assumes standard 1.3 or 2.0 Amiga OS
-
- RAM: ~2.5 MEGS of RAM to run. 2.0 MEG without spellchecking.
-
- Commercial Software:
- (I have *nothing* to do with these, except for using them.)
- BaudBandit 1.50 - $50 retail, ~$30 discounted
- ARexx 1.15 - $50 retail, ~$30 discounted
-
-
- Freely Distributable Software:
- (comes with BBBBS or are easily found in the PD)
- BBBBS.LZH
- rexx (must be in your rexx: drawer)
- Answer.baud
- ArcAlpha.rexx
- ArcBrowse.rexx
- ArcMsgs.rexx
- baud.rexx
- BBBBS.baud
- BBBBSdemon.baud
- bbsALPHA.rexx
- bbsArcExt.rexx
- bbsArcSTOP.rexx
- bbsDoors.rexx
- bbsExtDL.baud
- bbsHOURLY.rexx
- bbsLOCAL.rexx
- bbsLOGOFF.baud
- bbsLOGON.baud
- bbsMAINT.baud
- bbsNewFile.rexx
- bbsQUICKIN.rexx
- bbsQUICKOUT.rexx
- bbsREPORT.rexx
- bbsSounds.rexx
- bbsSpeak.rexx
- bbdsSTATS.rexx
- bbsULDL.rexx
- bbsUSER.rexx
- bbsSTAT.rexx
- BuildALPHA.rexx
- BumpLevels.baud
- BumpTime.baud
- ChangeUserName.rexx
- Contents.rexx
- EditUsers.rexx
- ForceChat.baud
- Make_BrowseList.baud
- OldEMail.rexx
- PhoneDupes.rexx
- SendFile.rexx
- Setup.rexx
- ShowFKeys.baud
- ShowHourly.rexx
- ShowLog.baud
- TestArc.rexx
- ToggleNoise.rexx
-
- rexxDoors (these are needed for opening and closing cookie, etc.)
- Data (DIR)
- Grins
- Grin_du_jour.rexx
- Moon.rexx
- Time.rexx NOTE! Many other rexxDoors in BBDoors<nn>.lha
-
-
- libraries (must be in your system Libs: drawer)
- arp.library (VERS 39.1 by CHeath & others on bbs everywhere)
- rexxarplib.library (VERS 3.0 by Willy Langeveld on bbs everywhere)
- screenshare.library (VERS 1.52 comes with rexxarplib)
- rexxmathlib.library (VERS 1.3 by Willy Langeveld on bbs everywhere)
- rexxsupport.library (VERS 34.9 comes with ARexx 1.15)
- rexxsyslib.library (VERS 36.23 comes with ARexx 1.15)
-
- commands (must be in your system C: drawer
- QuickSort (by Marvin Weinstein - ARexxQSort.lzh)
- sound (by RLStockton, needed to play BBS Yell.snd)
- boot (optional: warm-boots if BBBBS seems frozen)
- lha (freely distributable de-archivers...)
- arc
- zoo
- unzip
- dms
-
-
- ************************** Organization **********************************
-
- BBS:
-
- BBBBS looks in your s: directory for the file "CONFIG.BBS" which sets all
- preferences including the device where the BBS files are located.
- Within this device, the BBS may use 99 file & 99 message directories.
- (if S:CONFIG.BBS is not found, BBBBS looks for BBS:BBS_TEXT/CONFIG.BBS
- and if THIS file is not found, BBBBS will give up and quit).
- Users may be given access levels between 0 (new user) and 99 (super-sysop).
- The lowest sysop level (gets to edit filenotes, maybe edit messages
- depending on level) defaults to 80. Level 99 (and only level 99!) is
- allowed to open a remote Shell and the power to edit ANY file remotely.
- Uload/Dload access to libraries & conferences at or below the user's level.
- Also, a sysop may exclude certain directories from the user's use.
- (file libraries by name, or message conferences by number)
-
-
- BBS System File Directories:
-
- 'Sysops' = Holds files for sysop review.
-
- 'Information' = User viewable files. 'I' from the Main Menu.
-
- 'Scratch' = temporary editor files, etc. For debugging.
-
- 'BBS_HELP' = Command summary files, according to level.
-
- 'rexxDoors' = rexx doorway programs
- Grin_du_Jour.rexx = 'one-liner' humor
- Moon.rexx = the phase of the moon
- Time.rexx = the time in words
-
- rexxDoors/Data/Grins = data for 'Grin_du_Jour.rexx'
-
- ...other rexxDoors available in "BBDoors.lha"
-
-
- 'BBS_TEXT' = Text (mostly) files used by the BBS.
- HELLO = Sign on message. (19 lines max!)
- NEW = New user welcome message.
- YELL.snd = (optional) Yell-For-Sysop sound.
- YELL = (optional) Yell voice script.
- WELCOME = default welcome message
- WELCOME.Mon, WELCOME.Tue, ..., WELCOME.Sun
- = Daily Welcome messages.
- WELCOME.1225 = Christmas welcome msg., etc.
- UNTIL.19920201 = displays at logon through Feb 1, 1992
- GOODBYE = Logoff message. (local BBS numbers)
- DEF.NEW_USER = new user defaults
- DEF.MEMBER = member defaults
- DEF.COURTESY = courtesy list defaults
- BIRTHDAY = displays on user's birthday
- PROFILES = intro message to user profiles area.
-
- 'FileNotes' = A dir of dirs. Each dir corresponding to a
- file library. Within each, a file desciption
- of the corresponding file in the library.
- Written by BBBBS.baud, but editable.
-
- 'BBS_LIBS' = Up to 99 file libraries. You select the names of
- these by editing the file 'BBS:Lists/Libraries'.
- The BBS sees them by name.
-
- 'BBS_MSGS' = Up to 99 message conferences. You select the
- names of these by editing the file
- 'BBS:Lists/Conferences', but the BBS sees
- them as MSG1 thru MSG99.
-
- 'Lists' = System lists and lists needed by bbsREXX.
- Libraries = see example for proper format
- Conferences = see example for proper format
- Files = THIS FILE IS WRITTEN BY BBBBS.baud.
- Under normal circumstances it should NOT be edited
- by humans. format: 'filenum dirname filename'
- Files.ALPHA = written by BBBBS.baud
- Courtesy = List of VIP usernames. A new
- user on this list is given immediate access.
- That name is then removed from this list.
- Excuses = list of randomly selected reasons why
- the sysop cannot CHAT right now.
-
- *** Following dirs contain files written by BBBBS.baud. DO NOT EDIT! ***
-
- 'Numbers' = LastFile, LastMail, LastMessage1, etc.
- Also a dir called "Hourly" that contains data
- for the "average minutes of use per hour" graph.
-
- 'Usage' = Monthly files. Counts hours of modem usage.
-
- 'Logs' = Daily files. Tracks user, time, mail or message activity,
- uloads/dloads, internal errors, etc.
- Built in 'log-reader' for sysops.
-
- 'EMailFiles' = Private files left attached to EMail.
-
- 'EMail' = Private mail between users.
-
- 'Users' = User files.
-
-
-
- *************************** Setting Up *****************************
-
- Follow these steps to set up your own BBS..
-
- 1. Do Initial Setup (assumes that bbspath is "BBS:")
-
- a. CD to BBS: ; the directory to de-lharc the bbs into
-
- b. Lha x BBBBSnn.lha ; extract respecting original paths
-
- c. COPY BBS:rexx/QuickSort C: ; ARexx QuickSort
-
- d. COPY BBS:C/#? C: ; Sound and other C: type programs
-
- e. COPY BBS:S/#? S: ; Bandit.Keys, Bandit.Config
-
- f. COPY BBS:BBS_TEXT/CONFIG.BBS S: ; or leave alone if BBS: is assigned
-
- g. COPY BBS:rexx/#? REXX: ; NOTE: 560K of rexx programs!
-
- h. COPY BBS:libs/#? LIBS: ; needed PD libraries
-
- 2. Make sure that "C:DATE" returns the correct time and date. The BBS
- needs to know the correct time and date for many of its routines.
-
- 3. Use a Text editor to edit the following lists. These lists can be
- changed or edited anytime. The libraries may be re-ordered at any time,
- but the message conferences can only be added to, not re-shuffled. That
- is, once you associate a message conference title with its number, and
- messages are actually written to that conference, you MUST keep that same
- number associated with that conference title. (This is because messages
- are kept in MSG1, MSG2, etc. while files are kept in directories created
- with the title that YOU give it. Note: No spaces are allowed in titles).
- You may change the CONFERENCE title, but the old messages in that
- conference will still refer to the old title. It is possible to change
- a LIBRARY title, but you also have to rename the directory, and update
- all references to the old dir (which can be quite a few!), so I advise
- against it. Use care in all title selections and save yourself future
- problems with re-naming.
-
- a. BBS:Lists/Conferences (message conference names)
-
- b. BBS:Lists/Libraries (file library names)
-
- Note: If you wish to review uploaded files before public posting, you need
- to be certain that the highest possible non-sysop directory is called
- "Sysops", as this is where new uploads will be saved.
-
- c. BBS:Lists/Courtesy (these names receive INSTANT validation)
-
- d. BBS:Lists/Excuses (good reasons why the sysop can't chat right now)
-
- 4. Use a Text editor to edit "S:CONFIG.BBS" to your preferences.
- IMPORTANT! Test your "c:info" from the CLI with your "info-compatible"
- device name to make sure that the blocks free amount is being returned.
- See BBS_TEXT/CONFIG.BBS for line by line a description of the options.
- Note that if line 30 of the config is 1, the BBS stays "up" all the time,
- which means the CONFIG.BBS and the various Lists are not reloaded each
- call. DO NOT change the file libraries using bbsLOCAL.rexx while the BBS
- is in resident mode as this will confuse the BBS and files will be lost.
- To exit resident, use SHIFT-F2 from BaudBandit to setclip BBS_QUIT=QUIT.
- It may take up to two minutes for BBBBS to notice that it is supposed to
- unload before it will actually halt the rexx process. Watch for the blue
- dot to disappear from the upper right part of the BaudBandit titlebar.
-
- If you want the default sysop name to be something other than "SYSOP":
- a. The name should be in all caps with the "_" character substituted for
- spaces. (ie, RICHARD_LEE_STOCKTON).
- b. Then, put "SYSOP" in the exclusion list to make sure no one else can
- use "SYSOP" as their user name.
- c. Delete the file "Users" in the "Lists" drawer of the BBS.
- d. Finally, Rename BBS:Users/SYSOP BBS:Users/<your sysop name>
-
- 5. Use the Text editor on the following textfiles to be read by the user.
-
- a. BBS:BBS_TEXT/HELLO /* this is the title message */
-
- b. BBS:BBS_TEXT/NEW /* message to new users */
-
- c. BBS:BBS_TEXT/WELCOME /* once-a-day welcome to users */
-
- d. BBS:BBS_TEXT/GOODBYE /* last thing the user sees */
-
- e. BBS:Information/SYSTEM_INFO /* what Amiga model, OS, etc */
-
- 6. You may also wish to edit the default user files in the BBS_TEXT drawer,
- but I suggest leaving them alone until you gain a better understanding
- of the BBS system.
-
- a. DEF.NEW_USER /* all lines are used */
-
- b. DEF.COURTESY /* all lines are used */
-
- c. DEF.MEMBER /* ONLY time, level, and exclude_dirs are used */
-
- 7. Start the LOCAL BBS by typing "rx bbsLOCAL SETUP". Enter "sysop"
- (or the name you changed it to) when asked to enter your name, then
- enter "password" when asked for a password. This will construct the
- directories you specified in BBS:Lists/Libraries, (if they don't already
- exist).. likewise, the message conferences will be constructed, if needed.
- You will then enter the bbs _AS IF_ it were running from the modem,
- although Baud Bandit is not needed at all.
-
- 8. Select "Y" to edit your personal data. CHANGE YOUR PASSWORD!!
-
- 9. Read the BBBBS.COMMANDS file in [I]nformation for general command
- information, and take a look around the board. Try out some things a
- user would try.
-
- 10. Use "G" to logoff which will rewrite your user file.
-
- 11. Start BaudBandit. Check BB's Macro display. The important thing
- here is to make sure that "\mAnswer.baud" is in "RING" portion of BB's
- configuration.
- 2400 baud (and below) operation:
- Handshake should be set to "NONE" (otherwise CTRL-S can hang the BBS).
- AutoBaud should be set to "ON" and the baud rate to the same value
- you have set in BBS:BBS/CONFIG as the Maximum baudrate.
- 9600 baud (and above) operation:
- Handshake should be set to "7-Wire".
- AutoBaud should be set to "OFF" and the baud rate set to the maximum
- "terminal-to-modem" baudrate (19200 max for less than 68020 cpu).
- I have used Practical Peripherals modems and the setup strings are:
- 9600SA AT &F M0 &C1 &D3 S95=47 &W
- 14400FXSA AT &F M0 W1 &C1 &D3 &T5 S37=11 S95=47 S118=2 &W
-
- &F = factory defaults
- M0 = turn speaker off [optional]
- W1 = enable progress messages
- &C1 = track DCD
- &D3 = monitor DTR and reset to power up conditions
- &T5 = disable remote testing [optional]
- S37=11 = highest modem to modem rate is 14400
- S95=47 = all progress messages and modem-modem speed report
- S118=2 = LCD display 2 seconds per line of info. [optional]
- &W = save to modem RAM so ATZ will recall these settings
-
- These may or may not work for you, but at least it's a place to start.
- Note that you only have to give this command once, then the "ATZ"s
- that BBBBS sends will reset your modem to this default.
-
- There are Bandit.Config files provided for both 9600/14400 and 2400.
- If you make any changes remember to save them.
-
- NOTE! Your modem MUST be set so that you can see verbose responses from
- your modem on your BB screen (ie, RING, CONNECT 9600/ARQ (or whatever),
- NO CARRIER, OK, etc). THIS IS _THE_ MOST COMMON MISTAKE THAT WOULD-BE
- SYSOP SEEM TO MAKE! Also, baudrates reported by the modem should be the
- modem-to-modem baudrate. Correct BBS operation depends on these messages.
-
- 12. If you have RAM to spare, give yourself a large capture buffer in
- BaudBandit, especially if you will be debugging. You can use BB's
- review buffer to study what the user did, in what order, and what
- happened. I have mine set to about 150k..
-
- 13. To set up the BBS to start automatically in the background, add
- these lines to your startup-sequence:
- (assumes that BaudBandit is in the BBS: drawer)
-
- assign rexx: dh0:rexx ; Edit dh0:rexx to YOUR rexx drawer.
- rx setup
- BBS:BB ; Edit this to YOUR BaudBandit path
- WaitForPort BAUD
- ;rx Baud OFF ; uncomment this line to close BB's screen after startup
- run rx "ADDRESS BAUD;Send '\mBBBBS.baud'"
-
- 14. You may also wish to install BBDoorsnn.lha (extra rexxDoors for BBBBS),
- SpellBBS.lzh (the spell-checker), and TODAY.lha ("today in history" program).
- Also note that many BBBBS sysops have written various alterations, rexxDoors,
- sysop-help programs, and more. Search your BBS for the keyword "BBBBS".
-
- 15. At last, nothing left to do but sit back and wait for callers, and soon
- become beloved sysop to billions of users... ;-) ;-)
-
-
-
- ********************* User data file ***************************
-
- 1. name:
- 2. street:
- 3. city, st zip:
- 4. phone:
- 5. password: (only visible by user and super-sysop)
- 6. protocol:
- 7. lines per page:
- 8. preferences: may include MENU or MENUS, COLOR, STREET, PHONE
- 9. Computer:
- 10. Interests:
- 11. Time: <nn> minutes <nn> more times today
- 12. first date on: datestamp timestamp
- 13. last date on: datestamp timestamp
- 14. upload: <nn> files <nn> bytes day month year
- 15. download: <nn> files <nn> bytes day month year
- 16. lastfile: lastfile datestamp timestamp
- 17. rtio/eml: dl/ul_ratio email_written last_email_read_(sysop_only)
- 18. winnings: <nn>
- 19. time on: <nn> days <nn> hours <nn> minutes in <nn> calls.
- 20. level: <nn>
- 21. exclude list: msg conf by number, file lib by name, space separated
- 22. msg_read: MSG1 MSG2 MSG3 ... MSG<last> (-1 in MSGslot = conference OFF)
- 23. msg_writ: MSG1 etc.
- 24. msg_mark: MSGdirnum/MSGnum MSGdirnum/MSGnum... (conf msgs TO this user)
- 25. used to temporarily store filelist to be downloaded.
- 26. QUICK exclude list (files excluded from bbsQUICKOUT archives)
- 27. List of CBV numbers attempted by this user (if any).
-
- Default data for New Users is stored in BBS_TEXT/DEF.NEW_USER
- Default data for Courtesy List Users is stored in BBS_TEXT/DEF.COURTESY
- Only lines 6-22 of these files are used, the rest are ignored.
-
- Default data for Members is stored in BBS_TEXT/DEF.MEMBER
- Only lines 11, 20, 21 and 22 of this file is used, the rest are ignored.
-
-
- ********************** bbsLOCAL.rexx ***************************
-
- This is a multi-tasking (within limits, see below) rexx program that
- you as the sysop may run from a Shell or CLI. In most ways it is just
- like the regular BBS program, so you see what your users see. However,
- it is not connected to BaudBandit in any way, and in fact, does not
- use the serial port (or your modem) at all. Upload and download functions
- are transmuted into copy (with the arp requester), and some functions
- are left out (like the check for DCD, etc.). It DOES look at the same
- data that BBBBS.baud looks at, and reasonable care must be taken not
- to add files to the file libraries while a user is also adding a file
- to the libraries. Likewise, don't write EMail while the user is writing
- email, and don't write messages while the user is writing messages IN
- THE SAME CONFERENCE (messages CAN be written in different conference at
- the same time, one by user, one by sysop).
-
- CLI> rx bbsLOCAL SETUP
-
-
- Copying Files Direct Into the Libraries:
-
- METHOD 1:
- Run bbsLOCAL and use the Upload command. The arp file requester
- will appear so you can copy the files into the correct libraries. After
- the copy, you will enter a note just as if you uploaded the file, and
- the system filelists will be updated.
-
- METHOD 2:
- First copy the files to the correct libraries. Then run bbsLOCAL
- (or call) and edit (in this case, create) the file description using
- the "%" sysop command.
-
- In either case, when BBBBS sees that this note has been created,
- it adds the file to the other system filelists, and increments the
- count in "Numbers/LastFile".
-
-
-
- ************************* Macros *******************************
-
- Note that if called from BB with a user online, these macros will not
- take effect if the user is waiting at a menu. You can press return
- yourself to force the macro if it looks like the user is sleeping
-
- - Function Keys -
-
- F1 - ForceChat.baud - Forces user into chat at next prompt.
-
- F2 - Twit.baud - TWIT-KEY, forces logoff of current user at next prompt.
-
- F3 - BumpTime.baud - Opens a requester allowing you to set this users
- maximum time in minutes for this session. It will take effect at
- the next prompt. This is a temporary change, this session only.
-
- F4 - BumpMember.baud - Member values are taken from "BBS_TEXT/DEF.MEMBER".
- Takes effect at the next prompt. This change is saved to the users
- data file. It is permanent.
-
- F5 - BumpLevels.baud - Opens a requester allowing you to set the level and/or
- upload to download ration for this user. It will take effect at the
- next prompt. This change is permanently saved to the users data file.
-
- F6 - Close Function Key Help Window
-
- F7 - ShowLog.baud - Displays today's log on BB's screen, BBS running or not.
-
- F8 - An inline macro to fetch the clip "BBS_totalusage" and display monthly
- usage in hours and minutes.
-
- F9 - Baud.rexx OFF - Turns BaudBandit's screen off (improves speed). While
- the screen is off THE CAPTURE BUFFER STAYS OPEN! This means you can
- leave the screen off for fastest response, then, when the modem tells
- you the user has logged off, turn the screen on again (from CLI
- "rx Baud") and read the review buffer (SHIFT-HELP).
-
- F10 - Opens a Function Key Help Screen on BaudBandits screen. F6 to close.
-
-
- - SHIFTED Function keys -
-
- S1 - Starts up BBBBS.baud.
- WARNING! Don't start BBBBS while it is already running in this BB!
-
- S2 - Sets the "UnLoad" flag.
- BBBBS will exit after the current call, or within 60 seconds.
-
- S3 - UnSets the UnLoad flag (in case you change your mind)
-
- S4 - Toggles BBBBS sounds and voice ON/OFF.
-
- S5 - Opens a window on BaudBandit that lists the background archive
- processes currently running, by username and type of process,
- and allows aborting any or all of them.
-
- S6 - Set the modem "off-hook". Users see busy signal.
-
- S7 - Reset modem to "on-hook" (hangup).
-
- S8 - Display total RAM available on the screen, chip+fast.
-
- S9 - Close the editor buffer a user opens to write messages, etc.
-
- S10 - Enter message to be sent to current user at first opportunity.
-
-
-
- --- Other Macros ---
-
- BuildALPHA.rexx - rebuilds the file & alpha lists from the ground up.
- BBBBS should preferably not be running so that a user won't upload in
- the middle of your rebuild and overwrite the list. This macro sets
- a clip that forces BaudBandit to give a BUSY message to any caller.
- After buildALPHA.rexx is finished, the clip is cleared, and BBBBS
- will go back online.
- BuildALPHA.rexx may take a while. 1400 files=15 mins on 68000 Amiga.
-
- bbsULDL.rexx - Reads the CURRENT file library descriptions and writes
- statistics to "Information/STATS.ULDL". This will happen automatically
- once a day if STATS.ULDL exists! To disable this function, just delete
- "Information/STATS.ULDL".
-
- bbsUSER.rexx - Reads the CURRENT userfiles and writes statistics to
- "Information/STATS.USER". This will happen automatically once a day
- if STATS.USER exists! To disable this function, just delete the file
- "Information/STATS.USER".
-
- ChangeUserName.rexx - To change the user name HACK_MASTER", from a CLI
- enter "rx ChangeUserName HACK_MASTER". Just press return to use his/her
- real name, or enter the new name. UserFile, Email and EmailFiles will
- be updated. This function may also be accessed from within BBBBS.
-
- bbsREPORT.rexx - Constructs a report of inactive users and saves it as
- email to sysop. NOTE: If "VIP_USER" appears on the user-data line that
- contains the excluded libraries, that user will be excluded from the
- list of inactive users. If a file report is requested, the file libs
- will be counted and searched for possible problems. This entire report
- is run as a background process thru the AREXX port and the resulting
- archive left as email with an attached file.
-
- BBBBSdemon.baud - Runs independently of BBBBS.baud and looks for a
- condition where there is no user online, but BBBBS hasn't reset, and
- tries to fix it. If it fails to fix it after a few tries then c:boot
- is run. If c:boot does not exist, the demon runs "c:hi" which tries to
- halt all currently running rexx programs.
-
- OldEmail.rexx - Run from CLI to list Email (and emailfiles) older than a
- given number of days. Output may be redirected to a file. The sysop is
- also given the chance to delete each selected email or emailfile.
-
- bbsQUICK.rexx - Offline read/reply module for BBBBS.
- See the bbsQUICK.DOC and bbsQUICK.REVISION for more info.
-
- bbsQUICKIN.rexx - Processes QUICKIN.lha archive uploaded by user. The
- Super-Sysop can copy her/his QUICKIN.lha file by hand to his/her
- EmailFiles drawer and then type "rx bbsQUICKIN" in a CLI/Shell to
- process as if it had been uploaded by the super-sysop.
-
- bbsQUICKOUT.rexx - Constructs archive of latest BBS activity for the
- use of bbsQUICK.rexx. You can just type "rx bbsQUICKOUT" in a
- CLI/Shell and a QUICKOUT archive will be constructed for the
- sysop using his/her current file and message counters.
-
- PhoneDupes.rexx - compare all user phone numbers and show duplicates.
-
- ToggleNoise.rexx - Toggles BBBBS sounds and voice ON/OFF from CLI or
- from BaudBandit. (SHIFT-F4)
-
- bbsArcSTOP.rexx - Display running background archiver processes and
- allow abort of any or all. From BaudBandit (SHIFT-F5) or CLI.
-
- bbsDoors.rexx - Use rexxDoors offline without loading bbsLOCAL.rexx
-
-
- ------- Internal Macros run ONLY by BBBBS --------
-
- bbsLOGON.baud - Runs right after the password is entered. You can
- have your own ARexx (or whatever) routines run here.
- See bbsLOGON.baud for more information on usage.
-
- bbsLOGOFF.baud - Runs just before user logs off (before GOODBYE text).
- See bbsLOGOFF.baud for more usage information.
-
- bbsALPHA.rexx - Controls the archiving of the alpha filelist. If a
- name and path is given for an arcfile, "Lists/Files.ALPHA" will
- be archived into it using the archiver in the config file.
-
- bbsMaint.baud - Runs if the current messages online exceed the maximum
- set in "CONFIG.BBS". Deletes the oldest messages that don't have the
- "SaveMe!" flag set (2 exclamation points as the first 2 characters).
-
- ArcMsgs.rexx - Archives new (or selected) messages from the conference
- area using Lharc. This is done as a background process using the AREXX
- port, and the resulting archive left as email with an attached file.
-
- MakeBroweList.baud - Archives user selected file descriptions using
- Lharc. This is done as a background process using the AREXX port,
- and the resulting archive left as email with an attached file.
-
- bbsHourly.rexx - graphic display of average minutes of use hour by hour.
-
- Contents.rexx - Display the contents of an archived file
- (.arc .dms .lha .lzh .zip .zoo) assuming appropriate c: programs.
-
- bbsExtDL.baud - Allows access to CD-ROM drives, extra floppies,
- harddrives, partitions, or just assigned areas to be treated as
- "Read-Only" devices.
- Enter a space separated device list on line 10 of CONFIG.BBS.
- Devices on this list are handled separately from the rest of the BBS
- file libraries, and do not have filenotes, unless they are referenced
- using "links" (see below).
-
- bbsNewFile.rexx - If activated, automatically makes an archive copy of
- each file uploaded to the BBS and sets the archive bit of the file
- in the library. TO ACTIVATE this feature, put bbsNewFile.rexx into
- a text editor and replace "NO_DIR:" with a valid pathname.
-
-
-
- ***************************** rexxDoors ****************************
-
- rexxDoors:
-
- Almost ANY rexx program that uses NO GRAPHICS OTHER THAN CHARACTERS can
- be easily made into a rexxDoors program. Just add these lines at the top:
-
- CR="0D"x
- SIGNAL ON BREAK_C
- SIGNAL ON BREAK_E
-
- and these lines at the bottom, just before the main RETURN or EXIT:
-
- BREAK_C:
- BREAK_E:
- /* <-- might put "SetClip('BBS_winnings',winnings)" routine here */
- EXIT;
-
- and lastly, search the text for all instances of "SAY" and add "||CR" to
- the END of each SAY command.
- SAY 'Here we go.' becomes SAY 'Here we go.'CR or SAY 'Here we go.'||CR
-
- If you want the rexxDoor to check for a disconnect, you can call the
- following subroutine periodically, ie, IF checkdcd() THEN SIGNAL BREAK_C
- checkdcd:
- IF ADDRESS()~='BAUD' THEN RETURN 0
- dcd
- IF RC=0 THEN RETURN 1
- RETURN 0
-
- Any "PULL" commands in the rexx script will take input from the user,
- and any "SAY" commands will be sent out the modem.
-
- All rexxDoors programs are sent the user name and his "winnings" as the
- command argument. ie,
-
- doorprogram.rexx(name winnings 0_or_seconds colorflag)
-
- If cash_or_seconds=0, then we are playing for play-money cash (which is
- remembered from session to session). If cash_or_seconds>0 then the user
- is playing for the seconds remaining in this session. There is no
- requirement that the rexxDoors program use ANY of these arguments. If
- the rexxDoors program should return a "winnings" amount, it should do a
- "CALL SETCLIP('BBS_winnings',winnings)" before it returns.
-
- rexxDoors can also connect non-rexx programs to the BBS.
- 1. Program must output ONLY to the CLI. (no graphics, no windows, etc.)
- 2. Then write a little program like this and put it in rexxDoors. Note
- that in this example, the Dungeon files have been put in a drawer within
- the rexxDoors drawer, rexxDoors/Data. This location is arbitrary.
-
- -----------------------------cut-here----------------------------------
-
- /* Dungeon.rexx - starts up AmigaDungeon with redirects */
-
- LF='0A'x
- CR='0D'x
- bbspath=GETCLIP('BBS_path')
-
- PARSE ARG name winnings flag colorflag .
-
- /* give any addition information needed by the user */
-
- SAY CR
- SAY 'Your terminal should add a carraige-return to each received linefeed.'CR
- SAY CR
- SAY ' No carraige-returns are generated by Dungeon!'CR
- SAY CR
- SAY 'Enter INFO for general game information. Enter HELP for help and hints.'CR
- SAY CR
- SAY ' Loading... Please wait for prompt character > to appear.'CR
- SAY CR
-
- /* point this macro at the Dungeons drawer so that Dungeon can find its data */
- /* This may or may not be necessary for your particular application. */
-
- CALL PRAGMA('D',bbspath'rexxDoors/Data')
-
- /* Run the game, redirecting input and output to the console (BaudBandit) */
-
- ADDRESS COMMAND 'CD' bbspath'rexxDoors/Data'LF'dungeon <* >*'
-
- EXIT;
-
- /* end of Dungeon.rexx */
-
- -----------------------------cut-here----------------------------------
-
- NOTE! There is no practical way to abort this kind of door once it is
- started, so beware of users who abuse their time limits!
-
-
- ******************************* Misc *****************************
-
- REXXSPELL:
-
- To use RxSpell (SpellBBS.lzh) with BBBBS, simply set the proper path
- and turn on spellchecking in CONFIG.BBS. You must have plenty of RAM
- to use spellchecking as it may use 300k-500k all by itself. On the
- other hand, it's fairly fast once it is all been loaded.
-
-
-
- RATIO:
-
- Download/Upload Ratio: User data line 17, Word 1 - 0=DISABLED
-
- Example: 5 means user will be refused downloading if
- DownloadBytes divided by UploadBytes exceeds 5.0,
- and bbs_preferences has Down/Upload Ratios set to ON (1).
-
-
-
-
- FILE LISTS:
-
- If you feel you really MUST get in there and futz around with a file,
- remember this. Changes in a file or filenote can effect _5_ different
- files (at least). The file itself (say, "BBS_LIBS/Text/MyPoem.lzh"),
- the filenote ("FileNotes/Text/MyPoem.lzh"), the general filelist (this
- file, "Lists/Files", is VERY important to the system!), the alphabetical
- list ("Lists/File.ALPHA"), and the upload counter ("Numbers/LastFile").
- It is best to do file maintenance from within the BBS and let the
- software worry about what files need changing and rearranging.
-
-
-
-
- LINKS:
-
- To add a file to the libraries that will be located somewhere other
- than the normal BBS_LIBS...
-
- 1. "Point" BBBBS at the appropriate library by entering the library
- number (BBBBS will try to show new files. When it is thru, the current
- library will be the one you picked).
-
- 2. Attempt to edit a filenote using the "%" command, and the name of
- the file you wish to add. When asked if this file is "on another device?"
- answer "Y" and enter the FULL path and filename for the file. This "link"
- is stored in the filecomment of the description.
-
- 3. Now this file will be treated as if it is in the libraries, stats will
- be kept on it, etc., but it will be downloaded from the link path.
-
-
- You can also move a file already in the BBS_LIBS to another device.
- Handy when the only way to expand your BBS is to purchase a second HD,
- or perhaps redirect some of the filelist to be downloaded from a CD-ROM,
- external floppy, etc.
-
- 1. move the file, but not the filenote.
-
- 2. use the C:FileNote command to enter the new path to the old file in
- the comment field of the file description. Use the *full* name, ie
-
- C:FileNote BBS:FileNotes/Text/Thisfile.lha "HD2:Overflow/Text/Thisfile.lha"
-
- Note that the file report will tell you to compare files and filenotes
- in that directory, but won't list a filename, as it does for files that
- don't have filenotes yet. Just ignore it.
-
-
-
-
- BIRTHDAYS:
-
- Each user is supposed (but not required) to enter his birthday when
- filling out the application for membership. This is used in computing
- the age of the average BBS user. In addition, if the user calls BBBBS
- on his birthday, she will see a simple birthday greeting. If a textfile
- called "BBS_TEXT/BIRTHDAY" exists, that file will also be displayed.
-
-
-
-
- SOUNDS:
-
- Some people with newer Amigas have been having trouble with BaudBandit's
- Beep command not working and causing the BBS to hang, so I have removed
- all of these commands as of BBBBS version 5.9 and replaced them sounds.
- Line 28 of CONFIG.BBS now controls whether all sounds are on/off, not
- just the YELL sound.
-
- The following sounds are called by BBBBS. You may substitute your own
- sounds instead, just rename them to one of the choices below. You can
- disable an individual sound simply by renaming, moving, or deleting it.
-
- ALERT - This sound should be short (if you use it) as it may be
- sounded several times depending on bbsSounds.rexx.
- NOTE: As of 6.0 this sound MAY be replaced by specific
- sounds for TFAIL, LOST, TIMEOUT, and ATZ_FAIL
-
- ATZ_FAIL - Sounds if ATZ does not return "OK". (modem is inoperative).
-
- CBV - Sounds as Call Back Verify starts to call back.
-
- DOWNLOAD - Sounds as the dl starts.
-
- FEEDBACK - Sounds whenever email (or a message) is written to sysop.
-
- INFO - Sounds when the Information area is entered.
-
- JUMP - Sounds when the rexxDoors area is entered.
-
- LOGOFF - Sounds after user data is saved for the last time.
-
- LOGON - Sounds right after password is accepted.
-
- LOST - Sounds if CARRIER is LOST.
-
- MESSAGE - Sounds when the editor is entered (Uses FEEDBACK if to sysop)
-
- NEW_FILE - Sounds when a new file is completely uploaded and checked.
-
- NEW_USER - Sounds when new user replies [Y]es, she wants to register.
-
- TFAIL - Sounds if a transfer fails (upload or download).
-
- UPLOAD - Sounds as the upload starts.
-
- TIMEOUT - Sounds when user is logged off due to inactivity.
-
- YELL - Sounds on "!" command from menu. "!" also triggers voice, so
- this sound needs to be fairly small and short.
-
-
- All sounds are played by "Sound", which should be in your C: directory.
- The syntax used is "c:run >nil: c:sound <soundfile>", so you'll need to
- have "run" in your C: directory too. You can edit bbsSounds.rexx to add
- effects to the sounds played, or substitute other sounds.
-
- You can also turn off BOTH Sounds and Speach by setting a clip from CLI.
-
- rxset BBS_NOISE OFF
-
- Note that the clip and command must be in ALL CAPS.
-
-
- If you want a sound to occur when the modems first CONNECT, enter
-
- DCDHi \m"c:run >nil: c:sound <soundfile>"
-
- in BaudBandit's config file (in the DCDHi field). Replace <soundfile>
- with the FULL PATH to your chosen soundfile. DCDLow usually happens too
- close to the LOGOFF sound to be of much use.
-
-
-
- *** G O O D L U C K ***
-
-
- *********************** end of BBBBS.doc ***************************
-