Subversion Repositories Kolibri OS

Rev

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

Rev 387 Rev 419
Line 113... Line 113...
113
; ecx=sizeof(CONTEXT)
113
; ecx=sizeof(CONTEXT)
114
; edx->CONTEXT
114
; edx->CONTEXT
115
; destroys eax,ecx,edx,esi,edi
115
; destroys eax,ecx,edx,esi,edi
116
	cmp	ecx, 28h
116
	cmp	ecx, 28h
117
	jnz	.ret
117
	jnz	.ret
118
	add	edx, std_application_base_address
118
    ;    add     edx, std_application_base_address
119
	push	ebx
119
	push	ebx
120
	mov	ebx, edx
120
	mov	ebx, edx
121
	call	check_region
121
	call	check_region
122
	pop	ebx
122
	pop	ebx
123
	dec	eax
123
	dec	eax
Line 172... Line 172...
172
; ecx=sizeof(CONTEXT)
172
; ecx=sizeof(CONTEXT)
173
; edx->CONTEXT
173
; edx->CONTEXT
174
; destroys eax,ecx,edx,esi,edi
174
; destroys eax,ecx,edx,esi,edi
175
	cmp	ecx, 28h
175
	cmp	ecx, 28h
176
	jnz	.ret
176
	jnz	.ret
177
	add	edx, std_application_base_address
177
    ;    add     edx, std_application_base_address
178
	push	ebx
178
	push	ebx
179
	mov	ebx, edx
179
	mov	ebx, edx
180
	call	check_region
180
	call	check_region
181
	pop	ebx
181
	pop	ebx
182
	dec	eax
182
	dec	eax
Line 228... Line 228...
228
	jc	.errret
228
	jc	.errret
229
	mov	ebp, eax
229
	mov	ebp, eax
230
        lea     eax, [eax*8+SLOT_BASE+APPDATA.dbg_regs]
230
        lea     eax, [eax*8+SLOT_BASE+APPDATA.dbg_regs]
231
; [eax]=dr0, [eax+4]=dr1, [eax+8]=dr2, [eax+C]=dr3
231
; [eax]=dr0, [eax+4]=dr1, [eax+8]=dr2, [eax+C]=dr3
232
; [eax+10]=dr7
232
; [eax+10]=dr7
233
	add	edx, std_application_base_address
233
    ;    add     edx, std_application_base_address
234
	jc	.errret
234
	jc	.errret
235
	cmp	cl, 3
235
	cmp	cl, 3
236
	ja	.errret
236
	ja	.errret
237
	mov	ebx, dr7
237
	mov	ebx, dr7
238
	shr	ebx, cl
238
	shr	ebx, cl
Line 300... Line 300...
300
; ecx=length
300
; ecx=length
301
; esi->buffer in debugger
301
; esi->buffer in debugger
302
; edx=address in debuggee
302
; edx=address in debuggee
303
; out: [esp+36]=sizeof(read)
303
; out: [esp+36]=sizeof(read)
304
; destroys all
304
; destroys all
305
	add	esi, std_application_base_address
305
    ;    add     esi, std_application_base_address
306
	push	ebx
306
	push	ebx
307
	mov	ebx, esi
307
	mov	ebx, esi
308
	call	check_region
308
	call	check_region
309
	pop	ebx
309
	pop	ebx
310
	dec	eax
310
	dec	eax
Line 327... Line 327...
327
; ecx=length
327
; ecx=length
328
; esi->buffer in debugger
328
; esi->buffer in debugger
329
; edx=address in debuggee
329
; edx=address in debuggee
330
; out: [esp+36]=sizeof(write)
330
; out: [esp+36]=sizeof(write)
331
; destroys all
331
; destroys all
332
	add	esi, std_application_base_address
332
    ;    add     esi, std_application_base_address
333
	push	ebx
333
	push	ebx
334
	mov	ebx, esi
334
	mov	ebx, esi
335
	call	check_region
335
	call	check_region
336
	pop	ebx
336
	pop	ebx
337
	dec	eax
337
	dec	eax