Subversion Repositories Kolibri OS

Compare Revisions

Regard whitespace Rev 2983 → Rev 2984

/programs/demos/3DS/GRD_LINE.INC
61,23 → 61,23
movq [.cz],mm0
movq [.cg],mm1
elseif Ext >= SSE2
movups xmm1,[.cz]
; movups xmm1,[.cz]
paddd xmm1,xmm0
movups [.cz],xmm1
; movups [.cz],xmm1
end if
}
macro .draw_pixel
{
mov [esi],ebx ; actualize Z buffer
;if Ext=SSE2
; movups xmm2,[.cb]
; shufps xmm1,xmm1,11000110b
; pand xmm1,[.mask]
; psrld xmm2,ROUND
; packssdw xmm2,xmm2
; packuswb xmm2,xmm2
; movss [edi],xmm2
;else
if Ext=SSE2
movaps xmm7,xmm1 ;[.cb] ;;xmm1
shufps xmm7,xmm7,00111001b
psrld xmm7,ROUND
packssdw xmm7,xmm7
packuswb xmm7,xmm7
pand xmm7,xmm6 ;[.mask]
movd [edi],xmm7
else
 
mov eax,[.cb]
sar eax,ROUND
90,7 → 90,7
mov edx,[.cr]
sar edx,ROUND
mov [edi+2],dl
;end if
end if
; shl ebx,16
; or eax,ebx
; mov [edi],eax
208,8 → 208,15
movsx ebx,word[.z1]
shl ebx,ROUND
mov [.cz],ebx
if Ext = SSE2
movups xmm1,[.cz]
end if
.hdraw:
if Ext = SSE2
movd ebx,xmm1
else
mov ebx,[.cz]
end if
cmp [esi],ebx
jle .skip
 
267,8 → 274,16
movsx ebx,word[.z1]
shl ebx,ROUND
mov [.cz],ebx
if Ext = SSE2
movups xmm1,[.cz]
end if
 
.v_draw:
if Ext = SSE2
movd ebx,xmm1
else
mov ebx,[.cz]
end if
cmp [esi],ebx
jle @f
 
331,7 → 346,11
shl ebx,ROUND
mov [.cz],ebx
.d45_draw:
if Ext = SSE2
movd ebx,xmm1
else
mov ebx,[.cz]
end if
cmp [esi],ebx
jle @f
 
400,6 → 419,9
movsx ebx,word[.z1]
shl ebx,ROUND
mov [.cz],ebx
if Ext = SSE2
movups xmm1,[.cz]
end if
movsx ebx,word[.x1]
shl ebx,ROUND
mov [.ccoord],ebx ; .ccoord -> x coordinate
412,7 → 434,11
add edi,ebx
add esi,ebx
add esi,eax
if Ext = SSE2
movd ebx,xmm1
else
mov ebx,[.cz]
end if
cmp [esi],ebx
jle @f
 
480,6 → 506,9
movsx ebx,word[.z1]
shl ebx,ROUND
mov [.cz],ebx
if Ext = SSE2
movups xmm1,[.cz]
end if
movsx ebx,word[.y1]
shl ebx,ROUND
mov [.ccoord],ebx ; .ccoord -> y coordinate
495,7 → 524,11
lea eax,[eax*3]
add esi,eax
add edi,eax
if Ext = SSE2
movd ebx,xmm1
else
mov ebx,[.cz]
end if
cmp [esi],ebx
jle @f
 
553,12 → 586,12
movq mm3,[.dg]
else if Ext >= SSE2
movups xmm0,[.dz]
movups xmm6,[.mask]
end if
ret
;align 16
;.mask:
; dq 0xffffffffffffffff
; dq 0xffffffff00000000
.mask:
dq 0xffffffff00ffffff
dq 0xffffffffffffffff