Subversion Repositories Kolibri OS

Rev

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

Rev 5269 Rev 5353
Line -... Line 1...
-
 
1
if DEBUG
-
 
2
f_vt db ' gl_vertex_transform',0
-
 
3
end if
Line 1... Line 4...
1
align 4
4
 
2
proc glopNormal uses ecx esi edi, context:dword, p:dword
5
align 4
3
	mov esi,[p]
6
proc glopNormal uses ecx esi edi, context:dword, p:dword
4
	add esi,4
7
	mov esi,[p]
Line 115... Line 118...
115
proc glopBegin uses eax ebx ecx edx, context:dword, p:dword
118
align 4
116
locals
119
proc glopBegin uses eax ebx ecx edx, context:dword, p:dword
117
	tmp M4
120
locals
118
endl
121
	tmp M4
119
;    assert(c->in_begin == 0);
122
endl
120
 
123
;assert(context.in_begin == 0)
Line 121... Line 124...
121
	mov edx,[context]
124
 
122
	mov ebx,[p]
125
	mov edx,[context]
123
	mov ebx,[ebx+4] ;ebx = p[1]
126
	mov ebx,[p]
124
	mov [edx+offs_cont_begin_type],ebx
127
	mov ebx,[ebx+4] ;ebx = p[1]
Line 135... Line 138...
135
	stdcall gl_print_matrix,dword[edx+offs_cont_matrix_stack_ptr],4
138
if DEBUG ;context.matrix_stack_ptr[0]
136
end if
139
	stdcall gl_print_matrix,dword[edx+offs_cont_matrix_stack_ptr],4
137
		; precompute inverse modelview
140
end if
138
		mov ebx,ebp
141
		; precompute inverse modelview
139
		sub ebx,64
142
		mov ebx,ebp
140
		stdcall gl_M4_Inv, ebx,dword[edx+offs_cont_matrix_stack_ptr]
143
		sub ebx,sizeof.M4
141
if DEBUG ;tmp
144
		stdcall gl_M4_Inv, ebx,dword[edx+offs_cont_matrix_stack_ptr]
142
	stdcall dbg_print,txt_sp,txt_nl
145
if DEBUG ;tmp
143
	stdcall gl_print_matrix,ebx,4
146
	stdcall dbg_print,txt_sp,txt_nl
144
end if
147
	stdcall gl_print_matrix,ebx,4
145
		push ebx
148
end if
Line 163... Line 166...
163
		fld dword[ecx+12*4]
166
		fldz
164
		fcomp st1
167
		fld dword[ecx+12*4]
165
		fstsw ax
168
		fcomp st1
166
		sahf
169
		fstsw ax
167
		jne .end_if_0
170
		sahf
168
		fld dword[ecx+13*4]
171
		jne @f
169
		fcomp st1
172
		fld dword[ecx+13*4]
170
		fstsw ax
173
		fcomp st1
171
		sahf
174
		fstsw ax
172
		jne .end_if_0
175
		sahf
173
		fld dword[ecx+14*4]
176
		jne @f
174
		fcomp st1
177
		fld dword[ecx+14*4]
175
		fstsw ax
178
		fcomp st1
176
		sahf
179
		fstsw ax
177
		jne .end_if_0
180
		sahf
178
			mov dword[edx+offs_cont_matrix_model_projection_no_w_transform],1
181
		jne @f
179
	.end_if_0:
182
			mov dword[edx+offs_cont_matrix_model_projection_no_w_transform],1
-
 
183
		@@:
-
 
184
		ffree st0 ;0.0
-
 
185
		fincstp
180
 
186
	.end_if_0:
Line 181... Line 187...
181
		; test if the texture matrix is not Identity
187
 
182
		mov eax,edx
188
		; test if the texture matrix is not Identity
183
		add eax,offs_cont_matrix_stack_ptr+8
189
		mov eax,edx