中国DOS联盟论坛

China DOS Union

-- Unite DOS · Advance DOS · Grow DOS --
Union site: www.cn-dos.net Forum site: www.cn-dos.net/forum
Guest | Log in | Register | Members | Search | China DOS Union
中国DOS联盟论坛
The time now is 2026-09-06 06:27
47,812 topics / 349,914 posts / today 0 new / 48,268 members
DOS启动盘 & LOGO技术 (启动盘室) » Single Boot CD Production 1
Printable Version  2,861 / 5
Floor1 nre Posted 2003-01-19 00:00
银牌会员 Posts 361 Credits 1,210
! This post is only for friends who are interested in the principle of bootable CDs! If your only purpose is to make a bootable CD, you'd better skip this post.

The method mentioned here is implemented according to the "EL TORITO" Format Specification V1.0. In other words, to make a bootable disk through this method, only a hex editor and an ISO image making tool are needed. This is the most fundamental call, so there is no compatibility issue. Other tools for making bootable disks are actually based on this format.

"EL TORITO" BOOTABLE CDROM FORMAT V1.0 supports multiple boots (unlimited number), multi-platform 80X86, POWER PC, MAC, and multi-image formats (1.2M, 1.44M, 2.88M, HD).
Http://www2.zzu.edu.cn/ie/newdos/uploadImages/200311923251832792.jpg
This article mainly explains the production process of SINGLE BOOT-IMAGE.

Find an existing disk image or make one yourself. The image made by HD-COPY may not work, but the one made by WINIMAGE is okay. Use the ISO image making software to make this IMG into an ISO CD image.

Manually convert this ordinary ISO into a bootable single-boot CD. First, say a few concepts to help you understand the production process.

A standard ISO9660 CD has 333,000 sectors, each sector has 2,352 bytes, and 2048 bytes are used to store data. The sector in the CD is the same concept as the cluster in the disk, that is, the smallest storage unit of the CD. In other words, if a file is only 1 byte, it also occupies one sector of 2048 bytes in the CD.

The first 16 sectors (0-15 sectors) are not used by the system. The 17th one (sector 16) is the primary volume descriptor of the CDROM. The 18th sector (sector 17) is the Boot Record Volume of the CDROM, and the identification of the bootable CD is also here.

As mentioned earlier, each sector is 2048 bytes, so the address of the 18th sector (sector 17) is 2048 * 17 = 34816.

This is a common ISO CD image made by WINISO.

CD001 is the identification of the ISO9660 CD, which must exist, otherwise the CD may not be recognized. Only this CD001 identification is necessary in this sector. Other information is generated by the ISO making software, such as the volume label, etc. Clearing them all will not affect the CD.

This is the identification of the Boot Record Volume of the bootable CD, with 4 key points.
1. It must be the 18th sector (sector 17) because there is sector 0, so the 18th sector is sector 17.
2. After CD001, change the ASCII code to EL TORITO SPECIFICATION, which is the identification of the bootable CD. The BIOS recognizes whether it is a BOOTABLE CD through this.
3. The 2 bytes after EL TORITO SPECIFICATION must be 0, not ASCII space. The ASCII space is 20 in hexadecimal.
4. The 02 at the address 34887 is to specify the LBA address of the Booting Catalog mentioned in the first picture.

Theoretically, the Booting Catalog can be placed anywhere on the CD. I have seen some similar articles before. The method they use is to first create a 2048-byte file, put it and the boot disk image into the ISO together, and then put the LBA address of this 2048-byte file at 34887 to be used as the Booting Catalog. I think this method is unnecessary. As mentioned earlier, each sector of the ISO9660 CD is 2048, and the first 16 sectors are not used by the system, so you can directly take any one of the first 16 sectors as the Booting Catalog. For this boot disk, I used sector 2 as the Bootable Catalog, so I wrote 02 in 34887. So the Booting Catalog address of this disk = 2048 * 2 = 4096.

Floor2 minisheep Posted 2003-01-19 00:00
高级用户 Posts 233 Credits 830
Get rid of it! How nice it is to have multiple boots!
Floor3 nre Posted 2003-01-20 00:00
银牌会员 Posts 361 Credits 1,210
If the simple ones can't be done, the complex ones definitely can't be done.
Floor4 minisheep Posted 2003-01-20 00:00
高级用户 Posts 233 Credits 830
Technology is for people to serve! Calculating like this all the time is so troublesome! You can go to Wuyou! Yuwei to see and immediately understand multi-boot! But it's a pity that most of the software used are made by foreigners!
Floor5 nre Posted 2003-01-20 00:00
银牌会员 Posts 361 Credits 1,210
What they actually made is a single-boot CD (you can compare with their ISO to understand the boot CD format). Because they want to implement multi-boot on a single-boot CD (and there is another purpose for the graphical interface), so they have to use third-party compiled software. In fact, the BIOS itself supports multi-boot CDs.




Floor6 闪猛 Posted 2003-02-22 00:00
中级用户 Posts 69 Credits 327
This article is good. I hope the poster can publish more articles introducing the principle of bootable discs. I hope to see "Single Boot Disc Making 2", "Single Boot Disc Making 3", "Single Boot Disc Making... N" soon.
[ Contact the Union admin team - 中国DOS联盟 - Standard version ]
Sponsored by ifanr Inc | © 2001–2023