[sdiy] Re: PCSYNTH Web Page Up
Scott Gravenhorst
music.maker at gte.net
Wed Jun 8 20:40:14 CEST 2005
<andym00 at gmail.com> wrote:
>Scott Gravenhorst
>>
>> The problem with DMA and a sound card is that different sound
>> cards have different control electronics and therefore may
>> required different DMA programming. If I write it for a
>> soundblaster (which are the only cards I have), then it may
>> not work for those who selected different soundcards. I
>> don't want to write different drivers for different cards.
>> This simple ISA interface should be fast enough and should
>> work for everyone, unless I'm missing something here.
>
>Sorry for jutting in, but I've been following this.. Sounds really cool :)
>
>Are you sure you can get the interrupt latency into reasonable realms ? You
>state 1.5uS for an OUT to the ISA bus which sounds about right from memory,
>but with your interrupt driven method you're going to be at the mercy of
>other interrupts in the system, and whatever other IO the system does..
This is the reason I chose DOS as the OS. DOS will be used to boot and load
the program. Then, the program will turn off any interrupting device that it
doesn't need. RAM refresh is the only thing I can think of that absolutely
must be left on.
>Keyboard, serial evetns, disk drivers, even the DOS service stuff.. Just
>about everything writes through IO ports, and compounded with the x86s shit
>interrupt latency anyway, due to some of the horrendously long execution
>times I'd be nervous to drive such a contraption which a highly accurate
>timing, without some pretty bad jitter on the outputs, especially of
>anything ever switches the interrupts off momentarily ;)
I've heard this over and over, but only from people who have never tried it.
I intend to try this and prove it one way other the other. Either the
nay-sayers are right or I am. We'll see.
>Unless you're going to kill everything system-side and handle and write all
>keyboard, mouse and other IO yourself under controlled conditions ?
Something like that.
>Possibly some DAC card-side FIFO that'd take 4 or 8 or so samples ?
I don't believe that will be necessary. The whole point here is simplicity.
If I can do this with a single buffer, that's how it will happen. But I
won't know until I actually try it. And I have faster systems if things
don't work out with the 5x86-133.
>One thing to take into account with the DMA/SB approach is that a lot of
>the old cards did emulate SBs, and funnily enough even Windows today still
>emulates an SB16, so if you run a SB based app in windows it'll actually
>work, which might make development easier.. It certainly makes the
>stability of the IO rock solid, even if you run with something as small as
>8 sample buffers, and the code is pretty tiny to fire up an SB in
>auto-initialised mode ;)
I'll let someone else write a DMA based sound card synth. They're welcome to
do it. I don't wish to do that, at least not at this point.
---------------------------------------------------------
- Where merit is not rewarded, excellence fades.
- Hydrogen is pointless without solar.
- What good are laws that only lawyers understand?
- The media's credibility should always be questioned.
- The only good terrorist is a dead terrorist.
- Governments do nothing well, save collect taxes.
-- Scott Gravenhorst | LegoManiac / Lego Trains / RIS 1.5
-- Linux Rex | RedWebMail by RedStarWare
-- FatMan: home1.gte.net/res0658s/fatman/
-- NonFatMan: home1.gte.net/res0658s/electronics/
-- Autodidactic Master of Arcane and Hidden Knowledge.
More information about the Synth-diy
mailing list