Jump to content
Strawberry Orange Banana Lime Leaf Slate Sky Blueberry Grape Watermelon Chocolate Marble
Strawberry Orange Banana Lime Leaf Slate Sky Blueberry Grape Watermelon Chocolate Marble

MSFN is made available via donations, subscriptions and advertising revenue. The use of ad-blocking software hurts the site. Please disable ad-blocking software or set an exception for MSFN. Alternatively, register and become a site sponsor/subscriber and ads will be disabled automatically. 


Sign in to follow this  
NoNameNeeded

BSOD 0E 0137:BFF9A3C0

Recommended Posts

I'm getting this BSOD quite frequently when I try to either open or close Foxit Reader 2.1 on Windows 95.

It's a modified version of Foxit Reader, normally it wouldn't run on Win95.

Now, of course it's no big surprise that an application that wasn't even meant to run on an operating system might cause one or the other problem  but nevertheless I thought it can't hurt to ask if anyone happens to know what could cause this specific BSOD error.

I couldn't find anything really useful, it just seems to be a very general error with no real solution.

At times, I also get other errors referring to gdi.exe but I can't say if the bsod is in any way related to the gdi problems.

Share this post


Link to post
Share on other sites

Load Kernel32.dll in Dependency Walker and check the exports report to see what function BFF9A3C0 might be in.

Share this post


Link to post
Share on other sites

Which number should I be looking at?
I can see "ordinal" and "entry point" numbers, none of which come even close to the number of the BSOD.

Edited by NoNameNeeded

Share this post


Link to post
Share on other sites

Looking for the routine causing a crash by examining the Export Addresses may not be particularly effective, especially for KERNEL32.DLL.
KERNEL32.DLL APIs often consist of a small piece of validation code followed by a jump or call to the main routine elsewhere.

Share this post


Link to post
Share on other sites
23 hours ago, NoNameNeeded said:

I'm getting this BSOD quite frequently when I try to either open or close Foxit Reader 2.1 on Windows 95.

It's a modified version of Foxit Reader, normally it wouldn't run on Win95.

Yo getting this BSOD because app is not properly modified.

Here is what you should do:

1. Redirect GetLongPathNameA To GetShortPathNameA and save changes.

2. Redirect TrackMouseEvent (USER32.DLL) To _TrackMouseEvent (COMCTL32.DLL) and save changes.

3. Now open the app in HEX editor and rename GetLongPathNameA to LocalCompact.

4. rename TrackMouseEvent to PaintDesktop and save changes.

Edited by ABCDEFG

Share this post


Link to post
Share on other sites

How do you know how I modified it?
;)
But you're right that I did not redirect GetLongPathnameA to GetShortPathNameA.

I've done that now and then I renamed the function to LocalCompact in a Hex Editor.

I couldn't rename TrackMouseEvent to PaintDesktop because there is no such function in Win95, so I left it as it is, I think originally I renamed it to GetKeyboardType or something, I don't really remember.

The way I modified it before was that I renamed the function GetLongPathNameA to GetFullPathNameA.

Could that cause problems?

Update; Just tried the new application, the exact BSOD appeared when I closed it, so that doesn't seem to fix the problem.

It think it seems to be related to gdi.exe

Update 2: Now I am no longer able to open a pdf file.

It only throws an empty error message when i try to open a pdf file from within Foxit Reader or an error message referring to the application's name when I double click on a pdf file.

Maybe it's because I've renamed the GetLongFilePathA function to LocalCompact?

Edited by NoNameNeeded

Share this post


Link to post
Share on other sites

Update 3: Ok, now I tried it with an original unmodified file. The last problem I mentioned in Update 2 is sorted out now (it was probably due to my additional modifications)

Now I need to open and close it for a while and see if the BSOD returns.

Update 4: I got an error about low system resources and after that the ominous BSOD returned.

Edited by NoNameNeeded

Share this post


Link to post
Share on other sites
15 hours ago, jumper said:

Load Kernel32.dll in Dependency Walker and check the exports report to see what function BFF9A3C0 might be in.
 

Ok, in Dependency Walker the addresses are shown in a different format so I couldn't find anything.

But I did find something with another program, it's not exactly the same address but it's at least similar (BFF9A352)

The function is in kernel32.dll and it's called IsBadStringPtrW

Edited by NoNameNeeded

Share this post


Link to post
Share on other sites

Win95 do not tolerate the bad code, so don't search for errors on system's side.

I noticed that when i move mouse over toolbar it causes that application redraw everything, it's a sign that there is some bad code in.

Share this post


Link to post
Share on other sites

Yes, but even with the redirections you suggested, these random BSODs still occur.

So, that can't be the solution.

I'm afraid there just is no solution. It's just that this application wasn't made for Win95, that's the bottom line.

But it was worth a try.

P.S: I also opened the file in CFF explorer and kicked out msimg32.dll

After all, Win95 doesn't come with msimg32.dll (which is related to gdi.exe) and the application uses only two functions so I just removed it to see if the BSODs vanish. They didn't. But again, it was worth a try.

Edited by NoNameNeeded

Share this post


Link to post
Share on other sites

Sometimes, when a BSOD occurs and I hit enter several times I get to see an interesting picture.

This time, it looks like a giant M..:)

To me, it seems like this has something to do with either gdi or the graphics card (or both).

I've already updated the driver but what's interesting is that these BSOD occur both on a virtual machine running Win95 and also on a Pentium 1 laptop so even though the graphics card and its driver differ a lot, the BSOD is still the same.

ScreenShot 522.jpg

Share this post


Link to post
Share on other sites

Oh and one more thing.

In CFF Explorer I found something that's called "Native Win9x driver"

I just applied this setting to my application and even though the BSOD did show up once, I was still able to get back to a (somewhat screwed) Windows and restart the computer which is already a bit better than having to reset the machine.

Share this post


Link to post
Share on other sites

I've changed these settings to new values now.

I don't know what they do, all I noticed was that if I set them to high the app won't start because it doesn't have enough RAM, but now it works and doesn't use more RAM then before.

I can't say it's perfect because I've encountered a BSOD again but only once even though I opened and closed the app at least 20 times in a row.

So I don't know what these settings do but they seem to mitigate the problem.

ScreenShot 526.jpg

Share this post


Link to post
Share on other sites

Join the conversation

You can post now and register later. If you have an account, sign in now to post with your account.

Guest
Reply to this topic...

×   Pasted as rich text.   Restore formatting

  Only 75 emoji are allowed.

×   Your link has been automatically embedded.   Display as a link instead

×   Your previous content has been restored.   Clear editor

×   You cannot paste images directly. Upload or insert images from URL.

Sign in to follow this  

  • Recently Browsing   0 members

    No registered users viewing this page.

×
×
  • Create New...