Skip to content

USBD rewrite (b1f7ff96) breaks Crash Bandicoot: Wrath of Cortex over USB in OPL #908

Description

@horizonends

Summary

After the 2024-09-04 USBD feature update (b1f7ff96), Open PS2 Loader builds that embed the current usbd_mini / usbmass_bd IRX fail to run Crash Bandicoot: The Wrath of Cortex from USB on real hardware.

Rebuilding the same modern OPL with USB IRX from immediately before that rewrite (2dc6b32f) restores normal behaviour.

This looks like a ps2sdk USBD (and/or usbmass_bd pairing) regression, not an OPL game-code bug.

Symptoms (hardware)

On broken (post-rewrite) USB stack:

  • Load to game menu can take up to ~5 minutes (good case is ~10 seconds)
  • Starting play then goes to a black screen

On pre-rewrite USB stack (same OPL otherwise):

  • ~10s to menu, playable

Reproduction

  • Consoles: PAL slim PS2s (SCPH-70003 / 75003 / 77003)
  • Device: USB ISO
  • Games: NTSC SLUS_202.38 and PAL SLES_503.86 (both fail the same way)
  • Host loader: Open PS2 Loader (embeds SDK IRX at build time)

OPL stock bisect (same USB/ISOs):

  • Last good OPL Beta build era: Beta-2125
  • First bad: Beta-2127
  • That window lines up with OPL builds that baked in post-rewrite USBD

Confirmed isolation

Build Result
Modern OPL + current SDK usbd_mini / usbmass_bd Broken (slow load → black screen)
Modern OPL (Beta-2245 tree) + USB IRX from ps2sdk @2dc6b32f (pre-b1f7ff96) Works (~10s, playable)
Stock OPL Beta-2245 Broken

So only swapping the embedded USB IRX back to pre-rewrite fixes it.

Suspected commit

  • Introduced: b1f7ff96USBD feature update (2024-09-04)
    (“usbd 1.2 API now exposed, module unloading, isochronous scheduling”)
  • Last known-good tree for this use case: 2dc6b32f (parent side / immediately before that update)

Related follow-ups in the same era (imports etc.) may also matter; happy to help narrow further if useful.

Related reports

Notes

  • Temporary OPL-side workaround (vendor/pin pre-rewrite IRX) is confirmed on hardware for upstream OPL, but maintainers correctly prefer a real fix here rather than permanently shipping 2024 USB binaries.
  • I can provide the pre/post IRX hashes / sizes and help test SDK patches on hardware if needed.

Request

Please investigate USBD (and usbmass_bd if involved) behaviour changes since b1f7ff96 that could cause severe USB read slowdown / failure for this game’s access pattern under OPL’s BDM USB path.

Metadata

Metadata

Assignees

No one assigned

    Labels

    No labels
    No labels

    Type

    No type

    Projects

    No projects

    Milestone

    No milestone

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions