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; |