π
<-

[TUTO][AXE] Nouvelle methode de scrolling d'image en axe.

Regroupement de tous les tutoriaux z80 (82/83/84)

Re: [AXE] nouvelle methode de scrolling d'image en axe.

Unread postby Persalteas » 07 May 2013, 08:37

A nettoyer et à déplacer dans la section tutoriels :bj:
User avatar
PersalteasMembre UPECS
Niveau 16: CC2 (Commandeur des Calculatrices)
Niveau 16: CC2 (Commandeur des Calculatrices)
Level up: 6.2%
 
Posts: 2337
Images: 113
Joined: 04 Feb 2010, 00:00
Location: Evry (France)
Gender: Male
Calculator(s):
MyCalcs profile
Class: PhD candidate, Bioinformatics

Re: [TUTO][AXE] nouvelle methode de scrolling d'image en axe

Unread postby Excale » 07 May 2013, 09:10

Déplacé. Je vous laisse nettoyer :).
User avatar
ExcaleAdmin
Niveau 16: CC2 (Commandeur des Calculatrices)
Niveau 16: CC2 (Commandeur des Calculatrices)
Level up: 3.9%
 
Posts: 2955
Images: 3
Joined: 10 Sep 2010, 00:00
Gender: Male
Calculator(s):
MyCalcs profile

Re: [TUTO][AXE] Nouvelle methode de scrolling d'image en axe

Unread postby mdr1 » 09 May 2013, 13:24

L'effort de faire ce code est très louable, mais sa qualité est en revanche catastrophique. L'axe n'est pas fait pour les opérations bit à bit en chaine. Ton code, non seulement de faire un grand nombre d'opérations non optimisées par itérations, chaque itération ne traite qu'un seul bit. Regarde, ton code axe :

Code: Select all
:while 1
:0->r1
:for(64)
:({r1*12+L6}e0=1)->{r1+select(r1,+1->r1)}
:End
:horizontal -
:0->r1
:for(64)
:{r1+L1}=1?{r1*12+11+L6->r2} or 1->{r2}
:r1++
:End


donne en assembleur :

Code: Select all
Start:
   ld hl, plotSScreen+11
    ld de,11
Ligne:
   inc hl
    ld c, 64
    ld b,12
Octet:
   rl (hl)
    dec hl
    djnz Octet
   ret nc
    add hl, de
    inc (hl)
    dec c
    jr nz, Ligne


Ce code sera aussi rapide que ton seul "Horizontal -". Tu voulais un exemple de code plus simple à faire en assembleur qu'en axe à niveau d'optimisation égal, je te renvoie un code que j'ai fait en 30 secondes et bien plus optimisé, aussi bien en vitesse qu'en taille.

L'axe peut faire de telles opérations binaires, pour dépanner, mais il ne convient pas de les utiliser en telle masse car il n'est pas fait pour.
Image ImageImage
User avatar
mdr1Premium
Niveau 14: CI (Calculateur de l'Infini)
Niveau 14: CI (Calculateur de l'Infini)
Level up: 44%
 
Posts: 1083
Images: 12
Joined: 28 Mar 2011, 00:00
Gender: Not specified
Calculator(s):
MyCalcs profile
Class: Je voyage toujours en première.

Re: [TUTO][AXE] Nouvelle methode de scrolling d'image en axe

Unread postby Hayleia » 09 May 2013, 15:57

Certes, l'ASM est toujours (dès que le programme Axe dépasse un certain nombre de lignes) plus optimisé que l'Axe, mais il est aussi toujours plus difficile. Donc certes, toi tu as pondu ce code en 30 secondes, mais la personne lambda qui lira ce tuto sera bien contente d'arriver à scroller de manière inoptimisée ;)

Image
ImageImageImage
Pokemon Topaze (Axe) discussion and download links here
(19:29:36) noelnadal: plus sérieusemen​t, j'ai très peu de problèmes
(22:45:44) Clifward: J'aime rire du malheur des autres :troll:

(2017.11.18 - 17:07:12) Fireworks: Hayleia !!!!!
(2017.11.18 - 17:07:19) TI-Bot: Fireworks has been logged out (Kicked).
(2017.11.18 - 17:07:22) TI-Bot: Ban of user Fireworks revoked.
(2017.11.18 - 17:07:25) TI-Bot: Fireworks logs into the Chat.
(2017.11.18 - 17:07:28) Fireworks: <3
(2017.11.18 - 17:07:31) Fireworks: 208
User avatar
HayleiaGénéreux
Niveau 17: GM (Grand Maître des calculatrices)
Niveau 17: GM (Grand Maître des calculatrices)
Level up: 43.8%
 
Posts: 2509
Images: 2
Joined: 30 Aug 2011, 08:22
Gender: Not specified
Calculator(s):
MyCalcs profile
Class: Templar

Re: [TUTO][AXE] Nouvelle methode de scrolling d'image en axe

Unread postby mdr1 » 09 May 2013, 16:15

Ça fait très longtemps que j'avais pas codé ça en asm et je doute que nikitouzz et/ou matref, pros en axe, aient codé ça en 30 secondes. En plus, je ne me suis pas cassé la tête et n'ai vraiment pas cherché à optimiser. Pour le code asm que j'ai fait, il est aisément compréhensible pour un débutant car requiert peu de compétences tandis que celui en axe, il demande de connaitre Select, les bits et le ternaire. Le code axe a déjà un certain niveau de complexité tandis que celui en asm est trivial. Je ne crois pas que ce soit bon de favoriser des mauvais réflexes en axe.
Image ImageImage
User avatar
mdr1Premium
Niveau 14: CI (Calculateur de l'Infini)
Niveau 14: CI (Calculateur de l'Infini)
Level up: 44%
 
Posts: 1083
Images: 12
Joined: 28 Mar 2011, 00:00
Gender: Not specified
Calculator(s):
MyCalcs profile
Class: Je voyage toujours en première.

Re: [TUTO][AXE] Nouvelle methode de scrolling d'image en axe

Unread postby Hayleia » 09 May 2013, 16:39

Même sans te casser la tête, tant que c'est en ASM (et codé par quelqu'un d'autre que moi :P) c'est plus optimisé que de l'Axe ;)
Quant au code de nikitouzz, il ne requiert pas de connaître les Select. Je sais pas pourquoi il a mis des Select mais son code peut aussi s'écrire comme ça:

:0->r1
:for(12)
:{r1+L1}->{select(r1,+1->r1)+L6}
:End

devient

:~1->r1
:for(12)
:{r1+++L1}->{r1+L6}
:End

Quant à la trivialité de ton code, elle n'est pas établie puisque je comprends en gros ce que tu fais (avec ma compétence limitée avec laquelle j'ai codé un tilemapper) mais je ne comprends pas en détail.
Et tu dis que le code de nikitouzz a besoin de comprendre le ternaire, mais je pense pas puisque je comprends son code mais je sais pas ce qu'est le ternaire :quest:

Image
ImageImageImage
Pokemon Topaze (Axe) discussion and download links here
(19:29:36) noelnadal: plus sérieusemen​t, j'ai très peu de problèmes
(22:45:44) Clifward: J'aime rire du malheur des autres :troll:

(2017.11.18 - 17:07:12) Fireworks: Hayleia !!!!!
(2017.11.18 - 17:07:19) TI-Bot: Fireworks has been logged out (Kicked).
(2017.11.18 - 17:07:22) TI-Bot: Ban of user Fireworks revoked.
(2017.11.18 - 17:07:25) TI-Bot: Fireworks logs into the Chat.
(2017.11.18 - 17:07:28) Fireworks: <3
(2017.11.18 - 17:07:31) Fireworks: 208
User avatar
HayleiaGénéreux
Niveau 17: GM (Grand Maître des calculatrices)
Niveau 17: GM (Grand Maître des calculatrices)
Level up: 43.8%
 
Posts: 2509
Images: 2
Joined: 30 Aug 2011, 08:22
Gender: Not specified
Calculator(s):
MyCalcs profile
Class: Templar

Re: [TUTO][AXE] Nouvelle methode de scrolling d'image en axe

Unread postby mdr1 » 09 May 2013, 16:41

Hayleia wrote:Quant à la trivialité de ton code, elle n'est pas établie puisque je comprends en gros ce que tu fais (avec ma compétence limitée avec laquelle j'ai codé un tilemapper) mais je ne comprends pas en détail.

Je me serais attendu au contraire. Qu'est-ce que tu ne comprends pas ?

Hayleia wrote:Et tu dis que le code de nikitouzz a besoin de comprendre le ternaire, mais je pense pas puisque je comprends son code mais je sais pas ce qu'est le ternaire :quest:

Le ternaire, c'est le mignon petit point d'interrogation.
Image ImageImage
User avatar
mdr1Premium
Niveau 14: CI (Calculateur de l'Infini)
Niveau 14: CI (Calculateur de l'Infini)
Level up: 44%
 
Posts: 1083
Images: 12
Joined: 28 Mar 2011, 00:00
Gender: Not specified
Calculator(s):
MyCalcs profile
Class: Je voyage toujours en première.

Re: [TUTO][AXE] Nouvelle methode de scrolling d'image en axe

Unread postby Hayleia » 09 May 2013, 16:46

mdr1 wrote:
Hayleia wrote:Et tu dis que le code de nikitouzz a besoin de comprendre le ternaire, mais je pense pas puisque je comprends son code mais je sais pas ce qu'est le ternaire :quest:

Le ternaire, c'est le mignon petit point d'interrogation.

Ah ok :P

mdr1 wrote:
Hayleia wrote:Quant à la trivialité de ton code, elle n'est pas établie puisque je comprends en gros ce que tu fais (avec ma compétence limitée avec laquelle j'ai codé un tilemapper) mais je ne comprends pas en détail.

Je me serais attendu au contraire. Qu'est-ce que tu ne comprends pas ?

Ben je vois pas quand est-ce que c varie en fait -.-°
Ou alors il est pas censé varier ? J'avais cru comprendre qu'il devait parcourir les 64 lignes de l'écran donc décroître à un moment.

Image
ImageImageImage
Pokemon Topaze (Axe) discussion and download links here
(19:29:36) noelnadal: plus sérieusemen​t, j'ai très peu de problèmes
(22:45:44) Clifward: J'aime rire du malheur des autres :troll:

(2017.11.18 - 17:07:12) Fireworks: Hayleia !!!!!
(2017.11.18 - 17:07:19) TI-Bot: Fireworks has been logged out (Kicked).
(2017.11.18 - 17:07:22) TI-Bot: Ban of user Fireworks revoked.
(2017.11.18 - 17:07:25) TI-Bot: Fireworks logs into the Chat.
(2017.11.18 - 17:07:28) Fireworks: <3
(2017.11.18 - 17:07:31) Fireworks: 208
User avatar
HayleiaGénéreux
Niveau 17: GM (Grand Maître des calculatrices)
Niveau 17: GM (Grand Maître des calculatrices)
Level up: 43.8%
 
Posts: 2509
Images: 2
Joined: 30 Aug 2011, 08:22
Gender: Not specified
Calculator(s):
MyCalcs profile
Class: Templar

Re: [TUTO][AXE] Nouvelle methode de scrolling d'image en axe

Unread postby mdr1 » 09 May 2013, 16:48

Hayleia wrote:Ben je vois pas quand est-ce que c varie en fait -.-°
Ou alors il est pas censé varier ? J'avais cru comprendre qu'il devait parcourir les 64 lignes de l'écran donc décroître à un moment.

Le c varie lorsque tu fais descendre le gentil petit ascenseur prévu à cet effet. ;)
Image ImageImage
User avatar
mdr1Premium
Niveau 14: CI (Calculateur de l'Infini)
Niveau 14: CI (Calculateur de l'Infini)
Level up: 44%
 
Posts: 1083
Images: 12
Joined: 28 Mar 2011, 00:00
Gender: Not specified
Calculator(s):
MyCalcs profile
Class: Je voyage toujours en première.

Re: [TUTO][AXE] Nouvelle methode de scrolling d'image en axe

Unread postby Hayleia » 09 May 2013, 16:50

mdr1 wrote:
Hayleia wrote:Ben je vois pas quand est-ce que c varie en fait -.-°
Ou alors il est pas censé varier ? J'avais cru comprendre qu'il devait parcourir les 64 lignes de l'écran donc décroître à un moment.

Le c varie lorsque tu fais descendre le gentil petit ascenseur prévu à cet effet. ;)

Haha ! Lol, c'est pas faux :P
Bon, les cases code sont trop petites alors. Parce que ton code est quand même petit et il tient pas en un bloc :P

Image
ImageImageImage
Pokemon Topaze (Axe) discussion and download links here
(19:29:36) noelnadal: plus sérieusemen​t, j'ai très peu de problèmes
(22:45:44) Clifward: J'aime rire du malheur des autres :troll:

(2017.11.18 - 17:07:12) Fireworks: Hayleia !!!!!
(2017.11.18 - 17:07:19) TI-Bot: Fireworks has been logged out (Kicked).
(2017.11.18 - 17:07:22) TI-Bot: Ban of user Fireworks revoked.
(2017.11.18 - 17:07:25) TI-Bot: Fireworks logs into the Chat.
(2017.11.18 - 17:07:28) Fireworks: <3
(2017.11.18 - 17:07:31) Fireworks: 208
User avatar
HayleiaGénéreux
Niveau 17: GM (Grand Maître des calculatrices)
Niveau 17: GM (Grand Maître des calculatrices)
Level up: 43.8%
 
Posts: 2509
Images: 2
Joined: 30 Aug 2011, 08:22
Gender: Not specified
Calculator(s):
MyCalcs profile
Class: Templar

PreviousNext

Return to Tutoriaux

Who is online

Users browsing this forum: ClaudeBot [spider] and 3 guests

-
Search
-
Social TI-Planet
-
Featured topics
Comparaisons des meilleurs prix pour acheter sa calculatrice !
"1 calculatrice pour tous", le programme solidaire de Texas Instruments. Reçois gratuitement et sans aucune obligation d'achat, 5 calculatrices couleur programmables en Python à donner aux élèves les plus nécessiteux de ton lycée. Tu peux recevoir au choix 5 TI-82 Advanced Edition Python ou bien 5 TI-83 Premium CE Edition Python.
Enseignant(e), reçois gratuitement 1 exemplaire de test de la TI-82 Advanced Edition Python. À demander d'ici le 31 décembre 2024.
Aidez la communauté à documenter les révisions matérielles en listant vos calculatrices graphiques !
1234
-
Donations / Premium
For more contests, prizes, reviews, helping us pay the server and domains...
Donate
Discover the the advantages of a donor account !
JoinRejoignez the donors and/or premium!les donateurs et/ou premium !


Partner and ad
Notre partenaire Jarrety Calculatrices à acheter chez Calcuso
-
Stats.
892 utilisateurs:
>878 invités
>8 membres
>6 robots
Record simultané (sur 6 mois):
6892 utilisateurs (le 07/06/2017)
-
Other interesting websites
Texas Instruments Education
Global | France
 (English / Français)
Banque de programmes TI
ticalc.org
 (English)
La communauté TI-82
tout82.free.fr
 (Français)