Develop and Download Open Source Software

Browse Subversion Repository

Diff of /trunk/teraterm/teraterm/vtterm.c

Parent Directory Parent Directory | Revision Log Revision Log | View Patch Patch

revision 4282 by doda, Wed Jan 19 05:12:03 2011 UTC revision 4291 by doda, Tue Feb 1 05:27:32 2011 UTC
# Line 95  static BOOL FirstPrm; Line 95  static BOOL FirstPrm;
95  static BYTE IntChar[IntCharMax+1];  static BYTE IntChar[IntCharMax+1];
96  static int ICount;  static int ICount;
97  static BYTE Prv;  static BYTE Prv;
98  static int ParseMode, SavedMode;  static int ParseMode;
99  static int ChangeEmu;  static int ChangeEmu;
100    
101  /* user defined keys */  /* user defined keys */
# Line 936  void ParseControl(BYTE b) Line 936  void ParseControl(BYTE b)
936        SSflag = TRUE;        SSflag = TRUE;
937        break;        break;
938      case DCS:      case DCS:
       SavedMode = ParseMode;  
939        ESCFlag = FALSE;        ESCFlag = FALSE;
940        ICount = 0;        ICount = 0;
941        NParam = 1;        NParam = 1;
# Line 945  void ParseControl(BYTE b) Line 944  void ParseControl(BYTE b)
944        ParseMode = ModeDCS;        ParseMode = ModeDCS;
945        break;        break;
946      case SOS:      case SOS:
       SavedMode = ParseMode;  
947        ESCFlag = FALSE;        ESCFlag = FALSE;
948        ParseMode = ModeSOS;        ParseMode = ModeSOS;
949        break;        break;
# Line 963  void ParseControl(BYTE b) Line 961  void ParseControl(BYTE b)
961        break;        break;
962      case PM:      case PM:
963      case APC:      case APC:
       SavedMode = ParseMode;  
964        ESCFlag = FALSE;        ESCFlag = FALSE;
965        ParseMode = ModeSOS;        ParseMode = ModeSOS;
966        break;        break;
# Line 1285  void ParseEscape(BYTE b) /* b is the fin Line 1282  void ParseEscape(BYTE b) /* b is the fin
1282            SSflag = TRUE;            SSflag = TRUE;
1283            break;            break;
1284          case 'P': /* DCS */          case 'P': /* DCS */
           SavedMode = ParseMode;  
1285            ESCFlag = FALSE;            ESCFlag = FALSE;
1286            NParam = 1;            NParam = 1;
1287            Param[1] = -1;            Param[1] = -1;
1288            ParseMode = ModeDCS;            ParseMode = ModeDCS;
1289            return;            return;
1290          case 'X': /* SOS */          case 'X': /* SOS */
           SavedMode = ParseMode;  
1291            ESCFlag = FALSE;            ESCFlag = FALSE;
1292            ParseMode = ModeSOS;            ParseMode = ModeSOS;
1293            return;            return;
# Line 1313  void ParseEscape(BYTE b) /* b is the fin Line 1308  void ParseEscape(BYTE b) /* b is the fin
1308            return;            return;
1309          case '^':          case '^':
1310          case '_': /* PM, APC */          case '_': /* PM, APC */
           SavedMode = ParseMode;  
1311            ESCFlag = FALSE;            ESCFlag = FALSE;
1312            ParseMode = ModeSOS;            ParseMode = ModeSOS;
1313            return;            return;
# Line 3175  void DeviceControl(BYTE b) Line 3169  void DeviceControl(BYTE b)
3169                          ParseDCS(Cmd, StrBuff, StrLen);                          ParseDCS(Cmd, StrBuff, StrLen);
3170                  }                  }
3171                  ESCFlag = FALSE;                  ESCFlag = FALSE;
3172                  ParseMode = SavedMode;                  ParseMode = ModeFirst;
3173                  DcsParseMode = ModeDcsFirst;                  DcsParseMode = ModeDcsFirst;
3174                  StrLen = 0;                  StrLen = 0;
3175                  return;                  return;
# Line 3229  void DeviceControl(BYTE b) Line 3223  void DeviceControl(BYTE b)
3223          case ModeDcsString:          case ModeDcsString:
3224                  if (b <= US && b != HT && b != CR) {                  if (b <= US && b != HT && b != CR) {
3225                          ESCFlag = FALSE;                          ESCFlag = FALSE;
3226                          ParseMode = SavedMode;                          ParseMode = ModeFirst;
3227                          DcsParseMode = ModeDcsFirst;                          DcsParseMode = ModeDcsFirst;
3228                          StrLen = 0;                          StrLen = 0;
3229                  }                  }
# Line 3246  void DCUserKey(BYTE b) Line 3240  void DCUserKey(BYTE b)
3240    {    {
3241      if (! WaitKeyId) DefineUserKey(NewKeyId,NewKeyStr,NewKeyLen);      if (! WaitKeyId) DefineUserKey(NewKeyId,NewKeyStr,NewKeyLen);
3242      ESCFlag = FALSE;      ESCFlag = FALSE;
3243      ParseMode = SavedMode;      ParseMode = ModeFirst;
3244      return;      return;
3245    }    }
3246    
# Line 3302  void IgnoreString(BYTE b) Line 3296  void IgnoreString(BYTE b)
3296    if ((ESCFlag && (b=='\\')) ||    if ((ESCFlag && (b=='\\')) ||
3297        (b<=US && b!=ESC && b!=HT) ||        (b<=US && b!=ESC && b!=HT) ||
3298        (b==ST && ts.KanjiCode!=IdSJIS))        (b==ST && ts.KanjiCode!=IdSJIS))
3299      ParseMode = SavedMode;      ParseMode = ModeFirst;
3300    
3301    if (b==ESC) ESCFlag = TRUE;    if (b==ESC) ESCFlag = TRUE;
3302           else ESCFlag = FALSE;           else ESCFlag = FALSE;

Legend:
Removed from v.4282  
changed lines
  Added in v.4291

Back to OSDN">Back to OSDN
ViewVC Help
Powered by ViewVC 1.1.26