Subversion Repositories Kolibri OS

Rev

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

Rev 924 Rev 927
Line 53... Line 53...
53
;;
53
;;
54
;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;
54
;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;
Line 55... Line 55...
55
 
55
 
Line 56... Line 56...
56
include 'macros.inc'
56
include 'macros.inc'
Line 57... Line 57...
57
 
57
 
Line 58... Line 58...
58
$Revision: 924 $
58
$Revision: 927 $
Line 5091... Line 5091...
5091
;eax = 36
5091
;eax = 36
5092
;ebx = pointer to bufer for img BBGGRRBBGGRR... 
5092
;ebx = pointer to bufer for img BBGGRRBBGGRR... 
5093
;ecx = [size x]*65536 + [size y] 
5093
;ecx = [size x]*65536 + [size y] 
5094
;edx = [start x]*65536 + [start y] 
5094
;edx = [start x]*65536 + [start y] 
5095
     pushad
5095
     pushad
-
 
5096
	 inc   [mouse_pause]
-
 
5097
; Check of use of the hardware cursor.
-
 
5098
      cmp  [disable_mouse],__sys_disable_mouse
-
 
5099
	  jne  @f
-
 
5100
; Since the test for the coordinates of the mouse should not be used,
-
 
5101
; then use the call [disable_mouse] is not possible!
-
 
5102
      cmp  dword [MOUSE_VISIBLE],dword 0
-
 
5103
      jne  @f
-
 
5104
      pushf
-
 
5105
      cli
-
 
5106
      call draw_mouse_under
-
 
5107
      popf
-
 
5108
      mov  [MOUSE_VISIBLE],dword 1
-
 
5109
@@:
5096
     mov   edi,ebx
5110
     mov   edi,ebx
5097
     mov   eax,edx
5111
     mov   eax,edx
5098
     shr   eax,16
5112
     shr   eax,16
5099
     mov   ebx,edx
5113
     mov   ebx,edx
5100
     and   ebx,0xffff
5114
     and   ebx,0xffff
Line 5103... Line 5117...
5103
     
5117
     
5104
     shr   ecx,16
5118
     shr   ecx,16
5105
     and   edx,0xffff
5119
     and   edx,0xffff
5106
     mov   esi,ecx
5120
     mov   esi,ecx
5107
     ; ecx - size x, edx - size y
-
 
5108
.start_y:
-
 
5109
     push  ecx
-
 
5110
.start_x:
-
 
5111
     push  eax ebx ecx edx  esi edi
-
 
5112
     add   eax,ecx
-
 
5113
     add   ebx,edx
-
 
5114
     call  dword [GETPIXEL] ; eax - x, ebx - y
-
 
Line 5115... Line 5121...
5115
     pop   edi esi
5121
     ; ecx - size x, edx - size y
-
 
5122
	 
5116
     
5123
	 mov   ebp,edx
Line -... Line 5124...
-
 
5124
	 dec   ebp
-
 
5125
     lea   ebp,[ebp*3]
-
 
5126
	 
-
 
5127
	 imul  ebp,esi
-
 
5128
	 
-
 
5129
	 mov   esi,ecx
-
 
5130
	 dec   esi
-
 
5131
	 lea   esi,[esi*3]
-
 
5132
	 
-
 
5133
     add   ebp,esi
-
 
5134
     add   ebp,edi
-
 
5135
 
5117
     mov   eax,ecx
5136
     add   ebx,edx
-
 
5137
	 
-
 
5138
.start_y:
-
 
5139
     push  ecx edx
Line 5118... Line -...
5118
     pop   edx  ecx
-
 
5119
     
-
 
5120
     push  ecx  edx
-
 
5121
 
-
 
5122
     dec   edx
-
 
5123
     lea   edx,[edx*3]
5140
.start_x:
5124
     imul  edx,esi
-
 
5125
     dec   ecx
-
 
5126
     lea   ecx,[ecx*3]
-
 
5127
     add   edx,ecx
-
 
Line 5128... Line 5141...
5128
     add   edx,edi
5141
     push  eax ebx ecx
-
 
5142
     add   eax,ecx
-
 
5143
 
Line -... Line 5144...
-
 
5144
     call  dword [GETPIXEL] ; eax - x, ebx - y
-
 
5145
     
5129
     mov   [edx],ax
5146
     mov   [ebp],cx
5130
     shr   eax,16
5147
     shr   ecx,16
5131
     mov   [edx+2],al
5148
     mov   [ebp+2],cl
-
 
5149
 
5132
 
5150
     pop   ecx ebx eax 
5133
     pop   edx ecx ebx eax 
5151
     sub   ebp,3
-
 
5152
     dec   ecx
-
 
5153
     jnz   .start_x
-
 
5154
	 pop   edx ecx
-
 
5155
	 dec   ebx
-
 
5156
     dec   edx
-
 
5157
     jnz   .start_y
5134
     
5158
     dec	[mouse_pause]
5135
     dec   ecx
5159
; Check of use of the hardware cursor.
Line 5136... Line 5160...
5136
     jnz   .start_x
5160
      cmp  [disable_mouse],__sys_disable_mouse