help with DS4QB++
help with DS4QB++
i'm new to this lib and i've just added it to a game that i've been working on for about a year. so far i like it, but it seems to be really slow. for example changing the music creates up to 5 sec delay in the program. i'm using the relsoft library for graphics as well. i'm running under windows xp, if that matters. any ideas would help. thanks
uh....
Not familiar with the library. If music is a wave file the five second delay would be the loading, clearing, and starting of play. So for that actually getting a variable that would hold 5seconds of music and taking that time to load the new music would be good.
Using regular play command is odd for that to happen as it does. It may actually be how your program is programmed and there is in truth a five second delay between the ending of the music, you checking all of whatever it is you check and then getting back to play the next song.
What type of music media are you using? And how big of a game
Using regular play command is odd for that to happen as it does. It may actually be how your program is programmed and there is in truth a five second delay between the ending of the music, you checking all of whatever it is you check and then getting back to play the next song.
What type of music media are you using? And how big of a game
Later days,
Matthew
May those who love us love us
And those who don't
May the good Lord turn their hearts
And if he doesn't
May he turn their ankles
So we'll know them by their limping
-Irish prayer
Matthew
May those who love us love us
And those who don't
May the good Lord turn their hearts
And if he doesn't
May he turn their ankles
So we'll know them by their limping
-Irish prayer
Lithium warned of latency when running a lot of background processes while DS4QB++ is active. Shut down all programs you're not using (all programs period, coz your game is likely fullscreen anyways) and kill off any unneeded services. The latency is affected by the number of tasks Windows XP is performing. Running DS4QB++ under Windows XP creates additional latency anyways, as it relies on the file queueing method rather than the zero page hack trick that works under 9x. Piptol is probably the only person around who's completely comfortable with DS4QB++, having used it successfully in 'Ghini Run.
If you need a sound library that works without Windows, you'll want either BWSB or UGL. BWSB supports up to S3M format and UGL supports MODs only. Neither support mp3, so if you need mp3 support, you're out of luck (for now) when it comes to pure DOS.
If you need a sound library that works without Windows, you'll want either BWSB or UGL. BWSB supports up to S3M format and UGL supports MODs only. Neither support mp3, so if you need mp3 support, you're out of luck (for now) when it comes to pure DOS.
i have almost no background proceses running. my goal is to be able to run this game without any EMS or XMS memory. since most people playing it wouldn't know how to change those settings. as of now i have achieved it. my music format is various MOD files. all of the music files were preloaded long before they are actually used. this tells me that it's not the loading that creates the pause, but the latency of windows xp. i haven't even added sound effects yet. but if the music is that slow, it might not be worth it. i can't have 5 second delayed sounds. is there a really simple sound and music library that requires little memory for dos? i like ds4qb++ since it doesn't use dos memory. i want something really easy since i have little experience with sound.
Both UGL and BWSB work fine. Each has their advantages and disadvantages:
*BWSB supports a number of modules, UGL only supports MOD
*BWSB supports 32 channels, UGL supports 64
*BWSB only supports 8 bit samples, UGL supports 16 bit samples
*BWSB only supports 64kb samples, UGL has no practical sample size limit
*BWSB requires about 150kb of conventional memory, UGL requires none
*BWSB requires all sound fx to be inside modules (bad, very wasteful), UGL requires them to be seperate (good)
And the similarities:
*Both use EMS
*Both support the standard Soundblaster hardware without issue
UGL's sound system is a bit bigger than BWSB (by about 25kb or so) but given the fact that UGL doesn't need the 150kb overhead that BWSB needs, I'd say that's a pretty good tradeoff.
When you get right down to it...you're not going to have much luck finding a sound system for DOS that doesn't require EMS or XMS if you want good quality sound. There's QMIDI, but I did say good quality sound. And then you still have to worry about sample playing...
I realized some time ago that my creation of the original DS4QB was probably the biggest mistake I ever made...
*BWSB supports a number of modules, UGL only supports MOD
*BWSB supports 32 channels, UGL supports 64
*BWSB only supports 8 bit samples, UGL supports 16 bit samples
*BWSB only supports 64kb samples, UGL has no practical sample size limit
*BWSB requires about 150kb of conventional memory, UGL requires none
*BWSB requires all sound fx to be inside modules (bad, very wasteful), UGL requires them to be seperate (good)
And the similarities:
*Both use EMS
*Both support the standard Soundblaster hardware without issue
UGL's sound system is a bit bigger than BWSB (by about 25kb or so) but given the fact that UGL doesn't need the 150kb overhead that BWSB needs, I'd say that's a pretty good tradeoff.
When you get right down to it...you're not going to have much luck finding a sound system for DOS that doesn't require EMS or XMS if you want good quality sound. There's QMIDI, but I did say good quality sound. And then you still have to worry about sample playing...
I realized some time ago that my creation of the original DS4QB was probably the biggest mistake I ever made...
on the contrary
on the contrary, sleep is great when your debugging, just don't ever use it in your final release - EVER.
And if you use CTRL as the keypress the buffer doesn't fill...
Yeah, sleep really is a pathetic command...
matt (PointlessPost = PointlessPost + 1)
And if you use CTRL as the keypress the buffer doesn't fill...
Yeah, sleep really is a pathetic command...
matt (PointlessPost = PointlessPost + 1)
SLEEP:
SLEEP x:
It costs more typing...
Code: Select all
DO WHILE INKEY$ = "": LOOP
Code: Select all
T! = TIMER: DO: LOOP UNTIL TIMER - T! > x
Code: Select all
dummy$=Input$(1)
Doesent fill the buffer, and doesent mess everything up like SLEEP does.
SLEEP should be avoided like a plague and syfilis infected 70yr old obesed... err... woman that.. err.. do stuf... err.. for money.. err...