Subversion Repositories Kolibri OS

Rev

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

Rev 3927 Rev 3936
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: 3927 $
74
$Revision: 3936 $
Line 1100... Line 1100...
1100
        DEBUGF  1, "K : BAR2 %x \n", [IDE_BAR2_val]:4
1100
        DEBUGF  1, "K : BAR2 %x \n", [IDE_BAR2_val]:4
1101
        DEBUGF  1, "K : BAR3 %x \n", [IDE_BAR3_val]:4
1101
        DEBUGF  1, "K : BAR3 %x \n", [IDE_BAR3_val]:4
1102
        DEBUGF  1, "K : BAR4 %x \n", [IDEContrRegsBaseAddr]:4
1102
        DEBUGF  1, "K : BAR4 %x \n", [IDEContrRegsBaseAddr]:4
1103
        DEBUGF  1, "K : IDEContrProgrammingInterface %x \n", [IDEContrProgrammingInterface]:4
1103
        DEBUGF  1, "K : IDEContrProgrammingInterface %x \n", [IDEContrProgrammingInterface]:4
1104
        DEBUGF  1, "K : IDE_Interrupt %x \n", [IDE_Interrupt]:4
1104
        DEBUGF  1, "K : IDE_Interrupt %x \n", [IDE_Interrupt]:4
-
 
1105
 
1105
; START MULTITASKING
1106
; START MULTITASKING
Line 1106... Line 1107...
1106
 
1107
 
1107
; A 'All set - press ESC to start' messages if need
1108
; A 'All set - press ESC to start' messages if need
1108
if preboot_blogesc
1109
if preboot_blogesc
Line 3790... Line 3791...
3790
        cmp     ecx, 1             ; limit for background
3791
        cmp     ecx, 1             ; limit for background
3791
        jz      bgli
3792
        jz      bgli
Line 3792... Line 3793...
3792
 
3793
 
3793
        mov     eax, [edi + WDATA.box.left]
3794
        mov     eax, [edi + WDATA.box.left]
3794
        mov     ebx, [edi + WDATA.box.top]
-
 
3795
        mov     ecx, [edi + WDATA.box.width]
-
 
3796
        mov     edx, [edi + WDATA.box.height]
-
 
3797
        add     ecx, eax
-
 
Line 3798... Line 3795...
3798
        add     edx, ebx
3795
        mov     ebx, [edi + WDATA.box.top]
3799
 
3796
 
3800
        mov     ecx, [draw_limits.bottom] ; ecx = area y end     ebx = window y start
3797
        mov     ecx, [draw_limits.bottom] ; ecx = area y end     ebx = window y start
Line 3892... Line 3889...
3892
        call    wakeup_osloop
3889
        call    wakeup_osloop
3893
;--------------------------------------
3890
;--------------------------------------
3894
align 4
3891
align 4
3895
newdw8:
3892
newdw8:
3896
nobgrd:
3893
nobgrd:
-
 
3894
;--------------------------------------
-
 
3895
        push    eax  edi ebp
-
 
3896
        mov     edi, [esp+12]
-
 
3897
        cmp     edi, 1
-
 
3898
        je      .found
-
 
3899
 
-
 
3900
        mov     eax, [draw_limits.left]
-
 
3901
        mov     ebx, [draw_limits.top]
-
 
3902
        mov     ecx, [draw_limits.right]
-
 
3903
        sub     ecx, eax
-
 
3904
        test    ecx, ecx
-
 
3905
        jz      .not_found
-
 
3906
 
-
 
3907
        mov     edx, [draw_limits.bottom]
-
 
3908
        sub     edx, ebx
-
 
3909
        test    edx, edx
-
 
3910
        jz      .not_found
-
 
3911
 
-
 
3912
; eax - x, ebx - y
-
 
3913
; ecx - size x, edx - size y
-
 
3914
        add     ebx, edx
-
 
3915
;--------------------------------------
-
 
3916
align 4
-
 
3917
.start_y:
-
 
3918
        push    ecx
-
 
3919
;--------------------------------------
-
 
3920
align 4
-
 
3921
.start_x:
-
 
3922
        add     eax, ecx
-
 
3923
        mov     ebp, [d_width_calc_area + ebx*4]
-
 
3924
        add     ebp, [_WinMapAddress]
-
 
3925
        movzx   ebp, byte[eax+ebp] ; get value for current point
-
 
3926
        cmp     ebp, edi
-
 
3927
        jne     @f
-
 
3928
 
-
 
3929
        pop     ecx
-
 
3930
        jmp     .found
-
 
3931
;--------------------------------------
-
 
3932
align 4
-
 
3933
@@:
-
 
3934
        sub     eax, ecx
-
 
3935
 
-
 
3936
        dec     ecx
-
 
3937
        jnz     .start_x
-
 
3938
 
-
 
3939
        pop     ecx
-
 
3940
        dec     ebx
-
 
3941
        dec     edx
-
 
3942
        jnz     .start_y
-
 
3943
;--------------------------------------
-
 
3944
align 4
-
 
3945
.not_found:
-
 
3946
        pop     ebp edi eax
-
 
3947
        jmp     ricino
-
 
3948
;--------------------------------------
-
 
3949
align 4
-
 
3950
.found:
-
 
3951
        pop     ebp edi eax
Line 3897... Line 3952...
3897
 
3952
 
3898
        mov     [eax + WDATA.fl_redraw], byte 1  ; mark as redraw
3953
        mov     [eax + WDATA.fl_redraw], byte 1  ; mark as redraw
3899
;--------------------------------------
3954
;--------------------------------------
3900
align 4
3955
align 4