A free Windows-compatible Operating System - mirrored from GitHub
Go to file
Colin Finck 29bebdf5b3 [BOOTSECT]
Overhaul our ISO boot sector:
- Add another entry point for hybrid booting (called by isombr) and the hybrid signature needed for isohybrid.
- Import latest isolinux.asm "API" from http://repo.or.cz/syslinux.git/blob/8bbb10b70905339b7ca6b58d6833b6a95ab03dae:/core/isolinux.asm (latest version to date) and http://repo.or.cz/syslinux.git/blob/9141c603930ef23da1e08e487a0c26750fbb4fbe:/core/isolinux.asm (latest version that came with all functions in ASM).
  Among other things, this brings us getlinsec_ebios (for reading setupldr.sys in hybrid/MBR mode) and BrokenAwardHack (for working around broken Award BIOSes)
- Fix upstream getlinsec_ebios to load files >64K.
- Load the HDD boot sector directly to 0x7C00 instead of trackbuf. This way, we don't have to load it again when the user decides to boot from HDD.
- Check for the 0xAA55 signature to decide if the HDD contains a valid MBR. This was done differently and inconsistently for isoboot and isobtrt.
- Adapt the file and comment style to ReactOS guidelines. Add meaningful comments to our main code. Remove stuff that was just taken from isolinux.asm, but makes no sense for our version.
- Remove DEBUG_MESSAGES ifdef. There is no chance they can ever fit into the 2K sector with all the added features. Debugging can still happen using Bochs or adding specific messages.

Tested with Bochs, QEMU, VMware, VirtualBox and four real computers.
Many thanks to Hermès for all the helpful suggestions and additional investigations! :)

CORE-12648

svn path=/trunk/; revision=73594
2017-01-24 22:45:37 +00:00
reactos [BOOTSECT] 2017-01-24 22:45:37 +00:00
rosapps Remove the USE_MKISOFS switch and make mkisofs our one and only ISO creation tool. 2017-01-11 12:16:25 +00:00
rossubsys [REACTOS][ROSAPPS][ROSSUBSYS] 2016-05-31 22:36:48 +00:00
rostests [KERNEL32_APITEST] -Make FindActCtxSectionStringW test less strict. 2017-01-17 23:11:11 +00:00
wallpapers Rename 'wallpaper' repo to 'wallpapers' (since it doesn't contain only 1 wallpaper :p ) 2015-03-15 16:06:50 +00:00