Je viens de commencer à programmer en C. Je suis donc un gros newbie et la question que je vais poser est peut-etre très nul.
Comment ralentir un programme en C ?
J'avais penser à faire une boucle For dans le "vide" pour faire durer le prog (comme en Basic). Mais en C ca va vraiment très vite et la boucle For ne ralenti pas assez mon prog.
J'ai regarder les sources de Flib pour la commande Wait mais il utilise une boucle en asm et je comprend rien.
Donc pour ralentir l'execution y'a rien d'autre qu'une simple boucle for ?
Epitech - Ecole pour l'informatique et les nouvelles technologies
Shinjuku@ifrance.com
MSN : Shinjuku83@hotmail.com
Kelso Le 08/12/2001 à 16:23 c très simple, 2 solutions:
-soit tu as besoin d'un temps court (<1/20e de sec.) et tu utilises 2 boucles for imbriqués, en général tu peux utiliser ça dans un jeu.
Tu peux aussi repiquer la routine de fl si ça t'amuses, elle est super précise.
-sinon tu as besoin d'un temps plus long, dans ce cas tu rajoutes une fonction wait(time)
, time en 20ième de sec, qui utilises le USER_TIMER (regardes le tuto de squale sur "1er graphismes")
the car's on fire and there's no driver at the wheel
and the sewers are all muddied with a thousand lonely suicides
and a dark wind blows
GYBE! Dead Flag Blue
Kelso Le 08/12/2001 à 19:20 bah vi c crade mais ça marche! la + petite unité des timers c le 20e de sec., donc pour faire un jeu c pas la peine
the car's on fire and there's no driver at the wheel
and the sewers are all muddied with a thousand lonely suicides
and a dark wind blows
GYBE! Dead Flag Blue
On a juste besoin des ROM_CALLs de TIGCCLIB pour faire de la programmation événementielle. AMS est déjà un système événementiel.
OSVRegisterTimer(1,2,RafraichirEcran);
Mais ce n'est plus un ROM_CALL, mais une routine de TIGCCLIB parce que TI a viré le ROM_CALL correspondant dans AMS 2.04 (et aussi 2.05 bien sûr). Et il faut que l'auto-int 5 soit activé. (Mais ça doit être pareil pour ta routine, n'est-ce pas?) Et puis, si on ne veut pas traffiquer l'auto-int 5, c'est seulement à 1/20 seconde près.
Et je suppose que les évènements de touches seront plus faciles à utiliser avec tes routines qu'avec les routines de AMS (EV_captureEvents etc.). Mais que la réutilisation des routines de AMS prend moins de place normalement.
Et puis, si tu as le temps, azur_events.h et azur_events.a pour TIGCC ne seraient jamais une mauvaise idée.
[edit]Edité par Kevin Kofler le 08-12-2001 à 21:29:59[/edit]
Pour ça, je m'interroge.
Dans ce cas pourquoi ne pas porter toute la librairie Azur, par exemple, ma librairie graphx est plus rapide que ExtrGraph.
Pourquoi je m'interroge ?
Parceque la lib Azur je l'ai programmée pour le compilateur Azur !
Comme elle offre des avantages par rapport à certaines fonction de la lib TIGCC, le fait de la reserver exclusivement au compilo Azur pourrait me faire gagner quelques utilisateurs...
Pour event : je me cale sur l'AI 1, qui permet une précision au 1/256 ième de seconde.

Un site complet sur lequel vous trouverez des programmes et des jeux pour votre calculatrice TI 89 / Titanium / 92+ / Voyage 200 :
www.ti-fr.com.
Quelques idées personnelles
ici.
Il n'y a pas besoin de modifier la fréquance de l'interruption pour pouvoir lancer une routine à la fréquance qu'on veut. Il faut utiliser une autre méthode, et cette métode me permet par la même occasion de pouvoir "installer" autant de fonctions que l'on veut sur une seule AI, et toutes à des fréquences différentes.
Pour les droits d'auteurs : je ne peux rien contre les imbéciles qui ne savent pas respecter le travail des auttres. Le copyright c'est pour inciter les bon programmeurs (intelligent & respectueux -> bon programmeur) à me demander une autorisation avant recopiage.

Un site complet sur lequel vous trouverez des programmes et des jeux pour votre calculatrice TI 89 / Titanium / 92+ / Voyage 200 :
www.ti-fr.com.
Quelques idées personnelles
ici.
#define getKey() (kbhit()?ngetchx():0)
PpHd Le 10/12/2001 à 16:24 C'est vrai qu'il y a des gens qui volent le travail, le distribue... et dise meme qu'ils l'ont vole.
Kelso Le 11/12/2001 à 19:56 Shinjuku2> si tu veux faire un jeu je te conseille d'utiliser _rowread pour les touches.
regarde le tuto de ti-fr aussi là dessus
the car's on fire and there's no driver at the wheel
and the sewers are all muddied with a thousand lonely suicides
and a dark wind blows
GYBE! Dead Flag Blue
pour apprendre le C, y'a toujours mon tuto, cf ma signature, qui est aussi dispo sur TI-Fr.
Ca te plaît pas ce qu'il y a "au bout" du lien ??

Un site complet sur lequel vous trouverez des programmes et des jeux pour votre calculatrice TI 89 / Titanium / 92+ / Voyage 200 :
www.ti-fr.com.
Quelques idées personnelles
ici.