π
<-

MEGR dessin 2.0.2 (Axe parser)

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

MEGR dessin 2.0.2 (Axe parser)

Unread postby kindermoumoute » 28 May 2010, 19:18

Voici MEGR2.0 dessin fait en Axe parser, celle ci est 9 fois plus rapide que le crayon de base 2nd=>Draw=>A (je vous laisse en juger par vous même).


- Fonctions de dessins :
* Dessiner des rectangles noir, blanc, ou qui inverse les pixels
* Dessiner des cercles.
* Ecrire du texte sur l'écran.
* Effacer l'écran.
* Enregistrer l'écran dans 9 Pic de la calculatrice (Pic1 à Pic9), qui sont donc réutilisable dans n'importe quel programme TI-Basic, Axe ou autre.
* 3 vitesse pour le crayon (oui c'est trop rapide quand on le laisse au maximum, donc je met des pause pour que ce soit plus agréable à utiliser en fonction des besoins).


- Fonctions du menu principale :
* On peut regarder 2 images en même temps pour faire apparaître 3 niveaux de couleurs.
* On peut regarder, supprimer et modifier n'importe quel image enregistrer entre Pic1-Pic9.

A venir :
- Refonte total de l'interface (menu..etc).



Touches :
menu principale :
2nd == nouveau dessin : mène aux options de dessins.

1 == voir image : sélectionner l'image avec les touches 1 à 9, puis appuyez sur entrer pour revenir au menu principale.

2 == modifier une image : sélectionner l'image avec les touches 1 à 9, ensuite allé aux options de dessins.

3 == Voir 3 degré de couleurs à partir de 2 images (comme pour "voir image", sauf que il faut faire la manip 2 fois pour a appeler la deuxième image).

4 == Supprimer image : sélectionner l'image avec les touches 1 à 9, puis l'image est supprimé et l'on revient au menu.

Clear == quitter



Options de dessins:

ALPHA == retourner au menu principale

Laissez 2nd enfoncé pour déssiner (noir).
Laissez Del enfoncé pour gommer (blanc).
Les flèches = bouger le curseur.
math = vitesse maximal (sans pause).
Apps = pause de 50 millisecondes dans la boucle.
Prgm = pause de 100 millisecondes dans la boucle.
Vars = pause de 200 millisecondes dans la boucle.
1 = Sauver l'écran dans la variable Pic1.
2 = Sauver l'écran dans la variable Pic2.
3 = Sauver l'écran dans la variable Pic3.
4 = Sauver l'écran dans la variable Pic4.
5 = Sauver l'écran dans la variable Pic5.
6 = Sauver l'écran dans la variable Pic6.
7 = Sauver l'écran dans la variable Pic7.
8 = Sauver l'écran dans la variable Pic8.
9 = Sauver l'écran dans la variable Pic9.
Clear = effacer écran.

+ == insérer texte, la police de base est en minuscule sans inversion de couleur, pour la modifier il faut appuyer sur alpha :
1 fois = minuscule inversé.
2 fois = Grande police normal.
3 fois = Grande police inversé.
4 fois = revient à minuscule normal.
Une fois que vous avez fini de taper votre texte, appuyez sur entrer.

Laissez Del+F1 enfoncé pour faire le rectangle vide (blanc) ; Note vous pouvez relâcher la touche Del une fois que le curseur a disparu.
Laissez F1 enfoncé pour faire le rectangle plein (noir).
Laissez F2 enfoncé pour faire le rectangle inversé.
Laissez F3 enfoncé pour faire un cercle, ensuite utilisez les flèches gauche et droite pour la taille.


Lien de téléchargement :
ICI


Source :
 
Show/Hide spoilerAfficher/Masquer le spoiler
Code: Select all
:.MEGR2.0
:[C0A0502C160B0702→Pic1
:"Pic1→Str1
:"Pic2
:[00]
:"Pic3
:[00]
:"Pic4
:[00]
:"Pic5
:[00]
:"Pic6
:[00]
:"Pic7
:[00]
:"Pic8
:[00]
:"Pic9
:[00]
:":PIC →Str14
:"MEGR2.0 DRAW :→Str15
:"2ND:NEW→Str16
:"1:LOOK→Str17
:"2:CHANGE→Str18
:"3:LOOK GRAYSCALE→Str19
:"4:DELETE→Str20
:"CLR:QUIT→Str21
:0→Q→F→E→R→G→W→H→K
:1→I→T
:31→X+16→Y
:0→H→W
:ClrHome
:ClrDraw
:ClrDrawsupr/sup
:Repeat getKey(15)
:Text(0,0,Str15
:Text(0,14,Str16
:Text(0,21,Str17
:Text(0,28,Str18
:Text(0,35,Str19
:Text(0,42,Str20
:Text(0,49,Str21
:If getKey(34) or getKey(26) or getKey(18) or getKey(35) or getKey(54)
:If getKey(54)
:sub(A
:End
:If getKey(34)
:1→G
:sub(M
:If M
:0→M
:sub(B
:End
:End
:If getKey(26)
:1→G→Q
:sub(M
:If M
:0→M
:sub(B
:End
:End
:If getKey(18)
:1→K
:sub(M
:If M
:0→M
:sub(B
:End
:End
:If getKey(35)
:sub(M
:If M
:0→M
:DelVar Str1+I
:ClrHome
:Text(0,0,"DELETED PIC",((I/4)+1)►Dec)
:Repeat getKey(9)
:End
:End
:End
:ClrDrawsupr/sup
:ClrDraw
:ClrHome
:End
:End
:Return
:
:Lbl B
:GetCalc(Str1+I)→R
:R→DispGraph
:StoreGDB
:Archive Str1+I
:1→I
:!If G
:StorePic
:1→G
:Repeat getKey(9)
:End
:sub(M
:If M
:0→M
:Goto B
:End
:End
:!If Q
:Repeat getKey(9)
:If K
:DispGraphsupr/sup
:End
:End
:0→G→Q→K
:Return
:Else
:ClrHome
:0→G→Q→K
:End
:
:Lbl A
:Pause 500
:Repeat getKey(48)
:Pt-Change(X,Y,Pic1)
:DispGraph
:Pt-Change(X,Y,Pic1)
:If getKey(54)
:Pxl-On(X,Y)
:End
:If getKey(56)
:Pxl-Off(X,Y)
:End
:sub(I
:If I≠1
:If M
:0→M
:DelVar Str1+I
:End
:DispGraph
:StoreGDB
:GetCalc(Str1+I,768)→A
:conj(Lsub6/sub,A,768)
:Archive Str1+I
:1→I
:End
:If getKey(10)
:DispGraph
:sub(IN)
:End
:If getKey(51)
:sub(CI)
:End
:If getKey(53) or getKey(52)
:If getKey(53)
:1→R
:End
:If getKey(53) and getKey(56)
:2→R
:End
:While getKey(53) or getKey(52)
:sub(R
:End
:If R
:ref(X,Y,W,H)
:Else
:rref(X,Y,W,H)
:End
:If R=2
:rref(X,Y,W,H)
:End
:0→W→H→R
:End
:If getKey(15)
:ClrHome
:ClrDraw
:End
:sub(T
:If getKey(1) and (Y≠63
:Y+1→Y
:End
:If getKey(2) and (X≠0
:X-1→X
:End
:If getKey(3) and (X≠95
:X+1→X
:End
:If getKey(4) and (Y≠0
:Y-1→Y
:End
:End
:
:Lbl R
:StorePic
:If R
:ref(X,Y,W,H)supr/sup
:Else
:rref(X,Y,W,H)supr/sup
:End
:DispGraphsupr/sup
:ClrDrawsupr/sup
:sub(T
:If getKey(1) and ((H+Y)≠64
:H+1→H
:End
:If getKey(2) and (W≠0
:W-1→W
:End
:If getKey(3) and ((X+W)≠96
:W+1→W
:End
:If getKey(4) and (H≠0
:H-1→H
:End
:Return
:
:Lbl CI
:ClrDrawsupr/sup
:StorePic
:0→R
:While getKey(51)
:Circle(X,Y,R)
:DispGraphsupr/sup
:ClrDraw
:sub(T
:If getKey(2) and (R≠0
:R-1→R
:End
:If getKey(3)
:R+1→R
:End
:End
:RecallPic
:If R
:Circle(X,Y,R)
:End
:DispGraph
:0→R
:Return
:
:Lbl IN
:X→A
:Y→B
:0→F
:"WRMH"→GDB5
:det(3)
:"VQLG"
:det(3)
:"ZUPKFC"
:det(1)
:" YTOJEB"
:det(2)
:"XSNIDA"
:Repeat C=9
:getKey→C
:If C=48
:F+1→F
:If F=4
:0→F
:End
:!If F
:Fix 2
:Fix 0
:End
:If F=1
:Fix 3
:End
:If F=2
:Fix 1
:Fix 2
:End
:If F=3
:Fix 3
:End
:End
:If A≠96
:If C10 and (C48)
:If {C+GDB5-11}→D
:Text(A,B,D►Frac
:A+5→A
:End
:End
:End
:End
:StoreGDB
:0→A→B→C→D→F
:Fix 0
:Fix 2
:Return
:
:Lbl T
:If getKey(47)
:1→T
:End
:If getKey(39)
:50→T
:End
:If getKey(31)
:100→T
:End
:If getKey(23)
:200→T
:End
:Pause T
:Return
:
:Lbl M
:ClrHome
:Repeat E=9
:E+1→E
:F+6→F
:Text(0,F,E►Dec,Str14,E►Dec
:End
:0→E→F
:Repeat I≠1
:sub(I
:End
:
:Lbl I
:If getKey(34)
:0→I
:End
:If getKey(26)
:4→I
:End
:If getKey(18)
:8→I
:End
:If getKey(35)
:12→I
:End
:If getKey(27)
:16→I
:End
:If getKey(19)
:20→I
:End
:If getKey(36)
:24→I
:End
:If getKey(28)
:28→I
:End
:If getKey(20)
:32→I
:End
:UnArchive Str1+I
:If GetCalc(Str1+I)
:1→M
:End


Un petit screen :
Image
Tutoriel sur l'axe parser, un langage de programmation pour z80 ultra rapide et beaucoup plus facile que l'ASM !
User avatar
kindermoumouteProgrammeur
Niveau 14: CI (Calculateur de l'Infini)
Niveau 14: CI (Calculateur de l'Infini)
Level up: 2.6%
 
Posts: 849
Joined: 30 Sep 2009, 00:00
Gender: Male
Calculator(s):
MyCalcs profile
Class: Ecole d'ingénieur informatique et industriel

Re: MEGR dessin 2.0.2 (Axe parser)

Unread postby kindermoumoute » 29 May 2010, 10:24

Pour l'instant on déplace avec les flèches directionnelles, on dessine en laissant appuyer 2nd, ça gomme automatiquement quand cette touche n'est pas pressé, et il y a 4 cran de vitesse (MATH = normal (le plus rapide), APPS = pause de 50ms dans la boucle (un peu moins rapide), PRGM = pause de 100ms (encore moins rapide), VARS = pause de 200ms (le plus lent)), on enregistre en appuyant sur la touche 1 (après on pourra appuyer sur la touche 2 pour enregistrer dans l'image 2, touche 3 pour l'image 3.. etc), alpha pour retourner au menu, et dans le menu Clear pour quitter.
Tutoriel sur l'axe parser, un langage de programmation pour z80 ultra rapide et beaucoup plus facile que l'ASM !
User avatar
kindermoumouteProgrammeur
Niveau 14: CI (Calculateur de l'Infini)
Niveau 14: CI (Calculateur de l'Infini)
Level up: 2.6%
 
Posts: 849
Joined: 30 Sep 2009, 00:00
Gender: Male
Calculator(s):
MyCalcs profile
Class: Ecole d'ingénieur informatique et industriel

Re: MEGR dessin 2.0.2 (Axe parser)

Unread postby Kiligolo » 29 May 2010, 10:54

Bravo!!! :#top#:
User avatar
Kiligolo
Niveau 11: LV (Légende Vivante)
Niveau 11: LV (Légende Vivante)
Level up: 84.3%
 
Posts: 1465
Joined: 17 May 2010, 00:00
Gender: Male
Calculator(s):
MyCalcs profile
Class: 1reS

Re: MEGR dessin 2.0.2 (Axe parser)

Unread postby kindermoumoute » 12 Sep 2010, 18:02

Mise à jour, tout est indiqué dans mon premier post, sauf un truc, lors de la compilation j'ai pris le fichier anglais.. donc pas de "nouveau" mais plutôt "new" ^^'


EDIT : si un modo pouvait rajouter ça à la BDD de TI-BANK, je mettrais éventuellement à jour pour de prochaine version, merci.
Tutoriel sur l'axe parser, un langage de programmation pour z80 ultra rapide et beaucoup plus facile que l'ASM !
User avatar
kindermoumouteProgrammeur
Niveau 14: CI (Calculateur de l'Infini)
Niveau 14: CI (Calculateur de l'Infini)
Level up: 2.6%
 
Posts: 849
Joined: 30 Sep 2009, 00:00
Gender: Male
Calculator(s):
MyCalcs profile
Class: Ecole d'ingénieur informatique et industriel

Re: MEGR dessin 2.0.2 (Axe parser)

Unread postby kindermoumoute » 12 Sep 2010, 21:34

Désolé je corrige un bug (les programmes ici crashait au démarrage ^^).
Tutoriel sur l'axe parser, un langage de programmation pour z80 ultra rapide et beaucoup plus facile que l'ASM !
User avatar
kindermoumouteProgrammeur
Niveau 14: CI (Calculateur de l'Infini)
Niveau 14: CI (Calculateur de l'Infini)
Level up: 2.6%
 
Posts: 849
Joined: 30 Sep 2009, 00:00
Gender: Male
Calculator(s):
MyCalcs profile
Class: Ecole d'ingénieur informatique et industriel

Re: MEGR dessin 2.0.2 (Axe parser)

Unread postby kindermoumoute » 15 Sep 2010, 14:31

Mise à jour!!
Correction de quelques beaucoup de bug, rajout de 3 fonction :
- Dessiner un rectangle plein (comme un cliqué glissé).
- Dessiner un rectangle inversé (inverse les couleur dans le rectangle, et se fait également comme un cliqué glissé).
- Effacer l'écran.


J'ai mit dans le dossier la source, et les exécutable pour Ion, Mirage OS, doors CS, sans shell, et sous forme d'application.
Tutoriel sur l'axe parser, un langage de programmation pour z80 ultra rapide et beaucoup plus facile que l'ASM !
User avatar
kindermoumouteProgrammeur
Niveau 14: CI (Calculateur de l'Infini)
Niveau 14: CI (Calculateur de l'Infini)
Level up: 2.6%
 
Posts: 849
Joined: 30 Sep 2009, 00:00
Gender: Male
Calculator(s):
MyCalcs profile
Class: Ecole d'ingénieur informatique et industriel

Re: MEGR dessin 2.0.2 (Axe parser)

Unread postby Loulou 54 » 29 Sep 2010, 16:20

Claasse !

Tu pourrais faire aussi des trucs du genre :
* Ouvrir une image et la positionner avec le curseur
* Différentes fonctions comme rotation, symétrie, grossir...
* Enregistrer une partie de l'écran

(si c'est faisable..) :=):
En effet je ne sais pas trop comment marche les z80. On peut enregistrer des images de différente taille ?
Je pense oui : c'est indispensable pour les jeux ! :D:
Mes programmes => ici !
User avatar
Loulou 54Premium
Niveau 13: CU (Calculateur Universel)
Niveau 13: CU (Calculateur Universel)
Level up: 1.6%
 
Posts: 1985
Images: 8
Joined: 02 Aug 2009, 00:00
Location: 54, près de Metz
Gender: Male
Calculator(s):
MyCalcs profile
Class: Ingé Logiciel chez Amazon

Re: MEGR dessin 2.0.2 (Axe parser)

Unread postby Kiligolo » 29 Sep 2010, 16:22

Loulou 54 wrote:En effet je ne sais pas trop comment marche les z80. On peut enregistrer des images de différente taille ?
Je pense oui : c'est indispensable pour les jeux ! :D:

On peut faire des sprites mais à part ça je ne pense pas... :'(:
User avatar
Kiligolo
Niveau 11: LV (Légende Vivante)
Niveau 11: LV (Légende Vivante)
Level up: 84.3%
 
Posts: 1465
Joined: 17 May 2010, 00:00
Gender: Male
Calculator(s):
MyCalcs profile
Class: 1reS

Re: MEGR dessin 2.0.2 (Axe parser)

Unread postby kindermoumoute » 29 Sep 2010, 16:35

Loulou 54 wrote:Claasse !

merci
Loulou 54 wrote:* Ouvrir une image et la positionner avec le curseur

L'utilité?
Loulou 54 wrote:* Différentes fonctions comme rotation, symétrie, grossir...
* Enregistrer une partie de l'écran
(si c'est faisable..) :=):

ou lala, on est en Axe parser la! pas sur un vrai PC ^^ (et si je retourne l'écran de 90°, il manque des pixel :/), mais je vais réfléchir à la symétrie.
Loulou 54 wrote:En effet je ne sais pas trop comment marche les z80. On peut enregistrer des images de différente taille ?

Théoriquement, oui ; pratiquement.. rien est adapté pour, et ça ne s'adaptera à rien du tout (mon but est comme même de pouvoir réutiliser les images).


EDIT : MISE à jour regarder le premier post!
Tutoriel sur l'axe parser, un langage de programmation pour z80 ultra rapide et beaucoup plus facile que l'ASM !
User avatar
kindermoumouteProgrammeur
Niveau 14: CI (Calculateur de l'Infini)
Niveau 14: CI (Calculateur de l'Infini)
Level up: 2.6%
 
Posts: 849
Joined: 30 Sep 2009, 00:00
Gender: Male
Calculator(s):
MyCalcs profile
Class: Ecole d'ingénieur informatique et industriel

Re: MEGR dessin 2.0.2 (Axe parser)

Unread postby Loulou 54 » 29 Sep 2010, 17:04

Bah en fait mon programme TI-MAGE sur 89 fait ces fonctions. L'avantage est justement de pouvoir dessiner des sprites pour des jeux ! Ou des images de fond composées d'éléments qui se répètent par exemple !
= Oui j'ai oublié la fonction copier-coller. C'est à dire une fonction avec laquelle tu peux copier un rectangle de l'écran et le recoller n'importe où tu veux, autant de fois que tu veux ! Et tu pourrais aussi faire ça à partir d'un fichier.

La fonction rotation, ça permet, par exemple de mettre du texte à l'envers, ou vertical, voir même penché à 45° (tout cela est faisable dans mon TI-MAGE par exemple) La fonction grossissement peut aussi être pratique au niveau du texte.

En fait, moi j'avais fait TI MAGE justement pour les fonctions inaccessibles interactivement dans l'écran graphique, pas tellement pour les outils. (mes outils de crayon, gomme, etc sont même moins bien que ceux d'origine)

C'est à dire, oui, placer une image où tu veux, copier coller, tourner, grossir *2, ANNULER-RETABLIR une action ! (ça aussi c'est très pratique ! Tu peux peut-être y songer ! ;) )

:#top#:
Mes programmes => ici !
User avatar
Loulou 54Premium
Niveau 13: CU (Calculateur Universel)
Niveau 13: CU (Calculateur Universel)
Level up: 1.6%
 
Posts: 1985
Images: 8
Joined: 02 Aug 2009, 00:00
Location: 54, près de Metz
Gender: Male
Calculator(s):
MyCalcs profile
Class: Ingé Logiciel chez Amazon

Next

Return to Langages alternatifs

Who is online

Users browsing this forum: ClaudeBot [spider] and 4 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.
925 utilisateurs:
>893 invités
>25 membres
>7 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)