VOGONS


SBEMU: Sound Blaster emulation on AC97

Topic actions

Reply 1220 of 1632, by thp

User metadata
Rank Member
Rank
Member
zyzzle wrote on 2024-03-29, 01:35:

So, it's because the "geometric mean" of two inputs is limiting the effective output to ~50% of max when both OPL and PCM audio is emulated. Not sure if one can disable one or the other for increase in volume, but Japheth replied that the mixer still runs in the background emitting silence....

Why not just sum up the signals as 32-bit signed (and clip to 16-bit signed range afterwards) and let the user set midivol and voicevol to suitable values?

If clipping is an issue, just add some automatic gain control (start out with full, but reduce the factor if clipping (nearly) occurs, back up slowly when the mixed signal isn't close to the clipping point). Depending on the content, it might make sense to allow PCM and OPL to be amplified beyond 100% if the input signals are already low.

Reply 1221 of 1632, by crazii

User metadata
Rank Oldbie
Rank
Oldbie
zyzzle wrote on 2024-03-25, 23:02:
There is a new version of VSBHDA out which now supports 16-bit protected mode games. I successfully tested it on Jazz Jackrabbit […]
Show full quote

There is a new version of VSBHDA out which now supports 16-bit protected mode games. I successfully tested it on Jazz Jackrabbit and Tyrian 2k on an i5 8th gen Dell laptop with Intel HDA . Thanks to Baron von Riedesel's spectacular efforts, the sound is working and we have another hurdle overcome on getting DOS sound working baremetal on "modern" HDA cards. This is the link:
https://github.com/Baron-von-Riedesel/VSBHDA/ … e1/vsbhda14.zip

crossposted from DOS Aint dead forum.

Test some 16-bit protected mode games and report here if they're working. Most of the Webfoot DOS games also used 16-bit protected mode.

Funny coincidence that I'm trying to make tyrian and jazz work. but by making a new DPMI server, which works for 16 bit and 32 clients at the same time.
now both of them works with the new DPMI server along with some dos4g games I tested, but I'm not ready to add port trapping support to it yet( - or not at all, but directly go to the driver framework with a big leap), needs more stabilizing.

RayeR wrote on 2024-03-28, 13:48:

Yes, new univbe would be nice. But there's problem that newer (at least nvidia) GPU abandoned full VGA compatabity at IO registers level so it would need more than just a new VBE implementation but also some port trapping and emulation. Problem is that modern GPUs are magnitudes more complex and less documented than HDA standard 🙁

That's one of the reasons why I wrote yet another DPMI server (or not just a DPMI server but a supervisor/vm), which is planned to has driver support, not using vendor api to add port trapping, but builtin loadable drivers like VXD, i.e. video driver that features VBE to v86 and pm. it's hard but the opensource drivers can be ported. my initial intention is to emulate a 4:3 aspect ratio for my widescreen laptop.

And the ultimate form of sbemu will be a single driver for it and also works for win9x. 😁
but that's too huge and remains merely an idea yet. for now I've only added a little bit VBE2.0 emulation so that warcraft2 can work on my T540p, which lacks some VBE2.0 interface and causes war2 crash.

The initial idea of this DPMI is to improve compatibility and fixes freezes for SBEMU, because SETPVI just invalidate CLI/STI and may cause problem if HWINT & program access the same IO port at the same time. so I want try some ideas but with my crippled assembly skill I'm not able to do that efficiently. the new code is written in C and I feels more free to do whatever I want.

Toshiba Satellite Pro 4300 - YMF744, Savage IX
Toshiba Satellite 2805-S501 - YMF754, GeForce 2Go
IBM Thinkpad A21p - CS4624, Mobility Radeon 128
main: Intel NUC11PHKi7C Phantom Canyon: i7-1165G7 RTX2060 64G 2T760PSDD

Reply 1222 of 1632, by crazii

User metadata
Rank Oldbie
Rank
Oldbie
darry wrote on 2024-03-28, 14:06:

That being said, if we keep going in that kind of direction, while we may still be running DOS on baremetal, with increasing tmemulation of I/O perioherals (sound, video and probably others), a retro focused virtual machine might start looking more practical while still being close to baremetal CPU performance.

Cannot agree more. 😁

Toshiba Satellite Pro 4300 - YMF744, Savage IX
Toshiba Satellite 2805-S501 - YMF754, GeForce 2Go
IBM Thinkpad A21p - CS4624, Mobility Radeon 128
main: Intel NUC11PHKi7C Phantom Canyon: i7-1165G7 RTX2060 64G 2T760PSDD

Reply 1223 of 1632, by RayeR

User metadata
Rank Oldbie
Rank
Oldbie
crazii wrote on 2024-04-04, 18:18:

That's one of the reasons why I wrote yet another DPMI server (or not just a DPMI server but a supervisor/vm), which is planned to has driver support, not using vendor api to add port trapping, but builtin loadable drivers like VXD, i.e. video driver that features VBE to v86 and pm. it's hard but the opensource drivers can be ported. my initial intention is to emulate a 4:3 aspect ratio for my widescreen laptop.

Cool but does it really worth put extra effort on writting it from a scratch? Why not reuse most code of HDPMI or CWSDPMI and JEMMEX? I think they are quite mature, I use JEMMEX as default in my DOS setup. And JEMMEX already supports JLMs - loadable modules - but there are not many...
BTW older nvidia VBIOS supported a feature to disable the scaller so you could get 1:1 image without stretching but then it's small in low res, maybe you already found my little util: http://rayer.g6.cz/programm/programe.htm#NVSC but recent nvidia VBE removed it...

crazii wrote on 2024-04-04, 18:18:

for now I've only added a little bit VBE2.0 emulation so that warcraft2 can work on my T540p, which lacks some VBE2.0 interface and causes war2 crash.

What VBE functions you added? I see that T540P has GeForce GT730M, it's still fully VGA compatible but has some VBE bugs that are known and was workarounded by Falcosoft and then it works well or is it some another VBE bug? NVIDIA Kepler/Maxwell/Pascal VESA Bios Bug (workaround found)

BTW any comment to this?
Re: SBEMU: Sound Blaster emulation on AC97
How/why mixing is done this way and why there's such output volume difference between VSBHDA and SBEMU?

Gigabyte GA-P67-DS3-B3, Core i7-2600K @4,5GHz, 8GB DDR3, 128GB SSD, GTX970(GF7900GT), SB Audigy + YMF724F + DreamBlaster combo + LPC2ISA

Reply 1224 of 1632, by Falcosoft

User metadata
Rank l33t
Rank
l33t
RayeR wrote on 2024-04-04, 19:34:

BTW older nvidia VBIOS supported a feature to disable the scaller so you could get 1:1 image without stretching but then it's small in low res, maybe you already found my little util: http://rayer.g6.cz/programm/programe.htm#NVSC but recent nvidia VBE removed it...

I do not know what Nvidia generation is the last one that supports NVSC but I can confirm that it still works on Maxwell II / GTX 960.

Website, Facebook, Youtube
Falcosoft Soundfont Midi Player + Munt VSTi + BassMidi VSTi
VST Midi Driver Midi Mapper

Reply 1225 of 1632, by RayeR

User metadata
Rank Oldbie
Rank
Oldbie

Yes, I tried myself but didn't get in hands anything newer. Working laptop has mobile RTX2000 but it's UEFI only machine, no longer possible boot DOS on it. 🙁

Gigabyte GA-P67-DS3-B3, Core i7-2600K @4,5GHz, 8GB DDR3, 128GB SSD, GTX970(GF7900GT), SB Audigy + YMF724F + DreamBlaster combo + LPC2ISA

Reply 1226 of 1632, by crazii

User metadata
Rank Oldbie
Rank
Oldbie
RayeR wrote on 2024-04-04, 19:34:

Cool but does it really worth put extra effort on writting it from a scratch? Why not reuse most code of HDPMI or CWSDPMI and JEMMEX? I think they are quite mature, I use JEMMEX as default in my DOS setup. And JEMMEX already supports JLMs - loadable modules - but there are not many...

Now that you mentioned, while loadable modules is not a big problem while the problem is writing everything from scratch. I don't want face the same situation that when I need extra big changes on the code but the assembly codes drives my crazy shit out. which is also true for JEMMEX's loadable modules. If a VXD compatible loading is needed I guess there might be huge changes and I'm not able to modify the code in assembly. It's possible that CWSDPMI is used but the effort of being fully able to modify it is no easy than writing a new one, based on the experience with HDPMI.

RayeR wrote on 2024-04-04, 19:34:

What VBE functions you added? I see that T540P has GeForce GT730M, it's still fully VGA compatible but has some VBE bugs that are known and was workarounded by Falcosoft and then it works well or is it some another VBE bug? NVIDIA Kepler/Maxwell/Pascal VESA Bios Bug (workaround found)

I added the VBE2.0 PM interface (4F0Ah) which is absent on my laptop. I found it when I debug warcraft2 crash. But it's not a bug as the VBE3.0 spec notes that 4F0A becomes optional on VBE3.0+.
EDIT: it might not be the problem of missing 4F0Ah but just a workaround for it. war2 will use real mode calls when it found 4F0Ah is missing, but it crashes right after calling 4F09(get/set palette) from real mode. with 4F0A present it doesn't call real mode 4F09 at all but using the PM interface. but the PM interface added just call 4F05/4F07/4F09 in real mode, nothing else. seems war2 doesn't use 4F07 at all.

RayeR wrote on 2024-04-04, 19:34:

BTW any comment to this?
Re: SBEMU: Sound Blaster emulation on AC97
How/why mixing is done this way and why there's such output volume difference between VSBHDA and SBEMU?

I didn't checked the code yet, but first I need to confirm if the volume is now for all cards, if yes then it's probably needs adjusted. otherwise I'll dig the audigy driver first to see if there's any misconfigs on mixer registers.

Toshiba Satellite Pro 4300 - YMF744, Savage IX
Toshiba Satellite 2805-S501 - YMF754, GeForce 2Go
IBM Thinkpad A21p - CS4624, Mobility Radeon 128
main: Intel NUC11PHKi7C Phantom Canyon: i7-1165G7 RTX2060 64G 2T760PSDD

Reply 1227 of 1632, by RayeR

User metadata
Rank Oldbie
Rank
Oldbie

Oh I understand, I'm also poor in reading huge ASM projects and rather write in C.
The CWSDPMI is written in Borland C probably with some inline ASM code.

SBEMU sound output level is just fine on SB Audigy but on VSBHDA is a magnitude or so lower. It was explained it's due to mixing code.
BTW I see that new version of SBEMU supports also YMF7xx cards. I tested on my YMF724. Do you think it would be possible to use hardware MPU401 UART on this card to pass through MIDI data via gameport? I have a Dreamblaster attached there and it would be nice to hear true MIDI music insteaf of FM synth. With original Yamaha drivers it is possible (I mix the dreamblaster output back via line in).

Gigabyte GA-P67-DS3-B3, Core i7-2600K @4,5GHz, 8GB DDR3, 128GB SSD, GTX970(GF7900GT), SB Audigy + YMF724F + DreamBlaster combo + LPC2ISA

Reply 1228 of 1632, by digger

User metadata
Rank Oldbie
Rank
Oldbie
RayeR wrote on 2024-04-04, 22:51:

Yes, I tried myself but didn't get in hands anything newer. Working laptop has mobile RTX2000 but it's UEFI only machine, no longer possible boot DOS on it. 🙁

Are any of you by any chance familiar with TK Chia's muefircate project, formerly known as "biefircate"?

That project is intended to solve this exact problem: booting 32-bit or even 16-bit real mode code from a 64-bit UEFI system, even one that lacks a CSM.

Perhaps some of you with the necessary skills could contribute to that project as well? It might provide the necessary puzzle piece to keep native DOS alive on newer x86 systems, at least until x86s CPUs become commonplace.

Reply 1229 of 1632, by ludicrous_peridot

User metadata
Rank Member
Rank
Member

Sorry if it appears I am spamming (as I've asked about similar topic in the card specific thread already), but would YMF7xx cards support also mean ability to control via AC97 interface the state of the input/output lines?
I am curious if unmuting certain input line would be possible using SBEMU directly or by modifying its code, for a reason similar to what @dr.zeissler was asking a few years ago.
I am of course going to try and see myself, but also wanted to hear what the developer and more experienced members think...

EDIT: to partially answer my own question - yes, SBEMU buuld from March 1st unmutes at least CD audio in when initializing YMF, which is awesome, and I am going to use that as a starting point to see if digital in could be unmuted instead.

Also @RayeR, I was able to get external MIDI working with my YMF744 by simply dropping in the March 1st build in place of the one I was using before. The previous one was redirecting digital sound to Intel HD Audio, the new one selects YMF by default, but with both I got MIDI music out of my Buran in Dune 2 and digital sound out of the respective card.

GA-G41M-Combo G41/ICH7 - Core 2 Quad Q9550 - DDR3 1033 - Radeon RX570 - YMF744 (Cobra) - X3MB (Buran)
Beetle/M/i815+ICH2 - Celeron 566Mhz - Opti 924 (Typhoon Media)

Reply 1230 of 1632, by vanfanel

User metadata
Rank Newbie
Rank
Newbie

How do you get Jazz Jackrabbit running with JEMMEX?
I always get:

Loader error (0025): cannot initialize

It's been said on this thread that the game works with VSBHDA, but I can't get it to work.
Other protected mode games like Doom, etc work fine, with sound and all.

Reply 1231 of 1632, by ludicrous_peridot

User metadata
Rank Member
Rank
Member

A quick update on the YMF topic I raised above - looking at the driver code I was able to locate the bit that enables Digital in. Was in DSXG proprietary register, not standard AC97. Many thanks to @crazii and contributors for doing all the hard work 😀

GA-G41M-Combo G41/ICH7 - Core 2 Quad Q9550 - DDR3 1033 - Radeon RX570 - YMF744 (Cobra) - X3MB (Buran)
Beetle/M/i815+ICH2 - Celeron 566Mhz - Opti 924 (Typhoon Media)

Reply 1232 of 1632, by Bondi

User metadata
Rank Oldbie
Rank
Oldbie
vanfanel wrote on 2024-04-05, 14:35:
How do you get Jazz Jackrabbit running with JEMMEX? I always get: […]
Show full quote

How do you get Jazz Jackrabbit running with JEMMEX?
I always get:

Loader error (0025): cannot initialize

It's been said on this thread that the game works with VSBHDA, but I can't get it to work.
Other protected mode games like Doom, etc work fine, with sound and all.

Do you run the special 16 bit version of the VSBHDA?
Re: SBEMU: Sound Blaster emulation on AC97

PCMCIA Sound Cards chart
archive.org: PCMCIA software, manuals, drivers

Reply 1233 of 1632, by crazii

User metadata
Rank Oldbie
Rank
Oldbie
RayeR wrote on 2024-04-05, 04:21:

Oh I understand, I'm also poor in reading huge ASM projects and rather write in C.
The CWSDPMI is written in Borland C probably with some inline ASM code.

Yes. but there're some problems that CWSDPMI is skipped: it doesn't load itself to himem so not suitable for TSRs, as it will leave about 200K in conventional memory when the pm client TSRed, making a lot of real mode games unable to run. and it uses 16 bit compiler that is not optimized for 32bit CPU. besides Borland C it not a well optimized compiler and also obsoleted, and should be avoid as a main toolchain, as @digger suggested in another thread.
The new DPMI is built with openwatcom, which generates much more optimized code and in opensource maintenance. porting CWSDPMI to watcom is another option but still need critical modification. while I'm using the part of code from USBDDOS which has a local DPMI with core functions implemented, i.e. loading to himem, modeswtiches, exception handling, so technically speaking it's not everything from scratch.

RayeR wrote on 2024-04-05, 04:21:

SBEMU sound output level is just fine on SB Audigy but on VSBHDA is a magnitude or so lower. It was explained it's due to mixing code.
BTW I see that new version of SBEMU supports also YMF7xx cards. I tested on my YMF724. Do you think it would be possible to use hardware MPU401 UART on this card to pass through MIDI data via gameport? I have a Dreamblaster attached there and it would be nice to hear true MIDI music insteaf of FM synth. With original Yamaha drivers it is possible (I mix the dreamblaster output back via line in).

I'll turn to SBEMU very soon and check the mixing code. I believe the feature you mentioned is implemented, although I haven't tested yet. It is contributed by @jiyunomegami among other features, i.e. MPU401; HW FM instead of emulated OPL if the sound card has an opl3/compatible chip (YMF, C-Media). shame on me that I never made any time to test those features while I have some pieces of YMF cards, 🤣.
but don't worry, the beta4 is planned to be released with a detailed changelog, and all the credits.

Last edited by crazii on 2024-04-07, 04:51. Edited 1 time in total.

Toshiba Satellite Pro 4300 - YMF744, Savage IX
Toshiba Satellite 2805-S501 - YMF754, GeForce 2Go
IBM Thinkpad A21p - CS4624, Mobility Radeon 128
main: Intel NUC11PHKi7C Phantom Canyon: i7-1165G7 RTX2060 64G 2T760PSDD

Reply 1234 of 1632, by crazii

User metadata
Rank Oldbie
Rank
Oldbie
ludicrous_peridot wrote on 2024-04-05, 17:18:

A quick update on the YMF topic I raised above - looking at the driver code I was able to locate the bit that enables Digital in. Was in DSXG proprietary register, not standard AC97. Many thanks to @crazii and contributors for doing all the hard work 😀

Don't thank me, thank @jiyunomegami who presents the YMF support, while I have no knowledge of that card's driver at all 😁, if you have any further questions you can ask him directly.

Toshiba Satellite Pro 4300 - YMF744, Savage IX
Toshiba Satellite 2805-S501 - YMF754, GeForce 2Go
IBM Thinkpad A21p - CS4624, Mobility Radeon 128
main: Intel NUC11PHKi7C Phantom Canyon: i7-1165G7 RTX2060 64G 2T760PSDD

Reply 1235 of 1632, by RayeR

User metadata
Rank Oldbie
Rank
Oldbie
crazii wrote on 2024-04-07, 04:35:

The new DPMI is built with openwatcom, which generates much more optimized code and in opensource maintenance. porting CWSDPMI to watcom is another option but still need critical modification. while I'm using the part of code from USBDDOS which has a local DPMI with core functions implemented, i.e. loading to himem, modeswtiches, exception handling, so technically speaking it's not everything from scratch.

I think that time-critical routines in CWSDPMI are written in ASM so probably 16-bit compiler doesn't hurt too much. But sure here are newer better compilers like OW or GCCIA16 for 16b code... CWSDMPI was probably the one that implemented paging-virtual memory but it lost importance on new machines with Gigs of RAM 😀 You are right about consuming a lot of low mem (that didn't affect DJGPP programs which loads and unloads CWSDPMI on the fly).
BTW there's also DPMIONE 0.91 with sources freely available but it's pure ASM.
BTW2 The Yamaha DSDMA.EXE also has embedded DPMI server (that I curiously discovered) and probably it does very similar like SBEMU but unfortunatelly it's closed source.
So you started with DPMI code from USBDDOS - I didn't know it has anything to do with DPMI, OK why not...

I'm forward to test new YMF MPU401 code 😀

EDIT:
Oh, wait! USBDDOS has nothing to do with DOSUSB by Georg Potthast or DOS USB Drivers by Bret Johnson DOS
This similar names are a bit confusing, now I can see that USBDDOS is on your github - some new project that I didn't read about yet! So I have to try if it would work with my onboard USB 2.0 EHCI (my MB don't implement older host ctrl) - unfortunatelly Bret's driverd didn't work for me... So from where that DPMI server came?

EDIT2:
Unfortunatelly USBDDOS(P) just hangs on my system, I write about it in DOS driver for RetroWave OPL3 thread

Gigabyte GA-P67-DS3-B3, Core i7-2600K @4,5GHz, 8GB DDR3, 128GB SSD, GTX970(GF7900GT), SB Audigy + YMF724F + DreamBlaster combo + LPC2ISA

Reply 1236 of 1632, by crazii

User metadata
Rank Oldbie
Rank
Oldbie

DPMIONE (besides HDPMI,CWSDPMI) is checked before SBEMU exist, so it's skipped this time because of pure asm.

Yes, USBDDOS is currently an unusable piece (of s**t) yet and I got to get more time to improve it 🤣.

Toshiba Satellite Pro 4300 - YMF744, Savage IX
Toshiba Satellite 2805-S501 - YMF754, GeForce 2Go
IBM Thinkpad A21p - CS4624, Mobility Radeon 128
main: Intel NUC11PHKi7C Phantom Canyon: i7-1165G7 RTX2060 64G 2T760PSDD

Reply 1237 of 1632, by MAZter

User metadata
Rank Oldbie
Rank
Oldbie

Tested SBEMU with Asus L7300/L7200 AC'97 notebook:

Works fine:
Aladdin, Blake Stone, Prince of Persia, Another World, Carmageddon, Commando enhanced 1.5, Crash, Civilization, Dark Forces, Destruction Derby, Dune 2, Goblins 2, Golden Axe, Grand Prix Unlimited, GTA, Hi Octane, Indycar 2, Michael Jordan in flight, The Need For Speed SE, Lion King

Issues:
Cannon Fodder 1,2: error initialising Soundblaster card
Doom2D: no sound
Grand Prix 2: SB16 mode not working, SB Pro only
Brett Hull Hockey'95: no sound, no music
Jurassic Park: noises instead of sounds, no music
Network Q RAC Rally Championship: crashes on startup
Screamer: black screen at startup

Tested Toshiba Satellite 5005-S504 with GeForce 2Go & Yamaha YMF753 (AC-XG):

Works fine:
GTA , Another World, Carmageddon, Dark Forces, Destruction Derby, Doom 2, Duke 3D, Golden Axe, Grand Prix 2, Grand Prix Unlimited, Indycar, Whiplash, Wolf 3D, TFX

Issues:
Alladdin: hangs, black screen on startup, or start with no audio and hangs at level loading screen
Doom2D: no sound
Hi Octane: sound stutters
Brett Hull Hockey'95: no sound, no music
Warcraft 2: sound stutters, music works
Screemer: setup passed successfully, but game hangs at start

Is it possible, to add CS4281 or Ali M1621 ALADDiN-Pro 2 audio chips support as well to SBEMU?

[*]2023-10-03 IDT HDA HP Mini 110 by Panties Re: SBEMU: Sound Blaster emulation on AC97

Using native MSDOS (not FreeDos) with this Intel HD audio at HP Mini 110 can't make anything works no matter what parameters I change, some programs hangs immediately after sbemu was loaded, if I change configs, programs loads and even setblast program see SB card, but I can't hear any sound. Same result with FreeDos. Model: HP Mini 110-1025DX

Last edited by MAZter on 2024-04-14, 01:03. Edited 14 times in total.

Doom is what you want (c) MAZter

Reply 1238 of 1632, by eM-!3

User metadata
Rank Newbie
Rank
Newbie

One year later. Still Termtek TK-3770: Re: SBEMU: Sound Blaster emulation on AC97 Doom, Duke3D and History Line all work now as they probably did year ago but I didn't troubleshoot it back then. Most games work without any issues. Quality of sound is improved. Great work crazii! There were few games that didn't work:

  • Screamer - some noise out of speakers and then hangs.
  • FastDoom - 800x600 resolution. Works fine with default resolution.
  • Hexen - well, sbemu works and there is a sound on a start screen but jemmex hangs. There are reports in this thread that Hexen works fine with sbemu.
  • Absolute Pinball - hangs on "Loading" screen.
  • Harpoon 2 - game runs without sound.
  • Populous 2 - hangs on "Loading data." text info.
  • Links 386 Pro - runs without sound.
  • Virtual Pool - hangs. jemmex?
  • Master of Magic - sbemu works, there's a sound but after Simtex logo jemmex causes problems with blank screen instead of a menu.

Additional notes:

  • My sbemu setup: sbemu /i5 /t4 /opl1 /k44100 & SET BLASTER=A220 I5 D1 H5 T4
  • Guy from Philscomputerlab youtube channel reported Lotus 3 as not working due to divide by 0 error. I think I have a modified exe or a different version and it works fine.
  • Some games don't like dos32a.exe and I use it a lot in batch files to run games. Many times I had to change it to dos4g.exe.
  • Iron Cross - I had to change speech device in game setup from SB Pro to SB 16/32. Without it game didn't work.
  • Capitalism Plus - had to add X=TEST to jemm386 settings.
  • D-Day - America Invades - to get it working I had to use "jemm386 NOVCPI" before running a game.
  • Tried sbemu with Yamaha YMF744. I hoped it would allow me to play Dune 2 with speech as AC97 has speech but in the end speech was missing. Only advantage from using sbemu YMF744 combo that I was able to spot in short test was ability to play music in MPXPLAY in a mode that sounds better than SB Pro. In games I don't use better SB 16 or AWE so no other checks were made.

Reply 1239 of 1632, by Demolition-Man

User metadata
Rank Member
Rank
Member

Hexen - well, sbemu works and there is a sound on a start screen but jemmex hangs. There are reports in this thread that Hexen works fine with sbemu.

Hexen has the same engine as Doom 1 & 2? So it should run? Works for me.
I have no options on sbemu whatsoever.

My older Socket A PC has now gotten a different board, and now also a normal ISA sound card. I only test with the T5710 ThinClient, which is not optimal for this.
That means I have my own problem games, it doesn't have to have anything to do with sbemu.

I hoped it would allow me to play Dune 2 with speech as AC97 has speech but in the end speech was missing.

Enough free ram? 600k + 1MB XMS?