Rev 5208 | Rev 6111 | Go to most recent revision | Show entire file | Regard whitespace | Details | Blame | Last modification | View Log | RSS feed
Rev 5208 | Rev 5922 | ||
---|---|---|---|
Line 80... | Line 80... | ||
80 | jl .end_0 |
80 | jl .end_0 |
81 | ;edi = pp |
81 | ;edi = pp |
82 | mov word[ebx+2*_a],ax ;пишем в буфер глубины новое значение |
82 | mov word[ebx+2*_a],ax ;пишем в буфер глубины новое значение |
83 | if TGL_FEATURE_RENDER_BITS eq 24 |
83 | if TGL_FEATURE_RENDER_BITS eq 24 |
84 | mov eax,[or1] |
84 | mov ecx,[og1] |
- | 85 | mov eax,[or1] |
|
85 | mov cl,ah |
86 | mov cl,ah |
86 | mov eax,[og1] |
87 | mov word[edi+3*_a],cx |
87 | mov ch,ah |
- | |
88 | mov word[edi+3*_a],cx |
- | |
89 | mov eax,[ob1] |
88 | mov eax,[ob1] |
90 | mov byte[edi+3*_a +2],ah |
89 | mov byte[edi+3*_a +2],ah |
91 | end if |
90 | end if |
92 | if TGL_FEATURE_RENDER_BITS eq 16 |
91 | if TGL_FEATURE_RENDER_BITS eq 16 |
93 | ; tmp=rgb & 0xF81F07E0; |
92 | ; tmp=rgb & 0xF81F07E0; |
Line 198... | Line 197... | ||
198 | mov [zz],eax |
197 | mov [zz],eax |
199 | mov ebx,[pz] |
198 | mov ebx,[pz] |
200 | cmp ax,word[ebx+2*_a] ;if (zz >= pz[_a]) |
199 | cmp ax,word[ebx+2*_a] ;if (zz >= pz[_a]) |
201 | jl .end_0 |
200 | jl .end_0 |
202 | ; pz[_a]=zz; |
201 | ;edi = pp |
203 | if TGL_FEATURE_RENDER_BITS eq 24 |
202 | mov word[ebx+2*_a],ax ;пишем в буфер глубины новое значение |
- | 203 | if TGL_FEATURE_RENDER_BITS eq 24 |
|
204 | ; unsigned char *ptr; |
204 | ; unsigned char *ptr; |
205 | ; ptr = texture + (((t & 0x3FC00000) | s) >> 14) * 3; |
205 | ; ptr = texture + (((t & 0x3FC00000) | s) >> 14) * 3; |
206 | ; pp[3 * _a]= ptr[0]; |
206 | ; pp[3 * _a]= ptr[0]; |
207 | ; pp[3 * _a + 1]= ptr[1]; |
207 | ; pp[3 * _a + 1]= ptr[1]; |
208 | ; pp[3 * _a + 2]= ptr[2]; |
208 | ; pp[3 * _a + 2]= ptr[2]; |
Line 256... | Line 256... | ||
256 | mov [zz],eax |
256 | mov [zz],eax |
257 | mov ebx,[pz] |
257 | mov ebx,[pz] |
258 | cmp ax,word[ebx+2*_a] ;if (zz >= pz[_a]) |
258 | cmp ax,word[ebx+2*_a] ;if (zz >= pz[_a]) |
259 | jl .end_0 |
259 | jl .end_0 |
260 | ; pz[_a]=zz; |
260 | ;edi = pp |
261 | if TGL_FEATURE_RENDER_BITS eq 24 |
261 | mov word[ebx+2*_a],ax ;пишем в буфер глубины новое значение |
- | 262 | if TGL_FEATURE_RENDER_BITS eq 24 |
|
262 | ; unsigned char *ptr; |
263 | ; unsigned char *ptr; |
263 | ; ptr = texture + (((t & 0x3FC00000) | (s & 0x003FC000)) >> 14) * 3; |
264 | ; ptr = texture + (((t & 0x3FC00000) | (s & 0x003FC000)) >> 14) * 3; |
264 | ; pp[3 * _a]= ptr[0]; |
265 | ; pp[3 * _a]= ptr[0]; |
265 | ; pp[3 * _a + 1]= ptr[1]; |
266 | ; pp[3 * _a + 1]= ptr[1]; |
266 | ; pp[3 * _a + 2]= ptr[2]; |
267 | ; pp[3 * _a + 2]= ptr[2]; |
Line 386... | Line 387... | ||
386 | mov [zz],eax |
387 | mov [zz],eax |
387 | mov ebx,[pz] |
388 | mov ebx,[pz] |
388 | cmp ax,word[ebx+2*_a] ;if (zz >= pz[_a]) |
389 | cmp ax,word[ebx+2*_a] ;if (zz >= pz[_a]) |
389 | jl .end_0 |
390 | jl .end_0 |
390 | ; pz[_a]=zz; |
391 | ;edi = pp |
391 | fild dword[z] |
392 | mov word[ebx+2*_a],ax ;пишем в буфер глубины новое значение |
- | 393 | fild dword[z] |
|
392 | fld dword[s_z] |
394 | fld dword[s_z] |
393 | fdiv st0,st1 |
395 | fdiv st0,st1 |
394 | ;fistp dword[...s...] ;s = (int) (s_z / (float) z) |
396 | ;fistp dword[...s...] ;s = (int) (s_z / (float) z) |
395 | ; t= (int) (t_z / (float) z); |
397 | ; t= (int) (t_z / (float) z); |
396 | ; pp[_a]=texture[((t & 0x3FC00000) | s) >> 14]; |
398 | ; pp[_a]=texture[((t & 0x3FC00000) | s) >> 14]; |