Using a PCI Sound Card in DOS
** Note: This article refers to the use of PCI sound cards in DOS versions 3.3 up to 6.22. It does not include running programs in a DOS shell or command interpreter from Windows, nor booting to DOS from Windows 95 or 98 **
Most DOS programs/games are designed to only access sound cards on the ISA/EISA bus. They use typical ISA channels for sound data: IRQs, I/O addresses, and DMA channels.
A PCI sound card's DOS driver must setup routings to intercept the ISA-style commands/instructions for playing sound and music and pass them through to the PCI hardware. There are two emulation methods that are sometimes employed to do this in pure DOS:
1) DDMA (Distributed DMA) (EDIT: combined with an IRQ related method)
2) PC/PCI using a physical SB-LINK connection.
If your PC's South Bridge supports either of these, your DOS audio-supported PCI sound card will work under DOS. Note the caveat there.. your PCI sound card must support legacy DOS audio.
Such emulation methods *must* be supported by both the sound card and the motherboard for the method to work. DDMA support is more common than PC/PCI support. You should only expect to find such support on PCI sound cards sold new up until about 2001. Roughly the same time period applies to DDMA support on motherboards.
Some of Crystal Semiconductor's audio chips come with what they call CCLS ("CrystalClear Legacy Support"). Some of these are the CS4622 and CS4624. CCLS provides a hardware interface that supports a Sound Blaster Pro-compatible interface in addition to FM and joystick interface.
DDMA (Distributed DMA):
Ensoniq AudioPCI was the first with a "pure" DOS DDMA emulation. The related software was bought by Creative Labs and adjusted for their AudioPCI-clones, SB-Live! and Audigy-1. As far as I know it is all roughly the same program, just that Creative replaced the Soundscape emulation with Sound Blaster 16 emulation. It requires EMM386 to be loaded. It supports OPL-3 and General MIDI music with a software driver. (I only used SB-PCI 128 and SB-Live!).
Aureal Vortex 2 does Sound Blaster Pro DDMA emulation. OPL-3 music in software. It is one of the few to have a functional wavetable daughterboard header in DOS. Otherwise no software General MIDI is available. You can use the command "LH AU30DOS.COM" to load the emulator - doing so only takes 1 KB of your base memory.
I also tried a more recent Turtle Beach Santa Cruz (Crystal CS4630 SoundFusion chipset) in DOS. It worked, doing the usual SB Pro emulation and software OPL-3 music. The wavetable daughterboard header is Windows only. The driver program (TBCDOS.exe) had very few options and was hardly documented.
The following motherboard chipsets are known to support DDMA, but bear in mind that doesn't guarantee that the motherboard itself and BIOS also provide sufficient support!
ALi Aladdin 4 (PC Chips M560/M565/M575, ATrend ATC-5130, Biostar M5ATA)
ALi Aladdin 5 (Gigabyte GA-5AX, ASUS P5A/P5A-B, MSI MS-5169/MS-5182/MS-5191, Chaintech 5RTA2, IWill XA100, Biostar M5ALA)
AMD 640 (relabelled VIA VP-2)
AMD 750
AMD 760
Intel 440BX (ATrend ATC-6220, ASUS P2B/P3B, ABit AB-BH6/AB-BX6, Octek Rhino II, AOpen AX6B, Gigabyte GA-686BX, Chaintech 6BTM)
OPTi Viper N+
SiS 5581/5582
SiS 5597/5598
SiS 530 (5595 SB)
SiS 600 (5595 SB)
SiS 63X
SiS 645DX/962UA
SiS 73X
VIA VT82C586B (Shuttle HOT-603, FIC PA-2007/PA-2010/PA-2011
VIA VT82C686A/B
PC/PCI using a Physical SB-LINK connection:
PC/PCI is an Intel specification. It works by connecting the PCGNT# and PCREQ# pins on the
audio chip to the appropriate pins on the motherboard's South Bridge chip.
I have seen it supported on the AWE-64 and ESS Solo-1 sound cards. I have only used it with a Yamaha YMF724-based sound card on a BX440 motherboard. It emulates a Sound Blaster Pro too. This setup failed with only one game so far (Quarantine). As a bonus this particular card has an integrated hardware OPL-3 for music. General MIDI in DOS can only be achieved when utilizing an external MIDI device.
The best compatibility I've achieved with PCI is an Aureal SQ2500 sound card with my Roland SCD-15 daughterboard. With either umbpci.sys or emm386.exe, I can load it high. I've got some perfectly tweaked DOS machines that run it fine.
Here is an additional read on this topic, aimed at Ultima 7 players:
PCI Soundcards for Ultima 7 (note: external link)
ISA Sound Cards are probably a fine, if not better, approach.
Here's a list of motherboards and sound cards that have the Creative SB-Link header (or pads exist for you to solder a 5-pin header to), but there are more dated in the 1998 - 2000 era that do exist:
MOTHERBOARDS ABIT AH6ABIT BF6 ABIT BE6-II ABIT BH6 ABIT BX6 2.0 ABIT BX133-RAID AOpen AP5TC AOpen AX6B AOpen AX6B Plus AOpen AX6BC ASUS P2B, P2B-B, P2B-D, P2B-DS and P2B-S ASUS P5A (partial support) ATrend ATC 6310V-01 Biostar DFI PA61 ECS 848P-A ECS 865PE-A ECS P6BAT-A+ and AT-Me Rev 1.1 ECS P6BX-A+ Elitegroup P6IC-A+ Epox EP-MVP3C and 3C2 Epox EP-MVP3G-M, 3G-2 and 3G-5 Gigabyte BX2000 Gigabyte GA-686BX Gigabyte GA-6BXC Gigabyte GA-6BX7+ Rev 1.1 Intel D850GB Intel SE440BX-2 Intel VC-820 Jetway J7BXA NMC 6BEX QDI BrillianX I (P6I440BX/B1S) QDI Legend PlatiniX 4x QDI PlatiniX 2A QDI PlatiniX 2DI-AL/C QDI PlatiniX 2e/333 Shuttle AV11 V3.0 Soyo SY-6BA+ III and IV Soyo SY-6BB Soyo SY-6KL Tekram P6B40-A4X Tekram P6Pro-A5 |
PCI SOUND CARDS AOpen AW724AOpen AW744 Creative CT4650 AWE64 ESS Maestro 2 ESS Solo 1-chip cards (some variants with ES1938s) Labway LWHA301J8, XWave 6000, A301-J8 Labway LWHA411G7, A411-G7 Terratec Solo-1 (Look for others that use the Yamaha YMF724 / DS-XG chipset, YMF744 or YMF754 chip, and some with the ESS Solo 1 (ES1938s) - these may also have the header or pads to support SB-Link) |
South Bridge ISA Compatibility
A motherboard's south bridge was the chip that interfaced between the North Bridge (which in turn spoke to the CPU directly) and all low-speed peripherals in your PC such as sound card, USB interface, ISA bus, interrupt controller, serial, parallel, game ports, etc). ICH, or "I/O Controller Hub" is the most common name for Intel-based motherboard south bridge chips. On AMD-based motherboards, it's called FCB, or "Fusion Controller Hub". The South Bridge began to die out in 2011 when the North Bridge chip started to be integrated into the CPU itself. This left the South Bridge to be replaced with what is now called PCH, "Platform Controller Hub".
Some South Bridge chipsets are:
ICH2 (2000) - integrated ethernet chip (82559), faster Parallel ATA (ATA/100), 4 USB connections, AC'97 sound controller now supported up to 6-channel sound - used with Intel's 82850 and 82815 chipset.
ICH4 (2002) - support for USB 2.0 on all 6 ports. Sound improved to newest AC'97 specs (v2.3).
ICH5
(2003) - worked with i865 and i875 north bridges. SATA host controller now integrated, 8 USB 2.0 ports, also support for ACPI 2.0.
845GL - No support for AGP. Weaker than 845GV - maximum 400 MHz FSB
845GV - No support for AGP.
nForce 430
SiS 966
The ICH2 and ICH4 chips are the last I/O chips that can support the signalling that ISA sound cards require. These variants can usually be found on Pentium 4-era motherboards with the Intel 845 chipset. Later boards make use of ISA "bridge" chips. The ICH5 was the last South Bridge that properly provided the signals needed by these bridge chips. Later boards may well have these bridge chips but there will be no DMA, thus making them completely unusable for ISA sounds cards.
**UPDATE - Dec 2018** Apparently Intel chipsets up to ICH5 may well support PC-PCI. On VIA chipsets up to the VT82C686B.