dencorso's USB FDD DiskTSD.VxD 188.8.131.5200 Patch, that allows NUSB to work with FDDs without a BSOD!
Do you remember this post by Petr? [Petr, where are you??? ]
Just replacing 4.10.2223 by 4.90.3000 does not work, the system won't boot and in the bootlog appears:
[00151BDA] Dynamic load device C:\WINDOWS\system\IOSUBSYS\disktsd.vxd [00151BDA] Dynamic load failed C:\WINDOWS\system\IOSUBSYS\disktsd.vxd : [00151BDA] Not a valid device - possibly corrupt
After installing nusb, inserting the USB Floppy causes blues screen with error in DISKTSD.VXD.
After renaming old and copying new disktsd.vxd I was able to use the USB floppy with no problem.
BTW, in Windows Me everything works fine.
Then I tried to use 98SE2ME, at first the option installing just the USB drivers, second time option 2 - install everything.
In both cases plugging the USB floppy into the PC did not cause the blue screen, but in the device manager appeared yellow exclamation mark and the FDD did not work. The above described procedure with renaming and copying DISKTSD.VXD did not help.
I have shortly looked into the 4.90.3000 code and there are only very few differences in comparison to 4.10.2223 so it is possible that the 4.10.2223 version could be modified to work correctly - but I don't know how. [...]
Well, it set me thinking... My first though was: how so? Win 98SE will not allow one to rename and substitue a file in use! But I tested, and in fact Win 98SE does allow it, at least in this case: it works as Petr described.
The downside of Petr's solution is that if one forgets to exchange back the DiskTSD.VxDs before shutdown, or has a system crash, the system will refuse to boot due to the failed dynamic loading of v. 184.108.40.20600! And it'll be necessary to boot in DOS to do the renaming, before the system is able to boot up normally again. So, a way to have v. 220.127.116.1100 undergo successfully the dynamic load was a must that simply had to be found... ...and here is it:
1) Fetch DiskTSD.VxD v. 18.104.22.16800 from inside your Win ME installation CD (it is in WIN_20.CAB), and extract it to a new folder named, say, PATCH.
2) Rename DiskTSD.VxD to DiskTSD.PAT and extract yet another copy of DiskTSD.VxD from WIN_20.CAB, so that now you have two identical files in the PATCH folder, differing only in the name extension.
3) Open DiskTSD.PAT with your favourite HexEditor and search for the hexadecimal sequence 00005A04, which you should find only two times, in two different places (at offsets 140 and 866).
4) Change, in both places hexadecimal 5A for 0A, and save the file.
5) Now, in a DOS box, set to the PATCH directory, run <fc DiskTSD.VxD DiskTSD.PAT /b> You should see this:
00000142: 5A 0A
00000868: 5A 0A
6) If you saw that, copy DiskTSD.PAT to %windir%\SYSTEM\IOSUBSYS, rename the DiskTSD.VxD found there to DiskTSD.ORI and then rename DiskTSD.PAT to DiskTSD.VxD. As Petr found out, you can do that with windows running.
7) If you are using NUSB24 or earlier, that's all. But if you are using NUSB31, now you must got to %windir%\INF, save a copy of USBSTOR.INF as USBSTOR.ORI, and then open USBSTOR.INF in, say, WordPad and uncomment (delete the leading semicolon) all lines referring USB FDDs (there are 8 such entries: one each for Mitsumi, HP, NEC, SMSC, Sony and TEAC, and two for YEData), and save USBSTOR.INF.
8) It's not mandatory, but at this point a recommend you to reboot your system.
It's done! Enjoy using USB Floppy Drives in Win 98SE!
Of course, the standard disclaimer applies: It works great for me, but YMMV and I can guarantee nothing whatsoever about this patch, and about the use you make of it. By deciding to use it you fully accept that anything you do is of YOUR SOLE RESPONSIBILITY... Also, to use Win ME files you must have a Win ME licence. Moreover, modding files voids the EULA, of course. You have been warned. Hence, if after performing this mod your pc morphs into a purple mushroom and explodes, causing a 10-day worldwide blackout in the process, you know you can't blame me for it!
This post has been edited by dencorso: 27 October 2007 - 12:59 AM