Rev 420 | Go to most recent revision | Show entire file | Regard whitespace | Details | Blame | Last modification | View Log | RSS feed
Rev 420 | Rev 427 | ||
---|---|---|---|
Line 17... | Line 17... | ||
17 | dd debug_set_drx |
17 | dd debug_set_drx |
Line 18... | Line 18... | ||
18 | 18 | ||
19 | debug_set_event_data: |
19 | debug_set_event_data: |
20 | ; in: ebx = pointer |
20 | ; in: ebx = pointer |
21 | ; destroys eax |
21 | ; destroys eax |
22 | mov eax, [CURRENT_TASK] |
- | |
23 | shl eax, 8 |
22 | mov eax, [current_slot] |
24 | mov [eax+SLOT_BASE+APPDATA.dbg_event_mem], ebx |
23 | mov [eax+APPDATA.dbg_event_mem], ebx |
Line 25... | Line 24... | ||
25 | ret |
24 | ret |
26 | 25 | ||
27 | get_debuggee_slot: |
26 | get_debuggee_slot: |
Line 451... | Line 450... | ||
451 | push eax |
450 | push eax |
452 | xor eax, eax |
451 | xor eax, eax |
453 | mov dr6, eax |
452 | mov dr6, eax |
454 | ; test if debugging |
453 | ; test if debugging |
455 | cli |
454 | cli |
456 | mov eax, [CURRENT_TASK] |
455 | mov eax, [current_slot] |
457 | shl eax, 8 |
- | |
458 | mov eax, [SLOT_BASE+eax+APPDATA.debugger_slot] |
456 | mov eax, [eax+APPDATA.debugger_slot] |
459 | test eax, eax |
457 | test eax, eax |
460 | jnz .debug |
458 | jnz .debug |
461 | sti |
459 | sti |
462 | ; not debuggee => say error and terminate |
460 | ; not debuggee => say error and terminate |
463 | add esp, 0x20+4 |
461 | add esp, 0x20+4 |