Subversion Repositories Kolibri OS

Compare Revisions

Regard whitespace Rev 5337 → Rev 5353

/programs/develop/libraries/TinyGL/asm_fork/arrays.asm
174,18 → 174,23
add esi,[edx+offs_cont_color_array] ;esi = &context.color_array[i]
mov edi,ebp
sub edi,28 ;edi = &p[1]
movsd ;p[1].f = context.color_array[i]
movsd
movsd
mov ebx,[esi+8]
mov [edi],ebx ;p[1].f = context.color_array[i+2]
mov ebx,[esi+4]
mov [edi+4],ebx ;p[2].f = context.color_array[i+1]
mov ebx,[esi]
mov [edi+8],ebx ;p[3].f = context.color_array[i]
add edi,12
cmp dword[size],3
jle .e1
add esi,12
movsd
sub edi,20 ;&p[0]
jmp .e2
.e1:
mov dword[edi],1.0 ;если задано 3 параметра, то 4-й ставим по умолчанию 1.0
sub edi,16 ;&p[0]
.e2:
mov edi,ebp
sub edi,32 ;edi = &p[0]
mov ebx,ebp
sub ebx,12 ;ebp-12 = &p[5]
push ebx
256,6 → 261,7
.e6:
mov dword[edi],0.0 ;если задано 2 параметра, то 3-й ставим по умолчанию 0.0
add edi,4
jmp .e8 ;и 4-й тоже ставим по умолчанию
.e7:
cmp dword[size],3
jle .e8
302,7 → 308,7
align 4
proc glopDrawElements uses eax ebx edx, context:dword, param:dword
locals
p rd 5
p rd 8
endl
 
mov edx,[context]
318,7 → 324,7
mov eax,[ebx+4]
mov [p+4],eax ;p[1].i = param[1].i
mov eax,ebp
sub eax,20 ;=sizeof(dd)*5
sub eax,32 ;=sizeof(dd)*8
stdcall glopBegin, edx,eax
 
; for (int ii=0; ii<count; ii++) {
360,7 → 366,7
; }
; }
mov eax,ebp
sub eax,20 ;=sizeof(dd)*5
sub eax,32 ;=sizeof(dd)*8
stdcall glopEnd, edx,eax
ret
endp