1

Je recherche beaucoup de vitesse pour optimiser un algorithme en ASM. is_data:      tst.w     _ucounter      bne     bcle_sound      move.w     unittps,_ucounter            cmp.b     #$01,_flag_      beq     continue1            tst.b     _lcounter1      beq     extract_voice1      subq.b     #1,_lcounter1       continue1:      cmp.b     #$02,_flag_      beq     continue2            tst.b     _lcounter2      beq     extract_voice2      subq.b     #1,_lcounter2       continue2:      bra     bcle_sound       extract_voice1:      movem.l     a0,-(a7)      move.l     ptridle_voice1,a0      move.b     (a0)+,frequency_voice1      move.b     (a0)+,_lcounter1      movem.l     (a7)+,a0            addq.l     #2,ptridle_voice1            cmp.b     #$FF,frequency_voice1      beq     end_voice1      bra     continue1       extract_voice2:      movem.l     a0,-(a7)      move.l     ptridle_voice2,a0      move.b     (a0)+,frequency_voice2      move.b     (a0)+,_lcounter2      movem.l     (a7)+,a0            addq.l     #2,ptridle_voice2            cmp.b     #$FF,frequency_voice2      beq     end_voice2      bra     continue2             end_voice1:      ori.b     #$01,_flag_            cmp.b     #$03,_flag_      beq     end_all      rte end_voice2:      ori.b     #$02,_flag_            cmp.b     #$03,_flag_      beq     end_all      rte       end_all:      clr.b     state      rte

Quels sont les instructions que je doit remplacer car je pense que cmp est lent ainsi que bra... Je voudrais trouver des equivalent mais très rapide. smile
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.

2

Ta source est assez longue, j'ai la flemme de regarder.

Je te conseille de télécharger le manuel de l'utilisateur du 68000 ([google]MC68000UM.PDF[/google]). dedans il y a les temps de toutes les instructions.

Sinon, sur www.ticalc.org, tu trouveras quelques textes qui proposent des optimisations d'instructions.

Mais avant de penser à l'optimisation par instruction, sois bien sûr que ton algo est vraiment optimisé.

3

Merci pour les docs. Mon algo est très optimisé en vitesse par en mémoire mais ça je m'en contre fiche. Comme tu le voit j'utilise une interruption plus c'est rapide mieux c'est. Je vais de ce pas regarder les docs mais je préfére aussi avoir des avis critique. smile
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

Déjà pas la peine de faire des movem si tu n'empile qu'un seul registre: fait un move simple. Ensuite met tes variables dans des registres plutôt que de les manipuler directement en mémoire, ça ira beaucoup, mais beaucoup plus vite smile
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.

5

Un truc qui me choque un peu: un bra juste après un label... autant aller directement au bon endroit.

Juste après continue1 aussi, tu devrait mettre le label après les deux instructions car continue1 n'est appelé que lorsque _flag_=1

sinon pour mettre _flag_ dans un registre, faut voir: tu l'utilises disons 3 fois en moyenne, alors regarde si l'adressage direct est plus de 2 fois moins rapide en cycle (genre timing.txt chez ticalc)
Cours et tutos Asm: http://membres.lycos.fr/sirryl

6

Je vais me pencher sur tout ça mais pour ce qui ai de la manipulation avec registre, je ne peut pas avoir en permanence l'état des varaibles (leurs changement de valeurs).
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

bah par exemple au début de ta fonction tu charges les variables concernées dans des registres, tu exécutes, et tu réenregistres les nouvelles valeurs au sortir de la fonction, normalement tu devrais y gagner wink
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.

8

C'est clair smile
Remplace les movem par des move lorsque le nombre de registres est inférieur à 4.
avatar
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.

9

D'accord, je fait ça tout de suite smile
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.

10

Thibaut a écrit :
C'est clair smile
Remplace les movem par des move lorsque le nombre de registres est inférieur à 4.

Non, lorsqu'il est strictement inférieur à 3 seulement! Tu perds 2 octets par registre à partir du troisième!
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é

11

Mon pauvre, tu vas jusqu'à faire semblant de ne pas comprendre ce qu'on demande pour étendre la propagande de tes opinions roll
avatar
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.

12

Kevin> tu sais lire? regarde le titre du topic... c'est pas marque "recherche de gain de place" golgolgol
In many respects the Yoshi is like a beautiful woman. A man can come so enamoured that he bestows on her all his time, his energy and his fortune.
- Fred whipple, 1960

*** Ne sous-estimez pas la puissance de la Marmotte ***
© Marmotte Team : LaMarmotte, sBibi, Vark & Sabrina

13

geogeo: utilise les routines de modifiees de extgraphlib, parce que bon...

14

sBibi
a écrit : Kevin> tu sais lire? regarde le titre du topic... c'est pas marque "recherche de gain de place"

Mais il n'y a pas écrit "recherche de vitesse en gaspillant le maximum de place possible"!!! Un gain de vitesse n'implique pas forcément une perte de place.
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

Là si grin
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.

16

Bas dans mon cas c'est surtout de la vitesse que je veut et non de l'économis en mémoire car plus c'est rapide mieux c'est car plus de fréquence joué. Surtout que j'utilise une interruption assez rapide.

Ce qui m'étonne le plus c'est que j'ai eux les sources de FXlib après avoir développé cette partie et en comparent celui de FXLib au miens, le miens est plus optimisé et surtout plus performant et je me pose toujours la question, pourquoi personnes avait pensé à mon idée pour gérer du son en stéréo en tâche de fond!!!
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.

17

Peut-être que personne ne s'y était intéressé avant toi smile
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.

18

Ouaip smile

Kevin : t'es aussi lourd que moi en ce moment grin
avatar
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.

19

vous etes lourds tous les deux, en ce moment, en gros
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

20

Tu aimes répéter les gens comme ça ?
T'es lourd là tongue
avatar
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.

21

roll
ke dis ce que je pense.

"ils deviennet ce qu'ils voient, et voient ce qu'ils deviennent" smile
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

22

c'est yoda qui l'a dit? triso
In many respects the Yoshi is like a beautiful woman. A man can come so enamoured that he bestows on her all his time, his energy and his fortune.
- Fred whipple, 1960

*** Ne sous-estimez pas la puissance de la Marmotte ***
© Marmotte Team : LaMarmotte, sBibi, Vark & Sabrina

23

roll
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

24

c'est la mode du roll en ce momentsmile

25

c la mode des posts constructifs, aussi ?
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

26

Non, c'est la mode du "partage en live" depuis quelque temps. Tous les topics se transforment en champ de bataille sad
avatar
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.

27

un peu, oui.
et c'est plutôt dommage...
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

28

mais nonsmile
regardez ce topic il part pas en livesmile

29

et il a fait quoi plus haut ?
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

30

heu...
avatar
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.