1

Salut à tous,

Comme le titre du topic l'indique, j'aimerais savoir comment se gèrent les timers (si il y en a) pour faire un compte-à-rebours?

D'avance merci smile

Fred.
There is no spoon.

2

La question est plutôt vague, peux-tu détailler ?
avatar
Que cache le pays des Dieux ? - Forum Ghibli - Forum Littéraire

La fin d'un monde souillé est venue. L'oiseau blanc plane dans le ciel annonçant le début d'une longue ère de purification. Détachons-nous à jamais de notre vie dans ce monde de souffrance. Ô toi l'oiseau blanc, l'être vêtu de bleu, guide nous vers ce monde de pureté. - Sutra originel dork.

3

Lorsque je charge un niveau de jeu, le joueur a un certain nombre de secondes pour faire le niveau. Le temps restant est décrémenté toutes les secondes (1000 ms). Si le joueur a pu faire le niveau dans le temps imparti (secondes restantes supérieur à 0) alors il peut passer au niveau suivant, sinon, il perd une vie et doit recommencer le niveau.

Fred.
There is no spoon.

4

Regarde la doc de tigcc à propos de "INT_HANDLER". Il existe une syntaxe spéciale pour déclarer une fonction que tu vas ensuite lier à une interruption, pour qu'elle soit executée un certain nombre de fois par secondes (ça dépend de l'interruption à la quelle tu lies, si je ne me trompe pas, l'AI3 a une fréquence de 1Hz sur HW2, donc ça correspond exactement à ce que tu veux).
avatar
All right. Keep doing whatever it is you think you're doing.
------------------------------------------
Besoin d'aide sur le site ? Essayez par ici :)

5

Zephyr :
si je ne me trompe pas, l'AI3 a une fréquence de 1Hz sur HW2

mais une fréquence plus ou moins aléatoire sur HW1 (pas aussi précise)
et il me semble que l'AI3 est utilisé pour le port USB, sur HW3 (89 titanium)
=> mieux vaut utiliser genre l'AI5, qui est à 19 ou 20 Hz
avatar
Tutorial C (TI-89/92+/v200) - Articles Développement Web (PHP, Javascript, ...)
« What is the sound of Perl? Is it not the sound of a wall that people have stopped banging their heads against? » - Larry Wall

6

Avec l'AI5 à "19 ou 20 Hz", justement, le problème c'est que c'est pas très précis non plus (que tu prennes 19 ou 20, ça ne fera pas une seconde exacte, soit un peu plus, soit un peu moins). Si tu veux quelque chose d'un peu plus précis, tu peux utiliser l'AI1, qui est à 350Hz sur HW1 et 256Hz sur HW2 (là aussi il y a une marge d'erreur, mais bien plus faible puisque la fréquence est plus élevée).

[edit] -3+5, thx squale
avatar
All right. Keep doing whatever it is you think you're doing.
------------------------------------------
Besoin d'aide sur le site ? Essayez par ici :)

7

Non, l'erreur est plus élevée entre 350 et 256 qu'entre 20 et 19.

Je crois qu'il va utiliser :
#define Timer_Start _rom_call(unsigned long,(void),5F8)
avatar

8

Thepro
: Non, l'erreur est plus élevée entre 350 et 256 qu'entre 20 et 19.

Heu ... tu peux m'expliquer ce qui te fait croire ça ? (enfin cite plutot de mon post pour répondre parceque je ne comprends pas trop le rapport entre ta phrase et ce que j'ai dit plus haut en fait grin)
avatar
All right. Keep doing whatever it is you think you're doing.
------------------------------------------
Besoin d'aide sur le site ? Essayez par ici :)

9

On ne parle pas de la même chose : je dis que s'il étalonne son programme sur une HW2 pour avoir une fréquence correcte, sur HW1 la fréquence changera, la différence sera plus élevée avec l'AI1 que l'AI5.
avatar

10

erf ... Alors effectivement on ne parle pas de la même chose, je ne vois pas ce que vient faire ton "non" au début du post (ou alors il va falloir expliquer ce qu'il y a de faux dans le mien ^^).

Bref.

Pour résoudre le "problème" de la différence de fréquence il suffit tout betement de vérifier le hardware de la calculatrice et d'adapter les calculs en fonction; sachant que la detection du HW existe déjà dans tigcclib, le reste se fait en à peu près ... 1 ligne, ce qui devrait être gérable ^^
avatar
All right. Keep doing whatever it is you think you're doing.
------------------------------------------
Besoin d'aide sur le site ? Essayez par ici :)

11

Excusez moi, j'avais oublié de mettre à jour le topic.
Donc, le problème est bien résolu. Comme a signalé Therpo, j'utilise le ROM call car le programme tourne sur une HW2 ou HW3. J'avais effectivement oublié de préciser ce détail. Mais lorsque j'ai posé la question, je n'étais pas au courrant de tout. C'est qu'on découvre plein de tucs quand on programme sur une plateforme qu'on ne connait pas.

Merci pour votre aide smile

Fred.
There is no spoon.