06-07-2010,10:19 PM
* One of them is due to some delay required by some USB device or controller (SATA to USB).
* Another one was the support for 512 physical sector size only (and not for 1024/2048/4096).
* And maybe there is another one, related to what you explain with command block wrapper (However the in-game OPL only load the usbd.irx, and does nothing with usbdfshd)
I thought so too - but I don't have time to look at OPL's code to find the bug. It seems as if some USB devices don't like the way OPL handles it - and somehow doesn't respond properly.
These were the same the possibilities I've thought of, except for the 1st point (Which isn't a valid cause of failure for my device).
It 'should' work with these sector size in the latest revisions.
If it was some initalization problems, you should be stucked at OPL USB drive init (that is, in the GUI), and not on a yellow screen after the ingame IOP reset.
OK, since you're here - I think that we should discuss this to fix OPL....
I think that you're right - Even the older OPL builds that used the normal USBHDFSD modules don't work (White screen). Only those that use USBAdvance's USB and CDVDMAN modules work. I've forgotten that.
OPL IOP core was not compatible with 1024, 2048, and 4096 bytes sectors size.
I know that very well since in OPL 0.7, the sector size of 512 is simply hardcoded in the usb IOP core.
The drive I use has 512-byte sectors, and freezes at a white screen for pre-0.6 OPL builds, and I get a yellow screen for all post-v0.5 versions.
All versions of OPL work with the same HDD when it's inserted into another case (Of a different brand).
OPL does intilize the USB device manually (Calls the mass_stor_configureNextDevice() function after calling InitUSB()) right?
I haven't seen the v0.6 source in detail, but I know that you've integrated USBHDFSD into OPL, and have removed all redundant functions (Plus have declared the SCSI command CBW structures as static structures).
That case that doesn't work with OPL works with uLE, and PS2ESDL (Even after customizing it to use a OPL-like system to save memory).
This issue has always been around since OPL v0.41.
Like you don't have time to look into OPL code to check and fix the error, I think Jimmi is quite busy on other topic, and couldn't review PS2ESDL whole code either ... so as you seems to know quite precisely what could be a problem, you could probably explain here with more details what you suspect bad (if not already enough in your previous post) ?
Sorry if I'm vague here, but I'm now busy, and can't leave a very detailed explanation (Plus I didn't study the OPL code in detail, but I know that there is a problem somewhere).
The old version of PS2ESDL on this forum does not have any "useful" code related to this issue.
Last edited by SP193; 06-07-2010 at 11:12 PM.
Unmodified SCPH-77006 with SM 3.6
SCPH-39006 with M-chip modchip, SCPH-10281 NA and refurb Seagate 80GB HDD
SCPH-10000 v1.00 with SCPH-10190 PCMCIA NA and SCPH-20400 HDD unit

PS2ESDL v0.823B
やっほー 汗がひかる♪