forked from KolibriOS/kolibrios
small update copyright year in kernel
git-svn-id: svn://kolibrios.org@9715 a494cfbc-eb01-0410-851d-a64ba20cac60
This commit is contained in:
parent
3920d392b0
commit
182f6ade61
@ -1,6 +1,6 @@
|
||||
;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;
|
||||
;; ;;
|
||||
;; Copyright (C) KolibriOS team 2004-2021. All rights reserved. ;;
|
||||
;; Copyright (C) KolibriOS team 2004-2022. All rights reserved. ;;
|
||||
;; Distributed under terms of the GNU General Public License ;;
|
||||
;; ;;
|
||||
;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;
|
||||
@ -281,8 +281,6 @@ LFB_BASE = 0xFE000000
|
||||
|
||||
new_app_base = 0;
|
||||
|
||||
;twdw = TASK_TABLE - window_data
|
||||
|
||||
std_application_base_address = new_app_base
|
||||
RING0_STACK_SIZE = 0x2000
|
||||
|
||||
|
@ -1,6 +1,6 @@
|
||||
;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;
|
||||
;; ;;
|
||||
;; Copyright (C) KolibriOS team 2004-2020. All rights reserved. ;;
|
||||
;; Copyright (C) KolibriOS team 2004-2022. All rights reserved. ;;
|
||||
;; Distributed under terms of the GNU General Public License ;;
|
||||
;; ;;
|
||||
;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;
|
||||
|
@ -1,6 +1,6 @@
|
||||
;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;
|
||||
;; ;;
|
||||
;; Copyright (C) KolibriOS team 2013-2015. All rights reserved. ;;
|
||||
;; Copyright (C) KolibriOS team 2013-2022. All rights reserved. ;;
|
||||
;; Distributed under terms of the GNU General Public License ;;
|
||||
;; ;;
|
||||
;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;
|
||||
|
@ -1,6 +1,6 @@
|
||||
;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;
|
||||
;; ;;
|
||||
;; Copyright (C) KolibriOS team 2013-2015. All rights reserved. ;;
|
||||
;; Copyright (C) KolibriOS team 2013-2022. All rights reserved. ;;
|
||||
;; Distributed under terms of the GNU General Public License ;;
|
||||
;; ;;
|
||||
;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;
|
||||
|
@ -1,6 +1,6 @@
|
||||
;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;
|
||||
;; ;;
|
||||
;; Copyright (C) KolibriOS team 2004-2015. All rights reserved. ;;
|
||||
;; Copyright (C) KolibriOS team 2004-2022. All rights reserved. ;;
|
||||
;; Distributed under terms of the GNU General Public License ;;
|
||||
;; ;;
|
||||
;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;
|
||||
|
@ -1,6 +1,6 @@
|
||||
;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;
|
||||
;; ;;
|
||||
;; Copyright (C) KolibriOS team 2004-2015. All rights reserved. ;;
|
||||
;; Copyright (C) KolibriOS team 2004-2022. All rights reserved. ;;
|
||||
;; Distributed under terms of the GNU General Public License ;;
|
||||
;; ;;
|
||||
;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;
|
||||
@ -155,14 +155,14 @@ debug_getcontext:
|
||||
call get_debuggee_slot
|
||||
jc .ret
|
||||
|
||||
shr eax, 8
|
||||
shr eax, BSF sizeof.APPDATA
|
||||
cmp eax, [fpu_owner]
|
||||
jne @f
|
||||
inc bh ; set swap context flag
|
||||
@@:
|
||||
shl eax, BSF sizeof.APPDATA
|
||||
mov edi, esi
|
||||
mov eax, [eax+SLOT_BASE+APPDATA.pl0_stack]
|
||||
mov eax, [SLOT_BASE + eax + APPDATA.pl0_stack]
|
||||
lea esi, [eax + RING0_STACK_SIZE]
|
||||
|
||||
.ring0:
|
||||
@ -294,7 +294,7 @@ debug_set_drx:
|
||||
jnz .okret
|
||||
; imul eax, ebp, tss_step/32
|
||||
; and byte [eax + tss_data + TSS._trap], not 1
|
||||
and [ebp + SLOT_BASE+APPDATA.dbg_state], not 1
|
||||
and [SLOT_BASE + ebp + APPDATA.dbg_state], not 1
|
||||
.okret:
|
||||
and dword [esp+32], 0
|
||||
sti
|
||||
@ -341,7 +341,7 @@ debug_set_drx:
|
||||
or [eax + 10h+2], dx ; set R/W and LEN fields
|
||||
; imul eax, ebp, tss_step/32
|
||||
; or byte [eax + tss_data + TSS._trap], 1
|
||||
or [ebp + SLOT_BASE+APPDATA.dbg_state], 1
|
||||
or [SLOT_BASE + ebp + APPDATA.dbg_state], 1
|
||||
jmp .okret
|
||||
|
||||
debug_read_process_memory:
|
||||
@ -354,7 +354,7 @@ debug_read_process_memory:
|
||||
; destroys all
|
||||
call get_debuggee_slot
|
||||
jc .err
|
||||
shr eax, 8
|
||||
shr eax, BSF sizeof.APPDATA
|
||||
mov ecx, edi
|
||||
call read_process_memory
|
||||
sti
|
||||
@ -374,7 +374,7 @@ debug_write_process_memory:
|
||||
; destroys all
|
||||
call get_debuggee_slot
|
||||
jc debug_read_process_memory.err
|
||||
shr eax, 8
|
||||
shr eax, BSF sizeof.APPDATA
|
||||
mov ecx, edi
|
||||
call write_process_memory
|
||||
sti
|
||||
@ -393,7 +393,7 @@ debugger_notify:
|
||||
add edi, 500 ; 5 sec timeout
|
||||
.1:
|
||||
mov eax, ebp
|
||||
shl eax, 8
|
||||
shl eax, BSF sizeof.APPDATA
|
||||
mov esi, [SLOT_BASE + eax + APPDATA.dbg_event_mem]
|
||||
test esi, esi
|
||||
jz .ret
|
||||
|
@ -1,6 +1,6 @@
|
||||
;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;
|
||||
;; ;;
|
||||
;; Copyright (C) KolibriOS team 2004-2020. All rights reserved. ;;
|
||||
;; Copyright (C) KolibriOS team 2004-2022. All rights reserved. ;;
|
||||
;; Distributed under terms of the GNU General Public License. ;;
|
||||
;; ;;
|
||||
;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;
|
||||
|
@ -1,6 +1,6 @@
|
||||
;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;
|
||||
;; ;;
|
||||
;; Copyright (C) KolibriOS team 2004-2015. All rights reserved. ;;
|
||||
;; Copyright (C) KolibriOS team 2004-2022. All rights reserved. ;;
|
||||
;; Distributed under terms of the GNU General Public License ;;
|
||||
;; ;;
|
||||
;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;
|
||||
|
@ -1,6 +1,6 @@
|
||||
;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;
|
||||
;; ;;
|
||||
;; Copyright (C) KolibriOS team 2004-2015. All rights reserved. ;;
|
||||
;; Copyright (C) KolibriOS team 2004-2022. All rights reserved. ;;
|
||||
;; Distributed under terms of the GNU General Public License ;;
|
||||
;; ;;
|
||||
;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;
|
||||
|
@ -1,6 +1,6 @@
|
||||
;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;
|
||||
;; ;;
|
||||
;; Copyright (C) KolibriOS team 2004-2015. All rights reserved. ;;
|
||||
;; Copyright (C) KolibriOS team 2004-2022. All rights reserved. ;;
|
||||
;; Distributed under terms of the GNU General Public License ;;
|
||||
;; ;;
|
||||
;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;
|
||||
|
@ -1,6 +1,6 @@
|
||||
;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;
|
||||
;; ;;
|
||||
;; Copyright (C) KolibriOS team 2004-2017. All rights reserved. ;;
|
||||
;; Copyright (C) KolibriOS team 2004-2022. All rights reserved. ;;
|
||||
;; Distributed under terms of the GNU General Public License ;;
|
||||
;; ;;
|
||||
;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;
|
||||
@ -177,14 +177,14 @@ fpu_save:
|
||||
.save:
|
||||
mov [fpu_owner], esi
|
||||
|
||||
shl ecx, 8
|
||||
mov eax, [ecx+SLOT_BASE+APPDATA.fpu_state]
|
||||
shl ecx, BSF sizeof.APPDATA
|
||||
mov eax, [SLOT_BASE + ecx + APPDATA.fpu_state]
|
||||
|
||||
call save_context
|
||||
|
||||
; first 512 bytes of XSAVE area have the same format as FXSAVE
|
||||
shl esi, 8
|
||||
mov esi, [esi+SLOT_BASE+APPDATA.fpu_state]
|
||||
shl esi, BSF sizeof.APPDATA
|
||||
mov esi, [SLOT_BASE + esi + APPDATA.fpu_state]
|
||||
mov ecx, 512/4
|
||||
cld
|
||||
rep movsd
|
||||
@ -225,13 +225,13 @@ avx_save:
|
||||
.save:
|
||||
mov [fpu_owner], esi
|
||||
|
||||
shl ecx, 8
|
||||
mov eax, [ecx+SLOT_BASE+APPDATA.fpu_state]
|
||||
shl ecx, BSF sizeof.APPDATA
|
||||
mov eax, [SLOT_BASE + ecx + APPDATA.fpu_state]
|
||||
|
||||
call save_context
|
||||
|
||||
shl esi, 8
|
||||
mov esi, [esi+SLOT_BASE+APPDATA.fpu_state]
|
||||
shl esi, BSF sizeof.APPDATA
|
||||
mov esi, [SLOT_BASE + esi + APPDATA.fpu_state]
|
||||
mov ecx, [xsave_area_size]
|
||||
add ecx, 3
|
||||
shr ecx, 2
|
||||
@ -297,8 +297,8 @@ fpu_restore:
|
||||
pop ecx
|
||||
ret
|
||||
.copy:
|
||||
shl eax, 8
|
||||
mov edi, [eax+SLOT_BASE+APPDATA.fpu_state]
|
||||
shl eax, BSF sizeof.APPDATA
|
||||
mov edi, [SLOT_BASE + eax + APPDATA.fpu_state]
|
||||
mov ecx, 512/4
|
||||
cld
|
||||
rep movsd
|
||||
@ -351,8 +351,8 @@ avx_restore:
|
||||
pop ecx
|
||||
ret
|
||||
.copy:
|
||||
shl eax, 8
|
||||
mov edi, [eax+SLOT_BASE+APPDATA.fpu_state]
|
||||
shl eax, BSF sizeof.APPDATA
|
||||
mov edi, [SLOT_BASE + eax + APPDATA.fpu_state]
|
||||
mov ecx, [xsave_area_size]
|
||||
add ecx, 3
|
||||
shr ecx, 2
|
||||
@ -375,8 +375,8 @@ except_7: ;#NM exception handler
|
||||
cmp ebx, [current_slot_idx]
|
||||
je .exit
|
||||
|
||||
shl ebx, 8
|
||||
mov eax, [ebx+SLOT_BASE+APPDATA.fpu_state]
|
||||
shl ebx, BSF sizeof.APPDATA
|
||||
mov eax, [SLOT_BASE + ebx + APPDATA.fpu_state]
|
||||
bt [cpu_caps + (CAPS_OSXSAVE/32)*4], CAPS_OSXSAVE mod 32
|
||||
jnc .no_xsave
|
||||
mov ecx, eax
|
||||
@ -385,8 +385,8 @@ except_7: ;#NM exception handler
|
||||
xsave [ecx]
|
||||
mov ebx, [current_slot_idx]
|
||||
mov [fpu_owner], ebx
|
||||
shl ebx, 8
|
||||
mov ecx, [ebx+SLOT_BASE+APPDATA.fpu_state]
|
||||
shl ebx, BSF sizeof.APPDATA
|
||||
mov ecx, [SLOT_BASE + ebx + APPDATA.fpu_state]
|
||||
xrstor [ecx]
|
||||
.exit:
|
||||
restore_ring3_context
|
||||
@ -398,8 +398,8 @@ except_7: ;#NM exception handler
|
||||
fxsave [eax]
|
||||
mov ebx, [current_slot_idx]
|
||||
mov [fpu_owner], ebx
|
||||
shl ebx, 8
|
||||
mov eax, [ebx+SLOT_BASE+APPDATA.fpu_state]
|
||||
shl ebx, BSF sizeof.APPDATA
|
||||
mov eax, [SLOT_BASE + ebx + APPDATA.fpu_state]
|
||||
fxrstor [eax]
|
||||
restore_ring3_context
|
||||
iret
|
||||
@ -408,8 +408,8 @@ except_7: ;#NM exception handler
|
||||
fnsave [eax]
|
||||
mov ebx, [current_slot_idx]
|
||||
mov [fpu_owner], ebx
|
||||
shl ebx, 8
|
||||
mov eax, [ebx+SLOT_BASE+APPDATA.fpu_state]
|
||||
shl ebx, BSF sizeof.APPDATA
|
||||
mov eax, [SLOT_BASE + ebx + APPDATA.fpu_state]
|
||||
frstor [eax]
|
||||
restore_ring3_context
|
||||
iret
|
||||
|
@ -1,6 +1,6 @@
|
||||
;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;
|
||||
;; ;;
|
||||
;; Copyright (C) KolibriOS team 2004-2020. All rights reserved. ;;
|
||||
;; Copyright (C) KolibriOS team 2004-2022. All rights reserved. ;;
|
||||
;; Distributed under terms of the GNU General Public License ;;
|
||||
;; ;;
|
||||
;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;
|
||||
|
@ -1,6 +1,6 @@
|
||||
;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;
|
||||
;; ;;
|
||||
;; Copyright (C) KolibriOS team 2004-2020. All rights reserved. ;;
|
||||
;; Copyright (C) KolibriOS team 2004-2022. All rights reserved. ;;
|
||||
;; Distributed under terms of the GNU General Public License ;;
|
||||
;; ;;
|
||||
;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;
|
||||
|
@ -1,6 +1,6 @@
|
||||
;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;
|
||||
;; ;;
|
||||
;; Copyright (C) KolibriOS team 2004-2020. All rights reserved. ;;
|
||||
;; Copyright (C) KolibriOS team 2004-2022. All rights reserved. ;;
|
||||
;; Distributed under terms of the GNU General Public License ;;
|
||||
;; ;;
|
||||
;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;
|
||||
|
@ -1,6 +1,6 @@
|
||||
;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;
|
||||
;; ;;
|
||||
;; Copyright (C) KolibriOS team 2004-2015. All rights reserved. ;;
|
||||
;; Copyright (C) KolibriOS team 2004-2022. All rights reserved. ;;
|
||||
;; Distributed under terms of the GNU General Public License ;;
|
||||
;; ;;
|
||||
;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;
|
||||
|
@ -1,6 +1,6 @@
|
||||
;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;
|
||||
;; ;;
|
||||
;; Copyright (C) KolibriOS team 2004-2020. All rights reserved. ;;
|
||||
;; Copyright (C) KolibriOS team 2004-2022. All rights reserved. ;;
|
||||
;; Distributed under terms of the GNU General Public License ;;
|
||||
;; ;;
|
||||
;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;
|
||||
@ -709,7 +709,7 @@ proc map_mem_ipc stdcall, lin_addr:dword,slot:dword,\
|
||||
jz .exit
|
||||
|
||||
mov eax, [slot]
|
||||
shl eax, 8
|
||||
shl eax, BSF sizeof.APPDATA
|
||||
mov eax, [SLOT_BASE + eax + APPDATA.process]
|
||||
test eax, eax
|
||||
jz .exit
|
||||
@ -772,7 +772,7 @@ proc map_memEx stdcall, lin_addr:dword,slot:dword,\
|
||||
jz .exit
|
||||
|
||||
mov eax, [slot]
|
||||
shl eax, 8
|
||||
shl eax, BSF sizeof.APPDATA
|
||||
mov eax, [SLOT_BASE + eax + APPDATA.process]
|
||||
test eax, eax
|
||||
jz .exit
|
||||
@ -864,7 +864,7 @@ proc safe_map_page stdcall, slot:dword, req_access:dword, ofs:dword
|
||||
cld
|
||||
push ebx ecx
|
||||
mov eax, [slot]
|
||||
shl eax, 8
|
||||
shl eax, BSF sizeof.APPDATA
|
||||
mov eax, [SLOT_BASE + eax + APPDATA.process]
|
||||
mov eax, [eax + PROC.dlls_list_ptr]
|
||||
test eax, eax
|
||||
@ -970,8 +970,8 @@ proc sys_ipc_send stdcall, PID:dword, msg_addr:dword, msg_size:dword
|
||||
jz .no_pid
|
||||
|
||||
mov [dst_slot], eax
|
||||
shl eax, 8
|
||||
mov edi, [eax+SLOT_BASE+APPDATA.ipc_start] ;is ipc area defined?
|
||||
shl eax, BSF sizeof.APPDATA
|
||||
mov edi, [SLOT_BASE + eax + APPDATA.ipc_start] ;is ipc area defined?
|
||||
test edi, edi
|
||||
jz .no_ipc_area
|
||||
|
||||
@ -979,7 +979,7 @@ proc sys_ipc_send stdcall, PID:dword, msg_addr:dword, msg_size:dword
|
||||
and ebx, 0xFFF
|
||||
mov [dst_offset], ebx
|
||||
|
||||
mov esi, [eax+SLOT_BASE+APPDATA.ipc_size]
|
||||
mov esi, [SLOT_BASE + eax + APPDATA.ipc_size]
|
||||
mov [buf_size], esi
|
||||
|
||||
mov ecx, [ipc_tmp]
|
||||
@ -1043,7 +1043,7 @@ proc sys_ipc_send stdcall, PID:dword, msg_addr:dword, msg_size:dword
|
||||
|
||||
mov eax, [dst_slot]
|
||||
shl eax, BSF sizeof.APPDATA
|
||||
or [eax+SLOT_BASE+APPDATA.occurred_events], EVENT_IPC
|
||||
or [SLOT_BASE + eax + APPDATA.occurred_events], EVENT_IPC
|
||||
push 0
|
||||
jmp .ret
|
||||
.no_pid:
|
||||
@ -1303,8 +1303,6 @@ f68:
|
||||
;movsd ; SRV.srv_proc_ex
|
||||
|
||||
xor eax, eax
|
||||
mov [esp+SYSCALL_STACK._eax], eax
|
||||
ret
|
||||
.fail:
|
||||
mov [esp + SYSCALL_STACK._eax], eax
|
||||
ret
|
||||
|
@ -1,6 +1,6 @@
|
||||
;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;
|
||||
;; ;;
|
||||
;; Copyright (C) KolibriOS team 2004-2015. All rights reserved. ;;
|
||||
;; Copyright (C) KolibriOS team 2004-2022. All rights reserved. ;;
|
||||
;; Distributed under terms of the GNU General Public License ;;
|
||||
;; ;;
|
||||
;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;
|
||||
|
@ -1,6 +1,6 @@
|
||||
;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;
|
||||
;; ;;
|
||||
;; Copyright (C) KolibriOS team 2004-2015. All rights reserved. ;;
|
||||
;; Copyright (C) KolibriOS team 2004-2022. All rights reserved. ;;
|
||||
;; Distributed under terms of the GNU General Public License ;;
|
||||
;; ;;
|
||||
;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;
|
||||
|
@ -1,6 +1,6 @@
|
||||
;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;
|
||||
;; ;;
|
||||
;; Copyright (C) KolibriOS team 2004-2021. All rights reserved. ;;
|
||||
;; Copyright (C) KolibriOS team 2004-2022. All rights reserved. ;;
|
||||
;; Copyright (C) MenuetOS 2000-2004 Ville Mikael Turjanmaa ;;
|
||||
;; Distributed under terms of the GNU General Public License ;;
|
||||
;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;
|
||||
@ -100,7 +100,7 @@ do_change_task:
|
||||
;param:
|
||||
; ebx = address of the APPDATA for incoming task (new)
|
||||
;warning:
|
||||
; [current_slot_idx] and [TASK_BASE] must be changed before (e.g. in find_next_task)
|
||||
; [current_slot_idx] must be changed before (e.g. in find_next_task)
|
||||
; [current_slot] is the outcoming (old), and set here to a new value (ebx)
|
||||
;scratched: eax,ecx,esi
|
||||
mov esi, ebx
|
||||
|
@ -1,6 +1,6 @@
|
||||
;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;
|
||||
;; ;;
|
||||
;; Copyright (C) KolibriOS team 2013-2015. All rights reserved. ;;
|
||||
;; Copyright (C) KolibriOS team 2013-2022. All rights reserved. ;;
|
||||
;; Distributed under terms of the GNU General Public License ;;
|
||||
;; ;;
|
||||
;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;
|
||||
|
@ -1,6 +1,6 @@
|
||||
;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;
|
||||
;; ;;
|
||||
;; Copyright (C) KolibriOS team 2004-2015. All rights reserved. ;;
|
||||
;; Copyright (C) KolibriOS team 2004-2022. All rights reserved. ;;
|
||||
;; Distributed under terms of the GNU General Public License ;;
|
||||
;; Author: Kees J. Bot 1 Jan 1994 ;;
|
||||
;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;
|
||||
|
@ -1,6 +1,6 @@
|
||||
;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;
|
||||
;; ;;
|
||||
;; Copyright (C) KolibriOS team 2004-2015. All rights reserved. ;;
|
||||
;; Copyright (C) KolibriOS team 2004-2022. All rights reserved. ;;
|
||||
;; Distributed under terms of the GNU General Public License ;;
|
||||
;; ;;
|
||||
;; Synhronization for MenuetOS. ;;
|
||||
@ -270,8 +270,8 @@ start_wait=$
|
||||
jmp start_wait
|
||||
ok=$
|
||||
push eax
|
||||
mov eax, dword [TASK_BASE+second_base_address]
|
||||
mov eax, [eax+TASKDATA.pid]
|
||||
mov eax, dword [current_slot]
|
||||
mov eax, [eax + APPDATA.tid]
|
||||
mov [name], eax
|
||||
pop eax
|
||||
sti
|
||||
@ -304,8 +304,8 @@ macro WaitSimpleCriticalSection name
|
||||
{
|
||||
local start_wait,first_wait,inc_counter,end_wait
|
||||
push eax
|
||||
mov eax, [TASK_BASE+second_base_address]
|
||||
mov eax, [eax+TASKDATA.pid]
|
||||
mov eax, [current_slot]
|
||||
mov eax, [eax + APPDATA.tid]
|
||||
start_wait=$
|
||||
cli
|
||||
cmp [name], dword 0
|
||||
@ -336,8 +336,8 @@ release_end=$
|
||||
macro TryWaitSimpleCriticalSection name ;result in eax and in flags
|
||||
{
|
||||
local ok,try_end
|
||||
mov eax, [CURRENT_TASK+second_base_address]
|
||||
mov eax, [eax+TASKDATA.pid]
|
||||
mov eax, [current_slot]
|
||||
mov eax, [eax + APPDATA.tid]
|
||||
cmp [name], eax
|
||||
jz ok
|
||||
cmp [name], 0
|
||||
|
@ -1,6 +1,6 @@
|
||||
;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;
|
||||
;; ;;
|
||||
;; Copyright (C) KolibriOS team 2013-2015. All rights reserved. ;;
|
||||
;; Copyright (C) KolibriOS team 2013-2022. All rights reserved. ;;
|
||||
;; Distributed under terms of the GNU General Public License ;;
|
||||
;; ;;
|
||||
;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;
|
||||
|
@ -1,6 +1,6 @@
|
||||
;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;
|
||||
;; ;;
|
||||
;; Copyright (C) KolibriOS team 2004-2021. All rights reserved. ;;
|
||||
;; Copyright (C) KolibriOS team 2004-2022. All rights reserved. ;;
|
||||
;; Distributed under terms of the GNU General Public License. ;;
|
||||
;; ;;
|
||||
;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;
|
||||
@ -288,27 +288,6 @@ show_error_parameters:
|
||||
test eax, eax
|
||||
jnz .error_ESP
|
||||
DEBUGF 1, " [ESP+32]: %x\n",[ebx]
|
||||
;for input instruction
|
||||
mov ebx, [reg_eip+4]
|
||||
call .check_ESP
|
||||
test eax, eax
|
||||
jnz .error_ESP
|
||||
DEBUGF 1, "K : [EIP]: %x",[ebx]
|
||||
add ebx, 4
|
||||
call .check_ESP
|
||||
test eax, eax
|
||||
jnz .error_ESP
|
||||
DEBUGF 1, " [EIP+4]: %x",[ebx]
|
||||
add ebx, 4
|
||||
call .check_ESP
|
||||
test eax, eax
|
||||
jnz .error_ESP
|
||||
DEBUGF 1, " [EIP+8]: %x\n",[ebx]
|
||||
add ebx, 4
|
||||
call .check_ESP
|
||||
test eax, eax
|
||||
jnz .error_ESP
|
||||
DEBUGF 1, "K : [EIP+12]: %x\n",[ebx]
|
||||
pop edx ecx ebx eax
|
||||
ret
|
||||
.error_ESP:
|
||||
@ -449,19 +428,19 @@ destroy_thread:
|
||||
; if the process is in V86 mode...
|
||||
mov eax, [.slot]
|
||||
shl eax, BSF sizeof.APPDATA
|
||||
mov esi, [eax+SLOT_BASE+APPDATA.pl0_stack]
|
||||
mov esi, [SLOT_BASE + eax + APPDATA.pl0_stack]
|
||||
add esi, RING0_STACK_SIZE
|
||||
cmp [eax+SLOT_BASE+APPDATA.saved_esp0], esi
|
||||
cmp [SLOT_BASE + eax + APPDATA.saved_esp0], esi
|
||||
jz .nov86
|
||||
; ...it has page directory for V86 mode
|
||||
mov esi, [eax+SLOT_BASE+APPDATA.saved_esp0]
|
||||
mov esi, [SLOT_BASE + eax + APPDATA.saved_esp0]
|
||||
mov ecx, [esi+4]
|
||||
mov [eax+SLOT_BASE+APPDATA.process], ecx
|
||||
mov [SLOT_BASE + eax + APPDATA.process], ecx
|
||||
; ...and I/O permission map for V86 mode
|
||||
mov ecx, [esi+12]
|
||||
mov [eax+SLOT_BASE+APPDATA.io_map], ecx
|
||||
mov [SLOT_BASE + eax + APPDATA.io_map], ecx
|
||||
mov ecx, [esi+8]
|
||||
mov [eax+SLOT_BASE+APPDATA.io_map+4], ecx
|
||||
mov [SLOT_BASE + eax + APPDATA.io_map+4], ecx
|
||||
.nov86:
|
||||
; destroy per-thread kernel objects
|
||||
mov esi, [.slot]
|
||||
@ -486,7 +465,7 @@ destroy_thread:
|
||||
jne @F
|
||||
|
||||
mov [fpu_owner], 2
|
||||
mov eax, [sizeof.APPDATA*2+SLOT_BASE+APPDATA.fpu_state]
|
||||
mov eax, [SLOT_BASE + sizeof.APPDATA*2 + APPDATA.fpu_state]
|
||||
clts
|
||||
bt [cpu_caps], CAPS_SSE
|
||||
jnc .no_SSE
|
||||
@ -674,7 +653,7 @@ destroy_thread:
|
||||
|
||||
push esi ; remove hd1 & cd & flp reservation
|
||||
shl esi, BSF sizeof.APPDATA
|
||||
mov esi, [esi + SLOT_BASE + APPDATA.tid]
|
||||
mov esi, [SLOT_BASE + esi + APPDATA.tid]
|
||||
cmp [cd_status], esi
|
||||
jnz @f
|
||||
call free_cd_channel
|
||||
@ -690,7 +669,7 @@ destroy_thread:
|
||||
pusha ; remove all port reservations
|
||||
mov edx, esi
|
||||
shl edx, BSF sizeof.APPDATA
|
||||
mov edx, [edx + SLOT_BASE + APPDATA.tid]
|
||||
mov edx, [SLOT_BASE + edx + APPDATA.tid]
|
||||
|
||||
rmpr0:
|
||||
|
||||
@ -733,7 +712,7 @@ destroy_thread:
|
||||
popa
|
||||
mov edi, esi ; do not run this process slot
|
||||
shl edi, BSF sizeof.APPDATA
|
||||
mov [edi + SLOT_BASE + APPDATA.state], TSTATE_FREE
|
||||
mov [SLOT_BASE + edi + APPDATA.state], TSTATE_FREE
|
||||
; debugger test - terminate all debuggees
|
||||
mov eax, 2
|
||||
mov ecx, SLOT_BASE + 2*sizeof.APPDATA + APPDATA.debugger_slot
|
||||
|
@ -1,6 +1,6 @@
|
||||
;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;
|
||||
;; ;;
|
||||
;; Copyright (C) KolibriOS team 2004-2015. All rights reserved. ;;
|
||||
;; Copyright (C) KolibriOS team 2004-2022. All rights reserved. ;;
|
||||
;; Distributed under terms of the GNU General Public License ;;
|
||||
;; ;;
|
||||
;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;
|
||||
|
@ -1,6 +1,6 @@
|
||||
;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;
|
||||
;; ;;
|
||||
;; Copyright (C) KolibriOS team 2004-2021. All rights reserved. ;;
|
||||
;; Copyright (C) KolibriOS team 2004-2022. All rights reserved. ;;
|
||||
;; Distributed under terms of the GNU General Public License. ;;
|
||||
;; ;;
|
||||
;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;
|
||||
@ -127,7 +127,7 @@ proc fs_execute
|
||||
jz .err_0
|
||||
|
||||
mov [slot], eax
|
||||
shl eax, 8
|
||||
shl eax, BSF sizeof.APPDATA
|
||||
lea edi, [SLOT_BASE + eax]
|
||||
mov [slot_base], edi
|
||||
; clean extended information about process
|
||||
@ -488,10 +488,7 @@ pid_to_slot:
|
||||
push ecx
|
||||
mov ebx, [thread_count]
|
||||
shl ebx, BSF sizeof.APPDATA ; multiply by size
|
||||
; add 2*32 cause:
|
||||
; [TASK_TABLE; TASK_TABLE + 32) isnt a task actually
|
||||
; skip first process in the task table
|
||||
;mov ecx, 2*32 ;sizeof.TASKDATA
|
||||
mov ecx, sizeof.APPDATA
|
||||
|
||||
.loop:
|
||||
@ -499,7 +496,7 @@ pid_to_slot:
|
||||
;ebx = maximum permitted offset
|
||||
cmp [SLOT_BASE + ecx + APPDATA.state], TSTATE_FREE
|
||||
jz .endloop ;skip empty slots
|
||||
cmp [ecx + SLOT_BASE + APPDATA.tid], eax;check PID
|
||||
cmp [SLOT_BASE + ecx + APPDATA.tid], eax
|
||||
jz .pid_found
|
||||
.endloop:
|
||||
add ecx, sizeof.APPDATA
|
||||
@ -698,7 +695,7 @@ proc new_sys_threads
|
||||
mov ebx, esi ;ebx=esi - pointer to extended information about current thread
|
||||
|
||||
mov edi, eax
|
||||
shl edi, 8
|
||||
shl edi, BSF sizeof.APPDATA
|
||||
add edi, SLOT_BASE
|
||||
mov edx, edi ;edx=edi - pointer to extended infomation about new thread
|
||||
mov ecx, sizeof.APPDATA/4
|
||||
@ -927,16 +924,16 @@ proc set_app_params stdcall,slot:dword, params:dword, flags:dword
|
||||
mov ebx, eax
|
||||
|
||||
shl eax, BSF sizeof.APPDATA
|
||||
mov [eax+SLOT_BASE+APPDATA.fpu_state], edi
|
||||
mov [eax+SLOT_BASE+APPDATA.exc_handler], 0
|
||||
mov [eax+SLOT_BASE+APPDATA.except_mask], 0
|
||||
mov [eax+SLOT_BASE+APPDATA.terminate_protection], 80000001h
|
||||
mov [SLOT_BASE + eax + APPDATA.fpu_state], edi
|
||||
mov [SLOT_BASE + eax + APPDATA.exc_handler], 0
|
||||
mov [SLOT_BASE + eax + APPDATA.except_mask], 0
|
||||
mov [SLOT_BASE + eax + APPDATA.terminate_protection], 80000001h
|
||||
|
||||
;set default io permission map
|
||||
mov ecx, [SLOT_BASE + sizeof.APPDATA + APPDATA.io_map]
|
||||
mov [eax+SLOT_BASE+APPDATA.io_map], ecx
|
||||
mov [SLOT_BASE + eax + APPDATA.io_map], ecx
|
||||
mov ecx, [SLOT_BASE + sizeof.APPDATA + APPDATA.io_map + 4]
|
||||
mov [eax+SLOT_BASE+APPDATA.io_map+4], ecx
|
||||
mov [SLOT_BASE + eax + APPDATA.io_map + 4], ecx
|
||||
|
||||
mov esi, fpu_data
|
||||
mov ecx, [xsave_area_size]
|
||||
@ -947,20 +944,20 @@ proc set_app_params stdcall,slot:dword, params:dword, flags:dword
|
||||
cmp [thread_count], ebx
|
||||
adc [thread_count], 0 ; update number of processes
|
||||
shl ebx, BSF sizeof.APPDATA
|
||||
lea edx, [ebx+SLOT_BASE+APP_EV_OFFSET]
|
||||
mov [SLOT_BASE+APPDATA.fd_ev+ebx], edx
|
||||
mov [SLOT_BASE+APPDATA.bk_ev+ebx], edx
|
||||
lea edx, [SLOT_BASE + ebx + APP_EV_OFFSET]
|
||||
mov [SLOT_BASE + ebx + APPDATA.fd_ev], edx
|
||||
mov [SLOT_BASE + ebx + APPDATA.bk_ev], edx
|
||||
|
||||
add edx, APP_OBJ_OFFSET - APP_EV_OFFSET
|
||||
mov [SLOT_BASE+APPDATA.fd_obj+ebx], edx
|
||||
mov [SLOT_BASE+APPDATA.bk_obj+ebx], edx
|
||||
mov [SLOT_BASE + ebx + APPDATA.fd_obj], edx
|
||||
mov [SLOT_BASE + ebx + APPDATA.bk_obj], edx
|
||||
|
||||
mov ecx, [def_cursor]
|
||||
mov [SLOT_BASE+APPDATA.cursor+ebx], ecx
|
||||
mov [SLOT_BASE + ebx + APPDATA.cursor], ecx
|
||||
mov eax, [pl0_stack]
|
||||
mov [SLOT_BASE+APPDATA.pl0_stack+ebx], eax
|
||||
mov [SLOT_BASE + ebx + APPDATA.pl0_stack], eax
|
||||
add eax, RING0_STACK_SIZE
|
||||
mov [SLOT_BASE+APPDATA.saved_esp0+ebx], eax
|
||||
mov [SLOT_BASE + ebx + APPDATA.saved_esp0], eax
|
||||
|
||||
push ebx
|
||||
stdcall kernel_alloc, maxPathLength
|
||||
@ -969,23 +966,23 @@ proc set_app_params stdcall,slot:dword, params:dword, flags:dword
|
||||
mov esi, [esi + APPDATA.cur_dir]
|
||||
mov ecx, maxPathLength/4
|
||||
mov edi, eax
|
||||
mov [ebx+SLOT_BASE+APPDATA.cur_dir], eax
|
||||
mov [SLOT_BASE + ebx + APPDATA.cur_dir], eax
|
||||
rep movsd
|
||||
|
||||
mov [ebx+SLOT_BASE+APPDATA.event_mask], dword 1+2+4;set default event flags (see 40 function)
|
||||
mov [SLOT_BASE + ebx + APPDATA.event_mask], dword 1+2+4;set default event flags (see 40 function)
|
||||
inc dword [process_number]
|
||||
mov eax, [process_number]
|
||||
mov [ebx+SLOT_BASE+APPDATA.tid], eax ;set TID
|
||||
mov [SLOT_BASE + ebx + APPDATA.tid], eax ;set TID
|
||||
|
||||
mov eax, [slot]
|
||||
mov [ebx+SLOT_BASE+APPDATA.wnd_number], al
|
||||
mov [SLOT_BASE + ebx + APPDATA.wnd_number], al
|
||||
mov ebx, eax
|
||||
shl ebx, BSF sizeof.WDATA
|
||||
lea ecx, [draw_data + ebx];ecx - pointer to draw data
|
||||
|
||||
; set window state to 'normal' (non-minimized/maximized/rolled-up) state
|
||||
mov [ebx+window_data+WDATA.fl_wstate], WSTATE_NORMAL
|
||||
mov [ebx+window_data+WDATA.fl_redraw], 1
|
||||
mov [window_data + ebx + WDATA.fl_wstate], WSTATE_NORMAL
|
||||
mov [window_data + ebx + WDATA.fl_redraw], 1
|
||||
|
||||
;set draw data to full screen
|
||||
xor eax, eax
|
||||
@ -1031,7 +1028,7 @@ proc set_app_params stdcall,slot:dword, params:dword, flags:dword
|
||||
lea edx, [ebx + REG_RET]
|
||||
mov ebx, [slot]
|
||||
shl ebx, BSF sizeof.APPDATA
|
||||
mov [ebx+SLOT_BASE+APPDATA.saved_esp], edx
|
||||
mov [SLOT_BASE + ebx + APPDATA.saved_esp], edx
|
||||
|
||||
xor edx, edx; process state - running
|
||||
; set if debuggee
|
||||
|
@ -1,6 +1,6 @@
|
||||
;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;
|
||||
;; ;;
|
||||
;; Copyright (C) KolibriOS team 2009-2015. All rights reserved. ;;
|
||||
;; Copyright (C) KolibriOS team 2009-2022. All rights reserved. ;;
|
||||
;; Distributed under terms of the GNU General Public License ;;
|
||||
;; ;;
|
||||
;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;
|
||||
|
@ -1,6 +1,6 @@
|
||||
;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;
|
||||
;; ;;
|
||||
;; Copyright (C) KolibriOS team 2012-2015. All rights reserved. ;;
|
||||
;; Copyright (C) KolibriOS team 2012-2022. All rights reserved. ;;
|
||||
;; Distributed under terms of the GNU General Public License ;;
|
||||
;; ;;
|
||||
;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;
|
||||
|
@ -1,6 +1,6 @@
|
||||
;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;
|
||||
;; ;;
|
||||
;; Copyright (C) KolibriOS team 2007-2021. All rights reserved. ;;
|
||||
;; Copyright (C) KolibriOS team 2007-2022. All rights reserved. ;;
|
||||
;; Distributed under terms of the GNU General Public License ;;
|
||||
;; ;;
|
||||
;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;
|
||||
@ -828,7 +828,7 @@ v86_irq2:
|
||||
mov esi, [v86_irqhooks + edi*8] ; get VM handle
|
||||
mov eax, [esi + V86_machine.process]
|
||||
mov ecx, [current_slot_idx]
|
||||
shl ecx, 8
|
||||
shl ecx, BSF sizeof.APPDATA
|
||||
cmp [SLOT_BASE + ecx + APPDATA.process], eax
|
||||
jnz .notcurrent
|
||||
lea eax, [edi+8]
|
||||
@ -839,7 +839,7 @@ v86_irq2:
|
||||
@@:
|
||||
jmp v86_exc_c.simulate_int
|
||||
.notcurrent:
|
||||
mov ebx, SLOT_BASE + 0x100
|
||||
mov ebx, SLOT_BASE + sizeof.APPDATA
|
||||
mov ecx, [thread_count]
|
||||
.scan:
|
||||
cmp [ebx + APPDATA.process], eax
|
||||
|
@ -1,6 +1,6 @@
|
||||
;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;
|
||||
;; ;;
|
||||
;; Copyright (C) KolibriOS team 2004-2017. All rights reserved. ;;
|
||||
;; Copyright (C) KolibriOS team 2004-2022. All rights reserved. ;;
|
||||
;; Distributed under terms of the GNU General Public License. ;;
|
||||
;; ;;
|
||||
;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;
|
||||
|
@ -1,6 +1,6 @@
|
||||
;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;
|
||||
;; ;;
|
||||
;; Copyright (C) KolibriOS team 2004-2015. All rights reserved. ;;
|
||||
;; Copyright (C) KolibriOS team 2004-2022. All rights reserved. ;;
|
||||
;; Distributed under terms of the GNU General Public License ;;
|
||||
;; ;;
|
||||
;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;
|
||||
|
@ -1,6 +1,6 @@
|
||||
;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;
|
||||
;; ;;
|
||||
;; Copyright (C) KolibriOS team 2004-2021. All rights reserved. ;;
|
||||
;; Copyright (C) KolibriOS team 2004-2022. All rights reserved. ;;
|
||||
;; Distributed under terms of the GNU General Public License ;;
|
||||
;; ;;
|
||||
;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;
|
||||
|
@ -1,6 +1,6 @@
|
||||
;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;
|
||||
;; ;;
|
||||
;; Copyright (C) KolibriOS team 2013-2015. All rights reserved. ;;
|
||||
;; Copyright (C) KolibriOS team 2013-2022. All rights reserved. ;;
|
||||
;; Distributed under terms of the GNU General Public License ;;
|
||||
;; ;;
|
||||
;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;
|
||||
|
@ -1,6 +1,6 @@
|
||||
;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;
|
||||
;; ;;
|
||||
;; Copyright (C) KolibriOS team 2013-2015. All rights reserved. ;;
|
||||
;; Copyright (C) KolibriOS team 2013-2022. All rights reserved. ;;
|
||||
;; Distributed under terms of the GNU General Public License ;;
|
||||
;; ;;
|
||||
;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;
|
||||
|
@ -167,7 +167,7 @@ DestroyEvent:
|
||||
WaitEvent:
|
||||
Бесконечно ожидает установки флага EVENT_SIGNALED в конкретном событии, принадлежащем
|
||||
вызывающему WaitEvent потоку. Сигнализирующий поток устанавливат этот флаг через
|
||||
RaiseEvent. Ожидающий поток замораживается путем перевода TASKDATA.state<=TSTATE_WAITING=5.
|
||||
RaiseEvent. Ожидающий поток замораживается путем перевода APPDATA.state<=TSTATE_WAITING=5.
|
||||
Перед заморозкой устанавливается флаг EVENT_WATCHED в событии.
|
||||
Если в полученном событии НЕ установлен MANUAL_RESET, то:
|
||||
{EVENT_SIGNALED и EVENT_WATCHED по получении события сбрасываются.
|
||||
@ -182,7 +182,7 @@ WaitEvent:
|
||||
WaitEventTimeout:
|
||||
Ожидает с таймаутом установки флага EVENT_SIGNALED в конкретном событии, принадлежащем
|
||||
вызывающему WaitEventTimeout потоку. Сигнализирующий поток устанавливат этот флаг через
|
||||
RaiseEvent. Ожидающий поток замораживается путем перевода TASKDATA.state<=TSTATE_WAITING=5.
|
||||
RaiseEvent. Ожидающий поток замораживается путем перевода APPDATA.state<=TSTATE_WAITING=5.
|
||||
Перед заморозкой устанавливается флаг EVENT_WATCHED в событии.
|
||||
Если в полученном событии НЕ установлен MANUAL_RESET, то:
|
||||
{EVENT_SIGNALED и EVENT_WATCHED по получении события сбрасываются.
|
||||
@ -216,7 +216,7 @@ GetEvent:
|
||||
--------------------------------------------------------------------------------------------
|
||||
Ф 68.14 для приложений: ;это тот же GetEvent, но с обёрткой.
|
||||
Бесконечно ожидает любое событие в очереди событий текущего потока. Ожидающий поток
|
||||
замораживается путем перевода TASKDATA.state<=TSTATE_WAITING=5. Данные события (EVENT.code+5*dword)
|
||||
замораживается путем перевода APPDATA.state<=TSTATE_WAITING=5. Данные события (EVENT.code+5*dword)
|
||||
копируются в указанный буфер. Сбрасывает байт приоритета (см. выше) в буфере.
|
||||
Принимает:
|
||||
eax - 68 - номер функции
|
||||
|
@ -176,7 +176,7 @@ DestroyEvent:
|
||||
WaitEvent:
|
||||
Wait infinitely until flag EVENT_SIGNALED is set in the event owned by
|
||||
the caller thread. This flag is set by signaling thread via RaiseEvent.
|
||||
Waiting thread is frozen by setting TASKDATA.state <= TSTATE_WAITING=5.
|
||||
Waiting thread is frozen by setting APPDATA.state <= TSTATE_WAITING=5.
|
||||
Flag EVENT_WATCHED is set in the event before freeze.
|
||||
If flag MANUAL_RESET is NOT set in the event then:
|
||||
EVENT_SIGNALED and EVENT_WATCHED are reset when the event is
|
||||
@ -193,7 +193,7 @@ WaitEvent:
|
||||
WaitEventTimeout:
|
||||
Wait with a timeout until flag EVENT_SIGNALED is set in the event owned
|
||||
by caller thread. This flag is set by signaling thread via RaiseEvent.
|
||||
Waiting thread is frozen by setting TASKDATA.state <= TSTATE_WAITING=5.
|
||||
Waiting thread is frozen by setting APPDATA.state <= TSTATE_WAITING=5.
|
||||
Flag EVENT_WATCHED is set in the event before freeze.
|
||||
If flag MANUAL_RESET is NOT set in the event then:
|
||||
EVENT_SIGNALED and EVENT_WATCHED are reset when the event is
|
||||
@ -212,7 +212,7 @@ WaitEventTimeout:
|
||||
--------------------------------------------------------------------------------
|
||||
GetEvent:
|
||||
Waits infinitely for any event in the queue of current thread. Thread is
|
||||
frozen by setting TASKDATA.state <= TSTATE_WAITING = 5. Event data
|
||||
frozen by setting APPDATA.state <= TSTATE_WAITING = 5. Event data
|
||||
(EVENT.code + 5*dword) are copied to specified buffer when received.
|
||||
Reset priority byte (see above) in the buffer.
|
||||
If flag MANUAL_RESET is NOT set in the event then:
|
||||
@ -232,7 +232,7 @@ GetEvent:
|
||||
--------------------------------------------------------------------------------
|
||||
SysFn 68.14 for application: ; wrapped GetEvent
|
||||
Waits infinitely for any event in the queue of current thread. Thread is
|
||||
frozen by setting TASKDATA.state <= TSTATE_WAITING = 5. Event data
|
||||
frozen by setting APPDATA.state <= TSTATE_WAITING = 5. Event data
|
||||
(EVENT.code + 5*dword) are copied to specified buffer when received.
|
||||
Reset priority byte (see above) in the buffer.
|
||||
Gets:
|
||||
|
@ -1,6 +1,6 @@
|
||||
;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;
|
||||
;; ;;
|
||||
;; Copyright (C) KolibriOS team 2013-2015. All rights reserved. ;;
|
||||
;; Copyright (C) KolibriOS team 2013-2022. All rights reserved. ;;
|
||||
;; Distributed under terms of the GNU General Public License ;;
|
||||
;; ;;
|
||||
;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;
|
||||
|
@ -1,6 +1,6 @@
|
||||
;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;
|
||||
;; ;;
|
||||
;; Copyright (C) KolibriOS team 2004-2019. All rights reserved. ;;
|
||||
;; Copyright (C) KolibriOS team 2004-2022. All rights reserved. ;;
|
||||
;; Distributed under terms of the GNU General Public License ;;
|
||||
;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;
|
||||
|
||||
|
@ -1,6 +1,6 @@
|
||||
;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;
|
||||
;; ;;
|
||||
;; Copyright (C) KolibriOS team 2004-2021. All rights reserved. ;;
|
||||
;; Copyright (C) KolibriOS team 2004-2022. All rights reserved. ;;
|
||||
;; Copyright (C) MenuetOS 2000-2004 Ville Mikael Turjanmaa ;;
|
||||
;; Distributed under terms of the GNU General Public License ;;
|
||||
;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;
|
||||
|
@ -1,6 +1,6 @@
|
||||
;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;
|
||||
;; ;;
|
||||
;; Copyright (C) KolibriOS team 2004-2021. All rights reserved. ;;
|
||||
;; Copyright (C) KolibriOS team 2004-2022. All rights reserved. ;;
|
||||
;; Distributed under terms of the GNU General Public License ;;
|
||||
;; ;;
|
||||
;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;
|
||||
@ -116,8 +116,8 @@ save_draw_mouse:
|
||||
|
||||
add eax, [_display.win_map]
|
||||
movzx edx, byte [ebx + eax]
|
||||
shl edx, 8
|
||||
mov esi, [edx+SLOT_BASE+APPDATA.cursor]
|
||||
shl edx, BSF sizeof.APPDATA
|
||||
mov esi, [SLOT_BASE + edx + APPDATA.cursor]
|
||||
|
||||
cmp esi, [current_cursor]
|
||||
je .draw
|
||||
|
@ -1,6 +1,6 @@
|
||||
;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;
|
||||
;; ;;
|
||||
;; Copyright (C) KolibriOS team 2004-2015. All rights reserved. ;;
|
||||
;; Copyright (C) KolibriOS team 2004-2022. All rights reserved. ;;
|
||||
;; Distributed under terms of the GNU General Public License ;;
|
||||
;; ;;
|
||||
;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;
|
||||
|
@ -1,6 +1,6 @@
|
||||
;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;
|
||||
;; ;;
|
||||
;; Copyright (C) KolibriOS team 2004-2015. All rights reserved. ;;
|
||||
;; Copyright (C) KolibriOS team 2004-2022. All rights reserved. ;;
|
||||
;; Distributed under terms of the GNU General Public License ;;
|
||||
;; ;;
|
||||
;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;
|
||||
|
@ -1,6 +1,6 @@
|
||||
;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;
|
||||
;; ;;
|
||||
;; Copyright (C) KolibriOS team 2004-2020. All rights reserved. ;;
|
||||
;; Copyright (C) KolibriOS team 2004-2022. All rights reserved. ;;
|
||||
;; Distributed under terms of the GNU General Public License ;;
|
||||
;; ;;
|
||||
;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;
|
||||
|
@ -1,6 +1,6 @@
|
||||
;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;
|
||||
;;
|
||||
;; Copyright (C) KolibriOS team 2004-2021. All rights reserved.
|
||||
;; Copyright (C) KolibriOS team 2004-2022. All rights reserved.
|
||||
;; PROGRAMMING:
|
||||
;; Ivan Poddubny
|
||||
;; Marat Zakiyanov (Mario79)
|
||||
@ -1546,14 +1546,14 @@ draw_num_text:
|
||||
|
||||
mov edi, [current_slot_idx]
|
||||
mov ecx, edi
|
||||
shl edi, 8
|
||||
shl ecx, 5
|
||||
shl edi, BSF sizeof.APPDATA
|
||||
shl ecx, BSF sizeof.WDATA
|
||||
|
||||
mov eax, [ecx+window_data+WDATA.box.left]
|
||||
add eax, [edi+SLOT_BASE+APPDATA.wnd_clientbox.left]
|
||||
mov eax, [window_data + ecx + WDATA.box.left]
|
||||
add eax, [SLOT_BASE + edi + APPDATA.wnd_clientbox.left]
|
||||
shl eax, 16
|
||||
add eax, [ecx+window_data+WDATA.box.top]
|
||||
add eax, [edi+SLOT_BASE+APPDATA.wnd_clientbox.top]
|
||||
add eax, [window_data + ecx + WDATA.box.top]
|
||||
add eax, [SLOT_BASE + edi + APPDATA.wnd_clientbox.top]
|
||||
add ebx, eax
|
||||
mov ecx, [esp+64+32-12+4]
|
||||
mov eax, [esp+64+8] ; background color (if given)
|
||||
@ -1940,7 +1940,7 @@ restore_default_cursor_before_killing:
|
||||
add eax, [_display.win_map]
|
||||
movzx edx, byte [ebx + eax]
|
||||
shl edx, BSF sizeof.APPDATA
|
||||
mov esi, [edx+SLOT_BASE+APPDATA.cursor]
|
||||
mov esi, [SLOT_BASE + edx + APPDATA.cursor]
|
||||
|
||||
cmp esi, [current_cursor]
|
||||
je @f
|
||||
@ -2146,7 +2146,7 @@ sysfn_activate: ; 18.3 = ACTIVATE WINDOW
|
||||
je .nowindowactivate; already active
|
||||
|
||||
mov edi, ecx
|
||||
shl edi, 5
|
||||
shl edi, BSF sizeof.WDATA
|
||||
add edi, window_data
|
||||
movzx esi, word [WIN_STACK + ecx * 2]
|
||||
lea esi, [WIN_POS + esi * 2]
|
||||
@ -2174,7 +2174,7 @@ sysfn_zmodif:
|
||||
je .fail
|
||||
|
||||
mov eax, edx
|
||||
shl edx, 5
|
||||
shl edx, BSF sizeof.WDATA
|
||||
|
||||
cmp [edx*8 + SLOT_BASE + APPDATA.state], TSTATE_FREE
|
||||
je .fail
|
||||
@ -2182,7 +2182,7 @@ sysfn_zmodif:
|
||||
cmp ecx, 1
|
||||
jnz .set_zmod
|
||||
|
||||
mov al, [edx + window_data + WDATA.z_modif]
|
||||
mov al, [window_data + edx + WDATA.z_modif]
|
||||
jmp .exit
|
||||
|
||||
.set_zmod:
|
||||
@ -2195,19 +2195,19 @@ sysfn_zmodif:
|
||||
cmp bl, ZPOS_ALWAYS_TOP
|
||||
jg .fail
|
||||
|
||||
mov [edx + window_data + WDATA.z_modif], bl
|
||||
mov [window_data + edx + WDATA.z_modif], bl
|
||||
|
||||
mov eax, [edx + window_data + WDATA.box.left]
|
||||
mov ebx, [edx + window_data + WDATA.box.top]
|
||||
mov ecx, [edx + window_data + WDATA.box.width]
|
||||
mov edx, [edx + window_data + WDATA.box.height]
|
||||
mov eax, [window_data + edx + WDATA.box.left]
|
||||
mov ebx, [window_data + edx + WDATA.box.top]
|
||||
mov ecx, [window_data + edx + WDATA.box.width]
|
||||
mov edx, [window_data + edx + WDATA.box.height]
|
||||
add ecx, eax
|
||||
add edx, ebx
|
||||
call window._.set_screen
|
||||
call window._.set_top_wnd
|
||||
call window._.redraw_top_wnd
|
||||
|
||||
shl esi, 5
|
||||
shl esi, BSF sizeof.WDATA
|
||||
mov [esi + window_data + WDATA.fl_redraw], 1
|
||||
|
||||
|
||||
@ -2603,15 +2603,15 @@ sys_cpuusage:
|
||||
mov ax, [WIN_POS + ecx * 2]
|
||||
mov [ebx+6], ax
|
||||
|
||||
shl ecx, 8 ;5=32 8=256
|
||||
shl ecx, BSF sizeof.APPDATA
|
||||
|
||||
; +0: dword: memory usage
|
||||
;mov eax, [ecx+TASK_TABLE+TASKDATA.cpu_usage]
|
||||
mov eax, [ecx-sizeof.APPDATA+SLOT_BASE+APPDATA.cpu_usage]
|
||||
mov eax, [SLOT_BASE + ecx - sizeof.APPDATA + APPDATA.cpu_usage]
|
||||
mov [ebx], eax
|
||||
; +10: 11 bytes: name of the process
|
||||
push ecx
|
||||
lea eax, [ecx+SLOT_BASE+APPDATA.app_name]
|
||||
lea eax, [SLOT_BASE + ecx + APPDATA.app_name]
|
||||
add ebx, 10
|
||||
mov ecx, 11
|
||||
call memmove
|
||||
@ -2635,38 +2635,38 @@ sys_cpuusage:
|
||||
stosd
|
||||
|
||||
; +30: PID/TID
|
||||
mov eax, [ecx*8 + SLOT_BASE + APPDATA.tid]
|
||||
mov eax, [SLOT_BASE + ecx*8 + APPDATA.tid]
|
||||
stosd
|
||||
|
||||
; window position and size
|
||||
push esi
|
||||
lea esi, [ecx + window_data + WDATA.box]
|
||||
lea esi, [window_data + ecx + WDATA.box]
|
||||
movsd
|
||||
movsd
|
||||
movsd
|
||||
movsd
|
||||
|
||||
; Process state (+50)
|
||||
movzx eax, byte [ecx*8 + SLOT_BASE + APPDATA.state]
|
||||
movzx eax, byte [SLOT_BASE + ecx*8 + APPDATA.state]
|
||||
stosd
|
||||
|
||||
; Window client area box
|
||||
lea esi, [ecx*8 + SLOT_BASE + APPDATA.wnd_clientbox]
|
||||
lea esi, [SLOT_BASE + ecx*8 + APPDATA.wnd_clientbox]
|
||||
movsd
|
||||
movsd
|
||||
movsd
|
||||
movsd
|
||||
|
||||
; Window state
|
||||
mov al, [ecx+window_data+WDATA.fl_wstate]
|
||||
mov al, [window_data + ecx + WDATA.fl_wstate]
|
||||
stosb
|
||||
|
||||
; Event mask (+71)
|
||||
mov EAX, dword [ecx*8 + SLOT_BASE + APPDATA.event_mask]
|
||||
mov EAX, dword [SLOT_BASE + ecx*8 + APPDATA.event_mask]
|
||||
stosd
|
||||
|
||||
; Keyboard mode (+75)
|
||||
mov al, byte [ecx*8 + SLOT_BASE + APPDATA.keyboard_mode]
|
||||
mov al, byte [SLOT_BASE + ecx*8 + APPDATA.keyboard_mode]
|
||||
stosb
|
||||
|
||||
pop esi
|
||||
@ -2728,7 +2728,7 @@ sys_redrawstat:
|
||||
jnz srl1
|
||||
|
||||
mov edx, [current_slot_idx] ; return whole screen draw area for this app
|
||||
shl edx, 5
|
||||
shl edx, 5 ;?
|
||||
add edx, draw_data
|
||||
mov [edx + RECT.left], 0
|
||||
mov [edx + RECT.top], 0
|
||||
@ -2906,7 +2906,7 @@ align 4
|
||||
.set_mouse_event:
|
||||
add edi, sizeof.APPDATA
|
||||
add ebx, sizeof.WDATA
|
||||
test [edi + SLOT_BASE + APPDATA.event_mask], 0x80000000
|
||||
test [SLOT_BASE + edi + APPDATA.event_mask], 0x80000000
|
||||
jz .pos_filter
|
||||
|
||||
cmp edi, [esp] ; skip if filtration active
|
||||
@ -2914,7 +2914,7 @@ align 4
|
||||
;--------------------------------------
|
||||
align 4
|
||||
.pos_filter:
|
||||
test [edi + SLOT_BASE + APPDATA.event_mask], 0x40000000
|
||||
test [SLOT_BASE + edi + APPDATA.event_mask], 0x40000000
|
||||
jz .set
|
||||
|
||||
mov esi, [ebx + WDATA.box.left]
|
||||
@ -2933,7 +2933,7 @@ align 4
|
||||
;--------------------------------------
|
||||
align 4
|
||||
.set:
|
||||
or [edi+SLOT_BASE+APPDATA.occurred_events], EVENT_MOUSE
|
||||
or [SLOT_BASE + edi + APPDATA.occurred_events], EVENT_MOUSE
|
||||
;--------------------------------------
|
||||
align 4
|
||||
.skip:
|
||||
@ -2975,33 +2975,33 @@ set_bgr_event:
|
||||
add edi, sizeof.APPDATA
|
||||
mov eax, [BG_Rect_X_left_right]
|
||||
mov edx, [BG_Rect_Y_top_bottom]
|
||||
cmp [edi+SLOT_BASE+APPDATA.draw_bgr_x], 0
|
||||
cmp [SLOT_BASE + edi + APPDATA.draw_bgr_x], 0
|
||||
jz .set
|
||||
.join:
|
||||
cmp word [edi+SLOT_BASE+APPDATA.draw_bgr_x], ax
|
||||
cmp word [SLOT_BASE + edi + APPDATA.draw_bgr_x], ax
|
||||
jae @f
|
||||
mov word [edi+SLOT_BASE+APPDATA.draw_bgr_x], ax
|
||||
mov word [SLOT_BASE + edi + APPDATA.draw_bgr_x], ax
|
||||
@@:
|
||||
shr eax, 16
|
||||
cmp word [edi+SLOT_BASE+APPDATA.draw_bgr_x+2], ax
|
||||
cmp word [SLOT_BASE + edi + APPDATA.draw_bgr_x + 2], ax
|
||||
jbe @f
|
||||
mov word [edi+SLOT_BASE+APPDATA.draw_bgr_x+2], ax
|
||||
mov word [SLOT_BASE + edi + APPDATA.draw_bgr_x + 2], ax
|
||||
@@:
|
||||
cmp word [edi+SLOT_BASE+APPDATA.draw_bgr_y], dx
|
||||
cmp word [SLOT_BASE + edi + APPDATA.draw_bgr_y], dx
|
||||
jae @f
|
||||
mov word [edi+SLOT_BASE+APPDATA.draw_bgr_y], dx
|
||||
mov word [SLOT_BASE + edi + APPDATA.draw_bgr_y], dx
|
||||
@@:
|
||||
shr edx, 16
|
||||
cmp word [edi+SLOT_BASE+APPDATA.draw_bgr_y+2], dx
|
||||
cmp word [SLOT_BASE + edi + APPDATA.draw_bgr_y+2], dx
|
||||
jbe @f
|
||||
mov word [edi+SLOT_BASE+APPDATA.draw_bgr_y+2], dx
|
||||
mov word [SLOT_BASE + edi + APPDATA.draw_bgr_y+2], dx
|
||||
@@:
|
||||
jmp .common
|
||||
.set:
|
||||
mov [edi+SLOT_BASE+APPDATA.draw_bgr_x], eax
|
||||
mov [edi+SLOT_BASE+APPDATA.draw_bgr_y], edx
|
||||
mov [SLOT_BASE + edi + APPDATA.draw_bgr_x], eax
|
||||
mov [SLOT_BASE + edi + APPDATA.draw_bgr_y], edx
|
||||
.common:
|
||||
or [edi+SLOT_BASE+APPDATA.occurred_events], EVENT_BACKGROUND
|
||||
or [SLOT_BASE + edi + APPDATA.occurred_events], EVENT_BACKGROUND
|
||||
loop set_bgr_event
|
||||
pop edi ecx
|
||||
;--------- set event 5 stop -----------
|
||||
@ -3066,15 +3066,15 @@ noshutdown:
|
||||
align 4
|
||||
newct:
|
||||
mov cl, [ebx]
|
||||
cmp cl, byte 3
|
||||
cmp cl, TSTATE_ZOMBIE
|
||||
jz .terminate
|
||||
|
||||
cmp cl, byte 4
|
||||
cmp cl, TSTATE_TERMINATING
|
||||
jnz .noterminate
|
||||
.terminate:
|
||||
pushad
|
||||
mov ecx, eax
|
||||
shl ecx, 8
|
||||
shl ecx, BSF sizeof.APPDATA
|
||||
add ecx, SLOT_BASE
|
||||
call restore_default_cursor_before_killing
|
||||
popad
|
||||
@ -3113,7 +3113,7 @@ newdw2:
|
||||
push ecx
|
||||
|
||||
mov eax, ecx
|
||||
shl eax, 5
|
||||
shl eax, BSF sizeof.WDATA
|
||||
add eax, window_data
|
||||
|
||||
cmp eax, [esp+4]
|
||||
@ -3741,9 +3741,9 @@ sys_putimage_palette:
|
||||
|
||||
mov eax, [current_slot_idx]
|
||||
shl eax, 8
|
||||
add dx, word [eax+SLOT_BASE+APPDATA.wnd_clientbox.top]
|
||||
add dx, word [SLOT_BASE + eax + APPDATA.wnd_clientbox.top]
|
||||
rol edx, 16
|
||||
add dx, word [eax+SLOT_BASE+APPDATA.wnd_clientbox.left]
|
||||
add dx, word [SLOT_BASE + eax + APPDATA.wnd_clientbox.left]
|
||||
rol edx, 16
|
||||
;--------------------------------------
|
||||
align 4
|
||||
@ -4301,14 +4301,14 @@ sys_process_def:
|
||||
;-----------------------------------------------------------------------------
|
||||
align 4
|
||||
.1:
|
||||
shl edi, 8
|
||||
mov [edi+SLOT_BASE + APPDATA.keyboard_mode], cl
|
||||
shl edi, BSF sizeof.APPDATA
|
||||
mov [SLOT_BASE + edi + APPDATA.keyboard_mode], cl
|
||||
|
||||
ret
|
||||
;-----------------------------------------------------------------------------
|
||||
align 4
|
||||
.2: ; 2 = get keyboard mode
|
||||
shl edi, 8
|
||||
shl edi, BSF sizeof.APPDATA
|
||||
movzx eax, byte [SLOT_BASE + edi + APPDATA.keyboard_mode]
|
||||
mov [esp+32], eax
|
||||
ret
|
||||
|
@ -1,6 +1,6 @@
|
||||
;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;
|
||||
;; ;;
|
||||
;; Copyright (C) KolibriOS team 2004-2016. All rights reserved. ;;
|
||||
;; Copyright (C) KolibriOS team 2004-2022. All rights reserved. ;;
|
||||
;; Distributed under terms of the GNU General Public License. ;;
|
||||
;; ;;
|
||||
;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;
|
||||
|
@ -1,6 +1,6 @@
|
||||
;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;
|
||||
;; ;;
|
||||
;; Copyright (C) KolibriOS team 2013-2015. All rights reserved. ;;
|
||||
;; Copyright (C) KolibriOS team 2013-2022. All rights reserved. ;;
|
||||
;; Distributed under terms of the GNU General Public License ;;
|
||||
;; ;;
|
||||
;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;
|
||||
|
@ -1,6 +1,6 @@
|
||||
;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;
|
||||
;; ;;
|
||||
;; Copyright (C) KolibriOS team 2004-2015. All rights reserved. ;;
|
||||
;; Copyright (C) KolibriOS team 2004-2022. All rights reserved. ;;
|
||||
;; Distributed under terms of the GNU General Public License ;;
|
||||
;; ;;
|
||||
;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;
|
||||
|
@ -1,6 +1,6 @@
|
||||
;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;
|
||||
;; ;;
|
||||
;; Copyright (C) KolibriOS team 2004-2015. All rights reserved. ;;
|
||||
;; Copyright (C) KolibriOS team 2004-2022. All rights reserved. ;;
|
||||
;; Distributed under terms of the GNU General Public License ;;
|
||||
;; ;;
|
||||
;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;
|
||||
|
@ -1,6 +1,6 @@
|
||||
;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;
|
||||
;; ;;
|
||||
;; Copyright (C) KolibriOS team 2004-2020. All rights reserved. ;;
|
||||
;; Copyright (C) KolibriOS team 2004-2022. All rights reserved. ;;
|
||||
;; Distributed under terms of the GNU General Public License ;;
|
||||
;; ;;
|
||||
;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;
|
||||
@ -52,23 +52,7 @@
|
||||
; 0018 dword color of frames
|
||||
; 001C dword window flags, +30 = window drawn, +31 redraw flag
|
||||
;
|
||||
; 3000 -> 4FFF task list - 256 entries
|
||||
;
|
||||
; 00 dword process count
|
||||
; 04 dword no of processes
|
||||
; 10 dword base of running process at 0x3000+
|
||||
;
|
||||
; 20 dword application event mask
|
||||
; 24 dword PID - process identification number
|
||||
; 2a byte slot state: 0=running, 1,2=suspended
|
||||
; 3=zombie, 4=terminate,
|
||||
; 5=waiting for event, 9 = not used
|
||||
; 2e byte window number on screen
|
||||
; 30 dword exact position in memory
|
||||
; 34 dword counter sum
|
||||
; 38 dword time stamp counter add
|
||||
; 3c dword cpu usage in cpu timer tics
|
||||
;
|
||||
; 3000 -> 4FFF free
|
||||
;
|
||||
; 5000 -> 68FF free (6k6)
|
||||
; 6900 -> 6EFF saved picture under mouse pointer (1k5)
|
||||
|
@ -1,6 +1,6 @@
|
||||
;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;
|
||||
;; ;;
|
||||
;; Copyright (C) KolibriOS team 2004-2017. All rights reserved. ;;
|
||||
;; Copyright (C) KolibriOS team 2004-2022. All rights reserved. ;;
|
||||
;; Distributed under terms of the GNU General Public License. ;;
|
||||
;; ;;
|
||||
;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;
|
||||
|
@ -1,6 +1,6 @@
|
||||
;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;
|
||||
;; ;;
|
||||
;; Copyright (C) KolibriOS team 2004-2017. All rights reserved. ;;
|
||||
;; Copyright (C) KolibriOS team 2004-2022. All rights reserved. ;;
|
||||
;; Distributed under terms of the GNU General Public License. ;;
|
||||
;; ;;
|
||||
;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;
|
||||
|
@ -1,6 +1,6 @@
|
||||
;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;
|
||||
;; ;;
|
||||
;; Copyright (C) KolibriOS team 2004-2017. All rights reserved. ;;
|
||||
;; Copyright (C) KolibriOS team 2004-2022. All rights reserved. ;;
|
||||
;; Distributed under terms of the GNU General Public License. ;;
|
||||
;; ;;
|
||||
;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;
|
||||
|
@ -1,6 +1,6 @@
|
||||
;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;
|
||||
;; ;;
|
||||
;; Copyright (C) KolibriOS team 2004-2015. All rights reserved. ;;
|
||||
;; Copyright (C) KolibriOS team 2004-2022. All rights reserved. ;;
|
||||
;; Distributed under terms of the GNU General Public License ;;
|
||||
;; ;;
|
||||
;; PLAYNOTE.INC version 1.1 22 November 2003 ;;
|
||||
|
@ -1,6 +1,6 @@
|
||||
;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;
|
||||
;; ;;
|
||||
;; Copyright (C) KolibriOS team 2020-2020. All rights reserved. ;;
|
||||
;; Copyright (C) KolibriOS team 2020-2022. All rights reserved. ;;
|
||||
;; Distributed under terms of the GNU General Public License. ;;
|
||||
;; Version 2, or (at your option) any later version. ;;
|
||||
;; ;;
|
||||
|
@ -1,6 +1,6 @@
|
||||
;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;
|
||||
;; ;;
|
||||
;; Copyright (C) KolibriOS team 2004-2015. All rights reserved. ;;
|
||||
;; Copyright (C) KolibriOS team 2004-2022. All rights reserved. ;;
|
||||
;; Distributed under terms of the GNU General Public License ;;
|
||||
;; ;;
|
||||
;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;
|
||||
|
@ -1,6 +1,6 @@
|
||||
;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;
|
||||
;; ;;
|
||||
;; Copyright (C) KolibriOS team 2011-2015. All rights reserved. ;;
|
||||
;; Copyright (C) KolibriOS team 2011-2022. All rights reserved. ;;
|
||||
;; Distributed under terms of the GNU General Public License ;;
|
||||
;; ;;
|
||||
;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;
|
||||
@ -214,9 +214,9 @@ end virtual
|
||||
mov [esp + .flags], ebx
|
||||
|
||||
mov eax, [current_slot_idx]
|
||||
shl eax, 5 ; sizeof.WDATA
|
||||
mov ebx, [eax + window_data + WDATA.box.width]
|
||||
mov edx, [eax + window_data + WDATA.box.height]
|
||||
shl eax, BSF sizeof.WDATA
|
||||
mov ebx, [window_data + eax + WDATA.box.width]
|
||||
mov edx, [window_data + eax + WDATA.box.height]
|
||||
inc ebx
|
||||
inc edx
|
||||
|
||||
@ -261,12 +261,12 @@ end virtual
|
||||
jc .L57
|
||||
|
||||
mov eax, [current_slot_idx]
|
||||
shl eax, 5 ; sizeof.WDATA
|
||||
shl eax, BSF sizeof.WDATA
|
||||
|
||||
mov ebx, [esp + BLITTER.dst_x]
|
||||
mov ebp, [esp + BLITTER.dst_y]
|
||||
add ebx, [eax + window_data + WDATA.box.left]
|
||||
add ebp, [eax + window_data + WDATA.box.top]
|
||||
add ebx, [window_data + eax + WDATA.box.left]
|
||||
add ebp, [window_data + eax + WDATA.box.top]
|
||||
|
||||
test [esp + .flags], BLIT_CLIENT_RELATIVE
|
||||
jz .no_client_relative
|
||||
|
@ -1,6 +1,6 @@
|
||||
;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;
|
||||
;; ;;
|
||||
;; Copyright (C) KolibriOS team 2004-2018. All rights reserved. ;;
|
||||
;; Copyright (C) KolibriOS team 2004-2022. All rights reserved. ;;
|
||||
;; Distributed under terms of the GNU General Public License ;;
|
||||
;; ;;
|
||||
;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;
|
||||
@ -423,8 +423,8 @@ align 4
|
||||
push edi
|
||||
|
||||
mov eax, [current_slot_idx]
|
||||
shl eax, 8
|
||||
mov eax, [eax + SLOT_BASE + APPDATA.tid]
|
||||
shl eax, BSF sizeof.APPDATA
|
||||
mov eax, [SLOT_BASE + eax + APPDATA.tid]
|
||||
mov ebx, [src]
|
||||
mov ecx, [flags]
|
||||
call create_cursor ;eax, ebx, ecx
|
||||
@ -460,9 +460,7 @@ proc delete_cursor stdcall, hcursor:dword
|
||||
jne .fail
|
||||
|
||||
mov ebx, [current_slot_idx]
|
||||
;shl ebx, 5
|
||||
;mov ebx, [TASK_TABLE+ebx+4]
|
||||
shl ebx, 8
|
||||
shl ebx, BSF sizeof.APPDATA
|
||||
mov ebx, [ebx + SLOT_BASE + APPDATA.tid]
|
||||
cmp ebx, [esi+CURSOR.pid]
|
||||
jne .fail
|
||||
|
@ -1,6 +1,6 @@
|
||||
;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;
|
||||
;; ;;
|
||||
;; Copyright (C) KolibriOS team 2004-2016. All rights reserved. ;;
|
||||
;; Copyright (C) KolibriOS team 2004-2022. All rights reserved. ;;
|
||||
;; Distributed under terms of the GNU General Public License ;;
|
||||
;; ;;
|
||||
;; Synhronization for MenuetOS. ;;
|
||||
|
@ -1,6 +1,6 @@
|
||||
;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;
|
||||
;; ;;
|
||||
;; Copyright (C) KolibriOS team 2004-2015. All rights reserved. ;;
|
||||
;; Copyright (C) KolibriOS team 2004-2022. All rights reserved. ;;
|
||||
;; Distributed under terms of the GNU General Public License ;;
|
||||
;; ;;
|
||||
;; VESA12.INC ;;
|
||||
|
@ -1,6 +1,6 @@
|
||||
;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;
|
||||
;; ;;
|
||||
;; Copyright (C) KolibriOS team 2004-2015. All rights reserved. ;;
|
||||
;; Copyright (C) KolibriOS team 2004-2022. All rights reserved. ;;
|
||||
;; Distributed under terms of the GNU General Public License ;;
|
||||
;; ;;
|
||||
;; VESA20.INC ;;
|
||||
@ -189,9 +189,8 @@ end virtual
|
||||
mov [putimg.image_cx], eax
|
||||
mov [putimg.image_cy], edx
|
||||
; calculate absolute (i.e. screen) coordinates
|
||||
;mov eax, [TASK_BASE]
|
||||
mov eax, [current_slot_idx]
|
||||
shl eax, 5 ; sizeof.WDATA
|
||||
shl eax, BSF sizeof.WDATA
|
||||
mov ebx, [eax + window_data + WDATA.box.left]
|
||||
add ebx, [putimg.image_cx]
|
||||
mov [putimg.abs_cx], ebx
|
||||
@ -1403,9 +1402,8 @@ end virtual
|
||||
mov [drbar.bar_sx], ecx
|
||||
mov [drbar.bar_cx], eax
|
||||
mov [drbar.bar_cy], ebx
|
||||
;mov edi, [TASK_BASE]
|
||||
mov edi, [current_slot_idx]
|
||||
shl edi, 5 ; sizeof.WDATA
|
||||
shl edi, BSF sizeof.WDATA
|
||||
add eax, [edi + window_data + WDATA.box.left] ; win_cx
|
||||
add ebx, [edi + window_data + WDATA.box.top] ; win_cy
|
||||
mov [drbar.abs_cx], eax
|
||||
|
@ -496,9 +496,9 @@ align 4
|
||||
VGA_draw_bar_1:
|
||||
mov [temp.cx], eax
|
||||
mov eax, [current_slot_idx]
|
||||
shl eax, 5
|
||||
add ebx, [eax+window_data+WDATA.box.top]
|
||||
mov eax, [eax+window_data+WDATA.box.left]
|
||||
shl eax, BSF sizeof.WDATA
|
||||
add ebx, [window_data + eax + WDATA.box.top]
|
||||
mov eax, [window_data + eax + WDATA.box.left]
|
||||
add eax, [temp.cx]
|
||||
and eax, 0xfff8
|
||||
shl ebx, 9
|
||||
|
Loading…
Reference in New Issue
Block a user