Command line editor

Capable of, like a modem, receiving, editing and executing one (command) line of input.
The code in this example project shows a command line editor that can be used in servers (big word) you build, based on PIC's.

The edit keys are:
        Control A   = beginning of line         
        Control E   = end of line               
        Control C   = erase line                
        Backspace   = delete previous character 
        Delete      = delete character          
        Up arrow    = previous command          
        Down arrow  = next command              
        Left arrow  = previous character        
        Right arrow = next character            
        Character   = insert character          
        CR          = execute line 
The number of commands remembered can be defined in constant "NrPrevCommands", the maximum length of the input line (commandline) in variable "LocalCommandLen".
The routines "InputCharPresent", "ReadInputChar", "EchoChar", "EchoText" have to be adapted to the specific client (rs232, Ethernet, Usb, etc...).
The routine "Execute" has to be adapted to the needs of the application. On entry of it the commandline to execute is in "LocalCommand".
If needed/present, also the routine "interrupt" has to be adapted to the needs of the application.

In the project as it is now, the client is an rs232/uart based one, e.g. a PC with hyperterminal at 9600 baud. The uart reception is done via a interrupt based uart receiver, hence the presence of an interrupt service routine.
-------------------------------------------