diff options
| author | H. Peter Anvin <hpa@zytor.com> | 2008-02-15 22:51:46 -0800 |
|---|---|---|
| committer | H. Peter Anvin <hpa@zytor.com> | 2008-02-15 22:54:28 -0800 |
| commit | c9cddae667ebea9bdeba68db49c0e3230e85f9d4 (patch) | |
| tree | 2b9662f35bafc8f9197269d6ff0101bd601ffa06 /ldlinux.asm | |
| parent | 8404cd587d44f412819ce09adfb5f62b9b5e05e7 (diff) | |
| download | syslinux-3.62-pre7.tar.gz | |
Put virtual kernels (CLI labels) in high memorysyslinux-3.62-pre7
Support putting virtual kernels in high memory instead of using a
dedicated segment for it. This both reduces the low memory footprint
by 64K, and allows for functionally unlimited labels (tested with over
a hundred thousand.)
Diffstat (limited to 'ldlinux.asm')
| -rw-r--r-- | ldlinux.asm | 7 |
1 files changed, 3 insertions, 4 deletions
diff --git a/ldlinux.asm b/ldlinux.asm index 0c5c94f8..0f063154 100644 --- a/ldlinux.asm +++ b/ldlinux.asm @@ -58,7 +58,7 @@ SECTOR_SIZE equ (1 << SECTOR_SHIFT) ; The following structure is used for "virtual kernels"; i.e. LILO-style ; option labels. The options we permit here are `kernel' and `append ; Since there is no room in the bottom 64K for all of these, we -; stick them at vk_seg:0000 and copy them down before we need them. +; stick them in high memory and copy them down before we need them. ; struc vkernel vk_vname: resb FILENAME_MAX ; Virtual name **MUST BE FIRST!** @@ -78,9 +78,8 @@ vk_end: equ $ ; Should be <= vk_size ; ; 0000h - main code/data segment (and BIOS segment) ; -real_mode_seg equ 4000h -cache_seg equ 3000h ; 64K area for metadata cache -vk_seg equ 2000h ; Virtual kernels +real_mode_seg equ 3000h +cache_seg equ 2000h ; 64K area for metadata cache xfer_buf_seg equ 1000h ; Bounce buffer for I/O to high mem comboot_seg equ real_mode_seg ; COMBOOT image loading zone |
