Witam! mam taką procedurę:
Rot:
lea si,my_cos
lea di,my_sin
mov ax,kat
shl ax,2
add si,ax
add di,ax
finit
fld1
fmul d [si]
fmul r
fistp x2
fld1
fmul d [di]
fmul r
fistp y2
mov ax,kat
inc ax
xor ah,ah
mov kat,ax
ret
i takie zmienne:
my_cos DD 256 dup(?)
my_sin DD 256 dup(?)
d equ dword ptr
y2 DW 0
x2 DW 0
kat DW 0
Teraz w czym problem... Na początku działa super, tzn obraca punkt (1,0) dookoła punktu (0,0) i mnoży go przez promień ? w ten sposób powstaje koło o środku w punkcie (0,0) i promieniu r, ale nie w tym rzecz...
Przez pierwsze parę sekund wszystko działa ok.! ale później coś się sypie i punkty źle są obracane, czemu??