VOGONS


Reply 220 of 406, by zyzzle

User metadata
Rank Member
Rank
Member

crazii,
I can report success with SBEMU! It is wonderful. I have a few questions, and although it works, it seems very finicky, giving lots of exceptions, divide by zero, and / or system freezes. But, most importantly it works on the three new core i5 and i7 systems I've tested it on so far: two Broadwell chipsets with Intel HDA PCI audio: Intel i5-5300, i5-5600, and one i5-8250u Kaby Lake with Intel IHD audio (but the SBEMU program detects the card as Intel HDA.)

First off, I only get sound out of my laptop's headphone jack. Not out of the Internal speakers. Is there an option to switch between the two using SBEMU, as there is in MpxPlay, which has the -scc 0, and -scc 1, and -scs options. This is a major limitation since it means I must connect headphones, and can't use Internal speaker for the sound.

I also had to manually SET BLASTER=A220 I7 D1.

And the emulated Sound Blaster card only detects as an SB Pro Card, and gives stereo 8-bit samples up to 22.05 Khz. I also got it to output up to 8-bit 44.1 Khz in mono using Dual Module Player v.3.01 in real mode.

Is there a way to get SBEMU to emulate and detect fully as an SB16? Ie, 16-bit 44.1 stereo sample output? I tried to tweak SET BLASTER=A220 I7 D1 H5 T6 but this did not change detection in the MODule players. It's been over 25 years since I tweaked with Sound Blaster settings, so perhaps I've misremembered how to tell DOS there's a 16-bit Sound Blaster in the system through this environment variable setting. I tried (DOS versions of DMP, MikMod v. 3.2.9, OpenMPT123). The following games I tested and worked, although sometimes would crash randomly:
Doom v. 1.9
Wolfenstein 3D v 1.4
Raptor: Call of the Shadows
Stargunner
Descent
Quake 1
Quake 2 for DOS

The following games detected the Sound Blaster Card in setup, and sound could be successfully heard in the setup programs, but upon running the game executables either froze or had no sound output:
Need For Speed SE (no sound, but ran)
Screamer 1 and Screamer 2 (froze upon running with both DOS4GW extender, and DOS32A stubbed, setup program fine with sound)
Tyrian 2000 -- Gives error upon running executable and doesn't detect sound, but will detect music)

I'm still testing.

Also, very strangely, the Kaby Lake system I referenced above: MPXplay v. 1.66 itself will not work at all, even with its "native" PCI soundcard detection, even with -scs 1 and -scc options. It claims to detect IHD but there's no sound, can't seek between files, etc. However, *your* SBEMU program works *wonderfully* and gloriously while MpxPlay doesn't! That's very strange, considering your code is based upon MpxPlay's PCI detection code! Possible explanations?

Over at Dos Ain't Dead forum, Candyman reports that "In addition, the consequence of installing SBEMU is that IRQ interrupts in 32-bit programs that use dos extenders do not work and terminate." I can confirm this behavior. As well as many quirky exceptions, freezes, and system erratic behavior, such as "Unable to load Command.com" after quitting programs (both CWSDPMI-extender and DOS4gw Extender) and real-mode MODule players. There some sort of memory / IRQ corruption happening, but in the main, these problems aren't too annoying considering I've got GREAT sound and music coming out of "new" Intel core systems.

As this is a work in progress, please let me know if there's any more testing I can do, or anything you want me to try, or other feedback which may help you work out some of the bugs and / or erratic behavior.

Congratulations and thanks for releasing one of the BEST tweaks / wrappers ever done in DOS. They though it couldn't be done, but you've managed it!

Reply 221 of 406, by zyzzle

User metadata
Rank Member
Rank
Member
georgel wrote on 2023-02-16, 12:28:

Try doom with dos32a then. Are you sure the ess solo-1 is not using any resident software to emulate SB? I have such card and can test it too after a day or two.

I got Doom with DOS32a working with sound.

I also got full sound and music out of Duke Nukem. 8-bit only, and I think its audio samples are internally only 8-bit 11.025 Khz. Same with Doom. I could not get 16-bit audio out of SBEMU, only 8-bit stereo up to 22.05 khz (ie, SB Pro, DSP v. 3.02).

One more point: It's not possible to set MTRR VGA writeback caching with RayeR's excellent MTRRLFBE and / or Fastvid programs. EMS memory page frame appears interfering, with EMS memory. So, VESA graphics, work, but are very slow due to the writecombining caching being unable to be activated.

How to enable MTRR's if possible, with SBEMU running?

Reply 222 of 406, by crazii

User metadata
Rank Oldbie
Rank
Oldbie
digger wrote on 2023-02-19, 13:18:
Excellent progress you continue to make, crazii! :rocket: […]
Show full quote

Excellent progress you continue to make, crazii! 🚀

I do have one concern, though: you are using sources from the Mpxplay project for the backend drivers. But those sources have not been released under an OSI-approved license, making the terms of use a bit unclear.

These comments at the top of the source files are particularly concerning:

//*  Please contact with the author (with me) if you want to use           *
//* or modify this source. *

Also, this could potentially complicate things like eventually having the SBEMU project admitted into the FreeDOS distribution. (I'm not sure if that's your ambition, but I think that would be very useful for the retro DOS community!)

At the very least, to "shield off" your own hard work, is there a sufficiently decoupled abstraction layer between your own code and the Mpxplay drivers, so that those driver sources could be swapped out for something else with relatively little effort later if need be? As a bonus, that would make is easier to add additional backend drivers later as well.

Possible open-source replacements you could consider would be the Apogee Sound System and JUDAS. (The FastDoom project has also adopted these drivers.)

But if I may also make a somewhat more ambitious suggestion: dust off the protected mode AIL/32 drivers, which John Miles released as open source years ago. These are modular drivers in the form of DLLs, and I've already been wanting to try implementing AIL/32 drivers for more modern sound devices.

We could make SBEMU more modular by allowing the user to select an AIL/32 driver DLL for SBEMU to load and route the audio to. That way, other people (such as hopefully myself) could assist you by focusing on the backend drivers, while you focus on getting the actual emulation code right.

Just an idea. 🙂

That, or maybe we should just port OSS to DOS. 😁

But even if you don't like these suggestions, I would still recommend we either try to convince the Mpxplay author to release their drivers under a proper open source license, or otherwise look for an alternative driver model/framework to use on the hardware backend.

I think JUDAS might be an alternative. But first I think I'd contact the author of MPXPlay to clarify the license.

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 223 of 406, by crazii

User metadata
Rank Oldbie
Rank
Oldbie
zyzzle wrote on 2023-02-20, 02:23:

crazii,
But, most importantly it works on the three new core i5 and i7 systems I've tested it on so far: two Broadwell chipsets with Intel HDA PCI audio: Intel i5-5300, i5-5600, and one i5-8250u Kaby Lake with Intel IHD audio (but the SBEMU program detects the card as Intel HDA.)

Intel IHD audio = Intel High defection audio = Intel HDA? I thought they were the same thing. 😁

zyzzle wrote on 2023-02-20, 02:23:

crazii,
First off, I only get sound out of my laptop's headphone jack. Not out of the Internal speakers. Is there an option to switch between the two using SBEMU, as there is in MpxPlay, which has the -scc 0, and -scc 1, and -scs options. This is a major limitation since it means I must connect headphones, and can't use Internal speaker for the sound.

This problem is mentioned before, I think I'll dig it more. I was planning to add a config file used on startup.

zyzzle wrote on 2023-02-20, 02:23:

I also had to manually SET BLASTER=A220 I7 D1.

The idea is to set BLASTER i.e. =A220 I5 D1 before SBEMU startup, and SBEMU will use it, still it can be override by /A /I /D command line options (use /? to see more), if BLASTER is override by command line, or there's no BLASTER env variable set, SBEMU should probably create/update the BLASTER variable, that part is not done yet. it seems easy but need extra code since the DJGPP library function setenv() is not working globally.

zyzzle wrote on 2023-02-20, 02:23:

And the emulated Sound Blaster card only detects as an SB Pro Card, and gives stereo 8-bit samples up to 22.05 Khz. I also got it to output up to 8-bit 44.1 Khz in mono using Dual Module Player v.3.01 in real mode.
Is there a way to get SBEMU to emulate and detect fully as an SB16? Ie, 16-bit 44.1 stereo sample output?

Currently only SBpro supported, sb16 not tested yet. the internal samples format used are 22050Hz, 16bit , stereo. the sample rate is hard coded. 44.1kHz may cause a downsample. I think it is possible(also initially planned) to add a full SB16 support, but only after the emulation is stable enough?

zyzzle wrote on 2023-02-20, 02:23:

Also, very strangely, the Kaby Lake system I referenced above: MPXplay v. 1.66 itself will not work at all, even with its "native" PCI soundcard detection, even with -scs 1 and -scc options. It claims to detect IHD but there's no sound, can't seek between files, etc. However, *your* SBEMU program works *wonderfully* and gloriously while MpxPlay doesn't! That's very strange, considering your code is based upon MpxPlay's PCI detection code! Possible explanations?

This one was probably discussed before: Re: Possibility to write OPL3 sound driver for protected mode games

zyzzle wrote on 2023-02-20, 02:23:

Over at Dos Ain't Dead forum, Candyman reports that "In addition, the consequence of installing SBEMU is that IRQ interrupts in 32-bit programs that use dos extenders do not work and terminate." I can confirm this behavior. As well as many quirky exceptions, freezes, and system erratic behavior, such as "Unable to load Command.com" after quitting programs (both CWSDPMI-extender and DOS4gw Extender) and real-mode MODule players. There some sort of memory / IRQ corruption happening, but in the main, these problems aren't too annoying considering I've got GREAT sound and music coming out of "new" Intel core systems.

I think it is related to the previously discussed "transfer stack overflow" for DOOM, can you clarify on what IRQ was causing the problem? I think I can use the hack for doom to hack all of them, no matter what IRQ is. currently I only added the sound card IRQ (10/11). I also encountered the problem with IRQ4 in VirtualBox.

Last edited by crazii on 2023-02-20, 09:38. 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 224 of 406, by crazii

User metadata
Rank Oldbie
Rank
Oldbie
zyzzle wrote on 2023-02-20, 02:34:

One more point: It's not possible to set MTRR VGA writeback caching with RayeR's excellent MTRRLFBE and / or Fastvid programs. EMS memory page frame appears interfering, with EMS memory. So, VESA graphics, work, but are very slow due to the writecombining caching being unable to be activated.
How to enable MTRR's if possible, with SBEMU running?

I've no idea what's happing 🤣, I didn't use EMS at all, but only XMS for sound card driver's buffers. It might need more investigation.

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 225 of 406, by georgel

User metadata
Rank Member
Rank
Member
crazii wrote on 2023-02-20, 09:36:

I've no idea what's happing 🤣, I didn't use EMS at all, but only XMS for sound card driver's buffers. It might need more investigation.

With most EMMs expanded and extended memory share one common pool of RAM. EMM386 is not like this AFAIR.

Reply 226 of 406, by zyzzle

User metadata
Rank Member
Rank
Member
crazii wrote on 2023-02-20, 09:36:

I've no idea what's happing 🤣, I didn't use EMS at all, but only XMS for sound card driver's buffers. It might need more investigation.

I see. May I disable EMS completely when loading JEMM, and still use SBEMU?

Mostly, I prefer XMS over EMS unless a game specifically requires Expanded memory (for sound, for example!)

JLoad.exe requires the JEMM XMS/EMS high memory manager to be loaded. Himem.sys or HimemX or HimemSX won't enable Jload.exe to be used to load the .dll. As we're also using HDPMI extender, it should't care whether only XMS is available, no EMS.

Reply 227 of 406, by zyzzle

User metadata
Rank Member
Rank
Member
crazii wrote on 2023-02-20, 09:34:

Intel IHD audio = Intel High defection audio = Intel HDA? I thought they were the same thing. 😁
Yes, I believe they are. There was some confusion because MPXplay refers to Intel High Definition Audio as IHD, while others just refer to it as HDA (High Definition Audio). So, there's no problem now, thanks.

This problem is mentioned before, I think I'll dig it more. I was planning to add a config file used on startup.

Thanks for looking into the headphone vs internal speaker switching / detection / configuration.

zyzzle wrote on 2023-02-20, 02:23:

I also had to manually SET BLASTER=A220 I7 D1.

The idea is to set BLASTER i.e. =A220 I5 D1 before SBEMU startup, and SBEMU will use it, still it can be override by /A /I /D command line options (use /? to see more), if BLASTER is override by command line, or there's no BLASTER env variable set, SBEMU should probably create/update the BLASTER variable, that part is not done yet. it seems easy but need extra code since the DJGPP library function setenv() is not working globally.

Thanks. I'll configure the SET BLASTER variable *before* running SBEMU. I had been doing it afterward.

zyzzle wrote on 2023-02-20, 02:23:

And the emulated Sound Blaster card only detects as an SB Pro Card, and gives stereo 8-bit samples up to 22.05 Khz. I also got it to output up to 8-bit 44.1 Khz in mono using Dual Module Player v.3.01 in real mode.
Is there a way to get SBEMU to emulate and detect fully as an SB16? Ie, 16-bit 44.1 stereo sample output?

Currently only SBpro supported, sb16 not tested yet. the internal samples format used are 22050Hz, 16bit , stereo. the sample rate is hard coded. 44.1kHz may cause a downsample. I think it is possible(also initially planned) to add a full SB16 support, but only after the emulation is stable enough?

Thanks for this information. So, I'll not try to sample anything at 44.1 mono, instead sticking to 22.05 Khz, stereo. It is interesting, since SB Pro only supports 8-bit samples, yet you are hard-coding internal samplerate to 16-bit 22.05 Khz. So, theres an 16-bit to 8-bit samplerate conversion going on somewhere. One other strange thing is some Mod players like Open MPT and MikMod v. 3.2.9 play the modules and the samples at a very fast rate of speed, ie about twice normal speed, and always at a maxed (clipped volume), which can be adjusted with these programs through their --gain option. Setting it to something like a gain of -17 dB results in audio quiet enough through my (Sony V6 Studio Monitoring) headphones, so as not to be clipped and red hot!

Hoping for 16-bit, 44.1 stereo emulation soon!

zyzzle wrote on 2023-02-20, 02:23:

Over at Dos Ain't Dead forum, Candyman reports that "In addition, the consequence of installing SBEMU is that IRQ interrupts in 32-bit programs that use dos extenders do not work and terminate." I can confirm this behavior.

I think it is related to the previously discussed "transfer stack overflow" for DOOM, can you clarify on what IRQ was causing the problem? I think I can use the hack for doom to hack all of them, no matter what IRQ is. currently I only added the sound card IRQ (10/11). I also encountered the problem with IRQ4 in VirtualBox. [/quote]

Happens on IRQ 7 and 10/11 for me, but if you find that your Doom hack to solve this, all the better...

Reply 228 of 406, by Falcosoft

User metadata
Rank Oldbie
Rank
Oldbie
zyzzle wrote on 2023-02-20, 02:34:

One more point: It's not possible to set MTRR VGA writeback caching with RayeR's excellent MTRRLFBE and / or Fastvid programs. EMS memory page frame appears interfering, with EMS memory. So, VESA graphics, work, but are very slow due to the writecombining caching being unable to be activated.

How to enable MTRR's if possible, with SBEMU running?

Most likely this is not an SBEMU specific problem but a broader problem related to all DOS4GW titles running under v86 mode:
https://www.bttr-software.de/forum/forum_entry.php?id=15770

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

Reply 229 of 406, by Bondi

User metadata
Rank Oldbie
Rank
Oldbie

Amazing stuff! I also tried sbemu on my daily driver Thinkpad x230 3rd gen core i5 and it freaking works! 😁 A truly groundbreaking project!
Some trivia: sound comes from the headphones only, just like zyzzle mentioned above. DOOM 1/2 works, but FX sound is a bit noisy. DUKE3D and ROTT sould clean.
The early version of sbemu makes DOOM freeze, but the latest works.

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

Reply 230 of 406, by zyzzle

User metadata
Rank Member
Rank
Member
Falcosoft wrote on 2023-02-20, 11:29:

Most likely this is not an SBEMU specific problem but a broader problem related to all DOS4GW titles running under v86 mode:
https://www.bttr-software.de/forum/forum_entry.php?id=15770

I figured as much. And seems v86 mode will trigger the same behavior (unable to set write-combining caching mode of MTRR registers) with all VESA LFB modes, regardless of whether SBEMU is running or not. I think one solution might be to run SBEMU in real-only mode, disabling protected mode wrapper? And / or not use framebuffer D000-EFFF? But, I am still figuring out the quirks and benefits of SBEMU, having only discovered it thanks to Dos Ain't Dead forum, just yesterday.

Reply 231 of 406, by zyzzle

User metadata
Rank Member
Rank
Member
crazii wrote on 2023-02-04, 15:59:

Yeah. I fixed some bugs in MPXPlay too. It did have no sound in Virtualbox with HDA, it uses PIO for immediate commands while Virtualbox only support MMIO, I read the HDA spec and found the PIO are optional only.
the ICH driver also have tiny bugs and I fixed them. 🤣

Thank you! You are a genius. This explains why I could not get sound out of one of my HDA systems with MPXPlay, even though it "appeared" to work, it didn't (core i5 8250u, while my two Broadwell HDA pci sound worked fine). Most frustrating.

Are you willing to make a binary of MPXPlay v. 1.66 with your bug fixes available, perhaps with MPXPlay author's permission or at his forum: https://sourceforge.net/p/mpxplay/discussion/219198

Reply 232 of 406, by crazii

User metadata
Rank Oldbie
Rank
Oldbie
Bondi wrote on 2023-02-20, 11:58:

Amazing stuff! I also tried sbemu on my daily driver Thinkpad x230 3rd gen core i5 and it freaking works! 😁 A truly groundbreaking project!
Some trivia: sound comes from the headphones only, just like zyzzle mentioned above. DOOM 1/2 works, but FX sound is a bit noisy. DUKE3D and ROTT sould clean.
The early version of sbemu makes DOOM freeze, but the latest works.

Really glad to hear that! I'll try to see if I can fix the audio output problem.

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 233 of 406, by crazii

User metadata
Rank Oldbie
Rank
Oldbie
zyzzle wrote on 2023-02-20, 12:22:
crazii wrote on 2023-02-04, 15:59:

Yeah. I fixed some bugs in MPXPlay too. It did have no sound in Virtualbox with HDA, it uses PIO for immediate commands while Virtualbox only support MMIO, I read the HDA spec and found the PIO are optional only.
the ICH driver also have tiny bugs and I fixed them. 🤣

Thank you! You are a genius. This explains why I could not get sound out of one of my HDA systems with MPXPlay, even though it "appeared" to work, it didn't (core i5 8250u, while my two Broadwell HDA pci sound worked fine). Most frustrating.

Are you willing to make a binary of MPXPlay v. 1.66 with your bug fixes available, perhaps with MPXPlay author's permission or at his forum: https://sourceforge.net/p/mpxplay/discussion/219198

I didn't build MPXPlay at all. But I think I can contact the author to integrate my fix.
BTW I just added BLASTER environment support (create one or change it). so you can forget about the BLASTER environment on next test release.

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 234 of 406, by crazii

User metadata
Rank Oldbie
Rank
Oldbie
zyzzle wrote on 2023-02-20, 11:24:

Happens on IRQ 7 and 10/11 for me, but if you find that your Doom hack to solve this, all the better...

I apply the doom fix to all IRQs, test whether it's fixed if you can.

Filename
SBEMU.zip
File size
240.1 KiB
Downloads
66 downloads
File license
CC-BY-4.0

I also added H for the BLASTER environment, according the the SB programming manual, it support 16 bit transfer via 8 bit DMA, just make the H value equals to D, like SET BLASTER=A220 I7 D1 H1. it's done by SBEMU by default, tested with Duke3D, it works. but not sure if other games recognize it.

Last edited by crazii on 2023-02-22, 13:55. Edited 2 times 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 235 of 406, by KormaX

User metadata
Rank Newbie
Rank
Newbie

This is a very powerful project. I tested the previous test version with many games and a few other programs and the results are the same as the other DOS'ers said: the project is very promising, does something nothing actually did before (as far as I know). Some games that find the sound card a funny way, doesn't find your interface, a problem also present in many existing resident drivers for many sound cards. I don't know if it can be fixed. Here are my experiences:

Prehistorik: If it doesn't crash, it works.
Prehistorik 2: Doesn't seem to find it. Also it crushes or freezes or runs with an uncontrollable way. Basically does as it likes.
Warcraft 2: The installer finds it and 'Your sound card works perfectly', but the game crushes.
Volfied: behaves as if no sound card were present.
Monkey Island: Doesn't see it.
Monkey Island 2: Doesn't see the sound blaster, but sees the AdLib.
Blood: The installer doesn't see the card. If I forcefully add a config file with the correct setup, the game cries that the card is not present.
Heroes of Might and Magic 2: Works.
Flashback: Works.
Superfrog: Freezes.
AdLib Tracker 2: Freezes
Snes9x: Freezes
ZSNES: Freezes
WWF Wrestlemania: The installer installs the card perfectly, but the game crushes with cryptic error messages in order to summon Cthulhu, without the option to take back control until reboot. If I load the executable with DOS32A, you can take the control back as I remember.

Also, could you please compile the proper version of JEMM386 together with JEMMEX as an alternative? I would like to try it with other XMS providers, also, once your project reaches maturity, it would be useful if it could be loaded on runtime (with LOADSYS, for example) and JEMM386 only refuses to load if an EMS server is present, while JEMMEX refuses to load even if an XMS server is present.

Regards:
KormaX

May the DOS be with you!

Reply 236 of 406, by Baron von Riedesel

User metadata
Rank Member
Rank
Member
Falcosoft wrote on 2023-02-20, 11:29:

Most likely this is not an SBEMU specific problem but a broader problem related to all DOS4GW titles running under v86 mode:

May also be a problem of the tool that activates WC. I have no problems activating WC on LFB and then running SBEMU. But if the region set to WC overlaps with the HDA memory mapped IO space ... probably not so good.

Reply 237 of 406, by Bondi

User metadata
Rank Oldbie
Rank
Oldbie
KormaX wrote on 2023-02-20, 16:30:
This is a very powerful project. I tested the previous test version with many games and a few other programs and the results are […]
Show full quote

This is a very powerful project. I tested the previous test version with many games and a few other programs and the results are the same as the other DOS'ers said: the project is very promising, does something nothing actually did before (as far as I know). Some games that find the sound card a funny way, doesn't find your interface, a problem also present in many existing resident drivers for many sound cards. I don't know if it can be fixed. Here are my experiences:

Prehistorik: If it doesn't crash, it works.
Prehistorik 2: Doesn't seem to find it. Also it crushes or freezes or runs with an uncontrollable way. Basically does as it likes.
Warcraft 2: The installer finds it and 'Your sound card works perfectly', but the game crushes.
Volfied: behaves as if no sound card were present.
Monkey Island: Doesn't see it.
Monkey Island 2: Doesn't see the sound blaster, but sees the AdLib.
Blood: The installer doesn't see the card. If I forcefully add a config file with the correct setup, the game cries that the card is not present.
Heroes of Might and Magic 2: Works.
Flashback: Works.
Superfrog: Freezes.
AdLib Tracker 2: Freezes
Snes9x: Freezes
ZSNES: Freezes
WWF Wrestlemania: The installer installs the card perfectly, but the game crushes with cryptic error messages in order to summon Cthulhu, without the option to take back control until reboot. If I load the executable with DOS32A, you can take the control back as I remember.

Also, could you please compile the proper version of JEMM386 together with JEMMEX as an alternative? I would like to try it with other XMS providers, also, once your project reaches maturity, it would be useful if it could be loaded on runtime (with LOADSYS, for example) and JEMM386 only refuses to load if an EMS server is present, while JEMMEX refuses to load even if an XMS server is present.

Regards:
KormaX

Blood works fine on my laptop. As well as other build games. I load just a XMS memory manager (himemx.exe or himem.sys) and disable real mode support (/RM0 switch). I think it worked with qemm too.
Warcraft 2 behaves similarly.
Also tried Screamer - cards detects fine, and the intro starts with sound, but then crashes.

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

Reply 238 of 406, by Falcosoft

User metadata
Rank Oldbie
Rank
Oldbie
Baron von Riedesel wrote on 2023-02-20, 16:38:
Falcosoft wrote on 2023-02-20, 11:29:

Most likely this is not an SBEMU specific problem but a broader problem related to all DOS4GW titles running under v86 mode:

May also be a problem of the tool that activates WC. I have no problems activating WC on LFB and then running SBEMU. But if the region set to WC overlaps with the HDA memory mapped IO space ... probably not so good.

The problem is not related to activating WC. The problem is that activating WC has no effect on speed in case of games that use DOS4GW. Newer games that use cwsdpmi are not affected. On affected machines the problem is 'tool ignorant'. That is no matter what tool you use the end result is the same. For more information please, look at the conversation between Rayer and Japheth:
https://www.bttr-software.de/forum/board_entry.php?id=15770

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

Reply 239 of 406, by KormaX

User metadata
Rank Newbie
Rank
Newbie
Bondi wrote on 2023-02-20, 16:56:
Blood works fine on my laptop. As well as other build games. I load just a XMS memory manager (himemx.exe or himem.sys) and disa […]
Show full quote
KormaX wrote on 2023-02-20, 16:30:
This is a very powerful project. I tested the previous test version with many games and a few other programs and the results are […]
Show full quote

This is a very powerful project. I tested the previous test version with many games and a few other programs and the results are the same as the other DOS'ers said: the project is very promising, does something nothing actually did before (as far as I know). Some games that find the sound card a funny way, doesn't find your interface, a problem also present in many existing resident drivers for many sound cards. I don't know if it can be fixed. Here are my experiences:

Prehistorik: If it doesn't crash, it works.
Prehistorik 2: Doesn't seem to find it. Also it crushes or freezes or runs with an uncontrollable way. Basically does as it likes.
Warcraft 2: The installer finds it and 'Your sound card works perfectly', but the game crushes.
Volfied: behaves as if no sound card were present.
Monkey Island: Doesn't see it.
Monkey Island 2: Doesn't see the sound blaster, but sees the AdLib.
Blood: The installer doesn't see the card. If I forcefully add a config file with the correct setup, the game cries that the card is not present.
Heroes of Might and Magic 2: Works.
Flashback: Works.
Superfrog: Freezes.
AdLib Tracker 2: Freezes
Snes9x: Freezes
ZSNES: Freezes
WWF Wrestlemania: The installer installs the card perfectly, but the game crushes with cryptic error messages in order to summon Cthulhu, without the option to take back control until reboot. If I load the executable with DOS32A, you can take the control back as I remember.

Also, could you please compile the proper version of JEMM386 together with JEMMEX as an alternative? I would like to try it with other XMS providers, also, once your project reaches maturity, it would be useful if it could be loaded on runtime (with LOADSYS, for example) and JEMM386 only refuses to load if an EMS server is present, while JEMMEX refuses to load even if an XMS server is present.

Regards:
KormaX

Blood works fine on my laptop. As well as other build games. I load just a XMS memory manager (himemx.exe or himem.sys) and disable real mode support (/RM0 switch). I think it worked with qemm too.
Warcraft 2 behaves similarly.
Also tried Screamer - cards detects fine, and the intro starts with sound, but then crashes.

I don't get it. If JEMMEX finds an XMS driver, it refuses to load. The newest, pre-release version of JEMMEX is required for SBEMU to work as QPIEMU.DLL is a JEMM386 module. How can you combine JEMMEX with an external XMS server (I use XMGR + UMBPCI, bythe way). Also, I did not know there is an /RM0 switch for SBEMU, but I'm gonna try it immediately.

May the DOS be with you!