DoManyTexture: push cs pop ds mov si, OFFSET Sorted + 1404 mov cx, 703 @NextPoly: mov di, [si] mov bx, [plan.di] mov ax, [Rpoints.bx] mov X1, ax mov ax, [Rpoints.bx+2] mov Y1, ax mov ax, [Rnormals.bx] mov dx, ax sar ax, 8 add ax, X1 mov Dx1, ax sar dx, 6 add dx, 128 mov Tx1, dx mov ax, [Rnormals.bx+2] mov dx, ax sar ax, 8 add ax, Y1 mov Dy1, ax sar dx, 6 add dx, 128 mov Ty1, dx mov bx, [plan.di+2] mov ax, [Rpoints.bx] mov X2, ax mov ax, [Rpoints.bx+2] mov Y2, ax mov ax, [Rnormals.bx] mov dx, ax sar ax, 8 add ax, X2 mov Dx2, ax sar dx, 6 add dx, 128 mov Tx2, dx mov ax, [Rnormals.bx+2] mov dx, ax sar ax, 8 add ax, Y2 mov Dy2, ax sar dx, 6 add dx, 128 mov Ty2, dx mov bx, [plan.di+4] mov ax, [Rpoints.bx] mov X3, ax mov ax, [Rpoints.bx+2] mov Y3, ax mov ax, [Rnormals.bx] mov dx, ax sar ax, 8 add ax, X3 mov Dx3, ax sar dx, 6 add dx, 128 mov Tx3, dx mov ax, [Rnormals.bx+2] mov dx, ax sar ax, 8 add ax, Y3 mov Dy3, ax sar dx, 6 add dx, 128 mov Ty3, dx pusha call textpoly popa sub si, 2 dec cx jnz @NextPoly ret textpoly: mov flag3, 0 mov si, offset x1 mov di, offset x2 mov byte ptr cs:[@@labeltje+1],0c7h ; maak weer di mov cx, 3 @@loop: mov ax, [si+6] ; Y1 cmp ax, [di+6] ; Y2 js @NoSwap1 mov bx, 30 @@xchgloop: mov ax, [si+bx] ; x1, y1, tx1, ty1, dx1, dy1 xchg ax, [di+bx] ; x2, y2, tx2, ty2, dx2, dy2 mov [si+bx], ax ; sub bl,6 jns @@xchgloop xor flag3, 1 @NoSwap1: @@labeltje: add di,2 dec byte ptr cs:[@@labeltje+1] ; maak van di si loop @@loop mov cx, y3 sub cx, y1 jz @endpoly movsx ecx, cx mov ax, x3 ; X3r := (X3-X1)*256 DIV (Y3-Y1) sub ax, x1 movsx ebx, ax Call Imul256 mov x3r, eax mov x4r, eax mov ax, y2 ; X4 := (Y2-Y1)*(X3-X1) DIV (Y3-Y1) + X1 sub ax, y1 movsx eax, ax mov ebp, eax ; y2y1 imul eax, ebx cdq idiv ecx movzx ebx, x1 add eax, ebx mov x4 , ax mov links, 0 cmp x2, ax ; x2 if x2