diff --git a/content/controllers/usb/cotm02001/_index.md b/content/controllers/usb/cotm02001/_index.md index aae054d..fd8f72a 100644 --- a/content/controllers/usb/cotm02001/_index.md +++ b/content/controllers/usb/cotm02001/_index.md @@ -16,7 +16,7 @@ Internally, it is a HID device with a vendor-specific class. The reported data d | **Product ID** | 0x77A7 | | **Serial number** | *Unavailable* | | **USB standard descriptor** | *Unavailable* | -| **HID report descriptor** | Not provided | +| **HID report descriptor** | [Link](/controllers/usb/descriptors/cotm02001_hid-report-descriptor.txt) (recreated, not provided by actual device) | ### Input diff --git a/content/controllers/usb/descriptors/cotm02001_hid-report-descriptor.txt b/content/controllers/usb/descriptors/cotm02001_hid-report-descriptor.txt new file mode 100644 index 0000000..1d0458c --- /dev/null +++ b/content/controllers/usb/descriptors/cotm02001_hid-report-descriptor.txt @@ -0,0 +1,30 @@ + 0x05, 0x01, // Usage Page (Generic Desktop Ctrls) + 0x09, 0x04, // Usage (Joystick) + 0xA1, 0x01, // Collection (Application) + 0x75, 0x08, // Report Size (8) + 0x95, 0x01, // Report Count (1) + 0x81, 0x01, // Input (Const,Array,Abs,No Wrap,Linear,Preferred State,No Null Position) + 0x09, 0x01, // Usage (Pointer) + 0xA1, 0x00, // Collection (Physical) + 0x09, 0x30, // Usage (X) + 0x15, 0x00, // Logical Minimum (0) + 0x26, 0xFF, 0x00, // Logical Maximum (255) + 0x75, 0x08, // Report Size (8) + 0x95, 0x01, // Report Count (1) + 0x81, 0x02, // Input (Data,Var,Abs,No Wrap,Linear,Preferred State,No Null Position) + 0xC0, // End Collection + 0x05, 0x09, // Usage Page (Button) + 0x19, 0x01, // Usage Minimum (0x01) + 0x29, 0x0E, // Usage Maximum (0x0E) + 0x15, 0x00, // Logical Minimum (0) + 0x25, 0x01, // Logical Maximum (1) + 0x35, 0x00, // Physical Minimum (0) + 0x45, 0x01, // Physical Maximum (1) + 0x75, 0x01, // Report Size (1) + 0x95, 0x0E, // Report Count (14) + 0x81, 0x02, // Input (Data,Var,Abs,No Wrap,Linear,Preferred State,No Null Position) + 0x95, 0x02, // Report Count (2) + 0x81, 0x01, // Input (Const,Array,Abs,No Wrap,Linear,Preferred State,No Null Position) + 0xC0, // End Collection + +// 55 bytes diff --git a/content/controllers/usb/descriptors/sotp031201_hid-report-descriptor.txt b/content/controllers/usb/descriptors/sotp031201_hid-report-descriptor.txt new file mode 100644 index 0000000..1d0458c --- /dev/null +++ b/content/controllers/usb/descriptors/sotp031201_hid-report-descriptor.txt @@ -0,0 +1,30 @@ + 0x05, 0x01, // Usage Page (Generic Desktop Ctrls) + 0x09, 0x04, // Usage (Joystick) + 0xA1, 0x01, // Collection (Application) + 0x75, 0x08, // Report Size (8) + 0x95, 0x01, // Report Count (1) + 0x81, 0x01, // Input (Const,Array,Abs,No Wrap,Linear,Preferred State,No Null Position) + 0x09, 0x01, // Usage (Pointer) + 0xA1, 0x00, // Collection (Physical) + 0x09, 0x30, // Usage (X) + 0x15, 0x00, // Logical Minimum (0) + 0x26, 0xFF, 0x00, // Logical Maximum (255) + 0x75, 0x08, // Report Size (8) + 0x95, 0x01, // Report Count (1) + 0x81, 0x02, // Input (Data,Var,Abs,No Wrap,Linear,Preferred State,No Null Position) + 0xC0, // End Collection + 0x05, 0x09, // Usage Page (Button) + 0x19, 0x01, // Usage Minimum (0x01) + 0x29, 0x0E, // Usage Maximum (0x0E) + 0x15, 0x00, // Logical Minimum (0) + 0x25, 0x01, // Logical Maximum (1) + 0x35, 0x00, // Physical Minimum (0) + 0x45, 0x01, // Physical Maximum (1) + 0x75, 0x01, // Report Size (1) + 0x95, 0x0E, // Report Count (14) + 0x81, 0x02, // Input (Data,Var,Abs,No Wrap,Linear,Preferred State,No Null Position) + 0x95, 0x02, // Report Count (2) + 0x81, 0x01, // Input (Const,Array,Abs,No Wrap,Linear,Preferred State,No Null Position) + 0xC0, // End Collection + +// 55 bytes diff --git a/content/controllers/usb/sotp031201/_index.md b/content/controllers/usb/sotp031201/_index.md index 20eec39..d420461 100644 --- a/content/controllers/usb/sotp031201/_index.md +++ b/content/controllers/usb/sotp031201/_index.md @@ -16,7 +16,7 @@ Internally, it is a HID device with a vendor-specific class. The reported data d | **Product ID** | 0x0101
0x77A7 (P5/B5)
0x0004 (P5/B8) | | **Serial number** | *None* | | **USB standard descriptor** | [P4/B7](/controllers/usb/descriptors/sotp031201-P4B7_standard-descriptor.txt)
[P4/B7 (without B1)](/controllers/usb/descriptors/sotp031201-P4B1B7_standard-descriptor.txt)
[P5/B5](/controllers/usb/descriptors/sotp031201-P5B5_standard-descriptor.txt)
[P5/B7](/controllers/usb/descriptors/sotp031201-P5B7_standard-descriptor.txt)
[P5/B8](/controllers/usb/descriptors/sotp031201-P5B8_standard-descriptor.txt)
[P13/B7](/controllers/usb/descriptors/sotp031201-P13B7_standard-descriptor.txt) | -| **HID report descriptor** | Not provided | +| **HID report descriptor** | [P4/B7, P4/B2-B7, P5/B7, P13/B7](/controllers/usb/descriptors/sotp031201_hid-report-descriptor.txt) (recreated, not provided by actual device) | ### P5/B5 cartridge diff --git a/data/controllers.yml b/data/controllers.yml index dbad44a..1dcbcfb 100644 --- a/data/controllers.yml +++ b/data/controllers.yml @@ -48,6 +48,7 @@ pnp: pnp2: name: "Densha de GO! Plug and Play 2" date: 2023-12-07 + code: "TPP-D-002" ref: "/controllers/standalone/pnp2" sotp031201: @@ -56,7 +57,7 @@ sotp031201: code: "SOTP-031201" image: "sotp031201.jpg" ref: "/controllers/usb/sotp031201" - notes: "Released with 4 cassettes: P4-B7, P4-B7 (without B1), P5-B5 and P5-B8. Additional cassettes sold separately: P5-B7 and P13-B7." + notes: "Released with 4 cartridges: P4-B7, P4-B7 (without B1), P5-B5 and P5-B8. Additional cartridges sold separately: P5-B7 and P13-B7." slph00051: name: "Two handle controller (Sony PlayStation)"