Date: Thu, 21 Apr 94 15:20:30 CET From: Piet=Mertens%users%LW AT cc3 DOT kuleuven DOT ac DOT be Subject: re: SB, timer reprogramming To: djgpp AT sun DOT soe DOT clarkson DOT edu Cc: kordmann AT ldv01 DOT uni-trier DOT de > From: kordmann AT ldv01 DOT Uni-Trier DOT DE (Gerhard Kordmann) > I'm trying to find a way to use the soundblaster under djgpp > without crashing the system (don't we all...) > As interrupt programming turned out to be buggy, I tried the > brute force method : Reset the clock speed, wait until it > changes (the clock, that is) in a loop and then send the > next byte. This is ugly, probably not very precise and it > works perfectly. Under Turbo-C 2.0. > Unfortunately it gives only unpredictable delays, sometimes > a kind of slow motion playing or crashes as soon as I compile > with djgcc :-( > Does anyone see why this, again, does not work ? Will we ever > be able to safely play sounds under djgcc ? Will I be > saved from nervous breakdown ? Hi, I wrote an analog I/O routine (for a Metrabyte DASH-16) which also uses polling. (I'm polling the clock on the board, and read/write a value after each tick.) I had similar interruptions of the conversion, but they went away by adding disable() and enable() resp. before and after the conversion loop. These functions are as in TC2.0, and a DJGPP version is given in the file sb.c from the sblaster.zip contribution by David Baggett. Hope this helps. Piet P.S. Does the SB have a programmable clock (sampling rate generator) ? - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - P. Mertens tel: +32.16..28.47.63 Department of Linguistics fax: +32.16..28.50.25 Centre for Computational Linguistics email: pmertens AT cc3 DOT kuleuven DOT ac DOT be K.U.Leuven NB: Please do not use "reply"-function Blijde-Inkomststraat 21 Instead use email adress above. 3000 Leuven (Belgium) - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -