Boot Scriptor 1.2 Documentation
 
Table of Contents
 
  1. Introduction
  2. Mastering a CD
  3. Using the Console
    1. Special Keys
  4. Boot Scripts
    1. Startup Scripts
    2. Line Format
      1. Labels
      2. Commands
      3. Comments
  5. Displaying Images
    1. Image Formats
    2. Splash Screen
  6. Command Reference
    1. Parameter Types
      1. Keywords
      2. Filenames and Paths
      3. Numbers
    2. Syntax Definitions
    3. Command List
 
Introduction
Learning how to use Boot Scriptor involves knowing three things: how to create a CD that boots using Boot Scriptor, how to use the Boot Scriptor Console, and how to create and execute Boot Scripts.

Mastering the CD involves putting together all the files you need on the disk, along with all the files Boot Scriptor requires, and then configuring the disk to load Boot Scriptor when booted. The technique varies slightly depending on which program is used to make the ISO-9660 disk image.

Using the Boot Scriptor Console is fairly straightforward. A quick read through this section is all you should need to get started, however you'll need to become familiar with the Command Reference to become an expert.

Boot Scripts are what Boot Scriptor is all about. They provide the ability to create simple user interfaces, as well as grouping commands to make custom boot routines. The scripting language not very difficult to learn, but a thorough understanding of Boot Scriptor is required to harness everything the program has to offer.

 
Mastering a CD
In the Boot Scriptor distribution archive, there is a folder called 'bscript'. Basically all you will need to do is extract that folder to the root directory of your disk image, and then set loader.bin to be the disk's boot sector.

More specifically, here is what you will need to run Boot Scriptor 1.2:
 
 / (root)
 |
 + BSCRIPT
 | |
 | - LOADER.BIN
 | |
 | - BSCRIPT.BIN
 | |
 | - BSCRIPT.INI (startup script, optional)
 | |
 | - BSCRIPT.BMP (splash image, optional)
 | |
 | - BSCRIPT.BSI (splash image, optional)
 | |
 | + MODULES
 |   |
 |   + ISOLINUX
 |   | |
 |   | - MEMDISK (if you want to use the memdisk command)
 |   | |
 |   | - *.* (Linux kernels, or other isolinux-related files)
 |   |
 |   - *.BSM (all module files)
 |   |
 |   - PART.EXE (if you want to use Ranish Partition Manager)
 |
 + *.* (the rest of the files you want on the disk)

You will also probably want to place any other scripts or boot images you need in the /bscript folder as well.

You can omit modules (.bsm files) if you don't want them, but as a result their commands will not be available in Boot Scriptor.

Once you have all the files in place, you can build the iso image. Most programs will ask for the following options to make the disc bootable:
 

  • Boot image file: make sure this points to loader.bin
  • Developer name: whatever you want
  • Emulation type: no-emulation (or custom)
  • Load segment: 0x07C0 (or just 07C0)
  • Sector count: 4

For those using mkisofs, you can create the iso file by using the command:

mkisofs -o output.iso -b bscript/loader.bin -no-emul-boot -boot-load-size 4 root-of-iso-tree
 
Using the Console
Console mode is the default mode of operation for Boot Scriptor. It consists of a simple command prompt displaying the current directory, and a command input area. You can type any console command (see the Command Reference) at the command prompt and then press enter and the command will be executed. The command line can not exceed 255 characters in length.
 
Special Keys
In addition to normal characters, the following special keys are understood by the console:
Arrow-down Browse the command history (if history.bsm is installed)
Arrow-left Move the cursor to the previous character
Arrow-right Move the cursor to the next character
Arrow-up Browse the command history (if history.bsm is installed)
Backspace Delete the previous character
Delete Delete the current character
End Move the cursor to the end of the command line
Enter Execute the command present on the line
Escape Start a new command line
F1 Display general help (if basic.bsm is installed)
Home Move the cursor to the beginning of the command line
Insert Toggle insert/overstrike mode
 
Scripts
Boot Scriptor understands a simple scripting language, which makes things such as interactive menu systems and custom programmable boot sequences possible. Boot Scripts are essentially text files with console commands typed on its lines; however, the scripting language allows additional script-only commands to be used as well. Script files can be no larger than 65535 bytes. You can see examples of some boot scripts here.

After you've read through this section of the documentation and you want to begin making scripts, the best way to get started is to use the script debugger "bscriptw.com" (included in the release package). Most console and script commands will work in the debugger, so it's much easier to test your scripts from within DOS or Windows (the debugger only works in a DOS-compatible environment) instead of burning them to a CD. Commands such as boot, reboot, etc. will not follow through with their actions in the script debugger, so you don't have to worry about them causing problems. They will terminate the currently running script, however. When everything seems to be working right in the debugger, I suggest burning a CD-RW to make sure the script works as intended. Then if you have errors you can always erase the disc and try again. After you have all the kinks worked out, go ahead and produce your final CD.

 
Startup Script
Boot Scriptor has the ability to automatically run a script file when it starts. If there is a file in the /bscript directory called "bscript.ini", then it will be automatically executed as a script when Boot Scriptor starts up.

You can also prevent Boot Scriptor from executing bscript.ini by turning on Caps-Lock or holding down the Control key as the program starts up.

 
Line Format

label: command [param1] [param2]...[paramN] ; comment

Any line in a script file can contain up to three optional fields: label, command, and comment. You can omit any or all of these fields on a line, but if you include them they have to be in the standard format shown above. The current line length limit in Boot Scriptor is 255 characters.

Labels:
If you include a label on the line, it doesn't have to be at the very beginning of the line, but it must begin at the first non-whitespace on the line. A label definition must be followed by a colon; when you refer to a label in a call or goto command, you don't include the trailing colon. Labels can consist of any combination of characters except ':' (colon) and ';' (semicolon).

To use labels effectively, it's important to realize how they are searched for by the script interpreter. When you specify a label in a call or goto command, the interpreter begins searching for the label at the next line, and continues to the end of the file. If the label it's searching for is not found by the time the end of the file is reached, then the search resumes at the beginning of the file. If by the time the search reaches the original call/goto statement the label is not found, an error is generated reporting the unresolved label and the line number it was referenced on, and script processing is terminated. Note that there is no detection of duplicate label definitions. The first label found that matches the one referenced is the one used for the destination of the call/goto command.

Commands:
A command is any console or script command, including its parameters. You type them just as you would at the command prompt. Consult the Command Reference for information on the proper use of each command. Note that in Boot Scripts the entire command set is available for use.

Comments:
A comment begins with a semicolon, and continues to the end of the line. In other words, the script processor interprets a semicolon as an end-of-line character; upon finding one the rest of the line is ignored and script processing continues with the following line. All comments are single-line comments (there is no such thing as a multi-line comment in Boot Scriptor).

 
Displaying Images
Boot Scriptor has the abiltiy to display full-screen graphic images while the program continues to run in the background. You can have an image displayed as Boot Scriptor initializes (see Splash Screen) or on demand by using the show command.
 
Image Formats
Boot Scriptor can display two types of images: BMP and BSI.

Bitmap (BMP) images can be displayed on any hardware that is 100% VGA compatible. They must be 320 by 240 pixels in size, with an 8-bit color depth (i.e., 256 colors). Also, they must be saved in Windows BMP format using run-length encoding (RLE). Bitmap image files must have the extension '.bmp'.

Boot Scriptor Images (BSI) can only be displayed on hardware that is compatible with VESA BIOS Extensions v1.2 or above. They are 640 by 480 pixels in size, and true-color (i.e., 24-bit; approximately 16.7 million colors), so compatible hardware must also be capable of true-color 640x480 mode, and have enough memory for two video pages at that resolution. Fortunately most PC's manufactured in recent years possess this capability.

BSI files are produced using an image conversion tool called 'convert', located in the /tools folder of the Boot Scriptor distribution archive . Convert can either transform a 640x480x24 BMP file into its BSI equivalent, or vice-versa. Boot Scriptor Image files must have the extension '.bsi'.

 
Splash Screen
Splash screens provide a way for your bootable CD to show a logo or other such image when the computer boots up. The image will be displayed while Boot Scriptor initializes, and for up to four seconds after it was initially shown (unless the user presses a key to terminate the splash). The splash screen can be bypassed by either holding the control key down or turning on caps-lock while Boot Scriptor starts up.

When Boot Scriptor starts, it will look for a file called 'bscript.bsi' in the /bscript directory of the CD/DVD. If the file is found, then Boot Scriptor will attempt to display the image. If there is an error displaying the image (e.g., hardware doesn't meet the compatiblity requirements specified above, corrupted data in the image file, etc.) or if there is no bscript.bsi file present, then Boot Scriptor will then look for a file called 'bscript.bmp' in the /bscript directory. If that file is found then it will be displayed as the splash screen.

Splash screens are optional. If there is neither a bscript.bsi nor a bscript.bmp file present in the /bscript folder, then the user will just see a blank screen while Boot Scriptor initializes.

 
Command Reference
There is online help available for a few commands in console mode, but it is far from comprehensive. The Boot Scriptor Command Reference, however, explains in detail the use and function of every command understood in console mode and in scripts. You can find it here.