Author Topic: Un Tuto Pour Grammer  (Read 26346 times)

0 Members and 1 Guest are viewing this topic.

Offline Xeda112358

  • they/them
  • Moderator
  • LV12 Extreme Poster (Next: 5000)
  • ************
  • Posts: 4679
  • Rating: +718/-6
  • Calc-u-lator, do doo doo do do do.
    • View Profile
Un Tuto Pour Grammer
« on: February 15, 2012, 11:53:12 am »
J'espere qu'il y aurait un tuto pour Grammer en français, donc j'ai decidé commencer ce projet, mais je ne parle pas français (bien).
Grammer
(un tuto en français)
   Bonjour, je m'appelle Zeda et j'ai fais le langage de programmation "Grammer." Premièrement, je ne parle pas français, donc la documentation peut-être mauvais (et, aussi, la grammaire). Le Grammer est une langage pour le TI-83+/84+/SE. Il y a un version qui est une programme ici, mais l'application a plus des fonctions, vitesse, et les autres fonctionnalités.

Qu'est-ce que Grammer? Grammer est une langage interprété.
Comment est-ce-que vous faites une programme? Utilisez l'editeur du TI-BASIC, mais le première ligne a besoin de le code:
Code: [Select]
.0:
Aussi, j'ajoute le token Return:
Code: [Select]
.0:Return
Comment est-ce que vous arrêter une programme? Le token Stop est le token que l'arrête.
Faites une Programme
   Je voudrais commencer le tuto avec une exemple. Vous pouvez "parler" avec le programme avec les fonctions et les tokens, mais la programme peut vous "parler", aussi. Donc, il y a des fonctions pour la calcul, entée, et sortie. Par exemple:
Code: [Select]
:.0:Return
:.LOOP            ;un label
:getKey→A         ;le pression sur la touche enregistrées dans le var A
:If A=0           ;Vérifie si A est zéro
:Goto Lbl "LOOP   ;va au le label "LOOP" s'il n'y a pas un pression de touche
:ClrDraw          ;efface l'écran
:Text('0,0,A      ;écrit le nombre en le var A dans l'écran
:DispGraph        ;affiche l'écran
:Stop             ;Arréte la programme

Offline Blue Raven

  • LV3 Member (Next: 100)
  • ***
  • Posts: 73
  • Rating: +3/-0
  • Trust me. I'm the Doctor.
    • View Profile
Re: Un Tuto Pour Grammer
« Reply #1 on: February 15, 2012, 12:28:30 pm »
Hey Xeda, voici une version corrigée de ton post. Si tu veux de l'aide, tu peux poster directement en anglais, je pourrais traduire. :)

Grammer
(un tuto en français)

   Bonjour, je m'appelle Zeda et j'ai créé le langage de programmation "Grammer." Tout d'abord, je précise que je ne parle pas français, donc la documentation risque d'être mauvaise (et la grammaire aussi). Grammer est donc un langage pour les TI-83+/84+/SE. Il y a une version en programme compilé ici, mais l'application a plus de fonctions et est plus rapide.

Qu'est-ce que Grammer ? Grammer est une langage interprété.
Comment faire un programme? en utilisant l'éditeur de TI-BASIC, sans oublier ce code sur la première ligne :

Code: [Select]
.0:
J'ajoute aussi le token Return :
   
Code: [Select]
.0:Return
Comment arrêter un programme ? En utilisant le token Stop.

Créer un premier programme

   Je voudrais commencer le tuto avec un exemple. Vous pouvez "parler" avec le programme grâce aux fonctions et aux tokens, mais la programme peut vous "parler" aussi. Donc, il y a des fonctions pour les calcul et les entrées-sortie. Par exemple :

Code: [Select]
.0:Return
.LOOP            ;un label
getKey→A         ;la touche pressée est enregistrée dans la variable A
If A=0           ;Vérifie si A vaut zéro
Goto Lbl "LOOP   ;va au le label "LOOP" s'il n'y a pas de touche pressée
ClrDraw          ;efface l'écran
Text('0,0,A      ;écrit le nombre contenu dans la variable A à l'écran
DispGraph        ;affiche l'écran
Stop             ;Arrête le programme

Le code ci-dessus va afficher la touche pressée, mais il y a de meilleures façons de le faire que je montrerais plus tard. Grammer utilise des entiers compris entre 0 et 65535 (comme en Axe). Vous pouvez également stocker ces nombres dans les variables A, B, C, etc, ainsi que dans A', B', C', etc. Le code getKey→A stocke la valeur retournée par getKey dans A.
Le token Text( sert à afficher du texte et des nombres. La syntaxe est Text(Y, X, <<valeur>>) avec Y un nombre entre 0 et 58 et X entre 0 et 23 (les caractères font 4 pixels de large). Le texte est automatiquement passé à la ligne si nécessaire. Pour afficher un nombre, il faut utiliser Text('. Pour afficher du texte, on peut faire quelque chose comme cela :

Code: [Select]
.0:Return
ClrDraw
"Hello!→A
Text(0,0,A
DispGraph
Stop

Malgré cela, A ne contient pas la chaîne de caractères ! A contient un pointeur sur la chaîne. Un pointeur contient un nombre qui pointe sur un endroit de la RAM. Voici un autre exemple, plus compliqué, utilisant des pointeurs :

Code: [Select]
.0:Return
Send(1,"ETest→Z      ;Crée un programme en BASIC et en stocke l'adresse dans Z
int(Z,49             ;Cela écrit un octet contenant 49 à l'endroit de la mémoire pointé par Z
Stop

Comme Z pointe sur le programme en BASIC, 49 (qui correspond à "1") est écrit dans le premier octet du programme. Allez-y, ouvrez le programme et vous verrez qu'il y a écrit "1". :)
« Last Edit: February 15, 2012, 03:27:25 pm by Blue Raven »
Apprenez l'Axe ! | DropBox


Offline Xeda112358

  • they/them
  • Moderator
  • LV12 Extreme Poster (Next: 5000)
  • ************
  • Posts: 4679
  • Rating: +718/-6
  • Calc-u-lator, do doo doo do do do.
    • View Profile
Re: Un Tuto Pour Grammer
« Reply #2 on: February 15, 2012, 01:18:48 pm »
Thank you much! I am trying to think of what more to add at the moment. Thanks much!
I think this can be added:

The above code will display a keypress, but there are better ways to do this that I will show later. Grammer uses integers 0 to 65535 (similar to Axe). You can also store these numbers to variables like A,B,C, et cetera, and you can also store to A',B',C' the same way. The code getKey→A stores the value output from getKey into A.

The Text( token is used to display strings or numbers. The format is Text(Y,X,<<value>> where Y is a number from 0 to 58 and X is 0 to 23 (it draws every character as 4 pixels wide). It also wraps text to the next line if it needs to. To draw a number, you need to use Text('. To draw text, you can do something like this:
Code: [Select]
.0:Return
ClrDraw
"Hello!→A
Text(0,0,A
DispGraph
Stop
However, A does not hold the string! A has a pointer to the string. A pointer has a number that points to a spot in RAM. Here is another, more complicated example using pointers:
Code: [Select]
.0:Return
Send(1,"ETest→Z      ;Creates a BASIC program variable and stores the location in Z
int(Z,49             ;This writes the byte 49 to the spot in memory pointed to by Z
Stop
Since Z points to the BASIC program, 49 (which corresponds to "1") is written to the first byte of the program. Go ahead :) Open up the program and you will see it has a 1 :)

Offline Blue Raven

  • LV3 Member (Next: 100)
  • ***
  • Posts: 73
  • Rating: +3/-0
  • Trust me. I'm the Doctor.
    • View Profile
Re: Un Tuto Pour Grammer
« Reply #3 on: February 15, 2012, 03:19:16 pm »
J'ai traduit tout ça et je l'ai ajouté à mon premier post. :)
Apprenez l'Axe ! | DropBox


Offline DJ Omnimaga

  • Former TI programmer
  • CoT Emeritus
  • LV15 Omnimagician (Next: --)
  • *
  • Posts: 55896
  • Rating: +3152/-232
  • CodeWalrus founder & retired Omnimaga founder
    • View Profile
    • DJ Omnimaga Music
Re: Un Tuto Pour Grammer
« Reply #4 on: February 15, 2012, 03:22:56 pm »
Je suis content de voir un tutoriel en français pour grammer. :D Quand il sera fini tu devrais le placer dans la section tutorials ici aussi :D http://www.omnimaga.org/index.php?action=articles;cat=11

Offline Xeda112358

  • they/them
  • Moderator
  • LV12 Extreme Poster (Next: 5000)
  • ************
  • Posts: 4679
  • Rating: +718/-6
  • Calc-u-lator, do doo doo do do do.
    • View Profile
Re: Un Tuto Pour Grammer
« Reply #5 on: February 15, 2012, 04:09:20 pm »
J'ai traduit tout ça et je l'ai ajouté à mon premier post. :)
Merci!
Je suis content de voir un tutoriel en français pour grammer. :D Quand il sera fini tu devrais le placer dans la section tutorials ici aussi :D http://www.omnimaga.org/index.php?action=articles;cat=11
D'accord :D

Aussi, les traducteurs doivent être inclus avec "l'auteurs". :)

Offline persalteas

  • LV5 Advanced (Next: 300)
  • *****
  • Posts: 231
  • Rating: +44/-4
  • z80 poweeer
    • View Profile
    • Tout-82
Re: Un Tuto Pour Grammer
« Reply #6 on: March 05, 2012, 06:00:14 am »
Bien Xeda :)

Est-ce qu'il y a déjà un tuto (même en Anglais) d'écrit ?
« Last Edit: March 05, 2012, 06:00:58 am by persalteas »


Offline Xeda112358

  • they/them
  • Moderator
  • LV12 Extreme Poster (Next: 5000)
  • ************
  • Posts: 4679
  • Rating: +718/-6
  • Calc-u-lator, do doo doo do do do.
    • View Profile
Re: Un Tuto Pour Grammer
« Reply #7 on: March 05, 2012, 08:39:55 am »
Il y a un tuto en anglais, mais le tuto et un peu mauvais .__.  je pense que si je peux écriver un tuto en français, je pouvais écriver le meme tuto en anglais et les lecteurs pourraient-il lire.

err, désolé pour la grammaire x.x

There is an english tutorial, but it is a bit bad. I thought that if I could write a tutorial in french, I could write it better in english and make it easier to read. :)

Offline persalteas

  • LV5 Advanced (Next: 300)
  • *****
  • Posts: 231
  • Rating: +44/-4
  • z80 poweeer
    • View Profile
    • Tout-82
Re: Un Tuto Pour Grammer
« Reply #8 on: March 05, 2012, 04:11:10 pm »
Dans ce cas, j'attends celui en français :D



Offline kindermoumoute

  • LV8 Addict (Next: 1000)
  • ********
  • Posts: 836
  • Rating: +54/-3
    • View Profile
Re: Un Tuto Pour Grammer
« Reply #9 on: March 05, 2012, 04:27:32 pm »
Dans ce cas, j'attends celui en français :D
je me suis dis la même chose un jour, mais c'était sur l'Axe Parser. :/

@persalteas : tu n'as pas accès à #omnimaga-fr ? Je ne t'y vois jamais. O_o
Projects :

Worms armageddon z80 :
- smoothscrolling Pixelmapping : 100%
- Map editor : 80%
- Game System : 0%

Tutoriel français sur l'Axe Parser
- 1ère partie : en ligne.
- 2ème partie : en ligne.
- 3ème partie : en ligne.
- 4ème partie : 10%
- Annexe : 100%

Offline persalteas

  • LV5 Advanced (Next: 300)
  • *****
  • Posts: 231
  • Rating: +44/-4
  • z80 poweeer
    • View Profile
    • Tout-82
Re: Un Tuto Pour Grammer
« Reply #10 on: March 06, 2012, 02:11:52 am »
Si, j'y ai accès, mais je n'ai rien de spécial a y faire...

Je suis connecté sur le tchat TI Planet assez souvent si tu veux...

Sinon, si tu veux comprendre pourquoi j'attends celui en français, regarde un peu la tête de celui en anglais... La mise en page n'est pas bien encourageante. (ça vaut pas le tien sur le site du zéro :P )
« Last Edit: March 06, 2012, 02:18:55 am by persalteas »


Offline kindermoumoute

  • LV8 Addict (Next: 1000)
  • ********
  • Posts: 836
  • Rating: +54/-3
    • View Profile
Re: Un Tuto Pour Grammer
« Reply #11 on: March 06, 2012, 06:42:53 am »
Sinon, si tu veux comprendre pourquoi j'attends celui en français, regarde un peu la tête de celui en anglais... La mise en page n'est pas bien encourageante. (ça vaut pas le tien sur le site du zéro :P )
Un peu comme la documentation de l'Axe Parser quand j'ai commencé à apprendre. Dans un an on pourrait peut-être voir un nouveau tutoriel sur le SdZ par persalteas. :D
Projects :

Worms armageddon z80 :
- smoothscrolling Pixelmapping : 100%
- Map editor : 80%
- Game System : 0%

Tutoriel français sur l'Axe Parser
- 1ère partie : en ligne.
- 2ème partie : en ligne.
- 3ème partie : en ligne.
- 4ème partie : 10%
- Annexe : 100%

Offline persalteas

  • LV5 Advanced (Next: 300)
  • *****
  • Posts: 231
  • Rating: +44/-4
  • z80 poweeer
    • View Profile
    • Tout-82
Re: Un Tuto Pour Grammer
« Reply #12 on: March 06, 2012, 07:36:24 am »
Euh, je finis le Celtic déjà...

Et je suis sur que Xeda fera ça mieux que moi.


Offline Xeda112358

  • they/them
  • Moderator
  • LV12 Extreme Poster (Next: 5000)
  • ************
  • Posts: 4679
  • Rating: +718/-6
  • Calc-u-lator, do doo doo do do do.
    • View Profile
Re: Un Tuto Pour Grammer
« Reply #13 on: April 21, 2012, 12:43:06 pm »
J'ai entendu que vous avez traduit le tuto, persalteas o.o Est-ce que c'est vrais?

Offline persalteas

  • LV5 Advanced (Next: 300)
  • *****
  • Posts: 231
  • Rating: +44/-4
  • z80 poweeer
    • View Profile
    • Tout-82
Re: Un Tuto Pour Grammer
« Reply #14 on: April 21, 2012, 02:34:21 pm »
Comme je te l'ai dit dans l'autre topic, j'ai fait une sorte de tutoriel inspiré de ton "commands and tutorial", mais qui est encore très incomplet, il faudrait que j'y rajoute toutes les infos diverses que tu mets dans les *.txt avec Grammer, ou sur les divers forums d'Omnimaga (comme ce sujet qui est un début de tuto). (pour les Grayscales, notament...)

Je t'envoie une première version dès que j'ai fini de travailler "commands and tutorial", pour éliminer d'éventuelles erreurs (il y en a surement quelques-unes ;) ), ça devrait prendre un ou deux jours.