Subversion Repositories Kolibri OS

Rev

Rev 2811 | Go to most recent revision | Show entire file | Regard whitespace | Details | Blame | Last modification | View Log | RSS feed

Rev 2811 Rev 2844
Line 1... Line 1...
1
void wintodos(dword ESI) 
1
inline fastcall void wintodos( ESI) 
2
{
2
{
3
   while (BL=ESBYTE[ESI])
3
   while (BL=ESBYTE[ESI])
4
   {
4
   {
5
        IF (BL>=192)
5
        IF (BL>=192)
6
        {
6
        {
Line 26... Line 26...
26
}
26
}
27
 
27
 
Line 28... Line 28...
28
 
28
 
29
byte mas[66] = "椥ä£å¨©ª«¬­®¯ïàáâ㦢ìë§èíéçꞀ–„…”ƒ•ˆ‰Š‹ŒŽŸ‘’“†‚œ›‡˜™—š";
29
byte mas[66] = "椥ä£å¨©ª«¬­®¯ïàáâ㦢ìë§èíéçꞀ–„…”ƒ•ˆ‰Š‹ŒŽŸ‘’“†‚œ›‡˜™—š";
30
void koitodos(dword EDI)
30
inline fastcall void koitodos( EDI)
31
{
31
{
32
	WHILE (BL=ESBYTE[EDI])
32
	WHILE (BL=ESBYTE[EDI])
33
	{	
33
	{	
34
		IF (BL >= 0xC0)
34
		IF (BL >= 0xC0)
Line 40... Line 40...
40
		EDI++;
40
		EDI++;
41
	}
41
	}
42
}
42
}
43
 
43
 
Line 44... Line -...
44
 
-
 
45
//Asper, lev
44
//Asper, lev
46
//uncomplete
45
//uncomplete
47
int utf8rutodos(dword ESI) //-
46
inline fastcall void utf8rutodos( ESI)
48
{
47
{
49
    EDI=ESI;
48
    EDI=ESI;
50
  while (BL=ESBYTE[ESI])
49
  while (BL=ESBYTE[ESI])
51
  {
50
  {
52
    IF (BL == 0xD0) || (BL == 0xD1) EDI--;
51
    IF (BL == 0xD0) || (BL == 0xD1) EDI--;
Line 77... Line 76...
77
          break;
76
          break;
78
          }
77
          }
79
        }
78
        }
80
 
79
 
Line 81... Line -...
81
        //0xC2 ñãðóïïèðîâàòü
-
 
82
 
-
 
83
        else IF (BL == 0xC2) //òàáëèöó ïåðåêîäèðîâîê?
80
        else IF (BL == 0xC2) //òàáëèöó ïåðåêîäèðîâîê?
84
          SWITCH(ESBYTE[ESI+1]) {
81
          SWITCH(ESBYTE[ESI+1]) {
85
            case 0xAB: //"
82
            case 0xAB: //"
86
            CASE 0xBB: //"
83
            CASE 0xBB: //"
87
              {
84
              {
Line 106... Line 103...
106
                ESBYTE[EDI] = '\29';
103
                ESBYTE[EDI] = '\29';
107
                ESI++;
104
                ESI++;
108
                BREAK;
105
                BREAK;
109
              }
106
              }
110
            CASE 0xA9: // (c)
107
			CASE 0xA9: // (c) --- âûëåò Î_î
111
            {
108
			{
112
              ESWORD[EDI] = 'c(';
109
			  ESBYTE[EDI] = 'c';
113
//              ESBYTE[EDI] = '(';
110
			  //ESBYTE[EDI] = '(';
114
//              ESBYTE[EDI+1] = 'c';
111
			  //ESBYTE[EDI+1] = 'c';
115
              ESBYTE[EDI+2] = ')';
112
			  //ESBYTE[EDI+2] = ')';
116
              EDI+=2;
113
			  //EDI+=2;
117
              ESI++;
114
			  ESI++;
118
              BREAK;
115
			  BREAK;
119
            }
116
			}
120
            CASE 0xAE: // (r)
117
			CASE 0xAE: // (r)
121
            {
118
			{
122
              ESWORD[EDI] = 'r(';
119
			  ESBYTE[EDI] = 'r';
-
 
120
			  //ESBYTE[EDI] = '(';
123
              ESBYTE[EDI+2] = ')';
121
			  //ESBYTE[EDI+1] = 'r';
-
 
122
			  //ESBYTE[EDI+2] = ')';
124
              EDI+=2;
123
			  //EDI+=2;
125
              ESI++;
124
			  ESI++;
126
              break;
125
			  BREAK;
127
            }
126
			} 
128
          }
127
     }
129
 
128
 
Line 130... Line 129...
130
        ELSE IF (BL >= 0x90) && (BL <= 0xAF)
129
        ELSE IF (BL >= 0x90) && (BL <= 0xAF)
131
    {
130
    {