Kill most warnings in lib/DtTerm.

Mostly missing headers, explicit parentheses and new prototypes.

Some Caveats:
* I haven't compile-tested the SVR4 getpty file, it might need another tweak
* There were operator precedence bugs in TermPrimCursor.c and TermPrimRender.c
  (^ vs. !=).  This might change behaviour, but at least I haven't experienced
  any crashes ...
* This adds a little more dependencies for include ordering, but unless we
  want to play the "headers that include headers that include headers..." game,
  this is unavoidable.
This commit is contained in:
Pascal Stumpf
2013-07-22 12:34:15 +02:00
committed by Jon Trulson
parent 8f98ac92cd
commit dc0e8ea74d
43 changed files with 437 additions and 285 deletions

View File

@@ -49,28 +49,28 @@ static StateTableRec stateStart;
static StateEntryRec
pre_parse_table[] =
{
0x00, 0x00, NULL, NULL, /* null chars -- ignore */
{ 0x00, 0x00, NULL, NULL, /* null chars -- ignore */ },
#ifdef NOTDEF
0x05, 0x05, NULL, enquire, /* send answer back */
{ 0x05, 0x05, NULL, enquire, /* send answer back */ },
#endif /* NOTDEF */
0x07, 0x07, NULL, _DtTermPrimParseBell, /* ring the bell */
0x08, 0x08, NULL, _DtTermParseBackspace, /* backspace */
0x09, 0x09, NULL, _DtTermParseTab, /* horizontal tab */
0x0A, 0x0A, NULL, _DtTermParseLF, /* newline */
0x0B, 0x0B, NULL, _DtTermParseLF, /* Vertical Tab (Ctrl-k) */
0x0C, 0x0C, NULL, _DtTermParseLF, /* Form Feed or New Page */
0x0D, 0x0D, NULL, _DtTermPrimParseCR, /* carriage return */
0x0E, 0x0F, NULL, _DtTermParseFontShift, /* font shift in/out */
0x1B, 0x1B, &_DtTermStateEscape, _DtTermClearParam, /* Esc */
0x84, 0x84, &stateStart,_DtTermIndex, /* Index */
0x85, 0x85, &stateStart,_DtTermNextLine, /* Next Line */
0x88, 0x88, &stateStart,_DtTermTabSet, /* Horizontal Tab Set */
0x8D, 0x8D, &stateStart,_DtTermReverseIndex, /* Reverse Index */
0x8E, 0x8E, &stateStart,_DtTermSingleShiftG2,/* Single Shift G2 */
0x8F, 0x8F, &stateStart,_DtTermSingleShiftG3, /* Single Shift G3 */
0x90, 0x90, &_DtTermStateP, _DtTermPrimParserNextState, /* DCS */
0x9B, 0x9B, &_DtTermStateLeftBracket, _DtTermClearParam,/*CSI*/
0x00, 0xFF, NULL, NULL, /* end of table */
{ 0x07, 0x07, NULL, _DtTermPrimParseBell, /* ring the bell */ },
{ 0x08, 0x08, NULL, _DtTermParseBackspace, /* backspace */ },
{ 0x09, 0x09, NULL, _DtTermParseTab, /* horizontal tab */ },
{ 0x0A, 0x0A, NULL, _DtTermParseLF, /* newline */ },
{ 0x0B, 0x0B, NULL, _DtTermParseLF, /* Vertical Tab (Ctrl-k) */ },
{ 0x0C, 0x0C, NULL, _DtTermParseLF, /* Form Feed or New Page */ },
{ 0x0D, 0x0D, NULL, _DtTermPrimParseCR, /* carriage return */ },
{ 0x0E, 0x0F, NULL, _DtTermParseFontShift, /* font shift in/out */ },
{ 0x1B, 0x1B, &_DtTermStateEscape, _DtTermClearParam, /* Esc */ },
{ 0x84, 0x84, &stateStart,_DtTermIndex, /* Index */ },
{ 0x85, 0x85, &stateStart,_DtTermNextLine, /* Next Line */ },
{ 0x88, 0x88, &stateStart,_DtTermTabSet, /* Horizontal Tab Set */ },
{ 0x8D, 0x8D, &stateStart,_DtTermReverseIndex, /* Reverse Index */ },
{ 0x8E, 0x8E, &stateStart,_DtTermSingleShiftG2,/* Single Shift G2 */ },
{ 0x8F, 0x8F, &stateStart,_DtTermSingleShiftG3, /* Single Shift G3 */ },
{ 0x90, 0x90, &_DtTermStateP, _DtTermPrimParserNextState, /* DCS */ },
{ 0x9B, 0x9B, &_DtTermStateLeftBracket, _DtTermClearParam,/*CSI*/ },
{ 0x00, 0xFF, NULL, NULL, /* end of table */ },
};
/*
@@ -80,7 +80,7 @@ pre_parse_table[] =
static StateEntryRec
start_table[] =
{
0x00, 0xFF, &stateStart, _DtTermPrimParserNextState /* end of table */
{ 0x00, 0xFF, &stateStart, _DtTermPrimParserNextState /* end of table */ },
};
static StateTableRec stateStart = {True, start_table, pre_parse_table};
@@ -92,35 +92,35 @@ StateTable _DtTermStateStart = &stateStart;
static StateEntryRec
escape_table[] =
{
'[', '[', &_DtTermStateLeftBracket, _DtTermPrimParserNextState,
'#', '#', &_DtTermStatePound, _DtTermPrimParserNextState,
'(', '(', &_DtTermStateLeftParen, _DtTermPrimParserNextState,
')', ')', &_DtTermStateRightParen, _DtTermPrimParserNextState,
'*', '*', &_DtTermStateAsterisk, _DtTermPrimParserNextState,
'+', '+', &_DtTermStatePlus, _DtTermPrimParserNextState,
'7', '7', &stateStart, _DtTermSaveCursor, /* Save Cursor (DECSC) */
'8', '8', &stateStart,_DtTermRestoreCursor, /* Restore Cursor (DECRC)*/
'=', '=', &stateStart, _DtTermAppKeypad , /* App keypad */
'>', '>', &stateStart, _DtTermNormalKeypad, /* Normal keypad */
'D', 'D', &stateStart, _DtTermIndex, /* cursor down IND */
'E', 'E', &stateStart, _DtTermNextLine, /* next line (NEL) */
'H', 'H', &stateStart, _DtTermTabSet, /* Tab Set (HTS) */
'M', 'M', &stateStart, _DtTermReverseIndex, /* RI */
'N', 'N', &stateStart, _DtTermSingleShiftG2, /* SS2 */
'O', 'O', &stateStart, _DtTermSingleShiftG3, /* SS3 */
'P', 'P', &_DtTermStateP, _DtTermPrimParserNextState, /* DCS */
'Z', 'Z', &stateStart, _DtTermParseStatus, /* Same as DA */
']', ']', &_DtTermStateRightBracket, _DtTermPrimParserNextState,
'^', '^', &_DtTermStateUpArrow, _DtTermPrimParserNextState, /* PM */
'_', '_', &_DtTermStateUnderscore, _DtTermPrimParserNextState, /*ACP*/
'c', 'c', &stateStart, _DtTermReset, /* Full Reset (RIS) */
'n', 'n', &stateStart, _DtTermSelectG2, /* Select G2 character set */
'o', 'o', &stateStart, _DtTermSelectG3, /* Select G3 character set */
'|', '|', &stateStart, _DtTermInvokeG3, /* Invoke G3 character set */
'}', '}', &stateStart, _DtTermInvokeG2, /* Select G2 character set */
'~', '~', &_DtTermStateTilda, _DtTermPrimParserNextState, /* Invoke G1*/
' ', ' ', &_DtTermStateC1, _DtTermPrimParserNextState,/* set C1 control*/
0x00, 0xFF, &stateStart, _DtTermPrimParserNextState /* end of table */
{ '[', '[', &_DtTermStateLeftBracket, _DtTermPrimParserNextState, },
{ '#', '#', &_DtTermStatePound, _DtTermPrimParserNextState, },
{ '(', '(', &_DtTermStateLeftParen, _DtTermPrimParserNextState, },
{ ')', ')', &_DtTermStateRightParen, _DtTermPrimParserNextState, },
{ '*', '*', &_DtTermStateAsterisk, _DtTermPrimParserNextState, },
{ '+', '+', &_DtTermStatePlus, _DtTermPrimParserNextState, },
{ '7', '7', &stateStart, _DtTermSaveCursor, /* Save Cursor (DECSC) */ },
{ '8', '8', &stateStart,_DtTermRestoreCursor, /* Restore Cursor (DECRC)*/ },
{ '=', '=', &stateStart, _DtTermAppKeypad , /* App keypad */ },
{ '>', '>', &stateStart, _DtTermNormalKeypad, /* Normal keypad */ },
{ 'D', 'D', &stateStart, _DtTermIndex, /* cursor down IND */ },
{ 'E', 'E', &stateStart, _DtTermNextLine, /* next line (NEL) */ },
{ 'H', 'H', &stateStart, _DtTermTabSet, /* Tab Set (HTS) */ },
{ 'M', 'M', &stateStart, _DtTermReverseIndex, /* RI */ },
{ 'N', 'N', &stateStart, _DtTermSingleShiftG2, /* SS2 */ },
{ 'O', 'O', &stateStart, _DtTermSingleShiftG3, /* SS3 */ },
{ 'P', 'P', &_DtTermStateP, _DtTermPrimParserNextState, /* DCS */ },
{ 'Z', 'Z', &stateStart, _DtTermParseStatus, /* Same as DA */ },
{ ']', ']', &_DtTermStateRightBracket, _DtTermPrimParserNextState, },
{ '^', '^', &_DtTermStateUpArrow, _DtTermPrimParserNextState, /* PM */ },
{ '_', '_', &_DtTermStateUnderscore, _DtTermPrimParserNextState, /*ACP*/ },
{ 'c', 'c', &stateStart, _DtTermReset, /* Full Reset (RIS) */ },
{ 'n', 'n', &stateStart, _DtTermSelectG2, /* Select G2 character set */ },
{ 'o', 'o', &stateStart, _DtTermSelectG3, /* Select G3 character set */ },
{ '|', '|', &stateStart, _DtTermInvokeG3, /* Invoke G3 character set */ },
{ '}', '}', &stateStart, _DtTermInvokeG2, /* Select G2 character set */ },
{ '~', '~', &_DtTermStateTilda, _DtTermPrimParserNextState, /* Invoke G1*/ },
{ ' ', ' ', &_DtTermStateC1, _DtTermPrimParserNextState,/* set C1 control*/ },
{ 0x00, 0xFF, &stateStart, _DtTermPrimParserNextState /* end of table */ },
};
StateTableRec _DtTermStateEscape = {False, escape_table, pre_parse_table};
@@ -131,9 +131,9 @@ StateTableRec _DtTermStateEscape = {False, escape_table, pre_parse_table};
static StateEntryRec
set_c1_table[] =
{
'F', 'F', &stateStart, _DtTermS7C1T, /* Select 7-bit C1 Control */
'G', 'G', &stateStart, _DtTermS8C1T, /* Select 8-bit C1 Control */
0x00, 0xFF, &stateStart, _DtTermPrintState , /* end of table */
{ 'F', 'F', &stateStart, _DtTermS7C1T, /* Select 7-bit C1 Control */ },
{ 'G', 'G', &stateStart, _DtTermS8C1T, /* Select 8-bit C1 Control */ },
{ 0x00, 0xFF, &stateStart, _DtTermPrintState , /* end of table */ },
};
StateTableRec _DtTermStateC1 = {False, set_c1_table, pre_parse_table};
@@ -143,11 +143,11 @@ StateTableRec _DtTermStateC1 = {False, set_c1_table, pre_parse_table};
static StateEntryRec
pound_table[] =
{
'3', '3', &stateStart, _DtTermDoubleHigh,
'5', '5', &stateStart, _DtTermSingleWide,
'6', '6', &stateStart, _DtTermDoubleWide,
'8', '8', &stateStart, _DtTermAlignTest,
0x00, 0xFF, &stateStart, _DtTermPrintState , /* end of table */
{ '3', '3', &stateStart, _DtTermDoubleHigh, },
{ '5', '5', &stateStart, _DtTermSingleWide, },
{ '6', '6', &stateStart, _DtTermDoubleWide, },
{ '8', '8', &stateStart, _DtTermAlignTest, },
{ 0x00, 0xFF, &stateStart, _DtTermPrintState , /* end of table */ },
};
StateTableRec _DtTermStatePound = {False, pound_table, pre_parse_table};
@@ -158,7 +158,7 @@ StateTableRec _DtTermStatePound = {False, pound_table, pre_parse_table};
static StateEntryRec
left_paren_table[] =
{
0x00, 0xFF, &stateStart, _DtTermParseFontG0 /* end of table */
{ 0x00, 0xFF, &stateStart, _DtTermParseFontG0 /* end of table */ },
};
StateTableRec _DtTermStateLeftParen = {False, left_paren_table, pre_parse_table};
@@ -168,7 +168,7 @@ StateTableRec _DtTermStateLeftParen = {False, left_paren_table, pre_parse_tabl
static StateEntryRec
right_paren_table[] =
{
0x00, 0xFF, &stateStart, _DtTermParseFontG1 /* end of table */
{ 0x00, 0xFF, &stateStart, _DtTermParseFontG1 /* end of table */ },
};
StateTableRec _DtTermStateRightParen = {False, right_paren_table, pre_parse_table};
@@ -178,7 +178,7 @@ StateTableRec _DtTermStateRightParen = {False, right_paren_table, pre_parse_ta
static StateEntryRec
esc_asterisk_table[] =
{
0x00, 0xFF, &stateStart, _DtTermParseFontG2 /* end of table */
{ 0x00, 0xFF, &stateStart, _DtTermParseFontG2 /* end of table */ },
};
StateTableRec _DtTermStateAsterisk = {False, esc_asterisk_table, pre_parse_table};
@@ -188,7 +188,7 @@ StateTableRec _DtTermStateAsterisk = {False, esc_asterisk_table, pre_parse_tabl
static StateEntryRec
plus_table[] =
{
0x00, 0xFF, &stateStart, _DtTermParseFontG3 /* end of table */
{ 0x00, 0xFF, &stateStart, _DtTermParseFontG3 /* end of table */ },
};
StateTableRec _DtTermStatePlus = {False, plus_table, pre_parse_table};
@@ -198,8 +198,8 @@ StateTableRec _DtTermStatePlus = {False, plus_table, pre_parse_table};
static StateEntryRec
get_titleBS_table[] =
{
'\\', '\\', &stateStart, _DtTermParserSunWindowTitle,
0x00,0xFF, &_DtTermStateGetTitle, _DtTermSaveChar,
{ '\\', '\\', &stateStart, _DtTermParserSunWindowTitle, },
{ 0x00,0xFF, &_DtTermStateGetTitle, _DtTermSaveChar, },
};
StateTableRec _DtTermStateGetTitleBS = {False, get_titleBS_table};
@@ -209,8 +209,8 @@ StateTableRec _DtTermStateGetTitleBS = {False, get_titleBS_table};
static StateEntryRec
get_title_table[] =
{
0x1B, 0x1B,&_DtTermStateGetTitleBS,_DtTermPrimParserNextState,
0x00,0xFF, &_DtTermStateGetTitle, _DtTermSaveChar,
{ 0x1B, 0x1B,&_DtTermStateGetTitleBS,_DtTermPrimParserNextState, },
{ 0x00,0xFF, &_DtTermStateGetTitle, _DtTermSaveChar, },
};
StateTableRec _DtTermStateGetTitle = {False, get_title_table};
@@ -220,8 +220,8 @@ StateTableRec _DtTermStateGetTitle = {False, get_title_table};
static StateEntryRec
get_iconBS_table[] =
{
'\\', '\\', &stateStart, _DtTermParserSunWindowIcon,
0x00,0xFF, &_DtTermStateGetIcon, _DtTermSaveChar,
{ '\\', '\\', &stateStart, _DtTermParserSunWindowIcon, },
{ 0x00,0xFF, &_DtTermStateGetIcon, _DtTermSaveChar, },
};
StateTableRec _DtTermStateGetIconBS = {False, get_iconBS_table};
@@ -231,8 +231,8 @@ StateTableRec _DtTermStateGetIconBS = {False, get_iconBS_table};
static StateEntryRec
get_icon_table[] =
{
0x1B, 0x1B,&_DtTermStateGetIconBS , _DtTermPrimParserNextState,
0x00,0xFF, &_DtTermStateGetIcon, _DtTermSaveChar,
{ 0x1B, 0x1B,&_DtTermStateGetIconBS , _DtTermPrimParserNextState, },
{ 0x00,0xFF, &_DtTermStateGetIcon, _DtTermSaveChar, },
};
StateTableRec _DtTermStateGetIcon = {False, get_icon_table};
@@ -242,8 +242,8 @@ StateTableRec _DtTermStateGetIcon = {False, get_icon_table};
static StateEntryRec
get_fileBS_table[] =
{
'\\', '\\', &stateStart, _DtTermParserSunIconFile,
0x00,0xFF, &_DtTermStateGetIconFile, _DtTermSaveChar,
{ '\\', '\\', &stateStart, _DtTermParserSunIconFile, },
{ 0x00,0xFF, &_DtTermStateGetIconFile, _DtTermSaveChar, },
};
StateTableRec _DtTermStateGetIconFileBS = {False, get_fileBS_table};
@@ -253,8 +253,8 @@ StateTableRec _DtTermStateGetIconFileBS = {False, get_fileBS_table};
static StateEntryRec
get_file_table[] =
{
0x1B, 0x1B,&_DtTermStateGetIconFileBS , _DtTermPrimParserNextState,
0x00,0xFF, &_DtTermStateGetIconFile, _DtTermSaveChar,
{ 0x1B, 0x1B,&_DtTermStateGetIconFileBS , _DtTermPrimParserNextState, },
{ 0x00,0xFF, &_DtTermStateGetIconFile, _DtTermSaveChar, },
};
StateTableRec _DtTermStateGetIconFile = {False, get_file_table};
@@ -265,9 +265,9 @@ StateTableRec _DtTermStateGetIconFile = {False, get_file_table};
static StateEntryRec
get_stringBS_table[] =
{
'\\', '\\', &stateStart, _DtTermPrimParserNextState,/*valid terminator*/
0x07, 0x07, &stateStart, _DtTermChangeTextParam,/*new Icon,Title,etc*/
0x00, 0xFF, &_DtTermStateGetString, _DtTermSaveChar, /* text*/
{ '\\', '\\', &stateStart, _DtTermPrimParserNextState,/*valid terminator*/ },
{ 0x07, 0x07, &stateStart, _DtTermChangeTextParam,/*new Icon,Title,etc*/ },
{ 0x00, 0xFF, &_DtTermStateGetString, _DtTermSaveChar, /* text*/ },
};
StateTableRec _DtTermStateGetStringBS = {False, get_stringBS_table};
@@ -277,9 +277,9 @@ StateTableRec _DtTermStateGetStringBS = {False, get_stringBS_table};
static StateEntryRec
get_string_table[] =
{
0x07, 0x07, &stateStart, _DtTermChangeTextParam,/*new Icon,Title,etc*/
0x1B, 0x1B, &_DtTermStateGetStringBS , _DtTermPrimParserNextState,
0x00,0xFF, &_DtTermStateGetString, _DtTermSaveChar, /* text*/
{ 0x07, 0x07, &stateStart, _DtTermChangeTextParam,/*new Icon,Title,etc*/ },
{ 0x1B, 0x1B, &_DtTermStateGetStringBS , _DtTermPrimParserNextState, },
{ 0x00,0xFF, &_DtTermStateGetString, _DtTermSaveChar, /* text*/ },
};
StateTableRec _DtTermStateGetString = {False, get_string_table};
@@ -289,12 +289,12 @@ StateTableRec _DtTermStateGetString = {False, get_string_table};
static StateEntryRec
right_bracket_table[] =
{
';', ';', &_DtTermStateGetString, _DtTermParsePushNum,/* increment count */
'0', '9', &_DtTermStateRightBracket, _DtTermEnterNum, /* enter number */
'l', 'l', &_DtTermStateGetTitle, _DtTermPrimParserNextState,
'L', 'L', &_DtTermStateGetIcon, _DtTermPrimParserNextState,
'I', 'I', &_DtTermStateGetIconFile, _DtTermPrimParserNextState,
0x00, 0xFF, &stateStart, _DtTermPrintState /* end of table */
{ ';', ';', &_DtTermStateGetString, _DtTermParsePushNum,/* increment count */ },
{ '0', '9', &_DtTermStateRightBracket, _DtTermEnterNum, /* enter number */ },
{ 'l', 'l', &_DtTermStateGetTitle, _DtTermPrimParserNextState, },
{ 'L', 'L', &_DtTermStateGetIcon, _DtTermPrimParserNextState, },
{ 'I', 'I', &_DtTermStateGetIconFile, _DtTermPrimParserNextState, },
{ 0x00, 0xFF, &stateStart, _DtTermPrintState /* end of table */ },
};
StateTableRec _DtTermStateRightBracket = {False, right_bracket_table};
@@ -304,37 +304,37 @@ StateTableRec _DtTermStateRightBracket = {False, right_bracket_table};
static StateEntryRec
left_bracket_table_no_Q[] =
{
';', ';', &_DtTermStateLeftBracketNotQ,_DtTermParsePushNum,
'0', '9', &_DtTermStateLeftBracketNotQ, _DtTermEnterNum,
'@', '@', &stateStart, _DtTermInsertChars, /* IL Insert Blank char*/
'A', 'A', &stateStart, _DtTermCursorUp, /* CUU Cursor up n */
'B', 'B', &stateStart, _DtTermCursorDown, /* CUD Cursor down n*/
'C', 'C', &stateStart, _DtTermCursorForward,/* CUF Cursor forward n*/
'D', 'D', &stateStart, _DtTermCursorBack, /* CUB Cursor back n*/
'F', 'F', &stateStart, _DtTermCursorToLineUp,/* CPL Curs to Line up*/
'G', 'G', &stateStart, _DtTermCursorToCol, /* CHA Curs to Col */
'H', 'H', &stateStart, _DtTermCursorPos , /* Cursor Position */
'J', 'J', &stateStart, _DtTermEraseDisplay, /* Erase in Display */
'K', 'K', &stateStart, _DtTermEraseInLine, /* EL Erase in Line */
'L', 'L', &stateStart, _DtTermInsertLines, /* IL Insert Lines */
'M', 'M', &stateStart, _DtTermDeleteLines, /* DL Delete Lines */
'S', 'S', &stateStart, _DtTermScrollUp , /* SU Scroll Up p lines*/
'T', 'T', &stateStart, _DtTermScrollDown ,/*SD Scroll DOwn p lines*/
'X', 'X', &stateStart, _DtTermEraseChars , /* ECH Erase chars */
'c', 'c', &stateStart, _DtTermDeviceAttributes, /* DA */
'P', 'P', &stateStart, _DtTermDeleteChars, /* DCH Delete Chars */
'f', 'f', &stateStart, _DtTermCursorPos, /* Cursor Position */
'g', 'g', &stateStart, _DtTermTabClear, /* TBC */
'h', 'h', &stateStart, _DtTermSetMode, /* SM */
'l', 'l', &stateStart, _DtTermResetMode, /* RM */
'm', 'm', &stateStart, _DtTermCharAttributes, /* SGR */
'n', 'n', &stateStart, _DtTermDeviceStatusAnsi, /* DSR */
'r', 'r', &stateStart, _DtTermScrollingRegion, /* DECSTBM */
't', 't', &stateStart, _DtTermParseSunMisc, /* misc sun esc seq */
'x', 'x', &stateStart, _DtTermRequestParam, /* DECREQTPARM */
'"', '"', &_DtTermStateDECSCA, _DtTermPrimParserNextState,/* sel erase */
'!', '!', &_DtTermStateSoftReset, _DtTermPrimParserNextState , /* set erase attr */
0x00, 0xFF, &stateStart, _DtTermPrintState /* end of table */
{ ';', ';', &_DtTermStateLeftBracketNotQ,_DtTermParsePushNum, },
{ '0', '9', &_DtTermStateLeftBracketNotQ, _DtTermEnterNum, },
{ '@', '@', &stateStart, _DtTermInsertChars, /* IL Insert Blank char*/ },
{ 'A', 'A', &stateStart, _DtTermCursorUp, /* CUU Cursor up n */ },
{ 'B', 'B', &stateStart, _DtTermCursorDown, /* CUD Cursor down n*/ },
{ 'C', 'C', &stateStart, _DtTermCursorForward,/* CUF Cursor forward n*/ },
{ 'D', 'D', &stateStart, _DtTermCursorBack, /* CUB Cursor back n*/ },
{ 'F', 'F', &stateStart, _DtTermCursorToLineUp,/* CPL Curs to Line up*/ },
{ 'G', 'G', &stateStart, _DtTermCursorToCol, /* CHA Curs to Col */ },
{ 'H', 'H', &stateStart, _DtTermCursorPos , /* Cursor Position */ },
{ 'J', 'J', &stateStart, _DtTermEraseDisplay, /* Erase in Display */ },
{ 'K', 'K', &stateStart, _DtTermEraseInLine, /* EL Erase in Line */ },
{ 'L', 'L', &stateStart, _DtTermInsertLines, /* IL Insert Lines */ },
{ 'M', 'M', &stateStart, _DtTermDeleteLines, /* DL Delete Lines */ },
{ 'S', 'S', &stateStart, _DtTermScrollUp , /* SU Scroll Up p lines*/ },
{ 'T', 'T', &stateStart, _DtTermScrollDown ,/*SD Scroll DOwn p lines*/ },
{ 'X', 'X', &stateStart, _DtTermEraseChars , /* ECH Erase chars */ },
{ 'c', 'c', &stateStart, _DtTermDeviceAttributes, /* DA */ },
{ 'P', 'P', &stateStart, _DtTermDeleteChars, /* DCH Delete Chars */ },
{ 'f', 'f', &stateStart, _DtTermCursorPos, /* Cursor Position */ },
{ 'g', 'g', &stateStart, _DtTermTabClear, /* TBC */ },
{ 'h', 'h', &stateStart, _DtTermSetMode, /* SM */ },
{ 'l', 'l', &stateStart, _DtTermResetMode, /* RM */ },
{ 'm', 'm', &stateStart, _DtTermCharAttributes, /* SGR */ },
{ 'n', 'n', &stateStart, _DtTermDeviceStatusAnsi, /* DSR */ },
{ 'r', 'r', &stateStart, _DtTermScrollingRegion, /* DECSTBM */ },
{ 't', 't', &stateStart, _DtTermParseSunMisc, /* misc sun esc seq */ },
{ 'x', 'x', &stateStart, _DtTermRequestParam, /* DECREQTPARM */ },
{ '"', '"', &_DtTermStateDECSCA, _DtTermPrimParserNextState,/* sel erase */ },
{ '!', '!', &_DtTermStateSoftReset, _DtTermPrimParserNextState , /* set erase attr */ },
{ 0x00, 0xFF, &stateStart, _DtTermPrintState /* end of table */ },
};
StateTableRec _DtTermStateLeftBracketNotQ = {False, left_bracket_table_no_Q, pre_parse_table};
@@ -344,38 +344,38 @@ StateTableRec _DtTermStateLeftBracketNotQ = {False, left_bracket_table_no_Q, pr
static StateEntryRec
left_bracket_table[] =
{
'?', '?', &_DtTermStateEscQuestion, _DtTermPrimParserNextState,/*DECSET*/
';', ';', &_DtTermStateLeftBracketNotQ ,_DtTermParsePushNum,
'0', '9', &_DtTermStateLeftBracketNotQ , _DtTermEnterNum,
'@', '@', &stateStart, _DtTermInsertChars, /* IL Insert Blank char*/
'A', 'A', &stateStart, _DtTermCursorUp, /* CUU Cursor up n */
'B', 'B', &stateStart, _DtTermCursorDown, /* CUD Cursor down n*/
'C', 'C', &stateStart, _DtTermCursorForward,/* CUF Cursor forward n*/
'D', 'D', &stateStart, _DtTermCursorBack, /* CUB Cursor back n*/
'F', 'F', &stateStart, _DtTermCursorToLineUp,/* CPL Curs to Line up*/
'G', 'G', &stateStart, _DtTermCursorToCol, /* CHA Curs to Col */
'H', 'H', &stateStart, _DtTermCursorPos , /* Cursor Position */
'J', 'J', &stateStart, _DtTermEraseDisplay, /* Erase in Display */
'K', 'K', &stateStart, _DtTermEraseInLine, /* EL Erase in Line */
'L', 'L', &stateStart, _DtTermInsertLines, /* IL Insert Lines */
'M', 'M', &stateStart, _DtTermDeleteLines, /* DL Delete Lines */
'S', 'S', &stateStart, _DtTermScrollUp , /* SU Scroll Up p lines*/
'T', 'T', &stateStart, _DtTermScrollDown ,/*SD Scroll DOwn p lines*/
'X', 'X', &stateStart, _DtTermEraseChars , /* ECH Erase chars */
'c', 'c', &stateStart, _DtTermDeviceAttributes, /* DA */
'P', 'P', &stateStart, _DtTermDeleteChars, /* DCH Delete Chars */
'f', 'f', &stateStart, _DtTermCursorPos, /* Cursor Position */
'g', 'g', &stateStart, _DtTermTabClear, /* TBC */
'h', 'h', &stateStart, _DtTermSetMode, /* SM */
'l', 'l', &stateStart, _DtTermResetMode, /* RM */
'm', 'm', &stateStart, _DtTermCharAttributes, /* SGR */
'n', 'n', &stateStart, _DtTermDeviceStatusAnsi, /* DSR */
'r', 'r', &stateStart, _DtTermScrollingRegion, /* DECSTBM */
't', 't', &stateStart, _DtTermParseSunMisc, /* misc sun esc seq */
'x', 'x', &stateStart, _DtTermRequestParam, /* DECREQTPARM */
'"', '"', &_DtTermStateDECSCA, _DtTermPrimParserNextState,/* sel erase */
'!', '!', &_DtTermStateSoftReset, _DtTermPrimParserNextState , /* set erase attr */
0x00, 0xFF, &stateStart, _DtTermPrintState /* end of table */
{ '?', '?', &_DtTermStateEscQuestion, _DtTermPrimParserNextState,/*DECSET*/ },
{ ';', ';', &_DtTermStateLeftBracketNotQ ,_DtTermParsePushNum, },
{ '0', '9', &_DtTermStateLeftBracketNotQ , _DtTermEnterNum, },
{ '@', '@', &stateStart, _DtTermInsertChars, /* IL Insert Blank char*/ },
{ 'A', 'A', &stateStart, _DtTermCursorUp, /* CUU Cursor up n */ },
{ 'B', 'B', &stateStart, _DtTermCursorDown, /* CUD Cursor down n*/ },
{ 'C', 'C', &stateStart, _DtTermCursorForward,/* CUF Cursor forward n*/ },
{ 'D', 'D', &stateStart, _DtTermCursorBack, /* CUB Cursor back n*/ },
{ 'F', 'F', &stateStart, _DtTermCursorToLineUp,/* CPL Curs to Line up*/ },
{ 'G', 'G', &stateStart, _DtTermCursorToCol, /* CHA Curs to Col */ },
{ 'H', 'H', &stateStart, _DtTermCursorPos , /* Cursor Position */ },
{ 'J', 'J', &stateStart, _DtTermEraseDisplay, /* Erase in Display */ },
{ 'K', 'K', &stateStart, _DtTermEraseInLine, /* EL Erase in Line */ },
{ 'L', 'L', &stateStart, _DtTermInsertLines, /* IL Insert Lines */ },
{ 'M', 'M', &stateStart, _DtTermDeleteLines, /* DL Delete Lines */ },
{ 'S', 'S', &stateStart, _DtTermScrollUp , /* SU Scroll Up p lines*/ },
{ 'T', 'T', &stateStart, _DtTermScrollDown ,/*SD Scroll DOwn p lines*/ },
{ 'X', 'X', &stateStart, _DtTermEraseChars , /* ECH Erase chars */ },
{ 'c', 'c', &stateStart, _DtTermDeviceAttributes, /* DA */ },
{ 'P', 'P', &stateStart, _DtTermDeleteChars, /* DCH Delete Chars */ },
{ 'f', 'f', &stateStart, _DtTermCursorPos, /* Cursor Position */ },
{ 'g', 'g', &stateStart, _DtTermTabClear, /* TBC */ },
{ 'h', 'h', &stateStart, _DtTermSetMode, /* SM */ },
{ 'l', 'l', &stateStart, _DtTermResetMode, /* RM */ },
{ 'm', 'm', &stateStart, _DtTermCharAttributes, /* SGR */ },
{ 'n', 'n', &stateStart, _DtTermDeviceStatusAnsi, /* DSR */ },
{ 'r', 'r', &stateStart, _DtTermScrollingRegion, /* DECSTBM */ },
{ 't', 't', &stateStart, _DtTermParseSunMisc, /* misc sun esc seq */ },
{ 'x', 'x', &stateStart, _DtTermRequestParam, /* DECREQTPARM */ },
{ '"', '"', &_DtTermStateDECSCA, _DtTermPrimParserNextState,/* sel erase */ },
{ '!', '!', &_DtTermStateSoftReset, _DtTermPrimParserNextState , /* set erase attr */ },
{ 0x00, 0xFF, &stateStart, _DtTermPrintState /* end of table */ },
};
StateTableRec _DtTermStateLeftBracket = {False, left_bracket_table, pre_parse_table};
@@ -385,8 +385,8 @@ StateTableRec _DtTermStateLeftBracket = {False, left_bracket_table, pre_parse_t
static StateEntryRec
soft_reset_table[] =
{
'p', 'p', &stateStart , _DtTermSoftReset, /* End of text */
0x00, 0xFF, &stateStart , _DtTermPrintState /* end of table*/
{ 'p', 'p', &stateStart , _DtTermSoftReset, /* End of text */ },
{ 0x00, 0xFF, &stateStart , _DtTermPrintState /* end of table*/ },
};
StateTableRec _DtTermStateSoftReset = {False, soft_reset_table, pre_parse_table};
@@ -396,9 +396,9 @@ StateTableRec _DtTermStateSoftReset = {False, soft_reset_table, pre_parse_table}
static StateEntryRec
set_erase_table[] =
{
'p', 'p', &stateStart , _DtTermSetCompatLevel, /* DECSCL */
'q', 'q', &stateStart , _DtTermSetCharEraseMode, /* set sel erase */
0x00, 0xFF, &stateStart , _DtTermPrintState /* end of table*/
{ 'p', 'p', &stateStart , _DtTermSetCompatLevel, /* DECSCL */ },
{ 'q', 'q', &stateStart , _DtTermSetCharEraseMode, /* set sel erase */ },
{ 0x00, 0xFF, &stateStart , _DtTermPrintState /* end of table*/ },
};
StateTableRec _DtTermStateDECSCA = {False, set_erase_table, pre_parse_table};
@@ -408,8 +408,8 @@ StateTableRec _DtTermStateDECSCA = {False, set_erase_table, pre_parse_table};
static StateEntryRec
up_backslash_table[] =
{
'\\', '\\',&stateStart , _DtTermPrimParserNextState, /* End of text */
0x00, 0xFF, &_DtTermStateUpArrow, _DtTermPrimParserNextState
{ '\\', '\\',&stateStart , _DtTermPrimParserNextState, /* End of text */ },
{ 0x00, 0xFF, &_DtTermStateUpArrow, _DtTermPrimParserNextState },
};
StateTableRec _DtTermStateUA_BS = {False, up_backslash_table};
@@ -419,9 +419,9 @@ StateTableRec _DtTermStateUA_BS = {False, up_backslash_table};
static StateEntryRec
uparrow_table[] =
{
0x1B, 0x1B,&_DtTermStateUA_BS , _DtTermPrimParserNextState, /* Esc */
0x9C, 0x9C, &stateStart, _DtTermPrimParserNextState, /* ST */
0x00, 0xFF, &_DtTermStateUpArrow, _DtTermPrimParserNextState
{ 0x1B, 0x1B,&_DtTermStateUA_BS , _DtTermPrimParserNextState, /* Esc */ },
{ 0x9C, 0x9C, &stateStart, _DtTermPrimParserNextState, /* ST */ },
{ 0x00, 0xFF, &_DtTermStateUpArrow, _DtTermPrimParserNextState },
};
StateTableRec _DtTermStateUpArrow = {False, uparrow_table};
@@ -431,8 +431,8 @@ StateTableRec _DtTermStateUpArrow = {False, uparrow_table};
static StateEntryRec
under_backslash_table[] =
{
'\\', '\\',&stateStart , _DtTermPrimParserNextState, /* End of text */
0x00, 0xFF, &_DtTermStateUnderscore, _DtTermPrimParserNextState /* Go back to Underscore*/
{ '\\', '\\',&stateStart , _DtTermPrimParserNextState, /* End of text */ },
{ 0x00, 0xFF, &_DtTermStateUnderscore, _DtTermPrimParserNextState /* Go back to Underscore*/ },
};
StateTableRec _DtTermStateUS_BS = {False, under_backslash_table};
@@ -442,9 +442,9 @@ StateTableRec _DtTermStateUS_BS = {False, under_backslash_table};
static StateEntryRec
underscore_table[] =
{
0x1B, 0x1B,&_DtTermStateUS_BS , _DtTermPrimParserNextState, /* Esc */
0x9C, 0x9C, &stateStart, _DtTermPrimParserNextState, /* ST */
0x00, 0xFF, &_DtTermStateUnderscore, _DtTermPrimParserNextState
{ 0x1B, 0x1B,&_DtTermStateUS_BS , _DtTermPrimParserNextState, /* Esc */ },
{ 0x9C, 0x9C, &stateStart, _DtTermPrimParserNextState, /* ST */ },
{ 0x00, 0xFF, &_DtTermStateUnderscore, _DtTermPrimParserNextState },
};
StateTableRec _DtTermStateUnderscore = {False, underscore_table};
@@ -454,15 +454,15 @@ StateTableRec _DtTermStateUnderscore = {False, underscore_table};
static StateEntryRec
esc_question_table[] =
{
'0', '9', &_DtTermStateEscQuestion , _DtTermEnterNum,
'h', 'h', &stateStart , _DtTermPModeSet, /* DECSET private mode*/
'l', 'l', &stateStart , _DtTermPModeReset, /*DECSET private mode*/
'n', 'n', &stateStart , _DtTermDeviceStatus, /*DECSET private mode*/
'r', 'r', &stateStart , _DtTermRestoreModeValues, /*restore Mode values*/
's', 's', &stateStart , _DtTermSaveModeValues, /*save Mode values*/
'K', 'K', &stateStart , _DtTermSelEraseInLine, /* DECSEL */
'J', 'J', &stateStart , _DtTermSelEraseInDisplay,/* DECSEL */
0x00, 0xFF, &stateStart , _DtTermPrintState /* end of table*/
{ '0', '9', &_DtTermStateEscQuestion , _DtTermEnterNum, },
{ 'h', 'h', &stateStart , _DtTermPModeSet, /* DECSET private mode*/ },
{ 'l', 'l', &stateStart , _DtTermPModeReset, /*DECSET private mode*/ },
{ 'n', 'n', &stateStart , _DtTermDeviceStatus, /*DECSET private mode*/ },
{ 'r', 'r', &stateStart , _DtTermRestoreModeValues, /*restore Mode values*/ },
{ 's', 's', &stateStart , _DtTermSaveModeValues, /*save Mode values*/ },
{ 'K', 'K', &stateStart , _DtTermSelEraseInLine, /* DECSEL */ },
{ 'J', 'J', &stateStart , _DtTermSelEraseInDisplay,/* DECSEL */ },
{ 0x00, 0xFF, &stateStart , _DtTermPrintState /* end of table*/ },
};
StateTableRec _DtTermStateEscQuestion = {False, esc_question_table, pre_parse_table};
@@ -472,8 +472,8 @@ StateTableRec _DtTermStateEscQuestion = {False, esc_question_table, pre_parse_t
static StateEntryRec
tilda_table[] =
{
0x1B, 0x1B,&stateStart,_DtTermInvokeG1, /* LS1R Invoke G1 Char set */
0x00, 0xFF, &stateStart , _DtTermPrintState /* end of table */
{ 0x1B, 0x1B,&stateStart,_DtTermInvokeG1, /* LS1R Invoke G1 Char set */ },
{ 0x00, 0xFF, &stateStart , _DtTermPrintState /* end of table */ },
};
StateTableRec _DtTermStateTilda = {False, tilda_table, pre_parse_table};
@@ -483,8 +483,8 @@ StateTableRec _DtTermStateTilda = {False, tilda_table, pre_parse_table};
static StateEntryRec
sk_backslash_table[] =
{
'\\', '\\',&stateStart, _DtTermParseUserKeyLoadLast, /* ST */
0x00, 0xFF, &_DtTermStateIsNextBS_SK, _DtTermPrimParserNextState/*toss*/
{ '\\', '\\',&stateStart, _DtTermParseUserKeyLoadLast, /* ST */ },
{ 0x00, 0xFF, &_DtTermStateIsNextBS_SK, _DtTermPrimParserNextState/*toss*/ },
};
StateTableRec _DtTermStateIsNextBS_SK = {False, sk_backslash_table};
@@ -494,13 +494,13 @@ StateTableRec _DtTermStateIsNextBS_SK = {False, sk_backslash_table};
static StateEntryRec
user_key_string_table[] =
{
'0','9', &_DtTermStateUserKeyString, _DtTermParseHexDigit, /*hex digit*/
'a','f', &_DtTermStateUserKeyString, _DtTermParseHexDigit, /*hex digit*/
'A','F', &_DtTermStateUserKeyString, _DtTermParseHexDigit, /*hex digit*/
';', ';', &_DtTermStateUserKey, _DtTermParseUserKeyLoad,/*load string*/
0x1B, 0x1B, &_DtTermStateIsNextBS_SK, _DtTermPrimParserNextState,/*Esc*/
0x9C, 0x9C, &stateStart, _DtTermParseUserKeyLoadLast, /* ST */
0x00, 0xFF, &stateStart , _DtTermPrintState /* end of table */
{ '0','9', &_DtTermStateUserKeyString, _DtTermParseHexDigit, /*hex digit*/ },
{ 'a','f', &_DtTermStateUserKeyString, _DtTermParseHexDigit, /*hex digit*/ },
{ 'A','F', &_DtTermStateUserKeyString, _DtTermParseHexDigit, /*hex digit*/ },
{ ';', ';', &_DtTermStateUserKey, _DtTermParseUserKeyLoad,/*load string*/ },
{ 0x1B, 0x1B, &_DtTermStateIsNextBS_SK, _DtTermPrimParserNextState,/*Esc*/ },
{ 0x9C, 0x9C, &stateStart, _DtTermParseUserKeyLoadLast, /* ST */ },
{ 0x00, 0xFF, &stateStart , _DtTermPrintState /* end of table */ },
};
StateTableRec _DtTermStateUserKeyString = {False, user_key_string_table};
@@ -510,11 +510,11 @@ StateTableRec _DtTermStateUserKeyString = {False, user_key_string_table};
static StateEntryRec
softkey_table[] =
{
'0', '9', &_DtTermStateUserKey, _DtTermEnterNum, /* enter number */
'/', '/',&_DtTermStateUserKeyString,_DtTermPrimParserNextState,/*store key*/
0x1B, 0x1B, &_DtTermStateIsNextBS_SK, _DtTermPrimParserNextState,/*Esc*/
0x9C, 0x9C, &stateStart, _DtTermParseUserKeyLoadLast, /* ST */
0x00, 0xFF, &stateStart , _DtTermPrintState /* end of table */
{ '0', '9', &_DtTermStateUserKey, _DtTermEnterNum, /* enter number */ },
{ '/', '/',&_DtTermStateUserKeyString,_DtTermPrimParserNextState,/*store key*/ },
{ 0x1B, 0x1B, &_DtTermStateIsNextBS_SK, _DtTermPrimParserNextState,/*Esc*/ },
{ 0x9C, 0x9C, &stateStart, _DtTermParseUserKeyLoadLast, /* ST */ },
{ 0x00, 0xFF, &stateStart , _DtTermPrintState /* end of table */ },
};
StateTableRec _DtTermStateUserKey = {False, softkey_table};
@@ -524,9 +524,9 @@ StateTableRec _DtTermStateUserKey = {False, softkey_table};
static StateEntryRec
dl_backslash_table[] =
{
'\\', '\\',&stateStart, _DtTermLoadCharSet, /* ST */
0x20,0x7E, &_DtTermStateP, _DtTermPrimParserNextState, /* all text */
0x00, 0xFF, &stateStart , _DtTermPrintState /* end of table */
{ '\\', '\\',&stateStart, _DtTermLoadCharSet, /* ST */ },
{ 0x20,0x7E, &_DtTermStateP, _DtTermPrimParserNextState, /* all text */ },
{ 0x00, 0xFF, &stateStart , _DtTermPrintState /* end of table */ },
};
StateTableRec _DtTermStateIsNextBS_DL = {False, dl_backslash_table};
@@ -536,11 +536,11 @@ StateTableRec _DtTermStateIsNextBS_DL = {False, dl_backslash_table};
static StateEntryRec
dl_char_table[] =
{
'\\', '\\',&stateStart, _DtTermLoadCharSet , /* ST */
0x20,0x7E, &_DtTermStateDLCharSet, _DtTermPrimParserNextState,/* text */
0x1B, 0x1B,&_DtTermStateIsNextBS_DL,_DtTermPrimParserNextState,/*end?*/
0x9C, 0x9C, &stateStart, _DtTermLoadCharSet, /* C1 string terminator*/
0x00, 0xFF, &stateStart , _DtTermPrintState /* end of table */
{ '\\', '\\',&stateStart, _DtTermLoadCharSet , /* ST */ },
{ 0x20,0x7E, &_DtTermStateDLCharSet, _DtTermPrimParserNextState,/* text */ },
{ 0x1B, 0x1B,&_DtTermStateIsNextBS_DL,_DtTermPrimParserNextState,/*end?*/ },
{ 0x9C, 0x9C, &stateStart, _DtTermLoadCharSet, /* C1 string terminator*/ },
{ 0x00, 0xFF, &stateStart , _DtTermPrintState /* end of table */ },
};
StateTableRec _DtTermStateDLCharSet = {False, dl_char_table};
@@ -550,12 +550,12 @@ StateTableRec _DtTermStateDLCharSet = {False, dl_char_table};
static StateEntryRec
esc_P_table[] =
{
';', ';', &_DtTermStateP, _DtTermParsePushNum, /*increment count*/
'0', '9', &_DtTermStateP, _DtTermEnterNum, /* enter number */
'|', '|', &_DtTermStateUserKey, _DtTermParseUserKeyClear, /* DECUDK */
'{', '{', &_DtTermStateDLCharSet, _DtTermPrimParserNextState,
/* down-line-load char set */
0x00, 0xFF, &stateStart , _DtTermPrintState /* end of table */
{ ';', ';', &_DtTermStateP, _DtTermParsePushNum, /*increment count*/ },
{ '0', '9', &_DtTermStateP, _DtTermEnterNum, /* enter number */ },
{ '|', '|', &_DtTermStateUserKey, _DtTermParseUserKeyClear, /* DECUDK */ },
{ '{', '{', &_DtTermStateDLCharSet, _DtTermPrimParserNextState, },
{ /* down-line-load char set */ },
{ 0x00, 0xFF, &stateStart , _DtTermPrintState /* end of table */ },
};
StateTableRec _DtTermStateP = {False, esc_P_table, pre_parse_table};
@@ -566,8 +566,8 @@ StateTableRec _DtTermStateP = {False, esc_P_table, pre_parse_table};
static StateEntryRec
error_table[] =
{
'A', 'Z', &stateStart, _DtTermPrimParserNextState, /* legal char */
0x00, 0xFF, &_DtTermStateError, _DtTermPrimParserNextState /* end */
{ 'A', 'Z', &stateStart, _DtTermPrimParserNextState, /* legal char */ },
{ 0x00, 0xFF, &_DtTermStateError, _DtTermPrimParserNextState /* end */ },
};
StateTableRec _DtTermStateError = {False, error_table};