Subversion Repositories Kolibri OS

Rev

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

Rev 5794 Rev 5836
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: 5794 $
74
$Revision: 5836 $
Line 2229... Line 2229...
2229
        dd      sysfn_meminfo           ; 20 = get extended memory info
2229
        dd      sysfn_meminfo           ; 20 = get extended memory info
2230
        dd      sysfn_pid_to_slot       ; 21 = get slot number for pid
2230
        dd      sysfn_pid_to_slot       ; 21 = get slot number for pid
2231
        dd      sysfn_min_rest_window   ; 22 = minimize and restore any window
2231
        dd      sysfn_min_rest_window   ; 22 = minimize and restore any window
2232
        dd      sysfn_min_windows       ; 23 = minimize all windows
2232
        dd      sysfn_min_windows       ; 23 = minimize all windows
2233
        dd      sysfn_set_screen_sizes  ; 24 = set screen sizes for Vesa
2233
        dd      sysfn_set_screen_sizes  ; 24 = set screen sizes for Vesa
-
 
2234
 
-
 
2235
        dd      sysfn_zmodif            ; 25 = get/set window z modifier  ;Fantomer
2234
sysfn_num = ($ - sys_system_table)/4
2236
sysfn_num = ($ - sys_system_table)/4
2235
endg
2237
endg
2236
;------------------------------------------------------------------------------
2238
;------------------------------------------------------------------------------
2237
sys_system:
2239
sys_system:
2238
        dec     ebx
2240
        dec     ebx
Line 2388... Line 2390...
2388
        lea     esi, [WIN_POS + esi * 2]
2390
        lea     esi, [WIN_POS + esi * 2]
2389
        call    waredraw
2391
        call    waredraw
2390
.nowindowactivate:
2392
.nowindowactivate:
2391
        ret
2393
        ret
2392
;------------------------------------------------------------------------------
2394
;------------------------------------------------------------------------------
-
 
2395
align 4                         ;Fantomer
-
 
2396
sysfn_zmodif:
-
 
2397
;18,25,1 - get z_modif
-
 
2398
;18,25,2 - set z_modif
-
 
2399
;edx = -1(for current task) or TID
-
 
2400
;esi(for 2) = new value z_modif
-
 
2401
;return:
-
 
2402
;1:   eax = z_modif
-
 
2403
;2: eax=0(fail),1(success) for set z_modif
-
 
2404
 
-
 
2405
        xor     eax, eax
-
 
2406
 
-
 
2407
        cmp     edx, -1
-
 
2408
        jne     @f
-
 
2409
        mov     edx, [CURRENT_TASK]
-
 
2410
     @@:
-
 
2411
        cmp     edx, [TASK_COUNT]
-
 
2412
        ja      .exit
-
 
2413
        cmp     edx, 1
-
 
2414
        je      .exit
-
 
2415
 
-
 
2416
 
-
 
2417
        shl     edx, 5
-
 
2418
 
-
 
2419
        cmp     [edx + CURRENT_TASK + TASKDATA.state], 9
-
 
2420
        je      .exit
-
 
2421
 
-
 
2422
        cmp     ecx, 1
-
 
2423
        jnz     .set_zmod
-
 
2424
 
-
 
2425
        mov     al, [edx + window_data + WDATA.z_modif]
-
 
2426
 
-
 
2427
        jmp     .exit
-
 
2428
align 4
-
 
2429
.set_zmod:
-
 
2430
        cmp     ecx, 2
-
 
2431
        jnz     .exit
-
 
2432
 
-
 
2433
        mov     eax, esi
-
 
2434
        mov     esi, edx
-
 
2435
 
-
 
2436
        cmp     al, ZPOS_ALWAYS_TOP
-
 
2437
        ja      .exit
-
 
2438
 
-
 
2439
        mov     [edx + window_data + WDATA.z_modif], al
-
 
2440
 
-
 
2441
        mov     eax, [edx + window_data + WDATA.box.left]
-
 
2442
        mov     ebx, [edx + window_data + WDATA.box.top]
-
 
2443
        mov     ecx, [edx + window_data + WDATA.box.width]
-
 
2444
        mov     edx, [edx + window_data + WDATA.box.height]
-
 
2445
        add     ecx, eax
-
 
2446
        add     edx, ebx
-
 
2447
        call    window._.set_top_wnd
-
 
2448
 
-
 
2449
        mov     eax, 1
-
 
2450
align 4
-
 
2451
.exit:
-
 
2452
        mov     [esp+32], eax
-
 
2453
        ret
-
 
2454
 
-
 
2455
;------------------------------------------------------------------------------
2393
sysfn_getidletime:              ; 18.4 = GET IDLETIME
2456
sysfn_getidletime:              ; 18.4 = GET IDLETIME
2394
        mov     eax, [CURRENT_TASK+32+TASKDATA.cpu_usage]
2457
        mov     eax, [CURRENT_TASK+32+TASKDATA.cpu_usage]
2395
        mov     [esp+32], eax
2458
        mov     [esp+32], eax
2396
        ret
2459
        ret
2397
;------------------------------------------------------------------------------
2460
;------------------------------------------------------------------------------