Subversion Repositories Kolibri OS

Rev

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

Rev 1086 Rev 1306
Line 9... Line 9...
9
;;  Distributed under GPL. See file COPYING for details.        ;;
9
;;  Distributed under GPL. See file COPYING for details.        ;;
10
;;  Copyright 2003 Ville Turjanmaa                              ;;
10
;;  Copyright 2003 Ville Turjanmaa                              ;;
11
;;                                                              ;;
11
;;                                                              ;;
12
;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;
12
;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;
Line 13... Line 13...
13
 
13
 
Line 14... Line 14...
14
$Revision: 1086 $
14
$Revision: 1306 $
15
 
15
 
16
 
16
 
Line 277... Line 277...
277
        call    ready_for_next_irq_1
277
        call    ready_for_next_irq_1
278
        restore_ring3_context
278
        restore_ring3_context
279
        iret
279
        iret
Line 280... Line 280...
280
 
280
 
-
 
281
ready_for_next_irq:
281
ready_for_next_irq:
282
	mov	eax,5
-
 
283
        mov     [check_idle_semaphore],eax
-
 
284
;        mov     al, 0x20
-
 
285
	add 	eax,(0x20-0x5)
282
        mov     [check_idle_semaphore],5
286
 
283
        mov     al, 0x20
287
        mov     al, 0x20
284
        out     0x20, al
288
        out     0x20, al
285
        ret
289
        ret
286
 
290
;destroy eax
-
 
291
ready_for_next_irq_1:
287
ready_for_next_irq_1:
292
	mov	eax,5
288
        mov     [check_idle_semaphore],5
293
        mov     [check_idle_semaphore],eax
-
 
294
;        mov     al, 0x20
289
        mov     al, 0x20
295
	add 	eax,(0x20-0x5)
290
        out     0xa0,al
296
        out     0xa0,al
291
        out     0x20, al
297
        out     0x20, al
Line 292... Line 298...
292
        ret
298
        ret
293
 
299
 
294
irqD:
300
irqD:
295
        push  eax
301
        push  eax
296
        mov   al,0
302
	xor   eax,eax
297
        out   0xf0,al
303
        out   0xf0,al
298
        mov   al,0x20
304
        mov   al,0x20
299
        out   0xa0,al
305
        out   0xa0,al
Line 394... Line 400...
394
        add  eax,CURRENT_TASK+TASKDATA.pid
400
        add  eax,CURRENT_TASK+TASKDATA.pid
395
        mov  eax,[eax]
401
        mov  eax,[eax]
Line 396... Line 402...
396
 
402
 
397
        cmp  eax,[application_table_status]
403
        cmp  eax,[application_table_status]
-
 
404
        jne  apptsl1
398
        jne  apptsl1
405
	xor  eax,eax
399
        mov  [application_table_status],0
406
        mov  [application_table_status],eax
Line 400... Line 407...
400
      apptsl1:
407
      apptsl1:
Line 401... Line 408...
401
 
408
 
Line 402... Line 409...
402
        pop  eax
409
        pop  eax
-
 
410
 
-
 
411
        ret
-
 
412
 
403
 
413
;  * eax = 64 - íîìåð ôóíêöèè
404
        ret
414
;  * ebx = 1 - åäèíñòâåííàÿ ïîäôóíêöèÿ
Line -... Line 415...
-
 
415
;  * ecx = íîâûé ðàçìåð ïàìÿòè
405
 
416
;Âîçâðàùàåìîå çíà÷åíèå:
406
sys_resize_app_memory:
417
;  * eax = 0 - óñïåøíî
Line -... Line 418...
-
 
418
;  * eax = 1 - íåäîñòàòî÷íî ïàìÿòè
-
 
419
 
-
 
420
sys_resize_app_memory:
-
 
421
        ; ebx = 1 - resize
-
 
422
        ; ecx = new amount of memory
407
        ; eax = 1 - resize
423
 
408
        ;     ebx = new amount of memory
424
;        cmp    eax,1
409
 
-
 
410
        cmp    eax,1
-
 
411
        jne    .no_application_mem_resize
425
	dec	ebx
412
 
426
        jnz    .no_application_mem_resize
Line 413... Line 427...
413
        stdcall new_mem_resize, ebx
427
;fix it! 
Line 687... Line 701...
687
        shl     esi, 5
701
        shl     esi, 5
688
        mov     esi, [esi+CURRENT_TASK+TASKDATA.pid]
702
        mov     esi, [esi+CURRENT_TASK+TASKDATA.pid]
689
        cmp     [hd1_status], esi
703
        cmp     [hd1_status], esi
690
        jnz     @f
704
        jnz     @f
691
        call    free_hd_channel
705
        call    free_hd_channel
692
        mov     [hd1_status], 0
706
        and     [hd1_status], 0
693
@@:
707
@@:
694
        cmp     [cd_status], esi
708
        cmp     [cd_status], esi
695
        jnz     @f
709
        jnz     @f
696
        call    free_cd_channel
710
        call    free_cd_channel
697
        mov     [cd_status], 0
711
        and     [cd_status], 0
698
@@:
712
@@:
699
        cmp     [flp_status], esi
713
        cmp     [flp_status], esi
700
        jnz     @f
714
        jnz     @f
701
        mov     [flp_status], 0
715
        and     [flp_status], 0
702
@@:
716
@@:
703
        pop     esi
717
        pop     esi
704
        cmp     [bgrlockpid], esi
718
        cmp     [bgrlockpid], esi
705
        jnz     @f
719
        jnz     @f
706
        and     [bgrlockpid], 0
720
        and     [bgrlockpid], 0
707
        mov     [bgrlock], 0
721
        and     [bgrlock], 0
708
@@:
722
@@:
Line 709... Line 723...
709
 
723
 
710
    pusha ; remove all irq reservations
724
    pusha ; remove all irq reservations
711
    mov   eax,esi
725
    mov   eax,esi
Line 734... Line 748...
734
 
748
 
Line 735... Line 749...
735
  rmpr0:
749
  rmpr0:
Line 736... Line 750...
736
 
750
 
737
    mov   esi,[RESERVED_PORTS]
751
    mov   esi,[RESERVED_PORTS]
Line 738... Line 752...
738
 
752
 
Line 739... Line 753...
739
    cmp   esi,0
753
    test  esi,esi
740
    je    rmpr9
754
    jz    rmpr9
Line 806... Line 820...
806
    call  redrawscreen
820
    call  redrawscreen
Line 807... Line 821...
807
 
821
 
808
    mov   [MOUSE_BACKGROUND],byte 0  ; no mouse background
822
    mov   [MOUSE_BACKGROUND],byte 0  ; no mouse background
Line 809... Line 823...
809
    mov   [DONT_DRAW_MOUSE],byte 0  ; draw mouse
823
    mov   [DONT_DRAW_MOUSE],byte 0  ; draw mouse
810
 
824
 
811
    mov   [application_table_status],0
825
    and   [application_table_status],0
812
    ;mov   esi,process_terminated
826
    ;mov   esi,process_terminated
813
    ;call  sys_msg_board_str
827
    ;call  sys_msg_board_str
814
    add esp, 4
828
    add esp, 4