diff --git a/kernel/trunk/const.inc b/kernel/trunk/const.inc index fd3cb6c747..58d3ca7157 100644 --- a/kernel/trunk/const.inc +++ b/kernel/trunk/const.inc @@ -520,7 +520,7 @@ struct APPDATA dw ? ;+126 wnd_shape dd ? ;+128 wnd_shape_scale dd ? ;+132 - mem_start dd ? ;+136 + dd ? ;+136 counter_sum dd ? ;+140 ; R saved_box BOX ;+144 ipc_start dd ? ;+160 diff --git a/kernel/trunk/core/taskman.inc b/kernel/trunk/core/taskman.inc index fa61ca1077..431e5bfd28 100644 --- a/kernel/trunk/core/taskman.inc +++ b/kernel/trunk/core/taskman.inc @@ -972,7 +972,6 @@ proc set_app_params stdcall,slot:dword, params:dword, flags:dword mov [ebx+SLOT_BASE+APPDATA.cur_dir], eax rep movsd - mov dword [ebx+SLOT_BASE+APPDATA.mem_start], 0 mov [ebx+SLOT_BASE+APPDATA.event_mask], dword 1+2+4;set default event flags (see 40 function) inc dword [process_number] mov eax, [process_number] diff --git a/kernel/trunk/kernel.asm b/kernel/trunk/kernel.asm index d4f0d5bee7..2ce456e1b7 100644 --- a/kernel/trunk/kernel.asm +++ b/kernel/trunk/kernel.asm @@ -1607,9 +1607,7 @@ sys_setup: dec ebx jnz @f - mov edi, [current_slot] - mov eax, [edi+APPDATA.mem_start] - add eax, edx + mov eax, edx ; 1 = normal layout dec ecx jnz .shift @@ -1704,16 +1702,13 @@ sys_getsetup: dec ebx jnz @f - mov edi, [current_slot] - mov ebx, [edi+APPDATA.mem_start] - add ebx, edx -; 1 = normal layout - dec ecx - jnz .shift - + mov ebx, edx ; if given memory address belongs to kernel then error stdcall is_region_userspace, ebx, 128 jnz .addr_error +; 1 = normal layout + dec ecx + jnz .shift mov eax, keymap mov ecx, 128 @@ -1725,9 +1720,6 @@ sys_getsetup: dec ecx jnz .alt - stdcall is_region_userspace, ebx, 128 - jnz .addr_error - mov eax, keymap_shift mov ecx, 128 call memmove @@ -1738,9 +1730,6 @@ sys_getsetup: dec ecx jne .country - stdcall is_region_userspace, ebx, 128 - jnz .addr_error - mov eax, keymap_alt mov ecx, 128 call memmove