VOGONS


Reply 20 of 47, by madmab

User metadata
Rank Newbie
Rank
Newbie
wd wrote:

mt32 emulation is very demanding currently, so if you really need some music
maybe target the 0.74 default adlib code (which the very most people know from
"back then" due to the widespread nature of adlib-compatible cards and games).

Thanks wd but the adlib code already works perfectly great and the GUS works great as well (mostly) . Even the mt32 works nice on lesser demanding games.. so I'm just putting it in there to give the user more options..

Ok... well I will admit I really like the mt32 so it's really more for me. But I think people who know what the mt32 is will really appreciate it. 😉 😁

Reply 22 of 47, by ADDiCT

User metadata
Rank Oldbie
Rank
Oldbie

The difference between you and me is that I'm actually testing this new emu and I know what I'm talking about.

No, the difference between you and me is that I don't presume I know what I'm talking about just because I can execute a program on a console. Oh, and maybe that I think some of my input in this thread actually makes sense, too. I couldn't detect anything constructive from you until now, but maybe it's just me.

Anyway, I was talking about GM (General MIDI), not the SB FM synth. Going that route might be worthwile, as MUNT seems to be much more CPU intensive (I had massive performance problems when testing the MT-32 emulation in DOSBox and ScummVM on my old machine) than Timidity, for instance. The number of games supporting GM is _much_ larger than the number of games with native MT-32 support.

Reply 23 of 47, by madmab

User metadata
Rank Newbie
Rank
Newbie

Pardon my odd sense of humour... 😁 😵

h-a-l-9000 wrote:

Did you know there is a certain #define to reduce the paging memory management footprint in 0.74?

Yes.. but I've yet to find a game that wont run with a reduced TLB size in .072 that will run with the new paging memory management code in 0.74. (since the documenation does not really mention any example games).

However I did find that dos32a is like the great equalizer when it comes to dos4gw games.

ADDiCT wrote:

Bark bark bark.... (snipped for simplicity)

The number of games supporting GM is _much_ larger than the number of games with native MT-32 support.

GM pretty much came about after most developers switched to windows right? So it may not be very practical in an xbox environment. But thanks for the suggestion. 😀

FYI thank you dosbox author's.. That TLB thing was a lifesaver. Between that and the dynamic recompiler they were both big helps in a tight memory environment and performance wise. It's like a weird balancing act. The dynamic recompiler really boosts performance but it pretty much eats the memory saved by lowering the TLB size.

I appreciate the responses.. This is the most excited I got with messing with an emu core in a while..

Reply 24 of 47, by ADDiCT

User metadata
Rank Oldbie
Rank
Oldbie

GM was pretty much the standard for high-quality music in DOS games, much more so than MT-32/Roland (too expensive) and the GUS (too exotic). Here's a video illustrating the difference. It's not a very good example though because it's using the rather low-quality "Microsoft GS Wavetable SW Synth" included in Windows XP and later Windows versions. Soundblaster/Adlib music is basically synthesized sounds, where GM is based on using predefined sets of digital samples for the music. These sets, called "Soundfonts" can be up to several hundreds of megabytes in size.

Reply 25 of 47, by wd

User metadata
Rank DOSBox Author
Rank
DOSBox Author

but the adlib code already works perfectly great

Well you said that sb16 music (opl3) stutters for ultima uw, so the 0.74 default
adlib code may help since it's a lot faster. If stuttering caused by adlib code can
be excluded (so only regular sb16 output has the stuttering) you may have different
code paths that you'd want to have a look at, like the mixer.

Reply 26 of 47, by h-a-l-9000

User metadata
Rank DOSBox Author
Rank
DOSBox Author

When you undefine USE_FULL_TLB then also undefine X86_INLINED_MEMACCESS in /core_dyn_x86/decoder.h, the dynamic core will work this way. It's a bit slower then but still way faster than normal core.

1+1=10

Reply 27 of 47, by waal

User metadata
Rank Newbie
Rank
Newbie
ADDiCT wrote:

GM was pretty much the standard for high-quality music in DOS games, much more so than MT-32/Roland (too expensive) and the GUS (too exotic). Here's a video illustrating the difference. It's not a very good example though because it's using the rather low-quality "Microsoft GS Wavetable SW Synth" included in Windows XP and later Windows versions. Soundblaster/Adlib music is basically synthesized sounds, where GM is based on using predefined sets of digital samples for the music. These sets, called "Soundfonts" can be up to several hundreds of megabytes in size.

Thanks for the history. But it's off topic again. GM is out of the question on the xbox as there's no peripheral to render the sound. There's no OS either like Windows, Mac OS X, Linux or whatever in there like you've been told before (again). And SB/Adlib/GUS already work fine here so that's not the point (again).

But thanks for your contribution. You've been trying hard.

Reply 28 of 47, by ADDiCT

User metadata
Rank Oldbie
Rank
Oldbie

Heheheeee... So, the Xbox doesn't have a peripheral to render sound with? I wonder how sound is generated then, must me some kind of magic. If your theory is correct I must have imagined all the sfx and music generated by Xbox games, emulators and demos. Also, I wonder how the Xbox can even function without an OS which provides an API for accessing the machine's functionality. Your knowledge of the Xbox seems to be very in-depth, so you might want to change the obviously incorrect information about the OS on the Wikipedia Xbox page.

Sarcasm aside, Timidity could be implemented on the Xbox just as MUNT has been implemented. Contrary to what waal says there actually _is_ a point I'm trying to make: GM support sounds better than both FM synth (which is synthesized) and GUS MIDI (which is using low-quality samples), and is supported by a larger number of games than MT-32/Roland is. Plus, it's probably less CPU intensive (it definitely is on the PC), which brings us back to topic again, namely the effect of sound emulation on emulation performance.

Reply 29 of 47, by keropi

User metadata
Rank l33t++
Rank
l33t++

hey ADDiCT , think of the following:

20tr0jk.jpg

... and leave the xbox dosbox stuff to the people that actually know what they are talking about.

🎵 🎧 PCMIDI MPU , OrpheusII , Action Rewind , Megacard and 🎶GoldLib soundcard website

Reply 30 of 47, by waal

User metadata
Rank Newbie
Rank
Newbie
ADDiCT wrote:

Heheheeee... So, the Xbox doesn't have a peripheral to render sound with? I wonder how sound is generated then, must me some kind of magic. If your theory is correct I must have imagined all the sfx and music generated by Xbox games, emulators and demos. Also, I wonder how the Xbox can even function without an OS which provides an API for accessing the machine's functionality. Your knowledge of the Xbox seems to be very in-depth, so you might want to change the obviously incorrect information about the OS on the Wikipedia Xbox page.

You should first get informations about how homebrew software & ports are actually conceived before you rush to wikipedia.
Sarcasm aside, there's nothing relevant from you again.

ADDiCT wrote:

there actually _is_ a point I'm trying to make: GM support sounds better than both FM synth (which is synthesized) and GUS MIDI (which is using low-quality samples), and is supported by a larger number of games than MT-32/Roland is. Plus, it's probably less CPU intensive (it definitely is on the PC), which brings us back to topic again, namely the effect of sound emulation on emulation performance.

Oh that's fantastic, you've finally got the point. You're making progress, that's good. But we're done here. I already know enough about you. Let's avoid feeding the tr... uh the Addict.

Reply 31 of 47, by madmab

User metadata
Rank Newbie
Rank
Newbie

From moby games which from my experience has been very helpful to me..

Game Browser : DOS [x] > Sound Devices Supported [x] > General MIDI [x] (318 games)

>Game Browser : DOS [x] > Sound Devices Supported [x] > Gravis Ultrasound / ACE [x] (446 games)

>Game Browser : DOS [x] > Sound Devices Supported [x] > Roland MT-32 (and LAPC-I) [x] (807 games)

Gravis has it beat by a small margin. But the Roland MT-32 has over twice the games with support.

GM from what I remember didn't start becoming popular until windows 95 came about. Awe 32 was one of the first cards I remember having GM support and it came out in '94.

Reply 32 of 47, by ADDiCT

User metadata
Rank Oldbie
Rank
Oldbie

Hmmm... Not sure what these number signify. I can only assume these entries are more like "works with" rather than "supports natively". I'm sure you're testing lots of DOS games, so just make up your own opinion about hardware support. All I can say is that 90% of the DOS games I have installed for DOSBox support GM and sound great. If you have the time, try DOSBox + Timidity (+ a decent soundfont) on a PC and hear for yourself.

Btw, I think you're confusing "General MIDI" with "Soundfont support". GM is an old-ish standard, first published in 1991 according to Wikipedia.

Reply 33 of 47, by madmab

User metadata
Rank Newbie
Rank
Newbie
ADDiCT wrote:
bark bark bark […]
Show full quote

bark bark bark

Anyway, I was talking about GM (General MIDI), not the SB FM synth.
*snip*
The number of games supporting GM is _much_ larger than the number of games with native MT-32 support.

Reply 34 of 47, by swaaye

User metadata
Rank l33t++
Rank
l33t++

SCUMMVM on Xbox has Fluidsynth built-in. I think that's what it uses... I tried an 8MB soundfont (Synergi 8MB) with it but it was not exactly sounding correct....

It would just gobble up more CPU cycles and RAM though. Does the NVAPU in Xbox have a MIDI synth in hardware? It's the same hardware as that in nForce Soundstorm, I believe. It's probably why Soundstorm existed in the first place (more ROI). But I can't/don't remember there being any sort of MIDI support really. DirectMusic wasn't completely dead back then though so it's possible that there is some MIDI hardware in there.

Soundfont is a Creative Labs proprietary tech btw. A more generic term for these sound packages is "patch set" or "waveset" or something like that. Soundfonts are basically the only widely available (popular) form of them however.

Reply 35 of 47, by Dominus

User metadata
Rank DOSBox Moderator
Rank
DOSBox Moderator

fluidsynth is very "costly" to build in on other platforms than Windows, since it pulls in a lot of other stuff, most prominent glib. On Windows you can just build it with fluidsynth support and add the fluidsynth dll and you are done. For other platforms, making a static built of Dosbox with fluidsynth might be a real horror (I've dabbled with it on OS X and gave up).

Windows 3.1x guide for DOSBox
60 seconds guide to DOSBox
DOSBox SVN snapshot for macOS (10.4-11.x ppc/intel 32/64bit) notarized for gatekeeper

Reply 36 of 47, by madmab

User metadata
Rank Newbie
Rank
Newbie

Just a quick update.. I tried cycles=auto.. Not sure why x-port never included that option. Anyways it does a pretty decent job of balancing out the sound vs game speed, especially for older games. But something like ultima underworld runs a bit choppy so bumping up the cycles manually seems to help better (even if there is a tad bit of music stuttering).

I tried tinkering with the blocksize and prebuffer but that didn't seem to make all that difference.

Next thing I'm gonna try is looking at .074 for the auto cycle code as well as the adlib/sb code.

Thanks..

😀

Reply 37 of 47, by gulikoza

User metadata
Rank Oldbie
Rank
Oldbie

Cycles=auto will internally set cycles=max for protected mode games and leave default (cycles=3000) for real mode games that's why UW is choppy with it. Perhaps you should try cycles=max.

http://www.si-gamer.net/gulikoza

Reply 38 of 47, by Qbix

User metadata
Rank DOSBox Author
Rank
DOSBox Author

mt32 emulation is really heavy. I don't advise you to use it on an xbox. it is a different range than the GUS and adlib emulation. GM (midi) would be a good target if you have native midi playback on your xbox. if you don't then you need things like fluidsynth or timidity and I think the total cost of emulation would increase then.
Adlib/soundblaster is probably the widely supported as a lot of people had such a card. There are very few GUS/MT32 only out there.

You could go for only supporting the OPL2 (sbpro), this would safe a bit of power as well as the OPL3 has more channels that need to be emulated. Of course the resulting sound is "poorer" as well.

The auto cycle code can be found in src/dosbox.cpp.
The adlibcode should be fairly obvious 😉

Water flows down the stream
How to ask questions the smart way!