On Feb 26, 2009, at 7:01 AM, Brian Alsop wrote: > I think it is a bit ironic that for RTTY, external TNC's have become > passe in favor of direct computer decode/encode.
Just a property of how computers handle audio. USB Sound Cards go through what are called Isochronous Transfer of USB. These are handled by very high priority tasks, with sufficient audio buffering in the kernel ensure that there are no audio drop outs. Ditto FireWire sound cards, and on-board codecs. This is one reason why I had implemented CW in cocoaModem by using J2A emission (i.e., audio generated CW) instead of A1A emission. It is the only way, short of using WinKey for A1A keying, to ensure that kernel swaps do no interfere with inter-element Morse spacings. (J2A also allows one to implement arbitrary waveshaping of the "keying" waveform. cocoaModem uses a Blackman window to waveshape the CW pulses.) Now, the ironic part is that older operating systems such as MS-DOS and Mac OS 9 work fine with A1A "bit banging" up to very high CW speeds. With today's computers, assuming you can still run those operating system, you can probably run 1000 wpm and still achieve close to perfect Morse inter-element timing. The problem with modern operating systems is that whatever that is running in "user space" can be preempted by the kernel. A key-up or key-down could therefore be delayed just slightly -- but often perceptible by an ear listening to the CW. One way to get around modern operating systems is to write a Morse "device" to run in the kernel (for example, running a WinKey emulator in the kernel). For Mac OS X, this would be a "kernel extension" (kext). Running as a kernel process comes with the associated complexity and dangers (a bug can cause the entire computer to crash). The µH Router, which I wrote for Mac OS X to allow different programs to share a microHAM keyer, actually has a built in "WinKey" emulator, for use with the digiKEYER that does not have a built-in WinKey chip. However, this emulator runs in user space, and now and then you can hear a Morse element being stretched so the rhythm is not perfectly right all the time when running CW even at a slow 25 wpm, even on a dual core computer and even when the emulator is running on a separate high priority (user) thread. 73 Chen, W7AY ______________________________________________________________ Elecraft mailing list Home: http://mailman.qth.net/mailman/listinfo/elecraft Help: http://mailman.qth.net/mmfaq.htm Post: mailto:[email protected] This list hosted by: http://www.qsl.net Please help support this email list: http://www.qsl.net/donate.html

