VOGONS


SBEMU: Sound Blaster emulation on AC97

Topic actions

Reply 460 of 1248, by crazii

User metadata
Rank Oldbie
Rank
Oldbie
Joakim wrote on 2023-04-07, 05:51:

Please let me know if there is a way to make a small financial donation.

For someone who is not that knowledgeable about DOS, I would like recommendations on what games to test. Maybe it is possible to set up a floppy with some shareware games. A methodical testing method is always good. (It's an occupational hazard.)

Thanks!
I think a USB thumb drive will be more convenient. Once you're set you can run any PCs that support it, with the same stick. I'm using one for several of my PCs. But there're some few games that hate running on a USB disk.

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 461 of 1248, by theelf

User metadata
Rank Oldbie
Rank
Oldbie
crazii wrote on 2023-04-07, 03:49:
theelf wrote on 2023-04-06, 06:12:
Hi!! ijust discover, and im starting to test in all my computers […]
Show full quote

Hi!! ijust discover, and im starting to test in all my computers

THANKS A LOT

i have 2 question please

1- i did not succed to use with qemm, qemm load ok, but not sbemu, any triks? i found qemm much better than jemm

2- the scroll in some games is choppy, for example Pinball Fantasies, work ok witout sbemu, but as sooni activate sound blaster the scroll became bad

Any ideas?

Thanks!!!

1 - there might be bugs. what's the message of the sbemu error?
2 - probably due to a poor CPU, what's the frequency of you CPU?

hi thanks a lot for your answer, first question i will test with qemm in some days and post again with screen/text captures, right now im in holidays not in home

second question, all my computers i tested sbemu are slower one a PIII 600 and faster a Pentium M 1.2ghz

Thanks!

Reply 462 of 1248, by RayeR

User metadata
Rank Oldbie
Rank
Oldbie
crazii wrote on 2023-04-07, 08:38:

But there're some few games that hate running on a USB disk.

It maybe rather that enabling USB legacy support on some systems cause unspecified errors/hangs/crashes so I avoid it by using PS/2 kbd and mouse and booting from HDD...

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

Reply 463 of 1248, by sledge

User metadata
Rank Member
Rank
Member

Any ideas about this behaviour? Cubic Player / Open Cubic Player - music plays ok, but the screen is jumping like crazy (all modes) 😀

https://photos.app.goo.gl/64QsGSqv81Zx3sCK6

doshaven.eu / high-voltage.cz

Reply 464 of 1248, by zyzzle

User metadata
Rank Member
Rank
Member
sledge wrote on 2023-04-07, 17:35:

Any ideas about this behaviour? Cubic Player / Open Cubic Player - music plays ok, but the screen is jumping like crazy (all modes)

Yours is second report of this behavior in Cubic. Be grateful it runs at all for you; I get only static, but no screen corruption. Can't get its SB drivers to work well with SBEMU and my Intel HDA setup. Corrupt text screen display is strange; all I can suggest is FIX8x14 or trying to run it in 80x25 mode instead. Does screen corruption occur if no sound output (dev null) is used instead or with the disk writer only loaded in the config file?

Reply 466 of 1248, by RayeR

User metadata
Rank Oldbie
Rank
Oldbie
sledge wrote on 2023-04-07, 17:35:

Any ideas about this behaviour? Cubic Player / Open Cubic Player - music plays ok, but the screen is jumping like crazy (all modes) 😀

I got the same behavior, sound plays OK.
At bottom of screen there are printed a bunch of messages: trapcli pushf pop ax 0202 0202
isn't it some forgotten uncommented debug info from SBEMU? or is it from Cubic?
UPDATE: it comes from hdmpi32i.exe - contains "trapcli pushf pop ax %X %X". I think it could be disabled in source and recompiled, then would be a chance that cubic will run undisturbed.

Fortunately there are other module players that works fine: Impulse Tracker, Inertia Player, MikMod Player
More tested SW here http://rayer.g6.cz/hardware/sbemu.htm#TEST_TABLE

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

Reply 467 of 1248, by urbanus

User metadata
Rank Newbie
Rank
Newbie
jtchip wrote on 2023-04-06, 23:21:
urbanus wrote on 2023-04-06, 15:36:

Settings in pics, except for the one showing that I use 22khz (also tried 44khz, doesn't matter).

Looks like you configured Duke3D to use an SB16 but SBEMU to emulate an SB Pro, it needs to be T6 for SB16.

Did a quick test with "sbemu /t6", but then the sound test in Duke3D setup hangs on initializing. Can test more later when I have time.

Reply 468 of 1248, by ishadow

User metadata
Rank Newbie
Rank
Newbie

Is there a web page with SBEMU compatibility? I've tested myself about 30 games and about half of them wasn't working one way or another. Some didn't had sound. Others crashed at launch with SBEMU loaded.
I would really like to test more games and help with creating compatibility list.

Same should be done with hardware, since MS-DOS compatibility in 2006+ PCs is chaotic. Some hardware will have 100% compatibility, other will have major issues. To make things worst some much newer PCs will have better DOS compatibility than older ones!
For example I have Wyse 5060 thin client from 2016 and it has superb MS-DOS support. It is able to run all VGA games I've tried without issues. Furthermore it has full support for EMS in JEMMEX. All my other 2007+ PCs are unable to use EMS.

Reply 469 of 1248, by stamasd

User metadata
Rank l33t
Rank
l33t

I've also had better results with AMD-based thin clients; the best I have so far as compatibility goes is a Zotac Zbox MA760, which has a FX-7600P chip and is similar in many ways to the Wyse 5060. It's only a little older (2014). Significantly better DOS compatibility than Intel-based machines like the Dell 3050 micro or 3020 micro - for both sound and video.

I/O, I/O,
It's off to disk I go,
With a bit and a byte
And a read and a write,
I/O, I/O

Reply 470 of 1248, by bogdanpaulb

User metadata
Rank Member
Rank
Member
crazii wrote on 2023-04-05, 10:13:
Good News! With the HP T5530, I fixed the bug for VT833 and now it's working - just overlooked a tiny bug. Tested with a few gam […]
Show full quote

Good News!
With the HP T5530, I fixed the bug for VT833 and now it's working - just overlooked a tiny bug.
Tested with a few games all working, except that duke3d will freeze on exit, I don't think it's caused by SBEMU, probably VGA related, but I forgot to verify it without SBEMU, you guys can find it out.

SBEMU_VT8233_Fix.zip

Tested them on a GA-K8VT800M (VT8237) and they work fine.

Reply 471 of 1248, by LSS10999

User metadata
Rank Oldbie
Rank
Oldbie
ishadow wrote on 2023-04-09, 09:37:

Same should be done with hardware, since MS-DOS compatibility in 2006+ PCs is chaotic. Some hardware will have 100% compatibility, other will have major issues. To make things worst some much newer PCs will have better DOS compatibility than older ones!
For example I have Wyse 5060 thin client from 2016 and it has superb MS-DOS support. It is able to run all VGA games I've tried without issues. Furthermore it has full support for EMS in JEMMEX. All my other 2007+ PCs are unable to use EMS.

From my experience, whether you can use EMS or not depends on the condition of the system's upper memory area. EMS requires a contiguous free area of at least 64KB to be able to place its page frame necessary for its functionality. If your system can offer a contiguous 64KB area then you should not have major problems with EMS. Otherwise, EMS cannot be used at all.

This is normally not a problem with older systems, but with some newer systems, especially those that feature off-chipset IDE/SATA ports, it can become a problem if their option ROMs are quite large.

A good system usually has about 120KB of usable, mostly-contiguous upper memory area (without B000-B7FF). These upper memory area can be taken up by various things, including but not limited to:
- AHCI/RAID boot ROM.
- Off-chipset IDE/SATA port option ROMs. (JMicron or Marvell ones, for example)
- Expansion card option ROMs (usually IDE/SATA cards).
- Some LAN PXE ROMs (an example would be Plop Boot Manager, which permanently takes up about 40KB).
- Larger VGA BIOS of some video cards (varies, depending on the video card used).

You should be able to reclaim a good amount of UMB by disabling option ROMs that you don't need in BIOS settings.

Reply 472 of 1248, by RayeR

User metadata
Rank Oldbie
Rank
Oldbie
sledge wrote on 2023-04-07, 17:35:

Any ideas about this behaviour? Cubic Player / Open Cubic Player - music plays ok, but the screen is jumping like crazy (all modes) 😀

I quickly patched 1 byte (LF to CR) in hdpmi32i.exe so the message didn't disappear but it's not jumping anymore, just printed at top line, so not much disturbing. You can try this...

Attachments

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

Reply 473 of 1248, by wbahnassi

User metadata
Rank Member
Rank
Member

Testing some games with the latest exe from this post (Re: SBEMU: Sound Blaster emulation on AC97).

SB16 mode. I used SBPro mixer to change volumes.

* Doom: OK
* Skyroads: Whenever SFX plays, volume of FM increases then decreases when SFX is done playing
* Prince 1: Hangs, used to work perfectly
* Stunts: OK
* Ninja Turtles Manhattan Missions: Stack overflow, used to work
* Mortal Kombat: HDPMI error
* Might & Magic 3: OK, including speech
* Nova 9: Hangs, used to work
* Island of Dr.Brain: Hangs, then stack overflow

Several games have regressed with this stack overflow error. This is on my HP Z400 workstation.

Reply 474 of 1248, by Baron von Riedesel

User metadata
Rank Member
Rank
Member
RayeR wrote on 2023-04-10, 04:04:

I quickly patched 1 byte (LF to CR) in hdpmi32i.exe so the message didn't disappear but it's not jumping anymore, just printed at top line, so not much disturbing. You can try this...

Interestingly, if OCP plays a 16-bit .WAV file, it may feed the sound card with 16-bit unsigned data; that's something sbemu isn't expecting - needs a little adjustment...

Reply 475 of 1248, by Bruno128

User metadata
Rank Member
Rank
Member
crazii wrote on 2023-03-05, 06:13:

SB Live/Audigy

If it could be done with PCI card, could you add support for CS4630 / CS4624?
Thanks crazii!

My builds: 1995 VLB, 2003 Acrylic
SBEMU compatibility reports

Reply 476 of 1248, by zyzzle

User metadata
Rank Member
Rank
Member
Baron von Riedesel wrote on 2023-04-10, 17:34:

Interestingly, if OCP plays a 16-bit .WAV file, it may feed the sound card with 16-bit unsigned data; that's something sbemu isn't expecting - needs a little adjustment...

Ah... this provides excellent insight. This behavior explains the "static" I thought I was experiencing with Open Cubic player. Upon further analysis, it sounds more like 16-bit unsigned data when it should be signed. Any pointers on how to fix this?

Reply 477 of 1248, by Baron von Riedesel

User metadata
Rank Member
Rank
Member
zyzzle wrote on 2023-04-11, 11:42:

Any pointers on how to fix this?

Almost trivial; it's 2 lines in the ISR:

            if(samplesize != 2)
cv_bits_n_to_m(MAIN_PCM+pos*2, count*channels, samplesize, 2);
else if ( !SBEMU_IsSigned() )
for ( int i = pos * 2, j = i + count * channels; i < j; MAIN_PCM[i] ^= 0x8000, i++ );

and new func SBEMU_IsSigned() is also pretty straightforward...

Reply 478 of 1248, by MBH

User metadata
Rank Newbie
Rank
Newbie

Why there are two SBEMU with different approach from different developers, both named SBEMU and in the same thread? What's the purpose? Do you plan to merge at some point? At least for me, it's confusing. Can someone explain please? Wouldn't it make more sense to work together on one codebase?

Too many questions, I know. But maybe there's a reason?

Reply 479 of 1248, by RayeR

User metadata
Rank Oldbie
Rank
Oldbie

This is opensource (fork, fork, fork as possible 😀
bwt I can understand both approaches presented here and cannot surely decide what's better.

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