Subversion Repositories Kolibri OS

Rev

Rev 5722 | Show entire file | Regard whitespace | Details | Blame | Last modification | View Log | RSS feed

Rev 5722 Rev 5750
Line 49... Line 49...
49
 
49
 
Line 50... Line 50...
50
        mov     edx, [rectangle.height]
50
        mov     edx, [rectangle.height]
51
 
51
 
52
  .lineloop:
-
 
53
        mov     ecx, [rectangle.width]
-
 
54
if BITS_PER_PIXEL = 24
-
 
Line 55... Line 52...
55
        lea     ecx, [ecx*2+ecx]
52
  .lineloop:
56
end if
53
        mov     ecx, [rectangle.width]
57
 
-
 
58
if BITS_PER_PIXEL = 8
-
 
59
  .pixelloop:
54
 
60
        mov     bl, 85
-
 
61
        mov     al, [esi]
55
if BITS_PER_PIXEL = 8
62
        shr     al, 6
-
 
63
        and     al, 3
-
 
64
        mul     bl
56
  .pixelloop:
65
        stosb                   ; blue
-
 
66
        mov     bl, 36
-
 
67
        mov     al, [esi]
57
        xor     eax, eax
68
        shr     al, 3
-
 
69
        and     al, 7
-
 
70
        mul     bl
58
        lodsb
71
        stosb                   ; green
59
        mov     eax, [lut_8bpp+eax*4]
72
        mov     al, [esi]
-
 
73
        and     al, 7
-
 
74
        mul     bl
60
        stosw
75
        stosb                   ; red
61
        shr     eax, 16
76
        inc     esi
62
        stosb
77
        dec     ecx
63
        dec     ecx
78
        jnz     .pixelloop
64
        jnz     .pixelloop
Line 91... Line 77...
91
        and     al, 0xf8
77
        and     al, 0xf8
92
        stosb                   ; red
78
        stosb                   ; red
93
        dec     ecx
79
        dec     ecx
94
        jnz     .pixelloop
80
        jnz     .pixelloop
95
else if BITS_PER_PIXEL = 24
81
else if BITS_PER_PIXEL = 24
-
 
82
        lea     ecx, [ecx*2+ecx]
96
        rep movsb
83
        rep movsb
97
else if BITS_PER_PIXEL = 32
84
else if BITS_PER_PIXEL = 32
98
  .pixelloop:
85
  .pixelloop:
99
        movsw
86
        movsw
100
        movsb
87
        movsb