Rev 1376 | Show entire file | Regard whitespace | Details | Blame | Last modification | View Log | RSS feed
Rev 1376 | Rev 2382 | ||
---|---|---|---|
Line 2... | Line 2... | ||
2 | ;; ;; |
2 | ;; ;; |
3 | ;; Copyright (C) KolibriOS team 2004-2007. All rights reserved. ;; |
3 | ;; Copyright (C) KolibriOS team 2004-2007. All rights reserved. ;; |
4 | ;; Distributed under terms of the GNU General Public License ;; |
4 | ;; Distributed under terms of the GNU General Public License ;; |
5 | ;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;; |
5 | ;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;; |
Line 6... | Line 6... | ||
6 | 6 | ||
Line 7... | Line 7... | ||
7 | $Revision: 1376 $ |
7 | $Revision: 2382 $ |
Line 8... | Line 8... | ||
8 | 8 | ||
9 | _esp equ esp |
9 | _esp equ esp |
Line 60... | Line 60... | ||
60 | common |
60 | common |
61 | if is_str = 1 |
61 | if is_str = 1 |
62 | jmp ..label |
62 | jmp ..label |
63 | ..str db _str,0 |
63 | ..str db _str,0 |
64 | ..label: |
64 | ..label: |
65 | ; add esp,4*8+4 |
- | |
66 | esp equ esp+4*8+4 |
- | |
67 | mov edx,..str |
65 | mov edx, ..str |
68 | esp equ _esp |
- | |
69 | ; sub esp,4*8+4 |
- | |
70 | else |
66 | else |
- | 67 | esp equ esp+4*8+4 |
|
71 | mov edx,_str |
68 | mov edx, _str |
- | 69 | esp equ _esp |
|
72 | end if |
70 | end if |
73 | if ~_num eq |
71 | if ~_num eq |
74 | if _num eqtype eax |
72 | if _num eqtype eax |
75 | if _num in |
73 | if _num in |
76 | mov esi,_num |
74 | mov esi, _num |
Line 252... | Line 250... | ||
252 | debug_endf |
250 | debug_endf |
Line 253... | Line 251... | ||
253 | 251 | ||
254 | debug_func fdo_debug_outstr |
252 | debug_func fdo_debug_outstr |
255 | debug_beginf |
253 | debug_beginf |
- | 254 | mov eax, 1 |
|
256 | mov eax,1 |
255 | .l1: |
257 | .l1: dec esi |
256 | dec esi |
258 | js .l2 |
257 | js .l2 |
259 | movzx ebx,byte[edx] |
258 | movzx ebx, byte[edx] |
260 | or bl,bl |
259 | or bl, bl |
261 | jz .l2 |
260 | jz .l2 |
262 | mov ecx,sys_msg_board |
261 | mov ecx, sys_msg_board |
263 | call ecx ; sys_msg_board |
262 | call ecx ; sys_msg_board |
264 | inc edx |
263 | inc edx |
- | 264 | jmp .l1 |
|
265 | jmp .l1 |
265 | .l2: |
266 | .l2: ret |
266 | ret |
Line 267... | Line 267... | ||
267 | debug_endf |
267 | debug_endf |
268 | 268 | ||
269 | debug_func fdo_debug_outdec |
269 | debug_func fdo_debug_outdec |
Line 275... | Line 275... | ||
275 | neg eax |
275 | neg eax |
276 | push eax |
276 | push eax |
277 | mov al,'-' |
277 | mov al, '-' |
278 | call fdo_debug_outchar |
278 | call fdo_debug_outchar |
279 | pop eax |
279 | pop eax |
- | 280 | @@: |
|
280 | @@: push 10 |
281 | push 10 |
281 | pop ecx |
282 | pop ecx |
282 | push -'0' |
283 | push -'0' |
- | 284 | .l1: |
|
283 | .l1: xor edx,edx |
285 | xor edx, edx |
284 | div ecx |
286 | div ecx |
285 | push edx |
287 | push edx |
286 | test eax,eax |
288 | test eax, eax |
287 | jnz .l1 |
289 | jnz .l1 |
- | 290 | .l2: |
|
288 | .l2: pop eax |
291 | pop eax |
289 | add al,'0' |
292 | add al, '0' |
290 | jz .l3 |
293 | jz .l3 |
291 | call fdo_debug_outchar |
294 | call fdo_debug_outchar |
292 | jmp .l2 |
295 | jmp .l2 |
- | 296 | .l3: |
|
293 | .l3: ret |
297 | ret |
294 | debug_endf |
298 | debug_endf |
Line 295... | Line 299... | ||
295 | 299 | ||
296 | debug_func fdo_debug_outhex |
300 | debug_func fdo_debug_outhex |
297 | __fdo_hexdigits db '0123456789ABCDEF' |
301 | __fdo_hexdigits db '0123456789ABCDEF' |
298 | debug_beginf |
302 | debug_beginf |
299 | mov cl,dl |
303 | mov cl, dl |
300 | neg cl |
304 | neg cl |
301 | add cl,8 |
305 | add cl, 8 |
302 | shl cl,2 |
306 | shl cl, 2 |
- | 307 | rol eax, cl |
|
303 | rol eax,cl |
308 | .l1: |
304 | .l1: rol eax,4 |
309 | rol eax, 4 |
305 | push eax |
310 | push eax |
306 | and eax,0x0000000F |
311 | and eax, 0x0000000F |
307 | mov al,[__fdo_hexdigits+eax] |
312 | mov al, [__fdo_hexdigits+eax] |
308 | call fdo_debug_outchar |
313 | call fdo_debug_outchar |