summaryrefslogtreecommitdiff
path: root/DuetPkg/BootSector
diff options
context:
space:
mode:
authorklu2 <klu2@6f19259b-4bc3-4df7-8a09-765794883524>2009-04-09 06:19:15 +0000
committerklu2 <klu2@6f19259b-4bc3-4df7-8a09-765794883524>2009-04-09 06:19:15 +0000
commit8141eea5fa69d4b1ab24bafb91d077b9fdd07919 (patch)
tree45021164eabdd69d9d7db05a98ff6d7b2391664f /DuetPkg/BootSector
parentc0e741ef23ed1091af6215699c940e71079ce6ae (diff)
Add comments for introducing startup sequence for DUET boot disk.
git-svn-id: https://edk2.svn.sourceforge.net/svnroot/edk2/trunk/edk2@8043 6f19259b-4bc3-4df7-8a09-765794883524
Diffstat (limited to 'DuetPkg/BootSector')
-rw-r--r--DuetPkg/BootSector/bootsect.S18
1 files changed, 15 insertions, 3 deletions
diff --git a/DuetPkg/BootSector/bootsect.S b/DuetPkg/BootSector/bootsect.S
index 62f50aca4..91a1966c9 100644
--- a/DuetPkg/BootSector/bootsect.S
+++ b/DuetPkg/BootSector/bootsect.S
@@ -9,13 +9,25 @@
#* THE PROGRAM IS DISTRIBUTED UNDER THE BSD LICENSE ON AN "AS IS" BASIS,
#* WITHOUT WARRANTIES OR REPRESENTATIONS OF ANY KIND, EITHER EXPRESS OR IMPLIED.
#*
-#* bootsect.asm
+#* bootsect.S
#*
-#* Abstract:
+#* bootsect.S is built as 16-bit binary file in 512 bytes and patched to disk/partition's
+#* first section - boot sector.
+#*
+#* The startup sequence for DUET disk boot sector is:
+#*
+#* 1, LegacyBios check 0xAA55 signature at boot sectore offset 0x1FE to judget
+#* whether disk/partition is bootable.
+#* 2, LegacyBios will load boot sector to 0x7c00 in real mode, pass BPB data and
+#* hand off control to 0x7c00 code.
+#* 3, boot sector code simply parse FAT format in boot disk and find EfiLdr binary file
+#* and EfiVar.bin if exists. For first boot, EfiVar.bin does not exist.
+#* 4, boot sector load the first sector of EfiLdr binary which is start.com to
+#* 0x2000:0x0000 address.
+#* 5, boot sector handoff control to 0x2000:0x0000 for start.com binary.
#*
#------------------------------------------------------------------------------
- #.MODEL small
.stack:
.486p:
.code16