Subversion Repositories Kolibri OS

Rev

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

Rev 976 Rev 984
Line 9... Line 9...
9
dword  final_addr   = #stop+32;
9
dword  final_addr   = #stop+32;
10
dword  alloc_mem    = 0x00100000;
10
dword  alloc_mem    = 0x00100000;
11
dword  x86esp_reg   = 0x00100000;   // 0x0007fff0; 
11
dword  x86esp_reg   = 0x00100000;   // 0x0007fff0; 
12
dword  I_Param      = #param;
12
dword  I_Param      = #param;
13
dword  I_Icon       = 0x0;
13
dword  I_Icon       = 0x0;
14
dword  skin_width;
-
 
15
char param[256]="";
14
char param[256]="";
Line 16... Line 15...
16
 
15
 
17
//Events
16
//Events
18
#define evMouse		6
17
#define evMouse		6
Line 113... Line 112...
113
inline fastcall void ExitProcess(){
112
inline fastcall void ExitProcess(){
114
 EAX = -1;            // close this program
113
 EAX = -1;            // close this program
115
 $int 0x40
114
 $int 0x40
116
}
115
}
Line 117... Line 116...
117
 
116
 
118
void Pause(dword EBX){				
117
inline fastcall void Pause(dword EBX){				
119
	$mov eax, 5       // ã§ , ¢ á®âëå ¤®«ïå ᥪ㭤ë
118
	$mov eax, 5       // ã§ , ¢ á®âëå ¤®«ïå ᥪ㭤ë
120
	$int 0x40
119
	$int 0x40
Line 121... Line 120...
121
}
120
}
Line 130... Line 129...
130
	ESI = headerType << 24 | headerColor;
129
	ESI = headerType << 24 | headerColor;
131
	$xor eax,eax
130
	$xor eax,eax
132
	$int 0x40
131
	$int 0x40
133
}
132
}
Line 134... Line 133...
134
 
133
 
135
inline fastcall dword CreateThread(dword ECX,EDX)
134
inline fastcall void CreateThread(dword ECX,EDX)
136
{
135
{
137
	EAX = 51;
136
	EAX = 51;
138
	EBX = 1;
137
	EBX = 1;
139
	$int 0x40
138
	$int 0x40
Line 155... Line 154...
155
	EAX = 48;
154
	EAX = 48;
156
	EBX = 4;
155
	EBX = 4;
157
	$int 0x40
156
	$int 0x40
158
}
157
}
Line 159... Line 158...
159
 
158
 
160
inline fastcall dword MoveSize(dword EBX,ECX,EDX,ESI){
159
inline fastcall void MoveSize(dword EBX,ECX,EDX,ESI){
161
	EAX = 67;
160
	EAX = 67;
162
	$int 0x40
161
	$int 0x40
Line 163... Line 162...
163
}
162
}
Line 181... Line 180...
181
	$test al,al
180
	$test al,al
182
	$jnz l1
181
	$jnz l1
183
}
182
}
Line -... Line 183...
-
 
183
 
-
 
184
 
-
 
185
byte fastcall TestBit(EAX, CL)
-
 
186
{
-
 
187
	$shr eax,cl
-
 
188
	$and eax,1
-
 
189
}
184
 
190
 
185
 
191
 
186
char buffer[11]="";
192
char buffer[11]="";
187
inline fastcall dword IntToStr(dword ESI)
193
inline fastcall dword IntToStr(dword ESI)
188
{
194
{
Line 210... Line 216...
210
     $mov     eax, #buffer
216
     $mov     eax, #buffer
211
     $ret
217
     $ret
212
}
218
}
Line -... Line 219...
-
 
219
 
-
 
220
 
-
 
221
dword StrToCol(char* htmlcolor)
-
 
222
{
-
 
223
  dword j=1, color=0; char ch=0x00;
-
 
224
  IF (ESBYTE[htmlcolor]<>'#') RETURN;
-
 
225
  FOR (;j<7;j++)
-
 
226
  {
-
 
227
    ch=ESBYTE[htmlcolor+j];
-
 
228
    IF ((ch>='0') && (ch<='9')) ch -= '0';
-
 
229
    IF ((ch>='A') && (ch<='F')) ch -= 'A'-10;
-
 
230
    IF ((ch>='a') && (ch<='f')) ch -= 'a'-10;
-
 
231
    color = color*0x10 + ch;
-
 
232
  }
-
 
233
  EAX=color;
-
 
234
}
213
 
235
 
214
 
236
 
215
inline fastcall int strcmp(ESI, EDI)
237
inline fastcall int strcmp(ESI, EDI)
216
{
238
{
217
	loop()
239
	loop()
Line 266... Line 288...
266
L2:
288
L2:
267
  }
289
  }
268
}
290
}
Line 269... Line 291...
269
 
291
 
270
 
292
 
271
inline fastcall dword ChangeCase(dword EDX)
293
inline fastcall ChangeCase(dword EDX)
272
{
294
{
273
	AL=DSBYTE[EDX];
295
	AL=DSBYTE[EDX];
274
	IF(AL>='a')&&(AL<='z')DSBYTE[EDX]=AL&0x5f;
296
	IF(AL>='a')&&(AL<='z')DSBYTE[EDX]=AL&0x5f;