--- isolinux.asm +++ isolinux.asm @@ -62,9 +62,9 @@ ; ; Note: this structure can be added to, but it must ; -%define vk_power 5 ; log2(max number of vkernels) +%define vk_power 6 ; log2(max number of vkernels) %define max_vk (1 << vk_power) ; Maximum number of vkernels -%define vk_shift (15-vk_power) ; Number of bits to shift +%define vk_shift (16-vk_power) ; Number of bits to shift %define vk_size (1 << vk_shift) ; Size of a vkernel buffer struc vkernel @@ -78,7 +78,7 @@ endstruc %ifndef DEPEND -%if (vk_end > vk_size) || (vk_size*max_vk > 8000h) +%if (vk_end > vk_size) || (vk_size*max_vk > 65536) %error "Too many vkernels defined, reduce vk_power" %endif %endif @@ -88,7 +88,7 @@ ; 0000h - main code/data segment (and BIOS segment) ; real_mode_seg equ 7000h -vk_seg equ 6800h ; Virtual kernels +vk_seg equ 6000h ; Virtual kernels xfer_buf_seg equ 8000h ; Bounce buffer for I/O to high mem comboot_seg equ real_mode_seg ; COMBOOT image loading zone --- ldlinux.asm +++ ldlinux.asm @@ -66,9 +66,9 @@ ; ; Note: this structure can be added to, but it must ; -%define vk_power 6 ; log2(max number of vkernels) +%define vk_power 7 ; log2(max number of vkernels) %define max_vk (1 << vk_power) ; Maximum number of vkernels -%define vk_shift (15-vk_power) ; Number of bits to shift +%define vk_shift (16-vk_power) ; Number of bits to shift %define vk_size (1 << vk_shift) ; Size of a vkernel buffer struc vkernel @@ -82,7 +82,7 @@ endstruc %ifndef DEPEND -%if (vk_end > vk_size) || (vk_size*max_vk > 8000h) +%if (vk_end > vk_size) || (vk_size*max_vk > 65536) %error "Too many vkernels defined, reduce vk_power" %endif %endif @@ -95,8 +95,8 @@ ; 0000h - main code/data segment (and BIOS segment) ; real_mode_seg equ 7000h -fat_seg equ 4800h ; up to 128K area for FAT (2x64K) -vk_seg equ 6800h ; Virtual kernels +fat_seg equ 4000h ; up to 128K area for FAT (2x64K) +vk_seg equ 6000h ; Virtual kernels xfer_buf_seg equ 8000h ; Bounce buffer for I/O to high mem comboot_seg equ real_mode_seg ; COMBOOT image loading zone