diff options
author | hpa <hpa> | 2002-06-12 06:16:58 +0000 |
---|---|---|
committer | hpa <hpa> | 2002-06-12 06:16:58 +0000 |
commit | cc055d5ee74a3ea85744a634936957d67dd2d783 (patch) | |
tree | b4dc77d19984b527de92722f1e35bfe96c7eda13 | |
parent | 62405f3c19985cec219984cf8722af083dc7dd78 (diff) | |
download | syslinux-cc055d5ee74a3ea85744a634936957d67dd2d783.tar.gz |
Add an API call to invoke the PXE stack directly.
-rw-r--r-- | comboot.doc | 10 | ||||
-rw-r--r-- | comboot.inc | 12 |
2 files changed, 22 insertions, 0 deletions
diff --git a/comboot.doc b/comboot.doc index 97bb89f4..50b9720b 100644 --- a/comboot.doc +++ b/comboot.doc @@ -298,3 +298,13 @@ AX=0008h Close file will probably crash the system. +AX=0009h Call PXE Stack [PXELINUX ONLY] + + Input: AX 0009h + BX PXE function number + ES:DI PXE data buffer + Output: AX PXE return status code + + Invoke an arbitrary PXE stack function. On SYSLINUX/ISOLINUX, + this function returns with an error (CF=1) and no action is + taken. diff --git a/comboot.inc b/comboot.inc index e8ec32c3..28049274 100644 --- a/comboot.inc +++ b/comboot.inc @@ -357,6 +357,17 @@ comapi_close: clc ret +; +; INT 22h AX=0009h Call PXE stack +; +%if IS_PXELINUX + call far [PXENVEntry] + clc + ret +%else + stc ; Function not available + ret +%endif align 2, db 0 int22_table: @@ -369,4 +380,5 @@ int22_table: dw comapi_open ; 0006 open file dw comapi_read ; 0007 read file dw comapi_close ; 0008 close file + dw comapi_pxecall ; 0009 call PXE stack int22_count equ ($-int22_table)/2 |