RTTY
[Top] [All Lists]

Re: [RTTY] Optimal RTTY Filters

To: RTTY Reflector <rtty@contesting.com>
Subject: Re: [RTTY] Optimal RTTY Filters
From: Kok Chen <chen@mac.com>
Date: Sat, 25 Feb 2012 14:36:07 -0800
List-post: <rtty@contesting.com">mailto:rtty@contesting.com>
On Feb 25, 2012, at 10:40 AM, Rudy Bakalov wrote:

> I think we have all given up out hopes that you will every write code for 
> Windows :-) , but I was wondering if you could write some pseudo code that 
> Windows developers can use as a starting point and implement your great work 
> under Windows.

I am reasonably agnostic when it comes to OS.  It is just that I feel more 
comfortable in the Unix environment (Mac OS X is just Unix underneath) and the 
Cocoa framework allows me to develop GUI much faster than by using other 
frameworks.

As to pseudo code, I do try to include actual code snippets in plain C or 
Objective-C when I think it could be useful.  The extended Nyquist article has 
a short code snippet, so someone else can easily replicate the filter kernels.  
Another example is an article on my web site on an alternate implementation of 
the MFSK16 interleaver. 

Every program that I release to the public includes free complete source code 
(in fact, the entire Xcode projects).  Warts and all.  I consciously include no 
GPL code in the programs, so that the next person also has complete freedom 
from GPL, and can take as much or as little as they like.

> I am not a developer, but I will go on a limb guessing that the OS-specific 
> portion of the code is all around getting the audio in and the GUI, not the 
> actual signal processing.

You are correct about audio (Core Audio) and GUI (Cocoa).  For signal 
processing, I use vector routines for FFTs, dot products, convolutions, etc, 
that come from the vecLib framework in Mac OS X.  The vecLib library compiles 
to the SIMD (SSE) hardware in the Intel processors.  All of these are probably 
easy enough to code around, even though it is probably not possible to 
replicate the "look and feel" of the Cocoa GUI on other OS; but GUI is a 
personal preference kind of thing, it has nothing to do with modem performance.

The less portable parts are the multi-core optimization done with what Mac OS X 
calls "Grand Central Dispatch."  I seldom have to resort to coding for multiple 
core, however -- so far I have been able to limit its use to cocoaNEC (antenna 
design) and cocoaPath (HF channel simulator), where speed is important.

> Is it possible do publish such pseudo code that is abstracted from the actual 
> OS platform?

If anyone finds a piece of code from my projects that are too obfuscated, I am 
more than willing to break it down to equations and algorithms. 

73
Chen, W7AY



 
_______________________________________________
RTTY mailing list
RTTY@contesting.com
http://lists.contesting.com/mailman/listinfo/rtty

<Prev in Thread] Current Thread [Next in Thread>