> 1) Does anybody write real-time DTMF > decoder's code (algorithm, theoretical principle) for PIC16CXX > devices ? Theoretically possible; some solutions have been given that work in some "sheltered" situations (e.g. where the DTMF will be clean and of long duration) but no generally-effective solution has been offered yet. > 2) The same question about little size real time > kernel (mini multitasker) for PIC16CXX ? The problem with a mini-kernel is that the PIC has no user-accessible stack. As a result, there is no way an interrupt-based kernel could perform any useful type of context switch. Non-preemptive multitasking could be simul- ated if nothing needs to be kept on the stack at switch-points; one method would be to have the executive "call" each piece of user code which will then RETLW the address of the next piece of that "thread". Otherwise a good technique is to have an "as-often-as-possible" routine which does all the time-critical stuff and just have the main program call that routine periodically.