TYPE wave byte AS STRING * 1 END TYPE DIM SHARED w AS wave ' BELOW IS USELESS HARDWARE INIT CODE. THIS IS JUST SO THE CODE WILL WORK ' ITS NOT NECESSERY FOR THIS CODE TO EXIST WHEN YOU ARE TRYING TO LEARN THE ' FORMAT BUT IT ISA WHEN YOU ARE TRYING TO PLAY A WAVE OUT &H226, 1: OUT &H226, 0 ' start reseting the sound card DO x% = INP(&H22E) IF x% AND 128 THEN x% = INP(&H22A) IF x% = &HAA THEN EXIT DO END IF LOOP ' End of reset section DO x% = INP(&H22C) ' make sure speaker is ready LOOP WHILE x% AND 128 OUT &H22C, &HD1 ' send speaker on code ' THE HARDWARE INIT CODE ENDS HERE. OPEN "c:\windows\tada.wav" FOR BINARY AS #1 'OPEN .WAV FILE INTO #1 bpos% = 1 ' SET BYTE POS DO ' START LOOP OUT &H22C, &H10 ' SET SB CARD TO GET DATA GET #1, bpos%, w.byte ' TAKE 1 BYTE FROM A FILE FROM THE BYTE POS PLACE IN ' W.BYTE bpos% = bpos% + 6 ' INCREASE THE BYTE POS BY 6. PEOPLE WITH FAST PC'S MAY WANT ' TO DECREASE THIS NUMBER f% = ASC(w.byte) ' GET ASCII VALUE OF W.BYTE PLACE IN F% OUT &H22C, f% ' PLACE F% IN PORT 22Ch (OWNED BY SOUND BLASTER CARD) LOOP UNTIL EOF(1) ' KEEP ON LOOPING UNTIL END OF FILE REACHED CLOSE #1 ' CLOSE FILE #1