OSDN Git Service

fast Linux boot support
authorbellard <bellard@c046a42c-6fe2-441c-8c8c-71466251a162>
Mon, 16 Feb 2004 21:55:09 +0000 (21:55 +0000)
committerbellard <bellard@c046a42c-6fe2-441c-8c8c-71466251a162>
Mon, 16 Feb 2004 21:55:09 +0000 (21:55 +0000)
git-svn-id: svn://svn.savannah.nongnu.org/qemu/trunk@614 c046a42c-6fe2-441c-8c8c-71466251a162

linux_boot.S [new file with mode: 0644]

diff --git a/linux_boot.S b/linux_boot.S
new file mode 100644 (file)
index 0000000..353052c
--- /dev/null
@@ -0,0 +1,32 @@
+/*
+ * QEMU Boot sector to launch a preloaded Linux kernel
+ * Copyright (c) 2004 Fabrice Bellard
+ */
+
+#define LOAD_SEG 0x9000
+        
+.code16        
+.text
+       .globl  linux_boot_start
+       .globl  linux_boot_end
+
+linux_boot_start:
+        cli
+        cld
+        mov $LOAD_SEG, %ax
+        mov %ax, %ds
+        mov %ax, %es
+        mov %ax, %fs
+        mov %ax, %gs
+        mov %ax, %ss
+        mov $0x8ffe, %sp
+        ljmp $LOAD_SEG + 0x20, $0
+
+1:              
+        .fill 510 - (1b - linux_boot_start), 1, 0
+
+        /* boot sector signature */
+        .byte 0x55
+        .byte 0xaa
+                
+linux_boot_end: