VOGONS


SBEMU: Sound Blaster emulation on AC97

Topic actions

Reply 1720 of 1736, by vico

User metadata
Rank Member
Rank
Member
Garehard wrote on 2025-02-15, 13:07:

great Project, but i got with my SB Live only a high pitched sound. opl3 music is fine.
changed irq from 5 to 7, but that doesnt solve the problem. any ideas?

You may get better results with your SBLive! by using VSBHDA or VSBHDASF:
https://github.com/Baron-von-Riedesel/VSBHDA
https://github.com/Cacodemon345/VSBHDASF

Reply 1721 of 1736, by pirsen

User metadata
Rank Newbie
Rank
Newbie

1.0 beta5 (Latest) on think client Hp t5540.
O.S. Ms-Dos 6.22

AUTOEXEC.BAT

C:\SBEMU\HDPMI32I -r -x
C:\SBEMU\JLOAD C:\SBEMU\QPIEMU.DLL
C:\SBEMU\SBEMU
@ECHO OFF
PROMPT $p$g
PATH=C:\DOS
SET TEMP=C:\DOS
MODE CON CODEPAGE PREPARE=((850) C:\DOS\EGA.CPI)
MODE CON CODEPAGE SELECT=850
LH /L:2,17264 KEYB PO,,C:\DOS\KEYBOARD.SYS

CONFIG.SYS

DEVICE=C:\SBEMU\JEMMEX.EXE
BUFFERS=15,0
FILES=40
DOS=UMB
LASTDRIVE=H
FCBS=1,0
DOS=HIGH
COUNTRY=034,,C:\DOS\COUNTRY.SYS
DEVICEHIGH /L:2,15792 =C:\DOS\DISPLAY.SYS CON=(EGA,,1)

Tested games:

Prince of Persia 1.1
The simpsons
Doom
Bubble
The lionking

100% working

Reply 1722 of 1736, by Sly_Botts

User metadata
Rank Member
Rank
Member

Downloaded and tested today. Working good so far on my P4 system. I boot into DOS 7 from win 98. My audigy 2 doesn't like pure DOS on this mobo. SBEMU has been a good way to run pure DOS.

CPU: Intel Pentium 4 Prescott 3.2Ghz (OC to 3.6Ghz)
MOBO: ASUS P4P800-X
RAM - 2x1GB PC3200 DDR 2.5-3-3-7
GPU - ATI RADEON x800 PRO 256MB AGP
SOUND - Audigy 2 ZS
PSU - Corsair CX450
SSD - Crucial BX500 2.5 SSD 240GB
HDD - 40GB IDE
ODD - Generic SATA DVD ROM
OS - Windows XP 32-bit SP3, Windows 98 SE

Games tested:
UDoom
Wolf3d
Monkey Island 2
Duke3d
Wing Commander 2

I created a USB stick version as well. It booted fine on my P4 system but would not boot on my 12700k cpu/Asus z690-a mobo system. Some kind of error relating too "bad or missing command interpreter" error. Also CD-ROM drives will not work unless I'm guessing your system has an ide CD-ROM.

It is possible to commit no errors and still lose. That is not a weakness, that is life.

Reply 1724 of 1736, by SonyUSA

User metadata
Rank Newbie
Rank
Newbie

Hello!

I recently acquired a Dell with 1GHZ P3, 512MB RAM, AC97'esque audio, Matrox dual AGP card, and CD-ROM. I got Windows 98SE installed with SBEMU in pure DOS, however the two games I tried have sped up/high pitched sound for voices and music...

Return to Zork - .iso mounted with shsucdx
Space Quest 6 (DOS) - real CD in CD drive

I tried the forked SBEMU, VSBHDASF, but it had the opposite effect and everything seemed much LOWER pitched/slowed down. I can't seem to find anyone talking about this issue so I'm not sure where to go. I chose SB Pro in config for both games

In Win98, SQ6 runs and sounds fine, it just seems to be a bug or something with SBEMU. It's on default settings Port 220 IRQ 5 DMA 1. I tried the SETBLAST.exe and it confirms the setup and plays the test sounds.

Reply 1725 of 1736, by ludicrous_peridot

User metadata
Rank Member
Rank
Member

Some feedback testing the 1.1 versions.
The alpha version from May, 4th, 2024 seems to not play every sound in BlackZone. Interestingly, the version from April, 30th found in github works well! Currently using VDPMI.EXE from May, 4th with it.

Both versions sadly ignore /SCFM flag. It works with 1.0 lineages versions on my machine, but with 1.1 hardware OPL does not seem to work.

Appreciate 1.1 may not be the main focus for the team, but hope very much for a new testing build that allows hardware FM playback.

Having a blast with emulated FM music, running the game on "bare mrtal" in the meantime. Thanks a lot for that.

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 1726 of 1736, by RayeR

User metadata
Rank Oldbie
Rank
Oldbie

What is VDPMI.EXE / where it come from?

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

Reply 1727 of 1736, by ludicrous_peridot

User metadata
Rank Member
Rank
Member

Re-reading my previous post, it may come through as somewhat nonsensical, so let me try again.

Firstly this is about the 1.1 version of SBEMU.EXE which comes with a new DPMI host that @Crazii has presented as preview alpha a year ago. VDPMI, then host in question, is part of the package.
The reason I am bringing it up is because the game I am trying to run on the machines in my signature (Black Zone) would not work with HDPMI SBEMU/VSBHA nor with DSDMA via Yamaha DOS drivers. It - the game - is also speed sensitive, so while I can run it on the machine with Opti card, I don't enjoy the results so much - either it sounds completely off, or it plays too slow.

With machine that has Yamaha, I can use SBEMU 1.1 to run the game with sound, and without a need to use slowdown utility, however I have two issues:

1. If I use the version found following the link, then only selected digital sound effects can be heard in the game.
2. If I use a different version (from April, 30th, 2024) found in github , then I can hear all sounds, but FM volume gets annoyingly high for while the digital sounds effects (interestingly those, which are unheard in 1. above) are being played. It is a bit weird, because:
- in DOSBox this does not happen
- on the machine with Opti when run without SBEMU this does not happen
- in other programs (e.g. liballegro ASetup) this doesn't happen on the same machine and with the same version of SBEMU

I was thinking that, probably, a workaround could be using different sound cards for FM music and digital sound.
However, my finding with the 1.1 version was that using /SCFM option resulted in expected output from the utility, but then the same sound card was used for FM as specified with /SC.

I know this may be a long shot hoping for this to be addressed, but who knows, maybe a newer version of 1.1 lineage was produced, but not shared publicly for testing?

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 1728 of 1736, by RayeR

User metadata
Rank Oldbie
Rank
Oldbie

Aha, I missed ver. 1.1. It's not listed in 1st post of this megathread neither on main GitHub. But there are more forks that makes it a bit chaotic...
Well, so VDPMI is some attempt to implement own DPMI server that should solve some compatability issues of other DMPI servers... Wouldn't be better just patch more the HDPMI as it's most recent and still alive project? I know that complete asm source may not be easily readable for everyone (like e.g. cwsdpmi is written in BorlandC + a bit of asm, that is more understandable for me). At least it would be nice if both DPMI servers can be loaded and unloaded dynamically to change them at runtime without reboot...

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

Reply 1729 of 1736, by SoftLight

User metadata
Rank Newbie
Rank
Newbie
will1384 wrote on 2024-05-12, 04:18:
SBEMU on my "HP T510 Thin Client" is also defaulting to 220, IRQ7 and DMA1, I am using "SBEMU - 1.0-beta4", I have tried FreeDO […]
Show full quote
MoneySquirrel wrote on 2024-05-12, 01:04:

What irq, dma, etc is sbemu using? Mine defaults to a220, i7, d1. The doom setup doesn't complain? Have you tried just music and no sound, and vice versa? Are you using the beta4 release of sbemu? You may want to try an earlier version too. Also, maybe try the freedos bootdisk in case it's related to that dos 7.1 install. Is anything else being loaded in your config.sys?

SBEMU on my "HP T510 Thin Client" is also defaulting to 220, IRQ7 and DMA1, I am using "SBEMU - 1.0-beta4", I have tried FreeDOS and that did not help, I also tried QEMM but it locks up the "HP T510 Thin Client".

DOOM with no sound of any kind works.

DOOM with only music works.

DOOM with only sound and no music crashes.

Hi guys! I registered here to reply to this message. I hope it's not too late. Maybe this will help someone else. I have HP thin client t5545. And I faced just the same problem using SBEMU 1.0 beta 5 for some id games: Doom and Heretic. My configuration was: set BLASTER=220 I5 D1 H5 P330 T6. I configured sound output using id's 'setup.exe' and received a configuration (e.g. heretic.cfg). Then the game would only start if the option to output only music or no sounds at all was selected. I was scratching my head because other games like Duke3D worked just fine.

The solution turned out to be very simple. If you open the configuration file created by the setup.exe utility (e.g. heretic.cfg, doom.cfg), you will see that the audio output ports in it are incorrect! So we have 'snd_sbport 544' and 'snd_mport 816'. This is terribly strange! Just change it to 'snd_sbport 220' and 'snd_mport 388' and the game will be like a charm!
I want to thank crazii again for the great SBEMU that breathed new life into our retro hardware.

Reply 1730 of 1736, by RayeR

User metadata
Rank Oldbie
Rank
Oldbie

Hm the values you wrote are decimal values of usual hex representation of sb/midi ports:
snd_sbport 544 - 544d = 220h
snd_mport 816 - 816d = 330h

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

Reply 1731 of 1736, by CMR779

User metadata
Rank Newbie
Rank
Newbie

I've got it working on a Via Epia ME6000G. Anybody know of any good test programs to check it with?

Reply 1733 of 1736, by sharangad

User metadata
Rank l33t
Rank
l33t
Bruno128 wrote on 2023-05-01, 09:25:

Hi. This post by user ITzTravelInTime confirms Audigy RX PCIe to work in MPXPlay presumably due to the fact that it is derived from Audigy 2.
Would this card work with SBEMU?

Apologies if this has been posted before.

Yes it does! It works on my Ryzen 2700X, MSI B450 Carbon AC with an Audigy RX (PCI-E) under FreeDOS off a flash disk with a FAT16 FreeDOS (C:) partition and a FAT32 data partition (D:). The motherboard had to be set to run in CSM mode with the boot disk being a USB HDD (for a flash drive).

i was able to run my GOG copy of Doom1 and 2 wthout any probles. My config is:

d:
c:\jemmex\jload d:\sbemu\qpiemu.dll
sbemu\hdpmi32i /r /x
sbemu\sbemu /i5

Quake has frequent cyclic slowdowns in the game with audio distortion. Indycar Racing II (software rendered) has high pitched audio.

On an old Pentium 4 3 GHz Win98SE system with an Audigy 2 ZS running SBEMU and a Rendition V1000, vQuake (Rendition Verite) crashes immediately without changing graphics mode (4G extender exception) and ICR2 (Rendition and software) has high pitched audio. Software rendered Quake runs fine on this system. vQuake runs fine without the blaster environment set (without sound).

Developer of RReady - Rendition Verité Wrapper.
https://www.youtube.com/@sharangadayananda\
https://patreon.com/Rready

Reply 1734 of 1736, by ruthan

User metadata
Rank Oldbie
Rank
Oldbie

I have tested SB Emu on like 8 boards in present history - with AC97 / HD audio.. Creative Live / Audigy cards.

For me know biggest problems seems to need for reboot after some game run with sound, it seems to sound card / system PCI registry cleaning mechanism does not working fully.

Im not sure, if possible on driver level detect that program which where using sound card ended and reset sound card state? If its possible clean up still need some work.

Because after net boot selected game usually work, but if run another game after success rate is lower, if run third game there is freeze, super slow machine, or broken sound when i chance games order games are working fine.

Im old goal oriented goatman, i care about facts and freedom, not about egos+prejudices. Hoarding=sickness. If you want respect, gain it by your behavior. I hate stupid SW limits, SW=virtual world, everything should be possible if you have enough raw HW.

Reply 1735 of 1736, by ludicrous_peridot

User metadata
Rank Member
Rank
Member

Ran into CMI8738/PCI-6ch-MX based card with SPDIF in/out breakout, at a very decent price and in a very decent condition, and decided to give it a go.
The aim was to start using a single board across all OS-es in the Core Quad machine in sig., also take advantage of digital output.
DOS part was now supposed to be handled by SBEMU; I was using interchangeably 1.0 beta 4, 1.0 beta 5 and also tested 1.1 (various versions, posted above on this).
I also used JEMMEX, JLOAD and QPIEMU.DLL in a s somewhat hectic manner from 585, 586 preview and those shipped with 1.0 beta 4 and 1.0 beta 5 and did not encounter difference due to this.
SBEMU was configured for SB16 emulation and OPL3 passthrough. I briefly tried SBPro emulation, but again encountered no difference.
And no difference for me between beta 4 and beta 5; there was of course difference between 1.0 and 1.1 versions but will cover this below.

So far the results are... very good. Wanted to stop by to thank again @crazii and the team for SBEMU.

I was able to configure SBEMU to pass through to hardware OPL3 of the card and MPU401 worked just fine with external MIDI module (which was straightforward).
After loading SBEMU I could use the mixer utility which was shipped with the board DOS drivers to enable SPDIF in monitoring for CD-ROM input, line in (where MIDI module was plugged in) and SDIF out, all non interactively through batch file.

Dark Forces, Tie Fighter CD-ROM, Magic Pockets, Wing Commander III, Cyril Cyberpunk, Tomb Raider, Archimedean Dynasty, Bio Menace all ran fine, using Sound Blaster 16 in setup where possible.
Wing Commander IV had hiccups with movie playback even though sound worked, until I switched game setup to use plain 8 bit Sound Blaster (SBEMU still configured for SB16).
I noticed some of the games produced unpleasant sound during initialization or had residual sound after closing,
but I could get rid of this residual sound by running a small tool I previously cooked up for resetting sound cards (maybe simply SBEMU /R would do the trick as well).
I did not spend significant time in each game - intention was to try and see which run and which break/crash/hand from the get go.

For Hand of Fate CD-ROM the unpleasant sound at initialization somehow lingered in the game, but I it ran perfectly with 1.1 version of SBEMU.
I could also run Tyrian 2000 setup/jukebox and Black Zone using different versions of 1.1.

DJGPP games don't work, so Quake, Hammer of Thyrion and source ports of Doom and Hexen are out of the list, but that's to be expected, and not a big problem for me personally at this stage.
Also CPUSPD crashes with 1.1 being loaded, so I set up a boot menu entry which first loads the slowdown utility and then goes for SBEMU.
I had sound in Strike Commander menu, but the game crashes in the intro sequence on this machine and I did not check if that's due to sound playback or not.

I am yet to test game port, Aladdin and see if it's possible to get sound in Whizz (which runs but has not sound).

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 1736 of 1736, by ludicrous_peridot

User metadata
Rank Member
Rank
Member

To add to the previous posts it's sadly not all sunshine and roses with CMI8738 when it comes to SPDIF. While it seems to work in Windows 9x and later, DOS windows in Win9x are quiet (at least with VXD driver), as well as DOS itself, even if SPDIF Out is enabled via it's mixer utility (i.e. the cable starts emitting light).

Datasheet mentions DAC2SPDO bit in the Legacy Register, but setting just that in SBEMU init results in garbled and distorted FM output, so probably additional configuration is required.

Moreover there is this quirk that even if SPDIF In monitoring is on, it's not heard via SPDIF Out, unless SPDIF In to SPDIF Out loopback is switched on, which bypasses other channels in mixer, so that e.g. CD-ROM sound becomes the only thing being heard.

Would be grateful for any advise wrt 8738, as otherwise it seems to be an uphill battle for me, at least in the digital out area. Or it could be that the card is just not suited to the scenario of digital output I have in mind... Otherwise it would be great to incorporate sending the signal to SPDIF in SBEMU initialization code for the card.

EDIT: A small update - so far nothing came out of the attempts to get SPDIF working in DOS for anything but, well, CD-Audio SPDIF-In; the rest (wave, fm) is actually heard but in a terribly distorted way, and line in is not heard at all, which is a shame, especially compared to how native Windows 9x applications like Doom95 output with vxd drivers. Additionally, SBEMU init does not seem to initialize joystick support for my card, so had to use Rayer's excellent SMB tool to switch this on.

On game compatibility side, I could confirm Aladdin, Dune 2, Tie Fighter (non-CD GoG version) and Monkey Island 2 Ultimate Talkie worked just fine, as well as Descent 1 Shareware. On the other hand could not get Lands of Lore 2, Inherit the Earth CD nor Whizz work. Strike Commander CD (GoG version) doesn't work either, but it also seems to hate JEMMEX and would only run with HIMEMX and no sound for me.

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)