diff options
author | hpa <hpa> | 2002-06-12 19:25:32 +0000 |
---|---|---|
committer | hpa <hpa> | 2002-06-12 19:25:32 +0000 |
commit | 55ddbef3b32a149c2ee1b37d3600ea5c4a1bf57c (patch) | |
tree | 6b41e944c0f8e621afbe55c7dd6cc51e0b00932e | |
parent | a2102044e0d13b194f89ddc699671aee3ae6e5b9 (diff) | |
download | syslinux-55ddbef3b32a149c2ee1b37d3600ea5c4a1bf57c.tar.gz |
Remove the noop API call, and instead use function 0 for internal
purposes as the actual implementation of "unimplemented syscall."
-rw-r--r-- | comboot.doc | 8 | ||||
-rw-r--r-- | comboot.inc | 20 |
2 files changed, 13 insertions, 15 deletions
diff --git a/comboot.doc b/comboot.doc index 50b9720b..9985b906 100644 --- a/comboot.doc +++ b/comboot.doc @@ -185,14 +185,6 @@ All calls return CF=0 on success, CF=1 on failure. The noted outputs apply if CF=0 only unless otherwise noted. -AX=0000h No Operation - - Input: AX 0000h - Output: None - - This API call does nothing. - - AX=0001h Get Version Input: AX 0001h diff --git a/comboot.inc b/comboot.inc index b3b46474..546feb29 100644 --- a/comboot.inc +++ b/comboot.inc @@ -226,15 +226,22 @@ comboot_int22: pop ds cmp ax,int22_count - jae comboot_apierr - + jb .ok + xor ax,ax ; Function 0 -> unimplemented +.ok: xchg ax,bx add bx,bx call [bx+int22_table] jmp comboot_resume ; On return ; -; INT 22h AX=0000h Null system call +; INT 22h AX=0000h Unimplemented call +; +comapi_err: + stc + ret + +; ; INT 22h AX=0001h Get SYSLINUX version ; comapi_get_version: @@ -360,19 +367,18 @@ comapi_close: ; ; INT 22h AX=0009h Call PXE stack ; -comapi_pxecall: %if IS_PXELINUX +comapi_pxecall: call far [PXENVEntry] clc ret %else - stc ; Function not available - ret +comapi_pxecall equ comapi_err ; Not available %endif align 2, db 0 int22_table: - dw comapi_nop ; 0000 null syscall + dw comapi_err ; 0000 unimplemented syscall dw comapi_get_version ; 0001 get SYSLINUX version dw comapi_writestr ; 0002 write string dw comapi_run ; 0003 run specified command |