π
<-

[JEU] BOOST sur ta TI (tunnel 3D)

Assembleur, Axe, C/C++, ICE...

Re: [JEU] BOOST sur ta TI (tunnel 3D)

Unread postby TheMachine02 » 23 Jun 2015, 17:25

Bien, bien ... ;)

Quelques optimisations : (untested, as ever)
Code: Select all
Lbl POLY

POLY*20+L₁+30
→F
Copy(F,L₃,4)
Copy(F+10,L₃+4,4)


Lbl SORT
For(4)ʳ
L₃→r₁
For(3)ʳ
If sign{r₁+1}-sign{r₁+3}>>0
Exch(r₁,r₁+2,2)
End
r₁+2→r₁
End
End

//les points sont rangés par y croissant

//détéction du cas particulier: les points 2 et 3 sont du même côté de la droite passant par les points 1 et 4
sign{L₃+6}-sign{L₃}→r₂
sign{L₃+7}-sign{L₃+1}→r₁

r₁*sign{L₃}-(r₂*sign{L₃+1})→r₃
//calcul de l'équation carthésienne de cette droite, de la forme R1*X-R2*Y-R3=0
r₁*sign{L₃+2}-(r₂*sign{L₃+3})-r₃>>0→r₄ //test pour le point 2
r₁*sign{L₃+4}-(r₂*sign{L₃+5})-r₃>>0+r₄→r₄ //test pour le point 3


r₄-1??0,12 //cas standard ou cas particulier
→r₆
If
If sign{L₃+3}-sign{L₃+5}>>0
Exch(L₃+2,L₃+4,2)
End
End

r₆+GDB1POLY→r₆+2→r₅

L₃+8→r₂
For(8)ʳ //je range dans L3+8 quel point doit être relié à quel autre

{{r₆}+L₃}ʳ→{r₂}ʳ
{{r₆+1}+L₃}ʳ→{r₂+2}ʳ

r₆+3→r₆
r₂+4→r₂
End


Lbl RECTLINE //le calcul des coordonnées de tous mes points
//zone d’optimisation
L₃+4
For(4)ʳ
+4→r₆

sign{+2}-sign{r₆}*256//(sign{r₆+3}-sign{r₆+1}→DY)→DELTA

If DY
sign{r₆+1}*2+{r₅+3→r₅}+L₃+255→r₂
sign{r₆}*256→r₁
For(DY)ʳ
Select(,/256→{r₂}+2→r₂)+DELTA //optimisation x2 :p
End
End

r₆
End

sign{L₃+1}→r₁*2+L₃+253→r₂

For(sign{L₃+7}-sign{L₃+1})ʳ
HLine(r₁++,sign{r₂+2→r₂},sign{r₂+1}) //je trace enfin mes lignes
End
User avatar
TheMachine02Modo
Niveau 16: CC2 (Commandeur des Calculatrices)
Niveau 16: CC2 (Commandeur des Calculatrices)
Level up: 30%
 
Posts: 342
Images: 0
Joined: 16 Jan 2013, 18:27
Gender: Not specified
Calculator(s):
MyCalcs profile
Class: Médecine

Re: [JEU] BOOST sur ta TI (tunnel 3D)

Unread postby Plokki » 23 Jun 2015, 18:35

La ligne optimisationx2 ne marche pas, la valeur n'est pas renvoyée quand la boucle recommence. je pense que c'est à cause du DY qui est une variable et pas un nombre comme pour le For(4) qui lui marche normalement (le R6 est bien renvoyé au début).
User avatar
Plokki
Niveau 8: ER (Espèce Rare: nerd)
Niveau 8: ER (Espèce Rare: nerd)
Level up: 40.6%
 
Posts: 124
Joined: 02 Sep 2014, 15:15
Location: Près de... ah bah non !
Gender: Male
Calculator(s):
MyCalcs profile
Class: T°S-spé math

Re: [JEU] BOOST sur ta TI (tunnel 3D)

Unread postby Hayleia » 23 Jun 2015, 20:57

Je viens de tester, et je confirme que la boucle For(DY)r ne pose pas de problèmes. DY est bien chargé dans b comme une valeur 8 bit (grâce au r) et le For est un simple djnz. S'il y a un problème, il ne vient pas de l'utilisation du For donc.
(testé avec Axe 1.3.0)

edit je viens de comprendre. Tu parlais pas de la boucle en elle même mais de ce qu'il se passait juste avant. Oui, effectivement, ça a des chances de ne pas marcher à cause de DY puisque celui-ci, avant d'aller dans b, va dans hl, là où r1 (celui qui t'intéresse) se trouve...

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: [JEU] BOOST sur ta TI (tunnel 3D)

Unread postby Plokki » 23 Jun 2015, 21:48

Axe 1.3.0 ? Il y a des bugs connus/dangereux ou je peux utiliser sans risque ? Parce que j'ai vu la vitesse pour compiler et ça m'intéresse :)
User avatar
Plokki
Niveau 8: ER (Espèce Rare: nerd)
Niveau 8: ER (Espèce Rare: nerd)
Level up: 40.6%
 
Posts: 124
Joined: 02 Sep 2014, 15:15
Location: Près de... ah bah non !
Gender: Male
Calculator(s):
MyCalcs profile
Class: T°S-spé math

Re: [JEU] BOOST sur ta TI (tunnel 3D)

Unread postby TheMachine02 » 24 Jun 2015, 08:24

Plokki wrote:Axe 1.3.0 ? Il y a des bugs connus/dangereux ou je peux utiliser sans risque ? Parce que j'ai vu la vitesse pour compiler et ça m'intéresse :)


J'en ai pas encore trouvé tout du moins :D Et effectivement la vitesse est folle (et je parle même pas sur Ti84+, c'est ridiculement rapide XD)

Concernant l'optimisation, ben effectivement c'est une opti-fail. Si tu veux je peux bourriner en asm, mais bon, c'est moins bien :D
J'avais juste oublié que ce For là, pour la première itération modifie hl, car ça fait:

Code: Select all
ld hl, (DY)
ld b, l
Loop:
push bc
;;code
pop bc
djnz Loop


Mais si tu veux, ça :
Code: Select all
sign{r₆+1}*2+{r₅+3→r₅}+L₃+255→r₂
sign{r₆}*256→r₁
For(DY)ʳ
Select(r₁,/256→{r₂}+2→r₂)+DELTA→r₁ //optimisation x2 :p
End

ben, y'a moyen de le faire bien plus rapidement en asm.

EDIT : en plus y'a un dual fail, car
Code: Select all
sign{r₆+1}*2+{r₅+3→r₅}+L₃+255→r₂

doit être en dehors du If XD
User avatar
TheMachine02Modo
Niveau 16: CC2 (Commandeur des Calculatrices)
Niveau 16: CC2 (Commandeur des Calculatrices)
Level up: 30%
 
Posts: 342
Images: 0
Joined: 16 Jan 2013, 18:27
Gender: Not specified
Calculator(s):
MyCalcs profile
Class: Médecine

Re: [JEU] BOOST sur ta TI (tunnel 3D)

Unread postby Plokki » 24 Jun 2015, 15:54

Celui là de fail je l'avais aussi calé mais je l'avais pas relevé, je pensais à une erreur d'inattention de ta part :p
Seul
Code: Select all
R5+3→R5
doit être en dehors du if
Sinon pour l'asm je suis pas chaud, j'en ai jamais fait :?
User avatar
Plokki
Niveau 8: ER (Espèce Rare: nerd)
Niveau 8: ER (Espèce Rare: nerd)
Level up: 40.6%
 
Posts: 124
Joined: 02 Sep 2014, 15:15
Location: Près de... ah bah non !
Gender: Male
Calculator(s):
MyCalcs profile
Class: T°S-spé math

Re: [JEU] BOOST sur ta TI (tunnel 3D)

Unread postby TheMachine02 » 24 Jun 2015, 15:56

Bah je peux t'en faire un petit peu si tu veux :D

EDIT :
Code: Select all
sign{r₆+1}*2+{r₅+3→r₅}+L₃+255
Asm(E5) // push hl
sign{r₆}*256
Asm(C1) // pop bc
// bc = r2, hl =r1
Asm(ED5B(°DELTA))
// ld de, (°DELTA)
Asm(3A(°DY))
// ld a, (DY)
Asm(DD6F)
// ld ixl, a
Lbl DeltaLoop
Asm(7C020303)
// ld a, h \ ld (bc), a \ inc bc \ inc bc
Asm(19)
// add hl, de
Asm(DD2D)
// dec ixl
Asm(C2(lDeltaLoop))
// le petit l pour récuperer l'adresse



Normalement, ça devrait fonctionner, mais ATTENTION et je dis bien ATTENTION, je te conseille fortement de le tester sur un émulateur d'abord, dès fois que j'aurais fais une erreur bête 0:] (et puis, je suis plus sûr de comment le parser va introduire les adresses XD) . (Ou alors tu m'envoie ton code actuel et je teste :p ).
User avatar
TheMachine02Modo
Niveau 16: CC2 (Commandeur des Calculatrices)
Niveau 16: CC2 (Commandeur des Calculatrices)
Level up: 30%
 
Posts: 342
Images: 0
Joined: 16 Jan 2013, 18:27
Gender: Not specified
Calculator(s):
MyCalcs profile
Class: Médecine

Re: [JEU] BOOST sur ta TI (tunnel 3D)

Unread postby Hayleia » 24 Jun 2015, 20:45

Plokki wrote:Axe 1.3.0 ? Il y a des bugs connus/dangereux ou je peux utiliser sans risque ? Parce que j'ai vu la vitesse pour compiler et ça m'intéresse :)

Je sais pas. Je l'ai pris de toute façon (pour la vitesse comme tout le monde mais aussi) parce que ça faisait pas très sérieux de compiler Smash avec des versions non officielles d'Axe (essaie avec la dernière version officielle avant 1.3.0, tu verras que ça compile pas :P). Même si la 1.3.0 n'est pas encore totalement officielle...

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: [JEU] BOOST sur ta TI (tunnel 3D)

Unread postby Plokki » 25 Jun 2015, 16:51

J'ai mis en ligne une version bêta avec le code source joint (Theta_BOOST). Je te laisse prendre les risques pour les manipulations asm :p http://tiplanet.org/forum/archives_voir.php?id=279466

Pour le moment Il y a 3 types d'obstacles générés aléatoirement, des poutrelles seules et des hélices allant dans les deux sens. La vitesse augmente au fur et à mesure qu'on avance (vu qu'il n'y a pas encore les boosts :| ), le jeu quitte quand on perd.

Effectivement j'ai testé et l'Axe 1.3 compile vraiment vite :#fou#:
Par contre le backup automatique ne fonctionne pas.
User avatar
Plokki
Niveau 8: ER (Espèce Rare: nerd)
Niveau 8: ER (Espèce Rare: nerd)
Level up: 40.6%
 
Posts: 124
Joined: 02 Sep 2014, 15:15
Location: Près de... ah bah non !
Gender: Male
Calculator(s):
MyCalcs profile
Class: T°S-spé math

Re: [JEU] BOOST sur ta TI (tunnel 3D)

Unread postby Epharius » 25 Jun 2015, 16:54

Yeah il est cool, c'est vachement rapide ! C'est juste un peu bizarre quand les poutres disparaissent (c'est immediat). Faudrait peut etre les faire monter petit a petit vers le haut... Enfin c'est toi qui voit :p
Le projet Geometry Dash est terminé ! N'hésitez pas à aller jeter un coup d’œil au topic du projet ! Vous pouvez le télécharger ici.

Unis par la flèche sacrée de cupidon :favorite:
Image
User avatar
EphariusPremium
Niveau 16: CC2 (Commandeur des Calculatrices)
Niveau 16: CC2 (Commandeur des Calculatrices)
Level up: 8.9%
 
Posts: 1182
Images: 4
Joined: 08 Dec 2014, 17:38
Gender: Not specified
Calculator(s):
MyCalcs profile
Class: Ensimag
GitHub: MathisLav

PreviousNext

Return to Langages alternatifs

Who is online

Users browsing this forum: ClaudeBot [spider] and 80 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.
1403 utilisateurs:
>1343 invités
>54 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)