Jump to content

Raine + DOS = bad sound


theelf

Recommended Posts

Yeah yeah yeah, well to explain why I got so excited in the previous post : very heavy weather here for a few days in the row, after some time it brings on my nerves.

And the other reason is that finding these bugs doesn't take much time, but fixing them is more than a pain !

I spent a big part of the evening fixing the cave driver !

Because actually the crash was not a gcc bug, it was because they changed the way variables were stored and suddenly a buffer overflow which was harmless brought havoc and destruction !

And then I realized the line-scroll / col-scroll code was broken in opengl and in dos 8bpp, actually it worked only in 16bpp (yuv overlays...) !

It took me quite a lot of time to fix, this code is insane. It was just because it was written at the time where the only fast rendering was the yuv overlays, so I optimized 16bpp, and never bothered to test the other depths. Well they were both broken !

Tss, everything is fixed for cave now, I checked the line scroll works correctly in the highscore screen of dangun feveron even in dos ! (but I guess you'll need quite a fast machine to see that...).

 

So this bug is not only for the dos version, but for opengl too.

And the crash happens in linux and windows too since they are using the new gcc version...

Talk about a bad day... !

Anyway I'll take a well deserved break from this for now, and I'll come back to it later.

I hate when there are suddenly a ton of new bugs to fix, especially when they are hard as these, but it was worth fixing them finally, even if conditions were horrible.

Weather is finally cooling down, so things get back to normal here, finally !

 

EDIT : dkong and frogger are emudx games, I fixed them for dos, now they know how to handle the dx2 files.

It uses some code inspired from sdl to do the resampling so it's short, fast, and sounds good !

Also I added some warnings to these games to warn that the sound will not work if the dx2 audio files are not present, for those who don't know these are emudx games, and also to tell to use at least 16bpp with emudx graphics, they can't work in 8bpp or 15bpp.

 

Now puckman and all the games of its kind including mspacman have their sound broken in dos, it's due to too outdated sound engine here.

Obviously it doesn't handle streams with their own sample rate as the sdl version, the resampling doesn't work and I have no idea why.

This part never worked for dos anyway, so if someone wants to fix it, great, otherwise too bad ! (they don't crash, the sound is just at a very bad

sampling rate !).

I guess that's the end of it for now...

 

EDIT 2 : it's just a seal bug ! Actually it messes frequency rates !

So to sum up : seal is faster but inaccurate and in some cases buggy (like for the sound of puckman)

allegro is slower but more accurate and puckman's sound works.

I guess I'll make 2 binaries for this time, but this time only then... !

Edited by Tux
  • Like 1
Link to comment
Share on other sites

Create an account or sign in to comment

You need to be a member in order to leave a comment

Create an account

Sign up for a new account in our community. It's easy!

Register a new account

Sign in

Already have an account? Sign in here.

Sign In Now
×
×
  • Create New...