How to use uSu Script format's - By:Cyberglitch ÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄ Ok basically uSu Script format is pretty simple and will do alot if you take the time to work it through. Ok here we go... Contents ÄÄÄÄÄÄÄÄ 1.0.1 - The First Line of a script 1.0.2 - The Second Line of a script 1.1.1 - The ANSI: Command 1.1.2 - The PAUSE: Command 1.1.3 - The DISPLAY: Command 1.1.4 - The SETxx: Command 1.1.5 - The INPUT: Command 1.1.6 - The END: Command 1.1.7 - The RUNAPP: Command 1.1.8 - The GOTO: Command 1.1.9 - The CHCx: Command 1.1.A - The ASK: Command 1.1.B - The JMPx: Command 1.2.1 - The Color Codes/Keycodes 1.0.1 - The First Line of a script ÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄ Format - Purpose:This first line of the Script file(any file with .SCR) tells the application generator the description for this Application, and must be the first line, otherwise you'll get wierd undesired results, limit 40 chars Example - This is a Test application What's Done:This information is used for the highlight bar 1.0.2 - The Second Line of a script ÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄ Format - OUTFILE: Purpose:This Second line of the Script file tell the application generator what file the output text should be written to, make sure this is allways the second line in your Script file you you'll get wierd undesired results. Example - OUTFILE:WRITE2ME.OUT What's Done:The filename provided here will be written to whenever INPUT: is used. 1.1.1 - The ANSI: Command ÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄ Format - ANSI: Purpose:This command may be placed anywhere after the first two lines of a script, where is the Ansi file you wish to display Example - ANSI:TEST.ANS What's Done:This will display the ansi file named TEST.ANS to the user 1.1.2 - The PAUSE: Command ÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄ Format - PAUSE: Purpose:This command may be placed anywhere after the first two lines of a script, where is your pause string. This command will display your pause string and the wait for the user to press any key to continue, all codes are supported(Section 1.2.1) Example - PAUSE:Press Any Key to Continue What's Done:This will display "Press Any Key to Continue" to the user and wait for him to press a key 1.1.3 - The DISPLAY: Command ÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄ Format - DISPLAY: Purpose:This command may be placed anywhere after the first two lines of a script, where is what you wan't to display on the screen. All codes are supported(Section 1.2.1) Example - DISPLAY:Show this text to the user What's Done:The example above will print out to the user "Show this text to the user" to the screen 1.1.4 - The SETxx: Command ÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄ Format - SETxx: Purpose:This command defines a macro(@xx, xx= 01-99), where 'x' in SETx is a the macro number you wish to set. Thus @xx in a DISPLAY: command will display macro #xx(where xx is - 01-99) on the screen it you have set it. All other codes are supported(Section 1.2.1) for the part of the command. This helps save typing and makes the application generator more flexibal. Example(s) - SET01:Hello there #1 SET02:Hello there #2 ... SET99:Hello there #99!!! DISPLAY:@01@02@99 What's Done:What's done here is defining a macro, so you may print out text that's commonly used quicker without having to type it over and over again. Thus when you use a DISPLAY: command you'll see whats been put into the macro's appear inplace of the @01, @02, etc... NOTE:YOU MAY DISPLAY ANOTHER MACRO FROM A MACRO. See Below Example(s) - SET01:Hello 1 SET02:Hello 2 SET03:@01@02 What's Done:Here we defined a macro to print out other macro's. When you use a display command to display macro 3, @03, you'll see both macros 1 and 2, like so Hello 1Hello 2 1.1.5 - The INPUT: Command ÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄ Format - INPUT:xx:; Purpose:This command may be placed anywhere after the first two lines of a script, where xx is a number between 01 to 80(make sure there are two spaces for the vaule you specify, this will keep the program from getting confused) that limit the input lenght. Where is the text you want in the output app file, this string must be seperated by a Semi-Colon to make sure the program determines between and . Where is the text you wan't displayed before input begins, All codes supported for this string (Section 1.2.1) Example - INPUT:09:This user's handle:;Please enter in your handle: What's Done:This is print to the screen... Please enter in your handle: ...and will limit the user's input to 9 charecters and save this to the output text-file with... This user's handle: ...before the input the user types in, then whatever the user typed in will be save after this information. 1.1.6 - The END: Command ÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄ Format - END: Purpose:The main purpose of this feature is to tell the application generator where to stop in the srcipt, if you ommit this statement at the end of the script that's fine to, because the script generator will automatically force this END: statement when exucting it and reaching the last line in the script file, you can however use this to debug your scripts by placeing it so it'll stop at different points in the script(for debuggsing purposes mostly) Example: END: What's Done:Heh. just end's the program 1.1.7 - The RUNAPP: Command ÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄ Format - RUNAPP: Purpose:The main purpose of this command is to allow you to run other applications, this allows you the user to design you own highlight bar system by writing the script for it. Example: RUNAPP:Ansi.App What's Done:Ansi.App is looked for and if it's found it will be executed if it's not found the application Generator will notify you. 1.1.8 - The GOTO: Command ÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄ Format - RUNAPP: Purpose:Well this was put in by popular demand, where is the label you would like the continuing of the application to occur, a label is named by putting a ':' before the name of the label Example - :THISLABEL Labels can be any lenght, and are not case sensitive, it is possible to have two labels with the same, but in different case, Example - :THISLABEL :thislabel The application Generator treats these as two seperate labels. Using the same labels isn't advised... Example - :THISLABEL :THISLABEL The Application Generator just searchs for the first labelname that matches the one you told it to go to, above the second :THISLABEL would never be executed. Example: GOTO:START-THIS-APP :START-THIS-APP What's Done:The application Generator will jump to the First label matching START-THIS-APP, and continue running the application from that line. 1.1.9 - The CHCx: Command ÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄ Format - CHCxx: Purpose:This command defines what ASK:(See ASK: Command) should display when the use highlights this choice, you may even use the @DA% Command for the portion to display an ansi instead of typing in the choice yourself. You can now make the Maxtrix look any way you wan't it to. You can also use all the other codes to locate the row, column, set the foreground and background color codes (Section 1.2.1) Example(s) - CHC1:Option #1 CHC2:Option #2 ... CHC9:Option #2 ASK:9 What's Done:What going on here is that you have defined the options to use when you use the ASK command to allow the user to choose an item and then press enter on it(See Section 1.1.A) 1.1.A - The ASK: Command ÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄ Format - ASK:x Purpose:This command allows the user to press the UP and DOWN arrow keys and highlight a Option and then press enter to choose that option. where the 'x' is let's ask know how many choices(from 1 to 9) to allow the user to select. Example(s) - ASK:5 What's Done:What will happen is that ASK will wait for the user to highlight and choose(press enter on) the option you wan't, the with the JMPx: command allows the program to jump to if choice 'x' was choosen, see example for JMPx 1.1.B - The JMPx: Command ÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄ Format - JMPx: Purpose:After a ASK:x command has been executed a vaule is returned of what option they choose, then JMPx: allows your script to branch out to different choices. IE... Example(s) - ASK:4 JMP1:Option1 JMP2:Option2 JMP3:Option3 JMP4:Option4 What's Done:What will happen here is after ASK has executed a vaule will be returned, ASK was limited to 4 choices, so depending on what choice the USER choose the script will GOTO another part of the program according to the Option choosen. So say i choose option 2 when ASK was run, the program would goto Label Option2 and continue executing the script from there. This is handy for making your own lightbar selection for Applications. 1.2.1 - The Color Codes/Keycodes ÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄ The list provided below is for the sole purpose of adding color and flexibity to your scripts... The Pipe Codes: =============== Foreground Colors: |00 - Black |01 - Dark Blue |02 - Dark Green |03 - Dark Cyan |04 - Dark Red |05 - Dark Purple |06 - Brown |07 - Dark White |08 - Dark Grey |09 - Bright Blue |10 - Bright Green |11 - Bright Cyan |12 - Bright Red |13 - Bright Purple |14 - Yellow |15 - Bright White Background Colors: |16 - Black |17 - Dark Blue |18 - Dark Green |19 - Dark Cyan |20 - Dark Red |21 - Dark Purple |22 - Brown |23 - Dark White Blink/Unblink: |24 - Blinking on |25 - Blinking Off The "@" Code's ============== (Please note the "xx"'s must allways be two charecters even tho you could write 1 as "1", but only "01" would work, etc..) @CR - Carriage, will go to the next line and set cursor in column 1 @CL - Will clear the current screen @LS - This will save the current Row and Position. @LL - This will restore the last save Row and Column @LRxx - where XX is a number between 01-25, locate's that row on the screen @LCxx - where XX is a number between 01-80, locate's that column on the screen @SDxx - where XX is a number between 01-99, delay's xx/100 th's of a second @SBxx - where XX is a number between 01-80, backspace xx number of spaces @DA% - Displays may also be an ANSI file, but make sure the '%' is after the filename so the program know what the last charecter of the filename is. RUNAPP: GOTO: SETx: CHCx: JMPx: ASK: