Rev 1056 | Rev 1329 | Go to most recent revision | Show entire file | Regard whitespace | Details | Blame | Last modification | View Log | RSS feed
Rev 1056 | Rev 1076 | ||
---|---|---|---|
Line 3... | Line 3... | ||
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 | ;; ;; |
6 | ;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;; |
6 | ;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;; |
Line 7... | Line 7... | ||
7 | 7 | ||
Line 8... | Line 8... | ||
8 | $Revision: 1056 $ |
8 | $Revision: 1076 $ |
9 | 9 | ||
10 | 10 | ||
Line 412... | Line 412... | ||
412 | mov eax, ebp |
412 | mov eax, ebp |
413 | shl eax, 8 |
413 | shl eax, 8 |
414 | or byte [SLOT_BASE+eax+APPDATA.event_mask+1], 1 ; set flag 100h |
414 | or byte [SLOT_BASE+eax+APPDATA.event_mask+1], 1 ; set flag 100h |
415 | .ret: |
415 | .ret: |
416 | ret |
416 | ret |
417 | - | ||
418 | debug_ex: |
- | |
419 | ; we are debugged process, notify debugger and suspend ourself |
- | |
420 | ; eax=debugger PID |
- | |
421 | mov edx, dr6 ; debug_message data=DR6_image |
- | |
422 | xor ebx, ebx |
- | |
423 | mov dr6, ebx |
- | |
424 | mov ebx, dr7 |
- | |
425 | mov cl, not 8 |
- | |
426 | .l1: shl bl,2 |
- | |
427 | jc @f |
- | |
428 | and dl, cl |
- | |
429 | @@: sar cl,1 |
- | |
430 | jc .l1 |
- | |
431 | mov ecx,3 ; debug_message code=debug_exception |
- | |
432 | .notify: |
- | |
433 | push edx ; debug_message data |
- | |
434 | mov ebx, [TASK_BASE] |
- | |
435 | push [ebx+TASKDATA.pid] ; PID |
- | |
436 | push ecx ; debug_message code |
- | |
437 | mov ecx,12 ; debug_message size |
- | |
438 | call debugger_notify ;; only ONE using, inline ??? |
- | |
439 | add esp,12 |
- | |
440 | mov edx, [TASK_BASE] |
- | |
441 | mov byte [edx+TASKDATA.state], 1 ; suspended |
- | |
442 | call change_task |
- | |
443 | restore_ring3_context |
- | |
444 | iretd |
- |