The QuickBBS Group, Inc. Presents QuickBBS Menu System Documentation The QuickBBS Group, Inc. P.O. Box 621735 Orlando, FL USA 32862-1735 (407) 228-9096 March 1, 1990 QuickBBS Version 2.64 Page: i Table of Contents INTRODUCTION . . . . . . . . . . . . . . . . . . . . . . . . 2 Selecting Menus To Edit . . . . . . . . . . . . . . . . . . . 4 The Editor . . . . . . . . . . . . . . . . . . . . . . . . . 5 Editing Menu Items . . . . . . . . . . . . . . . . . . . . . 8 The Menu Creator . . . . . . . . . . . . . . . . . . . . . 10 Menu Commands . . . . . . . . . . . . . . . . . . . . . . . 13 The Sample Menus . . . . . . . . . . . . . . . . . . . . . 26 March 1, 1990 QuickBBS Version 2.64 Page: 1 Menu System Documentation INTRODUCTION QuickBBS provides you with a complete set of working menus to start with. You are free to modify these menus as much as you wish so that your BBS will better reflect the uniqueness that you intend. These menus will run "right out of the box" and provide for a complete working BBS. Only the lowest level menus for reading messages, transferring files and selecting Combined Boards are fixed and cannot be changed. There are more than 45 different menu commands, all described in detail below. There is also a quick reference guide in the appendix of the main QuickBBS manual. You have flexibility in color selection, total menu look, and in your naming conventions. The only exception to this naming flexibility is the main menu, which MUST be called "TOP.MNU". The Menu Master (MM.EXE) utility is used to create and edit your menus. It saves each menu you create to the menu directory you specified in QCONFIG and Menu Master's configuration utility (MMC.EXE). Menu Master will also allow you to create a menu template for your message base and file area menus and then Menu Master will create a unique menu for each message or file area. This greatly reduces the amount of time required to maintain your BBS and is especially helpful for those SysOps who run larger systems. MENU DESIGN CONSIDERATIONS Some bulletin board programs limit your menu topology to "Operation Oriented Topology". In Operation Oriented Topology, your menus are centered around the general operation. Such a system would generally be divided into four main areas, Messages, Files, External Programs, and Utilities. Under each main operation heading there would be sub-menus that would allow you to choose what message, file or other function your users wanted to execute. You could have many different file areas, but in order to get to a message area the user would have to return to the main menu and then select the messages branch of the menu tree. Topic Oriented Topology is the other main menu design philosophy. In Topic Oriented Topology your menus are designed around the topic of interest rather than the operation being performed. In this type of a system the main menu provides for a "tree" structure, where there are "branches" for the various areas of interest and then at the "leaf" level there will be choices to access either message areas, file areas, or both. This type of a system is a little more difficult to implement in the beginning, but does allow greater ease of use for the end user. Page: 2 QuickBBS Version 2.64 March 1, 1990 Menu System Documentation It is recommended that you take a little time to plan your system and what you want to offer your users before you actually start to design your menus. A few minutes spent in the planning stage will generally result in many hours saved during the implimentation phase. One of the best tools here is to make up an outline of the general areas of interest that your BBS will cover, which file areas you will offer, and which message bases you wish to support. If you want to have the primary basis of your system to be games then then a possible idea would be to have a message area for each game you will be offering so that your users could trade stratagy and other conversation about their games. These message areas would be located on the individual game access menus so that they would be convenient for the users to enter. It is very important to make your system as easy to use as possible, but as fast to operate as possible for the experienced user. It is also recommended that in any areas where things may be complicated or difficult for the novice that you put a menu item to display a text file. In that text file you would put help information so that if a user gets lost they would have ready access to the information they need. QuickBBS will allow you to use either a operation or topic topology. You can have multiple paths to the same area. Areas that pertain to each other can be found on the same menus. You can have menus for both an operation oriented topology and a topic based topology in your system. It will be easier on your users if each of your menus has commands to return to the previous menu, to return to the top menu and to logoff (preferably by going to a logoff menu to prevent accidental logoffs). It is also recommended that you use a common naming convention for these operations. One possible suggestion is to always have the previous menu key be the "-" key, and the "Return to Main Menu" be the "*" key, and "Logoff the System" be the "!" key. If you implement your menus in this manner, the users will quickly learn what keys to use for these basic operations and will not have to constantly wait for the menus to be displayed. This gives them a feeling of comfort with your system quickly, and therefore will keep them calling back. An added benefit of using punctuation keys for these operations will be that your letter keys will remain available for use in selecting the primary options of your menus. Something else to consider is that using a key that needs to be shifted (such as % or &) can allow a degree of safety for an option that should not be readily accessible or accidentally called. March 1, 1990 QuickBBS Version 2.64 Page: 3 Menu System Documentation --- Getting Started --- First thing to do is to run MMC to set up a configuration file. You will be taken into an edit screen. Here you can change the default colors and such used by MM. You will need to identify what sub-directories you will be keeping your menus and text files in. When entering paths you MUST specify the full path including the drive and a trailing back slash "\" character. If you are using the default QuickBBS setup then your menus will be kept in; "C:\QUICKBBS\MENUS\" and your text files will be located in; "C:\QUICKBBS\TXTFILES\" failure to do so will result in a runtime error when you try to execute MM.EXE. After you have made what ever changes necessary to the defaults for Menu Master, press the key to save your changes, or to abort and exit with out saving. You can adjust your defaults at any time by running the MMC.EXE program again; these changes will become effective the next time you run MM.EXE. Page: 4 QuickBBS Version 2.64 March 1, 1990 Menu System Documentation --- Selecting Menus To Edit --- Use your cursor keys to highlight the menu you want to edit and press ENTER. If you prefer, you can type the name of the menu you wish to edit instead of using the cursor to highlight and select the file. Entering a name that does not exist will cause MM to ask you if you want to create it. To exit to DOS from this screen just hit ESCAPE a few times. The directory of menus is sorted and the .MNU extension is not displayed because all menus must have this for their extension. {PgUp} and {PgDn} will allow easier movement through large menu directories. Menu Master v0.34 By Rob Fletcher The Ultimate Menu Editor for QuickBBS Directory F:\QUICK\MENUS\*.MNU AECHO 3173 11-9-89 23:27 AECHO FILE14 FILE15 FILE16 FILE17 FILE3 FILE4 FILE5 FILE6 FILE7 FILE8 FILE9 FILEAREA FILECTL FILEMAIN FILESRC GAMES GENMSG GENUTILS GLOBAL GRAPHICS HDCONF HUNT INTERUSE LOCALMSG LOGOFF MEADOW MESS1 MESS10 MESS100 MESS101 MESS102 MESS103 MESS104 MESS105 MESS106 MESS107 MESS108 MESS109 MESS11 MESS110 MESS111 MESS112 MESS113 MESS114 MESS115 MESS116 MESS117 MESS118 MESS119 MESS12 MESS120 MESS121 MESS123 MESS124 Esc-quit to select PgDn [ESC] to Exit to DOS [F1]-Copy Menu, [F2]-Delete Menu, [F3]-Rename Menu March 1, 1990 QuickBBS Version 2.64 Page: 5 Menu System Documentation --- The Editor --- After you have selected the menu you wish to edit Menu Master will load the menu file and then display a screen similar to the following. We have used the TOP.MNU file as distributed with QuickBBS so that you can more easily follow along with the following descriptions. Top.MNU L:32000 FlagsA:XXXXXXXX B:XXXXXXXX C:XXXXXXXX D:XXXXXXXX (A-LD-) Top.MNU 1: ** MAIN MENU ** Menu Master 2: 3: Press [M] for the Message Bases Add to Menu 4: Press [F] to access the File Transfer Areas Change an Entry 5: Press [B] for the Bulletins Menu Delete an Entry 6: Press [U] to use User options and information Move/Copy Entry 7: Press [N] for New User information and upgradi Simulate Menu 8: List Menu 9: Highlight Colors 10: Press [L] to Leave this System Insert an Entry Prompt Settings System Command: cReate Menus Quit and Save Get Another Menu saVe as No Save/Abort Toggle ANS/ASC tOggle Data nUmbers Toggle usE Auto Display Word Wrap Toggle Figure II Page: 6 QuickBBS Version 2.64 March 1, 1990 Menu System Documentation The current menu being edited is constantly displayed for you, and every change you make will display just as it will when the menu is in operation through QuickBBS. The simulation is preset to level 32000 and all flags ON. This is so you can always see exactly what you have in your menu at all times. You also have the option of stripping the line numbers so it looks just like it will on your system. The top line tells you what menu you are editing, what level and flags settings the simulation is using. When editing a menu, Menu Master displays it's menu on the upper right section of the screen. You can clear this by pressing once and then press to bring it back. The following is a description of the options provided; The 'A' key lets you add entries to the menu. When you press 'A' you will be switched to the menu item editing screen for the item numbered one greater than the current highest item present on the menu. In other words, you will be adding new items to the bottom of the menu. The 'C' Key will let you change any item. On your display you will see that there are numbers next to each item. This is the menu item number. (If this isn't the case, press the 'U' key to turn the item numbers on.) When you select 'C' to change an item, you will be asked to enter the item number that you wish to change; enter the number and then press . That item will be displayed for you on the item editing screen. You will be able to change any attribute for that item. The 'D' key will let you delete a single entry or a range of entries. This also requests an item number for the beginning and ending items that you wish to delete. If you wish to only delete one item, put its number in both the beginning and ending fields. The 'M' key lets you move or copy entries within the menu. You will be asked for a beginning and ending item number to move or copy and then the item to place the items before. You will then be asked if you wish to delete the source entries after the copy. Press 'Y' and you will perform a "move", or press 'N' and the effect will be a copy. March 1, 1990 QuickBBS Version 2.64 Page: 7 Menu System Documentation The 'S' key allows you to simulate any security level and flag settings. This option takes you into a QuickBBS type simulation starting from the current menu. You are free to move through your menus just as if you were on your own board. While in simulation mode the following keys are active: - Toggle ASCII / ANSI display. This performs the same function as 'T' from the menu edit screen. - Toggle Data display. This will toggle the display of either the menu data or the menu prompt text. - Toggle line numbers. This will turn on or off the item numbers associated with each item on the menu during simulation. - Auto-display toggle. When turned on any type 5, 39, 40, or 45 menus that use the Control-A (^A) autoexecute feature will either function or be ignored. - Return to the editing screen with whatever menu you are currently viewing as the menu to edit. - Return to edit mode with the menu you started the simulation with as the menu to edit. At the top right corner of the screen 4 flags are shown. These flags represent the four simulation modes. The first flag will be an A if ANSI mode if active, the second will be an S if show data is active, the third will be an L if line numbers are active, the fourth will be a D if auto-display is active. 'L' lists your entries with all the data associated with them. For those familiar with the older MENUEDIT.EXE, this display is similar. 'H' lets you change the highlight colors of the menu. (Anything in the display string surrounded by carets (^) is highlighted with the highlight color selected by this option). For a complete list of the colors used by QuickBBS and their color numbers please see the appendix. The 'I' selection will allow you to insert new menu items before the end of a menu. This is similar to the 'A' - Add selection described above. After you save the current item you will be given a new item to insert. When you are finished inserting items just press and you will be returned to the menu display screen. Page: 8 QuickBBS Version 2.64 March 1, 1990 Menu System Documentation 'P' changes the prompt string settings. The prompt is displayed one line after the last item the menu that you have defined. There is a default prompt that is defined in the configuration program (MMC). You can use the 'P' command to override this default. You may also adjust the foreground and background colors for the prompt. You can highlight text in your prompt just as in the text of a menu item. The 'T' key will toggle ANSI / ASCII modes so that you can see what your menus look like to either ASCII or ANSI callers. The 'O' key will toggle the menu data on the menu screen. When this is selected, the pertinent information on each menu item will be displayed in place of the menu text. The 'U' key will toggle the display of each item's line numbers on the menu display screen. The 'E' key will cause any auto-executing Type 5, 39, 40, or 45 menu entries to be executed and the associated text files to be shown. If the current menu doesn't have any auto-execute commands then this toggle will have no effect. The 'R' key will take you to the menu creator. This function is discussed in detail below, and will create one or all of your message and file menus in one operation from templates, greatly reducing the SysOp's work load in maintaining their system. March 1, 1990 QuickBBS Version 2.64 Page: 9 Menu System Documentation --- Editing Menu Items --- When you select Add, Change, or Insert, you will be presented with a separate screen that allows editing of all the parameters for one Menu Item. A sample of that screen shows in the following box; Editing Entry #: 9 1 2 3 4 5 6 7 123456789012345678901234567890123456789012345678901234567890123456789012345 ^<^N^>^ Display the System ^N^ews Optional Data: news Menu Type---=>5 Security----=>1 Keys in use ??????NCTUA?MFRBXHGQ?OL? ForeGround--=>9 BackGround--=>0 A Flags-----=> -------- B Flags-----=> -------- C Flags-----=> -------- D Flags-----=> -------- [F1] to Finish and Save Changes, [ESC]-Abort Edit [Alt-D]-Delete Current Field, [Alt-E]-Delete ALL Fields [HOME]-Beginning of Line, [END]-End of Line, [INS]-Toggle Insert Mode [F2]- Center Display Line, [F10]-Menu Type Help Figure III Page: 10 QuickBBS Version 2.64 March 1, 1990 Menu System Documentation Below is a detailed discussion of each of the parameters for a menu item. The first line, (under the numbers), is the display line. Enter the text that you want to appear on the menu here. There are several keys that perform special functions when included on the display line: The caret '^' highlights the string. The tilde '~' displays the time remaining. The semi-colon ';' causes the next line to be appended to the current line beginning at the position of the semi-colon (it removes the carriage return from the display). If you press the key the text on this line will be centered. Optional Data is determined by the command Type. Basically the optional data will indicate where and with what special options the Type should be executed. Type indicates what the menu selection will do. (See Menu Types and Optional Data for more information). Security is the minimum security level that the user must have to see and select this menu option. Key is the command key you must press to select the menu option. Most of the keys on the keyboard can be used. Letters are not case sensitive. Ctrl-A is a special case; see "Automatic Execution from Menu" elsewhere in this manual. The foreground and background options allow you to override the default color settings. The color choices are listed in the Appendix. The flags further restrict access to a menu command. Any flags set here must also be set in your users' userlog records in order for them to see and access the menu selection. Each menu may have up to 50 entries. At any time you can hit the F10 key to get pop-up help with menu types. The selection keys in use for this menu are always shown so you don't use the same selection key in your menu. Press to save this item or to abort the changes made. You can center the display line by pressing . The END key takes you to the end of the line. March 1, 1990 QuickBBS Version 2.64 Page: 11 Menu System Documentation --- The Menu Creator --- This is a VERY powerful command. You can create all your message board and file area menus with just a few keystrokes using the menu creator. Upon entering the creator you will be asked if you want to make essage or ile menus. No matter which one you chose, you will be asked the name of a 'source menu'. This is a special menu that you must make. All menus that are created during this creation run will be based on this template. The source menu should look just like any other menu with a few exceptions. Message area source menus have the following special considerations: leave the Optional data sections of your Type 23 through 27 items blank as Menu Master will put the correct data in these fields when it generates the individual menus. If Menu Master finds data in the Optional Data field, Menu Master will consider this a fixed entry and will not place the current message board number in. This function is very useful if you want to put a "Message to SysOp" or "Comments" pointing to a fixed message area on each menu. File area menu templates have the following special considerations; leave the Optional Data for Types 29 through 34 blank, Menu Master will put the correct information in to these when it generates the individual menus. If you do put information in the Optional Data field, Menu Master will assume that this is a fixed item and will not make adjustments on this item. Otherwise, Menu Master will take the data in FLSEARCH.CTL and insert the correct path information for each menu it creates. A possible use of fixed versus adjustable menu items could be: Let's say you wanted the same path on a certain command, such as the pload command. You want all uploads to go to a certain directory. Just fill in the path for this command in the data field and Menu Master will leave it as you have entered it for each menu it makes. Page: 12 QuickBBS Version 2.64 March 1, 1990 Menu System Documentation Menu Master will replace a Control-A (^A) on either the Text line or the Prompt of a menu with the name of the message base or name of the file area. For example; If one of your menu items had the text line: "^A Message Area" (where ^A is the smiley-face symbol representing Control-A) and the name of the message area was "Hard Drives", Menu Master would adjust the menu item to the following: "Hard Drives Message Area" If you have a vertical bar or "pipe symbol" ('|') as the last character on the text line, Menu Master will center the line after any insertions have been made. This is convenient for making things pretty. March 1, 1990 QuickBBS Version 2.64 Page: 13 Menu System Documentation --- Menu Creation - Source Data --- Message Menus: Menu Master will take the information contained in CONFIG.BBS to make up the individual menus based upon the menu template. After selecting the template menu name, Menu Master will read CONFIG.BBS and display a selection screen where all your message areas are listed (similar to how Combined does it). If a board has an ON next to it, it will be created on this run. If it is OFF, it won't be created. You can enter a range of boards to toggle. ie: 23-45 would toggle boards 23 through 45. You can also turn all OFF at once or all ON at once or enter each board number you want to toggle. Separate each board number, range, or ON/OFF command with a space. When you have chosen all the boards that you want to create hit 'B' to begin creation. Each menu will be simulated as it is made. Menu Master will put the board name as defined in CONFIG.BBS when it finds a Control-A (^A) on the Text line or Prompt in the template menu and the board number in the data field everywhere it finds a Type 23-27 command in the source menu. It will NOT put the board number in the data field if you already have something there. ie: you might want the option eave Feedback on each message menu. That is a Type 27 (post message). You could enter the appropriate board number in the data field along with /T=Your_Name and MM will not change it in each menu it makes. Menu Master will use the following naming convention for each message menu; The base name is "MESS" followed by the message base number as defined in CONFIG.BBS. For Example: The menu name for area 4 would be called MESS4.MNU and area 163 would be called MESS163.MNU. The menus that are created by Menu Master are complete menus and may be edited for further refinement if you wish, but it should be noted that if you do make changes to the generated menus, Menu Master will overwrite these the next time you generate menus, unless you specifically turn that message area off. Page: 14 QuickBBS Version 2.64 March 1, 1990 Menu System Documentation File Menus: Menu Master will take its information from a flat ASCII control file. Each line of the control file should have the following format. This is the same format as FLSEARCH.CTL as used by QuickBBS and you can use this file if you wish. Only the first and third 'words' are used by Menu Master. The middle word can be whatever you want but for FLSEARCH.CTL this would be a security level. The areaname and path can contain NO SPACES. Use the underline character ("_") instead. After specifying the control file name, you will be presented with a selection screen similar to the message area one. Toggle the file areas ON that you want to create and hit 'B' to begin creation. Menu Master will put the Area Name as defined in the control file when it finds a ^A on the Text line or in the prompt, and will put the path on the Optional Data line for each Type 29-34 item in the template. It will save the menu with the name FILExxx where xxx is the line number in the control file. Up to 200 file area menus can be defined in one control file. This sounds complicated, but once you play with it a little, you will find it fairly simple and it is far easier than trying to maintain all those areas manually. Experimentation is the key to success with the auto generation of your menus. Create a few menus then load them in and list them out or simulate them. You'll get the idea of how powerful this feature is. The ^A is the key to making each menu LOOK different and the data fields are the key to making each menu operate differently. You can have several control files and several source menus if you like. March 1, 1990 QuickBBS Version 2.64 Page: 15 Menu System Documentation Menu Command TYPEs and Optional Data Menu Commands: 0. Text Line (Not Considered a Command) Optional Data: None This is used to display text on the menu. 1. Goto New Menu Optional Data: [Password] Jumps to another menu without saving a path back. The optional password is one word, not case sensitive, and (if present), will be required from the user before the goto will be executed. 2. Gosub New Menu Optional Data: [Password] Jumps to another menu and saves the path back, allowing a subsequent Type 3 return. Menus can only be nested 20 levels deep. After that any subsequent gosub call will not work and the user will have to return from the current menu either via a Type 1, 3, or 4 command. The optional password is one word, not case sensitive, and (if present), will be required from the user before the goto will be executed. 3. Return from Previous Gosub Optional Data: None Returns to the menu that was last called with a Type 2. 4. Clear Gosub Stack and Goto New Menu Optional Data: Jumps to another menu and resets the return path to null. Suggested uses for this could include a "Goto TOP Menu" function where you do not wish the user to be able to pop back to their previous menu. Page: 16 QuickBBS Version 2.64 March 1, 1990 Menu System Documentation Menu Command TYPEs and Optional Data 5. Display .ASC/.ANS File Optional Data: <1-8 Character Name> Displays an ASCII (.ASC) or ANSI (.ANS) file in the Custom Text and ANSI file directory listed in the QCONFIG file. Give only the file name, not the extension, as the user's graphics option will determine whether the .ASC or .ANS file will be displayed. If no .ANS file is found the .ASC file will be displayed. If graphics mode is off and there is only an .ANS file then nothing is displayed. 6. Selection Menu (Display a text file and use as a menu). Optional Data: <1-7 Character Prefix> Displays a file that serves as a menu for a group of text files and allows the text files to be selected for viewing. The "Type 6 Command Prompt" in QCONFIG is appended to the end of the menu file. The text files have the same name as the menu file with an extra character added at the end. This character is the command key to select that specific text file. When the user enters '1' on a selection menu named XXXXXXX.ANS or XXXXXXX.ASC, the file with the name XXXXXXX1.ANS (or ASC) is displayed. These files must be in the QuickBBS text files directory. 7. Shell Under Board and Run Program Optional Data: Loads a program to run while the user is online without unloading QuickBBS from memory. The program must be able to detect when the carrier has been lost and then exit. For EXE or COM programs, just put the program name with extension on ____ the command line along with any command line parameters, for example: BBSList.EXE *B For programs that are not an EXE or COM file, such as batch files or internal DOS commands like DELETE, DIR or RENAME, you must use the COMMAND.COM /C option, as in this example: COMMAND.COM /C TW2.BAT March 1, 1990 QuickBBS Version 2.64 Page: 17 Menu System Documentation Menu Command TYPEs and Optional Data QuickBBS can pass information to the program with the following command line arguments: *B Passes the user's Baud Rate (0 for local mode) *C Full path to COMMAND.COM as set in the DOS environment variable COMSPEC. You can thus write the above COMMAND.COM example as: *C /C TW2.BAT *F User's First Name *G Graphics Mode (Off is 0, 1 is On) *H Tells QuickBBS to shell with the FOSSIL hot (Open or Active) *L User's Last Name *R User's Record Number *T User's Time Remaining (in minutes) This also writes files called EXITINFO.BBS, which is described in the accompanying Structures document, and DORINFO1.DEF. 8. Version Information Optional Data: None Displays the version of QuickBBS being run. 9. Logoff the System Optional Data: None This command will display the GOODBYE.A?? file, then log the user off of the system and hang up the phone. 10. Display System Usage Graph Optional Data: None Displays a graph of system usage by hour. This graph is generated from the file TIMELOG.BBS. You can reset this display by deleting TIMELOG.BBS. If TIMELOG.BBS is not found, QuickBBS will create it when next run. The display of this graph will respond to the 'P' - Pause and 'S' - Stop hotkeys. For more information, please see the QuickBBS program documentation and the QuickBBS Structures Documentation. Page: 18 QuickBBS Version 2.64 March 1, 1990 Menu System Documentation Menu Command TYPEs and Optional Data 11. Page the SysOp for Chat Optional Data: Page Prompt Allows the user to page the SysOp and request an online chat session. You have the option of ignoring or answering the page. The duration the computer will ring is set in QCONFIG page 3. This entry is the number of seconds that the computer will beep. If you fail to respond during the page bell period, QuickBBS will display on the bottom status line of the screen the indicator "(Want-Chat)" and display the file PAGED.A??. If the caller attempts to page more times than is allowed, as set in QCONFIG, QuickBBS will display the file MAXPAGE.A??. If you press the 'A' key to abort the page request, the file PAGEABRT.A?? will be displayed and the page will be canceled. Before QuickBBS starts ringing the bell it will prompt the user for one line of text asking for a reason for this chat request. This line is then written to the SYSTEM.LOG file with the current date and time. 12. Execute Questionnaire File Optional Data: <1-8 Character "FILENAME"> Executes a questionnaire from a file in the main QuickBBS directory named "FILENAME".Q-A and stores the answers in a file named "FILENAME".ASW. It will automatically create the answer file if it does not already exist. You create the questionnaire file from the commands listed in the QuickBBS Documentation Appendix. Each command must be on a separate line. If you create a questionnaire file with the name NEWUSER.Q-A it will automatically be presented to new users immediately after the NEWUSER?.A?? files are displayed. 13. List/Search User List Optional Data: None Allows the user to list or search the user file. This is handy for local mail options where the user may not remember the correct spelling of the name of the person to whom they want to send a message. March 1, 1990 QuickBBS Version 2.64 Page: 19 Menu System Documentation Menu Command TYPEs and Optional Data 14. Time Statistics Optional Data: None Gives the caller's time online for the current call, time remaining and total time online today. 15. Exit to DOS Optional Data: Exits to the batch file that loaded QuickBBS with the errorlevel given by the optional data field. This must be greater than 5 as errorlevels 0 to 5 are reserved by QuickBBS. Your batchfile will go to the label identified with that errorlevel (or the next lower errorlevel, if one isn't given for that value). Please see your DOS manual for more information about batch files and errorlevels. Upon return to QuickBBS, QuickBBS will return to the menu pointed to by if any, or TOP.MNU if QuickBBS cannot find that menu or no menu is specified. Here's a sample segment of a QuickBBS batch file: QuickBBS -B%1 -T%3 :finished_QuickBBS if ERRORLEVEL 12 goto maintenance if ERRORLEVEL 9 goto outside if ERRORLEVEL 5 goto net&echo if ERRORLEVEL 4 goto echo_only if ERRORLEVEL 3 goto net_only if ERRORLEVEL 0 goto finished :outside {do outside stuff here} QuickBBS -R goto finished_Quickbbs In this example, Type 15 menu commands with errorlevels of 9,10 or 11 will cause your batch file to execute the commands following the ":outside" label. Type 15's with an errorlevel of 12 will cause your batch file to run the commands after a ":maintenance" label (not shown here). Include the command "QuickBBS -R" to return to the board after the external programs have been run. This command writes a file called EXITINFO.BBS, the structure of which is described in the Structures document, and a file called DORINFO1.DEF. Page: 20 QuickBBS Version 2.64 March 1, 1990 Menu System Documentation Menu Command TYPEs and Optional Data 16. Change City and State Optional Data: None Allows users to change their city and state calling from field. QuickBBS will automatically format the entered data to upper and lower case. 17. Change Password Optional Data: None Allows users to change their passwords. The user, for security reasons, will be required to enter their old password BEFORE they may change it to a new one. 18. Change Length of Screen Optional Data: None Allows users to change the number of lines displayed before the "More Prompt" (Page Pausing), occurs if active. 19. Toggle Screen Clearing Optional Data: None Turns the screen clearing codes on/off. 20. Toggle Page Pausing Optional Data: None Turns the page pausing on/off. 21. Toggle Graphics Mode Optional Data: None Turns the graphics on/off. If the graphics are on then the ANSI equivalent of the ASCII files will be used where available. Callers must have this ON in order to use a full screen editor. March 1, 1990 QuickBBS Version 2.64 Page: 21 Menu System Documentation Menu Command TYPEs and Optional Data 22. Check for Personal Mail Optional Data: None Checks the message base for personal mail that the user has not yet read. This is useful if you do not have the automatic mail checking turned on in the QCONFIG file, or if the user did not read their mail at logon. 23. Read Messages Optional Data: Starts the message reading routine for the board number listed in the optional data field. The board number is the number that was assigned to the board in the QCONFIG program. A built-in menu will allow the user to select which messages they wish to read and in what fashion (forward or reverse, continuous or message-by-message) they wish to read them. If the is entered as '0' then QuickBBS will select from all message bases the user has chosen for their Combined Areas. 24. Scan Messages Optional Data: Starts the message scanning routine for the board number listed in the optional data field. A built-in menu will allow the user to make further selections about the fashion in which they wish to scan the messages. Scanning lists the full header of the messages scanned and allows the user to mark them for later retrieval. If the is entered as '0' then QuickBBS will select from all message bases the user has chosen for their Combined Areas. 25. Quick-Scan Messages Optional Data: Starts the Quick-Scan routine for the board number listed in the optional data field. The board number is the number that was assigned to the board in the QCONFIG program. A built-in menu allows the user to select which messages to Quick-Scan. Page: 22 QuickBBS Version 2.64 March 1, 1990 Menu System Documentation Menu Command TYPEs and Optional Data Quick-Scan then lists the selected messages, one per line, showing the message number, from, to and subject fields (truncated to fit if necessary). If the is entered as '0' then QuickBBS will select from all message bases the user has chosen for their Combined Areas. 26. Delete Selected Message Optional Data: Allows you to delete a message from the board number listed in the optional data field. It prompts first for the message number, then with a Yes/No safety prompt. This is similar to the SysOp's elete command on the message reading line menu. 27. Post a New Message Optional Data: [/L] [/T=] Posts a message to the board number listed in the optional data field. The board number is the number that you assigned to the board in the QCONFIG program. The /L option will force a logoff after the message is written. The /T= option will force the message to be addressed to the person specified in . The name MUST not contain spaces and must be located in USERS.BBS. When using a first and last name with the '/T=' option you must place an Underscore character between the first and last name (/T=First_Lastname). This is handy to force messages addressed to the SysOp at logoff to be directed automatically to you. 28. Select Combined Boards Optional Data: None Allows the users to select/de-select the boards that they would like to read in combined mode. The default setting is all boards they have access to, which have their QCONFIG combined mode access flag set to "Y". March 1, 1990 QuickBBS Version 2.64 Page: 23 Menu System Documentation Menu Command TYPEs and Optional Data To allow use of combined mode access, put read (and scan and quick-scan) commands with board "0" as their optional data in a menu. Board 0 is not an actual message board, but it tells QuickBBS to run the command in Combined Board mode. Your users can reply to messages in combined mode, but cannot enter new messages. When selected, this option writes the user's combined board settings to a file called COMBINED.BBS and is in the main directory that QuickBBS is in. Each time a user calls, their previously selected combined board settings are retrieved. 29. Move A File Optional Data: Moves a file from one directory to another. The field must contain the full path name for the directory FROM which the file will be moved, in the form: DRIVE:\DIR1\DIR2\...DIRn You will be prompted for the name of the directory TO which you're moving the file and asked if you wish to move the entry in the FILES.BBS file as well. This command is intended for use by SysOps on boards that check uploads before placing them in the proper download directories. 30. MS-DOS Directory Optional Data: Displays the results of a DOS "DIR" command for the specified directory to the user. The optional field must contain a full path name of the form: DRIVE:\DIR1\DIR2\...DIRn Page: 24 QuickBBS Version 2.64 March 1, 1990 Menu System Documentation Menu Command TYPEs and Optional Data 31. List FILES.BBS Optional Data: Displays the contents of the file called FILES.BBS found in the path specified on the Optional Data Line. This file should contain the names and descriptions of all files available for download in that file area. It is updated or created if it doesn't already exist, when a user uploads a file to that area. Each of your file areas will have its own FILES.BBS. The FILES.BBS must not end in a Ctrl-Z. If you edit these files be sure that your editor does not add a Ctrl-Z, or else run a program like Strip_Z to remove it. The format of FILES.BBS is as follows; FILENAME.EXT Description The filename can occupy positions 1 through 12, and the description should start at column 14. There must be at least one space between the filename and the description. The maximum length for the description is 47 characters, so that your file descriptions do not wrap around to the next line of the display when shown. We recommend the utility "FIDO-FAM" for maintaining your FILES.BBS files and file areas. This utility will directly read your FLSEARCH.CTL file. FIDO-FAM will provide many of other useful functions as well. FIDO_FAM version 5.03 also allows redirection via an external doorway processor if the SysOp wishes to process remotely. The optional field must contain a full path name of the form: DRIVE:\DIR1\DIR2\...DIRn March 1, 1990 QuickBBS Version 2.64 Page: 25 Menu System Documentation Menu Command TYPEs and Optional Data 32. Download a File from Sub-Dir Optional Data: [Password] Allows the user to download a file from the directory specified in the optional data field. The file does NOT have to be in the FILES.BBS file for the user to download it. The optional field must contain the full path name in the form: DRIVE:\DIR1\DIR2\...DIRn The password is one word, not case sensitive, and, if present, will be required from the user. 33. Upload a File to Sub-Dir Optional Data: Allows the user to upload a file to the directory specified in the optional data field. This will modify or create the FILES.BBS file in the specified directory. The optional field must contain a full path name of the form: DRIVE:\DIR1\DIR2\...DIRn 34. List Archive in Sub-Dir Optional Data: Lists the contents of a file archived by many popular file compressing programs, including ARC, PKARC, PKZIP, PAK, LHARC or ARCA, in the directory specified by the optional data field. The optional field must contain a full path name of the form: DRIVE:\DIR1\DIR2\...DIRn The user will be prompted for the file name to display and must include the extension when they enter it. Page: 26 QuickBBS Version 2.64 March 1, 1990 Menu System Documentation Menu Command TYPEs and Optional Data 35. Search for File by Keyword Optional Data: None Performs a Keyword search in the FILES.BBS files that are specified in the paths listed in FLSEARCH.CTL. The keyword is prompted for from the user and will be compared to the text of each description in all FILES.BBS files. If a match is found the corresponding line from FILES.BBS will be listed for the user. Each new file area will be listed as it is searched. See "Setting Up The External Support Files" for information on FLSEARCH.CTL. This option is case insensitive; the user's input is forced to upper case, and is compared to an uppercase conversion of your FILES.BBS (created "on the fly" with this option) to find what the user is looking for. 36. Search for File by File Name Optional Data: None Performs a file name search in the FILES.BBS files that are found in the FLSEARCH.CTL file. See "Setting Up The External Support Files" for information on FLSEARCH.CTL. 37. List New Files on System Optional Data: None Performs a search for files that have been added to the system since a specific date. The user is prompted for the date, or they can use the last time the user was on. 38. View Text File Optional Data: Prompts for the name of an ASCII text file in the directory listed in the Optional Data field and then displays it. March 1, 1990 QuickBBS Version 2.64 Page: 27 Menu System Documentation Menu Command TYPEs and Optional Data 39. Display a Direct Text File Optional Data: Displays the referenced text file. The file can be anywhere on your system and have any file extension. It may contain the special control characters described in the QuickBBS Documentation Appendix, "Embedded Control Characters". The optional data field must contain the full path name, file name and extension in the form: DRIVE:\DIR1\DIR2\...DIRn\FILENAME.EXT 40. Display .ASC/.ANS File with Hot Key Optional Data: <1-8 Character Name> Same as the Type 5 command except that the menu hotkeys are active while the file is being displayed. This allows you to create special graphics menus that have hotkeys. To do so, assign {Ctrl-A} as the key for this command at the top of your menu, and place a ";" on the display line for all the other commands on that menu. Be sure all the commands are described fully in the menu file. See "Automatic Execution From Menu." Page: 28 QuickBBS Version 2.64 March 1, 1990 Menu System Documentation Menu Command TYPEs and Optional Data 41. Toggle Full Screen Editor Optional Data: None Toggles the use of the full screen editor. 42. [Reserved for future use] 43. [Reserved for future use] 44. [Reserved for future use] 45. Display .ASC/.ANS file with EOF Prompt Optional Data: <1-8 Character Name> Same as Type 5 except that it pauses at the end of the text file with the command prompt "Press [Enter] to Continue:" This prevents the file from being forced off the user's screen before it can be read. March 1, 1990 QuickBBS Version 2.64 Page: 29 Menu System Documentation Menu Command TYPEs and Optional Data 46. Display a .GIF File Header Optional Data: This option will allow users to view the 'header' of a .GIF graphics file, which contains such information as the resolution of the picture and the number of colors. The user will be prompted for the name of the .GIF file he or she wishes to read the header of; the complete filespec, including extension, need to be entered at this time. 47. Create System Log Entry Optional Data: When executed, the optional data section of this Type option will be written to the SYSTEM.LOG with the current date and time. 48. Download A Specific File Optional Data: Allows user to download a specific file without creating a subdirectory to hold it. You can specify any directory and filename. This is useful for the SysOp to enable the user to download an all files listing or a new user registration. Automatic Execution from Menu If you use a ^A {Ctrl-A} for the key to activate a menu command, that command will automatically be run when it is encountered. This allows you to create custom menu screens with ANSI displays. If you place your menu options in the display, the hotkeys will not work unless you use the Type 40 command. If you use this, start the display line of each of the menu commands with a semicolon (';') so that the display line will be ignored. Be careful using ^A, because it's easy to create infinite loops. Page: 30 QuickBBS Version 2.64 March 1, 1990 Menu System Documentation Menu Command TYPEs and Optional Data March 1, 1990 QuickBBS Version 2.64 Page: 31 Menu System Documentation Sample Menus The Sample Menus: The menus found in the archive QMENU.ZIP are a set of basic menus that, when placed in the menu directory as defined in Qconfig, allow new SysOps the ability to "plug and play" with QuickBBS. Also included in QMENU.ZIP is a sample CONFIG.BBS file (renamed to CONF_NEW.BBS to prevent accidental overwriting of your current configuration file) which should replace your current CONFIG.BBS if you decide to use these menus. The sample CONFIG.BBS file is configured for the message bases as defined in the menus, and is ready to use save for the entry of the SysOp and system name on page 3 of Qconfig, the setting of the menu and text file paths on page 1, and the confirmation of the default configuration settings on the other pages. This basic set of menus allows for half a dozen message bases (controlled by security level and one by a flag setting), a file transfer area, user options and system information, bulletins, new users, and logoff. The optional text files, bulletins, and surveys can be found in the QTEXT.ZIP archive, and are explained in the main QuickBBS documentation. These menus and text files are simply a base for you to build upon; you are entitled and encouraged to modify and add to these basic menus. Use these as a starting point, not as your complete system. QuickBBS has incredible potential for creativity and uniqueness, but it is up to the individual SysOp to customize his or her system. The basic system created in the QMENU.ZIP archive has five levels of access: Level Description _____ ___________ 10 - New user (no access save to the new user menu). 20 - Registered user (access to messages but not files). 50 - File-registered (access to messages and files). 100 - Co-SysOp (access to messages, files, and an extra co-SysOp msg base). 32000 - SysOp (total control of and access to the system.). Security levels are considered a bare minimum; if you have an option set to require level 50 access, anyone with level 50 or higher can access it. In this manner, a new user (level 10) cannot access the file area (which requires level 50 to access). Page: 32 QuickBBS Version 2.64 March 1, 1990 Menu System Documentation Sample Menus Two configuration flags are used as well. These are Yes/No options (with X meaning "Yes" and - meaning "No") that allow you to restrict certain areas to users, regardless of their level. The "Country Club" base is a good example, as is the new user procedure: A1 - Access to Country Club. D1 - New user. The Country Club message base is restricted in Qconfig to people with a certain security level AND the A1 flag set; they must meet the level of security needed for this area, AND have the A1 flag set. This lets you have private areas that users with special privileges can access -- and that users without those privileges will be unaware of, as QuickBBS does not show any options that the user does not have access to. Flags are used in menus and message bases for just this purpose. Flags in conjunction with the Control-A autoexecute feature allow SysOps to create extremely powerful menus. In the sample menu TOP.MNU, the Goto New User Menu menu item requires a minimum of level 10 access, AND the D1 flag set to ON (or X). As the autoexecute feature is activated only if the above criteria are met, only users with level 10 or higher and the "new user" flag (D1) on will be forced into the new-user menu. Once a user is upgraded to normal access on the system, the D1 flag should be turned off by the SysOp, making the new-user menu unavailable (and for an upgraded user, unnecessary). This also allows you to split your systems, and effectively have multiple menu structures working for certain users, depending on their flag settings. March 1, 1990 QuickBBS Version 2.64 Page: 33 Menu System Documentation Sample Menus Below is a line-by-line description of the commands used to create the sample menus included in QMENU.ZIP, starting with the TOP.MNU. 1: ** MAIN MENU ** 2: 3: Press [M] for the Message Bases 4: Press [F] to access the File Transfer Areas 5: Press [B] for the Bulletins Menu 6: Press [U] to use User options and information 7: Press [N] for New User information and upgrading 8: 9: Press [L] to Leave this System System Command: Figure IV Figure IV TOP.MNU - The Main Menu LINE 1: This is a Type 0 command to display the text "** MAIN MENU **" for the menu title. If you want to center this text, place the cursor on the text line and then press the key. Menu Master will then center the text on the line. LINE 2: This is a Type 0 command as well, but contains no data in the text line so it is displayed as a blank line. Page: 34 QuickBBS Version 2.64 March 1, 1990 Menu System Documentation Sample Menus LINE 3: This is a Type 2 command, "Gosub Menu". The text entry contains the following: "Press ^[M]^ for the Messages Menu" Please note that the text surrounded by the caret symbols will be displayed in the highlight color defined for this menu. The Optional Data field contains the following: "msgs" This will cause QuickBBS to load and execute the menu named "MSGS.MNU" when the 'M' key is pressed from this menu. The Key Field contains the letter "M" which defines which key will have to be pressed to activate this menu item. It should be noted that all keys specified in the menu are active for a menu and if an active key is pressed its associated menu item will be executed, even if the menu has not been fully displayed. LINE 4: This is also a Type 2 command and will call the FILE.MNU file when the 'F' key is pressed. LINE 5: This is a Type 6 command, which calls a bulletin menu found in the Text Files directory. The optional data on this entry is BULLET, which will cause QuickBBS to look for and display the BULLET.A?? file in the Text Files directory. After the bulletin menu is displayed, the Type 6 Selection Prompt Text (as defined in Qconfig) will be displayed, and QuickBBS will wait for the user to enter the number of the bulletin that is desired, or L to relist the bulletin menu, or Enter to return to the menu that called this option. If a user enters 1 and presses Enter at this point, the file BULLET1.A?? will be displayed. Note that the text "DATA FILE NOT FOUND" will be displayed if QuickBBS cannot find a bulletin file; this might occur if you only have 6 bulletins and a user enters 99 as the one to find, for example. LINE 6: This is a standard Type 2 command, which is calling the menu UTIL.MNU if 'U' is pressed. March 1, 1990 QuickBBS Version 2.64 Page: 35 Menu System Documentation Sample Menus LINE 7: This is a special menu feature, referenced at the beginning of this section. The Key to be pressed is a Control-A, which displays as a smiley face in the menu edit display. This Control-A signals QuickBBS to automatically execute the option if the user's security and flags allow it to. If the user has at least level 10 and that user's D1 flag is set to ON, QuickBBS will automatically move the user into the new user menu, NEW.MNU. The advantage to this is that you can "funnel" users with specific security and/or flags to certain areas, such as moving new users to the new user menu. The autoexecute feature is independent of the menu type being called; you could if you desired automatically log off any user with a certain flag set by using a Type 9 and a Control-A as the key. This option simply sends new users to the new-user menu. LINE 8: This is a blank line. LINE 9: This is a Type 2 option to call the BYE menu. It is a good idea to call a logoff menu as opposed to immediately logging a caller off, to give them a chance to abort the logoff and return to using the system, or to send the SysOp a feedback message. Page: 36 QuickBBS Version 2.64 March 1, 1990 Menu System Documentation Sample Menus MSGS.MNU - The Main Messages Menu 1: ** MESSAGES MENU ** 2: 3: You can access messages on: 4: 5: [E]lectronic Mail - privileged conversations 6: [G]eneral messages 7: [T]echnical support 8: [S]ocializing and friendly talk 9: [O]perations - Sysops, Cosysops, Message Base operators 10: [C]ountry Club (any level person with flag A1 set) 11: 12: [/] Return to the Main Menu System Command: Figure V From this point forward, we will only cover options that have not been referenced in previous menus. LINE 10: This is a standard gosub-new-menu option (Type 2), but is only available to those users with the A1 flag set to X (or On). LINE 12: This option, "Clear Gosub Stack and Goto Menu", tells QuickBBS to forget about any menus the user has previously accessed (in terms of allowing the user to back up from "lower" messages), and to access a specific menu directly. The optional data in this line is TOP, which is telling QuickBBS to return to the main menu. March 1, 1990 QuickBBS Version 2.64 Page: 37 Menu System Documentation Sample Menus MESS1.MNU - Enter Network Mail 1: ** "Network Mail" Message Base ** 2: 3: [R]ead messages on this base 4: [S]can the messages on this base 5: [Q]uickScan the messages on this base 6: 7: [E]nter a message on this base 8: 9: [-] Return to the Messages Menu 10: [/] Return to the Main Menu System Command: Figure VI LINE 3: This is a Type 23 command, which causes QuickBBS to read mail on the base as configured in the optional data. In this menu, the base is 1 (Network Mail, which should be blocked from use by raising the security level to 32000 unless you are a part of a network). The read-messages built-in menu is displayed, and the reading of the messages occurs at this point. When finished reading messages, control returns to MESS1.MNU. The MESS??.MNU files are created with the MSG_CORE.MNU file and Menu Master, which are included for your convenience. LINE 4: This is essentially the same as line 3 above, but this Type 24 command scans the headers (from/to/subject/date) of the messages, without displaying the text as in the Type 23 command above. LINE 5: As the two above options, but this Type 25 command lists in a columnar format the message number, from, to, and subject lines of a series of messages. LINE 6: When the "E" key is pressed, QuickBBS will allow the user to post a message on the board as defined in the optional data. Note that if the user does not have sufficient security (level and flags) to WRITE to that base, a message stating that authorization is needed will be displayed. Generally, the best way to avoid this is to make sure that users can only access the menus that they are entitled to. Page: 38 QuickBBS Version 2.64 March 1, 1990 Menu System Documentation Sample Menus LINE 9: Line 9 references the menu gosub stack, which occurs when a Type 2 command is executed. This allows QuickBBS to remember which menu was last accessed, so that users can step back from the menu they are at and return to the previous menu in the topology. This moves the user from the message menu currently accessed to the menu above it, which is the message base selection menu MSGS.MNU. FILES.MNU - File transfer menu 1: ** FILES MENU ** 2: 3: [L]ist files to download 4: [D]ownload a file or files 5: [U]pload a file or files 6: [V]iew contents of an archive 7: 8: Search for a file by [K]eyword 9: Search for a file by [F]ilename 10: Search for any [N]ew files 11: 12: [/] Return to the Main Menu System Command: Figure VII LINE 4: This is a Type 31 command, which lists the files for transfer as specified in the FILES.BBS found in the specified directory. You will need to modify this menu to point to the area in which you wish to allow users to upload and download files. The path for this option will reside in the Optional Data field. LINE 5: This command, Type 32, will allow a user to select the protocol he or she wishes to use to download, and then ask for the file(s) to be downloaded. The path in optional data should be the same as above. LINE 6: The Type 33 command allows a user to send you a file, using the same protocols as in the download command above. We recommend that you have uploads go to a separate, "holding" directory, to allow the SysOp the ability to screen uploads before making them readily available. March 1, 1990 QuickBBS Version 2.64 Page: 39 Menu System Documentation Sample Menus LINE 7: Type 34 commands allow users to view the contents of an archive. QuickBBS will recognize the format of the archive and will display the information in the archive's header. The optional data field holds the file download area's path, and should match lines 4-5 above. LINE 9: This and the following two options scan the file in the QuickBBS main directory known as FLSEARCH.CTL for the directories that are considered Download directories, and scan the FILES.BBS listings in each of those directories for files that match the requested search string. This option is a Type 35, and searches the filenames and descriptions for any file that matches the keyword that the user entered. LINE 10: This is the same as line 9 above, but searches for a specific filename as entered by the user. The standard DOS wildcards of ? and * are allowed. LINE 11: This Type 37 option, List New files, will either search for files with a date later than the "Last Date On" that the user has in his or her userlog record (if the user desires), or allows the user to enter a date to begin the search by. Page: 40 QuickBBS Version 2.64 March 1, 1990 Menu System Documentation Sample Menus BYE.MNU - The Logoff menu 1: ** LOGOFF MENU ** 2: 3: [E]nter a privileged comment to the Sysop 4: [L]og off of this System 5: [C]omplete the online Information Survey 6: 7: [/] Return to the previous Menu System Command: Figure VIII LINE 3: This is a standard "Enter message on base 2" option, but the addition of the "/t=Sysop" should be explained here. The /T option forces QuickBBS to enter a message TO the name specified after the = sign. If you want a two-word name to be used there, enter it as /T=first_last so that QuickBBS can recognize the complete name. Optionally, you can add a /L to the command line, which would log off the user immediately after the message gets saved. LINE 4: This command, Type 9, displays the GOODBYE.A?? file, writes the user's updated information to the userlog, and disconnects the caller. If you are running without a network mailer, you will next see the QuickBBS Waiting screen; if you are using a mailer, it will load after QuickBBS is finished (assuming you aren't using any programs such as mail utilities after each call). LINE 5: This option, Type 12, will call up the survey file in the QuickBBS main directory known as SURVEY.Q-A (the optional data need be but SURVEY; QuickBBS attaches the extension) and places the user in Survey mode, following the script as found in the specific survey file known as SURVEY.Q-A. For a description of the individual survey commands available, consult the QuickBBS main documentation and appendices. March 1, 1990 QuickBBS Version 2.64 Page: 41 Menu System Documentation Sample Menus NEW.MNU - New User registration and upgrading 1: ** NEW USER MENU ** 2: 3: [H]ow to register with this System 4: [F]ill out the New User Survey 5: 6: [L]ogoff from this System 7: [/] Return to the Main Menu System Command: Figure IX LINE 3: Line 3 is a Type 45 command, which searches for the ASC/ANS file as defined in the optional data and displays it. The Type 45 option will additionally pause when the file is finished displaying, and ask the user to press Enter to continue. This makes sure that the file gets viewed in its entirety, without being scrolled off by the menu that is redisplayed when the file is finished displaying. LINE 4: This will execute the Type 12 survey file known as NEW_USER.Q-A. Note that if you rename the survey to NEWUSER.Q-A, it will automatically execute during the new user login process, and will not need to be placed here. LINE 6: This option GOSUBs the BYE menu, which allows both the main menu and the new-user menu to call the same goodbye menu, and allows for QuickBBS to return to the correct menu if the user wishes to abort the logoff process. Page: 42 QuickBBS Version 2.64 March 1, 1990 Menu System Documentation Sample Menus UTIL.MNU - Utilities and User Config 1: ** UTILITIES MENU ** 2: 3: System Information: 4: [V]ersion, Copyright information 5: [S]ystem usage graph 6: [T]ime online, remaining 7: 8: Configuration Options: 9: [1] Change City/State calling from 10: [2] Change your Password 11: [3] Change your Screen Length 12: [4] Change your Screen Clearing option 13: [5] Change your Graphics Mode 14: [6] Toggle the Full-Screen Editor 15: 16: [R]eview your user settings 17: 18: [/] Return to the Main Menu System Command -> Figure X LINE 4: This option executes a Type 8 command that will provide a display of the copyright and version information screen. LINE 5: This option executes a Type 10 command and will display the System Usage Graph for the user. This is a useful display that will help your users determine the best time to call your system based upon its usage. LINE 6: This option executes a Type 14 command and will show the user a set of statistics about their time online and how much they have used up. March 1, 1990 QuickBBS Version 2.64 Page: 43 Menu System Documentation Sample Menus LINE 16: This option will display the text file USERSET.A?? located in the text files subdirectory. This text file uses many of the special control options to display all of the user's settings and associated data about the user. This will allow the user the ability to review their configuration. Please look closely at this text file for a better understanding of how these functions work. The definitions of the extended information characters (^F and ^K characters) can be found in an appendix of the main QuickBBS manual. The file and the control characters used appears in the following Figure. This is your current user profile: User name: ^FA City/State: ^FB Phone Number 1: ^FD Phone Number 2: ^FE Last time on: ^FF ^FG Number of logons: ^FP Security: ^FO Flags: A^FH B^FI C^FJ D^FK Netmail credit: ^FL cents Highest msg read: ^FN Uploads: ^FQ, ^FRkB Downloads: ^FS, ^FTkB Ansi: ^FX More: ^FY ClrScrn: ^FZ AnsiEd: ^F1 Press [Enter/Return]: ^A Figure XI PROMPT: The prompt differs here from the others in that a "->" is used in place of the ":" after the words "System Command". This is to show that you can make the prompt whatever you desier, and have it different in each menu. The tilde ('~') works well in the prompt to show how much time a user has left online, without having to call a function to display the time usage. Page: 44 QuickBBS Version 2.64 March 1, 1990 Index ^A {Ctrl-A} 25 | 10 add 5, 7, 8, 21, 26, 32 Add entries 5 Auto-executing menu entries 7 autoexecute feature 6, 27, 28 BULLET.A?? 28 Bulletin menu 28 Center the display line 9 change 3, 5, 6, 8, 11, 17, 18, 34 Change entries 6 Combined 2, 11, 19, 20, 11 Common naming conventions 3 CONF_NEW.BBS 26 CONFIG.BBS 11, 26, 11, 26 Configuration flags 26 Control-A 6, 10, 11, 27, 28, 10, 28 copy 4-6 Country Club message base 26 Creativity and uniqueness 26 Default Colors 3, 9 delete 4-6, 8, 14, 19 Delete menu items 6 Editor 4, 5, 18, 21, 24, 34 Experimentation 12 File area menu templates 10 FILES.BBS 20-23, 31 flags 5, 6, 8, 9, 26-28, 30, 35 FLSEARCH.CTL 10, 12, 21-23, 31, 12, 31 Foreground and background options 9 GOODBYE.A?? 15, 32 highlight 4-7, 28 Insert new menu items 7 Key Field 28 Listing entries 6 Menu creator 7, 10, 7, 10 Menu design philosophy 2 Menu gosub stack 30 menu items 7, 8, 10 Menu Master 2-5, 10-12, 27, 30 add 5 change 6 copy 6 Default Colors 3 delete 6 Editor 5 flags 6 highlight 6 move 6 Paths 3 March 1, 1990 QuickBBS Version 2.64 Page: 45 Index Selecting Menus To Edit 4 simulate 6 Menu topology 2 menu types 8, 9, 8 MENUEDIT.EXE 6 Message area source menus 10 Message to SysOp 10 MMC 2, 3, 7 Move or copy entries 5, 6, 20, 28 MSG_CORE.MNU 30 Naming conventions 2 NEW_USER.Q-A 33 NEWUSER.Q-A 16, 33 Optional Data 8, 10, 12-25, 28-33, 8 Parameters 8, 14 menu items 8 Paths 3, 22, 26 Pipe symbol 10 Pop-up help 9 menu types 9 Prompt 5-7, 10-12, 14, 16, 18, 19, 24, 28, 35 Prompt string settings 7 QMENU.ZIP 26, 27, 26 QTEXT.ZIP 26 Restrict certain areas to users 26 Security 6, 8, 12, 17, 26, 28, 30, 35, 8 Security levels 26 Selecting Menus To Edit 4 Selection Prompt Text 28 simulation 5, 6, 12 Source menu 10, 11, 10 SURVEY.Q-A 32 System Usage Graph 15, 34 Toggle ANSI / ASCII modes 7 TOP.MNU 2, 5, 17, 27, 2 Topology 2, 3, 30, 2, 3 USERSET.A?? 35 Version information 15, 34