Jump to content

NVidia Video Driver Shutdown Fix


rloew

Recommended Posts

The last Windows 9x official NVidia Video Driver Version 81.98 and the unofficial Version 82.69 both hang during Shutdown when used with 6xxx or 7xxx Video Cards.

I have analyzed the problem and it appears that one of a couple of System Broadcast Message Call never returns. I have developed a Patch to bypass these Messages.

This Patch is for Windows 98SE and Windows ME. It has not been tested with Windows 98FE or Windows 95.

Since this Patch only affects Shutdown Functions, it should not have any affect on normal operations. Boot to DOS seemed unaffected on the one machine I tested.

I have not tested Suspend or Hibernate as my test machine didn't support it before. I have not tested 82.16 or 82.69, but other people have.

The Patch is applied to the WINDOWS\SYSTEM\NVCORE.VXD File as follows:

Version 81.98: (Revised 07/29)

144: 24 -> 3B

31F35E: 9E 55 E5 FF -> C2 05 00 00

31F924: 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 -> 3C 04 74 08 3C 25 74 04 3C 32 75 02 B0 52 89 44 24 04 E9 C5 4F E5 FF

Version 82.16: (Revised 07/29)

144: AC -> C3

31F6E6: E6 54 E5 FF -> C2 05 00 00

31FCAC: 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 -> 3C 04 74 08 3C 25 74 04 3C 32 75 02 B0 52 89 44 24 04 E9 0D 4F E5 FF

Version 82.69: (Revised 07/29)

144: C8 -> DF

329802: DA A7 E4 FF -> C2 05 00 00

329DC8: 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 -> 3C 04 74 08 3C 25 74 04 3C 32 75 02 B0 52 89 44 24 04 E9 01 A2 E4 FF

Revised 07/29/15 to include third System Message for Windows ME

Edited by rloew
Link to comment
Share on other sites


Great news, thank you! I've patched the only machine I have that uses 82.69, over the network, live, without a hiccup. Nothing blew up on a reboot. :D Unfortunately I have no series 6/7 nVidia card to test the effectiveness of the patch but at least it doesn't bother the GeForce2 MX440. :)

Link to comment
Share on other sites

Is it necessary to patch the file in the driver and after that I have to install the driver with the patched file? Or is it needed to patch NVCORE.VXD in the system folder only? My first attempt to patch the system file failed. First test machine: NV 7800GT PCIE  NV 7900GS PCIE, driver 82.69. It still hang during shutdown.

I will try it on another machine soon. Last question: Could you write a patch for driver 82.16, too? Thanks

Edited by schwups
Link to comment
Share on other sites

Could you write a patch for driver 82.16, too? Thanks

Can you upload that version somewhere if you have it? I have been looking for it but all of BFG's old links are dead and not saved on the Wayback Machine, and rloew may not have it to examine. Thanks!

Edited by LoneCrusader
Link to comment
Share on other sites

Here it is nvcore.vxd 4.14.10.8216: link (hope it works, CloudMe had some issues lately)

I don't have it. Your link isn't working, everything is ghosted out.

I'm interested in the entire package, not just NVCORE. You can E-Mail up to 25MB per message to my Hotmail Address.

Link to comment
Share on other sites

Is it necessary to patch the file in the driver and after that I have to install the driver with the patched file? Or is it needed to patch NVCORE.VXD in the system folder only? My first attempt to patch the system file failed. First test machine: NV 7800GT PCIE. It still hang during shutdown.

I will try it on another machine soon. Last question: Could you write a patch for driver 82.16, too? Thanks

It shouldn't matter as long as the Patch ends up in WINDOWS\SYSTEM\NVCORE.VXD.

If it is not working, try changing the second and third bytes of the long Patch from 32 75 to 24 72. If this works let me know.

Link to comment
Share on other sites

 

I don't have it. Your link isn't working, everything is ghosted out.

 

I'm interested in the entire package, not just NVCORE. You can E-Mail up to 25MB per message to my Hotmail Address.

 

There are inconsistencies between http and https with their site. I have HTTPS Everywhere in Firefox which forces secure connections where possible and I see a https connection, but if initiated as https, a connection to CloudMe will fail. It has to be initiated as http. I've modified the link above accordingly, hopefully it'll work now. If not, try clearing file name from the link (final slash included).

 

The whole driver package is almost 20MB. I can't even attempt to send it over e-mail earlier than the 20th of the month when my bandwidth gets restored to its full capacity. If nobody else provides you with the package until then, I will try either uploading to CloudMe (in case more people need it) or attaching to an e-mail to your Hotmail address.

Link to comment
Share on other sites

 

Is it necessary to patch the file in the driver and after that I have to install the driver with the patched file? Or is it needed to patch NVCORE.VXD in the system folder only? My first attempt to patch the system file failed. First test machine: NV 7800GT PCIE NV 7900GS PCIE, driver 82.69. It still hang during shutdown.

I will try it on another machine soon. Last question: Could you write a patch for driver 82.16, too? Thanks

It shouldn't matter as long as the Patch ends up in WINDOWS\SYSTEM\NVCORE.VXD.

If it is not working, try changing the second and third bytes of the long Patch from 32 75 to 24 72. If this works let me know.

 

Yes, I tried "24 72", but without success. The power supply doesn't shutdown and the cursor remains.

It seems, that there is no scandisk on next boot (no FS error) with "32 75" or "24 72". I'll check this once more.

 

I also modified nvcore.vxd of the driver 82.16 according to your specifications on a second machine (NV 7800GT), but again without success. I got an protection error on start. I'll check this once more.

 

I used the HEX-Editor MX.  

 

Is it possible, that in this case is a difference between ME and 98SE? Loblo, does the patch work for you?

Link to comment
Share on other sites

@ schwups: There may be a calculation error in the relative jump for 82.16 (if my logic is correct :blushing: ). Please try to replace the values in red below:

 

31FCAC: 3C 32 75 02 B0 52 89 44 24 04 E9 45 4E E5 FF

to

31FCAC: 3C 32 75 02 B0 52 89 44 24 04 E9 15 4F E5 FF

 

For what it's worth I've used the XVI32 editor, simple and handy (click left pane, type hex values, click 'Save').

Link to comment
Share on other sites

Create an account or sign in to comment

You need to be a member in order to leave a comment

Create an account

Sign up for a new account in our community. It's easy!

Register a new account

Sign in

Already have an account? Sign in here.

Sign In Now
  • Recently Browsing   0 members

    • No registered users viewing this page.
×
×
  • Create New...