VOGONS


First post, by SaikyoKi

User metadata
Rank Newbie
Rank
Newbie

I've been trying to get some old 3D graphics demos to work in DOSBox. The graphics work fine, but some of them aren't able to play their music. For instance, Crystal Dream 1's music doesn't play at all unless I set the sound device to PC Speaker (which obviously doesn't do the music any justice). I also have another 3D demo called Lunatic which suffers from the same fate. Is there any way to get the music to play properly, or do I have to wait for the DOSBox team to update the SB emulation? I'm using DOSBox version .72.

I attached the Lunatic EXE. Try running it with SB music and you'll see what I mean.

Thanks in advance!

Reply 1 of 7, by leileilol

User metadata
Rank l33t++
Rank
l33t++
SaikyoKi wrote:

For instance, Crystal Dream 1's music doesn't play at all unless I set the sound device to PC Speaker (which obviously doesn't do the music any justice).

In the 90's i've never gotten Crystal Dream's sound to work on my SB's either, could be the demo itself beng damn buggy

apsosig.png
long live PCem

Reply 2 of 7, by h-a-l-9000

User metadata
Rank DOSBox Author
Rank
DOSBox Author

Lunatic:
With core=normal (dynamic takes way too much CPU) I'll get soundblaster sound though I'm not sure if it's supposed to sound that way.

1+1=10

Reply 3 of 7, by SaikyoKi

User metadata
Rank Newbie
Rank
Newbie

No, it's not supposed to sound that way. I guess I just have to wait for the SB emulation to get redone. Thanks for trying though. :)

Reply 4 of 7, by dh4rm4

User metadata
Rank Oldbie
Rank
Oldbie
leileilol wrote:

In the 90's i've never gotten Crystal Dream's sound to work on my SB's either, could be the demo itself beng damn buggy

Never had a problem with Crystal Dreams in the least. I used to show it in PC shops and at Computer Shows (exhibitions) on all SB cards and even Galaxies and PAS (8 and 16). Not sure what your issues were with it.

Reply 5 of 7, by SaikyoKi

User metadata
Rank Newbie
Rank
Newbie

is there any way i can request the team to update the SB emulation, or would i be considered a jerk if i did? i appreciate all that they do and i dont want to seem like i don't, lol.

Reply 6 of 7, by 5u3

User metadata
Rank Oldbie
Rank
Oldbie

My results with DOSBox (bog standard 0.72, default configfile):

The sound in Crystal Dream works, but only for about a second. It seems as if the MOD player routine fills the buffer, starts playing, and then something goes wrong.
On my real 486 this demo shows the same behaviour, so I think that's a bug in the demo's MOD player routine and has nothing to do with DOSBox.
It is possible to get working sound by choosing the LPT DAC, but the output sounds rather strange (much worse than a real DAC, even a simple resistor-based one).

Lunatic works out of the box, with both SB and DAC, however the sound is similarly distorted, like the DAC output from Crystal Dream.

dh4rm4 wrote:

Never had a problem with Crystal Dreams in the least.

Crystal Dream or Crystal Dream II?

SaikyoKi wrote:

is there any way i can request the team to update the SB emulation, or would i be considered a jerk if i did? i appreciate all that they do and i dont want to seem like i don't, 🤣.

I understand your position, but it may not be wise to blame the DOSBox emulation first.
PC demos from that era often have sound problems, especially the music playing routines were rather optimised for fast performance, not compatibility or sound quality.

Reply 7 of 7, by h-a-l-9000

User metadata
Rank DOSBox Author
Rank
DOSBox Author

Well DOSBox actually is to blame 😉

The sound is distorted because the demo(s? only had a closer look at crystal dreams) sets up DMA transfer for two bytes (!!) only + autoinit and writes the new data in the system timer ISR with sample frequency to those two bytes. DOSBox fetches data only every millisecond and thus loses most of the data.
I don't know if it's worth to change that for those mad demos...

The issue with sound stopping after a second is related to the emulated soundblaster status register which has something that appers to be a hack.
I changed it without knowing exactly how it really behaves and now sound is continuous.

1+1=10