3.2 Definitions
Other ID: the first field, which shall not exceed 16 characters, may contain an optional ID. An example usage is for serial mice, which would ordinarily generate one or more characters in response to the COM Enumerator. This may be saved or ignored by the enumerator. For new Plug and Play COM pointing devices, this can be a single character (e.g. "M", 0x4D, for Mice); other devices should omit this field. Warning: If either Begin PnP or End PnP characters (0x08 or 0x28, 0x09 or 0x29) are included, the Plug and Play Enumerator will be confused.
This field may include 7-bit <CR> and <LF> characters for human legibility.
Begin PnP: This marks the beginning of the Plug and Play ID set. This is the open parentheses character, 0x28 (7-bit IDs), or the offset value 0x08 (6-bit IDs). The COM Enumerator will look for a matching End PnP character (see below).
PnP Rev: the two byte (12 bit) revision code for the Plug and Play COM specification this device conforms to. The twelve bits are extracted from [first byte: bits 5-0] concatenated with [second byte: bits 5-0]. This number divided by 100 decimal yields the version number, ranging from 0.00 (0x00,00) through 1.0 (0x01,24) to 40.95 (0x3F,3F). See examples in Tables 4-6. Note that PnP Rev codes that contain 0x09 or 0x29 will not be used. This would preclude "1.05" which would be coded as 0x01, 0x29, or "1.37", which would be coded 0x02,0x09.
EISA Mfr ID: Each device manufacturer must have a unique three character EISA identifier. Plug and Play compatible COM devices shall report this ID here. If Begin PnP is 0x08 (6-bit), then each character is offset by subtracting 0x20 from ASCII.
To request the form to use for obtaining an EISA Mfr ID, FAX or call BCPR Services, PO Box 11137, Spring, TX 77391-1137, T:713-251-4770, F:713-251-4832. There is no charge as of this writing.
Product ID: Plug and Play compatible COM devices shall report a unique product ID here, defined as a 16-bit value in 4-character hexadecimal code, with first character representing the most significant 4 bits. (See PnP ISA Specification.) These hexadecimal characters are offset for 6-bit IDs, see example in Table 3.
Extend: This character indicates that more optional fields follow. This is the backslash character "\", 0x5C (7-bit), or the offset value 0x3C if Begin PnP is 0x08 (6-bit).
Product Serial Number: In this optional field, Plug and Play compatible COM devices may report a unique product serial number, defined as a 32 bit value in 8 character hexadecimal code, with the first character representing the most significant bits. (See PnP ISA Specification.)
Class Name: This optional field, not exceeding 32 characters, is selected from a set of device types defined in Annex C. If the device does not fit a defined Windows 95 class name, this field should be omitted; device manufacturers should not invent new class names.
Compatible Device IDs: This optional field, including one or more strings separated by comma characters (0x0C or 0x2C), may identify compatible device IDs, for which the driver(s) are applicable. Each Device ID has the same format as defined for EISA ID (three characters) and Product ID (four characters). For example, a pointing device compatible with the Microsoft Mouse would indicate the seven character ID of a known compatible Microsoft Mouse.
Microsoft will define generic drivers, and define the corresponding device ID strings; the prefix will be "PNP". These will include, for example, Microsoft compatible mice, TIA-602 compatible modems, and TIA-578 compatible Class 1 FAX modems. Refer to the Plug and Play Forum on Compuserve and download "DEVIDS.ZIP" for a current listing of device IDs for legacy devices.
User Name: This optional field, not exceeding 40 characters, shall consist of a user-readable and user-recognizable product device description. It is expected that this would be displayed by a Plug and Play User Interface. Note that this string should not include either of the End PnP characters, 0x09 or 0x29.
For legibility, the User Name field may include <CR><LF> characters for 7-bit IDs.
Checksum: This optional field, a modulo-8, 8 bit arithmetic checksum of all characters from Begin PnP to End PnP, exclusive of the checksum characters themselves, represented as a two character hexadecimal number. The first character is the Most Significant Digit; the second is the Least Significant Digit.
End PnP: This mandatory character indicates the end of the Plug and Play ID strings. If Begin PnP is 0x28, then this is 0x29; if Begin PnP is 0x08, this is 0x09. Note that the End PnP character should not appear in the option information fields, so that the Enumerator can correctly detect the end of the ID string.
For legibility, the EndPnP character may be followed by <CR><LF> characters for 7-bit IDs.