Valid XHTML 1.0 Strict

bootAble documentation

Hayo Baan
version 6.4.2 25/09/2009

Contents

1. Introduction
2. Highlights
3. Installation
3.1 BootAble files
3.2 Other files and applications
4. Syntax
5. Using bootAble
6. Debugging
6.1 Test runs
6.2 Errors generated by the script
6.3 Check config.sys file
7. Contact information
8. Thanks
Known Problems/Limitations
Version History

1. Introduction

BootAble is an OS/2/eCS script to create a maintenance partition or a bootable CD/DVD. This partition/CD/DVD supports enough facilities to fully manage and recover your system.

Personally I use it on the CD-RWs I burn my system backups to. Recovering/reinstalling my system just takes booting-off this CD, optionally managing and formatting volumes and unzipping the backup-zip files that are also on the CD.

2. Highlights

A few highlights of the script:

Default settings for file system and driver support are mostly retrieved from the current system (in case of SCSI, you will need to tell bootAble the drivers to use). Adapting these defaults is done by creating a configuration file with the necessary settings.

3. Installation

The simplest way to install bootAble is is to copy all files from the bootAble archive to directory on the PATH or a specific directory (if you use a specific directory, just make sure you run bootAble from that location).

To locate files, bootAble first looks at the specified location (or current directory if no path is given), if the specified file is not found, bootAble searches the paths as specified in the SEARCHPATH setting. By default the SEARCHPATH is made up of \os2\boot on the boot drive, followed by the LIBPATH, PATH, DPATH, HELP, BOOKSHELF, \psfonts, and \psfonts\pfm on the boot drive.

Note: When specifying files with wildcards, the SEARCHPATH is not searched.

3.1. bootAble Files

3.1.1 Main Files
bootAble.cmd The script to create a bootAble CD/DVD or maintenance partition PATH
bootAble.cleanupInstall.cmd Script to remove old bootAble configuration files, no longer part of the current version PATH
bootAble.ico Icon file -
bootAble.cfg Defaults for configuration options/variables SEARCHPATH
bootAble.html These instructions -
bootAble.lvmgui.ico Icon file for the "lvmgui" command SEARCHPATH
bootAble.lvmrefresh.ico Icon file for the "Refresh removable media" command SEARCHPATH
bootAble.Src System ini template (WPS) SEARCHPATH
bootAble.Urc User ini template (WPS) SEARCHPATH
3.1.2 Configuration Files
bootAble.4os2 Configuration file for adding the 4OS/2 command shell environment SEARCHPATH
bootAble.acrobat Configuration file for adding Acrobat Reader v3 SEARCHPATH
bootAble.arcview Configuration file for adding the eCS archive viewer SEARCHPATH
bootAble.ba2k Configuration file for adding BackAgain/2000 (contributed by Doug Bissett) SEARCHPATH
bootAble.ba2kRC User ini settings for BackAgain/2000 SEARCHPATH
bootAble.dfsee Configuration file for adding dfsee SEARCHPATH
bootAble.doip Configuration file for adding DOIP (contributed by Doug Bissett) SEARCHPATH
bootAble.dragtext Configuration file for adding DragText v3.8 and up(contributed by Rich Walsh) SEARCHPATH
bootAble.dragtextRC User ini settings for DragText v3.8 and up (contributed by Rich Walsh) SEARCHPATH
bootAble.firefox Configuration file for adding the Firefox web browser SEARCHPATH
bootAble.firefoxProfile Empty Firefox profile with some pre-set defaults SEARCHPATH
bootAble.firewall Configuration file for adding TCP/IP 4.1+ firewall support (contributed by Doug Bissett) SEARCHPATH
bootAble.injoy Configuration file for adding Injoy (contributed by Rich Walsh & Doug Bissett) SEARCHPATH
bootAble.java131 Configuration file for adding Java131 support (contributed by Doug Bissett) SEARCHPATH
bootAble.mozilla Configuration file for adding the Mozilla web suite SEARCHPATH
bootAble.mozillaProfile Empty Mozilla profile with some pre-set defaults SEARCHPATH
bootAble.norman Configuration file for adding Norman Anti Virus support (contributed by Doug Bissett) SEARCHPATH
bootAble.normanRC User ini settings for Norman Anti Virus support SEARCHPATH
bootAble.pmdll Configuration file for adding PMdll, a tool to report DLL dependencies of executables SEARCHPATH
bootAble.pmview Configuration file for adding PMView SEARCHPATH
bootAble.pmviewRC User ini settings for PMView SEARCHPATH
bootAble.spf Configuration file for adding SPF, a look-alike IBM mainframe editor (contibuted by Mario Guzman) SEARCHPATH
bootAble.seamonkey Configuration file for adding the SeaMonkey web suite SEARCHPATH
bootAble.seamonkeyProfile Empty Seamonkey profile with some pre-set defaults SEARCHPATH
bootAble.thunderbird Configuration file for adding the Thunderbird mail client SEARCHPATH
bootAble.thunderbirdProfile Empty Thunderbird profile with some pre-set defaults SEARCHPATH
bootAble.unimaint Configuration file for adding unimaint (contributed by Mario Guzman) SEARCHPATH
bootAble.usbres Configuration file for adding the USB resource tool SEARCHPATH
bootAble.xwp_<LANG> Configuration files for XWorkplace NLS versions, currently German (DE) and Spanish (ES, partially) are provided SEARCHPATH
3.1.3 Sample Configuration files Files
bootAble.maintenance Sample configuration file for creating a maintenance partition SEARCHPATH
bootAble.testCD Sample configuration file for testing the burning of a CD/DVD SEARCHPATH
bootAble.wps Sample onfiguration file for adding WPS support SEARCHPATH

3.2. Other files and applications

3.2.1 Required files
OS/2 Warp or eCS The base OS and files. Installed IBM/eComStation
3.2.2 Required files when creating bootAble CDs/DVDs
CD Recorder Software Either cdrecord/dvddao+mkisofs or RSJ can be used. Installed Hobbes/RSJ
3.2.3 Required file when creating bootAble CDs using the ‘no floppy emulation’ method
Veit Kannegieser’s no floppy emulation boot When creating a no floppy emulation boot method, you’ll need to have the base memdisk files.
Note: This version of bootAble has been tested with the 01/11/2005 release of the memdisk tool, currently to be found in the packages directory on Veit Kannegieser’s homepage (arj archives) or on my website (zip files).
Note: Make sure all relevant subdirectories with the memdisk files are included on your searchpath. For instance:
ADDTOSEARCHPATH='P:\UTILS\MemDisk\exe;P:\UTILS\MemDisk\boot;',
'P:\UTILS\MemDisk\bin;P:\UTILS\MemDisk\bin\en;'
(assuming english messages).
SEARCHPATH Veit Kannegieser/
zip-file
tar, loaddll, and untar In case you enable unicode or hpfs386 support, or decide to add files to the boot image instead of the CD/DVD, you’ll furthermore need the tar command and Veit Kannegieser’s loaddll and untar. SEARCHPATH Veit Kannegieser/
zip-files
Hobbes
3.2.4 Required file when creating bootAble CDs using the ‘floppy emulation’ method
Virtual floppy Either vfdisk or super virtual disk can be used. A virtual floppy disk of 2.88MB should be inserted. Installed Hobbes/BMT-Micro
daniboot.flt Required file for enabling CD-Boot. SEARCHPATH Hobbes
savedskf.exe Command to create a floppy-disk image file. SEARCHPATH Hobbes
3.2.5 Optional Files (device drivers)
daniatap.flt or daniatapi.flt Enhanced ATAPI driver developed by Daniela Engert. SEARCHPATH Hobbes
danin512.flt or n512dasd.flt Non-512 bytes/sector removable media support driver. Either Daniela Engert’s or Alexander Terekhov’s driver can be used. When both drivers are present, Daniela’s is used. SEARCHPATH Hobbes
danis506.add Enhanced IDE driver developed by Daniela Engert. SEARCHPATH Hobbes
ibmrscsi.flt Removable SCSI devices geometry filter driver. SEARCHPATH eComStation
jjscdrom.dmd Enhanced CDROM driver developed by Takayuki ‘January June’ Suwa. SEARCHPATH Hobbes
3.2.6 Optional Files (file systems)
FAT32 Fat32 files system driver developed by Henk Kelder (now further developed by OS/2 Netl@bs). SEARCHPATH Hobbes/Netl@bs
HPFS386 HPFS386 file system driver (Warp server). SEARCHPATH IBM
NTFS NTFS file system driver (eCS 1.1) SEARCHPATH eComStation
Ramdisk Ramdisk support files ramdisk.exe and ramdisk.ifs(Required for a WPS enabled CD when not using the MEMDISK option). SEARCHPATH Hobbes
3.2.7 Optional Files (programs and other files)
LXLITE Compresses files (.exe, .dll, .fon, etc.) before writing, thus saving extra space. SEARCHPATH Hobbes
Roman Stangl’s CDBoot menu Adds a boot menu to a bootable CD.
Note: When using RSJ, make sure to specify explicitly where the cdboot command can be found with the CDBOOTMENUFILE option!
SEARCHPATH Hobbes
3.2.8 Optional Files (other files)
bos2rexx.exe Required file when adding REXX support to a command-line boot. This file can be found in the bootOS2 package. SEARCHPATH Hobbes
keyboard.dcp/viotbl.dcp Smaller keyboard.dcp and viotbl.dcp files to save extra space on the boot image, can be found on disk 2 of the WARP 4 installation disks.If you want to use these, simply copy them to a directory on the SEARCHPATH before the original (e.g., the current directory). You’ll need to rename vtbl850.dcp to viotbl.dcp as well. SEARCHPATH IBM
SIO2K Patch Patch file for the problem where on reboot you get a trap in the UART or SIO driver when using the SIO2K driver. This patch simply prevents the trapping function to be called at reboot. This patch is provided with eCS 1.1. The author, Veit Kannegieser (thank you), has however made it available for everyone interested. A zip-file can be downloaded from my website (you only need the unbhsio.sys file from the archive). SEARCHPATH eComStation/zip-file
snapse491.exe Latest SNAP SE distribution. SEARCHPATH eComStation
snapse-ecs-3.1.8.zip Latest SNAP SE distribution, special eCS-only licensed version. SEARCHPATH eComStation

4. Syntax

The command syntax is as follows:

bootAble [/v <verbose>] [<configuration file>|/@<configuration-list-file>…]

The optional arguments are the verbosity level and one or more configuration files. These configuration files are used to override the defaults as specified in the file bootAble.cfg. The special form /@configuration-list-file causes the content of the configuration list file to be used to list additional configuration files (a semicolon comment-out a line). E.g. if the file myCfg.lst contains the lines

bootAble.4os2
bootAble.firefox
;bootAble.notIncluded

The command

bootAble /v 67 bootAble.myCfg /@myCfg.lst bootAble.wps

would have exactly the same result as

bootAble /v 67 bootAble.myCfg bootAble.4os2 bootAble.firefox bootAble.wps

Notes:

5. Using bootAble

After installing bootAble and its required files (see section 3, Installation), you are ready to use it. Using bootAble is simple and basically comprises of only two steps:

  1. Determine which configuration files you are going to use (see section 3.1.2, Configuration files for a description of the provided configuration files);
  2. Run bootAble with the configuration files you require (see section 4, Syntax).

This is basically all there is to it, and depending on your configuration specifics, you should now have a working bootAble CD or maintenace partition! If you want to learn more about the various configuration options, please look through the various supplied configuration files, especially the default settings file bootAble.cfg. If things don’t work out and the script generates errors, please have a look at section 6: Debugging for some debugging info and tips.

Notes:

6. Debugging

6.1 Test runs

As creating a bootAble CD (or maintenance partition) usually involves some trial and error, it is best you try things out before ruining your next CD-R with a useless installation. Of course, using a CD-RW already stops this waste, but I suggest to even go further and first make a few test runs on your harddisk. To do this, simply include (a modified version of) bootAble.testCD on the command-line. E.g., bootAble /v 67 bootAble.wps bootAble.myCfg bootAble.testCD.

6.2 Errors generated by the script

Allthough I have tried to make the script run perfectly in all situations, it is likely your first try of the script will fail with some error. To help find the cause, the script knows various debug levels (VERBOSE setting or /v command-line option). The following debug levels are currently supported:

Bit Value Generated Output
1 Progress messages
2 Files copied & Files parsed
4 Config file parsing
8 INI rc file parsing
64 Error output of external commands
128 All external command output

The debug level is specified as a bitmask, this means you have to add the various bitvalues to get the script to output a combination of debug information. A few examples:

For your first runs I suggest to set your debug level to 67 as this usually gives a good indication of the cause in case of error.

The bootAble script uses the REXX interpreter to process the various lines in the configuration files. This means that whenever there is a (syntax) error in a configuration file, bootAble will fail with a REXX error. Locating the source of this error, however, is not always a straight forward matter as relevant information is usually missing. To help debug these errors, specify debug level 4; this shows you all processed configuration file lines and this should give you the exact location of the error. As this generates lots of output, I suggest you do not specify this by default.

Note: the VERBOSE setting in a configuration file only becomes active after the corresponding configuration file has been read. Especially if you are having configuration file problems, it may be advisable to specify the verbosity level with the /v command-line option (e.g., bootAble /V 71 bootAble.wps bootAble.myCfg bootAble.testCD).

6.3 Check config.sys file

If all goes well and the script finished without any error messages, check the created config.sys file. The config,sys can be found on the boot image, which is created on your virtual drive. If, however, you are using the TWODISKBOOT option, the virtual drive will contain a the second boot image and does not contain your config.sys anymore. To still check the created file you can do two things: either use the COPYCONFIGSYS to place a copy of config.sys in the root of the CD (or in the directory where the CD is created), or use PAUSEBEFOREBOOTIMAGE to interrupt the creation process and make a manual copy of the file.

If you are not happy with the resulting config.sys, add/remove options in your bootAble.myCfg. Once you have verified the correctness of the config.sys you are ready to create a real bootAble CDs (or maintenance partition) and test its working.

7. Contact information

Hayo Baan: mailto:hayo.baan@xs4all.nl, http://www.xs4all.nl/~hrbaan
IBM: http://www.ibm.com
eComStation: http://www.ecomstation.com
RSJ: http://www.rsj.de
Hobbes: http://hobbes.nmsu.edu
BMT-Micro: http://www.bmtmicro.com

8. Thanks

Finally big thanks also go to all you people testing and commenting the script; because of you I kept working on it ☺

Known Problems/Limitations

4OS/2 description files

Some people have reported that bootAble has problems copying 4OS/2’s descript.ion files.

Version 4.2 and up provide a work-around for this (i.e., bootAble will ask you what to do upon copy failure). Another work-around exists: use the setdos command to (temporarily) disable the description processing (i.e., setdos /d0).

AMouse and bootAble

When using bootAble on a system with the AMouse driver installed, your USB mouse may not work properly on a bootAble created system. This is caused by the usbmouse.sys driver that is part of the AMouse distribution. As of version 4.5.4 of bootAble, extra code is added to circumvent this (i.e., in case the AMouse driver has been used, the usbmouse.sys driver found in OS2\BOOT will be used). If, however, you have installed AMouse in a non-default way, this may not work. In this case simply force bootAble into using the original IBM usb mouse driver by pointing USBMOUSEFILE to the correct file in your bootAble.myCfg file. E.g.,

USBMOUSEFILE='P:\MyPath\usbmouse.sys'

BackAgain/2000

Recreating the catalog file with the GUI version of BackAgain/2000 (e.g., when restoring a backup) may give problems. To circumvent this, either have (a copy of) the original BA/2000 directory available, or make use of the BAIICR.EXE command-line utility (recommended method anyway).

GENMAC network card drivers

GENMAC support is completely automatic. The source location of the GENMAC specific files is normally determined automatically, but can be overridden by setting the GENMACSOURCE variable. The destination of the GENMAC specific files is determined by GENMACDESTINATION and defaults to the CD.

Important: bootAble only supports a GENMAC driven network card if it is currently installed and in use. This also means you can not build a GENMAC bootAble system for a system using a different type of card, even though this card may be supported by GENMAC.Furthermore, only GENMAC driver version 2.1 is supported, older versions are not.

Mozilla/Firefox/Thunderbird/Seamonkey

The Mozilla applications will probably not run in a system with less than 256MB internal memory unless you enable swapping to a harddisk (see MEMMAN and SWAPPATH settings).

Not all pages/mail will load correctly, and of course plugins etc. are missing as well. Even worse, some pages/mail seem to crash the applications completely, most notably, the google start page that is the default homepage for firefox. To partially fix these crashes, bootAble now includes an empty profile with the homepage set to bootAble as well as some other settings (e.g., cache sizes) for each of the Mozilla applications. Feel free to amend these profiles and/or to include (a copy of) your working profile.

Note: One of the things that seems to influence the stability of the Mozilla applications under bootAble seems to be the amount of available (shared) memory. With the XWorkplace enabled, for instance, firefox crashes on a lot more websites than without XWorkplace. The GRADD video drivers seem to give better results as well.

TAR version 1.18

Important: The TAR version that is included in eCS 2.0 RC4 (version 1.18) is incompatible with the tar version that is required for memdisk (in fact it seems to be broken). Please make sure that you are using the proper version with bootAble. The version that can be downloaded from Hobbes and the one included with eCS 1.1 work fine (version 1.10 - AK 2.58). You can specify the tar executable with the MEMDISKTAREXE setting in your bootAble.myCfg.

XWLAN utility support

XWLAN will fail to populate the list of installed NICs. This is a cosmetic failure, and will not affect the way that it works in thebootAble environment.

XCenter integration causes a longer startup time of the xcenter, this is normal.

Version History

v6.4.2 (25/09/2009)

v6.4.1 (25/09/2009)

v6.4 (23/09/2009)

v6.3 (27/07/2009)

v6.2 (01/03/2009)

v6.1 (27/02/2009)

v6.0 (29/02/2008)

A big thanks to Doug Bissett for his quick testing, input, and feedback!

This version of bootAble has removed a few configuration files, please read the notes below to see if you need to adapt the way you are currently using bootAble. To remove the old files altogether, run the command bootAble.cleanupInstall.cmd. For the WPI distribution of bootAble, this is done automatically.

v5.0 (23/01/2008)

SNAP SE support thanks to Klaus Joosz:

v4.5.4 (18/11/2007)

Some modifications to the code thanks to Peter Brown:

v4.5.3 (26/10/2007)

v4.5.2 (08/09/2007)

v4.5.1 (06/04/2007)

v4.5 (26/03/2007)

v4.4.1 (23/03/2007)

v4.4 (13/03/2007)

v4.3.5 (09/09/2006)

v4.3.4 (03/09/2006)

v4.3.3 (02/09/2006)

v4.3.2 (13/08/2006)

v4.3.1 (24/05/2006)

v4.3 (20/01/2006)

v4.2.3 (28/11/2005)

v4.2 (09/10/2005)

v4.1 (18/08/2005)

v4.0 (08/05/2005)

v3.7 (20/03/2005)

v3.6 (02/01/2005)

v3.5 (02/11/2004)

v3.4 (11/10/2004)

v3.3 (05/06/2004)

v3.2 (27/03/2004)

v3.1a (10/03/2004)

v3.1 (09/03/2004)

v3.0a (23/02/2004)

v3.0 (22/02/2004)

v2.19 (25/01/2004)

v2.18 (23/12/2003)

v2.17a (21/12/2003)

v2.17 (19/12/2003)

v2.16 (09/07/2003)

v2.15 (16/03/2003)

v2.14 (12/01/2003)

v2.13 (15/11/2002)

v2.12 (20/10/2002)

v2.11 (30/09/2002)

v2.10 (29/09/2002)

v2.9 (24/09/2002)

v2.8 (23/09/2002)

v2.7 (22/09/2002)

v2.6 (17/09/2002)

v2.5 (13/09/2002)

v2.4 (04/09/2002)

v2.3 (02/09/2002)

v2.2 (01/09/2002)

v2.1 (01/09/2002)

v2.0 (01/09/2002)

v1.4 (23/08/2002)

v1.3 (22/08/2002)

v1.2 (20/08/2002)

v1.1 (21/02/2002)

v1.0 (16/02/2002)