32/64-bit UNDI Specification
Version 1.02 12/12/00 379
The !PXE structure for S/W UNDI can be loaded into system memory from one of three places;
ROM on a NIC, system non-volatile storage, or external storage. Since there are no direct memory
or I/O ports available in the S/W UNDI !PXE structure, an indirect callable entry point is provided.
S/W UNDI developers are free to make their internal designs as simple or complex as they desire,
as long as all of the UNDI commands in this specification are implemented.
Descriptions of the fields in the !PXE structures is given in the table below.
Table G-4. !PXE Structure Field Definitions
Identifier Value Description
Signature “!PXE”!PXE structure signature. This field is used to locate an UNDI hardware or
software interface in system memory (or I/O) space. ‘!’ is in the first (lowest
address) byte, ‘P’ is in the second byte, ‘X’ in the third and ‘E’ in the last. This
field must be aligned on a 16-byte boundary (the last address byte must be
zero).
Len Varies Number of !PXE structure bytes to checksum.
When computing the checksum of this structure the Len field MUST be used
as the number of bytes to checksum. The !PXE structure checksum is
computed by adding all of the bytes in the structure, starting with the first byte
of the structure Signature: '!'. If the 8-bit sum of all of the unsigned bytes in
this structure is not zero, this is not a valid !PXE structure.
Fudge Varies This field is used to make the 8-bit checksum of this structure equal zero.
Rev 0x02 Revision of this structure.
IFcnt Varies This field reports the number (minus one) of physical external network
connections that are controlled by this !PXE interface. (If there is one network
connector, this field is zero. If there are two network connectors, this field is
one.)
Major 0x03 UNDI command interface major revision.
Minor 0x00 UNDI command interface minor revision.
reserved 0x0000 This field is reserved and must be set to zero.
continued