VOGONS


First post, by LSS10999

User metadata
Rank Oldbie
Rank
Oldbie

UPDATE (May 2022): Considering revising and refactoring the OP using spoiler blocks for readability.

I hesitated about writing something about this topic several times before... but I think I should put it here:

The ONLY and the MOST VITAL requirement of enabling legacy DOS audio support for capable PCI sound cards is that your motherboard MUST have a proper southbridge. If the southbridge does have PC-PCI or Distributed DMA (DDMA) support, then the card will definitely work under legacy environments if configured properly.

Additionally, very recent motherboards started dropping legacy interfaces altogether, so using such sound cards there for legacy OSes is virtually impossible, and one cannot even access these features directly on modern OSes (e.g. via DOSBox).

I. Motherboards and Chipsets (southbridges)

1. VIA Chipsets
These chipsets have better compatibility with PCI sound cards, including the newer PCIe ones.
VT82Cxxx have DDMA support which can be utilized by sound cards that support it.
VT823x/8251 no longer have DDMA but some sound cards (like ESS Solo-1 and FM801) can still work on those, with varying compatibility.

2. Intel Chipsets
440BX/PIIX4 have native ISA as well as both PC-PCI and DDMA. Most PCI sound cards were well-tested against this chipset and should not have many problems other than the ones known and documented.
Chipsets with up to ICH5 can use legacy DMA via PC-PCI only, though not all cards and boards have PC-PCI connectors. PCI-ISA bridges used by some industrial motherboards for ISA slots also utilize PC-PCI for DMA.
Since ICH6 support for PC-PCI has dropped and it's not possible to provide ISA slots with DMA using PCI-ISA bridges anymore. This also impacted PCI audio cards that now only FM synth works on those cards. No SFX audio works except Aureal sound cards.
Note for 6/7 series (Sandy/Ivy Bridge) PCHs: For some PCI sound card legacy functionalities to work you need a PCH with native PCI support. Only B and Q PCHs have native PCI.
Native PCI support is gone since 8 series (Haswell). It may be possible to get things working by enabling subtractive decoding, but I do not have such boards and cannot be certain how this works.

PS: Since 100 series chipset (Skylake) full LPC support has been dropped in favor of eSPI, which cannot provide LPC DMA. This effectively closes most, if not all, doors to legacy audio and it is unlikely for anything (including DOSBox) to be able to directly access the legacy parts of PCI sound cards from this point on.

3. nForce Chipsets
The last such board I had used a nForce 720D (MCP78) which behaved the same as a nForce4 board I previously used.
So far it seems all nForce chipsets do not properly support any of the legacy DMA technologies and behave similar to Intel chipsets with ICH6 or later southbridges.
Only FM synth works correctly. No SFX except Aureal, but compared to Intel ones it didn't work correctly.

4. ATI/AMD Chipsets
These southbridges have virtually zero legacy capabilities available. I used some AMD 700-900 motherboards for some Phenom II CPUs and later on the FX ones.
Legacy audio simply cannot be turned on. Games still report no Sound Blaster even after loading the TSRs. Something is missing.

NOTE 1: While I haven't got any such boards to actually confirm, early AMD-750/760 chipsets (for Socket A) can pair with the VT82Cxxx southbridge as well as AMD's own (AMD-756/AMD-766). These chipsets' compatibility may be similar to the VIA's in general. These are not to be confused with the newer ATi/AMD chipsets here.

NOTE 2: A while ago I noticed someone had difficulty getting legacy audio working on an old P4 board powered by ATI RS350/IXP200, so it's possible that ATI/AMD family never properly implemented any legacy capability at all.

NOTE 3: There were some mentions of SMM in SB600/700's datasheets for legacy I/O ranges which cover many stuffs including Adlib (388H), Sound Blaster (220H), Gameport (201H), etc.. Not sure how much it can be used for legacy audio but so far no motherboard vendors ever ventured into this, and there are little detailed information. That mention was removed from SB800 and onwards, and the register sections became "reserved" with no new purposes assigned to them.

5. Others
I personally haven't tested any SiS or other chipsets as I never had any. Kamerat had some information about SiS and ULi chipsets.
From the info it seems up to SiS 962 southbridge supported DDMA. Since SiS 964 DDMA support was dropped. ESS Solo-1 doesn't seem to work with SiS.

II. Sound Cards

There are several sound cards capable of having (near) authentic FM synth.
1. Yamaha YMF7x4
Yamaha sound cards have a genuine YMF289 integrated.
These cards need PC-PCI or DDMA to work. Since SETUPDS actively tries to determine what southbridge you're using, for newer chipsets like VT82C686A/B the program needs to be hex-edited to make it usable.
For some newer chipsets (ICH6 and onwards) Kamerat successfully managed to get DSDMA working for SFX. However, it seems one needs a chipset that has native PCI slots for it to work correctly (PCIe-PCI bridges do not count).

PS: During my experiments with NT 3.51, it seems YMF7x4's NT4 drivers (compatible with NT3) also requires the legacy part of the sound card to be initialized in order to function. Since the legacy part cannot be initialized on newer motherboards, the driver failed to install/run with an error code.

2. ESS Solo-1
This is arguably the best in terms of compatibility. It works on all VIA chipsets including the later ones that no longer support DDMA (it uses TDMA which works in that particular occasion).
ESS Solo-1 is the last to include ESFM, which is nearly authentic. The music track "One Mustn't Fall" from Tyrian is the only part that I ever heard some differences compared to genuine OPL3.
On other newer chipsets (ICH6 and onwards, nForce, etc.) only FM synth works.

3. Fortemedia FM-801
Depending on versions, the one I got had authentic FM that I can't really distinguish with the genuine ones.
It can work with VIA chipsets including later ones, but it doesn't appear to be as compatible as I had more crashes.

4. Avance Logic ALS4000 (and maybe other related ones)
I haven't tested this card for DOS, but it's a good card with authentic FM synth and the synth can be used in Windows NT 3.51 as well.
From the information it appears the card mainly uses DDMA.

5. Sound Blaster Live!
Apparently Live! and maybe Audigy have authentic FM with its SB16 emulation compared to the predecessors (Ensoniq AudioPCI).
The emulation uses different approaches and I only tested this with very old boards up to i815 and it works okay there.
NOTE: The emulation TSR requires MS EMM386 and you probably need to make sure there are enough free memory in the sub-4MB range or it'll complain.

Here are some other cards whose FM may not sound as authentic as a genuine OPL3.
1. Aureal Vortex series
The FM synth in these cards are not authentic and can sound a bit off-pitch.
However, these cards are the only one known to work just fine with motherboards using ICH6 and onwards, at least in case of Aureal Vortex (AU8820).

2. Ensoniq AudioPCI (Sound Blaster PCI64/128)
These predecessors of Sound Blaster Live! utilizes the same emulation mechanism which Live! still uses.
However, these cards do not have authentic FM and is instead emulated through ECW wavetables, and could sound quite weird.

3. Crystal Semiconductor Sound Cards
At one point I tried a card with Crystal sound chip for a brief while.
Its FM can work after loading the TSR but I didn't test it in detail as its FM synth was not authentic (a bit high-pitched). I think the compatibility was similar to other ones.

4. ESS Maestro/Allegro/Canyon3D
These cards are equally compatible as ESS Solo-1 but no longer features real ESFM synth and use wavetables instead, which is not quite authentic.

III. Other Information

As far as I know most graphic cards should work fine under DOS, but some recent video cards indeed started breaking legacy compatibility. In overall, using the right video card should work around most of the graphics issues.
Sound in DOS is the major blocker as modern motherboards simply don't have the capabilities sound cards expect for proper operation, and there are few ways to work around.

Many sound chip manufacturers existed back then, but now it's mostly Creative and C-Media (ASUS), plus a few other less-known ones. While CMI8738 was a popular chip that were supposed to support legacy audio, I never got it working, and it seems there are several different versions of that chip with some actually contain the legacy block while others don't.

I don't know if there can be anything to be used as a reference on how to improve legacy DOS compatibility... Like that Aureal Vortex has at least working SFX on many chipsets while ESS experiences fewest errors and crashes on compatible chipsets... And by the way, I am still wondering if there are any references for some DOS audio APIs such as Miles Sound System and DIGPAK... maybe it is possible to build drivers for PCI cards around these APIs so at least games using these APIs can work directly... MPXPlay, a DOS music player, for example, can work with many current audio cards including onboard AC97/HD audio using its own ways.

Should say that developments on DOSBox namely the DOSBox-X branch in the past few years apparently improved a lot of things that I once complained about at the time I intitially wrote this topic. Given correct CPU, video and sound configurations, with DOSBox-X it's indeed possible to get games running near-perfectly, and may also be used as a workaround for issues such as those with video BIOS, CPU speed sensitivity.

IV. See Also

A lot of related discussions and new discoveries continued here and in other threads, with a lot of informative posts.
Here are some of the threads. There might be more:

X58/i865/V880 - Yamaha7x4/AurealV1/2 pure Dos7.1- compatibility list/research/ultim. drivers configs, WIP- gurus needed
PCie-to PCI, PCI to ISA, # of slots multipliers - bridges, risers, backplanes, research, especially for DOS, WIP.
PCI or PCI Express Sound Card for DOS Sound Blaster Sound Effects working on Intel Sandy Bridge Z68 or newer chipsets

Credits to the respective OPs.

Last edited by LSS10999 on 2022-05-03, 17:19. Edited 24 times in total.

Reply 1 of 486, by Mau1wurf1977

User metadata
Rank l33t++
Rank
l33t++
LSS10999 wrote:

So far, as for my own experience, sound is the only thing that prevents modern PC to run PC games properly.

Speed is another issue. I had limited success slowing down a Phenom II (Asrock AMD chipset board with FSB and multi adjustments), but there is only so much you can do.

And even if you slow down the CPU to the correct level, the memory and video subsystem still performs much much faster than a vintage PC and this can lead to issues with some games.

Another issue is connecting Roland MT-32 MIDI devices to PCI cards. Not sure if you have tested this, but I wouldn't be surprised if this is another road block.

Based on my experience so far, I wold rank the following Vintage PCs in terms of flexibility and compatibility:

1. 486 PC
2. 386 PC
3. Super Socket 7 PC
4. Slot 1 PC

All of these PC's have ISA slots and offer 100% compatibility as far as sound is concerned. Speed can be adjusted quite flexibly, with the exception of Slot 1 systems, which are either very fast or very slow.

Having said all that, I believe DOSBox tops them all in terms of flexibility, compatibility, cost and easy of use. OPL FM Music and digital speech / sound effect work perfectly and are extremely if not totally authentic, plus external Roland MT-32 MIDI modules are also 100% supported through the use of USB MIDI adapters.

Reply 3 of 486, by valnar

User metadata
Rank Oldbie
Rank
Oldbie

You left off the Aureal Vortex2, of which the SQ2500 was the pinnacle of that series. It is by far my favorite PCI DOS card, especially since the wavetable header works in DOS. No hanging notes like on an SB16.

The ESS might be slightly more compatible, but I prefer the SQ2500 any day. I also have the Yamaha YMF744 in my same rig (ASUS P2B BX chipset), but I prefer the Aureal in almost all cases unless I want to hear FM.

Reply 4 of 486, by Tetrium

User metadata
Rank l33t++
Rank
l33t++
LSS10999 wrote:

-snip!-

This is a very informative post! I never even knew about this. Thanks for sharing 😉

LSS10999 wrote:

ESS Solo-1

Ha! So I finally found a use for that Solo-1 PCI card I've got laying around 😜

Reply 5 of 486, by Jorpho

User metadata
Rank l33t++
Rank
l33t++
LSS10999 wrote:

My own currently-used GA-G31M-S2C somehow doesn't have ISA support in BIOS as shown in HWiNFO32. And probably the compatibility differs between different motherboard manufacturers, or otherwise Intel has completely dropped support after that.
...
Later AMD boards (or ATi boards) have NO ISA function support in BIOS (as confirmed in HWInfo32), and therefore, legacy audio on such motherboards is completely impossible with the current drivers.

I've been looking at this just now.

I have an SB0100 (SB Live!) in a TUSL2-C (815EP + ICH2 chipset). This card appears to work just fine in DOS using SBEINIT.COM. In HWInfo32 (specifically in the BIOS entry under SMBIOS DMI), ISA Support is listed as Not Present.

I also have a CT4810 (SB Ensoniq AudioPCI) in a P4 motherboard with an ATI Radeon 9100 IGP (RS300) + SB200C chipset. HWInfo32 emphatically states that ISA Support is Present! Alas, while the card does seem to function in Windows and SBINIT.COM seems to load without any problems in DOS, I can't seem to get any sound out of it in DOS. SBLEGACY.EXE reports nothing but timeouts, and SBTEST.EXE reports "error: could not reset SB16".

Evidently using HWInfo32 to see if a board has ISA support is not a good standard to see if legacy PCI audio is feasible. So, is there a better way? I suppose to be completely thorough I should try to put the SB Live in the P4 and see if it works properly, but if there's something else I can do to persuade the Ensoniq to work first, I'd like to know.

EDIT: The P4 has an AMI BIOS with an Advanced PCI/PnP Settings Page, including one that allows IRQs to be "reserved for use by Legacy ISA devices". Alas, reserving IRQ7 (which the Ensoniq setup decided upon for the card) doesn't seem to make a difference.

EDIT2: Interesting post at http://www.bttr-software.de/forum/forum_entry.php?id=4200 about someone who soldered a board to make this go.

Last edited by Jorpho on 2014-04-04, 20:19. Edited 1 time in total.

Reply 6 of 486, by LSS10999

User metadata
Rank Oldbie
Rank
Oldbie

Haven't checked here for several years.

Mau1wurf1977 wrote:
Speed is another issue. I had limited success slowing down a Phenom II (Asrock AMD chipset board with FSB and multi adjustments) […]
Show full quote

Speed is another issue. I had limited success slowing down a Phenom II (Asrock AMD chipset board with FSB and multi adjustments), but there is only so much you can do.

And even if you slow down the CPU to the correct level, the memory and video subsystem still performs much much faster than a vintage PC and this can lead to issues with some games.

Another issue is connecting Roland MT-32 MIDI devices to PCI cards. Not sure if you have tested this, but I wouldn't be surprised if this is another road block.

Based on my experience so far, I wold rank the following Vintage PCs in terms of flexibility and compatibility:

1. 486 PC
2. 386 PC
3. Super Socket 7 PC
4. Slot 1 PC

All of these PC's have ISA slots and offer 100% compatibility as far as sound is concerned. Speed can be adjusted quite flexibly, with the exception of Slot 1 systems, which are either very fast or very slow.

Having said all that, I believe DOSBox tops them all in terms of flexibility, compatibility, cost and easy of use. OPL FM Music and digital speech / sound effect work perfectly and are extremely if not totally authentic, plus external Roland MT-32 MIDI modules are also 100% supported through the use of USB MIDI adapters.

I do remember the old days with boards that do have ISA slots. My first ISA sound card was a ES688 Audiodrive. Later I got a Sound Blaster 16. Sadly I was not able to get some better ones... The best board I had with an ISA slot was a VIA KT133A-based EP-8KTA3PRO which supports Athlon XP.

I tried DOSBox before, but for some games I am unable to overcome some audio lag (the sound being played later than expected) and render artifacts (mainly due to scaling) which are not present when playing from a real PC without emulation... That can make me feel a bit uncomfortable especially if that I actually played that game on my old PCs before, as one can easily feel the difference in some ways...

And as for speed, back then I was not aware of the fact that DOSBox's auto option for CPU cycles was very low that made some modern DOS games really slow, while apparently made those old 80s games that do not have a FPS limit work just fine, not too fast and not too slow. And because of that I made an incorrect statement that DOSBox was mostly for 80s games back then. Apparently if I wanted to play a modern DOS game on DOSBox I may have to set a very high CPU cycle value to make it run smooth.

So it seems that for DOSBox, different games may require different configurations to make it feel better. Some may even require more detailed configurations.

eL_PuSHeR wrote:

I had an CMI8738 card on my older Sempron board and the sound capabilities under real ms-dos were just partial.

Honestly I never had any success in making CMI8738 work in the past. A long time ago I had a Intel 815-based motherboard which used CMI8738, but sound in DOS never worked even after I successfully loaded the DOS driver.

valnar wrote:

You left off the Aureal Vortex2, of which the SQ2500 was the pinnacle of that series. It is by far my favorite PCI DOS card, especially since the wavetable header works in DOS. No hanging notes like on an SB16.

The ESS might be slightly more compatible, but I prefer the SQ2500 any day. I also have the Yamaha YMF744 in my same rig (ASUS P2B BX chipset), but I prefer the Aureal in almost all cases unless I want to hear FM.

Maybe yes, but I have never personally seen a Vortex2-based card myself. Those cards do have some technologies considered very advanced during its era like the GUS which I have never seen one myself, either. I did have a Vortex-based one back then, it can partially produce sound on a nForce motherboard but it will end up looping like crazy and eventually crash the game... Haven't tried it on the VIA board I'm currently using, as its FM sounded a bit off-pitch that I would prefer using ESS Solo-1 which has near-accurate FM playback.

YMF7x4 and FM801 have accurate FM as well, but they have poor compatibility with recent motherboards. They may work better than Solo-1 on early motherboards that hopefully do have PC-PCI or Distributed DMA support, though.

Jorpho wrote:
I've been looking at this just now. […]
Show full quote

I've been looking at this just now.

I have an SB0100 (SB Live!) in a TUSL2-C (815EP + ICH2 chipset). This card appears to work just fine in DOS using SBEINIT.COM. In HWInfo32 (specifically in the BIOS entry under SMBIOS DMI), ISA Support is listed as Not Present.

I also have a CT4810 (SB Ensoniq AudioPCI) in a P4 motherboard with an ATI Radeion 9100 IGP (RS300) + SB200C chipset. HWInfo32 emphatically states that ISA Support is Present! Alas, while the card does seem to function in Windows and SBINIT.COM seems to load without any problems in DOS, I can't seem to get any sound out of it in DOS. SBLEGACY.EXE reports nothing but timeouts, and SBTEST.EXE reports "error: could not reset SB16".

Evidently using HWInfo32 to see if a board has ISA support is not a good standard to see if legacy PCI audio is feasible. So, is there a better way? I suppose to be completely thorough I should try to put the SB Live in the P4 and see if it works properly, but if there's something else I can do to persuade the Ensoniq to work first, I'd like to know.

EDIT: The P4 has an AMI BIOS with an Advanced PCI/PnP Settings Page, including one that allows IRQs to be "reserved for use by Legacy ISA devices". Alas, reserving IRQ7 (which the Ensoniq setup decided upon for the card) doesn't seem to make a difference.

EDIT2: Interesting post at http://www.bttr-software.de/forum/forum...hp?id=4200 about someone who soldered a board to make this go.

Looks like you're right that using HWInfo32 to see if a board has ISA support is not accurate... for some reasons some current AMD boards (800/900 series chipset) do show ISA Support Present when checking with HWInfo32, but legacy-capable sound cards do not work at all just like the 700 series chipset.

I think the problem lies mostly with the southbridges they use. It appears to me that the chipset manufacturers seldom make major changes on some core parts in the design of their southbridges, which probably explained why even the recent nForce and VIA chipsets exhibit the same legacy audio compatibility levels as the earlier ones (without DDMA), even though the newer southbridges have much more features than the earlier ones. I don't have much information about recent Intel chipsets for now... but maybe ICHx chipsets will work with those cards, as from the post you mentioned, it was possible to enable SERR# to NMI routing on them which allows SB Live! to partially funtion... and also that industrial motherboards using 945/965 and ICHx chipset with slave ISA ports do exist.

As far as I know 440BX and 815 have the best legacy compatibility for PCI sound cards, and most DOS drivers for those legacy PCI audio cards are built around them, like YMF7x4's. So these motherboards are still recommended if you want to play most DOS games with sound and without issues.

In the end, although back then some sound card chip makers claimed their audio cards support legacy DOS games without the need of Distributed DMA (DDMA), and even that ESS claimed their Transparent DMA (TDMA) was chipset-independent... it all turned out to be wrong in practice... and I still have no idea how they achieved that back then on early motherboards...

Last edited by LSS10999 on 2013-04-17, 11:12. Edited 1 time in total.

Reply 7 of 486, by d1stortion

User metadata
Rank Oldbie
Rank
Oldbie
LSS10999 wrote:

Looks like you're right that using HWInfo32 to see if a board has ISA support is not accurate... for some reasons some current AMD boards (800/900 series chipset) do show ISA Support Present when checking with HWInfo32

Look up Low Pin Count.

Reply 8 of 486, by LSS10999

User metadata
Rank Oldbie
Rank
Oldbie
d1stortion wrote:

Look up Low Pin Count.

There is a LPC bridge listed in HWiNFO64 for AMD 700/800/900 series' southbridges. Every current motherboard should have one. It has something to do with the implementations, I think...

Reply 9 of 486, by Jorpho

User metadata
Rank l33t++
Rank
l33t++

For the record, my TUSL2-C reports a "Super-IO/LPC Chip" of "Winbond/Nuvoton W83627SF".

LSS10999 wrote:

Haven't checked here for several years.

Thanks for stopping by. 😀

Reply 10 of 486, by LSS10999

User metadata
Rank Oldbie
Rank
Oldbie

I just got myself a GA-P31-DS3L (P31/ICH7) to test out. No good for ICH7 (and all the current ICHx).

FM/Adlib only, no sound on ESS and FM801. YMF7x4 and CS4281 drivers will not load, the drivers cannot detect their presence.

The only card that can play digitized sound fairly okay on it is Aureal Vortex (AU8820), though I don't think the compatibility is good enough as it still has some problems with some games...

I cannot make detailed tests but that's the most about the legacy compatibility on ICHx I can test.

In the end, only Aureal sound cards can make digitized sound at least working on most current motherboards, while I experienced some unusual loop on nForce motherboards...

And it seems SERR to NMI routing have nothing to do with the way the sound card will actually function in DOS, while some drivers (such as SB Live!'s DOS driver) do need it to be properly loaded. But from the cards I have none actually needed SERR to NMI routing in order to be able to load and work.

And from this whitepaper I just found, looks like Intel did not support Distributed DMA on ICHx (the Intel Express Chipset) to begin with, and support for PC-PCI was only up to ICH5.
http://www.intel.com/assets/pdf/whitepaper/318244.pdf
This one is dated September 2007 and covered ICH6 to ICH9.

Jorpho wrote:

For the record, my TUSL2-C reports a "Super-IO/LPC Chip" of "Winbond/Nuvoton W83627SF".

All boards have SuperIO/LPC chips for certain common interfaces to function... but highly doubt that they all will have the necessary things to make legacy PCI devices to function.

Even there are some ICH7/8 based industrial motherboards that do have ISA, they are all slave slots without DMA as perhaps most ISA devices used for industrial purposes do not need it... and it is not possible to make ISA master slots on them...

So it is all about PC-PCI and Distributed DMA in the end... but I'm still surprised how VIA managed to retain some of the compatibility on their latest southbridges (VT823x, in K8T890's case, VT8237R/A) to make at least ESS PCI audio cards able to function nearly flawlessly without actually using DDMA...

EDIT: Apparently there was a document about implementing legacy audio on the PCI bus ( http://intel-vintage-developer.eu5.org/PC-SUP … C97/LEG_PCI.PDF )... haven't read it thoroughly yet but hope it helps understanding...

Last edited by LSS10999 on 2013-04-19, 04:18. Edited 1 time in total.

Reply 11 of 486, by NamelessPlayer

User metadata
Rank Member
Rank
Member

Intel ICH southbridges have problems with PCM/digital audio samples on PCI sound cards? Huh...I don't seem to have much issue with digital audio on my 875P/ICH5R-based retrogaming system.

Then again, the PCI card of choice for Win9x games on said system is Aureal Vortex2-based, and I don't even use its SB Pro emulation because the motherboard just happens to have an industrial one with an ISA slot that plays nicely with an AWE64 Gold, even in native DOS mode.

Seems like ICH5 is the end of the line for ISA DMA support, though, so the fastest we can expect from a computer with native ISA is a Socket 478 Pentium 4.

Reply 13 of 486, by Jo22

User metadata
Rank l33t++
Rank
l33t++
LSS10999 wrote:

CMI8738 was said to support DOS, but in fact, it doesn't. Even those onboard CMI8738/9739 that existed on some motherboards don't seem to support DOS properly, while the drivers will not load and saying cannot find PCI device on newer boards.

Funny, that you mention this one. I wrote an article (or "experience report") about this in 2010, but never posted it here on Vogons.
I just didn't feel comfortable doing so. Was afraid of critics, I think..
Anyway, here it is, maybe there's still something usable within..

Attachments

"Time, it seems, doesn't flow. For some it's fast, for some it's slow.
In what to one race is no time at all, another race can rise and fall..." - The Minstrel

//My video channel//

Reply 14 of 486, by Tertz

User metadata
Rank Oldbie
Rank
Oldbie
Jo22 wrote:

Anyway, here it is, maybe there's still something usable within..

It will be better if you'll create the thread with your article. Such people may add you additional info and you'll can make editing of the article.
The other thread about CMI8738 is there: I've got the OPL3 synth from a CMI8738 working in Windows 7 x64

DOSBox CPU Benchmark
Yamaha YMF7x4 Guide

Reply 15 of 486, by Jo22

User metadata
Rank l33t++
Rank
l33t++

Thank you, Tertz. That means a lot to me.
I still don't know if I should do it, though.
Don't want to make people angry.. I've already posted to much in the last days, I'm afraid.
Wasn't really on Vogons for years before this and missed a lot (DOSBox switched from CVS to SVN, for example).
Plus, I grew up in a 16Bit world of SNES and 286 machines. While others were fans of 386 coding and whatnot.
So whenever I post something, it may violates popular belief, which is bad.
Like questioning if EMM386 is being mandatory for running games in DOS or me recommending an EMS card (hardware EMS was my only choice back then).

"Time, it seems, doesn't flow. For some it's fast, for some it's slow.
In what to one race is no time at all, another race can rise and fall..." - The Minstrel

//My video channel//

Reply 16 of 486, by bootlogger

User metadata
Rank Newbie
Rank
Newbie

Thanks LSS10999 for the very helpful guide.

I recently came about a Yamaha YMF-724F PCI sound card, and I'm trying to get it working on a relatively recent PC... one that doesn't have a PCI slot (yep). I found out a cheap PCIe to PCI adapter eBay so I decided to give it a shot. The motherboard is a Gigabyte micro-ATX board that has a Z68 chipset, model GA-Z68MA-D2H-B3.

I use Linux and kernel 3.13.0 does recognize the card correctly, and it gets initialized as an ALSA device so I can play music through it. However the initialization logic for the OPL3 chip fails, as reported by dmesg:

...
[ 4.031222] OPL2/3 chip not detected at 0x388/0x38a
[ 4.031223] ymfpci: cannot initialize FM OPL3 at 0x388, skipping...
[ 4.045865] gameport gameport0: Yamaha YMF Gameport is pci0000:03:05.0/gameport0, io 0x201, speed 1085kHz
...

So I cannot talk to the FM synth, which is the real beauty of this card.

I've tried a few things, like changing the OPL3 port in /etc/modprobe.d/alsa-base.conf but I always get the same result. These are the settings I'm currently using:

options snd-ymfpci index=0 joystick_port=0x201 mpu_port=0x330 fm_port=0x388

I was about to give up, realizing that this was a bad idea in the first place, but then took a glance at /proc/ioports. And there it is!

...
0201-0201 : YMFPCI gameport
0290-029f : pnp 00:00
0290-0294 : pnp 00:00
0330-0331 : YMFPCI MPU401
0388-038b : YMFPCI OPL3
03c0-03df : vga+
...

So how come the chip be registered at the right address and still not get detected? Would it be possible that somewhere in the PCIe to PCI connection the card is losing the ability to send or receive data through the FM port?

Also, considering that the kernel does load the gameport without a problem, it seems like there's something else going on... Any other ideas that I could try? Would a PC/PCI connector help in this case?

Thanks everyone in advance.

Reply 17 of 486, by tyrell

User metadata
Rank Newbie
Rank
Newbie

Having said all that, I believe DOSBox tops them all in terms of flexibility, compatibility, cost and easy of use. OPL FM Music and digital speech / sound effect work perfectly and are extremely if not totally authentic, plus external Roland MT-32 MIDI modules are also 100% supported through the use of USB MIDI adapters.

Yes, Dosbox is very flexible ... but is not compatible with a number of games, and at the same time, FM emulation, while good, is no match for a real Yamaha OPL sound card.
So this is a very good solution for those who do not want to fiddle with a real pc and who love its ease of use. The others (like me) will prefer to play with a real machine.

Reply 18 of 486, by nukeykt

User metadata
Rank Member
Rank
Member
bootlogger wrote:

So how come the chip be registered at the right address and still not get detected? Would it be possible that somewhere in the PCIe to PCI connection the card is losing the ability to send or receive data through the FM port?

Also, considering that the kernel does load the gameport without a problem, it seems like there's something else going on... Any other ideas that I could try? Would a PC/PCI connector help in this case?

Thanks everyone in advance.

As far as i know, PCIe doesn't support any legacy ports(it supports only >=portbase) and ymf724 doesn't support FM on PCI range(althought 744, 754 support custom FM port, according to linux sources). So it is impossible to get FM working on PCIe or PCIe to PCI bridge slot.

Reply 19 of 486, by bootlogger

User metadata
Rank Newbie
Rank
Newbie
khokh2001 wrote:

As far as i know, PCIe doesn't support any legacy ports(it supports only >=portbase) and ymf724 doesn't support FM on PCI range(althought 744, 754 support custom FM port, according to linux sources). So it is impossible to get FM working on PCIe or PCIe to PCI bridge slot.

Thanks for clarifying that!

Now, when you say "ymf724 doesn't support FM on PCI range" did you mean "PCIe range", right? Otherwise it would mean that the ymf724 doesn't support its included FM chip even on a regular PCI slot!