cs_misterpatate
Messages postés22Date d'inscriptionmercredi 31 mars 2004StatutMembreDernière intervention20 septembre 2006
-
31 mars 2004 à 19:55
BruNews
Messages postés21040Date d'inscriptionjeudi 23 janvier 2003StatutModérateurDernière intervention21 août 2019
-
1 avril 2004 à 10:32
Je suis étudiant et j'ai un petit projet en assembleur qui consite à faire
bouger une balle à l'écran en mode graphique avec rebond sur les bords et
tout... bref passionnant. Je programme avec TASM pour du 8086 je crois avec
utilisation du timer et donc d'interruption et du coprocesseur.
Pour calculer la position de la boule j'utilise des calculs avec le
coprocesseur. Le résultat (entier) se retrouve finalament dans ST(0) et je
souhaite le stocker dans une variable pos (dw) :
fild x[bx]
fild y[bx]
fld largeur[bx]
fmul ST(0),ST(1)
fadd ST(0),ST(2)
fistp pos ; c'est là le problème
en vérifiant la valeur dans le coprocesseur et la zone mémoire écrite je
m'aperçois que la valeur et différente et surtout que pos est constante
quelques soit la valeur dans ST(0)...
Bref je bloque et c'est dommage car c'est presque le fin de mon projet... Si
quelqu'un s'y connait mieux que moi... please master hemoilp me....
cs_misterpatate
Messages postés22Date d'inscriptionmercredi 31 mars 2004StatutMembreDernière intervention20 septembre 2006 1 avril 2004 à 10:19
Merci beaucoup ça marche trés bien et maintenant ma petite boule bouge comme il faut selon l'angle...
Mais si j'osais je demanderais quelques explications. "Fistp" je connais "Dword" aussi mais "Ptr" est inconnu pour moi... Et pourquoi est-ce que ça ne marchait pas avec mon écriture ? Ou même en passant par un registre ?
Bref Merci beaucoup en tout cas. Je promets que si je finis j'enverrais mes sources et tout le monde pourra profiter de cette merveilleuse animation...