1

Je voudrais mesurer un temps avec une précision supérieure à celle des timers de la calc (20ms). D'après le doc de Tigcc, il est possible de changer cette période qui est celle de l'appel de l'Auto-Int 5.
Every time the Auto-Int 5 is triggered (20 times per second if you didn't change the programable rate generator), the current value of the timer is decremented by 1.
Mais j'ai pas trouvé comment.

Je n'y connais pas grand chose sur les interruptions du 68000 mais est ce réalisable ?
Merci.
Mon site :
[TI68k] Space Dementia I : Version 0.8
[TI68k] Space Dementia II, mod arena : Version 0.3 avec IA
[OpenGL] Environment Mapping 3ds Viewer : version 1.0
[OpenGL] Programmation d'une simulation de voiture avec le moteur physique Tokamak

2

Ouep, c d'ailleurs comme ca que geogeo fait pour Polysnd ... regardes-en les sources ..

3

Seul la version 2.0 gére l'interruption n°5 donc je n'ai pas encore diffusé les sources et je le ferait lorsque PolySnd 2.0 seat terminé ce qui n'est pas le cas en ce moment.

Voilà comment tu doit procéder:
-Tu doit reprogrammer l'int5 de telle façon que l'interruption ne soit plus décrémenté, en effet il y a un certain counteur qui compte jusqu'à une valeur définis (par défaut 0xB2 donc 178 donc lorsque 'il passe de 255 à 178 il remet le counteur à 255 et lance l'interruption. Dans ton cas tu doit faire varier ce counteur de 0x00 à 0xFF (a savoir) 0xFF tu as la vitesse max de l'int5. Il faut modifier 0x600017. Pour encore avoir une vitesse supérieur de l'ordre de 11 khz sur HW1 et 8 khz sur HW2 tu doit allumer certain bit à l'adresse 0x600015 donc si tu veut une telle vitesse tu doit allumer les bits 0b0000 1011 voilà.

Regarde le fichier Hardware de la TI-89 que tu trouveras sur tict.ticalc.org

Et n'oublie surtout pas de sauvegarder ce que tu as changé et aussi d'enlever la protection de la table vectorielle lorsque tu veut écrire dedans.
avatar
la Nature nous montre seulement la queue du lion. Mais je suis certain que le lion a qui elle appartient pense qu'il ne peut pas se révéler en une fois en raison de son immense taille.

- Fondateur de Ti-Gen -: http://www.tigen.org

- Membre du Groupe Orage Studio -: http://oragestudio.free.fr/

- Mon site perso -: http://tisofts.free.fr

Projets TI68K en cours:
GFA-Basic = http://www.tigen.org/gfabasic
Arkanoid.
PolySnd 3.0.

4

Merci. Je devrais y arriver avec la doc Hardware TI-89.
Mon site :
[TI68k] Space Dementia I : Version 0.8
[TI68k] Space Dementia II, mod arena : Version 0.3 avec IA
[OpenGL] Environment Mapping 3ds Viewer : version 1.0
[OpenGL] Programmation d'une simulation de voiture avec le moteur physique Tokamak

5

Je suis en lutte pour calculer avec précision les fréquence.
dans le fichier hardware ils disent, suivant l'état de deux bits de 0x600015 :

Increment rate of $600017
%00: OSC2/2^5
%01: OSC2/2^9 (AMS default)
%10: OSC2/2^12
%11: OSC2/2^18

Geogeo, connais tu (ou as tu calculé) la fréquence de l'OSC2 ? (sur HW2)
Ensuite, si je comprends bien, la fréquence d'incrément de la variable qui commence à la valeur stockée en 0x600017 et finit en 0x00, c'est frequence(OSC2)/2^9 ?? (par défaut, ou /2^5, /2^12... si on change les deux bits concernés de 0x600015)
Mon site :
[TI68k] Space Dementia I : Version 0.8
[TI68k] Space Dementia II, mod arena : Version 0.3 avec IA
[OpenGL] Environment Mapping 3ds Viewer : version 1.0
[OpenGL] Programmation d'une simulation de voiture avec le moteur physique Tokamak

6

Oui mais cette fréquence malheuresement dépend de l'état des piles. Elle fait du 8192 hz précisément avec des piles neuves. La je te donne la fréquence max mais pour les autre je ne sais pas. Non ça commence à partir de 0xFF jusqu'à la valeur stocké dans 600017 et donc execute interruption.
avatar
la Nature nous montre seulement la queue du lion. Mais je suis certain que le lion a qui elle appartient pense qu'il ne peut pas se révéler en une fois en raison de son immense taille.

- Fondateur de Ti-Gen -: http://www.tigen.org

- Membre du Groupe Orage Studio -: http://oragestudio.free.fr/

- Mon site perso -: http://tisofts.free.fr

Projets TI68K en cours:
GFA-Basic = http://www.tigen.org/gfabasic
Arkanoid.
PolySnd 3.0.

7

la seule AI précise c'est l'AI3 sur HW2. toute les autres dépendent de l'état des piles. ceci dit tu n'est peut-être pas obligé de modifier la vitesse de AI5 si la vitesse d'auitre AI te conviennent
avatar

8

On ne peut pas sauvegarder la valeur de manière fiable. Le port fonctionne différemment en lecture qu'en écriture. La seule manière de remettre la valeur d'origine est de détecter la version matérielle et de remettre la valeur par défaut en conséquence.
avatar
Mes news pour calculatrices TI: Ti-Gen
Mes projets PC pour calculatrices TI: TIGCC, CalcForge (CalcForgeLP, Emu-TIGCC)
Mes chans IRC: #tigcc et #inspired sur irc.freequest.net (UTF-8)

Liberté, Égalité, Fraternité

9

geogeo
a écrit : Elle fait du 8192 hz précisément avec des piles neuves.


La fréquence de OSC2 ?

Dans le fichier hardware, on lit : Trigger interrupt level 3 at OSC2/2^19 (~1 Hz on HW2) eek
Non ça commence à partir de 0xFF jusqu'à la valeur stocké dans 600017 et donc execute interruption.


Tu est sûr ??
Toujours dans la doc hardware :
The count sequence looks like this:
value, value+1, ..., $FF, $00 (interrupt!), value, value+1, ...
To trigger an interrupt every 'n'th increment, write '257-n' to this register.

Mon site :
[TI68k] Space Dementia I : Version 0.8
[TI68k] Space Dementia II, mod arena : Version 0.3 avec IA
[OpenGL] Environment Mapping 3ds Viewer : version 1.0
[OpenGL] Programmation d'une simulation de voiture avec le moteur physique Tokamak

10

C'est celle du controlleur LCD sur HW1 je croye qui est de:
HW1=~680 Khz - ~770 khz
HW2=~520 khz

Et sur HW2 il y a OSC3 basé sur le controleur LCD:
680 khz.

En parlant de ça comment faire pour avoir une interruption > 8kz???
avatar
la Nature nous montre seulement la queue du lion. Mais je suis certain que le lion a qui elle appartient pense qu'il ne peut pas se révéler en une fois en raison de son immense taille.

- Fondateur de Ti-Gen -: http://www.tigen.org

- Membre du Groupe Orage Studio -: http://oragestudio.free.fr/

- Mon site perso -: http://tisofts.free.fr

Projets TI68K en cours:
GFA-Basic = http://www.tigen.org/gfabasic
Arkanoid.
PolySnd 3.0.

11

Kevin Kofler
a écrit : On ne peut pas sauvegarder la valeur de manière fiable. Le port fonctionne différemment en lecture qu'en écriture. La seule manière de remettre la valeur d'origine est de détecter la version matérielle et de remettre la valeur par défaut en conséquence.

Non, on peut économiser du code simplement :
OSSetSR(0x700);
while (peekIO(0x600017)); while (!(IO600017_backup = peekIO(0x600017)));

12

Es-tu sûr que c'est fiable comme méthode? On en a discuté il y a quelques mois sur le forum de la TICT, et Greg Dietsche a dit que cette méthode n'était pas fiable, parce qu'on risque de rater le bon moment.
avatar
Mes news pour calculatrices TI: Ti-Gen
Mes projets PC pour calculatrices TI: TIGCC, CalcForge (CalcForgeLP, Emu-TIGCC)
Mes chans IRC: #tigcc et #inspired sur irc.freequest.net (UTF-8)

Liberté, Égalité, Fraternité

13

en désactivant toutes les IT, on fait une boucle qui sans cesse regarde si c le bon moment...
il faudra que ça change qd même TRES vite pour qu'on rate le bon moment en le seul temps de boucler, non ?
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

14

Oui, mais ça change très vite. Plusieurs fois par milliseconde.
avatar
Mes news pour calculatrices TI: Ti-Gen
Mes projets PC pour calculatrices TI: TIGCC, CalcForge (CalcForgeLP, Emu-TIGCC)
Mes chans IRC: #tigcc et #inspired sur irc.freequest.net (UTF-8)

Liberté, Égalité, Fraternité

15

a ce point ?
arf sad
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

16

Les ints sont désactivées, et le processeur est beaucoup plus rapide que le changement du timer, je ne pense pas qu'il puisse y avoir de problème.