Rev 5175 | Rev 5353 | Go to most recent revision | Show entire file | Regard whitespace | Details | Blame | Last modification | View Log | RSS feed
Rev 5175 | Rev 5269 | ||
---|---|---|---|
Line 1... | Line 1... | ||
1 | if DEBUG |
1 | if DEBUG |
2 | align 4 |
2 | align 4 |
- | 3 | txt_gl_scal db 'glopScale',0 |
|
- | 4 | txt_gl_tran db 'glopTranslate',0 |
|
- | 5 | ||
- | 6 | align 4 |
|
3 | proc gl_print_matrix uses eax ebx ecx edi, m:dword, rows:dword |
7 | proc gl_print_matrix uses eax ebx ecx edi, m:dword, rows:dword |
4 | mov ecx,[rows] |
8 | mov ecx,[rows] |
5 | cmp ecx,1 |
9 | cmp ecx,1 |
6 | jl .end_f |
10 | jl .end_f |
7 | mov ebx,[m] |
11 | mov ebx,[m] |
Line 378... | Line 382... | ||
378 | add ebx,16 |
382 | add ebx,16 |
379 | loop @b |
383 | loop @b |
380 | 384 | ||
Line 381... | Line 385... | ||
381 | if DEBUG ;glopScale |
385 | if DEBUG ;glopScale |
- | 386 | stdcall dbg_print,txt_gl_scal,txt_nl |
|
382 | mov ebx,[eax+offs_cont_matrix_mode] |
387 | mov ebx,[eax+offs_cont_matrix_mode] |
383 | shl ebx,2 |
388 | shl ebx,2 |
384 | add ebx,eax |
389 | add ebx,eax |
385 | stdcall gl_print_matrix,[ebx+offs_cont_matrix_stack_ptr],4 |
390 | stdcall gl_print_matrix,[ebx+offs_cont_matrix_stack_ptr],4 |
386 | end if |
391 | end if |
Line 406... | Line 411... | ||
406 | fld dword[ebx] ;m[0] |
411 | fld dword[ebx] ;m[0] |
407 | fmul st0,st3 ;m[0] * x |
412 | fmul st0,st3 ;m[0] * x |
408 | fld dword[ebx+4] ;m[1] |
413 | fld dword[ebx+4] ;m[1] |
409 | fmul st0,st3 ;m[1] * y |
414 | fmul st0,st3 ;m[1] * y |
410 | fld dword[ebx+8] ;m[2] |
415 | faddp |
411 | fmul st0,st3 ;m[2] * z |
- | |
412 | faddp |
- | |
413 | faddp |
416 | fld dword[ebx+8] ;m[2] |
- | 417 | fmul st0,st2 ;m[2] * z |
|
- | 418 | faddp |
|
414 | fadd dword[ebx+12] ;m[3] |
419 | fadd dword[ebx+12] ;m[3] |
415 | fstp dword[ebx+12] ;m[3] = m[0] * x + m[1] * y + m[2] * z + m[3] |
420 | fstp dword[ebx+12] ;m[3] = m[0] * x + m[1] * y + m[2] * z + m[3] |
416 | add ebx,16 |
421 | add ebx,16 |
417 | loop @b |
422 | loop @b |
418 | ffree st0 |
423 | ffree st0 |
Line 422... | Line 427... | ||
422 | ffree st0 |
427 | ffree st0 |
423 | fincstp |
428 | fincstp |
424 | 429 | ||
Line 425... | Line 430... | ||
425 | if DEBUG ;glopTranslate |
430 | if DEBUG ;glopTranslate |
- | 431 | stdcall dbg_print,txt_gl_tran,txt_nl |
|
426 | mov ebx,[eax+offs_cont_matrix_mode] |
432 | mov ebx,[eax+offs_cont_matrix_mode] |
427 | shl ebx,2 |
433 | shl ebx,2 |
428 | add ebx,eax |
434 | add ebx,eax |
429 | stdcall gl_print_matrix,[ebx+offs_cont_matrix_stack_ptr],4 |
435 | stdcall gl_print_matrix,[ebx+offs_cont_matrix_stack_ptr],4 |
430 | end if |
436 | end if |