




 |
GERPOINT : Gestion de points et de leurs coordonnées x, y
Configuration requise :
921 octets pour le programme
principal + 3000 octets pour 100 points ou 5000 pour 200 (place occupée
dans les listes) + List 1, 2 et 6 (File 1) pour 100 points voire List 1, 2, 4, 5 et 6 pour
200 points.
Sous-programmes
: RESETPOINT
et MENU (facultatifs)
Propriétés : stocke, efface,
rappelle des numéros de points et leurs coordonnées dans un repère à
deux dimensions, affiche le nombre de points stockés et les numéros
correspondants. Tous les autres programmes
travaillant sur des coordonnées font appel, en option ou non, aux points
mis en mémoire par ce gestionnaire.
Le principe est le suivant : les coordonnées x, y des
points sont stockées respectivement dans les listes 1 et 2 (File 1) de la
calculette (ou listes 1, 2, 4 et 5 pour doubler les points), la liste 6
servant à l'aspect gestion du nombre de points. Chaque élément d'une
liste occupe 10 octets, que sa valeur soit 0 ou Pi, c'est pourquoi chaque
point occupe un total de 20 octets + 10 (2 listes à 10 octets chacune
(List 1 et 2) + 1 à 10 (List 6)) ou 50 octets (4 listes à 10 octets (List 1, 2, 4,
5) + 1 à 10 (List 6)).
L'intérêt du programme n'est valable qui si vous
créez de manière permanente 3 listes (l1, l2 et l6) remplies d'un nombre
constant de 0. Ainsi, j'ai créé des listes 1, 2 et 6 (File 1, j'insiste)
de 100 éléments chacune, chaque élément égal à 0. Ce qui signifie
que j'ai à disposition une mémoire de 100 points, ce qui est largement
suffisant pour tous les calculs (au-delà, vous utiliserez un PC...). Vous
pouvez aussi remplir pareillement les listes 4 et 5, ce qui permet de
gérer 100 points supplémentaires.
Pour créer ces listes, il suffit de remplir l'une
d'entre elles du nombre de zéro voulu (manuellement, ça va très vite,
ou alors en utilisant la fonction Seq si vous savez vous en servir; de
toute façon vous ne le ferez qu'une seule fois). Ensuite vous copiez
cette liste dans les autres listes en cause (en mode RUN, touche Option,
List (F1), tapez List 1 -> List 2 par exemple).
Remarque importante : le programme est lié à d'autres,
notamment NEWREPER et les programmes qui calculent des points, qui sont
entièrement fondés sur la valeur de 100 points lors de l'enregistrement
des résultats. En effet, les deux autres listes 4 et 5 qui sont parfois
utilisées dans mes programmes pour gérer 200 points au lieu de 100
nécessitent des calculs de modulo pour ne pas planter la machine. Vous
avez donc les choix suivants qui s'offrent à vous :
 | ou vous pompez entièrement le programme original et
vous gérez 200 points : dans ce cas créez des listes 1, 2, 4, 5 et 6
de 100 éléments égaux à 0. Cependant je vous avoue que la gestion
de 200 points est inutile : elle a été implémentée pour pouvoir
avoir en vis-à-vis des points dans deux repères différents, grâce
au programme NEWREPER. La solution suivante est donc préférable.... |
 | vous pompez entièrement le programme original,
vous ne créez que les listes 1, 2 et 6, et vous gérez 100 points ,
ce qui est largement suffisant et prend moins de place. En plus, tous
les autres programmes fonctionneront correctement quand même en ce
qui concerne les rappels de points. Le seul "dommage" si
je puis dire, c'est que les autres programmes faisant appel à
celui-ci, possèdent des lignes de code supplémentaires pour gérer
les 200 points, d'où un poids en octets légèrement accru... |
 | vous pompez juste les lignes de code, vous vous
amusez à comprendre leur fonctionnement (complètement tordu, je
sais) et vous gérez ce que vous voulez en les ré-écrivant. |
(Soupir). La vache, je pensais pas que ce programme
était aussi pervers !
Quoi qu'il en soit, vous pouvez maintenant gérer vos
points :
Mode d'Emploi :
lancez le programme.
Un menu vous propose 0. Gestion, 1. Lecture, 2. Stocke
et 3. Erase. A ce niveau, si vous pressez (fermement) :
 | la touche 0 : patientez 2-3 secondes, puis on vous
affichera le nombre de points en mémoire et leurs numéros (un point
en mémoire est réputé avoir au moins une de ses coordonnées non
nulle, et la gestion ne concerne que les 100 premiers points (c'est
pour ça que la gestion de 200 points est foireuse au final hin, hin)).
Une fois l'affichage terminé, en pressant EXE vous revenez au menu. |
 | la touche 1 : on vous demande un numéro de point
(compris entre 1 et 100 ou 200 selon votre choix de listes gérées),
puis les coordonnées x, y s'affichent. Si vous tapez 0 au numéro,
vous revenez au menu. Si vous tapez 999 vous accédez directement au
programme MENU |
 | la touche 2 : on vous demande un numéro de point
(compris entre 1 et 100 ou 200 selon votre choix de listes gérées),
puis les coordonnées x, y . Si vous tapez 0 au numéro, vous revenez
au menu. Si vous tapez 999 vous accédez directement au programme
MENU. Si le numéro de point est déjà utilisé, on vous demande si
vous voulez l'écraser (oui : 1, non : autre touche); si vous
répondez non, on vous redemande un numéro et les coordonnées |
 | la touche 3 : appelle le programme RESETPNT qui
efface tout ou partie des points (remplace les valeurs par 0 en fait) |
 | F6 : appelle le programme MENU |
 | AC/ON ou EXIT : ferme le programme (à la barbare
pour la première touche et subtilement pour la seconde...) |
Conseils : l'utilisation
tout au long de deux années de ce programme m'amène aux conclusions
suivantes : il est plus rapide de rentrer directement les coordonnées
dans les listes 1 et 2; la gestion de 200 points est fastidieuse, inutile,
chiante; pour ceux que ça intéresse, je conseille de chercher un moyen
de gérer un nombre variable de points, en ne stockant que ceux
effectivement utilisés au lieu de remplir des listes avec des zéros. Le
numéro de point pourra être stocké dans une autre liste par exemple et
permettra de s'affranchir de la limite de 100. En fait c'est même facile
à réaliser, mais moi je n'en ai plus rien à faire, d'autant plus que ce
programme est très efficace au final.
Téléchargement
:
gerpoint.fxi /
gerpoint.txt
GETKEY : Numéro Usine des Touches Casio
Configuration requise :
27 octets
Sous-programmes
: aucun
Propriétés : vous
donnera le numéro usine des touches de la machine que vous presserez.
C'est très utile lorsque vous programmez des menus avec des touches à
presser, puisque les lignes de code devront contenir le code usine des
touches en question (Prog / I/O / Gtky lorsque vous éditez sous la
casio).
Le principe consiste en une boucle qui
vérifie que l'entrée touche (celle que vous pressez et dont le numéro
usine est activé tout le temps qu'elle est enfoncée) est égale ou non
à un nombre compris entre 20 et 80 (les numéros usine sont compris dans
cet intervalle). Si la calculette trouve un nombre correspondant à celui
de la touche choisie, il l'affiche. Comme le programme tourne en
permanence sur 60 valeurs successives, cela explique le temps de latence
à l'utilisation (voir ci-dessous).
Mode d'Emploi :
lancez le programme.
Appuyez sur une touche
jusqu'à ce qu'un numéro s'affiche. Le numéro 31 correspond à la touche
EXE, donc si le numéro apparaît, c'est que lorsque vous avez appuyé sur
EXE pour lancer le programme, ce dernier s'est lancé tellement vite qu'il
vous a donné le numéro de la touche !
Téléchargement
:
getkey.fxi / getkey.txt
|
|