crazii / SBEMU

legacy sound blaster emulation for DOS
GNU General Public License v2.0
620 stars 33 forks source link

Enable all output cards #59

Open Torinde opened 10 months ago

Torinde commented 10 months ago

It seems currently some of the output cards code is not compiled-in. I think it's good to enable those, at least for user testing:

If feasible to provide emulated card to Windows, will be useful when SBEMU gets more features such as MIDI, PC Speaker, AWE to have:

crazii commented 10 months ago

SBEMU won't work on any windows system by its nature - windows has its own DPMI host and it have no port trapping, and windows won't launch if there's a DPMI installed under DOS (e.g. HDPMI32i), and there's no need to 'emulate a sound blaster card on a sound blaster card', I think we'll pass all ISA cards since ISA machine usually have SB cards and SBEMU may not run on a ISA machine due to it's CPU power.

There're 2 card that need to be added for sure, sc_sbxfi and sc_ess, since ESS have some crappy OPL support AFTER ES1938/1946 (s) (ESS Solo-1), namely the crappy ESS allegro/maestro cards.

Torinde commented 10 months ago

I think we'll pass all ISA cards since ISA machine usually have SB cards

In general yes, although:

crazii commented 10 months ago

Yes it could be done in the long term, but GUS/Covox emu over SB is not so much needed (couple of decades have passed, few people own ISA machines now, and even fewer of them want a GUS emu, and I doubt few people wanted a GUS emu even decades ago), let's focus on the legacy emu over PCI sound card for now.

The best step is to make a stable GUS/Covox emu over PCI cards first, and then it would be easier to add ISA cards support. Otherwise new codes of GUS emu + untested ISA drivers would make it extremely hard to debugging, (or maybe to debug the ISA drivers first, using the 'SB emu over SB' to test the ISA drivers). Besides, based on the modification of Mpxplay PCI drivers, I don't think it be that easy to enable ISA drives and make them work.

Torinde commented 10 months ago

Agree almost fully.

Besides enabling the PCI cards, the only other combination I personally see relevant is SBEMU over SB16 in VirtualBox.

Do you know what's the purpose of the MIDAS and WAV drivers? For WINDS and WINWO I assume they're used in Windows versions of Mpxplay, so irrelevant for SBEMU?

Torinde commented 7 months ago

Enabling Sound blaster drivers may also help to isolate an issue from https://github.com/Baron-von-Riedesel/VSBHDA/issues/8#issuecomment-2039240514:

No. It reminds me of the "FPU problem" and also that vsbhda still keeps silent in VBox with ICH9.

I haven't tested yet SBEMU with HDA in Virtualbox, but it would be good if it can be tested also with SB - to check if the problem is HDA specific or not.