Debugger Components
General Debugger Components
128
Microcontrollers Debugger Manual
ESC is the ESC Character (ASCII code 27 decimal).
These commands can be given in the data stream sent from the serial port or virtual SCI
port, but not from the input file or the keyboard. They only have an effect if there are any
connections reading from the input file or writing to the output file.
The TERM_Direct function declared in terminal.h is used to send such commands
from a target via SCI to the terminal. Listing 3.3 shows the source code in terminal.c.
Listing 3.3 TERM_Direct Source Code
void TERM_Direct(TERM_DirectKind what, const char* fileName) {
/* sets direction of the terminal */
if (what < TERM_TO_WINDOW || what > TERM_APPEND_FILE) return;
TERM_Write(ESC); TERM_Write('h');
TERM_Write((char)(what + '0'));
if (what != TERM_TO_WINDOW && what != TERM_FROM_KEYS) {
TERM_WriteString(fileName); TERM_Write(CR);
}
}
In the example, the parameter what is one of the following constants:
TERM_TO_WINDOW: send output to terminal window
TERM_TO_BOTH: send output to file and window
TERM_TO_FILE: send output to file fileName
TERM_FROM_KEYS: read from keyboard (close input file)
TERM_FROM_FILE: read input from file fileName
Table 3.37 Terminal File Control Commands
Escape Sequence Function
ESC “h” “1” Close output file.
ESC “h” “2” filename Open output file.
ESC “h” “3” filename Open output file and suppress output to terminal display.
ESC “h” “4” Close input file
ESC “h” “5” filename Open input file.
ESC “h” “6” filename Append to existing output file.
ESC “h” “7” filename Append to existing output file and suppress output to terminal
display.