Karlos wrote:
If the card is attached via the clock port I am assuming that it can't access anything on the motherboard and that basically the CPU has to perform PIO on it.
Yes, the DSP can only access the small memory on the Delfina board. All Amiga<->Delfina transfers must be performed by the Amiga CPU. The DSP can send IRQ's to Amiga to trigger data transfers or any other action.
How fast is the CPU -> delfina transfer? Is it fast enough so that several streams of 16-bit audio can be written and then mixed by the DSP, or do the existing drivers do software mixing and then pass the mixed stream to the card? If it is the latter, then what role does the DSP play in normal use?
I don't remember the exact numbers anymore but I think the clockport limits Amiga<->Delfina transfers to something like 300 kBytes per second. Recording or playback of one CD-quality stream (stereo, 16 bit, 44100 or 48000 Hz) will work, but with quite high load on the Amiga CPU which is busy doing those slow transfers. Playback of several streams or using full-duplex mode (recording and playing at the same time) is not possible because of the slow clockport, although Delfina would be perfectly able to do this. Mixing of audio channels is done by the DSP, of course.
Additionally (and most importantly), can I, as a curious developer, write my own DSP code and run it on the card?
Yes, you can write and run your own code on the DSP. You have to write it in DSP assembly, though. There are several third-party programs for Delfina available on Aminet, some of them including full source codes:
http://aminet.net/search?query=delfinaWhat technical limitations are there with respect to the interface to the DSP (ie what restrictions other than speed and address range does the clockport impose)?
I'm not aware of any functional differences between the Delfinas with Zorro and clockport interfaces. Delfina1200 and Delfina Flipper are crippled badly by the slow clockport interface, so if you have the choice then get a Zorro-Delfina, i.e. a Delfina Lite!