DS:SI Filename of kernel image (zero-terminated string)
ES:BX Command line (zero-terminated string)
ECX IPAPPEND flags [PXELINUX]
- EDX Reserved - MUST BE ZERO
+ EDX Type of file (since 3.40)
Output: Does not return if successful; returns with CF=1 if
the kernel image is not found.
may still return to the command line if the image is somehow
corrupt, however.)
+ The file types are defined as follows:
+
+ Equivalent
+ EDX Config Extensions Type of file
+ 0 KERNEL Determined by filename extension
+ 1 LINUX none Linux kernel image
+ 2 BOOT .0 .bs .bin Bootstrap program
+ 3 BSS .bss Boot sector with patch [SYSLINUX]
+ 4 FDIMAGE .img Floppy disk image [ISOLINUX]
+ 5 COMBOOT .com .cbt 16-bit COMBOOT program
+ 6 COM32 .c32 COM32 program
+ 7 CONFIG Configuration file
+
AX=0017h [3.30] Report video mode change
Input: AX 0017h
been loaded, AL contains zero.
- AX=0019h [3.35] Read disk [SYSLINUX, ISOLINUX, EXTLINUX]
+ AX=0019h [3.xx] Read disk [SYSLINUX, ISOLINUX, EXTLINUX]
Input: AX 0019h
EDX Sector number
ESI Reserved - MUST BE ZERO
; INT 22h AX=0016h Run kernel image
;
comapi_runkernel:
+ mov al,P_DL
+ cmp al,VK_TYPES-1
+ ja .error
+ mov [KernelType],al
push ds
mov ds,P_DS
mov si,P_SI
mov word [CmdOptPtr],zero_string
jmp kernel_good_saved
+.error equ comapi_shuffle.error
+
;
; INT 22h AX=0017h Report video mode change
;
or esi,P_EDI ; are reserved for future expansion
jnz .err
mov eax,P_EDX
- mov bp,P_CX
mov es,P_ES
mov bx,P_BX
+ mov bp,P_CX ; WE CANNOT use P_* after touching bp!
call getlinsec
clc
ret