"The Army Knife for ProBoard BBS Software" ú úú ú-ÄÄÄÄ -ÄÄúÄÄÄÄ -ÄÄú Ú¿-ÄÄúÚÄ¿ÚÄ ÄÄúÚÄ¿ÄÄÄÄÄÄÄ -ÄÄúÄÄÄÄ ÄÄ-ÄÄú -ùú ú ³ Ú ÚÅÂÙÀÄ¿ÚÄÄÅÂÙ³ ¿ ÀÄÙÀÄÙ³ÀÄÄÄÙÀÄÙ³ÀÄÁij ú úú ú-ÄÄÄÄ -ÄÄúÄÄÄÄ -ÄÄú Ä -ÄÄú³ÄÄÄ -ÄÄúÄÄ-ÄÄÙÄÄÄÄ -ÄÄúÄÄÄÄ ÄÄ-ÄÄú -ùú ú CURSORY, version 2.50 AmBOS CURSORY for ProBoard Copyright (C) 1995, 1996 WSA Software & J. Rathmann - ALL RIGHTS RESERVED - ÉÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍ» º ±± 0. CONTENTS ±±±±±±±±±±±±±±±±±±±±±±±±±±±±±±±±±±±±±±±±±±±±±±±±±±±±±±±±± º Û ÈÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍͼ Û ßßßßßßßßßßßßßßßßßßßßßßßßßßßßßßßßßßßßßßßßßßßßßßßßßßßßßßßßßßßßßßßßßßßßßßßßßßßß ÚÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄ¿ ³ CONTENTS ......................................... 0 º ³ º ³ Introduction ..................................... 1 º ³ Archive .......................................... 2 º ³ Important note ................................... 3 º ³ º ³ Installation ..................................... 4 º ³ Structure of CSI-files ........................... 5 º ³ Basic information ................................ 6 º ³ Animations ....................................... 7 º ³ º ³ Calling CURSORY in language files ................ 8 º ³ Running multitask/multinode ...................... 9 º ³ How to use control characters .................... 10 º ³ General information about "returnkeys" & "hotkeys" 11 º ³ RIP/ASCII-menus .................................. 12 º ³ Changing the time left ........................... 13 º ³ º ³ Registration ..................................... 14 º ³ º ³ Thanks ........................................... 15 º ³ BBS list ......................................... 16 º ³ º ³ Trademarks ....................................... 17 º ³ º ³ CURSORY F.A.Q. / Frequently asked questions ...... 18 º ³ Reference ........................................ 19 º ÈÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍͼ ÉÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍ» º ±± 1. Introduction ±±±±±±±±±±±±±±±±±±±±±±±±±±±±±±±±±±±±±±±±±±±±±±±±±±±±± º Û ÈÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍͼ Û ßßßßßßßßßßßßßßßßßßßßßßßßßßßßßßßßßßßßßßßßßßßßßßßßßßßßßßßßßßßßßßßßßßßßßßßßßßßß The ProBoard BBS software provides many features. Unfortunately a cursor key control is not implemented. CURSORY allows you to replace all BBS-menus and almost all other parts of the BBS (e. g. login, logoff) with such a type of control. Furthermore the direct selection of each menu option via hotkey is possible, too. You can freely define the position of each menu option and the look of your BBS. "Pulldown-menus", "windowed BBS'es" including cursor key control or something similar - use your fantasy and get the best ideas. CURSORY provides many features, so it is not a pure "cursor key control". The program allows you to display FREELY definable animations SIMULTANEOUS to the cursor key control. A man running over the screen, scrolltexts or fadings... nothing is impossible. In addition to this you can show some online help to the user while menu selection. You can define individual help messages which are shown to the user if he is on a specific menu option. The program provides many additional features, so almost everything is possible. The goal of developing this program was to provide you a powerful AND reliable cursor key control for ProBoard. Please do not think the usage of CURSORY is hard to understand. Almost ALL features the program provides are additional features. Nobody needs ALL features. The main concept is very easy to understand. ÉÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍ» º ±± 2. Archive ±±±±±±±±±±±±±±±±±±±±±±±±±±±±±±±±±±±±±±±±±±±±±±±±±±±±±±±±±± º Û ÈÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍͼ Û ßßßßßßßßßßßßßßßßßßßßßßßßßßßßßßßßßßßßßßßßßßßßßßßßßßßßßßßßßßßßßßßßßßßßßßßßßßßß The CURSORY archive should contain the following files: ADVANCED.CSI A CSI-file containing all keywords/control codes CURSORY .PEX The program CURSORY .TXT This documentation FILE_ID .DIZ Short description of the program HOOMER .ANS Background for HOOMER.CSI HOOMER .CSI "HOOMER-Logoff" - YOU REALLY MUST SEE THIS INSTALL .!!! Installing the example configurations LOGIN .ANS Background for LOGIN.CSI LOGIN .CSI Example for a login with cursor key control MAIN .ANS Background for MAIN.CSI MAIN .CSI A "main menu" with cursor key control PROMPT-7.CSI Replaces ProBoard's "Enter-Prompt" with an animation REGISTER.FRM Registration form REGISTER.USA USA registration form SIMPLE .CSI Very simple example for a CURSORY-menu STRETCH .CSI Another "Enter-Prompt" - looks very nice WHATSNEW.250 New features and changes in this version ÉÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍ» º ±± 3. Important note ±±±±±±±±±±±±±±±±±±±±±±±±±±±±±±±±±±±±±±±±±±±±±±±±±±± º Û ÈÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍͼ Û ßßßßßßßßßßßßßßßßßßßßßßßßßßßßßßßßßßßßßßßßßßßßßßßßßßßßßßßßßßßßßßßßßßßßßßßßßßßß The program has been tested on a few hundred systems. Nevertheless bugs are not impossible. The author will try hard to solve problems, but there is no warranty that the program is perfect. In no case the author is responsible for any damage caused by this program (I think this is nearly impossible :-) ). {+} = AVAILABLE IN REGISTERED VERSION ONLY ÉÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍ» º ±± 4. Installation ±±±±±±±±±±±±±±±±±±±±±±±±±±±±±±±±±±±±±±±±±±±±±±±±±±±±± º Û ÈÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍͼ Û ßßßßßßßßßßßßßßßßßßßßßßßßßßßßßßßßßßßßßßßßßßßßßßßßßßßßßßßßßßßßßßßßßßßßßßßßßßßß Please copy the file "CURSORY.PEX" into your ProBoard PEX-directory. CURSORY is called in the ProBoard menu editor like this: ÉÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍ[ TOP ]ÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍ º 0 1 2 3 4 5 6 7 º 1234567890123456789012345678901234567890123456789012345678901234567890 º ;°°°°°°°°°°°°°°°°°°°°°°°°°°°°°°°°°°°°°°°°°°°°°°°°°°°°°°°°°°°°°°°°°°°°° º º Color : White on Black Example Text º º Hotkey :  º Function : 60 - Run ProBoard SDK File º Data : CURSORY PEX\ADVANCED The character "" (behind "Hotkey") defines an "Autoexec"-menu option which is executed automatically by ProBoard. You can get this character by pressing CTRL-A. For testing purposes you should use a "normal" hotkey (e. g. "X") instead of this "Autoexec"-hotkey. Add a new menu option (for example in menu "TOP") to call CURSORY. CURSORY expects a "CSI-file" for each menu. These files contain all information about a menu, for example the "menu text", the "help text" (online help), color and position of each menu option and information about hotkeys. The name of a CSI-file must be specified behind "CURSORY" in the "Data"- field. The extension ".CSI" is not necessary. If no path is specified, CURSORY will assume that the file is located in the ProBoard system- directory (in the example above the file should be in the "PEX"-directory, which must be a sub-directory of the system-directory). You can also set the DOS-environment variable "CSI". If CURSORY detects this variable, ALL CSI-files are assumed to be in the specified directory. It is very useful to create a special directory for CSI-files. ÉÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍ» º ±± 5. Structure of CSI-files ±±±±±±±±±±±±±±±±±±±±±±±±±±±±±±±±±±±±±±±±±±± º Û ÈÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍͼ Û ßßßßßßßßßßßßßßßßßßßßßßßßßßßßßßßßßßßßßßßßßßßßßßßßßßßßßßßßßßßßßßßßßßßßßßßßßßßß CSI-files are similar to the widespread "INI"-files. They can be created or changed with a normal ASCII-editor. A CSI-file contains information about ONE menu. Each CSI-file contains "keywords" at the beginning of a line. There are two different types of keywords: LOCAL and GLOBAL keywords. GLOBAL keywords define GENERAL information about the specific menu. If for example the global keyword "numeric" is defined, the lightbar may be controlled additionally with the keys 2, 4, 6 and 8 on the numeric block. This possibility is GLOBAL, means, it is valid at any time in this menu. Global keywords may be defined EVERYWHERE in a CSI-file! LOCAL keywords are combined in BLOCKS. The keyword "menu" defines a start marking of such a block (this keyword defines a new menu option). All LOCAL keywords used BELOW belong to the LAST defined "menu". An example for a local keyword is "hotkey" (defines a hotkey for the LAST menu option defined with "menu"). Behind some keywords so called "parameters" are necessary. This means, BEHIND the keywords there must follow further information. If several parameters are necessary, they must be seperated by commas. Strings have to be specified in " (inverted commas). CSI-files are SHAPELESS, spaces in front of or behind keywords and within control codes are valid. Comments must start with a ";" and may also be used BEHIND a keyword. ÉÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍ» º ±± 6. Basic information ±±±±±±±±±±±±±±±±±±±±±±±±±±±±±±±±±±±±±±±±±±±±±±±± º Û ÈÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍͼ Û ßßßßßßßßßßßßßßßßßßßßßßßßßßßßßßßßßßßßßßßßßßßßßßßßßßßßßßßßßßßßßßßßßßßßßßßßßßßß This chapter contains basic information about how to create CSI-files. You can find a detailed description of ALL keywords and control codes in the chapter "Reference". Let us assume you want to display three menu options in the left, upper corner of the screen, and you want to be able to choose between these menu options using the cursor keys. Create a CSI-file like following: ----------------------------------------------------------------------------- menu "%1,1%@8,27@ This is menu option 1 " menu "%1,2%@8,27@ This is menu option 2 " menu "%1,3%@8,27@ This is menu option 3 " ----------------------------------------------------------------------------- Now execute the CSI-file. You see, it is very easy :-). The strange characters at the beginning of each line are so called "control codes". A control code is a sequence of characters which is not displayed but for example interpreted to change the color or position. In the example above the "%1,1%" causes that the cursor is set to screen position 1,1. The following text is displayed FROM this position. "@8,27@" defines the color. The value 8 means DARKGRAY, 27 is LIGHTCYAN on a BLUE background. CURSORY allows you to use so called "color macros". Instead of @8,27@ you may also write @darkgray,lightcyan-blue@ You can find detailed information about "color codes" and "color macros" in the chapter "Reference". You will wonder why there are TWO color values in the example above. The first one (8) is the color used to display the menu option if it is NOT active. If it is active, the menu option is displayed with color 27. Let us go on: ----------------------------------------------------------------------------- menu "%1,1%@8,27@ This is menu option 1 " help "%1,5%@11@This is help for menu option 1" menu "%1,2%@8,27@ This is menu option 2 " help "%1,5%@12@This is help for menu option 2" menu "%1,3%@8,27@ This is menu option 3 " help "%1,5%@13@This is help for menu option 3" ----------------------------------------------------------------------------- Execute the CSI-file again. You cannot miss this effect :-). It is of course not just the point to be able to jump between the menu options. For example it would be useful to go to another menu or call the chatter if the user selects a menu option. CURSORY provides two ways to define what should happen if a menu option is selected: 1. A character can be returned (sent) to ProBoard. For example you can define that when the user selects menu option 2 a "F" is sent to ProBoard. Then, after CURSORY is left, the same thing will happen as if you pressed "F" WITHOUT CURSORY. For this purpose there is the CSI-keyword "returnkey" 2. A ProBoard-compatible "function" can be executed. You can find a list of all functions in the ProBoard documentation. In the following this possibility is not described more closely (you can find detailed information about how to use this in the chapter "Reference") BOTH keywords may be defined at the same time for a menu option. In this case the function would be executed first, then the character is sent to ProBoard. Let us assume you called CURSORY in the main menu. In the ProBoard menu editor you defined the character "F" as hotkey to jump into the file menu. Change your CSI-file like this: ----------------------------------------------------------------------------- menu "%1,1%@8,27@ This is menu option 1 " help "%1,5%@11@This is help for menu option 1" menu "%1,2%@8,27@ This is menu option0 2 " help "%1,5%@12@This is help for menu option 2" returnkey f menu "%1,3%@8,27@ This is menu option 3 " help "%1,5%@13@This is help for menu option 3" ----------------------------------------------------------------------------- After starting the CSI-file and selecting the second menu option you should be in the file menu. Of course there could be menus which contain more than three menu options. In this case it would be useful if each menu option could be selected via hotkey additionally. For this purpose there is the CSI-keyword "hotkey". PLEASE DISTINGUISH BETWEEN THIS KEYWORD AND THE "HOTKEY" IN THE PROBOARD MENU EDITOR! THESE TWO THINGS ARE COMPLETELY DIFFERENT. A "hotkey" is the key which must be PRESSED to select a specific menu option. On the other hand a "returnkey" is the character which is actually sent to ProBoard (must be identical with a "HOTKEY" in the ProBoard menu editor). Change your CSI-file again: ----------------------------------------------------------------------------- menu "%1,1%@8,27@ This is menu option 1 " help "%1,5%@11@This is help for menu option 1" menu "%1,2%@8,27@ This is menu option 2 " help "%1,5%@12@This is help for menu option 2" hotkey x returnkey f menu "%1,3%@8,27@ This is menu option 3 " help "%1,5%@13@This is help for menu option 3" ----------------------------------------------------------------------------- Execute the CSI-file again. Now you have two possibilities to jump into the file menu: 1. You can choose the 2. menu option with the cursor keys and press "RETURN" 2. You can press the key "X" Possibly you already noticed that only the control keys and the "X" have an effect. If you press any other key, nothing will happen. ProBoard allows you to define GLOBAL hotkeys. Often used are for example the characters "!" (log off) or "?" (help). You have to add the line globalhotkeys "!?" to your CSI-file, then you may further use these keys EVERYWHERE. Probably your example menu will not look very nice. To change this, a BACKGROUND would be useful. You can create such a background with an ANSI- editor. Let us assume you have an ANSI-file called "MAIN.ANS". First of all copy this file into your ProBoard TXTFILES-directory. If you want that this file appears as background for your menu, add show "MAIN" to your CSI-file. You see, it looks much better :-). ÉÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍ» º ±± 7. Animations ±±±±±±±±±±±±±±±±±±±±±±±±±±±±±±±±±±±±±±±±±±±±±±±±±±±±±±± º Û ÈÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍͼ Û ßßßßßßßßßßßßßßßßßßßßßßßßßßßßßßßßßßßßßßßßßßßßßßßßßßßßßßßßßßßßßßßßßßßßßßßßßßßß CURSORY provides to show an animation simultaneous to the menu selection. Create the following CSI-file: ----------------------------------------------------------------------------- menu "%1,1%@8,27@ This is menu option 1 " menu "%1,2%@8,27@ This is menu option 2 " menu "%1,3%@8,27@ This is menu option 3 " task "%78,24%@7@\" wait 10000 task "%78,24%@7@|" wait 10000 task "%78,24%@7@/" wait 10000 task "%78,24%@7@-" wait 10000 ----------------------------------------------------------------------------- NOTE: Please decrease the values behind "wait" if you run a multitasker! Execute this CSI-file. In the lower-right corner you will see an animation. The "tasks" are shown top down. When the last "task" is reached, the animation is restarted (this can be disabled by using the CSI-keyword "noloop"). The keyword "wait" defines the delay AFTER a "task". This keyword belongs to the LAST defined "task". It is OPTIONAL, means, it does not have to be defined behind every "task". Default is 0. Note: A CSI-file must contain at least ONE menu option defined with "menu", also if it just contains an animation, otherwise the error message "No menu defined" is shown. ÉÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍ» º ±± 8. Calling CURSORY in language files ±±±±±±±±±±±±±±±±±±±±±±±±±±±±±±±± º Û ÈÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍͼ Û ßßßßßßßßßßßßßßßßßßßßßßßßßßßßßßßßßßßßßßßßßßßßßßßßßßßßßßßßßßßßßßßßßßßßßßßßßßßß CURSORY may be started in any "prompt" of the language editor. So it is possible to carry out complete "windowed BBS'es". Another possibility is for example the usage as LOGIN-PEX, optionally in connection with other programs, e. g. "U!LOGIN" (as "Frontrun"-PEX). The call in the language editor looks like this: @pCURSORY CSIFILE@ You can find two examples within the files PROMPT-7.CSI and STRETCH.CSI. IMPORTANT: To call CURSORY in the language editor, the CSI keyword "nocheck" MUST be defined! ÉÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍ» º ±± 9. Running multitask/multinode ±±±±±±±±±±±±±±±±±±±±±±±±±±±±±±±±±±±±±± º Û ÈÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍͼ Û ßßßßßßßßßßßßßßßßßßßßßßßßßßßßßßßßßßßßßßßßßßßßßßßßßßßßßßßßßßßßßßßßßßßßßßßßßßßß The program automatically detects the following multitaskers: - Windows - OS/2 - DesqView - TopView If CURSORY is run under a multitasker, "timeslices" are released at runtime. This means the program releases system resources for other tasks. If you run multinode, it is useful to use different (but possibly identical) CSI-files in SEPERATED directories. This way allows you to define special behaviour for each node. Please read the comments for the CSI-keyword "timeslice" in the reference if you want to use animations in connection with a multitasker. ÉÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍ» º ±± 10. How to use control characters ±±±±±±±±±±±±±±±±±±±±±±±±±±±±±±±±±±± º Û ÈÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍͼ Û ßßßßßßßßßßßßßßßßßßßßßßßßßßßßßßßßßßßßßßßßßßßßßßßßßßßßßßßßßßßßßßßßßßßßßßßßßßßß Some characters cannot be displayed using the specific CSI-keywords, because they are used as start marking or end marking of control codes. Control characters are: @ % ^ § ü & * ~ ¦ All these characters are used in the parameters of the CSI-keywords "menu", "help", "task", "printstart" and "printend" as control characters . If you want to DISPLAY one of these characters, you have to define it TWICE. There are two other special characters: , and " While reading a CSI-file CURSORY will assume that a comma seperates two parameters (exeption: WITHIN a string commas may be used normally). The character " is used to define the start or end of a string. Normally you can display control characters by defining them twice. For these two special characters there is an exeption: For example if you want to use a comma behind the CSI-keyword "hotkey" or an inverted comma WITHIN a string, just put a ø (ASCII 248) in front of these characters. If you use a comma as hotkey but forgot the ø, the error message "Too many parameters in line x" is shown, because CURSORY expects one more parameter. The special character ø itself can be displayed by defining it twice. ÉÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍ» º ±± 11. General information about "returnkeys" & "hotkeys" ±±±±±±±±±±±±±± º Û ÈÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍͼ Û ßßßßßßßßßßßßßßßßßßßßßßßßßßßßßßßßßßßßßßßßßßßßßßßßßßßßßßßßßßßßßßßßßßßßßßßßßßßß If the CSI-keyword "returnkey" is used, CURSORY will return a character to ProBoard when a menu option is selected. This character must be defined as HOTKEY in the specific menu in the menu editor (please distinguish between the HOTKEY in the ProBoard menu editor and the CSI-keyword "hotkey", these two things are completely different). There are two cases CURSORY will NOT send any character to ProBoard when a menu option is selected: 1. The user is not allowed to select this menu option, because it is locked in the ProBoard menu editor (you may disable the checking via "nocheck" or "noglobalcheck") 2. The CSI-keyword "returnkey" is defined, but there is no HOTKEY found neither in the current nor in the global menu It is possible to define a local "returnkey" which have an affiliated hotkey in the global menu. The other way around a hotkey defined with "globalhotkeys" (or "globalkey" {+}) may be in a local menu. If a hotkey is defined twice, the last one is valid (this is also valid for some other CSI-keywords). If the same hotkey is defined LOCALLY and GLOBALLY, the local one has higher priority. There are the following priorities: 1. Local hotkeys (defined with "hotkey") 2. Redefined cursor keys (with "leftkey" {+}, "rightkey" {+}, "upkey" {+} or "downkey" {+}) 3. Global hotkeys (defined with "globalhotkeys" or "globalkey" {+}) 4. - The pre-defined control keys (cursor keys, HOME, END and SPACE) - The keys 2, 4, 6 and 8 for alternative control (if the CSI-keyword "numeric" is defined) ÉÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍ» º ±± 12. RIP/ASCII-menus ±±±±±±±±±±±±±±±±±±±±±±±±±±±±±±±±±±±±±±±±±±±±±±±±± º Û ÈÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍͼ Û ßßßßßßßßßßßßßßßßßßßßßßßßßßßßßßßßßßßßßßßßßßßßßßßßßßßßßßßßßßßßßßßßßßßßßßßßßßßß CURSORY supports both ANSI- and AVATAR-emulation. In ASCII-mode a cursor key control is not possible. If a user does not use ANSI or AVATAR, CURSORY provides an alternative. If CURSORY is started in ASCII-mode, the ANSI/AVATAR-cursor key control is NOT started. Instead of this an ASCII-file is sent. This file must be located in the TXTFILES-directory, the filename (WITHOUT extension) is the second parameter in the DATA-line of the menu editor (behind the name of the CSI-file). If CURSORY detects the RIP-emulation, the ANSI/AVATAR-cursor key control is NOT started as well. Instead of this a RIP-file is sent. This file must be located in the RIP-directory, the filename (also without extension) is the second parameter in the DATA-line of the menu editor (behind the name of the CSI-file). This parameter is OPTIONAL. Example for a call in the "Data"-line: "CURSORY PEX\CSIDATEI ABC" If CURSORY does not detect an ANSI-/AVATAR-emulation, the file ABC.ASC in the TXTFILES-directory is sent. If the RIP-emulation is enabled, CURSORY will send the file ABC.RIP in the RIP-directory. Note: CURSORY can be forced to use the ANSI- and AVATAR-mode by using the CSI-keywords "forceansi" {+} and "forceavatar" {+}. ÉÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍ» º ±± 13. Changing the time left ±±±±±±±±±±±±±±±±±±±±±±±±±±±±±±±±±±±±±±±±±± º Û ÈÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍͼ Û ßßßßßßßßßßßßßßßßßßßßßßßßßßßßßßßßßßßßßßßßßßßßßßßßßßßßßßßßßßßßßßßßßßßßßßßßßßßß While a user is online usually the time left can be changed using the keys cursor-up and cursor-down. CURSORY redefines these keys, therefore this is not possible any longer. For this reason the program provides two alternative keys combinations for this purpose: CTRL - PAGE-UP -> Time left + 1 minute CTRL - PAGE-DOWN -> Time left - 1 minute ÉÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍ» º ±± 14. Registration ±±±±±±±±±±±±±±±±±±±±±±±±±±±±±±±±±±±±±±±±±±±±±±±±±±±± º Û ÈÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍͼ Û ßßßßßßßßßßßßßßßßßßßßßßßßßßßßßßßßßßßßßßßßßßßßßßßßßßßßßßßßßßßßßßßßßßßßßßßßßßßß Please use the file "REGISTER.FRM" (or "REGISTER.USA" if you live in the United States) for registration. CURSORY is "Mindware". This means, the program may be copied freely if the archive is spread COMPLETELY and UNCHANGED. The usage of an unregistered version for testing purposes is granted 60 days. If you want to use CURSORY after the evaluation period, a registration is required. You can find further information about how to register in the file "REGISTER.FRM" (or "REGISTER.USA"). If you register you will get a personal "keyfile". Then all CSI-keywords and text macros are available for you, additionally all registration notes will disappear. A big thanks to all the guys who already registered CURSORY. The motivation to keep on developing this program was low, but each registration motivated. THANK YOU ALL !!! Please note that old gamma-versions may not be used freely any longer. A registration is needed for ALL CURSORY-versions. ÉÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍ» º ±± 15. Thanks ±±±±±±±±±±±±±±±±±±±±±±±±±±±±±±±±±±±±±±±±±±±±±±±±±±±±±±±±±± º Û ÈÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍͼ Û ßßßßßßßßßßßßßßßßßßßßßßßßßßßßßßßßßßßßßßßßßßßßßßßßßßßßßßßßßßßßßßßßßßßßßßßßßßßß Thanks to all the guys who helped developing CURSORY, especially to... Guido Mattar Christian Schulz Lutz Vollring Carsten Lindner Ingo Kretschmann Mirek Hellwig Klaus Fritzsch Joost Greve Mega-special thanks to Guido, who has a big contribution to the developement of this program. THANKS, Guido !!! ÉÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍ» º ±± 16. BBS list ±±±±±±±±±±±±±±±±±±±±±±±±±±±±±±±±±±±±±±±±±±±±±±±±±±±±±±±± º Û ÈÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍͼ Û ßßßßßßßßßßßßßßßßßßßßßßßßßßßßßßßßßßßßßßßßßßßßßßßßßßßßßßßßßßßßßßßßßßßßßßßßßßßßß Following a little list of very nice BBS'es. All without warranty. BBS Highlander, Heuerstorf +49 - 5874 - 9637 +49 - 5874 - 9638 (ISDN) KIMBO - KIeler Minimal BOx, Kiel +49 - 431 - 642957 +49 - 431 - 642970 +49 - 431 - 642970 (ISDN) Kandis-Box, Braunschweig +49 - 531 - 2611041 +49 - 531 - 2611042 +49 - 531 - 2611043 (ISDN) OWL - United Hotel, Detmold +49 - 5231 - 31084 +49 - 5231 - 390731 (ISDN) X-Treme, Vechta +49 - 4441 - 851887 Mac's Box, Wegberg +49 - 2434 - 928042 +49 - 2434 - 928041 (ISDN) Enterprise BBS, Krefeld +49 - 2151 - 597510 +49 - 2151 - 538631 (ISDN) ÉÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍ» º ±± 17. Trademarks ±±±±±±±±±±±±±±±±±±±±±±±±±±±±±±±±±±±±±±±±±±±±±±±±±±±±±± º Û ÈÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍͼ Û ßßßßßßßßßßßßßßßßßßßßßßßßßßßßßßßßßßßßßßßßßßßßßßßßßßßßßßßßßßßßßßßßßßßßßßßßßßßß The following names/products are copyrighted material, trademarks or registered trademarks of their respective holders: DesqView Quarterdeck Office Systems OS/2 International Business Machines ProBoard Philippe Leybaert RIPscrip Telegrafix Communications The Army Knife :-) Gerard van Essen U!LOGIN Christian Schulz Windows Microsoft ÉÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍ» º ±± 18. CURSORY F.A.Q. / Frequently asked questions ±±±±±±±±±±±±±±±±±±±±± º Û ÈÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍͼ Û ßßßßßßßßßßßßßßßßßßßßßßßßßßßßßßßßßßßßßßßßßßßßßßßßßßßßßßßßßßßßßßßßßßßßßßßßßßßß Q: I use old CSI-files and get many error messages! A: CURSORY checks each line of a CSI-file exactly and will show an error message if there is something wrong. Old CURSORY-gamma-versions ignored many errors. With the error message a line number is shown, so it should be easy to solve the problem using the reference at the end of this documentation. ÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄ Q: When I execute a CSI-file I always get the error message "Too many parameters in line x", but there are not too many parameters! A: Possibly you used a comma as hotkey or returnkey. Please read the chapter "How to use control characters". ÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄ Q: The program just shows the error message "Unknown keyword in line x", although the CSI-file did work with an old CURSORY-version! A: Some CSI-keywords were renamed. Please check if there is one of the keywords "endtask", "elite" or "taskelite" in the shown line. If yes, please rename these keywords to "printend", "elitemenu" or "elitetask". If no, you did not spell the keyword correctly. ÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄ Q: The control character "." (change relative cursor position) does not work! A: The control character "." was used in old CURSORY-versions to change the relative cursor position. Now this can be done by using the character "&". This change has been made because the point is used very ofter for display. ÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄ Q: CURSORY just shows the error message "Could not open CSI-file"! A: Either the specified CSI-file does not exist or the filename and/or the path are not spelled/defined correctly. Please check the filename AND the path again. If you do not get a positive result call the program with the COMPLETE path INCLUDING drive name. A correct call could for example look like this: "CURSORY C:\PB\PEX\ADVANCED" INPORTANT: The DOS-environment variable "CSI" MUST NOT be set if a path is defined in the "Data"-line! Please note that ProBoard special codes like "*s" (ProBoard system path) are NOT allowed in the "Data"-line! ÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄ Q: CURSORY does not display the characters @, %, ^, §, ü, &, *, ~ and ¦, although I specified them in the CSI-file! A: Please read the chapter "How to use control characters". ÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄ Q: After selecting some specific menu options (e. g. "READ" in the message menu) the ProBoard prompt will appear WITHIN the ANSI-picture. How can I prevent this? A: Normally the cursor is automatically located BEHIND the last character of a menu option while menu selection. For this reason THIS position is used to display the next characters (e. g. like the prompts defined in the ProBoard language editor). Please use the CSI-keywords "hide" or "printend" to solve this problem. ÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄ Q: In a CSI-file I defined a hotkey for a menu option using "hotkey". I specified the same hotkey in the ProBoard menu editor. When I select this menu option, CURSORY does not send any character to ProBoard! A: You mix up "hotkeys" and "returnkeys". "hotkeys" just provide faster selection of menu options. They are NOT send to ProBoard. Please use the keyword "returnkey". ÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄ Q: I defined a big animation. When a user is online, the control is very slow! A: This problem only occurs with very complex animations. The control speed depends on the size of the animation. If you defined TOO MANY sequences per time unit within your animation, the transfer speed is not sufficient. Use a less complex animation or INCREASE the "wait" values behind every "task". The higher these values are, the faster the control will be! ÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄ Q: Some parts of the menu options/help texts/animation are displayed in a wrong color or are located at a wrong position! A: Positions and colors are changed by control codes. Each of these control codes has a start marking and an end marking (two identical characters, e. g. for color changing the character "@"). If you forget the end marking, the complete control code is ignored. This could cause wrong results. Please check if you set the end marking everywhere. ÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄ Q: I call CURSORY in a prompt in the language editor. CURSORY does not run, it just shows the error message "Could not open PBM-file"! A: Use the keyword "nocheck" in your CSI-file. ÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄ Q: At some positions of my menus the user is always logged off! A: There is a control character which causes CURSORY to disconnect the line (¦, ASCII 166). Please check if you used this character in your CSI-files. If yes, define this character TWICE. ÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄ Q: I defined an ANSI- or AVATAR-file in a CSI-file using the keyword "show". CURSORY does not display the picture! A: Behind "show" there MUST NOT be a path. The file itself must be located in the TXTFILES-directory. If the file is not displayed, one of the things mentioned above is right OR you did not spell the filename correctly. ÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄ Q: I use some of the keywords "restart", "leftkey", "rightkey", "upkey", "downkey", "globalkey", "log", "forceansi" or "forceavatar" in my CSI- file. CURSORY just displays the error message "Unknown keyword in line x"! A: These keywords are only available in the registered version. To solve this problem use a valid key :-). ÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄ Q: When I use some of the text macros "date", "firstname", "fulltime", "handle", "name" or "time", CURSORY just displays the message "Unkown macro" on the screen! A: Some text macros are not available in the unregistered version. Solution: Use the registration form... :-) ÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄ Q: CURSORY does not display anything in the lower area of the screen correctly. The keyword "hide" does not work, too, the cursor is not hidden! A: The 23. line of the screen cannot be used in the unregistered version for display. If you are registered, this line may be used. ÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄ Q: How long do I have to wait before I get my keyfile? A: The key is send IMMEDIATELY after the registration form AND the registration fee arrived. If necessary at night :-). ÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄ Q: Does CURSORY have a "Backdoor"? A: NO. ÉÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍ» º ±± 19. Reference ±±±±±±±±±±±±±±±±±±±±±±±±±±±±±±±±±±±±±±±±±±±±±±±±±±±±±±± º Û ÈÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍͼ Û ßßßßßßßßßßßßßßßßßßßßßßßßßßßßßßßßßßßßßßßßßßßßßßßßßßßßßßßßßßßßßßßßßßßßßßßßßßßß This chapter contains a reference of ALL CSI-keywords, control codes, color codes, text macros, special codes for "hotkey" and "globalkey" {+} and error messages. ÚÄÄÄÄÄÄÄÄÄÄÄÄÄÄ¿ ³ CSI-keywords ³ ÀÄÄÄÄÄÄÄÄÄÄÄÄÄÄÙ LOCAL KEYWORDS GLOBAL KEYWORDS ÉÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄ» ÉÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄ» ³ menu ³ ³ globalhotkeys nocheck ³ ³ help ³ ³ globalkey {+} noglobalcheck ³ ³ hotkey ³ ³ startmenu log {+} ³ ³ returnkey ³ ³ show forceansi {+} ³ ³ function ³ ³ numeric forceavatar {+} ³ ³ restart {+} ³ ³ static hide ³ ³ leftgoto ³ ³ elitemenu printstart ³ ³ rightgoto ³ ³ elitetask printend ³ ³ upgoto ³ ³ nofresh userdoes ³ ³ downgoto ³ ³ noloop timeslice ³ ³ leftkey {+} ³ ÈÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄļ ³ rightkey {+} ³ ³ upkey {+} ³ ³ downkey {+} ³ ³ task ³ ³ wait ³ ÈÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄļ ÉÄÄÄÄÄÄ» ³ menu ³ Defines a new menu option ÈÄÄÄÄÄļÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄ Type ............... LOCAL Syntax ............. menu "MENUTEXT" MENUTEXT = Text including control codes (you can find a description of all control codes in the section "Control codes") Example ............ menu "%1,1%@8,27@ Test menu option " Description ........ This keyword defines the text, position(s) and color(s) of ONE menu option. It is the START MARKING of a menu block, ALL LOCAL keywords below belong to this menu option (until the next menu option is defined using "menu"). ÉÄÄÄÄÄÄ» ³ help ³ Defines a help text (online help) for a menu option ÈÄÄÄÄÄļÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄ Type ............... LOCAL Syntax ............. help "HELPTEXT" HELTTEXT = including control codes (you can find a description of all control codes in the section "Control codes") Example ............ help "%1,20%@14@This is a help text" Description ........ This keyword defines text, position(s) and color(s) of ONE help text. This help text belongs to the LAST defined menu option. ÉÄÄÄÄÄÄÄÄ» ³ hotkey ³ Defines a "hotkey" for a menu option ÈÄÄÄÄÄÄÄļÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄ Type ............... LOCAL Syntax ............. hotkey HOTKEY HOTKEY = ASCII-character OR ASCII-code with preceding "#" Examples ........... hotkey a hotkey #27 Description ........ This keyword defines a LOCAL hotkey for the LAST defined menu option. If it is defined, the corresponding menu option can be selected directly via the specified character, alternatively to the cursor key control and "RETURN". The character is case insensitive. ÉÄÄÄÄÄÄÄÄÄÄÄ» Defines a character which is sent after the ³ returnkey ³ corresponding menu option is selected ÈÄÄÄÄÄÄÄÄÄÄļÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄ Type ............... LOCAL Syntax ............. returnkey RETURNKEY RETURNKEY = ASCII-character OR ASCII-Code with preceding "#" Examples ........... returnkey a returnkey #65 Description ........ This keyword can be used to define a character which is sent to ProBoard after the corresponding menu option is selected. This character MUST be defined as HOTKEY in the ProBoard MENU EDITOR. The character is sent to ProBoard AFTER execution of a function possibly defined with "function". The character is case insensitive. ÉÄÄÄÄÄÄÄÄÄÄÄ» Defines a function which is executed after the ³ function ³ corresponding menu option is selected ÈÄÄÄÄÄÄÄÄÄÄļÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄ Type ............... LOCAL Syntax ............. function FUNCTIONNUMBER OR function FUNCTIONNUMBER, "PARAMETER" FUNCTIONNUMBER = ProBoard function (you can find a description of all ProBoard functions in the ProBoard documentation) PARAMETER = Parameter (if necessary) Examples ........... function 8 function 60, "TEXTSRCH" Description ........ This keyword defines a ProBoard function which is executed after the corresponding menu option is selected. After execution the menu is left (you can avoid this by using "restart" {+}). The defined function is executed BEFORE a character possibly defined with "returnkey" is sent. ÉÄÄÄÄÄÄÄÄÄÄÄÄÄ» ³ restart {+} ³ Causes CURSORY to restart after a function is executed ÈÄÄÄÄÄÄÄÄÄÄÄÄļÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄ Type ............... LOCAL Syntax ............. restart Description ........ After selection of a SPECIFIC menu option and execution of a function the menu is NOT left. Instead the CSI-file is called again (the file is NOT read again physically). ÉÄÄÄÄÄÄÄÄÄÄ» Defines the menu option which is active after the user ³ leftgoto ³ pressed CURSOR-LEFT on the corresponding menu option ÈÄÄÄÄÄÄÄÄÄļÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄ Type ............... LOCAL Syntax ............. leftgoto MENUOPTION MENUOPTION = Number of a menu option Note: The menu options are numbered top down Default ............ Active menu option - 1 Example ............ leftgoto 4 Description ........ If the user presses CURSOR-LEFT on the corresponding menu option, the defined menu option is active. All invalid values are ignored. ÉÄÄÄÄÄÄÄÄÄÄÄ» Defines the menu option which is active after the user ³ rightgoto ³ pressed CURSOR-RIGHT on the corresponding menu option ÈÄÄÄÄÄÄÄÄÄÄļÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄ Type ............... LOCAL Syntax ............. rightgoto MENUOPTION MENUOPTION = Number of a menu option Note: The menu options are numbered top down Default ............ Active menu option + 1 Example ............ rightgoto 4 Description ........ If the user presses CURSOR-RIGHT on the corresponding menu option, the defined menu option is active. All invalid values are ignored. ÉÄÄÄÄÄÄÄÄ» Defines the menu option which is active after the user ³ upgoto ³ pressed CURSOR-UP on the corresponding menu option ÈÄÄÄÄÄÄÄļÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄ Type ............... LOCAL Syntax ............. upgoto MENUOPTION MENUOPTION = Number of a menu option Note: The menu options are numbered top down Default ............ Active menu option - 1 Example ............ upgoto 4 Description ........ If the user presses CURSOR-UP on the corresponding menu option, the defined menu option is active. All invalid values are ignored. ÉÄÄÄÄÄÄÄÄÄÄ» Defines the menu option which is active after the user ³ downgoto ³ pressed CURSOR-DOWN on the corresponding menu option ÈÄÄÄÄÄÄÄÄÄļÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄ Type ............... LOCAL Syntax ............. downgoto MENUOPTION MENUOPTION = Number of a menu option Note: The menu options are numbered top down Default ............ Active menu option + 1 Example ............ downgoto 4 Description ........ If the user presses CURSOR-DOWN on the corresponding menu option, the defined menu option is active. All invalid values are ignored. ÉÄÄÄÄÄÄÄÄÄÄÄÄÄ» Defines a character which is sent after pressing ³ leftkey {+} ³ CURSOR-LEFT on the corresponding menu option ÈÄÄÄÄÄÄÄÄÄÄÄÄļÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄ Type ............... LOCAL Syntax ............. leftkey LEFTKEY LEFTKEY = ASCII-character OR ASCII-code with preceding "#" Examples ........... leftkey a leftkey #65 Description ........ If the user pressed CURSOR-LEFT on the corresponding menu option, the defined LEFTKEY is sent to ProBoard. If for a menu option both "leftkey" and "leftgoto" is defined, then "leftkey" has a higher priority. ÉÄÄÄÄÄÄÄÄÄÄÄÄÄÄ» Defines a character which is sent after pressing ³ rightkey {+} ³ CURSOR-RIGHT on the corresponding menu option ÈÄÄÄÄÄÄÄÄÄÄÄÄÄļÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄ Type ............... LOCAL Syntax ............. rightkey RIGHTKEY RIGHTKEY = ASCII-character OR ASCII-code with preceding "#" Examples ........... rightkey a rightkey #65 Description ........ If the user pressed CURSOR-RIGHT on the corresponding menu option, the defined RIGHTKEY is sent to ProBoard. If for a menu option both "rightkey" and "rightgoto" is defined, then "rightkey" has a higher priority. ÉÄÄÄÄÄÄÄÄÄÄÄ» Defines a character which is sent after pressing ³ upkey {+} ³ CURSOR-UP on the corresponding menu option ÈÄÄÄÄÄÄÄÄÄÄļÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄ Type ............... LOCAL Syntax ............. upkey UPKEY UPKEY = ASCII-character OR ASCII-code with preceding "#" Examples ........... upkey a upkey #65 Description ........ If the user pressed CURSOR-UP on the corresponding menu option, the defined UPKEY is sent to ProBoard. If for a menu option both "upkey" and "upgoto" is defined, then "upkey" has a higher priority. ÉÄÄÄÄÄÄÄÄÄÄÄÄÄ» Defines a character which is sent after pressing ³ downkey {+} ³ CURSOR-DOWN on the corresponding menu option ÈÄÄÄÄÄÄÄÄÄÄÄÄļÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄ Type ............... LOCAL Syntax ............. downkey DOWNKEY DOWNKEY = ASCII-character OR ASCII-code with preceding "#" Examples ........... downkey a downkey #65 Description ........ If the user pressed CURSOR-DOWN on the corresponding menu option, the defined DOWNKEY is sent to ProBoard. If for a menu option both "downkey" and "downgoto" is defined, then "downkey" has a higher priority. ÉÄÄÄÄÄÄ» ³ task ³ Defines an animation sequence ÈÄÄÄÄÄļÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄ Type ............... LOCAL (TASK) Syntax ............. task "SEQUENCE" SEQUENCE = Text including control codes (you can find a description of all control codes in the section "Control codes") Example ............ task "%1,24%@7@This is part of an animation" Description ........ Using this keyword you can define an animation sequence (a "state" of an animation). If several "tasks" are defined, they will be shown top down at runtime. When the last "task" is reached (the end), the animation is shown again (you can disable this via "noloop"). A "task" is local, but it does not belong to a menu option. "Local" just means that it belongs to the keyword "wait". ÉÄÄÄÄÄÄ» Defines the delay after the corresponding animation ³ wait ³ sequence is displayed ÈÄÄÄÄÄļÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄ Type ............... LOCAL (TASK) Syntax ............. wait DELAY DELAY = Number of "cycles" to wait after a "task" Default ............ 0 Example ............ wait 500 Description ........ This keyword defines the delay after the corresponding "task" is displayed. The next "task" is not displayed until the delay ends. This keyword is OPTIONAL, it does not have to be defined behind every "task". 0 is default (no delay). Each value behind "wait" may be different, so you can change the animation speed at runtime! The real length of delay depends on the system used. If you call CURSORY under a multitasker, you should use little values behind "wait". ÉÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄ» ³ globalhotkeys ³ Defines SEVERAL global hotkeys ÈÄÄÄÄÄÄÄÄÄÄÄÄÄÄļÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄ Type ............... GLOBAL Syntax ............. globalhotkeys "HOTKEYS" HOTKEYS = List of characters Example ............ globalhotkeys "!#%?$*-" Description ........ Defines global hotkeys or in general characters which are also sent to ProBoard. When a key is pressed while menu selection which is not a control key or a local hotkey, it is normally ignored. By using this keyword you can define ADDITIONAL characters which are also sent to ProBoard. For example this could be hotkeys, which are defined in the GLOBAL menu in the ProBoard menu editor. "globalhotkeys" may be defined several times in a CSI-file. ÉÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄ» Defines ONE global hotkey, additionally a seperated ³ globalkey {+} ³ "returnkey" can be specified ÈÄÄÄÄÄÄÄÄÄÄÄÄÄÄļÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄ Type ............... GLOBAL Syntax ............. globalkey HOTKEY OR globalkey HOTKEY, RETURNKEY HOTKEY = ASCII-character OR ASCII-code with preceding "#" RETURNKEY = ASCII-character OR ASCII-code with preceding "#" Examples ........... globalkey ? globalkey #63 globalkey #27, ! Description ........ This keyword can be used to define ONE global hotkey (see also CSI-keyword "globalhotkeys"), additionally a RETURNKEY can be specified. In this case the RETURNKEY is sent after the user pressed the HOTKEY. You can GLOBALLY seperate hotkeys and returnkeys (equivalent to the local seperation via the CSI-keywords "hotkey" and "returnkey"). If no RETURNKEY is specified, the HOTKEY is sent (identical to "globalhotkeys"). For this reason "globalkey a" is exactly the same as "globalkey a, a". This keyword may be defined SEVERAL times in a CSI-file. HOTKEY and RETURNKEY are case insensitive. ÉÄÄÄÄÄÄÄÄÄÄÄ» ³ startmenu ³ Defines the menu option which is active at start ÈÄÄÄÄÄÄÄÄÄÄļÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄ Type ............... GLOBAL Syntax ............. startmenu MENUOPTION MENUOPTION = Number of a menu option Note: The menu options are numbered top down Default ............ 1 Example ............ startmenu 4 Description ........ The value behind this CSI-keyword defines the menu option which is active at start. If this keyword is missing, the first menu option is active by default. All invalid values are ignored. If the keyword "static" is defined additionally, then "startmenu" has only an effect if the menu is displayed the FIRST time. ÉÄÄÄÄÄÄ» ³ show ³ Displays an ANSI- or AVATAR-file ÈÄÄÄÄÄļÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄ Type ............... GLOBAL Syntax ............. show "FILENAME" FILENAME = Name of an ANSI/AVATAR-file WITHOUT path and extension Example ............ show "MAIN" Description ........ Displays an ANSI/AVATAR-file as background for a menu. The file *MUST* be located in the ProBoard TXTFILES- directory. If the specified file is not found, the keyword is ignored. ÉÄÄÄÄÄÄÄÄÄ» ³ numeric ³ Allows alternative control via 2, 4, 6 and 8 ÈÄÄÄÄÄÄÄÄļÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄ Type ............... GLOBAL Syntax ............. numeric Description ........ Allows alternative control via the keys 2, 4, 6 and 8 (replacement for the cursor keys). If identical hotkeys are defined, the hotkeys have a HIGHER priority! ÉÄÄÄÄÄÄÄÄ» Causes that the last selected menu option is saved ³ static ³ and active automatically when the menu is called again ÈÄÄÄÄÄÄÄļÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄ Type ............... GLOBAL Syntax ............. static Description ........ If this keyword is defined in a CSI-file, the last selected menu option is saved when the menu is left. If the same menu is called again, not the first or the menu option defined via "startmenu" is active but the saved one. Therefore this keyword has a higher priority than "startmenu". ÉÄÄÄÄÄÄÄÄÄÄÄ» ³ elitemenu ³ Converts all menu and help texts into "elite-font" ÈÄÄÄÄÄÄÄÄÄÄļÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄ Type ............... GLOBAL Syntax ............. elitemenu Description ........ If this keyword is defined, ALL menu options and help texts are converted into "elite"-font. The following changes are made: 1. All characters are converted into capitals 2. 'A' (ASCII-code 065) -> '’' (ASCII-code 146) 3. 'E' (ASCII-code 069) -> 'î' (ASCII-code 238) 4. 'F' (ASCII-code 070) -> 'Ÿ' (ASCII-code 159) 5. 'I' (ASCII-code 073) -> 'i' (ASCII-code 105) 6. 'N' (ASCII-code 078) -> 'ï' (ASCII-code 239) ÉÄÄÄÄÄÄÄÄÄÄÄ» ³ elitetask ³ Converts all animation sequences into "elite-font" ÈÄÄÄÄÄÄÄÄÄÄļÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄ Type ............... GLOBAL Syntax ............. elitetask Description ........ Converts ALL animation sequences (defined with "task") into "elite"-font. Take a look at "elitemenu" to find detailed information. ÉÄÄÄÄÄÄÄÄÄ» Causes that all menu options are NOT displayed at start ³ nofresh ³ (only the active menu option is visible) ÈÄÄÄÄÄÄÄÄļÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄ Type ............... GLOBAL Syntax ............. nofresh Description ........ This keyword causes a "nofreshing" of all menu options at start. Normally ALL menu options defined in a CSI- file are displayed once automatically, so the user can see between what he may choose. If the keyword "nofresh" is used, ONLY the active menu option is visible at start. Therefore it is possible to "paint" all menu options in the background picture (see CSI-keyword "show") and CURSORY will not overwrite them at start. In principle this is not disturbing, but it is sometimes visible if the user has a bad connect and there are many menu options. The advantage of defining all menu options (in the "not active" color!) in the background picture is that these menu options are visible IMMEDIATELY for the user. Without "nofresh" the background picture is shown FIRST, THEN the menu options are displayed. You should ONLY use "nofresh" if you do not like the aspect described above, because there are also two disadvantages: 1. All menu options defined in the CSI-file must be EXACTLY identical with the menu options in the background picture 2. The keyword "elitemenu" only has an effect if the user chooses the menu options at least ONCE. If you want to use this keyword, all menu options must be defined in "elite-font" in the background (see CSI- keyword "elitemenu") ÉÄÄÄÄÄÄÄÄ» Causes that a defined animation is NOT repeated, it is ³ noloop ³ displayed only ONCE ÈÄÄÄÄÄÄÄļÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄ Type ............... GLOBAL Syntax ............. noloop Description ........ If this keyword is defined and the last animation sequence is reached, the animation is NOT repeated. This keyword has only an effect if there is really an animation. If not, the keyword is ignored. ÉÄÄÄÄÄÄÄÄÄ» ³ nocheck ³ Disables checking for all menu options ÈÄÄÄÄÄÄÄÄļÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄ Type ............... GLOBAL Syntax ............. nocheck Description ........ After a menu option is selected the programm will NOT check if the user has really access. If a returnkey is defined, it is sent to ProBoard in any case (and there possibly ignored). You should use this keyword if you call CURSORY in a language file, otherwise the error message "Could not open PBM-file" is shown (a PBM-file contains information about limitations for each menu options). ÉÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄ» ³ noglobalcheck ³ Disables checking for menu options in the GLOBAL menu ÈÄÄÄÄÄÄÄÄÄÄÄÄÄÄļÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄ Type ............... GLOBAL Syntax ............. noglobalcheck Description ........ Similar to "nocheck", but ONLY the GLOBAL checking is disabled. Use this keyword if you want checking but no global menu is defined in the ProBoard menu editor (file GLOBAL.PBM). ÉÄÄÄÄÄÄÄÄÄ» Enables the "LOG"-function / some runtime information ³ log {+} ³ is written to the file PROBOARD.LOG ÈÄÄÄÄÄÄÄÄļÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄ Type ............... GLOBAL Syntax ............. log Description ........ If this keyword is defined, some useful runtime information (e. g. selected menu options, executed functions) is written to the file PROBOARD.LOG. ÉÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄ» ³ forceansi {+} ³ Forces CURSORY to use the ANSI-emulation ÈÄÄÄÄÄÄÄÄÄÄÄÄÄÄļÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄ Type ............... GLOBAL Syntax ............. forceansi Description ........ If this keyword is defined, CURSORY uses the ANSI-mode in any case. For example this is useful for a LOGIN. ÉÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄ» ³ forceavatar {+} ³ Forces CURSORY to use the AVATAR-emulation ÈÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄļÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄ Type ............... GLOBAL Syntax ............. forceavatar Description ........ If this keyword is defined, CURSORY uses the AVATAR-mode in any case. For example this is useful for a LOGIN. ÉÄÄÄÄÄÄ» ³ hide ³ The cursor is hidden GLOBALLY ÈÄÄÄÄÄļÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄ Type ............... GLOBAL Syntax ............. hide X, Y X = X-position Y = Y-position Example ............ hide 79, 24 Description ........ The cursor is hidden GLOBALLY. This keyword is a replacement for the control code "*". If this keyword is used, the cursor is set to the defined position after EACH change on the screen. Now it will be invisible (also for the user!). The difference to the control code "*" is that the cursor is set to a fixed position again and again. "*" will always use the CURRENT position. NOTE: "hide 80, 24" will scroll up the screen. ÉÄÄÄÄÄÄÄÄÄÄÄÄ» ³ printstart ³ Displays a text BEFORE the cursor key control is started ÈÄÄÄÄÄÄÄÄÄÄÄļÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄ Type ............... GLOBAL Syntax ............. printstart "TEXT" TEXT = including control codes (you can find a description of all control codes in the section "Control codes") Example ............ printstart "%1,1%@15@Welcome to this menu!" Description ........ The text defined behind this keyword is displayed BEFORE the cursor key control (or the animation, if no menu options are defined) is started. If a background picture is defined (see CSI-keyword "show"), this will happen AFTER the picture is shown. For example you can use this keyword to display static text macros (fixed text macros, e. g. the user's name or location). ÉÄÄÄÄÄÄÄÄÄÄ» Displays a text AFTER the cursor key control is left ³ printend ³ and BEFORE the program exits ÈÄÄÄÄÄÄÄÄÄļÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄ Type ............... GLOBAL Syntax ............. printend "TEXT" TEXT = including control codes (you can find a description of all control codes in the section "Control codes") Example ............ printend "~¦" Description ........ Similar to "printstart", but this text is shown AFTER the menu selection is left and BEFORE the program exits. For example this is useful if an animation is defined in a CSI-file but the "hide"-keyword is NOT used. Then the cursor position is not defined any time, so if you leave the menu ProBoard could display something at a wrong position. These "errors" occur for example if you use the internal message reading routine. After the user selected the menu option "Read messages", the prompt which messages should be shown is displayed in the MIDDLE of the background picture. This problem can be solved by using the keywords "printend" OR "hide" (the cursor is hidden additionally). You can also use "printend" e. g. to "log off" the user immediately after a menu is left (e. g. at Login). ÉÄÄÄÄÄÄÄÄÄÄ» ³ userdoes ³ Creates a USERDOES-file in the ProBoard system-directory ÈÄÄÄÄÄÄÄÄÄļÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄ Type ............... GLOBAL Syntax ............. userdoes "TEXT" Example ............ userdoes "Just testing CURSORY :-)" Description ........ This keyword can be used to create a "USERDOES.*"-file in the ProBoard system-directory BEFORE the program is started ("*" is the current node number). This file may contain information about the user's activity. It can be read using special programs (e. g. USERDOES by DQP). You can assign a USERDOES-text to each CSI-file (therefore also if you call the program in a language file!). E. g. if userdoes "Just testing CURSORY" is defined in a CSI-file and this file is called on node 1, all other users can see (if they just use e. g. DQP-USERDOES) that user no. 1 is just testing CURSORY :-). ÉÄÄÄÄÄÄÄÄÄÄÄ» Defines how many "timeslices" are released per time unit ³ timeslice ³ if a multitasker is used ÈÄÄÄÄÄÄÄÄÄÄļÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄ Type ............... GLOBAL Syntax ............. timeslice VALUE VALUE = a decimal value Default ............ 1 Example ............ timeslice 5 Description ........ The value behind this keyword defines how many "timeslices" are released per time unit if CURSORY runs under a multitasker. Value 1 means that such "timeslices" are released after every cycle (checking the keyboard and modem buffer and displaying the next animation sequence). If 2 is specified, this will only happen every second, if 3 every third cycle. Default is 1. If 0 is defined, no "timeslices" are released. Using this keyword you can reserve more time for a CURSORY- task under a multitasker. E. g. this is useful if many other tasks are in the background which "slow down" an animation. The best setting depends on the system used and should be tested. If no multitasker is detected, this keyword has no effect. ÚÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄ¿ ³ Control codes ³ ÀÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÙ All control codes may be used in connection with the keywords "menu", "help", "task", "printstart" and "printend". Many of these control codes need a start and an end marking (two identical characters, e. g. for color changing the character "@"). If you forget the end marking, the complete control code is ignored. This could cause wrong results. If you have problems, check if all end markings are set. NOTE: If you want to DISPLAY a control character, you have to define it TWICE (see also chapter "How to use control characters") ÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄ @a,b@ = Change color (for "menu") a = Color code or color macro, if the menu option is NOT active b = Color code or color macro, if the menu option is active @a@ = Change color (for "help", "task", "printstart" and "printend") a = Color code or color macro Color code = background color * 16 + foreground color ÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄ 0 = Black, 1 = Blue, 2 = Green, 3 = Cyan, 4 = Red, 5 = Magenta, 6 = Brown, 7 = Lightgray, 8 = Darkgray, 9 = Lightblue, 10 = Lightgreen, 11 = Lightcyan, 12 = Lightred, 13 = Lightmagenta, 14 = Yellow, 15 = White If you add 128 to the color code, the foreground color will blink. A value higher than 7 as backround color has no effect. Color macros see section "Color macros" below! %x,y% = Change absolute cursor position x = X-position y = Y-position If x and/or y are 0, the specific coordinate is not changed &Xx& = Change relative cursor position X = L (Left), R (Right), U (Up) or D (Down) x = relative change ^TEXTMACRO^ = Displays a ProBoard-compatible text macro, which is replaced through specific information at runtime (text macros see section "Text macros" below!) §FILENAME§ = (ASCII 167) {+} Shows an ASCII-/ANSI-/AVATAR-file (the file extension MUST NOT be specified). The file, which must be located in the ProBoard TXTFILES-directory, is shown immediately when this control code is found (if the file is found) üDELAYü = (ASCII 252) {+} The display is delayed dependent on the value specified behind "DELAY". You can use this to create "fadings" * = The cursor is hidden at the current position (on BLACK background ONLY!) (see also CSI-keyword "hide") ~ = Clear screen, if the user has set the "CLRSCR"-flag ¦ = (ASCII 166) If CURSORY finds this character, the user is logged off IMMEDIATELY :-) ÚÄÄÄÄÄÄÄÄÄÄÄÄÄÄ¿ ³ Color macros ³ ÀÄÄÄÄÄÄÄÄÄÄÄÄÄÄÙ Color macros may be used in connection with the control character "@" everywhere "normal" color codes are valid, too. The syntax is FOREGROUNDCOLOR-BACKGROUNDCOLOR-BLINK, all macros must be seperated by a hyphen ("-"). ALL macros are OPTIONAL and SHAPELESS. The color BLACK may be left out. Some examples (in brackets the equivalent color codes): blue-black-blink (129) blue (1) blau-black (1) BLUE-Black (1) blue--blink (129) yellow-red (78) blue - black (1) -blue (16) b l u e - b l a c k (1) blau-schwarz (1) Note: English and german color macros and color codes may be mixed. A color macro or color code with a background color value higher than 7 has no effect. All valid color macros (ENGLISH/GERMAN): Color macro Color code Color macro Color code ÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄ ÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄ BLACK, SCHWARZ 0 DARKGRAY, DUNKELGRAU 8 BLUE, BLAU 1 LIGHTBLUE, HELLBLAU 9 GREEN, GRUEN 2 LIGHTGREEN, HELLGRUEN 10 CYAN, TUERKIS 3 LIGHTCYAN, HELLTUERKIS 11 RED, ROT 4 LIGHTRED, HELLROT 12 MAGENTA, VIOLETT 5 LIGHTMAGENTA, HELLVIOLETT 13 BROWN, BRAUN 6 YELLOW, GELB 14 LIGHTGRAY, HELLGRAU 7 WHITE, WEISS 15 BLINK 128 ÚÄÄÄÄÄÄÄÄÄÄÄÄÄ¿ ³ Text macros ³ ÀÄÄÄÄÄÄÄÄÄÄÄÄÄÙ Text macros can be shown left-aligned, right-aligned or centered. Normal: ^textmacro^ Left-aligned: ^textmacro:20^ Right-aligned: ^textmacro:-20^ Centered: ^textmacro::20^ ADDRESS1 User's address, 1. part ADDRESS2 User's address, 2. part ADDRESS3 User's address, 3. part BAUD Baudrate BBSLOCATION Location of BBS BBSNAME Name of BBS BBSPHONE Phone number of BBS BIRTHDATE User's birthday CITY User's location COUNTRY User's country CURFILEAREA# Number of current filearea CURFILEGROUP# Number of current filegroup CURMENU Name of current menu CURMSGAREA# Number of current messagearea CURMSGGROUP# Number of current messagegroup DATAPHONE User's data phone number DATE {+} Current date DOWNLOADLIMIT User's KB download-limit per day EXPIRATIONDATE Expiration-date FAXPHONE User's FAX phone number FIRSTLOGIN Date of user's first login FIRSTNAME {+} User's first name FLAGANSI +/- = Ansi enabled/disabled FLAGAVATAR +/- = Avatar enabled/disabled FLAGAVTPLUS +/- = Avt/0+ enabled/disabled FLAGCLEARSCREEN +/- = Clearscreen enabled/disabled FLAGFSED +/- = Fullscreen-editor enabled/disabled FLAGHOTKEYS +/- = Hotkeys enabled/disabled FLAGIBM +/- = IBM-chars enabled/disabled FLAGMOREPROMPT +/- = Moreprompt enabled/disabled FULLTIME {+} Current time (including seconds!) HANDLE {+} User's handle (alias) ID User's "ID" (short description of level) INACTIVITYTIME Inactivity-time INFO CURSORY version number KBDOWNLOADED User's KB download (total) KBUPLOADED User's KB Upload (total) KBUSEDTODAY User's KB Download (today) LANGUAGE User's language LASTDATE Date of user's last call LASTNEWFILESCHECK Date of user's last newfilecheck LASTPASSWORDCHANGE Date of user's last password change LASTTIME Time of user's last call LEVEL User's level MAXSYSOPPAGES Number of allowed sysop pages MINUSEDTODAY User's online time today (minutes) MNUDIR Path to the *.PBM-files MSGDIR Path to messagebase NAME {+} User's name NEWUSERLEVEL Level for new users NLDIR Nodelist-directory NODE Current node number NUMCALLS Number of user's total calls NUMDOWNLOADS Number of user's total downloads NUMNODES Number of nodes NUMPOSTED Number of user's written messages NUMUPLOADS Number of user's total uploads NUMUSERS Number of users PASSWORD User's password PEXDIR PEX-directory PREVUSER Name of previous user PVTDIR User's private upload-directory SCREENLENGTH Number of lines SCREENWIDTH Number of columns STARTDIR Startup-path STATE User's state SYSDIR ProBoard system-directory SYSOPNAME Sysop's name TIME {+} Current time TMLEFT User's time left today TMLIMIT User's daily time limit TMONLINE User's online time today TOTALTIMEUSED User's total online time TXTDIR Path to the ASCII-/ANSI-/AVATAR-files UPDIR Upload-directory USERREC User's number in the file USERS.BBS VERSION ProBoard version number VOICEPHONE User's voice phone number %ENVIRONMENT-VARIABLE Shows the environment variable defined with "SET VARIABLE=" ÚÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄ¿ ³ Special codes for "hotkey" and "globalkey" {+} ³ ÀÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÙ By using these special codes you can use the following keys as hotkey. SPACE #32 RETURN #13 ESC #27 Cursor-left #19200 Cursor-right #19712 Cursor-up #18432 Cursor-down #20480 HOME #18176 END #20224 Examples: hotkey #27 globalkey #19200, < globalkey #19712, > ÚÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄ¿ ³ Error messages ³ ÀÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÙ SYNTAX -> CURSORY [CSI-file] The program could not find any parameter in the DATA-field of the menu editor ERROR -> Out of memory Too few memory to display all menu options / animation sequences defined in the CSI-file ERROR -> Could not open PBM-file After selecting a menu option the program checks if it is possibly locked by flags, a minumum level or something else in the menu editor. This information is read from "PBM"-files. When CURSORY is called in a language file, no PBM-file exists. In this case the checking must be deactivated manually to prevent this error message. You can do this by using the global CSI-keyword "nocheck" ERROR -> Could not open GLOBAL.PBM The file GLOBAL.PBM could not be found. Create a global menu or use the global CSI-keyword "noglobalcheck" ERROR -> Could not open CSI-file The CSI-file was not found. This error occurs if the specified file does not exist or the filename and/or the path are not spelled correctly. If this error occurs again in spite of all checking, then use the filename including COMPLETE path and drive name in the DATA-field (you can find further information in the chapter "CURSORY F.A.Q. / Frequently asked questions") ERROR [CSI] -> No "menu" defined The specified CSI-file was found, but it contains too few information. The program can only be stared if at least one menu option is defined with "menu" ERROR [CSI] -> Unknown keyword in line x In the given line of the CSI-file there is an unkown keyword. Check if the keyword is spelled correctly. You can find further information in the chapter "CURSORY F.A.Q. / Frequently asked questions" ERROR [CSI] -> Too many "menu" defined Too many menu options defined ERROR [CSI] -> Too many "task" defined Too many animation sequences defined ERROR [CSI] -> " expected in line x In the given line a " is missing ERROR [CSI] -> Too few parameters in line x In the given line at least one parameter is missing behind the CSI-keyword ERROR [CSI] -> Too many parameters in line x In the given line there are too many parameters behind the CSI-keyword. You can find further information about other reasons for this error message in the chapter "CURSORY F.A.Q. / Frequently asked questions" ERROR [CSI] -> Keyword outside block in line x In the given line there is a LOCAL CSI-keyword which does not belong to any menu option or animation sequence. Please check if you possibly forgot to define the keywords "menu" or "task" above this keyword