Tag Archives: bsod

I ran into a persistent STOP error message that would always be in RTL8185.SYS on a client’s computer today.  He had a TrendNet TEW-421PC (the PCMCIA variant of the TEW-423PI PCI card) based on a Realtek RTL8185 chip.  He uses an older Dell Inspiron 2600 laptop, and you couldn’t remove the card or browse for too long without a crash.  Even updating the drivers with the card inserted would crash the system.

TrendNet’s “latest drivers” are old as dirt for this chip, and it turned out the solution was only a little bit further away: hit up realtek.com and search for RTL8185!  Downloading the latest drivers straight from Realtek and installing them solves the problem quite nicely.

But how do we update drivers when the card isn’t inserted to avoid the imminent crash?  There are a few ways to do it.  The least complicated way is to delete the file RTL8185.SYS from the “drivers” folder under the “system32″ folder (the majority of systems store this at “C:\WINDOWS\System32\drivers” and insert the card.  The driver doesn’t load until the card is inserted, so deleting it before inserting the card will allow you to change out the driver without the crash.

For more advanced users, adding DEVMGR_SHOW_NONPRESENT_DEVICES = 1 to the system-wide environment variables under the System control panel, then starting Device Manager and going to View -> Show Hidden Devices will let you manipulate hardware that’s not plugged in, but the deletion is easier for most people.

If you need help with this process, leave a comment and I’ll get back to you.

Remember our post about receiving a STOP 0×0000007E error after moving to an AMD processor from an Intel one?  It turns out that the plot has thickened a bit more, and Windows XP SP3 can sometimes cause the same problem–and do so for the exact same reason: intelppm.sys!  We’ve also figured out new ways to fix the problem that are easier than in our original post, which we’ll divulge now.

Boot from your Windows XP CD and hit “R” at the “Welcome to Setup” screen to reach a recovery console, then log into the Windows installation in question, as in the instructions from the previous article.  The next step, once you get to a command prompt (i.e. “C:\WINDOWS>”) is far more simple, elegant, and easily understood!  Type this command, without quotes:

“disable intelppm”

Type “exit” after that and it’s all done and over with.  Sometimes us techies get so used to doing things the hard way that we forget the simpler solutions.  If you’re prepping a system for a change away from an Intel processor platform and want to avoid this problem, go to Start > Run… and type in the following command to pre-emptively disable intelppm.sys from loading:

“sc config intelppm start=disabled”

Sometimes the STOP error is accompanied by the text SYSTEM_THREAD_EXCEPTION_NOT_HANDLED as well, though I’ve never personally seen that, it’s technically what that STOP number means.  In general, it’s a waste of time to screw around with Microsoft’s update that handles the problem, because intelppm.sys shouldn’t be there at all anyway for AMD platforms; it’s the Intel CPU microcode update driver that sends new downloadable microcode into the processor, usually to fix errata (bugs) or to improve performance, and it is only logical that Intel’s microcode update software would make an AMD processor freak out and throw a wacky exception.  The problem is that apparently Intel’s driver doesn’t check to ensure that the CPU in use is actually an Intel chip, which is either bad programming at Intel or intentionally done to make it look like AMD makes really glitchy chips.  Either way, Intel is wholly to blame for the issue and could have avoided the problem with a very simple check that would have taken all of 30 minutes to code!

Be aware that other programs frequently cause STOP 0×0000007e errors as well, primarily security software.  I’ve seen reports that ZoneAlarm getting damaged has caused this before, and the Zone Labs engine is used in some other security software we’ve come across, such as the CA Internet Security suite.  (ZoneAlarm sucks, so you shouldn’t be running it anyway.)  What I’ve written here ONLY applies to systems with a non-Intel processor trying to execute a driver that is hostile towards non-Intel CPUs.

[EDIT: We've got a more easily understood and elegant solution to this problem that only requires an XP CD.  See our update post on the subject.]

If you get a STOP 0×0000007E error after upgrading to an AMD platform from an Intel platform, i.e. replacing an Intel-chipset motherboard with something like a VIA or AMD or nForce or ATI chipset for an Athlon64, here’s a little hint that’ll help you avoid a complete reinstall from scratch:

It’s the “intelppm.sys” driver.

Pop in an XP CD or a KNOPPIX (or other live Linux distro with read-write NTFS capability) CD, find your %systemroot%\system32\drivers folder, and rename intelppm.sys to something else, such as intelppm.old, and that’s the end of that problem. (%systemroot% is your Windows installation folder.)

We’ve been running into this a lot lately and just recently took the time to figure it out instead of reinstalling completely clean.  Don’t let it bog you down the same way.