Derniers sujets | » Numbers par Ver2guerre Dim 02 Avr 2023, 00:47
» Mort ? par godbod Dim 22 Aoû 2021, 12:23
» Network, essai 1 par godbod Dim 09 Juil 2017, 02:18
» GODBOD par godbod Sam 08 Juil 2017, 14:05
» mon humeur par Ver2guerre Sam 30 Juil 2016, 19:44
» [A voir] Programme de traduction original : WikiTranslate par AdRiWeB Lun 01 Fév 2016, 04:50
» Reprise ? par Emyl Jeu 14 Juin 2012, 21:17
» Euh, ah ? par Ver2guerre Dim 27 Mai 2012, 12:11
» Problème TI 89 Titanium non visible après mise à jour par abdoukid Mer 23 Mai 2012, 13:37
» Y'a quelqu'un ? par Ver2guerre Sam 21 Avr 2012, 23:10
|
Qui est en ligne ? | Il y a en tout 16 utilisateurs en ligne :: 0 Enregistré, 0 Invisible et 16 Invités Aucun Le record du nombre d'utilisateurs en ligne est de 367 le Dim 18 Oct 2009, 00:16 |
| | Auteur | Message |
---|
tama Admin
Nombre de messages : 12376 Age : 32 Localisation : DTC ? :triso: Humeur : =) items : o Personalized field : huh ? oO Réputation : 3 Points : 9434 Date d'inscription : 08/08/2007
Profil TI: 84+, 89 tita, 89 tita TO: infini :p Spécialité: C 68k
| Sujet: Utiles Sam 24 Nov 2007, 16:50 | |
| Quelques trucs utiles pour les possesseurs de TI83+/TI84+ : scroller l'écran pour les nuls :)
- Créer un nouveau programme
- Sur la première ligne, mettre AsmPrgm (cette instruction se trouve dans le catalogue)
- La suite, c'est une chaine héxadécimale
Scroller une partie de l'écran à droite :
2140930E xx060CB7CB1E2310FB0D20F5EF6A48C9 Remplacer xx par le nombre de lignes à "scroller" à partir du haut en héxadécimal (entre 0 et 40) Scroller une partie de l'écran à gauche :
213F960E xx060CB7CB162B10FB0D20F5EF6A48C9 Pareil que précédemment, remplacer xx par le nombre de lignes à "scroller" Cette fois à partir du basScroller une partie de l'écran en haut :
214C9311409301 yyyyEDB0EB010C00EF304CEF6A48C9 Nombre de lignes à partir du hautAlors là, c'est plus compliqué pour yyyy: On va prendre n pour le nombre de lignes
- Multiplier n par 12
- Convertir le résultat en héxadécimal
- Inverser l'ordre des octets : par exemple 02F416 (75610) devient F402
Prenons un exemple, pour 50 lignes :
- 50*12=600
- 60010 = 025816
- Résultat final pour yyyy : 5802
Le code pour scroller 50 lignes est donc : 214C9311409301 5802EDB0EB010C00EF304CEF6A48C9 Scroller une partie de l'écran en bas :
213396113F9601 yyyyEDB823010C00EF304CEF6A48C9 Même principe que précedemment pour yyyyNombre de lignes à partir du basUn exemple pour illustrer tout ça prgmCREDIT - Code:
-
ClrDraw AxesOff 0->Xmin 94->Xmax 0->Ymin 62->Ymax Text(57,0,"(c)Tama 2007 For(T,0,94 For(Z,0,5 Pt-Change(T,Z End End "ExempleUn exemple de creditsCode : TamaGraphismes: TamaEn basic ''pur''Pas mal hein :pSuper l'assembleur :)Surtout pour les prgmEncore une ligneEt encore uneEt voila la fin :)C'etait la ptite demodu scroll en partie (c)Tama 2007->Str1 {1,7,8,21,29,11,40,16,56,16,72,15,87,21,108,18,126,16,142,13,155,18,173,21,194,19,213,1,214,1,215,1,216,12->L1 50->C 1->L While 2L-1 If not(fPart((C+4)/6 Then Text(C+6L-6,0,sub(Str1,L(2L-1),L(2L L+1->L End For(Z,1,15 End Asm(prgmSCRLUP C-1->C End Pause ClrDraw
Commentaires :
Rien de compliqué, d'abord on affiche "(c) Tama 2007" tout en bas de l'écran, puis on change l'état de tous les pixels des dernières lignes (Pt-Change) Après c'est la chaine contenant tout le texte mis à la suite et on affiche ce qu'on veut, quand on veut, où on veut :) Pour ceux qui ont besoin de plus de précisions, bah demandez :) Ah oui, la liste 1 c'est simple, faut la séparer en groupes de 2 : début de la chaine à afficher, nombre de caractères à afficher... prgmSCRLUP - Code:
-
AsmPrgm 214C9311409301A002EDB0EB010C00EF304CEF6A48C9
Commentaires :
Bah j'ai juste appliqué ce que j'avais marqué plus haut :) A002 => 56 lignes : 56*12=672 672 10 => (0)2A0 16"A l'envers" => A002 Capture d'écran : WabbitEmu (TI83+ OS 1.12) Ah oui, et aussi si vous préférez avoir un "vrai" programme ASM, et non une chaine héxa, utilisez "AsmComp( in, out)"
- In -> programme contenant la chaine héxa
- Out -> nom du programme ASM
Bon et enfin, je précise que je ne suis pas responsable d'un éventuel crash de la TI, et que ça ne marche que sur 83+/84+. Voilà maintenant bon codage :) En attendant, le programme CREDITS : >>Par ici<<EDIT : corrigé une faute EDIT : mis la bonne image EDIT : ajouté des précisionsEDIT : ajouté un lien pour télécharger les programmes
Dernière édition par le Sam 24 Nov 2007, 19:41, édité 5 fois |
| | | ProgVal modérateur
Nombre de messages : 4107 Age : 173 Localisation : In da cloud items : o Personalized field : Réputation : -4 Points : 6715 Date d'inscription : 09/08/2007
Profil TI: V200 - NSpire TO: 120 [2352 - 2%] Spécialité: Programmation web
| Sujet: Re: Utiles Sam 24 Nov 2007, 18:48 | |
| T'as pu qu'a nous trouver ça pour 68k! |
| | | tama Admin
Nombre de messages : 12376 Age : 32 Localisation : DTC ? :triso: Humeur : =) items : o Personalized field : huh ? oO Réputation : 3 Points : 9434 Date d'inscription : 08/08/2007
Profil TI: 84+, 89 tita, 89 tita TO: infini :p Spécialité: C 68k
| Sujet: Re: Utiles Sam 24 Nov 2007, 19:04 | |
| [mode chieur]T'avais qu'à acheter une 83+/84+ :p[/mode chieur]
Pour les 68k, y a une fonction en C mais je m'en souviens plus de son nom |
| | | tama Admin
Nombre de messages : 12376 Age : 32 Localisation : DTC ? :triso: Humeur : =) items : o Personalized field : huh ? oO Réputation : 3 Points : 9434 Date d'inscription : 08/08/2007
Profil TI: 84+, 89 tita, 89 tita TO: infini :p Spécialité: C 68k
| Sujet: Re: Utiles Sam 24 Nov 2007, 19:39 | |
| Une ébauche de jeu d'hélico, faite en 5' (véridique :)) prgmHELICO - Code:
-
ClrDraw AxesOff 0->Xmin 94->Xmax 0->Ymin 62->Ymax For(Z,0,94 Line(Z,6,Z,randInt(6,21 Line(Z,62,Z,randInt(47,62 If 5>randInt(0,100 Line(Z,randInt(25,43),Z,randInt(25,43 End 0->B 34->C 0->S 3->V 0->K Pt-On(B,C While V getKey->K Text(57,0,"Vie(s):",V," Score :",S S+1->S B+1->B C-.5->C If K=25 C+1->C Pt-On(B,C If B>=94 Then Line(94,6,94,randInt(6,21 Line(94,62,94,randInt(47,62 If 10>randInt(0,100 Line(Z,randInt(25,43),Z,randInt(25,43 Asm(prgmSCRLLFT B-1->B End End ClrHome Disp "Score: Output(1,11,S
Commentaires :
Rien de compliqué... prgmSCRLLFT - Code:
-
AsmPrgm 21F7950E38060CB7CB162B10FB0D20F5EF6A48C9
Commentaires :
- 21F795 : dans le 1er post, j'ai mis 213F96...Seulement je veux conserver les 6 dernières lignes :
Pour les programmeurs ASM : 3F96 -> plotsscreen+767 -> 9340h+767
ou 38463 en décimal Je retire les 6 dernières lignes, soit 72 octets : ->38463-72=38391 -> 95F7 en héxadécimal "à l'envers" : F795
Le reste n'est qu'une bête application du 1er post :) Reste à faire :
- Tracer des lignes aléatoirement au milieu de l'écran
- Gestion des collisions
(désolé pour l'image, elle est un peu petite (96x64)) Téléchargement : >>Par ici<< |
| | | Contenu sponsorisé
| Sujet: Re: Utiles | |
| |
| | | |
Page 1 sur 1 | |
| Permission de ce forum: | Vous ne pouvez pas répondre aux sujets dans ce forum
| |
| |
|
|