Rev 6113 | Rev 6141 | Go to most recent revision | Show entire file | Regard whitespace | Details | Blame | Last modification | View Log | RSS feed
Rev 6113 | Rev 6126 | ||
---|---|---|---|
Line 50... | Line 50... | ||
50 | dxdy_max dd ? ;int |
50 | dxdy_max dd ? ;int |
51 | ; warning: x2 is multiplied by 2^16 |
51 | ; warning: x2 is multiplied by 2^16 |
52 | x2 dd ? ;int |
52 | x2 dd ? ;int |
53 | dx2dy2 dd ? ;int |
53 | dx2dy2 dd ? ;int |
Line 54... | Line -... | ||
54 | - | ||
55 | pz dd ? ;unsigned short * |
54 | |
56 | z dd ? ;uint |
- | |
57 | zz dd ? ;uint |
- | |
58 | 55 | z dd ? ;uint |
|
Line 59... | Line 56... | ||
59 | n dd ? ;int - длинна горизонтальной линии в пикселях |
56 | n dd ? ;int - длинна горизонтальной линии в пикселях |
60 | 57 | ||
61 | if INTERP_Z eq 1 |
58 | if INTERP_Z eq 1 |
Line 691... | Line 688... | ||
691 | mov [n],eax ;n = (x2 >> 16) - x1 |
688 | mov [n],eax ;n = (x2 >> 16) - x1 |
692 | imul edi,PSZB |
689 | imul edi,PSZB |
693 | add edi,[pp1] ;pp = pp1 + x1 * PSZB |
690 | add edi,[pp1] ;pp = pp1 + x1 * PSZB |
Line 694... | Line 691... | ||
694 | 691 | ||
695 | if INTERP_Z eq 1 |
692 | if INTERP_Z eq 1 |
696 | mov eax,[x1] |
693 | mov esi,[x1] |
697 | shl eax,1 |
694 | shl esi,1 |
698 | add eax,[pz1] |
- | |
699 | mov [pz],eax |
695 | add esi,[pz1] |
700 | mov eax,[z1] |
696 | mov eax,[z1] |
701 | mov [z],eax |
697 | mov [z],eax |
702 | end if |
698 | end if |
703 | if INTERP_RGB eq 1 |
699 | if INTERP_RGB eq 1 |
Line 757... | Line 753... | ||
757 | PUT_PIXEL 0 |
753 | PUT_PIXEL 0 |
758 | PUT_PIXEL 1 |
754 | PUT_PIXEL 1 |
759 | PUT_PIXEL 2 |
755 | PUT_PIXEL 2 |
760 | PUT_PIXEL 3 |
756 | PUT_PIXEL 3 |
761 | if INTERP_Z eq 1 |
757 | if INTERP_Z eq 1 |
762 | add dword[pz],8 ;=4*sizeof(uint) |
758 | add esi,8 ;=4*sizeof(uint) |
763 | end if |
759 | end if |
764 | add edi,4*PSZB |
760 | add edi,4*PSZB |
765 | sub dword[n],4 |
761 | sub dword[n],4 |
766 | jmp .cycle_1 |
762 | jmp .cycle_1 |
767 | .cycle_2: ;while (n>=0) |
763 | .cycle_2: ;while (n>=0) |
Line 797... | Line 793... | ||
797 | mov dword[ob1],0xff00 |
793 | mov dword[ob1],0xff00 |
798 | .end_b: |
794 | .end_b: |
799 | end if |
795 | end if |
800 | PUT_PIXEL 0 |
796 | PUT_PIXEL 0 |
801 | if INTERP_Z eq 1 |
797 | if INTERP_Z eq 1 |
802 | add dword[pz],2 ;=sizeof(uint) |
798 | add esi,2 ;=sizeof(uint) |
803 | end if |
799 | end if |
804 | add edi,PSZB |
800 | add edi,PSZB |
805 | dec dword[n] |
801 | dec dword[n] |
806 | jmp .cycle_2 |
802 | jmp .cycle_2 |
807 | .cycle_2_end: |
803 | .cycle_2_end: |