Commit 07ce05eaa93941648721973375f1c11874122d45
1 parent
b324e814
fast Linux boot support
git-svn-id: svn://svn.savannah.nongnu.org/qemu/trunk@614 c046a42c-6fe2-441c-8c8c-71466251a162
Showing
1 changed file
with
32 additions
and
0 deletions
linux_boot.S
0 → 100644
| 1 | +/* | |
| 2 | + * QEMU Boot sector to launch a preloaded Linux kernel | |
| 3 | + * Copyright (c) 2004 Fabrice Bellard | |
| 4 | + */ | |
| 5 | + | |
| 6 | +#define LOAD_SEG 0x9000 | |
| 7 | + | |
| 8 | +.code16 | |
| 9 | +.text | |
| 10 | + .globl linux_boot_start | |
| 11 | + .globl linux_boot_end | |
| 12 | + | |
| 13 | +linux_boot_start: | |
| 14 | + cli | |
| 15 | + cld | |
| 16 | + mov $LOAD_SEG, %ax | |
| 17 | + mov %ax, %ds | |
| 18 | + mov %ax, %es | |
| 19 | + mov %ax, %fs | |
| 20 | + mov %ax, %gs | |
| 21 | + mov %ax, %ss | |
| 22 | + mov $0x8ffe, %sp | |
| 23 | + ljmp $LOAD_SEG + 0x20, $0 | |
| 24 | + | |
| 25 | +1: | |
| 26 | + .fill 510 - (1b - linux_boot_start), 1, 0 | |
| 27 | + | |
| 28 | + /* boot sector signature */ | |
| 29 | + .byte 0x55 | |
| 30 | + .byte 0xaa | |
| 31 | + | |
| 32 | +linux_boot_end: | ... | ... |