Okay - I've posted a test version of code at
http://www.surveyor.com/blackfin/srv-blackfin-servo-020108.zip I have added the 'S' and 's' commands to the protocol. At the moment, the range of supported values is 0-100 (0x00 - 0x64) rather than 0-255, but we can change that later. So in srv.config, the command
533232
would be the equivalent of 'S' 50 50, which generates 1.5ms pulses at 50Hz on timer channels 2 & 3. An 's' (0x73) command has an equivalent effect on channels 6 & 7.
The 'M' commands still work as well. If the processor first sees an 'M' command, it will initialize the timer channels 2 & 3 in PWM mode for the robot H-bridge, and the keypad commands are activated in this mode after the first 'M' command is issued.
If the processor first sees an 'S' command, it will initialize timer channels 2 & 3 in PPM (servo) mode, and when it first sees the 's' command, it will initialize timer channels 6 & 7 in PPM (servo) mode as well.
I tested the same code on an SRV-1 robot and on the coaxial rotor flyer using all 4 channels, and everything seems to be working, but please let me know how things go for you.
By the way, you can still drive this from a terminal - here's a link to an ASCII chart
http://www.cdrummond.qc.ca/cegep/informat/Professeurs/Alain/images/ASCII1.GIF so the sequence "S22" would be the same as 533232 or 'S' 50 50