Technical Reference Guide
Compaq iPAQ Family of Internet Devices
First Edition - March 2000
8-3
To support Windows NT an additional table to the BIOS32 table has been defined to contain 32-
bit pointers for the DDC and SIT locations. The Windows NT extension table is as follows:
; Extension to BIOS SERVICE directory table (next paragraph)
db “32OS” ; sig
db 2 ; number of entries in table
db “$DDC” ; DDC POST buffer sig
dd ? ; 32-bit pointer
dw ? ; by te size
db “$SIT” ; SIT sig
dd ? ; 32-bit pointer
dw ? ; by te size
db “$ERB” ; ESCD sig
dd ? ; 32-bit pointer
dw ? ; bytes size
The service identifier for Desktop Management functions is $CLM. Once the service identi fier
is found and th e checksum verified, a FAR call is invoked usin g the value specified at offset 04h
to retrieve the CM services entry point. The following entry conditions are used for calling the
Desktop Management service directory:
INPUT:
EAX = Service Identifier [$CLM]
EBX (31..8) = Reserved
EBX (7..0) = Must be set to 00h
CS = Code selec tor set to encompass the physical page holding
entry point as well as the immediately following physical page.
It must have the same base. CS is execute/r ead.
DS = Data selec tor set to encompass the physical page holding
entry point as well as the immediately following physical page.
It must have the same base. DS is read only.
SS = Stack selector must provide at least 1K of stack spac e and be 32-bit.
(I/O permissions must be provided so that the B IOS can support as necessary)
OUTPUT:
AL = Return code:
00h, requested service is present
80h, requested service is not present
81h, un-implemented function specified in BL
86h and CF=1, function not supported
EBX = Physical address to use as the selec tor BASE for the service
ECX = Value to use as the selector LIMIT for the service
EDX = Entry point for the service relative to the BASE returned in EBX