]> git.proxmox.com Git - mirror_edk2.git/blobdiff - DuetPkg/BootSector/bs32.S
Fix infinite loop bug in secure boot UI driver.
[mirror_edk2.git] / DuetPkg / BootSector / bs32.S
index 72fa21011befd9ad2a07f6f167fd1cfd2491afbd..95424f3d695fd59c9d706b582910150fac483e27 100644 (file)
@@ -1,7 +1,7 @@
 #------------------------------------------------------------------------------\r
 #*\r
-#*   Copyright 2006 - 2007, Intel Corporation                                                         \r
-#*   All rights reserved. This program and the accompanying materials                          \r
+#*   Copyright (c) 2006 - 2012, Intel Corporation. All rights reserved.<BR>\r
+#*   This program and the accompanying materials                          \r
 #*   are licensed and made available under the terms and conditions of the BSD License         \r
 #*   which accompanies this distribution.  The full text of the license may be found at        \r
 #*   http://opensource.org/licenses/bsd-license.php                                            \r
 #------------------------------------------------------------------------------\r
 \r
         #.MODEL small\r
-        #.stack: \r
-        #.486p: \r
-        .code16: \r
-.section .text
+        .stack: \r
+        .486p: \r
+        .code16\r
 \r
 .equ                      FAT_DIRECTORY_ENTRY_SIZE, 0x0020\r
 .equ                      FAT_DIRECTORY_ENTRY_SHIFT, 5\r
@@ -31,8 +30,8 @@
 .equ                      LOADER_FILENAME_PART2, 0x30325244    # "DR20"\r
 .equ                      LOADER_FILENAME_PART3, 0x20202030    # "0___"\r
 \r
-        .org 0x00
-.global _start
+        .org 0x0\r
+.global _start\r\r
 _start:\r
 Ia32Jump: \r
   jmp   BootSectorEntryPoint  # JMP inst                  - 3 bytes\r
@@ -80,7 +79,7 @@ BootSectorEntryPoint:
 # ****************************************************************************\r
 # Start Print\r
 # ****************************************************************************\r
-  leaw %cs:StartString, %si\r
+  movw $StartString, %si\r
   call PrintString\r
 \r
 # ****************************************************************************\r
@@ -208,7 +207,7 @@ PrintString:
   movw %ax, %es\r
   movw $0x7c0, %ax\r
   movw %ax, %ds\r
-  movw $7, %cx\r
+  movw $6, %cx\r
   movw $160, %di\r
   rep\r
   movsw\r
@@ -283,21 +282,21 @@ NotFoundAll:
   jne  FoundEFILDR\r
 BadBootSector: \r
 DiskError: \r
-  leaw %cs:ErrorString, %si\r
+  movw $ErrorString, %si\r
   call PrintString\r
 Halt: \r
   jmp   Halt\r
 \r
 StartString: \r
-  .byte 'B', 0x0c, 'S', 0x0c, 't', 0x0c, 'a', 0x0c, 'r', 0x0c, 't', 0x0c, '!', 0x0c\r
+  .byte 'B', 0x0c, 'S', 0x0c, 't', 0x0c, 'a', 0x0c, 'r', 0x0c, 't', 0x0c\r
 ErrorString: \r
-  .byte 'B', 0x0c, 'E', 0x0c, 'r', 0x0c, 'r', 0x0c, 'o', 0x0c, 'r', 0x0c, '!', 0x0c\r
+  .byte 'B', 0x0c, 'E', 0x0c, 'r', 0x0c, 'r', 0x0c, 'o', 0x0c, 'r', 0x0c\r
 \r
 # ****************************************************************************\r
 # LBA Offset for BootSector, need patched by tool for HD boot.\r
 # ****************************************************************************\r
 \r
-  # .org 0x01fa  # BUG_BUG\r
+  .org 0x01fa\r
 LBAOffsetForBootSector: \r
   .long     0x0\r
 \r
@@ -305,7 +304,7 @@ LBAOffsetForBootSector:
 # Sector Signature\r
 # ****************************************************************************\r
 \r
-  # .org 0x01fe  # BUG_BUG\r
+  .org 0x01fe\r
 SectorSignature: \r
   .word     0xaa55      # Boot Sector Signature\r
 \r