Back to the USB fix.
History...
Yes, because this is my second shot at this problem. You can read about my first try here, actually reading that will help in the understanding of this here.
Very briefly: up until almost a year ago I had thought - as many other people - that the "USB problem" described by ckbone and others had not affected me at all. The USB problem basically means that all USB data transfers out if the IOpener are corrupted. Everything can go in without problems, but whatever comes out is corrupted.
So, a year ago I bought a USB CD-writer. And I learnt immediately that I had the USB problem, me too. All the CDs I wrote were corrupted. It was a very disappointing, frustrating experience...
Since Programmer was developing his "fixusb" in those days, I was waiting for the problem to be solved by others, mostly by Him. For a few months. But no real result came out of the fixusb project, thus I had to get down to the problem myself.
I began working on this problem last August ????????? . Once again, you can read all the details of my work here. Most importantly I established that this was a chipset timing problem by nature, and actually managed to come up with an almost perfect solution. This solution - which involved shortening the PCI latency of the USB controller by software - worked for my purposes almost perfectly. Almost means that I was able to write CDs quite well, getting one corrupted file on one CD out of about 10 CDs written. Not too bad, but unfortunately this solution was extremely sensitive to the speed of the PCI bus, thus could not easily be generalized. And it did not improve the transfer through USB NICs or many other USB devices. Just to give you another hint, my USB CF card reader/writer behaved totally different from my CD burner. There was one setting the CF reader required - having to do with PCI arbitration - , but then it didn't care about PCI frequency, USB PCI latency or hard drive timings or anything else, it worked without a hiccup.
So there I was, I could use my own USB peripherals quite well, but others were unable to make their USB NICs work without software error correction. And nobody ever even dared to think about investing into things like USB floppy or hard drives...
Then, about two months ago, I built a small home LAN. And again, I had the frustrating experience: my USB NIC was unable to transfer more than a few hundred KB without data corruption through my - otherwise OK working - USB port. I sort of expected it, but still didn't like it.
Thus I spent another Sunday afternoon with thinking about what the solution should be, and testing my ideas. And yes, I got it right this time....
Now, if you don't mind, without any further ado I am going to write about the fix itself.
A little bit later....
Georgie