wok annotate syslinux/stuff/iso2exe/README @ rev 25682

Up libqcow (20240308)
author Pascal Bellard <pascal.bellard@slitaz.org>
date Sun Mar 24 18:25:46 2024 +0000 (5 weeks ago)
parents 02994416f017
children
rev   line source
pascal@13697 1 (c) GPLv2, Pascal Bellard <pascal.bellard@slitaz.org>
pascal@13697 2
pascal@14247 3 The iso2exe tool inserts a DOS/WIN32 .EXE header in an ISO image.
pascal@14247 4 The ISO image can be launched by DOS or Windows :
pascal@13691 5
pascal@13691 6 C:\> ren slitaz-5.0.iso slitaz.exe
pascal@13691 7 C:\> slitaz
pascal@13691 8
pascal@13691 9
pascal@13691 10 Why ?
pascal@13691 11
paul@13692 12 According to the SliTaz forum, some new users have problems burning CD-ROMs,
pascal@13697 13 creating USB Keys and booting these devices with the BIOS. Others are lost
paul@13692 14 during the installation process or partitioning.
pascal@13691 15
pascal@13691 16 The slitaz.exe program boots the SliTaz ISO image with a text menu:
pascal@13691 17
paul@13692 18 - to start SliTaz in RAM (live) in graphics mode or text mode.
pascal@13691 19
pascal@13697 20 - to install SliTaz "a la UMSDOS" in the \slitaz\ subdirectory. The easiest
pascal@21031 21 way to install SliTaz. No partitioning. No questions. But (very?) slow.
pascal@13691 22
pascal@13756 23 - to create a SliTaz USB Key.
pascal@13756 24
pascal@14247 25 When the slitaz.exe program can't boot SliTaz directly it will prompt to create
pascal@14247 26 a bootable image on a removeable media (Memory card, USB stick or ... floppy).
pascal@13691 27
pascal@13691 28 Usage:
pascal@13691 29
pascal@13691 30 C:\> progname [mode]
pascal@13691 31
paul@13692 32 Default mode is menu. Mode can be:
pascal@13691 33
pascal@13697 34 - menu start with an interactive menu
pascal@13697 35 - live launch SliTaz in RAM with graphics
pascal@13697 36 - text launch SliTaz in RAM with text mode
pascal@13697 37 - install SliTaz UMSDOS like installation
pascal@13691 38
pascal@17160 39 If the program name includes one of the supported modes, the according mode is
pascal@13691 40 assumed. Example 'C:\> slitazlive.exe' starts SliTaz in RAM with graphics.
pascal@13691 41
pascal@13691 42
pascal@13691 43 Implementation:
pascal@13691 44
pascal@13691 45 ISO9660 format begins with 32Kb unused (16 sectors). Some programs may use it:
pascal@13691 46
pascal@20771 47 - isolinux uses the first 512 bytes for hybrid iso boot (ISO image in a
pascal@13691 48 partition).
paul@13692 49 - tazlito stores extra flavor info at the 2nd Kb for 'tazlito iso2flavor'.
pascal@13691 50
pascal@20771 51 The iso2exe tool moves the isolinux boot sector, installs its own boot sector
pascal@13972 52 with a DOS .EXE header, and adds a WIN32 .EXE installer, a DOS .COM Linux
pascal@17450 53 loader, a floppy bootstrap and an initramfs in the end of the first 32Kb.
pascal@13691 54
pascal@21031 55 The taziso tool is iso2exe aware and can handle iso image modified by iso2exe.
pascal@21031 56
pascal@21031 57 + - - - - - - - - +
pascal@21031 58 | user extras | [optional] Customization files see README.custom
pascal@21031 59 xxM +-----------------+ --------------- Official ISO image end ---------------
pascal@13691 60 | untouched | ISO9660 files including /boot/bzImage and /boot/rootfs*
pascal@13691 61 32K +-----------------+
pascal@17538 62 | | iso md5 | ISO9660 image (except first 32K) md5 hash (1)
pascal@17496 63 | +---------+
pascal@13691 64 | ISO initramfs | Live loader and UMSDOS like install script
pascal@13691 65 +-----------------+
pascal@13691 66 | DOS .COM loader | Load bzImage, the last rootfs*.gz and the ISO initramfs
pascal@13691 67 +-----------------+
pascal@14257 68 | floppy bootstrap| CD-ROM emulation boot driver for hard disk ISO image
pascal@13972 69 +-----------------+
pascal@13691 70 unused
pascal@13691 71 +-----------------+
pascal@21031 72 | WIN32 sections | Code, data and ressources
pascal@21031 73 +-----------------+
paul@13692 74 | tazlito info | Flavor missing data for 'tazlito iso2flavor'
pascal@14261 75 +-----------------+
pascal@13691 76 | isohybrid boot | Starts isolinux.bin
pascal@14261 77 +-----------------+
pascal@17538 78 | iso2exe boot + | Boot starts isohybrid (2), .EXE starts DOS .COM loader
pascal@14261 79 | WIN32 PE .exe | NT+ boot device creator / Win9x DOS .COM launcher.
pascal@21031 80 0 +-----------------+ ------------------------------------------------------
pascal@13691 81
pascal@17538 82 (1) The following script will show computed and stored md5 hash
pascal@17538 83 #!/bin/sh
pascal@17563 84 count=$(echo $(od -j 32848 -N 2 -t u2 -An $1))
pascal@17563 85 dd if=$1 bs=2k skip=16 count=$count 2>/dev/null | md5sum
pascal@17538 86 od -j 32752 -N 16 -t x1 -An $1 | sed 's/ //g'
pascal@17538 87
pascal@17538 88 (2) Eltorito boot (i.e. bootable CD-ROM by BIOS) is not concerned by iso2exe.
pascal@13691 89
pascal@13691 90
pascal@13691 91 Limitations:
pascal@13691 92
pascal@19516 93 - Only DOS and DOS based Windows (16 bits) boot supported.
pascal@16002 94 NT/XP support via boot device creation.
pascal@13699 95
pascal@13691 96 - The DOS Linux loader and the ISO initramfs must fit in ~30Kb.
pascal@13691 97
pascal@14247 98 - Linux kernels before version 2.6.30 don't support multiple initramfs load.
pascal@14247 99 They will not find the /init.exe file. The "text" mode will be forced:
pascal@13691 100 C:\> slitaz.exe text
pascal@13691 101
paul@13692 102 - The ISO image must include the files /boot/bzImage and /boot/rootfs*.
pascal@13691 103
pascal@14247 104 TODO:
pascal@14247 105
pascal@14247 106 - floppy bootstrap
pascal@14247 107