Subversion Repositories Kolibri OS

Rev

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

Rev 5853 Rev 5865
Line 69... Line 69...
69
format binary as "mnt"
69
format binary as "mnt"
Line 70... Line 70...
70
 
70
 
71
include 'macros.inc'
71
include 'macros.inc'
Line 72... Line 72...
72
include 'struct.inc'
72
include 'struct.inc'
Line 73... Line 73...
73
 
73
 
74
$Revision: 5853 $
74
$Revision: 5865 $
Line 2401... Line 2401...
2401
        lea     esi, [WIN_POS + esi * 2]
2401
        lea     esi, [WIN_POS + esi * 2]
2402
        call    waredraw
2402
        call    waredraw
2403
.nowindowactivate:
2403
.nowindowactivate:
2404
        ret
2404
        ret
2405
;------------------------------------------------------------------------------
2405
;------------------------------------------------------------------------------
2406
align 4                         ;Fantomer
2406
align 4
2407
sysfn_zmodif:
2407
sysfn_zmodif:
2408
;18,25,1 - get z_modif
2408
;18,25,1 - get z_modif
2409
;18,25,2 - set z_modif
2409
;18,25,2 - set z_modif
2410
;edx = -1(for current task) or TID
2410
;edx = -1(for current task) or TID
2411
;esi(for 2) = new value z_modif
2411
;esi(for 2) = new value z_modif
2412
;return:
2412
;return:
2413
;1:   eax = z_modif
2413
;1:   eax = z_modif
2414
;2: eax=0(fail),1(success) for set z_modif
2414
;2: eax=0(fail),1(success) for set z_modif
Line 2415... Line -...
2415
 
-
 
2416
        xor     eax, eax
-
 
2417
 
2415
 
2418
        cmp     edx, -1
2416
        cmp     edx, -1
2419
        jne     @f
2417
        jne     @f
2420
        mov     edx, [CURRENT_TASK]
2418
        mov     edx, [CURRENT_TASK]
2421
     @@:
2419
     @@:
2422
        cmp     edx, [TASK_COUNT]
2420
        cmp     edx, [TASK_COUNT]
2423
        ja      .exit
2421
        ja      .fail
2424
        cmp     edx, 1
2422
        cmp     edx, 1
2425
        je      .exit
-
 
Line -... Line 2423...
-
 
2423
        je      .fail
2426
 
2424
 
Line 2427... Line 2425...
2427
 
2425
        mov     eax, edx
2428
        shl     edx, 5
2426
        shl     edx, 5
Line 2429... Line 2427...
2429
 
2427
 
2430
        cmp     [edx + CURRENT_TASK + TASKDATA.state], 9
2428
        cmp     [edx + CURRENT_TASK + TASKDATA.state], 9
Line 2431... Line 2429...
2431
        je      .exit
2429
        je      .fail
2432
 
-
 
2433
        cmp     ecx, 1
2430
 
2434
        jnz     .set_zmod
2431
        cmp     ecx, 1
2435
 
2432
        jnz     .set_zmod
2436
        mov     al, [edx + window_data + WDATA.z_modif]
2433
 
2437
 
2434
        mov     al, [edx + window_data + WDATA.z_modif]
Line 2438... Line 2435...
2438
        jmp     .exit
2435
        jmp     .exit
2439
align 4
2436
 
Line 2440... Line 2437...
2440
.set_zmod:
2437
.set_zmod:
2441
        cmp     ecx, 2
2438
        cmp     ecx, 2
Line 2442... Line 2439...
2442
        jnz     .exit
2439
        jnz     .fail
Line 2443... Line 2440...
2443
 
2440
 
2444
        mov     eax, esi
2441
        mov     ebx, esi
2445
        mov     esi, edx
2442
        mov     esi, eax
2446
 
2443
 
2447
        cmp     al, ZPOS_ALWAYS_TOP
2444
        cmp     bl, ZPOS_ALWAYS_TOP
2448
        ja      .exit
2445
        jg      .fail
-
 
2446
 
2449
 
2447
        mov     [edx + window_data + WDATA.z_modif], bl
-
 
2448
 
-
 
2449
        mov     eax, [edx + window_data + WDATA.box.left]
-
 
2450
        mov     ebx, [edx + window_data + WDATA.box.top]
-
 
2451
        mov     ecx, [edx + window_data + WDATA.box.width]
-
 
2452
        mov     edx, [edx + window_data + WDATA.box.height]
Line 2450... Line 2453...
2450
        mov     [edx + window_data + WDATA.z_modif], al
2453
        add     ecx, eax
-
 
2454
        add     edx, ebx
2451
 
2455
        call    window._.set_screen
-
 
2456
        call    window._.set_top_wnd
2452
        mov     eax, [edx + window_data + WDATA.box.left]
2457
        call    window._.redraw_top_wnd
2453
        mov     ebx, [edx + window_data + WDATA.box.top]
2458
 
2454
        mov     ecx, [edx + window_data + WDATA.box.width]
2459
        shl     esi, 5
Line 2455... Line 2460...
2455
        mov     edx, [edx + window_data + WDATA.box.height]
2460
        mov     [esi + window_data + WDATA.fl_redraw], 1