![]() |
Hello, it is me again. It has been six months since the "Multi-Bootable N-in-1 CD Howto" was first posted in last December. More than 11,000 hits (views) are generated by this thread and I am glad that it is of helpful to some, if not all, of you. I have recently added an Appendix section and I am now putting it in this new thread and hope that people who need the latest information will find and read it:
A P P E N D I X Cooking the Multi-Boot Menu System with Boot Scriptor Other than using loader.bin & diskem1x.bin (which Bart Lagerweij has stopped to have further development), we can also use Michael K Ter Louw's Boot Scriptor ([link]http://www.bootscriptor.org/[/link]) to create our Multi-Boot Menu System. Boot Scriptor is a program that allows a high degree of interactivity when booting from a CD-ROM drive. It provides a set of commands designed to enable users to boot a system in a number of ways, as well as provide interactive menus to choose boot options from. Below is an example of the Multi-Boot Menu System I have recently made for my SP1 (Beta) SlipStreamed Windows XP 2-in-1 CD using Boot Scriptor: ![]() The Boot Scriptor program (bscript.cbt, isolinux.bin, isolinux.cfg, memdisk & iloader.bin) and the Boot Script (bscript.ini) of my above example are obtainable from [link]http://members.rogers.com/khauyeung/bscript.rar.[/link] (Extract bscript.rar, all files are contained in the BSCRIPT folder which should be put under the sourceroot of the 2-in-1 CD.) To make a CD that boots into Boot Scriptor, you need to make a directory called "BSCRIPT" under the sourceroot. In the BSCRIPT directory, place the following files: bscript.cbt, bscript.ini, isolinux.bin, isolinux.cfg, memdisk(optional) and iloader.bin(optional). The file "memdisk" is only necessary if you plan on using the memdisk command in Boot Scriptor for floppy boot images. To maximize ISO creation application compatibility, a special loader program called "ILOADER.BIN" was made. Almost every ISO creation utility supports this kind of loading. ILOADER.BIN (I put it in BSCRIPT folder) does not have to be in the CD-contents folder, but make sure your ISO creation utility knows where to find it. You will also probably want to place any other scripts or floppy boot images (NOT NT/2K/WP/.NET type boot-sectors which should be placed just under sourceroot)you need in the BSCRIPT folder as well. Now let us learn the boot process of our example using Boot Scriptor: 1. You boot your computer with the 2in1 CD, the BIOS search information on the CD which tells to run the ILOADER.BIN. 2. The iloader.bin takes over the control and goes to the default BSCRIPT folder to load the ISOLINUX.BIN. 3. The isolinux.bin looks into the configuration file ISOLINUX.CFG which has the following contents: default bscript label bscript kernel bscript.cbt 4. The default Boot Scriptor Kernel BSCRIPT.CBT is now called which search for the default script file BSCRIPT.INI which provides interactive menu for us to choose our boot options. Our choice of option is then passed by Boot Scriptor back to ISOLINUX.BIN for execution. In my example, floppy boot images (boot_msd.img, boot_pcd.img, w98_cmd.img, w98_ntfs.img, boot_di5.img, boot_er.img, tomsrtbt.img, pm7.img, spinrite.img) are placed in BSCRIPT folder while boot-sectors (BOOTFPPP.BIN & BOOTFPPH.BIN) and folders of minimum files-set (FPPP & FPPH) are placed directly under the sourceroot. Here is part of the content of the BSCRIPT.INI (with Important Commands & Labels in BOLD letters)corresponding to my example: ; ; bscript.ini file for the Windows XP (SP1) Professional, Home Edition Multi-Bootable CD ; ; Command List: About, Blink, Boot, Call, Cd, Chain, Check, Clear, Cls, Color, Dir, End, Getkey, Goto ; Help, Highlight, Isolinux, Ls, Man, Memdisk, Onkey, Print, Quit, Reboot, Restart, Return, Script, Setkey ; Setpos, Tab, Type, Wait ; ; Color 0x<bg><fg>: Set the display colors to the specified background and foreground colors, where ; <bg> and <fg> are hex digits, corresponding to the standard display attributes ; 0 = black 8 = dark grey ; 1 = darkblue 9 = bright blue ; 2 = dark green a = bright green ; 3 = dark cyan b = bright cyan ; 4 = dark red c = bright red ; 5 = dark purple d = bright purple ; 6 = brown e = yellow ; 7 = light grey f = white cls color 0x0B print "------------------------------------------------------------------------------n" print "Windows XP (SP1) Professional, Home Edition Multi-Bootable CD by khauyeungn" print "------------------------------------------------------------------------------n" print "n" color 0x0A print " 1) Install Windows XP (SP1) Professional (Retail)n" print " 2) Install Windows XP (SP1) Home Edition (Retail)n" print "n" color 0x0F print " 6) Boot Microsoft DOS 6.22n" print " 7) Boot IBM PC-DOS 7.0n" print " 8) Boot Windows 98 [Version 4.10.2222] with Commands supportn" print " 9) Boot Windows 98 [Version 4.10.2222] with NTFS-Pro supportn" print "n" print " a) Boot from Floppy A (0x00)n" print " d) Boot Drive Image 5n" print " e) Run Easy Recovery from a RAM Driven" print " l) Boot the most GNU/Linux (tomsrtbt)n" print " p) Run Partition Magic 7 from a RAM Driven" print " s) Boot SpinRite 5n" print " q) Quit Boot Scriptor & return to the Isolinux command promptn" color 0x0E print " Esc) Boot from first hard drive (0x80) [Default]n" print "n" color 0x0B print "Hit the key of your choice: " color 0x0F ; timeout is 20 seconds, default key is escape getkey 20 setkey esc onkey 1 goto fppp onkey 2 goto fpph onkey 6 goto msd onkey 7 goto pcd onkey 8 goto w98 onkey 9 goto ntfs_pro onkey a boot 0x00 onkey d goto di5 onkey e goto er onkey l goto linux onkey p goto pm7 onkey q quit onkey r reboot onkey s goto sr5 onkey esc boot 0x80 fppp: chain bootfppp.bin getkey goto exit fpph: chain bootfpph.bin getkey goto exit msd: memdisk boot_msd.img getkey goto exit pcd: memdisk boot_pcd.img getkey goto exit w98: memdisk w98_cmd.img getkey goto exit ntfs_pro: memdisk w98_ntfs.img getkey goto exit di5: memdisk boot_di5.img getkey goto exit er: memdisk boot_er.img getkey goto exit linux: memdisk tomsrtbt.img getkey goto exit pm7: memdisk pm7.img getkey goto exit sr5: memdisk spinrite.img getkey goto exit exit: end The Script file is straight forward and is very easy to follow. I like to draw your attention that we use the chain command to chain-load a Windows NT/2K/XP/.NET boot sector (BOOTFPPP.BIN or BOOTFPPH.BIN in our case). As mentioned previously, boot-sectors (BOOTFPPP.BIN & BOOTFPPH.BIN) and folders of minimum files-set (FPPP & FPPH) are placed directly under the sourceroot. The chain command is NOT for floppy booting images that require hardware emulation. Instead we use the memdisk command to boot from a floppy or hard disk image file (e.g. w98_cmd.img or tomsrtbt.img in our case), by calling Memdisk to emulate the hardware. The Memdisk program file must be present in the :home directory (BSCRIPT). FAQ: Q1: How can I make the minimum files set for Window 2000 or Windows .Net? A1: You can make the min. files set by starting an install with normal Win2K or .Net CD, when it finishes copying the minimum set of files into the $win_nt$.~bt folder of your boot-drive and starts the first reboot, you interrupt and stop the installation. The $win_nt$.~bt folder now contains the minimum set of files, but you have to delete the winnt.sif because it points to the i386 directory of a normal CD which is not applicable to our multi-bootable N-in-1 CD case. You can apply this method to Windows 2000, Windows XP, Windows .Net and the Non-English versions of the same which may have different locals and the additional BOOTFONT.BIN. Q2: How can I perform Upgrade instead of New Install with the N-in-1 CD? A2: Due to the fact that M$'s UPGRADE routine (from a CD) will search the default i386 folder of your CD, it cannot be applicable to our N-in-1 CD since all of our source directories (i386) have been moved down one level or have been redirected. If you really need to perform an upgrade, you do not do it directly from your N-in-1 CD but you copy the corresponding i386 folder to your hard-drive (or network) and upgrade from there with Advanced Options which then allow you to select the source directory and copy all source file to your hard-drive first. Q3: How can I make the N-in-1 CD to perform Unattended Installation? A3: In order to make an Unattended multi-boot Nn1 CD we have to add WINNT.SIF, (normally being placed in i386 folders in single version CDs), in another folders. The folders are that containing a minimum set of drivers and other required files for DOS Setup Stage of Professional or Home. You can reference to unattend.txt for the contents of WINNT.SIF. Q4: Is there a size limit for the CDIMAGE to handle? A4: CDIMAGE when being used under FAT32 has a size limit of 4GB. When being used under NTFS, it has no such limit. (Full page of N-in-1 Howto can be viewed at /http://members.rogers.com/khauyeung/nin1.htm) Last edited by khauyeung at Jul 20 2002, 11:04 AM |
Hey khauyeung!
I have checked out the full story and I must say I´m impressed! Great work indeed. I have now made my own w2k 3in1 CD. Thanks alot! :) - Flashy |
Very good info :) btw wht part of toronto do u live in :D
|
Quote:
I would appreciate a more detailed description of the procedure. Thanks |
All times are GMT +1. The time now is 07:42 AM. |
Powered by vBulletin® Version 3.6.5
Copyright ©2000 - 2025, Jelsoft Enterprises Ltd.