MAKING MENUS ON BBS-PC =-=-=-=-=-=-=-=-=-=-=-= BBS-PC is a great BBS for diversity. It allows the SYSOP to do what they please, and not restricted to the lame menus as other BBS's have such as the SHITTY BBS program Forum (Haa Haa BILL!) BBS-PC has four (4) manditory menus it must have, that is written into the actual code of BBS-PC. Once you have these menus, you may have what ever menus you desire afterwards. The menus you will need are.. BBS-0.MEN (Main BBS menu) UD-0.MEN (Upload/Download menu) TM-0.MEN (Terminal modem menu) SM-0.MEN (Sysop's Module.) Each un-compiled menu MUST have a MENU statement and its field at the top of that menu, and the last line of that menu must say ENDMENU These menus are first to be entered in ASCII text file. I suggest you use a wordprocessor to make these menus. Say you make the menu EXIT-0.MEN, you could call the text file EXIT.TXT. then when you went to compile it, you would type BBSMENU EXIT.TXT, and it would compile the file EXIT.TXT. The commands used in menus are... MENU , TITLE , ITEM , IRET , ENDMENU. The MENU Statement =-=-=-=-=-=-=-=-=-= The MENU statement is the first line to EVERY menu. Here is an example line. I will explain what it does... MENU = BBS-0.MEN, "Your Command (CAC)-> ", 1, 1 The menu is the statement. BBS-0.MEN is the file name that menu will be called after it is compilied. The BBS will use that file name you enter. In this case it would be BBS-0.MEN "Your Command (CAC)-> " is the command prompt that will be displayed when the BBS is using that menu and is waiting for a command. So lets say you are in menu BBS-0.MEN, it will say Your Command (CAC)-> for a prompt. ,1 ,1 The first 1 is for the BBS to reconize when to show the menu. By this I mean Weather or not to show What is inside the quotes for the TITLE statements and the ITEM statements and the IRET statements. Here is a summary of that default. 0 = Never display 1 = Display for all novice users that are not in expert mode. 2 = Display to all users regardless weather they are expert users or not! The last 1 in the menu statement is the type of prompt. 1 = Enter data, then hit return. 2 = HOTprompt. All this require is a key to be entered, and away it goes. examples.. MENU=BBS-0.MEN, "Your Command (CAC)-> ", 2, 1 Displays to all users the menu, and is not hotkeyed. MENU=BBS-0.MEN, "Your Command (CAC)-> ", 1, 2 Displays to novices only, and is hotkeyed. MENU=BBS-0.MEN, "Your Command (CAC)-> ", 2, 2 Display to all users, and is hotkeyed. THE TITLE STATEMENT. -------------------- The title statement is sorta like a print statement. This will display what is ever inside the quotes... TITLE = "oodbye. Log off CAC BBS." This will be printed as.. oodbye. Log off CAC BBS. or something like... TITLE = "<$> - Sysop module.", 200- This is so that users with privilege 200 or more will see this line. TITLE = "pplicate to become a member.", -10 This means that users with privilege 10 or less will see this line. ALSO!!! BBS-PC has a few neat features that versions 4.20 and up only work with. Here they are... %r - Time remaining in the form 00:00 (HH:MM) %m - Time remaining in minutes. %t - Current time % - Current date EXAMPLE FORMATS to follow.... ----------------------------- TITLE = "[%m minutes remaining on bbs] ? - Help." or... TITLE = "Current time is %t and the date is %d" or... MENU = BBS-0.MEN, "(%m min. left) CAC BBS-> ",1, 1 THE ITEM STATEMENT. ------------------- The Item statement is where the BBS states if the user enters the defined key, carry out a certain function number, if the user has the required access levels, etc... ITEM = S, "tatistics of my user status.", -, 6, 0 This means that if the users enters S at the prompt, the BBS will execute function 0. the -, and the 6 are as follows. The - Means the user does not need any access to use that function. The 6 means that not specified section access is requiried. Here is a list of section access results. 0 = Requires specified section access. 1 = Requires specified section with mask 2 = Requires RD access to that section. 3 = Requires WR access to that section. 4 = Requires DN access to that section. 5 = Requires UP access to that section. 6 = Requires no section access at all. 7 = Requires a sysop password is set. RD means Read, WR means write, UP means upload, and DN means download. examples... ITEM = H, "acker section.", 150-, 7, 105, HACK-0.MEN This the 7 in "150-, 7, 105" means that the BBS will ask for the SYSOP password here. That does not mean THE REAL SYSOPS password, it is meant in a system type password. This password may be altered in the SYSTEM DEFAULTS function. ITEM=R, "ead messages.", 20-, 2:38AC, 11 This means the user must have access 20 or more, and must have READ access to sections 3, 8, A, and C to use this command. ITEM=?, !, -, 6, 101 The ! means there is no screen out put. This means the user does not have to have a privilege level or any section access at all. This statement would have showed the menu of commands to the user.. (that is all stuff that is within the quotes.) THE ENDMENU STATEMENT. --------------------- The ENDMENU statement must be at the end of each menu, or the BBS does not know where the menu ends. Example. MENU=EXIT-0.MEN, "Log off. [Y}es/[N]o/[L]eave a message to SYSOP", 2, 2 TITLE = "thanx for calling CAC BBS at: 416-283-5027." ITEM = Y, ""\, -, 6, 100 ITEM = N, ""\, -, 6, 105, BBS-0.MEN ITEM = L, ""\, -, 6, 10 ENDMENU The above was a complete menu, and would work when compilied. the line ITEM=N, ""\, -, 6, 105, BBS-0.MEN means that if the user types N, the BBS will load back in menu BBS-0.MEN and continue from there. The TITLE statement is shown to all users. MAKING QUESTIONAIRES... ----------------------- Making questionnaires is good for having more applications, i getting more information from the user like, what bbs's they are on. In my example of a questionnaire menu, I will be using the example of an application questionnaire.... qa=ADDR.QA, ADDR.TXT display=" " display=" Information from you.." display=" =-=-=-=-=-=-=-=-=-=-=-=" display=" " question="Are you sure you want to fill out an application?", 2 display=" " question=" State you Alias & FIRST REAL name-> ",1 question=" State you VOICE & DATE LINE (if you have one)-> ",1 question=" What BBS's are you on?? ",1 display=" " question=" Is this correct (Y/N)? ",3 endqa Commands... ----------- QA.. Is the opening line, (like menu statement) the first filename ADDR.QA, is the actual filename the questionnaire will be compilied under. ADDR.TXT is the ASCII textfile the information/results can be viewed from. DISPLAY.. Is like a print line (like a TITLE statement). This displays what is ever inside the quotes. QUESTION.. Question line. Asks a question, then stores in in the TEXT file. ,1 at the end if the line is a normal question line. ,2 is to return to main menu. if Y is entered, it exits to main menu. ,3 displays what you entered, then asks if the information entered is ok, and ready to save and exit questionnaire. ENDQA.. is the LAST line entered in a questionnaire. (Its like a ENDMENU) YOU MUST have this line at the end of every questionnaire. To compile questionnaires type BBSMENU filename (that is whatever you decide to call you uncompilied questionnaire text file. eg. BBSMENU QUEST.TXT ---------------------------------------------------------------------------- I explain further in this manual how to compile menus and how to do it. Also In this ARC file I suppilied a few menus that you could use and try. For help on menus, or want updates on supplementary menus call The Canadian Amiga Connection at 416-283-5027, and request for help.