VOGONS


First post, by Soeuni

User metadata
Rank Newbie
Rank
Newbie

It seems that DOSBOX's output sound (at least of OPL2) is a bit slower compared to REAL DOS machine.

example :

MONKEY ISLAND - intro

- REAL machine(YMF724F)
http://pds19.egloos.com/pds/201110/13/68/MONK … _-_ORIGINAL.mp3
the song length is 1:32.

DOSBOX(YMF724F, OPL hardware passthrough)
http://pds23.egloos.com/pds/201110/13/68/MONK … PASSTHROUGH.mp3
DOSBOX(emulated sound)
http://pds24.egloos.com/pds/201110/13/68/MONK … X_EMULATION.mp3

These tunes had audible diffecence when played on a real machine. the lower tempo appears of the track.
the song length is 1:39, 7 seconds longer than it should be.

Scummvm(sound emulated)
http://pds22.egloos.com/pds/201110/13/68/MONK … 1_-_ScummVM.mp3
it's normal.

Reply 1 of 8, by Qbix

User metadata
Rank DOSBox Author
Rank
DOSBox Author

odd as scummvm uses our opl emulation. (at least has the option to use it)

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

Reply 2 of 8, by Soeuni

User metadata
Rank Newbie
Rank
Newbie

yes. scummvm includes DOSBOX OPL emulator and i used the option to compare.

here is another example.

Princess Maker 2

REAL Machine(YMF724F OPL3)
http://pds21.egloos.com/pds/201110/13/68/PM2_ … _-_ORIGINAL.mp3
the song length is 0:49

DOSBOX(emulated sound)
http://pds19.egloos.com/pds/201110/13/68/PM2_ … RK_-_DOSBOX.mp3
0:51. 2 seconds slower than real.

Reply 3 of 8, by Qbix

User metadata
Rank DOSBox Author
Rank
DOSBox Author

have you tried setting the oplrate to the native opl value (that 49... value)

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

Reply 4 of 8, by DracoNihil

User metadata
Rank Oldbie
Rank
Oldbie

I've notice on some machines, namely ones with integrated audio hardware, will play in "slow motion" if the playback rate in the application is beyond 48 kHz. But I've only known this to happen on faulty AC 97's. Sometimes it might even rely on 44.1 kHz and going higher than that results in "slow motion" due to faulty software level driver "resampling".

This always happened on my old laptop before I got a Windows 7 one that has a HD Audio codec rather than a AC'97 one.

Not sure if this applies to your problem but I've known this to happen for quite some time on the various old machines I have around here that use the AC '97 for audio.

EDIT: Now that I think of it, this slow motion OPL reminds me of what happens when you tried to use the "OPL Emulation driver" on SB Live! card's. It plays ridiculously slow for some reason, getting progressively worse as more voices are played. Also the ScummVM and DosBOX emulation cores sound really different in terms of waveform construction... Are they really both the same thing?

“I am the dragon without a name…”
― Κυνικός Δράκων

Reply 5 of 8, by Soeuni

User metadata
Rank Newbie
Rank
Newbie

later I tried various OPL rates(44100,48000, 49716..) but similar results. DOSBOX plays 'a bit' slow OPL sound. these above emulated-OPL-sounds recorded using from latest spec desktop computer.

It seems that isn't only me with this problem. i found same issue from Monkey Island intro video in youtube.

- ScummVM
http://youtu.be/WjvD3C_nvBk it seems normal

- DOSBOX
http://youtu.be/6CzqRZaKJqA it seems OPL slowdown

Reply 6 of 8, by ripsaw8080

User metadata
Rank DOSBox Author
Rank
DOSBox Author

It seemed to me that cycles could be a factor, given that ScummVM doesn't have such; and it does appear to be the case, at least with Monkey Island's intro using AdLib music. A wave recording at 3000 cycles is 1:38, and another at 10000 cycles is 1:33 -- times approximate because I manually started and stopped the recording when I heard the music start and stop.

I don't think Monkey Island should really need 10K cycles, but on a more microscopic level there *might* be some issue with cycles the game code is spending waiting for certain responses from the OPL hardware. On the other hand there may simply be counter loops in the game code, with the music playing speed depending on machine speed.

Reply 7 of 8, by Mau1wurf1977

User metadata
Rank l33t++
Rank
l33t++

Fascinating and one of the things I enjoy about this hobby. You always discover something new and interesting!

Here is a VGA capture of my 486DX-25 Retro machine:

http://www.youtube.com/watch?v=Ao6IgHh4wqI

I happen to try Monkey Island at 13:10

So you can use this video as reference if you like.

It's ~ 1m:35s long though...

Reply 8 of 8, by NecBelok

User metadata
Rank Newbie
Rank
Newbie

I just listened to these samples, and yes, there are some delays in your DOSBox records. However, it's not a problem of the emulation itselt. You just used too low cycles, so the whole game gets delayed when there's some action on the screen. This also affects the music, of course.

You might want to try this again with fixed CPU cycles, I guess 10000 or something around it should be enough for MI.