VOGONS


SBEMU: Sound Blaster emulation on AC97

Topic actions

Reply 980 of 1385, by thp

User metadata
Rank Member
Rank
Member

New build from this commit: https://github.com/thp/sbemu/commit/37f9be97c … c7a96d5986b263d

I trimmed it down to a few registers that I think matter, and left out the ones that probably don't affect operation.

Please let me know if this build still works on your machine (if yes, we can try trimming it down further, if no, we have to see which registers to add to make it work again).

Edit: The pitch issues might be related to overwriting the "PCM front DAC rate" register with the Win98 value. The new build might fix that.

dr.zeissler wrote on 2023-10-07, 20:46:

- SBL seems to be a bit slow paced on point https://www.pouet.net/prod.php?which=68187
- SBL sound good in "setup" in Duke3D center, right and left test sounds a bit weird and high-pitched.

Attachments

  • Filename
    sbemu.exe
    File size
    316 KiB
    Downloads
    61 downloads
    File comment
    Set fewer registers to find out which one is the magical one
    File license
    GPL-2.0-or-later

Reply 981 of 1385, by dr.zeissler

User metadata
Rank l33t
Rank
l33t

seems to me that the sbemu.exe linked above is the one I had already?

made some more tests for SB-EMU in general. Please keep in mind that my machine is a FAST P4/2.24Ghz with AGP G550 32MB, so some games could perhaps have issues that are not SB-EMU related!

Very early dos-games/demos do make use of PC-SPK, would be nice to get a switch for routing the PC-SPK to the line-out too in order to have equal levels on playback and perhaps a better quality (e.g. budokan has effects on PC-SPK and music on FM)

Good/very good:
- FM/OPL only game > GreatCourts2 - works excellent , Adlib sounds very good
- FM/OPL only game > Lemmings - works excellent (use standard pc not high performance) music sounds good to me.

Issues:
- FM/OPL / PC-SPK > Budokan - works but sounds weird
- SB-Only > Pinballfanataies - does work but has this weird sweeping noise, not sb-emu's fault, it's also on every other sound-system/card on a fast machine, playback tempo to slow.
- FM/OPL and SB => Raptor - works but crackeling noises on SB, playback tempo to slow, not a big thing in the game because of fm-music.

Not working at all:
- Tyrian2k - refuses to start setup
- all these do not find the soundblaster https://www.pouet.net/groups.php?which=1405

more to come

The FM-Emulation is so damn nice on SB-Emu, to me it's more usefull than the SB-Emulation!

Retro-Gamer 😀 ...on different machines

Reply 982 of 1385, by rasz_pl

User metadata
Rank l33t
Rank
l33t

Its not the same, if it works then thp successfully narrowed down relevant registers. You can try it on C610 to make sure it doesnt break other AD1980 implementations.
All the emulation issues are down to SBEMU engine, last update was 7 months ago so it looks like work stalled.

Open Source AT&T Globalyst/NCR/FIC 486-GAC-2 proprietary Cache Module reproduction

Reply 983 of 1385, by dr.zeissler

User metadata
Rank l33t
Rank
l33t

My tests are with the latest sbemu-version that is linked above. Late Dosgames have a rather good compatibility with SBEMU. Latest version still has a slowed down playback on some games.

Working:
- Redneck Rampage
- Duke3D
- Quake1
- Hexen
- Heretic
- Doom1/2
- Blood
- Rampage

Not working:
- PinballDreams2 (Blackscreen)
- AlienBreedTowerAssault (JemmEX Issue)
- StrikeCommander (does not find the card, settings are correct)
- PowerSlave (Freeze after StartupScreen)
- RiseOfTheTriad (Hang on Startup)

Retro-Gamer 😀 ...on different machines

Reply 984 of 1385, by thp

User metadata
Rank Member
Rank
Member

Another build with even less registers, please test if this still outputs audio:

https://github.com/thp/sbemu/commit/5071dfe48 … 6e54ec0ac8e14d9

If this still works, that boils down to three registers.

Attachments

  • Filename
    sbemu.exe
    File size
    316 KiB
    Downloads
    42 downloads
    File comment
    sbemu with less registers for AD1980, built from commit 5071dfe489
    File license
    GPL-2.0-or-later

Reply 986 of 1385, by thp

User metadata
Rank Member
Rank
Member

Thanks for testing. Please bear with me while we're trial'n'erroring our way to the perfect set of registers...

Please test the next build and see if this restores audio again, based on https://github.com/thp/sbemu/commit/af2f663b1 … 249ee108bfea43f

Attachments

  • Filename
    sbemu.exe
    File size
    316 KiB
    Downloads
    40 downloads
    File comment
    sbemu with more registers for AD1980, commit af2f663b13b830
    File license
    GPL-2.0-or-later

Reply 989 of 1385, by rasz_pl

User metadata
Rank l33t
Rank
l33t

at this point dr.zeissler should be able to arrive at right combination with ac97test alone, looks like 0x6 and 0xe are the difference? 😮

Open Source AT&T Globalyst/NCR/FIC 486-GAC-2 proprietary Cache Module reproduction

Reply 990 of 1385, by ldare1000

User metadata
Rank Newbie
Rank
Newbie

Hi

This sounds really interesting.

I have a Dell D400 with MS Dos 6.22 Installed. I am hoping this will allow me to use the onboard sound which naturally wasn't supported by Dell for MS Dos 6.22.

I am getting the attached error, is it just as simple as me finding this zip file and extracting?

Ta
Louis

Reply 991 of 1385, by dr.zeissler

User metadata
Rank l33t
Rank
l33t

It's easier to use a batchfile executed within the autoexec.bat
(please consider reading the readme.txt in the SBEMU package)

otherwise use my:
- config.sys
- autoexec.bat

please check your paths if they are identical. (C:/MSDOS or C:/DOS or something else)
if your emulated SB is not on IRQ7 (I7) please change it to IRQ5 (I5).

If this does not work for you please let me know.

Attachments

Retro-Gamer 😀 ...on different machines

Reply 992 of 1385, by ldare1000

User metadata
Rank Newbie
Rank
Newbie
dr.zeissler wrote on 2023-10-10, 15:45:
It's easier to use a batchfile executed within the autoexec.bat (please consider reading the readme.txt in the SBEMU package) […]
Show full quote

It's easier to use a batchfile executed within the autoexec.bat
(please consider reading the readme.txt in the SBEMU package)

otherwise use my:
- config.sys
- autoexec.bat

please check your paths if they are identical. (C:/MSDOS or C:/DOS or something else)
if your emulated SB is not on IRQ7 (I7) please change it to IRQ5 (I5).

If this does not work for you please let me know.

That's amazing thanks, working now.

I just need to think of a game small enough for a floppy now! 🙂 I know Lemmings isn't compatible, tried it anyway to see, but as expected it doesn't load.

Reply 994 of 1385, by ldare1000

User metadata
Rank Newbie
Rank
Newbie
dr.zeissler wrote on 2023-10-10, 18:50:

Lemmings works on my setup. What version are you trying to load?

Hi

I think the original version. I read further up in this thread that it wasn't supported and generates a JemmEx error, which mine does.

Ta

Attachments

Reply 997 of 1385, by dr.zeissler

User metadata
Rank l33t
Rank
l33t
ldare1000 wrote on 2023-10-10, 20:33:
dr.zeissler wrote on 2023-10-10, 20:21:

I do a re-check.

Thanks mate

Works just fine, no error on Lemmings. Please check Bios-Setting "TopOfTheBase" or "ExpansionRomErea", on my machines I use "ExpansionRomErea".

Retro-Gamer 😀 ...on different machines

Reply 998 of 1385, by ajacocks

User metadata
Rank Member
Rank
Member

Thanks again for this great work @crazii and @thp!

I have been experimenting with this on a variety of ultraportable 4:3/5:4 LCD P3 and P-M laptops, since they are a heck of a lot smaller and lighter, and have much better quality TFT displays that earlier machines that have real SB-compatible audio onboard.

With my current test machine, a Dell Latitude x300, most standard games work great, with the exception of the following:

1) Prince of Persia 1 produces no audio at all
2) PacPC/MsPacPC and PC*Bert give errors about not being able to talk to the emulated SB
(https://www.jrok.com/games_orig.html)

Thanks!
- Alex

Has anyone else experienced similar errors?

Reply 999 of 1385, by wierd_w

User metadata
Rank Member
Rank
Member

In my tests, Dungeon Master claims to not detect the SB when started without command line options, but can use it just fine when invoked with the right switches to skip the questionaire.

For some games, forcing the option might be valid, such as that one.