home *** CD-ROM | disk | FTP | other *** search
/ Media Share 9 / MEDIASHARE_09.ISO / os2 / bbss10b2.zip / DOC / B&BSYSOP.TX8 < prev    next >
Text File  |  1994-02-28  |  59KB  |  1,327 lines

  1.                                      -=-
  2.  
  3.                  The Bits & Bytes Bulletin Board System for OS/2
  4.                                    B&BSYS/2
  5.  
  6.                                      -=-
  7.  
  8.                         This documentation is for v0.98á
  9.  
  10.                                      -=-
  11.  
  12.                 All included material is copyright 1991-94 by:
  13.  
  14.                               Terje Flaar nning
  15.                               Boks 455 Sentrum
  16.                               N-7001 Trondheim
  17.                                    Norway
  18.  
  19.                              Voice: +47-94655772
  20.                             BBS: +47-DOWNNOW                    
  21.  
  22.                                      -=-
  23.  
  24.     Please note, the BITS0001 bulletin should also be read, it may include 
  25.            important changes to the information in this file.
  26.  
  27.                                      -=-
  28.  
  29.  
  30.                                     INDEX
  31.                                    -=====-
  32.  
  33. 1 Introduction to B&BSYS(/2)
  34.          
  35.   1.1  The history behind B&BSYS
  36.   1.2  B&BSYS/2 vs. other BBS-systems
  37.   1.3  First time B&BSYS/2 setup
  38.   1.9  The people behind B&BSYS/2
  39.  
  40. 2 Configuration of B&BSYS/2
  41.  
  42.   2.1  CONFIGURATION WITH THE U(til) Co(nfig) COMMAND
  43.  
  44.     2.1.1  General
  45.     2.1.2  Path names
  46.     2.1.3  File protocols
  47.     2.1.4  Archive programs
  48.     2.1.5  Nodes (Comms)
  49.     2.1.6  Timed events
  50.     2.1.7  Net-links
  51.     2.1.8  Areas
  52.  
  53.   2.2  DOOR.BAT
  54.  
  55. 3 Menu by menu in the B&BSYS/2 interface
  56.  
  57.   3.1  GLOBAL MENU FUNCTIONS
  58.   3.2  MAIN MENU
  59.   3.3  MESSAGE MENU
  60.   3.4  FILE MENU
  61.   3.5  BULLETIN MENU
  62.   3.6  CHAT MENU
  63.  
  64. 8 Script language
  65.  
  66.   8.1  Scripts called
  67.   8.2  Script variables
  68.   8.3  Script commands
  69.  
  70. 9 Technical info
  71.  
  72.   9.1  File structures
  73.  
  74.  
  75. ==================================================================
  76.  
  77. INTRODUCTION TO B&BSYS/2
  78.  
  79. Welcome to the wonderful world of B&BSYS/2, the next generation of BBS's that runs under 
  80. OS/2. 
  81.  
  82.  
  83. THE HISTORY BEHIND B&BSYS/2
  84.  
  85. My first meeting with modem-communications was in the summer of 1989 when I realised 
  86. there were telephone connectors in the back of my PC (a old ITT XTRA from 1984). I 
  87. managed to connect to a local BBS and became a frequent user there. But unfortunately my 
  88. local BBS had to close down and I had to start calling long distance which was not cheap. After 
  89. a short while I got the idea of starting my own BBS. My first BBS was started using the MBBS 
  90. (╕ Mike Robertson) BBS-system and I was online from early 1990. I connected to national 
  91. networks and since I got more and more conferences the MBBS system became to limited, it 
  92. only supported 75 conferences. Therefore I started making my own BBS-system which is 
  93. known as "The Bits & Bytes Bulletin Board System" or B&BSYS for short.
  94.  
  95. Have to add something here, late in 1993 I heard about the OS/2 patches for Borland Pascal, 
  96. and this was the start of B&BSYS/2. B&BSYS will no longer be developed in a DOS-version.
  97. B&BSYS/2 VS. OTHER BBS-SYSTEMS
  98.  
  99. B&BSYS/2 is in many way like other BBS-systems. The main difference that it is almost 
  100. unlimited as to how big your system may become. B&BSYS/2 consist of a database-structure 
  101. so advanced that many bigger systems can just dream about matching it. This system is not just 
  102. another program but it does follow all major software development rules.
  103.  
  104. B&BSYS/2 has a user friendly interface and it is almost impossible to "break" the system by 
  105. using bad commands or the like.
  106.  
  107.  
  108. FIRST TIME B&BSYS/2 SETUP
  109.  
  110. B&BSYS/2 is easy to setup, and if you follow these few steps it should be up and running in 
  111. minutes.
  112.  
  113.    [1]   Unpack the main archive (B&BS*.ZIP) to your BBS directory (C:\BBS for example). 
  114.     Remember to unpack with the directory-structure intact!
  115.  
  116.    [2]   Be sure til place your .KEY file in your BBS directory from now on called B&B-root. 
  117.     This file is supplied directly from me upon registering.
  118.  
  119.    [3]   Execute the SETUP.CMD file with a list of your hard drive letters as and only 
  120.     parameter. For example, type: "SETUP CDE" at your OS/2 prompt. 
  121.  
  122.    [5]   Now, start B&BSYS/2 by typing BBS 0 (0 is your local SysOp node) and with the 
  123.     name "Sysop Sysop". Use your own password.
  124.  
  125.    [6]   When you are on B&BSYS/2 command line, type  UTIL NAME  to change your from 
  126.     Sysop Sysop to the real one. 
  127.  
  128.     [7]   Now you may start to explore and configure your B&BSYS/2 BBS.
  129.  
  130.     [8]   ... but before you do all this, print out these instructions or write them down.
  131.  
  132. That's all, now you should configure your B&BSYS/2 BBS the way you want it by using the 
  133. Co(nfig) command in the SysOp menu. Good luck. A more detailed explanation of the setup-
  134. procedure is available in  SETUP.DOC, which is found in the same directory as this file.
  135.  
  136. THE PEOPLE BEHIND B&BSYS/2
  137.  
  138. The main system B&BSYS/2 is entirely written by Terje Flaaronning during late evenings the 
  139. last two-three years.
  140.  
  141. Thomas Stenhaug is writing QWK-support, and I'll let you know when it's ready.
  142.  
  143.  
  144.  
  145.  
  146. Greetings go to:
  147.  
  148. Raymond L. Gwinn (Developer of the SIO drivers for OS/2) who has supported me with info
  149.    about SIO and the OS/2-API concerning async-communication.
  150. Jan-Morten Havstein (Running the main ßeta board for B&BSYS/2) who has to live with all 
  151.    the bugs in the preßeta versions of B&BSYS/2.
  152. Thomas Stenhaug who is currently working on QWK support routines for B&BSYS/2, I 
  153.    suspect he have something ready when you read this.
  154. ¥yvind L. Eggen (Developer of the XBoard offline reader) who made support for the 
  155.     B&BSYS/2 grab format in XBoard. The grab format has changed today, but I hope that 
  156.     coming versions of XBoard will support the new format.
  157. Stian Seeberg who wrote this and all the other DOC's available for B&BSYS/2 (and is also
  158.     running a ßeta-test board)
  159. My mother who has paid quite a few large phonebills the last couple of years. :-)
  160.  
  161.  
  162.  
  163.  
  164. CONFIGURATION OF B&BSYS/2
  165.  
  166. CONFIGURATION WITH THE U(til) Co(nfig) COMMAND
  167.  
  168. To configure B&BSYS/2 you will first have to enter the SysOp menu. It is from here all 
  169. systemwide changes are made. This menu is entered by typing $ (for $ysOp), and pressing 
  170. ENTER. You will then see the following menu:
  171.                                                                             
  172.    v1.0ß1                     >>> SYSOP MENU <<<                    v1.0ß1  
  173.                                                                             
  174.                                                                             
  175.    Co nfigure your BBS     EF Edit file            PA Pack area             
  176.    L og, Show logfile      AF Add files (install)  DU Delete user (kill)    
  177.    Us er editor            DF Delete file          CF Classify file         
  178.    Mem ory/system info     D os shell/command      SF Sort files            
  179.                                                                             
  180.                                                                             
  181.    B ulletin command       R ead (messages) comm.  T ransfer scratchpad     
  182.    C hat/Node command      S elect a new area      No de message (send)     
  183.    F ile transfer command  U tility command        Com ment to SysOp        
  184.    Q uit to main command   O pen a external door   G oodbye (logoff)        
  185.    
  186.  
  187. The lower part of this menu consists of the systemwide commands. These can be invoked from 
  188. anywhere in the BBS. The top half of the menu is the $ysOp menus special commands. These 
  189. will be covered in detail in SYSOP.DOC. 
  190.  
  191. The Configure menu
  192. The command we are intrested in for the time being is COnfigure your BBS. This command 
  193. brings up the following menu again:
  194.  
  195. Configure System
  196.                 
  197. General
  198. Path names
  199. File protocols
  200. Archive programs
  201. Nodes (Comms)
  202. Timed events
  203. Net-links
  204. Areas
  205. Return to BBS 
  206.  
  207. You select an area by moving the highlight up/down with the arrow-keys on your keyboard, and 
  208. pressing ENTER. We will now cover these areas in detail. 
  209.  
  210. General
  211.  
  212. This is where the general configuration of your BBS is done. The screen looks like this:
  213.  
  214.  Configure General                                       Use: Esc Letters
  215.                                                                           
  216.                                                                           
  217.            Board name: Your boards name                               
  218.      SysOp name (you): Your name                                   
  219.    Location of system:                                         
  220.     Main phone Number:                                      
  221.                                                                           
  222.   Max inactivity time: 180  seconds                                       
  223.                                                                           
  224.   New users:                                                              
  225.          Access level: 1                                                  
  226.            Time limit: 60                                                
  227.                                                                           
  228.                                                                           
  229.                                        
  230.         Response time: 10 
  231.  
  232. The boards name you will have to enter yourself. It should match the name you have chosen 
  233. for your BBS.
  234.  
  235.  Your name is autodetected, however if there are several people who have SysOp access any of 
  236. these can be entered in this field. A user without SysOp axess will not be allowed entered in this 
  237. field however. 
  238.  
  239. The location and phonenumber of your BBS will also have to be entered by you manually.  
  240.  
  241. Max inactivity time is the number of seconds a user may remain online without being ejected 
  242. from the BBS. This is useful if the user falls asleep while online, or simply forgets that he/she is 
  243. online. It prevents not only that your system remains busy, but saves the user from a rather 
  244. large phonebill!
  245.  
  246. Access level is the level of access given new users. This will determine what areas of your 
  247. system they will be allowed to enter. More about the different areas later, in the Areas 
  248. submenu.
  249.  
  250. Time limit is the number of minutes a new user is given online. 
  251.  
  252. Response time is how fast the system reacts to input from the user. The default value of 10 
  253. should be acceptable for most systems.
  254.  
  255.  
  256. Path names
  257.  
  258. This is where you chose the different paths for your temporary files. The menu looks like this:
  259.  
  260.  
  261.  
  262.  
  263.  
  264.  
  265.  
  266.  
  267.  
  268.  
  269.  Configure Path Names                              Use: Esc Letters Digits
  270.                                                                           
  271.                                                                           
  272.   RAM disk temp dir:                                                      
  273.   F:                                                                      
  274.   Scratch-pad path:                                                       
  275.   E:\BBS\MAIN\SCRATCH.                                                    
  276.                                                                           
  277.                                                                           
  278.   CD-ROM drive letters:                                                   
  279.   1 - [ ]  2 - [ ]  3 - [ ]  4 - [ ]  5 - [ ]  6 - [ ]  7 - [ ]  8 - [ ]  
  280.   
  281. If you do not have a RAM disk then leave the field empty.
  282.  
  283. The scratch-pad should be placed on your fastest hard drive, or preferably on a RAM disk. This 
  284. should only be done however if the RAM drive is large (at least 2MB for a single node system).
  285.  
  286. If your system has any CD-ROM drives, and you wish to make the files on it (them) available 
  287. to the users, then place the drive letter in the chechbox(es) that match your system.
  288.  
  289.  
  290. File protocols 
  291. This is where you configure your file protocols. The screen looks like this:
  292.  
  293.  Configure File Protocols                         Use: Esc Letters Arrows
  294.                                                                           
  295.                                                                           
  296.     Letter: Z  Name: ZModem            OkErr: 0  Type: B_A                
  297.       Path: E:\BBS\MAIN\DSZ.COM                                           
  298.     Upload: port &p speed &s ha both rz &u                                
  299.   Download: port &p speed &s ha both sz &l                                
  300.    AutoRec: "**"#24                                                       
  301.                                                                           
  302.                                                                           
  303.    Z - ZModem                         &p com port                         
  304.    Y - YModem Batch                   &s speed                            
  305.    X - XModem                         &l send list                        
  306.    1 - XModem-1k                      &n node number                      
  307.    H - HS/Link                        &u upload directory                 
  308.                                       &t minutes left                     
  309.                                       &b base addr (com3+)                
  310.                                       &i irq (com3+)                      
  311.                                       &h com handle                       
  312.  
  313. These are autodetected, and unless you wish to install a protocall that is not autodetected, you 
  314. will not need to change any of these settings. 
  315.  
  316. If you should have to enter any protocols that are not autodetected, you will have to fill out the 
  317. following things:
  318.  
  319. Letter is the letter of the alphabet that represents this protocol in the list of available protocols 
  320. that are presented to the user in the PRotocol part of the UTilities menu.
  321.  
  322. Name is the name of the protocol. This is also shown to the user in the PRotocol part of the 
  323. UTilities menu.
  324.  
  325. *OkErr 
  326.  
  327. *Type has three possible switches; B, B and A. These stand for ?, Bi-directional and 
  328. Autodetect ????
  329.  
  330. Path is the path to the file, including the filename and extention.
  331.  
  332. Upload is the command string sendt to the program to start the upload process.
  333.  
  334. Download is the command string sendt to the program to start the download process.
  335.  
  336. AutoRec is the string the program should look for when autodetecting an upload. 
  337.  
  338. Archive programs
  339.  
  340. This is where you set the different archive programs. The supported programs are ZIP, UNZIP, 
  341. ARJ, ARC and LHA. These are all autodetected, and selfconfiguring, but you may need to 
  342. specify the programs if B&BSYS/2 does not find them for one reason or another. The screen 
  343. should look something like this:
  344.  
  345.  Configure Archive programs                              Use: Esc
  346.                                                                  
  347.                                                                  
  348.   UNZIP.EXE path (used to view/unpack *.ZIP archives):
  349.   E:\OS2\UNZIP\UNZIP.EXE
  350.   ZIP.EXE path (used to create *.ZIP archives):
  351.   E:\OS2\ZIP\ZIP.EXE
  352.   PKXARC.COM path (used to view/unpack *.ARC archives):
  353.   PKXARC.EXE
  354.   PKARC.EXE path (used to create *.ARC archives):
  355.   PKARC.EXE
  356.   LHA.EXE path (used to view/unpack/create *.LZH/*.LHA archives):
  357.   D:\TOOLS\LHA.EXE
  358.   ARJ.EXE path (used to view/unpack/create *.ARJ archives):
  359.   D:\TOOLS\ARJ241\ARJ.EXE
  360.  
  361. All you have to do here is to specify the path to the file in question. If you fail to do so (like this 
  362. system has in the case of PKXARC), the file will be highlighted in red on a grey background, 
  363. and only the filename the system searched for is entered as opposed to the other fields which 
  364. have a path and filename entered.
  365.  
  366.  
  367. Nodes (comms)
  368.  
  369. This is where you specify the nodes your system has, and also set up the modem. The screen 
  370. looks like this:
  371.  
  372.  Configure Nodes and Communications           Use: Esc Arrows Letters Del
  373.                                                                          
  374.                                                                          
  375.      1               Com Port: COM1
  376.                Init baud rate: 38400
  377.                Lock baud rate: Y
  378.                Type of login : Wait for RING/CONNECT
  379.            Ring before answer: 0
  380.                     IO device: COM1
  381.           
  382.           
  383.            Modem command strings:
  384.                Init: ATxxxxxxxxxxxxx
  385.              Answer: ATA
  386.            Off hook: ATH1
  387.             On hook: ATH0
  388.  
  389. 1 indicates the number of the node that is being configured. You can have as many nodes as 
  390. you wish in the registered version, but the $hareWare version only supports nodes 0, and 1. 
  391. Node 0 is the default Local Node, and can not be configured for modem-use.
  392.  
  393. Com Port is the port that the modem is connected to at the back of the macine.
  394.  
  395. Init baud rate is the speed that the system will communicate with the modem at. In the 
  396. $hareWare version this is set so that it can not exceed 9600. For v32bis modems 38400 is 
  397. recomended.
  398.  
  399. Lock baud rate can be set to either Y(es) or N(o), but Y(es) is recomended. This determines 
  400. wheter or not the rate of data transfer between the computer and the modem should be locked, 
  401. or be dictated by the connect baud rate.
  402.  
  403. Type of login can be set to several different types of logins, however for an eksternal node (one 
  404. where people can call in via a modem) the setting is: 
  405.  
  406. Wait for RING/CONNECT:    the BBS waits until it recives a RING signal from the 
  407. modem,                 sends the answer string (covered below) and waits until it 
  408. recived                 a CONNECT message from the modem. The user is then 
  409.                     allowed to log in.
  410.  
  411. The other possibilities are: 
  412.  
  413. Direct local login:     for purely local nodes (like node 0)
  414.  
  415. Direct login:         don't know really???????
  416.  
  417. Wait for DCD (0-Modem):     used for logins directly from another computer without the use of 
  418.                 amodem. A socalled 0-Modem cable is used to connect the     
  419.                 computers.
  420.  
  421. Rings before answer tells the BBS how many rings it should wait until it answers the call. This 
  422. defaults to 0, but can be set to any number.
  423.  
  424. IO Device is the device that provides the data Input and Output. This is generally the same as 
  425. the COM port.
  426.  
  427. The modem commands are different for each node, as each node has its own modem. These 
  428. commands varey from modem to modem, and you will have to consult your modems users 
  429. manual for the correct settings for your modem. However we have included some tips on what 
  430. might be included (although the commands for these settings can be different from modem to 
  431. modem!) in the init at the end of this document. See Apendix A: Init strings.
  432.  
  433. Init is sendt to your modem to set it in the correct state for recieving calls. All commands that 
  434. need to be sendt to the modem should be present on this line. It is sendt to the modem each 
  435. time B&BSYS/2 is started up, and after every caller has hung up. If the resultcode from the 
  436. modem is OK, then B&BSYS/2 will go into a state of "Waiting for RING/CONNECT" in the 
  437. case of external nodes.
  438.  
  439. Answer is the answer string for your modem. Usually this is ATA, and this is what B&BSYS/2 
  440. defaults to.
  441.  
  442. Off hook is the command string that instructs your modem to take the phone off the hook. This 
  443. is usually ATH1, and this is what B&BSYS/2 defaults to.
  444.  
  445. On hook is the command string that instructs your modem to put the phone on the hook. This is 
  446. usually ATH0, and this is what B&BSYS/2 defaults to.
  447.  
  448.  
  449. Timed events
  450.  
  451. B&BSYS/2 is capable of running events at given times of the day/week. Her må jeg ha hjelp, 
  452. da jeg ikke aner hvordan det funker....
  453.  
  454.  
  455. Net-links
  456.  
  457. B&BSYS/2 BBS's all have the capabilities to become members of a network called bNet. This 
  458. network consists of B&BSYS/2 BBS's only, and they exchange messages at given intervals. To 
  459. become a member of bNet all you have to do is to register your copy of B&BSYS/2. You will 
  460. then be given a number, indicating which BBS you are, and be given a HUB that you can 
  461. connect to. This HUB will take care of all the message-transfers.
  462.  
  463. As of this day, the bNet and Net-links part of B&BSYS/2 are not perfected, and as souch they 
  464. have not been implemented. You are therefor strongly advised to not use this feature of 
  465. B&BSYS/2, until an upgrade is available.
  466.  
  467.  
  468. Areas
  469.  
  470. This is where you configure the diffrent confrences, file areas and bulletin areas. The screen 
  471. looks like this:
  472.  
  473.  Configure Areas                              Use: Esc Arrows Letters Del
  474.                                                                           
  475.                                                                           
  476.    Info from Bnet                     Area name:                          
  477.    Mail Box                           Main Board                          
  478.    B&B Support                        Area type: Local area               
  479.    Main Board                         Area code: MAIN                     
  480.                                       File code: MAIN                     
  481.                                       Door code: MAIN                     
  482.                                       Bull code: MAIN                     
  483.                                       Other:                              
  484.                                       # of old msg to read: 100           
  485.                                       Area flags:                         
  486.                                       New user autojoin                   
  487.                                       Message type:                       
  488.                                       Public messages                     
  489.                                       Area host: Not a bNet area          
  490.                                                                           
  491.                                                                           
  492.                                                                           
  493.                                                                           
  494.                                       Access levels ->                    
  495.                                       Directories ->                      
  496.  
  497. These are the areas that are preconfigured with B&BSYS/2:
  498.  
  499. Info from bNet
  500. Mail box
  501. B&B support
  502. Main Board
  503.  
  504. You may add as many as you wish.
  505.  
  506. The following things have to be configured for each new area:
  507.  
  508. Area name is the name of the area in the areas list. This area list has to be made by you, the 
  509. SysOp. This will be covered later in this document.
  510.  
  511. Area type will usually be a Local area, as bNet areas are not fully supported as of yet.
  512.  
  513. Area code is a code of up to four letters, that specifies the area as a message area. NO two 
  514. areas may share the same area code! If you enter an areaname, but omit the areacode "MAIN" 
  515. will be entered automatically. If this is done you WILL NOT BE ABLE TO CHANGE IT!! 
  516. You may therfore be wise in filling this in first, and leaving the name blank until this has been 
  517. taken care of. A change is to come here, making it impossible to have two areas with the same 
  518. code!
  519.  
  520. File code is also a code of up to four letters. Areas are allowed to share the same file code, and 
  521. if you intend the files to be available to all users it may be wise to set this file code to MAIN. 
  522. This is done because users need to be in the area that the file code is set for to be able to list 
  523. and download the files in that area. If all files that are to be available to the users are kept in the 
  524. file code MAIN, users will not need to change areas to see all files available to them. This also 
  525. provides you with an easy way of shielding some users from certain files (typically adult 
  526. pictures, or private files). You merely place those files in an area with a diffrent file code, and 
  527. change (raise) the access level needed to enter that area! (This will be covered in Access levels.)
  528.  
  529. Door code is also a code of up to four letters, and all the limitations that apply to the file codes 
  530. are in effect here as well. You may wish to make certain doors available to only a limited 
  531. number of users, and therefor specify a code that is different from MAIN, which is the default. 
  532.  
  533. Bull code is the same code of up to four letters, but it controlls the bulletins that are available in 
  534. a certain area. MAIN is the default here as well, and like the File and Door areas you will only 
  535. need to change the default if the bulletins should be hidden from scertain users.
  536.  
  537. # of old messages to read is the limit for how many old messages a new user should read in that 
  538. perticular area. This number can be set as high (or low) as you wish. However new users may 
  539. not wish to read trough several hundred messages to become up to date, so set the number with 
  540. care.
  541.  
  542. Area flags are certain limitations, or restrictions that pertain to that perticular area. The flags are 
  543. as follows:
  544.  
  545. External area:                 used about bNet areas
  546.  
  547. New user autojoin:            a new user is automatically a member of this confrence
  548.  
  549. No resign:                 users may not resign from this confrence
  550.  
  551. New user autojoin; No resign:    a new user automatically joins this confrence, and may 
  552.                     not resign from it.
  553.  
  554. The space can also be left blank, in which case no  restrictions apply. This is the case for most 
  555. local areas, and is also the default!
  556.  
  557. Message type lists the type of messages that are allowed in an area. The valid choices are:
  558.  
  559. Public messages:         all messages are public, and can be read by all
  560.  
  561. Private messages:         all messages are private, and can only be read by the author of 
  562.                 the message, the recipiant of the message and the SysOp.
  563.  
  564. Public/Private messages:     messages can either be public or private. 
  565.  
  566. Please note that the SysOp can read all messages, even those marked as private! It is up to the 
  567. SysOp how much privacy is to be expected on any given BBS.
  568.  
  569. Area host is used for bNet areas, and as such has not been activated yet.
  570.  
  571. Access levels have to be set for any area to become active. There are two very important things 
  572. to remember when setting access levels. The first is to whom you wish to give access to this 
  573. perticular area. This is up to you, but you should keep in mind that all users have at least the 
  574. minimum access level, and if the data in the area is sensitive (adult pictures are one type of files 
  575. that should be shielded from some users) you should specify a higher access level. Specifying 
  576. the access level is done by entering the letter that corresponds to the level you wish to give that 
  577. area. You then enter a code for what users with that access level may do. The codes for this 
  578. are:
  579.  
  580. R ead
  581. W rite
  582. U pload
  583. D ownload
  584. O pen
  585.  
  586. All users with a higher access level will recieve the same privelages as the first level you specify. 
  587. This is only natural, and B&BSYS/2 will fill the remaining access levels to save you the work. 
  588. You may of course specify that some users will only be allowed to read messages, and perhaps 
  589. write them in certain areas, and only users with a higher access level are given up/download 
  590. privelages. The variations on this (and openness on your system) are up to you to decide!
  591.  
  592. In addition to these five codes comes the second of the very important things to remember. 
  593. That is to place an S (for SysOp) at level 15 (the letter P). This is to ensure that you are given 
  594. SysOp access in this area, and as souch have all messages routed to you as well as the intended 
  595. recipiant. This also grants you the option of killing messages that are deemed not appropriate by 
  596. you, either morally or legally. Please remember that as a SysOp you are responsible for the files 
  597. and messages that appear on your system!
  598.  
  599. Directories is where you speciy which directories are assigned to each area. The screen looks 
  600. like this:
  601.  
  602.  
  603.  
  604.  Configure Directories              Use: Esc Arrows Letters Del PgUp DgDn
  605.                                                                           
  606.                                                                           
  607.                                       Directory name:                     
  608.                                                                           
  609.                                       Disk directory:                     
  610.                                                                           
  611.                                       Directory flags:                    
  612.  
  613.  
  614. The field for directory name is the name that will be listed in B&BSYS/2 as the directory. This 
  615. name should have some connection with the files in that specific directory. You may use spaces 
  616. in the name, and any alphanumerical combination.
  617.  
  618. Disk directory is the directory that is on the hard drive. This does not have to have any 
  619. connection to the directory name, but it MUST be exclusive. Two directory names can not 
  620. share the same disk directory!
  621.  
  622. Directory flags are really only used for the Upload directories, but can be used in the other 
  623. directories as well. The flags that are available are:
  624.  
  625. Uploaddir:            the specified directory is the upload directory for that file code
  626.  
  627. Show uploader:         the name of the person that uploaded a file is shown along with 
  628.                 the file description
  629.  
  630. Uploaddir;Show uploader:     the specified directory is the upload directory for that file code, 
  631. and the name of the uploader is shown along with the file description. 
  632.  
  633. There must be an Upload directory for every file code! If there is not one, then an error code 
  634. will be recorded in the Log!
  635.  
  636.  
  637. After configuring an area it may be wise to move the highlight up a few notches to see if the 
  638. changes have taken effect, and exit the area menu before entering a new area or changing an 
  639. existing one. This is to ensure that all changes have been saved to disk, in case of a disaster, like 
  640. a power outage or a hanging of the computer.
  641.  
  642.  
  643. Return to BBS
  644.  
  645. This returns you to the BBS. You can also press Esc to exit the COnfigure menu. All changes 
  646. will be saved regardless!
  647.  
  648. DOOR.CMD
  649.  
  650. B&BSYS/2 has the ability to run doors (external programs, games ... ) all
  651. doors are executed via the DOOR.CMD file in your B&BSYS-root directory.
  652.  
  653. DOOR.CMD is called with these parameters:
  654.  
  655. DOOR.CMD [Node#1] [Node#2] [ComPort] [PortSpeed] [BaseAddr] [IrqVector]
  656.          [DoorName] [DoorCode]
  657.  
  658. Node#1    is the number of the node, this is not prefilled.
  659.  
  660. Node#2    is the number of the node, this is prefilled with zero's to a
  661.           length of three characters.
  662.  
  663. ComPort   is current comport
  664.  
  665. PortSpeed is current comport speed
  666.  
  667. BaseAddr  These are the base/irq data in the node setup (PS! Be sure to
  668. IrqVector set these to the same values as your fossil driver)
  669.  
  670. DoorName  The name or number of the door to be executed
  671.  
  672. DoorCode  The B&BSYS/2 DoorCode for current area
  673.  
  674. Examples:
  675.  
  676. DOOR.CMD 3 003 1 19200 02e8 3 1 MAIN
  677. DOOR.CMD 2 002 3 9600 03f8 4 TheGame GAME
  678.  
  679. The DOOR.CMD file may run both OS/2 and DOS executables.
  680.  
  681.  
  682.  
  683. MENU BY MENU IN THE B&BSYS/2 INTERFACE
  684.  
  685. GLOBAL MENU FUNCTIONS
  686.  
  687. There are several global menu functions that are already built into B&BSYS/2. In addition to 
  688. these you can create scripts that provide a global functions for your particular system. This is 
  689. useful for customising your system. The global functions that are present in B&BSYS/2 are as 
  690. follows:
  691.  
  692. B ulletin command       R ead (messages) comm.  T ransfer scratchpad
  693. C hat/Node command      S elect a new area      No de message (send)
  694. F ile transfer command  U tility command        Com ment to SysOp
  695. Q uit to main command   O pen a external door   G oodbye (logoff)
  696.  
  697. In addition to these that are available to everyone there is one that is reserved the SysOp. That 
  698. is the $-function that lets you enter the SysOp menu. This has it's own set of commands that 
  699. will be covered later in this document.
  700. MAIN MENU
  701.  
  702. The main menu has it's own functions that can only be evoked from within this menu. These 
  703. are:
  704.  
  705. L ist users             Ti me left/used         X pert mode(on/off)
  706.  
  707. List users will either list all the users that are registered to your BBS, or only the users whose 
  708. names match the string of letters the user enters.
  709.  
  710. Time left/used shows the user how much of the time he/she is allowed on the system is left and 
  711. how long he/she has been on the BBS today.
  712.  
  713. Xpert mode toggles whether or not the user sees the "(? for menu)"
  714.  
  715.  
  716. MESSAGE MENU
  717.  
  718. It is from within this menu that you read and write messages. The functions that are available 
  719. for reading messages are:
  720.  
  721. # read that message     .  review last read     < Read last in chain
  722. + read next message     +# skip # forewrd, read > Read reply to this
  723. - read previous message -# skip # back, read
  724.  
  725. The following functions are used for the area as a whole:                                                                      
  726.                                                                       
  727. E nter message          Sh ow area status       Ki ll message
  728. R eply to message       V iew messages in area  Un kill message
  729. M ark messages                                  Ed it message (change)
  730. D ump message(s)        Res ign from area       Mo ve message (n/a)
  731.  
  732. When you write a message you have a choice of either a line-based editor or a full-screen editor 
  733. that is built into B&BSYS/2. This full screen editor allows you to move around using the arrow 
  734. keys on your keyboard or using the standard WordStar keys you may be used to from other 
  735. systems. 
  736.  
  737. When you R(eply) to a message you get the option of quoting the previous message. Quoting a 
  738. message means that everything that was in the previous message will be added to the top of the 
  739. message you are about to write, whit the initials of the author and a vertical line in front of 
  740. every line of text. This ensures that everyone knows who wrote what. You are also asked if the 
  741. message should be marked as private (given that private messages are allowed in that perticular 
  742. area!). This assures you that only the intended recipiant of the message (and the SysOp who 
  743. can read anything!) can read it. You are also given the choice of editors.
  744.  
  745. You can M(ark) messages in different ways, giving you full control over messages to you. This 
  746. is practical when you want to dump a number of messages to the scratchpad and download 
  747. them for reading offline.
  748.  
  749. D(ump)ing messages to the scratchpad allows you to download these messages as a file and 
  750. read them offline, thus saving you valuable time online. Dumping messages allows you to read 
  751. messages, however you will have to go back online to reply to the ones meant for you. There 
  752. are offline-readers that allow you to read messages and reply to them offline, and then upload 
  753. the replys automatically next time you log on, but as of yet none of these support B&BSYS/2's 
  754. messageformat. However QWK-support is to be built into B&BSYS/2 allowing you to both 
  755. read and reply to messages offline, using a QWK-compatible mail-reader.
  756.  
  757. Users can search for unread messages either by pressing ENTER until they have read all 
  758. messages, or they can get a list of unread messages in the different areas by using the Sh(ow 
  759. area) function. This will tell you how many messages are in an area, and how many of these are 
  760. for you.
  761.  
  762. The SysOp can define whether or not users will be allowed to R(esign) from certain areas. This 
  763. is useful for having areas where you can be certain all the members of your BBS will get a 
  764. message you have posted to ALL users! This is done in the $ysOp COnfigure AREA menu, as 
  765. described above under CONFIGURATION WITH THE U(til) Co(nfig) COMMAND.
  766.  
  767. K(illing) of messages can only be done by the SysOp and the originator of that message. If the 
  768. message has been read by anyone the "killer" will be given a message to that effect. 
  769.  
  770. FILE MENU
  771. This is where the user will find files for Download and (hopefully) Upload. The functions that 
  772. are used are as follows:
  773.  
  774. Up load a file          L ist files available   K eyword file search
  775. D ownload file(s)       N ew files scan (date)
  776. V iew an archived file  W ild-char file search
  777.  
  778. The user can Up(load) files using the upload command. The user is told to begin the upload at 
  779. his/her end. B&BSYS/2 will then autodetect the file(s) being sendt, and also place the file in the 
  780. appropriate upload-area depending on which area the user was in at the time she was in at the 
  781. time. The user is then asked to type a simple description of the file. This description may be as 
  782. long as 110 letters, including spaces, devided into two lines of 55 characters each!
  783.  
  784. D(ownload) allows the user to specify filenames until he/she enters a blank space and the file(s) 
  785. are then sent using the protocol defined in the Ut(ilities) Pr(otocol) menu. There are several 
  786. commands that can be evoked from within the D(ownload) command. These are:
  787.  
  788.     ?    Show available commands
  789.     /a    Abort download
  790.     /l    List tagged files
  791.     /r    Remove a file from the list of tagged files
  792.  
  793. Tagging files for download can be accomplished in one of two ways. The user can either 
  794. specify a wildchard, and all files matching that wildchard will be tagged, or the user may specify 
  795. one file at a time.
  796.     
  797. V(iew)ing a file causes B&BSYS/2 to give the user a complete list of files in an archived file 
  798. (ZIP, ARJ, ARC or LHA), or in the case of GIF-files the resolution and number of colours (It 
  799. will NOT display the picture itself).
  800.  
  801. L(ist)ing files will give the user a complete list of the files in the area he/she is in at the time, or 
  802. one of the directories only. For a list of the available directories the "?" command is used. 
  803. B&BSYS/2 will NOT create a list of available directories. That has to be done manually by the 
  804. SysOp.
  805.  
  806. W(ild-char) searching is done by specifying a wild-chard for B&BSYS/2 to search for matches 
  807. to. It searches through the filearea(s) and lists the files that mach the specified search-criteria. 
  808. The common wild-chards "*" and "?" may be used. The difference between these two is that 
  809. while "*" can represent one or more letters "?" can replace one letter only. 
  810.  
  811. K(eyword) searching is more time-consuming but also more effective if you don't know the 
  812. name of the file you are looking for, because it also searches the description of the files for a 
  813. match. DO NOT use wild-cards in this search, as it is case-sensitive!!! 
  814.  
  815.  
  816. BULLETIN MENU
  817. The bulletins that are to be a part of any BBS must of course be made by the SysOP, and the 
  818. SysOp must also make a bulletin list to be named areaLIST.* where "area" is the four-letter 
  819. code used for that spesific bulletin-area in the configuration. The file areaLIST.* is to reside in 
  820. the BULLETS subdirectory. The bulletins are numbered according to the name of the files they 
  821. represent. The bulletins themselves are named areaxxx.* where xxxx is the number of that 
  822. perticular bulletin. The first bulletin in the MAIN area would be called MAIN0001.*. These 
  823. files also reside in the BULLETS subdirectory. The functions in this area are:
  824.  
  825. # read that bulletin    D ownload a bulletin
  826.  
  827. # represents the number of the bulletin the user wants to read.
  828.  
  829. The user may also D(ownload) a bulletin if he/she wishes, and will be prompted for the number 
  830. of that bulletin. The download will be completed using the default protocol for that user.
  831.  
  832. CHAT MENU
  833. There is the possibility of chatting with other nodes on a multinode BBS or with the SysOp on 
  834. a single node system. If the SysOp has made himself available he will receive a warning by the 
  835. machine beeping that someone wants to talk to him/her. The same goes for other nodes, they 
  836. will be notified with either a message on the screen or a message and a beep if their system 
  837. allows it. The functions for this menu are:
  838.  
  839. W ho is online          Sy sOp chat (request)   A vailability (on/off)
  840. Ch at with another node
  841.  
  842. W(ho) gives the user a list of active users on the different nodes and if the SysOp is available or 
  843. not. If the SysOp is available there will be a red message to that affect at the bottom of the list 
  844. of active nodes. If the SysOp is not available no message will be at the bottom of said list.
  845.  
  846. Sy(sOp) will call the SysOp if  he/she has set him/herself available. If the SysOp is not available 
  847. the user will be asked to leave a Com(ment) instead. The SysOp can answer a chat request by 
  848. making the window that node is in active and pressing Alt-C. The chat-session is ended by the 
  849. SysOp by pressing Alt-C again.
  850.  
  851. The user can set himself available for chat or turn this function off using the A(vailability) 
  852. function. 
  853.  
  854. Ch(at) is used in conjunction with the number of the node the user wishes to chat with, or 
  855. he/she is prompted for the node-number. The user on the node that recives the chat request can 
  856. answer by entering Ch(at) followed by the number of the node. The number of the node that 
  857. initiated the chat-request is listed to the reciever of that request along with the request-message.
  858.  
  859. UTILITIES MENU
  860.  
  861. This menu allows the user to update his personal preferences and change his personal data and 
  862. password. The functions are:
  863.  
  864. V iew user profile      N ame change            AN SI graphics toggle
  865. Ar chive format         A ddress change         IB M chars toggle
  866. Pr otocol change        P hone number change    Cl ear scr. toggles
  867. Use ANSI toggles        Pa ssword change        La nguage selection
  868. To ggle switches        Li nes on screen        Ta sk Manager (on/off)
  869.  
  870. V(iew) gives the user a list of his/her active configuration. It is then easy to identify which 
  871. things need to be changed to suit the users preferences. 
  872.  
  873. Ar(chive format) tells the system which archiver (ZIP, ARJ, ARC and LHA are available) that 
  874. the user would prefer used for the files to be archived using (this format is used for the 
  875. messages that the user grabs and the bulletins that are downloaded, NOT the archived files on 
  876. the system that are free for download!). 
  877.  
  878. Pr(otocol) tells the system which transfer protocol the user would like to use as a default. The 
  879. system will then use this protocol instead of prompting the user every time. 
  880.  
  881. Use ANSI toggles whether the system should display ANSI graphics in menus, bulletins and 
  882. messages. 
  883.  
  884. To(ggle) is used to decide whether or not to display message status at logon. 
  885.  
  886. N(ame) allows you to change the name you will be using on the BBS. This can be used to 
  887. change your Alias on boards that allow this, or if your name has changed for whatever reason. 
  888. This will NOT redirect messages adressed to your new name, but users will be given a message 
  889. that as your old name is no longer be a part of that BBS's user-list! It will be up to the user to 
  890. announce the name-change!!
  891.  
  892. A(dress) allows you to change the adress you have listed to the system. Your old adress will be 
  893. displayed, and you can press ENTER if you do not wish to make any changes. This should be 
  894. changed if you move however, as it allows the SysOp to get in touch with you should there ever 
  895. be a need for it.
  896.  
  897. P(hone number) allows you to change the phone number you have listed. The number for your 
  898. Home and Work numbers are both changable from this menue. If you do not wish to change 
  899. the number that is highlighted, then press ENTER, and the next number will be highlighted. 
  900. These numbers should be changed to reflect your current numbers, as it allows the SysOp to 
  901. get in touch with you should there ever be a need for it.
  902.  
  903. Pa(ssword) allows you to change your password used during login. You are prompted for your 
  904. old password once and your new password twice (to ensure you typed it correctly!). This new 
  905. password will be used for all consequent logins.
  906.  
  907. Li(nes) sets the number of lines the system will let scroll across the screen before the user gets a 
  908. --more-- message. Set this to 0 and the system will not stop scrolling. 
  909.  
  910. The AN(SI) function toggles whether ANSI should be used at all (useful if the user doesn't 
  911. have ANSI-capabilities in his/her communications-package) 
  912.  
  913. IB(M) toggles the IBM extended ASCII text mode. 
  914.  
  915. Cl(ear) toggles whether or not to clear the screen before showing messages, bulletins or menus. 
  916.  
  917. La(nguage) toggles between English and Norwegian language in menus and functions. 
  918.  
  919. Ta(sk) toggles whether or not you want to allow background execution of tasks.
  920.  
  921. SYSOP MENU
  922.  
  923. This is where you change the look and feel of your BBS! You can make changes even while 
  924. users are logged on to your system, allowing you to make changes without having to shut 
  925. down!! This is a major improvement over several of the larger BBS-systems that are on the 
  926. market. If one of the changes you make forces the BBS to reset because of an error the user is 
  927. not logged off, but is instead given the opportunity to log on again without having to call back. 
  928. No extra cost is forced upon him/her by your mistake (even though a mistake is unlikely!). 
  929.  
  930. Co nfigure your BBS     EF Edit file            PA Pack area
  931. L og, Show logfile      AF Add files (install)  DU Delete user (kill)
  932. Us er editor            DF Delete file          CF Classify file
  933. Mem ory/system info     D os shell/command      SF Sort files
  934.  
  935. Co(nfigure) is used to change the basics of the BBS. This is covered in detail in the section of 
  936. this file called "CONFIGURATION WITH THE U(til) Co(nfig) COMMAND". This section 
  937. was placed at the beginning of this document because it is neccesary for the proper 
  938. configuration of B&BSYS/2, and as souch was covered as early as possible.
  939.  
  940. L(og) shows the user log for the node you specify. This contains a list of new users and files 
  941. that have been uploaded, and to where. It also contains a list of the different errors that have 
  942. occured on the system.
  943.  
  944. Us(er editor) is used to grant users higher access levels or unkill an unintentionally killed user. 
  945. You can also grant the user higher timelimits if you so wish. 
  946.  
  947. The Mem(ory) function gives you a list of system information. 
  948.  
  949. EF allows you to edit the description of a file or a list of files, depending on how you specified 
  950. the file(s). The file(s) to be edited can be listed with wild-chards to increase the flexibility of the 
  951. editing process. However if the SysOp plans to edit several files the CF command is superior!
  952.  
  953. AF adds files to the filearea the SysOp specifies. The areaname is to be used, and not the 
  954. directoryname! The files in the directory specified for that filearea that do not have a description 
  955. will be shown to the SysOp and he/she will have to type in a description. If one is not addes the 
  956. file will not be added to the filelist. The SysOp can specify a file that contains a list of the files 
  957. that are to be added, and their descriptions. This allows ease of installation if the files come with 
  958. a description file, or one can be made ahead of time. The default description file name is 
  959. DESCRIPT.ION, which is the file used by 4DOS (4OS2) and NDOS for attaching long 
  960. descriptions to files. This can be changed however to match any filename. The files that are to 
  961. be added can have filenames that are up to 16 characters long (including periods!) on HPFS 
  962. disks. FAT-disks have the familiar 8.3 filename restrictions.
  963.  
  964. DF will delete a file or several files (using wild-chards) from the filelist and the harddrive. 
  965.  
  966. D(os shell) allows you to execute a DOS-command or run a file, either from within the BBS, or 
  967. after you shell to the command line! 
  968.  
  969. PA allows you to pack an area for storage, saving all the messages in that area for later refrence.
  970.  
  971. DU allows you to kill a user so that he/she is not allowed back onto the BBS. This can be done 
  972. for different reasons, but be careful! They are gone for ever!! 
  973.  
  974. CF is a full screen file editor. It allows the SysOp to change the description of a file, move a file 
  975. (with the description intact!) to a different filearea or delete files form the filelist and the 
  976. harddrive. The files are tagged using the insert key, and may then be edited in the above 
  977. mentioned ways.  
  978.  
  979. SF sorts the files in the filearea you specify. This can be time-consuming if you have a large 
  980. number of files, but it is recommended that you do this often, so that the file index is updated, 
  981. and the searches will go faster. Files will also be placed in alphabetical order, which makes it 
  982. easier to find files even without the search tools. You are given the option to update the 4DOS 
  983. (4OS2) or NDOS DESCRIPT.ION files as well, allowing 4DOS (4OS2) or NDOS users to see 
  984. the descriptions when using the DIR command at the commandline.
  985.  
  986.  
  987.  
  988. Creating the BBS-specific files
  989.  
  990. As your BBS is different from every other BBS it is essencial that you create files that reflect 
  991. this. There are several files that help users find their way around your system. These will have 
  992. to be created by you using an ANSI drawing utility like TheDraw⌐. The files that are most 
  993. important are the lists of the different confrences, and the different file areas. In addition it may 
  994. be wise to create bulletins that contain information that are of interest to your users.
  995.  
  996. Creating a list of confrences
  997.  
  998. The confrence list comes up every time a user trys to Select an area but does not specify which 
  999. area that should be. The file should be called AREALIST.* and should contain all confrences 
  1000. on your system, members only included. This because it gives the user an easily accessible way 
  1001. of learnign what the system has to offer. It might be a good idea to include information on the 
  1002. confrence, like who is in charge of it or if it is for members only (what the access level is to 
  1003. enter). There is a sample file that comes with B&BSYS/2, and contains the pre-installed areas.  
  1004.  
  1005. Creating lists of file areas
  1006.  
  1007. You have to create your own list of file areas that is consistent with your BBS. These files are 
  1008. generally ANSI files (made in an ANSI-drawing utility like TheDraw⌐) that B&BSYS/2 
  1009. displays when a user asks for them (by specifying that "?" should be listed). The file should be 
  1010. called DIRSarea.* where "area" is the four letter file code. You will have to make one for every 
  1011. single file area that has a seperate file code. 
  1012.  
  1013. Creating a list of bulletins
  1014.  
  1015. To make a list of the bulletins you create the file areaLIST.* where "area" is the four letter Bull 
  1016. code.
  1017.  
  1018. Creating bulletins
  1019.  
  1020. Bulletins generally contain information that is of interest to the user. The files are called 
  1021. areaxxxx.* where "area" is the name of the Bull code, and "xxxx" is the number of the bulletins 
  1022. starting with 0001. 
  1023.  
  1024.  
  1025. Scripts that need to be made
  1026.  
  1027. There are several scripts that need to be created, to give the user a more pleasant time when 
  1028. logging on to your system. These scripts will be covered in detail, as to when they are executed, 
  1029. and hints to what they might contain.
  1030. =8=8=8=8=8=8=8=8=8=8=8=8=8=8=8=8=8=8=8=8=8=8=8=8=8=8=8=8=8=8=8=8=8=8=8
  1031. =8=8=8=
  1032.  
  1033.  
  1034. SCRIPT LANGUAGE
  1035.  
  1036. B&BSYS/2 offers a small script language to allow you to give your BBS your own look and 
  1037. feel. The scripts are called before or after important internal functions of B&BSYS/2. All 
  1038. scripts should be placed in the SCRIPTS sub-directory.
  1039.  
  1040.  
  1041. SCRIPTS CALLED
  1042.  
  1043. The following script files will be executed if they are present in the SCRIPT sub-directory:
  1044.  
  1045. GOODBYE.*       This script is executed when a user use the G(oodbye) command to exit 
  1046.             B&BSYS/2 or just drop the line. The script does also function as a     
  1047.             good-bye bulletin.
  1048.  
  1049. LOGIN.*             This script is executed just before the user gets his command prompt 
  1050.             (after display of users stats).
  1051.  
  1052. PREDOWN.*       These scripts are executed before and after downloads, the scripts
  1053. POSTDOWN.*      can be used to control download rules and so on The scripts also
  1054.                     function as file transfer bulletins, but only with normal file transfers.
  1055.  
  1056. PREUP.*             Same as the *DOWN.* scripts but for uploads.
  1057. POSTUP.*
  1058.  
  1059. PREOPEN.*       Same as the *DOWN.* scripts but for door usage. Be aware of that 
  1060. POSTOPEN.*      these scripts function in all areas.
  1061.  
  1062. PREREG.*         These scripts are executed before and after a new users register.
  1063. POSTREG.*
  1064.  
  1065. U-[com].*           Called from Utility menu if unknown command.
  1066. B-[com].*           Called from Bulletin menu if unknown command.
  1067. C-[com].*           Called from Chat/Node menu if unknown command.
  1068. $-[com].*           Called from $ysOp menu if unknown command.
  1069. F-[com].*           Called from File menu if unknown command.
  1070. R-[com].*           Called from Read menu if unknown command.
  1071.  
  1072. G-[com].*           Called from all menus if none of the above exits and unknown     
  1073.             command.
  1074.  
  1075. The astrix is a language key or can be left blank for multilangual scripts. The language key for 
  1076. Norwegian scripts is *.N, and for English the language key is *.E.
  1077.  
  1078.  
  1079. SCRIPT VARIABLES
  1080.  
  1081. In scripts you have several variables for you usage, these are:
  1082.  
  1083. &[1-9]      User variables.
  1084. &ac         Current area code.
  1085. &ad         Current area door-code.
  1086. &af             Current area file-code.
  1087. &an         Current area name.
  1088. &td             Current date.
  1089. &th             Current time (hour).
  1090. &tm         Current time (minute).
  1091. &tu             Time used so far this logon, in minutes.
  1092.  
  1093. &u - - - USER RECORD VARIABLES
  1094. &ua1          First line of address
  1095. &ua2        Second line of address
  1096. &ual        Accesslevel
  1097. &uc         City
  1098. &ud#        Number of downloads
  1099. &udk        KB downloaded
  1100. &uf        First name
  1101. &ul        Last name
  1102. &umw        Messages written
  1103. &umr        Messages read (Not counted in B&BSYS/2 yet)
  1104. &un        Name
  1105. &uph        Home phone
  1106. &upw        Work phone
  1107. &uu#        Number of uploads
  1108. &uuk        KB uploaded
  1109. &uta        Time allowed each 24 hours
  1110. &utl            Time left when logging on (&utl - &tu = time left)
  1111. &utt        Time totally used
  1112.  
  1113. &$ - - - SYSTEM DATA VARIABLES
  1114. &$h         Systems current com-handle in hex.
  1115. &$m        Current menu level: M(ain), R(ead), F(ile) and so on.
  1116. &$v         Display current B&BSYS/2 version.
  1117.  
  1118. &! - - - DISPLAY SETUP/MANIPULATION PROCEDURES
  1119. &!l        Do linefeeds until cursor resides at the bottom screen line.
  1120. &!m        Do more prompt.
  1121. &!w        Wait for keypress before continue.
  1122.  
  1123.  
  1124. These variables can be used anywhere in your scripts.
  1125.  
  1126.  
  1127. SCRIPT COMMANDS
  1128.  
  1129. A script language without commands is nothing so here they come! These
  1130. commands are available for script programming:
  1131.  
  1132. @+ [uservar] [firstnumber] [secondnumber]
  1133. ""
  1134. @- [uservar] [firstnumber] [secondnumber]
  1135. ""
  1136. @* [uservar] [firstnumber] [secondnumber]
  1137. ""
  1138. @/ [uservar] [firstnumber] [secondnumber]
  1139. ""
  1140.  
  1141. @assign [uservar] [textstring]
  1142. """""""
  1143.   Assigns a textstring to a uservariable
  1144.  
  1145.   "@assign 1 This is a string"
  1146.  
  1147. @command [commandline]
  1148. """"""""
  1149.     Execute standard B&BSYS/2 command from a script.
  1150.  
  1151.   "@command Read Enter Sysop"
  1152.  
  1153. @delfile [filename] {filename} {filename} ...
  1154. """"""""
  1155.   Delete one or more files on the harddisk.
  1156.  
  1157.   "@delfile B&BSYS.EXE" (not try this)
  1158.  
  1159. @exit
  1160. """""
  1161.   End script execution and return to B&BSYS/2.
  1162.  
  1163.   "@exit"
  1164.  
  1165. @file [filename]
  1166. """""
  1167.   Open a file for output, the file is created if it do not exist.
  1168.  
  1169.   "@file scripts\tempfile.lst"
  1170.  
  1171. @goto [label]
  1172. """""
  1173.   Go to @[label].
  1174.  
  1175.   "@goto firstlabel"
  1176.  
  1177. @if [firststring] [secondstring] [label]
  1178. """
  1179.   Compare two strings, if equal then goto [label] of not then continue.
  1180.  
  1181.   "@if String String ThisLabel"
  1182.  
  1183. @if [firstnumber] [<|=|>] [secondnumber] [label]
  1184. """
  1185.   Compare two numbers, if condition is TRUE then goto [label] if not then
  1186.   continue.
  1187.  
  1188.   "@if 1 = 2 OneLabel"
  1189.  
  1190. @iffile [filename] [label]
  1191. """""""
  1192.   If file [filename] exist the goto [label] if not then continue.
  1193.  
  1194.   "@iffile scripts\tempfile.lst"
  1195.  
  1196. @input [uservar] [prompt]
  1197. """"""
  1198.   Let the user input a text string into the given uservar.
  1199.  
  1200.   "@input 1 Type a command:"
  1201.  
  1202. @log [text]
  1203. """"
  1204.   Write a line to node log file. If [text] starts with "$" the text goes to
  1205.   the .SYS log instead of the normal node log.
  1206.  
  1207.   "@log $User has failed"
  1208.  
  1209. @mod [uservar] [firstnumber] [secondnumber]
  1210. """"
  1211.  
  1212. @run [program] [parameters]
  1213. """"
  1214.   Runs an external program, this must be a OS/2-text mode executable.
  1215.  
  1216.   "@run b&bsys.exe"
  1217.  
  1218. @rundos [program] [parameters]
  1219. """""""
  1220.   Same as @run, but this loads a new command interpreter before running
  1221.   your program, this may run .CMD files and DOS executables as well as
  1222.   OS/2 executables.
  1223.  
  1224.   "@rundos test.cmd"
  1225.  
  1226. @select [words] [prompt]
  1227. """""""
  1228.   Wait for user input.
  1229.  
  1230.   "@select YesNo Delete message?" (this go to first @Y or @N after present
  1231.                                                   
  1232.                  line)
  1233.  
  1234. @set [sysvar] [value]
  1235. """"
  1236.   Set a specific system variable to given value.
  1237.   [sysvar] [value]
  1238.   menu     M,R,B,F,C,$,U
  1239.  
  1240. @show [filename]
  1241. """""
  1242.   Type a textfile.
  1243.  
  1244.   "@show scripts\tempfile.lst"
  1245.  
  1246. @write [text]
  1247. """"""
  1248.   Write a text to open file, no CRLF included.
  1249.  
  1250.   "@write This is a text"
  1251.  
  1252. @writeln [text]
  1253. """"""""
  1254.   Write a text to open file, CRLF included.
  1255.  
  1256.   "@writeln This is a text line"
  1257.  
  1258.  
  1259.  
  1260. TECHNICAL INFO
  1261.  
  1262. SYSTEM REQURIEMENTS
  1263. This program runs under OS/2, and as a result you are forced to live with it's demands on your 
  1264. hardware. We feel that for any type of performance a 386dx with 8 MB of RAM is the 
  1265. minimum, although OS/2 (and therefore B&BSYS/2) will run on any 386 with over 4MB of 
  1266. RAM. (er dette riktig?????) In addition you will of course need a modem and a telephone line! 
  1267. The ShareWare version of B&BSYS/2 has certain features that are limited. The one thing you 
  1268. will notice is that it is not capable of exceeding 9600 baud, and you are limited to 20 users on 
  1269. the system. This means that the 21. person who logs on to your system will overwrite the 20. 
  1270. person......so if you plan to start your own BBS this program can get you started, but if you are 
  1271. serious about it the small fee the author asks is not that excessive!
  1272. Si ifra hvis dette ikke stemmer...har jo bare pr¢vd på en 486dx 33 med 20MB RAM ;-)
  1273.  
  1274. FILE STRUCTURES
  1275.  
  1276. The structures of all system files may be obtained directly from me.
  1277.  
  1278.  
  1279.  
  1280.  
  1281.  
  1282.  
  1283. INTRODUCTION TO B&BSYS/2    1
  1284. THE HISTORY BEHIND B&BSYS/2    1
  1285. B&BSYS/2 VS. OTHER BBS-SYSTEMS    1
  1286. FIRST TIME B&BSYS/2 SETUP    2
  1287. THE PEOPLE BEHIND B&BSYS/2    2
  1288. CONFIGURATION OF B&BSYS/2    3
  1289. CONFIGURATION WITH THE U(til) Co(nfig) COMMAND    3
  1290. The Configure menu    3
  1291. General    4
  1292. Path names    5
  1293. File protocols    5
  1294. Archive programs    6
  1295. Nodes (comms)    7
  1296. Timed events    8
  1297. Net-links    9
  1298. Areas    9
  1299. Return to BBS    12
  1300. DOOR.CMD    12
  1301. MENU BY MENU IN THE B&BSYS/2 INTERFACE    13
  1302. GLOBAL MENU FUNCTIONS    13
  1303. MAIN MENU    13
  1304. MESSAGE MENU    14
  1305. FILE MENU    15
  1306. BULLETIN MENU    16
  1307. CHAT MENU    16
  1308. UTILITIES MENU    17
  1309. SYSOP MENU    18
  1310. Creating the BBS-specific files    19
  1311. Creating a list of confrences    20
  1312. Creating lists of file areas    20
  1313. Creating a list of bulletins    20
  1314. Creating bulletins    20
  1315. Scripts that need to be made    20
  1316. SCRIPT LANGUAGE    20
  1317. SCRIPTS CALLED    21
  1318. SCRIPT VARIABLES    21
  1319. SCRIPT COMMANDS    22
  1320. TECHNICAL INFO    25
  1321. System requriements    25
  1322. FILE STRUCTURES    25
  1323.  
  1324. 25
  1325.  
  1326.  
  1327.