locked
Vista/7 ISA modem and soundblaster compatibility - isapnp.sys RRS feed

  • Question

  • I want to use one PC with Intel 440BX chipset, Pentium III 1.4GHz, 1GB RAM and Geforce 6200 (I think this is meeting the minimum specs - 1GHz, 1GB RAM, DX9 GPU) with Windows 7 (32bit of course). The problem is that my soundcard (SoundBlaster AWE64 Gold PnP) is missing from Win7 Device Manager. It installs and works OK in WinXP, but is not shown (no yellow ! marks, no nothing) in Win7.

    Reading here http://www.microsoft.com/whdc/connect/pci/isa-bus.mspx I see that the default Msisadrv.sys doesn't support ISA PnP cards (or ISA at all?). I have found the isapnp.sys file (that should solve the problem) in the \system32\drivers folder of the fresh installed Win7, but I don't know how to force it to load at startup.

    How should I do this? - some manual way to add this driver to the startup sequence? Or somehow to replace the driver automatically selected by Win7 for the PCI-to-ISA bridge (Msisadrv.sys) with the "fully capable" isapnp.sys? (I assume that I need some .inf file for that, but it should be compatible with the PIIX4E-chip of the i440BX chipset - is such file already included in Win7?)

    I assume, that if isapnp.sys loads at startup (instead of Msisadrv.sys or in addition to it) then the soundcard will appear in device manager (if Win7 doesn't have a built-in driver for it I can try with the WinXP driver).

    I also have a ISA modem (I think it is PnP) that will be installed in this PC, but it isn't yet, so I don't know if it will appear automatically (I assume that it won't).

    Thank you!

    Tuesday, October 19, 2010 9:46 AM

Answers

  • Note the first paragraph at http://www.microsoft.com/whdc/connect/pci/isa-bus.mspx.

    "In future versions of the Windows operating systems, Microsoft plans to discontinue support for the Industry Standard Architecture (ISA) bus. This legacy reduction effort is being introduced with changes to the Windows Vista and Windows Server 2008 operating systems. Microsoft expects to fully remove this support with the next major release of a future version of the Windows operating system. Microsoft has not identified any customer dependency on this support."

    The "next major release" is Windows 7.

    • Marked as answer by Vivian Xing Wednesday, November 3, 2010 2:31 AM
    Tuesday, October 19, 2010 1:21 PM
  • Forget about it.

    Windows 7 drivers need to be at least vista specific in 99% of cases. I'm sure it's fun to try, and no harm done.

    The only possible exception are ethernet network drivers, which follow the ndis standard.

    Good luck, and have fun

    This is the google cache about windows vista isa pnp capabilities (but it seems you already have it)

    This is Google's cache of http://www.microsoft.com/whdc/connect/pci/isa-bus.mspx. It is a snapshot of the page as it appeared on 23 Oct 2010 17:40:19 GMT. The current page could have changed in the meantime. Learn more

    These search terms are highlighted: removing support industry standard architecture isa bus  
    * * Looking for drivers or help with your PC?

    Removing Support for Industry Standard Architecture (ISA) Bus

    Updated: March 15, 2007

    In future versions of the Windows operating systems, Microsoft plans to discontinue support for the Industry Standard Architecture (ISA) bus. This legacy reduction effort is being introduced with changes to the Windows Vista and Windows Server 2008 operating systems. Microsoft expects to fully remove this support with the next major release of a future version of the Windows operating system. Microsoft has not identified any customer dependency on this support.

    Questions or feedback about this paper may be provided to pciesup@microsoft.com.

    Background

    Windows operating systems provide support for ISA hardware enumeration and resource allocation via the ISA Plug and Play (ISAPnP) protocol. Starting in the early 1990s, the PCI Local Bus architecture began to replace ISA. PCI Express is now becoming the new bus standard that offers faster performance and a more robust implementation than conventional PCI. Because of the rapid adoption of PCI, the need for ISAPnP support in Windows operating systems continues to decline.

    ISAPnP Support in Windows Operating Systems

    Currently, ISAPnP capability is supported in the following Microsoft Windows operating systems:

    Windows 2000

    Windows XP

    Windows Server 2003

    Windows Vista (not enabled by default)

    Windows Server 2008 (not enabled by default)

    Windows XP and Windows Server 2003 provide ISAPnP support by using the isapnp.sys driver.

    Changes in Windows Vista and Windows Server 2008

    Windows Vista and Windows Server 2008 continue to provide isapnp.sys, but this driver is not loaded by default. As a first step toward completely removing legacy ISAPnP support, Windows Vista and Windows Server 2008 moved reduced support for ISA devices into the driver msisadrv.sys. This driver preserves only minimal functionality and does not provide ISAPnP enumeration and resource assignment support. Msisadrv.sys contains routines to manage an ISA bridge, such as exporting an interrupt translator interface from the HAL, and is required to support legacy devices still prevalent in the platform, such as PS/2 input devices. Windows Vista and Windows Server 2008 will load msisadrv.sys on a PCI-to-ISA bridge device by default. For legacy devices where the platform firmware provides hardware enumeration and resource assignment support, msisadrv.sys will provide the necessary support and these devices will work without issue.

    Enabling ISAPnP Support in Windows Vista and Windows Server 2008

    If legacy ISAPnP enumeration and resource allocation support is still required, a custom .inf file is required to cause isapnp.sys to be loaded on the system's PCI-to-ISA bridge device. A device requiring this ISAPnP support should place a reference in its .inf file, as illustrated in the sample below.

    Sample .inf File

    [Version]
    Signature="$WINDOWS NT$"
    Class=System
    ClassGuid={4D36E97D-E325-11CE-BFC1-08002BE10318}
    Provider=%MANUFACTURER%
    CatalogFile=manufacturer.cat
    DriverVer=xx/xx/xxxx,y.y.y.yyyy
    
    [ControlFlags]
    ExcludeFromSelect=*
    
    [Manufacturer]
    %MANUFACTURER%=MANUFACTURER_SYS
    
    [MANUFACTURER_SYS]
    %PCI\VEN_XXXX&DEV_YYYY.DeviceDesc% = ISAPNP_DRV, PCI\VEN_XXXX&DEV_YYYY
    
    [sourcedisksnames]
    
    [sourcedisksfiles]
    
    [ISAPNP_DRV]
    Include=machine.inf
    Needs=LEGACY_ISAPNP_DRV
    
    [ISAPNP_DRV.Services]
    Include=machine.inf
    Needs=LEGACY_ISAPNP_DRV.Services
    
    [Strings]
    MANUFACTURER="Manufacturer"
    PCI\VEN_XXXX&DEV_YYYY.DeviceDesc ="Manufacturer Device Description String"
    
    		

    <form id="aspnetForm" action="/whdc/connect/pci/isa-bus.mspx" enctype="application/x-www-form-urlencoded" method="post">
    <input id="__VIEWSTATE" name="__VIEWSTATE" type="hidden" value="/wEPDwUBMA9kFgJmD2QWAgIDD2QWAmYPZBYCAgUPZBYCAgEPZBYCAgMPZBYCZg9kFgQCAw9kFgoCAQ8PFgIeBFRleHQFMkhvdyB3b3VsZCB5b3UgcmF0ZSB0aGUgdXNlZnVsbmVzcyBvZiB0aGlzIGNvbnRlbnQ/ZGQCAw8PFgIfAAUEUG9vcmRkAgUPEGRkFgBkAgcPDxYCHwAFC091dHN0YW5kaW5nZGQCCQ8PFgIfAAUGU3VibWl0ZGQCBA9kFgICAQ8PFgIfAAUhVGhhbmsgeW91IGZvciByYXRpbmcgdGhpcyBjb250ZW50ZGRks2iBmKNCf7uXnDlMYe2+hUknWdc=" />
    How would you rate the usefulness of this content?
    Poor <input id="ctl05_rblRating_0" onclick="javascript:setTimeout('__doPostBack(\'ctl05$rblRating$0\',\'\')', 0)" name="ctl05$rblRating" type="radio" value="1" /><label for="ctl05_rblRating_0">1</label><input id="ctl05_rblRating_1" onclick="javascript:setTimeout('__doPostBack(\'ctl05$rblRating$1\',\'\')', 0)" name="ctl05$rblRating" type="radio" value="2" /><label for="ctl05_rblRating_1">2</label><input id="ctl05_rblRating_2" onclick="javascript:setTimeout('__doPostBack(\'ctl05$rblRating$2\',\'\')', 0)" name="ctl05$rblRating" type="radio" value="3" /><label for="ctl05_rblRating_2">3</label><input id="ctl05_rblRating_3" onclick="javascript:setTimeout('__doPostBack(\'ctl05$rblRating$3\',\'\')', 0)" name="ctl05$rblRating" type="radio" value="4" /><label for="ctl05_rblRating_3">4</label><input id="ctl05_rblRating_4" onclick="javascript:setTimeout('__doPostBack(\'ctl05$rblRating$4\',\'\')', 0)" name="ctl05$rblRating" type="radio" value="5" /><label for="ctl05_rblRating_4">5</label> Outstanding <input id="ctl05_btnSubmit" class="mnprcSubmit" disabled="disabled" name="ctl05$btnSubmit" type="submit" value="Submit" />
    <input id="__EVENTVALIDATION" name="__EVENTVALIDATION" type="hidden" value="/wEWCAL7noe1CgKY/aPICAKZ/aPICAKa/aPICAKb/aPICAKc/aPICAKXkommBALZ69ydC2TjWEvGepOVPCG/lImpGV03SG7l" />
    </form>
    • Marked as answer by Vivian Xing Wednesday, November 3, 2010 2:31 AM
    Saturday, October 30, 2010 8:30 PM

All replies

  • See http://support.creative.com/kb/showarticle.aspx?sid=61105.

    There is not, and never will be, a Windows 7 driver for the AWE64 sound card.

    Tuesday, October 19, 2010 11:40 AM
  • I know that Creative doesn't supply Win7 driver - if they did their .inf file would activate isapnp.sys as per the Microsoft example I provided. I ask how to activate isapnp.sys (or any other .sys driver for that matter) under Windows Vista/7 (maybe the procedure is the same for WinXP too, but I don't know it either). I want to reach at least the state where there will be an "unknown device" in device manager. As I said I have another ISA PnP card - and this will apply to any other such cards too.
    Tuesday, October 19, 2010 12:35 PM
  • The article is written in 2007, that's why it refers only to Vista/Server 2008. The "next major release" thing is vague - it can mean Windows 7 (that has version 6.1 - after Vista that has 6.0) or "version 7.0" (not released as of 2010) or something else.

    The fact is that I found the isapnp.sys file in Win7 drivers folder (and reference to it in the machine.inf file of Win7). And so I assume that there is no difference between Vista and Win7 in this fundamental part of the system (chipset drivers). Otherwise Microsoft would have announced "Complete removal of ISAPnP support" in some "list of changes/removed features in Win7" document.

    Anyway, I'm OK with using Vista - if this works only there - but I still don't know how to apply it.

    Currently, my Win7 installation uses "Intel ... PCI-to-ISA bridge (ISA mode)" from machine.inf - and thus installs the reduced-functionality Msisadrv.sys. I decided to us "update driver" function in Device Manager to "update" the driver of the PCI-to-ISA bridge to one that loads the full-functionality isapnp.sys. There are two other "similar" devices - "generic PCI-to-ISA bridge" (recognized as compatible with my hardware) and "Intel ... PCI-to-ISA bridge (EIO mode)" (not recognized as compatible - what is this EIO mode?). I haven't tried those yet - instead I tried to modify the machine.inf manually so that it adds isapnp.sys for the "Intel ... (ISA mode)" (my hardware).

    The machine.inf file has similar sections and lines as the "custom.inf sample" given in the link. In fact the only missing (there are many additional) lines are Include=machine.inf (I assume that this is not needed in machine.inf itself?), Needs=LEGACY_ISAPNP_DRV and Needs=LEGACY_ISAPNP_DRV.Services. Also, it has sections [LEGACY_ISAPNP_DRV] and [LEGACY_ISAPNP_DRV.Services] that themselves refer to isapnp.sys. I added the two "needs=" lines, but when I select "update driver" and then point to the modified machine.inf after some time I get message like "not successful - file not found" - can I debug this somehow (a log file somewhere?) to see what file is searched where (I assume the file is isapnp.sys and I need to know the location so that I can put it there)? Also, I don't know if I should replace msisadrv.sys references with isapnp.sys references or I should only add the isapnp.sys references and simultaneously keep msisadrv.sys references.

    I don't know the driver loading procedures and .inf syntax, so maybe I'm making some simple mistake here.

    Wednesday, October 20, 2010 6:48 AM
  • Forget about it.

    Windows 7 drivers need to be at least vista specific in 99% of cases. I'm sure it's fun to try, and no harm done.

    The only possible exception are ethernet network drivers, which follow the ndis standard.

    Good luck, and have fun

    This is the google cache about windows vista isa pnp capabilities (but it seems you already have it)

    This is Google's cache of http://www.microsoft.com/whdc/connect/pci/isa-bus.mspx. It is a snapshot of the page as it appeared on 23 Oct 2010 17:40:19 GMT. The current page could have changed in the meantime. Learn more

    These search terms are highlighted: removing support industry standard architecture isa bus  
    * * Looking for drivers or help with your PC?

    Removing Support for Industry Standard Architecture (ISA) Bus

    Updated: March 15, 2007

    In future versions of the Windows operating systems, Microsoft plans to discontinue support for the Industry Standard Architecture (ISA) bus. This legacy reduction effort is being introduced with changes to the Windows Vista and Windows Server 2008 operating systems. Microsoft expects to fully remove this support with the next major release of a future version of the Windows operating system. Microsoft has not identified any customer dependency on this support.

    Questions or feedback about this paper may be provided to pciesup@microsoft.com.

    Background

    Windows operating systems provide support for ISA hardware enumeration and resource allocation via the ISA Plug and Play (ISAPnP) protocol. Starting in the early 1990s, the PCI Local Bus architecture began to replace ISA. PCI Express is now becoming the new bus standard that offers faster performance and a more robust implementation than conventional PCI. Because of the rapid adoption of PCI, the need for ISAPnP support in Windows operating systems continues to decline.

    ISAPnP Support in Windows Operating Systems

    Currently, ISAPnP capability is supported in the following Microsoft Windows operating systems:

    Windows 2000

    Windows XP

    Windows Server 2003

    Windows Vista (not enabled by default)

    Windows Server 2008 (not enabled by default)

    Windows XP and Windows Server 2003 provide ISAPnP support by using the isapnp.sys driver.

    Changes in Windows Vista and Windows Server 2008

    Windows Vista and Windows Server 2008 continue to provide isapnp.sys, but this driver is not loaded by default. As a first step toward completely removing legacy ISAPnP support, Windows Vista and Windows Server 2008 moved reduced support for ISA devices into the driver msisadrv.sys. This driver preserves only minimal functionality and does not provide ISAPnP enumeration and resource assignment support. Msisadrv.sys contains routines to manage an ISA bridge, such as exporting an interrupt translator interface from the HAL, and is required to support legacy devices still prevalent in the platform, such as PS/2 input devices. Windows Vista and Windows Server 2008 will load msisadrv.sys on a PCI-to-ISA bridge device by default. For legacy devices where the platform firmware provides hardware enumeration and resource assignment support, msisadrv.sys will provide the necessary support and these devices will work without issue.

    Enabling ISAPnP Support in Windows Vista and Windows Server 2008

    If legacy ISAPnP enumeration and resource allocation support is still required, a custom .inf file is required to cause isapnp.sys to be loaded on the system's PCI-to-ISA bridge device. A device requiring this ISAPnP support should place a reference in its .inf file, as illustrated in the sample below.

    Sample .inf File

    [Version]
    Signature="$WINDOWS NT$"
    Class=System
    ClassGuid={4D36E97D-E325-11CE-BFC1-08002BE10318}
    Provider=%MANUFACTURER%
    CatalogFile=manufacturer.cat
    DriverVer=xx/xx/xxxx,y.y.y.yyyy
    
    [ControlFlags]
    ExcludeFromSelect=*
    
    [Manufacturer]
    %MANUFACTURER%=MANUFACTURER_SYS
    
    [MANUFACTURER_SYS]
    %PCI\VEN_XXXX&DEV_YYYY.DeviceDesc% = ISAPNP_DRV, PCI\VEN_XXXX&DEV_YYYY
    
    [sourcedisksnames]
    
    [sourcedisksfiles]
    
    [ISAPNP_DRV]
    Include=machine.inf
    Needs=LEGACY_ISAPNP_DRV
    
    [ISAPNP_DRV.Services]
    Include=machine.inf
    Needs=LEGACY_ISAPNP_DRV.Services
    
    [Strings]
    MANUFACTURER="Manufacturer"
    PCI\VEN_XXXX&DEV_YYYY.DeviceDesc ="Manufacturer Device Description String"
    
    		

    <form id="aspnetForm" action="/whdc/connect/pci/isa-bus.mspx" enctype="application/x-www-form-urlencoded" method="post">
    <input id="__VIEWSTATE" name="__VIEWSTATE" type="hidden" value="/wEPDwUBMA9kFgJmD2QWAgIDD2QWAmYPZBYCAgUPZBYCAgEPZBYCAgMPZBYCZg9kFgQCAw9kFgoCAQ8PFgIeBFRleHQFMkhvdyB3b3VsZCB5b3UgcmF0ZSB0aGUgdXNlZnVsbmVzcyBvZiB0aGlzIGNvbnRlbnQ/ZGQCAw8PFgIfAAUEUG9vcmRkAgUPEGRkFgBkAgcPDxYCHwAFC091dHN0YW5kaW5nZGQCCQ8PFgIfAAUGU3VibWl0ZGQCBA9kFgICAQ8PFgIfAAUhVGhhbmsgeW91IGZvciByYXRpbmcgdGhpcyBjb250ZW50ZGRks2iBmKNCf7uXnDlMYe2+hUknWdc=" />
    How would you rate the usefulness of this content?
    Poor <input id="ctl05_rblRating_0" onclick="javascript:setTimeout('__doPostBack(\'ctl05$rblRating$0\',\'\')', 0)" name="ctl05$rblRating" type="radio" value="1" /><label for="ctl05_rblRating_0">1</label><input id="ctl05_rblRating_1" onclick="javascript:setTimeout('__doPostBack(\'ctl05$rblRating$1\',\'\')', 0)" name="ctl05$rblRating" type="radio" value="2" /><label for="ctl05_rblRating_1">2</label><input id="ctl05_rblRating_2" onclick="javascript:setTimeout('__doPostBack(\'ctl05$rblRating$2\',\'\')', 0)" name="ctl05$rblRating" type="radio" value="3" /><label for="ctl05_rblRating_2">3</label><input id="ctl05_rblRating_3" onclick="javascript:setTimeout('__doPostBack(\'ctl05$rblRating$3\',\'\')', 0)" name="ctl05$rblRating" type="radio" value="4" /><label for="ctl05_rblRating_3">4</label><input id="ctl05_rblRating_4" onclick="javascript:setTimeout('__doPostBack(\'ctl05$rblRating$4\',\'\')', 0)" name="ctl05$rblRating" type="radio" value="5" /><label for="ctl05_rblRating_4">5</label> Outstanding <input id="ctl05_btnSubmit" class="mnprcSubmit" disabled="disabled" name="ctl05$btnSubmit" type="submit" value="Submit" />
    <input id="__EVENTVALIDATION" name="__EVENTVALIDATION" type="hidden" value="/wEWCAL7noe1CgKY/aPICAKZ/aPICAKa/aPICAKb/aPICAKc/aPICAKXkommBALZ69ydC2TjWEvGepOVPCG/lImpGV03SG7l" />
    </form>
    • Marked as answer by Vivian Xing Wednesday, November 3, 2010 2:31 AM
    Saturday, October 30, 2010 8:30 PM
  • Hello! Did you ever solve this?  I'm running to the exact same issue and would like any help with the isapnp.sys

    Thanks!

    Friday, June 21, 2013 9:50 PM