# Controller B USB08_8G MBR classification resolution

Date: 2026-07-29
Result: mounted after focused firmware correction
Parent: work/tickets/ticket-investigate-usb-drive-enumeration-and-post-save-workflow-compatibility.md

## Finding

`USB08_8G` completed USB enumeration, storage initialization, 512-byte
representative-sector access, and endpoint discovery. The application still
reported unmounted because FileX returned `FX_BUFFER_ERROR`.

Read-only inspection of the retained sector-zero buffer showed an MBR beginning
`EB 63 90`. The legacy USBX heuristic classified that jump sequence as a FAT
boot sector. FileX consequently decoded bootstrap bytes 11-12 (`90 90`) as a
37,008-byte logical sector instead of following the MBR partition entry.

## Correction and result

The media-mount path now accepts sector zero as a direct FAT VBR only when its
BPB reports a legal 512, 1024, 2048, or 4096-byte sector, or as exFAT when the
exact `EXFAT   ` OEM signature is present. Media-open errors are also
propagated instead of being replaced with success, and application publication
waits for the asynchronous FileX open while retaining storage-instance
validation.

Debug S-record SHA-256:
`3958AC3A56075139B6D0AAB3D4DCB439A581FA1C47F4433835FE801B69B5AC87`

Final Controller B state:

- `usb_mounted=1`
- `media_generation=1`
- `storage_bringup.stage=9`, `mount_status=0`
- `media_handoff.acceptance_mask=15`
- `system_errors=0`
- files: `W00.wav`, `W01.wav`

Evidence directory:
`work/evidence/hpt-log-store-circular-mirror/controller-b/usb-compat-live/20260729-141637-usb08-mbr-fix/`

`USB08_8G` was not reformatted or repaired. `USB06_1G` remains retired by owner
disposition and was not retested.
