fixed assignment of colors in some functions, red and blue swapped. Now the color match on a system functions

git-svn-id: svn://kolibrios.org@1653 a494cfbc-eb01-0410-851d-a64ba20cac60
This commit is contained in:
IgorA
2010-10-11 12:07:55 +00:00
parent f999b6faa8
commit d1b2b4706f
3 changed files with 30 additions and 29 deletions

View File

@@ -998,7 +998,7 @@ endl
ret
endp
;<3B><><EFBFBD><E1AEA2><EFBFBD><EFBFBD> <20><><EFBFBD><E0A8A7>⠫쭮<E2A0AB> <20><><EFBFBD><EFBFBD><EFBFBD>, <20><><EFBFBD> <20><><EFBFBD> <20><><EFBFBD><E0A0AC><EFBFBD><EFBFBD> coord_y0
;<3B><><EFBFBD><E1AEA2><EFBFBD><EFBFBD> <20><><EFBFBD><E0A8A7>⠫쭮<E2A0AB> <20><><EFBFBD><EFBFBD><EFBFBD>, <20><><EFBFBD> <20><><EFBFBD> <20><><EFBFBD><E0A0AC><EFBFBD><EFBFBD> coord_y1
align 4
proc buf_line_h, buf_struc:dword, coord_x0:dword, coord_y0:dword, coord_x1:dword, color:dword
pushad
@@ -1544,24 +1544,6 @@ combine_colors:
mov cl,byte[esi+3] ;pro
xor ch,ch
sub bx,cx ;256-pro
;---red---
xor ah,ah
mov al,byte[esi+2]
imul ax,bx
xor dh,dh
mov dl,byte[edi+2]
imul dx,cx
add ax,dx
mov byte[edi+2],ah
;---green---
xor ah,ah
mov al,byte[esi+1]
imul ax,bx
xor dh,dh
mov dl,byte[edi+1]
imul dx,cx
add ax,dx
mov byte[edi+1],ah
;---blye---
xor ah,ah
mov al,byte[esi]
@@ -1571,6 +1553,24 @@ combine_colors:
imul dx,cx
add ax,dx
mov byte[edi],ah
;---green---
xor ah,ah
mov al,byte[esi+1]
imul ax,bx
xor dh,dh
mov dl,byte[edi+1]
imul dx,cx
add ax,dx
mov byte[edi+1],ah
;---red---
xor ah,ah
mov al,byte[esi+2]
imul ax,bx
xor dh,dh
mov dl,byte[edi+2]
imul dx,cx
add ax,dx
mov byte[edi+2],ah
pop dx cx bx ax
ret
@@ -1674,16 +1674,16 @@ combine_colors_2:
mov si,0x00ff ;---get transparent---
sub si,cx ;256-pro
;---blye---
;---blye---
mov al,bl
xor ah,ah
shr ebx,8
imul ax,si
xor dh,dh
mov dl,byte[edi+2]
mov dl,byte[edi]
imul dx,cx
add ax,dx
mov byte[edi+2],ah
mov byte[edi],ah
;---green---
mov al,bl
xor ah,ah
@@ -1699,10 +1699,10 @@ combine_colors_2:
xor ah,ah
imul ax,si
xor dh,dh
mov dl,byte[edi]
mov dl,byte[edi+2]
imul dx,cx
add ax,dx
mov byte[edi],ah
mov byte[edi+2],ah
pop si dx cx ebx ax
ret