'=========================================================================== ' Subject: WAV PLAYER Date: Unknown Date ' Author: Jos Szabo Code: QB, QBasic, PDS ' Origin: BASIC Archives HomePage Packet: SOUND.ABC '=========================================================================== DECLARE SUB SetVoice (OnOff%) CLS '-Div.Init (maybe you get the filename from commandline? VocFile$ = "C:\sounds\hey!.wav" ' input-file FILES "c:\sounds\*.*" PRINT INPUT "Please enter a file path and name (.WAV): ", VocFile$ VocFile$ = "c:\sounds\" + VocFile$ + ".wav" VocFile% = FREEFILE ' . Delay% = 11 ' value for delay '-open the voc-file OPEN VocFile$ FOR BINARY AS #VocFile% '-parameters for copy-to-soundblaster Bytes& = LOF(VocFile%) ' number of bytes BytesRemaining& = Bytes& ' number of remaining bytes BufferMax% = &H7F00 ' largest buffer Buffer$ = SPACE$(BufferMax%) ' create buffer SetVoice 1 ' Soundblaster on '-read {BufferMax%} bytes from disc, output on SB DO BytesRemaining& = BytesRemaining& - BufferLen% IF BytesRemaining& = 0 THEN EXIT DO ' nothing left over? IF BytesRemaining& > BufferMax% THEN ' how many bytes? BufferLen% = BufferMax% ' ELSE BufferLen% = BytesRemaining& ' remaining (