Rev 2434 | Rev 2987 | Go to most recent revision | Show entire file | Regard whitespace | Details | Blame | Last modification | View Log | RSS feed
Rev 2434 | Rev 2465 | ||
---|---|---|---|
Line 1... | Line 1... | ||
1 | ;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;; |
1 | ;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;; |
2 | ;; ;; |
2 | ;; ;; |
3 | ;; Copyright (C) KolibriOS team 2004-2008. All rights reserved. ;; |
3 | ;; Copyright (C) KolibriOS team 2004-2012. All rights reserved. ;; |
4 | ;; Distributed under terms of the GNU General Public License ;; |
4 | ;; Distributed under terms of the GNU General Public License ;; |
5 | ;; ;; |
5 | ;; ;; |
6 | ;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;; |
6 | ;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;; |
Line 7... | Line 7... | ||
7 | 7 | ||
Line 8... | Line 8... | ||
8 | $Revision: 2434 $ |
8 | $Revision: 2465 $ |
9 | 9 | ||
10 | 10 | ||
Line 82... | Line 82... | ||
82 | mov ecx, [eax] |
82 | mov ecx, [eax] |
83 | pop ebx |
83 | pop ebx |
84 | pop eax |
84 | pop eax |
85 | mov edi, 1 ; force |
85 | mov edi, 1 ; force |
86 | or ecx, 0x04000000 ; don't save to mouseunder area |
86 | or ecx, 0x04000000 ; don't save to mouseunder area |
87 | call [putpixel] |
87 | ; call [putpixel] |
- | 88 | call __sys_putpixel |
|
88 | pop edx |
89 | pop edx |
89 | pop ecx |
90 | pop ecx |
90 | inc ecx |
91 | inc ecx |
91 | cmp ecx, 16 |
92 | cmp ecx, 16 |
92 | jnz mres |
93 | jnz mres |
Line 108... | Line 109... | ||
108 | movzx eax, word [MOUSE_Y] |
109 | movzx eax, word [MOUSE_Y] |
109 | movzx ebx, word [MOUSE_X] |
110 | movzx ebx, word [MOUSE_X] |
110 | push eax |
111 | push eax |
111 | push ebx |
112 | push ebx |
Line 112... | Line 113... | ||
112 | 113 | ||
113 | mov ecx, [Screen_Max_X] |
114 | ; mov ecx, [Screen_Max_X] |
114 | inc ecx |
115 | ; inc ecx |
- | 116 | ; mul ecx |
|
- | 117 | mov eax, [d_width_calc_area + eax*4] |
|
115 | mul ecx |
118 | |
116 | add eax, [_WinMapAddress] |
119 | add eax, [_WinMapAddress] |
117 | movzx edx, byte [ebx+eax] |
120 | movzx edx, byte [ebx+eax] |
118 | shl edx, 8 |
121 | shl edx, 8 |
Line 197... | Line 200... | ||
197 | add ebx, edx ; and y coord+cycle |
200 | add ebx, edx ; and y coord+cycle |
198 | push ecx |
201 | push ecx |
199 | mov ecx, [MOUSE_COLOR_MEM] |
202 | mov ecx, [MOUSE_COLOR_MEM] |
200 | mov edi, 1 ; force |
203 | mov edi, 1 ; force |
201 | or ecx, 0x04000000 ; don't save to mouseunder area |
204 | or ecx, 0x04000000 ; don't save to mouseunder area |
202 | call [putpixel] |
205 | ; call [putpixel] |
- | 206 | call __sys_putpixel |
|
203 | pop ecx |
207 | pop ecx |
204 | mov ebx, [esp+0] ; pure y coord again |
208 | mov ebx, [esp+0] ; pure y coord again |
205 | mov eax, [esp+4] ; and x |
209 | mov eax, [esp+4] ; and x |
206 | inc ecx ; +1 cycle |
210 | inc ecx ; +1 cycle |
207 | cmp ecx, 16 ; if more than 16 |
211 | cmp ecx, 16 ; if more than 16 |
Line 411... | Line 415... | ||
411 | pushad |
415 | pushad |
412 | movzx ecx, word [X_UNDER] |
416 | movzx ecx, word [X_UNDER] |
413 | movzx edx, word [Y_UNDER] |
417 | movzx edx, word [Y_UNDER] |
414 | movzx ebx, word [MOUSE_Y] |
418 | movzx ebx, word [MOUSE_Y] |
415 | movzx eax, word [MOUSE_X] |
419 | movzx eax, word [MOUSE_X] |
- | 420 | cmp [redrawmouse_unconditional], 0 |
|
- | 421 | je @f |
|
- | 422 | mov [redrawmouse_unconditional], 0 |
|
- | 423 | jmp redrawmouse |
|
- | 424 | ;-------------------------------------- |
|
- | 425 | align 4 |
|
- | 426 | @@: |
|
416 | cmp eax, ecx |
427 | cmp eax, ecx |
417 | jne redrawmouse |
428 | jne redrawmouse |
418 | cmp ebx, edx |
429 | cmp ebx, edx |
419 | je nodmp |
430 | je nodmp |
420 | ;-------------------------------------- |
431 | ;-------------------------------------- |
Line 423... | Line 434... | ||
423 | pushfd |
434 | pushfd |
424 | cli |
435 | cli |
425 | call draw_mouse_under |
436 | call draw_mouse_under |
426 | call save_draw_mouse |
437 | call save_draw_mouse |
Line 427... | Line 438... | ||
427 | 438 | ||
428 | mov eax, [_display.select_cursor] |
439 | ; mov eax, [_display.select_cursor] |
429 | test eax, eax |
440 | ; test eax, eax |
- | 441 | ; jz @f |
|
- | 442 | cmp [_display.select_cursor], select_cursor |
|
Line 430... | Line 443... | ||
430 | jz @f |
443 | jne @f |
431 | 444 | ||
Line 432... | Line 445... | ||
432 | xor eax, eax |
445 | xor eax, eax |