ISO9660 inspection. Two responsibilities:
- Classify an ISO into one of the four
BootModefamilies so the pipeline knows what to build (auto-mode resolution). - Inspect an ISO well enough to dry-run the file copy step without
actually mounting it via
hdiutil.
The classifier walks the ISO9660 directory tree and applies the current mode markers:
- Hybrid: protective MBR / GPT signature at offset 0x1FE + EFI System Partition GUID present in protective MBR area.
- Windows NT5: contains
I386/TXTSETUP.SIFplus NT5 loader/marker files. - Windows: contains
bootmgrANDsources/install.wimorsources/install.esd. - IsolinuxLinux: contains
isolinux/isolinux.bin. - UefiOnly: contains
EFI/BOOT/BOOTX64.EFI(or other UEFI loader path) AND lacks an MBR signature.
Windows 2000 media (NT 5.0) is split out from XP/2003 (NT 5.1/5.2)
using the WIN51/WIN52 root-marker files that Microsoft has shipped on
XP-and-later install media since XP launched. Presence = XP/2003 →
WindowsNtXp; absence (but still NT5-class) = Win2k →
Windows2000. The two modes share the GRUB4DOS chain shape but
differ in the textmode ramdisk driver (FiraDisk vs SVBus).
Vista (and a handful of other Microsoft install DVDs) ship a stub
ISO9660 whose PVD root contains only README.TXT; the real install
tree lives in UDF. The [udf] module walks that tree so the classifier
still sees BOOTMGR and SOURCES/INSTALL.WIM on those discs.