Author: cfinck Date: Wed May 3 15:32:33 2017 New Revision: 74461
URL: http://svn.reactos.org/svn/reactos?rev=74461&view=rev Log: [ISOHYBRID] Patch all our ISOs (bootcd, bootcdregtest, livecd, hybridcd) with isohybrid in order to make them bootable from HDDs or any kind of USB drives. The added MBR at the beginning of each ISO doesn't cause any harm for normal CD booting anymore after my patch in r74460. There is also no need for the dedicated isohybrid targets anymore.
Our ISOMBR master boot record now successfully loads our ISOBOOT boot sector. ISOBOOT loads FreeLdr and indicates that we're booting from HDD, so that FreeLdr can successfully load the kernel. We then bugcheck in the kernel with either 0x0000007B (INACCESSIBLE_BOOT_DEVICE) using bootcd or 0x0000006B (PROCESS1_INITIALIZATION_FAILED) using livecd. Testcase is: qemu-system-i386 -m 512 -hda bootcd_or_livecd.iso
Needs more investigation, but these are separate bugs and I consider CORE-12648 fixed.
Modified: trunk/reactos/boot/CMakeLists.txt
Modified: trunk/reactos/boot/CMakeLists.txt URL: http://svn.reactos.org/svn/reactos/trunk/reactos/boot/CMakeLists.txt?rev=744... ============================================================================== --- trunk/reactos/boot/CMakeLists.txt [iso-8859-1] (original) +++ trunk/reactos/boot/CMakeLists.txt [iso-8859-1] Wed May 3 15:32:33 2017 @@ -68,11 +68,8 @@ -eltorito-boot loader/isoboot.bin -no-emul-boot -boot-load-size 4 -eltorito-alt-boot -eltorito-platform efi -eltorito-boot loader/efisys.bin -no-emul-boot -hide boot.catalog -sort ${CMAKE_CURRENT_BINARY_DIR}/bootfiles.sort -no-cache-inodes -graft-points -path-list ${CMAKE_CURRENT_BINARY_DIR}/bootcd.lst - DEPENDS native-mkisofs - VERBATIM) -add_custom_target(isohybrid_bootcd COMMAND native-isohybrid -b ${_isombr_file} ${REACTOS_BINARY_DIR}/bootcd.iso - DEPENDS native-isohybrid isombr bootcd + DEPENDS isombr native-isohybrid native-mkisofs VERBATIM)
## BootCDRegTest @@ -86,11 +83,8 @@ -eltorito-boot loader/isobtrt.bin -no-emul-boot -boot-load-size 4 -eltorito-alt-boot -eltorito-platform efi -eltorito-boot loader/efisys.bin -no-emul-boot -hide boot.catalog -sort ${CMAKE_CURRENT_BINARY_DIR}/bootfiles.sort -no-cache-inodes -graft-points -path-list ${CMAKE_CURRENT_BINARY_DIR}/bootcdregtest.lst - DEPENDS native-mkisofs - VERBATIM) -add_custom_target(isohybrid_bootcdregtest COMMAND native-isohybrid -b ${_isombr_file} ${REACTOS_BINARY_DIR}/bootcdregtest.iso - DEPENDS native-isohybrid isombr bootcdregtest + DEPENDS isombr native-isohybrid native-mkisofs VERBATIM)
## LiveCD @@ -132,11 +126,8 @@ -eltorito-boot loader/isoboot.bin -no-emul-boot -boot-load-size 4 -eltorito-alt-boot -eltorito-platform efi -eltorito-boot loader/efisys.bin -no-emul-boot -hide boot.catalog -sort ${CMAKE_CURRENT_BINARY_DIR}/bootfiles.sort -no-cache-inodes -graft-points -path-list ${CMAKE_CURRENT_BINARY_DIR}/livecd.lst - DEPENDS native-mkisofs - VERBATIM) -add_custom_target(isohybrid_livecd COMMAND native-isohybrid -b ${_isombr_file} ${REACTOS_BINARY_DIR}/livecd.iso - DEPENDS native-isohybrid isombr livecd + DEPENDS isombr native-isohybrid native-mkisofs VERBATIM)
## HybridCD @@ -178,11 +169,8 @@ -eltorito-boot loader/isoboot.bin -no-emul-boot -boot-load-size 4 -eltorito-alt-boot -eltorito-platform efi -eltorito-boot loader/efisys.bin -no-emul-boot -hide boot.catalog -sort ${CMAKE_CURRENT_BINARY_DIR}/bootfiles.sort -duplicates-once -no-cache-inodes -graft-points -path-list ${CMAKE_CURRENT_BINARY_DIR}/hybridcd.lst - DEPENDS native-mkisofs bootcd livecd - VERBATIM) -add_custom_target(isohybrid_hybridcd COMMAND native-isohybrid -b ${_isombr_file} ${REACTOS_BINARY_DIR}/hybridcd.iso - DEPENDS native-isohybrid isombr hybridcd + DEPENDS bootcd livecd VERBATIM)
add_cd_file(TARGET efisys FILE ${CMAKE_CURRENT_BINARY_DIR}/efisys.bin DESTINATION loader NO_CAB NOT_IN_HYBRIDCD FOR bootcd regtest livecd hybridcd)