From 69b1c0214f61bc6f57f8ed1dfc2eb1f436ab423e Mon Sep 17 00:00:00 2001 From: rsun3 Date: Tue, 10 Jan 2012 04:30:33 +0000 Subject: DuetPkg BootSector: Clean up .S files for 64-bit Duet for GCC build. Partly contributed by Sergey Isakov [isakov-sl@bk.ru]. Signed-off-by: rsun3 Reviewed-by: niruiyu git-svn-id: https://edk2.svn.sourceforge.net/svnroot/edk2/trunk/edk2@12921 6f19259b-4bc3-4df7-8a09-765794883524 --- DuetPkg/BootSector/st16_64.S | 21 ++++++++++++--------- 1 file changed, 12 insertions(+), 9 deletions(-) (limited to 'DuetPkg/BootSector/st16_64.S') diff --git a/DuetPkg/BootSector/st16_64.S b/DuetPkg/BootSector/st16_64.S index c6cc5169f6..8eadd28d35 100644 --- a/DuetPkg/BootSector/st16_64.S +++ b/DuetPkg/BootSector/st16_64.S @@ -1,6 +1,6 @@ #------------------------------------------------------------------------------ #* -#* Copyright (c) 2006 - 2007, Intel Corporation. All rights reserved.
+#* Copyright (c) 2006 - 2012, Intel Corporation. All rights reserved.
#* This program and the accompanying materials #* are licensed and made available under the terms and conditions of the BSD License #* which accompanies this distribution. The full text of the license may be found at @@ -27,6 +27,10 @@ .equ BLOCK_SHIFT, 9 .org 0x0 + +.global _start +_start: + Ia32Jump: jmp BootSectorEntryPoint # JMP inst - 3 bytes nop @@ -123,11 +127,11 @@ CheckEm64T: movw $18,%cx jmp PrintStringAndHalt CheckEm64TPass: -jumpFarInstruction: +JumpFarInstruction: .byte 0xea -jumpOffset: +JumpOffset: .word 0x200 -jumpSegment: +JumpSegment: .word 0x2000 @@ -431,7 +435,7 @@ A20GateEnabled: # # Enable Protect Mode (set CR0.PE=1) # - movl $cr0, %eax # Read CR0. + movl %cr0, %eax # Read CR0. orl $0x1,%eax # Set PE=1 movl %eax, %cr0 # Write CR0. .byte 0x66 @@ -503,7 +507,7 @@ In32BitProtectedMode: # # Enable paging to activate long mode (set CR0.PG=1) # - movl $cr0, %eax # Read CR0. + movl %cr0, %eax # Read CR0. .byte 0xf .byte 0xba .byte 0xe8 @@ -1098,10 +1102,9 @@ MemoryMap: .long 0,0,0,0,0,0,0,0 .long 0,0,0,0,0,0,0,0 .long 0,0,0,0,0,0,0,0 - .long 0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0 .long 0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0 - #.org 0x0fe0 #Just for pass build + .org 0x0fe0 MyStack: # below is the pieces of the IVT that is used to redirect INT 68h - 6fh # back to INT 08h - 0fh when in real mode... It is 'org'ed to a @@ -1133,7 +1136,7 @@ MyStack: iret - #.org 0x0ffe #Just for pass build + .org 0x0ffe BlockSignature: .word 0xaa55 -- cgit v1.2.3