[ros-diffs] [tkreuzer] 49597: revert unwanted changes

tkreuzer at svn.reactos.org tkreuzer at svn.reactos.org
Mon Nov 15 19:45:52 UTC 2010


Author: tkreuzer
Date: Mon Nov 15 19:45:52 2010
New Revision: 49597

URL: http://svn.reactos.org/svn/reactos?rev=49597&view=rev
Log:
revert unwanted changes

Modified:
    branches/cmake-bringup/boot/freeldr/freeldr/arch/i386/arch.S

Modified: branches/cmake-bringup/boot/freeldr/freeldr/arch/i386/arch.S
URL: http://svn.reactos.org/svn/reactos/branches/cmake-bringup/boot/freeldr/freeldr/arch/i386/arch.S?rev=49597&r1=49596&r2=49597&view=diff
==============================================================================
--- branches/cmake-bringup/boot/freeldr/freeldr/arch/i386/arch.S [iso-8859-1] (original)
+++ branches/cmake-bringup/boot/freeldr/freeldr/arch/i386/arch.S [iso-8859-1] Mon Nov 15 19:45:52 2010
@@ -17,19 +17,16 @@
  *  51 Franklin Street, Fifth Floor, Boston, MA 02110-1301 USA.
  */
 
-#include <asm.inc>
+.intel_syntax noprefix
+#define HEX(y) 0x##y
+
+#define ASM
 #include <arch.h>
 #include <multiboot.h>
 
-EXTERN _BootMain:PROC
-EXTERN __bss_start__:DWORD
-EXTERN __bss_end__:DWORD
-EXTERN i386idtptr:FWORD
-
-.code16
-
-PUBLIC RealEntryPoint
-RealEntryPoint:
+	.code16
+
+EXTERN(RealEntryPoint)
 
 	cli
 
@@ -47,10 +44,9 @@
 	sti
 
 	/* Init pmode */
-	call switch_to_prot
-
-.endcode16
-.code32
+	call	switch_to_prot
+
+	.code32
 
 	/* Zero BootDrive and BootPartition */
 	xor eax, eax
@@ -68,7 +64,7 @@
 	call	_BootMain
 
 	call	switch_to_real
-.code16
+	.code16
 
 	int HEX(19)
 
@@ -82,8 +78,9 @@
  * Switches the processor to protected mode
  * it destroys eax
  */
-PUBLIC switch_to_prot
-switch_to_prot:
+EXTERN(switch_to_prot)
+
+.code16
 
 	cli		/* None of these */
 
@@ -107,9 +104,9 @@
 	mov word ptr ds:[stack16], sp
 
 	/* Load the GDT */
-	lgdt gdtptr
+	lgdt	gdtptr
 	/* Load the IDT */
-	lidt i386idtptr
+	lidt	i386idtptr
 
 	/* Enable Protected Mode */
 	mov eax, cr0
@@ -117,12 +114,12 @@
 	mov cr0, eax
 
 	/* Clear prefetch queue & correct CS */
-	ljmp16 PMODE_CS, inpmode
+	//ljmp	PMODE_CS, inpmode
+    jmp far ptr PMODE_CS:inpmode
+
+.code32
 
 inpmode:
-.endcode16
-.code32
-
 	/* Setup segment selectors */
 	mov ax, PMODE_DS
 	mov ds, ax
@@ -142,8 +139,9 @@
  * Switches the processor back to real mode
  * it destroys eax
  */
-PUBLIC switch_to_real
-switch_to_real:
+EXTERN(switch_to_real)
+
+.code32
 
 	/* We don't know what values are currently */
 	/* in the segment registers. So we are */
@@ -184,7 +182,7 @@
 	mov	cr0, eax
 
 	/* Clear prefetch queue & correct CS */
-	//ljmp16 0, offset inrmode
+	//ljmp	$0, $inrmode
 	jmp far ptr 0:inrmode
 
 inrmode:
@@ -209,7 +207,7 @@
 	push word ptr ds:[code16ret]
 
 	/* Load IDTR with real mode value */
-	lidt rmode_idtptr
+	lidt	rmode_idtptr
 
 	sti		/* These are ok now */
 
@@ -220,8 +218,9 @@
 	/*
 	 * Needed for enabling the a20 address line
 	 */
+.code16
 empty_8042:
-	.word HEX(00eb), HEX(00eb)            // jmp $+2, jmp $+2
+	.word	0x00eb,0x00eb            // jmp $+2, jmp $+2
 	in al, HEX(64)
 	cmp al, HEX(ff)               // legacy-free machine without keyboard
 	jz empty_8042_ret           // controllers on Intel Macs read back 0xFF
@@ -230,14 +229,11 @@
 empty_8042_ret:
 	ret
 
-.endcode16
-.code32
-
 	/*
 	 * Enable the A20 address line (to allow access to over 1mb)
 	 */
-PUBLIC _EnableA20
-_EnableA20:
+EXTERN(_EnableA20)
+.code32
 
 	pusha
 
@@ -252,9 +248,7 @@
 	out	HEX(60), al
 	call empty_8042
 	call switch_to_prot
-
-.endcode16
-.code32
+	.code32
 
 	popa
 
@@ -263,26 +257,23 @@
 	/*
 	 * Disable the A20 address line
 	 */
-PUBLIC _DisableA20
-_DisableA20:
+EXTERN(_DisableA20)
+.code32
 
 	pusha
 
 	call switch_to_real
-
-.code16
-
-	call empty_8042
+	.code16
+
+	call	empty_8042
 	mov al, HEX(D1)                // command write
 	out HEX(64), al
 	call empty_8042
 	mov al, HEX(DD)                // A20 off
 	out HEX(60), al
-	call empty_8042
-	call switch_to_prot
-
-.endcode16
-.code32
+	call	empty_8042
+	call	switch_to_prot
+	.code32
 
 	popa
 
@@ -310,7 +301,7 @@
 #define INITIAL_BASE HEX(200000)
 
 	/* Align 32 bits boundary */
-	.align 4
+.align 4
 	
 	/* Multiboot header */
 MultibootHeader:
@@ -340,10 +331,10 @@
 	/* Although the multiboot spec says we should be called with the
 	 * segment registers set to 4GB flat mode, let's be sure and set up
 	 * our own */
-	lgdt gdtptrhigh + INITIAL_BASE - FREELDR_BASE
+	lgdt	gdtptrhigh + INITIAL_BASE - FREELDR_BASE
 	/* Reload segment selectors */
-	ljmp PMODE_CS, (mb1 + INITIAL_BASE - FREELDR_BASE)
-	//jmp far ptr PMODE_CS: (offset mb1 + INITIAL_BASE - FREELDR_BASE)
+	//ljmp	$PMODE_CS, $(mb1 + INITIAL_BASE - FREELDR_BASE)
+	jmp far ptr PMODE_CS: (mb1 + INITIAL_BASE - FREELDR_BASE)
 mb1:
 	mov dx, PMODE_DS
 	mov ds, dx
@@ -383,13 +374,13 @@
 	rep movsd
 
 	/* Load the GDT and IDT */
-	lgdt gdtptr
-	lidt i386idtptr
+	lgdt	gdtptr
+	lidt	i386idtptr
 
 	/* Clear prefetch queue & correct CS,
 	 * jump to low mem */
-	ljmp PMODE_CS, mb4
-	//jmp far ptr PMODE_CS:mb4
+	//ljmp	$PMODE_CS, $mb4
+	jmp far ptr PMODE_CS:mb4
 mb4:
 	/* Reload segment selectors */
 	mov dx, PMODE_DS
@@ -425,17 +416,15 @@
 
 	/* GO! */
 	push eax	
-	call _BootMain
+	call	_BootMain
 
 mbfail:
 	call	switch_to_real
-.code16
-	int	HEX(19)
-mbstop:
-	jmp	mbstop	/* We should never get here */
-
-.endcode16
-.code32
+	.code16
+	int	0x19
+mbstop:	jmp	mbstop	/* We should never get here */
+
+	.code32
 
 	/* 16-bit stack pointer */
 stack16:
@@ -507,13 +496,8 @@
 cmdline:
 	.fill	CMDLINE_SIZE, 1, 0
 
-PUBLIC _BootDrive
-_BootDrive:
+EXTERN(_BootDrive)
     .long 0
-
-PUBLIC _BootPartition
-_BootPartition:
+    
+EXTERN(_BootPartition)
     .long 0
-
-END
-




More information about the Ros-diffs mailing list