jds

Driver compatibility issues for W9X

11 posts in this topic

It was once common practice to write device driver packages to support both W9X and NT. However, without proper testing, you may sometimes encounter issues with W9X compatibility. Here are two examples that I've encountered so far :

1. INF files are limited to just under 64KB with W9X.

I first encountered this issue with a Ralink device driver where, as new OEM's had been added to the relevant INF file, this had grown beyond 64KB in size. Once I realized that was the problem, I removed the sections and models related to a few OEM's (not the one for my piece of hardware, of course), until the size was satisfactory. Then everything installed OK.

2. Section Names are limited to 28 characters with W9X.

I've just encountered this issue with a Connexant driver that refused to install. The W2K DDK says "A section name has a maximum length of 255 bytes on Microsoft Windows 2000. On Windows 98, section names should be no longer than 28 characters. INFs designed to work on both platforms must adhere to the smaller limit." I can confirm that any Section Name exceeding 31 characters will prevent such a driver installing on W98SE.

HTH

Joe.

0

Share this post


Link to post
Share on other sites

2. Section Names are limited to 28 characters with W9X.

I've just encountered this issue with a Connexant driver that refused to install. The W2K DDK says "A section name has a maximum length of 255 bytes on Microsoft Windows 2000. On Windows 98, section names should be no longer than 28 characters. INFs designed to work on both platforms must adhere to the smaller limit." I can confirm that any Section Name exceeding 31 characters will prevent such a driver installing on W98SE.

Good to know :)

Just in order to disambiguate 28 characters plus the square brackets, right?

Like:

[ABCDEFGHIJKLMNOPQRSTUVWXYZ12]

being valid and

[ABCDEFGHIJKLMNOPQRSTUVWXYZ123]

being not.

jaclaz

0

Share this post


Link to post
Share on other sites

Just in order to disambiguate 28 characters plus the square brackets, right?

Like:

[ABCDEFGHIJKLMNOPQRSTUVWXYZ12]

being valid and

[ABCDEFGHIJKLMNOPQRSTUVWXYZ123]

being not.

Yes, that is my understanding (once I managed to find the paragraph in the DDK documentation).

Initially what I found was that "decorated" Section Names for NT (which are correspondingly longer than the "undecorated" ones) were preventing the driver loading in W98SE, when they exceeded 31 characters. The documentation says they should be no more than 28 characters, so I don't know if there are more subtle problems in the 29-31 character range.

Joe.

0

Share this post


Link to post
Share on other sites

I did some brief experimentation on MSW-ME over the weekend, and this seemed able to install drivers whose INF's had Section Names exceeding 31 characters.

However, the WinXP-SP1-DDK had this to say :

General Syntax Rules for INF Files

...

Section Names

...

A section name has a maximum length of 255 bytes on NT-based operating systems. On Windows 98/Me, section names should be no longer than 28 characters. INF files designed to work on both platforms must adhere to the smaller limit.

So, either the symptoms with MSW-ME are more subtle, or else it doesn't have the same limitation on length of Section Names, in which case the above DDK documentation is in error (at least regarding MSW-ME).

Joe.

0

Share this post


Link to post
Share on other sites

jds, can you please tell, which ralink card are you using? I'm trying get to work ralink rt2070, but still no sucess.

0

Share this post


Link to post
Share on other sites

jds, can you please tell, which ralink card are you using? I'm trying get to work ralink rt2070, but still no sucess.

Well, I can sympathize with you.

I couldn't find much information on the RT2070, but have a suspicion it's related to the RT2870 and the RT3070.

What I did find were some clues here : http://wiki.debian.org/rt2870sta

This indicates the D-Link WUA-2340 is an RT2070 product. If you download its driver, you find that the INF file includes support for W9X, yet the package is missing a driver file called 'A5AGU9x.sys'. However, if you download the D-Link DWL-G132 driver, you will find a file with that name in its '98ME' directory. So perhaps you can try this file with the WUA-2340 drivers and perhaps it may work. You will also note that the DWL-G132 driver package also includes support for the WUA-2340 but under a different PID, perhaps this same model number has been used with two different chipset designs. BTW, you may need to persuade the Driver Installation Wizard that you are installing a WUA-2340.

As for my Ralink adaptors, one is the Edimax EW-7108PCg (PCI, based on RT2500), the other is the Edimax EW-7318USg (USB, based on RT73). The latest W9X-capable drivers I could locate for these were :


'IS_AP_STA_6x_D-1.2.3.0_VA-2.1.0.0_2500_D-3.2.0.0_VA-3.2.0.0_RU-2.0.4.0_VA-2.0.4.0_AU-1.2.1.0_VA-1.0.4.0_101707_0.1.0.29.exe'
and
'IS_AP_STA_7x_D-1.3.0.0_VA-3.1.4.0_2500_D-2.1.1.0_VA-3.1.0.0_RU-2.1.1.0_VA-2.1.1.0_AU-2.0.0.0_VA-2.0.0.0_030508_0.1.0.46.exe'.

The latter's 'rt73.inf' file had to be pruned down, to under 64K, before it could install.

Joe.

PS. Confirmation that D-Link model number has been recycled : https://usb-ids.gowdy.us/read/UD/07d1 (Atheros drivers aint gonna work with Ralink silicon!)

Edited by jds
0

Share this post


Link to post
Share on other sites

Yes, RT2070 seems to be similar to RT2870, but without "802.11n" support.

'A5AGU9x.sys' yep, it's Atheros driver, WUA-2340 model number has been recycled.

I'm trying to find oldest ralink driver for RT2870 (found 1.4.1.0), but while it's NDIS5.0 and have "$Chicago$" signature, it doesn't have any W9x entries in inf. :(

Funny enough, I specialy bought adapter without 802.11n in hope it will work with W98 :)

0

Share this post


Link to post
Share on other sites

Driver authors being lazy still exists today. Either they make a "Windows 7" driver using the Vista version (because Windows 7 will install a 6.x driver) or using generic sections instead. Its concerning when I encounter such drivers as I often do not even want to use them. Of course, by "driver authors" I don't speak specifically of companies, as even companies that have nice INFs can also have ambiguous ones too! :(

This is a 32bit mesrle:

[Intel.NTx86.6.0]

Oh but let's be lazy with 64bit

[Intel.NTamd64]

Some things never change.

:rolleyes:

0

Share this post


Link to post
Share on other sites

Oh, one more mistake you may encounter in dual-target drivers that haven't been tested properly on W9X :

Unicode (UTF16) INF files. You'll need to convert them to ASCII or ANSI or whatever (eg. use "Save As" in wordpad and select DOS text).

Joe.

0

Share this post


Link to post
Share on other sites

A while back I almost asked if someone had written a tool to make these checks and do any needed patching--then realized it would be tantamount to volunteering! :unsure:

minf - minimize an INF file :angel

Edited by jumper
0

Share this post


Link to post
Share on other sites

A while back I almost asked if someone had written a tool to make these checks and do any needed patching--then realized it would be tantamount to volunteering! :unsure:

minf - minimize an INF file :angel

Neato! :)

If you manage to succeed with "Create 9x sections from 2k/XP if missing" (from your To Do list), that will be like magic! (Of course, compatibility of binaries could then be a headache.)

Joe.

0

Share this post


Link to post
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.