Basic

Moderators: None (Apply to moderate this forum)
Number of threads: 1677
Number of posts: 4766

This Forum Only
Post New Thread
Single Post View       Linear View       Threaded View      f

Edit Report
WAV player for BASIC... Posted by Matthew Gross on 16 Sept 1998 at 8:26 PM
Ryan Verner requested it, and I've been playing around<br>
with it for a while, but it's now in usuable BETA form. You can<br>
pick it up at my website below. It is currently in a usuable form<br>
for both Qbasic and Turbo Basic, and it probably wouldn't take much<br>
modification to work for other basics.<br>
The library plays WAV files up to 65300 bytes long, 8-bit, mono<br>
on all SB-compatable cards, at either 11025,22050, or 44100 Hz. speeds.<br>
It's free, so if you're interested, just pick it up, it's under the<br>
"Turbo Basic" section on my homepage.<p>
P.S: If I get enough requests, I'll add unlimited size support and<br>
continous play...


URL:http://acheronx.ml.org/home/

Edit Report
Re: WAV player for BASIC... Posted by Gunbaster on 19 Sept 1998 at 9:59 PM
: Ryan Verner requested it, and I've been playing around<br>
: with it for a while, but it's now in usuable BETA form. You can<br>
: pick it up at my website below. It is currently in a usuable form<br>
: for both Qbasic and Turbo Basic, and it probably wouldn't take much<br>
: modification to work for other basics.<br>
: The library plays WAV files up to 65300 bytes long, 8-bit, mono<br>
: on all SB-compatable cards, at either 11025,22050, or 44100 Hz. speeds.<br>
: It's free, so if you're interested, just pick it up, it's under the<br>
: "Turbo Basic" section on my homepage.<p>
: P.S: If I get enough requests, I'll add unlimited size support and<br>
: continous play...<p>
Is this WAV player use DMA??? Because I want to play WAV file and I can still<br>
do other things at the same time.


Edit Report
Yes... Posted by Matthew Gross on 19 Sept 1998 at 10:13 PM
Yes, it uses DMA, so after the couple of cycles it takes to <br>
execute the SB_Play function, you can do whatever you want to<br>
while the WAV is playing.<p>
<p>



URL:http://acheronx.ml.org/home/

Edit Report
Re: Yes... Posted by Gunbaster on 21 Sept 1998 at 9:46 PM
: Yes, it uses DMA, so after the couple of cycles it takes to <br>
: execute the SB_Play function, you can do whatever you want to<br>
: while the WAV is playing.<p>
How about IRQ???? Because most of the game need to play multiple<br>
WAV file at the same time. And have you ever heard DMAplay 6.0???<br>
how is yours compare to DMAPlay 6.0??<p>



Edit Report
IRQ Posted by Matthew Gross on 22 Sept 1998 at 10:35 AM
No, I've never heard of DMAPlay6.0, if you could give me a link<br>
to it, I'd appreciate it. As for using the IRQ, I detect it but do not<br>
use it, as my routine automatically overlaps the sounds. This is, of<br>
course, provided they are actually long enough to make a difference...<br>
The main reason I coded this lib (I'm not a BASIC programmer, it's almost<br>
all in ASM) is that it was requested by someone who couldn't find a WAV<br>
player that played WAVs over 32000 bytes in length. My lib plays sound<br>
65300 byte files.<br>
As for continous play, I do that via interrupt hooks in the full Pascal<br>
version of this same library. To see an example of that, there is a demo<br>
using that version at the below link.<br>
As mentioned in the docs for it, I'll add unlimited file size support <br>
and background play if there's a demand for it. If there's already a product<br>
doing that for QBASIC/Turbo Basic, I really don't see the point in<br>
duplicating their work...


URL:http://acheronx.ml.org/ukpub/demo.zip

Edit Report
Re: IRQ Posted by Gunbaster on 22 Sept 1998 at 4:00 PM
I think you can download here. I think it's the first DMAPlay program ever made <br>
in QB. And it has different version. DMAPlay 6.0 is the latest version. <p>
http://www.ocf.berkeley.edu/~horie/project.html<br>



Edit Report
Comparison... Posted by Matthew Gross on 22 Sept 1998 at 8:41 PM
<PRE><br>
I downloaded both DMAPlay 6 and another player called WavPlay, and <br>
compared them to BasPlay. Here's the results:<p>
BasPlay DMAPlay WavPlay<br>
DMA playing capability x x x<br>
IRQ required x x<br>
Supports older BASICs x <br>
Recording Options x x<br>
Maximum File Size 65300 none none<br>
Memory Buffer 65300 32000 7058<br>
File I/O ASM BASIC BASIC<br>
SB Interface ASM BASIC BASIC<br>
Port detect via hardware x <br>
Volume Adjust x<br>
Fixed memory segment x <p>
Note that playing for files over their buffer size is done<br>
via the slow BASIC file I/O, buffering whenever the info is<br>
need. DMAPlay claims it will run under GW-BASIC "with a few<br>
small changes..." I don't think that's actually true, as I<br>
don't remember GW-BASIC having OUT and INP.<br>
Anyway, that's my attempt at an unbiased review... If you<br>
have any comments, questions, just post or mail me at the<br>
above address.<br>
</PRE><p>



URL:http://acheronx.ml.org/home/

Edit Report
Re: Comparison... Posted by Gunbaster on 23 Sept 1998 at 3:41 PM
I've downloaded your BASpaly. Well, I don't know to run it or port it into QuickBasic. <br>
Could you tell me??? And the "tbst.exe"(compiled by Turnbobasic) file you included, can't<br>
run it. I can only hear static noise from my Sound Blaster PRO.


Edit Report
Bugs... Posted by Matthew Gross on 24 Sept 1998 at 2:28 PM
Well, it is listed as the beta version... ;)<p>
Currently, BasPlay suffers from a rather tricky bug, one<br>
which I spend the last 4 hours isolating, but haven't quite<br>
fixed yet. If you run in in the environment (i.e. QBASIC,<br>
Turbo Basic, QuickBasic 4.5..) it'll run fine. However, for<br>
some bizarre reason as an EXE it doesn't function.<br>
I've currently isolated it to the SBPlay function, and <br>
I'll post here as soon as I've irradicated the bug.<br>



URL:http://acheronx.ml.org/home/

Edit Report
Re: Bugs... Posted by Gunbaster on 29 Sept 1998 at 4:25 PM
Are you still working on your Basplay now??? If so how is it?? Or do you have a QB version??<br>
I just want to know.


Edit Report
Re: Bugs... Posted by Matthew Gross on 29 Sept 1998 at 4:58 PM
Well... I have refined it a bit since the version posted on my web site...<br>
However, I haven't solved the vital problem of getting it to work since<br>
I last posted. I used the pure assembly code, simulated the BASIC code part<br>
of it, and assembled it... The damn thing worked like a charm...<br>
I'm really at the end of my rope here... If you want the code or<br>
know someone that does, I'll give it all to you, since I really don't think<br>
it's very useful in it's current form, and I just don't have the hours to<br>
play around with it.<br>



URL:http://acheronx.ml.org/home/




 

Recent Jobs

Official Programmer's Heaven Blogs
Web Hosting | Browser and Social Games | Gadgets

Popular resources on Programmersheaven.com
Assembly | Basic | C | C# | C++ | Delphi | Flash | Java | JavaScript | Pascal | Perl | PHP | Python | Ruby | Visual Basic
© Copyright 2011 Programmersheaven.com - All rights reserved.
Reproduction in whole or in part, in any form or medium without express written permission is prohibited.
Violators of this policy may be subject to legal action. Please read our Terms Of Use and Privacy Statement for more information.
Operated by CommunityHeaven, a BootstrapLabs company.