• Please review our updated Terms and Rules here

Windows 3.1/PCI

nc_mike

Experienced Member
Joined
Sep 28, 2014
Messages
473
I have a 2.GHz Dell Dimension 8200. It is a dual boot machine (using BootIt Bare Metal) running DOS 7.1/Windows 3.11 on a 2MB partition and Windows XP on a separate partition. Its fun to see Win3.1 apps run at 2.7GHz - Aldus PageMaker, Photoshop 2.5 and many other DOS and Windows 3.x apps. I'd like to get sound working on the Win3.1 side, but the machine has only PCI slots (no ISA). Windows 3.x doesn't have support for PCI, but I'd love to find a sound card that would somehow work under both WinXP and Win3.11. I don't think there are many, if any - this one has been a challenge.

Regards,
Mike
 
Windows 3.1 may not have had native PCI support, but there were a number of PCI devices that had DOS/Windows 3.1 drivers. In these cases, it was up to the driver to provide any required PCI support.

I'm afraid I don't recall specific product names though.

The main problem with PCI sound cards though, I'm not aware of any that provided real-mode sound blaster emulation. Some cards like the Sound Blaster Live PCI series used a DOS emulation layer that required EMM386 to be loaded. At a glance, I don't think those came with Windows 3.1 drivers, but that emulation layer might enable Windows 3.1 to use a generic sound blaster driver.
 
I think several of the early PCI Ensoniq and the soundblaster cards that were derived from them had Win 3.1 drivers.
 
Back in the DOS days I used to very much rely on the old ISA SoundBlaster (i.e. SB 1.0, 2.0. etc.), and it used to be very important not to buy some random sound card that only had Windows drivers but didn't work in most DOS games, but instead buy something actually hardware-compatible with an original SB. It goes without saying that the SoundBlaster also worked in Windows, which then was DOS-based, so good SB-compatibility gave you the best support in Windows 3.1 and DOS.

I don't actually know if there ever was a PCI card whose hardware was sufficiently ISA SB-compatible for it to work without additional software kludges/crutches, or whether that's even technically possible, but I do read that some later SoundBlaster PCI cards offered a TSR that made them sing in DOS (and thus Win 3.1). So maybe something like that could work for you.

Of course, there always was the odd DOS game that only supported sound hardware xyz but not one's own sound card, but that being said, AdLib and SoundBlaster used to give you the widest support – remember, SB hardware compatibility implies AdLib support, because the SB was AdLib hardware-compatible. Windows 3.1 supported AdLib and SB, and games that didn't support either but supported something else other than the PC speaker were in the minority and often little more than vendor demos from competitors.


...

I just did some further research, because I wondered if there ever was some kind of PCI-to-ISA breakout box, or whether such a thing would have been technically possible.

Turns out there were such solutions... kinda... with limitations... lots of caveats... and very expensive:
http://www.accesio.com/?p=/pci/pci-isa.html (also google PCI-to-ISA)

But during that search I also found this:¹ http://www.karbosguide.com/books/pcarchitecture/chapter25.htm#RAID1

At the same time, the bus is compatible with the ISA bus to a certain extent, since PCI devices can react to ISA bus signals, create the same IRQ’s etc. One consequence of this was that Sound Blaster compatible sound cards could be developed, which was very important in the middle of the 1990’s.

This would seem to imply that there were/are actual PCI sound cards that were/are hardware-compatible with ISA SB. However, I don't know which they are, and I don't know if Creative Labs themselves ever made them. (I.e. I don't know if any PCI SoundBlaster brand cards are genuinely ISA SB hardware-compatible. It says here that "SoundBlaster Live" and "SoundBlaster PCI" were not ISA SB hardware-compatible – they relied on the aforementioned TSR, which that post warns didn't work with all DOS extenders.)

Of course, instead of spending a lot of time and money on finding and buying a "Goldilocks" sound card², it might almost or even be easier/cheaper to just purchase a mainboard that still includes ISA slots.


¹ No, Fig. 170 isn't a PCI-to-ISA riser, it's a RAID adapter. It had me fooled at first as well.
² Could this be any guide? Caveat emptor.
 
Back in the DOS days I used to very much rely on the old ISA SoundBlaster (i.e. SB 1.0, 2.0. etc.), and it used to be very important not to buy some random sound card that only had Windows drivers but didn't work in most DOS games, but instead buy something actually hardware-compatible with an original SB. It goes without saying that the SoundBlaster also worked in Windows, which then was DOS-based, so good SB-compatibility gave you the best support in Windows 3.1 and DOS.

I don't actually know if there ever was a PCI card whose hardware was sufficiently ISA SB-compatible for it to work without additional software kludges/crutches, or whether that's even technically possible, but I do read that some later SoundBlaster PCI cards offered a TSR that made them sing in DOS (and thus Win 3.1). So maybe something like that could work for you.

Of course, there always was the odd DOS game that only supported sound hardware xyz but not one's own sound card, but that being said, AdLib and SoundBlaster used to give you the widest support – remember, SB hardware compatibility implies AdLib support, because the SB was AdLib hardware-compatible. Windows 3.1 supported AdLib and SB, and games that didn't support either but supported something else other than the PC speaker were in the minority and often little more than vendor demos from competitors.


...

I just did some further research, because I wondered if there ever was some kind of PCI-to-ISA breakout box, or whether such a thing would have been technically possible.

Turns out there were such solutions... kinda... with limitations... lots of caveats... and very expensive:
http://www.accesio.com/?p=/pci/pci-isa.html (also google PCI-to-ISA)

But during that search I also found this:¹ http://www.karbosguide.com/books/pcarchitecture/chapter25.htm#RAID1



This would seem to imply that there were/are actual PCI sound cards that were/are hardware-compatible with ISA SB. However, I don't know which they are, and I don't know if Creative Labs themselves ever made them. (I.e. I don't know if any PCI SoundBlaster brand cards are genuinely ISA SB hardware-compatible. It says here that "SoundBlaster Live" and "SoundBlaster PCI" were not ISA SB hardware-compatible – they relied on the aforementioned TSR, which that post warns didn't work with all DOS extenders.)

Of course, instead of spending a lot of time and money on finding and buying a "Goldilocks" sound card², it might almost or even be easier/cheaper to just purchase a mainboard that still includes ISA slots.


¹ No, Fig. 170 isn't a PCI-to-ISA riser, it's a RAID adapter. It had me fooled at first as well.
² Could this be any guide? Caveat emptor.

Thanks for all of that. I do have a 500MHz Packard Bell with a mix of PCI and ISA slots - adding an ISA SB to that would likely be the easiest course. I'm somewhat sure that there is some combination of an Ensoniq card with drivers that, given the right steps, could bridge Win3.1 - but I've done a lot of searching, reading and even tried using some of the SW on a SB16/PCI for which the Ensoniq SW for Win31 didn't unpack successfully under Win as it should have - so I thought I'd ask just to see if maybe someone had an easier route. I thought I almost had it working under DOS and did all of the things I thought necessary in the BIOS (assigning/reserving the legacy IRQ etc.) but could never determine/set the port to the required 220h/330h addresses even by moving the SB16 around to various PCI slots. It seems like its prob not worth the hassle alike you suggest - just punt to the PCI/ISA system for anything that requires sound with Win 3.11.

Regards,
Mike
 
There is a PC speaker sound driver for Windows 3.1. It's not ideal but it's better than nothing. I used it on my T1200XE laptop with no sound card.

SB AWE64D (OEM card), and Yamaha YMF-724 based cards had "SB Link" headers which supplied a couple of lines from the ISA bus to make them work with most DOS games. Check to see if your motherboard has the SB-link header on it. Not sure if either has Windows 3.1 drivers.
 
Oh wow, I did not know about SB-Link at all. That's interesting:

Thank you. The more you know...

Of course, it appears the OP's Dell Dimension 8200 doesn't actually have the required SB-Link header, and if one were to replace a mainboard, one might as well get one with full-on ISA slots – which the OP has now indicated his slower Packard Bell has. I agree that if you've got ISA slots, then a 100% SB hardware-compatible ISA card is probably more promising. But, Mike, you know about the requisite CONFIG.SYS/AUTOEXEC.BAT entries, right? Just checking. (In my personal experience, IRQ 7 used to be more game-compatible than IRQ 5, despite some people's recommendation to the contrary and despite the supposed printer port conflict. Just don't "sing when you're printing", Mr Williams.)
 
Oh wow, I did not know about SB-Link at all. That's interesting:

Thank you. The more you know...

Of course, it appears the OP's Dell Dimension 8200 doesn't actually have the required SB-Link header, and if one were to replace a mainboard, one might as well get one with full-on ISA slots – which the OP has now indicated his slower Packard Bell has. I agree that if you've got ISA slots, then a 100% SB hardware-compatible ISA card is probably more promising. But, Mike, you know about the requisite CONFIG.SYS/AUTOEXEC.BAT entries, right? Just checking. (In my personal experience, IRQ 7 used to be more game-compatible than IRQ 5, despite some people's recommendation to the contrary and despite the supposed printer port conflict. Just don't "sing when you're printing", Mr Williams.)

Yep, I did all of the variants in AUTOEXEC.BAT and CONFIG.SYS..evren tried different combos with BIOS changes (IRQ card assignment and IRQ reservations along with changing the AUTOEXEC.BAT and CONFIG.SYS lines. I think the problem is that in all-PCI based systems the ports are not configurable - so you might get the IRQ right but not the port (as born out when running the SB diagnostic utility as autoscan can't find a suitable port.

I only installed Win3.11 in a multi-boot partition for fun on the 2.7GHz Dell 8200 just to see my many old Win3.1 app really fly natively (as opposed to running in a VM on my big i7-3930 4.6GHz box). Although the Core i7 is even faster I was never able to get Win3.1x to run in full screen in a VM due to lack of Win3.1 display driver support under VMWare Workstation; I don't know if DOXBox would have the same limitation.

The PC speaker hack sounds like an interesting thing to try :)

Regards,
Mike
 
I wouldn't use any PCI sound card from Creative in DOS, especially the SB Live! series. SB Live! cards are notorious for causing some DOS games to crash when they use complicated effects like echo and reverb. Many BUILD engine games have this issue (Duke 3D, Shadow Warrior, Blood, Redneck Rampage, etc.) I remember a few other games having crashing issues with SB Live! cards, but I can't remember which since it's been over 15 years since I had a computer with that configuration.

There exists a worse bug with SB Live! cards when used on a motherboard with certain VIA chipsets. For whatever reason the SB Live! card causes bus corruption which affects the IDE controller and causes massive hard drive corruption. I had the luck to experience both problems within the span of a few years back in the day.

Several generic card manufacturers made PCI sound cards using ESS and Crystal sound chips. They didn't sound all that great but they had DOS and Windows 3.1 drivers.
 
There are a number of PCI sound cards that work fine under DOS, but you most likely have to install the DOS drivers to configure the addresses correctly. Once this is done, presumably you can load Windows and the cards will continue to work as SB16-compatible or similar, now the DOS driver has set them up as such.

I believe the SB-Link connector disappeared once BIOS/driver support for this was sorted out, so it was no longer needed. Just check in your BIOS that there are no special settings for PCI sound cards, and if not, load the card's DOS drivers in config.sys and in theory it should work - providing said card offers SB16 compatibility of course.
 
There are a number of PCI sound cards that work fine under DOS, but you most likely have to install the DOS drivers to configure the addresses correctly. Once this is done, presumably you can load Windows and the cards will continue to work as SB16-compatible or similar, now the DOS driver has set them up as such.

I believe the SB-Link connector disappeared once BIOS/driver support for this was sorted out, so it was no longer needed. Just check in your BIOS that there are no special settings for PCI sound cards, and if not, load the card's DOS drivers in config.sys and in theory it should work - providing said card offers SB16 compatibility of course.

That's what I am going to try next. I have some Ensoniq DOS drivers that will work with a SB16 PCI card that I have. Will let you know if that works out.

Regards,
Mike
 
I remember using a SB 5200 PCI card in a DOS/Win 3.11 box for awhile. Installing drivers for it in DOS had it working in both environments. There was a short run of PCI SB cards between the ISA era and before SB Live arrived. One of those will likely work if your SB16 doesn't pan out. I found lots of cheap offerings listed here:
http://www.pcplan-it.com/h_sound.html
 
Closer....

I've got an original Ensoniq SB card and tried to configure it in DOS using the Soundscape driver for it. I was able to determine the PCI IRQ (3) and I/O port (DF00h) assigned to the card in my Dell 3000 and configured the sndscape.ini file as follows:

[sndscape.drv]

; Product ID
Product=Soundscape

; PCI HW Config
PCIPort=DF00
PCIIRQ=3

; Ports - Base/MIDI, Wave, and Sound Blaster Device
Port=330
WavePort=534
SBPort=220

; IRQs - MIDI and Wave/SoundBlaster emulation
IRQ=3
SBIRQ=3

; DMA Channel Wave/SoundBlaster emulation
DMA=1

etc...
------------------------


And added the required AUTOEXEC lines:

SET BLASTER=A220 I3 D1 T2
SET SNDSCAPE=C:\AUDIOPCI
C:\AUDIOPCI\APINIT.COM
C:\AUDIOPCI\APLOAD.EXE

....rebooted yet still come up with a device not found when it tries to load the driver - so I am still stumped. I'd added the required EMM386 in config.sys as well, so I am not sure why this config didn't work. I cant alter the IRQ in the Dell Dimension 3000 BIOS, but I did disable the Dell 2000 OnBoard audio and serial just to remove potential conflicts.

Maybe try another PCI slot next? If that doesn't work, I can get my hands on a Vortex 1 8820 sound card fr which I've found drivers for Windows 3.1 which would suffice without DOS support, but it would be nice to figure out why the Ensoniq with Soundscape isn't taking...

Regards,
Mike
 
So after much reading and research I've concluded that there is just no way to get a PCI Audio card working under DOS or Windows 3.1x using drivers on a PCI-only motherboard. It seems that the motherboard chip sets and SouthBridge I/O Controller Hub (ICH) chip sets later than ICH5 just don't support the kind of I/O address mapping needed for DOS and Windows 3.1x (220, 240, etc), always resulting in the Audio hardware not being found when tying to load a driver - even with a PCI audio card that has native DOS and Windows 3.1x drivers like the Vortex 2 that I have. I am sure the card would be found and the drivers would work in an earlier machine that have an ISA slot, but what I wanted to get working was a DOS/WIN 3.1x system running on my super-fast Pentium 4 3.4Ghz Dell Dimension 3000 or 8200 box (I've already got everything working on a 500Mhz Gateway). It seems the fastest box that would have the needed chipset support probably tops out at 800MHz.

In the meantime, I found a software-based solution called DOSSOUND ( http://www.georgpotthast.de/dossound/dossound.htm ) that I am going to try next. Maybe that will provide some basic DOS audio support - it looks like it might interface through one of my SoundBlaster cards - not sure if it would carry through to Win3.1 though.

Regards,
Mike
 
FWIW there are industrial socket 478 boards with ISA slots. I have an IBASE MB800H with a 3 GHz Pentium 4 and an ISA SB16 and GUS ACE. Everything works in DOS.
 
FWIW there are industrial socket 478 boards with ISA slots. I have an IBASE MB800H with a 3 GHz Pentium 4 and an ISA SB16 and GUS ACE. Everything works in DOS.

Yep, that looks like it would certainly do it - at nearly $300 (and another one on eBay for around $1000), but it proves its possible! :)
 
That particular one is hard to find now but there are others that are cheaper. $125 for the MB800-V, or if you only need one ISA slot ~$70 for this one. Comes down to how bad you want it :p
 
Back
Top