Author Topic: A question about extra bytes in MS OS 1.0 descriptor  (Read 3900 times)

Walter Smoo

  • Member
  • ***
  • Posts: 1
A question about extra bytes in MS OS 1.0 descriptor
« on: November 08, 2019, 03:00:03 pm »
I am very grateful for the USB help given here by Jan Axelson.

My question is about the Microsoft OS 1.0 String Descriptors. There is a disparity between the Microsoft specification, and the Axelson posted file "ms_os_10_descriptors.c.  Specifically, there are two extra bytes in the Axelson file, that are not in the Microsoft spec. For convenience, I here highlight them in red. Axelson may well be correct, (and the Microsoft spec merely a misprint), but I am seeking clarification on this point. Thank you for your help.

From the posted file "ms_os_10_descriptors.c"



// Microsoft Extended Compat ID OS feature descriptor

UCHAR ms_extended_compat_id_os_feature_descriptor[0x2a] =
{

0x2a, 0x00, 0x00, 0x00,   // Descriptor size (42 bytes)
0x00, 0x01,                // Descriptor version number (1.00)
0x04, 0x00,                // Extended Compat ID OS descriptor identifier
0x01, 0x00,                 // Number of custom property sections that follow
0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,                        // Reserved

0x00,                        //   bInterfaceNumber of the WinUSB interface
0x01,                      //   Reserved, set to 0x01
0x57, 0x49, 0x4E, 0x55, 0x53, 0x42, 0x00, 0x00,            // WINUSB ID
0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,   // Secondary ID
0x00, 0x00, 0x00, 0x00, 0x00, 0x00                               // Reserved

Jan Axelson

  • Administrator
  • Frequent Contributor
  • *****
  • Posts: 3033
    • Lakeview Research
Re: A question about extra bytes in MS OS 1.0 descriptor
« Reply #1 on: November 08, 2019, 06:16:04 pm »
The Microsoft documentation is correct. Thanks for pointing it out.