Subversion Repositories Kolibri OS

Rev

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

Rev 2439 Rev 2465
Line 1... Line 1...
1
;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;
1
;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;
2
;;                                                              ;;
2
;;                                                              ;;
3
;; Copyright (C) KolibriOS team 2004-2007. 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
;;  VGA.INC                                                     ;;
6
;;  VGA.INC                                                     ;;
7
;;                                                              ;;
7
;;                                                              ;;
8
;;  640x480 mode 0x12 VGA functions for MenuetOS                ;;
8
;;  640x480 mode 0x12 VGA functions for MenuetOS                ;;
9
;;                                                              ;;
9
;;                                                              ;;
10
;;  Paul Butcher, paul.butcher@asa.co.uk                        ;;
10
;;  Paul Butcher, paul.butcher@asa.co.uk                        ;;
11
;;                                                              ;;
11
;;                                                              ;;
12
;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;
12
;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;
Line 13... Line 13...
13
 
13
 
Line 14... Line 14...
14
$Revision: 2439 $
14
$Revision: 2465 $
15
 
15
 
16
;------------------------------------------------------------------------------
16
;------------------------------------------------------------------------------
Line 378... Line 378...
378
 ; eax = x
378
 ; eax = x
379
 ; ebx = y
379
 ; ebx = y
380
        mov     ecx, eax
380
        mov     ecx, eax
381
        mov     eax, [esp+32-8+4] ; color
381
        mov     eax, [esp+32-8+4] ; color
382
;--------------------------------------
382
;--------------------------------------
-
 
383
; check for hardware cursor
-
 
384
        cmp     [_display.select_cursor], select_cursor
-
 
385
        je      @f
-
 
386
        cmp     [_display.select_cursor], 0
-
 
387
        jne     .no_mouseunder
-
 
388
;--------------------------------------
-
 
389
align 4
-
 
390
@@:
383
        push    ecx
391
        push    ecx
384
        shl     ecx, 16
392
        shl     ecx, 16
385
        mov     cx, bx
393
        mov     cx, bx
386
; check mouse area for putpixel
394
; check mouse area for putpixel
387
        test    eax, 0x04000000
395
        test    eax, 0x04000000
Line 389... Line 397...
389
        call    [_display.check_mouse]
397
        call    [_display.check_mouse]
390
;--------------------------------------
398
;--------------------------------------
391
align 4
399
align 4
392
@@:
400
@@:
393
        pop     ecx
401
        pop     ecx
-
 
402
;--------------------------------------
-
 
403
align 4
-
 
404
.no_mouseunder:
394
        shl     ebx, 9
405
        shl     ebx, 9
395
        lea     ebx, [ebx+ebx*4]   ; óìíîæåíèå íà 5
406
        lea     ebx, [ebx+ebx*4]   ; óìíîæåíèå íà 5
396
        lea     edx, [ebx+ecx*4]  ; + x*BytesPerPixel (Vesa2.0 32)
407
        lea     edx, [ebx+ecx*4]  ; + x*BytesPerPixel (Vesa2.0 32)
397
        mov     edi, edx
408
        mov     edi, edx
398
        add     edi, [LFBAddress]     ; + LFB address
409
        add     edi, [LFBAddress]     ; + LFB address