/kernel/trunk/core/sched.inc |
---|
172,7 → 172,14 |
jne .noevents |
call get_event_for_app |
test eax, eax |
jz .waiting_for_event |
jnz @f |
mov eax, ebx |
shl eax, 8 |
mov eax, [SLOT_BASE + APPDATA.wait_timeout + eax] |
cmp eax, [timer_ticks] |
jae .waiting_for_event |
xor eax, eax |
@@: |
mov [event_sched], eax |
mov [edi+TASKDATA.state], byte 0 |
.noevents: |
/kernel/trunk/gui/event.inc |
---|
469,43 → 469,24 |
mov [esp+36],eax |
ret |
sys_waitforevent: |
or eax, 0xFFFFFFFF ; infinite timeout |
jmp @f |
align 4 |
sys_wait_event_timeout: |
mov ebx,[timer_ticks] |
add ebx,eax |
cmp ebx,[timer_ticks] |
jna .swfet2 |
.swfet1: |
add eax, [timer_ticks] |
@@: |
mov ebx, [current_slot] |
mov [ebx + APPDATA.wait_timeout], eax |
call get_event_for_app |
test eax,eax |
jne .eventoccur_time |
call change_task |
cmp ebx,[timer_ticks] |
jg .swfet1 |
.swfet2: |
xor eax,eax |
.eventoccur_time: |
mov [esp+36],eax |
ret |
jnz eventoccur |
align 4 |
sys_waitforevent: |
call get_event_for_app |
test eax,eax |
jne eventoccur |
newwait: |
mov eax, [TASK_BASE] |
mov [eax+TASKDATA.state], byte 5 |
call change_task |
mov eax, [event_sched] |
eventoccur: |
mov [esp+36],eax |
ret |
515,7 → 496,7 |
pushad |
mov edi,[TASK_BASE] ; WINDOW REDRAW |
test [edi+TASKDATA.event_mask],dword 1 |
test [edi+TASKDATA.event_mask], 1 |
jz no_eventoccur1 |
;mov edi,[TASK_BASE] |
cmp [edi-twdw+WDATA.fl_redraw],byte 0 |
/kernel/trunk/kernel.asm |
---|
107,7 → 107,7 |
org 0x0 |
jmp start_of_code |
version db 'Kolibri OS version 0.7.0.0 pre ',13,10,13,10,0 |
version db 'Kolibri OS version 0.6.5.0 ',13,10,13,10,0 |
include "boot/bootstr.inc" ; language-independent boot messages |
include "boot/preboot.inc" |
2286,7 → 2286,7 |
iglobal |
version_inf: |
db 0,7,0,0 ; version 0.7.0.0 |
db 0,6,5,0 ; version 0.6.5.0 |
db UID_KOLIBRI |
db 'Kolibri',0 |
version_end: |
2454,7 → 2454,7 |
jnz nogb1 |
mov eax,[BgrDataWidth] |
shl eax,16 |
mov ax,[BgrDataWidth] |
mov ax,[BgrDataHeight] |
mov [esp+36],eax |
ret |
nogb1: |
/kernel/trunk/kernel32.inc |
---|
127,8 → 127,9 |
.io_map rd 2 ;+68 |
.dbg_state dd ? ;+76 |
.cur_dir dd ? ;+80 |
.wait_timeout dd ? ;+84 |
db 44 dup(?) ;+84 |
db 40 dup(?) ;+88 |
.wnd_shape dd ? ;+128 |
.wnd_shape_scale dd ? ;+132 |